<?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>102593</bug_id>
          
          <creation_ts>2012-11-17 11:42:09 -0800</creation_ts>
          <short_desc>Add an integer identifier field to AuthenticationChallengeBase</short_desc>
          <delta_ts>2013-01-17 00:19:42 -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>Page Loading</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>102592</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>abarth</cc>
    
    <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>danw</cc>
    
    <cc>fishd</cc>
    
    <cc>gtk-ews</cc>
    
    <cc>gustavo</cc>
    
    <cc>mrobinson</cc>
    
    <cc>rakuco</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>769973</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 11:42:09 -0800</bug_when>
    <thetext>Add an integer identifier field to AuthenticationChallengeBase

This is to support linking two different challenges that might not compare as equal but that represent the same logical authentication challenge.
One example is in an IPC environment where the platform challenge can only exist in one process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769979</commentid>
    <comment_count>1</comment_count>
      <attachid>174824</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 11:51:21 -0800</bug_when>
    <thetext>Created attachment 174824
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769980</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-17 11:53:34 -0800</bug_when>
    <thetext>Attachment 174824 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/platform/network/cf/AuthenticationChallenge.h:52:  The parameter name &quot;protectionSpace&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Source/WebCore/platform/network/cf/AuthenticationChallenge.h:52:  The parameter name &quot;response&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Source/WebCore/platform/network/cf/AuthenticationChallenge.h:52:  The parameter name &quot;error&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 3 in 8 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769983</commentid>
    <comment_count>3</comment_count>
      <attachid>174824</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-11-17 12:00:05 -0800</bug_when>
    <thetext>Comment on attachment 174824
Patch v1

Attachment 174824 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/14877336</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769987</commentid>
    <comment_count>4</comment_count>
      <attachid>174824</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2012-11-17 12:20:04 -0800</bug_when>
    <thetext>Comment on attachment 174824
Patch v1

Attachment 174824 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/14859835</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769989</commentid>
    <comment_count>5</comment_count>
      <attachid>174824</attachid>
    <who name="kov&apos;s GTK+ EWS bot">gtk-ews</who>
    <bug_when>2012-11-17 12:34:50 -0800</bug_when>
    <thetext>Comment on attachment 174824
Patch v1

Attachment 174824 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/14875419</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769992</commentid>
    <comment_count>6</comment_count>
      <attachid>174827</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 12:44:34 -0800</bug_when>
    <thetext>Created attachment 174827
Patch v2 - Probably need one more round at EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769993</commentid>
    <comment_count>7</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 12:45:05 -0800</bug_when>
    <thetext>One more shot at EWS to make sure qt/soup/win don&apos;t need changes within WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769994</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-17 12:46:13 -0800</bug_when>
    <thetext>Attachment 174827 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/platform/network/qt/AuthenticationChallenge.h:43:  Tab found; better to use spaces  [whitespace/tab] [1]
Source/WebCore/platform/network/soup/AuthenticationChallenge.h:45:  Tab found; better to use spaces  [whitespace/tab] [1]
Source/WebCore/platform/network/win/AuthenticationChallenge.h:41:  Tab found; better to use spaces  [whitespace/tab] [1]
Total errors found: 3 in 11 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769995</commentid>
    <comment_count>9</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 12:55:14 -0800</bug_when>
    <thetext>Replaced tabs locally.  As long as the rest of EWS passes, I won&apos;t reupload for that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770001</commentid>
    <comment_count>10</comment_count>
      <attachid>174827</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-11-17 13:16:56 -0800</bug_when>
    <thetext>Comment on attachment 174827
Patch v2 - Probably need one more round at EWS

Attachment 174827 did not pass win-ews (win):
Output: http://queues.webkit.org/results/14876374</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770015</commentid>
    <comment_count>11</comment_count>
      <attachid>174829</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 14:36:53 -0800</bug_when>
    <thetext>Created attachment 174829
Patch v3 - Hopefully last shot at EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770017</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-17 14:38:29 -0800</bug_when>
    <thetext>Attachment 174829 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/platform/network/cf/AuthenticationCF.cpp:56:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebCore/platform/network/cf/AuthenticationCF.cpp:57:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebCore/platform/network/cf/AuthenticationCF.cpp:64:  Tab found; better to use spaces  [whitespace/tab] [1]
Source/WebCore/platform/network/cf/AuthenticationCF.cpp:77:  Tab found; better to use spaces  [whitespace/tab] [1]
Total errors found: 4 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770018</commentid>
    <comment_count>13</comment_count>
      <attachid>174829</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-11-17 15:08:32 -0800</bug_when>
    <thetext>Comment on attachment 174829
Patch v3 - Hopefully last shot at EWS

Attachment 174829 did not pass win-ews (win):
Output: http://queues.webkit.org/results/14879295</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770022</commentid>
    <comment_count>14</comment_count>
      <attachid>174830</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 15:31:09 -0800</bug_when>
    <thetext>Created attachment 174830
Patch v4 - Come on Windows, you can do it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770023</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-17 15:33:04 -0800</bug_when>
    <thetext>Attachment 174830 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/platform/network/cf/AuthenticationCF.cpp:56:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebCore/platform/network/cf/AuthenticationCF.cpp:57:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebKit/win/WebURLAuthenticationChallenge.cpp:151:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Total errors found: 3 in 14 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770027</commentid>
    <comment_count>16</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 15:55:16 -0800</bug_when>
    <thetext>With EWS finally satisfied, marking r?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770028</commentid>
    <comment_count>17</comment_count>
      <attachid>174830</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-11-17 16:00:35 -0800</bug_when>
    <thetext>Comment on attachment 174830
Patch v4 - Come on Windows, you can do it.

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

&gt; Source/WebCore/platform/network/AuthenticationChallengeBase.cpp:50
&gt; +    , m_identifier(0)

Seems this constructor should take the identifier as an argument.

&gt; Source/WebCore/platform/network/AuthenticationChallengeBase.cpp:87
&gt; +    m_identifier = 0;

Why need this one field be zeroed out explicitly, but not others, such as m_error?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770032</commentid>
    <comment_count>18</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 16:43:45 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; (From update of attachment 174830 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=174830&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/network/AuthenticationChallengeBase.cpp:50
&gt; &gt; +    , m_identifier(0)
&gt; 
&gt; Seems this constructor should take the identifier as an argument.

Eventually it might.

But for now the usefulness of the identifier is tied up directly with creation from a platform authentication challenge.  This will be clear in https://bugs.webkit.org/show_bug.cgi?id=102592

&gt; 
&gt; &gt; Source/WebCore/platform/network/AuthenticationChallengeBase.cpp:87
&gt; &gt; +    m_identifier = 0;
&gt; 
&gt; Why need this one field be zeroed out explicitly, but not others, such as m_error?

I&apos;ll leave this m_identifier = 0; out of this patch and re-add it with the patch upcoming in https://bugs.webkit.org/show_bug.cgi?id=102592 along with a more thorough nulling-out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770034</commentid>
    <comment_count>19</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-17 16:46:56 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/135055</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770136</commentid>
    <comment_count>20</comment_count>
      <attachid>174830</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-18 09:00:33 -0800</bug_when>
    <thetext>Comment on attachment 174830
Patch v4 - Come on Windows, you can do it.

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

&gt; Source/WebCore/platform/network/AuthenticationChallengeBase.cpp:35
&gt; +    , m_identifier(0)

Historically, the Chromium port has made an effort to keep identifiers like this out of WebCore because they are usually a concern of multiprocess code an not a concern of WebCore.  Would it be possible to keep these WebKit2-only concerns in the WebKit2 layer so as not to add complexity to ports that don&apos;t care to use WebKit2?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770159</commentid>
    <comment_count>21</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-18 11:39:53 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; (From update of attachment 174830 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=174830&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/network/AuthenticationChallengeBase.cpp:35
&gt; &gt; +    , m_identifier(0)
&gt; 
&gt; Historically, the Chromium port has made an effort to keep identifiers like this out of WebCore because they are usually a concern of multiprocess code an not a concern of WebCore.

We&apos;ve done a lot of the same in WebKit2.

&gt; Would it be possible to keep these WebKit2-only concerns in the WebKit2 layer so as not to add complexity to ports that don&apos;t care to use WebKit2?

Each situation should probably be viewed on its own merits.

In WebKit2&apos;s CoreIPC we commonly pass WebCore types over the wire, and there&apos;s been plenty of periodic work to make changes in WebCore to support this.

The WebCore/platform directly is both an interface layer to adapt platforms to WebCore and a support layer to provide those ports the support they need for their goals.  Especially since the frequency of AuthenticationChallenges is so low and there&apos;s basically no risk for performance or memory usage issues, it seemed reasonable to advance in this manner.

Especially compared to some of the much larger and more turbulent refactorings in the past that were solely to support one port&apos;s IPC architecture, I&apos;m not sure what the big deal is about this one.

If you feel strongly about it I can revisit and put the identifier member in each of the relevant ports AuthenticationChallenge.h/cpps.  But I&apos;m not sure how that is better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770171</commentid>
    <comment_count>22</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-18 12:32:34 -0800</bug_when>
    <thetext>&gt; I&apos;m not sure what the big deal is about this one.

Oh, I don&apos;t think it&apos;s such a big deal.  It&apos;s just a design pattern that we consciously try to avoid, and I wanted to make sure we were all on the same page.  It sounds like you agree with the principle in general.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>770172</commentid>
    <comment_count>23</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-11-18 12:41:18 -0800</bug_when>
    <thetext>(In reply to comment #22)
&gt; &gt; I&apos;m not sure what the big deal is about this one.
&gt; 
&gt; Oh, I don&apos;t think it&apos;s such a big deal.  It&apos;s just a design pattern that we consciously try to avoid, and I wanted to make sure we were all on the same page.  It sounds like you agree with the principle in general.

I think we agree in general.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>809136</commentid>
    <comment_count>24</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-01-17 00:19:42 -0800</bug_when>
    <thetext>&gt; Historically, the Chromium port has made an effort to keep identifiers like this out of WebCore because they are usually a concern of multiprocess code an not a concern of WebCore.  Would it be possible to keep these WebKit2-only concerns in the WebKit2 layer so as not to add complexity to ports that don&apos;t care to use WebKit2?

Yes, I agree. In fact, WebKit2 already uses a better technique when exchanging AuthenticationChallenges between WebProcess and UI Process. A transient ID is generated just for IPC, and is not part of AuthenticationChallenge.

I&apos;ll work on a patch that removes the identifier from AuthenticationChallenge. This patch will also make NetworkProcess IPC more efficient, as we won&apos;t be sending an unchanged AuthenticationChallenge in responses.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174824</attachid>
            <date>2012-11-17 11:51:21 -0800</date>
            <delta_ts>2012-11-17 12:44:34 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>9371</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1NTk2NjlhLi42MDVhZjEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEg
QEAKKzIwMTItMTEtMTcgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIEFkZCBhbiBpbnRlZ2VyIGlkZW50aWZpZXIgZmllbGQgdG8gQXV0aGVudGljYXRpb25DaGFs
bGVuZ2VCYXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTAyNTkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVGhpcyBpcyB0byBzdXBwb3J0IGxpbmtpbmcgdHdvIGRpZmZlcmVudCBjaGFsbGVuZ2VzIHRo
YXQgbWlnaHQgbm90IGNvbXBhcmUgYXMgZXF1YWwgYnV0IHRoYXQgCisgICAgICAgIHJlcHJlc2Vu
dCB0aGUgc2FtZSBsb2dpY2FsIGF1dGhlbnRpY2F0aW9uIGNoYWxsZW5nZS4KKworICAgICAgICBP
bmUgZXhhbXBsZSBpcyBpbiBhbiBJUEMgZW52aXJvbm1lbnQgd2hlcmUgdGhlIHBsYXRmb3JtIGNo
YWxsZW5nZSBjYW4gb25seSBleGlzdCBpbiBvbmUgcHJvY2Vzcy4KKworICAgICAgICBObyBuZXcg
dGVzdHMgKFBsYXRmb3JtIHN1cHBvcnQsIG5vIGVmZmVjdCBpbiB0ZXN0ZWQgY29uZmlncykuCisK
KyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6bnVsbGlmeSk6IENs
ZWFyIHRoZSBtX2lkZW50aWZpZXIuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9BdXRoZW50
aWNhdGlvbkNoYWxsZW5nZUJhc2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlQmFzZTo6aWRlbnRpZmllcik6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3Jr
L2NmL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29y
ay9tYWMvQXV0aGVudGljYXRpb25NYWMubW06CisgICAgICAgIChXZWJDb3JlOjpnZW5lcmF0ZVVu
aXF1ZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVu
Z2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKTogR2VuZXJhdGUgYSBuZXcgdW5pcXVlIGlkZW50
aWZpZXIgd2hlbmV2ZXIKKyAgICAgICAgICBjb25zdHJ1Y3RpbmcgYSBjaGFsbGVuZ2UgZnJvbSBh
biBOU1VSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLgorCiAyMDEyLTExLTE2ICBTaGVyaWZmIEJv
dCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBy
b2xsaW5nIG91dCByMTM0ODE3LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5l
eHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCBiOTMwN2FkLi4wMDQ0
OGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtNjI5LDcgKzYyOSw3IEBAIF9fWk43V2ViQ29y
ZTIzQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UyM2NhbGN1bGF0ZVF1b3RhRm9yT3JpZ2luRVBLTlNf
MTRTZWN1cml0eU9yCiBfX1pON1dlYkNvcmUyM0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlMjNjYWxj
dWxhdGVVc2FnZUZvck9yaWdpbkVQS05TXzE0U2VjdXJpdHlPcmlnaW5FUngKIF9fWk43V2ViQ29y
ZTIzQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UyNnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2luRVBL
TlNfMTRTZWN1cml0eU9yaWdpbkV4CiBfX1pON1dlYkNvcmUyM0FwcGxpY2F0aW9uQ2FjaGVTdG9y
YWdlNWVtcHR5RXYKLV9fWk43V2ViQ29yZTIzQXV0aGVudGljYXRpb25DaGFsbGVuZ2VDMUVSS05T
XzE1UHJvdGVjdGlvblNwYWNlRVJLTlNfMTBDcmVkZW50aWFsRWpSS05TXzE2UmVzb3VyY2VSZXNw
b25zZUVSS05TXzEzUmVzb3VyY2VFcnJvckUKK19fWk43V2ViQ29yZTIzQXV0aGVudGljYXRpb25D
aGFsbGVuZ2VDMUVSS05TXzE1UHJvdGVjdGlvblNwYWNlRVJLTlNfMTBDcmVkZW50aWFsRWpSS05T
XzE2UmVzb3VyY2VSZXNwb25zZUVSS05TXzEzUmVzb3VyY2VFcnJvckV5CiBfX1pON1dlYkNvcmUy
M2NyZWF0ZUZyYWdtZW50RnJvbU5vZGVzRVBOU184RG9jdW1lbnRFUktOM1dURjZWZWN0b3JJUE5T
XzROb2RlRUxtMEVFRQogX19aTjdXZWJDb3JlMjNkYXRhRm9yVVJMQ29tcG9uZW50VHlwZUVQNU5T
VVJMbAogX19aTjdXZWJDb3JlMjNkZWNvZGVIb3N0TmFtZVdpdGhSYW5nZUVQOE5TU3RyaW5nOF9O
U1JhbmdlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZS5jcHAKaW5kZXggZGY4MDQ0MS4uZWEwNDUy
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9BdXRoZW50aWNh
dGlvbkNoYWxsZW5nZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcApAQCAtMzIsNiArMzIsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6OkF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlQmFzZSgpCiAgICAgOiBtX2lzTnVsbCh0cnVlKQogICAgICwgbV9wcmV2aW91
c0ZhaWx1cmVDb3VudCgwKQorICAgICwgbV9pZGVudGlmaWVyKDApCiB7CiB9CiAKQEAgLTQ2LDYg
KzQ3LDcgQEAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlOjpBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZUJhc2UoY29uc3QgUHJvdGVjdGlvblNwYWNlJgogICAgICwgbV9wcmV2aW91c0ZhaWx1cmVD
b3VudChwcmV2aW91c0ZhaWx1cmVDb3VudCkKICAgICAsIG1fZmFpbHVyZVJlc3BvbnNlKHJlc3Bv
bnNlKQogICAgICwgbV9lcnJvcihlcnJvcikKKyAgICAsIG1faWRlbnRpZmllcigwKQogewogfQog
CkBAIC04Miw2ICs4NCw3IEBAIGJvb2wgQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlOjppc051
bGwoKSBjb25zdAogdm9pZCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6Om51bGxpZnkoKQog
ewogICAgIG1faXNOdWxsID0gdHJ1ZTsKKyAgICBtX2lkZW50aWZpZXIgPSAwOwogfQogCiBib29s
IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6Y29tcGFyZShjb25zdCBBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSYgYSwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGIpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9BdXRoZW50aWNhdGlv
bkNoYWxsZW5nZUJhc2UuaAppbmRleCA5ZDg1ODY2Li4yODY0MTVlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGljYXRpb25DaGFs
bGVuZ2VCYXNlLmgKQEAgLTQ3LDYgKzQ3LDggQEAgcHVibGljOgogICAgIAogICAgIGJvb2wgaXNO
dWxsKCkgY29uc3Q7CiAgICAgdm9pZCBudWxsaWZ5KCk7CisgICAgCisgICAgdWludDY0X3QgaWRl
bnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCiAgICAgc3RhdGljIGJv
b2wgY29tcGFyZShjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgYSwgY29uc3QgQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UmIGIpOwogCkBAIC02MCw2ICs2Miw3IEBAIHByb3RlY3RlZDoKICAg
ICB1bnNpZ25lZCBtX3ByZXZpb3VzRmFpbHVyZUNvdW50OwogICAgIFJlc291cmNlUmVzcG9uc2Ug
bV9mYWlsdXJlUmVzcG9uc2U7CiAgICAgUmVzb3VyY2VFcnJvciBtX2Vycm9yOworICAgIHVpbnQ2
NF90IG1faWRlbnRpZmllcjsKIH07CiAKIGlubGluZSBib29sIG9wZXJhdG9yPT0oY29uc3QgQXV0
aGVudGljYXRpb25DaGFsbGVuZ2UmIGEsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBi
KSB7IHJldHVybiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6OmNvbXBhcmUoYSwgYik7IH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0
aGVudGljYXRpb25DaGFsbGVuZ2UuaAppbmRleCAxMDllZGU4Li5iY2VmZDA5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0F1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRoZW50aWNh
dGlvbkNoYWxsZW5nZS5oCkBAIC00OSw3ICs0OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNs
YXNzIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlIDogcHVibGljIEF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlQmFzZSB7CiBwdWJsaWM6CiAgICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoKSB7fQotICAg
IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlv
blNwYWNlLCBjb25zdCBDcmVkZW50aWFsJiBwcm9wb3NlZENyZWRlbnRpYWwsIHVuc2lnbmVkIHBy
ZXZpb3VzRmFpbHVyZUNvdW50LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29u
c3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpOworICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNv
bnN0IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNlLCBjb25zdCBDcmVkZW50aWFsJiBw
cm9wb3NlZENyZWRlbnRpYWwsIHVuc2lnbmVkIHByZXZpb3VzRmFpbHVyZUNvdW50LCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIHVp
bnQ2NF90IGlkZW50aWZpZXIpOwogI2lmIFVTRShDRk5FVFdPUkspCiAgICAgQXV0aGVudGljYXRp
b25DaGFsbGVuZ2UoQ0ZVUkxBdXRoQ2hhbGxlbmdlUmVmLCBBdXRoZW50aWNhdGlvbkNsaWVudCop
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9BdXRo
ZW50aWNhdGlvbk1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL0F1
dGhlbnRpY2F0aW9uTWFjLm1tCmluZGV4IDA1MDI2ODkuLjYyOGQ3NDYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL0F1dGhlbnRpY2F0aW9uTWFjLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL0F1dGhlbnRpY2F0aW9uTWFj
Lm1tCkBAIC0xNzAsMTggKzE3MCwyNSBAQCBOU1VSTENyZWRlbnRpYWwgKm1hYyhjb25zdCBDcmVk
ZW50aWFsJiBjb3JlQ3JlZGVudGlhbCkKIE5TU3RyaW5nICogY29uc3QgTlNVUkxBdXRoZW50aWNh
dGlvbk1ldGhvZE5UTE0gPSBAIk5TVVJMQXV0aGVudGljYXRpb25NZXRob2ROVExNIjsKICNlbmRp
ZgogCitzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVVbmlxdWVJZGVudGlmaWVyKCkKK3sKKyAgICBz
dGF0aWMgdWludDY0X3QgdW5pcXVlSWRlbnRpZmllcjsKKyAgICByZXR1cm4gKyt1bmlxdWVJZGVu
dGlmaWVyOworfQogCiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZTo6QXV0aGVudGljYXRpb25DaGFs
bGVuZ2UoY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQ3JlZGVudGlhbCYg
cHJvcG9zZWRDcmVkZW50aWFsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIHByZXZpb3VzRmFpbHVyZUNvdW50LAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90
IGlkZW50aWZpZXIpCiAgICAgOiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UocHJvdGVjdGlv
blNwYWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3Bvc2VkQ3JlZGVu
dGlhbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2aW91c0ZhaWx1cmVD
b3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcikKIHsKKyAgICBtX2lkZW50aWZpZXIg
PSBpZGVudGlmaWVyOwogfQogCiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZTo6QXV0aGVudGljYXRp
b25DaGFsbGVuZ2UoTlNVUkxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSAqY2hhbGxlbmdlKQpAQCAt
MTkzLDYgKzIwMCw3IEBAIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOjpBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZShOU1VSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlICpjCiAgICAgLCBtX3NlbmRlcihb
Y2hhbGxlbmdlIHNlbmRlcl0pCiAgICAgLCBtX25zQ2hhbGxlbmdlKGNoYWxsZW5nZSkKIHsKKyAg
ICBtX2lkZW50aWZpZXIgPSBnZW5lcmF0ZVVuaXF1ZUlkZW50aWZpZXIoKTsKIH0KIAogdm9pZCBB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZTo6c2V0QXV0aGVudGljYXRpb25DbGllbnQoQXV0aGVudGlj
YXRpb25DbGllbnQqIGNsaWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBlMjNhZTQwLi4yZWNiOGMwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMTEtMTcgIEJyYWR5IEVpZHNvbiAgPGJlaWRz
b25AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBhbiBpbnRlZ2VyIGlkZW50aWZpZXIgZmllbGQg
dG8gQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAyNTkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvcGVybHkgZW5jb2RlL2RlY29kZSB0aGUgaWRlbnRp
ZmllciB3aGVuIHNlbmRpbmcgdGhlIGNoYWxsZW5nZSBvdmVyIENvcmVJUEMuCisKKyAgICAgICAg
KiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcDoKKyAgICAgICAgKENvcmVJUEM6Ojo6
ZW5jb2RlKToKKyAgICAgICAgKENvcmVJUEM6Ojo6ZGVjb2RlKToKKwogMjAxMi0xMS0xNiAgU2Ft
IFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAKICAgICAgICAgRml4IHRoZSB3aW5kb3dzIGJ1
aWxkLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENv
ZGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNw
cAppbmRleCA0OTdlYWVlLi41MTZiNjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcApAQCAtMTk1LDcgKzE5NSw3IEBAIGJvb2wgQXJndW1l
bnRDb2RlcjxIVFRQSGVhZGVyTWFwPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciogZGVjb2Rlciwg
SFRUUEhlYWRlck1hCiAKIHZvaWQgQXJndW1lbnRDb2RlcjxBdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZT46OmVuY29kZShBcmd1bWVudEVuY29kZXImIGVuY29kZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlJiBjaGFsbGVuZ2UpCiB7Ci0gICAgZW5jb2RlciA8PCBjaGFsbGVuZ2UucHJvdGVj
dGlvblNwYWNlKCkgPDwgY2hhbGxlbmdlLnByb3Bvc2VkQ3JlZGVudGlhbCgpIDw8IGNoYWxsZW5n
ZS5wcmV2aW91c0ZhaWx1cmVDb3VudCgpIDw8IGNoYWxsZW5nZS5mYWlsdXJlUmVzcG9uc2UoKSA8
PCBjaGFsbGVuZ2UuZXJyb3IoKTsKKyAgICBlbmNvZGVyIDw8IGNoYWxsZW5nZS5wcm90ZWN0aW9u
U3BhY2UoKSA8PCBjaGFsbGVuZ2UucHJvcG9zZWRDcmVkZW50aWFsKCkgPDwgY2hhbGxlbmdlLnBy
ZXZpb3VzRmFpbHVyZUNvdW50KCkgPDwgY2hhbGxlbmdlLmZhaWx1cmVSZXNwb25zZSgpIDw8IGNo
YWxsZW5nZS5lcnJvcigpIDw8IGNoYWxsZW5nZS5pZGVudGlmaWVyKCk7CiB9CiAKIGJvb2wgQXJn
dW1lbnRDb2RlcjxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZT46OmRlY29kZShBcmd1bWVudERlY29k
ZXIqIGRlY29kZXIsIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBjaGFsbGVuZ2UpCkBAIC0yMjAs
NyArMjIwLDExIEBAIGJvb2wgQXJndW1lbnRDb2RlcjxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZT46
OmRlY29kZShBcmd1bWVudERlY29kZXIqIGRlY29kZXIsIEF1CiAgICAgaWYgKCFkZWNvZGVyLT5k
ZWNvZGUoZXJyb3IpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgCi0gICAgY2hhbGxlbmdl
ID0gQXV0aGVudGljYXRpb25DaGFsbGVuZ2UocHJvdGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRl
bnRpYWwsIHByZXZpb3VzRmFpbHVyZUNvdW50LCBmYWlsdXJlUmVzcG9uc2UsIGVycm9yKTsKKyAg
ICB1aW50NjRfdCBpZGVudGlmaWVyOworICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlKGlkZW50aWZp
ZXIpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgCisgICAgY2hhbGxlbmdlID0gQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UocHJvdGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRlbnRpYWwsIHBy
ZXZpb3VzRmFpbHVyZUNvdW50LCBmYWlsdXJlUmVzcG9uc2UsIGVycm9yLCBpZGVudGlmaWVyKTsK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAo=
</data>
<flag name="commit-queue"
          id="190044"
          type_id="3"
          status="-"
          setter="webkit-ews"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174827</attachid>
            <date>2012-11-17 12:44:34 -0800</date>
            <delta_ts>2012-11-17 14:36:53 -0800</delta_ts>
            <desc>Patch v2 - Probably need one more round at EWS</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>12887</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlZGFjODY2Li41ZTE4NTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkg
QEAKKzIwMTItMTEtMTcgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIEFkZCBhbiBpbnRlZ2VyIGlkZW50aWZpZXIgZmllbGQgdG8gQXV0aGVudGljYXRpb25DaGFs
bGVuZ2VCYXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTAyNTkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVGhpcyBpcyB0byBzdXBwb3J0IGxpbmtpbmcgdHdvIGRpZmZlcmVudCBjaGFsbGVuZ2VzIHRo
YXQgbWlnaHQgbm90IGNvbXBhcmUgYXMgZXF1YWwgYnV0IHRoYXQgCisgICAgICAgIHJlcHJlc2Vu
dCB0aGUgc2FtZSBsb2dpY2FsIGF1dGhlbnRpY2F0aW9uIGNoYWxsZW5nZS4KKworICAgICAgICBP
bmUgZXhhbXBsZSBpcyBpbiBhbiBJUEMgZW52aXJvbm1lbnQgd2hlcmUgdGhlIHBsYXRmb3JtIGNo
YWxsZW5nZSBjYW4gb25seSBleGlzdCBpbiBvbmUgcHJvY2Vzcy4KKworICAgICAgICBObyBuZXcg
dGVzdHMgKFBsYXRmb3JtIHN1cHBvcnQsIG5vIGVmZmVjdCBpbiB0ZXN0ZWQgY29uZmlncykuCisK
KyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6bnVsbGlmeSk6IENs
ZWFyIHRoZSBtX2lkZW50aWZpZXIuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9BdXRoZW50
aWNhdGlvbkNoYWxsZW5nZUJhc2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlQmFzZTo6aWRlbnRpZmllcik6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3Jr
L2NmL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29y
ay9tYWMvQXV0aGVudGljYXRpb25NYWMubW06CisgICAgICAgIChXZWJDb3JlOjpnZW5lcmF0ZVVu
aXF1ZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVu
Z2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKTogR2VuZXJhdGUgYSBuZXcgdW5pcXVlIGlkZW50
aWZpZXIgd2hlbmV2ZXIKKyAgICAgICAgICBjb25zdHJ1Y3RpbmcgYSBjaGFsbGVuZ2UgZnJvbSBh
biBOU1VSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLgorCisgICAgICAgIEltcGxlbWVudCB0aGUg
bmV3IGNvbnN0cnVjdG9yIGZvcm0gZm9yIHBvcnRzIHJlbGV2YW50IHRvIFdlYktpdDI6CisgICAg
ICAgICogcGxhdGZvcm0vbmV0d29yay9xdC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oOgorICAg
ICAgICAoV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOjpB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZSk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay93aW4v
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSk6CisKIDIwMTItMTEtMTcgIEJh
bGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgogCiAgICAgICAgIFtDb29yZGluYXRl
ZCBHcmFwaGljc10gUmVzdW1lZCBhbmltYXRpb25zIGxlYXZlIGFuIG9ic29sYXRlIEdyYXBoaWNz
TGF5ZXJBbmltYXRpb24gYmVoaW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LmV4cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IGI5MzA3YWQuLjAw
NDQ4Y2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC02MjksNyArNjI5LDcgQEAgX19aTjdXZWJD
b3JlMjNBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTIzY2FsY3VsYXRlUXVvdGFGb3JPcmlnaW5FUEtO
U18xNFNlY3VyaXR5T3IKIF9fWk43V2ViQ29yZTIzQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UyM2Nh
bGN1bGF0ZVVzYWdlRm9yT3JpZ2luRVBLTlNfMTRTZWN1cml0eU9yaWdpbkVSeAogX19aTjdXZWJD
b3JlMjNBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTI2c3RvcmVVcGRhdGVkUXVvdGFGb3JPcmlnaW5F
UEtOU18xNFNlY3VyaXR5T3JpZ2luRXgKIF9fWk43V2ViQ29yZTIzQXBwbGljYXRpb25DYWNoZVN0
b3JhZ2U1ZW1wdHlFdgotX19aTjdXZWJDb3JlMjNBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUMxRVJL
TlNfMTVQcm90ZWN0aW9uU3BhY2VFUktOU18xMENyZWRlbnRpYWxFalJLTlNfMTZSZXNvdXJjZVJl
c3BvbnNlRVJLTlNfMTNSZXNvdXJjZUVycm9yRQorX19aTjdXZWJDb3JlMjNBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZUMxRVJLTlNfMTVQcm90ZWN0aW9uU3BhY2VFUktOU18xMENyZWRlbnRpYWxFalJL
TlNfMTZSZXNvdXJjZVJlc3BvbnNlRVJLTlNfMTNSZXNvdXJjZUVycm9yRXkKIF9fWk43V2ViQ29y
ZTIzY3JlYXRlRnJhZ21lbnRGcm9tTm9kZXNFUE5TXzhEb2N1bWVudEVSS04zV1RGNlZlY3RvcklQ
TlNfNE5vZGVFTG0wRUVFCiBfX1pON1dlYkNvcmUyM2RhdGFGb3JVUkxDb21wb25lbnRUeXBlRVA1
TlNVUkxsCiBfX1pON1dlYkNvcmUyM2RlY29kZUhvc3ROYW1lV2l0aFJhbmdlRVA4TlNTdHJpbmc4
X05TUmFuZ2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0
aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcAppbmRleCBkZjgwNDQxLi5lYTA0
NTJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UuY3BwCkBAIC0zMiw2ICszMiw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6QXV0aGVudGlj
YXRpb25DaGFsbGVuZ2VCYXNlKCkKICAgICA6IG1faXNOdWxsKHRydWUpCiAgICAgLCBtX3ByZXZp
b3VzRmFpbHVyZUNvdW50KDApCisgICAgLCBtX2lkZW50aWZpZXIoMCkKIHsKIH0KIApAQCAtNDYs
NiArNDcsNyBAQCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6OkF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlQmFzZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmCiAgICAgLCBtX3ByZXZpb3VzRmFpbHVy
ZUNvdW50KHByZXZpb3VzRmFpbHVyZUNvdW50KQogICAgICwgbV9mYWlsdXJlUmVzcG9uc2UocmVz
cG9uc2UpCiAgICAgLCBtX2Vycm9yKGVycm9yKQorICAgICwgbV9pZGVudGlmaWVyKDApCiB7CiB9
CiAKQEAgLTgyLDYgKzg0LDcgQEAgYm9vbCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6Omlz
TnVsbCgpIGNvbnN0CiB2b2lkIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6bnVsbGlmeSgp
CiB7CiAgICAgbV9pc051bGwgPSB0cnVlOworICAgIG1faWRlbnRpZmllciA9IDA7CiB9CiAKIGJv
b2wgQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlOjpjb21wYXJlKGNvbnN0IEF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlJiBhLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgYikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGljYXRpb25DaGFs
bGVuZ2VCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlQmFzZS5oCmluZGV4IDlkODU4NjYuLjI4NjQxNWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9BdXRoZW50aWNhdGlvbkNo
YWxsZW5nZUJhc2UuaApAQCAtNDcsNiArNDcsOCBAQCBwdWJsaWM6CiAgICAgCiAgICAgYm9vbCBp
c051bGwoKSBjb25zdDsKICAgICB2b2lkIG51bGxpZnkoKTsKKyAgICAKKyAgICB1aW50NjRfdCBp
ZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICBzdGF0aWMg
Ym9vbCBjb21wYXJlKGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBhLCBjb25zdCBBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZSYgYik7CiAKQEAgLTYwLDYgKzYyLDcgQEAgcHJvdGVjdGVkOgog
ICAgIHVuc2lnbmVkIG1fcHJldmlvdXNGYWlsdXJlQ291bnQ7CiAgICAgUmVzb3VyY2VSZXNwb25z
ZSBtX2ZhaWx1cmVSZXNwb25zZTsKICAgICBSZXNvdXJjZUVycm9yIG1fZXJyb3I7CisgICAgdWlu
dDY0X3QgbV9pZGVudGlmaWVyOwogfTsKIAogaW5saW5lIGJvb2wgb3BlcmF0b3I9PShjb25zdCBB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgYSwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2Um
IGIpIHsgcmV0dXJuIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6Y29tcGFyZShhLCBiKTsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRoZW50
aWNhdGlvbkNoYWxsZW5nZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9B
dXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oCmluZGV4IDEwOWVkZTguLjEzMTI1NTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0F1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlLmgKQEAgLTQ5LDcgKzQ5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
Y2xhc3MgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UgOiBwdWJsaWMgQXV0aGVudGljYXRpb25DaGFs
bGVuZ2VCYXNlIHsKIHB1YmxpYzoKICAgICBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSgpIHt9Ci0g
ICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0
aW9uU3BhY2UsIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwgdW5zaWduZWQg
cHJldmlvdXNGYWlsdXJlQ291bnQsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBj
b25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcik7CisgICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uo
Y29uc3QgUHJvdGVjdGlvblNwYWNlJiwgY29uc3QgQ3JlZGVudGlhbCYgcHJvcG9zZWRDcmVkZW50
aWFsLCB1bnNpZ25lZCBwcmV2aW91c0ZhaWx1cmVDb3VudCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYsIGNvbnN0IFJlc291cmNlRXJyb3ImLCB1aW50NjRfdCBpZGVudGlmaWVyKTsKICNpZiBVU0Uo
Q0ZORVRXT1JLKQogICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKENGVVJMQXV0aENoYWxsZW5n
ZVJlZiwgQXV0aGVudGljYXRpb25DbGllbnQqKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQXV0aGVudGljYXRpb25NYWMubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9BdXRoZW50aWNhdGlvbk1hYy5tbQppbmRleCAwNTAy
Njg5Li42MjhkNzQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L21hYy9BdXRoZW50aWNhdGlvbk1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL21hYy9BdXRoZW50aWNhdGlvbk1hYy5tbQpAQCAtMTcwLDE4ICsxNzAsMjUgQEAgTlNV
UkxDcmVkZW50aWFsICptYWMoY29uc3QgQ3JlZGVudGlhbCYgY29yZUNyZWRlbnRpYWwpCiBOU1N0
cmluZyAqIGNvbnN0IE5TVVJMQXV0aGVudGljYXRpb25NZXRob2ROVExNID0gQCJOU1VSTEF1dGhl
bnRpY2F0aW9uTWV0aG9kTlRMTSI7CiAjZW5kaWYKIAorc3RhdGljIHVpbnQ2NF90IGdlbmVyYXRl
VW5pcXVlSWRlbnRpZmllcigpCit7CisgICAgc3RhdGljIHVpbnQ2NF90IHVuaXF1ZUlkZW50aWZp
ZXI7CisgICAgcmV0dXJuICsrdW5pcXVlSWRlbnRpZmllcjsKK30KIAogQXV0aGVudGljYXRpb25D
aGFsbGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFByb3RlY3Rpb25TcGFjZSYg
cHJvdGVjdGlvblNwYWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBwcmV2aW91
c0ZhaWx1cmVDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBSZXNvdXJjZUVycm9yJiBl
cnJvcikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBSZXNvdXJjZUVycm9yJiBlcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1aW50NjRfdCBpZGVudGlmaWVyKQogICAgIDogQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2VCYXNlKHByb3RlY3Rpb25TcGFjZSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwcm9wb3NlZENyZWRlbnRpYWwsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcHJldmlvdXNGYWlsdXJlQ291bnQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcmVzcG9uc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZXJyb3IpCiB7CisgICAgbV9pZGVudGlmaWVyID0gaWRlbnRpZmllcjsKIH0KIAogQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKE5TVVJMQXV0aGVudGljYXRp
b25DaGFsbGVuZ2UgKmNoYWxsZW5nZSkKQEAgLTE5Myw2ICsyMDAsNyBAQCBBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoTlNVUkxBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZSAqYwogICAgICwgbV9zZW5kZXIoW2NoYWxsZW5nZSBzZW5kZXJdKQogICAgICwgbV9u
c0NoYWxsZW5nZShjaGFsbGVuZ2UpCiB7CisgICAgbV9pZGVudGlmaWVyID0gZ2VuZXJhdGVVbmlx
dWVJZGVudGlmaWVyKCk7CiB9CiAKIHZvaWQgQXV0aGVudGljYXRpb25DaGFsbGVuZ2U6OnNldEF1
dGhlbnRpY2F0aW9uQ2xpZW50KEF1dGhlbnRpY2F0aW9uQ2xpZW50KiBjbGllbnQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L0F1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L0F1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlLmgKaW5kZXggZWJiYzBjZC4uOWNmN2JhMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9xdC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvcXQvQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UuaApAQCAtMzcsOSArMzcsMTAgQEAgcHVibGljOgogICAgIHsKICAgICB9CiAKLSAgICBB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25T
cGFjZSwgY29uc3QgQ3JlZGVudGlhbCYgcHJvcG9zZWRDcmVkZW50aWFsLCB1bnNpZ25lZCBwcmV2
aW91c0ZhaWx1cmVDb3VudCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0
IFJlc291cmNlRXJyb3ImIGVycm9yKQorICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0
IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNlLCBjb25zdCBDcmVkZW50aWFsJiBwcm9w
b3NlZENyZWRlbnRpYWwsIHVuc2lnbmVkIHByZXZpb3VzRmFpbHVyZUNvdW50LCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIHVpbnQ2
NF90IGlkZW50aWZpZXIpCiAgICAgICAgIDogQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlKHBy
b3RlY3Rpb25TcGFjZSwgcHJvcG9zZWRDcmVkZW50aWFsLCBwcmV2aW91c0ZhaWx1cmVDb3VudCwg
cmVzcG9uc2UsIGVycm9yKQogICAgIHsKKwkJbV9pZGVudGlmaWVyID0gaWRlbnRpZmllcjsKICAg
ICB9CiAKICAgICBBdXRoZW50aWNhdGlvbkNsaWVudCogYXV0aGVudGljYXRpb25DbGllbnQoKSBj
b25zdCB7IHJldHVybiAwOyB9IC8vIEZJWE1FOiBJbXBsZW1lbnQhCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9BdXRoZW50aWNhdGlvbkNo
YWxsZW5nZS5oCmluZGV4IDQ4Y2Y1OTEuLjQ2NzM2OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9BdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZS5oCkBAIC0zOSw5ICszOSwxMCBAQCBwdWJsaWM6CiAgICAgewogICAgIH0KIAotICAgIEF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNw
YWNlLCBjb25zdCBDcmVkZW50aWFsJiBwcm9wb3NlZENyZWRlbnRpYWwsIHVuc2lnbmVkIHByZXZp
b3VzRmFpbHVyZUNvdW50LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3Qg
UmVzb3VyY2VFcnJvciYgZXJyb3IpCisgICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29uc3Qg
UHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UsIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bv
c2VkQ3JlZGVudGlhbCwgdW5zaWduZWQgcHJldmlvdXNGYWlsdXJlQ291bnQsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvciwgdWludDY0
X3QgaWRlbnRpZmllcikKICAgICAgICAgOiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UocHJv
dGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRlbnRpYWwsIHByZXZpb3VzRmFpbHVyZUNvdW50LCBy
ZXNwb25zZSwgZXJyb3IpCiAgICAgeworCQltX2lkZW50aWZpZXIgPSBpZGVudGlmaWVyOwogICAg
IH0KIAogICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFNvdXBTZXNzaW9uKiwgU291cE1lc3Nh
Z2UqLCBTb3VwQXV0aCosIGJvb2wgcmV0cnlpbmcsIEF1dGhlbnRpY2F0aW9uQ2xpZW50Kik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3dpbi9BdXRoZW50aWNh
dGlvbkNoYWxsZW5nZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay93aW4vQXV0
aGVudGljYXRpb25DaGFsbGVuZ2UuaAppbmRleCA3NDYzNTM5Li45ZDY4ZTk0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3dpbi9BdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvd2luL0F1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlLmgKQEAgLTM1LDkgKzM1LDEwIEBAIHB1YmxpYzoKICAgICB7CiAgICAg
fQogCi0gICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29uc3QgUHJvdGVjdGlvblNwYWNlJiBw
cm90ZWN0aW9uU3BhY2UsIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwgdW5z
aWduZWQgcHJldmlvdXNGYWlsdXJlQ291bnQsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKKyAgICBBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSwgY29uc3QgQ3JlZGVu
dGlhbCYgcHJvcG9zZWRDcmVkZW50aWFsLCB1bnNpZ25lZCBwcmV2aW91c0ZhaWx1cmVDb3VudCwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVy
cm9yLCB1aW50NjRfdCBpZGVudGlmaWVyKQogICAgICAgICA6IEF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlQmFzZShwcm90ZWN0aW9uU3BhY2UsIHByb3Bvc2VkQ3JlZGVudGlhbCwgcHJldmlvdXNGYWls
dXJlQ291bnQsIHJlc3BvbnNlLCBlcnJvcikKICAgICB7CisJCW1faWRlbnRpZmllciA9IGlkZW50
aWZpZXI7CiAgICAgfQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDE3MWE3NGEuLjg3YmY4ZWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0xMS0xNyAgQnJhZHkgRWlkc29uICA8YmVpZHNv
bkBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGFuIGludGVnZXIgaWRlbnRpZmllciBmaWVsZCB0
byBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1OTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBQcm9wZXJseSBlbmNvZGUvZGVjb2RlIHRoZSBpZGVudGlm
aWVyIHdoZW4gc2VuZGluZyB0aGUgY2hhbGxlbmdlIG92ZXIgQ29yZUlQQy4KKworICAgICAgICAq
IFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOgorICAgICAgICAoQ29yZUlQQzo6Ojpl
bmNvZGUpOgorICAgICAgICAoQ29yZUlQQzo6OjpkZWNvZGUpOgorCiAyMDEyLTExLTE3ICBCYWxh
enMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KIAogICAgICAgICA4Yml0LXVuYXdhcmUg
U3RyaW5nIHVzYWdlIGluIE5ldHNjYXBlUGx1Z2luTW9kdWxlWDExLmNwcApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAppbmRleCA0OTdlYWVlLi41
MTZiNjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50
Q29kZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzLmNwcApAQCAtMTk1LDcgKzE5NSw3IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxIVFRQSGVhZGVy
TWFwPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciogZGVjb2RlciwgSFRUUEhlYWRlck1hCiAKIHZv
aWQgQXJndW1lbnRDb2RlcjxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZT46OmVuY29kZShBcmd1bWVu
dEVuY29kZXImIGVuY29kZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBjaGFsbGVu
Z2UpCiB7Ci0gICAgZW5jb2RlciA8PCBjaGFsbGVuZ2UucHJvdGVjdGlvblNwYWNlKCkgPDwgY2hh
bGxlbmdlLnByb3Bvc2VkQ3JlZGVudGlhbCgpIDw8IGNoYWxsZW5nZS5wcmV2aW91c0ZhaWx1cmVD
b3VudCgpIDw8IGNoYWxsZW5nZS5mYWlsdXJlUmVzcG9uc2UoKSA8PCBjaGFsbGVuZ2UuZXJyb3Io
KTsKKyAgICBlbmNvZGVyIDw8IGNoYWxsZW5nZS5wcm90ZWN0aW9uU3BhY2UoKSA8PCBjaGFsbGVu
Z2UucHJvcG9zZWRDcmVkZW50aWFsKCkgPDwgY2hhbGxlbmdlLnByZXZpb3VzRmFpbHVyZUNvdW50
KCkgPDwgY2hhbGxlbmdlLmZhaWx1cmVSZXNwb25zZSgpIDw8IGNoYWxsZW5nZS5lcnJvcigpIDw8
IGNoYWxsZW5nZS5pZGVudGlmaWVyKCk7CiB9CiAKIGJvb2wgQXJndW1lbnRDb2RlcjxBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZT46OmRlY29kZShBcmd1bWVudERlY29kZXIqIGRlY29kZXIsIEF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlJiBjaGFsbGVuZ2UpCkBAIC0yMjAsNyArMjIwLDExIEBAIGJvb2wg
QXJndW1lbnRDb2RlcjxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZT46OmRlY29kZShBcmd1bWVudERl
Y29kZXIqIGRlY29kZXIsIEF1CiAgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUoZXJyb3IpKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgCi0gICAgY2hhbGxlbmdlID0gQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UocHJvdGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRlbnRpYWwsIHByZXZpb3VzRmFp
bHVyZUNvdW50LCBmYWlsdXJlUmVzcG9uc2UsIGVycm9yKTsKKyAgICB1aW50NjRfdCBpZGVudGlm
aWVyOworICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlKGlkZW50aWZpZXIpKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgCisgICAgY2hhbGxlbmdlID0gQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uo
cHJvdGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRlbnRpYWwsIHByZXZpb3VzRmFpbHVyZUNvdW50
LCBmYWlsdXJlUmVzcG9uc2UsIGVycm9yLCBpZGVudGlmaWVyKTsKICAgICByZXR1cm4gdHJ1ZTsK
IH0KIAo=
</data>
<flag name="commit-queue"
          id="190048"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174829</attachid>
            <date>2012-11-17 14:36:53 -0800</date>
            <delta_ts>2012-11-17 15:31:09 -0800</delta_ts>
            <desc>Patch v3 - Hopefully last shot at EWS</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>14892</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlZGFjODY2Li40MWNiNzdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDQg
QEAKKzIwMTItMTEtMTcgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIEFkZCBhbiBpbnRlZ2VyIGlkZW50aWZpZXIgZmllbGQgdG8gQXV0aGVudGljYXRpb25DaGFs
bGVuZ2VCYXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTAyNTkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVGhpcyBpcyB0byBzdXBwb3J0IGxpbmtpbmcgdHdvIGRpZmZlcmVudCBjaGFsbGVuZ2VzIHRo
YXQgbWlnaHQgbm90IGNvbXBhcmUgYXMgZXF1YWwgYnV0IHRoYXQgCisgICAgICAgIHJlcHJlc2Vu
dCB0aGUgc2FtZSBsb2dpY2FsIGF1dGhlbnRpY2F0aW9uIGNoYWxsZW5nZS4KKworICAgICAgICBP
bmUgZXhhbXBsZSBpcyBpbiBhbiBJUEMgZW52aXJvbm1lbnQgd2hlcmUgdGhlIHBsYXRmb3JtIGNo
YWxsZW5nZSBjYW4gb25seSBleGlzdCBpbiBvbmUgcHJvY2Vzcy4KKworICAgICAgICBObyBuZXcg
dGVzdHMgKFBsYXRmb3JtIHN1cHBvcnQsIG5vIGVmZmVjdCBpbiB0ZXN0ZWQgY29uZmlncykuCisK
KyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6bnVsbGlmeSk6IENs
ZWFyIHRoZSBtX2lkZW50aWZpZXIuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9BdXRoZW50
aWNhdGlvbkNoYWxsZW5nZUJhc2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlQmFzZTo6aWRlbnRpZmllcik6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3Jr
L2NmL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29y
ay9tYWMvQXV0aGVudGljYXRpb25NYWMubW06CisgICAgICAgIChXZWJDb3JlOjpnZW5lcmF0ZVVu
aXF1ZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVu
Z2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKTogR2VuZXJhdGUgYSBuZXcgdW5pcXVlIGlkZW50
aWZpZXIgd2hlbmV2ZXIKKyAgICAgICAgICBjb25zdHJ1Y3RpbmcgYSBjaGFsbGVuZ2UgZnJvbSBh
biBOU1VSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLgorCisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9jZi9BdXRoZW50aWNhdGlvbkNGLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdlbmVyYXRl
VW5pcXVlSWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOiBHZW5lcmF0ZSBhIG5ldyB1bmlxdWUgaWRl
bnRpZmllciB3aGVuZXZlcgorICAgICAgICAgIGNvbnN0cnVjdGluZyBhIGNoYWxsZW5nZSBmcm9t
IGEgQ0ZVUkxBdXRoQ2hhbGxlbmdlUmVmLgorCisgICAgICAgIEltcGxlbWVudCB0aGUgbmV3IGNv
bnN0cnVjdG9yIGZvcm0gZm9yIHBvcnRzIHJlbGV2YW50IHRvIFdlYktpdDI6CisgICAgICAgICog
cGxhdGZvcm0vbmV0d29yay9xdC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oOgorICAgICAgICAo
V2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOjpBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay93aW4vQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSk6CisKIDIwMTItMTEtMTcgIEJhbGF6cyBL
ZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgogCiAgICAgICAgIFtDb29yZGluYXRlZCBHcmFw
aGljc10gUmVzdW1lZCBhbmltYXRpb25zIGxlYXZlIGFuIG9ic29sYXRlIEdyYXBoaWNzTGF5ZXJB
bmltYXRpb24gYmVoaW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5p
biBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IGI5MzA3YWQuLjAwNDQ4Y2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC02MjksNyArNjI5LDcgQEAgX19aTjdXZWJDb3JlMjNB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTIzY2FsY3VsYXRlUXVvdGFGb3JPcmlnaW5FUEtOU18xNFNl
Y3VyaXR5T3IKIF9fWk43V2ViQ29yZTIzQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UyM2NhbGN1bGF0
ZVVzYWdlRm9yT3JpZ2luRVBLTlNfMTRTZWN1cml0eU9yaWdpbkVSeAogX19aTjdXZWJDb3JlMjNB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTI2c3RvcmVVcGRhdGVkUXVvdGFGb3JPcmlnaW5FUEtOU18x
NFNlY3VyaXR5T3JpZ2luRXgKIF9fWk43V2ViQ29yZTIzQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U1
ZW1wdHlFdgotX19aTjdXZWJDb3JlMjNBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUMxRVJLTlNfMTVQ
cm90ZWN0aW9uU3BhY2VFUktOU18xMENyZWRlbnRpYWxFalJLTlNfMTZSZXNvdXJjZVJlc3BvbnNl
RVJLTlNfMTNSZXNvdXJjZUVycm9yRQorX19aTjdXZWJDb3JlMjNBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZUMxRVJLTlNfMTVQcm90ZWN0aW9uU3BhY2VFUktOU18xMENyZWRlbnRpYWxFalJLTlNfMTZS
ZXNvdXJjZVJlc3BvbnNlRVJLTlNfMTNSZXNvdXJjZUVycm9yRXkKIF9fWk43V2ViQ29yZTIzY3Jl
YXRlRnJhZ21lbnRGcm9tTm9kZXNFUE5TXzhEb2N1bWVudEVSS04zV1RGNlZlY3RvcklQTlNfNE5v
ZGVFTG0wRUVFCiBfX1pON1dlYkNvcmUyM2RhdGFGb3JVUkxDb21wb25lbnRUeXBlRVA1TlNVUkxs
CiBfX1pON1dlYkNvcmUyM2RlY29kZUhvc3ROYW1lV2l0aFJhbmdlRVA4TlNTdHJpbmc4X05TUmFu
Z2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2VCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcAppbmRleCBkZjgwNDQxLi5lYTA0NTJjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9B
dXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UuY3BwCkBAIC0zMiw2ICszMiw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6QXV0aGVudGljYXRpb25D
aGFsbGVuZ2VCYXNlKCkKICAgICA6IG1faXNOdWxsKHRydWUpCiAgICAgLCBtX3ByZXZpb3VzRmFp
bHVyZUNvdW50KDApCisgICAgLCBtX2lkZW50aWZpZXIoMCkKIHsKIH0KIApAQCAtNDYsNiArNDcs
NyBAQCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
QmFzZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmCiAgICAgLCBtX3ByZXZpb3VzRmFpbHVyZUNvdW50
KHByZXZpb3VzRmFpbHVyZUNvdW50KQogICAgICwgbV9mYWlsdXJlUmVzcG9uc2UocmVzcG9uc2Up
CiAgICAgLCBtX2Vycm9yKGVycm9yKQorICAgICwgbV9pZGVudGlmaWVyKDApCiB7CiB9CiAKQEAg
LTgyLDYgKzg0LDcgQEAgYm9vbCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6OmlzTnVsbCgp
IGNvbnN0CiB2b2lkIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6bnVsbGlmeSgpCiB7CiAg
ICAgbV9pc051bGwgPSB0cnVlOworICAgIG1faWRlbnRpZmllciA9IDA7CiB9CiAKIGJvb2wgQXV0
aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlOjpjb21wYXJlKGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJiBhLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgYikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGljYXRpb25DaGFsbGVuZ2VC
YXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlQmFzZS5oCmluZGV4IDlkODU4NjYuLjI4NjQxNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9BdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZUJhc2UuaApAQCAtNDcsNiArNDcsOCBAQCBwdWJsaWM6CiAgICAgCiAgICAgYm9vbCBpc051bGwo
KSBjb25zdDsKICAgICB2b2lkIG51bGxpZnkoKTsKKyAgICAKKyAgICB1aW50NjRfdCBpZGVudGlm
aWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICBzdGF0aWMgYm9vbCBj
b21wYXJlKGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBhLCBjb25zdCBBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZSYgYik7CiAKQEAgLTYwLDYgKzYyLDcgQEAgcHJvdGVjdGVkOgogICAgIHVu
c2lnbmVkIG1fcHJldmlvdXNGYWlsdXJlQ291bnQ7CiAgICAgUmVzb3VyY2VSZXNwb25zZSBtX2Zh
aWx1cmVSZXNwb25zZTsKICAgICBSZXNvdXJjZUVycm9yIG1fZXJyb3I7CisgICAgdWludDY0X3Qg
bV9pZGVudGlmaWVyOwogfTsKIAogaW5saW5lIGJvb2wgb3BlcmF0b3I9PShjb25zdCBBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSYgYSwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGIpIHsg
cmV0dXJuIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6Y29tcGFyZShhLCBiKTsgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRoZW50aWNhdGlv
bkNGLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0aGVudGljYXRp
b25DRi5jcHAKaW5kZXggN2IxZDRmYS4uZGRmOTE1OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0aGVudGljYXRpb25DRi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRoZW50aWNhdGlvbkNGLmNwcApAQCAtNDMs
MTcgKzQzLDI1IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorc3RhdGljIHVpbnQ2NF90IGdl
bmVyYXRlVW5pcXVlSWRlbnRpZmllcigpCit7CisgICAgc3RhdGljIHVpbnQ2NF90IHVuaXF1ZUlk
ZW50aWZpZXI7CisgICAgcmV0dXJuICsrdW5pcXVlSWRlbnRpZmllcjsKK30KKwogQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFByb3RlY3Rpb25T
cGFjZSYgcHJvdGVjdGlvblNwYWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBw
cmV2aW91c0ZhaWx1cmVDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBSZXNvdXJjZUVy
cm9yJiBlcnJvcikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50NjRfdCBpZGVudGlmaWVyKQogICAgIDogQXV0
aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlKHByb3RlY3Rpb25TcGFjZSwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwcm9wb3NlZENyZWRlbnRpYWwsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcHJldmlvdXNGYWlsdXJlQ291bnQsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmVzcG9uc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZXJyb3IpCiB7CisJbV9pZGVudGlmaWVyID0gaWRlbnRpZmllcjsKIH0KIAogQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKENGVVJMQXV0aENoYWxs
ZW5nZVJlZiBjZkNoYWxsZW5nZSwKQEAgLTY2LDYgKzc0LDcgQEAgQXV0aGVudGljYXRpb25DaGFs
bGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKENGVVJMQXV0aENoYWxsZW5nZVJlZiBjZkNo
YWxsZW4KICAgICAsIG1fYXV0aGVudGljYXRpb25DbGllbnQoYXV0aGVudGljYXRpb25DbGllbnQp
CiAgICAgLCBtX2NmQ2hhbGxlbmdlKGNmQ2hhbGxlbmdlKQogeworCW1faWRlbnRpZmllciA9IGdl
bmVyYXRlVW5pcXVlSWRlbnRpZmllcigpOwogfQogCiBBdXRoZW50aWNhdGlvbkNsaWVudCogQXV0
aGVudGljYXRpb25DaGFsbGVuZ2U6OmF1dGhlbnRpY2F0aW9uQ2xpZW50KCkgY29uc3QKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UuaAppbmRleCAxMDllZGU4Li4xMzEyNTUwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRoZW50aWNhdGlvbkNo
YWxsZW5nZS5oCkBAIC00OSw3ICs0OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlIDogcHVibGljIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFz
ZSB7CiBwdWJsaWM6CiAgICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoKSB7fQotICAgIEF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNl
LCBjb25zdCBDcmVkZW50aWFsJiBwcm9wb3NlZENyZWRlbnRpYWwsIHVuc2lnbmVkIHByZXZpb3Vz
RmFpbHVyZUNvdW50LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpOworICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFBy
b3RlY3Rpb25TcGFjZSYsIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwgdW5z
aWduZWQgcHJldmlvdXNGYWlsdXJlQ291bnQsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25z
dCBSZXNvdXJjZUVycm9yJiwgdWludDY0X3QgaWRlbnRpZmllcik7CiAjaWYgVVNFKENGTkVUV09S
SykKICAgICBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShDRlVSTEF1dGhDaGFsbGVuZ2VSZWYsIEF1
dGhlbnRpY2F0aW9uQ2xpZW50Kik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvbWFjL0F1dGhlbnRpY2F0aW9uTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9tYWMvQXV0aGVudGljYXRpb25NYWMubW0KaW5kZXggMDUwMjY4OS4uNjI4
ZDc0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQXV0
aGVudGljYXRpb25NYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9t
YWMvQXV0aGVudGljYXRpb25NYWMubW0KQEAgLTE3MCwxOCArMTcwLDI1IEBAIE5TVVJMQ3JlZGVu
dGlhbCAqbWFjKGNvbnN0IENyZWRlbnRpYWwmIGNvcmVDcmVkZW50aWFsKQogTlNTdHJpbmcgKiBj
b25zdCBOU1VSTEF1dGhlbnRpY2F0aW9uTWV0aG9kTlRMTSA9IEAiTlNVUkxBdXRoZW50aWNhdGlv
bk1ldGhvZE5UTE0iOwogI2VuZGlmCiAKK3N0YXRpYyB1aW50NjRfdCBnZW5lcmF0ZVVuaXF1ZUlk
ZW50aWZpZXIoKQoreworICAgIHN0YXRpYyB1aW50NjRfdCB1bmlxdWVJZGVudGlmaWVyOworICAg
IHJldHVybiArK3VuaXF1ZUlkZW50aWZpZXI7Cit9CiAKIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
OjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rp
b25TcGFjZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBDcmVkZW50aWFsJiBwcm9wb3NlZENyZWRlbnRpYWwsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgcHJldmlvdXNGYWlsdXJl
Q291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDY0X3QgaWRlbnRpZmllcikKICAgICA6IEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlQmFzZShwcm90ZWN0aW9uU3BhY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcHJvcG9zZWRDcmVkZW50aWFsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHByZXZpb3VzRmFpbHVyZUNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHJlc3BvbnNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yKQog
eworICAgIG1faWRlbnRpZmllciA9IGlkZW50aWZpZXI7CiB9CiAKIEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShOU1VSTEF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlICpjaGFsbGVuZ2UpCkBAIC0xOTMsNiArMjAwLDcgQEAgQXV0aGVudGljYXRpb25DaGFsbGVu
Z2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKE5TVVJMQXV0aGVudGljYXRpb25DaGFsbGVuZ2Ug
KmMKICAgICAsIG1fc2VuZGVyKFtjaGFsbGVuZ2Ugc2VuZGVyXSkKICAgICAsIG1fbnNDaGFsbGVu
Z2UoY2hhbGxlbmdlKQogeworICAgIG1faWRlbnRpZmllciA9IGdlbmVyYXRlVW5pcXVlSWRlbnRp
ZmllcigpOwogfQogCiB2b2lkIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOjpzZXRBdXRoZW50aWNh
dGlvbkNsaWVudChBdXRoZW50aWNhdGlvbkNsaWVudCogY2xpZW50KQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9xdC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9xdC9BdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZS5oCmluZGV4IGViYmMwY2QuLjdkZDk1YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvcXQvQXV0aGVudGljYXRpb25DaGFsbGVuZ2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmgK
QEAgLTM3LDkgKzM3LDEwIEBAIHB1YmxpYzoKICAgICB7CiAgICAgfQogCi0gICAgQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UsIGNv
bnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwgdW5zaWduZWQgcHJldmlvdXNGYWls
dXJlQ291bnQsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJj
ZUVycm9yJiBlcnJvcikKKyAgICBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShjb25zdCBQcm90ZWN0
aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSwgY29uc3QgQ3JlZGVudGlhbCYgcHJvcG9zZWRDcmVk
ZW50aWFsLCB1bnNpZ25lZCBwcmV2aW91c0ZhaWx1cmVDb3VudCwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yLCB1aW50NjRfdCBpZGVu
dGlmaWVyKQogICAgICAgICA6IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZShwcm90ZWN0aW9u
U3BhY2UsIHByb3Bvc2VkQ3JlZGVudGlhbCwgcHJldmlvdXNGYWlsdXJlQ291bnQsIHJlc3BvbnNl
LCBlcnJvcikKICAgICB7CisgICAgICAgIG1faWRlbnRpZmllciA9IGlkZW50aWZpZXI7CiAgICAg
fQogCiAgICAgQXV0aGVudGljYXRpb25DbGllbnQqIGF1dGhlbnRpY2F0aW9uQ2xpZW50KCkgY29u
c3QgeyByZXR1cm4gMDsgfSAvLyBGSVhNRTogSW1wbGVtZW50IQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UuaAppbmRleCA0OGNmNTkxLi5mYWE2NmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFsbGVuZ2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UuaApAQCAtMzksOSArMzksMTAgQEAgcHVibGljOgogICAgIHsKICAgICB9CiAKLSAgICBBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFj
ZSwgY29uc3QgQ3JlZGVudGlhbCYgcHJvcG9zZWRDcmVkZW50aWFsLCB1bnNpZ25lZCBwcmV2aW91
c0ZhaWx1cmVDb3VudCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJl
c291cmNlRXJyb3ImIGVycm9yKQorICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFBy
b3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNlLCBjb25zdCBDcmVkZW50aWFsJiBwcm9wb3Nl
ZENyZWRlbnRpYWwsIHVuc2lnbmVkIHByZXZpb3VzRmFpbHVyZUNvdW50LCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIHVpbnQ2NF90
IGlkZW50aWZpZXIpCiAgICAgICAgIDogQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlKHByb3Rl
Y3Rpb25TcGFjZSwgcHJvcG9zZWRDcmVkZW50aWFsLCBwcmV2aW91c0ZhaWx1cmVDb3VudCwgcmVz
cG9uc2UsIGVycm9yKQogICAgIHsKKyAgICAgICAgbV9pZGVudGlmaWVyID0gaWRlbnRpZmllcjsK
ICAgICB9CiAKICAgICBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShTb3VwU2Vzc2lvbiosIFNvdXBN
ZXNzYWdlKiwgU291cEF1dGgqLCBib29sIHJldHJ5aW5nLCBBdXRoZW50aWNhdGlvbkNsaWVudCop
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay93aW4vQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvd2lu
L0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmgKaW5kZXggNzQ2MzUzOS4uMDAxNGFiOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay93aW4vQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3dpbi9BdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZS5oCkBAIC0zNSw5ICszNSwxMCBAQCBwdWJsaWM6CiAgICAgewog
ICAgIH0KIAotICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFByb3RlY3Rpb25TcGFj
ZSYgcHJvdGVjdGlvblNwYWNlLCBjb25zdCBDcmVkZW50aWFsJiBwcm9wb3NlZENyZWRlbnRpYWws
IHVuc2lnbmVkIHByZXZpb3VzRmFpbHVyZUNvdW50LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCisgICAgQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UoY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UsIGNvbnN0IENy
ZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwgdW5zaWduZWQgcHJldmlvdXNGYWlsdXJlQ291
bnQsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZUVycm9y
JiBlcnJvciwgdWludDY0X3QgaWRlbnRpZmllcikKICAgICAgICAgOiBBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZUJhc2UocHJvdGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRlbnRpYWwsIHByZXZpb3Vz
RmFpbHVyZUNvdW50LCByZXNwb25zZSwgZXJyb3IpCiAgICAgeworICAgICAgICBtX2lkZW50aWZp
ZXIgPSBpZGVudGlmaWVyOwogICAgIH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAxNzFhNzRhLi44N2Jm
OGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMTEtMTcgIEJyYWR5IEVpZHNv
biAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBhbiBpbnRlZ2VyIGlkZW50aWZp
ZXIgZmllbGQgdG8gQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAyNTkzCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvcGVybHkgZW5jb2RlL2RlY29kZSB0
aGUgaWRlbnRpZmllciB3aGVuIHNlbmRpbmcgdGhlIGNoYWxsZW5nZSBvdmVyIENvcmVJUEMuCisK
KyAgICAgICAgKiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcDoKKyAgICAgICAgKENv
cmVJUEM6Ojo6ZW5jb2RlKToKKyAgICAgICAgKENvcmVJUEM6Ojo6ZGVjb2RlKToKKwogMjAxMi0x
MS0xNyAgQmFsYXpzIEtlbGVtZW4gIDxrYmFsYXpzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgOGJp
dC11bmF3YXJlIFN0cmluZyB1c2FnZSBpbiBOZXRzY2FwZVBsdWdpbk1vZHVsZVgxMS5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3Bw
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKaW5kZXgg
NDk3ZWFlZS4uNTE2YjY4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNv
cmVBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVB
cmd1bWVudENvZGVycy5jcHAKQEAgLTE5NSw3ICsxOTUsNyBAQCBib29sIEFyZ3VtZW50Q29kZXI8
SFRUUEhlYWRlck1hcD46OmRlY29kZShBcmd1bWVudERlY29kZXIqIGRlY29kZXIsIEhUVFBIZWFk
ZXJNYQogCiB2b2lkIEFyZ3VtZW50Q29kZXI8QXV0aGVudGljYXRpb25DaGFsbGVuZ2U+OjplbmNv
ZGUoQXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZSYgY2hhbGxlbmdlKQogewotICAgIGVuY29kZXIgPDwgY2hhbGxlbmdlLnByb3RlY3Rpb25TcGFj
ZSgpIDw8IGNoYWxsZW5nZS5wcm9wb3NlZENyZWRlbnRpYWwoKSA8PCBjaGFsbGVuZ2UucHJldmlv
dXNGYWlsdXJlQ291bnQoKSA8PCBjaGFsbGVuZ2UuZmFpbHVyZVJlc3BvbnNlKCkgPDwgY2hhbGxl
bmdlLmVycm9yKCk7CisgICAgZW5jb2RlciA8PCBjaGFsbGVuZ2UucHJvdGVjdGlvblNwYWNlKCkg
PDwgY2hhbGxlbmdlLnByb3Bvc2VkQ3JlZGVudGlhbCgpIDw8IGNoYWxsZW5nZS5wcmV2aW91c0Zh
aWx1cmVDb3VudCgpIDw8IGNoYWxsZW5nZS5mYWlsdXJlUmVzcG9uc2UoKSA8PCBjaGFsbGVuZ2Uu
ZXJyb3IoKSA8PCBjaGFsbGVuZ2UuaWRlbnRpZmllcigpOwogfQogCiBib29sIEFyZ3VtZW50Q29k
ZXI8QXV0aGVudGljYXRpb25DaGFsbGVuZ2U+OjpkZWNvZGUoQXJndW1lbnREZWNvZGVyKiBkZWNv
ZGVyLCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgY2hhbGxlbmdlKQpAQCAtMjIwLDcgKzIyMCwx
MSBAQCBib29sIEFyZ3VtZW50Q29kZXI8QXV0aGVudGljYXRpb25DaGFsbGVuZ2U+OjpkZWNvZGUo
QXJndW1lbnREZWNvZGVyKiBkZWNvZGVyLCBBdQogICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlKGVy
cm9yKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIAotICAgIGNoYWxsZW5nZSA9IEF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlKHByb3RlY3Rpb25TcGFjZSwgcHJvcG9zZWRDcmVkZW50aWFsLCBw
cmV2aW91c0ZhaWx1cmVDb3VudCwgZmFpbHVyZVJlc3BvbnNlLCBlcnJvcik7CisgICAgdWludDY0
X3QgaWRlbnRpZmllcjsKKyAgICBpZiAoIWRlY29kZXItPmRlY29kZShpZGVudGlmaWVyKSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgIAorICAgIGNoYWxsZW5nZSA9IEF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKHByb3RlY3Rpb25TcGFjZSwgcHJvcG9zZWRDcmVkZW50aWFsLCBwcmV2aW91c0Zh
aWx1cmVDb3VudCwgZmFpbHVyZVJlc3BvbnNlLCBlcnJvciwgaWRlbnRpZmllcik7CiAgICAgcmV0
dXJuIHRydWU7CiB9CiAK
</data>
<flag name="commit-queue"
          id="190051"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174830</attachid>
            <date>2012-11-17 15:31:09 -0800</date>
            <delta_ts>2012-11-18 09:00:33 -0800</delta_ts>
            <desc>Patch v4 - Come on Windows, you can do it.</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>16436</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlZGFjODY2Li40MWNiNzdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDQg
QEAKKzIwMTItMTEtMTcgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIEFkZCBhbiBpbnRlZ2VyIGlkZW50aWZpZXIgZmllbGQgdG8gQXV0aGVudGljYXRpb25DaGFs
bGVuZ2VCYXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTAyNTkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVGhpcyBpcyB0byBzdXBwb3J0IGxpbmtpbmcgdHdvIGRpZmZlcmVudCBjaGFsbGVuZ2VzIHRo
YXQgbWlnaHQgbm90IGNvbXBhcmUgYXMgZXF1YWwgYnV0IHRoYXQgCisgICAgICAgIHJlcHJlc2Vu
dCB0aGUgc2FtZSBsb2dpY2FsIGF1dGhlbnRpY2F0aW9uIGNoYWxsZW5nZS4KKworICAgICAgICBP
bmUgZXhhbXBsZSBpcyBpbiBhbiBJUEMgZW52aXJvbm1lbnQgd2hlcmUgdGhlIHBsYXRmb3JtIGNo
YWxsZW5nZSBjYW4gb25seSBleGlzdCBpbiBvbmUgcHJvY2Vzcy4KKworICAgICAgICBObyBuZXcg
dGVzdHMgKFBsYXRmb3JtIHN1cHBvcnQsIG5vIGVmZmVjdCBpbiB0ZXN0ZWQgY29uZmlncykuCisK
KyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6bnVsbGlmeSk6IENs
ZWFyIHRoZSBtX2lkZW50aWZpZXIuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9BdXRoZW50
aWNhdGlvbkNoYWxsZW5nZUJhc2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlQmFzZTo6aWRlbnRpZmllcik6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3Jr
L2NmL0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29y
ay9tYWMvQXV0aGVudGljYXRpb25NYWMubW06CisgICAgICAgIChXZWJDb3JlOjpnZW5lcmF0ZVVu
aXF1ZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVu
Z2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKTogR2VuZXJhdGUgYSBuZXcgdW5pcXVlIGlkZW50
aWZpZXIgd2hlbmV2ZXIKKyAgICAgICAgICBjb25zdHJ1Y3RpbmcgYSBjaGFsbGVuZ2UgZnJvbSBh
biBOU1VSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLgorCisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9jZi9BdXRoZW50aWNhdGlvbkNGLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdlbmVyYXRl
VW5pcXVlSWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOiBHZW5lcmF0ZSBhIG5ldyB1bmlxdWUgaWRl
bnRpZmllciB3aGVuZXZlcgorICAgICAgICAgIGNvbnN0cnVjdGluZyBhIGNoYWxsZW5nZSBmcm9t
IGEgQ0ZVUkxBdXRoQ2hhbGxlbmdlUmVmLgorCisgICAgICAgIEltcGxlbWVudCB0aGUgbmV3IGNv
bnN0cnVjdG9yIGZvcm0gZm9yIHBvcnRzIHJlbGV2YW50IHRvIFdlYktpdDI6CisgICAgICAgICog
cGxhdGZvcm0vbmV0d29yay9xdC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oOgorICAgICAgICAo
V2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOjpBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay93aW4vQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSk6CisKIDIwMTItMTEtMTcgIEJhbGF6cyBL
ZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgogCiAgICAgICAgIFtDb29yZGluYXRlZCBHcmFw
aGljc10gUmVzdW1lZCBhbmltYXRpb25zIGxlYXZlIGFuIG9ic29sYXRlIEdyYXBoaWNzTGF5ZXJB
bmltYXRpb24gYmVoaW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5p
biBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IGI5MzA3YWQuLjAwNDQ4Y2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC02MjksNyArNjI5LDcgQEAgX19aTjdXZWJDb3JlMjNB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTIzY2FsY3VsYXRlUXVvdGFGb3JPcmlnaW5FUEtOU18xNFNl
Y3VyaXR5T3IKIF9fWk43V2ViQ29yZTIzQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UyM2NhbGN1bGF0
ZVVzYWdlRm9yT3JpZ2luRVBLTlNfMTRTZWN1cml0eU9yaWdpbkVSeAogX19aTjdXZWJDb3JlMjNB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTI2c3RvcmVVcGRhdGVkUXVvdGFGb3JPcmlnaW5FUEtOU18x
NFNlY3VyaXR5T3JpZ2luRXgKIF9fWk43V2ViQ29yZTIzQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U1
ZW1wdHlFdgotX19aTjdXZWJDb3JlMjNBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUMxRVJLTlNfMTVQ
cm90ZWN0aW9uU3BhY2VFUktOU18xMENyZWRlbnRpYWxFalJLTlNfMTZSZXNvdXJjZVJlc3BvbnNl
RVJLTlNfMTNSZXNvdXJjZUVycm9yRQorX19aTjdXZWJDb3JlMjNBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZUMxRVJLTlNfMTVQcm90ZWN0aW9uU3BhY2VFUktOU18xMENyZWRlbnRpYWxFalJLTlNfMTZS
ZXNvdXJjZVJlc3BvbnNlRVJLTlNfMTNSZXNvdXJjZUVycm9yRXkKIF9fWk43V2ViQ29yZTIzY3Jl
YXRlRnJhZ21lbnRGcm9tTm9kZXNFUE5TXzhEb2N1bWVudEVSS04zV1RGNlZlY3RvcklQTlNfNE5v
ZGVFTG0wRUVFCiBfX1pON1dlYkNvcmUyM2RhdGFGb3JVUkxDb21wb25lbnRUeXBlRVA1TlNVUkxs
CiBfX1pON1dlYkNvcmUyM2RlY29kZUhvc3ROYW1lV2l0aFJhbmdlRVA4TlNTdHJpbmc4X05TUmFu
Z2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2VCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcAppbmRleCBkZjgwNDQxLi5lYTA0NTJjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9B
dXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UuY3BwCkBAIC0zMiw2ICszMiw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6QXV0aGVudGljYXRpb25D
aGFsbGVuZ2VCYXNlKCkKICAgICA6IG1faXNOdWxsKHRydWUpCiAgICAgLCBtX3ByZXZpb3VzRmFp
bHVyZUNvdW50KDApCisgICAgLCBtX2lkZW50aWZpZXIoMCkKIHsKIH0KIApAQCAtNDYsNiArNDcs
NyBAQCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
QmFzZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmCiAgICAgLCBtX3ByZXZpb3VzRmFpbHVyZUNvdW50
KHByZXZpb3VzRmFpbHVyZUNvdW50KQogICAgICwgbV9mYWlsdXJlUmVzcG9uc2UocmVzcG9uc2Up
CiAgICAgLCBtX2Vycm9yKGVycm9yKQorICAgICwgbV9pZGVudGlmaWVyKDApCiB7CiB9CiAKQEAg
LTgyLDYgKzg0LDcgQEAgYm9vbCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2U6OmlzTnVsbCgp
IGNvbnN0CiB2b2lkIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6bnVsbGlmeSgpCiB7CiAg
ICAgbV9pc051bGwgPSB0cnVlOworICAgIG1faWRlbnRpZmllciA9IDA7CiB9CiAKIGJvb2wgQXV0
aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlOjpjb21wYXJlKGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJiBhLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgYikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGljYXRpb25DaGFsbGVuZ2VC
YXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0F1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlQmFzZS5oCmluZGV4IDlkODU4NjYuLjI4NjQxNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9BdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZUJhc2UuaApAQCAtNDcsNiArNDcsOCBAQCBwdWJsaWM6CiAgICAgCiAgICAgYm9vbCBpc051bGwo
KSBjb25zdDsKICAgICB2b2lkIG51bGxpZnkoKTsKKyAgICAKKyAgICB1aW50NjRfdCBpZGVudGlm
aWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICBzdGF0aWMgYm9vbCBj
b21wYXJlKGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBhLCBjb25zdCBBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZSYgYik7CiAKQEAgLTYwLDYgKzYyLDcgQEAgcHJvdGVjdGVkOgogICAgIHVu
c2lnbmVkIG1fcHJldmlvdXNGYWlsdXJlQ291bnQ7CiAgICAgUmVzb3VyY2VSZXNwb25zZSBtX2Zh
aWx1cmVSZXNwb25zZTsKICAgICBSZXNvdXJjZUVycm9yIG1fZXJyb3I7CisgICAgdWludDY0X3Qg
bV9pZGVudGlmaWVyOwogfTsKIAogaW5saW5lIGJvb2wgb3BlcmF0b3I9PShjb25zdCBBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSYgYSwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGIpIHsg
cmV0dXJuIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZTo6Y29tcGFyZShhLCBiKTsgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRoZW50aWNhdGlv
bkNGLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0aGVudGljYXRp
b25DRi5jcHAKaW5kZXggN2IxZDRmYS4uZDUyNDIzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRoZW50aWNhdGlvbkNGLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0F1dGhlbnRpY2F0aW9uQ0YuY3BwCkBAIC00Mywx
NyArNDMsMjUgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitzdGF0aWMgdWludDY0X3QgZ2Vu
ZXJhdGVVbmlxdWVJZGVudGlmaWVyKCkKK3sKKyAgICBzdGF0aWMgdWludDY0X3QgdW5pcXVlSWRl
bnRpZmllcjsKKyAgICByZXR1cm4gKyt1bmlxdWVJZGVudGlmaWVyOworfQorCiBBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29uc3QgUHJvdGVjdGlvblNw
YWNlJiBwcm90ZWN0aW9uU3BhY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgQ3JlZGVudGlhbCYgcHJvcG9zZWRDcmVkZW50aWFsLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIHBy
ZXZpb3VzRmFpbHVyZUNvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90IGlkZW50aWZpZXIpCiAgICAgOiBBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UocHJvdGVjdGlvblNwYWNlLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHByb3Bvc2VkQ3JlZGVudGlhbCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwcmV2aW91c0ZhaWx1cmVDb3VudCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXNwb25zZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlcnJvcikKIHsKKyAgICBtX2lkZW50aWZpZXIgPSBpZGVudGlmaWVyOwogfQogCiBBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoQ0ZVUkxBdXRoQ2hh
bGxlbmdlUmVmIGNmQ2hhbGxlbmdlLApAQCAtNjYsNiArNzQsNyBAQCBBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoQ0ZVUkxBdXRoQ2hhbGxlbmdlUmVmIGNm
Q2hhbGxlbgogICAgICwgbV9hdXRoZW50aWNhdGlvbkNsaWVudChhdXRoZW50aWNhdGlvbkNsaWVu
dCkKICAgICAsIG1fY2ZDaGFsbGVuZ2UoY2ZDaGFsbGVuZ2UpCiB7CisgICAgbV9pZGVudGlmaWVy
ID0gZ2VuZXJhdGVVbmlxdWVJZGVudGlmaWVyKCk7CiB9CiAKIEF1dGhlbnRpY2F0aW9uQ2xpZW50
KiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZTo6YXV0aGVudGljYXRpb25DbGllbnQoKSBjb25zdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRoZW50aWNh
dGlvbkNoYWxsZW5nZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9BdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZS5oCmluZGV4IDEwOWVkZTguLjEzMTI1NTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0F1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlLmgKQEAgLTQ5LDcgKzQ5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xh
c3MgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UgOiBwdWJsaWMgQXV0aGVudGljYXRpb25DaGFsbGVu
Z2VCYXNlIHsKIHB1YmxpYzoKICAgICBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSgpIHt9Ci0gICAg
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9u
U3BhY2UsIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwgdW5zaWduZWQgcHJl
dmlvdXNGYWlsdXJlQ291bnQsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25z
dCBSZXNvdXJjZUVycm9yJiBlcnJvcik7CisgICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29u
c3QgUHJvdGVjdGlvblNwYWNlJiwgY29uc3QgQ3JlZGVudGlhbCYgcHJvcG9zZWRDcmVkZW50aWFs
LCB1bnNpZ25lZCBwcmV2aW91c0ZhaWx1cmVDb3VudCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IGNvbnN0IFJlc291cmNlRXJyb3ImLCB1aW50NjRfdCBpZGVudGlmaWVyKTsKICNpZiBVU0UoQ0ZO
RVRXT1JLKQogICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKENGVVJMQXV0aENoYWxsZW5nZVJl
ZiwgQXV0aGVudGljYXRpb25DbGllbnQqKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9tYWMvQXV0aGVudGljYXRpb25NYWMubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9BdXRoZW50aWNhdGlvbk1hYy5tbQppbmRleCAwNTAyNjg5
Li42MjhkNzQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21h
Yy9BdXRoZW50aWNhdGlvbk1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL21hYy9BdXRoZW50aWNhdGlvbk1hYy5tbQpAQCAtMTcwLDE4ICsxNzAsMjUgQEAgTlNVUkxD
cmVkZW50aWFsICptYWMoY29uc3QgQ3JlZGVudGlhbCYgY29yZUNyZWRlbnRpYWwpCiBOU1N0cmlu
ZyAqIGNvbnN0IE5TVVJMQXV0aGVudGljYXRpb25NZXRob2ROVExNID0gQCJOU1VSTEF1dGhlbnRp
Y2F0aW9uTWV0aG9kTlRMTSI7CiAjZW5kaWYKIAorc3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlVW5p
cXVlSWRlbnRpZmllcigpCit7CisgICAgc3RhdGljIHVpbnQ2NF90IHVuaXF1ZUlkZW50aWZpZXI7
CisgICAgcmV0dXJuICsrdW5pcXVlSWRlbnRpZmllcjsKK30KIAogQXV0aGVudGljYXRpb25DaGFs
bGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJv
dGVjdGlvblNwYWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVudGlhbCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBwcmV2aW91c0Zh
aWx1cmVDb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJv
cikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBSZXNvdXJjZUVycm9yJiBlcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50NjRfdCBpZGVudGlmaWVyKQogICAgIDogQXV0aGVudGljYXRp
b25DaGFsbGVuZ2VCYXNlKHByb3RlY3Rpb25TcGFjZSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBwcm9wb3NlZENyZWRlbnRpYWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcHJldmlvdXNGYWlsdXJlQ291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcmVzcG9uc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJy
b3IpCiB7CisgICAgbV9pZGVudGlmaWVyID0gaWRlbnRpZmllcjsKIH0KIAogQXV0aGVudGljYXRp
b25DaGFsbGVuZ2U6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKE5TVVJMQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UgKmNoYWxsZW5nZSkKQEAgLTE5Myw2ICsyMDAsNyBAQCBBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoTlNVUkxBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZSAqYwogICAgICwgbV9zZW5kZXIoW2NoYWxsZW5nZSBzZW5kZXJdKQogICAgICwgbV9uc0No
YWxsZW5nZShjaGFsbGVuZ2UpCiB7CisgICAgbV9pZGVudGlmaWVyID0gZ2VuZXJhdGVVbmlxdWVJ
ZGVudGlmaWVyKCk7CiB9CiAKIHZvaWQgQXV0aGVudGljYXRpb25DaGFsbGVuZ2U6OnNldEF1dGhl
bnRpY2F0aW9uQ2xpZW50KEF1dGhlbnRpY2F0aW9uQ2xpZW50KiBjbGllbnQpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L0F1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L0F1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlLmgKaW5kZXggZWJiYzBjZC4uN2RkOTViMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9xdC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvcXQvQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UuaApAQCAtMzcsOSArMzcsMTAgQEAgcHVibGljOgogICAgIHsKICAgICB9CiAKLSAgICBBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFj
ZSwgY29uc3QgQ3JlZGVudGlhbCYgcHJvcG9zZWRDcmVkZW50aWFsLCB1bnNpZ25lZCBwcmV2aW91
c0ZhaWx1cmVDb3VudCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJl
c291cmNlRXJyb3ImIGVycm9yKQorICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFBy
b3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNlLCBjb25zdCBDcmVkZW50aWFsJiBwcm9wb3Nl
ZENyZWRlbnRpYWwsIHVuc2lnbmVkIHByZXZpb3VzRmFpbHVyZUNvdW50LCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIHVpbnQ2NF90
IGlkZW50aWZpZXIpCiAgICAgICAgIDogQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlKHByb3Rl
Y3Rpb25TcGFjZSwgcHJvcG9zZWRDcmVkZW50aWFsLCBwcmV2aW91c0ZhaWx1cmVDb3VudCwgcmVz
cG9uc2UsIGVycm9yKQogICAgIHsKKyAgICAgICAgbV9pZGVudGlmaWVyID0gaWRlbnRpZmllcjsK
ICAgICB9CiAKICAgICBBdXRoZW50aWNhdGlvbkNsaWVudCogYXV0aGVudGljYXRpb25DbGllbnQo
KSBjb25zdCB7IHJldHVybiAwOyB9IC8vIEZJWE1FOiBJbXBsZW1lbnQhCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9BdXRoZW50aWNhdGlv
bkNoYWxsZW5nZS5oCmluZGV4IDQ4Y2Y1OTEuLmZhYTY2ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9BdXRoZW50aWNhdGlvbkNo
YWxsZW5nZS5oCkBAIC0zOSw5ICszOSwxMCBAQCBwdWJsaWM6CiAgICAgewogICAgIH0KIAotICAg
IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlv
blNwYWNlLCBjb25zdCBDcmVkZW50aWFsJiBwcm9wb3NlZENyZWRlbnRpYWwsIHVuc2lnbmVkIHBy
ZXZpb3VzRmFpbHVyZUNvdW50LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29u
c3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCisgICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29u
c3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UsIGNvbnN0IENyZWRlbnRpYWwmIHBy
b3Bvc2VkQ3JlZGVudGlhbCwgdW5zaWduZWQgcHJldmlvdXNGYWlsdXJlQ291bnQsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvciwgdWlu
dDY0X3QgaWRlbnRpZmllcikKICAgICAgICAgOiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2Uo
cHJvdGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRlbnRpYWwsIHByZXZpb3VzRmFpbHVyZUNvdW50
LCByZXNwb25zZSwgZXJyb3IpCiAgICAgeworICAgICAgICBtX2lkZW50aWZpZXIgPSBpZGVudGlm
aWVyOwogICAgIH0KIAogICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFNvdXBTZXNzaW9uKiwg
U291cE1lc3NhZ2UqLCBTb3VwQXV0aCosIGJvb2wgcmV0cnlpbmcsIEF1dGhlbnRpY2F0aW9uQ2xp
ZW50Kik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3dpbi9B
dXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay93aW4vQXV0aGVudGljYXRpb25DaGFsbGVuZ2UuaAppbmRleCA3NDYzNTM5Li4wMDE0YWI4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3dpbi9BdXRoZW50aWNh
dGlvbkNoYWxsZW5nZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvd2lu
L0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmgKQEAgLTM1LDkgKzM1LDEwIEBAIHB1YmxpYzoKICAg
ICB7CiAgICAgfQogCi0gICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29uc3QgUHJvdGVjdGlv
blNwYWNlJiBwcm90ZWN0aW9uU3BhY2UsIGNvbnN0IENyZWRlbnRpYWwmIHByb3Bvc2VkQ3JlZGVu
dGlhbCwgdW5zaWduZWQgcHJldmlvdXNGYWlsdXJlQ291bnQsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKKyAgICBBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSwgY29u
c3QgQ3JlZGVudGlhbCYgcHJvcG9zZWRDcmVkZW50aWFsLCB1bnNpZ25lZCBwcmV2aW91c0ZhaWx1
cmVDb3VudCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJlc291cmNl
RXJyb3ImIGVycm9yLCB1aW50NjRfdCBpZGVudGlmaWVyKQogICAgICAgICA6IEF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlQmFzZShwcm90ZWN0aW9uU3BhY2UsIHByb3Bvc2VkQ3JlZGVudGlhbCwgcHJl
dmlvdXNGYWlsdXJlQ291bnQsIHJlc3BvbnNlLCBlcnJvcikKICAgICB7CisgICAgICAgIG1faWRl
bnRpZmllciA9IGlkZW50aWZpZXI7CiAgICAgfQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC93aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCmluZGV4IDEw
ODE0NDMuLjdlZjk0YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0x
MS0xNyAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGFu
IGludGVnZXIgaWRlbnRpZmllciBmaWVsZCB0byBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2Uu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1OTMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYlVS
TEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmNwcDoKKyAgICAgICAgKFdlYlVSTEF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlOjppbml0V2l0aFByb3RlY3Rpb25TcGFjZSk6IEFkb3B0IHRoZSBuZXcgY29u
c3RydWN0b3Igd2l0aCBhIGR1bW15IGlkZW50aWZpZXIuCisKIDIwMTItMTEtMTYgIEJyZW50IEZ1
bGdoYW0gIDxiZnVsZ2hhbUB3ZWJraXQub3JnPgogCiAgICAgICAgIFtXaW5DYWlyb10gVW5yZXZp
ZXdlZCBidWlsZCBmaXggYWZ0ZXIgcjEzNDk2MC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
d2luL1dlYlVSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvd2lu
L1dlYlVSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmNwcAppbmRleCBlMTJkMGZkLi5lYWVlY2E4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJVUkxBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViVVJMQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UuY3BwCkBAIC0xNDgsNyArMTQ4LDcgQEAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBX
ZWJVUkxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZTo6aW5pdFdpdGhQcm90ZWN0aW9uU3BhY2UKICAg
ICAvLyBjb25zdHJ1Y3QgdGhlIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlIHdpdGggdGhhdCBhcyBv
YnRhaW5lZCBmcm9tIHRoZSB3ZWJTZW5kZXIKICNpZiBVU0UoQ0ZORVRXT1JLKQogICAgIG1fYXV0
aGVudGljYXRpb25DaGFsbGVuZ2UgPSBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSh3ZWJTcGFjZS0+
cHJvdGVjdGlvblNwYWNlKCksIHdlYkNyZWRlbnRpYWwtPmNyZWRlbnRpYWwoKSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzRmFpbHVyZUNvdW50LCB3ZWJSZXNw
b25zZS0+cmVzb3VyY2VSZXNwb25zZSgpLCB3ZWJFcnJvci0+cmVzb3VyY2VFcnJvcigpKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzRmFpbHVyZUNvdW50LCB3
ZWJSZXNwb25zZS0+cmVzb3VyY2VSZXNwb25zZSgpLCB3ZWJFcnJvci0+cmVzb3VyY2VFcnJvcigp
LCAwKTsKICNlbmRpZgogICAgIHJldHVybiBTX09LOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDE3MWE3NGEu
Ljg3YmY4ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0xMS0xNyAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGFuIGludGVnZXIgaWRl
bnRpZmllciBmaWVsZCB0byBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1OTMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcm9wZXJseSBlbmNvZGUvZGVj
b2RlIHRoZSBpZGVudGlmaWVyIHdoZW4gc2VuZGluZyB0aGUgY2hhbGxlbmdlIG92ZXIgQ29yZUlQ
Qy4KKworICAgICAgICAqIFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOgorICAgICAg
ICAoQ29yZUlQQzo6OjplbmNvZGUpOgorICAgICAgICAoQ29yZUlQQzo6OjpkZWNvZGUpOgorCiAy
MDEyLTExLTE3ICBCYWxhenMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KIAogICAgICAg
ICA4Yml0LXVuYXdhcmUgU3RyaW5nIHVzYWdlIGluIE5ldHNjYXBlUGx1Z2luTW9kdWxlWDExLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcApp
bmRleCA0OTdlYWVlLi41MTZiNjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2Vi
Q29yZUFyZ3VtZW50Q29kZXJzLmNwcApAQCAtMTk1LDcgKzE5NSw3IEBAIGJvb2wgQXJndW1lbnRD
b2RlcjxIVFRQSGVhZGVyTWFwPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciogZGVjb2RlciwgSFRU
UEhlYWRlck1hCiAKIHZvaWQgQXJndW1lbnRDb2RlcjxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZT46
OmVuY29kZShBcmd1bWVudEVuY29kZXImIGVuY29kZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJiBjaGFsbGVuZ2UpCiB7Ci0gICAgZW5jb2RlciA8PCBjaGFsbGVuZ2UucHJvdGVjdGlv
blNwYWNlKCkgPDwgY2hhbGxlbmdlLnByb3Bvc2VkQ3JlZGVudGlhbCgpIDw8IGNoYWxsZW5nZS5w
cmV2aW91c0ZhaWx1cmVDb3VudCgpIDw8IGNoYWxsZW5nZS5mYWlsdXJlUmVzcG9uc2UoKSA8PCBj
aGFsbGVuZ2UuZXJyb3IoKTsKKyAgICBlbmNvZGVyIDw8IGNoYWxsZW5nZS5wcm90ZWN0aW9uU3Bh
Y2UoKSA8PCBjaGFsbGVuZ2UucHJvcG9zZWRDcmVkZW50aWFsKCkgPDwgY2hhbGxlbmdlLnByZXZp
b3VzRmFpbHVyZUNvdW50KCkgPDwgY2hhbGxlbmdlLmZhaWx1cmVSZXNwb25zZSgpIDw8IGNoYWxs
ZW5nZS5lcnJvcigpIDw8IGNoYWxsZW5nZS5pZGVudGlmaWVyKCk7CiB9CiAKIGJvb2wgQXJndW1l
bnRDb2RlcjxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZT46OmRlY29kZShBcmd1bWVudERlY29kZXIq
IGRlY29kZXIsIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBjaGFsbGVuZ2UpCkBAIC0yMjAsNyAr
MjIwLDExIEBAIGJvb2wgQXJndW1lbnRDb2RlcjxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZT46OmRl
Y29kZShBcmd1bWVudERlY29kZXIqIGRlY29kZXIsIEF1CiAgICAgaWYgKCFkZWNvZGVyLT5kZWNv
ZGUoZXJyb3IpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgCi0gICAgY2hhbGxlbmdlID0g
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UocHJvdGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRlbnRp
YWwsIHByZXZpb3VzRmFpbHVyZUNvdW50LCBmYWlsdXJlUmVzcG9uc2UsIGVycm9yKTsKKyAgICB1
aW50NjRfdCBpZGVudGlmaWVyOworICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlKGlkZW50aWZpZXIp
KQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgCisgICAgY2hhbGxlbmdlID0gQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UocHJvdGVjdGlvblNwYWNlLCBwcm9wb3NlZENyZWRlbnRpYWwsIHByZXZp
b3VzRmFpbHVyZUNvdW50LCBmYWlsdXJlUmVzcG9uc2UsIGVycm9yLCBpZGVudGlmaWVyKTsKICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAo=
</data>
<flag name="review"
          id="190054"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>