<?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>154268</bug_id>
          
          <creation_ts>2016-02-15 16:56:12 -0800</creation_ts>
          <short_desc>FTL should support NewTypedArray</short_desc>
          <delta_ts>2016-02-16 20:26:19 -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>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>154315</dependson>
          <blocked>132356</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>emacemac7</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>1164969</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-02-15 16:56:12 -0800</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1165280</commentid>
    <comment_count>1</comment_count>
      <attachid>271475</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-02-16 13:05:24 -0800</bug_when>
    <thetext>Created attachment 271475
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1165282</commentid>
    <comment_count>2</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-02-16 13:12:22 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/196652</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1165368</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-16 15:43:45 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 154315</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1165434</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-02-16 18:13:40 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Re-opened since this is blocked by bug 154315

LOL, I realize why.  I passed the typed array storage as a butterfly.  That ain&apos;t right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1165461</commentid>
    <comment_count>5</comment_count>
      <attachid>271516</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-02-16 18:34:26 -0800</bug_when>
    <thetext>Created attachment 271516
the patch

This time, it won&apos;t set the bots on fire, I promise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1165469</commentid>
    <comment_count>6</comment_count>
      <attachid>271519</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-02-16 19:10:04 -0800</bug_when>
    <thetext>Created attachment 271519
even better patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1165481</commentid>
    <comment_count>7</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-02-16 20:26:19 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/196684</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>271475</attachid>
            <date>2016-02-16 13:05:24 -0800</date>
            <delta_ts>2016-02-16 18:34:26 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>6298</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTk2NjUxKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBA
CisyMDE2LTAyLTE2ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
RlRMIHNob3VsZCBzdXBwb3J0IE5ld1R5cGVkQXJyYXkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDI2OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIDMlIHNwZWVkLXVwIG9uIHBkZmpzLiBUaGlzIHdhcyBh
bHJlYWR5IGNvdmVyZWQgYnkgbWFueSBkaWZmZXJlbnQgdGVzdHMuCisKKyAgICAgICAgKiBmdGwv
RlRMQ2FwYWJpbGl0aWVzLmNwcDoKKyAgICAgICAgKEpTQzo6RlRMOjpjYW5Db21waWxlKToKKyAg
ICAgICAgKiBmdGwvRlRMTG93ZXJERkdUb0xMVk0uY3BwOgorICAgICAgICAoSlNDOjpGVEw6OkRG
Rzo6TG93ZXJERkdUb0xMVk06OmNvbXBpbGVOb2RlKToKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6
Okxvd2VyREZHVG9MTFZNOjpjb21waWxlTmV3QXJyYXlXaXRoU2l6ZSk6CisgICAgICAgIChKU0M6
OkZUTDo6REZHOjpMb3dlckRGR1RvTExWTTo6Y29tcGlsZU5ld1R5cGVkQXJyYXkpOgorICAgICAg
ICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdUb0xMVk06OmNvbXBpbGVBbGxvY2F0ZVByb3BlcnR5
U3RvcmFnZSk6CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvTExWTTo6YWxsb2Nh
dGVCYXNpY1N0b3JhZ2VBbmRHZXRFbmQpOgorICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJE
RkdUb0xMVk06OmFsbG9jYXRlQmFzaWNTdG9yYWdlKToKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6
Okxvd2VyREZHVG9MTFZNOjphbGxvY2F0ZU9iamVjdCk6CisKIDIwMTYtMDItMTYgIFNhYW0gYmFy
YXRpICA8c2JhcmF0aUBhcHBsZS5jb20+CiAKICAgICAgICAgc3RyZXNzL3NhbXBsaW5nLXByb2Zp
bGVyLWRlZXAtc3RhY2suanMgZmFpbHMgb24gQVJNIDMyYml0CkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Z0bC9GVExDYXBhYmlsaXRpZXMuY3BwCShyZXZpc2lvbiAxOTY2NDMpCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTUgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTYg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC03Miw2ICs3Miw3IEBAIGlubGluZSBDYXBhYmlsaXR5TGV2ZWwgY2FuQ29tcGls
ZShOb2RlKiAKICAgICBjYXNlIE5ld09iamVjdDoKICAgICBjYXNlIE5ld0FycmF5OgogICAgIGNh
c2UgTmV3QXJyYXlCdWZmZXI6CisgICAgY2FzZSBOZXdUeXBlZEFycmF5OgogICAgIGNhc2UgR2V0
QnlPZmZzZXQ6CiAgICAgY2FzZSBHZXRHZXR0ZXJTZXR0ZXJCeU9mZnNldDoKICAgICBjYXNlIEdl
dEdldHRlcjoKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0xM
Vk0uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJE
RkdUb0xMVk0uY3BwCShyZXZpc2lvbiAxOTY2NDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZnRsL0ZUTExvd2VyREZHVG9MTFZNLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODQ1LDYgKzg0NSw5
IEBAIHByaXZhdGU6CiAgICAgICAgIGNhc2UgTmV3QXJyYXlXaXRoU2l6ZToKICAgICAgICAgICAg
IGNvbXBpbGVOZXdBcnJheVdpdGhTaXplKCk7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
Y2FzZSBOZXdUeXBlZEFycmF5OgorICAgICAgICAgICAgY29tcGlsZU5ld1R5cGVkQXJyYXkoKTsK
KyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIEdldFR5cGVkQXJyYXlCeXRlT2Zmc2V0
OgogICAgICAgICAgICAgY29tcGlsZUdldFR5cGVkQXJyYXlCeXRlT2Zmc2V0KCk7CiAgICAgICAg
ICAgICBicmVhazsKQEAgLTQwOTAsOCArNDA5Myw3IEBAIHByaXZhdGU6CiAgICAgICAgICAgICAK
ICAgICAgICAgICAgIExWYWx1ZSBidXR0ZXJmbHkgPSBtX291dC5zdWIoZW5kT2ZTdG9yYWdlLCBw
YXlsb2FkU2l6ZSk7CiAgICAgICAgICAgICAKLSAgICAgICAgICAgIExWYWx1ZSBvYmplY3QgPSBh
bGxvY2F0ZU9iamVjdDxKU0FycmF5PigKLSAgICAgICAgICAgICAgICBzdHJ1Y3R1cmUsIGJ1dHRl
cmZseSwgZmFpbENhc2UpOworICAgICAgICAgICAgTFZhbHVlIG9iamVjdCA9IGFsbG9jYXRlT2Jq
ZWN0PEpTQXJyYXk+KHN0cnVjdHVyZSwgYnV0dGVyZmx5LCBmYWlsQ2FzZSk7CiAgICAgICAgICAg
ICAKICAgICAgICAgICAgIG1fb3V0LnN0b3JlMzIocHVibGljTGVuZ3RoLCBidXR0ZXJmbHksIG1f
aGVhcHMuQnV0dGVyZmx5X3B1YmxpY0xlbmd0aCk7CiAgICAgICAgICAgICBtX291dC5zdG9yZTMy
KHZlY3Rvckxlbmd0aCwgYnV0dGVyZmx5LCBtX2hlYXBzLkJ1dHRlcmZseV92ZWN0b3JMZW5ndGgp
OwpAQCAtNDE1OSw2ICs0MTYxLDYzIEBAIHByaXZhdGU6CiAgICAgICAgICAgICBtX291dC5jb25z
dEludFB0cihzdHJ1Y3R1cmUpKTsKICAgICAgICAgc2V0SlNWYWx1ZSh2bUNhbGwobV9vdXQuaW50
NjQsIG1fb3V0Lm9wZXJhdGlvbihvcGVyYXRpb25OZXdBcnJheVdpdGhTaXplKSwgbV9jYWxsRnJh
bWUsIHN0cnVjdHVyZVZhbHVlLCBwdWJsaWNMZW5ndGgpKTsKICAgICB9CisKKyAgICB2b2lkIGNv
bXBpbGVOZXdUeXBlZEFycmF5KCkKKyAgICB7CisgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QgPSBtX2dyYXBoLmdsb2JhbE9iamVjdEZvcihtX25vZGUtPm9yaWdpbi5zZW1hbnRp
Yyk7CisgICAgICAgIFR5cGVkQXJyYXlUeXBlIHR5cGUgPSBtX25vZGUtPnR5cGVkQXJyYXlUeXBl
KCk7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT50eXBlZEFy
cmF5U3RydWN0dXJlKHR5cGUpOworCisgICAgICAgIExWYWx1ZSBzaXplID0gbG93SW50MzIobV9u
b2RlLT5jaGlsZDEoKSk7CisKKyAgICAgICAgTEJhc2ljQmxvY2sgc21hbGxFbm91Z2hDYXNlID0g
RlRMX05FV19CTE9DSyhtX291dCwgKCJOZXdUeXBlZEFycmF5IHNtYWxsIGVub3VnaCBjYXNlIikp
OworICAgICAgICBMQmFzaWNCbG9jayBub25aZXJvQ2FzZSA9IEZUTF9ORVdfQkxPQ0sobV9vdXQs
ICgiTmV3VHlwZWRBcnJheSBub24temVybyBjYXNlIikpOworICAgICAgICBMQmFzaWNCbG9jayBz
bG93Q2FzZSA9IEZUTF9ORVdfQkxPQ0sobV9vdXQsICgiTmV3VHlwZWRBcnJheSBzbG93IGNhc2Ui
KSk7CisgICAgICAgIExCYXNpY0Jsb2NrIGNvbnRpbnVhdGlvbiA9IEZUTF9ORVdfQkxPQ0sobV9v
dXQsICgiTmV3VHlwZWRBcnJheSBjb250aW51YXRpb24iKSk7CisKKyAgICAgICAgbV9vdXQuYnJh
bmNoKAorICAgICAgICAgICAgbV9vdXQuYWJvdmUoc2l6ZSwgbV9vdXQuY29uc3RJbnQzMihKU0Fy
cmF5QnVmZmVyVmlldzo6ZmFzdFNpemVMaW1pdCkpLAorICAgICAgICAgICAgcmFyZWx5KHNsb3dD
YXNlKSwgdXN1YWxseShzbWFsbEVub3VnaENhc2UpKTsKKworICAgICAgICBMQmFzaWNCbG9jayBs
YXN0TmV4dCA9IG1fb3V0LmFwcGVuZFRvKHNtYWxsRW5vdWdoQ2FzZSwgbm9uWmVyb0Nhc2UpOwor
CisgICAgICAgIG1fb3V0LmJyYW5jaChtX291dC5ub3RaZXJvMzIoc2l6ZSksIHVzdWFsbHkobm9u
WmVyb0Nhc2UpLCByYXJlbHkoc2xvd0Nhc2UpKTsKKworICAgICAgICBtX291dC5hcHBlbmRUbyhu
b25aZXJvQ2FzZSwgc2xvd0Nhc2UpOworCisgICAgICAgIExWYWx1ZSBieXRlU2l6ZSA9IG1fb3V0
LnNobChtX291dC56ZXJvRXh0UHRyKHNpemUpLCBtX291dC5jb25zdEludDMyKGxvZ0VsZW1lbnRT
aXplKHR5cGUpKSk7CisgICAgICAgIGlmIChlbGVtZW50U2l6ZSh0eXBlKSA8IDgpIHsKKyAgICAg
ICAgICAgIGJ5dGVTaXplID0gbV9vdXQuYml0QW5kKAorICAgICAgICAgICAgICAgIG1fb3V0LmFk
ZChieXRlU2l6ZSwgbV9vdXQuY29uc3RJbnRQdHIoNykpLAorICAgICAgICAgICAgICAgIG1fb3V0
LmNvbnN0SW50UHRyKH5zdGF0aWNfY2FzdDxpbnRwdHJfdD4oNykpKTsKKyAgICAgICAgfQorICAg
ICAgICAKKyAgICAgICAgTFZhbHVlIHN0b3JhZ2UgPSBhbGxvY2F0ZUJhc2ljU3RvcmFnZShieXRl
U2l6ZSwgc2xvd0Nhc2UpOworCisgICAgICAgIExWYWx1ZSBmYXN0UmVzdWx0VmFsdWUgPSBhbGxv
Y2F0ZU9iamVjdDxKU0FycmF5QnVmZmVyVmlldz4oc3RydWN0dXJlLCBzdG9yYWdlLCBzbG93Q2Fz
ZSk7CisKKyAgICAgICAgbV9vdXQuc3RvcmVQdHIoc3RvcmFnZSwgZmFzdFJlc3VsdFZhbHVlLCBt
X2hlYXBzLkpTQXJyYXlCdWZmZXJWaWV3X3ZlY3Rvcik7CisgICAgICAgIG1fb3V0LnN0b3JlMzIo
c2l6ZSwgZmFzdFJlc3VsdFZhbHVlLCBtX2hlYXBzLkpTQXJyYXlCdWZmZXJWaWV3X2xlbmd0aCk7
CisgICAgICAgIG1fb3V0LnN0b3JlMzIobV9vdXQuY29uc3RJbnQzMihGYXN0VHlwZWRBcnJheSks
IGZhc3RSZXN1bHRWYWx1ZSwgbV9oZWFwcy5KU0FycmF5QnVmZmVyVmlld19tb2RlKTsKKworICAg
ICAgICBWYWx1ZUZyb21CbG9jayBmYXN0UmVzdWx0ID0gbV9vdXQuYW5jaG9yKGZhc3RSZXN1bHRW
YWx1ZSk7CisgICAgICAgIG1fb3V0Lmp1bXAoY29udGludWF0aW9uKTsKKworICAgICAgICBtX291
dC5hcHBlbmRUbyhzbG93Q2FzZSwgY29udGludWF0aW9uKTsKKworICAgICAgICBMVmFsdWUgc2xv
d1Jlc3VsdFZhbHVlID0gbGF6eVNsb3dQYXRoKAorICAgICAgICAgICAgWz1dIChjb25zdCBWZWN0
b3I8TG9jYXRpb24+JiBsb2NhdGlvbnMpIC0+IFJlZlB0cjxMYXp5U2xvd1BhdGg6OkdlbmVyYXRv
cj4geworICAgICAgICAgICAgICAgIHJldHVybiBjcmVhdGVMYXp5Q2FsbEdlbmVyYXRvcigKKyAg
ICAgICAgICAgICAgICAgICAgb3BlcmF0aW9uTmV3VHlwZWRBcnJheVdpdGhTaXplRm9yVHlwZSh0
eXBlKSwgbG9jYXRpb25zWzBdLmRpcmVjdEdQUigpLAorICAgICAgICAgICAgICAgICAgICBDQ2Fs
bEhlbHBlcnM6OlRydXN0ZWRJbW1QdHIoc3RydWN0dXJlKSwgbG9jYXRpb25zWzFdLmRpcmVjdEdQ
UigpKTsKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICBzaXplKTsKKyAgICAgICAgVmFsdWVG
cm9tQmxvY2sgc2xvd1Jlc3VsdCA9IG1fb3V0LmFuY2hvcihzbG93UmVzdWx0VmFsdWUpOworICAg
ICAgICBtX291dC5qdW1wKGNvbnRpbnVhdGlvbik7CisKKyAgICAgICAgbV9vdXQuYXBwZW5kVG8o
Y29udGludWF0aW9uLCBsYXN0TmV4dCk7CisgICAgICAgIHNldEpTVmFsdWUobV9vdXQucGhpKG1f
b3V0LmludFB0ciwgZmFzdFJlc3VsdCwgc2xvd1Jlc3VsdCkpOworICAgIH0KICAgICAKICAgICB2
b2lkIGNvbXBpbGVBbGxvY2F0ZVByb3BlcnR5U3RvcmFnZSgpCiAgICAgewpAQCAtNzkzMiw2ICs3
OTkxLDExIEBAIHByaXZhdGU6CiAgICAgICAgIHJldHVybiBtX291dC5zdWIoCiAgICAgICAgICAg
ICBtX291dC5sb2FkUHRyKG1fb3V0LmFic29sdXRlKCZhbGxvY2F0b3IubV9jdXJyZW50UGF5bG9h
ZEVuZCkpLCBuZXdSZW1haW5pbmcpOwogICAgIH0KKworICAgIExWYWx1ZSBhbGxvY2F0ZUJhc2lj
U3RvcmFnZShMVmFsdWUgc2l6ZSwgTEJhc2ljQmxvY2sgc2xvd1BhdGgpCisgICAgeworICAgICAg
ICByZXR1cm4gbV9vdXQuc3ViKGFsbG9jYXRlQmFzaWNTdG9yYWdlQW5kR2V0RW5kKHNpemUsIHNs
b3dQYXRoKSwgc2l6ZSk7CisgICAgfQogICAgIAogICAgIExWYWx1ZSBhbGxvY2F0ZU9iamVjdChT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICB7Cg==
</data>
<flag name="review"
          id="296291"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>271516</attachid>
            <date>2016-02-16 18:34:26 -0800</date>
            <delta_ts>2016-02-16 19:10:04 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>6368</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTk2NjY4KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBA
CisyMDE2LTAyLTE2ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
RlRMIHNob3VsZCBzdXBwb3J0IE5ld1R5cGVkQXJyYXkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDI2OAorCisgICAgICAgIFJldmlld2VkIGJ5IFNh
YW0gQmFyYXRpLgorCisgICAgICAgIDMlIHNwZWVkLXVwIG9uIHBkZmpzLiBUaGlzIHdhcyBhbHJl
YWR5IGNvdmVyZWQgYnkgbWFueSBkaWZmZXJlbnQgdGVzdHMuCisKKyAgICAgICAgUm9sbGluZyB0
aGlzIGJhY2sgaW4gYWZ0ZXIgZml4aW5nIHRoZSBidXR0ZXJmbHkgYXJndW1lbnQuCisKKyAgICAg
ICAgKiBmdGwvRlRMQ2FwYWJpbGl0aWVzLmNwcDoKKyAgICAgICAgKEpTQzo6RlRMOjpjYW5Db21w
aWxlKToKKyAgICAgICAgKiBmdGwvRlRMTG93ZXJERkdUb0xMVk0uY3BwOgorICAgICAgICAoSlND
OjpGVEw6OkRGRzo6TG93ZXJERkdUb0xMVk06OmNvbXBpbGVOb2RlKToKKyAgICAgICAgKEpTQzo6
RlRMOjpERkc6Okxvd2VyREZHVG9MTFZNOjpjb21waWxlTmV3QXJyYXlXaXRoU2l6ZSk6CisgICAg
ICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvTExWTTo6Y29tcGlsZU5ld1R5cGVkQXJyYXkp
OgorICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdUb0xMVk06OmNvbXBpbGVBbGxvY2F0
ZVByb3BlcnR5U3RvcmFnZSk6CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvTExW
TTo6YWxsb2NhdGVCYXNpY1N0b3JhZ2VBbmRHZXRFbmQpOgorICAgICAgICAoSlNDOjpGVEw6OkRG
Rzo6TG93ZXJERkdUb0xMVk06OmFsbG9jYXRlQmFzaWNTdG9yYWdlKToKKyAgICAgICAgKEpTQzo6
RlRMOjpERkc6Okxvd2VyREZHVG9MTFZNOjphbGxvY2F0ZU9iamVjdCk6CisKIDIwMTYtMDItMTYg
IENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2
aWV3ZWQsIHJvbGxpbmcgb3V0IHIxOTY2NTIuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL2Z0bC9GVExDYXBhYmlsaXRpZXMuY3BwCShyZXZpc2lvbiAxOTY2NjgpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTUgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTYgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC03Miw2ICs3Miw3IEBAIGlubGluZSBDYXBhYmlsaXR5TGV2ZWwgY2FuQ29tcGlsZShOb2RlKiAK
ICAgICBjYXNlIE5ld09iamVjdDoKICAgICBjYXNlIE5ld0FycmF5OgogICAgIGNhc2UgTmV3QXJy
YXlCdWZmZXI6CisgICAgY2FzZSBOZXdUeXBlZEFycmF5OgogICAgIGNhc2UgR2V0QnlPZmZzZXQ6
CiAgICAgY2FzZSBHZXRHZXR0ZXJTZXR0ZXJCeU9mZnNldDoKICAgICBjYXNlIEdldEdldHRlcjoK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0xMVk0uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0xMVk0u
Y3BwCShyZXZpc2lvbiAxOTY2NjgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExv
d2VyREZHVG9MTFZNLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODQ1LDYgKzg0NSw5IEBAIHByaXZh
dGU6CiAgICAgICAgIGNhc2UgTmV3QXJyYXlXaXRoU2l6ZToKICAgICAgICAgICAgIGNvbXBpbGVO
ZXdBcnJheVdpdGhTaXplKCk7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBOZXdU
eXBlZEFycmF5OgorICAgICAgICAgICAgY29tcGlsZU5ld1R5cGVkQXJyYXkoKTsKKyAgICAgICAg
ICAgIGJyZWFrOwogICAgICAgICBjYXNlIEdldFR5cGVkQXJyYXlCeXRlT2Zmc2V0OgogICAgICAg
ICAgICAgY29tcGlsZUdldFR5cGVkQXJyYXlCeXRlT2Zmc2V0KCk7CiAgICAgICAgICAgICBicmVh
azsKQEAgLTQwOTAsOCArNDA5Myw3IEBAIHByaXZhdGU6CiAgICAgICAgICAgICAKICAgICAgICAg
ICAgIExWYWx1ZSBidXR0ZXJmbHkgPSBtX291dC5zdWIoZW5kT2ZTdG9yYWdlLCBwYXlsb2FkU2l6
ZSk7CiAgICAgICAgICAgICAKLSAgICAgICAgICAgIExWYWx1ZSBvYmplY3QgPSBhbGxvY2F0ZU9i
amVjdDxKU0FycmF5PigKLSAgICAgICAgICAgICAgICBzdHJ1Y3R1cmUsIGJ1dHRlcmZseSwgZmFp
bENhc2UpOworICAgICAgICAgICAgTFZhbHVlIG9iamVjdCA9IGFsbG9jYXRlT2JqZWN0PEpTQXJy
YXk+KHN0cnVjdHVyZSwgYnV0dGVyZmx5LCBmYWlsQ2FzZSk7CiAgICAgICAgICAgICAKICAgICAg
ICAgICAgIG1fb3V0LnN0b3JlMzIocHVibGljTGVuZ3RoLCBidXR0ZXJmbHksIG1faGVhcHMuQnV0
dGVyZmx5X3B1YmxpY0xlbmd0aCk7CiAgICAgICAgICAgICBtX291dC5zdG9yZTMyKHZlY3Rvckxl
bmd0aCwgYnV0dGVyZmx5LCBtX2hlYXBzLkJ1dHRlcmZseV92ZWN0b3JMZW5ndGgpOwpAQCAtNDE1
OSw2ICs0MTYxLDY0IEBAIHByaXZhdGU6CiAgICAgICAgICAgICBtX291dC5jb25zdEludFB0cihz
dHJ1Y3R1cmUpKTsKICAgICAgICAgc2V0SlNWYWx1ZSh2bUNhbGwobV9vdXQuaW50NjQsIG1fb3V0
Lm9wZXJhdGlvbihvcGVyYXRpb25OZXdBcnJheVdpdGhTaXplKSwgbV9jYWxsRnJhbWUsIHN0cnVj
dHVyZVZhbHVlLCBwdWJsaWNMZW5ndGgpKTsKICAgICB9CisKKyAgICB2b2lkIGNvbXBpbGVOZXdU
eXBlZEFycmF5KCkKKyAgICB7CisgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qg
PSBtX2dyYXBoLmdsb2JhbE9iamVjdEZvcihtX25vZGUtPm9yaWdpbi5zZW1hbnRpYyk7CisgICAg
ICAgIFR5cGVkQXJyYXlUeXBlIHR5cGUgPSBtX25vZGUtPnR5cGVkQXJyYXlUeXBlKCk7CisgICAg
ICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT50eXBlZEFycmF5U3RydWN0
dXJlKHR5cGUpOworCisgICAgICAgIExWYWx1ZSBzaXplID0gbG93SW50MzIobV9ub2RlLT5jaGls
ZDEoKSk7CisKKyAgICAgICAgTEJhc2ljQmxvY2sgc21hbGxFbm91Z2hDYXNlID0gRlRMX05FV19C
TE9DSyhtX291dCwgKCJOZXdUeXBlZEFycmF5IHNtYWxsIGVub3VnaCBjYXNlIikpOworICAgICAg
ICBMQmFzaWNCbG9jayBub25aZXJvQ2FzZSA9IEZUTF9ORVdfQkxPQ0sobV9vdXQsICgiTmV3VHlw
ZWRBcnJheSBub24temVybyBjYXNlIikpOworICAgICAgICBMQmFzaWNCbG9jayBzbG93Q2FzZSA9
IEZUTF9ORVdfQkxPQ0sobV9vdXQsICgiTmV3VHlwZWRBcnJheSBzbG93IGNhc2UiKSk7CisgICAg
ICAgIExCYXNpY0Jsb2NrIGNvbnRpbnVhdGlvbiA9IEZUTF9ORVdfQkxPQ0sobV9vdXQsICgiTmV3
VHlwZWRBcnJheSBjb250aW51YXRpb24iKSk7CisKKyAgICAgICAgbV9vdXQuYnJhbmNoKAorICAg
ICAgICAgICAgbV9vdXQuYWJvdmUoc2l6ZSwgbV9vdXQuY29uc3RJbnQzMihKU0FycmF5QnVmZmVy
Vmlldzo6ZmFzdFNpemVMaW1pdCkpLAorICAgICAgICAgICAgcmFyZWx5KHNsb3dDYXNlKSwgdXN1
YWxseShzbWFsbEVub3VnaENhc2UpKTsKKworICAgICAgICBMQmFzaWNCbG9jayBsYXN0TmV4dCA9
IG1fb3V0LmFwcGVuZFRvKHNtYWxsRW5vdWdoQ2FzZSwgbm9uWmVyb0Nhc2UpOworCisgICAgICAg
IG1fb3V0LmJyYW5jaChtX291dC5ub3RaZXJvMzIoc2l6ZSksIHVzdWFsbHkobm9uWmVyb0Nhc2Up
LCByYXJlbHkoc2xvd0Nhc2UpKTsKKworICAgICAgICBtX291dC5hcHBlbmRUbyhub25aZXJvQ2Fz
ZSwgc2xvd0Nhc2UpOworCisgICAgICAgIExWYWx1ZSBieXRlU2l6ZSA9IG1fb3V0LnNobChtX291
dC56ZXJvRXh0UHRyKHNpemUpLCBtX291dC5jb25zdEludDMyKGxvZ0VsZW1lbnRTaXplKHR5cGUp
KSk7CisgICAgICAgIGlmIChlbGVtZW50U2l6ZSh0eXBlKSA8IDgpIHsKKyAgICAgICAgICAgIGJ5
dGVTaXplID0gbV9vdXQuYml0QW5kKAorICAgICAgICAgICAgICAgIG1fb3V0LmFkZChieXRlU2l6
ZSwgbV9vdXQuY29uc3RJbnRQdHIoNykpLAorICAgICAgICAgICAgICAgIG1fb3V0LmNvbnN0SW50
UHRyKH5zdGF0aWNfY2FzdDxpbnRwdHJfdD4oNykpKTsKKyAgICAgICAgfQorICAgICAgICAKKyAg
ICAgICAgTFZhbHVlIHN0b3JhZ2UgPSBhbGxvY2F0ZUJhc2ljU3RvcmFnZShieXRlU2l6ZSwgc2xv
d0Nhc2UpOworCisgICAgICAgIExWYWx1ZSBmYXN0UmVzdWx0VmFsdWUgPQorICAgICAgICAgICAg
YWxsb2NhdGVPYmplY3Q8SlNBcnJheUJ1ZmZlclZpZXc+KHN0cnVjdHVyZSwgbV9vdXQuaW50UHRy
WmVybywgc2xvd0Nhc2UpOworCisgICAgICAgIG1fb3V0LnN0b3JlUHRyKHN0b3JhZ2UsIGZhc3RS
ZXN1bHRWYWx1ZSwgbV9oZWFwcy5KU0FycmF5QnVmZmVyVmlld192ZWN0b3IpOworICAgICAgICBt
X291dC5zdG9yZTMyKHNpemUsIGZhc3RSZXN1bHRWYWx1ZSwgbV9oZWFwcy5KU0FycmF5QnVmZmVy
Vmlld19sZW5ndGgpOworICAgICAgICBtX291dC5zdG9yZTMyKG1fb3V0LmNvbnN0SW50MzIoRmFz
dFR5cGVkQXJyYXkpLCBmYXN0UmVzdWx0VmFsdWUsIG1faGVhcHMuSlNBcnJheUJ1ZmZlclZpZXdf
bW9kZSk7CisKKyAgICAgICAgVmFsdWVGcm9tQmxvY2sgZmFzdFJlc3VsdCA9IG1fb3V0LmFuY2hv
cihmYXN0UmVzdWx0VmFsdWUpOworICAgICAgICBtX291dC5qdW1wKGNvbnRpbnVhdGlvbik7CisK
KyAgICAgICAgbV9vdXQuYXBwZW5kVG8oc2xvd0Nhc2UsIGNvbnRpbnVhdGlvbik7CisKKyAgICAg
ICAgTFZhbHVlIHNsb3dSZXN1bHRWYWx1ZSA9IGxhenlTbG93UGF0aCgKKyAgICAgICAgICAgIFs9
XSAoY29uc3QgVmVjdG9yPExvY2F0aW9uPiYgbG9jYXRpb25zKSAtPiBSZWZQdHI8TGF6eVNsb3dQ
YXRoOjpHZW5lcmF0b3I+IHsKKyAgICAgICAgICAgICAgICByZXR1cm4gY3JlYXRlTGF6eUNhbGxH
ZW5lcmF0b3IoCisgICAgICAgICAgICAgICAgICAgIG9wZXJhdGlvbk5ld1R5cGVkQXJyYXlXaXRo
U2l6ZUZvclR5cGUodHlwZSksIGxvY2F0aW9uc1swXS5kaXJlY3RHUFIoKSwKKyAgICAgICAgICAg
ICAgICAgICAgQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tUHRyKHN0cnVjdHVyZSksIGxvY2F0aW9u
c1sxXS5kaXJlY3RHUFIoKSk7CisgICAgICAgICAgICB9LAorICAgICAgICAgICAgc2l6ZSk7Cisg
ICAgICAgIFZhbHVlRnJvbUJsb2NrIHNsb3dSZXN1bHQgPSBtX291dC5hbmNob3Ioc2xvd1Jlc3Vs
dFZhbHVlKTsKKyAgICAgICAgbV9vdXQuanVtcChjb250aW51YXRpb24pOworCisgICAgICAgIG1f
b3V0LmFwcGVuZFRvKGNvbnRpbnVhdGlvbiwgbGFzdE5leHQpOworICAgICAgICBzZXRKU1ZhbHVl
KG1fb3V0LnBoaShtX291dC5pbnRQdHIsIGZhc3RSZXN1bHQsIHNsb3dSZXN1bHQpKTsKKyAgICB9
CiAgICAgCiAgICAgdm9pZCBjb21waWxlQWxsb2NhdGVQcm9wZXJ0eVN0b3JhZ2UoKQogICAgIHsK
QEAgLTc5MzIsNiArNzk5MiwxMSBAQCBwcml2YXRlOgogICAgICAgICByZXR1cm4gbV9vdXQuc3Vi
KAogICAgICAgICAgICAgbV9vdXQubG9hZFB0cihtX291dC5hYnNvbHV0ZSgmYWxsb2NhdG9yLm1f
Y3VycmVudFBheWxvYWRFbmQpKSwgbmV3UmVtYWluaW5nKTsKICAgICB9CisKKyAgICBMVmFsdWUg
YWxsb2NhdGVCYXNpY1N0b3JhZ2UoTFZhbHVlIHNpemUsIExCYXNpY0Jsb2NrIHNsb3dQYXRoKQor
ICAgIHsKKyAgICAgICAgcmV0dXJuIG1fb3V0LnN1YihhbGxvY2F0ZUJhc2ljU3RvcmFnZUFuZEdl
dEVuZChzaXplLCBzbG93UGF0aCksIHNpemUpOworICAgIH0KICAgICAKICAgICBMVmFsdWUgYWxs
b2NhdGVPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>271519</attachid>
            <date>2016-02-16 19:10:04 -0800</date>
            <delta_ts>2016-02-16 19:10:04 -0800</delta_ts>
            <desc>even better patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>7153</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTk2NjY4KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBA
CisyMDE2LTAyLTE2ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
RlRMIHNob3VsZCBzdXBwb3J0IE5ld1R5cGVkQXJyYXkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDI2OAorCisgICAgICAgIFJldmlld2VkIGJ5IFNh
YW0gQmFyYXRpLgorCisgICAgICAgIDMlIHNwZWVkLXVwIG9uIHBkZmpzLiBUaGlzIHdhcyBhbHJl
YWR5IGNvdmVyZWQgYnkgbWFueSBkaWZmZXJlbnQgdGVzdHMuCisKKyAgICAgICAgUm9sbGluZyB0
aGlzIGJhY2sgaW4gYWZ0ZXIgZml4aW5nIHRoZSBidXR0ZXJmbHkgYXJndW1lbnQuCisKKyAgICAg
ICAgKiBmdGwvRlRMQ2FwYWJpbGl0aWVzLmNwcDoKKyAgICAgICAgKEpTQzo6RlRMOjpjYW5Db21w
aWxlKToKKyAgICAgICAgKiBmdGwvRlRMTG93ZXJERkdUb0xMVk0uY3BwOgorICAgICAgICAoSlND
OjpGVEw6OkRGRzo6TG93ZXJERkdUb0xMVk06OmNvbXBpbGVOb2RlKToKKyAgICAgICAgKEpTQzo6
RlRMOjpERkc6Okxvd2VyREZHVG9MTFZNOjpjb21waWxlTmV3QXJyYXlXaXRoU2l6ZSk6CisgICAg
ICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvTExWTTo6Y29tcGlsZU5ld1R5cGVkQXJyYXkp
OgorICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdUb0xMVk06OmNvbXBpbGVBbGxvY2F0
ZVByb3BlcnR5U3RvcmFnZSk6CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvTExW
TTo6YWxsb2NhdGVCYXNpY1N0b3JhZ2VBbmRHZXRFbmQpOgorICAgICAgICAoSlNDOjpGVEw6OkRG
Rzo6TG93ZXJERkdUb0xMVk06OmFsbG9jYXRlQmFzaWNTdG9yYWdlKToKKyAgICAgICAgKEpTQzo6
RlRMOjpERkc6Okxvd2VyREZHVG9MTFZNOjphbGxvY2F0ZU9iamVjdCk6CisKIDIwMTYtMDItMTYg
IENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2
aWV3ZWQsIHJvbGxpbmcgb3V0IHIxOTY2NTIuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL2Z0bC9GVExDYXBhYmlsaXRpZXMuY3BwCShyZXZpc2lvbiAxOTY2NjgpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTUgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTYgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC03Miw2ICs3Miw3IEBAIGlubGluZSBDYXBhYmlsaXR5TGV2ZWwgY2FuQ29tcGlsZShOb2RlKiAK
ICAgICBjYXNlIE5ld09iamVjdDoKICAgICBjYXNlIE5ld0FycmF5OgogICAgIGNhc2UgTmV3QXJy
YXlCdWZmZXI6CisgICAgY2FzZSBOZXdUeXBlZEFycmF5OgogICAgIGNhc2UgR2V0QnlPZmZzZXQ6
CiAgICAgY2FzZSBHZXRHZXR0ZXJTZXR0ZXJCeU9mZnNldDoKICAgICBjYXNlIEdldEdldHRlcjoK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0xMVk0uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0xMVk0u
Y3BwCShyZXZpc2lvbiAxOTY2NjgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExv
d2VyREZHVG9MTFZNLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODQ1LDYgKzg0NSw5IEBAIHByaXZh
dGU6CiAgICAgICAgIGNhc2UgTmV3QXJyYXlXaXRoU2l6ZToKICAgICAgICAgICAgIGNvbXBpbGVO
ZXdBcnJheVdpdGhTaXplKCk7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBOZXdU
eXBlZEFycmF5OgorICAgICAgICAgICAgY29tcGlsZU5ld1R5cGVkQXJyYXkoKTsKKyAgICAgICAg
ICAgIGJyZWFrOwogICAgICAgICBjYXNlIEdldFR5cGVkQXJyYXlCeXRlT2Zmc2V0OgogICAgICAg
ICAgICAgY29tcGlsZUdldFR5cGVkQXJyYXlCeXRlT2Zmc2V0KCk7CiAgICAgICAgICAgICBicmVh
azsKQEAgLTQwOTAsOCArNDA5Myw3IEBAIHByaXZhdGU6CiAgICAgICAgICAgICAKICAgICAgICAg
ICAgIExWYWx1ZSBidXR0ZXJmbHkgPSBtX291dC5zdWIoZW5kT2ZTdG9yYWdlLCBwYXlsb2FkU2l6
ZSk7CiAgICAgICAgICAgICAKLSAgICAgICAgICAgIExWYWx1ZSBvYmplY3QgPSBhbGxvY2F0ZU9i
amVjdDxKU0FycmF5PigKLSAgICAgICAgICAgICAgICBzdHJ1Y3R1cmUsIGJ1dHRlcmZseSwgZmFp
bENhc2UpOworICAgICAgICAgICAgTFZhbHVlIG9iamVjdCA9IGFsbG9jYXRlT2JqZWN0PEpTQXJy
YXk+KHN0cnVjdHVyZSwgYnV0dGVyZmx5LCBmYWlsQ2FzZSk7CiAgICAgICAgICAgICAKICAgICAg
ICAgICAgIG1fb3V0LnN0b3JlMzIocHVibGljTGVuZ3RoLCBidXR0ZXJmbHksIG1faGVhcHMuQnV0
dGVyZmx5X3B1YmxpY0xlbmd0aCk7CiAgICAgICAgICAgICBtX291dC5zdG9yZTMyKHZlY3Rvckxl
bmd0aCwgYnV0dGVyZmx5LCBtX2hlYXBzLkJ1dHRlcmZseV92ZWN0b3JMZW5ndGgpOwpAQCAtNDE1
OSw2ICs0MTYxLDg2IEBAIHByaXZhdGU6CiAgICAgICAgICAgICBtX291dC5jb25zdEludFB0cihz
dHJ1Y3R1cmUpKTsKICAgICAgICAgc2V0SlNWYWx1ZSh2bUNhbGwobV9vdXQuaW50NjQsIG1fb3V0
Lm9wZXJhdGlvbihvcGVyYXRpb25OZXdBcnJheVdpdGhTaXplKSwgbV9jYWxsRnJhbWUsIHN0cnVj
dHVyZVZhbHVlLCBwdWJsaWNMZW5ndGgpKTsKICAgICB9CisKKyAgICB2b2lkIGNvbXBpbGVOZXdU
eXBlZEFycmF5KCkKKyAgICB7CisgICAgICAgIFR5cGVkQXJyYXlUeXBlIHR5cGUgPSBtX25vZGUt
PnR5cGVkQXJyYXlUeXBlKCk7CisgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qg
PSBtX2dyYXBoLmdsb2JhbE9iamVjdEZvcihtX25vZGUtPm9yaWdpbi5zZW1hbnRpYyk7CisgICAg
ICAgIAorICAgICAgICBzd2l0Y2ggKG1fbm9kZS0+Y2hpbGQxKCkudXNlS2luZCgpKSB7CisgICAg
ICAgIGNhc2UgSW50MzJVc2U6IHsKKyAgICAgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0g
Z2xvYmFsT2JqZWN0LT50eXBlZEFycmF5U3RydWN0dXJlKHR5cGUpOworCisgICAgICAgICAgICBM
VmFsdWUgc2l6ZSA9IGxvd0ludDMyKG1fbm9kZS0+Y2hpbGQxKCkpOworCisgICAgICAgICAgICBM
QmFzaWNCbG9jayBzbWFsbEVub3VnaENhc2UgPSBGVExfTkVXX0JMT0NLKG1fb3V0LCAoIk5ld1R5
cGVkQXJyYXkgc21hbGwgZW5vdWdoIGNhc2UiKSk7CisgICAgICAgICAgICBMQmFzaWNCbG9jayBu
b25aZXJvQ2FzZSA9IEZUTF9ORVdfQkxPQ0sobV9vdXQsICgiTmV3VHlwZWRBcnJheSBub24temVy
byBjYXNlIikpOworICAgICAgICAgICAgTEJhc2ljQmxvY2sgc2xvd0Nhc2UgPSBGVExfTkVXX0JM
T0NLKG1fb3V0LCAoIk5ld1R5cGVkQXJyYXkgc2xvdyBjYXNlIikpOworICAgICAgICAgICAgTEJh
c2ljQmxvY2sgY29udGludWF0aW9uID0gRlRMX05FV19CTE9DSyhtX291dCwgKCJOZXdUeXBlZEFy
cmF5IGNvbnRpbnVhdGlvbiIpKTsKKworICAgICAgICAgICAgbV9vdXQuYnJhbmNoKAorICAgICAg
ICAgICAgICAgIG1fb3V0LmFib3ZlKHNpemUsIG1fb3V0LmNvbnN0SW50MzIoSlNBcnJheUJ1ZmZl
clZpZXc6OmZhc3RTaXplTGltaXQpKSwKKyAgICAgICAgICAgICAgICByYXJlbHkoc2xvd0Nhc2Up
LCB1c3VhbGx5KHNtYWxsRW5vdWdoQ2FzZSkpOworCisgICAgICAgICAgICBMQmFzaWNCbG9jayBs
YXN0TmV4dCA9IG1fb3V0LmFwcGVuZFRvKHNtYWxsRW5vdWdoQ2FzZSwgbm9uWmVyb0Nhc2UpOwor
CisgICAgICAgICAgICBtX291dC5icmFuY2gobV9vdXQubm90WmVybzMyKHNpemUpLCB1c3VhbGx5
KG5vblplcm9DYXNlKSwgcmFyZWx5KHNsb3dDYXNlKSk7CisKKyAgICAgICAgICAgIG1fb3V0LmFw
cGVuZFRvKG5vblplcm9DYXNlLCBzbG93Q2FzZSk7CisKKyAgICAgICAgICAgIExWYWx1ZSBieXRl
U2l6ZSA9CisgICAgICAgICAgICAgICAgbV9vdXQuc2hsKG1fb3V0Lnplcm9FeHRQdHIoc2l6ZSks
IG1fb3V0LmNvbnN0SW50MzIobG9nRWxlbWVudFNpemUodHlwZSkpKTsKKyAgICAgICAgICAgIGlm
IChlbGVtZW50U2l6ZSh0eXBlKSA8IDgpIHsKKyAgICAgICAgICAgICAgICBieXRlU2l6ZSA9IG1f
b3V0LmJpdEFuZCgKKyAgICAgICAgICAgICAgICAgICAgbV9vdXQuYWRkKGJ5dGVTaXplLCBtX291
dC5jb25zdEludFB0cig3KSksCisgICAgICAgICAgICAgICAgICAgIG1fb3V0LmNvbnN0SW50UHRy
KH5zdGF0aWNfY2FzdDxpbnRwdHJfdD4oNykpKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgCisg
ICAgICAgICAgICBMVmFsdWUgc3RvcmFnZSA9IGFsbG9jYXRlQmFzaWNTdG9yYWdlKGJ5dGVTaXpl
LCBzbG93Q2FzZSk7CisKKyAgICAgICAgICAgIExWYWx1ZSBmYXN0UmVzdWx0VmFsdWUgPQorICAg
ICAgICAgICAgICAgIGFsbG9jYXRlT2JqZWN0PEpTQXJyYXlCdWZmZXJWaWV3PihzdHJ1Y3R1cmUs
IG1fb3V0LmludFB0clplcm8sIHNsb3dDYXNlKTsKKworICAgICAgICAgICAgbV9vdXQuc3RvcmVQ
dHIoc3RvcmFnZSwgZmFzdFJlc3VsdFZhbHVlLCBtX2hlYXBzLkpTQXJyYXlCdWZmZXJWaWV3X3Zl
Y3Rvcik7CisgICAgICAgICAgICBtX291dC5zdG9yZTMyKHNpemUsIGZhc3RSZXN1bHRWYWx1ZSwg
bV9oZWFwcy5KU0FycmF5QnVmZmVyVmlld19sZW5ndGgpOworICAgICAgICAgICAgbV9vdXQuc3Rv
cmUzMihtX291dC5jb25zdEludDMyKEZhc3RUeXBlZEFycmF5KSwgZmFzdFJlc3VsdFZhbHVlLCBt
X2hlYXBzLkpTQXJyYXlCdWZmZXJWaWV3X21vZGUpOworCisgICAgICAgICAgICBWYWx1ZUZyb21C
bG9jayBmYXN0UmVzdWx0ID0gbV9vdXQuYW5jaG9yKGZhc3RSZXN1bHRWYWx1ZSk7CisgICAgICAg
ICAgICBtX291dC5qdW1wKGNvbnRpbnVhdGlvbik7CisKKyAgICAgICAgICAgIG1fb3V0LmFwcGVu
ZFRvKHNsb3dDYXNlLCBjb250aW51YXRpb24pOworCisgICAgICAgICAgICBMVmFsdWUgc2xvd1Jl
c3VsdFZhbHVlID0gbGF6eVNsb3dQYXRoKAorICAgICAgICAgICAgICAgIFs9XSAoY29uc3QgVmVj
dG9yPExvY2F0aW9uPiYgbG9jYXRpb25zKSAtPiBSZWZQdHI8TGF6eVNsb3dQYXRoOjpHZW5lcmF0
b3I+IHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNyZWF0ZUxhenlDYWxsR2VuZXJhdG9y
KAorICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9uTmV3VHlwZWRBcnJheVdpdGhTaXpl
Rm9yVHlwZSh0eXBlKSwgbG9jYXRpb25zWzBdLmRpcmVjdEdQUigpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tUHRyKHN0cnVjdHVyZSksIGxvY2F0aW9u
c1sxXS5kaXJlY3RHUFIoKSk7CisgICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAgICBz
aXplKTsKKyAgICAgICAgICAgIFZhbHVlRnJvbUJsb2NrIHNsb3dSZXN1bHQgPSBtX291dC5hbmNo
b3Ioc2xvd1Jlc3VsdFZhbHVlKTsKKyAgICAgICAgICAgIG1fb3V0Lmp1bXAoY29udGludWF0aW9u
KTsKKworICAgICAgICAgICAgbV9vdXQuYXBwZW5kVG8oY29udGludWF0aW9uLCBsYXN0TmV4dCk7
CisgICAgICAgICAgICBzZXRKU1ZhbHVlKG1fb3V0LnBoaShtX291dC5pbnRQdHIsIGZhc3RSZXN1
bHQsIHNsb3dSZXN1bHQpKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAg
ICAgIGNhc2UgVW50eXBlZFVzZTogeworICAgICAgICAgICAgTFZhbHVlIGFyZ3VtZW50ID0gbG93
SlNWYWx1ZShtX25vZGUtPmNoaWxkMSgpKTsKKworICAgICAgICAgICAgTFZhbHVlIHJlc3VsdCA9
IHZtQ2FsbCgKKyAgICAgICAgICAgICAgICBtX291dC5pbnRQdHIsIG1fb3V0Lm9wZXJhdGlvbihv
cGVyYXRpb25OZXdUeXBlZEFycmF5V2l0aE9uZUFyZ3VtZW50Rm9yVHlwZSh0eXBlKSksCisgICAg
ICAgICAgICAgICAgbV9jYWxsRnJhbWUsIHdlYWtQb2ludGVyKGdsb2JhbE9iamVjdC0+dHlwZWRB
cnJheVN0cnVjdHVyZSh0eXBlKSksIGFyZ3VtZW50KTsKKworICAgICAgICAgICAgc2V0SlNWYWx1
ZShyZXN1bHQpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIERGR19DUkFTSChtX2dyYXBoLCBtX25vZGUsICJCYWQgdXNlIGtp
bmQiKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH0KICAgICAKICAgICB2
b2lkIGNvbXBpbGVBbGxvY2F0ZVByb3BlcnR5U3RvcmFnZSgpCiAgICAgewpAQCAtNzkzMiw2ICs4
MDE0LDExIEBAIHByaXZhdGU6CiAgICAgICAgIHJldHVybiBtX291dC5zdWIoCiAgICAgICAgICAg
ICBtX291dC5sb2FkUHRyKG1fb3V0LmFic29sdXRlKCZhbGxvY2F0b3IubV9jdXJyZW50UGF5bG9h
ZEVuZCkpLCBuZXdSZW1haW5pbmcpOwogICAgIH0KKworICAgIExWYWx1ZSBhbGxvY2F0ZUJhc2lj
U3RvcmFnZShMVmFsdWUgc2l6ZSwgTEJhc2ljQmxvY2sgc2xvd1BhdGgpCisgICAgeworICAgICAg
ICByZXR1cm4gbV9vdXQuc3ViKGFsbG9jYXRlQmFzaWNTdG9yYWdlQW5kR2V0RW5kKHNpemUsIHNs
b3dQYXRoKSwgc2l6ZSk7CisgICAgfQogICAgIAogICAgIExWYWx1ZSBhbGxvY2F0ZU9iamVjdChT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>