<?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>148737</bug_id>
          
          <creation_ts>2015-09-02 23:32:52 -0700</creation_ts>
          <short_desc>Implement some arithmetic instructions in WebAssembly</short_desc>
          <delta_ts>2015-09-03 15:45:14 -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>JavaScriptCore</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>146064</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sukolsak Sakshuwong">sukolsak</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>sukolsak</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1123074</commentid>
    <comment_count>0</comment_count>
    <who name="Sukolsak Sakshuwong">sukolsak</who>
    <bug_when>2015-09-02 23:32:52 -0700</bug_when>
    <thetext>Implement some arithmetic instructions for WebAssembly files generated by pack-asmjs &lt;https://github.com/WebAssembly/polyfill-prototype-1&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123077</commentid>
    <comment_count>1</comment_count>
      <attachid>260490</attachid>
    <who name="Sukolsak Sakshuwong">sukolsak</who>
    <bug_when>2015-09-02 23:49:59 -0700</bug_when>
    <thetext>Created attachment 260490
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123126</commentid>
    <comment_count>2</comment_count>
      <attachid>260490</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-09-03 12:47:37 -0700</bug_when>
    <thetext>Comment on attachment 260490
Patch

r=me

Please update to TOT before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123157</commentid>
    <comment_count>3</comment_count>
      <attachid>260521</attachid>
    <who name="Sukolsak Sakshuwong">sukolsak</who>
    <bug_when>2015-09-03 14:10:56 -0700</bug_when>
    <thetext>Created attachment 260521
Update to ToT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123196</commentid>
    <comment_count>4</comment_count>
      <attachid>260521</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-09-03 15:45:09 -0700</bug_when>
    <thetext>Comment on attachment 260521
Update to ToT

Clearing flags on attachment: 260521

Committed r189303: &lt;http://trac.webkit.org/changeset/189303&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123197</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-09-03 15:45:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>260490</attachid>
            <date>2015-09-02 23:49:59 -0700</date>
            <delta_ts>2015-09-03 14:10:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>diff.txt</filename>
            <type>text/plain</type>
            <size>13159</size>
            <attacher name="Sukolsak Sakshuwong">sukolsak</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDY3ZmE4ZGUuLjIyOTMyOGUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDE1LTA5LTAyICBTdWtvbHNhayBTYWtz
aHV3b25nICA8c3Vrb2xzYWtAZ21haWwuY29tPgorCisgICAgICAgIEltcGxlbWVudCBzb21lIGFy
aXRobWV0aWMgaW5zdHJ1Y3Rpb25zIGluIFdlYkFzc2VtYmx5CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDg3MzcKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGltcGxlbWVudHMgdGhlIGFk
ZGl0aW9uIGFuZCBzdWJ0cmFjdGlvbiBpbnN0cnVjdGlvbnMgaW4KKyAgICAgICAgV2ViQXNzZW1i
bHkgdXNpbmcgYSBzdGFjay1iYXNlZCBhcHByb2FjaDogZWFjaCBpbnN0cnVjdGlvbiByZWFkcyBp
dHMKKyAgICAgICAgb3BlcmFuZHMgZnJvbSB0aGUgdG9wIG9mIHRoZSAndGVtcG9yYXJ5JyBzdGFj
aywgcG9wcyB0aGVtLCBhbmQKKyAgICAgICAgb3B0aW9uYWxseSBwdXNoZXMgYSByZXR1cm4gdmFs
dWUgdG8gdGhlIHN0YWNrLiBTaW5jZSBvcGVyYW5kcyBhcmUgcGFzc2VkCisgICAgICAgIG9uIHRo
ZSBzdGFjaywgd2UgZG9uJ3QgdXNlIHRoZSBhcmd1bWVudHMgdGhhdCBhcmUgcGFzc2VkIHRvIHRo
ZSBtZXRob2RzCisgICAgICAgIG9mIFdBU01GdW5jdGlvbkNvbXBpbGVyLCBhbmQgd2UgZG9uJ3Qg
dXNlIHRoZSByZXR1cm4gdmFsdWVzIGZyb20gdGhlc2UKKyAgICAgICAgbWV0aG9kcy4gKFdlIHdp
bGwgdXNlIHRoZW0gd2hlbiB3ZSBpbXBsZW1lbnQgTExWTSBJUiBnZW5lcmF0aW9uIGZvcgorICAg
ICAgICBXZWJBc3NlbWJseSwgd2hlcmUgZWFjaCBleHByZXNzaW9uIGlzIGFuIExMVk1WYWx1ZVJl
Zi4pCisKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS52Y3hwcm9qL0phdmFTY3JpcHRDb3JlLnZj
eHByb2o6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUudmN4cHJvai9KYXZhU2NyaXB0Q29yZS52
Y3hwcm9qLmZpbHRlcnM6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKyAgICAgICAgKiB0ZXN0cy9zdHJlc3Mvd2FzbS1hcml0aG1ldGljLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9zdHJlc3Mvd2FzbS1hcml0aG1ldGljLndhc206IEFkZGVk
LgorICAgICAgICAqIHdhc20vSlNXQVNNTW9kdWxlLmg6CisgICAgICAgIChKU0M6OkpTV0FTTU1v
ZHVsZTo6ZnVuY3Rpb25TdGFydE9mZnNldHNJblNvdXJjZSk6CisgICAgICAgIChKU0M6OkpTV0FT
TU1vZHVsZTo6ZnVuY3Rpb25TdGFja0hlaWdodHMpOgorICAgICAgICAqIHdhc20vV0FTTUZ1bmN0
aW9uQ29tcGlsZXIuaDogQWRkZWQuCisgICAgICAgIChKU0M6OldBU01GdW5jdGlvbkNvbXBpbGVy
OjpXQVNNRnVuY3Rpb25Db21waWxlcik6CisgICAgICAgIChKU0M6OldBU01GdW5jdGlvbkNvbXBp
bGVyOjpzdGFydEZ1bmN0aW9uKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGlsZXI6
OmVuZEZ1bmN0aW9uKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGlsZXI6OmJ1aWxk
UmV0dXJuKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGlsZXI6OmJ1aWxkSW1tZWRp
YXRlSTMyKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGlsZXI6OmJ1aWxkQmluYXJ5
STMyKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGlsZXI6OmxvY2FsQWRkcmVzcyk6
CisgICAgICAgIChKU0M6OldBU01GdW5jdGlvbkNvbXBpbGVyOjp0ZW1wb3JhcnlBZGRyZXNzKToK
KyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGlsZXI6OnRocm93U3RhY2tPdmVyZmxvd0Vy
cm9yKToKKyAgICAgICAgKiB3YXNtL1dBU01GdW5jdGlvblBhcnNlci5jcHA6CisgICAgICAgIChK
U0M6OldBU01GdW5jdGlvblBhcnNlcjo6Y2hlY2tTeW50YXgpOgorICAgICAgICAoSlNDOjpXQVNN
RnVuY3Rpb25QYXJzZXI6OmNvbXBpbGUpOgorICAgICAgICAoSlNDOjpXQVNNRnVuY3Rpb25QYXJz
ZXI6OnBhcnNlRnVuY3Rpb24pOgorICAgICAgICAoSlNDOjpXQVNNRnVuY3Rpb25QYXJzZXI6OnBh
cnNlUmV0dXJuU3RhdGVtZW50KToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uUGFyc2VyOjpw
YXJzZUV4cHJlc3Npb25JMzIpOgorICAgICAgICAoSlNDOjpXQVNNRnVuY3Rpb25QYXJzZXI6OnBh
cnNlSW1tZWRpYXRlRXhwcmVzc2lvbkkzMik6CisgICAgICAgIChKU0M6OldBU01GdW5jdGlvblBh
cnNlcjo6cGFyc2VCaW5hcnlFeHByZXNzaW9uSTMyKToKKyAgICAgICAgKiB3YXNtL1dBU01GdW5j
dGlvblBhcnNlci5oOgorICAgICAgICAqIHdhc20vV0FTTUZ1bmN0aW9uU3ludGF4Q2hlY2tlci5o
OgorICAgICAgICAoSlNDOjpXQVNNRnVuY3Rpb25TeW50YXhDaGVja2VyOjpzdGFydEZ1bmN0aW9u
KToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uU3ludGF4Q2hlY2tlcjo6ZW5kRnVuY3Rpb24p
OgorICAgICAgICAoSlNDOjpXQVNNRnVuY3Rpb25TeW50YXhDaGVja2VyOjpidWlsZFJldHVybik6
CisgICAgICAgIChKU0M6OldBU01GdW5jdGlvblN5bnRheENoZWNrZXI6OmJ1aWxkSW1tZWRpYXRl
STMyKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uU3ludGF4Q2hlY2tlcjo6YnVpbGRCaW5h
cnlJMzIpOgorICAgICAgICAoSlNDOjpXQVNNRnVuY3Rpb25TeW50YXhDaGVja2VyOjpzdGFja0hl
aWdodCk6CisgICAgICAgIChKU0M6OldBU01GdW5jdGlvblN5bnRheENoZWNrZXI6OnVwZGF0ZVRl
bXBTdGFja0hlaWdodCk6CisgICAgICAgICogd2FzbS9XQVNNTW9kdWxlUGFyc2VyLmNwcDoKKyAg
ICAgICAgKEpTQzo6V0FTTU1vZHVsZVBhcnNlcjo6cGFyc2VGdW5jdGlvbkRlY2xhcmF0aW9uU2Vj
dGlvbik6CisgICAgICAgIChKU0M6OldBU01Nb2R1bGVQYXJzZXI6OnBhcnNlRnVuY3Rpb25EZWZp
bml0aW9uKToKKwogMjAxNS0wOS0wMiAgRmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29tPgog
CiAgICAgICAgIFJlbW92ZSBzb21lIHVudXNlZCBtZXRob2RzIGZyb20gR2V0QnlJZEFjY2Vzcy4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3Mvd2FzbS1hcml0
aG1ldGljLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy93YXNtLWFyaXRo
bWV0aWMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjM3YTNjYwotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3Mvd2FzbS1h
cml0aG1ldGljLmpzCkBAIC0wLDAgKzEsMjIgQEAKKy8vQCBza2lwCisKKy8qCit3YXNtLWFyaXRo
bWV0aWMud2FzbSBpcyBnZW5lcmF0ZWQgYnkgcGFjay1hc21qcyA8aHR0cHM6Ly9naXRodWIuY29t
L1dlYkFzc2VtYmx5L3BvbHlmaWxsLXByb3RvdHlwZS0xPiBmcm9tIHRoZSBmb2xsb3dpbmcgc2Ny
aXB0OgorCitmdW5jdGlvbiBhc21Nb2R1bGUoZ2xvYmFsLCBlbnYsIGJ1ZmZlcikgeworICAgICJ1
c2UgYXNtIjsKKworICAgIGZ1bmN0aW9uIG1haW4oKSB7CisgICAgICAgIHJldHVybiAoMTAgKyA0
MCkgLSA4OworICAgIH0KKworICAgIHJldHVybiB7CisgICAgICAgIG1haW46IG1haW4KKyAgICB9
OworfQorKi8KKwordmFyIG1vZHVsZSA9IGxvYWRXZWJBc3NlbWJseSgid2FzbS1hcml0aG1ldGlj
Lndhc20iKTsKK3ZhciByZXN1bHQgPSBtb2R1bGUubWFpbigpOworaWYgKHJlc3VsdCAhPSA0MikK
KyAgICB0aHJvdyAiRXJyb3I6IGJhZCByZXN1bHQ6ICIgKyByZXN1bHQ7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3dhc20tYXJpdGhtZXRpYy53YXNtIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy93YXNtLWFyaXRobWV0aWMud2FzbQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNGVkODVkCkJpbmFyeSBmaWxlcyAv
ZGV2L251bGwgYW5kIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy93YXNtLWFy
aXRobWV0aWMud2FzbSBkaWZmZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL1dBU01GdW5jdGlvbkNvbXBpbGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9X
QVNNRnVuY3Rpb25Db21waWxlci5oCmluZGV4IGEyNTY1YTQuLjczNzZmZDkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01GdW5jdGlvbkNvbXBpbGVyLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZ1bmN0aW9uQ29tcGlsZXIuaApAQCAtMzMs
NiArMzMsOCBAQAogI2luY2x1ZGUgIkxpbmtCdWZmZXIuaCIKICNpbmNsdWRlICJNYXhGcmFtZUV4
dGVudEZvclNsb3dQYXRoQ2FsbC5oIgogCisjZGVmaW5lIFVOVVNFRCAwCisKIG5hbWVzcGFjZSBK
U0MgewogCiBjbGFzcyBXQVNNRnVuY3Rpb25Db21waWxlciA6IHByaXZhdGUgQ0NhbGxIZWxwZXJz
IHsKQEAgLTQwLDEyICs0Miw2IEBAIHB1YmxpYzoKICAgICB0eXBlZGVmIGludCBFeHByZXNzaW9u
OwogICAgIHR5cGVkZWYgaW50IFN0YXRlbWVudDsKIAotICAgIHVuaW9uIFN0YWNrU2xvdCB7Ci0g
ICAgICAgIGludDMyX3QgaW50VmFsdWU7Ci0gICAgICAgIGZsb2F0IGZsb2F0VmFsdWU7Ci0gICAg
ICAgIGRvdWJsZSBkb3VibGVWYWx1ZTsKLSAgICB9OwotCiAgICAgV0FTTUZ1bmN0aW9uQ29tcGls
ZXIoVk0mIHZtLCBDb2RlQmxvY2sqIGNvZGVCbG9jaywgdW5zaWduZWQgc3RhY2tIZWlnaHQpCiAg
ICAgICAgIDogQ0NhbGxIZWxwZXJzKCZ2bSwgY29kZUJsb2NrKQogICAgICAgICAsIG1fc3RhY2tI
ZWlnaHQoc3RhY2tIZWlnaHQpCkBAIC0xMDIsNiArOTgsOCBAQCBwdWJsaWM6CiAKICAgICB2b2lk
IGVuZEZ1bmN0aW9uKCkKICAgICB7CisgICAgICAgIEFTU0VSVCghbV90ZW1wU3RhY2tUb3ApOwor
CiAgICAgICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhlc2UgaWYgdGhlIGxhc3Qgc3RhdGVtZW50IGlz
IGEgcmV0dXJuIHN0YXRlbWVudC4KICAgICAgICAgbW92ZShUcnVzdGVkSW1tNjQoSlNWYWx1ZTo6
ZW5jb2RlKGpzVW5kZWZpbmVkKCkpKSwgR1BSSW5mbzo6cmV0dXJuVmFsdWVHUFIpOwogICAgICAg
ICBlbWl0RnVuY3Rpb25FcGlsb2d1ZSgpOwpAQCAtMTI5LDEzICsxMjcsNjggQEAgcHVibGljOgog
ICAgICAgICBtX2NvZGVCbG9jay0+Y2FwYWJpbGl0eUxldmVsKCk7CiAgICAgfQogCisgICAgdm9p
ZCBidWlsZFJldHVybihpbnQsIFdBU01FeHByZXNzaW9uVHlwZSByZXR1cm5UeXBlKQorICAgIHsK
KyAgICAgICAgc3dpdGNoIChyZXR1cm5UeXBlKSB7CisgICAgICAgIGNhc2UgV0FTTUV4cHJlc3Np
b25UeXBlOjpJMzI6CisgICAgICAgICAgICBsb2FkMzIodGVtcG9yYXJ5QWRkcmVzcyhtX3RlbXBT
dGFja1RvcCAtIDEpLCBHUFJJbmZvOjpyZXR1cm5WYWx1ZUdQUik7CisgICAgICAgICAgICBvcjY0
KEdQUkluZm86OnRhZ1R5cGVOdW1iZXJSZWdpc3RlciwgR1BSSW5mbzo6cmV0dXJuVmFsdWVHUFIp
OworICAgICAgICAgICAgbV90ZW1wU3RhY2tUb3AtLTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlIFdBU01FeHByZXNzaW9uVHlwZTo6Vm9pZDoKKyAgICAgICAgICAgIG1vdmUoVHJ1
c3RlZEltbTY0KEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKSksIEdQUkluZm86OnJldHVy
blZhbHVlR1BSKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAg
ICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIH0KKyAgICAgICAgZW1pdEZ1bmN0
aW9uRXBpbG9ndWUoKTsKKyAgICAgICAgcmV0KCk7CisgICAgfQorCisgICAgaW50IGJ1aWxkSW1t
ZWRpYXRlSTMyKHVpbnQzMl90IGltbWVkaWF0ZSkKKyAgICB7CisgICAgICAgIHN0b3JlMzIoVHJ1
c3RlZEltbTMyKGltbWVkaWF0ZSksIHRlbXBvcmFyeUFkZHJlc3MobV90ZW1wU3RhY2tUb3ArKykp
OworICAgICAgICByZXR1cm4gVU5VU0VEOworICAgIH0KKworICAgIGludCBidWlsZEJpbmFyeUkz
MihpbnQsIGludCwgV0FTTU9wRXhwcmVzc2lvbkkzMiBvcCkKKyAgICB7CisgICAgICAgIGxvYWQz
Mih0ZW1wb3JhcnlBZGRyZXNzKG1fdGVtcFN0YWNrVG9wIC0gMiksIEdQUkluZm86OnJlZ1QwKTsK
KyAgICAgICAgbG9hZDMyKHRlbXBvcmFyeUFkZHJlc3MobV90ZW1wU3RhY2tUb3AgLSAxKSwgR1BS
SW5mbzo6cmVnVDEpOworICAgICAgICBzd2l0Y2ggKG9wKSB7CisgICAgICAgIGNhc2UgV0FTTU9w
RXhwcmVzc2lvbkkzMjo6QWRkOgorICAgICAgICAgICAgYWRkMzIoR1BSSW5mbzo6cmVnVDEsIEdQ
UkluZm86OnJlZ1QwKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIFdBU01PcEV4
cHJlc3Npb25JMzI6OlN1YjoKKyAgICAgICAgICAgIHN1YjMyKEdQUkluZm86OnJlZ1QxLCBHUFJJ
bmZvOjpyZWdUMCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICB9CisgICAgICAgIG1fdGVtcFN0
YWNrVG9wLS07CisgICAgICAgIHN0b3JlMzIoR1BSSW5mbzo6cmVnVDAsIHRlbXBvcmFyeUFkZHJl
c3MobV90ZW1wU3RhY2tUb3AgLSAxKSk7CisgICAgICAgIHJldHVybiBVTlVTRUQ7CisgICAgfQor
CiBwcml2YXRlOgorICAgIHVuaW9uIFN0YWNrU2xvdCB7CisgICAgICAgIGludDMyX3QgaW50VmFs
dWU7CisgICAgICAgIGZsb2F0IGZsb2F0VmFsdWU7CisgICAgICAgIGRvdWJsZSBkb3VibGVWYWx1
ZTsKKyAgICB9OworCiAgICAgQWRkcmVzcyBsb2NhbEFkZHJlc3ModW5zaWduZWQgbG9jYWxJbmRl
eCkgY29uc3QKICAgICB7CiAgICAgICAgIEFTU0VSVChsb2NhbEluZGV4IDwgbV9udW1iZXJPZkxv
Y2Fscyk7CiAgICAgICAgIHJldHVybiBBZGRyZXNzKEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVy
LCAtKGxvY2FsSW5kZXggKyAxKSAqIHNpemVvZihTdGFja1Nsb3QpKTsKICAgICB9CiAKKyAgICBB
ZGRyZXNzIHRlbXBvcmFyeUFkZHJlc3ModW5zaWduZWQgdGVtcG9yYXJ5SW5kZXgpIGNvbnN0Cisg
ICAgeworICAgICAgICBBU1NFUlQobV9udW1iZXJPZkxvY2FscyArIHRlbXBvcmFyeUluZGV4IDwg
bV9zdGFja0hlaWdodCk7CisgICAgICAgIHJldHVybiBBZGRyZXNzKEdQUkluZm86OmNhbGxGcmFt
ZVJlZ2lzdGVyLCAtKG1fbnVtYmVyT2ZMb2NhbHMgKyB0ZW1wb3JhcnlJbmRleCArIDEpICogc2l6
ZW9mKFN0YWNrU2xvdCkpOworICAgIH0KKwogICAgIHZvaWQgdGhyb3dTdGFja092ZXJmbG93RXJy
b3IoKQogICAgIHsKICAgICAgICAgc2V0dXBBcmd1bWVudHNXaXRoRXhlY1N0YXRlKFRydXN0ZWRJ
bW1QdHIobV9jb2RlQmxvY2spKTsKQEAgLTE1Niw2ICsyMDksNyBAQCBwcml2YXRlOgogCiAgICAg
dW5zaWduZWQgbV9zdGFja0hlaWdodDsKICAgICB1bnNpZ25lZCBtX251bWJlck9mTG9jYWxzOwor
ICAgIHVuc2lnbmVkIG1fdGVtcFN0YWNrVG9wIHsgMCB9OwogCiAgICAgTGFiZWwgbV9iZWdpbkxh
YmVsOwogICAgIEp1bXAgbV9zdGFja092ZXJmbG93OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vV0FTTUZ1bmN0aW9uUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL1dBU01GdW5jdGlvblBhcnNlci5jcHAKaW5kZXggNWQ0MDRjNy4uYzhiNjQ4NCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZ1bmN0aW9uUGFyc2Vy
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XQVNNRnVuY3Rpb25QYXJzZXIu
Y3BwCkBAIC0yMjYsOSArMjI2LDEyIEBAIENvbnRleHRTdGF0ZW1lbnQgV0FTTUZ1bmN0aW9uUGFy
c2VyOjpwYXJzZVNldExvY2FsU3RhdGVtZW50KENvbnRleHQmIGNvbnRleHQpCiB0ZW1wbGF0ZSA8
Y2xhc3MgQ29udGV4dD4KIENvbnRleHRTdGF0ZW1lbnQgV0FTTUZ1bmN0aW9uUGFyc2VyOjpwYXJz
ZVJldHVyblN0YXRlbWVudChDb250ZXh0JiBjb250ZXh0KQogewotICAgIGlmIChtX3JldHVyblR5
cGUgIT0gV0FTTUV4cHJlc3Npb25UeXBlOjpWb2lkKQotICAgICAgICBwYXJzZUV4cHJlc3Npb24o
Y29udGV4dCwgbV9yZXR1cm5UeXBlKTsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMgaW5z
dHJ1Y3Rpb24uCisgICAgQ29udGV4dEV4cHJlc3Npb24gZXhwcmVzc2lvbiA9IDA7CisgICAgaWYg
KG1fcmV0dXJuVHlwZSAhPSBXQVNNRXhwcmVzc2lvblR5cGU6OlZvaWQpIHsKKyAgICAgICAgZXhw
cmVzc2lvbiA9IHBhcnNlRXhwcmVzc2lvbihjb250ZXh0LCBtX3JldHVyblR5cGUpOworICAgICAg
ICBQUk9QQUdBVEVfRVJST1IoKTsKKyAgICB9CisgICAgY29udGV4dC5idWlsZFJldHVybihleHBy
ZXNzaW9uLCBtX3JldHVyblR5cGUpOwogICAgIHJldHVybiBVTlVTRUQ7CiB9CiAKQEAgLTQyMiw2
ICs0MjUsOSBAQCBDb250ZXh0RXhwcmVzc2lvbiBXQVNNRnVuY3Rpb25QYXJzZXI6OnBhcnNlRXhw
cmVzc2lvbkkzMihDb250ZXh0JiBjb250ZXh0KQogICAgICAgICBzd2l0Y2ggKG9wKSB7CiAgICAg
ICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6SW1tZWRpYXRlOgogICAgICAgICAgICAgcmV0
dXJuIHBhcnNlSW1tZWRpYXRlRXhwcmVzc2lvbkkzMihjb250ZXh0KTsKKyAgICAgICAgY2FzZSBX
QVNNT3BFeHByZXNzaW9uSTMyOjpBZGQ6CisgICAgICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkz
Mjo6U3ViOgorICAgICAgICAgICAgcmV0dXJuIHBhcnNlQmluYXJ5RXhwcmVzc2lvbkkzMihjb250
ZXh0LCBvcCk7CiAgICAgICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6Q29uc3RhbnRQb29s
SW5kZXg6CiAgICAgICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6R2V0TG9jYWw6CiAgICAg
ICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6R2V0R2xvYmFsOgpAQCAtNDUxLDggKzQ1Nyw2
IEBAIENvbnRleHRFeHByZXNzaW9uIFdBU01GdW5jdGlvblBhcnNlcjo6cGFyc2VFeHByZXNzaW9u
STMyKENvbnRleHQmIGNvbnRleHQpCiAgICAgICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6
RnJvbUYzMjoKICAgICAgICAgY2FzZSBXQVNNT3BFeHByZXNzaW9uSTMyOjpGcm9tRjY0OgogICAg
ICAgICBjYXNlIFdBU01PcEV4cHJlc3Npb25JMzI6Ok5lZ2F0ZToKLSAgICAgICAgY2FzZSBXQVNN
T3BFeHByZXNzaW9uSTMyOjpBZGQ6Ci0gICAgICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6
U3ViOgogICAgICAgICBjYXNlIFdBU01PcEV4cHJlc3Npb25JMzI6Ok11bDoKICAgICAgICAgY2Fz
ZSBXQVNNT3BFeHByZXNzaW9uSTMyOjpTRGl2OgogICAgICAgICBjYXNlIFdBU01PcEV4cHJlc3Np
b25JMzI6OlVEaXY6CkBAIC01MTUsMTAgKzUxOSw5IEBAIENvbnRleHRFeHByZXNzaW9uIFdBU01G
dW5jdGlvblBhcnNlcjo6cGFyc2VFeHByZXNzaW9uSTMyKENvbnRleHQmIGNvbnRleHQpCiB9CiAK
IHRlbXBsYXRlIDxjbGFzcyBDb250ZXh0PgotQ29udGV4dEV4cHJlc3Npb24gV0FTTUZ1bmN0aW9u
UGFyc2VyOjpwYXJzZUltbWVkaWF0ZUV4cHJlc3Npb25JMzIoQ29udGV4dCYsIHVpbnQzMl90KQor
Q29udGV4dEV4cHJlc3Npb24gV0FTTUZ1bmN0aW9uUGFyc2VyOjpwYXJzZUltbWVkaWF0ZUV4cHJl
c3Npb25JMzIoQ29udGV4dCYgY29udGV4dCwgdWludDMyX3QgaW1tZWRpYXRlKQogewotICAgIC8v
IEZJWE1FOiBJbXBsZW1lbnQgdGhpcyBpbnN0cnVjdGlvbi4KLSAgICByZXR1cm4gVU5VU0VEOwor
ICAgIHJldHVybiBjb250ZXh0LmJ1aWxkSW1tZWRpYXRlSTMyKGltbWVkaWF0ZSk7CiB9CiAKIHRl
bXBsYXRlIDxjbGFzcyBDb250ZXh0PgpAQCAtNTI5LDYgKzUzMiwxNiBAQCBDb250ZXh0RXhwcmVz
c2lvbiBXQVNNRnVuY3Rpb25QYXJzZXI6OnBhcnNlSW1tZWRpYXRlRXhwcmVzc2lvbkkzMihDb250
ZXh0JiBjb250ZQogICAgIHJldHVybiBwYXJzZUltbWVkaWF0ZUV4cHJlc3Npb25JMzIoY29udGV4
dCwgaW1tZWRpYXRlKTsKIH0KIAordGVtcGxhdGUgPGNsYXNzIENvbnRleHQ+CitDb250ZXh0RXhw
cmVzc2lvbiBXQVNNRnVuY3Rpb25QYXJzZXI6OnBhcnNlQmluYXJ5RXhwcmVzc2lvbkkzMihDb250
ZXh0JiBjb250ZXh0LCBXQVNNT3BFeHByZXNzaW9uSTMyIG9wKQoreworICAgIENvbnRleHRFeHBy
ZXNzaW9uIGxlZnQgPSBwYXJzZUV4cHJlc3Npb25JMzIoY29udGV4dCk7CisgICAgUFJPUEFHQVRF
X0VSUk9SKCk7CisgICAgQ29udGV4dEV4cHJlc3Npb24gcmlnaHQgPSBwYXJzZUV4cHJlc3Npb25J
MzIoY29udGV4dCk7CisgICAgUFJPUEFHQVRFX0VSUk9SKCk7CisgICAgcmV0dXJuIGNvbnRleHQu
YnVpbGRCaW5hcnlJMzIobGVmdCwgcmlnaHQsIG9wKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgSlND
CiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCQVNTRU1CTFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9XQVNNRnVuY3Rpb25QYXJzZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL1dBU01GdW5jdGlvblBhcnNlci5oCmluZGV4IDM0NjMwNjIuLjllY2MwMjYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01GdW5jdGlvblBhcnNlci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01GdW5jdGlvblBhcnNlci5oCkBA
IC04MCw2ICs4MCw3IEBAIHByaXZhdGU6CiAgICAgdGVtcGxhdGUgPGNsYXNzIENvbnRleHQ+IENv
bnRleHRFeHByZXNzaW9uIHBhcnNlRXhwcmVzc2lvbkkzMihDb250ZXh0Jik7CiAgICAgdGVtcGxh
dGUgPGNsYXNzIENvbnRleHQ+IENvbnRleHRFeHByZXNzaW9uIHBhcnNlSW1tZWRpYXRlRXhwcmVz
c2lvbkkzMihDb250ZXh0JiwgdWludDMyX3QgaW1tZWRpYXRlKTsKICAgICB0ZW1wbGF0ZSA8Y2xh
c3MgQ29udGV4dD4gQ29udGV4dEV4cHJlc3Npb24gcGFyc2VJbW1lZGlhdGVFeHByZXNzaW9uSTMy
KENvbnRleHQmKTsKKyAgICB0ZW1wbGF0ZSA8Y2xhc3MgQ29udGV4dD4gQ29udGV4dEV4cHJlc3Np
b24gcGFyc2VCaW5hcnlFeHByZXNzaW9uSTMyKENvbnRleHQmLCBXQVNNT3BFeHByZXNzaW9uSTMy
KTsKIAogICAgIEpTV0FTTU1vZHVsZSogbV9tb2R1bGU7CiAgICAgV0FTTVJlYWRlciBtX3JlYWRl
cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01GdW5jdGlvblN5
bnRheENoZWNrZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01GdW5jdGlvblN5
bnRheENoZWNrZXIuaAppbmRleCA1ZDMyOWMzLi4xODUxZjhkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9XQVNNRnVuY3Rpb25TeW50YXhDaGVja2VyLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZ1bmN0aW9uU3ludGF4Q2hlY2tlci5oCkBAIC0y
OCw2ICsyOCw4IEBACiAKICNpZiBFTkFCTEUoV0VCQVNTRU1CTFkpCiAKKyNkZWZpbmUgVU5VU0VE
IDAKKwogbmFtZXNwYWNlIEpTQyB7CiAKIGNsYXNzIFdBU01GdW5jdGlvblN5bnRheENoZWNrZXIg
ewpAQCAtMzcsMTYgKzM5LDQ4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc3RhcnRGdW5jdGlvbihj
b25zdCBWZWN0b3I8V0FTTVR5cGU+JiBhcmd1bWVudHMsIHVpbnQzMl90IG51bWJlck9mSTMyTG9j
YWxWYXJpYWJsZXMsIHVpbnQzMl90IG51bWJlck9mRjMyTG9jYWxWYXJpYWJsZXMsIHVpbnQzMl90
IG51bWJlck9mRjY0TG9jYWxWYXJpYWJsZXMpCiAgICAgewotICAgICAgICAvLyBGSVhNRTogTmVl
ZCB0byBpbmNsdWRlIHRoZSBudW1iZXIgb2YgdGVtcG9yYXJpZXMgdXNlZC4KLSAgICAgICAgbV9z
dGFja0hlaWdodCA9IGFyZ3VtZW50cy5zaXplKCkgKyBudW1iZXJPZkkzMkxvY2FsVmFyaWFibGVz
ICsgbnVtYmVyT2ZGMzJMb2NhbFZhcmlhYmxlcyArIG51bWJlck9mRjY0TG9jYWxWYXJpYWJsZXM7
CisgICAgICAgIG1fbnVtYmVyT2ZMb2NhbHMgPSBhcmd1bWVudHMuc2l6ZSgpICsgbnVtYmVyT2ZJ
MzJMb2NhbFZhcmlhYmxlcyArIG51bWJlck9mRjMyTG9jYWxWYXJpYWJsZXMgKyBudW1iZXJPZkY2
NExvY2FsVmFyaWFibGVzOwogICAgIH0KIAotICAgIHZvaWQgZW5kRnVuY3Rpb24oKSB7IH0KKyAg
ICB2b2lkIGVuZEZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIEFTU0VSVCghbV90ZW1wU3RhY2tU
b3ApOworICAgIH0KIAotICAgIHVuc2lnbmVkIHN0YWNrSGVpZ2h0KCkgeyByZXR1cm4gbV9zdGFj
a0hlaWdodDsgfQorICAgIHZvaWQgYnVpbGRSZXR1cm4oaW50LCBXQVNNRXhwcmVzc2lvblR5cGUg
cmV0dXJuVHlwZSkKKyAgICB7CisgICAgICAgIGlmIChyZXR1cm5UeXBlICE9IFdBU01FeHByZXNz
aW9uVHlwZTo6Vm9pZCkKKyAgICAgICAgICAgIG1fdGVtcFN0YWNrVG9wLS07CisgICAgfQorCisg
ICAgaW50IGJ1aWxkSW1tZWRpYXRlSTMyKHVpbnQzMl90KQorICAgIHsKKyAgICAgICAgbV90ZW1w
U3RhY2tUb3ArKzsKKyAgICAgICAgdXBkYXRlVGVtcFN0YWNrSGVpZ2h0KCk7CisgICAgICAgIHJl
dHVybiBVTlVTRUQ7CisgICAgfQorCisgICAgaW50IGJ1aWxkQmluYXJ5STMyKGludCwgaW50LCBX
QVNNT3BFeHByZXNzaW9uSTMyKQorICAgIHsKKyAgICAgICAgbV90ZW1wU3RhY2tUb3AtLTsKKyAg
ICAgICAgcmV0dXJuIFVOVVNFRDsKKyAgICB9CisKKyAgICB1bnNpZ25lZCBzdGFja0hlaWdodCgp
CisgICAgeworICAgICAgICByZXR1cm4gbV9udW1iZXJPZkxvY2FscyArIG1fdGVtcFN0YWNrSGVp
Z2h0OworICAgIH0KIAogcHJpdmF0ZToKLSAgICB1bnNpZ25lZCBtX3N0YWNrSGVpZ2h0OworICAg
IHZvaWQgdXBkYXRlVGVtcFN0YWNrSGVpZ2h0KCkKKyAgICB7CisgICAgICAgIGlmIChtX3RlbXBT
dGFja1RvcCA+IG1fdGVtcFN0YWNrSGVpZ2h0KQorICAgICAgICAgICAgbV90ZW1wU3RhY2tIZWln
aHQgPSBtX3RlbXBTdGFja1RvcDsKKyAgICB9CisKKyAgICB1bnNpZ25lZCBtX251bWJlck9mTG9j
YWxzOworICAgIHVuc2lnbmVkIG1fdGVtcFN0YWNrVG9wIHsgMCB9OworICAgIHVuc2lnbmVkIG1f
dGVtcFN0YWNrSGVpZ2h0IHsgMCB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCg==
</data>
<flag name="review"
          id="285675"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>260521</attachid>
            <date>2015-09-03 14:10:56 -0700</date>
            <delta_ts>2015-09-03 15:45:09 -0700</delta_ts>
            <desc>Update to ToT</desc>
            <filename>diff.txt</filename>
            <type>text/plain</type>
            <size>12392</size>
            <attacher name="Sukolsak Sakshuwong">sukolsak</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDQxYzcyMzIuLmU2OTEyYWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE1LTA5LTAzICBTdWtvbHNhayBTYWtz
aHV3b25nICA8c3Vrb2xzYWtAZ21haWwuY29tPgorCisgICAgICAgIEltcGxlbWVudCBzb21lIGFy
aXRobWV0aWMgaW5zdHJ1Y3Rpb25zIGluIFdlYkFzc2VtYmx5CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDg3MzcKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGltcGxlbWVudHMgdGhlIGFk
ZGl0aW9uIGFuZCBzdWJ0cmFjdGlvbiBpbnN0cnVjdGlvbnMgaW4KKyAgICAgICAgV2ViQXNzZW1i
bHkgdXNpbmcgYSBzdGFjay1iYXNlZCBhcHByb2FjaDogZWFjaCBpbnN0cnVjdGlvbiByZWFkcyBp
dHMKKyAgICAgICAgb3BlcmFuZHMgZnJvbSB0aGUgdG9wIG9mIHRoZSAndGVtcG9yYXJ5JyBzdGFj
aywgcG9wcyB0aGVtLCBhbmQKKyAgICAgICAgb3B0aW9uYWxseSBwdXNoZXMgYSByZXR1cm4gdmFs
dWUgdG8gdGhlIHN0YWNrLiBTaW5jZSBvcGVyYW5kcyBhcmUgcGFzc2VkCisgICAgICAgIG9uIHRo
ZSBzdGFjaywgd2UgZG9uJ3QgdXNlIHRoZSBhcmd1bWVudHMgdGhhdCBhcmUgcGFzc2VkIHRvIHRo
ZSBtZXRob2RzCisgICAgICAgIG9mIFdBU01GdW5jdGlvbkNvbXBpbGVyLCBhbmQgd2UgZG9uJ3Qg
dXNlIHRoZSByZXR1cm4gdmFsdWVzIGZyb20gdGhlc2UKKyAgICAgICAgbWV0aG9kcy4gKFdlIHdp
bGwgdXNlIHRoZW0gd2hlbiB3ZSBpbXBsZW1lbnQgTExWTSBJUiBnZW5lcmF0aW9uIGZvcgorICAg
ICAgICBXZWJBc3NlbWJseSwgd2hlcmUgZWFjaCBleHByZXNzaW9uIGlzIGFuIExMVk1WYWx1ZVJl
Zi4pCisKKyAgICAgICAgKiB0ZXN0cy9zdHJlc3Mvd2FzbS1hcml0aG1ldGljLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0cy9zdHJlc3Mvd2FzbS1hcml0aG1ldGljLndhc206IEFkZGVkLgorICAg
ICAgICAqIHdhc20vV0FTTUZ1bmN0aW9uQ29tcGlsZXIuaDoKKyAgICAgICAgKEpTQzo6V0FTTUZ1
bmN0aW9uQ29tcGlsZXI6OmVuZEZ1bmN0aW9uKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9u
Q29tcGlsZXI6OmJ1aWxkUmV0dXJuKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGls
ZXI6OmJ1aWxkSW1tZWRpYXRlSTMyKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGls
ZXI6OmJ1aWxkQmluYXJ5STMyKToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uQ29tcGlsZXI6
OnRlbXBvcmFyeUFkZHJlc3MpOgorICAgICAgICAqIHdhc20vV0FTTUZ1bmN0aW9uUGFyc2VyLmNw
cDoKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uUGFyc2VyOjpwYXJzZVJldHVyblN0YXRlbWVu
dCk6CisgICAgICAgIChKU0M6OldBU01GdW5jdGlvblBhcnNlcjo6cGFyc2VFeHByZXNzaW9uSTMy
KToKKyAgICAgICAgKEpTQzo6V0FTTUZ1bmN0aW9uUGFyc2VyOjpwYXJzZUltbWVkaWF0ZUV4cHJl
c3Npb25JMzIpOgorICAgICAgICAoSlNDOjpXQVNNRnVuY3Rpb25QYXJzZXI6OnBhcnNlQmluYXJ5
RXhwcmVzc2lvbkkzMik6CisgICAgICAgICogd2FzbS9XQVNNRnVuY3Rpb25QYXJzZXIuaDoKKyAg
ICAgICAgKiB3YXNtL1dBU01GdW5jdGlvblN5bnRheENoZWNrZXIuaDoKKyAgICAgICAgKEpTQzo6
V0FTTUZ1bmN0aW9uU3ludGF4Q2hlY2tlcjo6c3RhcnRGdW5jdGlvbik6CisgICAgICAgIChKU0M6
OldBU01GdW5jdGlvblN5bnRheENoZWNrZXI6OmVuZEZ1bmN0aW9uKToKKyAgICAgICAgKEpTQzo6
V0FTTUZ1bmN0aW9uU3ludGF4Q2hlY2tlcjo6YnVpbGRSZXR1cm4pOgorICAgICAgICAoSlNDOjpX
QVNNRnVuY3Rpb25TeW50YXhDaGVja2VyOjpidWlsZEltbWVkaWF0ZUkzMik6CisgICAgICAgIChK
U0M6OldBU01GdW5jdGlvblN5bnRheENoZWNrZXI6OmJ1aWxkQmluYXJ5STMyKToKKyAgICAgICAg
KEpTQzo6V0FTTUZ1bmN0aW9uU3ludGF4Q2hlY2tlcjo6c3RhY2tIZWlnaHQpOgorICAgICAgICAo
SlNDOjpXQVNNRnVuY3Rpb25TeW50YXhDaGVja2VyOjp1cGRhdGVUZW1wU3RhY2tIZWlnaHQpOgor
CiAyMDE1LTA5LTAzICBTdWtvbHNhayBTYWtzaHV3b25nICA8c3Vrb2xzYWtAZ21haWwuY29tPgog
CiAgICAgICAgIEluaXRpYWwgaW1wbGVtZW50YXRpb24gb2YgV2ViQXNzZW1ibHkgZnVuY3Rpb24g
Y29tcGlsZXIgCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNz
L3dhc20tYXJpdGhtZXRpYy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3Mv
d2FzbS1hcml0aG1ldGljLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIz
N2EzY2MKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3Ry
ZXNzL3dhc20tYXJpdGhtZXRpYy5qcwpAQCAtMCwwICsxLDIyIEBACisvL0Agc2tpcAorCisvKgor
d2FzbS1hcml0aG1ldGljLndhc20gaXMgZ2VuZXJhdGVkIGJ5IHBhY2stYXNtanMgPGh0dHBzOi8v
Z2l0aHViLmNvbS9XZWJBc3NlbWJseS9wb2x5ZmlsbC1wcm90b3R5cGUtMT4gZnJvbSB0aGUgZm9s
bG93aW5nIHNjcmlwdDoKKworZnVuY3Rpb24gYXNtTW9kdWxlKGdsb2JhbCwgZW52LCBidWZmZXIp
IHsKKyAgICAidXNlIGFzbSI7CisKKyAgICBmdW5jdGlvbiBtYWluKCkgeworICAgICAgICByZXR1
cm4gKDEwICsgNDApIC0gODsKKyAgICB9CisKKyAgICByZXR1cm4geworICAgICAgICBtYWluOiBt
YWluCisgICAgfTsKK30KKyovCisKK3ZhciBtb2R1bGUgPSBsb2FkV2ViQXNzZW1ibHkoIndhc20t
YXJpdGhtZXRpYy53YXNtIik7Cit2YXIgcmVzdWx0ID0gbW9kdWxlLm1haW4oKTsKK2lmIChyZXN1
bHQgIT0gNDIpCisgICAgdGhyb3cgIkVycm9yOiBiYWQgcmVzdWx0OiAiICsgcmVzdWx0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy93YXNtLWFyaXRobWV0
aWMud2FzbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3Mvd2FzbS1hcml0aG1l
dGljLndhc20KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMzRlZDg1ZDI2ZGM1YjgyNjg1YzA0OTM1NTllZmY0OTE3Mzlj
ZjMzZgpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNDIKbGNtWFI8RVlBSkchfmc8fVU9cWVgVkMw
dlZUZzlsY2Z7YCZkRipBPlcwUldEejJCWkswCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XQVNNRnVuY3Rpb25Db21waWxlci5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZ1bmN0aW9uQ29tcGlsZXIuaAppbmRl
eCBhMjU2NWE0Li43Mzc2ZmQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XQVNNRnVuY3Rpb25Db21waWxlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L1dBU01GdW5jdGlvbkNvbXBpbGVyLmgKQEAgLTMzLDYgKzMzLDggQEAKICNpbmNsdWRlICJMaW5r
QnVmZmVyLmgiCiAjaW5jbHVkZSAiTWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwuaCIKIAor
I2RlZmluZSBVTlVTRUQgMAorCiBuYW1lc3BhY2UgSlNDIHsKIAogY2xhc3MgV0FTTUZ1bmN0aW9u
Q29tcGlsZXIgOiBwcml2YXRlIENDYWxsSGVscGVycyB7CkBAIC00MCwxMiArNDIsNiBAQCBwdWJs
aWM6CiAgICAgdHlwZWRlZiBpbnQgRXhwcmVzc2lvbjsKICAgICB0eXBlZGVmIGludCBTdGF0ZW1l
bnQ7CiAKLSAgICB1bmlvbiBTdGFja1Nsb3QgewotICAgICAgICBpbnQzMl90IGludFZhbHVlOwot
ICAgICAgICBmbG9hdCBmbG9hdFZhbHVlOwotICAgICAgICBkb3VibGUgZG91YmxlVmFsdWU7Ci0g
ICAgfTsKLQogICAgIFdBU01GdW5jdGlvbkNvbXBpbGVyKFZNJiB2bSwgQ29kZUJsb2NrKiBjb2Rl
QmxvY2ssIHVuc2lnbmVkIHN0YWNrSGVpZ2h0KQogICAgICAgICA6IENDYWxsSGVscGVycygmdm0s
IGNvZGVCbG9jaykKICAgICAgICAgLCBtX3N0YWNrSGVpZ2h0KHN0YWNrSGVpZ2h0KQpAQCAtMTAy
LDYgKzk4LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBlbmRGdW5jdGlvbigpCiAgICAgeworICAg
ICAgICBBU1NFUlQoIW1fdGVtcFN0YWNrVG9wKTsKKwogICAgICAgICAvLyBGSVhNRTogUmVtb3Zl
IHRoZXNlIGlmIHRoZSBsYXN0IHN0YXRlbWVudCBpcyBhIHJldHVybiBzdGF0ZW1lbnQuCiAgICAg
ICAgIG1vdmUoVHJ1c3RlZEltbTY0KEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKSksIEdQ
UkluZm86OnJldHVyblZhbHVlR1BSKTsKICAgICAgICAgZW1pdEZ1bmN0aW9uRXBpbG9ndWUoKTsK
QEAgLTEyOSwxMyArMTI3LDY4IEBAIHB1YmxpYzoKICAgICAgICAgbV9jb2RlQmxvY2stPmNhcGFi
aWxpdHlMZXZlbCgpOwogICAgIH0KIAorICAgIHZvaWQgYnVpbGRSZXR1cm4oaW50LCBXQVNNRXhw
cmVzc2lvblR5cGUgcmV0dXJuVHlwZSkKKyAgICB7CisgICAgICAgIHN3aXRjaCAocmV0dXJuVHlw
ZSkgeworICAgICAgICBjYXNlIFdBU01FeHByZXNzaW9uVHlwZTo6STMyOgorICAgICAgICAgICAg
bG9hZDMyKHRlbXBvcmFyeUFkZHJlc3MobV90ZW1wU3RhY2tUb3AgLSAxKSwgR1BSSW5mbzo6cmV0
dXJuVmFsdWVHUFIpOworICAgICAgICAgICAgb3I2NChHUFJJbmZvOjp0YWdUeXBlTnVtYmVyUmVn
aXN0ZXIsIEdQUkluZm86OnJldHVyblZhbHVlR1BSKTsKKyAgICAgICAgICAgIG1fdGVtcFN0YWNr
VG9wLS07CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBXQVNNRXhwcmVzc2lvblR5
cGU6OlZvaWQ6CisgICAgICAgICAgICBtb3ZlKFRydXN0ZWRJbW02NChKU1ZhbHVlOjplbmNvZGUo
anNVbmRlZmluZWQoKSkpLCBHUFJJbmZvOjpyZXR1cm5WYWx1ZUdQUik7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworICAgICAgICB9CisgICAgICAgIGVtaXRGdW5jdGlvbkVwaWxvZ3VlKCk7CisgICAgICAgIHJl
dCgpOworICAgIH0KKworICAgIGludCBidWlsZEltbWVkaWF0ZUkzMih1aW50MzJfdCBpbW1lZGlh
dGUpCisgICAgeworICAgICAgICBzdG9yZTMyKFRydXN0ZWRJbW0zMihpbW1lZGlhdGUpLCB0ZW1w
b3JhcnlBZGRyZXNzKG1fdGVtcFN0YWNrVG9wKyspKTsKKyAgICAgICAgcmV0dXJuIFVOVVNFRDsK
KyAgICB9CisKKyAgICBpbnQgYnVpbGRCaW5hcnlJMzIoaW50LCBpbnQsIFdBU01PcEV4cHJlc3Np
b25JMzIgb3ApCisgICAgeworICAgICAgICBsb2FkMzIodGVtcG9yYXJ5QWRkcmVzcyhtX3RlbXBT
dGFja1RvcCAtIDIpLCBHUFJJbmZvOjpyZWdUMCk7CisgICAgICAgIGxvYWQzMih0ZW1wb3JhcnlB
ZGRyZXNzKG1fdGVtcFN0YWNrVG9wIC0gMSksIEdQUkluZm86OnJlZ1QxKTsKKyAgICAgICAgc3dp
dGNoIChvcCkgeworICAgICAgICBjYXNlIFdBU01PcEV4cHJlc3Npb25JMzI6OkFkZDoKKyAgICAg
ICAgICAgIGFkZDMyKEdQUkluZm86OnJlZ1QxLCBHUFJJbmZvOjpyZWdUMCk7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSBXQVNNT3BFeHByZXNzaW9uSTMyOjpTdWI6CisgICAgICAg
ICAgICBzdWIzMihHUFJJbmZvOjpyZWdUMSwgR1BSSW5mbzo6cmVnVDApOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKKyAgICAgICAgfQorICAgICAgICBtX3RlbXBTdGFja1RvcC0tOworICAgICAgICBzdG9yZTMy
KEdQUkluZm86OnJlZ1QwLCB0ZW1wb3JhcnlBZGRyZXNzKG1fdGVtcFN0YWNrVG9wIC0gMSkpOwor
ICAgICAgICByZXR1cm4gVU5VU0VEOworICAgIH0KKwogcHJpdmF0ZToKKyAgICB1bmlvbiBTdGFj
a1Nsb3QgeworICAgICAgICBpbnQzMl90IGludFZhbHVlOworICAgICAgICBmbG9hdCBmbG9hdFZh
bHVlOworICAgICAgICBkb3VibGUgZG91YmxlVmFsdWU7CisgICAgfTsKKwogICAgIEFkZHJlc3Mg
bG9jYWxBZGRyZXNzKHVuc2lnbmVkIGxvY2FsSW5kZXgpIGNvbnN0CiAgICAgewogICAgICAgICBB
U1NFUlQobG9jYWxJbmRleCA8IG1fbnVtYmVyT2ZMb2NhbHMpOwogICAgICAgICByZXR1cm4gQWRk
cmVzcyhHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciwgLShsb2NhbEluZGV4ICsgMSkgKiBzaXpl
b2YoU3RhY2tTbG90KSk7CiAgICAgfQogCisgICAgQWRkcmVzcyB0ZW1wb3JhcnlBZGRyZXNzKHVu
c2lnbmVkIHRlbXBvcmFyeUluZGV4KSBjb25zdAorICAgIHsKKyAgICAgICAgQVNTRVJUKG1fbnVt
YmVyT2ZMb2NhbHMgKyB0ZW1wb3JhcnlJbmRleCA8IG1fc3RhY2tIZWlnaHQpOworICAgICAgICBy
ZXR1cm4gQWRkcmVzcyhHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciwgLShtX251bWJlck9mTG9j
YWxzICsgdGVtcG9yYXJ5SW5kZXggKyAxKSAqIHNpemVvZihTdGFja1Nsb3QpKTsKKyAgICB9CisK
ICAgICB2b2lkIHRocm93U3RhY2tPdmVyZmxvd0Vycm9yKCkKICAgICB7CiAgICAgICAgIHNldHVw
QXJndW1lbnRzV2l0aEV4ZWNTdGF0ZShUcnVzdGVkSW1tUHRyKG1fY29kZUJsb2NrKSk7CkBAIC0x
NTYsNiArMjA5LDcgQEAgcHJpdmF0ZToKIAogICAgIHVuc2lnbmVkIG1fc3RhY2tIZWlnaHQ7CiAg
ICAgdW5zaWduZWQgbV9udW1iZXJPZkxvY2FsczsKKyAgICB1bnNpZ25lZCBtX3RlbXBTdGFja1Rv
cCB7IDAgfTsKIAogICAgIExhYmVsIG1fYmVnaW5MYWJlbDsKICAgICBKdW1wIG1fc3RhY2tPdmVy
ZmxvdzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dBU01GdW5jdGlv
blBhcnNlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XQVNNRnVuY3Rpb25QYXJz
ZXIuY3BwCmluZGV4IDVkNDA0YzcuLmM4YjY0ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL1dBU01GdW5jdGlvblBhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vV0FTTUZ1bmN0aW9uUGFyc2VyLmNwcApAQCAtMjI2LDkgKzIyNiwxMiBAQCBD
b250ZXh0U3RhdGVtZW50IFdBU01GdW5jdGlvblBhcnNlcjo6cGFyc2VTZXRMb2NhbFN0YXRlbWVu
dChDb250ZXh0JiBjb250ZXh0KQogdGVtcGxhdGUgPGNsYXNzIENvbnRleHQ+CiBDb250ZXh0U3Rh
dGVtZW50IFdBU01GdW5jdGlvblBhcnNlcjo6cGFyc2VSZXR1cm5TdGF0ZW1lbnQoQ29udGV4dCYg
Y29udGV4dCkKIHsKLSAgICBpZiAobV9yZXR1cm5UeXBlICE9IFdBU01FeHByZXNzaW9uVHlwZTo6
Vm9pZCkKLSAgICAgICAgcGFyc2VFeHByZXNzaW9uKGNvbnRleHQsIG1fcmV0dXJuVHlwZSk7Ci0g
ICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzIGluc3RydWN0aW9uLgorICAgIENvbnRleHRFeHBy
ZXNzaW9uIGV4cHJlc3Npb24gPSAwOworICAgIGlmIChtX3JldHVyblR5cGUgIT0gV0FTTUV4cHJl
c3Npb25UeXBlOjpWb2lkKSB7CisgICAgICAgIGV4cHJlc3Npb24gPSBwYXJzZUV4cHJlc3Npb24o
Y29udGV4dCwgbV9yZXR1cm5UeXBlKTsKKyAgICAgICAgUFJPUEFHQVRFX0VSUk9SKCk7CisgICAg
fQorICAgIGNvbnRleHQuYnVpbGRSZXR1cm4oZXhwcmVzc2lvbiwgbV9yZXR1cm5UeXBlKTsKICAg
ICByZXR1cm4gVU5VU0VEOwogfQogCkBAIC00MjIsNiArNDI1LDkgQEAgQ29udGV4dEV4cHJlc3Np
b24gV0FTTUZ1bmN0aW9uUGFyc2VyOjpwYXJzZUV4cHJlc3Npb25JMzIoQ29udGV4dCYgY29udGV4
dCkKICAgICAgICAgc3dpdGNoIChvcCkgewogICAgICAgICBjYXNlIFdBU01PcEV4cHJlc3Npb25J
MzI6OkltbWVkaWF0ZToKICAgICAgICAgICAgIHJldHVybiBwYXJzZUltbWVkaWF0ZUV4cHJlc3Np
b25JMzIoY29udGV4dCk7CisgICAgICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6QWRkOgor
ICAgICAgICBjYXNlIFdBU01PcEV4cHJlc3Npb25JMzI6OlN1YjoKKyAgICAgICAgICAgIHJldHVy
biBwYXJzZUJpbmFyeUV4cHJlc3Npb25JMzIoY29udGV4dCwgb3ApOwogICAgICAgICBjYXNlIFdB
U01PcEV4cHJlc3Npb25JMzI6OkNvbnN0YW50UG9vbEluZGV4OgogICAgICAgICBjYXNlIFdBU01P
cEV4cHJlc3Npb25JMzI6OkdldExvY2FsOgogICAgICAgICBjYXNlIFdBU01PcEV4cHJlc3Npb25J
MzI6OkdldEdsb2JhbDoKQEAgLTQ1MSw4ICs0NTcsNiBAQCBDb250ZXh0RXhwcmVzc2lvbiBXQVNN
RnVuY3Rpb25QYXJzZXI6OnBhcnNlRXhwcmVzc2lvbkkzMihDb250ZXh0JiBjb250ZXh0KQogICAg
ICAgICBjYXNlIFdBU01PcEV4cHJlc3Npb25JMzI6OkZyb21GMzI6CiAgICAgICAgIGNhc2UgV0FT
TU9wRXhwcmVzc2lvbkkzMjo6RnJvbUY2NDoKICAgICAgICAgY2FzZSBXQVNNT3BFeHByZXNzaW9u
STMyOjpOZWdhdGU6Ci0gICAgICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6QWRkOgotICAg
ICAgICBjYXNlIFdBU01PcEV4cHJlc3Npb25JMzI6OlN1YjoKICAgICAgICAgY2FzZSBXQVNNT3BF
eHByZXNzaW9uSTMyOjpNdWw6CiAgICAgICAgIGNhc2UgV0FTTU9wRXhwcmVzc2lvbkkzMjo6U0Rp
djoKICAgICAgICAgY2FzZSBXQVNNT3BFeHByZXNzaW9uSTMyOjpVRGl2OgpAQCAtNTE1LDEwICs1
MTksOSBAQCBDb250ZXh0RXhwcmVzc2lvbiBXQVNNRnVuY3Rpb25QYXJzZXI6OnBhcnNlRXhwcmVz
c2lvbkkzMihDb250ZXh0JiBjb250ZXh0KQogfQogCiB0ZW1wbGF0ZSA8Y2xhc3MgQ29udGV4dD4K
LUNvbnRleHRFeHByZXNzaW9uIFdBU01GdW5jdGlvblBhcnNlcjo6cGFyc2VJbW1lZGlhdGVFeHBy
ZXNzaW9uSTMyKENvbnRleHQmLCB1aW50MzJfdCkKK0NvbnRleHRFeHByZXNzaW9uIFdBU01GdW5j
dGlvblBhcnNlcjo6cGFyc2VJbW1lZGlhdGVFeHByZXNzaW9uSTMyKENvbnRleHQmIGNvbnRleHQs
IHVpbnQzMl90IGltbWVkaWF0ZSkKIHsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMgaW5z
dHJ1Y3Rpb24uCi0gICAgcmV0dXJuIFVOVVNFRDsKKyAgICByZXR1cm4gY29udGV4dC5idWlsZElt
bWVkaWF0ZUkzMihpbW1lZGlhdGUpOwogfQogCiB0ZW1wbGF0ZSA8Y2xhc3MgQ29udGV4dD4KQEAg
LTUyOSw2ICs1MzIsMTYgQEAgQ29udGV4dEV4cHJlc3Npb24gV0FTTUZ1bmN0aW9uUGFyc2VyOjpw
YXJzZUltbWVkaWF0ZUV4cHJlc3Npb25JMzIoQ29udGV4dCYgY29udGUKICAgICByZXR1cm4gcGFy
c2VJbW1lZGlhdGVFeHByZXNzaW9uSTMyKGNvbnRleHQsIGltbWVkaWF0ZSk7CiB9CiAKK3RlbXBs
YXRlIDxjbGFzcyBDb250ZXh0PgorQ29udGV4dEV4cHJlc3Npb24gV0FTTUZ1bmN0aW9uUGFyc2Vy
OjpwYXJzZUJpbmFyeUV4cHJlc3Npb25JMzIoQ29udGV4dCYgY29udGV4dCwgV0FTTU9wRXhwcmVz
c2lvbkkzMiBvcCkKK3sKKyAgICBDb250ZXh0RXhwcmVzc2lvbiBsZWZ0ID0gcGFyc2VFeHByZXNz
aW9uSTMyKGNvbnRleHQpOworICAgIFBST1BBR0FURV9FUlJPUigpOworICAgIENvbnRleHRFeHBy
ZXNzaW9uIHJpZ2h0ID0gcGFyc2VFeHByZXNzaW9uSTMyKGNvbnRleHQpOworICAgIFBST1BBR0FU
RV9FUlJPUigpOworICAgIHJldHVybiBjb250ZXh0LmJ1aWxkQmluYXJ5STMyKGxlZnQsIHJpZ2h0
LCBvcCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIEpTQwogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkFT
U0VNQkxZKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZ1bmN0
aW9uUGFyc2VyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XQVNNRnVuY3Rpb25QYXJz
ZXIuaAppbmRleCAzNDYzMDYyLi45ZWNjMDI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9XQVNNRnVuY3Rpb25QYXJzZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9XQVNNRnVuY3Rpb25QYXJzZXIuaApAQCAtODAsNiArODAsNyBAQCBwcml2YXRlOgog
ICAgIHRlbXBsYXRlIDxjbGFzcyBDb250ZXh0PiBDb250ZXh0RXhwcmVzc2lvbiBwYXJzZUV4cHJl
c3Npb25JMzIoQ29udGV4dCYpOwogICAgIHRlbXBsYXRlIDxjbGFzcyBDb250ZXh0PiBDb250ZXh0
RXhwcmVzc2lvbiBwYXJzZUltbWVkaWF0ZUV4cHJlc3Npb25JMzIoQ29udGV4dCYsIHVpbnQzMl90
IGltbWVkaWF0ZSk7CiAgICAgdGVtcGxhdGUgPGNsYXNzIENvbnRleHQ+IENvbnRleHRFeHByZXNz
aW9uIHBhcnNlSW1tZWRpYXRlRXhwcmVzc2lvbkkzMihDb250ZXh0Jik7CisgICAgdGVtcGxhdGUg
PGNsYXNzIENvbnRleHQ+IENvbnRleHRFeHByZXNzaW9uIHBhcnNlQmluYXJ5RXhwcmVzc2lvbkkz
MihDb250ZXh0JiwgV0FTTU9wRXhwcmVzc2lvbkkzMik7CiAKICAgICBKU1dBU01Nb2R1bGUqIG1f
bW9kdWxlOwogICAgIFdBU01SZWFkZXIgbV9yZWFkZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9XQVNNRnVuY3Rpb25TeW50YXhDaGVja2VyLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9XQVNNRnVuY3Rpb25TeW50YXhDaGVja2VyLmgKaW5kZXggNWQzMjlj
My4uMTg1MWY4ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV0FTTUZ1
bmN0aW9uU3ludGF4Q2hlY2tlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dB
U01GdW5jdGlvblN5bnRheENoZWNrZXIuaApAQCAtMjgsNiArMjgsOCBAQAogCiAjaWYgRU5BQkxF
KFdFQkFTU0VNQkxZKQogCisjZGVmaW5lIFVOVVNFRCAwCisKIG5hbWVzcGFjZSBKU0MgewogCiBj
bGFzcyBXQVNNRnVuY3Rpb25TeW50YXhDaGVja2VyIHsKQEAgLTM3LDE2ICszOSw0OCBAQCBwdWJs
aWM6CiAKICAgICB2b2lkIHN0YXJ0RnVuY3Rpb24oY29uc3QgVmVjdG9yPFdBU01UeXBlPiYgYXJn
dW1lbnRzLCB1aW50MzJfdCBudW1iZXJPZkkzMkxvY2FsVmFyaWFibGVzLCB1aW50MzJfdCBudW1i
ZXJPZkYzMkxvY2FsVmFyaWFibGVzLCB1aW50MzJfdCBudW1iZXJPZkY2NExvY2FsVmFyaWFibGVz
KQogICAgIHsKLSAgICAgICAgLy8gRklYTUU6IE5lZWQgdG8gaW5jbHVkZSB0aGUgbnVtYmVyIG9m
IHRlbXBvcmFyaWVzIHVzZWQuCi0gICAgICAgIG1fc3RhY2tIZWlnaHQgPSBhcmd1bWVudHMuc2l6
ZSgpICsgbnVtYmVyT2ZJMzJMb2NhbFZhcmlhYmxlcyArIG51bWJlck9mRjMyTG9jYWxWYXJpYWJs
ZXMgKyBudW1iZXJPZkY2NExvY2FsVmFyaWFibGVzOworICAgICAgICBtX251bWJlck9mTG9jYWxz
ID0gYXJndW1lbnRzLnNpemUoKSArIG51bWJlck9mSTMyTG9jYWxWYXJpYWJsZXMgKyBudW1iZXJP
ZkYzMkxvY2FsVmFyaWFibGVzICsgbnVtYmVyT2ZGNjRMb2NhbFZhcmlhYmxlczsKICAgICB9CiAK
LSAgICB2b2lkIGVuZEZ1bmN0aW9uKCkgeyB9CisgICAgdm9pZCBlbmRGdW5jdGlvbigpCisgICAg
eworICAgICAgICBBU1NFUlQoIW1fdGVtcFN0YWNrVG9wKTsKKyAgICB9CiAKLSAgICB1bnNpZ25l
ZCBzdGFja0hlaWdodCgpIHsgcmV0dXJuIG1fc3RhY2tIZWlnaHQ7IH0KKyAgICB2b2lkIGJ1aWxk
UmV0dXJuKGludCwgV0FTTUV4cHJlc3Npb25UeXBlIHJldHVyblR5cGUpCisgICAgeworICAgICAg
ICBpZiAocmV0dXJuVHlwZSAhPSBXQVNNRXhwcmVzc2lvblR5cGU6OlZvaWQpCisgICAgICAgICAg
ICBtX3RlbXBTdGFja1RvcC0tOworICAgIH0KKworICAgIGludCBidWlsZEltbWVkaWF0ZUkzMih1
aW50MzJfdCkKKyAgICB7CisgICAgICAgIG1fdGVtcFN0YWNrVG9wKys7CisgICAgICAgIHVwZGF0
ZVRlbXBTdGFja0hlaWdodCgpOworICAgICAgICByZXR1cm4gVU5VU0VEOworICAgIH0KKworICAg
IGludCBidWlsZEJpbmFyeUkzMihpbnQsIGludCwgV0FTTU9wRXhwcmVzc2lvbkkzMikKKyAgICB7
CisgICAgICAgIG1fdGVtcFN0YWNrVG9wLS07CisgICAgICAgIHJldHVybiBVTlVTRUQ7CisgICAg
fQorCisgICAgdW5zaWduZWQgc3RhY2tIZWlnaHQoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIG1f
bnVtYmVyT2ZMb2NhbHMgKyBtX3RlbXBTdGFja0hlaWdodDsKKyAgICB9CiAKIHByaXZhdGU6Ci0g
ICAgdW5zaWduZWQgbV9zdGFja0hlaWdodDsKKyAgICB2b2lkIHVwZGF0ZVRlbXBTdGFja0hlaWdo
dCgpCisgICAgeworICAgICAgICBpZiAobV90ZW1wU3RhY2tUb3AgPiBtX3RlbXBTdGFja0hlaWdo
dCkKKyAgICAgICAgICAgIG1fdGVtcFN0YWNrSGVpZ2h0ID0gbV90ZW1wU3RhY2tUb3A7CisgICAg
fQorCisgICAgdW5zaWduZWQgbV9udW1iZXJPZkxvY2FsczsKKyAgICB1bnNpZ25lZCBtX3RlbXBT
dGFja1RvcCB7IDAgfTsKKyAgICB1bnNpZ25lZCBtX3RlbXBTdGFja0hlaWdodCB7IDAgfTsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>