<?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>107840</bug_id>
          
          <creation_ts>2013-01-24 09:50:46 -0800</creation_ts>
          <short_desc>Add smartInsertDeleteEnabled setting to WebCore::Page</short_desc>
          <delta_ts>2013-02-27 12:22:39 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</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>
          
          <blocked>108528</blocked>
    
    <blocked>109404</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Manuel Rego Casasnovas">rego</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>buildbot</cc>
    
    <cc>cgarcia</cc>
    
    <cc>dglazkov</cc>
    
    <cc>enrica</cc>
    
    <cc>mariusz.g</cc>
    
    <cc>mrobinson</cc>
    
    <cc>pnormand</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>815562</commentid>
    <comment_count>0</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-01-24 09:50:46 -0800</bug_when>
    <thetext>editing/deleting/smart-editing-disabled.html is skipped due to this reason.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815689</commentid>
    <comment_count>1</comment_count>
      <attachid>184546</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-01-24 11:55:36 -0800</bug_when>
    <thetext>Created attachment 184546
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815715</commentid>
    <comment_count>2</comment_count>
      <attachid>184546</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-01-24 12:17:23 -0800</bug_when>
    <thetext>Comment on attachment 184546
Patch

Attachment 184546 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16076938</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815727</commentid>
    <comment_count>3</comment_count>
      <attachid>184546</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-01-24 12:25:12 -0800</bug_when>
    <thetext>Comment on attachment 184546
Patch

Attachment 184546 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16084809</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815885</commentid>
    <comment_count>4</comment_count>
      <attachid>184589</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-01-24 15:11:21 -0800</bug_when>
    <thetext>Created attachment 184589
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815889</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-01-24 15:15:28 -0800</bug_when>
    <thetext>Why don&apos;t we make this a setting? We can then auto-generate code in internals.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816237</commentid>
    <comment_count>6</comment_count>
      <attachid>184589</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-24 22:29:28 -0800</bug_when>
    <thetext>Comment on attachment 184589
Patch

Attachment 184589 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16097599

New failing tests:
svg/batik/text/textLayout2.svg
svg/batik/text/smallFonts.svg</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816689</commentid>
    <comment_count>7</comment_count>
      <attachid>184770</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-01-25 09:56:31 -0800</bug_when>
    <thetext>Created attachment 184770
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816745</commentid>
    <comment_count>8</comment_count>
      <attachid>184770</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-01-25 10:55:55 -0800</bug_when>
    <thetext>Comment on attachment 184770
Patch

Attachment 184770 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16110833</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816750</commentid>
    <comment_count>9</comment_count>
      <attachid>184770</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-01-25 11:02:02 -0800</bug_when>
    <thetext>Comment on attachment 184770
Patch

Attachment 184770 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16116458</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817694</commentid>
    <comment_count>10</comment_count>
      <attachid>184971</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-01-28 04:51:04 -0800</bug_when>
    <thetext>Created attachment 184971
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817705</commentid>
    <comment_count>11</comment_count>
      <attachid>184971</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-01-28 05:28:43 -0800</bug_when>
    <thetext>Comment on attachment 184971
Patch

Attachment 184971 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16160549</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817708</commentid>
    <comment_count>12</comment_count>
      <attachid>184973</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-01-28 05:51:24 -0800</bug_when>
    <thetext>Created attachment 184973
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817866</commentid>
    <comment_count>13</comment_count>
      <attachid>184973</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2013-01-28 10:42:44 -0800</bug_when>
    <thetext>Comment on attachment 184973
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=184973&amp;action=review

r- for not using Settings.in.

This seems to give us 2 ways to control SmartInsertDelete since Chromium still has WebViewClient::isSmartInsertDeleteEnabled.  Maybe that&apos;s OK as long as there&apos;s a transition plan.

&gt; Source/WebCore/page/Settings.h:307
&gt; +        void setSmartInsertDeleteEnabled(bool);
&gt; +        bool smartInsertDeleteEnabled() { return m_smartInsertDeleteEnabled; }

Please use Settings.in, which will generate all the Settings code for you (your code doesn&apos;t bit pack properly).

&gt; Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp:929
&gt; +void TestRunner::setSmartInsertDeleteEnabled(bool enabled)
&gt; +{
&gt; +    WKBundlePageSetSmartInsertDeleteEnabled(InjectedBundle::shared().page()-&gt;page(), enabled);
&gt; +}

If you use Settings.in, it will automatically add this setter to internals.settings.setSmartInsertDeleteEnabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818042</commentid>
    <comment_count>14</comment_count>
      <attachid>185048</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-01-28 13:25:54 -0800</bug_when>
    <thetext>Created attachment 185048
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822427</commentid>
    <comment_count>15</comment_count>
      <attachid>185048</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-02-01 00:26:29 -0800</bug_when>
    <thetext>Comment on attachment 185048
Patch

r=me but we should probably have some WK2 owner take a look at this before we land it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822903</commentid>
    <comment_count>16</comment_count>
      <attachid>185048</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-02-01 09:59:19 -0800</bug_when>
    <thetext>Comment on attachment 185048
Patch

Looks like this breaks initial value of the setting on Mac. We used to get it from &quot;WebSmartInsertDeleteEnabled&quot; user default in TextChecker::isSmartInsertDeleteEnabled(), and pass on process creation. Now, looks like every client has to call WKPreferencesSetSmartInsertDeleteEnabled().

Even worse, if WKPreferencesSetSmartInsertDeleteEnabled() gets called by the client, it is a no-op because of an early return:

void WebPageProxy::setSmartInsertDeleteEnabled(bool isSmartInsertDeleteEnabled)
{
    if (m_isSmartInsertDeleteEnabled == isSmartInsertDeleteEnabled)
        return;

So, this means that WKPreferencesSetSmartInsertDeleteEnabled(false) will have no effect on Mac if WebSmartInsertDeleteEnabled was set to NO.

r- because of this. Please feel free to reset the review flag if I misunderstood the code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825242</commentid>
    <comment_count>17</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-05 00:59:41 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; (From update of attachment 185048 [details])
&gt; Looks like this breaks initial value of the setting on Mac. We used to get it from &quot;WebSmartInsertDeleteEnabled&quot; user default in TextChecker::isSmartInsertDeleteEnabled(), and pass on process creation. Now, looks like every client has to call WKPreferencesSetSmartInsertDeleteEnabled().
&gt; 
&gt; Even worse, if WKPreferencesSetSmartInsertDeleteEnabled() gets called by the client, it is a no-op because of an early return:
&gt; 
&gt; void WebPageProxy::setSmartInsertDeleteEnabled(bool isSmartInsertDeleteEnabled)
&gt; {
&gt;     if (m_isSmartInsertDeleteEnabled == isSmartInsertDeleteEnabled)
&gt;         return;
&gt; 
&gt; So, this means that WKPreferencesSetSmartInsertDeleteEnabled(false) will have no effect on Mac if WebSmartInsertDeleteEnabled was set to NO.

Yes, you&apos;re right thanks for pointing it out. The problem is that in my patch I&apos;m removing isSmartInsertDeleteEnabled from page creation parameters, so the initial value on Mac is lost as you say.

I&apos;m going to attach a new patch with a small change in order to set the new setting in WebPageProxy::initializeWebPage using the initial value from TextChecker::isSmartInsertDeleteEnabled().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825243</commentid>
    <comment_count>18</comment_count>
      <attachid>186570</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-05 01:01:04 -0800</bug_when>
    <thetext>Created attachment 186570
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825579</commentid>
    <comment_count>19</comment_count>
      <attachid>186570</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-02-05 10:03:46 -0800</bug_when>
    <thetext>Comment on attachment 186570
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=186570&amp;action=review

&gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:429
&gt; +#if PLATFORM(MAC)
&gt; +    m_pageGroup-&gt;preferences()-&gt;setSmartInsertDeleteEnabled(m_isSmartInsertDeleteEnabled);
&gt; +#endif
&gt; +
&gt;      m_process-&gt;send(Messages::WebProcess::CreateWebPage(m_pageID, creationParameters()), 0);

Won&apos;t this result in a preferences update message being sent before creation message?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826195</commentid>
    <comment_count>20</comment_count>
      <attachid>186781</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-06 01:15:23 -0800</bug_when>
    <thetext>Created attachment 186781
Patch

Fix the problem sending a preferences update message before the creation page message.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>835598</commentid>
    <comment_count>21</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-18 10:16:46 -0800</bug_when>
    <thetext>Ping. What do you think about the last version of the patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>835605</commentid>
    <comment_count>22</comment_count>
      <attachid>186781</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-02-18 10:32:48 -0800</bug_when>
    <thetext>Comment on attachment 186781
Patch

It looks great but perhaps you need a WebKit2 owner&apos;s review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>842975</commentid>
    <comment_count>23</comment_count>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2013-02-27 05:41:06 -0800</bug_when>
    <thetext>*** Bug 99436 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>843374</commentid>
    <comment_count>24</comment_count>
      <attachid>186781</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-27 12:22:33 -0800</bug_when>
    <thetext>Comment on attachment 186781
Patch

Clearing flags on attachment: 186781

Committed r144221: &lt;http://trac.webkit.org/changeset/144221&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>843375</commentid>
    <comment_count>25</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-27 12:22:39 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184546</attachid>
            <date>2013-01-24 11:55:36 -0800</date>
            <delta_ts>2013-01-24 15:11:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107840-20130124205227.patch</filename>
            <type>text/plain</type>
            <size>11766</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNjcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTdkMjNkYzk2MjBjNGQy
NWM1YjAxNzdkMWE4YWVmYmQzMjE0MzdjMy4uNWJmOGVjYjAwMWRlYjI2OTNjN2ZlZGI5ZDAwMTkz
OWIzMTM0MTBiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEzLTAxLTI0ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVFJdW1dL
Ml0gSW1wbGVtZW50IHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9XZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVyczo6ZW5jb2RlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVyczo6ZGVjb2RlKTogRW5hYmxlCisgICAgICAgIGlzU21hcnRJbnNlcnREZWxldGVF
bmFibGVkIGZvciBhbGwgcGxhdGZvcm1zLgorICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRp
b25QYXJhbWV0ZXJzLmg6CisgICAgICAgIChXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzKTogRW5h
YmxlIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkIGZvciBhbGwKKyAgICAgICAgcGxhdGZvcm1z
LgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdl
LmNwcDoKKyAgICAgICAgKFdLQnVuZGxlUGFnZVNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6
IEltcGxlbWVudCBtZXRob2QgdXNpbmcKKyAgICAgICAgV2ViUGFnZTo6c2V0U21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2Mv
V0tCdW5kbGVQYWdlUHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xpZW50
OjpzbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBBZGQgbmV3IG1ldGhvZAorICAgICAgICBoZWFk
ZXIuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKFdl
YlBhZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZXRTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQpOiBFbmFibGUKKyAgICAgICAgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkIGZvciBh
bGwgcGxhdGZvcm1zLgorCiAyMDEzLTAxLTI0ICBLcnp5c3p0b2YgQ3plY2ggIDxrLmN6ZWNoQHNh
bXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdW1dLMl0gRXhwb3NlIGFjY2Vzc2liaWxpdHkgaGll
cmFyY2h5IGluIFdlYktpdDItRUZMLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dl
YlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IGU5MjVkYjM0MWFiYzA0YWRiMjU1ODAx
OTMwNjEwODUyMmZlZTM4N2MuLjRiMGUxY2VkZjkwOTNiNjAzZTNmMDJmYzc3Zjg5YzU1YTM1OWIw
NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJh
bWV0ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVycy5jcHAKQEAgLTU4LDkgKzU4LDkgQEAgdm9pZCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0
ZXJzOjplbmNvZGUoQ29yZUlQQzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAg
IGVuY29kZXIgPDwgZGV2aWNlU2NhbGVGYWN0b3I7CiAgICAgZW5jb2RlciA8PCBtZWRpYVZvbHVt
ZTsKICAgICBlbmNvZGVyIDw8IG1heVN0YXJ0TWVkaWFXaGVuSW5XaW5kb3c7CisgICAgZW5jb2Rl
ciA8PCBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsKIAogI2lmIFBMQVRGT1JNKE1BQykKLSAg
ICBlbmNvZGVyIDw8IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOwogICAgIGVuY29kZXIuZW5j
b2RlRW51bShsYXllckhvc3RpbmdNb2RlKTsKICAgICBlbmNvZGVyIDw8IGNvbG9yU3BhY2U7CiAj
ZW5kaWYKQEAgLTExOCwxMCArMTE4LDEwIEBAIGJvb2wgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVy
czo6ZGVjb2RlKENvcmVJUEM6OkFyZ3VtZW50RGVjb2RlciogZGVjb2RlciwgV2ViUGFnCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXItPmRlY29kZShwYXJhbWV0ZXJzLm1h
eVN0YXJ0TWVkaWFXaGVuSW5XaW5kb3cpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSNpZiBQ
TEFURk9STShNQUMpCiAgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUocGFyYW1ldGVycy5pc1NtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKKworI2lmIFBMQVRG
T1JNKE1BQykKICAgICBpZiAoIWRlY29kZXItPmRlY29kZUVudW0ocGFyYW1ldGVycy5sYXllckhv
c3RpbmdNb2RlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rlci0+ZGVj
b2RlKHBhcmFtZXRlcnMuY29sb3JTcGFjZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA1ODAzY2QwYzFlNzBhMGI2YjNiM2Fh
NDI1YmE0OWRhYmI5MmJiYmYzLi5iN2FhMGM1Zjk2M2FjZTI3MWM4YWFhZjAwYmE4YjYxYTY2ZTQz
YWY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJh
bWV0ZXJzLmgKQEAgLTg3LDggKzg3LDkgQEAgc3RydWN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRl
cnMgewogICAgIGZsb2F0IG1lZGlhVm9sdW1lOwogICAgIGJvb2wgbWF5U3RhcnRNZWRpYVdoZW5J
bldpbmRvdzsKIAotI2lmIFBMQVRGT1JNKE1BQykKICAgICBib29sIGlzU21hcnRJbnNlcnREZWxl
dGVFbmFibGVkOworCisjaWYgUExBVEZPUk0oTUFDKQogICAgIExheWVySG9zdGluZ01vZGUgbGF5
ZXJIb3N0aW5nTW9kZTsKICAgICBDb2xvclNwYWNlRGF0YSBjb2xvclNwYWNlOwogI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9j
L1dLQnVuZGxlUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5jcHAKaW5kZXggMzhiOWRmYjVjOGFlYThkNmU2NDYwYWEw
ZGIyMmM3MWE1NmM2OGRiNC4uNDkyYTIyMjI1MDYwZWJlMTVjOTQ3ZjNiZjdhOGYzYmMzNzdjOGRj
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9B
UEkvYy9XS0J1bmRsZVBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmNwcApAQCAtNDcwLDMgKzQ3MCw4IEBAIHZv
aWQgV0tCdW5kbGVQYWdlU2V0Vmlld01vZGUoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIFdLU3Ry
aW5nUmVmIG1vZGUpCiAgICAgZWxzZQogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0K
Kwordm9pZCBXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoV0tCdW5kbGVQ
YWdlUmVmIHBhZ2VSZWYsIGJvb2wgZW5hYmxlZCkKK3sKKyAgICB0b0ltcGwocGFnZVJlZiktPnNl
dFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChlbmFibGVkKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlUHJp
dmF0ZS5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9X
S0J1bmRsZVBhZ2VQcml2YXRlLmgKaW5kZXggZTY4YzA3YjdhOTI5ZmIxNDVhMDExZjBlOTNjZWFl
ZGNiZDllODhlYi4uMDc2NzVjMDI4Nzc1YjBkMDgwNDRkMzAwODM4YTgyMzhjZGMxMzI2YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9X
S0J1bmRsZVBhZ2VQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VQcml2YXRlLmgKQEAgLTgwLDYgKzgwLDggQEAg
V0tfRVhQT1JUIHZvaWQqIFdLQWNjZXNzaWJpbGl0eUZvY3VzZWRPYmplY3QoV0tCdW5kbGVQYWdl
UmVmKTsKIFdLX0VYUE9SVCBXS0FycmF5UmVmIFdLQnVuZGxlUGFnZUNvcHlDb250ZXh0TWVudUl0
ZW1UaXRsZXMoV0tCdW5kbGVQYWdlUmVmKTsKIAogV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVQYWdl
U2V0Vmlld01vZGUoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIFdLU3RyaW5nUmVmIG1vZGUpOwor
CitXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
V0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIGJvb2wgZW5hYmxlZCk7CiAjaWZkZWYgX19jcGx1c3Bs
dXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCmluZGV4IGM2Y2M5YzI2NWFhZDM3
MWFjZDk0NjU0Yjg1MzVmMjExYTg0NTRjYTEuLjYxMzA1YzdlNWJiZDMwMzNjNTBkMTA5ZjJjMDZh
NTNmNDIzN2JmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKQEAgLTc5LDEyICs3OSw3IEBA
IGJvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRTaG93RGVsZXRlSW50ZXJmYWNlKEhUTUxFbGVt
ZW50KikKIAogYm9vbCBXZWJFZGl0b3JDbGllbnQ6OnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgp
CiB7Ci0gICAgLy8gRklYTUU6IFdoeSBpc24ndCB0aGlzIE1hYyBzcGVjaWZpYyBsaWtlIHRvZ2ds
ZVNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZD8KLSNpZiBQTEFURk9STShNQUMpCiAgICAgcmV0dXJu
IG1fcGFnZS0+aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKTsKLSNlbHNlCi0gICAgcmV0dXJu
IHRydWU7Ci0jZW5kaWYKIH0KICAKIGJvb2wgV2ViRWRpdG9yQ2xpZW50Ojppc1NlbGVjdFRyYWls
aW5nV2hpdGVzcGFjZUVuYWJsZWQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmgKaW5kZXggM2JkYjY1MDhkYjhmNzQ2NjI5NDhlODMzYzQ4YjFkZTM2MTllZGY3
NS4uMTk5ZWMzMjA3M2I3NWNlZDg4YWU5NDYwNDM4YjE1ZTY2Zjg4NGRmOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC00ODcsOSArNDg3LDEwIEBA
IHB1YmxpYzoKICAgICBib29sIGlzU3BlYWtpbmcoKTsKICAgICB2b2lkIHNwZWFrKGNvbnN0IFN0
cmluZyYpOwogICAgIHZvaWQgc3RvcFNwZWFraW5nKCk7CisjZW5kaWYKIAogICAgIGJvb2wgaXNT
bWFydEluc2VydERlbGV0ZUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzU21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkOyB9Ci0jZW5kaWYKKyAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZChib29sIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKSB7IG1faXNTbWFydEluc2VydERl
bGV0ZUVuYWJsZWQgPSBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsgfQogCiAjaWYgRU5BQkxF
KFdFQl9JTlRFTlRTKQogICAgIHZvaWQgZGVsaXZlckNvcmVJbnRlbnRUb0ZyYW1lKHVpbnQ2NF90
IGZyYW1lSUQsIFdlYkNvcmU6OkludGVudCopOwpAQCAtNzgzLDEwICs3ODQsNiBAQCBwcml2YXRl
OgogICAgIHZvaWQgY2FwaXRhbGl6ZVdvcmQoKTsKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTUFD
KQotICAgIHZvaWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wgaXNTbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWQpIHsgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9IGlzU21hcnRJ
bnNlcnREZWxldGVFbmFibGVkOyB9Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShDT05URVhUX01FTlVT
KQogICAgIHZvaWQgZGlkU2VsZWN0SXRlbUZyb21BY3RpdmVDb250ZXh0TWVudShjb25zdCBXZWJD
b250ZXh0TWVudUl0ZW1EYXRhJik7CiAjZW5kaWYKQEAgLTgzNyw5ICs4MzQsNiBAQCBwcml2YXRl
OgogICAgIC8vIFdoZXRoZXIgdGhlIGNvbnRhaW5pbmcgd2luZG93IGlzIHZpc2libGUgb3Igbm90
LgogICAgIGJvb2wgbV93aW5kb3dJc1Zpc2libGU7CiAKLSAgICAvLyBXaGV0aGVyIHNtYXJ0IGlu
c2VydC9kZWxldGUgaXMgZW5hYmxlZCBvciBub3QuCi0gICAgYm9vbCBtX2lzU21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkOwotCiAgICAgLy8gVGhlIGZyYW1lIG9mIHRoZSBjb250YWluaW5nIHdpbmRv
dyBpbiBzY3JlZW4gY29vcmRpbmF0ZXMuCiAgICAgV2ViQ29yZTo6SW50UmVjdCBtX3dpbmRvd0Zy
YW1lSW5TY3JlZW5Db29yZGluYXRlczsKIApAQCAtODY0LDYgKzg1OCw5IEBAIHByaXZhdGU6CiAg
ICAgdWludDY0X3QgbV9uYXRpdmVXaW5kb3dIYW5kbGU7CiAjZW5kaWYKICNlbmRpZgorCisgICAg
Ly8gV2hldGhlciBzbWFydCBpbnNlcnQvZGVsZXRlIGlzIGVuYWJsZWQgb3Igbm90LgorICAgIGJv
b2wgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsKICAgICAKICAgICBXZWJDb3JlOjpSdW5M
b29wOjpUaW1lcjxXZWJQYWdlPiBtX3NldENhblN0YXJ0TWVkaWFUaW1lcjsKICAgICBib29sIG1f
bWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkZGNhYWJjOTJiZGU0ZDE4OGQwYTY5Y2U5YTNhZDg4NTk0
MWUxOWZmLi5mOWRlODliOGNhMDUxZmNkMjA5NTBmNzY3YzNlN2VkZGIxYWY0Nzc5IDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTMtMDEtMjQgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW1dUUl1bV0syXSBJbXBsZW1lbnQgdGVzdFJ1bm5lci5zZXRTbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEwNzg0MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVu
bmVyLmlkbDogQWRkIG5ldworICAgICAgICBtZXRob2QuCisgICAgICAgICogV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdFJ1
bm5lcjo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG1ldGhvZCB1c2lu
ZworICAgICAgICBXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQuCisgICAg
ICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmg6CisgICAg
ICAgIChUZXN0UnVubmVyKTogQWRkIG5ldyBtZXRob2QgaGVhZGVyLgorCisgICAgICAgICogV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbDoKKyAg
ICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwOgor
ICAgICAgICAoV1RSOjpUZXN0UnVubmVyOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOgor
ICAgICAgICAoV1RSKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L1Rlc3RSdW5uZXIuaDoKKyAgICAgICAgKFRlc3RSdW5uZXIpOgorCiAyMDEzLTAxLTI0ICBEYW4g
Q2FybmV5ICA8ZGNhcm5leUBnb29nbGUuY29tPgogCiAgICAgICAgIFtjaHJvbWl1bV0gbW92ZSBt
b3N0IFdlYlZpZXdIb3N0IHByaW50ZiBjYWxscyB0byBXZWJUZXN0UHJveHkKZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5l
ci5pZGwgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rl
c3RSdW5uZXIuaWRsCmluZGV4IGYyNzEzYzc4MmNjOTJmNDFlY2FmN2NhMWZmYmY3NTE1OWVkNTcz
MzguLjFkY2U1OTJjODExMWJkZTMwNmQ1YzllYWU5MzQ2MWRlMTNkNjdhMGQgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5l
ci5pZGwKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5n
cy9UZXN0UnVubmVyLmlkbApAQCAtNzMsNiArNzMsNyBAQCBpbnRlcmZhY2UgVGVzdFJ1bm5lciB7
CiAgICAgdm9pZCBzZXRTZXJpYWxpemVIVFRQTG9hZHMoKTsKICAgICB2b2lkIGRpc3BhdGNoUGVu
ZGluZ0xvYWRSZXF1ZXN0cygpOwogICAgIHZvaWQgc2V0Q2FjaGVNb2RlbChpbiBpbnQgbW9kZWwp
OworICAgIHZvaWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGluIGJvb2xlYW4gZW5hYmxl
ZCk7CiAKICAgICAvLyBTcGVjaWFsIERPTSBmdW5jdGlvbnMuCiAgICAgdm9pZCBjbGVhckJhY2tG
b3J3YXJkTGlzdCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3Rl
ZEJ1bmRsZS9UZXN0UnVubmVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvVGVzdFJ1bm5lci5jcHAKaW5kZXggYjI4ZDY1Nzk1NDY4OWJjOTIwNjYzZDc5MWEyZDM2
NWU1ZDcxYWU5NS4uYTZlM2VkMDJhZGFhYzg1YzZjMjZhYjk1MWQ4YjhlMzhjZWQ1OTBlNSAxMDA2
NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVy
LmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5u
ZXIuY3BwCkBAIC05MjMsNCArOTIzLDkgQEAgdm9pZCBUZXN0UnVubmVyOjpzZXRBdXRoZW50aWNh
dGlvblBhc3N3b3JkKEpTU3RyaW5nUmVmIHBhc3N3b3JkKQogICAgIFdLQnVuZGxlUG9zdE1lc3Nh
Z2UoSW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLmJ1bmRsZSgpLCBtZXNzYWdlTmFtZS5nZXQoKSwg
bWVzc2FnZUJvZHkuZ2V0KCkpOwogfQogCit2b2lkIFRlc3RSdW5uZXI6OnNldFNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgV0tCdW5kbGVQYWdlU2V0U21hcnRJ
bnNlcnREZWxldGVFbmFibGVkKEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5wYWdlKCktPnBhZ2Uo
KSwgZW5hYmxlZCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdUUgpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmggYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaAppbmRleCA1OWFkMTJlZTE0
YmQ3MWRiYjBlYzFmMDA2MWE0OTFkNjQwYTY1ZmM2Li43NTM0NmUzNmRlYTc2YTZjNGNmYTI2MzZl
NzIxYTA3YjE0N2NjYmVhIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL1Rlc3RSdW5uZXIuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL1Rlc3RSdW5uZXIuaApAQCAtMTE3LDYgKzExNyw3IEBAIHB1YmxpYzoKICAgICB2
b2lkIHNldFNlcmlhbGl6ZUhUVFBMb2FkcygpOwogICAgIHZvaWQgZGlzcGF0Y2hQZW5kaW5nTG9h
ZFJlcXVlc3RzKCk7CiAgICAgdm9pZCBzZXRDYWNoZU1vZGVsKGludCk7CisgICAgdm9pZCBzZXRT
bWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCk7CiAKICAgICAvLyBTcGVjaWFsIERPTSBmdW5j
dGlvbnMuCiAgICAgSlNWYWx1ZVJlZiBjb21wdXRlZFN0eWxlSW5jbHVkaW5nVmlzaXRlZEluZm8o
SlNWYWx1ZVJlZiBlbGVtZW50KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2NGRlODA2Yzk5NmE2NzQyYWI0MTczMWQwNjEy
MTFmNGNlNWUxNjc3Li5mY2MyYTcxY2NlMjY4YmUwNzZmNDI5MzRkMmMyZTA0ZTQwMWE5NGY1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDEtMjQgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMg
IDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1dUUl1bV0syXSBJbXBsZW1lbnQgdGVzdFJ1
bm5lci5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzg0MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnM6
IFVuZmxhZworICAgICAgICBlZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWVkaXRpbmctZGlzYWJsZWQu
aHRtbAorCiAyMDEzLTAxLTI0ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4K
IAogICAgICAgICBVbnJldmlld2VkIGdhcmRlbmluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2sy
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNTE0ZjRmMTFhNTA5ZmM3Y2RlZjVjOGQwNzA4MjQ3Nzk2
OGRlMDI2ZC4uMGU4ZTNlYThiN2NiZTJlYTFlM2Q0Y2YwNWFkMGQ0MjZkN2ViOTZlZiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM4NSw5ICszODUsNiBA
QCBodHRwL3Rlc3RzL21pc2MvbGluay1yZWwtaWNvbi1iZWZvcmVsb2FkLmh0bWwKICMgV2ViS2l0
VGVzdFJ1bm5lciBzaG91bGQgZHVtcCB0ZXh0L3BsYWluIGNvbnRlbnQgYXMgdGV4dAogaHR0cC90
ZXN0cy9pbmNyZW1lbnRhbC9zbG93LXV0ZjgtdGV4dC5wbAogCi0jIFdlYktpdFRlc3RSdW5uZXIg
bmVlZHMgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCi1l
ZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWVkaXRpbmctZGlzYWJsZWQuaHRtbAotCiAjIFdlYktpdFRl
c3RSdW5uZXIgbmVlZHMgcGxhaW5UZXh0LnBsYWluVGV4dAogZWRpdGluZy90ZXh0LWl0ZXJhdG9y
L2Jhc2ljLWl0ZXJhdGlvbi5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184589</attachid>
            <date>2013-01-24 15:11:21 -0800</date>
            <delta_ts>2013-01-25 09:56:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107840-20130125000812.patch</filename>
            <type>text/plain</type>
            <size>12858</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNjcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTdkMjNkYzk2MjBjNGQy
NWM1YjAxNzdkMWE4YWVmYmQzMjE0MzdjMy4uYmU3OWQwYjNhNzA2YzAwMGQwOWFkMTFjYmQzZmEw
NDU2ODUzNDZkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTAxLTI0ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVFJdW1dL
Ml0gSW1wbGVtZW50IHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9XZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVyczo6ZW5jb2RlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVyczo6ZGVjb2RlKTogRW5hYmxlCisgICAgICAgIGlzU21hcnRJbnNlcnREZWxldGVF
bmFibGVkIGZvciBhbGwgcGxhdGZvcm1zLgorICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRp
b25QYXJhbWV0ZXJzLmg6CisgICAgICAgIChXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzKTogRW5h
YmxlIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkIGZvciBhbGwKKyAgICAgICAgcGxhdGZvcm1z
LgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdl
LmNwcDoKKyAgICAgICAgKFdLQnVuZGxlUGFnZVNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6
IEltcGxlbWVudCBtZXRob2QgdXNpbmcKKyAgICAgICAgV2ViUGFnZTo6c2V0U21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2Mv
V0tCdW5kbGVQYWdlUHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xpZW50
OjpzbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBBZGQgbmV3IG1ldGhvZAorICAgICAgICBoZWFk
ZXIuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlOjpXZWJQYWdlKTogRW5hYmxlIG1faXNTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQgZm9yIGFsbAorICAgICAgICBwbGF0Zm9ybXMuCisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKFdlYlBhZ2UpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBFbmFibGUKKyAgICAgICAgc2V0
U21hcnRJbnNlcnREZWxldGVFbmFibGVkIGZvciBhbGwgcGxhdGZvcm1zLgorCiAyMDEzLTAxLTI0
ICBLcnp5c3p0b2YgQ3plY2ggIDxrLmN6ZWNoQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxd
W1dLMl0gRXhwb3NlIGFjY2Vzc2liaWxpdHkgaGllcmFyY2h5IGluIFdlYktpdDItRUZMLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMu
Y3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3Bw
CmluZGV4IGU5MjVkYjM0MWFiYzA0YWRiMjU1ODAxOTMwNjEwODUyMmZlZTM4N2MuLjRiMGUxY2Vk
ZjkwOTNiNjAzZTNmMDJmYzc3Zjg5YzU1YTM1OWIwNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTU4LDkgKzU4LDkg
QEAgdm9pZCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUoQ29yZUlQQzo6QXJndW1l
bnRFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIgPDwgZGV2aWNlU2NhbGVGYWN0
b3I7CiAgICAgZW5jb2RlciA8PCBtZWRpYVZvbHVtZTsKICAgICBlbmNvZGVyIDw8IG1heVN0YXJ0
TWVkaWFXaGVuSW5XaW5kb3c7CisgICAgZW5jb2RlciA8PCBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZDsKIAogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBlbmNvZGVyIDw8IGlzU21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkOwogICAgIGVuY29kZXIuZW5jb2RlRW51bShsYXllckhvc3RpbmdNb2RlKTsK
ICAgICBlbmNvZGVyIDw8IGNvbG9yU3BhY2U7CiAjZW5kaWYKQEAgLTExOCwxMCArMTE4LDEwIEBA
IGJvb2wgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKENvcmVJUEM6OkFyZ3VtZW50
RGVjb2RlciogZGVjb2RlciwgV2ViUGFnCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAo
IWRlY29kZXItPmRlY29kZShwYXJhbWV0ZXJzLm1heVN0YXJ0TWVkaWFXaGVuSW5XaW5kb3cpKQog
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSNpZiBQTEFURk9STShNQUMpCiAgICAgaWYgKCFkZWNv
ZGVyLT5kZWNvZGUocGFyYW1ldGVycy5pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCkpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKKworI2lmIFBMQVRGT1JNKE1BQykKICAgICBpZiAoIWRlY29kZXIt
PmRlY29kZUVudW0ocGFyYW1ldGVycy5sYXllckhvc3RpbmdNb2RlKSkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlKHBhcmFtZXRlcnMuY29sb3JTcGFjZSkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVycy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMu
aAppbmRleCA1ODAzY2QwYzFlNzBhMGI2YjNiM2FhNDI1YmE0OWRhYmI5MmJiYmYzLi5iN2FhMGM1
Zjk2M2FjZTI3MWM4YWFhZjAwYmE4YjYxYTY2ZTQzYWY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTg3LDggKzg3LDkgQEAg
c3RydWN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIGZsb2F0IG1lZGlhVm9sdW1l
OwogICAgIGJvb2wgbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKIAotI2lmIFBMQVRGT1JNKE1B
QykKICAgICBib29sIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOworCisjaWYgUExBVEZPUk0o
TUFDKQogICAgIExheWVySG9zdGluZ01vZGUgbGF5ZXJIb3N0aW5nTW9kZTsKICAgICBDb2xvclNw
YWNlRGF0YSBjb2xvclNwYWNlOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5jcHAK
aW5kZXggMzhiOWRmYjVjOGFlYThkNmU2NDYwYWEwZGIyMmM3MWE1NmM2OGRiNC4uNDkyYTIyMjI1
MDYwZWJlMTVjOTQ3ZjNiZjdhOGYzYmMzNzdjOGRjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQ
YWdlLmNwcApAQCAtNDcwLDMgKzQ3MCw4IEBAIHZvaWQgV0tCdW5kbGVQYWdlU2V0Vmlld01vZGUo
V0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIFdLU3RyaW5nUmVmIG1vZGUpCiAgICAgZWxzZQogICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KKwordm9pZCBXS0J1bmRsZVBhZ2VTZXRTbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIGJvb2wgZW5hYmxl
ZCkKK3sKKyAgICB0b0ltcGwocGFnZVJlZiktPnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChl
bmFibGVkKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VQcml2YXRlLmgKaW5kZXgg
ZTY4YzA3YjdhOTI5ZmIxNDVhMDExZjBlOTNjZWFlZGNiZDllODhlYi4uMDc2NzVjMDI4Nzc1YjBk
MDgwNDRkMzAwODM4YTgyMzhjZGMxMzI2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VQcml2YXRlLmgKKysrIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBh
Z2VQcml2YXRlLmgKQEAgLTgwLDYgKzgwLDggQEAgV0tfRVhQT1JUIHZvaWQqIFdLQWNjZXNzaWJp
bGl0eUZvY3VzZWRPYmplY3QoV0tCdW5kbGVQYWdlUmVmKTsKIFdLX0VYUE9SVCBXS0FycmF5UmVm
IFdLQnVuZGxlUGFnZUNvcHlDb250ZXh0TWVudUl0ZW1UaXRsZXMoV0tCdW5kbGVQYWdlUmVmKTsK
IAogV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVQYWdlU2V0Vmlld01vZGUoV0tCdW5kbGVQYWdlUmVm
IHBhZ2VSZWYsIFdLU3RyaW5nUmVmIG1vZGUpOworCitXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVBh
Z2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIGJv
b2wgZW5hYmxlZCk7CiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JD
bGllbnQuY3BwCmluZGV4IGM2Y2M5YzI2NWFhZDM3MWFjZDk0NjU0Yjg1MzVmMjExYTg0NTRjYTEu
LjYxMzA1YzdlNWJiZDMwMzNjNTBkMTA5ZjJjMDZhNTNmNDIzN2JmYTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRv
ckNsaWVudC5jcHAKQEAgLTc5LDEyICs3OSw3IEBAIGJvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91
bGRTaG93RGVsZXRlSW50ZXJmYWNlKEhUTUxFbGVtZW50KikKIAogYm9vbCBXZWJFZGl0b3JDbGll
bnQ6OnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpCiB7Ci0gICAgLy8gRklYTUU6IFdoeSBpc24n
dCB0aGlzIE1hYyBzcGVjaWZpYyBsaWtlIHRvZ2dsZVNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZD8K
LSNpZiBQTEFURk9STShNQUMpCiAgICAgcmV0dXJuIG1fcGFnZS0+aXNTbWFydEluc2VydERlbGV0
ZUVuYWJsZWQoKTsKLSNlbHNlCi0gICAgcmV0dXJuIHRydWU7Ci0jZW5kaWYKIH0KICAKIGJvb2wg
V2ViRWRpdG9yQ2xpZW50Ojppc1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IGNhODMz
ODhkYjU2Nzc4YWQyYTg2YjAwNDdmZjg2NjI5MjE3YmViYTkuLmY2Y2E0MDI2MThkYTc3NDNkYzlm
ZDk2NzFhODk5N2IyZDBhZTMzMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTI0MywxMiArMjQzLDEyIEBAIFdlYlBhZ2U6OldlYlBhZ2Uo
dWludDY0X3QgcGFnZUlELCBjb25zdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0
ZXJzKQogI2lmIFBMQVRGT1JNKE1BQykKICAgICAsIG1fcGRmUGx1Z2luRW5hYmxlZChmYWxzZSkK
ICAgICAsIG1fd2luZG93SXNWaXNpYmxlKGZhbHNlKQotICAgICwgbV9pc1NtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZChwYXJhbWV0ZXJzLmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKQogICAgICwg
bV9sYXllckhvc3RpbmdNb2RlKHBhcmFtZXRlcnMubGF5ZXJIb3N0aW5nTW9kZSkKICAgICAsIG1f
a2V5Ym9hcmRFdmVudEJlaW5nSW50ZXJwcmV0ZWQoMCkKICNlbGlmIFBMQVRGT1JNKEdUSykKICAg
ICAsIG1fYWNjZXNzaWJpbGl0eU9iamVjdCgwKQogI2VuZGlmCisgICAgLCBtX2lzU21hcnRJbnNl
cnREZWxldGVFbmFibGVkKHBhcmFtZXRlcnMuaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpCiAg
ICAgLCBtX3NldENhblN0YXJ0TWVkaWFUaW1lcihSdW5Mb29wOjptYWluKCksIHRoaXMsICZXZWJQ
YWdlOjpzZXRDYW5TdGFydE1lZGlhVGltZXJGaXJlZCkKICAgICAsIG1fZmluZENvbnRyb2xsZXIo
dGhpcykKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggM2JkYjY1MDhkYjhmNzQ2NjI5NDhlODMzYzQ4YjFk
ZTM2MTllZGY3NS4uMTk5ZWMzMjA3M2I3NWNlZDg4YWU5NDYwNDM4YjE1ZTY2Zjg4NGRmOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC00ODcsOSAr
NDg3LDEwIEBAIHB1YmxpYzoKICAgICBib29sIGlzU3BlYWtpbmcoKTsKICAgICB2b2lkIHNwZWFr
KGNvbnN0IFN0cmluZyYpOwogICAgIHZvaWQgc3RvcFNwZWFraW5nKCk7CisjZW5kaWYKIAogICAg
IGJvb2wgaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzU21h
cnRJbnNlcnREZWxldGVFbmFibGVkOyB9Ci0jZW5kaWYKKyAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZChib29sIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKSB7IG1faXNTbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQgPSBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsgfQogCiAj
aWYgRU5BQkxFKFdFQl9JTlRFTlRTKQogICAgIHZvaWQgZGVsaXZlckNvcmVJbnRlbnRUb0ZyYW1l
KHVpbnQ2NF90IGZyYW1lSUQsIFdlYkNvcmU6OkludGVudCopOwpAQCAtNzgzLDEwICs3ODQsNiBA
QCBwcml2YXRlOgogICAgIHZvaWQgY2FwaXRhbGl6ZVdvcmQoKTsKICNlbmRpZgogCi0jaWYgUExB
VEZPUk0oTUFDKQotICAgIHZvaWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wgaXNT
bWFydEluc2VydERlbGV0ZUVuYWJsZWQpIHsgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9
IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOyB9Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShDT05U
RVhUX01FTlVTKQogICAgIHZvaWQgZGlkU2VsZWN0SXRlbUZyb21BY3RpdmVDb250ZXh0TWVudShj
b25zdCBXZWJDb250ZXh0TWVudUl0ZW1EYXRhJik7CiAjZW5kaWYKQEAgLTgzNyw5ICs4MzQsNiBA
QCBwcml2YXRlOgogICAgIC8vIFdoZXRoZXIgdGhlIGNvbnRhaW5pbmcgd2luZG93IGlzIHZpc2li
bGUgb3Igbm90LgogICAgIGJvb2wgbV93aW5kb3dJc1Zpc2libGU7CiAKLSAgICAvLyBXaGV0aGVy
IHNtYXJ0IGluc2VydC9kZWxldGUgaXMgZW5hYmxlZCBvciBub3QuCi0gICAgYm9vbCBtX2lzU21h
cnRJbnNlcnREZWxldGVFbmFibGVkOwotCiAgICAgLy8gVGhlIGZyYW1lIG9mIHRoZSBjb250YWlu
aW5nIHdpbmRvdyBpbiBzY3JlZW4gY29vcmRpbmF0ZXMuCiAgICAgV2ViQ29yZTo6SW50UmVjdCBt
X3dpbmRvd0ZyYW1lSW5TY3JlZW5Db29yZGluYXRlczsKIApAQCAtODY0LDYgKzg1OCw5IEBAIHBy
aXZhdGU6CiAgICAgdWludDY0X3QgbV9uYXRpdmVXaW5kb3dIYW5kbGU7CiAjZW5kaWYKICNlbmRp
ZgorCisgICAgLy8gV2hldGhlciBzbWFydCBpbnNlcnQvZGVsZXRlIGlzIGVuYWJsZWQgb3Igbm90
LgorICAgIGJvb2wgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsKICAgICAKICAgICBXZWJD
b3JlOjpSdW5Mb29wOjpUaW1lcjxXZWJQYWdlPiBtX3NldENhblN0YXJ0TWVkaWFUaW1lcjsKICAg
ICBib29sIG1fbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKZGlmZiAtLWdpdCBhL1Rvb2xzL0No
YW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkZGNhYWJjOTJiZGU0ZDE4OGQwYTY5Y2U5
YTNhZDg4NTk0MWUxOWZmLi5mOWRlODliOGNhMDUxZmNkMjA5NTBmNzY3YzNlN2VkZGIxYWY0Nzc5
IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjUgQEAKKzIwMTMtMDEtMjQgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGln
YWxpYS5jb20+CisKKyAgICAgICAgW1dUUl1bV0syXSBJbXBsZW1lbnQgdGVzdFJ1bm5lci5zZXRT
bWFydEluc2VydERlbGV0ZUVuYWJsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEwNzg0MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5n
cy9UZXN0UnVubmVyLmlkbDogQWRkIG5ldworICAgICAgICBtZXRob2QuCisgICAgICAgICogV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcDoKKyAgICAgICAgKFdU
Ujo6VGVzdFJ1bm5lcjo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG1l
dGhvZCB1c2luZworICAgICAgICBXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQuCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVy
Lmg6CisgICAgICAgIChUZXN0UnVubmVyKTogQWRkIG5ldyBtZXRob2QgaGVhZGVyLgorCisgICAg
ICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVy
LmlkbDoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5u
ZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0UnVubmVyOjpzZXRTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQpOgorICAgICAgICAoV1RSKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL1Rlc3RSdW5uZXIuaDoKKyAgICAgICAgKFRlc3RSdW5uZXIpOgorCiAyMDEzLTAx
LTI0ICBEYW4gQ2FybmV5ICA8ZGNhcm5leUBnb29nbGUuY29tPgogCiAgICAgICAgIFtjaHJvbWl1
bV0gbW92ZSBtb3N0IFdlYlZpZXdIb3N0IHByaW50ZiBjYWxscyB0byBXZWJUZXN0UHJveHkKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3Mv
VGVzdFJ1bm5lci5pZGwgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0Jp
bmRpbmdzL1Rlc3RSdW5uZXIuaWRsCmluZGV4IGYyNzEzYzc4MmNjOTJmNDFlY2FmN2NhMWZmYmY3
NTE1OWVkNTczMzguLjFkY2U1OTJjODExMWJkZTMwNmQ1YzllYWU5MzQ2MWRlMTNkNjdhMGQgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3Mv
VGVzdFJ1bm5lci5pZGwKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbApAQCAtNzMsNiArNzMsNyBAQCBpbnRlcmZhY2UgVGVz
dFJ1bm5lciB7CiAgICAgdm9pZCBzZXRTZXJpYWxpemVIVFRQTG9hZHMoKTsKICAgICB2b2lkIGRp
c3BhdGNoUGVuZGluZ0xvYWRSZXF1ZXN0cygpOwogICAgIHZvaWQgc2V0Q2FjaGVNb2RlbChpbiBp
bnQgbW9kZWwpOworICAgIHZvaWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGluIGJvb2xl
YW4gZW5hYmxlZCk7CiAKICAgICAvLyBTcGVjaWFsIERPTSBmdW5jdGlvbnMuCiAgICAgdm9pZCBj
bGVhckJhY2tGb3J3YXJkTGlzdCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKaW5kZXggYjI4ZDY1Nzk1NDY4OWJjOTIwNjYz
ZDc5MWEyZDM2NWU1ZDcxYWU5NS4uYTZlM2VkMDJhZGFhYzg1YzZjMjZhYjk1MWQ4YjhlMzhjZWQ1
OTBlNSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9U
ZXN0UnVubmVyLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L1Rlc3RSdW5uZXIuY3BwCkBAIC05MjMsNCArOTIzLDkgQEAgdm9pZCBUZXN0UnVubmVyOjpzZXRB
dXRoZW50aWNhdGlvblBhc3N3b3JkKEpTU3RyaW5nUmVmIHBhc3N3b3JkKQogICAgIFdLQnVuZGxl
UG9zdE1lc3NhZ2UoSW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLmJ1bmRsZSgpLCBtZXNzYWdlTmFt
ZS5nZXQoKSwgbWVzc2FnZUJvZHkuZ2V0KCkpOwogfQogCit2b2lkIFRlc3RSdW5uZXI6OnNldFNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgV0tCdW5kbGVQYWdl
U2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5wYWdl
KCktPnBhZ2UoKSwgZW5hYmxlZCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdUUgpkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmggYi9U
b29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaAppbmRleCA1
OWFkMTJlZTE0YmQ3MWRiYjBlYzFmMDA2MWE0OTFkNjQwYTY1ZmM2Li43NTM0NmUzNmRlYTc2YTZj
NGNmYTI2MzZlNzIxYTA3YjE0N2NjYmVhIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaApAQCAtMTE3LDYgKzExNyw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHNldFNlcmlhbGl6ZUhUVFBMb2FkcygpOwogICAgIHZvaWQgZGlzcGF0Y2hQ
ZW5kaW5nTG9hZFJlcXVlc3RzKCk7CiAgICAgdm9pZCBzZXRDYWNoZU1vZGVsKGludCk7CisgICAg
dm9pZCBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCk7CiAKICAgICAvLyBTcGVjaWFs
IERPTSBmdW5jdGlvbnMuCiAgICAgSlNWYWx1ZVJlZiBjb21wdXRlZFN0eWxlSW5jbHVkaW5nVmlz
aXRlZEluZm8oSlNWYWx1ZVJlZiBlbGVtZW50KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2NGRlODA2Yzk5NmE2NzQyYWI0
MTczMWQwNjEyMTFmNGNlNWUxNjc3Li5mY2MyYTcxY2NlMjY4YmUwNzZmNDI5MzRkMmMyZTA0ZTQw
MWE5NGY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDEtMjQgIE1hbnVlbCBSZWdvIENh
c2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1dUUl1bV0syXSBJbXBsZW1l
bnQgdGVzdFJ1bm5lci5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzg0MAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RFeHBl
Y3RhdGlvbnM6IFVuZmxhZworICAgICAgICBlZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWVkaXRpbmct
ZGlzYWJsZWQuaHRtbAorCiAyMDEzLTAxLTI0ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdh
bGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIGdhcmRlbmluZy4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNTE0ZjRmMTFhNTA5ZmM3Y2RlZjVjOGQw
NzA4MjQ3Nzk2OGRlMDI2ZC4uMGU4ZTNlYThiN2NiZTJlYTFlM2Q0Y2YwNWFkMGQ0MjZkN2ViOTZl
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM4NSw5
ICszODUsNiBAQCBodHRwL3Rlc3RzL21pc2MvbGluay1yZWwtaWNvbi1iZWZvcmVsb2FkLmh0bWwK
ICMgV2ViS2l0VGVzdFJ1bm5lciBzaG91bGQgZHVtcCB0ZXh0L3BsYWluIGNvbnRlbnQgYXMgdGV4
dAogaHR0cC90ZXN0cy9pbmNyZW1lbnRhbC9zbG93LXV0ZjgtdGV4dC5wbAogCi0jIFdlYktpdFRl
c3RSdW5uZXIgbmVlZHMgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0U21hcnRJbnNlcnREZWxldGVF
bmFibGVkCi1lZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWVkaXRpbmctZGlzYWJsZWQuaHRtbAotCiAj
IFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgcGxhaW5UZXh0LnBsYWluVGV4dAogZWRpdGluZy90ZXh0
LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184770</attachid>
            <date>2013-01-25 09:56:31 -0800</date>
            <delta_ts>2013-01-28 04:50:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107840-20130125185321.patch</filename>
            <type>text/plain</type>
            <size>18189</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNjcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWMxMWRkZDExODYwMzZk
YmI0MzIwZTIyODMxOWYxNGEwM2U3ODRmOC4uYzZiZDViZGUzNjY0YTZmMjg4ZTM1Mzg0NDBkZTJi
YWUyOThlMTgyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTAxLTI1ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVFJdW1dL
Ml0gSW1wbGVtZW50IHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGVk
aXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sLgorCisgICAgICAgICog
cGFnZS9TZXR0aW5ncy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6U2V0dGluZ3Mp
OiBJbml0aWFsaXplIG1fc21hcnRJbnNlcnREZWxldGVFbmFibGVkLgorICAgICAgICAoV2ViQ29y
ZTo6U2V0dGluZ3M6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6IEltcGxlbWVudCBuZXcg
bWV0aG9kLgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaDoKKyAgICAgICAgKFNldHRpbmdzKTog
QWRkIG5ldyBnZXR0ZXIgYW5kIHNldHRlciBtZXRob2RzIGZvcgorICAgICAgICBzbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWQgc2V0dGluZy4KKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbmV3IG1ldGhvZC4KKwogMjAxMy0wMS0y
NCAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIg
SW5zcGVjdG9yOiBicmVha3BvaW50cyBhcmUgbm90IHJlc3RvcmVkIHVwb24gcmVsb2FkIGZvciBz
Y3JpcHRzIHdpdGggc2NyaXB0IG1hcHBpbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTdkMjNkYzk2MjBjNGQy
NWM1YjAxNzdkMWE4YWVmYmQzMjE0MzdjMy4uNjEwZGE1ZjU2YTUwMWExMTFlODlkMWY2NWYxMWNm
NGUyN2Q5OTlhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEzLTAxLTI1ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVFJdW1dL
Ml0gSW1wbGVtZW50IHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9XZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVyczo6ZW5jb2RlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgUmVtb3ZlIGNvZGUgcmVsYXRlZCB0byBpc1Nt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAgICAgKiBTaGFyZWQvV2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVycy5oOgorICAgICAgICAoV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyk6IFJlbW92
ZSBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVy
ZW5jZXNTdG9yZS5oOiBBZGQgbWFjcm8gZm9yIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZAorICAg
ICAgICBzZXR0aW5nLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNw
cDoKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOgor
ICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6IEltcGxl
bWVudCBtZXRob2RzIHVzaW5nCisgICAgICAgIHByZWZlcmVuY2VzLgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oOiBBZGQgbmV3IG1ldGhvZHMgaGVhZGVy
cy4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFn
ZS5jcHA6CisgICAgICAgIChXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQp
OiBJbXBsZW1lbnQgbWV0aG9kIHVzaW5nCisgICAgICAgIFdlYlBhZ2U6OnNldFNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9j
L1dLQnVuZGxlUGFnZVByaXZhdGUuaDogQWRkIG5ldyBtZXRob2QKKyAgICAgICAgaGVhZGVyLgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xpZW50OjpzbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQpOiBFbmFibGUgbWV0aG9kIGZvcgorICAgICAgICBhbGwgcGxhdGZvcm1zLgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6V2ViUGFnZSk6IFJlbW92ZSBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAgICAg
IGluaXRpYWxpemF0aW9uLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cGRhdGVQcmVmZXJl
bmNlcyk6IFNldCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQKKyAgICAgICAgc2V0dGluZy4KKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBs
ZW1lbnQgbWV0aG9kIHVzaW5nCisgICAgICAgIHNldHRpbmdzLgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbWV0aG9kIHVz
aW5nCisgICAgICAgIHNldHRpbmdzLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmg6CisgICAgICAgIChXZWJQYWdlKTogRW5hYmxlIG1ldGhvZHMgZGVhbGluZyB3aXRoIHNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCBmb3IgYWxsCisgICAgICAgIHBsYXRmb3JtcyBhbmQgcmVt
b3ZlIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgYXMgaXQgd2lsbCBiZSBhCisgICAgICAg
IHNldHRpbmcuCisKIDIwMTMtMDEtMjQgIEtyenlzenRvZiBDemVjaCAgPGsuY3plY2hAc2Ftc3Vu
Zy5jb20+CiAKICAgICAgICAgW0VGTF1bV0syXSBFeHBvc2UgYWNjZXNzaWJpbGl0eSBoaWVyYXJj
aHkgaW4gV2ViS2l0Mi1FRkwuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRp
bmdzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCmluZGV4IDdmZjdhOTYw
NWI4NmMzZDliZGNlYTA1OGM0NjIwMTA0NGY5OTQ3MWYuLjRiNzQxY2Y4NDdmOTdhZjFhZjhhOTE4
ZWUzYWJkMDg5ZjBiMzBjOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCkBAIC0xOTMsNiAr
MTkzLDcgQEAgU2V0dGluZ3M6OlNldHRpbmdzKFBhZ2UqIHBhZ2UpCiAgICAgLCBtX3Njcm9sbGlu
Z1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCiAgICAgLCBtX2FnZ3Jlc3NpdmVUaWxl
UmV0ZW50aW9uRW5hYmxlZChmYWxzZSkKICAgICAsIG1fc2V0SW1hZ2VMb2FkaW5nU2V0dGluZ3NU
aW1lcih0aGlzLCAmU2V0dGluZ3M6OmltYWdlTG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZCkKKyAg
ICAsIG1fc21hcnRJbnNlcnREZWxldGVFbmFibGVkKHRydWUpCiB7CiAgICAgLy8gQSBGcmFtZSBt
YXkgbm90IGhhdmUgYmVlbiBjcmVhdGVkIHlldCwgc28gd2UgaW5pdGlhbGl6ZSB0aGUgQXRvbWlj
U3RyaW5nCiAgICAgLy8gaGFzaCBiZWZvcmUgdHJ5aW5nIHRvIHVzZSBpdC4KQEAgLTcwNyw0ICs3
MDgsOSBAQCBib29sIFNldHRpbmdzOjpzaG91bGRSZXNwZWN0UHJpb3JpdHlJbkNTU0F0dHJpYnV0
ZVNldHRlcnMoKQogfQogI2VuZGlmCiAKK3ZvaWQgU2V0dGluZ3M6OnNldFNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgbV9zbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQgPSBlbmFibGVkOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRp
bmdzLmgKaW5kZXggMWFhYTI4NmE5ZTMwMjkyYzE4ZmUxMTllMjhiN2YwMDM3OTJiMmE3My4uMmY1
MTQyNzk4ZTBmZDVhNThiYWQwOWQyYjc0MjdhYjhmOWE5M2FmNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MuaApAQCAtMzAzLDYgKzMwMyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgc3Rh
dGljIGJvb2wgc2hvdWxkUmVzcGVjdFByaW9yaXR5SW5DU1NBdHRyaWJ1dGVTZXR0ZXJzKCk7CiAj
ZW5kaWYKIAorICAgICAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sKTsK
KyAgICAgICAgYm9vbCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKSB7IHJldHVybiBtX3NtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZDsgfQorCiAgICAgcHJpdmF0ZToKICAgICAgICAgZXhwbGljaXQg
U2V0dGluZ3MoUGFnZSopOwogCkBAIC00MDAsNiArNDAzLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogI2VuZGlmCiAKICAgICAgICAgc3RhdGljIGRvdWJsZSBnSGlkZGVuUGFnZURPTVRpbWVyQWxp
Z25tZW50SW50ZXJ2YWw7CisKKyAgICAgICAgYm9vbCBtX3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZCA6IDE7CiAgICAgfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IGU5MjVk
YjM0MWFiYzA0YWRiMjU1ODAxOTMwNjEwODUyMmZlZTM4N2MuLjMyNmJjMzgwNjhhNjk3Mzc1ZTBi
OTY3MjVkNTQwZGEwZThjZjY5MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9X
ZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTYwLDcgKzYwLDYgQEAgdm9pZCBXZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUoQ29yZUlQQzo6QXJndW1lbnRFbmNvZGVyJiBl
bmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIgPDwgbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsK
IAogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBlbmNvZGVyIDw8IGlzU21hcnRJbnNlcnREZWxldGVF
bmFibGVkOwogICAgIGVuY29kZXIuZW5jb2RlRW51bShsYXllckhvc3RpbmdNb2RlKTsKICAgICBl
bmNvZGVyIDw8IGNvbG9yU3BhY2U7CiAjZW5kaWYKQEAgLTEyMCw3ICsxMTksNiBAQCBib29sIFdl
YlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXIq
IGRlY29kZXIsIFdlYlBhZwogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICNpZiBQTEFURk9STShN
QUMpCi0gICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUocGFyYW1ldGVycy5pc1NtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXItPmRl
Y29kZUVudW0ocGFyYW1ldGVycy5sYXllckhvc3RpbmdNb2RlKSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBh
cmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0
ZXJzLmgKaW5kZXggNTgwM2NkMGMxZTcwYTBiNmIzYjNhYTQyNWJhNDlkYWJiOTJiYmJmMy4uOGY5
MmZmMmM0YjU2YWY3NGIyZGY2ZGE2NDZjMGJlYzA3MWI0M2ZhMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC04OCw3ICs4OCw2
IEBAIHN0cnVjdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAgICBib29sIG1heVN0YXJ0
TWVkaWFXaGVuSW5XaW5kb3c7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgYm9vbCBpc1NtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZDsKICAgICBMYXllckhvc3RpbmdNb2RlIGxheWVySG9zdGluZ01v
ZGU7CiAgICAgQ29sb3JTcGFjZURhdGEgY29sb3JTcGFjZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaCBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKaW5kZXggNDBlZmJmNzEwNzgwNWFjZDVk
NGRjZjU4MDU2NDY0Y2Q5YWExZTgwZS4uZGViMGMxMDI5MzExMWZjM2M4ZGE0MTBmNjgzMjI2MDcy
Yjk4YWU4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2Vz
U3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5o
CkBAIC0xMzksNiArMTM5LDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAgICAgbWFjcm8oQWdncmVz
c2l2ZVRpbGVSZXRlbnRpb25FbmFibGVkLCBhZ2dyZXNzaXZlVGlsZVJldGVudGlvbkVuYWJsZWQs
IEJvb2wsIGJvb2wsIGZhbHNlKSBcCiAgICAgbWFjcm8oUVRLaXRFbmFibGVkLCBpc1FUS2l0RW5h
YmxlZCwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIG1hY3JvKExvZ3NQYWdlTWVzc2FnZXNUb1N5
c3RlbUNvbnNvbGVFbmFibGVkLCBsb2dzUGFnZU1lc3NhZ2VzVG9TeXN0ZW1Db25zb2xlRW5hYmxl
ZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKKyAgICBtYWNybyhTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQsIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIFwK
IAogI2RlZmluZSBGT1JfRUFDSF9XRUJLSVRfRE9VQkxFX1BSRUZFUkVOQ0UobWFjcm8pIFwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRl
eCBiYTlmOTgwMTY3ZjM2NDliMDViYjJmMmUxNWFiYmNiYmNkNmJmY2VkLi4zMWY1MGUyZjU0MWYy
M2VmZDcwZDkxZjRiM2FkODk1NjhkM2NlNTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCkBAIC0xMDIzLDMgKzEwMjMsMTMgQEAgYm9v
bCBXS1ByZWZlcmVuY2VzR2V0TG9nc1BhZ2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQo
V0tQcmVmZXJlbmNlc1JlZiBwcmUKIHsKICAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVm
KS0+bG9nc1BhZ2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQoKTsKIH0KKwordm9pZCBX
S1ByZWZlcmVuY2VzU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYg
cHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCkKK3sKKyAgICB0b0ltcGwocHJlZmVyZW5jZXNS
ZWYpLT5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZW5hYmxlZCk7Cit9CisKK2Jvb2wgV0tQ
cmVmZXJlbmNlc0dldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHBy
ZWZlcmVuY2VzUmVmKQoreworICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQoKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKaW5kZXggNTg5MjRjMTdkOWU1YTFk
MWRhZjBlN2IzN2FhZWE2NmJlNTQ2Y2JlZS4uYzg4MWJmNjk5ZmM4ZjRkODgzOTM1Njg3NDdjNmNj
MmI2MzRlYTZjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dL
UHJlZmVyZW5jZXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKQEAgLTI0NSw2ICsyNDUsMTAgQEAgV0tfRVhQT1JUIGJv
b2wgV0tQcmVmZXJlbmNlc0dldExvZ3NQYWdlTWVzc2FnZXNUb1N5c3RlbUNvbnNvbGVFbmFibGVk
KFdLUHJlZmVyZW4KIAogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1Jlc2V0VGVzdFJ1bm5l
ck92ZXJyaWRlcyhXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVs
dHMgdG8gdHJ1ZQorV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzLCBib29sIGVuYWJsZWQpOwor
V0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChX
S1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzKTsKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL2MvV0tCdW5kbGVQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmNwcAppbmRleCAzOGI5ZGZiNWM4YWVhOGQ2
ZTY0NjBhYTBkYjIyYzcxYTU2YzY4ZGI0Li40OTJhMjIyMjUwNjBlYmUxNWM5NDdmM2JmN2E4ZjNi
YzM3N2M4ZGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwCkBAIC00NzAsMyArNDcw
LDggQEAgdm9pZCBXS0J1bmRsZVBhZ2VTZXRWaWV3TW9kZShXS0J1bmRsZVBhZ2VSZWYgcGFnZVJl
ZiwgV0tTdHJpbmdSZWYgbW9kZSkKICAgICBlbHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOwogfQorCit2b2lkIFdLQnVuZGxlUGFnZVNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChX
S0J1bmRsZVBhZ2VSZWYgcGFnZVJlZiwgYm9vbCBlbmFibGVkKQoreworICAgIHRvSW1wbChwYWdl
UmVmKS0+c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGVuYWJsZWQpOworfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRs
ZVBhZ2VQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0FQSS9jL1dLQnVuZGxlUGFnZVByaXZhdGUuaAppbmRleCBlNjhjMDdiN2E5MjlmYjE0NWEwMTFm
MGU5M2NlYWVkY2JkOWU4OGViLi4wNzY3NWMwMjg3NzViMGQwODA0NGQzMDA4MzhhODIzOGNkYzEz
MjZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0FQSS9jL1dLQnVuZGxlUGFnZVByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZVByaXZhdGUuaApAQCAtODAsNiAr
ODAsOCBAQCBXS19FWFBPUlQgdm9pZCogV0tBY2Nlc3NpYmlsaXR5Rm9jdXNlZE9iamVjdChXS0J1
bmRsZVBhZ2VSZWYpOwogV0tfRVhQT1JUIFdLQXJyYXlSZWYgV0tCdW5kbGVQYWdlQ29weUNvbnRl
eHRNZW51SXRlbVRpdGxlcyhXS0J1bmRsZVBhZ2VSZWYpOwogCiBXS19FWFBPUlQgdm9pZCBXS0J1
bmRsZVBhZ2VTZXRWaWV3TW9kZShXS0J1bmRsZVBhZ2VSZWYgcGFnZVJlZiwgV0tTdHJpbmdSZWYg
bW9kZSk7CisKK1dLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUGFnZVNldFNtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZChXS0J1bmRsZVBhZ2VSZWYgcGFnZVJlZiwgYm9vbCBlbmFibGVkKTsKICNpZmRlZiBf
X2NwbHVzcGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKaW5kZXggYzZjYzlj
MjY1YWFkMzcxYWNkOTQ2NTRiODUzNWYyMTFhODQ1NGNhMS4uNjEzMDVjN2U1YmJkMzAzM2M1MGQx
MDlmMmMwNmE1M2Y0MjM3YmZhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcApAQCAtNzksMTIg
Kzc5LDcgQEAgYm9vbCBXZWJFZGl0b3JDbGllbnQ6OnNob3VsZFNob3dEZWxldGVJbnRlcmZhY2Uo
SFRNTEVsZW1lbnQqKQogCiBib29sIFdlYkVkaXRvckNsaWVudDo6c21hcnRJbnNlcnREZWxldGVF
bmFibGVkKCkKIHsKLSAgICAvLyBGSVhNRTogV2h5IGlzbid0IHRoaXMgTWFjIHNwZWNpZmljIGxp
a2UgdG9nZ2xlU21hcnRJbnNlcnREZWxldGVFbmFibGVkPwotI2lmIFBMQVRGT1JNKE1BQykKICAg
ICByZXR1cm4gbV9wYWdlLT5pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpOwotI2Vsc2UKLSAg
ICByZXR1cm4gdHJ1ZTsKLSNlbmRpZgogfQogIAogYm9vbCBXZWJFZGl0b3JDbGllbnQ6OmlzU2Vs
ZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggY2E4MzM4OGRiNTY3NzhhZDJhODZiMDA0N2Zm
ODY2MjkyMTdiZWJhOS4uMWFkOThkNGEwMTAxOTc0Zjc4ZTliMjcyZTkwNzI5NjVhOWVlMzU0NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAt
MjQzLDcgKzI0Myw2IEBAIFdlYlBhZ2U6OldlYlBhZ2UodWludDY0X3QgcGFnZUlELCBjb25zdCBX
ZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogI2lmIFBMQVRGT1JNKE1BQykK
ICAgICAsIG1fcGRmUGx1Z2luRW5hYmxlZChmYWxzZSkKICAgICAsIG1fd2luZG93SXNWaXNpYmxl
KGZhbHNlKQotICAgICwgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChwYXJhbWV0ZXJzLmlz
U21hcnRJbnNlcnREZWxldGVFbmFibGVkKQogICAgICwgbV9sYXllckhvc3RpbmdNb2RlKHBhcmFt
ZXRlcnMubGF5ZXJIb3N0aW5nTW9kZSkKICAgICAsIG1fa2V5Ym9hcmRFdmVudEJlaW5nSW50ZXJw
cmV0ZWQoMCkKICNlbGlmIFBMQVRGT1JNKEdUSykKQEAgLTI0MTYsNiArMjQxNSw4IEBAIHZvaWQg
V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3Rv
cmUpCiAKICAgICBpZiAobV9kcmF3aW5nQXJlYSkKICAgICAgICAgbV9kcmF3aW5nQXJlYS0+dXBk
YXRlUHJlZmVyZW5jZXMoc3RvcmUpOworCisgICAgc2V0dGluZ3MtPnNldFNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OnNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZEtleSgpKSk7CiB9CiAKICNpZiBFTkFCTEUoSU5TUEVDVE9S
KQpAQCAtMzc5Niw0ICszNzk3LDE0IEBAIHZvaWQgV2ViUGFnZTo6c2V0TWluaW11bUxheW91dFdp
ZHRoKGRvdWJsZSBtaW5pbXVtTGF5b3V0V2lkdGgpCiAgICAgICAgIGNvcmVQYWdlKCktPm1haW5G
cmFtZSgpLT52aWV3KCktPmVuYWJsZUF1dG9TaXplTW9kZShmYWxzZSwgSW50U2l6ZSgpLCBJbnRT
aXplKCkpOwogfQogCitib29sIFdlYlBhZ2U6OmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkK
K3sKKyAgICByZXR1cm4gbV9wYWdlLT5zZXR0aW5ncygpLT5zbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9v
bCBlbmFibGVkKQoreworICAgIG1fcGFnZS0+c2V0dGluZ3MoKS0+c2V0U21hcnRJbnNlcnREZWxl
dGVFbmFibGVkKGVuYWJsZWQpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCmluZGV4IDNiZGI2NTA4ZGI4Zjc0
NjYyOTQ4ZTgzM2M0OGIxZGUzNjE5ZWRmNzUuLjUyN2U1NTBmMjU2NGY0ZGIzZDg3M2Y2ODQ3ZjNk
ZjI1ZWNhNGVmY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaApAQCAtNDg3LDEwICs0ODcsMTEgQEAgcHVibGljOgogICAgIGJvb2wgaXNTcGVha2luZygp
OwogICAgIHZvaWQgc3BlYWsoY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBzdG9wU3BlYWtpbmco
KTsKLQotICAgIGJvb2wgaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKSBjb25zdCB7IHJldHVy
biBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOyB9CiAjZW5kaWYKIAorICAgIGJvb2wgaXNT
bWFydEluc2VydERlbGV0ZUVuYWJsZWQoKTsKKyAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZChib29sKTsKKwogI2lmIEVOQUJMRShXRUJfSU5URU5UUykKICAgICB2b2lkIGRlbGl2
ZXJDb3JlSW50ZW50VG9GcmFtZSh1aW50NjRfdCBmcmFtZUlELCBXZWJDb3JlOjpJbnRlbnQqKTsK
ICNlbmRpZgpAQCAtNzgzLDEwICs3ODQsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgY2FwaXRhbGl6
ZVdvcmQoKTsKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgc2V0U21hcnRJ
bnNlcnREZWxldGVFbmFibGVkKGJvb2wgaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpIHsgbV9p
c1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOyB9
Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogICAgIHZvaWQgZGlkU2VsZWN0
SXRlbUZyb21BY3RpdmVDb250ZXh0TWVudShjb25zdCBXZWJDb250ZXh0TWVudUl0ZW1EYXRhJik7
CiAjZW5kaWYKQEAgLTgzNyw5ICs4MzQsNiBAQCBwcml2YXRlOgogICAgIC8vIFdoZXRoZXIgdGhl
IGNvbnRhaW5pbmcgd2luZG93IGlzIHZpc2libGUgb3Igbm90LgogICAgIGJvb2wgbV93aW5kb3dJ
c1Zpc2libGU7CiAKLSAgICAvLyBXaGV0aGVyIHNtYXJ0IGluc2VydC9kZWxldGUgaXMgZW5hYmxl
ZCBvciBub3QuCi0gICAgYm9vbCBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOwotCiAgICAg
Ly8gVGhlIGZyYW1lIG9mIHRoZSBjb250YWluaW5nIHdpbmRvdyBpbiBzY3JlZW4gY29vcmRpbmF0
ZXMuCiAgICAgV2ViQ29yZTo6SW50UmVjdCBtX3dpbmRvd0ZyYW1lSW5TY3JlZW5Db29yZGluYXRl
czsKIApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4
IGRkY2FhYmM5MmJkZTRkMTg4ZDBhNjljZTlhM2FkODg1OTQxZTE5ZmYuLjlmMDA5MDZkNTM0NzMy
NGMyMmQyNmQ5ZjJjZmE0MDQ1MTUxNGJkMTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZwor
KysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMy0wMS0yNSAgTWFudWVs
IFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBbV1RSXVtXSzJd
IEltcGxlbWVudCB0ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3ODQwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RSdW5uZXIuaWRsOiBBZGQgbmV3CisgICAg
ICAgIG1ldGhvZC4KKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rl
c3RSdW5uZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0UnVubmVyOjpzZXRTbWFydEluc2VydERl
bGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbWV0aG9kIHVzaW5nCisgICAgICAgIFdLQnVuZGxlUGFn
ZVNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVy
L0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaDoKKyAgICAgICAgKFRlc3RSdW5uZXIpOiBBZGQg
bmV3IG1ldGhvZCBoZWFkZXIuCisKIDIwMTMtMDEtMjQgIERhbiBDYXJuZXkgIDxkY2FybmV5QGdv
b2dsZS5jb20+CiAKICAgICAgICAgW2Nocm9taXVtXSBtb3ZlIG1vc3QgV2ViVmlld0hvc3QgcHJp
bnRmIGNhbGxzIHRvIFdlYlRlc3RQcm94eQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbCBiL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5lci5pZGwKaW5kZXgg
ZjI3MTNjNzgyY2M5MmY0MWVjYWY3Y2ExZmZiZjc1MTU5ZWQ1NzMzOC4uMWRjZTU5MmM4MTExYmRl
MzA2ZDVjOWVhZTkzNDYxZGUxM2Q2N2EwZCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbAorKysgYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RSdW5uZXIuaWRsCkBA
IC03Myw2ICs3Myw3IEBAIGludGVyZmFjZSBUZXN0UnVubmVyIHsKICAgICB2b2lkIHNldFNlcmlh
bGl6ZUhUVFBMb2FkcygpOwogICAgIHZvaWQgZGlzcGF0Y2hQZW5kaW5nTG9hZFJlcXVlc3RzKCk7
CiAgICAgdm9pZCBzZXRDYWNoZU1vZGVsKGluIGludCBtb2RlbCk7CisgICAgdm9pZCBzZXRTbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQoaW4gYm9vbGVhbiBlbmFibGVkKTsKIAogICAgIC8vIFNwZWNp
YWwgRE9NIGZ1bmN0aW9ucy4KICAgICB2b2lkIGNsZWFyQmFja0ZvcndhcmRMaXN0KCk7CmRpZmYg
LS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIu
Y3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNw
cAppbmRleCBiMjhkNjU3OTU0Njg5YmM5MjA2NjNkNzkxYTJkMzY1ZTVkNzFhZTk1Li5hNmUzZWQw
MmFkYWFjODVjNmMyNmFiOTUxZDhiOGUzOGNlZDU5MGU1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwCisrKyBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKQEAgLTkyMyw0ICs5
MjMsOSBAQCB2b2lkIFRlc3RSdW5uZXI6OnNldEF1dGhlbnRpY2F0aW9uUGFzc3dvcmQoSlNTdHJp
bmdSZWYgcGFzc3dvcmQpCiAgICAgV0tCdW5kbGVQb3N0TWVzc2FnZShJbmplY3RlZEJ1bmRsZTo6
c2hhcmVkKCkuYnVuZGxlKCksIG1lc3NhZ2VOYW1lLmdldCgpLCBtZXNzYWdlQm9keS5nZXQoKSk7
CiB9CiAKK3ZvaWQgVGVzdFJ1bm5lcjo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wg
ZW5hYmxlZCkKK3sKKyAgICBXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
SW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLnBhZ2UoKS0+cGFnZSgpLCBlbmFibGVkKTsKK30KKwog
fSAvLyBuYW1lc3BhY2UgV1RSCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0lu
amVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvVGVzdFJ1bm5lci5oCmluZGV4IDU5YWQxMmVlMTRiZDcxZGJiMGVjMWYwMDYxYTQ5
MWQ2NDBhNjVmYzYuLjc1MzQ2ZTM2ZGVhNzZhNmM0Y2ZhMjYzNmU3MjFhMDdiMTQ3Y2NiZWEgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5l
ci5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5l
ci5oCkBAIC0xMTcsNiArMTE3LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0U2VyaWFsaXplSFRU
UExvYWRzKCk7CiAgICAgdm9pZCBkaXNwYXRjaFBlbmRpbmdMb2FkUmVxdWVzdHMoKTsKICAgICB2
b2lkIHNldENhY2hlTW9kZWwoaW50KTsKKyAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZChib29sKTsKIAogICAgIC8vIFNwZWNpYWwgRE9NIGZ1bmN0aW9ucy4KICAgICBKU1ZhbHVl
UmVmIGNvbXB1dGVkU3R5bGVJbmNsdWRpbmdWaXNpdGVkSW5mbyhKU1ZhbHVlUmVmIGVsZW1lbnQp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IDY0ZGU4MDZjOTk2YTY3NDJhYjQxNzMxZDA2MTIxMWY0Y2U1ZTE2NzcuLmMzMWY5
MTE2M2QzYTczYWNkMTg4NTE2ZjQ0MzNhYzI4MDQ5ZDQ0YmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBA
QAorMjAxMy0wMS0yNSAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4K
KworICAgICAgICBbV1RSXVtXSzJdIEltcGxlbWVudCB0ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA3ODQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9uczogVW5mbGFnCisgICAgICAgIGVk
aXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sLgorCiAyMDEzLTAxLTI0
ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmll
d2VkIGdhcmRlbmluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0
RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMK
aW5kZXggNTE0ZjRmMTFhNTA5ZmM3Y2RlZjVjOGQwNzA4MjQ3Nzk2OGRlMDI2ZC4uMGU4ZTNlYThi
N2NiZTJlYTFlM2Q0Y2YwNWFkMGQ0MjZkN2ViOTZlZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM4NSw5ICszODUsNiBAQCBodHRwL3Rlc3RzL21pc2Mv
bGluay1yZWwtaWNvbi1iZWZvcmVsb2FkLmh0bWwKICMgV2ViS2l0VGVzdFJ1bm5lciBzaG91bGQg
ZHVtcCB0ZXh0L3BsYWluIGNvbnRlbnQgYXMgdGV4dAogaHR0cC90ZXN0cy9pbmNyZW1lbnRhbC9z
bG93LXV0ZjgtdGV4dC5wbAogCi0jIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgbGF5b3V0VGVzdENv
bnRyb2xsZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCi1lZGl0aW5nL2RlbGV0aW5nL3Nt
YXJ0LWVkaXRpbmctZGlzYWJsZWQuaHRtbAotCiAjIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgcGxh
aW5UZXh0LnBsYWluVGV4dAogZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5o
dG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184971</attachid>
            <date>2013-01-28 04:51:04 -0800</date>
            <delta_ts>2013-01-28 05:51:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107840-20130128134750.patch</filename>
            <type>text/plain</type>
            <size>20894</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwOTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjg5MjRjYjU3ODZmYjA4
ZDcyMWQ2NzExYThkNjE1NDNlMzE2YjA4Zi4uNzEzNWY5NGEwZWY5MTMwN2JkYzM1NmJlYWE3YjMz
MTU2Y2MyZjljOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEzLTAxLTI4ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVFJdW1dL
Ml0gSW1wbGVtZW50IHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGVk
aXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sLgorCisgICAgICAgICog
cGFnZS9TZXR0aW5ncy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6U2V0dGluZ3Mp
OiBJbml0aWFsaXplIG1fc21hcnRJbnNlcnREZWxldGVFbmFibGVkLgorICAgICAgICAoV2ViQ29y
ZTo6U2V0dGluZ3M6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6IEltcGxlbWVudCBuZXcg
bWV0aG9kLgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaDoKKyAgICAgICAgKFNldHRpbmdzKTog
QWRkIG5ldyBnZXR0ZXIgYW5kIHNldHRlciBtZXRob2RzIGZvcgorICAgICAgICBzbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWQgc2V0dGluZy4KKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbmV3IG1ldGhvZC4KKworICAgICAgICAq
IHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OlNldHRpbmdz
KToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorICAg
ICAgICAoU2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OnNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZCk6CisKIDIwMTMtMDEtMjUgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0Bj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcmVtb3ZlIHVudXNlZCBpc0Vs
ZW1lbnQgYW5kIHNpbWlsYXIgbWV0aG9kcyBmcm9tIEhlYXBQcm9maWxlcgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4
IDRiYTU1Zjk5NjljZTY4NDcyODkxNjE2OTA5N2UyNjBhZjYwMTU1ODMuLmM3N2Y1YzZkYzdmOTA3
YjJiZjYxMzgwMjlhNzIyOWJkMWQ0Mzk4YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw3NSBAQAor
MjAxMy0wMS0yOCAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKwor
ICAgICAgICBbV1RSXVtXSzJdIEltcGxlbWVudCB0ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTA3ODQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBTaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgIFJlbW92ZSBjb2Rl
IHJlbGF0ZWQgdG8gaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQuCisgICAgICAgICogU2hhcmVk
L1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgKFdlYlBhZ2VDcmVhdGlvblBh
cmFtZXRlcnMpOiBSZW1vdmUgaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQuCisgICAgICAgICog
U2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaDogQWRkIG1hY3JvIGZvciBzbWFydEluc2VydERl
bGV0ZUVuYWJsZWQKKyAgICAgICAgc2V0dGluZy4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0U21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRTbWFydEluc2VydERlbGV0
ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbWV0aG9kcyB1c2luZworICAgICAgICBwcmVmZXJlbmNlcy4K
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaDogQWRkIG5l
dyBtZXRob2RzIGhlYWRlcnMuCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6Y3JlYXRpb25QYXJhbWV0ZXJzKTogUmVt
b3ZlIHVzYWdlIG9mCisgICAgICAgIHBhcmFtZXRlcnMuaXNTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBh
Z2UuY3BwOgorICAgICAgICAoV0tCdW5kbGVQYWdlU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVk
KTogSW1wbGVtZW50IG1ldGhvZCB1c2luZworICAgICAgICBXZWJQYWdlOjpzZXRTbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkv
Yy9XS0J1bmRsZVBhZ2VQcml2YXRlLmg6IEFkZCBuZXcgbWV0aG9kCisgICAgICAgIGhlYWRlci4K
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYkVkaXRvckNsaWVudDo6c21hcnRJbnNlcnREZWxldGVFbmFi
bGVkKTogRW5hYmxlIG1ldGhvZCBmb3IKKyAgICAgICAgYWxsIHBsYXRmb3Jtcy4KKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2U6OldlYlBhZ2UpOiBSZW1vdmUgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZAorICAgICAg
ICBpbml0aWFsaXphdGlvbi4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlUHJlZmVy
ZW5jZXMpOiBTZXQgc21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAgICAgIHNldHRpbmcuCisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogSW1w
bGVtZW50IG1ldGhvZCB1c2luZworICAgICAgICBzZXR0aW5ncy4KKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG1ldGhvZCB1
c2luZworICAgICAgICBzZXR0aW5ncy4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oOgorICAgICAgICAoV2ViUGFnZSk6IEVuYWJsZSBtZXRob2RzIGRlYWxpbmcgd2l0aCBz
bWFydEluc2VydERlbGV0ZUVuYWJsZWQgZm9yIGFsbAorICAgICAgICBwbGF0Zm9ybXMgYW5kIHJl
bW92ZSBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkIGFzIGl0IHdpbGwgYmUgYQorICAgICAg
ICBzZXR0aW5nLgorCisgICAgICAgICogU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUpOgor
ICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAgIChX
ZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzKToKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5j
ZXNTdG9yZS5oOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0U21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRTbWFydEluc2VydERlbGV0
ZUVuYWJsZWQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0
ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlUHJveHk6OmNyZWF0aW9uUGFyYW1ldGVycyk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwOgorICAgICAgICAoV0tC
dW5kbGVQYWdlU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZVByaXZhdGUuaDoKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkVkaXRvckNsaWVudDo6c21hcnRJbnNlcnREZWxldGVFbmFibGVkKToKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlBhZ2U6OldlYlBhZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cGRhdGVQcmVm
ZXJlbmNlcyk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmlzU21hcnRJbnNlcnREZWxldGVF
bmFibGVkKToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNl
dFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuaDoKKyAgICAgICAgKFdlYlBhZ2UpOgorCiAyMDEzLTAxLTI4ICBDaHJpc3RvcGhl
IER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CiAKICAgICAgICAgW0VGTF1bV0sy
XSBSZWx5IG1vcmUgb24gQyBBUEkgaW4gZXdrX2Zhdmljb25fZGF0YWJhc2UKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy5jcHAKaW5kZXggN2ZmN2E5NjA1Yjg2YzNkOWJkY2VhMDU4YzQ2MjAxMDQ0Zjk5NDcx
Zi4uNGI3NDFjZjg0N2Y5N2FmMWFmOGE5MThlZTNhYmQwODlmMGIzMGM5NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9TZXR0aW5ncy5jcHAKQEAgLTE5Myw2ICsxOTMsNyBAQCBTZXR0aW5nczo6U2V0dGluZ3MoUGFn
ZSogcGFnZSkKICAgICAsIG1fc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZChmYWxz
ZSkKICAgICAsIG1fYWdncmVzc2l2ZVRpbGVSZXRlbnRpb25FbmFibGVkKGZhbHNlKQogICAgICwg
bV9zZXRJbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyKHRoaXMsICZTZXR0aW5nczo6aW1hZ2VMb2Fk
aW5nU2V0dGluZ3NUaW1lckZpcmVkKQorICAgICwgbV9zbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
dHJ1ZSkKIHsKICAgICAvLyBBIEZyYW1lIG1heSBub3QgaGF2ZSBiZWVuIGNyZWF0ZWQgeWV0LCBz
byB3ZSBpbml0aWFsaXplIHRoZSBBdG9taWNTdHJpbmcKICAgICAvLyBoYXNoIGJlZm9yZSB0cnlp
bmcgdG8gdXNlIGl0LgpAQCAtNzA3LDQgKzcwOCw5IEBAIGJvb2wgU2V0dGluZ3M6OnNob3VsZFJl
c3BlY3RQcmlvcml0eUluQ1NTQXR0cmlidXRlU2V0dGVycygpCiB9CiAjZW5kaWYKIAordm9pZCBT
ZXR0aW5nczo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAg
ICBtX3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9IGVuYWJsZWQ7Cit9CisKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAppbmRleCAxYWFhMjg2YTllMzAyOTJjMThm
ZTExOWUyOGI3ZjAwMzc5MmIyYTczLi4yZjUxNDI3OThlMGZkNWE1OGJhZDA5ZDJiNzQyN2FiOGY5
YTkzYWY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCkBAIC0zMDMsNiArMzAzLDkgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgICAgICBzdGF0aWMgYm9vbCBzaG91bGRSZXNwZWN0UHJpb3JpdHlJ
bkNTU0F0dHJpYnV0ZVNldHRlcnMoKTsKICNlbmRpZgogCisgICAgICAgIHZvaWQgc2V0U21hcnRJ
bnNlcnREZWxldGVFbmFibGVkKGJvb2wpOworICAgICAgICBib29sIHNtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZCgpIHsgcmV0dXJuIG1fc21hcnRJbnNlcnREZWxldGVFbmFibGVkOyB9CisKICAgICBw
cml2YXRlOgogICAgICAgICBleHBsaWNpdCBTZXR0aW5ncyhQYWdlKik7CiAKQEAgLTQwMCw2ICs0
MDMsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjZW5kaWYKIAogICAgICAgICBzdGF0aWMgZG91
YmxlIGdIaWRkZW5QYWdlRE9NVGltZXJBbGlnbm1lbnRJbnRlcnZhbDsKKworICAgICAgICBib29s
IG1fc21hcnRJbnNlcnREZWxldGVFbmFibGVkIDogMTsKICAgICB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVycy5jcHAKaW5kZXggZTkyNWRiMzQxYWJjMDRhZGIyNTU4MDE5MzA2MTA4NTIyZmVl
Mzg3Yy4uMjcwYmU3ZjhmMzc3M2U2ZjYyYzhmNDYyNDM3Yzc4NGE1N2E1MWJjNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApA
QCAtNjAsNyArNjAsNiBAQCB2b2lkIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShD
b3JlSVBDOjpBcmd1bWVudEVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCBt
YXlTdGFydE1lZGlhV2hlbkluV2luZG93OwogCiAjaWYgUExBVEZPUk0oTUFDKQotICAgIGVuY29k
ZXIgPDwgaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7CiAgICAgZW5jb2Rlci5lbmNvZGVFbnVt
KGxheWVySG9zdGluZ01vZGUpOwogICAgIGVuY29kZXIgPDwgY29sb3JTcGFjZTsKICNlbmRpZgpA
QCAtMTIwLDggKzExOSw2IEBAIGJvb2wgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2Rl
KENvcmVJUEM6OkFyZ3VtZW50RGVjb2RlciogZGVjb2RlciwgV2ViUGFnCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIAogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBpZiAoIWRlY29kZXItPmRlY29kZShw
YXJhbWV0ZXJzLmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlRW51bShwYXJhbWV0ZXJzLmxheWVySG9zdGlu
Z01vZGUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUo
cGFyYW1ldGVycy5jb2xvclNwYWNlKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2Vi
UGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IDU4MDNjZDBjMWU3MGEwYjZiM2IzYWE0MjVi
YTQ5ZGFiYjkyYmJiZjMuLjhmOTJmZjJjNGI1NmFmNzRiMmRmNmRhNjQ2YzBiZWMwNzFiNDNmYTEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0
ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRl
cnMuaApAQCAtODgsNyArODgsNiBAQCBzdHJ1Y3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyB7
CiAgICAgYm9vbCBtYXlTdGFydE1lZGlhV2hlbkluV2luZG93OwogCiAjaWYgUExBVEZPUk0oTUFD
KQotICAgIGJvb2wgaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7CiAgICAgTGF5ZXJIb3N0aW5n
TW9kZSBsYXllckhvc3RpbmdNb2RlOwogICAgIENvbG9yU3BhY2VEYXRhIGNvbG9yU3BhY2U7CiAj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0
b3JlLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCmluZGV4
IDQwZWZiZjcxMDc4MDVhY2Q1ZDRkY2Y1ODA1NjQ2NGNkOWFhMWU4MGUuLmRlYjBjMTAyOTMxMTFm
YzNjOGRhNDEwZjY4MzIyNjA3MmI5OGFlODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dl
YlByZWZlcmVuY2VzU3RvcmUuaApAQCAtMTM5LDYgKzEzOSw3IEBAIG5hbWVzcGFjZSBXZWJLaXQg
ewogICAgIG1hY3JvKEFnZ3Jlc3NpdmVUaWxlUmV0ZW50aW9uRW5hYmxlZCwgYWdncmVzc2l2ZVRp
bGVSZXRlbnRpb25FbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAogICAgIG1hY3JvKFFUS2l0
RW5hYmxlZCwgaXNRVEtpdEVuYWJsZWQsIEJvb2wsIGJvb2wsIHRydWUpIFwKICAgICBtYWNybyhM
b2dzUGFnZU1lc3NhZ2VzVG9TeXN0ZW1Db25zb2xlRW5hYmxlZCwgbG9nc1BhZ2VNZXNzYWdlc1Rv
U3lzdGVtQ29uc29sZUVuYWJsZWQsIEJvb2wsIGJvb2wsIGZhbHNlKSBcCisgICAgbWFjcm8oU21h
cnRJbnNlcnREZWxldGVFbmFibGVkLCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQsIEJvb2wsIGJv
b2wsIHRydWUpIFwKICAgICBcCiAKICNkZWZpbmUgRk9SX0VBQ0hfV0VCS0lUX0RPVUJMRV9QUkVG
RVJFTkNFKG1hY3JvKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlcy5jcHAKaW5kZXggYmE5Zjk4MDE2N2YzNjQ5YjA1YmIyZjJlMTVhYmJjYmJjZDZi
ZmNlZC4uMzFmNTBlMmY1NDFmMjNlZmQ3MGQ5MWY0YjNhZDg5NTY4ZDNjZTUzMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcApAQCAtMTAy
MywzICsxMDIzLDEzIEBAIGJvb2wgV0tQcmVmZXJlbmNlc0dldExvZ3NQYWdlTWVzc2FnZXNUb1N5
c3RlbUNvbnNvbGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlCiB7CiAgICAgcmV0dXJuIHRv
SW1wbChwcmVmZXJlbmNlc1JlZiktPmxvZ3NQYWdlTWVzc2FnZXNUb1N5c3RlbUNvbnNvbGVFbmFi
bGVkKCk7CiB9CisKK3ZvaWQgV0tQcmVmZXJlbmNlc1NldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGVuYWJsZWQpCit7CisgICAg
dG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGVuYWJs
ZWQpOworfQorCitib29sIFdLUHJlZmVyZW5jZXNHZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
V0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4gdG9JbXBsKHBy
ZWZlcmVuY2VzUmVmKS0+c21hcnRJbnNlcnREZWxldGVFbmFibGVkKCk7Cit9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCmlu
ZGV4IDU4OTI0YzE3ZDllNWExZDFkYWYwZTdiMzdhYWVhNjZiZTU0NmNiZWUuLmM4ODFiZjY5OWZj
OGY0ZDg4MzkzNTY4NzQ3YzZjYzJiNjM0ZWE2YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCkBAIC0yNDUsNiArMjQ1
LDEwIEBAIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRMb2dzUGFnZU1lc3NhZ2VzVG9T
eXN0ZW1Db25zb2xlRW5hYmxlZChXS1ByZWZlcmVuCiAKIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVy
ZW5jZXNSZXNldFRlc3RSdW5uZXJPdmVycmlkZXMoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNl
c1JlZik7CiAKKy8vIERlZmF1bHRzIHRvIHRydWUKK1dLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5j
ZXNTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNl
cywgYm9vbCBlbmFibGVkKTsKK1dLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRTbWFydElu
c2VydERlbGV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKICNpZmRl
ZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuY3BwCmluZGV4IDI5NGQ1NGE5YzM4Zjc4MTdjOTFmMDIxYzlkYzkxOGE4MGMwODIxNjMu
LmQxZjRiN2ZiYmRkYzI5ZmZhMTNhOTVkMmE2MjZkZDI4NTVmZDY3NDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC0zODA2LDcgKzM4MDYsNiBAQCBXZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzIFdlYlBhZ2VQcm94eTo6Y3JlYXRpb25QYXJhbWV0ZXJzKCkg
Y29uc3QKICAgICBwYXJhbWV0ZXJzLm1heVN0YXJ0TWVkaWFXaGVuSW5XaW5kb3cgPSBtX21heVN0
YXJ0TWVkaWFXaGVuSW5XaW5kb3c7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgcGFyYW1ldGVy
cy5pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9IG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQ7CiAgICAgcGFyYW1ldGVycy5sYXllckhvc3RpbmdNb2RlID0gbV9sYXllckhvc3RpbmdNb2Rl
OwogICAgIHBhcmFtZXRlcnMuY29sb3JTcGFjZSA9IG1fcGFnZUNsaWVudC0+Y29sb3JTcGFjZSgp
OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5jcHAKaW5kZXggNWZlNGM2NDI0MjZj
NWQxYTFlNDM5ZGE2MzE5YjFmMmY4MzEzMTc4MC4uZWFhMDE4ZjU2MGQ3MGQ0MTc2ODA3NTkyZjM3
MDQ4Y2QzYTNhM2MxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmNwcApAQCAtNDgwLDMg
KzQ4MCw4IEBAIHZvaWQgV0tCdW5kbGVQYWdlU2V0Vmlld01vZGUoV0tCdW5kbGVQYWdlUmVmIHBh
Z2VSZWYsIFdLU3RyaW5nUmVmIG1vZGUpCiAgICAgZWxzZQogICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKIH0KKwordm9pZCBXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIGJvb2wgZW5hYmxlZCkKK3sKKyAgICB0b0ltcGwo
cGFnZVJlZiktPnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChlbmFibGVkKTsKK30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tC
dW5kbGVQYWdlUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VQcml2YXRlLmgKaW5kZXggZTY4YzA3YjdhOTI5ZmIxNDVh
MDExZjBlOTNjZWFlZGNiZDllODhlYi4uMDc2NzVjMDI4Nzc1YjBkMDgwNDRkMzAwODM4YTgyMzhj
ZGMxMzI2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VQcml2YXRlLmgKQEAgLTgw
LDYgKzgwLDggQEAgV0tfRVhQT1JUIHZvaWQqIFdLQWNjZXNzaWJpbGl0eUZvY3VzZWRPYmplY3Qo
V0tCdW5kbGVQYWdlUmVmKTsKIFdLX0VYUE9SVCBXS0FycmF5UmVmIFdLQnVuZGxlUGFnZUNvcHlD
b250ZXh0TWVudUl0ZW1UaXRsZXMoV0tCdW5kbGVQYWdlUmVmKTsKIAogV0tfRVhQT1JUIHZvaWQg
V0tCdW5kbGVQYWdlU2V0Vmlld01vZGUoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIFdLU3RyaW5n
UmVmIG1vZGUpOworCitXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERl
bGV0ZUVuYWJsZWQoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIGJvb2wgZW5hYmxlZCk7CiAjaWZk
ZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCmluZGV4IGM2
Y2M5YzI2NWFhZDM3MWFjZDk0NjU0Yjg1MzVmMjExYTg0NTRjYTEuLjYxMzA1YzdlNWJiZDMwMzNj
NTBkMTA5ZjJjMDZhNTNmNDIzN2JmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKQEAgLTc5
LDEyICs3OSw3IEBAIGJvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRTaG93RGVsZXRlSW50ZXJm
YWNlKEhUTUxFbGVtZW50KikKIAogYm9vbCBXZWJFZGl0b3JDbGllbnQ6OnNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZCgpCiB7Ci0gICAgLy8gRklYTUU6IFdoeSBpc24ndCB0aGlzIE1hYyBzcGVjaWZp
YyBsaWtlIHRvZ2dsZVNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZD8KLSNpZiBQTEFURk9STShNQUMp
CiAgICAgcmV0dXJuIG1fcGFnZS0+aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKTsKLSNlbHNl
Ci0gICAgcmV0dXJuIHRydWU7Ci0jZW5kaWYKIH0KICAKIGJvb2wgV2ViRWRpdG9yQ2xpZW50Ojpp
c1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDAwNjAxNjczYTA2NmMzMzhjZWMzNzNi
MWUwMTJhNzM0MzIyNjFhNDIuLjYzZjE4ODNjMTAzZjgzMzdmNzEzMjdhNTI1MWVjYmVlNmExMjY2
OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAK
QEAgLTI0Myw3ICsyNDMsNiBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29u
c3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKICNpZiBQTEFURk9STShN
QUMpCiAgICAgLCBtX3BkZlBsdWdpbkVuYWJsZWQoZmFsc2UpCiAgICAgLCBtX3dpbmRvd0lzVmlz
aWJsZShmYWxzZSkKLSAgICAsIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQocGFyYW1ldGVy
cy5pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCkKICAgICAsIG1fbGF5ZXJIb3N0aW5nTW9kZShw
YXJhbWV0ZXJzLmxheWVySG9zdGluZ01vZGUpCiAgICAgLCBtX2tleWJvYXJkRXZlbnRCZWluZ0lu
dGVycHJldGVkKDApCiAjZWxpZiBQTEFURk9STShHVEspCkBAIC0yNDE0LDYgKzI0MTMsOCBAQCB2
b2lkIFdlYlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUm
IHN0b3JlKQogCiAgICAgaWYgKG1fZHJhd2luZ0FyZWEpCiAgICAgICAgIG1fZHJhd2luZ0FyZWEt
PnVwZGF0ZVByZWZlcmVuY2VzKHN0b3JlKTsKKworICAgIHNldHRpbmdzLT5zZXRTbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5
OjpzbWFydEluc2VydERlbGV0ZUVuYWJsZWRLZXkoKSkpOwogfQogCiAjaWYgRU5BQkxFKElOU1BF
Q1RPUikKQEAgLTM3OTQsNCArMzc5NSwxNCBAQCB2b2lkIFdlYlBhZ2U6OnNldE1pbmltdW1MYXlv
dXRXaWR0aChkb3VibGUgbWluaW11bUxheW91dFdpZHRoKQogICAgICAgICBjb3JlUGFnZSgpLT5t
YWluRnJhbWUoKS0+dmlldygpLT5lbmFibGVBdXRvU2l6ZU1vZGUoZmFsc2UsIEludFNpemUoKSwg
SW50U2l6ZSgpKTsKIH0KIAorYm9vbCBXZWJQYWdlOjppc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZCgpCit7CisgICAgcmV0dXJuIG1fcGFnZS0+c2V0dGluZ3MoKS0+c21hcnRJbnNlcnREZWxldGVF
bmFibGVkKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVk
KGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX3BhZ2UtPnNldHRpbmdzKCktPnNldFNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZChlbmFibGVkKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAppbmRleCA2ZWY3YzNiMjBl
NDU4ZWQyYTFhODMzNDQ0MzBhODFmNTI1OTc2ZjVmLi42MDVmMTk2MDgwM2NkNjAzOTI5NTUzMDJk
ZDUxN2M3NmJhZTQyNDFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmgKQEAgLTQ4NywxMCArNDg3LDExIEBAIHB1YmxpYzoKICAgICBib29sIGlzU3BlYWtp
bmcoKTsKICAgICB2b2lkIHNwZWFrKGNvbnN0IFN0cmluZyYpOwogICAgIHZvaWQgc3RvcFNwZWFr
aW5nKCk7Ci0KLSAgICBib29sIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsgfQogI2VuZGlmCiAKKyAgICBib29s
IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKCk7CisgICAgdm9pZCBzZXRTbWFydEluc2VydERl
bGV0ZUVuYWJsZWQoYm9vbCk7CisKICNpZiBFTkFCTEUoV0VCX0lOVEVOVFMpCiAgICAgdm9pZCBk
ZWxpdmVyQ29yZUludGVudFRvRnJhbWUodWludDY0X3QgZnJhbWVJRCwgV2ViQ29yZTo6SW50ZW50
Kik7CiAjZW5kaWYKQEAgLTc4MywxMCArNzg0LDYgQEAgcHJpdmF0ZToKICAgICB2b2lkIGNhcGl0
YWxpemVXb3JkKCk7CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKE1BQykKLSAgICB2b2lkIHNldFNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKSB7
IG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgPSBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZDsgfQotI2VuZGlmCi0KICNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKICAgICB2b2lkIGRpZFNl
bGVjdEl0ZW1Gcm9tQWN0aXZlQ29udGV4dE1lbnUoY29uc3QgV2ViQ29udGV4dE1lbnVJdGVtRGF0
YSYpOwogI2VuZGlmCkBAIC04MzcsOSArODM0LDYgQEAgcHJpdmF0ZToKICAgICAvLyBXaGV0aGVy
IHRoZSBjb250YWluaW5nIHdpbmRvdyBpcyB2aXNpYmxlIG9yIG5vdC4KICAgICBib29sIG1fd2lu
ZG93SXNWaXNpYmxlOwogCi0gICAgLy8gV2hldGhlciBzbWFydCBpbnNlcnQvZGVsZXRlIGlzIGVu
YWJsZWQgb3Igbm90LgotICAgIGJvb2wgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsKLQog
ICAgIC8vIFRoZSBmcmFtZSBvZiB0aGUgY29udGFpbmluZyB3aW5kb3cgaW4gc2NyZWVuIGNvb3Jk
aW5hdGVzLgogICAgIFdlYkNvcmU6OkludFJlY3QgbV93aW5kb3dGcmFtZUluU2NyZWVuQ29vcmRp
bmF0ZXM7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwpp
bmRleCBjZmNhY2ZkYWU0MzE0OGYzMjQwY2EzZTVhYWRiODY4MzZlZDdlZTUyLi5hZjAzZmE2M2Q3
ZjcyMTM3ODU0NGE0NzIzNzdhYmNmMTZmOTdkZTY2IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VM
b2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTMtMDEtMjggIE1h
bnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1dUUl1b
V0syXSBJbXBsZW1lbnQgdGVzdFJ1bm5lci5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzg0MAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbDogQWRkIG5ldwor
ICAgICAgICBtZXRob2QuCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9UZXN0UnVubmVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdFJ1bm5lcjo6c2V0U21hcnRJbnNl
cnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG1ldGhvZCB1c2luZworICAgICAgICBXS0J1bmRs
ZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQuCisgICAgICAgICogV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmg6CisgICAgICAgIChUZXN0UnVubmVyKTog
QWRkIG5ldyBtZXRob2QgaGVhZGVyLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9Jbmpl
Y3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbDoKKyAgICAgICAgKiBXZWJLaXRUZXN0
UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0
UnVubmVyOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOgorICAgICAgICAoV1RSKToKKyAg
ICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaDoKKyAg
ICAgICAgKFRlc3RSdW5uZXIpOgorCiAyMDEzLTAxLTI3ICBEYXZpZCBGYXJsZXIgIDxkZmFybGVy
QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMTQwOTEyKTogQnJva2Ugc3BlY2lm
eWluZyBub24tdHJpdmlhbCBBUkNIUyB2YWx1ZSB0byBtYWtlIC8gYnVpbGQtd2Via2l0CmRpZmYg
LS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rl
c3RSdW5uZXIuaWRsIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5k
aW5ncy9UZXN0UnVubmVyLmlkbAppbmRleCBmMjcxM2M3ODJjYzkyZjQxZWNhZjdjYTFmZmJmNzUx
NTllZDU3MzM4Li4xZGNlNTkyYzgxMTFiZGUzMDZkNWM5ZWFlOTM0NjFkZTEzZDY3YTBkIDEwMDY0
NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rl
c3RSdW5uZXIuaWRsCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUv
QmluZGluZ3MvVGVzdFJ1bm5lci5pZGwKQEAgLTczLDYgKzczLDcgQEAgaW50ZXJmYWNlIFRlc3RS
dW5uZXIgewogICAgIHZvaWQgc2V0U2VyaWFsaXplSFRUUExvYWRzKCk7CiAgICAgdm9pZCBkaXNw
YXRjaFBlbmRpbmdMb2FkUmVxdWVzdHMoKTsKICAgICB2b2lkIHNldENhY2hlTW9kZWwoaW4gaW50
IG1vZGVsKTsKKyAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChpbiBib29sZWFu
IGVuYWJsZWQpOwogCiAgICAgLy8gU3BlY2lhbCBET00gZnVuY3Rpb25zLgogICAgIHZvaWQgY2xl
YXJCYWNrRm9yd2FyZExpc3QoKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0lu
amVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwCmluZGV4IGIyOGQ2NTc5NTQ2ODliYzkyMDY2M2Q3
OTFhMmQzNjVlNWQ3MWFlOTUuLmE2ZTNlZDAyYWRhYWM4NWM2YzI2YWI5NTFkOGI4ZTM4Y2VkNTkw
ZTUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVz
dFJ1bm5lci5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9U
ZXN0UnVubmVyLmNwcApAQCAtOTIzLDQgKzkyMyw5IEBAIHZvaWQgVGVzdFJ1bm5lcjo6c2V0QXV0
aGVudGljYXRpb25QYXNzd29yZChKU1N0cmluZ1JlZiBwYXNzd29yZCkKICAgICBXS0J1bmRsZVBv
c3RNZXNzYWdlKEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5idW5kbGUoKSwgbWVzc2FnZU5hbWUu
Z2V0KCksIG1lc3NhZ2VCb2R5LmdldCgpKTsKIH0KIAordm9pZCBUZXN0UnVubmVyOjpzZXRTbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCBlbmFibGVkKQoreworICAgIFdLQnVuZGxlUGFnZVNl
dFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkucGFnZSgp
LT5wYWdlKCksIGVuYWJsZWQpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5oIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmgKaW5kZXggNTlh
ZDEyZWUxNGJkNzFkYmIwZWMxZjAwNjFhNDkxZDY0MGE2NWZjNi4uNzUzNDZlMzZkZWE3NmE2YzRj
ZmEyNjM2ZTcyMWEwN2IxNDdjY2JlYSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmgKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmgKQEAgLTExNyw2ICsxMTcsNyBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRTZXJpYWxpemVIVFRQTG9hZHMoKTsKICAgICB2b2lkIGRpc3BhdGNoUGVu
ZGluZ0xvYWRSZXF1ZXN0cygpOwogICAgIHZvaWQgc2V0Q2FjaGVNb2RlbChpbnQpOworICAgIHZv
aWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wpOwogCiAgICAgLy8gU3BlY2lhbCBE
T00gZnVuY3Rpb25zLgogICAgIEpTVmFsdWVSZWYgY29tcHV0ZWRTdHlsZUluY2x1ZGluZ1Zpc2l0
ZWRJbmZvKEpTVmFsdWVSZWYgZWxlbWVudCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZmNiZTczODFhYWFmNTRkNWZjODc1
ZDhiNzg4MjhhNWMyYjBmYTJjOS4uNjhkMTQ4OTdmYTAwNmRmMDgxZTM3OTU5ZTEwNTE0MmQ0MWQy
OTg5OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEzLTAxLTI4ICBNYW51ZWwgUmVnbyBDYXNh
c25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVFJdW1dLMl0gSW1wbGVtZW50
IHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0
YXRpb25zOiBVbmZsYWcKKyAgICAgICAgZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRp
c2FibGVkLmh0bWwuCisKIDIwMTMtMDEtMjUgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcmVtb3ZlIHVudXNlZCBpc0VsZW1l
bnQgYW5kIHNpbWlsYXIgbWV0aG9kcyBmcm9tIEhlYXBQcm9maWxlcgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA1MTRmNGYxMWE1MDlmYzdjZGVmNWM4ZDA3
MDgyNDc3OTY4ZGUwMjZkLi4wZThlM2VhOGI3Y2JlMmVhMWUzZDRjZjA1YWQwZDQyNmQ3ZWI5NmVm
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzg1LDkg
KzM4NSw2IEBAIGh0dHAvdGVzdHMvbWlzYy9saW5rLXJlbC1pY29uLWJlZm9yZWxvYWQuaHRtbAog
IyBXZWJLaXRUZXN0UnVubmVyIHNob3VsZCBkdW1wIHRleHQvcGxhaW4gY29udGVudCBhcyB0ZXh0
CiBodHRwL3Rlc3RzL2luY3JlbWVudGFsL3Nsb3ctdXRmOC10ZXh0LnBsCiAKLSMgV2ViS2l0VGVz
dFJ1bm5lciBuZWVkcyBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQKLWVkaXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sCi0KICMg
V2ViS2l0VGVzdFJ1bm5lciBuZWVkcyBwbGFpblRleHQucGxhaW5UZXh0CiBlZGl0aW5nL3RleHQt
aXRlcmF0b3IvYmFzaWMtaXRlcmF0aW9uLmh0bWwKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184973</attachid>
            <date>2013-01-28 05:51:24 -0800</date>
            <delta_ts>2013-01-28 13:25:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107840-20130128144811.patch</filename>
            <type>text/plain</type>
            <size>19953</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwOTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjg5MjRjYjU3ODZmYjA4
ZDcyMWQ2NzExYThkNjE1NDNlMzE2YjA4Zi4uYzU1NWI3ZmYzNjg5MDAwYTQ5Y2JiMTk5MDk2MjE0
ZDNhY2QzNWM4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEzLTAxLTI4ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVFJdW1dL
Ml0gSW1wbGVtZW50IHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGVk
aXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sLgorCisgICAgICAgICog
V2ViQ29yZS5leHAuaW46IEV4cG9ydCBzeW1ib2wgZm9yCisgICAgICAgIFdlYkNvcmU6OlNldHRp
bmdzOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgb24gTWFjLgorICAgICAgICAqIHBhZ2Uv
U2V0dGluZ3MuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OlNldHRpbmdzKTogSW5p
dGlhbGl6ZSBtX3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNl
dHRpbmdzOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbmV3IG1ldGhv
ZC4KKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmg6CisgICAgICAgIChTZXR0aW5ncyk6IEFkZCBu
ZXcgZ2V0dGVyIGFuZCBzZXR0ZXIgbWV0aG9kcyBmb3IKKyAgICAgICAgc21hcnRJbnNlcnREZWxl
dGVFbmFibGVkIHNldHRpbmcuCisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c21hcnRJbnNl
cnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG5ldyBtZXRob2QuCisKIDIwMTMtMDEtMjUgIFl1
cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3Bl
Y3RvcjogcmVtb3ZlIHVudXNlZCBpc0VsZW1lbnQgYW5kIHNpbWlsYXIgbWV0aG9kcyBmcm9tIEhl
YXBQcm9maWxlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDRiYTU1Zjk5NjljZTY4NDcyODkxNjE2OTA5N2UyNjBh
ZjYwMTU1ODMuLjU1OGQ3YThhODVjZDc1YjFlMmU3ZjYzZTVhZmQyZDg1OWI0YjYxYmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKQEAgLTEsMyArMSw0OCBAQAorMjAxMy0wMS0yOCAgTWFudWVsIFJlZ28gQ2FzYXNub3Zh
cyAgPHJlZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBbV1RSXVtXSzJdIEltcGxlbWVudCB0ZXN0
UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3ODQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVycy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmVu
Y29kZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29k
ZSk6CisgICAgICAgIFJlbW92ZSBjb2RlIHJlbGF0ZWQgdG8gaXNTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQuCisgICAgICAgICogU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAg
ICAgICAgKFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMpOiBSZW1vdmUgaXNTbWFydEluc2VydERl
bGV0ZUVuYWJsZWQuCisgICAgICAgICogU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaDogQWRk
IG1hY3JvIGZvciBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQKKyAgICAgICAgc2V0dGluZy4KKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1By
ZWZlcmVuY2VzU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKToKKyAgICAgICAgKFdLUHJlZmVy
ZW5jZXNHZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbWV0aG9kcyB1c2lu
ZworICAgICAgICBwcmVmZXJlbmNlcy4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVm
ZXJlbmNlc1ByaXZhdGUuaDogQWRkIG5ldyBtZXRob2RzIGhlYWRlcnMuCisgICAgICAgICogVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6
Y3JlYXRpb25QYXJhbWV0ZXJzKTogUmVtb3ZlIHVzYWdlIG9mCisgICAgICAgIHBhcmFtZXRlcnMu
aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwOgorICAgICAgICAoV0tCdW5kbGVQYWdlU2V0
U21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG1ldGhvZCB1c2luZworICAgICAg
ICBXZWJQYWdlOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQuCisgICAgICAgICogV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VQcml2YXRlLmg6IEFkZCBuZXcg
bWV0aG9kCisgICAgICAgIGhlYWRlci4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkVkaXRvckNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkVkaXRvckNsaWVu
dDo6c21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogRW5hYmxlIG1ldGhvZCBmb3IKKyAgICAgICAg
YWxsIHBsYXRmb3Jtcy4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OldlYlBhZ2UpOiBSZW1vdmUgbV9pc1NtYXJ0SW5z
ZXJ0RGVsZXRlRW5hYmxlZAorICAgICAgICBpbml0aWFsaXphdGlvbi4KKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMpOiBTZXQgc21hcnRJbnNlcnREZWxldGVFbmFi
bGVkCisgICAgICAgIHNldHRpbmcuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmlzU21hcnRJ
bnNlcnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG1ldGhvZCB1c2luZworICAgICAgICBzZXR0
aW5ncy4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFi
bGVkKTogSW1wbGVtZW50IG1ldGhvZCB1c2luZworICAgICAgICBzZXR0aW5ncy4KKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAoV2ViUGFnZSk6IEVuYWJs
ZSBtZXRob2RzIGRlYWxpbmcgd2l0aCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQgZm9yIGFsbAor
ICAgICAgICBwbGF0Zm9ybXMgYW5kIHJlbW92ZSBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVk
IGFzIGl0IHdpbGwgYmUgYQorICAgICAgICBzZXR0aW5nLgorCiAyMDEzLTAxLTI4ICBDaHJpc3Rv
cGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CiAKICAgICAgICAgW0VGTF1b
V0syXSBSZWx5IG1vcmUgb24gQyBBUEkgaW4gZXdrX2Zhdmljb25fZGF0YWJhc2UKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5leHAuaW4KaW5kZXggMWM5OWU2MDVhODBkMGNlMGQ5M2YyZjg0MGZmMTljMGNkYTM1NzkwYS4u
ZjUxMWEyZTcyYWJlYWQzYTkyOGZiNDU0ZWViZGRmYTgxZGRkMTU4MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5l
eHAuaW4KQEAgLTk4Miw2ICs5ODIsNyBAQCBfX1pON1dlYkNvcmU4U2V0dGluZ3MyNXNldFVzZXJT
dHlsZVNoZWV0TG9jYXRpb25FUktOU180S1VSTEUKIF9fWk43V2ViQ29yZThTZXR0aW5nczI2ZGVm
YXVsdE1pbkRPTVRpbWVySW50ZXJ2YWxFdgogX19aTjdXZWJDb3JlOFNldHRpbmdzMjdzZXRKYXZh
RW5hYmxlZEZvckxvY2FsRmlsZXNFYgogX19aTjdXZWJDb3JlOFNldHRpbmdzMjdzZXRMb2Fkc0lt
YWdlc0F1dG9tYXRpY2FsbHlFYgorX19aTjdXZWJDb3JlOFNldHRpbmdzMjdzZXRTbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWRFYgogX19aTjdXZWJDb3JlOFNldHRpbmdzMjhzZXRET01UaW1lckFsaWdu
bWVudEludGVydmFsRWQKIF9fWk43V2ViQ29yZThTZXR0aW5nczI5c2V0QXV0aG9yQW5kVXNlclN0
eWxlc0VuYWJsZWRFYgogX19aTjdXZWJDb3JlOFNldHRpbmdzMjlzZXREZWZhdWx0TWluRE9NVGlt
ZXJJbnRlcnZhbEVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCmluZGV4IDdmZjdhOTYwNWI4NmMz
ZDliZGNlYTA1OGM0NjIwMTA0NGY5OTQ3MWYuLjRiNzQxY2Y4NDdmOTdhZjFhZjhhOTE4ZWUzYWJk
MDg5ZjBiMzBjOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCkBAIC0xOTMsNiArMTkzLDcg
QEAgU2V0dGluZ3M6OlNldHRpbmdzKFBhZ2UqIHBhZ2UpCiAgICAgLCBtX3Njcm9sbGluZ1BlcmZv
cm1hbmNlTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCiAgICAgLCBtX2FnZ3Jlc3NpdmVUaWxlUmV0ZW50
aW9uRW5hYmxlZChmYWxzZSkKICAgICAsIG1fc2V0SW1hZ2VMb2FkaW5nU2V0dGluZ3NUaW1lcih0
aGlzLCAmU2V0dGluZ3M6OmltYWdlTG9hZGluZ1NldHRpbmdzVGltZXJGaXJlZCkKKyAgICAsIG1f
c21hcnRJbnNlcnREZWxldGVFbmFibGVkKHRydWUpCiB7CiAgICAgLy8gQSBGcmFtZSBtYXkgbm90
IGhhdmUgYmVlbiBjcmVhdGVkIHlldCwgc28gd2UgaW5pdGlhbGl6ZSB0aGUgQXRvbWljU3RyaW5n
CiAgICAgLy8gaGFzaCBiZWZvcmUgdHJ5aW5nIHRvIHVzZSBpdC4KQEAgLTcwNyw0ICs3MDgsOSBA
QCBib29sIFNldHRpbmdzOjpzaG91bGRSZXNwZWN0UHJpb3JpdHlJbkNTU0F0dHJpYnV0ZVNldHRl
cnMoKQogfQogI2VuZGlmCiAKK3ZvaWQgU2V0dGluZ3M6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZChib29sIGVuYWJsZWQpCit7CisgICAgbV9zbWFydEluc2VydERlbGV0ZUVuYWJsZWQgPSBl
bmFibGVkOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgK
aW5kZXggMWFhYTI4NmE5ZTMwMjkyYzE4ZmUxMTllMjhiN2YwMDM3OTJiMmE3My4uMmY1MTQyNzk4
ZTBmZDVhNThiYWQwOWQyYjc0MjdhYjhmOWE5M2FmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9TZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaApA
QCAtMzAzLDYgKzMwMyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgc3RhdGljIGJv
b2wgc2hvdWxkUmVzcGVjdFByaW9yaXR5SW5DU1NBdHRyaWJ1dGVTZXR0ZXJzKCk7CiAjZW5kaWYK
IAorICAgICAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sKTsKKyAgICAg
ICAgYm9vbCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKSB7IHJldHVybiBtX3NtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZDsgfQorCiAgICAgcHJpdmF0ZToKICAgICAgICAgZXhwbGljaXQgU2V0dGlu
Z3MoUGFnZSopOwogCkBAIC00MDAsNiArNDAzLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogI2Vu
ZGlmCiAKICAgICAgICAgc3RhdGljIGRvdWJsZSBnSGlkZGVuUGFnZURPTVRpbWVyQWxpZ25tZW50
SW50ZXJ2YWw7CisKKyAgICAgICAgYm9vbCBtX3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA6IDE7
CiAgICAgfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktp
dDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IGU5MjVkYjM0MWFi
YzA0YWRiMjU1ODAxOTMwNjEwODUyMmZlZTM4N2MuLjI3MGJlN2Y4ZjM3NzNlNmY2MmM4ZjQ2MjQz
N2M3ODRhNTdhNTFiYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdl
Q3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFn
ZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTYwLDcgKzYwLDYgQEAgdm9pZCBXZWJQYWdlQ3Jl
YXRpb25QYXJhbWV0ZXJzOjplbmNvZGUoQ29yZUlQQzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVy
KSBjb25zdAogICAgIGVuY29kZXIgPDwgbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKIAogI2lm
IFBMQVRGT1JNKE1BQykKLSAgICBlbmNvZGVyIDw8IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVk
OwogICAgIGVuY29kZXIuZW5jb2RlRW51bShsYXllckhvc3RpbmdNb2RlKTsKICAgICBlbmNvZGVy
IDw8IGNvbG9yU3BhY2U7CiAjZW5kaWYKQEAgLTEyMCw4ICsxMTksNiBAQCBib29sIFdlYlBhZ2VD
cmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqIGRlY29k
ZXIsIFdlYlBhZwogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICNpZiBQTEFURk9STShNQUMpCi0g
ICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUocGFyYW1ldGVycy5pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXItPmRlY29kZUVu
dW0ocGFyYW1ldGVycy5sYXllckhvc3RpbmdNb2RlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlKHBhcmFtZXRlcnMuY29sb3JTcGFjZSkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIv
U291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA1
ODAzY2QwYzFlNzBhMGI2YjNiM2FhNDI1YmE0OWRhYmI5MmJiYmYzLi44ZjkyZmYyYzRiNTZhZjc0
YjJkZjZkYTY0NmMwYmVjMDcxYjQzZmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTg4LDcgKzg4LDYgQEAgc3RydWN0IFdl
YlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIGJvb2wgbWF5U3RhcnRNZWRpYVdoZW5Jbldp
bmRvdzsKIAogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBib29sIGlzU21hcnRJbnNlcnREZWxldGVF
bmFibGVkOwogICAgIExheWVySG9zdGluZ01vZGUgbGF5ZXJIb3N0aW5nTW9kZTsKICAgICBDb2xv
clNwYWNlRGF0YSBjb2xvclNwYWNlOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dl
YlByZWZlcmVuY2VzU3RvcmUuaAppbmRleCA0MGVmYmY3MTA3ODA1YWNkNWQ0ZGNmNTgwNTY0NjRj
ZDlhYTFlODBlLi5kZWIwYzEwMjkzMTExZmMzYzhkYTQxMGY2ODMyMjYwNzJiOThhZTgzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKQEAgLTEzOSw2ICsx
MzksNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICBtYWNybyhBZ2dyZXNzaXZlVGlsZVJldGVu
dGlvbkVuYWJsZWQsIGFnZ3Jlc3NpdmVUaWxlUmV0ZW50aW9uRW5hYmxlZCwgQm9vbCwgYm9vbCwg
ZmFsc2UpIFwKICAgICBtYWNybyhRVEtpdEVuYWJsZWQsIGlzUVRLaXRFbmFibGVkLCBCb29sLCBi
b29sLCB0cnVlKSBcCiAgICAgbWFjcm8oTG9nc1BhZ2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVu
YWJsZWQsIGxvZ3NQYWdlTWVzc2FnZXNUb1N5c3RlbUNvbnNvbGVFbmFibGVkLCBCb29sLCBib29s
LCBmYWxzZSkgXAorICAgIG1hY3JvKFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCwgc21hcnRJbnNl
cnREZWxldGVFbmFibGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgXAogCiAjZGVmaW5lIEZP
Ul9FQUNIX1dFQktJVF9ET1VCTEVfUFJFRkVSRU5DRShtYWNybykgXApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IGJhOWY5ODAxNjdm
MzY0OWIwNWJiMmYyZTE1YWJiY2JiY2Q2YmZjZWQuLjMxZjUwZTJmNTQxZjIzZWZkNzBkOTFmNGIz
YWQ4OTU2OGQzY2U1MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlcy5jcHAKQEAgLTEwMjMsMyArMTAyMywxMyBAQCBib29sIFdLUHJlZmVyZW5j
ZXNHZXRMb2dzUGFnZU1lc3NhZ2VzVG9TeXN0ZW1Db25zb2xlRW5hYmxlZChXS1ByZWZlcmVuY2Vz
UmVmIHByZQogewogICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5sb2dzUGFnZU1l
c3NhZ2VzVG9TeXN0ZW1Db25zb2xlRW5hYmxlZCgpOwogfQorCit2b2lkIFdLUHJlZmVyZW5jZXNT
ZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1Jl
ZiwgYm9vbCBlbmFibGVkKQoreworICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldFNtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZChlbmFibGVkKTsKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0
U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYp
Cit7CisgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZCgpOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlc1ByaXZhdGUuaAppbmRleCA1ODkyNGMxN2Q5ZTVhMWQxZGFmMGU3YjM3YWFl
YTY2YmU1NDZjYmVlLi5jODgxYmY2OTlmYzhmNGQ4ODM5MzU2ODc0N2M2Y2MyYjYzNGVhNmM2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1By
aXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNl
c1ByaXZhdGUuaApAQCAtMjQ1LDYgKzI0NSwxMCBAQCBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVu
Y2VzR2V0TG9nc1BhZ2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQoV0tQcmVmZXJlbgog
CiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzUmVzZXRUZXN0UnVubmVyT3ZlcnJpZGVzKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOwogCisvLyBEZWZhdWx0cyB0byB0cnVlCitX
S19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGJvb2wgZW5hYmxlZCk7CitXS19FWFBPUlQgYm9v
bCBXS1ByZWZlcmVuY2VzR2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdLUHJlZmVyZW5jZXNS
ZWYgcHJlZmVyZW5jZXMpOworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCAyOTRkNTRhOWMzOGY3ODE3
YzkxZjAyMWM5ZGM5MThhODBjMDgyMTYzLi5kMWY0YjdmYmJkZGMyOWZmYTEzYTk1ZDJhNjI2ZGQy
ODU1ZmQ2NzQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtMzgwNiw3ICszODA2LDYgQEAgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyBXZWJQYWdlUHJv
eHk6OmNyZWF0aW9uUGFyYW1ldGVycygpIGNvbnN0CiAgICAgcGFyYW1ldGVycy5tYXlTdGFydE1l
ZGlhV2hlbkluV2luZG93ID0gbV9tYXlTdGFydE1lZGlhV2hlbkluV2luZG93OwogCiAjaWYgUExB
VEZPUk0oTUFDKQotICAgIHBhcmFtZXRlcnMuaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgPSBt
X2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOwogICAgIHBhcmFtZXRlcnMubGF5ZXJIb3N0aW5n
TW9kZSA9IG1fbGF5ZXJIb3N0aW5nTW9kZTsKICAgICBwYXJhbWV0ZXJzLmNvbG9yU3BhY2UgPSBt
X3BhZ2VDbGllbnQtPmNvbG9yU3BhY2UoKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBh
Z2UuY3BwCmluZGV4IDVmZTRjNjQyNDI2YzVkMWExZTQzOWRhNjMxOWIxZjJmODMxMzE3ODAuLmVh
YTAxOGY1NjBkNzBkNDE3NjgwNzU5MmYzNzA0OGNkM2EzYTNjMTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dL
QnVuZGxlUGFnZS5jcHAKQEAgLTQ4MCwzICs0ODAsOCBAQCB2b2lkIFdLQnVuZGxlUGFnZVNldFZp
ZXdNb2RlKFdLQnVuZGxlUGFnZVJlZiBwYWdlUmVmLCBXS1N0cmluZ1JlZiBtb2RlKQogICAgIGVs
c2UKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CisKK3ZvaWQgV0tCdW5kbGVQYWdl
U2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdLQnVuZGxlUGFnZVJlZiBwYWdlUmVmLCBib29s
IGVuYWJsZWQpCit7CisgICAgdG9JbXBsKHBhZ2VSZWYpLT5zZXRTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQoZW5hYmxlZCk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZVByaXZhdGUuaCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlUHJpdmF0ZS5o
CmluZGV4IGU2OGMwN2I3YTkyOWZiMTQ1YTAxMWYwZTkzY2VhZWRjYmQ5ZTg4ZWIuLjA3Njc1YzAy
ODc3NWIwZDA4MDQ0ZDMwMDgzOGE4MjM4Y2RjMTMyNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlUHJpdmF0ZS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tC
dW5kbGVQYWdlUHJpdmF0ZS5oCkBAIC04MCw2ICs4MCw4IEBAIFdLX0VYUE9SVCB2b2lkKiBXS0Fj
Y2Vzc2liaWxpdHlGb2N1c2VkT2JqZWN0KFdLQnVuZGxlUGFnZVJlZik7CiBXS19FWFBPUlQgV0tB
cnJheVJlZiBXS0J1bmRsZVBhZ2VDb3B5Q29udGV4dE1lbnVJdGVtVGl0bGVzKFdLQnVuZGxlUGFn
ZVJlZik7CiAKIFdLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUGFnZVNldFZpZXdNb2RlKFdLQnVuZGxl
UGFnZVJlZiBwYWdlUmVmLCBXS1N0cmluZ1JlZiBtb2RlKTsKKworV0tfRVhQT1JUIHZvaWQgV0tC
dW5kbGVQYWdlU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdLQnVuZGxlUGFnZVJlZiBwYWdl
UmVmLCBib29sIGVuYWJsZWQpOwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50LmNwcAppbmRleCBjNmNjOWMyNjVhYWQzNzFhY2Q5NDY1NGI4NTM1ZjIxMWE4
NDU0Y2ExLi42MTMwNWM3ZTViYmQzMDMzYzUwZDEwOWYyYzA2YTUzZjQyMzdiZmEyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNs
aWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJFZGl0b3JDbGllbnQuY3BwCkBAIC03OSwxMiArNzksNyBAQCBib29sIFdlYkVkaXRvckNsaWVu
dDo6c2hvdWxkU2hvd0RlbGV0ZUludGVyZmFjZShIVE1MRWxlbWVudCopCiAKIGJvb2wgV2ViRWRp
dG9yQ2xpZW50OjpzbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKQogewotICAgIC8vIEZJWE1FOiBX
aHkgaXNuJ3QgdGhpcyBNYWMgc3BlY2lmaWMgbGlrZSB0b2dnbGVTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQ/Ci0jaWYgUExBVEZPUk0oTUFDKQogICAgIHJldHVybiBtX3BhZ2UtPmlzU21hcnRJbnNl
cnREZWxldGVFbmFibGVkKCk7Ci0jZWxzZQotICAgIHJldHVybiB0cnVlOwotI2VuZGlmCiB9CiAg
CiBib29sIFdlYkVkaXRvckNsaWVudDo6aXNTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVk
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRl
eCAwMDYwMTY3M2EwNjZjMzM4Y2VjMzczYjFlMDEyYTczNDMyMjYxYTQyLi42M2YxODgzYzEwM2Y4
MzM3ZjcxMzI3YTUyNTFlY2JlZTZhMTI2NjhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0yNDMsNyArMjQzLDYgQEAgV2ViUGFnZTo6V2Vi
UGFnZSh1aW50NjRfdCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmIHBh
cmFtZXRlcnMpCiAjaWYgUExBVEZPUk0oTUFDKQogICAgICwgbV9wZGZQbHVnaW5FbmFibGVkKGZh
bHNlKQogICAgICwgbV93aW5kb3dJc1Zpc2libGUoZmFsc2UpCi0gICAgLCBtX2lzU21hcnRJbnNl
cnREZWxldGVFbmFibGVkKHBhcmFtZXRlcnMuaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpCiAg
ICAgLCBtX2xheWVySG9zdGluZ01vZGUocGFyYW1ldGVycy5sYXllckhvc3RpbmdNb2RlKQogICAg
ICwgbV9rZXlib2FyZEV2ZW50QmVpbmdJbnRlcnByZXRlZCgwKQogI2VsaWYgUExBVEZPUk0oR1RL
KQpAQCAtMjQxNCw2ICsyNDEzLDggQEAgdm9pZCBXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyhj
b25zdCBXZWJQcmVmZXJlbmNlc1N0b3JlJiBzdG9yZSkKIAogICAgIGlmIChtX2RyYXdpbmdBcmVh
KQogICAgICAgICBtX2RyYXdpbmdBcmVhLT51cGRhdGVQcmVmZXJlbmNlcyhzdG9yZSk7CisKKyAg
ICBzZXR0aW5ncy0+c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1
ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6c21hcnRJbnNlcnREZWxldGVFbmFibGVkS2V5KCkp
KTsKIH0KIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCkBAIC0zNzk0LDQgKzM3OTUsMTQgQEAgdm9p
ZCBXZWJQYWdlOjpzZXRNaW5pbXVtTGF5b3V0V2lkdGgoZG91YmxlIG1pbmltdW1MYXlvdXRXaWR0
aCkKICAgICAgICAgY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCktPnZpZXcoKS0+ZW5hYmxlQXV0b1Np
emVNb2RlKGZhbHNlLCBJbnRTaXplKCksIEludFNpemUoKSk7CiB9CiAKK2Jvb2wgV2ViUGFnZTo6
aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKQoreworICAgIHJldHVybiBtX3BhZ2UtPnNldHRp
bmdzKCktPnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpOworfQorCit2b2lkIFdlYlBhZ2U6OnNl
dFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgbV9wYWdlLT5z
ZXR0aW5ncygpLT5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZW5hYmxlZCk7Cit9CisKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmgKaW5kZXggNmVmN2MzYjIwZTQ1OGVkMmExYTgzMzQ0NDMwYTgxZjUyNTk3NmY1Zi4u
NjA1ZjE5NjA4MDNjZDYwMzkyOTU1MzAyZGQ1MTdjNzZiYWU0MjQxYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC00ODcsMTAgKzQ4NywxMSBAQCBw
dWJsaWM6CiAgICAgYm9vbCBpc1NwZWFraW5nKCk7CiAgICAgdm9pZCBzcGVhayhjb25zdCBTdHJp
bmcmKTsKICAgICB2b2lkIHN0b3BTcGVha2luZygpOwotCi0gICAgYm9vbCBpc1NtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQ7IH0KICNlbmRpZgogCisgICAgYm9vbCBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpOwor
ICAgIHZvaWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wpOworCiAjaWYgRU5BQkxF
KFdFQl9JTlRFTlRTKQogICAgIHZvaWQgZGVsaXZlckNvcmVJbnRlbnRUb0ZyYW1lKHVpbnQ2NF90
IGZyYW1lSUQsIFdlYkNvcmU6OkludGVudCopOwogI2VuZGlmCkBAIC03ODMsMTAgKzc4NCw2IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBjYXBpdGFsaXplV29yZCgpOwogI2VuZGlmCiAKLSNpZiBQTEFU
Rk9STShNQUMpCi0gICAgdm9pZCBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCBpc1Nt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCkgeyBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkID0g
aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7IH0KLSNlbmRpZgotCiAjaWYgRU5BQkxFKENPTlRF
WFRfTUVOVVMpCiAgICAgdm9pZCBkaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRNZW51KGNv
bnN0IFdlYkNvbnRleHRNZW51SXRlbURhdGEmKTsKICNlbmRpZgpAQCAtODM3LDkgKzgzNCw2IEBA
IHByaXZhdGU6CiAgICAgLy8gV2hldGhlciB0aGUgY29udGFpbmluZyB3aW5kb3cgaXMgdmlzaWJs
ZSBvciBub3QuCiAgICAgYm9vbCBtX3dpbmRvd0lzVmlzaWJsZTsKIAotICAgIC8vIFdoZXRoZXIg
c21hcnQgaW5zZXJ0L2RlbGV0ZSBpcyBlbmFibGVkIG9yIG5vdC4KLSAgICBib29sIG1faXNTbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQ7Ci0KICAgICAvLyBUaGUgZnJhbWUgb2YgdGhlIGNvbnRhaW5p
bmcgd2luZG93IGluIHNjcmVlbiBjb29yZGluYXRlcy4KICAgICBXZWJDb3JlOjpJbnRSZWN0IG1f
d2luZG93RnJhbWVJblNjcmVlbkNvb3JkaW5hdGVzOwogCmRpZmYgLS1naXQgYS9Ub29scy9DaGFu
Z2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggY2ZjYWNmZGFlNDMxNDhmMzI0MGNhM2U1YWFk
Yjg2ODM2ZWQ3ZWU1Mi4uYzA2ZmM0YWEyZTg5YzJmMDM4NjU5MTQ2MjI0MzBjNDc5NTExZTAwMiAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE4IEBACisyMDEzLTAxLTI4ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtXVFJdW1dLMl0gSW1wbGVtZW50IHRlc3RSdW5uZXIuc2V0U21h
cnRJbnNlcnREZWxldGVFbmFibGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3Mv
VGVzdFJ1bm5lci5pZGw6IEFkZCBuZXcKKyAgICAgICAgbWV0aG9kLgorICAgICAgICAqIFdlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHA6CisgICAgICAgIChXVFI6
OlRlc3RSdW5uZXI6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6IEltcGxlbWVudCBtZXRo
b2QgdXNpbmcKKyAgICAgICAgV0tCdW5kbGVQYWdlU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVk
LgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5o
OgorICAgICAgICAoVGVzdFJ1bm5lcik6IEFkZCBuZXcgbWV0aG9kIGhlYWRlci4KKwogMjAxMy0w
MS0yNyAgRGF2aWQgRmFybGVyICA8ZGZhcmxlckBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVT
U0lPTiAocjE0MDkxMik6IEJyb2tlIHNwZWNpZnlpbmcgbm9uLXRyaXZpYWwgQVJDSFMgdmFsdWUg
dG8gbWFrZSAvIGJ1aWxkLXdlYmtpdApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbCBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5lci5pZGwKaW5kZXggZjI3
MTNjNzgyY2M5MmY0MWVjYWY3Y2ExZmZiZjc1MTU5ZWQ1NzMzOC4uMWRjZTU5MmM4MTExYmRlMzA2
ZDVjOWVhZTkzNDYxZGUxM2Q2N2EwZCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbAorKysgYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RSdW5uZXIuaWRsCkBAIC03
Myw2ICs3Myw3IEBAIGludGVyZmFjZSBUZXN0UnVubmVyIHsKICAgICB2b2lkIHNldFNlcmlhbGl6
ZUhUVFBMb2FkcygpOwogICAgIHZvaWQgZGlzcGF0Y2hQZW5kaW5nTG9hZFJlcXVlc3RzKCk7CiAg
ICAgdm9pZCBzZXRDYWNoZU1vZGVsKGluIGludCBtb2RlbCk7CisgICAgdm9pZCBzZXRTbWFydElu
c2VydERlbGV0ZUVuYWJsZWQoaW4gYm9vbGVhbiBlbmFibGVkKTsKIAogICAgIC8vIFNwZWNpYWwg
RE9NIGZ1bmN0aW9ucy4KICAgICB2b2lkIGNsZWFyQmFja0ZvcndhcmRMaXN0KCk7CmRpZmYgLS1n
aXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3Bw
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcApp
bmRleCBiMjhkNjU3OTU0Njg5YmM5MjA2NjNkNzkxYTJkMzY1ZTVkNzFhZTk1Li5hNmUzZWQwMmFk
YWFjODVjNmMyNmFiOTUxZDhiOGUzOGNlZDU5MGU1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRU
ZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKQEAgLTkyMyw0ICs5MjMs
OSBAQCB2b2lkIFRlc3RSdW5uZXI6OnNldEF1dGhlbnRpY2F0aW9uUGFzc3dvcmQoSlNTdHJpbmdS
ZWYgcGFzc3dvcmQpCiAgICAgV0tCdW5kbGVQb3N0TWVzc2FnZShJbmplY3RlZEJ1bmRsZTo6c2hh
cmVkKCkuYnVuZGxlKCksIG1lc3NhZ2VOYW1lLmdldCgpLCBtZXNzYWdlQm9keS5nZXQoKSk7CiB9
CiAKK3ZvaWQgVGVzdFJ1bm5lcjo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wgZW5h
YmxlZCkKK3sKKyAgICBXS0J1bmRsZVBhZ2VTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoSW5q
ZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLnBhZ2UoKS0+cGFnZSgpLCBlbmFibGVkKTsKK30KKwogfSAv
LyBuYW1lc3BhY2UgV1RSCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL1Rlc3RSdW5uZXIuaCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvVGVzdFJ1bm5lci5oCmluZGV4IDU5YWQxMmVlMTRiZDcxZGJiMGVjMWYwMDYxYTQ5MWQ2
NDBhNjVmYzYuLjc1MzQ2ZTM2ZGVhNzZhNmM0Y2ZhMjYzNmU3MjFhMDdiMTQ3Y2NiZWEgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5o
CisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5o
CkBAIC0xMTcsNiArMTE3LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0U2VyaWFsaXplSFRUUExv
YWRzKCk7CiAgICAgdm9pZCBkaXNwYXRjaFBlbmRpbmdMb2FkUmVxdWVzdHMoKTsKICAgICB2b2lk
IHNldENhY2hlTW9kZWwoaW50KTsKKyAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZChib29sKTsKIAogICAgIC8vIFNwZWNpYWwgRE9NIGZ1bmN0aW9ucy4KICAgICBKU1ZhbHVlUmVm
IGNvbXB1dGVkU3R5bGVJbmNsdWRpbmdWaXNpdGVkSW5mbyhKU1ZhbHVlUmVmIGVsZW1lbnQpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IGZjYmU3MzgxYWFhZjU0ZDVmYzg3NWQ4Yjc4ODI4YTVjMmIwZmEyYzkuLjY4ZDE0ODk3
ZmEwMDZkZjA4MWUzNzk1OWUxMDUxNDJkNDFkMjk4OTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAor
MjAxMy0wMS0yOCAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKwor
ICAgICAgICBbV1RSXVtXSzJdIEltcGxlbWVudCB0ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTA3ODQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBwbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9uczogVW5mbGFnCisgICAgICAgIGVkaXRp
bmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sLgorCiAyMDEzLTAxLTI1ICBZ
dXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IHJlbW92ZSB1bnVzZWQgaXNFbGVtZW50IGFuZCBzaW1pbGFyIG1ldGhvZHMgZnJvbSBI
ZWFwUHJvZmlsZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhw
ZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggNTE0ZjRmMTFhNTA5ZmM3Y2RlZjVjOGQwNzA4MjQ3Nzk2OGRlMDI2ZC4uMGU4ZTNlYThiN2Ni
ZTJlYTFlM2Q0Y2YwNWFkMGQ0MjZkN2ViOTZlZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2sy
L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM4NSw5ICszODUsNiBAQCBodHRwL3Rlc3RzL21pc2MvbGlu
ay1yZWwtaWNvbi1iZWZvcmVsb2FkLmh0bWwKICMgV2ViS2l0VGVzdFJ1bm5lciBzaG91bGQgZHVt
cCB0ZXh0L3BsYWluIGNvbnRlbnQgYXMgdGV4dAogaHR0cC90ZXN0cy9pbmNyZW1lbnRhbC9zbG93
LXV0ZjgtdGV4dC5wbAogCi0jIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgbGF5b3V0VGVzdENvbnRy
b2xsZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCi1lZGl0aW5nL2RlbGV0aW5nL3NtYXJ0
LWVkaXRpbmctZGlzYWJsZWQuaHRtbAotCiAjIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgcGxhaW5U
ZXh0LnBsYWluVGV4dAogZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1s
CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185048</attachid>
            <date>2013-01-28 13:25:54 -0800</date>
            <delta_ts>2013-02-05 01:00:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107840-20130128222240.patch</filename>
            <type>text/plain</type>
            <size>16815</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwOTc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjFjNjliYzU2YzJhMzYw
ODFiZGI1Zjk5MmM0NDNiMjFmM2I1MWM2NS4uYzViMWQzZjJkNmYzOTM4ZjExY2MzNmE5MDBmMTg3
M2NhNGVmOTY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEzLTAxLTI4ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIEFkZCBzbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQgc2V0dGluZyB0byBXZWJDb3JlOjpQYWdlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGVkaXRpbmcv
ZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sLgorCisgICAgICAgICogcGFnZS9T
ZXR0aW5ncy5pbjogQWRkIG5ldyBzZXR0aW5nIHdpdGggdHJ1ZSBhcyBpbml0aWFsIHZhbHVlLgor
CiAyMDEzLTAxLTI4ICBKYW1lcyBDcmFpZyAgPGphbWVzQGNvb2tpZWNyb29rLmNvbT4KIAogICAg
ICAgICBIVE1MNSBwcm9tb3RlcyBETCBmcm9tIHNwZWNpZmljICdkZWZpbml0aW9uIGxpc3QnIHRv
IHN1cGVyc2V0ICdkZXNjcmlwdGlvbiBsaXN0JzsgYWNjZXNzaWJpbGl0eSBzdHJpbmdzIGFuZCBh
Y2Nlc3NvcnMgc2hvdWxkIGJlIHVwZGF0ZWQgdG8gbWF0Y2guCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNjI5MzM2
MjNjODVkZDNhNzZkNWIyMGE4N2YwNzc5YTVhMGFmYzMwYS4uZGEzYzMzYmNmOGE2ZWIxNmRmMWQ2
MWUyNTRiYmQ2N2VkYzdmOTU2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAx
LTI4ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAg
IEFkZCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQgc2V0dGluZyB0byBXZWJDb3JlOjpQYWdlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9X
ZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgUmVtb3ZlIGNvZGUgcmVsYXRlZCB0byBp
c1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAgICAgKiBTaGFyZWQvV2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAoV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyk6IFJl
bW92ZSBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAgICAgKiBTaGFyZWQvV2ViUHJl
ZmVyZW5jZXNTdG9yZS5oOgorICAgICAgICAoV2ViS2l0KTogQWRkIG1hY3JvIGZvciBzbWFydElu
c2VydERlbGV0ZUVuYWJsZWQgc2V0dGluZy4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0U21hcnRJbnNlcnREZWxl
dGVFbmFibGVkKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQpOiBJbXBsZW1lbnQgbWV0aG9kcyB1c2luZyB0aGUKKyAgICAgICAgbmV3IHNldHRpbmcu
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmg6IEFkZCBu
ZXcgbWV0aG9kcyBoZWFkZXJzLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmNyZWF0aW9uUGFyYW1ldGVycyk6IFJl
bW92ZSB1c2FnZSBvZgorICAgICAgICBwYXJhbWV0ZXJzLmlzU21hcnRJbnNlcnREZWxldGVFbmFi
bGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xpZW50OjpzbWFydEluc2VydERlbGV0
ZUVuYWJsZWQpOiBFbmFibGUgbWV0aG9kIGZvcgorICAgICAgICBhbGwgcGxhdGZvcm1zLgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6V2ViUGFnZSk6IFJlbW92ZSBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkCisg
ICAgICAgIGluaXRpYWxpemF0aW9uLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cGRhdGVQ
cmVmZXJlbmNlcyk6IFNldCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQKKyAgICAgICAgc2V0dGlu
Zy4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQp
OiBJbXBsZW1lbnQgbWV0aG9kIHVzaW5nCisgICAgICAgIHNldHRpbmdzLgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbWV0
aG9kIHVzaW5nCisgICAgICAgIHNldHRpbmdzLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmg6CisgICAgICAgIChXZWJQYWdlKTogRW5hYmxlIG1ldGhvZHMgZGVhbGluZyB3
aXRoIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCBmb3IgYWxsCisgICAgICAgIHBsYXRmb3JtcyBh
bmQgcmVtb3ZlIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgYXMgaXQgd2lsbCBiZSBhCisg
ICAgICAgIHNldHRpbmcuCisKIDIwMTMtMDEtMjggIFJlbmF0YSBIb2RvdmFuICA8cmVuaUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFtRdF1bV2luXVtXSzJdIEJ1aWxkIGZpeCBhZnRlciByMTQwOTU3
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbiBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4KaW5kZXggZDI5MDRkMGY4MmY5ODhlYWMzNmQ0MjE5Y2Ix
ZTdmOGFhNWRiMDYwNi4uMjk1ZTljNmQ4NjdiNWU2N2QwZjNjZmMxMTc3ZmM0NzRjZTMzZmFiYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmluCkBAIC0xNzgsMyArMTc4LDUgQEAgdG91Y2hEcmFnRHJv
cEVuYWJsZWQgaW5pdGlhbD1mYWxzZQogdW5pZmllZFRleHRDaGVja2VyRW5hYmxlZCBpbml0aWFs
PWRlZmF1bHRVbmlmaWVkVGV4dENoZWNrZXJFbmFibGVkCiAKIGxvZ3NQYWdlTWVzc2FnZXNUb1N5
c3RlbUNvbnNvbGVFbmFibGVkIGluaXRpYWw9ZmFsc2UKKworc21hcnRJbnNlcnREZWxldGVFbmFi
bGVkIGluaXRpYWw9dHJ1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBh
Z2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VD
cmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IGU5MjVkYjM0MWFiYzA0YWRiMjU1ODAxOTMwNjEw
ODUyMmZlZTM4N2MuLjI3MGJlN2Y4ZjM3NzNlNmY2MmM4ZjQ2MjQzN2M3ODRhNTdhNTFiYzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVy
cy5jcHAKQEAgLTYwLDcgKzYwLDYgQEAgdm9pZCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjpl
bmNvZGUoQ29yZUlQQzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29k
ZXIgPDwgbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKIAogI2lmIFBMQVRGT1JNKE1BQykKLSAg
ICBlbmNvZGVyIDw8IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOwogICAgIGVuY29kZXIuZW5j
b2RlRW51bShsYXllckhvc3RpbmdNb2RlKTsKICAgICBlbmNvZGVyIDw8IGNvbG9yU3BhY2U7CiAj
ZW5kaWYKQEAgLTEyMCw4ICsxMTksNiBAQCBib29sIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6
OmRlY29kZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqIGRlY29kZXIsIFdlYlBhZwogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgaWYgKCFkZWNvZGVyLT5k
ZWNvZGUocGFyYW1ldGVycy5pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCkpCi0gICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXItPmRlY29kZUVudW0ocGFyYW1ldGVycy5sYXll
ckhvc3RpbmdNb2RlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rlci0+
ZGVjb2RlKHBhcmFtZXRlcnMuY29sb3JTcGFjZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA1ODAzY2QwYzFlNzBhMGI2YjNi
M2FhNDI1YmE0OWRhYmI5MmJiYmYzLi44ZjkyZmYyYzRiNTZhZjc0YjJkZjZkYTY0NmMwYmVjMDcx
YjQzZmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25Q
YXJhbWV0ZXJzLmgKQEAgLTg4LDcgKzg4LDYgQEAgc3RydWN0IFdlYlBhZ2VDcmVhdGlvblBhcmFt
ZXRlcnMgewogICAgIGJvb2wgbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKIAogI2lmIFBMQVRG
T1JNKE1BQykKLSAgICBib29sIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOwogICAgIExheWVy
SG9zdGluZ01vZGUgbGF5ZXJIb3N0aW5nTW9kZTsKICAgICBDb2xvclNwYWNlRGF0YSBjb2xvclNw
YWNlOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVy
ZW5jZXNTdG9yZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUu
aAppbmRleCA0MGVmYmY3MTA3ODA1YWNkNWQ0ZGNmNTgwNTY0NjRjZDlhYTFlODBlLi5kZWIwYzEw
MjkzMTExZmMzYzhkYTQxMGY2ODMyMjYwNzJiOThhZTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKQEAgLTEzOSw2ICsxMzksNyBAQCBuYW1lc3BhY2Ug
V2ViS2l0IHsKICAgICBtYWNybyhBZ2dyZXNzaXZlVGlsZVJldGVudGlvbkVuYWJsZWQsIGFnZ3Jl
c3NpdmVUaWxlUmV0ZW50aW9uRW5hYmxlZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNy
byhRVEtpdEVuYWJsZWQsIGlzUVRLaXRFbmFibGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAg
bWFjcm8oTG9nc1BhZ2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQsIGxvZ3NQYWdlTWVz
c2FnZXNUb1N5c3RlbUNvbnNvbGVFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAorICAgIG1h
Y3JvKFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCwgc21hcnRJbnNlcnREZWxldGVFbmFibGVkLCBC
b29sLCBib29sLCB0cnVlKSBcCiAgICAgXAogCiAjZGVmaW5lIEZPUl9FQUNIX1dFQktJVF9ET1VC
TEVfUFJFRkVSRU5DRShtYWNybykgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IGJhOWY5ODAxNjdmMzY0OWIwNWJiMmYyZTE1YWJi
Y2JiY2Q2YmZjZWQuLjMxZjUwZTJmNTQxZjIzZWZkNzBkOTFmNGIzYWQ4OTU2OGQzY2U1MzAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAK
QEAgLTEwMjMsMyArMTAyMywxMyBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRMb2dzUGFnZU1lc3Nh
Z2VzVG9TeXN0ZW1Db25zb2xlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZQogewogICAgIHJl
dHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5sb2dzUGFnZU1lc3NhZ2VzVG9TeXN0ZW1Db25z
b2xlRW5hYmxlZCgpOwogfQorCit2b2lkIFdLUHJlZmVyZW5jZXNTZXRTbWFydEluc2VydERlbGV0
ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBlbmFibGVkKQor
eworICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZChlbmFibGVkKTsKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0U21hcnRJbnNlcnREZWxldGVF
bmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCit7CisgICAgcmV0dXJuIHRv
SW1wbChwcmVmZXJlbmNlc1JlZiktPnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpOworfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2
YXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZh
dGUuaAppbmRleCA1ODkyNGMxN2Q5ZTVhMWQxZGFmMGU3YjM3YWFlYTY2YmU1NDZjYmVlLi5jODgx
YmY2OTlmYzhmNGQ4ODM5MzU2ODc0N2M2Y2MyYjYzNGVhNmM2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaApAQCAtMjQ1
LDYgKzI0NSwxMCBAQCBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0TG9nc1BhZ2VNZXNz
YWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQoV0tQcmVmZXJlbgogCiBXS19FWFBPUlQgdm9pZCBX
S1ByZWZlcmVuY2VzUmVzZXRUZXN0UnVubmVyT3ZlcnJpZGVzKFdLUHJlZmVyZW5jZXNSZWYgcHJl
ZmVyZW5jZXNSZWYpOwogCisvLyBEZWZhdWx0cyB0byB0cnVlCitXS19FWFBPUlQgdm9pZCBXS1By
ZWZlcmVuY2VzU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJl
ZmVyZW5jZXMsIGJvb2wgZW5hYmxlZCk7CitXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0
U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMpOwor
CiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViUGFnZVByb3h5LmNwcAppbmRleCAyOTRkNTRhOWMzOGY3ODE3YzkxZjAyMWM5ZGM5MThhODBj
MDgyMTYzLi5kMWY0YjdmYmJkZGMyOWZmYTEzYTk1ZDJhNjI2ZGQyODU1ZmQ2NzQzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtMzgwNiw3ICszODA2LDYg
QEAgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyBXZWJQYWdlUHJveHk6OmNyZWF0aW9uUGFyYW1l
dGVycygpIGNvbnN0CiAgICAgcGFyYW1ldGVycy5tYXlTdGFydE1lZGlhV2hlbkluV2luZG93ID0g
bV9tYXlTdGFydE1lZGlhV2hlbkluV2luZG93OwogCiAjaWYgUExBVEZPUk0oTUFDKQotICAgIHBh
cmFtZXRlcnMuaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgPSBtX2lzU21hcnRJbnNlcnREZWxl
dGVFbmFibGVkOwogICAgIHBhcmFtZXRlcnMubGF5ZXJIb3N0aW5nTW9kZSA9IG1fbGF5ZXJIb3N0
aW5nTW9kZTsKICAgICBwYXJhbWV0ZXJzLmNvbG9yU3BhY2UgPSBtX3BhZ2VDbGllbnQtPmNvbG9y
U3BhY2UoKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCmluZGV4IGM2Y2M5YzI2NWFh
ZDM3MWFjZDk0NjU0Yjg1MzVmMjExYTg0NTRjYTEuLjYxMzA1YzdlNWJiZDMwMzNjNTBkMTA5ZjJj
MDZhNTNmNDIzN2JmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKQEAgLTc5LDEyICs3OSw3
IEBAIGJvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRTaG93RGVsZXRlSW50ZXJmYWNlKEhUTUxF
bGVtZW50KikKIAogYm9vbCBXZWJFZGl0b3JDbGllbnQ6OnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZCgpCiB7Ci0gICAgLy8gRklYTUU6IFdoeSBpc24ndCB0aGlzIE1hYyBzcGVjaWZpYyBsaWtlIHRv
Z2dsZVNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZD8KLSNpZiBQTEFURk9STShNQUMpCiAgICAgcmV0
dXJuIG1fcGFnZS0+aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKTsKLSNlbHNlCi0gICAgcmV0
dXJuIHRydWU7Ci0jZW5kaWYKIH0KICAKIGJvb2wgV2ViRWRpdG9yQ2xpZW50Ojppc1NlbGVjdFRy
YWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDAwNjAxNjczYTA2NmMzMzhjZWMzNzNiMWUwMTJhNzM0
MzIyNjFhNDIuLmQwOGM2N2VjZTQ0YWVmMWU1YjViZWQ4NTgwM2YwNTIzMzM1ZGYxMGEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTI0Myw3
ICsyNDMsNiBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFn
ZUNyZWF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKICNpZiBQTEFURk9STShNQUMpCiAgICAg
LCBtX3BkZlBsdWdpbkVuYWJsZWQoZmFsc2UpCiAgICAgLCBtX3dpbmRvd0lzVmlzaWJsZShmYWxz
ZSkKLSAgICAsIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQocGFyYW1ldGVycy5pc1NtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZCkKICAgICAsIG1fbGF5ZXJIb3N0aW5nTW9kZShwYXJhbWV0ZXJz
LmxheWVySG9zdGluZ01vZGUpCiAgICAgLCBtX2tleWJvYXJkRXZlbnRCZWluZ0ludGVycHJldGVk
KDApCiAjZWxpZiBQTEFURk9STShHVEspCkBAIC0yNDEwLDYgKzI0MDksOCBAQCB2b2lkIFdlYlBh
Z2U6OnVwZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlKQog
CiAgICAgc2V0dGluZ3MtPnNldExvZ3NQYWdlTWVzc2FnZXNUb1N5c3RlbUNvbnNvbGVFbmFibGVk
KHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6bG9nc1BhZ2VNZXNz
YWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWRLZXkoKSkpOwogCisgICAgc2V0dGluZ3MtPnNldFNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVy
ZW5jZXNLZXk6OnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZEtleSgpKSk7CisKICAgICBwbGF0Zm9y
bVByZWZlcmVuY2VzRGlkQ2hhbmdlKHN0b3JlKTsKIAogICAgIGlmIChtX2RyYXdpbmdBcmVhKQpA
QCAtMzc5NCw0ICszNzk1LDE0IEBAIHZvaWQgV2ViUGFnZTo6c2V0TWluaW11bUxheW91dFdpZHRo
KGRvdWJsZSBtaW5pbXVtTGF5b3V0V2lkdGgpCiAgICAgICAgIGNvcmVQYWdlKCktPm1haW5GcmFt
ZSgpLT52aWV3KCktPmVuYWJsZUF1dG9TaXplTW9kZShmYWxzZSwgSW50U2l6ZSgpLCBJbnRTaXpl
KCkpOwogfQogCitib29sIFdlYlBhZ2U6OmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkKK3sK
KyAgICByZXR1cm4gbV9wYWdlLT5zZXR0aW5ncygpLT5zbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
KTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCBl
bmFibGVkKQoreworICAgIG1fcGFnZS0+c2V0dGluZ3MoKS0+c2V0U21hcnRJbnNlcnREZWxldGVF
bmFibGVkKGVuYWJsZWQpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCmluZGV4IDZlZjdjM2IyMGU0NThlZDJh
MWE4MzM0NDQzMGE4MWY1MjU5NzZmNWYuLmJkZTFmNDM3ODEyYTMzZGQyNWY4NTE2N2VmMmZhNGQ3
N2U5MjRmNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
aApAQCAtNDg4LDkgKzQ4OCwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzcGVhayhjb25zdCBTdHJp
bmcmKTsKICAgICB2b2lkIHN0b3BTcGVha2luZygpOwogCi0gICAgYm9vbCBpc1NtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQ7IH0KICNlbmRpZgogCisgICAgYm9vbCBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpOwor
ICAgIHZvaWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wpOworCiAjaWYgRU5BQkxF
KFdFQl9JTlRFTlRTKQogICAgIHZvaWQgZGVsaXZlckNvcmVJbnRlbnRUb0ZyYW1lKHVpbnQ2NF90
IGZyYW1lSUQsIFdlYkNvcmU6OkludGVudCopOwogI2VuZGlmCkBAIC03ODMsMTAgKzc4NSw2IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBjYXBpdGFsaXplV29yZCgpOwogI2VuZGlmCiAKLSNpZiBQTEFU
Rk9STShNQUMpCi0gICAgdm9pZCBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCBpc1Nt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCkgeyBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkID0g
aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7IH0KLSNlbmRpZgotCiAjaWYgRU5BQkxFKENPTlRF
WFRfTUVOVVMpCiAgICAgdm9pZCBkaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRNZW51KGNv
bnN0IFdlYkNvbnRleHRNZW51SXRlbURhdGEmKTsKICNlbmRpZgpAQCAtODM3LDkgKzgzNSw2IEBA
IHByaXZhdGU6CiAgICAgLy8gV2hldGhlciB0aGUgY29udGFpbmluZyB3aW5kb3cgaXMgdmlzaWJs
ZSBvciBub3QuCiAgICAgYm9vbCBtX3dpbmRvd0lzVmlzaWJsZTsKIAotICAgIC8vIFdoZXRoZXIg
c21hcnQgaW5zZXJ0L2RlbGV0ZSBpcyBlbmFibGVkIG9yIG5vdC4KLSAgICBib29sIG1faXNTbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQ7Ci0KICAgICAvLyBUaGUgZnJhbWUgb2YgdGhlIGNvbnRhaW5p
bmcgd2luZG93IGluIHNjcmVlbiBjb29yZGluYXRlcy4KICAgICBXZWJDb3JlOjpJbnRSZWN0IG1f
d2luZG93RnJhbWVJblNjcmVlbkNvb3JkaW5hdGVzOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTQ1ZjJiNWVlMzU4ZWNj
Njg0NWRjZjBkOWFiOGFmMDk2MDRiODZiMy4uNTlhYzZmMTliMzJhNjI4NjMzNTM1MjgxOTE2ZjVh
YjM4MWMzMTAyOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTAxLTI4ICBNYW51ZWwgUmVn
byBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIEFkZCBzbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWQgc2V0dGluZyB0byBXZWJDb3JlOjpQYWdlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZXBsYWNlIHRlc3RSdW5uZXIuc2V0U21h
cnRJbnNlcnREZWxldGVFbmFibGVkIGJ5CisgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRT
bWFydEluc2VydERlbGV0ZUVuYWJsZWQgaW4gdGVzdHMuCisKKyAgICAgICAgKiBlZGl0aW5nL2Rl
bGV0aW5nL3NtYXJ0LWVkaXRpbmctZGlzYWJsZWQuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL3Nl
bGVjdGlvbi9kb3VibGVjbGljay1iZXNpZGUtY3Itc3Bhbi5odG1sOgorICAgICAgICAqIGVkaXRp
bmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtY3Jhc2guaHRtbDoKKyAgICAgICAg
KiBlZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1s
OgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UuaHRt
bDoKKyAgICAgICAgKiBwbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9uczogVW5mbGFnCisgICAg
ICAgIGVkaXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sIGFzIGl0IHBh
c3NlcyBub3cuCisKIDIwMTMtMDEtMjggIEphbWVzIENyYWlnICA8amFtZXNAY29va2llY3Jvb2su
Y29tPgogCiAgICAgICAgIEhUTUw1IHByb21vdGVzIERMIGZyb20gc3BlY2lmaWMgJ2RlZmluaXRp
b24gbGlzdCcgdG8gc3VwZXJzZXQgJ2Rlc2NyaXB0aW9uIGxpc3QnOyBhY2Nlc3NpYmlsaXR5IHN0
cmluZ3MgYW5kIGFjY2Vzc29ycyBzaG91bGQgYmUgdXBkYXRlZCB0byBtYXRjaC4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2VkaXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVk
Lmh0bWwKaW5kZXggZGRlYjgxYjJiNzg0Y2U5NWViMzFjMDdhNWY1N2NkZmJjODdiM2M2ZC4uN2Vi
MzBkMjIxMWQwYzBkODE5YmVmMmY1ZTczNjg0ODE5ODFkZWQ2OSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwK
QEAgLTQsNyArNCw3IEBACiAKIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgIHRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOwotICAgIHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFi
bGVkKGZhbHNlKTsKKyAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0U21hcnRJbnNlcnREZWxldGVF
bmFibGVkKGZhbHNlKTsKIH0KIAogZnVuY3Rpb24gZWRpdGluZ1Rlc3QoKSB7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1iZXNpZGUtY3Itc3Bh
bi5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stYmVzaWRl
LWNyLXNwYW4uaHRtbAppbmRleCBhNmUxMDg1MGRjY2MzNzY0YjgxMGVlZWIwZjQ4M2YyYWU0YTE2
OThmLi44Yjk4YmE3MmZiZmM3NDBhZmEzNWMyZDA4YWM5NTc3YWI2Yjk5ZTlhIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1iZXNpZGUtY3Itc3Bh
bi5odG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLWJl
c2lkZS1jci1zcGFuLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0PgogaWYgKHdpbmRvdy50
ZXN0UnVubmVyKSB7CiAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICB0ZXN0UnVu
bmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSk7CisgICAgIGludGVybmFscy5z
ZXR0aW5ncy5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOwogICAgICB0ZXN0UnVu
bmVyLnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQodHJ1ZSk7CiB9CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3Bh
Y2UtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNr
LXdoaXRlc3BhY2UtY3Jhc2guaHRtbAppbmRleCA4ZDU2NDg5ZjUxNzM0ZWU4MzExOTdkNmFiYWI1
M2QyMzA4NWFlNzM2Li40MGUyNDEzODIxZThlODg0MDc5NzhhYTgzNzY5Mzc3Yzg2ODZhZjhmIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0
ZXNwYWNlLWNyYXNoLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZG91
YmxlY2xpY2std2hpdGVzcGFjZS1jcmFzaC5odG1sCkBAIC0zLDcgKzMsNyBAQAogPHNjcmlwdD4K
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
LSAgICAgdGVzdFJ1bm5lci5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOworICAg
ICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGZhbHNlKTsK
ICAgICAgdGVzdFJ1bm5lci5zZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKHRydWUp
OwogfQogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlv
bi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvZWRp
dGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1pbWctY3Jhc2guaHRtbAppbmRl
eCA4MDc0ZjA3OTAzNWU1MzY2ZjliNjI4YmJkYWUyZjcwNWI1ZmE3YTJlLi5mMjgwYTI2YTc2OWE5
NWE3OWRkYTZkNDQ2NzE2NGRmZDQ0NjM3NTA0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0
aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1sCisrKyBi
L0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtaW1n
LWNyYXNoLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0PgogaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CiAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICB0ZXN0UnVubmVyLnNl
dFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSk7CisgICAgIGludGVybmFscy5zZXR0aW5n
cy5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOwogICAgICB0ZXN0UnVubmVyLnNl
dFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQodHJ1ZSk7CiAgICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxl
Y3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9z
ZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sCmluZGV4IDFhYTM2MWY4ODIxNDU4
OTQxOGIxM2E0NTIxMTY3NTJmMjY4NGFjNzMuLjg1MzBmYmM1MzFhNDUzYTZhZjVmYmYzOWQ1ZjZm
MWVhYWY5OGI3ZGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2Rv
dWJsZWNsaWNrLXdoaXRlc3BhY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0
PgogaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OwotICAgICB0ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSk7Cisg
ICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2Up
OwogICAgICB0ZXN0UnVubmVyLnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQodHJ1
ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0
YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXgg
NTE0ZjRmMTFhNTA5ZmM3Y2RlZjVjOGQwNzA4MjQ3Nzk2OGRlMDI2ZC4uMGU4ZTNlYThiN2NiZTJl
YTFlM2Q0Y2YwNWFkMGQ0MjZkN2ViOTZlZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rl
c3RFeHBlY3RhdGlvbnMKQEAgLTM4NSw5ICszODUsNiBAQCBodHRwL3Rlc3RzL21pc2MvbGluay1y
ZWwtaWNvbi1iZWZvcmVsb2FkLmh0bWwKICMgV2ViS2l0VGVzdFJ1bm5lciBzaG91bGQgZHVtcCB0
ZXh0L3BsYWluIGNvbnRlbnQgYXMgdGV4dAogaHR0cC90ZXN0cy9pbmNyZW1lbnRhbC9zbG93LXV0
ZjgtdGV4dC5wbAogCi0jIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCi1lZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWVk
aXRpbmctZGlzYWJsZWQuaHRtbAotCiAjIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgcGxhaW5UZXh0
LnBsYWluVGV4dAogZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186570</attachid>
            <date>2013-02-05 01:01:04 -0800</date>
            <delta_ts>2013-02-06 01:15:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107840-20130205095737.patch</filename>
            <type>text/plain</type>
            <size>17220</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNzQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWJlZDQ4NmFmZTlmYjMz
YmQwMjRiMzgxMDNjMGJhNTdhZmVmOTZhNi4uNjI3NDg4NjUwNDliZGQ3ODNlNDkwN2Y3NjM3MDgx
MjRjYmEyYjBkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEzLTAyLTA1ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIEFkZCBzbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQgc2V0dGluZyB0byBXZWJDb3JlOjpQYWdlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGVkaXRpbmcv
ZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sLgorCisgICAgICAgICogcGFnZS9T
ZXR0aW5ncy5pbjogQWRkIG5ldyBzZXR0aW5nIHdpdGggdHJ1ZSBhcyBpbml0aWFsIHZhbHVlLgor
CiAyMDEzLTAyLTAzICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBBZGQgRm9jdXNEaXJlY3Rpb24gYXJndW1lbnQgdG8gSFRNTFRleHRGb3JtQ29udHJvbEVsZW1l
bnQ6OmhhbmRsZUZvY3VzRXZlbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBhNTUwYjhiYjMyODFlMzcxYTljZmY4
MjIzYTkzNzBmYzBkYTQyYjBlLi5hMmNiNDhkNGIwNTU5ZjllZWY1YzMzMTQyNDg5MDVlNzU0YzY0
Nzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDcgQEAKKzIwMTMtMDItMDUgIE1hbnVlbCBSZWdv
IENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgQWRkIHNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZCBzZXR0aW5nIHRvIFdlYkNvcmU6OlBhZ2UKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzg0MAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBh
cmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
OjplbmNvZGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjpk
ZWNvZGUpOiBSZW1vdmUgY29kZSByZWxhdGVkIHRvCisgICAgICAgIGlzU21hcnRJbnNlcnREZWxl
dGVFbmFibGVkLgorICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmg6
CisgICAgICAgIChXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzKTogUmVtb3ZlIGlzU21hcnRJbnNl
cnREZWxldGVFbmFibGVkLgorICAgICAgICAqIFNoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmg6
CisgICAgICAgIChXZWJLaXQpOiBBZGQgbWFjcm8gZm9yIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZCBzZXR0aW5nLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoK
KyAgICAgICAgKFdLUHJlZmVyZW5jZXNTZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOgorICAg
ICAgICAoV0tQcmVmZXJlbmNlc0dldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6IEltcGxlbWVu
dCBtZXRob2RzIHVzaW5nIHRoZQorICAgICAgICBuZXcgc2V0dGluZy4KKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaDogQWRkIG5ldyBtZXRob2RzIGhlYWRl
cnMuCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2VQcm94eTo6aW5pdGlhbGl6ZVdlYlBhZ2UpOiBTZXQgc21hcnRJbnNlcnREZWxl
dGVFbmFibGVkCisgICAgICAgIHNldHRpbmcgdXNpbmcgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZCB0byBrZWVwIGluaXRpYWwgdmFsdWUgb24gTWFjLgorICAgICAgICAoV2ViS2l0OjpXZWJQ
YWdlUHJveHk6OmNyZWF0aW9uUGFyYW1ldGVycyk6IFJlbW92ZSB1c2FnZSBvZgorICAgICAgICBw
YXJhbWV0ZXJzLmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkLgorICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViRWRpdG9yQ2xpZW50OjpzbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBFbmFibGUgbWV0aG9k
IGZvcgorICAgICAgICBhbGwgcGxhdGZvcm1zLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6V2ViUGFnZSk6IFJlbW92
ZSBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkCisgICAgICAgIGluaXRpYWxpemF0aW9uLgor
ICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyk6IFNldCBzbWFydElu
c2VydERlbGV0ZUVuYWJsZWQKKyAgICAgICAgc2V0dGluZy4KKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbWV0aG9kIHVzaW5n
CisgICAgICAgIHNldHRpbmdzLgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG1ldGhvZCB1
c2luZworICAgICAgICBzZXR0aW5ncy4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oOgorICAgICAgICAoV2ViUGFnZSk6IEVuYWJsZSBtZXRob2RzIGRlYWxpbmcgd2l0aCBz
bWFydEluc2VydERlbGV0ZUVuYWJsZWQgZm9yIGFsbAorICAgICAgICBwbGF0Zm9ybXMgYW5kIHJl
bW92ZSBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkIGFzIGl0IHdpbGwgYmUgYQorICAgICAg
ICBzZXR0aW5nLgorCisKIDIwMTMtMDItMDMgIEt3YW5nWW9uZyBDaG9pICA8a3kwLmNob2lAc2Ft
c3VuZy5jb20+CiAKICAgICAgICAgRml4IGJ1aWxkIHdhcm5pbmcgYWZ0ZXIgcjE0MTY0OApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbiBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvU2V0dGluZ3MuaW4KaW5kZXggZDI5MDRkMGY4MmY5ODhlYWMzNmQ0MjE5Y2IxZTdmOGFh
NWRiMDYwNi4uMjk1ZTljNmQ4NjdiNWU2N2QwZjNjZmMxMTc3ZmM0NzRjZTMzZmFiYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1NldHRpbmdzLmluCkBAIC0xNzgsMyArMTc4LDUgQEAgdG91Y2hEcmFnRHJvcEVuYWJs
ZWQgaW5pdGlhbD1mYWxzZQogdW5pZmllZFRleHRDaGVja2VyRW5hYmxlZCBpbml0aWFsPWRlZmF1
bHRVbmlmaWVkVGV4dENoZWNrZXJFbmFibGVkCiAKIGxvZ3NQYWdlTWVzc2FnZXNUb1N5c3RlbUNv
bnNvbGVFbmFibGVkIGluaXRpYWw9ZmFsc2UKKworc21hcnRJbnNlcnREZWxldGVFbmFibGVkIGlu
aXRpYWw9dHJ1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVh
dGlvblBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlv
blBhcmFtZXRlcnMuY3BwCmluZGV4IGE2ZjJkMDE3MDkwZTVlMWViYTgzODM2YzFmMmEwMjE5ZGVm
ZWI4OGUuLmVmMmFkZmZlZWQ4OWNkODIxMmY0ZWUxYzRhNzY1ZTk4YTY5NGIzMTIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAK
QEAgLTYwLDcgKzYwLDYgQEAgdm9pZCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUo
Q29yZUlQQzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIgPDwg
bWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKIAogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBlbmNv
ZGVyIDw8IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOwogICAgIGVuY29kZXIuZW5jb2RlRW51
bShsYXllckhvc3RpbmdNb2RlKTsKICAgICBlbmNvZGVyIDw8IGNvbG9yU3BhY2U7CiAjZW5kaWYK
QEAgLTEyMCw4ICsxMTksNiBAQCBib29sIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29k
ZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXImIGRlY29kZXIsIFdlYlBhZwogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShw
YXJhbWV0ZXJzLmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKHBhcmFtZXRlcnMubGF5ZXJIb3N0aW5n
TW9kZSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHBh
cmFtZXRlcnMuY29sb3JTcGFjZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBh
Z2VDcmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA5MDZhZWJlNzNmNzU1ZWFmZTFmYzU2ZTkxZTJi
MzBlN2VkOTUyOTExLi5iNzg1OWJmODI2NzhlMmU1YTI4M2VmNzUzY2VkNTk5MDliZTI4MzcwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVy
cy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
LmgKQEAgLTg4LDcgKzg4LDYgQEAgc3RydWN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMgewog
ICAgIGJvb2wgbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKIAogI2lmIFBMQVRGT1JNKE1BQykK
LSAgICBib29sIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOwogICAgIExheWVySG9zdGluZ01v
ZGUgbGF5ZXJIb3N0aW5nTW9kZTsKICAgICBDb2xvclNwYWNlRGF0YSBjb2xvclNwYWNlOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9y
ZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAppbmRleCA4
ZjRlNTZhZDc4Yzc2ZGNjZmQyNzYzZDEzMWI0Yjk1OGIyYmVhNDUzLi43Y2VhOTBlMmViMmVkM2I2
MjgxY2JlYTc2Y2Q5ZWZhMzYwYzEwZWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQ
cmVmZXJlbmNlc1N0b3JlLmgKQEAgLTE0MCw2ICsxNDAsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsK
ICAgICBtYWNybyhRVEtpdEVuYWJsZWQsIGlzUVRLaXRFbmFibGVkLCBCb29sLCBib29sLCB0cnVl
KSBcCiAgICAgbWFjcm8oTG9nc1BhZ2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQsIGxv
Z3NQYWdlTWVzc2FnZXNUb1N5c3RlbUNvbnNvbGVFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkg
XAogICAgIG1hY3JvKFBhZ2VWaXNpYmlsaXR5QmFzZWRQcm9jZXNzU3VwcHJlc3Npb25FbmFibGVk
LCBwYWdlVmlzaWJpbGl0eUJhc2VkUHJvY2Vzc1N1cHByZXNzaW9uRW5hYmxlZCwgQm9vbCwgYm9v
bCwgZmFsc2UpIFwKKyAgICBtYWNybyhTbWFydEluc2VydERlbGV0ZUVuYWJsZWQsIHNtYXJ0SW5z
ZXJ0RGVsZXRlRW5hYmxlZCwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIFwKIAogI2RlZmluZSBG
T1JfRUFDSF9XRUJLSVRfRE9VQkxFX1BSRUZFUkVOQ0UobWFjcm8pIFwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRleCA2YzFiNjhhZmQ4
NDBkNmEzYjA0YmMzNGEzNDUyMWFkYzgyODMzMTFlLi40YmRjM2RmYWYwNjgwZGZkMzU1ZjQ1ZmE3
NzIzY2JiODJlODM5Y2UyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLUHJlZmVyZW5jZXMuY3BwCkBAIC0xMDMzLDMgKzEwMzMsMTMgQEAgYm9vbCBXS1ByZWZlcmVu
Y2VzR2V0UGFnZVZpc2liaWxpdHlCYXNlZFByb2Nlc3NTdXBwcmVzc2lvbkVuYWJsZWQoV0tQcmVm
ZXJlbmNlc1IKIHsKICAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+cGFnZVZpc2li
aWxpdHlCYXNlZFByb2Nlc3NTdXBwcmVzc2lvbkVuYWJsZWQoKTsKIH0KKwordm9pZCBXS1ByZWZl
cmVuY2VzU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVy
ZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCkKK3sKKyAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5z
ZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZW5hYmxlZCk7Cit9CisKK2Jvb2wgV0tQcmVmZXJl
bmNlc0dldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVu
Y2VzUmVmKQoreworICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zbWFydEluc2Vy
dERlbGV0ZUVuYWJsZWQoKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKaW5kZXggZmM0NDhmODFlZjIzMmRjMzkyNzMy
YjdlMjE2ZmQ2NjJiNDA5ZTdjNi4uMTE2NjFkOWJkMjg3ZmFlOGRiNjFlNTU2MDFiYjJlZWE0YWU0
MWJmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVy
ZW5jZXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJl
ZmVyZW5jZXNQcml2YXRlLmgKQEAgLTI0OSw2ICsyNDksMTAgQEAgV0tfRVhQT1JUIGJvb2wgV0tQ
cmVmZXJlbmNlc0dldFBhZ2VWaXNpYmlsaXR5QmFzZWRQcm9jZXNzU3VwcHJlc3Npb25FbmFibGVk
KFdLUHIKIAogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1Jlc2V0VGVzdFJ1bm5lck92ZXJy
aWRlcyhXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8g
dHJ1ZQorV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFNtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzLCBib29sIGVuYWJsZWQpOworV0tfRVhQ
T1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChXS1ByZWZl
cmVuY2VzUmVmIHByZWZlcmVuY2VzKTsKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggOGMyMDRkNzNk
OTE1YWVmYTc0ZDdmZmQ5YjljNmUyYzc0NWIwZTUwZS4uOWI4OTc3MGRjMjQyMmNjOGNkMmE0MmQw
NmU1NTIxZmY0NjAxMmI0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAKQEAgLTQyMiw2ICs0MjIsMTAgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmluaXRpYWxpemVX
ZWJQYWdlKCkKICAgICAgICAgaW5zcGVjdG9yKCktPmVuYWJsZVJlbW90ZUluc3BlY3Rpb24oKTsK
ICNlbmRpZgogCisjaWYgUExBVEZPUk0oTUFDKQorICAgIG1fcGFnZUdyb3VwLT5wcmVmZXJlbmNl
cygpLT5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQobV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZCk7CisjZW5kaWYKKwogICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vz
czo6Q3JlYXRlV2ViUGFnZShtX3BhZ2VJRCwgY3JlYXRpb25QYXJhbWV0ZXJzKCkpLCAwKTsKIAog
I2lmIEVOQUJMRShQQUdFX1ZJU0lCSUxJVFlfQVBJKQpAQCAtMzc1Myw3ICszNzU3LDYgQEAgV2Vi
UGFnZUNyZWF0aW9uUGFyYW1ldGVycyBXZWJQYWdlUHJveHk6OmNyZWF0aW9uUGFyYW1ldGVycygp
IGNvbnN0CiAgICAgcGFyYW1ldGVycy5tYXlTdGFydE1lZGlhV2hlbkluV2luZG93ID0gbV9tYXlT
dGFydE1lZGlhV2hlbkluV2luZG93OwogCiAjaWYgUExBVEZPUk0oTUFDKQotICAgIHBhcmFtZXRl
cnMuaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgPSBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFi
bGVkOwogICAgIHBhcmFtZXRlcnMubGF5ZXJIb3N0aW5nTW9kZSA9IG1fbGF5ZXJIb3N0aW5nTW9k
ZTsKICAgICBwYXJhbWV0ZXJzLmNvbG9yU3BhY2UgPSBtX3BhZ2VDbGllbnQtPmNvbG9yU3BhY2Uo
KTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCmluZGV4IGFlYjNjN2YzYzMyODgxYzQ5
ZmM3M2E1OGU4ZWZjM2I3YjY5YjM5MjMuLmNjYmQ1YWMzNzNlODk2NDViNzliNWEzM2Q0ZTk1Y2Y5
MjA4ZTc5NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKQEAgLTc5LDEyICs3OSw3IEBAIGJv
b2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRTaG93RGVsZXRlSW50ZXJmYWNlKEhUTUxFbGVtZW50
KikKIAogYm9vbCBXZWJFZGl0b3JDbGllbnQ6OnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpCiB7
Ci0gICAgLy8gRklYTUU6IFdoeSBpc24ndCB0aGlzIE1hYyBzcGVjaWZpYyBsaWtlIHRvZ2dsZVNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZD8KLSNpZiBQTEFURk9STShNQUMpCiAgICAgcmV0dXJuIG1f
cGFnZS0+aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKTsKLSNlbHNlCi0gICAgcmV0dXJuIHRy
dWU7Ci0jZW5kaWYKIH0KICAKIGJvb2wgV2ViRWRpdG9yQ2xpZW50Ojppc1NlbGVjdFRyYWlsaW5n
V2hpdGVzcGFjZUVuYWJsZWQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCmluZGV4IDE4N2NkZTlmNmFiYWRmN2M0ZmIzM2MyZTgzOWI1N2YxZDdiNjIw
YWEuLmI0ODMyOWE3ZjJiNGU5NTM5MTg2YzliYTIyMTVkM2EzNmIwNDgwNDggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTIzNyw3ICsyMzcs
NiBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKICNpZiBQTEFURk9STShNQUMpCiAgICAgLCBtX3Bk
ZlBsdWdpbkVuYWJsZWQoZmFsc2UpCiAgICAgLCBtX3dpbmRvd0lzVmlzaWJsZShmYWxzZSkKLSAg
ICAsIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQocGFyYW1ldGVycy5pc1NtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZCkKICAgICAsIG1fbGF5ZXJIb3N0aW5nTW9kZShwYXJhbWV0ZXJzLmxheWVy
SG9zdGluZ01vZGUpCiAgICAgLCBtX2tleWJvYXJkRXZlbnRCZWluZ0ludGVycHJldGVkKDApCiAj
ZWxpZiBQTEFURk9STShHVEspCkBAIC0yNDEwLDYgKzI0MDksOCBAQCB2b2lkIFdlYlBhZ2U6OnVw
ZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlKQogCiAgICAg
c2V0dGluZ3MtPnNldExvZ3NQYWdlTWVzc2FnZXNUb1N5c3RlbUNvbnNvbGVFbmFibGVkKHN0b3Jl
LmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6bG9nc1BhZ2VNZXNzYWdlc1Rv
U3lzdGVtQ29uc29sZUVuYWJsZWRLZXkoKSkpOwogCisgICAgc2V0dGluZ3MtPnNldFNtYXJ0SW5z
ZXJ0RGVsZXRlRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNL
ZXk6OnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZEtleSgpKSk7CisKICAgICBwbGF0Zm9ybVByZWZl
cmVuY2VzRGlkQ2hhbmdlKHN0b3JlKTsKIAogICAgIGlmIChtX2RyYXdpbmdBcmVhKQpAQCAtMzc5
NCw0ICszNzk1LDE0IEBAIHZvaWQgV2ViUGFnZTo6c2V0TWluaW11bUxheW91dFdpZHRoKGRvdWJs
ZSBtaW5pbXVtTGF5b3V0V2lkdGgpCiAgICAgICAgIGNvcmVQYWdlKCktPm1haW5GcmFtZSgpLT52
aWV3KCktPmVuYWJsZUF1dG9TaXplTW9kZShmYWxzZSwgSW50U2l6ZSgpLCBJbnRTaXplKCkpOwog
fQogCitib29sIFdlYlBhZ2U6OmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkKK3sKKyAgICBy
ZXR1cm4gbV9wYWdlLT5zZXR0aW5ncygpLT5zbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKTsKK30K
Kwordm9pZCBXZWJQYWdlOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCBlbmFibGVk
KQoreworICAgIG1fcGFnZS0+c2V0dGluZ3MoKS0+c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVk
KGVuYWJsZWQpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCmluZGV4IGE2ZTA2MDYwMjcyNTFjNWRiMmMxZGZk
ZmRiOTgyZWVlZTRiYjI1YjguLjQ1N2E2YTc2YjlmMzQxMGM2YzRkNmRjNzAzN2I5YWFjMjg3N2Yy
YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAt
NDgwLDkgKzQ4MCwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzcGVhayhjb25zdCBTdHJpbmcmKTsK
ICAgICB2b2lkIHN0b3BTcGVha2luZygpOwogCi0gICAgYm9vbCBpc1NtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7IH0K
ICNlbmRpZgogCisgICAgYm9vbCBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpOworICAgIHZv
aWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wpOworCiAgICAgdm9pZCByZXBsYWNl
U2VsZWN0aW9uV2l0aFRleHQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmKTsKICAgICB2
b2lkIGNsZWFyU2VsZWN0aW9uKCk7CiAKQEAgLTc2OCwxMCArNzcwLDYgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIGNhcGl0YWxpemVXb3JkKCk7CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKE1BQykKLSAg
ICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sIGlzU21hcnRJbnNlcnREZWxl
dGVFbmFibGVkKSB7IG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgPSBpc1NtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZDsgfQotI2VuZGlmCi0KICNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKICAg
ICB2b2lkIGRpZFNlbGVjdEl0ZW1Gcm9tQWN0aXZlQ29udGV4dE1lbnUoY29uc3QgV2ViQ29udGV4
dE1lbnVJdGVtRGF0YSYpOwogI2VuZGlmCkBAIC04MjIsOSArODIwLDYgQEAgcHJpdmF0ZToKICAg
ICAvLyBXaGV0aGVyIHRoZSBjb250YWluaW5nIHdpbmRvdyBpcyB2aXNpYmxlIG9yIG5vdC4KICAg
ICBib29sIG1fd2luZG93SXNWaXNpYmxlOwogCi0gICAgLy8gV2hldGhlciBzbWFydCBpbnNlcnQv
ZGVsZXRlIGlzIGVuYWJsZWQgb3Igbm90LgotICAgIGJvb2wgbV9pc1NtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZDsKLQogICAgIC8vIFRoZSBmcmFtZSBvZiB0aGUgY29udGFpbmluZyB3aW5kb3cgaW4g
c2NyZWVuIGNvb3JkaW5hdGVzLgogICAgIFdlYkNvcmU6OkludFJlY3QgbV93aW5kb3dGcmFtZUlu
U2NyZWVuQ29vcmRpbmF0ZXM7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjMDhmYTY2NzcwOWVhMjUwOTg2NTdlMjdkMzE2
ODY4MjBlNDE5Yzc0Li4zNWE3YTBhZjBkMjhjYjQ2MmNjMjAxNTM4YjU1YmU3NWM5NTVhODQxIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTMtMDItMDUgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMg
IDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgQWRkIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZCBzZXR0aW5nIHRvIFdlYkNvcmU6OlBhZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwNzg0MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFJlcGxhY2UgdGVzdFJ1bm5lci5zZXRTbWFydEluc2VydERlbGV0
ZUVuYWJsZWQgYnkKKyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZCBpbiB0ZXN0cy4KKworICAgICAgICAqIGVkaXRpbmcvZGVsZXRpbmcvc21hcnQt
ZWRpdGluZy1kaXNhYmxlZC5odG1sOgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2RvdWJs
ZWNsaWNrLWJlc2lkZS1jci1zcGFuLmh0bWw6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24v
ZG91YmxlY2xpY2std2hpdGVzcGFjZS1jcmFzaC5odG1sOgorICAgICAgICAqIGVkaXRpbmcvc2Vs
ZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtaW1nLWNyYXNoLmh0bWw6CisgICAgICAgICog
ZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sOgorICAgICAgICAq
IHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zOiBVbmZsYWcKKyAgICAgICAgZWRpdGluZy9k
ZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwgYXMgaXQgcGFzc2VzIG5vdy4KKwog
MjAxMy0wMi0wMyAgSGFqaW1lIE1vcnJpdGEgIDxtb3JyaXRhQGdvb2dsZS5jb20+CiAKICAgICAg
ICAgW0Nocm9taXVtXSBVbnJldmlld2VkLCBtYXJraW5nIHNvbWUgYXMgdGltaW5nIG91dC4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNh
YmxlZC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRp
c2FibGVkLmh0bWwKaW5kZXggZGRlYjgxYjJiNzg0Y2U5NWViMzFjMDdhNWY1N2NkZmJjODdiM2M2
ZC4uN2ViMzBkMjIxMWQwYzBkODE5YmVmMmY1ZTczNjg0ODE5ODFkZWQ2OSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVk
Lmh0bWwKQEAgLTQsNyArNCw3IEBACiAKIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgIHRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxl
dGVFbmFibGVkKGZhbHNlKTsKKyAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0U21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkKGZhbHNlKTsKIH0KIAogZnVuY3Rpb24gZWRpdGluZ1Rlc3QoKSB7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1iZXNpZGUt
Y3Itc3Bhbi5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2st
YmVzaWRlLWNyLXNwYW4uaHRtbAppbmRleCBhNmUxMDg1MGRjY2MzNzY0YjgxMGVlZWIwZjQ4M2Yy
YWU0YTE2OThmLi44Yjk4YmE3MmZiZmM3NDBhZmEzNWMyZDA4YWM5NTc3YWI2Yjk5ZTlhIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1iZXNpZGUt
Y3Itc3Bhbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNs
aWNrLWJlc2lkZS1jci1zcGFuLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0PgogaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7CiAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICB0
ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSk7CisgICAgIGludGVy
bmFscy5zZXR0aW5ncy5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOwogICAgICB0
ZXN0UnVubmVyLnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQodHJ1ZSk7CiB9CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdo
aXRlc3BhY2UtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJs
ZWNsaWNrLXdoaXRlc3BhY2UtY3Jhc2guaHRtbAppbmRleCA4ZDU2NDg5ZjUxNzM0ZWU4MzExOTdk
NmFiYWI1M2QyMzA4NWFlNzM2Li40MGUyNDEzODIxZThlODg0MDc5NzhhYTgzNzY5Mzc3Yzg2ODZh
ZjhmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGlj
ay13aGl0ZXNwYWNlLWNyYXNoLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rp
b24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1jcmFzaC5odG1sCkBAIC0zLDcgKzMsNyBAQAogPHNj
cmlwdD4KIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKLSAgICAgdGVzdFJ1bm5lci5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2Up
OworICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGZh
bHNlKTsKICAgICAgdGVzdFJ1bm5lci5zZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVk
KHRydWUpOwogfQogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Nl
bGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1sIGIvTGF5b3V0VGVz
dHMvZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1pbWctY3Jhc2guaHRt
bAppbmRleCA4MDc0ZjA3OTAzNWU1MzY2ZjliNjI4YmJkYWUyZjcwNWI1ZmE3YTJlLi5mMjgwYTI2
YTc2OWE5NWE3OWRkYTZkNDQ2NzE2NGRmZDQ0NjM3NTA0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1s
CisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3Bh
Y2UtaW1nLWNyYXNoLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0PgogaWYgKHdpbmRvdy50
ZXN0UnVubmVyKSB7CiAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICB0ZXN0UnVu
bmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSk7CisgICAgIGludGVybmFscy5z
ZXR0aW5ncy5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOwogICAgICB0ZXN0UnVu
bmVyLnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQodHJ1ZSk7CiAgICAgIHRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGlu
Zy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sIGIvTGF5b3V0VGVzdHMvZWRp
dGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sCmluZGV4IDFhYTM2MWY4
ODIxNDU4OTQxOGIxM2E0NTIxMTY3NTJmMjY4NGFjNzMuLjg1MzBmYmM1MzFhNDUzYTZhZjVmYmYz
OWQ1ZjZmMWVhYWY5OGI3ZGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0
aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5n
L3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8
c2NyaXB0PgogaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAgIHRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOwotICAgICB0ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxz
ZSk7CisgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
ZmFsc2UpOwogICAgICB0ZXN0UnVubmVyLnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJs
ZWQodHJ1ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0
RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMK
aW5kZXggMGNmMWQxOTk0NGQzMWZiZTFhOWM1YjRlMDEzOTlhMDE0NzA3YmYzOS4uNWU2NTYxY2Y0
YmNjOTk1MTE5Yjg5Zjc1YzVjNjY2ZTY2OGNhYzMzOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM4NSw5ICszODUsNiBAQCBodHRwL3Rlc3RzL21pc2Mv
bGluay1yZWwtaWNvbi1iZWZvcmVsb2FkLmh0bWwKICMgV2ViS2l0VGVzdFJ1bm5lciBzaG91bGQg
ZHVtcCB0ZXh0L3BsYWluIGNvbnRlbnQgYXMgdGV4dAogaHR0cC90ZXN0cy9pbmNyZW1lbnRhbC9z
bG93LXV0ZjgtdGV4dC5wbAogCi0jIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgbGF5b3V0VGVzdENv
bnRyb2xsZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCi1lZGl0aW5nL2RlbGV0aW5nL3Nt
YXJ0LWVkaXRpbmctZGlzYWJsZWQuaHRtbAotCiAjIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgcGxh
aW5UZXh0LnBsYWluVGV4dAogZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5o
dG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186781</attachid>
            <date>2013-02-06 01:15:23 -0800</date>
            <delta_ts>2013-02-27 12:22:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107840-20130206101159.patch</filename>
            <type>text/plain</type>
            <size>17376</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxOTY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2QzMGUzOGE4MWI3NTAx
OGE4MzYyMTM5MDc5Y2FhYzNlMmM1MmQ1OC4uODA3YmZjY2JkYzA1YWMzMzZlODBjYWQxYzlhNzll
ZWFlMzliNmMzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEzLTAyLTA2ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIEFkZCBzbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQgc2V0dGluZyB0byBXZWJDb3JlOjpQYWdlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGVkaXRpbmcv
ZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sLgorCisgICAgICAgICogcGFnZS9T
ZXR0aW5ncy5pbjogQWRkIG5ldyBzZXR0aW5nIHdpdGggdHJ1ZSBhcyBpbml0aWFsIHZhbHVlLgor
CiAyMDEzLTAyLTA1ICBWc2V2b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIFdlYiBJbnNwZWN0b3I6IEFkZCBlbmRpbmcgc2xhc2hlcyBhdXRvbWF0aWNhbGx5IHRv
IGZpbGUgbWFwcGluZ3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTdjM2QzMDhmYzU3ZDZhM2MzYmEyNzhiNGFh
ODAzYmI3N2JjNzc2Zi4uNzMwNzllZjk2NmVmMTdhOTc4YjQ3MDc2ODgyZGEwYmFmYzllYWY0MiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDEzLTAyLTA2ICBNYW51ZWwgUmVnbyBDYXNh
c25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIEFkZCBzbWFydEluc2VydERlbGV0
ZUVuYWJsZWQgc2V0dGluZyB0byBXZWJDb3JlOjpQYWdlCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc4NDAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0
ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6ZW5j
b2RlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2Rl
KTogUmVtb3ZlIGNvZGUgcmVsYXRlZCB0bworICAgICAgICBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZC4KKyAgICAgICAgKiBTaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oOgorICAg
ICAgICAoV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyk6IFJlbW92ZSBpc1NtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZC4KKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oOgorICAg
ICAgICAoV2ViS2l0KTogQWRkIG1hY3JvIGZvciBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQgc2V0
dGluZy4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6CisgICAg
ICAgIChXS1ByZWZlcmVuY2VzU2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKToKKyAgICAgICAg
KFdLUHJlZmVyZW5jZXNHZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBJbXBsZW1lbnQgbWV0
aG9kcyB1c2luZyB0aGUKKyAgICAgICAgbmV3IHNldHRpbmcuCisgICAgICAgICogVUlQcm9jZXNz
L0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmg6IEFkZCBuZXcgbWV0aG9kcyBoZWFkZXJzLgor
ICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OmluaXRpYWxpemVXZWJQYWdlKTogU2V0IHNtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZAorICAgICAgICBzZXR0aW5nIHVzaW5nIG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQg
dG8ga2VlcCBpbml0aWFsIHZhbHVlIG9uIE1hYy4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVBy
b3h5OjpjcmVhdGlvblBhcmFtZXRlcnMpOiBSZW1vdmUgdXNhZ2Ugb2YKKyAgICAgICAgcGFyYW1l
dGVycy5pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkVk
aXRvckNsaWVudDo6c21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogRW5hYmxlIG1ldGhvZCBmb3IK
KyAgICAgICAgYWxsIHBsYXRmb3Jtcy4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OldlYlBhZ2UpOiBSZW1vdmUgbV9p
c1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZAorICAgICAgICBpbml0aWFsaXphdGlvbi4KKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMpOiBTZXQgc21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkCisgICAgICAgIHNldHRpbmcuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogSW1wbGVtZW50IG1ldGhvZCB1c2luZworICAg
ICAgICBzZXR0aW5ncy4KKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2U6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6IEltcGxlbWVudCBtZXRob2QgdXNpbmcK
KyAgICAgICAgc2V0dGluZ3MuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
aDoKKyAgICAgICAgKFdlYlBhZ2UpOiBFbmFibGUgbWV0aG9kcyBkZWFsaW5nIHdpdGggc21hcnRJ
bnNlcnREZWxldGVFbmFibGVkIGZvciBhbGwKKyAgICAgICAgcGxhdGZvcm1zIGFuZCByZW1vdmUg
bV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCBhcyBpdCB3aWxsIGJlIGEKKyAgICAgICAgc2V0
dGluZy4KKworCiAyMDEzLTAyLTA1ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUu
Y29tPgogCiAgICAgICAgIFt3azJdIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhIGhhcyBv
bmUgbW9yZSBsYXllciBpbiBpdHMgQ0FDb250ZXh0IHdoZW4gd2UncmUgaW4gdGhlIGJhY2tncm91
bmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4gYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmluCmluZGV4IGQyOTA0ZDBmODJmOTg4ZWFjMzZkNDIxOWNi
MWU3ZjhhYTVkYjA2MDYuLjI5NWU5YzZkODY3YjVlNjdkMGYzY2ZjMTE3N2ZjNDc0Y2UzM2ZhYmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4KKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgpAQCAtMTc4LDMgKzE3OCw1IEBAIHRvdWNoRHJhZ0Ry
b3BFbmFibGVkIGluaXRpYWw9ZmFsc2UKIHVuaWZpZWRUZXh0Q2hlY2tlckVuYWJsZWQgaW5pdGlh
bD1kZWZhdWx0VW5pZmllZFRleHRDaGVja2VyRW5hYmxlZAogCiBsb2dzUGFnZU1lc3NhZ2VzVG9T
eXN0ZW1Db25zb2xlRW5hYmxlZCBpbml0aWFsPWZhbHNlCisKK3NtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZCBpbml0aWFsPXRydWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQYWdl
Q3JlYXRpb25QYXJhbWV0ZXJzLmNwcAppbmRleCBhNmYyZDAxNzA5MGU1ZTFlYmE4MzgzNmMxZjJh
MDIxOWRlZmViODhlLi5lZjJhZGZmZWVkODljZDgyMTJmNGVlMWM0YTc2NWU5OGE2OTRiMzEyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVy
cy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRl
cnMuY3BwCkBAIC02MCw3ICs2MCw2IEBAIHZvaWQgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6
ZW5jb2RlKENvcmVJUEM6OkFyZ3VtZW50RW5jb2RlciYgZW5jb2RlcikgY29uc3QKICAgICBlbmNv
ZGVyIDw8IG1heVN0YXJ0TWVkaWFXaGVuSW5XaW5kb3c7CiAKICNpZiBQTEFURk9STShNQUMpCi0g
ICAgZW5jb2RlciA8PCBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsKICAgICBlbmNvZGVyLmVu
Y29kZUVudW0obGF5ZXJIb3N0aW5nTW9kZSk7CiAgICAgZW5jb2RlciA8PCBjb2xvclNwYWNlOwog
I2VuZGlmCkBAIC0xMjAsOCArMTE5LDYgQEAgYm9vbCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
OjpkZWNvZGUoQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBXZWJQYWcKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCiAjaWYgUExBVEZPUk0oTUFDKQotICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUocGFyYW1ldGVycy5pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCkpCi0gICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShwYXJhbWV0ZXJzLmxheWVy
SG9zdGluZ01vZGUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShwYXJhbWV0ZXJzLmNvbG9yU3BhY2UpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggOTA2YWViZTczZjc1NWVhZmUxZmM1
NmU5MWUyYjMwZTdlZDk1MjkxMS4uYjc4NTliZjgyNjc4ZTJlNWEyODNlZjc1M2NlZDU5OTA5YmUy
ODM3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBh
cmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVycy5oCkBAIC04OCw3ICs4OCw2IEBAIHN0cnVjdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0
ZXJzIHsKICAgICBib29sIG1heVN0YXJ0TWVkaWFXaGVuSW5XaW5kb3c7CiAKICNpZiBQTEFURk9S
TShNQUMpCi0gICAgYm9vbCBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsKICAgICBMYXllckhv
c3RpbmdNb2RlIGxheWVySG9zdGluZ01vZGU7CiAgICAgQ29sb3JTcGFjZURhdGEgY29sb3JTcGFj
ZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVu
Y2VzU3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgK
aW5kZXggOGY0ZTU2YWQ3OGM3NmRjY2ZkMjc2M2QxMzFiNGI5NThiMmJlYTQ1My4uN2NlYTkwZTJl
YjJlZDNiNjI4MWNiZWE3NmNkOWVmYTM2MGMxMGViNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCkBAIC0xNDAsNiArMTQwLDcgQEAgbmFtZXNwYWNlIFdl
YktpdCB7CiAgICAgbWFjcm8oUVRLaXRFbmFibGVkLCBpc1FUS2l0RW5hYmxlZCwgQm9vbCwgYm9v
bCwgdHJ1ZSkgXAogICAgIG1hY3JvKExvZ3NQYWdlTWVzc2FnZXNUb1N5c3RlbUNvbnNvbGVFbmFi
bGVkLCBsb2dzUGFnZU1lc3NhZ2VzVG9TeXN0ZW1Db25zb2xlRW5hYmxlZCwgQm9vbCwgYm9vbCwg
ZmFsc2UpIFwKICAgICBtYWNybyhQYWdlVmlzaWJpbGl0eUJhc2VkUHJvY2Vzc1N1cHByZXNzaW9u
RW5hYmxlZCwgcGFnZVZpc2liaWxpdHlCYXNlZFByb2Nlc3NTdXBwcmVzc2lvbkVuYWJsZWQsIEJv
b2wsIGJvb2wsIGZhbHNlKSBcCisgICAgbWFjcm8oU21hcnRJbnNlcnREZWxldGVFbmFibGVkLCBz
bWFydEluc2VydERlbGV0ZUVuYWJsZWQsIEJvb2wsIGJvb2wsIHRydWUpIFwKICAgICBcCiAKICNk
ZWZpbmUgRk9SX0VBQ0hfV0VCS0lUX0RPVUJMRV9QUkVGRVJFTkNFKG1hY3JvKSBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKaW5kZXggNmMx
YjY4YWZkODQwZDZhM2IwNGJjMzRhMzQ1MjFhZGM4MjgzMzExZS4uNGJkYzNkZmFmMDY4MGRmZDM1
NWY0NWZhNzcyM2NiYjgyZTgzOWNlMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcApAQCAtMTAzMywzICsxMDMzLDEzIEBAIGJvb2wgV0tQ
cmVmZXJlbmNlc0dldFBhZ2VWaXNpYmlsaXR5QmFzZWRQcm9jZXNzU3VwcHJlc3Npb25FbmFibGVk
KFdLUHJlZmVyZW5jZXNSCiB7CiAgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnBh
Z2VWaXNpYmlsaXR5QmFzZWRQcm9jZXNzU3VwcHJlc3Npb25FbmFibGVkKCk7CiB9CisKK3ZvaWQg
V0tQcmVmZXJlbmNlc1NldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVm
IHByZWZlcmVuY2VzUmVmLCBib29sIGVuYWJsZWQpCit7CisgICAgdG9JbXBsKHByZWZlcmVuY2Vz
UmVmKS0+c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGVuYWJsZWQpOworfQorCitib29sIFdL
UHJlZmVyZW5jZXNHZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBw
cmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c21h
cnRJbnNlcnREZWxldGVFbmFibGVkKCk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IGZjNDQ4ZjgxZWYyMzJk
YzM5MjczMmI3ZTIxNmZkNjYyYjQwOWU3YzYuLjExNjYxZDliZDI4N2ZhZThkYjYxZTU1NjAxYmIy
ZWVhNGFlNDFiZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9X
S1ByZWZlcmVuY2VzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCkBAIC0yNDksNiArMjQ5LDEwIEBAIFdLX0VYUE9SVCBi
b29sIFdLUHJlZmVyZW5jZXNHZXRQYWdlVmlzaWJpbGl0eUJhc2VkUHJvY2Vzc1N1cHByZXNzaW9u
RW5hYmxlZChXS1ByCiAKIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNSZXNldFRlc3RSdW5u
ZXJPdmVycmlkZXMoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7CiAKKy8vIERlZmF1
bHRzIHRvIHRydWUKK1dLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRTbWFydEluc2VydERl
bGV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcywgYm9vbCBlbmFibGVkKTsK
K1dLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
V0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKICNpZmRlZiBfX2NwbHVzcGx1cwogfQog
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDkz
NjFmYTk5NDhiYTgwZDU1Yzk0NmZhZjJkZWZmYjVlNDk0NjRjNjQuLjVkZjcyYWYyZDgzNDZlODJi
N2ZhYzVjZGRmYmY3ZTBkZDI5Nzg4ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwCkBAIC00MjksNiArNDI5LDEwIEBAIHZvaWQgV2ViUGFnZVByb3h5Ojppbml0
aWFsaXplV2ViUGFnZSgpCiAjZWxpZiBFTkFCTEUoSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9U
VExJTkcpCiAgICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRWaXNpYmls
aXR5U3RhdGUobV9pc1Zpc2libGUgPyBQYWdlVmlzaWJpbGl0eVN0YXRlVmlzaWJsZSA6IFBhZ2VW
aXNpYmlsaXR5U3RhdGVIaWRkZW4sIC8qIGlzSW5pdGlhbFN0YXRlICovIHRydWUpLCBtX3BhZ2VJ
RCk7CiAjZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICBtX3Byb2Nlc3MtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OlNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChtX2lzU21hcnRJbnNl
cnREZWxldGVFbmFibGVkKSwgbV9wYWdlSUQpOworI2VuZGlmCiB9CiAKIHZvaWQgV2ViUGFnZVBy
b3h5OjpjbG9zZSgpCkBAIC0zNzUzLDcgKzM3NTcsNiBAQCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0
ZXJzIFdlYlBhZ2VQcm94eTo6Y3JlYXRpb25QYXJhbWV0ZXJzKCkgY29uc3QKICAgICBwYXJhbWV0
ZXJzLm1heVN0YXJ0TWVkaWFXaGVuSW5XaW5kb3cgPSBtX21heVN0YXJ0TWVkaWFXaGVuSW5XaW5k
b3c7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgcGFyYW1ldGVycy5pc1NtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZCA9IG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7CiAgICAgcGFyYW1ldGVy
cy5sYXllckhvc3RpbmdNb2RlID0gbV9sYXllckhvc3RpbmdNb2RlOwogICAgIHBhcmFtZXRlcnMu
Y29sb3JTcGFjZSA9IG1fcGFnZUNsaWVudC0+Y29sb3JTcGFjZSgpOwogI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNs
aWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVk
aXRvckNsaWVudC5jcHAKaW5kZXggYWViM2M3ZjNjMzI4ODFjNDlmYzczYTU4ZThlZmMzYjdiNjli
MzkyMy4uY2NiZDVhYzM3M2U4OTY0NWI3OWI1YTMzZDRlOTVjZjkyMDhlNzk2OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGll
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50LmNwcApAQCAtNzksMTIgKzc5LDcgQEAgYm9vbCBXZWJFZGl0b3JDbGllbnQ6
OnNob3VsZFNob3dEZWxldGVJbnRlcmZhY2UoSFRNTEVsZW1lbnQqKQogCiBib29sIFdlYkVkaXRv
ckNsaWVudDo6c21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkKIHsKLSAgICAvLyBGSVhNRTogV2h5
IGlzbid0IHRoaXMgTWFjIHNwZWNpZmljIGxpa2UgdG9nZ2xlU21hcnRJbnNlcnREZWxldGVFbmFi
bGVkPwotI2lmIFBMQVRGT1JNKE1BQykKICAgICByZXR1cm4gbV9wYWdlLT5pc1NtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZCgpOwotI2Vsc2UKLSAgICByZXR1cm4gdHJ1ZTsKLSNlbmRpZgogfQogIAog
Ym9vbCBXZWJFZGl0b3JDbGllbnQ6OmlzU2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCgp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXgg
MTg3Y2RlOWY2YWJhZGY3YzRmYjMzYzJlODM5YjU3ZjFkN2I2MjBhYS4uYjQ4MzI5YTdmMmI0ZTk1
MzkxODZjOWJhMjIxNWQzYTM2YjA0ODA0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMjM3LDcgKzIzNyw2IEBAIFdlYlBhZ2U6OldlYlBh
Z2UodWludDY0X3QgcGFnZUlELCBjb25zdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzJiBwYXJh
bWV0ZXJzKQogI2lmIFBMQVRGT1JNKE1BQykKICAgICAsIG1fcGRmUGx1Z2luRW5hYmxlZChmYWxz
ZSkKICAgICAsIG1fd2luZG93SXNWaXNpYmxlKGZhbHNlKQotICAgICwgbV9pc1NtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZChwYXJhbWV0ZXJzLmlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKQogICAg
ICwgbV9sYXllckhvc3RpbmdNb2RlKHBhcmFtZXRlcnMubGF5ZXJIb3N0aW5nTW9kZSkKICAgICAs
IG1fa2V5Ym9hcmRFdmVudEJlaW5nSW50ZXJwcmV0ZWQoMCkKICNlbGlmIFBMQVRGT1JNKEdUSykK
QEAgLTI0MTAsNiArMjQwOSw4IEBAIHZvaWQgV2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMoY29u
c3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAKICAgICBzZXR0aW5ncy0+c2V0TG9nc1Bh
Z2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5
KFdlYlByZWZlcmVuY2VzS2V5Ojpsb2dzUGFnZU1lc3NhZ2VzVG9TeXN0ZW1Db25zb2xlRW5hYmxl
ZEtleSgpKSk7CiAKKyAgICBzZXR0aW5ncy0+c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKHN0
b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6c21hcnRJbnNlcnREZWxl
dGVFbmFibGVkS2V5KCkpKTsKKwogICAgIHBsYXRmb3JtUHJlZmVyZW5jZXNEaWRDaGFuZ2Uoc3Rv
cmUpOwogCiAgICAgaWYgKG1fZHJhd2luZ0FyZWEpCkBAIC0zNzk0LDQgKzM3OTUsMTQgQEAgdm9p
ZCBXZWJQYWdlOjpzZXRNaW5pbXVtTGF5b3V0V2lkdGgoZG91YmxlIG1pbmltdW1MYXlvdXRXaWR0
aCkKICAgICAgICAgY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCktPnZpZXcoKS0+ZW5hYmxlQXV0b1Np
emVNb2RlKGZhbHNlLCBJbnRTaXplKCksIEludFNpemUoKSk7CiB9CiAKK2Jvb2wgV2ViUGFnZTo6
aXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKQoreworICAgIHJldHVybiBtX3BhZ2UtPnNldHRp
bmdzKCktPnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpOworfQorCit2b2lkIFdlYlBhZ2U6OnNl
dFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgbV9wYWdlLT5z
ZXR0aW5ncygpLT5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZW5hYmxlZCk7Cit9CisKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmgKaW5kZXggYTZlMDYwNjAyNzI1MWM1ZGIyYzFkZmRmZGI5ODJlZWVlNGJiMjViOC4u
NDU3YTZhNzZiOWYzNDEwYzZjNGQ2ZGM3MDM3YjlhYWMyODc3ZjJhOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC00ODAsOSArNDgwLDExIEBAIHB1
YmxpYzoKICAgICB2b2lkIHNwZWFrKGNvbnN0IFN0cmluZyYpOwogICAgIHZvaWQgc3RvcFNwZWFr
aW5nKCk7CiAKLSAgICBib29sIGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9pc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsgfQogI2VuZGlmCiAKKyAgICBib29s
IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKCk7CisgICAgdm9pZCBzZXRTbWFydEluc2VydERl
bGV0ZUVuYWJsZWQoYm9vbCk7CisKICAgICB2b2lkIHJlcGxhY2VTZWxlY3Rpb25XaXRoVGV4dChX
ZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpOwogICAgIHZvaWQgY2xlYXJTZWxlY3Rpb24o
KTsKIApAQCAtNzY4LDEwICs3NzAsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgY2FwaXRhbGl6ZVdv
cmQoKTsKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgc2V0U21hcnRJbnNl
cnREZWxldGVFbmFibGVkKGJvb2wgaXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpIHsgbV9pc1Nt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9IGlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOyB9Ci0j
ZW5kaWYKLQogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogICAgIHZvaWQgZGlkU2VsZWN0SXRl
bUZyb21BY3RpdmVDb250ZXh0TWVudShjb25zdCBXZWJDb250ZXh0TWVudUl0ZW1EYXRhJik7CiAj
ZW5kaWYKQEAgLTgyMiw5ICs4MjAsNiBAQCBwcml2YXRlOgogICAgIC8vIFdoZXRoZXIgdGhlIGNv
bnRhaW5pbmcgd2luZG93IGlzIHZpc2libGUgb3Igbm90LgogICAgIGJvb2wgbV93aW5kb3dJc1Zp
c2libGU7CiAKLSAgICAvLyBXaGV0aGVyIHNtYXJ0IGluc2VydC9kZWxldGUgaXMgZW5hYmxlZCBv
ciBub3QuCi0gICAgYm9vbCBtX2lzU21hcnRJbnNlcnREZWxldGVFbmFibGVkOwotCiAgICAgLy8g
VGhlIGZyYW1lIG9mIHRoZSBjb250YWluaW5nIHdpbmRvdyBpbiBzY3JlZW4gY29vcmRpbmF0ZXMu
CiAgICAgV2ViQ29yZTo6SW50UmVjdCBtX3dpbmRvd0ZyYW1lSW5TY3JlZW5Db29yZGluYXRlczsK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IDQxNjhjN2U3NGNmYmY0ZGM0ODYxZjY1MmEwNDQxNjNiY2Q5YTYyY2YuLjlkOTcz
NGFmY2VmMDFlNzhlZDJkOTJkNWUxYTVkZTlmZWJmNjBiYjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBA
QAorMjAxMy0wMi0wNiAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4K
KworICAgICAgICBBZGQgc21hcnRJbnNlcnREZWxldGVFbmFibGVkIHNldHRpbmcgdG8gV2ViQ29y
ZTo6UGFnZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTA3ODQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
UmVwbGFjZSB0ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCBieQorICAgICAg
ICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkIGluIHRlc3Rz
LgorCisgICAgICAgICogZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0
bWw6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stYmVzaWRlLWNyLXNw
YW4uaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNw
YWNlLWNyYXNoLmh0bWw6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2st
d2hpdGVzcGFjZS1pbWctY3Jhc2guaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9k
b3VibGVjbGljay13aGl0ZXNwYWNlLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RF
eHBlY3RhdGlvbnM6IFVuZmxhZworICAgICAgICBlZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWVkaXRp
bmctZGlzYWJsZWQuaHRtbCBhcyBpdCBwYXNzZXMgbm93LgorCiAyMDEzLTAyLTA1ICBNYXR0IEZh
bGtlbmhhZ2VuIDxmYWxrZW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgZ2Fy
ZGVuaW5nLiBDaHJvbWl1bSBkaXNhYmxlZCB3ZWIgaW50ZW50cy4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2VkaXRpbmcvZGVsZXRpbmcvc21hcnQtZWRpdGluZy1kaXNhYmxlZC5odG1sIGIvTGF5
b3V0VGVzdHMvZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwKaW5k
ZXggZGRlYjgxYjJiNzg0Y2U5NWViMzFjMDdhNWY1N2NkZmJjODdiM2M2ZC4uN2ViMzBkMjIxMWQw
YzBkODE5YmVmMmY1ZTczNjg0ODE5ODFkZWQ2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZWRp
dGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwKQEAgLTQsNyAr
NCw3IEBACiAKIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgIHRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOwotICAgIHRlc3RSdW5uZXIuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGZhbHNl
KTsKKyAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGZh
bHNlKTsKIH0KIAogZnVuY3Rpb24gZWRpdGluZ1Rlc3QoKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1iZXNpZGUtY3Itc3Bhbi5odG1sIGIv
TGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stYmVzaWRlLWNyLXNwYW4u
aHRtbAppbmRleCBhNmUxMDg1MGRjY2MzNzY0YjgxMGVlZWIwZjQ4M2YyYWU0YTE2OThmLi44Yjk4
YmE3MmZiZmM3NDBhZmEzNWMyZDA4YWM5NTc3YWI2Yjk5ZTlhIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1iZXNpZGUtY3Itc3Bhbi5odG1sCisr
KyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLWJlc2lkZS1jci1z
cGFuLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0PgogaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7CiAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICB0ZXN0UnVubmVyLnNldFNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSk7CisgICAgIGludGVybmFscy5zZXR0aW5ncy5z
ZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOwogICAgICB0ZXN0UnVubmVyLnNldFNl
bGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQodHJ1ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtY3Jhc2gu
aHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3Bh
Y2UtY3Jhc2guaHRtbAppbmRleCA4ZDU2NDg5ZjUxNzM0ZWU4MzExOTdkNmFiYWI1M2QyMzA4NWFl
NzM2Li40MGUyNDEzODIxZThlODg0MDc5NzhhYTgzNzY5Mzc3Yzg2ODZhZjhmIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWNy
YXNoLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2st
d2hpdGVzcGFjZS1jcmFzaC5odG1sCkBAIC0zLDcgKzMsNyBAQAogPHNjcmlwdD4KIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewogICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgdGVz
dFJ1bm5lci5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOworICAgICBpbnRlcm5h
bHMuc2V0dGluZ3Muc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGZhbHNlKTsKICAgICAgdGVz
dFJ1bm5lci5zZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKHRydWUpOwogfQogPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVj
bGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxl
Y3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1pbWctY3Jhc2guaHRtbAppbmRleCA4MDc0ZjA3
OTAzNWU1MzY2ZjliNjI4YmJkYWUyZjcwNWI1ZmE3YTJlLi5mMjgwYTI2YTc2OWE5NWE3OWRkYTZk
NDQ2NzE2NGRmZDQ0NjM3NTA0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1sCisrKyBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtaW1nLWNyYXNoLmh0
bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0PgogaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICB0ZXN0UnVubmVyLnNldFNtYXJ0SW5z
ZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSk7CisgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRTbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOwogICAgICB0ZXN0UnVubmVyLnNldFNlbGVjdFRy
YWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQodHJ1ZSk7CiAgICAgIHRlc3RSdW5uZXIud2FpdFVudGls
RG9uZSgpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZG91
YmxlY2xpY2std2hpdGVzcGFjZS5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
ZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sCmluZGV4IDFhYTM2MWY4ODIxNDU4OTQxOGIxM2E0
NTIxMTY3NTJmMjY4NGFjNzMuLjg1MzBmYmM1MzFhNDUzYTZhZjVmYmYzOWQ1ZjZmMWVhYWY5OGI3
ZGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNr
LXdoaXRlc3BhY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9kb3Vi
bGVjbGljay13aGl0ZXNwYWNlLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0PgogaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7CiAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICB0
ZXN0UnVubmVyLnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSk7CisgICAgIGludGVy
bmFscy5zZXR0aW5ncy5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOwogICAgICB0
ZXN0UnVubmVyLnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQodHJ1ZSk7CiB9CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNGNmNzI2MjBi
OThhMWIyYWEyNmM5YmJiZDBlOWM0YzRjNWI2NWI5ZC4uZDQ2OTMzNDQ0OTM0ZmY4MTBlNGM2ZTY0
MWU1NWQ4OTNmZTJmOWE4NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTM4NSw5ICszODUsNiBAQCBodHRwL3Rlc3RzL21pc2MvbGluay1yZWwtaWNvbi1i
ZWZvcmVsb2FkLmh0bWwKICMgV2ViS2l0VGVzdFJ1bm5lciBzaG91bGQgZHVtcCB0ZXh0L3BsYWlu
IGNvbnRlbnQgYXMgdGV4dAogaHR0cC90ZXN0cy9pbmNyZW1lbnRhbC9zbG93LXV0ZjgtdGV4dC5w
bAogCi0jIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0U21h
cnRJbnNlcnREZWxldGVFbmFibGVkCi1lZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWVkaXRpbmctZGlz
YWJsZWQuaHRtbAotCiAjIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgcGxhaW5UZXh0LnBsYWluVGV4
dAogZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1sCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>