<?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>115985</bug_id>
          
          <creation_ts>2013-05-12 08:57:27 -0700</creation_ts>
          <short_desc>Move RemoteMemoryReader into FastMalloc.cpp</short_desc>
          <delta_ts>2013-05-12 09:44:58 -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>New Bugs</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eflews.bot</cc>
    
    <cc>gyuyoung.kim</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>887939</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-12 08:57:27 -0700</bug_when>
    <thetext>Move RemoteMemoryReader into FastMalloc.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887940</commentid>
    <comment_count>1</comment_count>
      <attachid>201489</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-12 09:00:07 -0700</bug_when>
    <thetext>Created attachment 201489
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887941</commentid>
    <comment_count>2</comment_count>
      <attachid>201490</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-12 09:08:45 -0700</bug_when>
    <thetext>Created attachment 201490
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887942</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-12 09:09:25 -0700</bug_when>
    <thetext>Attachment 201490 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WTF/ChangeLog&apos;, u&apos;Source/WTF/WTF.xcodeproj/project.pbxproj&apos;, u&apos;Source/WTF/wtf/FastMalloc.cpp&apos;, u&apos;Source/WTF/wtf/MallocZoneSupport.h&apos;]&quot; exit_code: 1
Source/WTF/wtf/FastMalloc.cpp:1134:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887943</commentid>
    <comment_count>4</comment_count>
      <attachid>201490</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:12:12 -0700</bug_when>
    <thetext>Comment on attachment 201490
Patch

Attachment 201490 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/407959</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887944</commentid>
    <comment_count>5</comment_count>
      <attachid>201491</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-12 09:12:42 -0700</bug_when>
    <thetext>Created attachment 201491
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887945</commentid>
    <comment_count>6</comment_count>
      <attachid>201491</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:16:20 -0700</bug_when>
    <thetext>Comment on attachment 201491
Patch

Attachment 201491 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/460414</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887946</commentid>
    <comment_count>7</comment_count>
      <attachid>201491</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:18:48 -0700</bug_when>
    <thetext>Comment on attachment 201491
Patch

Attachment 201491 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/407961</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887947</commentid>
    <comment_count>8</comment_count>
      <attachid>201492</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-12 09:19:46 -0700</bug_when>
    <thetext>Created attachment 201492
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887948</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-12 09:20:44 -0700</bug_when>
    <thetext>Attachment 201492 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WTF/ChangeLog&apos;, u&apos;Source/WTF/WTF.xcodeproj/project.pbxproj&apos;, u&apos;Source/WTF/wtf/FastMalloc.cpp&apos;, u&apos;Source/WTF/wtf/MallocZoneSupport.h&apos;]&quot; exit_code: 1
Source/WTF/wtf/FastMalloc.cpp:1137:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887949</commentid>
    <comment_count>10</comment_count>
      <attachid>201492</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:22:41 -0700</bug_when>
    <thetext>Comment on attachment 201492
Patch

Attachment 201492 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/417785</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887950</commentid>
    <comment_count>11</comment_count>
      <attachid>201492</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:23:19 -0700</bug_when>
    <thetext>Comment on attachment 201492
Patch

Attachment 201492 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/461436</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887951</commentid>
    <comment_count>12</comment_count>
      <attachid>201493</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-12 09:24:57 -0700</bug_when>
    <thetext>Created attachment 201493
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887952</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-12 09:27:20 -0700</bug_when>
    <thetext>Attachment 201493 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WTF/ChangeLog&apos;, u&apos;Source/WTF/WTF.xcodeproj/project.pbxproj&apos;, u&apos;Source/WTF/wtf/FastMalloc.cpp&apos;, u&apos;Source/WTF/wtf/MallocZoneSupport.h&apos;]&quot; exit_code: 1
Source/WTF/wtf/FastMalloc.cpp:1139:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887953</commentid>
    <comment_count>14</comment_count>
      <attachid>201493</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:28:51 -0700</bug_when>
    <thetext>Comment on attachment 201493
Patch

Attachment 201493 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/460422</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887954</commentid>
    <comment_count>15</comment_count>
      <attachid>201493</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:29:59 -0700</bug_when>
    <thetext>Comment on attachment 201493
Patch

Attachment 201493 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/404445</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887955</commentid>
    <comment_count>16</comment_count>
      <attachid>201494</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-12 09:32:11 -0700</bug_when>
    <thetext>Created attachment 201494
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887956</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-12 09:34:07 -0700</bug_when>
    <thetext>Attachment 201494 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WTF/ChangeLog&apos;, u&apos;Source/WTF/WTF.xcodeproj/project.pbxproj&apos;, u&apos;Source/WTF/wtf/FastMalloc.cpp&apos;, u&apos;Source/WTF/wtf/MallocZoneSupport.h&apos;]&quot; exit_code: 1
Source/WTF/wtf/FastMalloc.cpp:1139:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1140:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 2 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887957</commentid>
    <comment_count>18</comment_count>
      <attachid>201494</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:35:02 -0700</bug_when>
    <thetext>Comment on attachment 201494
Patch

Attachment 201494 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/395511</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887958</commentid>
    <comment_count>19</comment_count>
      <attachid>201494</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-12 09:35:54 -0700</bug_when>
    <thetext>Comment on attachment 201494
Patch

Attachment 201494 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/427576</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887960</commentid>
    <comment_count>20</comment_count>
      <attachid>201494</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-05-12 09:42:06 -0700</bug_when>
    <thetext>Comment on attachment 201494
Patch

r=me but please tweak the EFL build system file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>887961</commentid>
    <comment_count>21</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-12 09:44:58 -0700</bug_when>
    <thetext>Committed r149963: &lt;http://trac.webkit.org/changeset/149963&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201489</attachid>
            <date>2013-05-12 09:00:07 -0700</date>
            <delta_ts>2013-05-12 09:08:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115985-20130512085919.patch</filename>
            <type>text/plain</type>
            <size>9229</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5OTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDc3ZDJmYmRmMzEyMmM5ODY5NjgzMTYw
ZmYxMzI1MDJkYWU1MGMwNGEuLjA1OWZmZTUyZGFjOGUwNzJjYjVhMjAyZmQxMTliNTU2YjlkZTg1
MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMDUtMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIFJlbW90ZU1lbW9yeVJlYWRlciBpbnRv
IEZhc3RNYWxsb2MuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTU5ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBSZW1vdGVNZW1vcnlSZWFkZXIgaXMgb25seSB1c2VkIGluIEZhc3RNYWxsb2MuY3Bw
LCBhbmQgZXZlbiBoYWQgb25lIG9mIGl0cyBtZW1iZXIgZnVuY3Rpb25zCisgICAgICAgIGltcGxl
bWVudGVkIHRoZXJlLCBzbyBtb3ZlIHRoZSBlbnRpcmUgY2xhc3MgdGVtcGxhdGUgdGhlcmUgYW5k
IHJlbW92ZSBNYWxsb2Nab25lU3VwcG9ydC5oLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuY3BwOgorICAgICAgICAo
V1RGOjpUQ01hbGxvY19UaHJlYWRDYWNoZTo6Q3JlYXRlQ2FjaGVJZk5lY2Vzc2FyeSk6CisgICAg
ICAgICogd3RmL01hbGxvY1pvbmVTdXBwb3J0Lmg6IFJlbW92ZWQuCisKIDIwMTMtMDUtMTAgIExh
c3psbyBHb21ib3MgIDxsLmdvbWJvc0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZW1vdmUgVVNF
KE9TX1JBTkRPTU5FU1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAwOTRmMTY2N2FkMGFjMzBlNjc5NTcwYWNkZDliODEwYTQ4MjBhMDQ4Li5lZjYwODUxZTJh
YzU1M2Q1NTU5MzVjNWE4ZGQzYTM1NjlkODYyZWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dU
Ri54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTE0Miw3ICsxNDIsNiBAQAogCQlBOEE0NzNFNDE1MUE4MjVC
MDA0MTIzRkYgLyogTWFpblRocmVhZE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFk
TWFjLm1tICovOyB9OwogCQlBOEE0NzNFNTE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJD
NjE1MUE4MjVBMDA0MTIzRkYgLyogTWFpblRocmVhZC5jcHAgKi87IH07CiAJCUE4QTQ3M0U2MTUx
QTgyNUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVh
ZC5oICovOyB9OwotCQlBOEE0NzNFNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFsbG9jWm9uZVN1cHBv
cnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3
MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovOyB9OwogCQlBOEE0
NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyQzkxNTFBODI1QjAwNDEyM0ZGIC8qIE1h
dGhFeHRyYXMuaCAqLzsgfTsKIAkJQThBNDczRTkxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDQTE1
MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmNwcCAqLzsgfTsKIAkJQThBNDczRUExNTFBODI1QjAwNDEy
M0ZGIC8qIE1ENS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQThBNDcyQ0IxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oICovOyB9OwpAQCAtNDE2LDcgKzQx
NSw2IEBACiAJCUE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkTWFjLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWFpblRocmVhZE1hYy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThBNDcyQzYxNTFBODI1QTAwNDEyM0ZGIC8q
IE1haW5UaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWFp
blRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QTQ3MkM3MTUxQTgy
NUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1haW5UaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQThBNDcyQzgx
NTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1hbGxvY1pvbmVTdXBwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhFeHRyYXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQThBNDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNRDUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBOEE0NzJDQjE1MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ENS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNjg4LDcgKzY4Niw2IEBACiAJCQkJQThBNDcyQzMxNTFBODI1QTAwNDEyM0ZGIC8qIExv
Y2tlci5oICovLAogCQkJCUE4QTQ3MkM2MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmNw
cCAqLywKIAkJCQlBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oICovLAot
CQkJCUE4QTQ3MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovLAog
CQkJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8sCiAJCQkJQThB
NDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8sCiAJCQkJQThBNDcyQ0IxNTFBODI1
QjAwNDEyM0ZGIC8qIE1ENS5oICovLApAQCAtOTk5LDcgKzk5Niw2IEBACiAJCQkJQThBNDczRTEx
NTFBODI1QjAwNDEyM0ZGIC8qIExpc3RIYXNoU2V0LmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFMzE1MUE4MjVCMDA0MTIzRkYgLyogTG9ja2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFNjE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
QThBNDczRTcxNTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBOEE0NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQThBNDczRUExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0Q1NDk3QUQxNTg1N0QwMzAwQjVCQzMwIC8qIE1lZGlhVGltZS5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcCBiL1Nv
dXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCmluZGV4IDNkOTQzZDcwNjZhOWVlNjA1MTk3ZWFj
YTY0YWE5MTUyYWEwNWRkZTcuLmM2ODI2YWQ2NGM4OGUzNzE2YWVjYjk1NDMwMzFhYjlmNjc2NDlk
NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCisrKyBiL1NvdXJj
ZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCkBAIC00NTIsNyArNDUyLDYgQEAgZXh0ZXJuICJDIiBX
VEZfRVhQT1JUX1BSSVZBVEUgY29uc3QgaW50IGpzY29yZV9mYXN0bWFsbG9jX2ludHJvc3BlY3Rp
b24gPSAwOwogI2lmZGVmIFdURl9DSEFOR0VTCiAKICNpZiBPUyhEQVJXSU4pCi0jaW5jbHVkZSAi
TWFsbG9jWm9uZVN1cHBvcnQuaCIKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUg
PHd0Zi9WZWN0b3IuaD4KICNlbmRpZgpAQCAtNDY4MiwxNyArNDY4MSw0MyBAQCBzaXplX3QgZmFz
dE1hbGxvY1NpemUoY29uc3Qgdm9pZCogcHRyKQogCiAjaWYgT1MoREFSV0lOKQogCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVD4KLVQqIFJlbW90ZU1lbW9yeVJlYWRlcjo6bmV4dEVudHJ5SW5IYXJkZW5l
ZExpbmtlZExpc3QoVCoqIHJlbW90ZUFkZHJlc3MsIHVpbnRwdHJfdCBlbnRyb3B5KSBjb25zdAot
ewotICAgIFQqKiBsb2NhbEFkZHJlc3MgPSAoKnRoaXMpKHJlbW90ZUFkZHJlc3MpOwotICAgIGlm
ICghbG9jYWxBZGRyZXNzKQotICAgICAgICByZXR1cm4gMDsKLSAgICBUKiBoYXJkZW5lZE5leHQg
PSAqbG9jYWxBZGRyZXNzOwotICAgIGlmICghaGFyZGVuZWROZXh0IHx8IGhhcmRlbmVkTmV4dCA9
PSAodm9pZCopZW50cm9weSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIFhPUl9NQVNL
X1BUUl9XSVRIX0tFWShoYXJkZW5lZE5leHQsIHJlbW90ZUFkZHJlc3MsIGVudHJvcHkpOwotfQor
Y2xhc3MgUmVtb3RlTWVtb3J5UmVhZGVyIHsKKyAgICB0YXNrX3QgbV90YXNrOworICAgIG1lbW9y
eV9yZWFkZXJfdCogbV9yZWFkZXI7CisKK3B1YmxpYzoKKyAgICBSZW1vdGVNZW1vcnlSZWFkZXIo
dGFza190IHRhc2ssIG1lbW9yeV9yZWFkZXJfdCogcmVhZGVyKQorICAgICAgICA6IG1fdGFzayh0
YXNrKQorICAgICAgICAsIG1fcmVhZGVyKHJlYWRlcikKKyAgICB7IH0KKworICAgIHZvaWQqIG9w
ZXJhdG9yKCkodm1fYWRkcmVzc190IGFkZHJlc3MsIHNpemVfdCBzaXplKSBjb25zdAorICAgIHsK
KyAgICAgICAgdm9pZCogb3V0cHV0OworICAgICAgICBrZXJuX3JldHVybl90IGVyciA9ICgqbV9y
ZWFkZXIpKG1fdGFzaywgYWRkcmVzcywgc2l6ZSwgc3RhdGljX2Nhc3Q8dm9pZCoqPigmb3V0cHV0
KSk7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICBvdXRwdXQgPSAwOworICAgICAgICBy
ZXR1cm4gb3V0cHV0OworICAgIH0KKworICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgorICAgIFQq
IG9wZXJhdG9yKCkoVCogYWRkcmVzcywgc2l6ZV90IHNpemUgPSBzaXplb2YoVCkpIGNvbnN0Cisg
ICAgeworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VCo+KCgqdGhpcykocmVpbnRlcnByZXRf
Y2FzdDx2bV9hZGRyZXNzX3Q+KGFkZHJlc3MpLCBzaXplKSk7CisgICAgfQorCisgICAgdGVtcGxh
dGUgPHR5cGVuYW1lIFQ+CisgICAgVCogbmV4dEVudHJ5SW5IYXJkZW5lZExpbmtlZExpc3QoVCoq
IGFkZHJlc3MsIHVpbnRwdHJfdCBlbnRyb3B5KSBjb25zdAorICAgIHsKKyAgICAgICAgVCoqIGxv
Y2FsQWRkcmVzcyA9ICgqdGhpcykocmVtb3RlQWRkcmVzcyk7CisgICAgICAgIGlmICghbG9jYWxB
ZGRyZXNzKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIFQqIGhhcmRlbmVkTmV4dCA9
ICpsb2NhbEFkZHJlc3M7CisgICAgICAgIGlmICghaGFyZGVuZWROZXh0IHx8IGhhcmRlbmVkTmV4
dCA9PSAodm9pZCopZW50cm9weSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1
cm4gWE9SX01BU0tfUFRSX1dJVEhfS0VZKGhhcmRlbmVkTmV4dCwgcmVtb3RlQWRkcmVzcywgZW50
cm9weSk7CisgICAgfQorfTsKIAogY2xhc3MgRnJlZU9iamVjdEZpbmRlciB7CiAgICAgY29uc3Qg
UmVtb3RlTWVtb3J5UmVhZGVyJiBtX3JlYWRlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3Rm
L01hbGxvY1pvbmVTdXBwb3J0LmggYi9Tb3VyY2UvV1RGL3d0Zi9NYWxsb2Nab25lU3VwcG9ydC5o
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZTgwOWM1YTI4YjZlMDI3YWEwYTdlNmM4
NTMwMjBjYmYyM2MyMTViLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL01hbGxvY1pvbmVTdXBwb3J0LmgKKysrIC9kZXYvbnVsbApA
QCAtMSw2NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA3IEFwcGxlIEluYy4gIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSAqIDIuICBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKLSAqIDMuICBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9m
Ci0gKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUgcHJvZHVjdHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkK
LSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YK
LSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBNYWxsb2Nab25lU3VwcG9ydF9oCi0jZGVmaW5l
IE1hbGxvY1pvbmVTdXBwb3J0X2gKLQotI2luY2x1ZGUgPG1hbGxvYy9tYWxsb2MuaD4KLQotbmFt
ZXNwYWNlIFdURiB7Ci0KLWNsYXNzIFJlbW90ZU1lbW9yeVJlYWRlciB7Ci0gICAgdGFza190IG1f
dGFzazsKLSAgICBtZW1vcnlfcmVhZGVyX3QqIG1fcmVhZGVyOwotCi1wdWJsaWM6Ci0gICAgUmVt
b3RlTWVtb3J5UmVhZGVyKHRhc2tfdCB0YXNrLCBtZW1vcnlfcmVhZGVyX3QqIHJlYWRlcikKLSAg
ICAgICAgOiBtX3Rhc2sodGFzaykKLSAgICAgICAgLCBtX3JlYWRlcihyZWFkZXIpCi0gICAgeyB9
Ci0KLSAgICB2b2lkKiBvcGVyYXRvcigpKHZtX2FkZHJlc3NfdCBhZGRyZXNzLCBzaXplX3Qgc2l6
ZSkgY29uc3QKLSAgICB7Ci0gICAgICAgIHZvaWQqIG91dHB1dDsKLSAgICAgICAga2Vybl9yZXR1
cm5fdCBlcnIgPSAoKm1fcmVhZGVyKShtX3Rhc2ssIGFkZHJlc3MsIHNpemUsIHN0YXRpY19jYXN0
PHZvaWQqKj4oJm91dHB1dCkpOwotICAgICAgICBpZiAoZXJyKQotICAgICAgICAgICAgb3V0cHV0
ID0gMDsKLSAgICAgICAgcmV0dXJuIG91dHB1dDsKLSAgICB9Ci0KLSAgICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVD4KLSAgICBUKiBvcGVyYXRvcigpKFQqIGFkZHJlc3MsIHNpemVfdCBzaXplPXNpemVv
ZihUKSkgY29uc3QKLSAgICB7Ci0gICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxUKj4oKCp0aGlz
KShyZWludGVycHJldF9jYXN0PHZtX2FkZHJlc3NfdD4oYWRkcmVzcyksIHNpemUpKTsKLSAgICB9
Ci0KLSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgICBUKiBuZXh0RW50cnlJbkhhcmRlbmVk
TGlua2VkTGlzdChUKiogYWRkcmVzcywgdWludHB0cl90IGVudHJvcHkpIGNvbnN0OwotfTsKLQot
fSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBNYWxsb2Nab25lU3VwcG9ydF9oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201490</attachid>
            <date>2013-05-12 09:08:45 -0700</date>
            <delta_ts>2013-05-12 09:12:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115985-20130512090757.patch</filename>
            <type>text/plain</type>
            <size>10271</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5OTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDc3ZDJmYmRmMzEyMmM5ODY5NjgzMTYw
ZmYxMzI1MDJkYWU1MGMwNGEuLjA1OWZmZTUyZGFjOGUwNzJjYjVhMjAyZmQxMTliNTU2YjlkZTg1
MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMDUtMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIFJlbW90ZU1lbW9yeVJlYWRlciBpbnRv
IEZhc3RNYWxsb2MuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTU5ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBSZW1vdGVNZW1vcnlSZWFkZXIgaXMgb25seSB1c2VkIGluIEZhc3RNYWxsb2MuY3Bw
LCBhbmQgZXZlbiBoYWQgb25lIG9mIGl0cyBtZW1iZXIgZnVuY3Rpb25zCisgICAgICAgIGltcGxl
bWVudGVkIHRoZXJlLCBzbyBtb3ZlIHRoZSBlbnRpcmUgY2xhc3MgdGVtcGxhdGUgdGhlcmUgYW5k
IHJlbW92ZSBNYWxsb2Nab25lU3VwcG9ydC5oLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuY3BwOgorICAgICAgICAo
V1RGOjpUQ01hbGxvY19UaHJlYWRDYWNoZTo6Q3JlYXRlQ2FjaGVJZk5lY2Vzc2FyeSk6CisgICAg
ICAgICogd3RmL01hbGxvY1pvbmVTdXBwb3J0Lmg6IFJlbW92ZWQuCisKIDIwMTMtMDUtMTAgIExh
c3psbyBHb21ib3MgIDxsLmdvbWJvc0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZW1vdmUgVVNF
KE9TX1JBTkRPTU5FU1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAwOTRmMTY2N2FkMGFjMzBlNjc5NTcwYWNkZDliODEwYTQ4MjBhMDQ4Li5lZjYwODUxZTJh
YzU1M2Q1NTU5MzVjNWE4ZGQzYTM1NjlkODYyZWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dU
Ri54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTE0Miw3ICsxNDIsNiBAQAogCQlBOEE0NzNFNDE1MUE4MjVC
MDA0MTIzRkYgLyogTWFpblRocmVhZE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFk
TWFjLm1tICovOyB9OwogCQlBOEE0NzNFNTE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJD
NjE1MUE4MjVBMDA0MTIzRkYgLyogTWFpblRocmVhZC5jcHAgKi87IH07CiAJCUE4QTQ3M0U2MTUx
QTgyNUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVh
ZC5oICovOyB9OwotCQlBOEE0NzNFNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFsbG9jWm9uZVN1cHBv
cnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3
MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovOyB9OwogCQlBOEE0
NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyQzkxNTFBODI1QjAwNDEyM0ZGIC8qIE1h
dGhFeHRyYXMuaCAqLzsgfTsKIAkJQThBNDczRTkxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDQTE1
MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmNwcCAqLzsgfTsKIAkJQThBNDczRUExNTFBODI1QjAwNDEy
M0ZGIC8qIE1ENS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQThBNDcyQ0IxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oICovOyB9OwpAQCAtNDE2LDcgKzQx
NSw2IEBACiAJCUE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkTWFjLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWFpblRocmVhZE1hYy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThBNDcyQzYxNTFBODI1QTAwNDEyM0ZGIC8q
IE1haW5UaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWFp
blRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QTQ3MkM3MTUxQTgy
NUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1haW5UaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQThBNDcyQzgx
NTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1hbGxvY1pvbmVTdXBwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhFeHRyYXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQThBNDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNRDUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBOEE0NzJDQjE1MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ENS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNjg4LDcgKzY4Niw2IEBACiAJCQkJQThBNDcyQzMxNTFBODI1QTAwNDEyM0ZGIC8qIExv
Y2tlci5oICovLAogCQkJCUE4QTQ3MkM2MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmNw
cCAqLywKIAkJCQlBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oICovLAot
CQkJCUE4QTQ3MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovLAog
CQkJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8sCiAJCQkJQThB
NDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8sCiAJCQkJQThBNDcyQ0IxNTFBODI1
QjAwNDEyM0ZGIC8qIE1ENS5oICovLApAQCAtOTk5LDcgKzk5Niw2IEBACiAJCQkJQThBNDczRTEx
NTFBODI1QjAwNDEyM0ZGIC8qIExpc3RIYXNoU2V0LmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFMzE1MUE4MjVCMDA0MTIzRkYgLyogTG9ja2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFNjE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
QThBNDczRTcxNTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBOEE0NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQThBNDczRUExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0Q1NDk3QUQxNTg1N0QwMzAwQjVCQzMwIC8qIE1lZGlhVGltZS5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcCBiL1Nv
dXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCmluZGV4IDNkOTQzZDcwNjZhOWVlNjA1MTk3ZWFj
YTY0YWE5MTUyYWEwNWRkZTcuLjY1NjRhMjUyNGYyZjVlMGQ0MDMzNTQxMTc4OGY4OGEwOWM5NzU0
ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCisrKyBiL1NvdXJj
ZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCkBAIC00NTIsNyArNDUyLDYgQEAgZXh0ZXJuICJDIiBX
VEZfRVhQT1JUX1BSSVZBVEUgY29uc3QgaW50IGpzY29yZV9mYXN0bWFsbG9jX2ludHJvc3BlY3Rp
b24gPSAwOwogI2lmZGVmIFdURl9DSEFOR0VTCiAKICNpZiBPUyhEQVJXSU4pCi0jaW5jbHVkZSAi
TWFsbG9jWm9uZVN1cHBvcnQuaCIKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUg
PHd0Zi9WZWN0b3IuaD4KICNlbmRpZgpAQCAtMTEzMiwxMSArMTEzMSw3IEBAIGNsYXNzIFBhZ2VI
ZWFwQWxsb2NhdG9yIHsKIAogI2lmIGRlZmluZWQoV1RGX0NIQU5HRVMpICYmIE9TKERBUldJTikK
ICAgdGVtcGxhdGUgPGNsYXNzIFJlY29yZGVyPgotICB2b2lkIHJlY29yZEFkbWluaXN0cmF0aXZl
UmVnaW9ucyhSZWNvcmRlciYgcmVjb3JkZXIsIGNvbnN0IFJlbW90ZU1lbW9yeVJlYWRlciYgcmVh
ZGVyKQotICB7Ci0gICAgICBmb3IgKEhhcmRlbmVkU0xMIGFkbWluQWxsb2NhdGlvbiA9IGFsbG9j
YXRlZF9yZWdpb25zXzsgYWRtaW5BbGxvY2F0aW9uOyBhZG1pbkFsbG9jYXRpb24uc2V0VmFsdWUo
cmVhZGVyLm5leHRFbnRyeUluSGFyZGVuZWRMaW5rZWRMaXN0KHJlaW50ZXJwcmV0X2Nhc3Q8dm9p
ZCoqPihhZG1pbkFsbG9jYXRpb24udmFsdWUoKSksIGVudHJvcHlfKSkpCi0gICAgICAgICAgcmVj
b3JkZXIucmVjb3JkUmVnaW9uKHJlaW50ZXJwcmV0X2Nhc3Q8dm1fYWRkcmVzc190PihhZG1pbkFs
bG9jYXRpb24udmFsdWUoKSksIGtBbGxvY0luY3JlbWVudCk7Ci0gIH0KKyAgdm9pZCByZWNvcmRB
ZG1pbmlzdHJhdGl2ZVJlZ2lvbnMoUmVjb3JkZXImLCBjb25zdCBSZW1vdGVNZW1vcnlSZWFkZXIm
KTsKICNlbmRpZgogfTsKIApAQCAtNDY4MiwxNiArNDY3Nyw0OSBAQCBzaXplX3QgZmFzdE1hbGxv
Y1NpemUoY29uc3Qgdm9pZCogcHRyKQogCiAjaWYgT1MoREFSV0lOKQogCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgVD4KLVQqIFJlbW90ZU1lbW9yeVJlYWRlcjo6bmV4dEVudHJ5SW5IYXJkZW5lZExpbmtl
ZExpc3QoVCoqIHJlbW90ZUFkZHJlc3MsIHVpbnRwdHJfdCBlbnRyb3B5KSBjb25zdAorY2xhc3Mg
UmVtb3RlTWVtb3J5UmVhZGVyIHsKKyAgICB0YXNrX3QgbV90YXNrOworICAgIG1lbW9yeV9yZWFk
ZXJfdCogbV9yZWFkZXI7CisKK3B1YmxpYzoKKyAgICBSZW1vdGVNZW1vcnlSZWFkZXIodGFza190
IHRhc2ssIG1lbW9yeV9yZWFkZXJfdCogcmVhZGVyKQorICAgICAgICA6IG1fdGFzayh0YXNrKQor
ICAgICAgICAsIG1fcmVhZGVyKHJlYWRlcikKKyAgICB7IH0KKworICAgIHZvaWQqIG9wZXJhdG9y
KCkodm1fYWRkcmVzc190IGFkZHJlc3MsIHNpemVfdCBzaXplKSBjb25zdAorICAgIHsKKyAgICAg
ICAgdm9pZCogb3V0cHV0OworICAgICAgICBrZXJuX3JldHVybl90IGVyciA9ICgqbV9yZWFkZXIp
KG1fdGFzaywgYWRkcmVzcywgc2l6ZSwgc3RhdGljX2Nhc3Q8dm9pZCoqPigmb3V0cHV0KSk7Cisg
ICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICBvdXRwdXQgPSAwOworICAgICAgICByZXR1cm4g
b3V0cHV0OworICAgIH0KKworICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgorICAgIFQqIG9wZXJh
dG9yKCkoVCogYWRkcmVzcywgc2l6ZV90IHNpemUgPSBzaXplb2YoVCkpIGNvbnN0CisgICAgewor
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VCo+KCgqdGhpcykocmVpbnRlcnByZXRfY2FzdDx2
bV9hZGRyZXNzX3Q+KGFkZHJlc3MpLCBzaXplKSk7CisgICAgfQorCisgICAgdGVtcGxhdGUgPHR5
cGVuYW1lIFQ+CisgICAgVCogbmV4dEVudHJ5SW5IYXJkZW5lZExpbmtlZExpc3QoVCoqIGFkZHJl
c3MsIHVpbnRwdHJfdCBlbnRyb3B5KSBjb25zdAorICAgIHsKKyAgICAgICAgVCoqIGxvY2FsQWRk
cmVzcyA9ICgqdGhpcykocmVtb3RlQWRkcmVzcyk7CisgICAgICAgIGlmICghbG9jYWxBZGRyZXNz
KQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIFQqIGhhcmRlbmVkTmV4dCA9ICpsb2Nh
bEFkZHJlc3M7CisgICAgICAgIGlmICghaGFyZGVuZWROZXh0IHx8IGhhcmRlbmVkTmV4dCA9PSAo
dm9pZCopZW50cm9weSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gWE9S
X01BU0tfUFRSX1dJVEhfS0VZKGhhcmRlbmVkTmV4dCwgcmVtb3RlQWRkcmVzcywgZW50cm9weSk7
CisgICAgfQorfTsKKwordGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFJlY29yZGVyPgor
dm9pZCBQYWdlSGVhcEFsbG9jYXRvcjxUPjo6cmVjb3JkQWRtaW5pc3RyYXRpdmVSZWdpb25zKFJl
Y29yZGVyJiByZWNvcmRlciwgY29uc3QgUmVtb3RlTWVtb3J5UmVhZGVyJiByZWFkZXIpCiB7Ci0g
ICAgVCoqIGxvY2FsQWRkcmVzcyA9ICgqdGhpcykocmVtb3RlQWRkcmVzcyk7Ci0gICAgaWYgKCFs
b2NhbEFkZHJlc3MpCi0gICAgICAgIHJldHVybiAwOwotICAgIFQqIGhhcmRlbmVkTmV4dCA9ICps
b2NhbEFkZHJlc3M7Ci0gICAgaWYgKCFoYXJkZW5lZE5leHQgfHwgaGFyZGVuZWROZXh0ID09ICh2
b2lkKillbnRyb3B5KQotICAgICAgICByZXR1cm4gMDsKLSAgICByZXR1cm4gWE9SX01BU0tfUFRS
X1dJVEhfS0VZKGhhcmRlbmVkTmV4dCwgcmVtb3RlQWRkcmVzcywgZW50cm9weSk7CisgICAgZm9y
IChIYXJkZW5lZFNMTCBhZG1pbkFsbG9jYXRpb24gPSBhbGxvY2F0ZWRfcmVnaW9uc187IGFkbWlu
QWxsb2NhdGlvbjsgYWRtaW5BbGxvY2F0aW9uLnNldFZhbHVlKHJlYWRlci5uZXh0RW50cnlJbkhh
cmRlbmVkTGlua2VkTGlzdChyZWludGVycHJldF9jYXN0PHZvaWQqKj4oYWRtaW5BbGxvY2F0aW9u
LnZhbHVlKCkpLCBlbnRyb3B5XykpKQorICAgICAgICByZWNvcmRlci5yZWNvcmRSZWdpb24ocmVp
bnRlcnByZXRfY2FzdDx2bV9hZGRyZXNzX3Q+KGFkbWluQWxsb2NhdGlvbi52YWx1ZSgpKSwga0Fs
bG9jSW5jcmVtZW50KTsKIH0KIAogY2xhc3MgRnJlZU9iamVjdEZpbmRlciB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV1RGL3d0Zi9NYWxsb2Nab25lU3VwcG9ydC5oIGIvU291cmNlL1dURi93dGYvTWFs
bG9jWm9uZVN1cHBvcnQuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWU4MDljNWEy
OGI2ZTAyN2FhMGE3ZTZjODUzMDIwY2JmMjNjMjE1Yi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9NYWxsb2Nab25lU3VwcG9ydC5o
CisrKyAvZGV2L251bGwKQEAgLTEsNjcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAw
NyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0g
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4gCi0g
KiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikg
bm9yIHRoZSBuYW1lcyBvZgotICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKLSAqICAgICBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIAotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMg
IkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0g
KiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECi0gKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTWFsbG9jWm9uZVN1
cHBvcnRfaAotI2RlZmluZSBNYWxsb2Nab25lU3VwcG9ydF9oCi0KLSNpbmNsdWRlIDxtYWxsb2Mv
bWFsbG9jLmg+Ci0KLW5hbWVzcGFjZSBXVEYgewotCi1jbGFzcyBSZW1vdGVNZW1vcnlSZWFkZXIg
ewotICAgIHRhc2tfdCBtX3Rhc2s7Ci0gICAgbWVtb3J5X3JlYWRlcl90KiBtX3JlYWRlcjsKLQot
cHVibGljOgotICAgIFJlbW90ZU1lbW9yeVJlYWRlcih0YXNrX3QgdGFzaywgbWVtb3J5X3JlYWRl
cl90KiByZWFkZXIpCi0gICAgICAgIDogbV90YXNrKHRhc2spCi0gICAgICAgICwgbV9yZWFkZXIo
cmVhZGVyKQotICAgIHsgfQotCi0gICAgdm9pZCogb3BlcmF0b3IoKSh2bV9hZGRyZXNzX3QgYWRk
cmVzcywgc2l6ZV90IHNpemUpIGNvbnN0Ci0gICAgewotICAgICAgICB2b2lkKiBvdXRwdXQ7Ci0g
ICAgICAgIGtlcm5fcmV0dXJuX3QgZXJyID0gKCptX3JlYWRlcikobV90YXNrLCBhZGRyZXNzLCBz
aXplLCBzdGF0aWNfY2FzdDx2b2lkKio+KCZvdXRwdXQpKTsKLSAgICAgICAgaWYgKGVycikKLSAg
ICAgICAgICAgIG91dHB1dCA9IDA7Ci0gICAgICAgIHJldHVybiBvdXRwdXQ7Ci0gICAgfQotCi0g
ICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gICAgVCogb3BlcmF0b3IoKShUKiBhZGRyZXNzLCBz
aXplX3Qgc2l6ZT1zaXplb2YoVCkpIGNvbnN0Ci0gICAgewotICAgICAgICByZXR1cm4gc3RhdGlj
X2Nhc3Q8VCo+KCgqdGhpcykocmVpbnRlcnByZXRfY2FzdDx2bV9hZGRyZXNzX3Q+KGFkZHJlc3Mp
LCBzaXplKSk7Ci0gICAgfQotCi0gICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gICAgVCogbmV4
dEVudHJ5SW5IYXJkZW5lZExpbmtlZExpc3QoVCoqIGFkZHJlc3MsIHVpbnRwdHJfdCBlbnRyb3B5
KSBjb25zdDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8gTWFsbG9jWm9u
ZVN1cHBvcnRfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201491</attachid>
            <date>2013-05-12 09:12:42 -0700</date>
            <delta_ts>2013-05-12 09:19:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115985-20130512091154.patch</filename>
            <type>text/plain</type>
            <size>9454</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5OTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDc3ZDJmYmRmMzEyMmM5ODY5NjgzMTYw
ZmYxMzI1MDJkYWU1MGMwNGEuLjA1OWZmZTUyZGFjOGUwNzJjYjVhMjAyZmQxMTliNTU2YjlkZTg1
MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMDUtMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIFJlbW90ZU1lbW9yeVJlYWRlciBpbnRv
IEZhc3RNYWxsb2MuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTU5ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBSZW1vdGVNZW1vcnlSZWFkZXIgaXMgb25seSB1c2VkIGluIEZhc3RNYWxsb2MuY3Bw
LCBhbmQgZXZlbiBoYWQgb25lIG9mIGl0cyBtZW1iZXIgZnVuY3Rpb25zCisgICAgICAgIGltcGxl
bWVudGVkIHRoZXJlLCBzbyBtb3ZlIHRoZSBlbnRpcmUgY2xhc3MgdGVtcGxhdGUgdGhlcmUgYW5k
IHJlbW92ZSBNYWxsb2Nab25lU3VwcG9ydC5oLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuY3BwOgorICAgICAgICAo
V1RGOjpUQ01hbGxvY19UaHJlYWRDYWNoZTo6Q3JlYXRlQ2FjaGVJZk5lY2Vzc2FyeSk6CisgICAg
ICAgICogd3RmL01hbGxvY1pvbmVTdXBwb3J0Lmg6IFJlbW92ZWQuCisKIDIwMTMtMDUtMTAgIExh
c3psbyBHb21ib3MgIDxsLmdvbWJvc0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZW1vdmUgVVNF
KE9TX1JBTkRPTU5FU1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAwOTRmMTY2N2FkMGFjMzBlNjc5NTcwYWNkZDliODEwYTQ4MjBhMDQ4Li5lZjYwODUxZTJh
YzU1M2Q1NTU5MzVjNWE4ZGQzYTM1NjlkODYyZWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dU
Ri54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTE0Miw3ICsxNDIsNiBAQAogCQlBOEE0NzNFNDE1MUE4MjVC
MDA0MTIzRkYgLyogTWFpblRocmVhZE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFk
TWFjLm1tICovOyB9OwogCQlBOEE0NzNFNTE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJD
NjE1MUE4MjVBMDA0MTIzRkYgLyogTWFpblRocmVhZC5jcHAgKi87IH07CiAJCUE4QTQ3M0U2MTUx
QTgyNUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVh
ZC5oICovOyB9OwotCQlBOEE0NzNFNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFsbG9jWm9uZVN1cHBv
cnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3
MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovOyB9OwogCQlBOEE0
NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyQzkxNTFBODI1QjAwNDEyM0ZGIC8qIE1h
dGhFeHRyYXMuaCAqLzsgfTsKIAkJQThBNDczRTkxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDQTE1
MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmNwcCAqLzsgfTsKIAkJQThBNDczRUExNTFBODI1QjAwNDEy
M0ZGIC8qIE1ENS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQThBNDcyQ0IxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oICovOyB9OwpAQCAtNDE2LDcgKzQx
NSw2IEBACiAJCUE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkTWFjLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWFpblRocmVhZE1hYy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThBNDcyQzYxNTFBODI1QTAwNDEyM0ZGIC8q
IE1haW5UaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWFp
blRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QTQ3MkM3MTUxQTgy
NUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1haW5UaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQThBNDcyQzgx
NTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1hbGxvY1pvbmVTdXBwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhFeHRyYXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQThBNDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNRDUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBOEE0NzJDQjE1MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ENS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNjg4LDcgKzY4Niw2IEBACiAJCQkJQThBNDcyQzMxNTFBODI1QTAwNDEyM0ZGIC8qIExv
Y2tlci5oICovLAogCQkJCUE4QTQ3MkM2MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmNw
cCAqLywKIAkJCQlBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oICovLAot
CQkJCUE4QTQ3MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovLAog
CQkJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8sCiAJCQkJQThB
NDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8sCiAJCQkJQThBNDcyQ0IxNTFBODI1
QjAwNDEyM0ZGIC8qIE1ENS5oICovLApAQCAtOTk5LDcgKzk5Niw2IEBACiAJCQkJQThBNDczRTEx
NTFBODI1QjAwNDEyM0ZGIC8qIExpc3RIYXNoU2V0LmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFMzE1MUE4MjVCMDA0MTIzRkYgLyogTG9ja2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFNjE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
QThBNDczRTcxNTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBOEE0NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQThBNDczRUExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0Q1NDk3QUQxNTg1N0QwMzAwQjVCQzMwIC8qIE1lZGlhVGltZS5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcCBiL1Nv
dXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCmluZGV4IDNkOTQzZDcwNjZhOWVlNjA1MTk3ZWFj
YTY0YWE5MTUyYWEwNWRkZTcuLmUwMjExYTFiZGNmNjU2NjE3MDQ0ZDljNmZhMmQzMzAwNWQyNDU3
ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCisrKyBiL1NvdXJj
ZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCkBAIC00NTIsNyArNDUyLDYgQEAgZXh0ZXJuICJDIiBX
VEZfRVhQT1JUX1BSSVZBVEUgY29uc3QgaW50IGpzY29yZV9mYXN0bWFsbG9jX2ludHJvc3BlY3Rp
b24gPSAwOwogI2lmZGVmIFdURl9DSEFOR0VTCiAKICNpZiBPUyhEQVJXSU4pCi0jaW5jbHVkZSAi
TWFsbG9jWm9uZVN1cHBvcnQuaCIKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUg
PHd0Zi9WZWN0b3IuaD4KICNlbmRpZgpAQCAtMTA1OSw2ICsxMDU4LDEwIEBAIHN0YXRpYyB2b2lk
KiBNZXRhRGF0YUFsbG9jKHNpemVfdCBieXRlcykgewogICByZXR1cm4gcmVzdWx0OwogfQogCisj
aWYgZGVmaW5lZChXVEZfQ0hBTkdFUykgJiYgT1MoREFSV0lOKQorY2xhc3MgUmVtb3RlTWVtb3J5
UmVhZGVyOworI2VuZGlmCisKIHRlbXBsYXRlIDxjbGFzcyBUPgogY2xhc3MgUGFnZUhlYXBBbGxv
Y2F0b3IgewogIHByaXZhdGU6CkBAIC00NjgxLDE4ICs0Njg0LDQzIEBAIHNpemVfdCBmYXN0TWFs
bG9jU2l6ZShjb25zdCB2b2lkKiBwdHIpCiB9CiAKICNpZiBPUyhEQVJXSU4pCitjbGFzcyBSZW1v
dGVNZW1vcnlSZWFkZXIgeworICAgIHRhc2tfdCBtX3Rhc2s7CisgICAgbWVtb3J5X3JlYWRlcl90
KiBtX3JlYWRlcjsKIAotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1UKiBSZW1vdGVNZW1vcnlSZWFk
ZXI6Om5leHRFbnRyeUluSGFyZGVuZWRMaW5rZWRMaXN0KFQqKiByZW1vdGVBZGRyZXNzLCB1aW50
cHRyX3QgZW50cm9weSkgY29uc3QKLXsKLSAgICBUKiogbG9jYWxBZGRyZXNzID0gKCp0aGlzKShy
ZW1vdGVBZGRyZXNzKTsKLSAgICBpZiAoIWxvY2FsQWRkcmVzcykKLSAgICAgICAgcmV0dXJuIDA7
Ci0gICAgVCogaGFyZGVuZWROZXh0ID0gKmxvY2FsQWRkcmVzczsKLSAgICBpZiAoIWhhcmRlbmVk
TmV4dCB8fCBoYXJkZW5lZE5leHQgPT0gKHZvaWQqKWVudHJvcHkpCi0gICAgICAgIHJldHVybiAw
OwotICAgIHJldHVybiBYT1JfTUFTS19QVFJfV0lUSF9LRVkoaGFyZGVuZWROZXh0LCByZW1vdGVB
ZGRyZXNzLCBlbnRyb3B5KTsKLX0KK3B1YmxpYzoKKyAgICBSZW1vdGVNZW1vcnlSZWFkZXIodGFz
a190IHRhc2ssIG1lbW9yeV9yZWFkZXJfdCogcmVhZGVyKQorICAgICAgICA6IG1fdGFzayh0YXNr
KQorICAgICAgICAsIG1fcmVhZGVyKHJlYWRlcikKKyAgICB7IH0KKworICAgIHZvaWQqIG9wZXJh
dG9yKCkodm1fYWRkcmVzc190IGFkZHJlc3MsIHNpemVfdCBzaXplKSBjb25zdAorICAgIHsKKyAg
ICAgICAgdm9pZCogb3V0cHV0OworICAgICAgICBrZXJuX3JldHVybl90IGVyciA9ICgqbV9yZWFk
ZXIpKG1fdGFzaywgYWRkcmVzcywgc2l6ZSwgc3RhdGljX2Nhc3Q8dm9pZCoqPigmb3V0cHV0KSk7
CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICBvdXRwdXQgPSAwOworICAgICAgICByZXR1
cm4gb3V0cHV0OworICAgIH0KKworICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgorICAgIFQqIG9w
ZXJhdG9yKCkoVCogYWRkcmVzcywgc2l6ZV90IHNpemUgPSBzaXplb2YoVCkpIGNvbnN0CisgICAg
eworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VCo+KCgqdGhpcykocmVpbnRlcnByZXRfY2Fz
dDx2bV9hZGRyZXNzX3Q+KGFkZHJlc3MpLCBzaXplKSk7CisgICAgfQorCisgICAgdGVtcGxhdGUg
PHR5cGVuYW1lIFQ+CisgICAgVCogbmV4dEVudHJ5SW5IYXJkZW5lZExpbmtlZExpc3QoVCoqIGFk
ZHJlc3MsIHVpbnRwdHJfdCBlbnRyb3B5KSBjb25zdAorICAgIHsKKyAgICAgICAgVCoqIGxvY2Fs
QWRkcmVzcyA9ICgqdGhpcykocmVtb3RlQWRkcmVzcyk7CisgICAgICAgIGlmICghbG9jYWxBZGRy
ZXNzKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIFQqIGhhcmRlbmVkTmV4dCA9ICps
b2NhbEFkZHJlc3M7CisgICAgICAgIGlmICghaGFyZGVuZWROZXh0IHx8IGhhcmRlbmVkTmV4dCA9
PSAodm9pZCopZW50cm9weSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4g
WE9SX01BU0tfUFRSX1dJVEhfS0VZKGhhcmRlbmVkTmV4dCwgcmVtb3RlQWRkcmVzcywgZW50cm9w
eSk7CisgICAgfQorfTsKIAogY2xhc3MgRnJlZU9iamVjdEZpbmRlciB7CiAgICAgY29uc3QgUmVt
b3RlTWVtb3J5UmVhZGVyJiBtX3JlYWRlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL01h
bGxvY1pvbmVTdXBwb3J0LmggYi9Tb3VyY2UvV1RGL3d0Zi9NYWxsb2Nab25lU3VwcG9ydC5oCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZTgwOWM1YTI4YjZlMDI3YWEwYTdlNmM4NTMw
MjBjYmYyM2MyMTViLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL1NvdXJjZS9XVEYvd3RmL01hbGxvY1pvbmVTdXBwb3J0LmgKKysrIC9kZXYvbnVsbApAQCAt
MSw2NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA3IEFwcGxlIEluYy4gIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSAqIDIuICBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKLSAqIDMuICBOZWl0aGVyIHRoZSBu
YW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCi0g
KiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkK
LSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAq
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBNYWxsb2Nab25lU3VwcG9ydF9oCi0jZGVmaW5lIE1h
bGxvY1pvbmVTdXBwb3J0X2gKLQotI2luY2x1ZGUgPG1hbGxvYy9tYWxsb2MuaD4KLQotbmFtZXNw
YWNlIFdURiB7Ci0KLWNsYXNzIFJlbW90ZU1lbW9yeVJlYWRlciB7Ci0gICAgdGFza190IG1fdGFz
azsKLSAgICBtZW1vcnlfcmVhZGVyX3QqIG1fcmVhZGVyOwotCi1wdWJsaWM6Ci0gICAgUmVtb3Rl
TWVtb3J5UmVhZGVyKHRhc2tfdCB0YXNrLCBtZW1vcnlfcmVhZGVyX3QqIHJlYWRlcikKLSAgICAg
ICAgOiBtX3Rhc2sodGFzaykKLSAgICAgICAgLCBtX3JlYWRlcihyZWFkZXIpCi0gICAgeyB9Ci0K
LSAgICB2b2lkKiBvcGVyYXRvcigpKHZtX2FkZHJlc3NfdCBhZGRyZXNzLCBzaXplX3Qgc2l6ZSkg
Y29uc3QKLSAgICB7Ci0gICAgICAgIHZvaWQqIG91dHB1dDsKLSAgICAgICAga2Vybl9yZXR1cm5f
dCBlcnIgPSAoKm1fcmVhZGVyKShtX3Rhc2ssIGFkZHJlc3MsIHNpemUsIHN0YXRpY19jYXN0PHZv
aWQqKj4oJm91dHB1dCkpOwotICAgICAgICBpZiAoZXJyKQotICAgICAgICAgICAgb3V0cHV0ID0g
MDsKLSAgICAgICAgcmV0dXJuIG91dHB1dDsKLSAgICB9Ci0KLSAgICB0ZW1wbGF0ZSA8dHlwZW5h
bWUgVD4KLSAgICBUKiBvcGVyYXRvcigpKFQqIGFkZHJlc3MsIHNpemVfdCBzaXplPXNpemVvZihU
KSkgY29uc3QKLSAgICB7Ci0gICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxUKj4oKCp0aGlzKShy
ZWludGVycHJldF9jYXN0PHZtX2FkZHJlc3NfdD4oYWRkcmVzcyksIHNpemUpKTsKLSAgICB9Ci0K
LSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgICBUKiBuZXh0RW50cnlJbkhhcmRlbmVkTGlu
a2VkTGlzdChUKiogYWRkcmVzcywgdWludHB0cl90IGVudHJvcHkpIGNvbnN0OwotfTsKLQotfSAv
LyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBNYWxsb2Nab25lU3VwcG9ydF9oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201492</attachid>
            <date>2013-05-12 09:19:46 -0700</date>
            <delta_ts>2013-05-12 09:24:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115985-20130512091858.patch</filename>
            <type>text/plain</type>
            <size>10566</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5OTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDc3ZDJmYmRmMzEyMmM5ODY5NjgzMTYw
ZmYxMzI1MDJkYWU1MGMwNGEuLjA1OWZmZTUyZGFjOGUwNzJjYjVhMjAyZmQxMTliNTU2YjlkZTg1
MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMDUtMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIFJlbW90ZU1lbW9yeVJlYWRlciBpbnRv
IEZhc3RNYWxsb2MuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTU5ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBSZW1vdGVNZW1vcnlSZWFkZXIgaXMgb25seSB1c2VkIGluIEZhc3RNYWxsb2MuY3Bw
LCBhbmQgZXZlbiBoYWQgb25lIG9mIGl0cyBtZW1iZXIgZnVuY3Rpb25zCisgICAgICAgIGltcGxl
bWVudGVkIHRoZXJlLCBzbyBtb3ZlIHRoZSBlbnRpcmUgY2xhc3MgdGVtcGxhdGUgdGhlcmUgYW5k
IHJlbW92ZSBNYWxsb2Nab25lU3VwcG9ydC5oLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuY3BwOgorICAgICAgICAo
V1RGOjpUQ01hbGxvY19UaHJlYWRDYWNoZTo6Q3JlYXRlQ2FjaGVJZk5lY2Vzc2FyeSk6CisgICAg
ICAgICogd3RmL01hbGxvY1pvbmVTdXBwb3J0Lmg6IFJlbW92ZWQuCisKIDIwMTMtMDUtMTAgIExh
c3psbyBHb21ib3MgIDxsLmdvbWJvc0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZW1vdmUgVVNF
KE9TX1JBTkRPTU5FU1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAwOTRmMTY2N2FkMGFjMzBlNjc5NTcwYWNkZDliODEwYTQ4MjBhMDQ4Li5lZjYwODUxZTJh
YzU1M2Q1NTU5MzVjNWE4ZGQzYTM1NjlkODYyZWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dU
Ri54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTE0Miw3ICsxNDIsNiBAQAogCQlBOEE0NzNFNDE1MUE4MjVC
MDA0MTIzRkYgLyogTWFpblRocmVhZE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFk
TWFjLm1tICovOyB9OwogCQlBOEE0NzNFNTE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJD
NjE1MUE4MjVBMDA0MTIzRkYgLyogTWFpblRocmVhZC5jcHAgKi87IH07CiAJCUE4QTQ3M0U2MTUx
QTgyNUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVh
ZC5oICovOyB9OwotCQlBOEE0NzNFNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFsbG9jWm9uZVN1cHBv
cnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3
MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovOyB9OwogCQlBOEE0
NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyQzkxNTFBODI1QjAwNDEyM0ZGIC8qIE1h
dGhFeHRyYXMuaCAqLzsgfTsKIAkJQThBNDczRTkxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDQTE1
MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmNwcCAqLzsgfTsKIAkJQThBNDczRUExNTFBODI1QjAwNDEy
M0ZGIC8qIE1ENS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQThBNDcyQ0IxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oICovOyB9OwpAQCAtNDE2LDcgKzQx
NSw2IEBACiAJCUE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkTWFjLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWFpblRocmVhZE1hYy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThBNDcyQzYxNTFBODI1QTAwNDEyM0ZGIC8q
IE1haW5UaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWFp
blRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QTQ3MkM3MTUxQTgy
NUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1haW5UaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQThBNDcyQzgx
NTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1hbGxvY1pvbmVTdXBwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhFeHRyYXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQThBNDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNRDUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBOEE0NzJDQjE1MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ENS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNjg4LDcgKzY4Niw2IEBACiAJCQkJQThBNDcyQzMxNTFBODI1QTAwNDEyM0ZGIC8qIExv
Y2tlci5oICovLAogCQkJCUE4QTQ3MkM2MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmNw
cCAqLywKIAkJCQlBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oICovLAot
CQkJCUE4QTQ3MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovLAog
CQkJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8sCiAJCQkJQThB
NDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8sCiAJCQkJQThBNDcyQ0IxNTFBODI1
QjAwNDEyM0ZGIC8qIE1ENS5oICovLApAQCAtOTk5LDcgKzk5Niw2IEBACiAJCQkJQThBNDczRTEx
NTFBODI1QjAwNDEyM0ZGIC8qIExpc3RIYXNoU2V0LmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFMzE1MUE4MjVCMDA0MTIzRkYgLyogTG9ja2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFNjE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
QThBNDczRTcxNTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBOEE0NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQThBNDczRUExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0Q1NDk3QUQxNTg1N0QwMzAwQjVCQzMwIC8qIE1lZGlhVGltZS5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcCBiL1Nv
dXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCmluZGV4IDNkOTQzZDcwNjZhOWVlNjA1MTk3ZWFj
YTY0YWE5MTUyYWEwNWRkZTcuLmE5ZWZmNGFiZDYzMTc5M2ExYjAzODEwYWE5NGFkNDljMzM1OWEz
NmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCisrKyBiL1NvdXJj
ZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCkBAIC00NTIsNyArNDUyLDYgQEAgZXh0ZXJuICJDIiBX
VEZfRVhQT1JUX1BSSVZBVEUgY29uc3QgaW50IGpzY29yZV9mYXN0bWFsbG9jX2ludHJvc3BlY3Rp
b24gPSAwOwogI2lmZGVmIFdURl9DSEFOR0VTCiAKICNpZiBPUyhEQVJXSU4pCi0jaW5jbHVkZSAi
TWFsbG9jWm9uZVN1cHBvcnQuaCIKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUg
PHd0Zi9WZWN0b3IuaD4KICNlbmRpZgpAQCAtMTA1OSw2ICsxMDU4LDEwIEBAIHN0YXRpYyB2b2lk
KiBNZXRhRGF0YUFsbG9jKHNpemVfdCBieXRlcykgewogICByZXR1cm4gcmVzdWx0OwogfQogCisj
aWYgZGVmaW5lZChXVEZfQ0hBTkdFUykgJiYgT1MoREFSV0lOKQorY2xhc3MgUmVtb3RlTWVtb3J5
UmVhZGVyOworI2VuZGlmCisKIHRlbXBsYXRlIDxjbGFzcyBUPgogY2xhc3MgUGFnZUhlYXBBbGxv
Y2F0b3IgewogIHByaXZhdGU6CkBAIC0xMTMxLDEyICsxMTM0LDggQEAgY2xhc3MgUGFnZUhlYXBB
bGxvY2F0b3IgewogICBpbnQgaW51c2UoKSBjb25zdCB7IHJldHVybiBpbnVzZV87IH0KIAogI2lm
IGRlZmluZWQoV1RGX0NIQU5HRVMpICYmIE9TKERBUldJTikKLSAgdGVtcGxhdGUgPGNsYXNzIFJl
Y29yZGVyPgotICB2b2lkIHJlY29yZEFkbWluaXN0cmF0aXZlUmVnaW9ucyhSZWNvcmRlciYgcmVj
b3JkZXIsIGNvbnN0IFJlbW90ZU1lbW9yeVJlYWRlciYgcmVhZGVyKQotICB7Ci0gICAgICBmb3Ig
KEhhcmRlbmVkU0xMIGFkbWluQWxsb2NhdGlvbiA9IGFsbG9jYXRlZF9yZWdpb25zXzsgYWRtaW5B
bGxvY2F0aW9uOyBhZG1pbkFsbG9jYXRpb24uc2V0VmFsdWUocmVhZGVyLm5leHRFbnRyeUluSGFy
ZGVuZWRMaW5rZWRMaXN0KHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPihhZG1pbkFsbG9jYXRpb24u
dmFsdWUoKSksIGVudHJvcHlfKSkpCi0gICAgICAgICAgcmVjb3JkZXIucmVjb3JkUmVnaW9uKHJl
aW50ZXJwcmV0X2Nhc3Q8dm1fYWRkcmVzc190PihhZG1pbkFsbG9jYXRpb24udmFsdWUoKSksIGtB
bGxvY0luY3JlbWVudCk7Ci0gIH0KKyAgdGVtcGxhdGUgPHR5cGVuYW1lIFJlY29yZGVyPgordm9p
ZCByZWNvcmRBZG1pbmlzdHJhdGl2ZVJlZ2lvbnMoUmVjb3JkZXImLCBjb25zdCBSZW1vdGVNZW1v
cnlSZWFkZXImKTsKICNlbmRpZgogfTsKIApAQCAtNDY4MSwxNyArNDY4MCw0OSBAQCBzaXplX3Qg
ZmFzdE1hbGxvY1NpemUoY29uc3Qgdm9pZCogcHRyKQogfQogCiAjaWYgT1MoREFSV0lOKQorY2xh
c3MgUmVtb3RlTWVtb3J5UmVhZGVyIHsKKyAgICB0YXNrX3QgbV90YXNrOworICAgIG1lbW9yeV9y
ZWFkZXJfdCogbV9yZWFkZXI7CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotVCogUmVtb3RlTWVt
b3J5UmVhZGVyOjpuZXh0RW50cnlJbkhhcmRlbmVkTGlua2VkTGlzdChUKiogcmVtb3RlQWRkcmVz
cywgdWludHB0cl90IGVudHJvcHkpIGNvbnN0CitwdWJsaWM6CisgICAgUmVtb3RlTWVtb3J5UmVh
ZGVyKHRhc2tfdCB0YXNrLCBtZW1vcnlfcmVhZGVyX3QqIHJlYWRlcikKKyAgICAgICAgOiBtX3Rh
c2sodGFzaykKKyAgICAgICAgLCBtX3JlYWRlcihyZWFkZXIpCisgICAgeyB9CisKKyAgICB2b2lk
KiBvcGVyYXRvcigpKHZtX2FkZHJlc3NfdCBhZGRyZXNzLCBzaXplX3Qgc2l6ZSkgY29uc3QKKyAg
ICB7CisgICAgICAgIHZvaWQqIG91dHB1dDsKKyAgICAgICAga2Vybl9yZXR1cm5fdCBlcnIgPSAo
Km1fcmVhZGVyKShtX3Rhc2ssIGFkZHJlc3MsIHNpemUsIHN0YXRpY19jYXN0PHZvaWQqKj4oJm91
dHB1dCkpOworICAgICAgICBpZiAoZXJyKQorICAgICAgICAgICAgb3V0cHV0ID0gMDsKKyAgICAg
ICAgcmV0dXJuIG91dHB1dDsKKyAgICB9CisKKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KKyAg
ICBUKiBvcGVyYXRvcigpKFQqIGFkZHJlc3MsIHNpemVfdCBzaXplID0gc2l6ZW9mKFQpKSBjb25z
dAorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFQqPigoKnRoaXMpKHJlaW50ZXJw
cmV0X2Nhc3Q8dm1fYWRkcmVzc190PihhZGRyZXNzKSwgc2l6ZSkpOworICAgIH0KKworICAgIHRl
bXBsYXRlIDx0eXBlbmFtZSBUPgorICAgIFQqIG5leHRFbnRyeUluSGFyZGVuZWRMaW5rZWRMaXN0
KFQqKiBhZGRyZXNzLCB1aW50cHRyX3QgZW50cm9weSkgY29uc3QKKyAgICB7CisgICAgICAgIFQq
KiBsb2NhbEFkZHJlc3MgPSAoKnRoaXMpKHJlbW90ZUFkZHJlc3MpOworICAgICAgICBpZiAoIWxv
Y2FsQWRkcmVzcykKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBUKiBoYXJkZW5lZE5l
eHQgPSAqbG9jYWxBZGRyZXNzOworICAgICAgICBpZiAoIWhhcmRlbmVkTmV4dCB8fCBoYXJkZW5l
ZE5leHQgPT0gKHZvaWQqKWVudHJvcHkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAg
cmV0dXJuIFhPUl9NQVNLX1BUUl9XSVRIX0tFWShoYXJkZW5lZE5leHQsIHJlbW90ZUFkZHJlc3Ms
IGVudHJvcHkpOworICAgIH0KK307CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBULCB0eXBlbmFtZSBS
ZWNvcmRlcj4KK3ZvaWQgUGFnZUhlYXBBbGxvY2F0b3I8VD46OnJlY29yZEFkbWluaXN0cmF0aXZl
UmVnaW9ucyhSZWNvcmRlciYgcmVjb3JkZXIsIGNvbnN0IFJlbW90ZU1lbW9yeVJlYWRlciYgcmVh
ZGVyKQogewotICAgIFQqKiBsb2NhbEFkZHJlc3MgPSAoKnRoaXMpKHJlbW90ZUFkZHJlc3MpOwot
ICAgIGlmICghbG9jYWxBZGRyZXNzKQotICAgICAgICByZXR1cm4gMDsKLSAgICBUKiBoYXJkZW5l
ZE5leHQgPSAqbG9jYWxBZGRyZXNzOwotICAgIGlmICghaGFyZGVuZWROZXh0IHx8IGhhcmRlbmVk
TmV4dCA9PSAodm9pZCopZW50cm9weSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIFhP
Ul9NQVNLX1BUUl9XSVRIX0tFWShoYXJkZW5lZE5leHQsIHJlbW90ZUFkZHJlc3MsIGVudHJvcHkp
OworICAgIGZvciAoSGFyZGVuZWRTTEwgYWRtaW5BbGxvY2F0aW9uID0gYWxsb2NhdGVkX3JlZ2lv
bnNfOyBhZG1pbkFsbG9jYXRpb247IGFkbWluQWxsb2NhdGlvbi5zZXRWYWx1ZShyZWFkZXIubmV4
dEVudHJ5SW5IYXJkZW5lZExpbmtlZExpc3QocmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KGFkbWlu
QWxsb2NhdGlvbi52YWx1ZSgpKSwgZW50cm9weV8pKSkKKyAgICAgICAgcmVjb3JkZXIucmVjb3Jk
UmVnaW9uKHJlaW50ZXJwcmV0X2Nhc3Q8dm1fYWRkcmVzc190PihhZG1pbkFsbG9jYXRpb24udmFs
dWUoKSksIGtBbGxvY0luY3JlbWVudCk7CiB9CiAKIGNsYXNzIEZyZWVPYmplY3RGaW5kZXIgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvTWFsbG9jWm9uZVN1cHBvcnQuaCBiL1NvdXJjZS9X
VEYvd3RmL01hbGxvY1pvbmVTdXBwb3J0LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGVlODA5YzVhMjhiNmUwMjdhYTBhN2U2Yzg1MzAyMGNiZjIzYzIxNWIuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dURi93dGYvTWFsbG9jWm9u
ZVN1cHBvcnQuaAorKysgL2Rldi9udWxsCkBAIC0xLDY3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMDcgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiAgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuIAotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uIAotICogMy4gIE5laXRoZXIgdGhlIG5hbWUgb2YgQXBwbGUgQ29tcHV0ZXIsIEluYy4g
KCJBcHBsZSIpIG5vciB0aGUgbmFtZXMgb2YKLSAqICAgICBpdHMgY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCi0gKiAgICAgZnJv
bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9u
LiAKLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09O
VFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIE1h
bGxvY1pvbmVTdXBwb3J0X2gKLSNkZWZpbmUgTWFsbG9jWm9uZVN1cHBvcnRfaAotCi0jaW5jbHVk
ZSA8bWFsbG9jL21hbGxvYy5oPgotCi1uYW1lc3BhY2UgV1RGIHsKLQotY2xhc3MgUmVtb3RlTWVt
b3J5UmVhZGVyIHsKLSAgICB0YXNrX3QgbV90YXNrOwotICAgIG1lbW9yeV9yZWFkZXJfdCogbV9y
ZWFkZXI7Ci0KLXB1YmxpYzoKLSAgICBSZW1vdGVNZW1vcnlSZWFkZXIodGFza190IHRhc2ssIG1l
bW9yeV9yZWFkZXJfdCogcmVhZGVyKQotICAgICAgICA6IG1fdGFzayh0YXNrKQotICAgICAgICAs
IG1fcmVhZGVyKHJlYWRlcikKLSAgICB7IH0KLQotICAgIHZvaWQqIG9wZXJhdG9yKCkodm1fYWRk
cmVzc190IGFkZHJlc3MsIHNpemVfdCBzaXplKSBjb25zdAotICAgIHsKLSAgICAgICAgdm9pZCog
b3V0cHV0OwotICAgICAgICBrZXJuX3JldHVybl90IGVyciA9ICgqbV9yZWFkZXIpKG1fdGFzaywg
YWRkcmVzcywgc2l6ZSwgc3RhdGljX2Nhc3Q8dm9pZCoqPigmb3V0cHV0KSk7Ci0gICAgICAgIGlm
IChlcnIpCi0gICAgICAgICAgICBvdXRwdXQgPSAwOwotICAgICAgICByZXR1cm4gb3V0cHV0Owot
ICAgIH0KLQotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICAgIFQqIG9wZXJhdG9yKCkoVCog
YWRkcmVzcywgc2l6ZV90IHNpemU9c2l6ZW9mKFQpKSBjb25zdAotICAgIHsKLSAgICAgICAgcmV0
dXJuIHN0YXRpY19jYXN0PFQqPigoKnRoaXMpKHJlaW50ZXJwcmV0X2Nhc3Q8dm1fYWRkcmVzc190
PihhZGRyZXNzKSwgc2l6ZSkpOwotICAgIH0KLQotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgot
ICAgIFQqIG5leHRFbnRyeUluSGFyZGVuZWRMaW5rZWRMaXN0KFQqKiBhZGRyZXNzLCB1aW50cHRy
X3QgZW50cm9weSkgY29uc3Q7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8v
IE1hbGxvY1pvbmVTdXBwb3J0X2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201493</attachid>
            <date>2013-05-12 09:24:57 -0700</date>
            <delta_ts>2013-05-12 09:32:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115985-20130512092409.patch</filename>
            <type>text/plain</type>
            <size>10991</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5OTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDc3ZDJmYmRmMzEyMmM5ODY5NjgzMTYw
ZmYxMzI1MDJkYWU1MGMwNGEuLjA1OWZmZTUyZGFjOGUwNzJjYjVhMjAyZmQxMTliNTU2YjlkZTg1
MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMDUtMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIFJlbW90ZU1lbW9yeVJlYWRlciBpbnRv
IEZhc3RNYWxsb2MuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTU5ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBSZW1vdGVNZW1vcnlSZWFkZXIgaXMgb25seSB1c2VkIGluIEZhc3RNYWxsb2MuY3Bw
LCBhbmQgZXZlbiBoYWQgb25lIG9mIGl0cyBtZW1iZXIgZnVuY3Rpb25zCisgICAgICAgIGltcGxl
bWVudGVkIHRoZXJlLCBzbyBtb3ZlIHRoZSBlbnRpcmUgY2xhc3MgdGVtcGxhdGUgdGhlcmUgYW5k
IHJlbW92ZSBNYWxsb2Nab25lU3VwcG9ydC5oLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuY3BwOgorICAgICAgICAo
V1RGOjpUQ01hbGxvY19UaHJlYWRDYWNoZTo6Q3JlYXRlQ2FjaGVJZk5lY2Vzc2FyeSk6CisgICAg
ICAgICogd3RmL01hbGxvY1pvbmVTdXBwb3J0Lmg6IFJlbW92ZWQuCisKIDIwMTMtMDUtMTAgIExh
c3psbyBHb21ib3MgIDxsLmdvbWJvc0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZW1vdmUgVVNF
KE9TX1JBTkRPTU5FU1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAwOTRmMTY2N2FkMGFjMzBlNjc5NTcwYWNkZDliODEwYTQ4MjBhMDQ4Li5lZjYwODUxZTJh
YzU1M2Q1NTU5MzVjNWE4ZGQzYTM1NjlkODYyZWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dU
Ri54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTE0Miw3ICsxNDIsNiBAQAogCQlBOEE0NzNFNDE1MUE4MjVC
MDA0MTIzRkYgLyogTWFpblRocmVhZE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFk
TWFjLm1tICovOyB9OwogCQlBOEE0NzNFNTE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJD
NjE1MUE4MjVBMDA0MTIzRkYgLyogTWFpblRocmVhZC5jcHAgKi87IH07CiAJCUE4QTQ3M0U2MTUx
QTgyNUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVh
ZC5oICovOyB9OwotCQlBOEE0NzNFNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFsbG9jWm9uZVN1cHBv
cnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3
MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovOyB9OwogCQlBOEE0
NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyQzkxNTFBODI1QjAwNDEyM0ZGIC8qIE1h
dGhFeHRyYXMuaCAqLzsgfTsKIAkJQThBNDczRTkxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDQTE1
MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmNwcCAqLzsgfTsKIAkJQThBNDczRUExNTFBODI1QjAwNDEy
M0ZGIC8qIE1ENS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQThBNDcyQ0IxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oICovOyB9OwpAQCAtNDE2LDcgKzQx
NSw2IEBACiAJCUE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkTWFjLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWFpblRocmVhZE1hYy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThBNDcyQzYxNTFBODI1QTAwNDEyM0ZGIC8q
IE1haW5UaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWFp
blRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QTQ3MkM3MTUxQTgy
NUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1haW5UaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQThBNDcyQzgx
NTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1hbGxvY1pvbmVTdXBwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhFeHRyYXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQThBNDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNRDUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBOEE0NzJDQjE1MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ENS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNjg4LDcgKzY4Niw2IEBACiAJCQkJQThBNDcyQzMxNTFBODI1QTAwNDEyM0ZGIC8qIExv
Y2tlci5oICovLAogCQkJCUE4QTQ3MkM2MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmNw
cCAqLywKIAkJCQlBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oICovLAot
CQkJCUE4QTQ3MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovLAog
CQkJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8sCiAJCQkJQThB
NDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8sCiAJCQkJQThBNDcyQ0IxNTFBODI1
QjAwNDEyM0ZGIC8qIE1ENS5oICovLApAQCAtOTk5LDcgKzk5Niw2IEBACiAJCQkJQThBNDczRTEx
NTFBODI1QjAwNDEyM0ZGIC8qIExpc3RIYXNoU2V0LmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFMzE1MUE4MjVCMDA0MTIzRkYgLyogTG9ja2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFNjE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
QThBNDczRTcxNTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBOEE0NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQThBNDczRUExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0Q1NDk3QUQxNTg1N0QwMzAwQjVCQzMwIC8qIE1lZGlhVGltZS5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcCBiL1Nv
dXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCmluZGV4IDNkOTQzZDcwNjZhOWVlNjA1MTk3ZWFj
YTY0YWE5MTUyYWEwNWRkZTcuLjk5YjI1OTliMDljMWRmY2FiOGU3MjI5MmM3MWI5YTljMjBmYzBk
ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCisrKyBiL1NvdXJj
ZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCkBAIC05MCw2ICs5MCwxMCBAQAogI2luY2x1ZGUgPHd0
Zi9TdGRMaWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvVW51c2VkUGFyYW0uaD4KIAorI2lmIE9T
KERBUldJTikKKyNpbmNsdWRlIDxtYWxsb2MvbWFsbG9jLmg+CisjZW5kaWYKKwogI2lmbmRlZiBO
T19UQ01BTExPQ19TQU1QTEVTCiAjaWZkZWYgV1RGX0NIQU5HRVMKICNkZWZpbmUgTk9fVENNQUxM
T0NfU0FNUExFUwpAQCAtMjMxLDkgKzIzNSw3IEBAIFRyeU1hbGxvY1JldHVyblZhbHVlIHRyeUZh
c3RaZXJvZWRNYWxsb2Moc2l6ZV90IG4pCiAKICNpZiBGT1JDRV9TWVNURU1fTUFMTE9DCiAKLSNp
ZiBPUyhEQVJXSU4pCi0jaW5jbHVkZSA8bWFsbG9jL21hbGxvYy5oPgotI2VsaWYgT1MoV0lORE9X
UykKKyNpZiBPUyhXSU5ET1dTKQogI2luY2x1ZGUgPG1hbGxvYy5oPgogI2VuZGlmCiAKQEAgLTQ1
Miw3ICs0NTQsNiBAQCBleHRlcm4gIkMiIFdURl9FWFBPUlRfUFJJVkFURSBjb25zdCBpbnQganNj
b3JlX2Zhc3RtYWxsb2NfaW50cm9zcGVjdGlvbiA9IDA7CiAjaWZkZWYgV1RGX0NIQU5HRVMKIAog
I2lmIE9TKERBUldJTikKLSNpbmNsdWRlICJNYWxsb2Nab25lU3VwcG9ydC5oIgogI2luY2x1ZGUg
PHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2VuZGlmCkBAIC0xMDU5
LDYgKzEwNjAsMTAgQEAgc3RhdGljIHZvaWQqIE1ldGFEYXRhQWxsb2Moc2l6ZV90IGJ5dGVzKSB7
CiAgIHJldHVybiByZXN1bHQ7CiB9CiAKKyNpZiBkZWZpbmVkKFdURl9DSEFOR0VTKSAmJiBPUyhE
QVJXSU4pCitjbGFzcyBSZW1vdGVNZW1vcnlSZWFkZXI7CisjZW5kaWYKKwogdGVtcGxhdGUgPGNs
YXNzIFQ+CiBjbGFzcyBQYWdlSGVhcEFsbG9jYXRvciB7CiAgcHJpdmF0ZToKQEAgLTExMzEsMTIg
KzExMzYsOCBAQCBjbGFzcyBQYWdlSGVhcEFsbG9jYXRvciB7CiAgIGludCBpbnVzZSgpIGNvbnN0
IHsgcmV0dXJuIGludXNlXzsgfQogCiAjaWYgZGVmaW5lZChXVEZfQ0hBTkdFUykgJiYgT1MoREFS
V0lOKQotICB0ZW1wbGF0ZSA8Y2xhc3MgUmVjb3JkZXI+Ci0gIHZvaWQgcmVjb3JkQWRtaW5pc3Ry
YXRpdmVSZWdpb25zKFJlY29yZGVyJiByZWNvcmRlciwgY29uc3QgUmVtb3RlTWVtb3J5UmVhZGVy
JiByZWFkZXIpCi0gIHsKLSAgICAgIGZvciAoSGFyZGVuZWRTTEwgYWRtaW5BbGxvY2F0aW9uID0g
YWxsb2NhdGVkX3JlZ2lvbnNfOyBhZG1pbkFsbG9jYXRpb247IGFkbWluQWxsb2NhdGlvbi5zZXRW
YWx1ZShyZWFkZXIubmV4dEVudHJ5SW5IYXJkZW5lZExpbmtlZExpc3QocmVpbnRlcnByZXRfY2Fz
dDx2b2lkKio+KGFkbWluQWxsb2NhdGlvbi52YWx1ZSgpKSwgZW50cm9weV8pKSkKLSAgICAgICAg
ICByZWNvcmRlci5yZWNvcmRSZWdpb24ocmVpbnRlcnByZXRfY2FzdDx2bV9hZGRyZXNzX3Q+KGFk
bWluQWxsb2NhdGlvbi52YWx1ZSgpKSwga0FsbG9jSW5jcmVtZW50KTsKLSAgfQorICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgUmVjb3JkZXI+Cit2b2lkIHJlY29yZEFkbWluaXN0cmF0aXZlUmVnaW9ucyhS
ZWNvcmRlciYsIGNvbnN0IFJlbW90ZU1lbW9yeVJlYWRlciYpOwogI2VuZGlmCiB9OwogCkBAIC00
NjgxLDE3ICs0NjgyLDQ5IEBAIHNpemVfdCBmYXN0TWFsbG9jU2l6ZShjb25zdCB2b2lkKiBwdHIp
CiB9CiAKICNpZiBPUyhEQVJXSU4pCitjbGFzcyBSZW1vdGVNZW1vcnlSZWFkZXIgeworICAgIHRh
c2tfdCBtX3Rhc2s7CisgICAgbWVtb3J5X3JlYWRlcl90KiBtX3JlYWRlcjsKIAotdGVtcGxhdGUg
PHR5cGVuYW1lIFQ+Ci1UKiBSZW1vdGVNZW1vcnlSZWFkZXI6Om5leHRFbnRyeUluSGFyZGVuZWRM
aW5rZWRMaXN0KFQqKiByZW1vdGVBZGRyZXNzLCB1aW50cHRyX3QgZW50cm9weSkgY29uc3QKK3B1
YmxpYzoKKyAgICBSZW1vdGVNZW1vcnlSZWFkZXIodGFza190IHRhc2ssIG1lbW9yeV9yZWFkZXJf
dCogcmVhZGVyKQorICAgICAgICA6IG1fdGFzayh0YXNrKQorICAgICAgICAsIG1fcmVhZGVyKHJl
YWRlcikKKyAgICB7IH0KKworICAgIHZvaWQqIG9wZXJhdG9yKCkodm1fYWRkcmVzc190IGFkZHJl
c3MsIHNpemVfdCBzaXplKSBjb25zdAorICAgIHsKKyAgICAgICAgdm9pZCogb3V0cHV0OworICAg
ICAgICBrZXJuX3JldHVybl90IGVyciA9ICgqbV9yZWFkZXIpKG1fdGFzaywgYWRkcmVzcywgc2l6
ZSwgc3RhdGljX2Nhc3Q8dm9pZCoqPigmb3V0cHV0KSk7CisgICAgICAgIGlmIChlcnIpCisgICAg
ICAgICAgICBvdXRwdXQgPSAwOworICAgICAgICByZXR1cm4gb3V0cHV0OworICAgIH0KKworICAg
IHRlbXBsYXRlIDx0eXBlbmFtZSBUPgorICAgIFQqIG9wZXJhdG9yKCkoVCogYWRkcmVzcywgc2l6
ZV90IHNpemUgPSBzaXplb2YoVCkpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gc3RhdGlj
X2Nhc3Q8VCo+KCgqdGhpcykocmVpbnRlcnByZXRfY2FzdDx2bV9hZGRyZXNzX3Q+KGFkZHJlc3Mp
LCBzaXplKSk7CisgICAgfQorCisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CisgICAgVCogbmV4
dEVudHJ5SW5IYXJkZW5lZExpbmtlZExpc3QoVCoqIGFkZHJlc3MsIHVpbnRwdHJfdCBlbnRyb3B5
KSBjb25zdAorICAgIHsKKyAgICAgICAgVCoqIGxvY2FsQWRkcmVzcyA9ICgqdGhpcykocmVtb3Rl
QWRkcmVzcyk7CisgICAgICAgIGlmICghbG9jYWxBZGRyZXNzKQorICAgICAgICAgICAgcmV0dXJu
IDA7CisgICAgICAgIFQqIGhhcmRlbmVkTmV4dCA9ICpsb2NhbEFkZHJlc3M7CisgICAgICAgIGlm
ICghaGFyZGVuZWROZXh0IHx8IGhhcmRlbmVkTmV4dCA9PSAodm9pZCopZW50cm9weSkKKyAgICAg
ICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gWE9SX01BU0tfUFRSX1dJVEhfS0VZKGhh
cmRlbmVkTmV4dCwgcmVtb3RlQWRkcmVzcywgZW50cm9weSk7CisgICAgfQorfTsKKwordGVtcGxh
dGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFJlY29yZGVyPgordm9pZCBQYWdlSGVhcEFsbG9jYXRv
cjxUPjo6cmVjb3JkQWRtaW5pc3RyYXRpdmVSZWdpb25zKFJlY29yZGVyJiByZWNvcmRlciwgY29u
c3QgUmVtb3RlTWVtb3J5UmVhZGVyJiByZWFkZXIpCiB7Ci0gICAgVCoqIGxvY2FsQWRkcmVzcyA9
ICgqdGhpcykocmVtb3RlQWRkcmVzcyk7Ci0gICAgaWYgKCFsb2NhbEFkZHJlc3MpCi0gICAgICAg
IHJldHVybiAwOwotICAgIFQqIGhhcmRlbmVkTmV4dCA9ICpsb2NhbEFkZHJlc3M7Ci0gICAgaWYg
KCFoYXJkZW5lZE5leHQgfHwgaGFyZGVuZWROZXh0ID09ICh2b2lkKillbnRyb3B5KQotICAgICAg
ICByZXR1cm4gMDsKLSAgICByZXR1cm4gWE9SX01BU0tfUFRSX1dJVEhfS0VZKGhhcmRlbmVkTmV4
dCwgcmVtb3RlQWRkcmVzcywgZW50cm9weSk7CisgICAgZm9yIChIYXJkZW5lZFNMTCBhZG1pbkFs
bG9jYXRpb24gPSBhbGxvY2F0ZWRfcmVnaW9uc187IGFkbWluQWxsb2NhdGlvbjsgYWRtaW5BbGxv
Y2F0aW9uLnNldFZhbHVlKHJlYWRlci5uZXh0RW50cnlJbkhhcmRlbmVkTGlua2VkTGlzdChyZWlu
dGVycHJldF9jYXN0PHZvaWQqKj4oYWRtaW5BbGxvY2F0aW9uLnZhbHVlKCkpLCBlbnRyb3B5Xykp
KQorICAgICAgICByZWNvcmRlci5yZWNvcmRSZWdpb24ocmVpbnRlcnByZXRfY2FzdDx2bV9hZGRy
ZXNzX3Q+KGFkbWluQWxsb2NhdGlvbi52YWx1ZSgpKSwga0FsbG9jSW5jcmVtZW50KTsKIH0KIAog
Y2xhc3MgRnJlZU9iamVjdEZpbmRlciB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9NYWxs
b2Nab25lU3VwcG9ydC5oIGIvU291cmNlL1dURi93dGYvTWFsbG9jWm9uZVN1cHBvcnQuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWU4MDljNWEyOGI2ZTAyN2FhMGE3ZTZjODUzMDIw
Y2JmMjNjMjE1Yi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV1RGL3d0Zi9NYWxsb2Nab25lU3VwcG9ydC5oCisrKyAvZGV2L251bGwKQEAgLTEs
NjcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNyBBcHBsZSBJbmMuICBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0gKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4gCi0gKiAzLiAgTmVpdGhlciB0aGUgbmFt
ZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgotICog
ICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQKLSAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIAotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCi0gKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0g
KiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5ECi0gKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgTWFsbG9jWm9uZVN1cHBvcnRfaAotI2RlZmluZSBNYWxs
b2Nab25lU3VwcG9ydF9oCi0KLSNpbmNsdWRlIDxtYWxsb2MvbWFsbG9jLmg+Ci0KLW5hbWVzcGFj
ZSBXVEYgewotCi1jbGFzcyBSZW1vdGVNZW1vcnlSZWFkZXIgewotICAgIHRhc2tfdCBtX3Rhc2s7
Ci0gICAgbWVtb3J5X3JlYWRlcl90KiBtX3JlYWRlcjsKLQotcHVibGljOgotICAgIFJlbW90ZU1l
bW9yeVJlYWRlcih0YXNrX3QgdGFzaywgbWVtb3J5X3JlYWRlcl90KiByZWFkZXIpCi0gICAgICAg
IDogbV90YXNrKHRhc2spCi0gICAgICAgICwgbV9yZWFkZXIocmVhZGVyKQotICAgIHsgfQotCi0g
ICAgdm9pZCogb3BlcmF0b3IoKSh2bV9hZGRyZXNzX3QgYWRkcmVzcywgc2l6ZV90IHNpemUpIGNv
bnN0Ci0gICAgewotICAgICAgICB2b2lkKiBvdXRwdXQ7Ci0gICAgICAgIGtlcm5fcmV0dXJuX3Qg
ZXJyID0gKCptX3JlYWRlcikobV90YXNrLCBhZGRyZXNzLCBzaXplLCBzdGF0aWNfY2FzdDx2b2lk
Kio+KCZvdXRwdXQpKTsKLSAgICAgICAgaWYgKGVycikKLSAgICAgICAgICAgIG91dHB1dCA9IDA7
Ci0gICAgICAgIHJldHVybiBvdXRwdXQ7Ci0gICAgfQotCi0gICAgdGVtcGxhdGUgPHR5cGVuYW1l
IFQ+Ci0gICAgVCogb3BlcmF0b3IoKShUKiBhZGRyZXNzLCBzaXplX3Qgc2l6ZT1zaXplb2YoVCkp
IGNvbnN0Ci0gICAgewotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VCo+KCgqdGhpcykocmVp
bnRlcnByZXRfY2FzdDx2bV9hZGRyZXNzX3Q+KGFkZHJlc3MpLCBzaXplKSk7Ci0gICAgfQotCi0g
ICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gICAgVCogbmV4dEVudHJ5SW5IYXJkZW5lZExpbmtl
ZExpc3QoVCoqIGFkZHJlc3MsIHVpbnRwdHJfdCBlbnRyb3B5KSBjb25zdDsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8gTWFsbG9jWm9uZVN1cHBvcnRfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201494</attachid>
            <date>2013-05-12 09:32:11 -0700</date>
            <delta_ts>2013-05-12 09:42:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115985-20130512093123.patch</filename>
            <type>text/plain</type>
            <size>10987</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5OTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDc3ZDJmYmRmMzEyMmM5ODY5NjgzMTYw
ZmYxMzI1MDJkYWU1MGMwNGEuLjA1OWZmZTUyZGFjOGUwNzJjYjVhMjAyZmQxMTliNTU2YjlkZTg1
MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMDUtMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIFJlbW90ZU1lbW9yeVJlYWRlciBpbnRv
IEZhc3RNYWxsb2MuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTU5ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBSZW1vdGVNZW1vcnlSZWFkZXIgaXMgb25seSB1c2VkIGluIEZhc3RNYWxsb2MuY3Bw
LCBhbmQgZXZlbiBoYWQgb25lIG9mIGl0cyBtZW1iZXIgZnVuY3Rpb25zCisgICAgICAgIGltcGxl
bWVudGVkIHRoZXJlLCBzbyBtb3ZlIHRoZSBlbnRpcmUgY2xhc3MgdGVtcGxhdGUgdGhlcmUgYW5k
IHJlbW92ZSBNYWxsb2Nab25lU3VwcG9ydC5oLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuY3BwOgorICAgICAgICAo
V1RGOjpUQ01hbGxvY19UaHJlYWRDYWNoZTo6Q3JlYXRlQ2FjaGVJZk5lY2Vzc2FyeSk6CisgICAg
ICAgICogd3RmL01hbGxvY1pvbmVTdXBwb3J0Lmg6IFJlbW92ZWQuCisKIDIwMTMtMDUtMTAgIExh
c3psbyBHb21ib3MgIDxsLmdvbWJvc0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZW1vdmUgVVNF
KE9TX1JBTkRPTU5FU1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAwOTRmMTY2N2FkMGFjMzBlNjc5NTcwYWNkZDliODEwYTQ4MjBhMDQ4Li5lZjYwODUxZTJh
YzU1M2Q1NTU5MzVjNWE4ZGQzYTM1NjlkODYyZWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dU
Ri54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTE0Miw3ICsxNDIsNiBAQAogCQlBOEE0NzNFNDE1MUE4MjVC
MDA0MTIzRkYgLyogTWFpblRocmVhZE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFk
TWFjLm1tICovOyB9OwogCQlBOEE0NzNFNTE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJD
NjE1MUE4MjVBMDA0MTIzRkYgLyogTWFpblRocmVhZC5jcHAgKi87IH07CiAJCUE4QTQ3M0U2MTUx
QTgyNUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVh
ZC5oICovOyB9OwotCQlBOEE0NzNFNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFsbG9jWm9uZVN1cHBv
cnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3
MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovOyB9OwogCQlBOEE0
NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyQzkxNTFBODI1QjAwNDEyM0ZGIC8qIE1h
dGhFeHRyYXMuaCAqLzsgfTsKIAkJQThBNDczRTkxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0NzJDQTE1
MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmNwcCAqLzsgfTsKIAkJQThBNDczRUExNTFBODI1QjAwNDEy
M0ZGIC8qIE1ENS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQThBNDcyQ0IxNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oICovOyB9OwpAQCAtNDE2LDcgKzQx
NSw2IEBACiAJCUE4QTQ3MkM1MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkTWFjLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWFpblRocmVhZE1hYy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThBNDcyQzYxNTFBODI1QTAwNDEyM0ZGIC8q
IE1haW5UaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWFp
blRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QTQ3MkM3MTUxQTgy
NUIwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1haW5UaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQThBNDcyQzgx
NTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1hbGxvY1pvbmVTdXBwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhFeHRyYXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQThBNDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNRDUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBOEE0NzJDQjE1MUE4MjVCMDA0MTIzRkYgLyogTUQ1LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ENS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNjg4LDcgKzY4Niw2IEBACiAJCQkJQThBNDcyQzMxNTFBODI1QTAwNDEyM0ZGIC8qIExv
Y2tlci5oICovLAogCQkJCUE4QTQ3MkM2MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFkLmNw
cCAqLywKIAkJCQlBOEE0NzJDNzE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oICovLAot
CQkJCUE4QTQ3MkM4MTUxQTgyNUIwMDQxMjNGRiAvKiBNYWxsb2Nab25lU3VwcG9ydC5oICovLAog
CQkJCUE4QTQ3MkM5MTUxQTgyNUIwMDQxMjNGRiAvKiBNYXRoRXh0cmFzLmggKi8sCiAJCQkJQThB
NDcyQ0ExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8sCiAJCQkJQThBNDcyQ0IxNTFBODI1
QjAwNDEyM0ZGIC8qIE1ENS5oICovLApAQCAtOTk5LDcgKzk5Niw2IEBACiAJCQkJQThBNDczRTEx
NTFBODI1QjAwNDEyM0ZGIC8qIExpc3RIYXNoU2V0LmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFMzE1MUE4MjVCMDA0MTIzRkYgLyogTG9ja2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0
NzNFNjE1MUE4MjVCMDA0MTIzRkYgLyogTWFpblRocmVhZC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
QThBNDczRTcxNTFBODI1QjAwNDEyM0ZGIC8qIE1hbGxvY1pvbmVTdXBwb3J0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBOEE0NzNFODE1MUE4MjVCMDA0MTIzRkYgLyogTWF0aEV4dHJhcy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQThBNDczRUExNTFBODI1QjAwNDEyM0ZGIC8qIE1ENS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0Q1NDk3QUQxNTg1N0QwMzAwQjVCQzMwIC8qIE1lZGlhVGltZS5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcCBiL1Nv
dXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCmluZGV4IDNkOTQzZDcwNjZhOWVlNjA1MTk3ZWFj
YTY0YWE5MTUyYWEwNWRkZTcuLjlhNGRjZmM0OThjOTJhNTg4MDBjYWEzMTgzOGQyZTE2ZmE2NmQ1
OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCisrKyBiL1NvdXJj
ZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCkBAIC05MCw2ICs5MCwxMCBAQAogI2luY2x1ZGUgPHd0
Zi9TdGRMaWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvVW51c2VkUGFyYW0uaD4KIAorI2lmIE9T
KERBUldJTikKKyNpbmNsdWRlIDxtYWxsb2MvbWFsbG9jLmg+CisjZW5kaWYKKwogI2lmbmRlZiBO
T19UQ01BTExPQ19TQU1QTEVTCiAjaWZkZWYgV1RGX0NIQU5HRVMKICNkZWZpbmUgTk9fVENNQUxM
T0NfU0FNUExFUwpAQCAtMjMxLDkgKzIzNSw3IEBAIFRyeU1hbGxvY1JldHVyblZhbHVlIHRyeUZh
c3RaZXJvZWRNYWxsb2Moc2l6ZV90IG4pCiAKICNpZiBGT1JDRV9TWVNURU1fTUFMTE9DCiAKLSNp
ZiBPUyhEQVJXSU4pCi0jaW5jbHVkZSA8bWFsbG9jL21hbGxvYy5oPgotI2VsaWYgT1MoV0lORE9X
UykKKyNpZiBPUyhXSU5ET1dTKQogI2luY2x1ZGUgPG1hbGxvYy5oPgogI2VuZGlmCiAKQEAgLTQ1
Miw3ICs0NTQsNiBAQCBleHRlcm4gIkMiIFdURl9FWFBPUlRfUFJJVkFURSBjb25zdCBpbnQganNj
b3JlX2Zhc3RtYWxsb2NfaW50cm9zcGVjdGlvbiA9IDA7CiAjaWZkZWYgV1RGX0NIQU5HRVMKIAog
I2lmIE9TKERBUldJTikKLSNpbmNsdWRlICJNYWxsb2Nab25lU3VwcG9ydC5oIgogI2luY2x1ZGUg
PHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2VuZGlmCkBAIC0xMDU5
LDYgKzEwNjAsMTAgQEAgc3RhdGljIHZvaWQqIE1ldGFEYXRhQWxsb2Moc2l6ZV90IGJ5dGVzKSB7
CiAgIHJldHVybiByZXN1bHQ7CiB9CiAKKyNpZiBkZWZpbmVkKFdURl9DSEFOR0VTKSAmJiBPUyhE
QVJXSU4pCitjbGFzcyBSZW1vdGVNZW1vcnlSZWFkZXI7CisjZW5kaWYKKwogdGVtcGxhdGUgPGNs
YXNzIFQ+CiBjbGFzcyBQYWdlSGVhcEFsbG9jYXRvciB7CiAgcHJpdmF0ZToKQEAgLTExMzEsMTIg
KzExMzYsOCBAQCBjbGFzcyBQYWdlSGVhcEFsbG9jYXRvciB7CiAgIGludCBpbnVzZSgpIGNvbnN0
IHsgcmV0dXJuIGludXNlXzsgfQogCiAjaWYgZGVmaW5lZChXVEZfQ0hBTkdFUykgJiYgT1MoREFS
V0lOKQotICB0ZW1wbGF0ZSA8Y2xhc3MgUmVjb3JkZXI+Ci0gIHZvaWQgcmVjb3JkQWRtaW5pc3Ry
YXRpdmVSZWdpb25zKFJlY29yZGVyJiByZWNvcmRlciwgY29uc3QgUmVtb3RlTWVtb3J5UmVhZGVy
JiByZWFkZXIpCi0gIHsKLSAgICAgIGZvciAoSGFyZGVuZWRTTEwgYWRtaW5BbGxvY2F0aW9uID0g
YWxsb2NhdGVkX3JlZ2lvbnNfOyBhZG1pbkFsbG9jYXRpb247IGFkbWluQWxsb2NhdGlvbi5zZXRW
YWx1ZShyZWFkZXIubmV4dEVudHJ5SW5IYXJkZW5lZExpbmtlZExpc3QocmVpbnRlcnByZXRfY2Fz
dDx2b2lkKio+KGFkbWluQWxsb2NhdGlvbi52YWx1ZSgpKSwgZW50cm9weV8pKSkKLSAgICAgICAg
ICByZWNvcmRlci5yZWNvcmRSZWdpb24ocmVpbnRlcnByZXRfY2FzdDx2bV9hZGRyZXNzX3Q+KGFk
bWluQWxsb2NhdGlvbi52YWx1ZSgpKSwga0FsbG9jSW5jcmVtZW50KTsKLSAgfQorICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgUmVjb3JkZXI+CisgIHZvaWQgcmVjb3JkQWRtaW5pc3RyYXRpdmVSZWdpb25z
KFJlY29yZGVyJiwgY29uc3QgUmVtb3RlTWVtb3J5UmVhZGVyJik7CiAjZW5kaWYKIH07CiAKQEAg
LTQ2ODEsMTcgKzQ2ODIsNTAgQEAgc2l6ZV90IGZhc3RNYWxsb2NTaXplKGNvbnN0IHZvaWQqIHB0
cikKIH0KIAogI2lmIE9TKERBUldJTikKK2NsYXNzIFJlbW90ZU1lbW9yeVJlYWRlciB7CisgICAg
dGFza190IG1fdGFzazsKKyAgICBtZW1vcnlfcmVhZGVyX3QqIG1fcmVhZGVyOworCitwdWJsaWM6
CisgICAgUmVtb3RlTWVtb3J5UmVhZGVyKHRhc2tfdCB0YXNrLCBtZW1vcnlfcmVhZGVyX3QqIHJl
YWRlcikKKyAgICAgICAgOiBtX3Rhc2sodGFzaykKKyAgICAgICAgLCBtX3JlYWRlcihyZWFkZXIp
CisgICAgeyB9CisKKyAgICB2b2lkKiBvcGVyYXRvcigpKHZtX2FkZHJlc3NfdCBhZGRyZXNzLCBz
aXplX3Qgc2l6ZSkgY29uc3QKKyAgICB7CisgICAgICAgIHZvaWQqIG91dHB1dDsKKyAgICAgICAg
a2Vybl9yZXR1cm5fdCBlcnIgPSAoKm1fcmVhZGVyKShtX3Rhc2ssIGFkZHJlc3MsIHNpemUsIHN0
YXRpY19jYXN0PHZvaWQqKj4oJm91dHB1dCkpOworICAgICAgICBpZiAoZXJyKQorICAgICAgICAg
ICAgb3V0cHV0ID0gMDsKKyAgICAgICAgcmV0dXJuIG91dHB1dDsKKyAgICB9CisKKyAgICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVD4KKyAgICBUKiBvcGVyYXRvcigpKFQqIGFkZHJlc3MsIHNpemVfdCBz
aXplID0gc2l6ZW9mKFQpKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0
PFQqPigoKnRoaXMpKHJlaW50ZXJwcmV0X2Nhc3Q8dm1fYWRkcmVzc190PihhZGRyZXNzKSwgc2l6
ZSkpOworICAgIH0KKworICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgorICAgIFQqIG5leHRFbnRy
eUluSGFyZGVuZWRMaW5rZWRMaXN0KFQqKiByZW1vdGVBZGRyZXNzLCB1aW50cHRyX3QgZW50cm9w
eSkgY29uc3QKKyAgICB7CisgICAgICAgIFQqKiBsb2NhbEFkZHJlc3MgPSAoKnRoaXMpKHJlbW90
ZUFkZHJlc3MpOworICAgICAgICBpZiAoIWxvY2FsQWRkcmVzcykKKyAgICAgICAgICAgIHJldHVy
biAwOworICAgICAgICBUKiBoYXJkZW5lZE5leHQgPSAqbG9jYWxBZGRyZXNzOworICAgICAgICBp
ZiAoIWhhcmRlbmVkTmV4dCB8fCBoYXJkZW5lZE5leHQgPT0gKHZvaWQqKWVudHJvcHkpCisgICAg
ICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIFhPUl9NQVNLX1BUUl9XSVRIX0tFWSho
YXJkZW5lZE5leHQsIHJlbW90ZUFkZHJlc3MsIGVudHJvcHkpOworICAgIH0KK307CiAKIHRlbXBs
YXRlIDx0eXBlbmFtZSBUPgotVCogUmVtb3RlTWVtb3J5UmVhZGVyOjpuZXh0RW50cnlJbkhhcmRl
bmVkTGlua2VkTGlzdChUKiogcmVtb3RlQWRkcmVzcywgdWludHB0cl90IGVudHJvcHkpIGNvbnN0
Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgUmVjb3JkZXI+Cit2b2lkIFBhZ2VIZWFwQWxsb2NhdG9yPFQ+
OjpyZWNvcmRBZG1pbmlzdHJhdGl2ZVJlZ2lvbnMoUmVjb3JkZXImIHJlY29yZGVyLCBjb25zdCBS
ZW1vdGVNZW1vcnlSZWFkZXImIHJlYWRlcikKIHsKLSAgICBUKiogbG9jYWxBZGRyZXNzID0gKCp0
aGlzKShyZW1vdGVBZGRyZXNzKTsKLSAgICBpZiAoIWxvY2FsQWRkcmVzcykKLSAgICAgICAgcmV0
dXJuIDA7Ci0gICAgVCogaGFyZGVuZWROZXh0ID0gKmxvY2FsQWRkcmVzczsKLSAgICBpZiAoIWhh
cmRlbmVkTmV4dCB8fCBoYXJkZW5lZE5leHQgPT0gKHZvaWQqKWVudHJvcHkpCi0gICAgICAgIHJl
dHVybiAwOwotICAgIHJldHVybiBYT1JfTUFTS19QVFJfV0lUSF9LRVkoaGFyZGVuZWROZXh0LCBy
ZW1vdGVBZGRyZXNzLCBlbnRyb3B5KTsKKyAgICBmb3IgKEhhcmRlbmVkU0xMIGFkbWluQWxsb2Nh
dGlvbiA9IGFsbG9jYXRlZF9yZWdpb25zXzsgYWRtaW5BbGxvY2F0aW9uOyBhZG1pbkFsbG9jYXRp
b24uc2V0VmFsdWUocmVhZGVyLm5leHRFbnRyeUluSGFyZGVuZWRMaW5rZWRMaXN0KHJlaW50ZXJw
cmV0X2Nhc3Q8dm9pZCoqPihhZG1pbkFsbG9jYXRpb24udmFsdWUoKSksIGVudHJvcHlfKSkpCisg
ICAgICAgIHJlY29yZGVyLnJlY29yZFJlZ2lvbihyZWludGVycHJldF9jYXN0PHZtX2FkZHJlc3Nf
dD4oYWRtaW5BbGxvY2F0aW9uLnZhbHVlKCkpLCBrQWxsb2NJbmNyZW1lbnQpOwogfQogCiBjbGFz
cyBGcmVlT2JqZWN0RmluZGVyIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL01hbGxvY1pv
bmVTdXBwb3J0LmggYi9Tb3VyY2UvV1RGL3d0Zi9NYWxsb2Nab25lU3VwcG9ydC5oCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZTgwOWM1YTI4YjZlMDI3YWEwYTdlNmM4NTMwMjBjYmYy
M2MyMTViLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Nv
dXJjZS9XVEYvd3RmL01hbGxvY1pvbmVTdXBwb3J0LmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NyAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA3IEFwcGxlIEluYy4gIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKLSAqIDMuICBOZWl0aGVyIHRoZSBuYW1lIG9m
IEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCi0gKiAgICAg
aXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2lmbmRlZiBNYWxsb2Nab25lU3VwcG9ydF9oCi0jZGVmaW5lIE1hbGxvY1pv
bmVTdXBwb3J0X2gKLQotI2luY2x1ZGUgPG1hbGxvYy9tYWxsb2MuaD4KLQotbmFtZXNwYWNlIFdU
RiB7Ci0KLWNsYXNzIFJlbW90ZU1lbW9yeVJlYWRlciB7Ci0gICAgdGFza190IG1fdGFzazsKLSAg
ICBtZW1vcnlfcmVhZGVyX3QqIG1fcmVhZGVyOwotCi1wdWJsaWM6Ci0gICAgUmVtb3RlTWVtb3J5
UmVhZGVyKHRhc2tfdCB0YXNrLCBtZW1vcnlfcmVhZGVyX3QqIHJlYWRlcikKLSAgICAgICAgOiBt
X3Rhc2sodGFzaykKLSAgICAgICAgLCBtX3JlYWRlcihyZWFkZXIpCi0gICAgeyB9Ci0KLSAgICB2
b2lkKiBvcGVyYXRvcigpKHZtX2FkZHJlc3NfdCBhZGRyZXNzLCBzaXplX3Qgc2l6ZSkgY29uc3QK
LSAgICB7Ci0gICAgICAgIHZvaWQqIG91dHB1dDsKLSAgICAgICAga2Vybl9yZXR1cm5fdCBlcnIg
PSAoKm1fcmVhZGVyKShtX3Rhc2ssIGFkZHJlc3MsIHNpemUsIHN0YXRpY19jYXN0PHZvaWQqKj4o
Jm91dHB1dCkpOwotICAgICAgICBpZiAoZXJyKQotICAgICAgICAgICAgb3V0cHV0ID0gMDsKLSAg
ICAgICAgcmV0dXJuIG91dHB1dDsKLSAgICB9Ci0KLSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4K
LSAgICBUKiBvcGVyYXRvcigpKFQqIGFkZHJlc3MsIHNpemVfdCBzaXplPXNpemVvZihUKSkgY29u
c3QKLSAgICB7Ci0gICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxUKj4oKCp0aGlzKShyZWludGVy
cHJldF9jYXN0PHZtX2FkZHJlc3NfdD4oYWRkcmVzcyksIHNpemUpKTsKLSAgICB9Ci0KLSAgICB0
ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgICBUKiBuZXh0RW50cnlJbkhhcmRlbmVkTGlua2VkTGlz
dChUKiogYWRkcmVzcywgdWludHB0cl90IGVudHJvcHkpIGNvbnN0OwotfTsKLQotfSAvLyBuYW1l
c3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBNYWxsb2Nab25lU3VwcG9ydF9oCg==
</data>
<flag name="review"
          id="222822"
          type_id="1"
          status="+"
          setter="kling"
    />
    <flag name="commit-queue"
          id="222823"
          type_id="3"
          status="-"
          setter="eflews.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>