<?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>85954</bug_id>
          
          <creation_ts>2012-05-08 22:27:53 -0700</creation_ts>
          <short_desc>Web Intents code only supports V8</short_desc>
          <delta_ts>2012-05-18 10:18:57 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit EFL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>85364</blocked>
    
    <blocked>86868</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>abarth</cc>
    
    <cc>d-r</cc>
    
    <cc>gbillock</cc>
    
    <cc>gustavo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>philn</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>619168</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-08 22:27:53 -0700</bug_when>
    <thetext>The current Web Intents code in WebCore only compiles with V8, not with JSC.
Support for JSC is needed so that Web Intents can be enabled for other ports such as EFL.

This will requires minor changes to the JSC bindings generator as well (similar to the changes made to the V8 bindings generator when adding support for intents).

I&apos;ll upload a patch for this soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619396</commentid>
    <comment_count>1</comment_count>
      <attachid>140921</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-09 05:14:45 -0700</bug_when>
    <thetext>Created attachment 140921
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619399</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-09 05:17:20 -0700</bug_when>
    <thetext>Attachment 140921 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;ChangeLog&apos;, u&apos;Source/WebCore/CMakeLists.tx...&quot; exit_code: 1
Source/WebCore/ChangeLog:10:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 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>619404</commentid>
    <comment_count>3</comment_count>
      <attachid>140924</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-09 05:21:10 -0700</bug_when>
    <thetext>Created attachment 140924
Patch

Fix Changelog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619541</commentid>
    <comment_count>4</comment_count>
      <attachid>140924</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-09 09:03:19 -0700</bug_when>
    <thetext>Comment on attachment 140924
Patch

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

&gt; Source/WebCore/Modules/intents/Intent.cpp:41
&gt; +static void getJSObjectPropertiesAsStringHashMap(ScriptState* scriptState, JSC::JSObject* object, WTF::HashMap&lt;String, String&gt;&amp; map)

This isn&apos;t correct.  JSC-specific code should be in WebCore/bindings/js

&gt; Source/WebCore/Modules/intents/Intent.cpp:135
&gt; +#if USE(V8)
&gt;      Dictionary extrasDictionary;
&gt;      if (options.get(&quot;extras&quot;, extrasDictionary))
&gt;          extrasDictionary.getOwnPropertiesAsStringHashMap(extras);
&gt; +#else
&gt; +    ScriptValue extraValue;
&gt; +    if (options.get(&quot;extras&quot;, extraValue))
&gt; +        if (extraValue.isObject())
&gt; +            getJSObjectPropertiesAsStringHashMap(scriptState, extraValue.jsValue().toObject(scriptState), extras);
&gt; +#endif

All these ifdefs are wrong.  The correct approach is to implement any missing script abstractions for JSC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620514</commentid>
    <comment_count>5</comment_count>
      <attachid>141156</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 06:08:27 -0700</bug_when>
    <thetext>Created attachment 141156
Patch

Take Adam Barth&apos;s feedback into consideration.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620537</commentid>
    <comment_count>6</comment_count>
      <attachid>141156</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-10 06:36:26 -0700</bug_when>
    <thetext>Comment on attachment 141156
Patch

Attachment 141156 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12663309</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620710</commentid>
    <comment_count>7</comment_count>
      <attachid>141156</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-10 10:47:32 -0700</bug_when>
    <thetext>Comment on attachment 141156
Patch

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

This patch is much better!  There are just a couple minor things below.

&gt; Source/WebCore/bindings/js/Dictionary.cpp:70
&gt; +            JSValue value = object-&gt;get(exec, *it);

What if this throws an exception?  It&apos;s possible that we want to ignore exceptions.  What does JSDictionary do with exceptions like these?

&gt; Source/WebCore/bindings/js/Dictionary.cpp:72
&gt; +                map.set(stringKey, String(value.toUString(exec).impl()));

What if this throws an exception?

&gt; Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:2839
&gt; +sub GetNativeTypeForCallbacks

Can you run run-bindings-tests --reset-results to update the references files we have checked in?  That will help us understand the effects of changing this file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620816</commentid>
    <comment_count>8</comment_count>
      <attachid>141217</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 11:54:45 -0700</bug_when>
    <thetext>Created attachment 141217
Patch

Add exception checks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620818</commentid>
    <comment_count>9</comment_count>
      <attachid>141218</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 11:55:32 -0700</bug_when>
    <thetext>Created attachment 141218
stdout output from run-bindings-tests script</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620820</commentid>
    <comment_count>10</comment_count>
      <attachid>141219</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 11:56:19 -0700</bug_when>
    <thetext>Created attachment 141219
Diff generated by run-bindings-tests script</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620834</commentid>
    <comment_count>11</comment_count>
      <attachid>141217</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-10 12:11:58 -0700</bug_when>
    <thetext>Comment on attachment 141217
Patch

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620861</commentid>
    <comment_count>12</comment_count>
      <attachid>141217</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-10 12:36:00 -0700</bug_when>
    <thetext>Comment on attachment 141217
Patch

Attachment 141217 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12664421</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620869</commentid>
    <comment_count>13</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 12:40:42 -0700</bug_when>
    <thetext>Any idea of what I need to do for ews-win? It apparently gets a linking error:

12&gt;   Creating library C:\cygwin\home\buildbot\WebKit\WebKitBuild\Debug\lib\WebKit.lib and object C:\cygwin\home\buildbot\WebKit\WebKitBuild\Debug\lib\WebKit.exp
12&gt;WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol &quot;public: __thiscall WebCore::Dictionary::Dictionary(class JSC::ExecState *,class JSC::JSValue)&quot; (??0Dictionary@WebCore@@QAE@PAVExecState@JSC@@VJSValue@3@@Z)
12&gt;C:\cygwin\home\buildbot\WebKit\WebKitBuild\Debug\bin\WebKit.dll : fatal error LNK1120: 1 unresolved externals

However, this does not make much sense to me. The Dictionary constructor in question was not modified. I merely added a new constructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620879</commentid>
    <comment_count>14</comment_count>
      <attachid>141217</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-10 12:48:47 -0700</bug_when>
    <thetext>Comment on attachment 141217
Patch

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

&gt; Source/cmake/WebKitFeatures.cmake:92
&gt; +    WEBKIT_OPTION_DEFINE(ENABLE_WEB_INTENTS &quot;Toggle Web Intents support&quot;, OFF)

Extra comma here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620883</commentid>
    <comment_count>15</comment_count>
      <attachid>141232</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 12:54:50 -0700</bug_when>
    <thetext>Created attachment 141232
Patch

Removed extra comma in CMake file. Thanks rakuco.
I still have no clue on our to make the ews-win happy though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620891</commentid>
    <comment_count>16</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-10 13:07:28 -0700</bug_when>
    <thetext>Is Dictionary.cpp in JSBindingsAllInOne.cpp ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620895</commentid>
    <comment_count>17</comment_count>
      <attachid>141235</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 13:18:13 -0700</bug_when>
    <thetext>Created attachment 141235
Patch

Add Dictionary.cpp to JSBindingsAllInOne.cpp to hopefully fix linking on Windows (Thanks Adam).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620897</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-10 13:21:47 -0700</bug_when>
    <thetext>Attachment 141235 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;ChangeLog&apos;, u&apos;Source/WebCore/CMakeLists.tx...&quot; exit_code: 1
Source/WebCore/bindings/js/JSBindingsAllInOne.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 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>620907</commentid>
    <comment_count>19</comment_count>
      <attachid>141239</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 13:38:29 -0700</bug_when>
    <thetext>Created attachment 141239
Patch

Fix style issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620943</commentid>
    <comment_count>20</comment_count>
      <attachid>141239</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-10 14:07:52 -0700</bug_when>
    <thetext>Comment on attachment 141239
Patch

Attachment 141239 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12671090</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620950</commentid>
    <comment_count>21</comment_count>
      <attachid>141248</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 14:12:16 -0700</bug_when>
    <thetext>Created attachment 141248
Patch

Add JSValue.cpp to JSBindingsAllInOne.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620990</commentid>
    <comment_count>22</comment_count>
      <attachid>141248</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-10 14:34:04 -0700</bug_when>
    <thetext>Comment on attachment 141248
Patch

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

&gt; Source/WebCore/bindings/js/JSBindingsAllInOne.cpp:156
&gt; +#include &quot;JSValue.cpp&quot;

This doesn&apos;t seem right.  JSValue is in the JavaScriptCore project, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621013</commentid>
    <comment_count>23</comment_count>
      <attachid>141248</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-10 14:44:41 -0700</bug_when>
    <thetext>Comment on attachment 141248
Patch

Attachment 141248 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12668139</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621025</commentid>
    <comment_count>24</comment_count>
      <attachid>141269</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 14:49:15 -0700</bug_when>
    <thetext>Created attachment 141269
Patch

Try to add JSScriptValue.cpp to JSBindingsAllInOne.cpp instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621060</commentid>
    <comment_count>25</comment_count>
      <attachid>141279</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-10 15:33:23 -0700</bug_when>
    <thetext>Created attachment 141279
Patch

Add reviewer name to changelogs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621080</commentid>
    <comment_count>26</comment_count>
      <attachid>141279</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-10 15:53:23 -0700</bug_when>
    <thetext>Comment on attachment 141279
Patch

Attachment 141279 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12668177</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621336</commentid>
    <comment_count>27</comment_count>
      <attachid>141340</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-11 00:20:15 -0700</bug_when>
    <thetext>Created attachment 141340
Patch

Attempt to fix build on Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621340</commentid>
    <comment_count>28</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-11 00:23:09 -0700</bug_when>
    <thetext>Attachment 141340 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;ChangeLog&apos;, u&apos;Source/JavaScriptCore/API/JS...&quot; exit_code: 1
Source/JavaScriptCore/API/JSValueRef.h:66:  The parameter name &quot;value&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 15 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>621341</commentid>
    <comment_count>29</comment_count>
      <attachid>141341</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-11 00:24:51 -0700</bug_when>
    <thetext>Created attachment 141341
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621364</commentid>
    <comment_count>30</comment_count>
      <attachid>141341</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-11 01:01:13 -0700</bug_when>
    <thetext>Comment on attachment 141341
Patch

Attachment 141341 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12664600</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621372</commentid>
    <comment_count>31</comment_count>
      <attachid>141349</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-11 01:14:28 -0700</bug_when>
    <thetext>Created attachment 141349
Patch

Another attempt to fix build on Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621571</commentid>
    <comment_count>32</comment_count>
      <attachid>141349</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-11 06:31:37 -0700</bug_when>
    <thetext>Comment on attachment 141349
Patch

All green, finally. Adding cq? flag, could someone please commit?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621591</commentid>
    <comment_count>33</comment_count>
      <attachid>141349</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-11 06:48:32 -0700</bug_when>
    <thetext>Comment on attachment 141349
Patch

Clearing flags on attachment: 141349

Committed r116763: &lt;http://trac.webkit.org/changeset/116763&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621593</commentid>
    <comment_count>34</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-11 06:48:43 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621718</commentid>
    <comment_count>35</comment_count>
      <attachid>141349</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 09:46:56 -0700</bug_when>
    <thetext>Comment on attachment 141349
Patch

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

&gt; Source/JavaScriptCore/API/JSValueRef.h:66
&gt; -JS_EXPORT JSType JSValueGetType(JSContextRef ctx, JSValueRef value);
&gt; +JS_EXPORT JSType JSValueGetType(JSContextRef ctx, JSValueRef);

This change probably wasn&apos;t necessary.  Generally we try to be careful when changing API headers.  (Although this change does look harmless.)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140921</attachid>
            <date>2012-05-09 05:14:45 -0700</date>
            <delta_ts>2012-05-09 05:21:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents.patch</filename>
            <type>text/plain</type>
            <size>10698</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAzMjY4MjM1Li5lZDBjYjky
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMDkgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA4ICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYWt1Y29Ad2Via2l0Lm9yZz4KIAogICAg
ICAgICBbQ01ha2VdIEZpbmRHU3RyZWFtZXI6IEZpeCB0aGUgYnVpbGQgd2l0aCBzdGF0aWMgV2Vi
Q29yZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggY2FkYTdjNS4uZTZhOTAyZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKQEAgLTMsNiArMyw3IEBAIFNFVChXZWJDb3JlX0lOQ0xVREVfRElSRUNUT1JJ
RVMKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9maWxlc3lzdGVtIgogICAgICIke1dFQkNP
UkVfRElSfS9Nb2R1bGVzL2dlb2xvY2F0aW9uIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVz
L2luZGV4ZWRkYiIKKyAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9pbnRlbnRzIgogICAgICIk
e1dFQkNPUkVfRElSfS9Nb2R1bGVzL3dlYmF1ZGlvIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1
bGVzL3dlYmRhdGFiYXNlIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3dlYnNvY2tldHMi
CkBAIC0yNTA3LDYgKzI1MDgsMjAgQEAgSUYgKEVOQUJMRV9XRUJfQVVESU8pCiAgICAgKQogRU5E
SUYgKCkKIAorSUYgKEVOQUJMRV9XRUJfSU5URU5UUykKKyAgICBMSVNUKEFQUEVORCBXZWJDb3Jl
X0lETF9GSUxFUworICAgICAgICBNb2R1bGVzL2ludGVudHMvRE9NV2luZG93SW50ZW50cy5pZGwK
KyAgICAgICAgTW9kdWxlcy9pbnRlbnRzL0ludGVudC5pZGwKKyAgICAgICAgTW9kdWxlcy9pbnRl
bnRzL0ludGVudFJlc3VsdENhbGxiYWNrLmlkbAorICAgICAgICBNb2R1bGVzL2ludGVudHMvTmF2
aWdhdG9ySW50ZW50cy5pZGwKKyAgICApCisgICAgTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VT
CisgICAgICAgTW9kdWxlcy9pbnRlbnRzL0ludGVudC5jcHAKKyAgICAgICBNb2R1bGVzL2ludGVu
dHMvSW50ZW50UmVxdWVzdC5jcHAKKyAgICAgICBNb2R1bGVzL2ludGVudHMvTmF2aWdhdG9ySW50
ZW50cy5jcHAgCisgICAgKQorRU5ESUYgKCkKKwogIyBNb2R1bGVzIHRoYXQgdGhlIGJpbmRpbmdz
IGdlbmVyYXRvciBzY3JpcHRzIG1heSB1c2UKIFNFVChTQ1JJUFRTX1JFU09MVkVfU1VQUExFTUVO
VEFMCiAgICAgJHtXRUJDT1JFX0RJUn0vYmluZGluZ3Mvc2NyaXB0cy9JRExQYXJzZXIucG0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCBmMTU1OTg2Li4xNDM2N2ZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAgQEAK
KzIwMTItMDUtMDkgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSB0aGUgV2ViIEludGVu
dHMgY29kZSBpbiBXZWJDb3JlIHdvcmsgd2l0aCBKU0MsIG5vdCBqdXN0IFY4CisgICAgICAgIGVu
Z2luZS4KKwkKKyAgICAgICAgVGhpcyByZXF1aXJlZCBjaGFuZ2VzIGluIHRoZSBKU0MgYmluZGlu
Z3MgZ2VuZXJhdG9yIHRvIHBhc3MKKyAgICAgICAgY2FsbGJhY2sgYXJndW1lbnRzIG9mIHR5cGUg
U2VyaWFsaXplZFNjcmlwdFZhbHVlIGFzIHJhdyBwb2ludGVycworICAgICAgICBpbnN0ZWFkIG9m
IFJlZlB0ci4gVGhpcyBtYXRjaGVzIHRoZSBjaGFuZ2UgbWFkZSB0byB0aGUgVjggYmluZGluZ3MK
KyAgICAgICAgZ2VuZXJhdG9yIGluIHIxMDQ1MzEuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4
dDoKKyAgICAgICAgKiBNb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmUpOgorICAgICAgICAoV2ViQ29yZTo6Z2V0SlNPYmplY3RQcm9wZXJ0aWVzQXNTdHJpbmdIYXNo
TWFwKToKKyAgICAgICAgKFdlYkNvcmU6OkludGVudDo6Y3JlYXRlKToKKyAgICAgICAgKiBNb2R1
bGVzL2ludGVudHMvSW50ZW50Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG06CisgICAgICAgIChBZGRJbmNsdWRlc0ZvclR5cGUpOgorICAgICAgICAoR2Vu
ZXJhdGVDYWxsYmFja0hlYWRlcik6CisgICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSW1wbGVtZW50
YXRpb24pOgorICAgICAgICAoR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcyk6CisKIDIwMTItMDUt
MDkgIFNoaW55YSBLYXdhbmFrYSAgPHNoaW55YWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFBv
c2l0aW9uIHNob3VsZCBiZSBhYmxlIHRvIGhhdmUgU2hhZG93Um9vdCBhcyBhIGNvbnRhaW5lci4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5jcHAKaW5kZXggYmZlYmE2NS4u
YjQ0OThmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5jcHAKQEAg
LTMzLDExICszMywyNiBAQAogCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgogI2luY2x1ZGUg
Ik1lc3NhZ2VQb3J0LmgiCi0jaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIKICNpbmNsdWRlICJTZXJp
YWxpemVkU2NyaXB0VmFsdWUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisjaWYgIVVTRShW
OCkKK3N0YXRpYyB2b2lkIGdldEpTT2JqZWN0UHJvcGVydGllc0FzU3RyaW5nSGFzaE1hcChTY3Jp
cHRTdGF0ZSogc2NyaXB0U3RhdGUsIEpTQzo6SlNPYmplY3QqIG9iamVjdCwgV1RGOjpIYXNoTWFw
PFN0cmluZywgU3RyaW5nPiYgbWFwKQoreworICAgIEpTQzo6UHJvcGVydHlOYW1lQXJyYXkgcHJv
cGVydHlOYW1lcyhzY3JpcHRTdGF0ZSk7CisgICAgSlNDOjpKU09iamVjdDo6Z2V0T3duUHJvcGVy
dHlOYW1lcyhvYmplY3QsIHNjcmlwdFN0YXRlLCBwcm9wZXJ0eU5hbWVzLCBKU0M6OkV4Y2x1ZGVE
b250RW51bVByb3BlcnRpZXMpOworICAgIGZvciAoSlNDOjpQcm9wZXJ0eU5hbWVBcnJheTo6Y29u
c3RfaXRlcmF0b3IgaXQgPSBwcm9wZXJ0eU5hbWVzLmJlZ2luKCk7IGl0ICE9IHByb3BlcnR5TmFt
ZXMuZW5kKCk7IGl0KyspIHsKKyAgICAgICAgU3RyaW5nIHN0cmluZ0tleShpdC0+dXN0cmluZygp
LmltcGwoKSk7CisgICAgICAgIGlmICghc3RyaW5nS2V5LmlzRW1wdHkoKSkgeworICAgICAgICAg
ICAgSlNDOjpKU1ZhbHVlIHZhbHVlID0gb2JqZWN0LT5nZXQoc2NyaXB0U3RhdGUsICppdCk7Cisg
ICAgICAgICAgICBpZiAodmFsdWUuaXNTdHJpbmcoKSkKKyAgICAgICAgICAgICAgICBtYXAuc2V0
KHN0cmluZ0tleSwgU3RyaW5nKHZhbHVlLnRvVVN0cmluZyhzY3JpcHRTdGF0ZSkuaW1wbCgpKSk7
CisgICAgICAgIH0KKyAgICB9Cit9CisjZW5kaWYKKwogUGFzc1JlZlB0cjxJbnRlbnQ+IEludGVu
dDo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgYWN0aW9uLCBjb25zdCBTdHJpbmcmIHR5cGUsIFBhc3NS
ZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBkYXRhLCBjb25zdCBNZXNzYWdlUG9ydEFycmF5
JiBwb3J0cywgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgaWYgKGFjdGlvbi5pc0VtcHR5KCkp
IHsKQEAgLTg4LDYgKzEwMyw3IEBAIFBhc3NSZWZQdHI8SW50ZW50PiBJbnRlbnQ6OmNyZWF0ZShT
Y3JpcHRTdGF0ZSogc2NyaXB0U3RhdGUsIGNvbnN0IERpY3Rpb25hcnkmIG9wCiAKICAgICBTY3Jp
cHRWYWx1ZSBkYXRhVmFsdWU7CiAgICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2Vy
aWFsaXplZERhdGE7CisjaWYgVVNFKFY4KQogICAgIGlmIChvcHRpb25zLmdldCgiZGF0YSIsIGRh
dGFWYWx1ZSkpIHsKICAgICAgICAgYm9vbCBkaWRUaHJvdyA9IGZhbHNlOwogICAgICAgICBzZXJp
YWxpemVkRGF0YSA9IGRhdGFWYWx1ZS5zZXJpYWxpemUoc2NyaXB0U3RhdGUsICZwb3J0cywgMCwg
ZGlkVGhyb3cpOwpAQCAtOTYsMTEgKzExMiwyNyBAQCBQYXNzUmVmUHRyPEludGVudD4gSW50ZW50
OjpjcmVhdGUoU2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRlLCBjb25zdCBEaWN0aW9uYXJ5JiBvcAog
ICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KICAgICB9CisjZWxzZQorICAgIGlmIChv
cHRpb25zLmdldCgiZGF0YSIsIGRhdGFWYWx1ZSkpIHsKKyAgICAgICAgc2VyaWFsaXplZERhdGEg
PSBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZShzY3JpcHRTdGF0ZSwgZGF0YVZhbHVlLmpz
VmFsdWUoKSwgJnBvcnRzLCAwKTsKKyAgICAgICAgaWYgKCFzZXJpYWxpemVkRGF0YSkgeworICAg
ICAgICAgICAgZWMgPSBEQVRBX0NMT05FX0VSUjsKKyAgICAgICAgICAgIHJldHVybiAwOworICAg
ICAgICB9CisgICAgfQorI2VuZGlmCiAKICAgICBXVEY6Okhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+
IGV4dHJhczsKKyNpZiBVU0UoVjgpCiAgICAgRGljdGlvbmFyeSBleHRyYXNEaWN0aW9uYXJ5Owog
ICAgIGlmIChvcHRpb25zLmdldCgiZXh0cmFzIiwgZXh0cmFzRGljdGlvbmFyeSkpCiAgICAgICAg
IGV4dHJhc0RpY3Rpb25hcnkuZ2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFzaE1hcChleHRyYXMp
OworI2Vsc2UKKyAgICBTY3JpcHRWYWx1ZSBleHRyYVZhbHVlOworICAgIGlmIChvcHRpb25zLmdl
dCgiZXh0cmFzIiwgZXh0cmFWYWx1ZSkpCisgICAgICAgIGlmIChleHRyYVZhbHVlLmlzT2JqZWN0
KCkpCisgICAgICAgICAgICBnZXRKU09iamVjdFByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoc2Ny
aXB0U3RhdGUsIGV4dHJhVmFsdWUuanNWYWx1ZSgpLnRvT2JqZWN0KHNjcmlwdFN0YXRlKSwgZXh0
cmFzKTsKKyNlbmRpZgogCiAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBJbnRlbnQoYWN0aW9uLCB0
eXBlLCBzZXJpYWxpemVkRGF0YS5yZWxlYXNlKCksIGNoYW5uZWxzLnJlbGVhc2UoKSwgZXh0cmFz
LCBzZXJ2aWNlVXJsKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
dGVudHMvSW50ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgK
aW5kZXggNDUwOTA5Ni4uZGZmNzA4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbnRlbnRzL0ludGVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9J
bnRlbnQuaApAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJN
ZXNzYWdlUG9ydC5oIgogI2luY2x1ZGUgIk1lc3NhZ2VQb3J0Q2hhbm5lbC5oIgorI2luY2x1ZGUg
IlNjcmlwdFN0YXRlLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYv
UGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC00Myw3ICs0NCw2
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU2NyaXB0U3RhdGU7CiBjbGFzcyBT
ZXJpYWxpemVkU2NyaXB0VmFsdWU7CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmlu
ZGV4IDliMWY3YzQuLjFmYjE3ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yNjIsNiArMjYyLDggQEAgc3ViIEFkZElu
Y2x1ZGVzRm9yVHlwZQogICAgICAgICAkaW5jbHVkZXNSZWYtPnsiSlNET01TdHJpbmdMaXN0Lmgi
fSA9IDE7CiAgICAgfSBlbHNpZiAoJHR5cGUgZXEgInVuc2lnbmVkIGxvbmdbXSIpIHsKICAgICAg
ICAgJGluY2x1ZGVzUmVmLT57Ijx3dGYvVmVjdG9yLmg+In0gPSAxOworICAgIH0gZWxzaWYgKCR0
eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAgICAgICRpbmNsdWRlc1JlZi0+
eyJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCJ9ID0gMTsKICAgICB9IGVsc2lmICgkaXNDYWxsYmFj
aykgewogICAgICAgICAkaW5jbHVkZXNSZWYtPnsiSlMke3R5cGV9LmgifSA9IDE7CiAgICAgfSBl
bHNpZiAoSXNUeXBlZEFycmF5VHlwZSgkdHlwZSkpIHsKQEAgLTI2MDQsMTEgKzI2MDYsMTEgQEAg
c3ViIEdlbmVyYXRlQ2FsbGJhY2tIZWFkZXIKICAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJD
b250ZW50LCAiICAgIENPTVBJTEVfQVNTRVJUKGZhbHNlKSIpOwogICAgICAgICAgICAgfQogCi0g
ICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHZpcnR1YWwgIiAuIEdldE5hdGl2
ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAiIC4gJGZ1bmN0aW9uLT5zaWdu
YXR1cmUtPm5hbWUgLiAiKCIpOworICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAg
ICB2aXJ0dWFsICIgLiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0
dXJlLT50eXBlKSAuICIgIiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKIAog
ICAgICAgICAgICAgbXkgQGFyZ3MgPSAoKTsKICAgICAgICAgICAgIGZvcmVhY2ggbXkgJHBhcmFt
IChAcGFyYW1zKSB7Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgk
cGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtLT5uYW1lKTsKKyAgICAgICAgICAgICAgICBwdXNo
KEBhcmdzLCBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAk
cGFyYW0tPm5hbWUpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgam9pbigiLCAiLCBAYXJncykpOwogCkBAIC0yNjgzLDcgKzI2ODUsNyBAQCBzdWIgR2Vu
ZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAg
IEFkZEluY2x1ZGVzRm9yVHlwZUluSW1wbCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSk7Ci0g
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0
aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNp
Z25hdHVyZS0+bmFtZSAuICIoIik7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxu
IiAuIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUp
IC4gIiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7
CiAKICAgICAgICAgICAgIG15IEBhcmdzID0gKCk7CiAgICAgICAgICAgICBteSBAYXJnc0NoZWNr
ID0gKCk7CkBAIC0yNjkxLDcgKzI2OTMsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVu
dGF0aW9uCiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAg
ICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7CiAgICAgICAgICAgICAgICAg
QWRkSW5jbHVkZXNGb3JUeXBlSW5JbXBsKCRwYXJhbS0+dHlwZSwgMSk7Ci0gICAgICAgICAgICAg
ICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFt
TmFtZSk7CisgICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZUZvckNhbGxi
YWNrcygkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtTmFtZSk7CiAgICAgICAgICAgICAgICAg
aWYgKCR0aGlzVHlwZSBhbmQgJHRoaXNUeXBlIGVxICRwYXJhbS0+dHlwZSkgewogICAgICAgICAg
ICAgICAgICAgICBwdXNoKEBhcmdzQ2hlY2ssIDw8RU5EKTsKICAgICBBU1NFUlQoJHtwYXJhbU5h
bWV9KTsKQEAgLTI3MTcsNiArMjcxOSw4IEBAIEVORAogICAgICAgICAgICAgICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZChqc1N0cmluZyhleGVjLCAke3BhcmFtTmFt
ZX0pKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzaWYgKCRwYXJhbS0+dHlwZSBlcSAiYm9v
bGVhbiIpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJn
cy5hcHBlbmQoanNCb29sZWFuKCR7cGFyYW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAgICAg
fSBlbHNpZiAoJHBhcmFtLT50eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAg
ICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKCRwYXJh
bU5hbWUgPyAkcGFyYW1OYW1lLT5kZXNlcmlhbGl6ZShleGVjLCBtX2RhdGEtPmdsb2JhbE9iamVj
dCgpLCAwKSA6IGpzTnVsbCgpKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAg
ICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKHRvSlMo
ZXhlYywgbV9kYXRhLT5nbG9iYWxPYmplY3QoKSwgJHtwYXJhbU5hbWV9KSk7XG4iKTsKICAgICAg
ICAgICAgICAgICB9CkBAIC0yODMyLDYgKzI4MzYsMTQgQEAgc3ViIEdldE5hdGl2ZVR5cGUKICAg
ICByZXR1cm4gIiR7dHlwZX0qIjsKIH0KIAorc3ViIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MK
K3sKKyAgICBteSAkdHlwZSA9IHNoaWZ0OworICAgIHJldHVybiAiU2VyaWFsaXplZFNjcmlwdFZh
bHVlKiIgaWYgJHR5cGUgZXEgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSI7CisKKyAgICByZXR1cm4g
R2V0TmF0aXZlVHlwZSgkdHlwZSk7Cit9CisKIHN1YiBHZXRTVkdQcm9wZXJ0eVR5cGVzCiB7CiAg
ICAgbXkgJGltcGxUeXBlID0gc2hpZnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0
RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXgg
ZThkMGI4YS4uN2JmMzA2MyAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVz
LmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtODksNiAr
ODksNyBAQCBNQUNSTyAoV0VCS0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RF
RklORShFTkFCTEVfVklERU9fVFJBQ0sgIlRvZ2dsZSBUcmFjayBzdXBwb3J0IGZvciBIVE1MNSB2
aWRlbyIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJHTCAiVG9nZ2xl
IDNEIGNhbnZhcyAoV2ViR0wpIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfV0VCX0FVRElPICJUb2dnbGUgV2ViIEF1ZGlvIHN1cHBvcnQiIE9GRikKKyAgICBX
RUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX0lOVEVOVFMgIlRvZ2dsZSBXZWIgSW50ZW50
cyBzdXBwb3J0IiwgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJfU09D
S0VUUyAiVG9nZ2xlIFdlYiBTb2NrZXRzIHN1cHBvcnQiIE9OKQogICAgIFdFQktJVF9PUFRJT05f
REVGSU5FKEVOQUJMRV9XRUJfVElNSU5HICJUb2dnbGUgV2ViIFRpbWluZyBzdXBwb3J0IiBPRkYp
CiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dPUktFUlMgIlRvZ2dsZSBXZWIgV29y
a2VycyBzdXBwb3J0IiBPRkYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFr
ZSBiL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlCmluZGV4IGNiMzg4MzkuLjNlMThiM2YgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZWNv
bmZpZy5oLmNtYWtlCkBAIC02OSw2ICs2OSw3IEBACiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfVklF
V1BPUlRfUkVGTE9XCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCR0wKICNjbWFrZWRlZmluZTAx
IEVOQUJMRV9XRUJfQVVESU8KKyNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfSU5URU5UUwogI2Nt
YWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9TT0NLRVRTCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VC
X1RJTUlORwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dPUktFUlMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140924</attachid>
            <date>2012-05-09 05:21:10 -0700</date>
            <delta_ts>2012-05-10 06:08:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents.patch</filename>
            <type>text/plain</type>
            <size>10732</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAzMjY4MjM1Li5lZDBjYjky
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMDkgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA4ICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYWt1Y29Ad2Via2l0Lm9yZz4KIAogICAg
ICAgICBbQ01ha2VdIEZpbmRHU3RyZWFtZXI6IEZpeCB0aGUgYnVpbGQgd2l0aCBzdGF0aWMgV2Vi
Q29yZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggY2FkYTdjNS4uZTZhOTAyZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKQEAgLTMsNiArMyw3IEBAIFNFVChXZWJDb3JlX0lOQ0xVREVfRElSRUNUT1JJ
RVMKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9maWxlc3lzdGVtIgogICAgICIke1dFQkNP
UkVfRElSfS9Nb2R1bGVzL2dlb2xvY2F0aW9uIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVz
L2luZGV4ZWRkYiIKKyAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9pbnRlbnRzIgogICAgICIk
e1dFQkNPUkVfRElSfS9Nb2R1bGVzL3dlYmF1ZGlvIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1
bGVzL3dlYmRhdGFiYXNlIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3dlYnNvY2tldHMi
CkBAIC0yNTA3LDYgKzI1MDgsMjAgQEAgSUYgKEVOQUJMRV9XRUJfQVVESU8pCiAgICAgKQogRU5E
SUYgKCkKIAorSUYgKEVOQUJMRV9XRUJfSU5URU5UUykKKyAgICBMSVNUKEFQUEVORCBXZWJDb3Jl
X0lETF9GSUxFUworICAgICAgICBNb2R1bGVzL2ludGVudHMvRE9NV2luZG93SW50ZW50cy5pZGwK
KyAgICAgICAgTW9kdWxlcy9pbnRlbnRzL0ludGVudC5pZGwKKyAgICAgICAgTW9kdWxlcy9pbnRl
bnRzL0ludGVudFJlc3VsdENhbGxiYWNrLmlkbAorICAgICAgICBNb2R1bGVzL2ludGVudHMvTmF2
aWdhdG9ySW50ZW50cy5pZGwKKyAgICApCisgICAgTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VT
CisgICAgICAgTW9kdWxlcy9pbnRlbnRzL0ludGVudC5jcHAKKyAgICAgICBNb2R1bGVzL2ludGVu
dHMvSW50ZW50UmVxdWVzdC5jcHAKKyAgICAgICBNb2R1bGVzL2ludGVudHMvTmF2aWdhdG9ySW50
ZW50cy5jcHAgCisgICAgKQorRU5ESUYgKCkKKwogIyBNb2R1bGVzIHRoYXQgdGhlIGJpbmRpbmdz
IGdlbmVyYXRvciBzY3JpcHRzIG1heSB1c2UKIFNFVChTQ1JJUFRTX1JFU09MVkVfU1VQUExFTUVO
VEFMCiAgICAgJHtXRUJDT1JFX0RJUn0vYmluZGluZ3Mvc2NyaXB0cy9JRExQYXJzZXIucG0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCA0NDFmNDY5Li4xYzkxOWFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAgQEAK
KzIwMTItMDUtMDkgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSB0aGUgV2ViIEludGVu
dHMgY29kZSBpbiBXZWJDb3JlIHdvcmsgd2l0aCBKU0MsIG5vdCBqdXN0IFY4CisgICAgICAgIGVu
Z2luZS4KKworICAgICAgICBUaGlzIHJlcXVpcmVkIGNoYW5nZXMgaW4gdGhlIEpTQyBiaW5kaW5n
cyBnZW5lcmF0b3IgdG8gcGFzcworICAgICAgICBjYWxsYmFjayBhcmd1bWVudHMgb2YgdHlwZSBT
ZXJpYWxpemVkU2NyaXB0VmFsdWUgYXMgcmF3IHBvaW50ZXJzCisgICAgICAgIGluc3RlYWQgb2Yg
UmVmUHRyLiBUaGlzIG1hdGNoZXMgdGhlIGNoYW5nZSBtYWRlIHRvIHRoZSBWOCBiaW5kaW5ncwor
ICAgICAgICBnZW5lcmF0b3IgaW4gcjEwNDUzMS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0
OgorICAgICAgICAqIE1vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZSk6CisgICAgICAgIChXZWJDb3JlOjpnZXRKU09iamVjdFByb3BlcnRpZXNBc1N0cmluZ0hhc2hN
YXApOgorICAgICAgICAoV2ViQ29yZTo6SW50ZW50OjpjcmVhdGUpOgorICAgICAgICAqIE1vZHVs
ZXMvaW50ZW50cy9JbnRlbnQuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbToKKyAgICAgICAgKEFkZEluY2x1ZGVzRm9yVHlwZSk6CisgICAgICAgIChHZW5l
cmF0ZUNhbGxiYWNrSGVhZGVyKToKKyAgICAgICAgKEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRh
dGlvbik6CisgICAgICAgIChHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKToKKwogMjAxMi0wNS0w
OSAgWW9zaGlmdW1pIElub3VlICA8eW9zaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtDaHJv
bWl1bV1bRm9ybXNdIEhUTUxPcHRpb25zQ29sbGVjdGlvbiBkb2Vzbid0IGhhdmUgaW5kZXhlZCBw
cm9wZXJ0aWVzIG9uIHByb3BlcnR5IGVudW1lcmF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW50ZW50cy9JbnRlbnQuY3BwCmluZGV4IGJmZWJhNjUuLmI0NDk4ZmIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCkBAIC0zMywxMSArMzMsMjYgQEAKIAogI2lu
Y2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgotI2luY2x1
ZGUgIlNjcmlwdFN0YXRlLmgiCiAjaW5jbHVkZSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgiCiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmICFVU0UoVjgpCitzdGF0aWMgdm9pZCBnZXRKU09i
amVjdFByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoU2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRlLCBK
U0M6OkpTT2JqZWN0KiBvYmplY3QsIFdURjo6SGFzaE1hcDxTdHJpbmcsIFN0cmluZz4mIG1hcCkK
K3sKKyAgICBKU0M6OlByb3BlcnR5TmFtZUFycmF5IHByb3BlcnR5TmFtZXMoc2NyaXB0U3RhdGUp
OworICAgIEpTQzo6SlNPYmplY3Q6OmdldE93blByb3BlcnR5TmFtZXMob2JqZWN0LCBzY3JpcHRT
dGF0ZSwgcHJvcGVydHlOYW1lcywgSlNDOjpFeGNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKTsKKyAg
ICBmb3IgKEpTQzo6UHJvcGVydHlOYW1lQXJyYXk6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gcHJvcGVy
dHlOYW1lcy5iZWdpbigpOyBpdCAhPSBwcm9wZXJ0eU5hbWVzLmVuZCgpOyBpdCsrKSB7CisgICAg
ICAgIFN0cmluZyBzdHJpbmdLZXkoaXQtPnVzdHJpbmcoKS5pbXBsKCkpOworICAgICAgICBpZiAo
IXN0cmluZ0tleS5pc0VtcHR5KCkpIHsKKyAgICAgICAgICAgIEpTQzo6SlNWYWx1ZSB2YWx1ZSA9
IG9iamVjdC0+Z2V0KHNjcmlwdFN0YXRlLCAqaXQpOworICAgICAgICAgICAgaWYgKHZhbHVlLmlz
U3RyaW5nKCkpCisgICAgICAgICAgICAgICAgbWFwLnNldChzdHJpbmdLZXksIFN0cmluZyh2YWx1
ZS50b1VTdHJpbmcoc2NyaXB0U3RhdGUpLmltcGwoKSkpOworICAgICAgICB9CisgICAgfQorfQor
I2VuZGlmCisKIFBhc3NSZWZQdHI8SW50ZW50PiBJbnRlbnQ6OmNyZWF0ZShjb25zdCBTdHJpbmcm
IGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0eXBlLCBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4gZGF0YSwgY29uc3QgTWVzc2FnZVBvcnRBcnJheSYgcG9ydHMsIEV4Y2VwdGlvbkNvZGUm
IGVjKQogewogICAgIGlmIChhY3Rpb24uaXNFbXB0eSgpKSB7CkBAIC04OCw2ICsxMDMsNyBAQCBQ
YXNzUmVmUHRyPEludGVudD4gSW50ZW50OjpjcmVhdGUoU2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRl
LCBjb25zdCBEaWN0aW9uYXJ5JiBvcAogCiAgICAgU2NyaXB0VmFsdWUgZGF0YVZhbHVlOwogICAg
IFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHNlcmlhbGl6ZWREYXRhOworI2lmIFVTRShW
OCkKICAgICBpZiAob3B0aW9ucy5nZXQoImRhdGEiLCBkYXRhVmFsdWUpKSB7CiAgICAgICAgIGJv
b2wgZGlkVGhyb3cgPSBmYWxzZTsKICAgICAgICAgc2VyaWFsaXplZERhdGEgPSBkYXRhVmFsdWUu
c2VyaWFsaXplKHNjcmlwdFN0YXRlLCAmcG9ydHMsIDAsIGRpZFRocm93KTsKQEAgLTk2LDExICsx
MTIsMjcgQEAgUGFzc1JlZlB0cjxJbnRlbnQ+IEludGVudDo6Y3JlYXRlKFNjcmlwdFN0YXRlKiBz
Y3JpcHRTdGF0ZSwgY29uc3QgRGljdGlvbmFyeSYgb3AKICAgICAgICAgICAgIHJldHVybiAwOwog
ICAgICAgICB9CiAgICAgfQorI2Vsc2UKKyAgICBpZiAob3B0aW9ucy5nZXQoImRhdGEiLCBkYXRh
VmFsdWUpKSB7CisgICAgICAgIHNlcmlhbGl6ZWREYXRhID0gU2VyaWFsaXplZFNjcmlwdFZhbHVl
OjpjcmVhdGUoc2NyaXB0U3RhdGUsIGRhdGFWYWx1ZS5qc1ZhbHVlKCksICZwb3J0cywgMCk7Cisg
ICAgICAgIGlmICghc2VyaWFsaXplZERhdGEpIHsKKyAgICAgICAgICAgIGVjID0gREFUQV9DTE9O
RV9FUlI7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgIH0KKyNlbmRpZgog
CiAgICAgV1RGOjpIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBleHRyYXM7CisjaWYgVVNFKFY4KQog
ICAgIERpY3Rpb25hcnkgZXh0cmFzRGljdGlvbmFyeTsKICAgICBpZiAob3B0aW9ucy5nZXQoImV4
dHJhcyIsIGV4dHJhc0RpY3Rpb25hcnkpKQogICAgICAgICBleHRyYXNEaWN0aW9uYXJ5LmdldE93
blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoZXh0cmFzKTsKKyNlbHNlCisgICAgU2NyaXB0VmFs
dWUgZXh0cmFWYWx1ZTsKKyAgICBpZiAob3B0aW9ucy5nZXQoImV4dHJhcyIsIGV4dHJhVmFsdWUp
KQorICAgICAgICBpZiAoZXh0cmFWYWx1ZS5pc09iamVjdCgpKQorICAgICAgICAgICAgZ2V0SlNP
YmplY3RQcm9wZXJ0aWVzQXNTdHJpbmdIYXNoTWFwKHNjcmlwdFN0YXRlLCBleHRyYVZhbHVlLmpz
VmFsdWUoKS50b09iamVjdChzY3JpcHRTdGF0ZSksIGV4dHJhcyk7CisjZW5kaWYKIAogICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgSW50ZW50KGFjdGlvbiwgdHlwZSwgc2VyaWFsaXplZERhdGEucmVs
ZWFzZSgpLCBjaGFubmVscy5yZWxlYXNlKCksIGV4dHJhcywgc2VydmljZVVybCkpOwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCmluZGV4IDQ1MDkwOTYuLmRmZjcwODQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKQEAgLTM1LDYgKzM1LDcg
QEAKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIKICNpbmNsdWRl
ICJNZXNzYWdlUG9ydENoYW5uZWwuaCIKKyNpbmNsdWRlICJTY3JpcHRTdGF0ZS5oIgogI2luY2x1
ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNDMsNyArNDQsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKLWNsYXNzIFNjcmlwdFN0YXRlOwogY2xhc3MgU2VyaWFsaXplZFNjcmlwdFZhbHVlOwog
CiB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCA5YjFmN2M0Li4xZmIxN2U0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQpAQCAtMjYyLDYgKzI2Miw4IEBAIHN1YiBBZGRJbmNsdWRlc0ZvclR5cGUKICAgICAgICAg
JGluY2x1ZGVzUmVmLT57IkpTRE9NU3RyaW5nTGlzdC5oIn0gPSAxOwogICAgIH0gZWxzaWYgKCR0
eXBlIGVxICJ1bnNpZ25lZCBsb25nW10iKSB7CiAgICAgICAgICRpbmNsdWRlc1JlZi0+eyI8d3Rm
L1ZlY3Rvci5oPiJ9ID0gMTsKKyAgICB9IGVsc2lmICgkdHlwZSBlcSAiU2VyaWFsaXplZFNjcmlw
dFZhbHVlIikgeworICAgICAgICAkaW5jbHVkZXNSZWYtPnsiU2VyaWFsaXplZFNjcmlwdFZhbHVl
LmgifSA9IDE7CiAgICAgfSBlbHNpZiAoJGlzQ2FsbGJhY2spIHsKICAgICAgICAgJGluY2x1ZGVz
UmVmLT57IkpTJHt0eXBlfS5oIn0gPSAxOwogICAgIH0gZWxzaWYgKElzVHlwZWRBcnJheVR5cGUo
JHR5cGUpKSB7CkBAIC0yNjA0LDExICsyNjA2LDExIEBAIHN1YiBHZW5lcmF0ZUNhbGxiYWNrSGVh
ZGVyCiAgICAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBDT01QSUxFX0FT
U0VSVChmYWxzZSkiKTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgcHVzaChAaGVhZGVy
Q29udGVudCwgIiAgICB2aXJ0dWFsICIgLiBHZXROYXRpdmVUeXBlKCRmdW5jdGlvbi0+c2lnbmF0
dXJlLT50eXBlKSAuICIgIiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKKyAg
ICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgdmlydHVhbCAiIC4gR2V0TmF0aXZl
VHlwZUZvckNhbGxiYWNrcygkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgLiAiICIgLiAkZnVu
Y3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CiAKICAgICAgICAgICAgIG15IEBhcmdzID0g
KCk7CiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewotICAgICAgICAg
ICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGUoJHBhcmFtLT50eXBlKSAuICIgIiAuICRw
YXJhbS0+bmFtZSk7CisgICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZUZv
ckNhbGxiYWNrcygkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtLT5uYW1lKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsIGpvaW4oIiwgIiwgQGFyZ3Mp
KTsKIApAQCAtMjY4Myw3ICsyNjg1LDcgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRh
dGlvbgogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBBZGRJbmNsdWRlc0ZvclR5cGVJbklt
cGwoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpOwotICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICJcbiIgLiBHZXROYXRpdmVUeXBlKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAu
ICIgJHtjbGFzc05hbWV9OjoiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIpOwor
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJcbiIgLiBHZXROYXRpdmVUeXBlRm9yQ2Fs
bGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgJHtjbGFzc05hbWV9OjoiIC4g
JGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIpOwogCiAgICAgICAgICAgICBteSBAYXJn
cyA9ICgpOwogICAgICAgICAgICAgbXkgQGFyZ3NDaGVjayA9ICgpOwpAQCAtMjY5MSw3ICsyNjkz
LDcgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgZm9y
ZWFjaCBteSAkcGFyYW0gKEBwYXJhbXMpIHsKICAgICAgICAgICAgICAgICBteSAkcGFyYW1OYW1l
ID0gJHBhcmFtLT5uYW1lOwogICAgICAgICAgICAgICAgIEFkZEluY2x1ZGVzRm9yVHlwZUluSW1w
bCgkcGFyYW0tPnR5cGUsIDEpOwotICAgICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2
ZVR5cGUoJHBhcmFtLT50eXBlKSAuICIgIiAuICRwYXJhbU5hbWUpOworICAgICAgICAgICAgICAg
IHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MoJHBhcmFtLT50eXBlKSAuICIg
IiAuICRwYXJhbU5hbWUpOwogICAgICAgICAgICAgICAgIGlmICgkdGhpc1R5cGUgYW5kICR0aGlz
VHlwZSBlcSAkcGFyYW0tPnR5cGUpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAYXJnc0No
ZWNrLCA8PEVORCk7CiAgICAgQVNTRVJUKCR7cGFyYW1OYW1lfSk7CkBAIC0yNzE3LDYgKzI3MTks
OCBAQCBFTkQKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJn
cy5hcHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4iKTsKICAgICAgICAgICAg
ICAgICB9IGVsc2lmICgkcGFyYW0tPnR5cGUgZXEgImJvb2xlYW4iKSB7CiAgICAgICAgICAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKGpzQm9vbGVhbigke3Bh
cmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgIH0gZWxzaWYgKCRwYXJhbS0+dHlwZSBl
cSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIikgeworICAgICAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCgkcGFyYW1OYW1lID8gJHBhcmFtTmFtZS0+ZGVz
ZXJpYWxpemUoZXhlYywgbV9kYXRhLT5nbG9iYWxPYmplY3QoKSwgMCkgOiBqc051bGwoKSk7XG4i
KTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIG1fZGF0YS0+Z2xvYmFsT2Jq
ZWN0KCksICR7cGFyYW1OYW1lfSkpO1xuIik7CiAgICAgICAgICAgICAgICAgfQpAQCAtMjgzMiw2
ICsyODM2LDE0IEBAIHN1YiBHZXROYXRpdmVUeXBlCiAgICAgcmV0dXJuICIke3R5cGV9KiI7CiB9
CiAKK3N1YiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzCit7CisgICAgbXkgJHR5cGUgPSBzaGlm
dDsKKyAgICByZXR1cm4gIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSoiIGlmICR0eXBlIGVxICJTZXJp
YWxpemVkU2NyaXB0VmFsdWUiOworCisgICAgcmV0dXJuIEdldE5hdGl2ZVR5cGUoJHR5cGUpOwor
fQorCiBzdWIgR2V0U1ZHUHJvcGVydHlUeXBlcwogewogICAgIG15ICRpbXBsVHlwZSA9IHNoaWZ0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlIGIvU291cmNl
L2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IGU4ZDBiOGEuLjdiZjMwNjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysgYi9Tb3VyY2UvY21h
a2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTg5LDYgKzg5LDcgQEAgTUFDUk8gKFdFQktJVF9P
UFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1ZJREVPX1RSQUNL
ICJUb2dnbGUgVHJhY2sgc3VwcG9ydCBmb3IgSFRNTDUgdmlkZW8iIE9GRikKICAgICBXRUJLSVRf
T1BUSU9OX0RFRklORShFTkFCTEVfV0VCR0wgIlRvZ2dsZSAzRCBjYW52YXMgKFdlYkdMKSBzdXBw
b3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9BVURJTyAiVG9n
Z2xlIFdlYiBBdWRpbyBzdXBwb3J0IiBPRkYpCisgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5B
QkxFX1dFQl9JTlRFTlRTICJUb2dnbGUgV2ViIEludGVudHMgc3VwcG9ydCIsIE9GRikKICAgICBX
RUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX1NPQ0tFVFMgIlRvZ2dsZSBXZWIgU29ja2V0
cyBzdXBwb3J0IiBPTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX1RJTUlO
RyAiVG9nZ2xlIFdlYiBUaW1pbmcgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVG
SU5FKEVOQUJMRV9XT1JLRVJTICJUb2dnbGUgV2ViIFdvcmtlcnMgc3VwcG9ydCIgT0ZGKQpkaWZm
IC0tZ2l0IGEvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UgYi9Tb3VyY2UvY21ha2Vjb25maWcu
aC5jbWFrZQppbmRleCBjYjM4ODM5Li4zZTE4YjNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2Vj
b25maWcuaC5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQpAQCAtNjksNiAr
NjksNyBAQAogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1ZJRVdQT1JUX1JFRkxPVwogI2NtYWtlZGVm
aW5lMDEgRU5BQkxFX1dFQkdMCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX0FVRElPCisjY21h
a2VkZWZpbmUwMSBFTkFCTEVfV0VCX0lOVEVOVFMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJf
U09DS0VUUwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9USU1JTkcKICNjbWFrZWRlZmluZTAx
IEVOQUJMRV9XT1JLRVJTCg==
</data>
<flag name="review"
          id="146943"
          type_id="1"
          status="-"
          setter="abarth"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141156</attachid>
            <date>2012-05-10 06:08:27 -0700</date>
            <delta_ts>2012-05-10 11:54:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents.patch</filename>
            <type>text/plain</type>
            <size>15304</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA2YmFiODllLi4zMGU5Njcw
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA5ICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KIAogICAgICAgICBDYWxl
bmRhciBQaWNrZXI6IEZpeCBhIGNyYXNoIGJ5IGNoYW5naW5nIGlucHV0IHR5cGUuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CmluZGV4IGMxZjEwNDUuLjZiMGE0OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBA
IC0zLDYgKzMsNyBAQCBTRVQoV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVTCiAgICAgIiR7V0VC
Q09SRV9ESVJ9L01vZHVsZXMvZmlsZXN5c3RlbSIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxl
cy9nZW9sb2NhdGlvbiIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9pbmRleGVkZGIiCisg
ICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW50ZW50cyIKICAgICAiJHtXRUJDT1JFX0RJUn0v
TW9kdWxlcy93ZWJhdWRpbyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJkYXRhYmFz
ZSIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJzb2NrZXRzIgpAQCAtMjUwNiw2ICsy
NTA3LDIwIEBAIElGIChFTkFCTEVfV0VCX0FVRElPKQogICAgICkKIEVORElGICgpCiAKK0lGIChF
TkFCTEVfV0VCX0lOVEVOVFMpCisgICAgTElTVChBUFBFTkQgV2ViQ29yZV9JRExfRklMRVMKKyAg
ICAgICAgTW9kdWxlcy9pbnRlbnRzL0RPTVdpbmRvd0ludGVudHMuaWRsCisgICAgICAgIE1vZHVs
ZXMvaW50ZW50cy9JbnRlbnQuaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnRSZXN1
bHRDYWxsYmFjay5pZGwKKyAgICAgICAgTW9kdWxlcy9pbnRlbnRzL05hdmlnYXRvckludGVudHMu
aWRsCisgICAgKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUworICAgICAgIE1vZHVs
ZXMvaW50ZW50cy9JbnRlbnQuY3BwCisgICAgICAgTW9kdWxlcy9pbnRlbnRzL0ludGVudFJlcXVl
c3QuY3BwCisgICAgICAgTW9kdWxlcy9pbnRlbnRzL05hdmlnYXRvckludGVudHMuY3BwCisgICAg
KQorRU5ESUYgKCkKKwogIyBNb2R1bGVzIHRoYXQgdGhlIGJpbmRpbmdzIGdlbmVyYXRvciBzY3Jp
cHRzIG1heSB1c2UKIFNFVChTQ1JJUFRTX1JFU09MVkVfU1VQUExFTUVOVEFMCiAgICAgJHtXRUJD
T1JFX0RJUn0vYmluZGluZ3Mvc2NyaXB0cy9JRExQYXJzZXIucG0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBhYzdh
MTVhLi40N2I1OGFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDQgQEAKKzIwMTItMDUtMTAgIENo
cmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAgICAgICBX
ZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIG5lY2Vzc2FyeSBhYnN0cmFjdGlvbiBmb3IganMg
RGljdGlvbmFyeSBhbmQgU2NyaXB0VmFsdWUgc28gdGhhdAorICAgICAgICB0aGUgV2ViIEludGVu
dHMgY29kZSBpbiBXZWJDb3JlIGNvbXBpbGVzIHdpdGggSlNDLCBub3QganVzdCBWOC4KKworICAg
ICAgICBUaGlzIHJlcXVpcmVkIGNoYW5nZXMgaW4gdGhlIEpTQyBiaW5kaW5ncyBnZW5lcmF0b3Ig
dG8gcGFzcworICAgICAgICBjYWxsYmFjayBhcmd1bWVudHMgb2YgdHlwZSBTZXJpYWxpemVkU2Ny
aXB0VmFsdWUgYXMgcmF3IHBvaW50ZXJzCisgICAgICAgIGluc3RlYWQgb2YgUmVmUHRyLiBUaGlz
IG1hdGNoZXMgdGhlIGNoYW5nZSBtYWRlIHRvIHRoZSBWOCBiaW5kaW5ncworICAgICAgICBnZW5l
cmF0b3IgaW4gcjEwNDUzMS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAq
IE1vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW50ZW50cy9J
bnRlbnQuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRpY3Rpb25hcnk6OkRpY3Rpb25hcnkpOgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpEaWN0aW9uYXJ5OjpnZXRPd25Qcm9wZXJ0aWVzQXNTdHJpbmdIYXNo
TWFwKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9EaWN0aW9uYXJ5Lmg6CisgICAgICAgIChEaWN0
aW9uYXJ5KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUpOgorICAgICAgICAoV2ViQ29y
ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5Lmg6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6aW5pdGlhbGl6ZXJPYmplY3Qp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNjcmlwdFZhbHVlOjpzZXJpYWxpemUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
ICogYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaDoKKyAgICAgICAgKFNjcmlwdFZhbHVlKToKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEFk
ZEluY2x1ZGVzRm9yVHlwZSk6CisgICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSGVhZGVyKToKKyAg
ICAgICAgKEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbik6CisgICAgICAgIChHZXROYXRp
dmVUeXBlRm9yQ2FsbGJhY2tzKToKKwogMjAxMi0wNS0wOSAgS2VudCBUYW11cmEgIDx0a2VudEBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgQ2FsZW5kYXIgUGlja2VyOiBGaXggYSBjcmFzaCBieSBj
aGFuZ2luZyBpbnB1dCB0eXBlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bnRlbnRzL0ludGVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50
LmNwcAppbmRleCBiZmViYTY1Li5iZjk1NjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ludGVudHMvSW50ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
dGVudHMvSW50ZW50LmNwcApAQCAtMzMsNyArMzMsNiBAQAogCiAjaW5jbHVkZSAiRXhjZXB0aW9u
Q29kZS5oIgogI2luY2x1ZGUgIk1lc3NhZ2VQb3J0LmgiCi0jaW5jbHVkZSAiU2NyaXB0U3RhdGUu
aCIKICNpbmNsdWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5o
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCmluZGV4IDQ1MDkwOTYu
LmRmZjcwODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRl
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKQEAgLTM1
LDYgKzM1LDcgQEAKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIK
ICNpbmNsdWRlICJNZXNzYWdlUG9ydENoYW5uZWwuaCIKKyNpbmNsdWRlICJTY3JpcHRTdGF0ZS5o
IgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNDMsNyArNDQsNiBAQAogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKLWNsYXNzIFNjcmlwdFN0YXRlOwogY2xhc3MgU2VyaWFsaXplZFNjcmlw
dFZhbHVlOwogCiB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9EaWN0aW9uYXJ5LmNwcAppbmRleCAyYzFiNzg1Li5iMTMwMDdjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcApAQCAtMzUsNiArMzUsMTEgQEAgdXNp
bmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitEaWN0aW9uYXJ5OjpE
aWN0aW9uYXJ5KCkKKyAgICA6IG1fZGljdGlvbmFyeSgwLCAwKQoreworfQorCiBEaWN0aW9uYXJ5
OjpEaWN0aW9uYXJ5KEpTQzo6RXhlY1N0YXRlKiBleGVjLCBKU0M6OkpTVmFsdWUgdmFsdWUpCiAg
ICAgOiBtX2RpY3Rpb25hcnkoZXhlYywgdmFsdWUuaXNPYmplY3QoKSA/IHZhbHVlLmdldE9iamVj
dCgpIDogMCkKIHsKQEAgLTQ5LDUgKzU0LDI3IEBAIEpTT2JqZWN0KiBEaWN0aW9uYXJ5Ojphc0pT
T2JqZWN0PE5vdGlmaWNhdGlvbj4oTm90aWZpY2F0aW9uKiBvYmplY3QpIGNvbnN0CiB9CiAjZW5k
aWYKIAorYm9vbCBEaWN0aW9uYXJ5OjpnZXRPd25Qcm9wZXJ0aWVzQXNTdHJpbmdIYXNoTWFwKFdU
Rjo6SGFzaE1hcDxTdHJpbmcsIFN0cmluZz4mIG1hcCkgY29uc3QKK3sKKyAgICBpZiAoIW1fZGlj
dGlvbmFyeS5pc1ZhbGlkKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIEpTT2JqZWN0
KiBvYmplY3QgPSAgbV9kaWN0aW9uYXJ5LmluaXRpYWxpemVyT2JqZWN0KCk7CisgICAgRXhlY1N0
YXRlKiBleGVjID0gbV9kaWN0aW9uYXJ5LmV4ZWNTdGF0ZSgpOworCisgICAgUHJvcGVydHlOYW1l
QXJyYXkgcHJvcGVydHlOYW1lcyhleGVjKTsKKyAgICBKU09iamVjdDo6Z2V0T3duUHJvcGVydHlO
YW1lcyhvYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZXMsIEV4Y2x1ZGVEb250RW51bVByb3BlcnRp
ZXMpOworICAgIGZvciAoUHJvcGVydHlOYW1lQXJyYXk6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gcHJv
cGVydHlOYW1lcy5iZWdpbigpOyBpdCAhPSBwcm9wZXJ0eU5hbWVzLmVuZCgpOyBpdCsrKSB7Cisg
ICAgICAgIFN0cmluZyBzdHJpbmdLZXkoaXQtPnVzdHJpbmcoKS5pbXBsKCkpOworICAgICAgICBp
ZiAoIXN0cmluZ0tleS5pc0VtcHR5KCkpIHsKKyAgICAgICAgICAgIEpTVmFsdWUgdmFsdWUgPSBv
YmplY3QtPmdldChleGVjLCAqaXQpOworICAgICAgICAgICAgaWYgKHZhbHVlLmlzU3RyaW5nKCkp
CisgICAgICAgICAgICAgICAgbWFwLnNldChzdHJpbmdLZXksIFN0cmluZyh2YWx1ZS50b1VTdHJp
bmcoZXhlYykuaW1wbCgpKSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsK
K30KKwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlv
bmFyeS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oCmluZGV4IGQ0
MWNiMTcuLmNjY2VlZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0Rp
Y3Rpb25hcnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgK
QEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJKU0V2ZW50TGlzdGVuZXIuaCIKICNpbmNsdWRl
ICJOb3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSA8
d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVkZSA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgRXZlbnRMaXN0
ZW5lcjsKIAogY2xhc3MgRGljdGlvbmFyeSB7CiBwdWJsaWM6CisgICAgRGljdGlvbmFyeSgpOwog
ICAgIERpY3Rpb25hcnkoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUpOwogCiAgICAgLy8g
UmV0dXJucyB0cnVlIGlmIGEgdmFsdWUgd2FzIGZvdW5kIGZvciB0aGUgcHJvdmlkZWQgcHJvcGVy
dHkuCkBAIC01OCw2ICs2MCw3IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaXNPYmplY3QoKSBjb25z
dCB7IHJldHVybiBtX2RpY3Rpb25hcnkuaXNWYWxpZCgpOyB9CiAgICAgYm9vbCBpc1VuZGVmaW5l
ZE9yTnVsbCgpIGNvbnN0IHsgcmV0dXJuICFtX2RpY3Rpb25hcnkuaXNWYWxpZCgpOyB9CisgICAg
Ym9vbCBnZXRPd25Qcm9wZXJ0aWVzQXNTdHJpbmdIYXNoTWFwKFdURjo6SGFzaE1hcDxTdHJpbmcs
IFN0cmluZz4mKSBjb25zdDsKICAgICBib29sIGdldFdpdGhVbmRlZmluZWRPck51bGxDaGVjayhj
b25zdCBTdHJpbmcmLCBTdHJpbmcmKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBm
YWxzZTsgfQogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNEaWN0aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlv
bmFyeS5jcHAKaW5kZXggZWFkMjk3YS4uZTQ2MWMyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29u
ZmlnLmgiCiAjaW5jbHVkZSAiSlNEaWN0aW9uYXJ5LmgiCiAKKyNpbmNsdWRlICJEaWN0aW9uYXJ5
LmgiCiAjaW5jbHVkZSAiSlNET01XaW5kb3cuaCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0Lmgi
CiAjaW5jbHVkZSAiSlNNZXNzYWdlUG9ydEN1c3RvbS5oIgpAQCAtOTEsNiArOTIsMTEgQEAgdm9p
ZCBKU0RpY3Rpb25hcnk6OmNvbnZlcnRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFs
dWUsIGRvdWJsZSYgcmVzdWx0KQogICAgIHJlc3VsdCA9IHZhbHVlLnRvTnVtYmVyKGV4ZWMpOwog
fQogCit2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiBleGVj
LCBKU0M6OkpTVmFsdWUgdmFsdWUsIERpY3Rpb25hcnkmIHJlc3VsdCkKK3sKKyAgICByZXN1bHQg
PSBEaWN0aW9uYXJ5KGV4ZWMsIHZhbHVlKTsKK30KKwogdm9pZCBKU0RpY3Rpb25hcnk6OmNvbnZl
cnRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFsdWUsIFN0cmluZyYgcmVzdWx0KQog
ewogICAgIHJlc3VsdCA9IHVzdHJpbmdUb1N0cmluZyh2YWx1ZS50b1N0cmluZyhleGVjKS0+dmFs
dWUoZXhlYykpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0
aW9uYXJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuaAppbmRl
eCA4ZjYzMzdkLi5lMGJhMTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RpY3Rpb25hcnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rp
b25hcnkuaApAQCAtMzIsNiArMzIsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNz
IERpY3Rpb25hcnk7CiBjbGFzcyBET01XaW5kb3c7CiBjbGFzcyBFdmVudFRhcmdldDsKIGNsYXNz
IE5vZGU7CkBAIC01OSw2ICs2MCw3IEBAIHB1YmxpYzoKICAgICBib29sIGdldChjb25zdCBjaGFy
KiBwcm9wZXJ0eU5hbWUsIFJlc3VsdCYpIGNvbnN0OwogCiAgICAgSlNDOjpFeGVjU3RhdGUqIGV4
ZWNTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXhlYzsgfQorICAgIEpTQzo6SlNPYmplY3QqIGlu
aXRpYWxpemVyT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9pbml0aWFsaXplck9iamVjdDsgfQog
ICAgIGJvb2wgaXNWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1fZXhlYyAmJiBtX2luaXRpYWxpemVy
T2JqZWN0OyB9CiAKIHByaXZhdGU6CkBAIC04Niw2ICs4OCw3IEBAIHByaXZhdGU6CiAgICAgc3Rh
dGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCB1bnNp
Z25lZCBzaG9ydCYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkIGxvbmcgbG9uZyYgcmVzdWx0KTsKICAg
ICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUs
IGRvdWJsZSYgcmVzdWx0KTsKKyAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTVmFsdWUsIERpY3Rpb25hcnkmIHJlc3VsdCk7CiAgICAgc3RhdGljIHZv
aWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBTdHJpbmcmIHJl
c3VsdCk7CiAgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU1ZhbHVlLCBTY3JpcHRWYWx1ZSYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0
VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFJlZlB0cjxTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+JiByZXN1bHQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvU2NyaXB0VmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFs
dWUuY3BwCmluZGV4IGRlYTJhNDguLmZkMzI4NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9TY3JpcHRWYWx1ZS5jcHAKQEAgLTEwNiw2ICsxMDYsMTQgQEAgUGFzc1JlZlB0cjxTZXJp
YWxpemVkU2NyaXB0VmFsdWU+IFNjcmlwdFZhbHVlOjpzZXJpYWxpemUoU2NyaXB0U3RhdGUqIHNj
cmlwdFN0YXQKICAgICByZXR1cm4gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUoc2NyaXB0
U3RhdGUsIGpzVmFsdWUoKSwgMCwgMCwgdGhyb3dFeGNlcHRpb25zKTsKIH0KIAorUGFzc1JlZlB0
cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IFNjcmlwdFZhbHVlOjpzZXJpYWxpemUoU2NyaXB0U3Rh
dGUqIHNjcmlwdFN0YXRlLCBNZXNzYWdlUG9ydEFycmF5KiBtZXNzYWdlUG9ydHMsIEFycmF5QnVm
ZmVyQXJyYXkqIGFycmF5QnVmZmVycywgYm9vbCYgZGlkVGhyb3cpCit7CisgICAgSlNWYWx1ZVJl
ZiBleGNlcHRpb24gPSAwOworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHNlcmlh
bGl6ZWRWYWx1ZSA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlKHRvUmVmKHNjcmlwdFN0
YXRlKSwgdG9SZWYoc2NyaXB0U3RhdGUsIGpzVmFsdWUoKSksIG1lc3NhZ2VQb3J0cywgYXJyYXlC
dWZmZXJzLCAmZXhjZXB0aW9uKTsKKyAgICBkaWRUaHJvdyA9IGV4Y2VwdGlvbiA/IHRydWUgOiBm
YWxzZTsKKyAgICByZXR1cm4gc2VyaWFsaXplZFZhbHVlLnJlbGVhc2UoKTsKK30KKwogU2NyaXB0
VmFsdWUgU2NyaXB0VmFsdWU6OmRlc2VyaWFsaXplKFNjcmlwdFN0YXRlKiBzY3JpcHRTdGF0ZSwg
U2VyaWFsaXplZFNjcmlwdFZhbHVlKiB2YWx1ZSwgU2VyaWFsaXphdGlvbkVycm9yTW9kZSB0aHJv
d0V4Y2VwdGlvbnMpCiB7CiAgICAgcmV0dXJuIFNjcmlwdFZhbHVlKHNjcmlwdFN0YXRlLT5nbG9i
YWxEYXRhKCksIHZhbHVlLT5kZXNlcmlhbGl6ZShzY3JpcHRTdGF0ZSwgc2NyaXB0U3RhdGUtPmxl
eGljYWxHbG9iYWxPYmplY3QoKSwgMCwgdGhyb3dFeGNlcHRpb25zKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaAppbmRleCBjZmI5OWU1Li4xNTczYTQ5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgKQEAgLTYzLDYgKzYzLDcgQEAgcHVi
bGljOgogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTY3JpcHRWYWx1ZSYgb3RoZXIpIGNvbnN0
IHsgcmV0dXJuIG1fdmFsdWUgPT0gb3RoZXIubV92YWx1ZTsgfQogCiAgICAgUGFzc1JlZlB0cjxT
ZXJpYWxpemVkU2NyaXB0VmFsdWU+IHNlcmlhbGl6ZShTY3JpcHRTdGF0ZSosIFNlcmlhbGl6YXRp
b25FcnJvck1vZGUgPSBUaHJvd2luZyk7CisgICAgUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0
VmFsdWU+IHNlcmlhbGl6ZShTY3JpcHRTdGF0ZSosIE1lc3NhZ2VQb3J0QXJyYXkqLCBBcnJheUJ1
ZmZlckFycmF5KiwgYm9vbCYpOwogICAgIHN0YXRpYyBTY3JpcHRWYWx1ZSBkZXNlcmlhbGl6ZShT
Y3JpcHRTdGF0ZSosIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSosIFNlcmlhbGl6YXRpb25FcnJvck1v
ZGUgPSBUaHJvd2luZyk7CiAKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCA5YjFmN2M0
Li4xZmIxN2U0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JKUy5wbQpAQCAtMjYyLDYgKzI2Miw4IEBAIHN1YiBBZGRJbmNsdWRlc0ZvclR5
cGUKICAgICAgICAgJGluY2x1ZGVzUmVmLT57IkpTRE9NU3RyaW5nTGlzdC5oIn0gPSAxOwogICAg
IH0gZWxzaWYgKCR0eXBlIGVxICJ1bnNpZ25lZCBsb25nW10iKSB7CiAgICAgICAgICRpbmNsdWRl
c1JlZi0+eyI8d3RmL1ZlY3Rvci5oPiJ9ID0gMTsKKyAgICB9IGVsc2lmICgkdHlwZSBlcSAiU2Vy
aWFsaXplZFNjcmlwdFZhbHVlIikgeworICAgICAgICAkaW5jbHVkZXNSZWYtPnsiU2VyaWFsaXpl
ZFNjcmlwdFZhbHVlLmgifSA9IDE7CiAgICAgfSBlbHNpZiAoJGlzQ2FsbGJhY2spIHsKICAgICAg
ICAgJGluY2x1ZGVzUmVmLT57IkpTJHt0eXBlfS5oIn0gPSAxOwogICAgIH0gZWxzaWYgKElzVHlw
ZWRBcnJheVR5cGUoJHR5cGUpKSB7CkBAIC0yNjA0LDExICsyNjA2LDExIEBAIHN1YiBHZW5lcmF0
ZUNhbGxiYWNrSGVhZGVyCiAgICAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAg
ICBDT01QSUxFX0FTU0VSVChmYWxzZSkiKTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAg
cHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsICIgLiBHZXROYXRpdmVUeXBlKCRmdW5j
dGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgIiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1l
IC4gIigiKTsKKyAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgdmlydHVhbCAi
IC4gR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkg
LiAiICIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CiAKICAgICAgICAgICAg
IG15IEBhcmdzID0gKCk7CiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykg
ewotICAgICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGUoJHBhcmFtLT50eXBl
KSAuICIgIiAuICRwYXJhbS0+bmFtZSk7CisgICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0
TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtLT5uYW1l
KTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsIGpvaW4o
IiwgIiwgQGFyZ3MpKTsKIApAQCAtMjY4Myw3ICsyNjg1LDcgQEAgc3ViIEdlbmVyYXRlQ2FsbGJh
Y2tJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBBZGRJbmNsdWRl
c0ZvclR5cGVJbkltcGwoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpOwotICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICJcbiIgLiBHZXROYXRpdmVUeXBlKCRmdW5jdGlvbi0+c2lnbmF0
dXJlLT50eXBlKSAuICIgJHtjbGFzc05hbWV9OjoiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5h
bWUgLiAiKCIpOworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJcbiIgLiBHZXROYXRp
dmVUeXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgJHtjbGFz
c05hbWV9OjoiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIpOwogCiAgICAgICAg
ICAgICBteSBAYXJncyA9ICgpOwogICAgICAgICAgICAgbXkgQGFyZ3NDaGVjayA9ICgpOwpAQCAt
MjY5MSw3ICsyNjkzLDcgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogICAg
ICAgICAgICAgZm9yZWFjaCBteSAkcGFyYW0gKEBwYXJhbXMpIHsKICAgICAgICAgICAgICAgICBt
eSAkcGFyYW1OYW1lID0gJHBhcmFtLT5uYW1lOwogICAgICAgICAgICAgICAgIEFkZEluY2x1ZGVz
Rm9yVHlwZUluSW1wbCgkcGFyYW0tPnR5cGUsIDEpOwotICAgICAgICAgICAgICAgIHB1c2goQGFy
Z3MsIEdldE5hdGl2ZVR5cGUoJHBhcmFtLT50eXBlKSAuICIgIiAuICRwYXJhbU5hbWUpOworICAg
ICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MoJHBhcmFt
LT50eXBlKSAuICIgIiAuICRwYXJhbU5hbWUpOwogICAgICAgICAgICAgICAgIGlmICgkdGhpc1R5
cGUgYW5kICR0aGlzVHlwZSBlcSAkcGFyYW0tPnR5cGUpIHsKICAgICAgICAgICAgICAgICAgICAg
cHVzaChAYXJnc0NoZWNrLCA8PEVORCk7CiAgICAgQVNTRVJUKCR7cGFyYW1OYW1lfSk7CkBAIC0y
NzE3LDYgKzI3MTksOCBAQCBFTkQKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4iKTsK
ICAgICAgICAgICAgICAgICB9IGVsc2lmICgkcGFyYW0tPnR5cGUgZXEgImJvb2xlYW4iKSB7CiAg
ICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKGpz
Qm9vbGVhbigke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgIH0gZWxzaWYgKCRw
YXJhbS0+dHlwZSBlcSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIikgeworICAgICAgICAgICAgICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCgkcGFyYW1OYW1lID8gJHBh
cmFtTmFtZS0+ZGVzZXJpYWxpemUoZXhlYywgbV9kYXRhLT5nbG9iYWxPYmplY3QoKSwgMCkgOiBq
c051bGwoKSk7XG4iKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIG1fZGF0
YS0+Z2xvYmFsT2JqZWN0KCksICR7cGFyYW1OYW1lfSkpO1xuIik7CiAgICAgICAgICAgICAgICAg
fQpAQCAtMjgzMiw2ICsyODM2LDE0IEBAIHN1YiBHZXROYXRpdmVUeXBlCiAgICAgcmV0dXJuICIk
e3R5cGV9KiI7CiB9CiAKK3N1YiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzCit7CisgICAgbXkg
JHR5cGUgPSBzaGlmdDsKKyAgICByZXR1cm4gIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSoiIGlmICR0
eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiOworCisgICAgcmV0dXJuIEdldE5hdGl2ZVR5
cGUoJHR5cGUpOworfQorCiBzdWIgR2V0U1ZHUHJvcGVydHlUeXBlcwogewogICAgIG15ICRpbXBs
VHlwZSA9IHNoaWZ0OwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IDQxYTQ3M2QuLmM4
ZWY3ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysg
Yi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTg5LDYgKzg5LDcgQEAgTUFD
Uk8gKFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxF
X1ZJREVPX1RSQUNLICJUb2dnbGUgVHJhY2sgc3VwcG9ydCBmb3IgSFRNTDUgdmlkZW8iIE9GRikK
ICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCR0wgIlRvZ2dsZSAzRCBjYW52YXMg
KFdlYkdMKSBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dF
Ql9BVURJTyAiVG9nZ2xlIFdlYiBBdWRpbyBzdXBwb3J0IiBPRkYpCisgICAgV0VCS0lUX09QVElP
Tl9ERUZJTkUoRU5BQkxFX1dFQl9JTlRFTlRTICJUb2dnbGUgV2ViIEludGVudHMgc3VwcG9ydCIs
IE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX1NPQ0tFVFMgIlRvZ2ds
ZSBXZWIgU29ja2V0cyBzdXBwb3J0IiBPTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFC
TEVfV0VCX1RJTUlORyAiVG9nZ2xlIFdlYiBUaW1pbmcgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJ
VF9PUFRJT05fREVGSU5FKEVOQUJMRV9XT1JLRVJTICJUb2dnbGUgV2ViIFdvcmtlcnMgc3VwcG9y
dCIgT0ZGKQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UgYi9Tb3VyY2Uv
Y21ha2Vjb25maWcuaC5jbWFrZQppbmRleCBhMDY4NTdkLi5jMjYxMGYyIDEwMDY0NAotLS0gYS9T
b3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFr
ZQpAQCAtNzAsNiArNzAsNyBAQAogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1ZJRVdQT1JUX1JFRkxP
VwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQkdMCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VC
X0FVRElPCisjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX0lOVEVOVFMKICNjbWFrZWRlZmluZTAx
IEVOQUJMRV9XRUJfU09DS0VUUwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9USU1JTkcKICNj
bWFrZWRlZmluZTAxIEVOQUJMRV9XT1JLRVJTCg==
</data>
<flag name="review"
          id="147238"
          type_id="1"
          status="-"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="147239"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141217</attachid>
            <date>2012-05-10 11:54:45 -0700</date>
            <delta_ts>2012-05-10 12:54:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents2.patch</filename>
            <type>text/plain</type>
            <size>15411</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0MWRjZDBkLi4zN2ZmMTNk
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA5ICBTdGVwaGVuIENoZW5uZXkgIDxzY2hlbm5leUBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgU1ZHIEZpbHRlcnMgYWxsb3cgaW52YWxpZCBlbGVtZW50cyBhcyBjaGlsZHJlbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dAppbmRleCBjMWYxMDQ1Li42YjBhNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApA
QCAtMyw2ICszLDcgQEAgU0VUKFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dF
QkNPUkVfRElSfS9Nb2R1bGVzL2ZpbGVzeXN0ZW0iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVs
ZXMvZ2VvbG9jYXRpb24iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW5kZXhlZGRiIgor
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL2ludGVudHMiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvd2ViYXVkaW8iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2ViZGF0YWJh
c2UiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2Vic29ja2V0cyIKQEAgLTI1MDYsNiAr
MjUwNywyMCBAQCBJRiAoRU5BQkxFX1dFQl9BVURJTykKICAgICApCiBFTkRJRiAoKQogCitJRiAo
RU5BQkxFX1dFQl9JTlRFTlRTKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisg
ICAgICAgIE1vZHVsZXMvaW50ZW50cy9ET01XaW5kb3dJbnRlbnRzLmlkbAorICAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmlkbAorICAgICAgICBNb2R1bGVzL2ludGVudHMvSW50ZW50UmVz
dWx0Q2FsbGJhY2suaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRz
LmlkbAorICAgICkKKyAgICBMSVNUKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnRSZXF1
ZXN0LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRzLmNwcAorICAg
ICkKK0VORElGICgpCisKICMgTW9kdWxlcyB0aGF0IHRoZSBiaW5kaW5ncyBnZW5lcmF0b3Igc2Ny
aXB0cyBtYXkgdXNlCiBTRVQoU0NSSVBUU19SRVNPTFZFX1NVUFBMRU1FTlRBTAogICAgICR7V0VC
Q09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvSURMUGFyc2VyLnBtCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJm
OTBmNi4uNjQwMmIxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTEwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAg
V2ViIEludGVudHMgY29kZSBvbmx5IHN1cHBvcnRzIFY4CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTk1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBuZWNlc3NhcnkgYWJzdHJhY3Rpb24gZm9yIGpz
IERpY3Rpb25hcnkgYW5kIFNjcmlwdFZhbHVlIHNvIHRoYXQKKyAgICAgICAgdGhlIFdlYiBJbnRl
bnRzIGNvZGUgaW4gV2ViQ29yZSBjb21waWxlcyB3aXRoIEpTQywgbm90IGp1c3QgVjguCisKKyAg
ICAgICAgVGhpcyByZXF1aXJlZCBjaGFuZ2VzIGluIHRoZSBKU0MgYmluZGluZ3MgZ2VuZXJhdG9y
IHRvIHBhc3MKKyAgICAgICAgY2FsbGJhY2sgYXJndW1lbnRzIG9mIHR5cGUgU2VyaWFsaXplZFNj
cmlwdFZhbHVlIGFzIHJhdyBwb2ludGVycworICAgICAgICBpbnN0ZWFkIG9mIFJlZlB0ci4gVGhp
cyBtYXRjaGVzIHRoZSBjaGFuZ2UgbWFkZSB0byB0aGUgVjggYmluZGluZ3MKKyAgICAgICAgZ2Vu
ZXJhdG9yIGluIHIxMDQ1MzEuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAg
KiBNb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2ludGVudHMv
SW50ZW50Lmg6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEaWN0aW9uYXJ5OjpEaWN0aW9uYXJ5KToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6RGljdGlvbmFyeTo6Z2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFz
aE1hcCk6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5oOgorICAgICAgICAoRGlj
dGlvbmFyeSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKToKKyAgICAgICAgKFdlYkNv
cmUpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpKU0RpY3Rpb25hcnk6OmluaXRpYWxpemVyT2JqZWN0
KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTY3JpcHRWYWx1ZTo6c2VyaWFsaXplKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmg6CisgICAgICAgIChTY3JpcHRWYWx1ZSk6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChB
ZGRJbmNsdWRlc0ZvclR5cGUpOgorICAgICAgICAoR2VuZXJhdGVDYWxsYmFja0hlYWRlcik6Cisg
ICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSW1wbGVtZW50YXRpb24pOgorICAgICAgICAoR2V0TmF0
aXZlVHlwZUZvckNhbGxiYWNrcyk6CisKIDIwMTItMDUtMTAgIEFiaGlzaGVrIEFyeWEgIDxpbmZl
cm5vQGNocm9taXVtLm9yZz4KIAogICAgICAgICBDcmFzaCBpbiBJbnNlcnRQYXJhZ3JhcGhTZXBh
cmF0b3JDb21tYW5kOjpkb0FwcGx5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbnRlbnRzL0ludGVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50
ZW50LmNwcAppbmRleCBiZmViYTY1Li5iZjk1NjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2ludGVudHMvSW50ZW50LmNwcApAQCAtMzMsNyArMzMsNiBAQAogCiAjaW5jbHVkZSAiRXhjZXB0
aW9uQ29kZS5oIgogI2luY2x1ZGUgIk1lc3NhZ2VQb3J0LmgiCi0jaW5jbHVkZSAiU2NyaXB0U3Rh
dGUuaCIKICNpbmNsdWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVu
dC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCmluZGV4IDQ1MDkw
OTYuLmRmZjcwODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9J
bnRlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKQEAg
LTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQu
aCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydENoYW5uZWwuaCIKKyNpbmNsdWRlICJTY3JpcHRTdGF0
ZS5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNDMsNyArNDQsNiBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFNjcmlwdFN0YXRlOwogY2xhc3MgU2VyaWFsaXplZFNj
cmlwdFZhbHVlOwogCiB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcAppbmRleCAyYzFiNzg1Li43OWJhNjBhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcApAQCAtMzUsNiArMzUsMTEgQEAg
dXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitEaWN0aW9uYXJ5
OjpEaWN0aW9uYXJ5KCkKKyAgICA6IG1fZGljdGlvbmFyeSgwLCAwKQoreworfQorCiBEaWN0aW9u
YXJ5OjpEaWN0aW9uYXJ5KEpTQzo6RXhlY1N0YXRlKiBleGVjLCBKU0M6OkpTVmFsdWUgdmFsdWUp
CiAgICAgOiBtX2RpY3Rpb25hcnkoZXhlYywgdmFsdWUuaXNPYmplY3QoKSA/IHZhbHVlLmdldE9i
amVjdCgpIDogMCkKIHsKQEAgLTQ5LDUgKzU0LDMwIEBAIEpTT2JqZWN0KiBEaWN0aW9uYXJ5Ojph
c0pTT2JqZWN0PE5vdGlmaWNhdGlvbj4oTm90aWZpY2F0aW9uKiBvYmplY3QpIGNvbnN0CiB9CiAj
ZW5kaWYKIAorYm9vbCBEaWN0aW9uYXJ5OjpnZXRPd25Qcm9wZXJ0aWVzQXNTdHJpbmdIYXNoTWFw
KFdURjo6SGFzaE1hcDxTdHJpbmcsIFN0cmluZz4mIG1hcCkgY29uc3QKK3sKKyAgICBpZiAoIW1f
ZGljdGlvbmFyeS5pc1ZhbGlkKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIEpTT2Jq
ZWN0KiBvYmplY3QgPSAgbV9kaWN0aW9uYXJ5LmluaXRpYWxpemVyT2JqZWN0KCk7CisgICAgRXhl
Y1N0YXRlKiBleGVjID0gbV9kaWN0aW9uYXJ5LmV4ZWNTdGF0ZSgpOworCisgICAgUHJvcGVydHlO
YW1lQXJyYXkgcHJvcGVydHlOYW1lcyhleGVjKTsKKyAgICBKU09iamVjdDo6Z2V0T3duUHJvcGVy
dHlOYW1lcyhvYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZXMsIEV4Y2x1ZGVEb250RW51bVByb3Bl
cnRpZXMpOworICAgIGZvciAoUHJvcGVydHlOYW1lQXJyYXk6OmNvbnN0X2l0ZXJhdG9yIGl0ID0g
cHJvcGVydHlOYW1lcy5iZWdpbigpOyBpdCAhPSBwcm9wZXJ0eU5hbWVzLmVuZCgpOyBpdCsrKSB7
CisgICAgICAgIFN0cmluZyBzdHJpbmdLZXkoaXQtPnVzdHJpbmcoKS5pbXBsKCkpOworICAgICAg
ICBpZiAoc3RyaW5nS2V5LmlzRW1wdHkoKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAg
ICBKU1ZhbHVlIHZhbHVlID0gb2JqZWN0LT5nZXQoZXhlYywgKml0KTsKKyAgICAgICAgaWYgKGV4
ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIFVTdHJp
bmcgc3RyaW5nVmFsdWUgPSB2YWx1ZS50b1VTdHJpbmcoZXhlYyk7CisgICAgICAgIGlmICghZXhl
Yy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICBtYXAuc2V0KHN0cmluZ0tleSwgU3RyaW5n
KHN0cmluZ1ZhbHVlLmltcGwoKSkpOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorCiB9
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKaW5kZXggZDQxY2IxNy4u
Y2NjZWVlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFy
eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaApAQCAtMzEs
NiArMzEsNyBAQAogI2luY2x1ZGUgIkpTRXZlbnRMaXN0ZW5lci5oIgogI2luY2x1ZGUgIk5vdElt
cGxlbWVudGVkLmgiCiAjaW5jbHVkZSAiU2NyaXB0VmFsdWUuaCIKKyNpbmNsdWRlIDx3dGYvSGFz
aE1hcC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KIApAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBFdmVudExpc3RlbmVyOwog
CiBjbGFzcyBEaWN0aW9uYXJ5IHsKIHB1YmxpYzoKKyAgICBEaWN0aW9uYXJ5KCk7CiAgICAgRGlj
dGlvbmFyeShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSk7CiAKICAgICAvLyBSZXR1cm5z
IHRydWUgaWYgYSB2YWx1ZSB3YXMgZm91bmQgZm9yIHRoZSBwcm92aWRlZCBwcm9wZXJ0eS4KQEAg
LTU4LDYgKzYwLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBpc09iamVjdCgpIGNvbnN0IHsgcmV0
dXJuIG1fZGljdGlvbmFyeS5pc1ZhbGlkKCk7IH0KICAgICBib29sIGlzVW5kZWZpbmVkT3JOdWxs
KCkgY29uc3QgeyByZXR1cm4gIW1fZGljdGlvbmFyeS5pc1ZhbGlkKCk7IH0KKyAgICBib29sIGdl
dE93blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoV1RGOjpIYXNoTWFwPFN0cmluZywgU3RyaW5n
PiYpIGNvbnN0OwogICAgIGJvb2wgZ2V0V2l0aFVuZGVmaW5lZE9yTnVsbENoZWNrKGNvbnN0IFN0
cmluZyYsIFN0cmluZyYpIGNvbnN0IHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9
CiAKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Rp
Y3Rpb25hcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNw
cAppbmRleCBlYWQyOTdhLi5lNDYxYzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRGljdGlvbmFyeS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIK
ICNpbmNsdWRlICJKU0RpY3Rpb25hcnkuaCIKIAorI2luY2x1ZGUgIkRpY3Rpb25hcnkuaCIKICNp
bmNsdWRlICJKU0RPTVdpbmRvdy5oIgogI2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIKICNpbmNs
dWRlICJKU01lc3NhZ2VQb3J0Q3VzdG9tLmgiCkBAIC05MSw2ICs5MiwxMSBAQCB2b2lkIEpTRGlj
dGlvbmFyeTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgZG91
YmxlJiByZXN1bHQpCiAgICAgcmVzdWx0ID0gdmFsdWUudG9OdW1iZXIoZXhlYyk7CiB9CiAKK3Zv
aWQgSlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6
SlNWYWx1ZSB2YWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KQoreworICAgIHJlc3VsdCA9IERpY3Rp
b25hcnkoZXhlYywgdmFsdWUpOworfQorCiB2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVl
KEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgU3RyaW5nJiByZXN1bHQpCiB7CiAgICAg
cmVzdWx0ID0gdXN0cmluZ1RvU3RyaW5nKHZhbHVlLnRvU3RyaW5nKGV4ZWMpLT52YWx1ZShleGVj
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnku
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oCmluZGV4IDhmNjMz
N2QuLmUwYmExNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGlj
dGlvbmFyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5o
CkBAIC0zMiw2ICszMiw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRGljdGlv
bmFyeTsKIGNsYXNzIERPTVdpbmRvdzsKIGNsYXNzIEV2ZW50VGFyZ2V0OwogY2xhc3MgTm9kZTsK
QEAgLTU5LDYgKzYwLDcgQEAgcHVibGljOgogICAgIGJvb2wgZ2V0KGNvbnN0IGNoYXIqIHByb3Bl
cnR5TmFtZSwgUmVzdWx0JikgY29uc3Q7CiAKICAgICBKU0M6OkV4ZWNTdGF0ZSogZXhlY1N0YXRl
KCkgY29uc3QgeyByZXR1cm4gbV9leGVjOyB9CisgICAgSlNDOjpKU09iamVjdCogaW5pdGlhbGl6
ZXJPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVyT2JqZWN0OyB9CiAgICAgYm9v
bCBpc1ZhbGlkKCkgY29uc3QgeyByZXR1cm4gbV9leGVjICYmIG1faW5pdGlhbGl6ZXJPYmplY3Q7
IH0KIAogcHJpdmF0ZToKQEAgLTg2LDYgKzg4LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgdm9p
ZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkIHNo
b3J0JiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNWYWx1ZSwgdW5zaWduZWQgbG9uZyBsb25nJiByZXN1bHQpOwogICAgIHN0YXRp
YyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgZG91Ymxl
JiByZXN1bHQpOworICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSos
IEpTQzo6SlNWYWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252
ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFN0cmluZyYgcmVzdWx0KTsK
ICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFs
dWUsIFNjcmlwdFZhbHVlJiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShK
U0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4mIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3Jp
cHRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAK
aW5kZXggZGVhMmE0OC4uZmQzMjg3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvU2NyaXB0VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1Nj
cmlwdFZhbHVlLmNwcApAQCAtMTA2LDYgKzEwNiwxNCBAQCBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3Rh
dAogICAgIHJldHVybiBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZShzY3JpcHRTdGF0ZSwg
anNWYWx1ZSgpLCAwLCAwLCB0aHJvd0V4Y2VwdGlvbnMpOwogfQogCitQYXNzUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2Ny
aXB0U3RhdGUsIE1lc3NhZ2VQb3J0QXJyYXkqIG1lc3NhZ2VQb3J0cywgQXJyYXlCdWZmZXJBcnJh
eSogYXJyYXlCdWZmZXJzLCBib29sJiBkaWRUaHJvdykKK3sKKyAgICBKU1ZhbHVlUmVmIGV4Y2Vw
dGlvbiA9IDA7CisgICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplZFZh
bHVlID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUodG9SZWYoc2NyaXB0U3RhdGUpLCB0
b1JlZihzY3JpcHRTdGF0ZSwganNWYWx1ZSgpKSwgbWVzc2FnZVBvcnRzLCBhcnJheUJ1ZmZlcnMs
ICZleGNlcHRpb24pOworICAgIGRpZFRocm93ID0gZXhjZXB0aW9uID8gdHJ1ZSA6IGZhbHNlOwor
ICAgIHJldHVybiBzZXJpYWxpemVkVmFsdWUucmVsZWFzZSgpOworfQorCiBTY3JpcHRWYWx1ZSBT
Y3JpcHRWYWx1ZTo6ZGVzZXJpYWxpemUoU2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRlLCBTZXJpYWxp
emVkU2NyaXB0VmFsdWUqIHZhbHVlLCBTZXJpYWxpemF0aW9uRXJyb3JNb2RlIHRocm93RXhjZXB0
aW9ucykKIHsKICAgICByZXR1cm4gU2NyaXB0VmFsdWUoc2NyaXB0U3RhdGUtPmdsb2JhbERhdGEo
KSwgdmFsdWUtPmRlc2VyaWFsaXplKHNjcmlwdFN0YXRlLCBzY3JpcHRTdGF0ZS0+bGV4aWNhbEds
b2JhbE9iamVjdCgpLCAwLCB0aHJvd0V4Y2VwdGlvbnMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9TY3JpcHRWYWx1ZS5oCmluZGV4IGNmYjk5ZTUuLjE1NzNhNDkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaApAQCAtNjMsNiArNjMsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFNjcmlwdFZhbHVlJiBvdGhlcikgY29uc3QgeyByZXR1
cm4gbV92YWx1ZSA9PSBvdGhlci5tX3ZhbHVlOyB9CiAKICAgICBQYXNzUmVmUHRyPFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgU2VyaWFsaXphdGlvbkVycm9y
TW9kZSA9IFRocm93aW5nKTsKKyAgICBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4g
c2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgTWVzc2FnZVBvcnRBcnJheSosIEFycmF5QnVmZmVyQXJy
YXkqLCBib29sJik7CiAgICAgc3RhdGljIFNjcmlwdFZhbHVlIGRlc2VyaWFsaXplKFNjcmlwdFN0
YXRlKiwgU2VyaWFsaXplZFNjcmlwdFZhbHVlKiwgU2VyaWFsaXphdGlvbkVycm9yTW9kZSA9IFRo
cm93aW5nKTsKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDliMWY3YzQuLjFmYjE3
ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtCkBAIC0yNjIsNiArMjYyLDggQEAgc3ViIEFkZEluY2x1ZGVzRm9yVHlwZQogICAg
ICAgICAkaW5jbHVkZXNSZWYtPnsiSlNET01TdHJpbmdMaXN0LmgifSA9IDE7CiAgICAgfSBlbHNp
ZiAoJHR5cGUgZXEgInVuc2lnbmVkIGxvbmdbXSIpIHsKICAgICAgICAgJGluY2x1ZGVzUmVmLT57
Ijx3dGYvVmVjdG9yLmg+In0gPSAxOworICAgIH0gZWxzaWYgKCR0eXBlIGVxICJTZXJpYWxpemVk
U2NyaXB0VmFsdWUiKSB7CisgICAgICAgICRpbmNsdWRlc1JlZi0+eyJTZXJpYWxpemVkU2NyaXB0
VmFsdWUuaCJ9ID0gMTsKICAgICB9IGVsc2lmICgkaXNDYWxsYmFjaykgewogICAgICAgICAkaW5j
bHVkZXNSZWYtPnsiSlMke3R5cGV9LmgifSA9IDE7CiAgICAgfSBlbHNpZiAoSXNUeXBlZEFycmF5
VHlwZSgkdHlwZSkpIHsKQEAgLTI2MDQsMTEgKzI2MDYsMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJh
Y2tIZWFkZXIKICAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIENPTVBJ
TEVfQVNTRVJUKGZhbHNlKSIpOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBwdXNoKEBo
ZWFkZXJDb250ZW50LCAiICAgIHZpcnR1YWwgIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0aW9uLT5z
aWduYXR1cmUtPnR5cGUpIC4gIiAiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIp
OworICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsICIgLiBHZXRO
YXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgIiAu
ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKIAogICAgICAgICAgICAgbXkgQGFy
Z3MgPSAoKTsKICAgICAgICAgICAgIGZvcmVhY2ggbXkgJHBhcmFtIChAcGFyYW1zKSB7Ci0gICAg
ICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAi
IC4gJHBhcmFtLT5uYW1lKTsKKyAgICAgICAgICAgICAgICBwdXNoKEBhcmdzLCBHZXROYXRpdmVU
eXBlRm9yQ2FsbGJhY2tzKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAkcGFyYW0tPm5hbWUpOwogICAg
ICAgICAgICAgfQogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgam9pbigiLCAiLCBA
YXJncykpOwogCkBAIC0yNjgzLDcgKzI2ODUsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxl
bWVudGF0aW9uCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIEFkZEluY2x1ZGVzRm9yVHlw
ZUluSW1wbCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSk7Ci0gICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5
cGUpIC4gIiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIo
Iik7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGVG
b3JDYWxsYmFja3MoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAke2NsYXNzTmFtZX06
OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CiAKICAgICAgICAgICAgIG15
IEBhcmdzID0gKCk7CiAgICAgICAgICAgICBteSBAYXJnc0NoZWNrID0gKCk7CkBAIC0yNjkxLDcg
KzI2OTMsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAg
ICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15ICRwYXJh
bU5hbWUgPSAkcGFyYW0tPm5hbWU7CiAgICAgICAgICAgICAgICAgQWRkSW5jbHVkZXNGb3JUeXBl
SW5JbXBsKCRwYXJhbS0+dHlwZSwgMSk7Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0
TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtTmFtZSk7CisgICAgICAgICAg
ICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkcGFyYW0tPnR5cGUp
IC4gIiAiIC4gJHBhcmFtTmFtZSk7CiAgICAgICAgICAgICAgICAgaWYgKCR0aGlzVHlwZSBhbmQg
JHRoaXNUeXBlIGVxICRwYXJhbS0+dHlwZSkgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBh
cmdzQ2hlY2ssIDw8RU5EKTsKICAgICBBU1NFUlQoJHtwYXJhbU5hbWV9KTsKQEAgLTI3MTcsNiAr
MjcxOSw4IEBAIEVORAogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAg
ICBhcmdzLmFwcGVuZChqc1N0cmluZyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOwogICAgICAg
ICAgICAgICAgIH0gZWxzaWYgKCRwYXJhbS0+dHlwZSBlcSAiYm9vbGVhbiIpIHsKICAgICAgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNCb29sZWFu
KCR7cGFyYW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAgICAgfSBlbHNpZiAoJHBhcmFtLT50
eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAgICAgICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKCRwYXJhbU5hbWUgPyAkcGFyYW1OYW1l
LT5kZXNlcmlhbGl6ZShleGVjLCBtX2RhdGEtPmdsb2JhbE9iamVjdCgpLCAwKSA6IGpzTnVsbCgp
KTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgbV9kYXRhLT5nbG9i
YWxPYmplY3QoKSwgJHtwYXJhbU5hbWV9KSk7XG4iKTsKICAgICAgICAgICAgICAgICB9CkBAIC0y
ODMyLDYgKzI4MzYsMTQgQEAgc3ViIEdldE5hdGl2ZVR5cGUKICAgICByZXR1cm4gIiR7dHlwZX0q
IjsKIH0KIAorc3ViIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MKK3sKKyAgICBteSAkdHlwZSA9
IHNoaWZ0OworICAgIHJldHVybiAiU2VyaWFsaXplZFNjcmlwdFZhbHVlKiIgaWYgJHR5cGUgZXEg
IlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSI7CisKKyAgICByZXR1cm4gR2V0TmF0aXZlVHlwZSgkdHlw
ZSk7Cit9CisKIHN1YiBHZXRTVkdQcm9wZXJ0eVR5cGVzCiB7CiAgICAgbXkgJGltcGxUeXBlID0g
c2hpZnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9T
b3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggNDFhNDczZC4uYzhlZjdlNiAx
MDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJj
ZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtODksNiArODksNyBAQCBNQUNSTyAoV0VC
S0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfVklERU9f
VFJBQ0sgIlRvZ2dsZSBUcmFjayBzdXBwb3J0IGZvciBIVE1MNSB2aWRlbyIgT0ZGKQogICAgIFdF
QktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJHTCAiVG9nZ2xlIDNEIGNhbnZhcyAoV2ViR0wp
IHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX0FVRElP
ICJUb2dnbGUgV2ViIEF1ZGlvIHN1cHBvcnQiIE9GRikKKyAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfV0VCX0lOVEVOVFMgIlRvZ2dsZSBXZWIgSW50ZW50cyBzdXBwb3J0IiwgT0ZGKQog
ICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJfU09DS0VUUyAiVG9nZ2xlIFdlYiBT
b2NrZXRzIHN1cHBvcnQiIE9OKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJf
VElNSU5HICJUb2dnbGUgV2ViIFRpbWluZyBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElP
Tl9ERUZJTkUoRU5BQkxFX1dPUktFUlMgIlRvZ2dsZSBXZWIgV29ya2VycyBzdXBwb3J0IiBPRkYp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZSBiL1NvdXJjZS9jbWFrZWNv
bmZpZy5oLmNtYWtlCmluZGV4IGEwNjg1N2QuLmMyNjEwZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9j
bWFrZWNvbmZpZy5oLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlCkBAIC03
MCw2ICs3MCw3IEBACiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfVklFV1BPUlRfUkVGTE9XCiAjY21h
a2VkZWZpbmUwMSBFTkFCTEVfV0VCR0wKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfQVVESU8K
KyNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfSU5URU5UUwogI2NtYWtlZGVmaW5lMDEgRU5BQkxF
X1dFQl9TT0NLRVRTCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX1RJTUlORwogI2NtYWtlZGVm
aW5lMDEgRU5BQkxFX1dPUktFUlMK
</data>
<flag name="review"
          id="147309"
          type_id="1"
          status="+"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="147310"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>141218</attachid>
            <date>2012-05-10 11:55:32 -0700</date>
            <delta_ts>2012-05-10 11:58:34 -0700</delta_ts>
            <desc>stdout output from run-bindings-tests script</desc>
            <filename>run-bindings-tests.stdout</filename>
            <type>text/plain</type>
            <size>3116</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">JCBUb29scy9TY3JpcHRzL3J1bi1iaW5kaW5ncy10ZXN0cyAtLXJlc2V0LXJlc3VsdHMKUmVzZXQg
cmVzdWx0czogKEpTKSBUZXN0RG9tYWluU2VjdXJpdHkuaWRsClJlc2V0IHJlc3VsdHM6IChKUykg
VGVzdE5hbWVkQ29uc3RydWN0b3IuaWRsClJlc2V0IHJlc3VsdHM6IChKUykgVGVzdEV2ZW50Q29u
c3RydWN0b3IuaWRsClJlc2V0IHJlc3VsdHM6IChKUykgVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmlk
bApSZXNldCByZXN1bHRzOiAoSlMpIFRlc3RPYmouaWRsClJlc2V0IHJlc3VsdHM6IChKUykgVGVz
dE5vZGUuaWRsClJlc2V0IHJlc3VsdHM6IChKUykgVGVzdFR5cGVkQXJyYXkuaWRsClJlc2V0IHJl
c3VsdHM6IChKUykgVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuaWRsClJlc2V0IHJlc3VsdHM6
IChKUykgVGVzdEV4Y2VwdGlvbi5pZGwKUmVzZXQgcmVzdWx0czogKEpTKSBUZXN0Q2FsbGJhY2su
aWRsClJlc2V0IHJlc3VsdHM6IChKUykgVGVzdEV2ZW50VGFyZ2V0LmlkbApSZXNldCByZXN1bHRz
OiAoSlMpIFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuaWRsClJlc2V0IHJlc3Vs
dHM6IChKUykgVGVzdFN1cHBsZW1lbnRhbC5pZGwKUmVzZXQgcmVzdWx0czogKEpTKSBUZXN0SW50
ZXJmYWNlLmlkbApSZXNldCByZXN1bHRzOiAoVjgpIFRlc3REb21haW5TZWN1cml0eS5pZGwKUmVz
ZXQgcmVzdWx0czogKFY4KSBUZXN0TmFtZWRDb25zdHJ1Y3Rvci5pZGwKUmVzZXQgcmVzdWx0czog
KFY4KSBUZXN0RXZlbnRDb25zdHJ1Y3Rvci5pZGwKUmVzZXQgcmVzdWx0czogKFY4KSBUZXN0Q3Vz
dG9tTmFtZWRHZXR0ZXIuaWRsClJlc2V0IHJlc3VsdHM6IChWOCkgVGVzdE9iai5pZGwKUmVzZXQg
cmVzdWx0czogKFY4KSBUZXN0Tm9kZS5pZGwKUmVzZXQgcmVzdWx0czogKFY4KSBUZXN0VHlwZWRB
cnJheS5pZGwKUmVzZXQgcmVzdWx0czogKFY4KSBUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5p
ZGwKUmVzZXQgcmVzdWx0czogKFY4KSBUZXN0RXhjZXB0aW9uLmlkbApSZXNldCByZXN1bHRzOiAo
VjgpIFRlc3RDYWxsYmFjay5pZGwKUmVzZXQgcmVzdWx0czogKFY4KSBUZXN0RXZlbnRUYXJnZXQu
aWRsClJlc2V0IHJlc3VsdHM6IChWOCkgVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFj
ZS5pZGwKUmVzZXQgcmVzdWx0czogKFY4KSBUZXN0U3VwcGxlbWVudGFsLmlkbApSZXNldCByZXN1
bHRzOiAoVjgpIFRlc3RJbnRlcmZhY2UuaWRsClJlc2V0IHJlc3VsdHM6IChPYmpDKSBUZXN0RG9t
YWluU2VjdXJpdHkuaWRsClJlc2V0IHJlc3VsdHM6IChPYmpDKSBUZXN0TmFtZWRDb25zdHJ1Y3Rv
ci5pZGwKUmVzZXQgcmVzdWx0czogKE9iakMpIFRlc3RFdmVudENvbnN0cnVjdG9yLmlkbApSZXNl
dCByZXN1bHRzOiAoT2JqQykgVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmlkbApSZXNldCByZXN1bHRz
OiAoT2JqQykgVGVzdE9iai5pZGwKUmVzZXQgcmVzdWx0czogKE9iakMpIFRlc3ROb2RlLmlkbApS
ZXNldCByZXN1bHRzOiAoT2JqQykgVGVzdFR5cGVkQXJyYXkuaWRsClJlc2V0IHJlc3VsdHM6IChP
YmpDKSBUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5pZGwKUmVzZXQgcmVzdWx0czogKE9iakMp
IFRlc3RFeGNlcHRpb24uaWRsClJlc2V0IHJlc3VsdHM6IChPYmpDKSBUZXN0Q2FsbGJhY2suaWRs
ClJlc2V0IHJlc3VsdHM6IChPYmpDKSBUZXN0RXZlbnRUYXJnZXQuaWRsClJlc2V0IHJlc3VsdHM6
IChPYmpDKSBUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmlkbApSZXNldCByZXN1
bHRzOiAoT2JqQykgVGVzdFN1cHBsZW1lbnRhbC5pZGwKUmVzZXQgcmVzdWx0czogKE9iakMpIFRl
c3RJbnRlcmZhY2UuaWRsClJlc2V0IHJlc3VsdHM6IChHT2JqZWN0KSBUZXN0RG9tYWluU2VjdXJp
dHkuaWRsClJlc2V0IHJlc3VsdHM6IChHT2JqZWN0KSBUZXN0TmFtZWRDb25zdHJ1Y3Rvci5pZGwK
UmVzZXQgcmVzdWx0czogKEdPYmplY3QpIFRlc3RFdmVudENvbnN0cnVjdG9yLmlkbApSZXNldCBy
ZXN1bHRzOiAoR09iamVjdCkgVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmlkbApSZXNldCByZXN1bHRz
OiAoR09iamVjdCkgVGVzdE9iai5pZGwKUmVzZXQgcmVzdWx0czogKEdPYmplY3QpIFRlc3ROb2Rl
LmlkbApSZXNldCByZXN1bHRzOiAoR09iamVjdCkgVGVzdFR5cGVkQXJyYXkuaWRsClJlc2V0IHJl
c3VsdHM6IChHT2JqZWN0KSBUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5pZGwKUmVzZXQgcmVz
dWx0czogKEdPYmplY3QpIFRlc3RFeGNlcHRpb24uaWRsClJlc2V0IHJlc3VsdHM6IChHT2JqZWN0
KSBUZXN0Q2FsbGJhY2suaWRsClJlc2V0IHJlc3VsdHM6IChHT2JqZWN0KSBUZXN0RXZlbnRUYXJn
ZXQuaWRsClJlc2V0IHJlc3VsdHM6IChHT2JqZWN0KSBUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVl
SW50ZXJmYWNlLmlkbApSZXNldCByZXN1bHRzOiAoR09iamVjdCkgVGVzdFN1cHBsZW1lbnRhbC5p
ZGwKUmVzZXQgcmVzdWx0czogKEdPYmplY3QpIFRlc3RJbnRlcmZhY2UuaWRsClJlc2V0IHJlc3Vs
dHM6IChDUFApIFRlc3REb21haW5TZWN1cml0eS5pZGwKUmVzZXQgcmVzdWx0czogKENQUCkgVGVz
dE5hbWVkQ29uc3RydWN0b3IuaWRsClJlc2V0IHJlc3VsdHM6IChDUFApIFRlc3RFdmVudENvbnN0
cnVjdG9yLmlkbApSZXNldCByZXN1bHRzOiAoQ1BQKSBUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuaWRs
ClJlc2V0IHJlc3VsdHM6IChDUFApIFRlc3RPYmouaWRsClJlc2V0IHJlc3VsdHM6IChDUFApIFRl
c3ROb2RlLmlkbApSZXNldCByZXN1bHRzOiAoQ1BQKSBUZXN0VHlwZWRBcnJheS5pZGwKUmVzZXQg
cmVzdWx0czogKENQUCkgVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuaWRsClJlc2V0IHJlc3Vs
dHM6IChDUFApIFRlc3RFeGNlcHRpb24uaWRsClJlc2V0IHJlc3VsdHM6IChDUFApIFRlc3RDYWxs
YmFjay5pZGwKUmVzZXQgcmVzdWx0czogKENQUCkgVGVzdEV2ZW50VGFyZ2V0LmlkbApSZXNldCBy
ZXN1bHRzOiAoQ1BQKSBUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmlkbApSZXNl
dCByZXN1bHRzOiAoQ1BQKSBUZXN0U3VwcGxlbWVudGFsLmlkbApSZXNldCByZXN1bHRzOiAoQ1BQ
KSBUZXN0SW50ZXJmYWNlLmlkbAoKQWxsIHRlc3RzIFBBU1MhCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141219</attachid>
            <date>2012-05-10 11:56:19 -0700</date>
            <delta_ts>2012-05-10 11:56:19 -0700</delta_ts>
            <desc>Diff generated by run-bindings-tests script</desc>
            <filename>run-bindings-tests.patch</filename>
            <type>text/plain</type>
            <size>4098</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RFdmVudFRhcmdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwCmluZGV4IGJmYTg3MjguLjIzODVhNzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRh
cmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEV2ZW50VGFyZ2V0LmNwcApAQCAtMjUyLDggKzI1Miw2IEBAIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwganNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGVGdW5jdGlvbkFkZEV2ZW50TGlz
dGVuZXIoCiAgICAgSlNUZXN0RXZlbnRUYXJnZXQqIGNhc3RlZFRoaXMgPSBqc0Nhc3Q8SlNUZXN0
RXZlbnRUYXJnZXQqPihhc09iamVjdCh0aGlzVmFsdWUpKTsKICAgICBBU1NFUlRfR0NfT0JKRUNU
X0lOSEVSSVRTKGNhc3RlZFRoaXMsICZKU1Rlc3RFdmVudFRhcmdldDo6c19pbmZvKTsKICAgICBU
ZXN0RXZlbnRUYXJnZXQqIGltcGwgPSBzdGF0aWNfY2FzdDxUZXN0RXZlbnRUYXJnZXQqPihjYXN0
ZWRUaGlzLT5pbXBsKCkpOwotICAgIGlmIChleGVjLT5hcmd1bWVudENvdW50KCkgPCAyKQotICAg
ICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGV4ZWMsIGNyZWF0ZU5vdEVub3VnaEFyZ3VtZW50c0Vy
cm9yKGV4ZWMpKTsKICAgICBKU1ZhbHVlIGxpc3RlbmVyID0gZXhlYy0+YXJndW1lbnQoMSk7CiAg
ICAgaWYgKCFsaXN0ZW5lci5pc09iamVjdCgpKQogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGpzVW5kZWZpbmVkKCkpOwpAQCAtMjY5LDggKzI2Nyw2IEBAIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwganNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGVGdW5jdGlvblJlbW92ZUV2ZW50
TGlzdGVuCiAgICAgSlNUZXN0RXZlbnRUYXJnZXQqIGNhc3RlZFRoaXMgPSBqc0Nhc3Q8SlNUZXN0
RXZlbnRUYXJnZXQqPihhc09iamVjdCh0aGlzVmFsdWUpKTsKICAgICBBU1NFUlRfR0NfT0JKRUNU
X0lOSEVSSVRTKGNhc3RlZFRoaXMsICZKU1Rlc3RFdmVudFRhcmdldDo6c19pbmZvKTsKICAgICBU
ZXN0RXZlbnRUYXJnZXQqIGltcGwgPSBzdGF0aWNfY2FzdDxUZXN0RXZlbnRUYXJnZXQqPihjYXN0
ZWRUaGlzLT5pbXBsKCkpOwotICAgIGlmIChleGVjLT5hcmd1bWVudENvdW50KCkgPCAyKQotICAg
ICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGV4ZWMsIGNyZWF0ZU5vdEVub3VnaEFyZ3VtZW50c0Vy
cm9yKGV4ZWMpKTsKICAgICBKU1ZhbHVlIGxpc3RlbmVyID0gZXhlYy0+YXJndW1lbnQoMSk7CiAg
ICAgaWYgKCFsaXN0ZW5lci5pc09iamVjdCgpKQogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGpzVW5kZWZpbmVkKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAppbmRleCAwNjgyOGE0Li42YTM5Y2Y0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2Jq
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
T2JqLmNwcApAQCAtMTgyNiw4ICsxODI2LDYgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkFkZEV2ZW50TGlzdGVuZXIoRXhlY1N0YXQKICAg
ICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0Nhc3Q8SlNUZXN0T2JqKj4oYXNPYmplY3QodGhp
c1ZhbHVlKSk7CiAgICAgQVNTRVJUX0dDX09CSkVDVF9JTkhFUklUUyhjYXN0ZWRUaGlzLCAmSlNU
ZXN0T2JqOjpzX2luZm8pOwogICAgIFRlc3RPYmoqIGltcGwgPSBzdGF0aWNfY2FzdDxUZXN0T2Jq
Kj4oY2FzdGVkVGhpcy0+aW1wbCgpKTsKLSAgICBpZiAoZXhlYy0+YXJndW1lbnRDb3VudCgpIDwg
MikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihleGVjLCBjcmVhdGVOb3RFbm91Z2hBcmd1
bWVudHNFcnJvcihleGVjKSk7CiAgICAgSlNWYWx1ZSBsaXN0ZW5lciA9IGV4ZWMtPmFyZ3VtZW50
KDEpOwogICAgIGlmICghbGlzdGVuZXIuaXNPYmplY3QoKSkKICAgICAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKQEAgLTE4NDMsOCArMTg0MSw2IEBAIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25SZW1vdmVFdmVu
dExpc3RlbmVyKEV4ZWNTCiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNDYXN0PEpTVGVz
dE9iaio+KGFzT2JqZWN0KHRoaXNWYWx1ZSkpOwogICAgIEFTU0VSVF9HQ19PQkpFQ1RfSU5IRVJJ
VFMoY2FzdGVkVGhpcywgJkpTVGVzdE9iajo6c19pbmZvKTsKICAgICBUZXN0T2JqKiBpbXBsID0g
c3RhdGljX2Nhc3Q8VGVzdE9iaio+KGNhc3RlZFRoaXMtPmltcGwoKSk7Ci0gICAgaWYgKGV4ZWMt
PmFyZ3VtZW50Q291bnQoKSA8IDIpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZXhlYywg
Y3JlYXRlTm90RW5vdWdoQXJndW1lbnRzRXJyb3IoZXhlYykpOwogICAgIEpTVmFsdWUgbGlzdGVu
ZXIgPSBleGVjLT5hcmd1bWVudCgxKTsKICAgICBpZiAoIWxpc3RlbmVyLmlzT2JqZWN0KCkpCiAg
ICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXhjZXB0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFeGNl
cHRpb24uY3BwCmluZGV4IDVkMTc3N2YuLmYzYzZiMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFeGNlcHRpb24uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFeGNlcHRpb24uY3Bw
CkBAIC0xMTIsNyArMTEyLDcgQEAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOFRlc3RFeGNlcHRp
b246OndyYXBTbG93KFBhc3NSZWZQdHI8VGVzdEV4Y2VwdGlvbj4gaW1wbCwKIAogICAgIGlmICgh
aGFzRGVwZW5kZW50TGlmZXRpbWUpCiAgICAgICAgIHdyYXBwZXJIYW5kbGUuTWFya0luZGVwZW5k
ZW50KCk7Ci0gICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3QoaW1wbCwg
d3JhcHBlckhhbmRsZSk7CisgICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmpl
Y3QoaW1wbCwgd3JhcHBlckhhbmRsZSwgaXNvbGF0ZSk7CiAgICAgcmV0dXJuIHdyYXBwZXI7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9W
OFRlc3RFeGNlcHRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3RFeGNlcHRpb24uaAppbmRleCA4NmQ0YTRmLi43YTJmNTg0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXhjZXB0aW9uLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV4Y2Vw
dGlvbi5oCkBAIC01MCw3ICs1MCw3IEBAIHByaXZhdGU6CiAKIHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gVjhUZXN0RXhjZXB0aW9uOjp3cmFwKFRlc3RFeGNlcHRpb24qIGltcGwsIHY4OjpJc29sYXRl
KiBpc29sYXRlKQogewotICAgICAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIgPSBn
ZXRET01PYmplY3RNYXAoKS5nZXQoaW1wbCk7CisgICAgICAgIHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gd3JhcHBlciA9IGdldERPTU9iamVjdE1hcChpc29sYXRlKS5nZXQoaW1wbCk7CiAgICAgICAg
IGlmICghd3JhcHBlci5Jc0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm4gd3JhcHBlcjsKICAg
ICByZXR1cm4gVjhUZXN0RXhjZXB0aW9uOjp3cmFwU2xvdyhpbXBsLCBpc29sYXRlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141232</attachid>
            <date>2012-05-10 12:54:50 -0700</date>
            <delta_ts>2012-05-10 13:18:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents3.patch</filename>
            <type>text/plain</type>
            <size>15410</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0MWRjZDBkLi4zN2ZmMTNk
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA5ICBTdGVwaGVuIENoZW5uZXkgIDxzY2hlbm5leUBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgU1ZHIEZpbHRlcnMgYWxsb3cgaW52YWxpZCBlbGVtZW50cyBhcyBjaGlsZHJlbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dAppbmRleCBjMWYxMDQ1Li42YjBhNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApA
QCAtMyw2ICszLDcgQEAgU0VUKFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dF
QkNPUkVfRElSfS9Nb2R1bGVzL2ZpbGVzeXN0ZW0iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVs
ZXMvZ2VvbG9jYXRpb24iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW5kZXhlZGRiIgor
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL2ludGVudHMiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvd2ViYXVkaW8iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2ViZGF0YWJh
c2UiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2Vic29ja2V0cyIKQEAgLTI1MDYsNiAr
MjUwNywyMCBAQCBJRiAoRU5BQkxFX1dFQl9BVURJTykKICAgICApCiBFTkRJRiAoKQogCitJRiAo
RU5BQkxFX1dFQl9JTlRFTlRTKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisg
ICAgICAgIE1vZHVsZXMvaW50ZW50cy9ET01XaW5kb3dJbnRlbnRzLmlkbAorICAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmlkbAorICAgICAgICBNb2R1bGVzL2ludGVudHMvSW50ZW50UmVz
dWx0Q2FsbGJhY2suaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRz
LmlkbAorICAgICkKKyAgICBMSVNUKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnRSZXF1
ZXN0LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRzLmNwcAorICAg
ICkKK0VORElGICgpCisKICMgTW9kdWxlcyB0aGF0IHRoZSBiaW5kaW5ncyBnZW5lcmF0b3Igc2Ny
aXB0cyBtYXkgdXNlCiBTRVQoU0NSSVBUU19SRVNPTFZFX1NVUFBMRU1FTlRBTAogICAgICR7V0VC
Q09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvSURMUGFyc2VyLnBtCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJm
OTBmNi4uNjQwMmIxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTEwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAg
V2ViIEludGVudHMgY29kZSBvbmx5IHN1cHBvcnRzIFY4CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTk1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBuZWNlc3NhcnkgYWJzdHJhY3Rpb24gZm9yIGpz
IERpY3Rpb25hcnkgYW5kIFNjcmlwdFZhbHVlIHNvIHRoYXQKKyAgICAgICAgdGhlIFdlYiBJbnRl
bnRzIGNvZGUgaW4gV2ViQ29yZSBjb21waWxlcyB3aXRoIEpTQywgbm90IGp1c3QgVjguCisKKyAg
ICAgICAgVGhpcyByZXF1aXJlZCBjaGFuZ2VzIGluIHRoZSBKU0MgYmluZGluZ3MgZ2VuZXJhdG9y
IHRvIHBhc3MKKyAgICAgICAgY2FsbGJhY2sgYXJndW1lbnRzIG9mIHR5cGUgU2VyaWFsaXplZFNj
cmlwdFZhbHVlIGFzIHJhdyBwb2ludGVycworICAgICAgICBpbnN0ZWFkIG9mIFJlZlB0ci4gVGhp
cyBtYXRjaGVzIHRoZSBjaGFuZ2UgbWFkZSB0byB0aGUgVjggYmluZGluZ3MKKyAgICAgICAgZ2Vu
ZXJhdG9yIGluIHIxMDQ1MzEuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAg
KiBNb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2ludGVudHMv
SW50ZW50Lmg6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEaWN0aW9uYXJ5OjpEaWN0aW9uYXJ5KToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6RGljdGlvbmFyeTo6Z2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFz
aE1hcCk6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5oOgorICAgICAgICAoRGlj
dGlvbmFyeSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKToKKyAgICAgICAgKFdlYkNv
cmUpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpKU0RpY3Rpb25hcnk6OmluaXRpYWxpemVyT2JqZWN0
KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTY3JpcHRWYWx1ZTo6c2VyaWFsaXplKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmg6CisgICAgICAgIChTY3JpcHRWYWx1ZSk6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChB
ZGRJbmNsdWRlc0ZvclR5cGUpOgorICAgICAgICAoR2VuZXJhdGVDYWxsYmFja0hlYWRlcik6Cisg
ICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSW1wbGVtZW50YXRpb24pOgorICAgICAgICAoR2V0TmF0
aXZlVHlwZUZvckNhbGxiYWNrcyk6CisKIDIwMTItMDUtMTAgIEFiaGlzaGVrIEFyeWEgIDxpbmZl
cm5vQGNocm9taXVtLm9yZz4KIAogICAgICAgICBDcmFzaCBpbiBJbnNlcnRQYXJhZ3JhcGhTZXBh
cmF0b3JDb21tYW5kOjpkb0FwcGx5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbnRlbnRzL0ludGVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50
ZW50LmNwcAppbmRleCBiZmViYTY1Li5iZjk1NjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2ludGVudHMvSW50ZW50LmNwcApAQCAtMzMsNyArMzMsNiBAQAogCiAjaW5jbHVkZSAiRXhjZXB0
aW9uQ29kZS5oIgogI2luY2x1ZGUgIk1lc3NhZ2VQb3J0LmgiCi0jaW5jbHVkZSAiU2NyaXB0U3Rh
dGUuaCIKICNpbmNsdWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVu
dC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCmluZGV4IDQ1MDkw
OTYuLmRmZjcwODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9J
bnRlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKQEAg
LTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQu
aCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydENoYW5uZWwuaCIKKyNpbmNsdWRlICJTY3JpcHRTdGF0
ZS5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNDMsNyArNDQsNiBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFNjcmlwdFN0YXRlOwogY2xhc3MgU2VyaWFsaXplZFNj
cmlwdFZhbHVlOwogCiB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcAppbmRleCAyYzFiNzg1Li43OWJhNjBhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcApAQCAtMzUsNiArMzUsMTEgQEAg
dXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitEaWN0aW9uYXJ5
OjpEaWN0aW9uYXJ5KCkKKyAgICA6IG1fZGljdGlvbmFyeSgwLCAwKQoreworfQorCiBEaWN0aW9u
YXJ5OjpEaWN0aW9uYXJ5KEpTQzo6RXhlY1N0YXRlKiBleGVjLCBKU0M6OkpTVmFsdWUgdmFsdWUp
CiAgICAgOiBtX2RpY3Rpb25hcnkoZXhlYywgdmFsdWUuaXNPYmplY3QoKSA/IHZhbHVlLmdldE9i
amVjdCgpIDogMCkKIHsKQEAgLTQ5LDUgKzU0LDMwIEBAIEpTT2JqZWN0KiBEaWN0aW9uYXJ5Ojph
c0pTT2JqZWN0PE5vdGlmaWNhdGlvbj4oTm90aWZpY2F0aW9uKiBvYmplY3QpIGNvbnN0CiB9CiAj
ZW5kaWYKIAorYm9vbCBEaWN0aW9uYXJ5OjpnZXRPd25Qcm9wZXJ0aWVzQXNTdHJpbmdIYXNoTWFw
KFdURjo6SGFzaE1hcDxTdHJpbmcsIFN0cmluZz4mIG1hcCkgY29uc3QKK3sKKyAgICBpZiAoIW1f
ZGljdGlvbmFyeS5pc1ZhbGlkKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIEpTT2Jq
ZWN0KiBvYmplY3QgPSAgbV9kaWN0aW9uYXJ5LmluaXRpYWxpemVyT2JqZWN0KCk7CisgICAgRXhl
Y1N0YXRlKiBleGVjID0gbV9kaWN0aW9uYXJ5LmV4ZWNTdGF0ZSgpOworCisgICAgUHJvcGVydHlO
YW1lQXJyYXkgcHJvcGVydHlOYW1lcyhleGVjKTsKKyAgICBKU09iamVjdDo6Z2V0T3duUHJvcGVy
dHlOYW1lcyhvYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZXMsIEV4Y2x1ZGVEb250RW51bVByb3Bl
cnRpZXMpOworICAgIGZvciAoUHJvcGVydHlOYW1lQXJyYXk6OmNvbnN0X2l0ZXJhdG9yIGl0ID0g
cHJvcGVydHlOYW1lcy5iZWdpbigpOyBpdCAhPSBwcm9wZXJ0eU5hbWVzLmVuZCgpOyBpdCsrKSB7
CisgICAgICAgIFN0cmluZyBzdHJpbmdLZXkoaXQtPnVzdHJpbmcoKS5pbXBsKCkpOworICAgICAg
ICBpZiAoc3RyaW5nS2V5LmlzRW1wdHkoKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAg
ICBKU1ZhbHVlIHZhbHVlID0gb2JqZWN0LT5nZXQoZXhlYywgKml0KTsKKyAgICAgICAgaWYgKGV4
ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIFVTdHJp
bmcgc3RyaW5nVmFsdWUgPSB2YWx1ZS50b1VTdHJpbmcoZXhlYyk7CisgICAgICAgIGlmICghZXhl
Yy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICBtYXAuc2V0KHN0cmluZ0tleSwgU3RyaW5n
KHN0cmluZ1ZhbHVlLmltcGwoKSkpOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorCiB9
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKaW5kZXggZDQxY2IxNy4u
Y2NjZWVlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFy
eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaApAQCAtMzEs
NiArMzEsNyBAQAogI2luY2x1ZGUgIkpTRXZlbnRMaXN0ZW5lci5oIgogI2luY2x1ZGUgIk5vdElt
cGxlbWVudGVkLmgiCiAjaW5jbHVkZSAiU2NyaXB0VmFsdWUuaCIKKyNpbmNsdWRlIDx3dGYvSGFz
aE1hcC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KIApAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBFdmVudExpc3RlbmVyOwog
CiBjbGFzcyBEaWN0aW9uYXJ5IHsKIHB1YmxpYzoKKyAgICBEaWN0aW9uYXJ5KCk7CiAgICAgRGlj
dGlvbmFyeShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSk7CiAKICAgICAvLyBSZXR1cm5z
IHRydWUgaWYgYSB2YWx1ZSB3YXMgZm91bmQgZm9yIHRoZSBwcm92aWRlZCBwcm9wZXJ0eS4KQEAg
LTU4LDYgKzYwLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBpc09iamVjdCgpIGNvbnN0IHsgcmV0
dXJuIG1fZGljdGlvbmFyeS5pc1ZhbGlkKCk7IH0KICAgICBib29sIGlzVW5kZWZpbmVkT3JOdWxs
KCkgY29uc3QgeyByZXR1cm4gIW1fZGljdGlvbmFyeS5pc1ZhbGlkKCk7IH0KKyAgICBib29sIGdl
dE93blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoV1RGOjpIYXNoTWFwPFN0cmluZywgU3RyaW5n
PiYpIGNvbnN0OwogICAgIGJvb2wgZ2V0V2l0aFVuZGVmaW5lZE9yTnVsbENoZWNrKGNvbnN0IFN0
cmluZyYsIFN0cmluZyYpIGNvbnN0IHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9
CiAKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Rp
Y3Rpb25hcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNw
cAppbmRleCBlYWQyOTdhLi5lNDYxYzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRGljdGlvbmFyeS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIK
ICNpbmNsdWRlICJKU0RpY3Rpb25hcnkuaCIKIAorI2luY2x1ZGUgIkRpY3Rpb25hcnkuaCIKICNp
bmNsdWRlICJKU0RPTVdpbmRvdy5oIgogI2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIKICNpbmNs
dWRlICJKU01lc3NhZ2VQb3J0Q3VzdG9tLmgiCkBAIC05MSw2ICs5MiwxMSBAQCB2b2lkIEpTRGlj
dGlvbmFyeTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgZG91
YmxlJiByZXN1bHQpCiAgICAgcmVzdWx0ID0gdmFsdWUudG9OdW1iZXIoZXhlYyk7CiB9CiAKK3Zv
aWQgSlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6
SlNWYWx1ZSB2YWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KQoreworICAgIHJlc3VsdCA9IERpY3Rp
b25hcnkoZXhlYywgdmFsdWUpOworfQorCiB2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVl
KEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgU3RyaW5nJiByZXN1bHQpCiB7CiAgICAg
cmVzdWx0ID0gdXN0cmluZ1RvU3RyaW5nKHZhbHVlLnRvU3RyaW5nKGV4ZWMpLT52YWx1ZShleGVj
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnku
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oCmluZGV4IDhmNjMz
N2QuLmUwYmExNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGlj
dGlvbmFyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5o
CkBAIC0zMiw2ICszMiw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRGljdGlv
bmFyeTsKIGNsYXNzIERPTVdpbmRvdzsKIGNsYXNzIEV2ZW50VGFyZ2V0OwogY2xhc3MgTm9kZTsK
QEAgLTU5LDYgKzYwLDcgQEAgcHVibGljOgogICAgIGJvb2wgZ2V0KGNvbnN0IGNoYXIqIHByb3Bl
cnR5TmFtZSwgUmVzdWx0JikgY29uc3Q7CiAKICAgICBKU0M6OkV4ZWNTdGF0ZSogZXhlY1N0YXRl
KCkgY29uc3QgeyByZXR1cm4gbV9leGVjOyB9CisgICAgSlNDOjpKU09iamVjdCogaW5pdGlhbGl6
ZXJPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVyT2JqZWN0OyB9CiAgICAgYm9v
bCBpc1ZhbGlkKCkgY29uc3QgeyByZXR1cm4gbV9leGVjICYmIG1faW5pdGlhbGl6ZXJPYmplY3Q7
IH0KIAogcHJpdmF0ZToKQEAgLTg2LDYgKzg4LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgdm9p
ZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkIHNo
b3J0JiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNWYWx1ZSwgdW5zaWduZWQgbG9uZyBsb25nJiByZXN1bHQpOwogICAgIHN0YXRp
YyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgZG91Ymxl
JiByZXN1bHQpOworICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSos
IEpTQzo6SlNWYWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252
ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFN0cmluZyYgcmVzdWx0KTsK
ICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFs
dWUsIFNjcmlwdFZhbHVlJiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShK
U0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4mIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3Jp
cHRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAK
aW5kZXggZGVhMmE0OC4uZmQzMjg3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvU2NyaXB0VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1Nj
cmlwdFZhbHVlLmNwcApAQCAtMTA2LDYgKzEwNiwxNCBAQCBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3Rh
dAogICAgIHJldHVybiBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZShzY3JpcHRTdGF0ZSwg
anNWYWx1ZSgpLCAwLCAwLCB0aHJvd0V4Y2VwdGlvbnMpOwogfQogCitQYXNzUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2Ny
aXB0U3RhdGUsIE1lc3NhZ2VQb3J0QXJyYXkqIG1lc3NhZ2VQb3J0cywgQXJyYXlCdWZmZXJBcnJh
eSogYXJyYXlCdWZmZXJzLCBib29sJiBkaWRUaHJvdykKK3sKKyAgICBKU1ZhbHVlUmVmIGV4Y2Vw
dGlvbiA9IDA7CisgICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplZFZh
bHVlID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUodG9SZWYoc2NyaXB0U3RhdGUpLCB0
b1JlZihzY3JpcHRTdGF0ZSwganNWYWx1ZSgpKSwgbWVzc2FnZVBvcnRzLCBhcnJheUJ1ZmZlcnMs
ICZleGNlcHRpb24pOworICAgIGRpZFRocm93ID0gZXhjZXB0aW9uID8gdHJ1ZSA6IGZhbHNlOwor
ICAgIHJldHVybiBzZXJpYWxpemVkVmFsdWUucmVsZWFzZSgpOworfQorCiBTY3JpcHRWYWx1ZSBT
Y3JpcHRWYWx1ZTo6ZGVzZXJpYWxpemUoU2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRlLCBTZXJpYWxp
emVkU2NyaXB0VmFsdWUqIHZhbHVlLCBTZXJpYWxpemF0aW9uRXJyb3JNb2RlIHRocm93RXhjZXB0
aW9ucykKIHsKICAgICByZXR1cm4gU2NyaXB0VmFsdWUoc2NyaXB0U3RhdGUtPmdsb2JhbERhdGEo
KSwgdmFsdWUtPmRlc2VyaWFsaXplKHNjcmlwdFN0YXRlLCBzY3JpcHRTdGF0ZS0+bGV4aWNhbEds
b2JhbE9iamVjdCgpLCAwLCB0aHJvd0V4Y2VwdGlvbnMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9TY3JpcHRWYWx1ZS5oCmluZGV4IGNmYjk5ZTUuLjE1NzNhNDkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaApAQCAtNjMsNiArNjMsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFNjcmlwdFZhbHVlJiBvdGhlcikgY29uc3QgeyByZXR1
cm4gbV92YWx1ZSA9PSBvdGhlci5tX3ZhbHVlOyB9CiAKICAgICBQYXNzUmVmUHRyPFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgU2VyaWFsaXphdGlvbkVycm9y
TW9kZSA9IFRocm93aW5nKTsKKyAgICBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4g
c2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgTWVzc2FnZVBvcnRBcnJheSosIEFycmF5QnVmZmVyQXJy
YXkqLCBib29sJik7CiAgICAgc3RhdGljIFNjcmlwdFZhbHVlIGRlc2VyaWFsaXplKFNjcmlwdFN0
YXRlKiwgU2VyaWFsaXplZFNjcmlwdFZhbHVlKiwgU2VyaWFsaXphdGlvbkVycm9yTW9kZSA9IFRo
cm93aW5nKTsKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDliMWY3YzQuLjFmYjE3
ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtCkBAIC0yNjIsNiArMjYyLDggQEAgc3ViIEFkZEluY2x1ZGVzRm9yVHlwZQogICAg
ICAgICAkaW5jbHVkZXNSZWYtPnsiSlNET01TdHJpbmdMaXN0LmgifSA9IDE7CiAgICAgfSBlbHNp
ZiAoJHR5cGUgZXEgInVuc2lnbmVkIGxvbmdbXSIpIHsKICAgICAgICAgJGluY2x1ZGVzUmVmLT57
Ijx3dGYvVmVjdG9yLmg+In0gPSAxOworICAgIH0gZWxzaWYgKCR0eXBlIGVxICJTZXJpYWxpemVk
U2NyaXB0VmFsdWUiKSB7CisgICAgICAgICRpbmNsdWRlc1JlZi0+eyJTZXJpYWxpemVkU2NyaXB0
VmFsdWUuaCJ9ID0gMTsKICAgICB9IGVsc2lmICgkaXNDYWxsYmFjaykgewogICAgICAgICAkaW5j
bHVkZXNSZWYtPnsiSlMke3R5cGV9LmgifSA9IDE7CiAgICAgfSBlbHNpZiAoSXNUeXBlZEFycmF5
VHlwZSgkdHlwZSkpIHsKQEAgLTI2MDQsMTEgKzI2MDYsMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJh
Y2tIZWFkZXIKICAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIENPTVBJ
TEVfQVNTRVJUKGZhbHNlKSIpOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBwdXNoKEBo
ZWFkZXJDb250ZW50LCAiICAgIHZpcnR1YWwgIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0aW9uLT5z
aWduYXR1cmUtPnR5cGUpIC4gIiAiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIp
OworICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsICIgLiBHZXRO
YXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgIiAu
ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKIAogICAgICAgICAgICAgbXkgQGFy
Z3MgPSAoKTsKICAgICAgICAgICAgIGZvcmVhY2ggbXkgJHBhcmFtIChAcGFyYW1zKSB7Ci0gICAg
ICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAi
IC4gJHBhcmFtLT5uYW1lKTsKKyAgICAgICAgICAgICAgICBwdXNoKEBhcmdzLCBHZXROYXRpdmVU
eXBlRm9yQ2FsbGJhY2tzKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAkcGFyYW0tPm5hbWUpOwogICAg
ICAgICAgICAgfQogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgam9pbigiLCAiLCBA
YXJncykpOwogCkBAIC0yNjgzLDcgKzI2ODUsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxl
bWVudGF0aW9uCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIEFkZEluY2x1ZGVzRm9yVHlw
ZUluSW1wbCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSk7Ci0gICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5
cGUpIC4gIiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIo
Iik7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGVG
b3JDYWxsYmFja3MoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAke2NsYXNzTmFtZX06
OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CiAKICAgICAgICAgICAgIG15
IEBhcmdzID0gKCk7CiAgICAgICAgICAgICBteSBAYXJnc0NoZWNrID0gKCk7CkBAIC0yNjkxLDcg
KzI2OTMsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAg
ICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15ICRwYXJh
bU5hbWUgPSAkcGFyYW0tPm5hbWU7CiAgICAgICAgICAgICAgICAgQWRkSW5jbHVkZXNGb3JUeXBl
SW5JbXBsKCRwYXJhbS0+dHlwZSwgMSk7Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0
TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtTmFtZSk7CisgICAgICAgICAg
ICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkcGFyYW0tPnR5cGUp
IC4gIiAiIC4gJHBhcmFtTmFtZSk7CiAgICAgICAgICAgICAgICAgaWYgKCR0aGlzVHlwZSBhbmQg
JHRoaXNUeXBlIGVxICRwYXJhbS0+dHlwZSkgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBh
cmdzQ2hlY2ssIDw8RU5EKTsKICAgICBBU1NFUlQoJHtwYXJhbU5hbWV9KTsKQEAgLTI3MTcsNiAr
MjcxOSw4IEBAIEVORAogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAg
ICBhcmdzLmFwcGVuZChqc1N0cmluZyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOwogICAgICAg
ICAgICAgICAgIH0gZWxzaWYgKCRwYXJhbS0+dHlwZSBlcSAiYm9vbGVhbiIpIHsKICAgICAgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNCb29sZWFu
KCR7cGFyYW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAgICAgfSBlbHNpZiAoJHBhcmFtLT50
eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAgICAgICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKCRwYXJhbU5hbWUgPyAkcGFyYW1OYW1l
LT5kZXNlcmlhbGl6ZShleGVjLCBtX2RhdGEtPmdsb2JhbE9iamVjdCgpLCAwKSA6IGpzTnVsbCgp
KTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgbV9kYXRhLT5nbG9i
YWxPYmplY3QoKSwgJHtwYXJhbU5hbWV9KSk7XG4iKTsKICAgICAgICAgICAgICAgICB9CkBAIC0y
ODMyLDYgKzI4MzYsMTQgQEAgc3ViIEdldE5hdGl2ZVR5cGUKICAgICByZXR1cm4gIiR7dHlwZX0q
IjsKIH0KIAorc3ViIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MKK3sKKyAgICBteSAkdHlwZSA9
IHNoaWZ0OworICAgIHJldHVybiAiU2VyaWFsaXplZFNjcmlwdFZhbHVlKiIgaWYgJHR5cGUgZXEg
IlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSI7CisKKyAgICByZXR1cm4gR2V0TmF0aXZlVHlwZSgkdHlw
ZSk7Cit9CisKIHN1YiBHZXRTVkdQcm9wZXJ0eVR5cGVzCiB7CiAgICAgbXkgJGltcGxUeXBlID0g
c2hpZnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9T
b3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggNDFhNDczZC4uMTU0NjkyYyAx
MDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJj
ZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtODksNiArODksNyBAQCBNQUNSTyAoV0VC
S0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfVklERU9f
VFJBQ0sgIlRvZ2dsZSBUcmFjayBzdXBwb3J0IGZvciBIVE1MNSB2aWRlbyIgT0ZGKQogICAgIFdF
QktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJHTCAiVG9nZ2xlIDNEIGNhbnZhcyAoV2ViR0wp
IHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX0FVRElP
ICJUb2dnbGUgV2ViIEF1ZGlvIHN1cHBvcnQiIE9GRikKKyAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfV0VCX0lOVEVOVFMgIlRvZ2dsZSBXZWIgSW50ZW50cyBzdXBwb3J0IiBPRkYpCiAg
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9TT0NLRVRTICJUb2dnbGUgV2ViIFNv
Y2tldHMgc3VwcG9ydCIgT04pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9U
SU1JTkcgIlRvZ2dsZSBXZWIgVGltaW5nIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfV09SS0VSUyAiVG9nZ2xlIFdlYiBXb3JrZXJzIHN1cHBvcnQiIE9GRikK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlIGIvU291cmNlL2NtYWtlY29u
ZmlnLmguY21ha2UKaW5kZXggYTA2ODU3ZC4uYzI2MTBmMiAxMDA2NDQKLS0tIGEvU291cmNlL2Nt
YWtlY29uZmlnLmguY21ha2UKKysrIGIvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKQEAgLTcw
LDYgKzcwLDcgQEAKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9WSUVXUE9SVF9SRUZMT1cKICNjbWFr
ZWRlZmluZTAxIEVOQUJMRV9XRUJHTAogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9BVURJTwor
I2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9JTlRFTlRTCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVf
V0VCX1NPQ0tFVFMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfVElNSU5HCiAjY21ha2VkZWZp
bmUwMSBFTkFCTEVfV09SS0VSUwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141235</attachid>
            <date>2012-05-10 13:18:13 -0700</date>
            <delta_ts>2012-05-10 13:38:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents4.patch</filename>
            <type>text/plain</type>
            <size>15998</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0MWRjZDBkLi4zN2ZmMTNk
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA5ICBTdGVwaGVuIENoZW5uZXkgIDxzY2hlbm5leUBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgU1ZHIEZpbHRlcnMgYWxsb3cgaW52YWxpZCBlbGVtZW50cyBhcyBjaGlsZHJlbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dAppbmRleCBjMWYxMDQ1Li42YjBhNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApA
QCAtMyw2ICszLDcgQEAgU0VUKFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dF
QkNPUkVfRElSfS9Nb2R1bGVzL2ZpbGVzeXN0ZW0iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVs
ZXMvZ2VvbG9jYXRpb24iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW5kZXhlZGRiIgor
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL2ludGVudHMiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvd2ViYXVkaW8iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2ViZGF0YWJh
c2UiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2Vic29ja2V0cyIKQEAgLTI1MDYsNiAr
MjUwNywyMCBAQCBJRiAoRU5BQkxFX1dFQl9BVURJTykKICAgICApCiBFTkRJRiAoKQogCitJRiAo
RU5BQkxFX1dFQl9JTlRFTlRTKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisg
ICAgICAgIE1vZHVsZXMvaW50ZW50cy9ET01XaW5kb3dJbnRlbnRzLmlkbAorICAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmlkbAorICAgICAgICBNb2R1bGVzL2ludGVudHMvSW50ZW50UmVz
dWx0Q2FsbGJhY2suaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRz
LmlkbAorICAgICkKKyAgICBMSVNUKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnRSZXF1
ZXN0LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRzLmNwcAorICAg
ICkKK0VORElGICgpCisKICMgTW9kdWxlcyB0aGF0IHRoZSBiaW5kaW5ncyBnZW5lcmF0b3Igc2Ny
aXB0cyBtYXkgdXNlCiBTRVQoU0NSSVBUU19SRVNPTFZFX1NVUFBMRU1FTlRBTAogICAgICR7V0VC
Q09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvSURMUGFyc2VyLnBtCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJm
OTBmNi4uNThkZWI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTA1LTEwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAg
V2ViIEludGVudHMgY29kZSBvbmx5IHN1cHBvcnRzIFY4CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTk1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBuZWNlc3NhcnkgYWJzdHJhY3Rpb24gZm9yIGpz
IERpY3Rpb25hcnkgYW5kIFNjcmlwdFZhbHVlIHNvIHRoYXQKKyAgICAgICAgdGhlIFdlYiBJbnRl
bnRzIGNvZGUgaW4gV2ViQ29yZSBjb21waWxlcyB3aXRoIEpTQywgbm90IGp1c3QgVjguCisKKyAg
ICAgICAgVGhpcyByZXF1aXJlZCBjaGFuZ2VzIGluIHRoZSBKU0MgYmluZGluZ3MgZ2VuZXJhdG9y
IHRvIHBhc3MKKyAgICAgICAgY2FsbGJhY2sgYXJndW1lbnRzIG9mIHR5cGUgU2VyaWFsaXplZFNj
cmlwdFZhbHVlIGFzIHJhdyBwb2ludGVycworICAgICAgICBpbnN0ZWFkIG9mIFJlZlB0ci4gVGhp
cyBtYXRjaGVzIHRoZSBjaGFuZ2UgbWFkZSB0byB0aGUgVjggYmluZGluZ3MKKyAgICAgICAgZ2Vu
ZXJhdG9yIGluIHIxMDQ1MzEuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAg
KiBNb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2ludGVudHMv
SW50ZW50Lmg6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEaWN0aW9uYXJ5OjpEaWN0aW9uYXJ5KToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6RGljdGlvbmFyeTo6Z2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFz
aE1hcCk6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5oOgorICAgICAgICAoRGlj
dGlvbmFyeSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcDoK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6aW5pdGlhbGl6ZXJPYmplY3QpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlw
dFZhbHVlOjpzZXJpYWxpemUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGlu
Z3MvanMvU2NyaXB0VmFsdWUuaDoKKyAgICAgICAgKFNjcmlwdFZhbHVlKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEFkZEluY2x1ZGVz
Rm9yVHlwZSk6CisgICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSGVhZGVyKToKKyAgICAgICAgKEdl
bmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbik6CisgICAgICAgIChHZXROYXRpdmVUeXBlRm9y
Q2FsbGJhY2tzKToKKwogMjAxMi0wNS0xMCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIENyYXNoIGluIEluc2VydFBhcmFncmFwaFNlcGFyYXRvckNvbW1h
bmQ6OmRvQXBwbHkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMv
SW50ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCmlu
ZGV4IGJmZWJhNjUuLmJmOTU2NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW50ZW50cy9JbnRlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9J
bnRlbnQuY3BwCkBAIC0zMyw3ICszMyw2IEBACiAKICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgi
CiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIKLSNpbmNsdWRlICJTY3JpcHRTdGF0ZS5oIgogI2lu
Y2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKaW5kZXggNDUwOTA5Ni4uZGZmNzA4
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaApAQCAtMzUsNiArMzUs
NyBAQAogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgogI2luY2x1
ZGUgIk1lc3NhZ2VQb3J0Q2hhbm5lbC5oIgorI2luY2x1ZGUgIlNjcmlwdFN0YXRlLmgiCiAjaW5j
bHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC00Myw3ICs0NCw2IEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotY2xhc3MgU2NyaXB0U3RhdGU7CiBjbGFzcyBTZXJpYWxpemVkU2NyaXB0VmFsdWU7
CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0RpY3Rpb25hcnkuY3BwCmluZGV4IDJjMWI3ODUuLjc5YmE2MGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCkBAIC0zNSw2ICszNSwxMSBAQCB1c2luZyBuYW1l
c3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK0RpY3Rpb25hcnk6OkRpY3Rpb25h
cnkoKQorICAgIDogbV9kaWN0aW9uYXJ5KDAsIDApCit7Cit9CisKIERpY3Rpb25hcnk6OkRpY3Rp
b25hcnkoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6SlNWYWx1ZSB2YWx1ZSkKICAgICA6IG1f
ZGljdGlvbmFyeShleGVjLCB2YWx1ZS5pc09iamVjdCgpID8gdmFsdWUuZ2V0T2JqZWN0KCkgOiAw
KQogewpAQCAtNDksNSArNTQsMzAgQEAgSlNPYmplY3QqIERpY3Rpb25hcnk6OmFzSlNPYmplY3Q8
Tm90aWZpY2F0aW9uPihOb3RpZmljYXRpb24qIG9iamVjdCkgY29uc3QKIH0KICNlbmRpZgogCiti
b29sIERpY3Rpb25hcnk6OmdldE93blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoV1RGOjpIYXNo
TWFwPFN0cmluZywgU3RyaW5nPiYgbWFwKSBjb25zdAoreworICAgIGlmICghbV9kaWN0aW9uYXJ5
LmlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgSlNPYmplY3QqIG9iamVj
dCA9ICBtX2RpY3Rpb25hcnkuaW5pdGlhbGl6ZXJPYmplY3QoKTsKKyAgICBFeGVjU3RhdGUqIGV4
ZWMgPSBtX2RpY3Rpb25hcnkuZXhlY1N0YXRlKCk7CisKKyAgICBQcm9wZXJ0eU5hbWVBcnJheSBw
cm9wZXJ0eU5hbWVzKGV4ZWMpOworICAgIEpTT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eU5hbWVzKG9i
amVjdCwgZXhlYywgcHJvcGVydHlOYW1lcywgRXhjbHVkZURvbnRFbnVtUHJvcGVydGllcyk7Cisg
ICAgZm9yIChQcm9wZXJ0eU5hbWVBcnJheTo6Y29uc3RfaXRlcmF0b3IgaXQgPSBwcm9wZXJ0eU5h
bWVzLmJlZ2luKCk7IGl0ICE9IHByb3BlcnR5TmFtZXMuZW5kKCk7IGl0KyspIHsKKyAgICAgICAg
U3RyaW5nIHN0cmluZ0tleShpdC0+dXN0cmluZygpLmltcGwoKSk7CisgICAgICAgIGlmIChzdHJp
bmdLZXkuaXNFbXB0eSgpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIEpTVmFsdWUg
dmFsdWUgPSBvYmplY3QtPmdldChleGVjLCAqaXQpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgVVN0cmluZyBzdHJpbmdW
YWx1ZSA9IHZhbHVlLnRvVVN0cmluZyhleGVjKTsKKyAgICAgICAgaWYgKCFleGVjLT5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgICAgIG1hcC5zZXQoc3RyaW5nS2V5LCBTdHJpbmcoc3RyaW5nVmFs
dWUuaW1wbCgpKSk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaAppbmRleCBkNDFjYjE3Li5jY2NlZWU3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oCkBAIC0zMSw2ICszMSw3IEBA
CiAjaW5jbHVkZSAiSlNFdmVudExpc3RlbmVyLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQu
aCIKICNpbmNsdWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgogCkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEV2ZW50TGlzdGVuZXI7CiAKIGNsYXNzIERp
Y3Rpb25hcnkgewogcHVibGljOgorICAgIERpY3Rpb25hcnkoKTsKICAgICBEaWN0aW9uYXJ5KEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlKTsKIAogICAgIC8vIFJldHVybnMgdHJ1ZSBpZiBh
IHZhbHVlIHdhcyBmb3VuZCBmb3IgdGhlIHByb3ZpZGVkIHByb3BlcnR5LgpAQCAtNTgsNiArNjAs
NyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9kaWN0
aW9uYXJ5LmlzVmFsaWQoKTsgfQogICAgIGJvb2wgaXNVbmRlZmluZWRPck51bGwoKSBjb25zdCB7
IHJldHVybiAhbV9kaWN0aW9uYXJ5LmlzVmFsaWQoKTsgfQorICAgIGJvb2wgZ2V0T3duUHJvcGVy
dGllc0FzU3RyaW5nSGFzaE1hcChXVEY6Okhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+JikgY29uc3Q7
CiAgICAgYm9vbCBnZXRXaXRoVW5kZWZpbmVkT3JOdWxsQ2hlY2soY29uc3QgU3RyaW5nJiwgU3Ry
aW5nJikgY29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJ
bk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUu
Y3BwCmluZGV4IGJiZTNmMWMuLjljMTk3N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcApAQCAtMjYsNiArMjYsNyBAQAogLy8gVGhp
cyBhbGwtaW4tb25lIGNwcCBmaWxlIGN1dHMgZG93biBvbiB0ZW1wbGF0ZSBibG9hdCB0byBhbGxv
dyB1cyB0byBidWlsZCBvdXIgV2luZG93cyByZWxlYXNlIGJ1aWxkLgogCiAjaW5jbHVkZSAiQ2Fs
bGJhY2tGdW5jdGlvbi5jcHAiCisjaW5jbHVkZSAiRGljdGlvbmFyeS5jcHAiCiAjaW5jbHVkZSAi
RE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCIKICNpbmNsdWRlICJET01XcmFwcGVyV29ybGQuY3Bw
IgogI2luY2x1ZGUgIkdDQ29udHJvbGxlci5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNEaWN0aW9uYXJ5LmNwcAppbmRleCBlYWQyOTdhLi5lNDYxYzIzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJKU0RpY3Rpb25hcnkuaCIKIAorI2luY2x1ZGUg
IkRpY3Rpb25hcnkuaCIKICNpbmNsdWRlICJKU0RPTVdpbmRvdy5oIgogI2luY2x1ZGUgIkpTRXZl
bnRUYXJnZXQuaCIKICNpbmNsdWRlICJKU01lc3NhZ2VQb3J0Q3VzdG9tLmgiCkBAIC05MSw2ICs5
MiwxMSBAQCB2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywg
SlNWYWx1ZSB2YWx1ZSwgZG91YmxlJiByZXN1bHQpCiAgICAgcmVzdWx0ID0gdmFsdWUudG9OdW1i
ZXIoZXhlYyk7CiB9CiAKK3ZvaWQgSlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUoSlNDOjpFeGVj
U3RhdGUqIGV4ZWMsIEpTQzo6SlNWYWx1ZSB2YWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KQorewor
ICAgIHJlc3VsdCA9IERpY3Rpb25hcnkoZXhlYywgdmFsdWUpOworfQorCiB2b2lkIEpTRGljdGlv
bmFyeTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgU3RyaW5n
JiByZXN1bHQpCiB7CiAgICAgcmVzdWx0ID0gdXN0cmluZ1RvU3RyaW5nKHZhbHVlLnRvU3RyaW5n
KGV4ZWMpLT52YWx1ZShleGVjKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RpY3Rpb25hcnkuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlv
bmFyeS5oCmluZGV4IDhmNjMzN2QuLmUwYmExNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRGljdGlvbmFyeS5oCkBAIC0zMiw2ICszMiw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAorY2xhc3MgRGljdGlvbmFyeTsKIGNsYXNzIERPTVdpbmRvdzsKIGNsYXNzIEV2ZW50VGFy
Z2V0OwogY2xhc3MgTm9kZTsKQEAgLTU5LDYgKzYwLDcgQEAgcHVibGljOgogICAgIGJvb2wgZ2V0
KGNvbnN0IGNoYXIqIHByb3BlcnR5TmFtZSwgUmVzdWx0JikgY29uc3Q7CiAKICAgICBKU0M6OkV4
ZWNTdGF0ZSogZXhlY1N0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9leGVjOyB9CisgICAgSlNDOjpK
U09iamVjdCogaW5pdGlhbGl6ZXJPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVy
T2JqZWN0OyB9CiAgICAgYm9vbCBpc1ZhbGlkKCkgY29uc3QgeyByZXR1cm4gbV9leGVjICYmIG1f
aW5pdGlhbGl6ZXJPYmplY3Q7IH0KIAogcHJpdmF0ZToKQEAgLTg2LDYgKzg4LDcgQEAgcHJpdmF0
ZToKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
VmFsdWUsIHVuc2lnbmVkIHNob3J0JiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRW
YWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgdW5zaWduZWQgbG9uZyBsb25nJiBy
ZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNWYWx1ZSwgZG91YmxlJiByZXN1bHQpOworICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1
ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KTsKICAg
ICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUs
IFN0cmluZyYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTVmFsdWUsIFNjcmlwdFZhbHVlJiByZXN1bHQpOwogICAgIHN0YXRpYyB2
b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgUmVmUHRyPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4mIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9TY3JpcHRWYWx1ZS5jcHAKaW5kZXggZGVhMmE0OC4uZmQzMjg3MiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcApAQCAtMTA2LDYgKzEwNiwxNCBAQCBQYXNz
UmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3Jp
cHRTdGF0ZSogc2NyaXB0U3RhdAogICAgIHJldHVybiBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNy
ZWF0ZShzY3JpcHRTdGF0ZSwganNWYWx1ZSgpLCAwLCAwLCB0aHJvd0V4Y2VwdGlvbnMpOwogfQog
CitQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6
ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3RhdGUsIE1lc3NhZ2VQb3J0QXJyYXkqIG1lc3NhZ2VQb3J0
cywgQXJyYXlCdWZmZXJBcnJheSogYXJyYXlCdWZmZXJzLCBib29sJiBkaWRUaHJvdykKK3sKKyAg
ICBKU1ZhbHVlUmVmIGV4Y2VwdGlvbiA9IDA7CisgICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4gc2VyaWFsaXplZFZhbHVlID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUodG9S
ZWYoc2NyaXB0U3RhdGUpLCB0b1JlZihzY3JpcHRTdGF0ZSwganNWYWx1ZSgpKSwgbWVzc2FnZVBv
cnRzLCBhcnJheUJ1ZmZlcnMsICZleGNlcHRpb24pOworICAgIGRpZFRocm93ID0gZXhjZXB0aW9u
ID8gdHJ1ZSA6IGZhbHNlOworICAgIHJldHVybiBzZXJpYWxpemVkVmFsdWUucmVsZWFzZSgpOwor
fQorCiBTY3JpcHRWYWx1ZSBTY3JpcHRWYWx1ZTo6ZGVzZXJpYWxpemUoU2NyaXB0U3RhdGUqIHNj
cmlwdFN0YXRlLCBTZXJpYWxpemVkU2NyaXB0VmFsdWUqIHZhbHVlLCBTZXJpYWxpemF0aW9uRXJy
b3JNb2RlIHRocm93RXhjZXB0aW9ucykKIHsKICAgICByZXR1cm4gU2NyaXB0VmFsdWUoc2NyaXB0
U3RhdGUtPmdsb2JhbERhdGEoKSwgdmFsdWUtPmRlc2VyaWFsaXplKHNjcmlwdFN0YXRlLCBzY3Jp
cHRTdGF0ZS0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLCAwLCB0aHJvd0V4Y2VwdGlvbnMpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oCmluZGV4IGNmYjk5ZTUuLjE1NzNh
NDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaApAQCAtNjMsNiAr
NjMsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFNjcmlwdFZhbHVlJiBv
dGhlcikgY29uc3QgeyByZXR1cm4gbV92YWx1ZSA9PSBvdGhlci5tX3ZhbHVlOyB9CiAKICAgICBQ
YXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwg
U2VyaWFsaXphdGlvbkVycm9yTW9kZSA9IFRocm93aW5nKTsKKyAgICBQYXNzUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgTWVzc2FnZVBvcnRBcnJh
eSosIEFycmF5QnVmZmVyQXJyYXkqLCBib29sJik7CiAgICAgc3RhdGljIFNjcmlwdFZhbHVlIGRl
c2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgU2VyaWFsaXplZFNjcmlwdFZhbHVlKiwgU2VyaWFsaXph
dGlvbkVycm9yTW9kZSA9IFRocm93aW5nKTsKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmlu
ZGV4IDliMWY3YzQuLjFmYjE3ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yNjIsNiArMjYyLDggQEAgc3ViIEFkZElu
Y2x1ZGVzRm9yVHlwZQogICAgICAgICAkaW5jbHVkZXNSZWYtPnsiSlNET01TdHJpbmdMaXN0Lmgi
fSA9IDE7CiAgICAgfSBlbHNpZiAoJHR5cGUgZXEgInVuc2lnbmVkIGxvbmdbXSIpIHsKICAgICAg
ICAgJGluY2x1ZGVzUmVmLT57Ijx3dGYvVmVjdG9yLmg+In0gPSAxOworICAgIH0gZWxzaWYgKCR0
eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAgICAgICRpbmNsdWRlc1JlZi0+
eyJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCJ9ID0gMTsKICAgICB9IGVsc2lmICgkaXNDYWxsYmFj
aykgewogICAgICAgICAkaW5jbHVkZXNSZWYtPnsiSlMke3R5cGV9LmgifSA9IDE7CiAgICAgfSBl
bHNpZiAoSXNUeXBlZEFycmF5VHlwZSgkdHlwZSkpIHsKQEAgLTI2MDQsMTEgKzI2MDYsMTEgQEAg
c3ViIEdlbmVyYXRlQ2FsbGJhY2tIZWFkZXIKICAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJD
b250ZW50LCAiICAgIENPTVBJTEVfQVNTRVJUKGZhbHNlKSIpOwogICAgICAgICAgICAgfQogCi0g
ICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHZpcnR1YWwgIiAuIEdldE5hdGl2
ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAiIC4gJGZ1bmN0aW9uLT5zaWdu
YXR1cmUtPm5hbWUgLiAiKCIpOworICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAg
ICB2aXJ0dWFsICIgLiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0
dXJlLT50eXBlKSAuICIgIiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKIAog
ICAgICAgICAgICAgbXkgQGFyZ3MgPSAoKTsKICAgICAgICAgICAgIGZvcmVhY2ggbXkgJHBhcmFt
IChAcGFyYW1zKSB7Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgk
cGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtLT5uYW1lKTsKKyAgICAgICAgICAgICAgICBwdXNo
KEBhcmdzLCBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAk
cGFyYW0tPm5hbWUpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgam9pbigiLCAiLCBAYXJncykpOwogCkBAIC0yNjgzLDcgKzI2ODUsNyBAQCBzdWIgR2Vu
ZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAg
IEFkZEluY2x1ZGVzRm9yVHlwZUluSW1wbCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSk7Ci0g
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0
aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNp
Z25hdHVyZS0+bmFtZSAuICIoIik7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxu
IiAuIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUp
IC4gIiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7
CiAKICAgICAgICAgICAgIG15IEBhcmdzID0gKCk7CiAgICAgICAgICAgICBteSBAYXJnc0NoZWNr
ID0gKCk7CkBAIC0yNjkxLDcgKzI2OTMsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVu
dGF0aW9uCiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAg
ICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7CiAgICAgICAgICAgICAgICAg
QWRkSW5jbHVkZXNGb3JUeXBlSW5JbXBsKCRwYXJhbS0+dHlwZSwgMSk7Ci0gICAgICAgICAgICAg
ICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFt
TmFtZSk7CisgICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZUZvckNhbGxi
YWNrcygkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtTmFtZSk7CiAgICAgICAgICAgICAgICAg
aWYgKCR0aGlzVHlwZSBhbmQgJHRoaXNUeXBlIGVxICRwYXJhbS0+dHlwZSkgewogICAgICAgICAg
ICAgICAgICAgICBwdXNoKEBhcmdzQ2hlY2ssIDw8RU5EKTsKICAgICBBU1NFUlQoJHtwYXJhbU5h
bWV9KTsKQEAgLTI3MTcsNiArMjcxOSw4IEBAIEVORAogICAgICAgICAgICAgICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZChqc1N0cmluZyhleGVjLCAke3BhcmFtTmFt
ZX0pKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzaWYgKCRwYXJhbS0+dHlwZSBlcSAiYm9v
bGVhbiIpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJn
cy5hcHBlbmQoanNCb29sZWFuKCR7cGFyYW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAgICAg
fSBlbHNpZiAoJHBhcmFtLT50eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAg
ICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKCRwYXJh
bU5hbWUgPyAkcGFyYW1OYW1lLT5kZXNlcmlhbGl6ZShleGVjLCBtX2RhdGEtPmdsb2JhbE9iamVj
dCgpLCAwKSA6IGpzTnVsbCgpKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAg
ICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKHRvSlMo
ZXhlYywgbV9kYXRhLT5nbG9iYWxPYmplY3QoKSwgJHtwYXJhbU5hbWV9KSk7XG4iKTsKICAgICAg
ICAgICAgICAgICB9CkBAIC0yODMyLDYgKzI4MzYsMTQgQEAgc3ViIEdldE5hdGl2ZVR5cGUKICAg
ICByZXR1cm4gIiR7dHlwZX0qIjsKIH0KIAorc3ViIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MK
K3sKKyAgICBteSAkdHlwZSA9IHNoaWZ0OworICAgIHJldHVybiAiU2VyaWFsaXplZFNjcmlwdFZh
bHVlKiIgaWYgJHR5cGUgZXEgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSI7CisKKyAgICByZXR1cm4g
R2V0TmF0aXZlVHlwZSgkdHlwZSk7Cit9CisKIHN1YiBHZXRTVkdQcm9wZXJ0eVR5cGVzCiB7CiAg
ICAgbXkgJGltcGxUeXBlID0gc2hpZnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0
RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXgg
NDFhNDczZC4uMTU0NjkyYyAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVz
LmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtODksNiAr
ODksNyBAQCBNQUNSTyAoV0VCS0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RF
RklORShFTkFCTEVfVklERU9fVFJBQ0sgIlRvZ2dsZSBUcmFjayBzdXBwb3J0IGZvciBIVE1MNSB2
aWRlbyIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJHTCAiVG9nZ2xl
IDNEIGNhbnZhcyAoV2ViR0wpIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfV0VCX0FVRElPICJUb2dnbGUgV2ViIEF1ZGlvIHN1cHBvcnQiIE9GRikKKyAgICBX
RUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX0lOVEVOVFMgIlRvZ2dsZSBXZWIgSW50ZW50
cyBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9TT0NL
RVRTICJUb2dnbGUgV2ViIFNvY2tldHMgc3VwcG9ydCIgT04pCiAgICAgV0VCS0lUX09QVElPTl9E
RUZJTkUoRU5BQkxFX1dFQl9USU1JTkcgIlRvZ2dsZSBXZWIgVGltaW5nIHN1cHBvcnQiIE9GRikK
ICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV09SS0VSUyAiVG9nZ2xlIFdlYiBXb3Jr
ZXJzIHN1cHBvcnQiIE9GRikKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtl
IGIvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKaW5kZXggYTA2ODU3ZC4uYzI2MTBmMiAxMDA2
NDQKLS0tIGEvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKKysrIGIvU291cmNlL2NtYWtlY29u
ZmlnLmguY21ha2UKQEAgLTcwLDYgKzcwLDcgQEAKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9WSUVX
UE9SVF9SRUZMT1cKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJHTAogI2NtYWtlZGVmaW5lMDEg
RU5BQkxFX1dFQl9BVURJTworI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9JTlRFTlRTCiAjY21h
a2VkZWZpbmUwMSBFTkFCTEVfV0VCX1NPQ0tFVFMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJf
VElNSU5HCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV09SS0VSUwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141239</attachid>
            <date>2012-05-10 13:38:29 -0700</date>
            <delta_ts>2012-05-10 14:12:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents5.patch</filename>
            <type>text/plain</type>
            <size>15956</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0MWRjZDBkLi4zN2ZmMTNk
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA5ICBTdGVwaGVuIENoZW5uZXkgIDxzY2hlbm5leUBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgU1ZHIEZpbHRlcnMgYWxsb3cgaW52YWxpZCBlbGVtZW50cyBhcyBjaGlsZHJlbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dAppbmRleCBjMWYxMDQ1Li42YjBhNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApA
QCAtMyw2ICszLDcgQEAgU0VUKFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dF
QkNPUkVfRElSfS9Nb2R1bGVzL2ZpbGVzeXN0ZW0iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVs
ZXMvZ2VvbG9jYXRpb24iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW5kZXhlZGRiIgor
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL2ludGVudHMiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvd2ViYXVkaW8iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2ViZGF0YWJh
c2UiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2Vic29ja2V0cyIKQEAgLTI1MDYsNiAr
MjUwNywyMCBAQCBJRiAoRU5BQkxFX1dFQl9BVURJTykKICAgICApCiBFTkRJRiAoKQogCitJRiAo
RU5BQkxFX1dFQl9JTlRFTlRTKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisg
ICAgICAgIE1vZHVsZXMvaW50ZW50cy9ET01XaW5kb3dJbnRlbnRzLmlkbAorICAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmlkbAorICAgICAgICBNb2R1bGVzL2ludGVudHMvSW50ZW50UmVz
dWx0Q2FsbGJhY2suaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRz
LmlkbAorICAgICkKKyAgICBMSVNUKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnRSZXF1
ZXN0LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRzLmNwcAorICAg
ICkKK0VORElGICgpCisKICMgTW9kdWxlcyB0aGF0IHRoZSBiaW5kaW5ncyBnZW5lcmF0b3Igc2Ny
aXB0cyBtYXkgdXNlCiBTRVQoU0NSSVBUU19SRVNPTFZFX1NVUFBMRU1FTlRBTAogICAgICR7V0VC
Q09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvSURMUGFyc2VyLnBtCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJm
OTBmNi4uNThkZWI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTA1LTEwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAg
V2ViIEludGVudHMgY29kZSBvbmx5IHN1cHBvcnRzIFY4CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTk1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBuZWNlc3NhcnkgYWJzdHJhY3Rpb24gZm9yIGpz
IERpY3Rpb25hcnkgYW5kIFNjcmlwdFZhbHVlIHNvIHRoYXQKKyAgICAgICAgdGhlIFdlYiBJbnRl
bnRzIGNvZGUgaW4gV2ViQ29yZSBjb21waWxlcyB3aXRoIEpTQywgbm90IGp1c3QgVjguCisKKyAg
ICAgICAgVGhpcyByZXF1aXJlZCBjaGFuZ2VzIGluIHRoZSBKU0MgYmluZGluZ3MgZ2VuZXJhdG9y
IHRvIHBhc3MKKyAgICAgICAgY2FsbGJhY2sgYXJndW1lbnRzIG9mIHR5cGUgU2VyaWFsaXplZFNj
cmlwdFZhbHVlIGFzIHJhdyBwb2ludGVycworICAgICAgICBpbnN0ZWFkIG9mIFJlZlB0ci4gVGhp
cyBtYXRjaGVzIHRoZSBjaGFuZ2UgbWFkZSB0byB0aGUgVjggYmluZGluZ3MKKyAgICAgICAgZ2Vu
ZXJhdG9yIGluIHIxMDQ1MzEuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAg
KiBNb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2ludGVudHMv
SW50ZW50Lmg6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEaWN0aW9uYXJ5OjpEaWN0aW9uYXJ5KToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6RGljdGlvbmFyeTo6Z2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFz
aE1hcCk6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5oOgorICAgICAgICAoRGlj
dGlvbmFyeSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcDoK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6aW5pdGlhbGl6ZXJPYmplY3QpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlw
dFZhbHVlOjpzZXJpYWxpemUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGlu
Z3MvanMvU2NyaXB0VmFsdWUuaDoKKyAgICAgICAgKFNjcmlwdFZhbHVlKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEFkZEluY2x1ZGVz
Rm9yVHlwZSk6CisgICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSGVhZGVyKToKKyAgICAgICAgKEdl
bmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbik6CisgICAgICAgIChHZXROYXRpdmVUeXBlRm9y
Q2FsbGJhY2tzKToKKwogMjAxMi0wNS0xMCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIENyYXNoIGluIEluc2VydFBhcmFncmFwaFNlcGFyYXRvckNvbW1h
bmQ6OmRvQXBwbHkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMv
SW50ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCmlu
ZGV4IGJmZWJhNjUuLmJmOTU2NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW50ZW50cy9JbnRlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9J
bnRlbnQuY3BwCkBAIC0zMyw3ICszMyw2IEBACiAKICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgi
CiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIKLSNpbmNsdWRlICJTY3JpcHRTdGF0ZS5oIgogI2lu
Y2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKaW5kZXggNDUwOTA5Ni4uZGZmNzA4
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaApAQCAtMzUsNiArMzUs
NyBAQAogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgogI2luY2x1
ZGUgIk1lc3NhZ2VQb3J0Q2hhbm5lbC5oIgorI2luY2x1ZGUgIlNjcmlwdFN0YXRlLmgiCiAjaW5j
bHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC00Myw3ICs0NCw2IEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotY2xhc3MgU2NyaXB0U3RhdGU7CiBjbGFzcyBTZXJpYWxpemVkU2NyaXB0VmFsdWU7
CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0RpY3Rpb25hcnkuY3BwCmluZGV4IDJjMWI3ODUuLjc5YmE2MGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCkBAIC0zNSw2ICszNSwxMSBAQCB1c2luZyBuYW1l
c3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK0RpY3Rpb25hcnk6OkRpY3Rpb25h
cnkoKQorICAgIDogbV9kaWN0aW9uYXJ5KDAsIDApCit7Cit9CisKIERpY3Rpb25hcnk6OkRpY3Rp
b25hcnkoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6SlNWYWx1ZSB2YWx1ZSkKICAgICA6IG1f
ZGljdGlvbmFyeShleGVjLCB2YWx1ZS5pc09iamVjdCgpID8gdmFsdWUuZ2V0T2JqZWN0KCkgOiAw
KQogewpAQCAtNDksNSArNTQsMzAgQEAgSlNPYmplY3QqIERpY3Rpb25hcnk6OmFzSlNPYmplY3Q8
Tm90aWZpY2F0aW9uPihOb3RpZmljYXRpb24qIG9iamVjdCkgY29uc3QKIH0KICNlbmRpZgogCiti
b29sIERpY3Rpb25hcnk6OmdldE93blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoV1RGOjpIYXNo
TWFwPFN0cmluZywgU3RyaW5nPiYgbWFwKSBjb25zdAoreworICAgIGlmICghbV9kaWN0aW9uYXJ5
LmlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgSlNPYmplY3QqIG9iamVj
dCA9ICBtX2RpY3Rpb25hcnkuaW5pdGlhbGl6ZXJPYmplY3QoKTsKKyAgICBFeGVjU3RhdGUqIGV4
ZWMgPSBtX2RpY3Rpb25hcnkuZXhlY1N0YXRlKCk7CisKKyAgICBQcm9wZXJ0eU5hbWVBcnJheSBw
cm9wZXJ0eU5hbWVzKGV4ZWMpOworICAgIEpTT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eU5hbWVzKG9i
amVjdCwgZXhlYywgcHJvcGVydHlOYW1lcywgRXhjbHVkZURvbnRFbnVtUHJvcGVydGllcyk7Cisg
ICAgZm9yIChQcm9wZXJ0eU5hbWVBcnJheTo6Y29uc3RfaXRlcmF0b3IgaXQgPSBwcm9wZXJ0eU5h
bWVzLmJlZ2luKCk7IGl0ICE9IHByb3BlcnR5TmFtZXMuZW5kKCk7IGl0KyspIHsKKyAgICAgICAg
U3RyaW5nIHN0cmluZ0tleShpdC0+dXN0cmluZygpLmltcGwoKSk7CisgICAgICAgIGlmIChzdHJp
bmdLZXkuaXNFbXB0eSgpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIEpTVmFsdWUg
dmFsdWUgPSBvYmplY3QtPmdldChleGVjLCAqaXQpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgVVN0cmluZyBzdHJpbmdW
YWx1ZSA9IHZhbHVlLnRvVVN0cmluZyhleGVjKTsKKyAgICAgICAgaWYgKCFleGVjLT5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgICAgIG1hcC5zZXQoc3RyaW5nS2V5LCBTdHJpbmcoc3RyaW5nVmFs
dWUuaW1wbCgpKSk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaAppbmRleCBkNDFjYjE3Li5jY2NlZWU3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oCkBAIC0zMSw2ICszMSw3IEBA
CiAjaW5jbHVkZSAiSlNFdmVudExpc3RlbmVyLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQu
aCIKICNpbmNsdWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgogCkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEV2ZW50TGlzdGVuZXI7CiAKIGNsYXNzIERp
Y3Rpb25hcnkgewogcHVibGljOgorICAgIERpY3Rpb25hcnkoKTsKICAgICBEaWN0aW9uYXJ5KEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlKTsKIAogICAgIC8vIFJldHVybnMgdHJ1ZSBpZiBh
IHZhbHVlIHdhcyBmb3VuZCBmb3IgdGhlIHByb3ZpZGVkIHByb3BlcnR5LgpAQCAtNTgsNiArNjAs
NyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9kaWN0
aW9uYXJ5LmlzVmFsaWQoKTsgfQogICAgIGJvb2wgaXNVbmRlZmluZWRPck51bGwoKSBjb25zdCB7
IHJldHVybiAhbV9kaWN0aW9uYXJ5LmlzVmFsaWQoKTsgfQorICAgIGJvb2wgZ2V0T3duUHJvcGVy
dGllc0FzU3RyaW5nSGFzaE1hcChXVEY6Okhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+JikgY29uc3Q7
CiAgICAgYm9vbCBnZXRXaXRoVW5kZWZpbmVkT3JOdWxsQ2hlY2soY29uc3QgU3RyaW5nJiwgU3Ry
aW5nJikgY29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJ
bk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUu
Y3BwCmluZGV4IGJiZTNmMWMuLjRkOTM2MzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1
ZGUgIkNhbGxiYWNrRnVuY3Rpb24uY3BwIgogI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1h
cC5jcHAiCiAjaW5jbHVkZSAiRE9NV3JhcHBlcldvcmxkLmNwcCIKKyNpbmNsdWRlICJEaWN0aW9u
YXJ5LmNwcCIKICNpbmNsdWRlICJHQ0NvbnRyb2xsZXIuY3BwIgogI2luY2x1ZGUgIkpTQXJyYXlC
dWZmZXJDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTQXR0ckN1c3RvbS5jcHAiCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcAppbmRleCBlYWQyOTdhLi5lNDYxYzIz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5jcHAKQEAgLTI2
LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJKU0RpY3Rpb25hcnku
aCIKIAorI2luY2x1ZGUgIkRpY3Rpb25hcnkuaCIKICNpbmNsdWRlICJKU0RPTVdpbmRvdy5oIgog
I2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlICJKU01lc3NhZ2VQb3J0Q3VzdG9t
LmgiCkBAIC05MSw2ICs5MiwxMSBAQCB2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4
ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgZG91YmxlJiByZXN1bHQpCiAgICAgcmVzdWx0
ID0gdmFsdWUudG9OdW1iZXIoZXhlYyk7CiB9CiAKK3ZvaWQgSlNEaWN0aW9uYXJ5Ojpjb252ZXJ0
VmFsdWUoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6SlNWYWx1ZSB2YWx1ZSwgRGljdGlvbmFy
eSYgcmVzdWx0KQoreworICAgIHJlc3VsdCA9IERpY3Rpb25hcnkoZXhlYywgdmFsdWUpOworfQor
CiB2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1
ZSB2YWx1ZSwgU3RyaW5nJiByZXN1bHQpCiB7CiAgICAgcmVzdWx0ID0gdXN0cmluZ1RvU3RyaW5n
KHZhbHVlLnRvU3RyaW5nKGV4ZWMpLT52YWx1ZShleGVjKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRGljdGlvbmFyeS5oCmluZGV4IDhmNjMzN2QuLmUwYmExNjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oCkBAIC0zMiw2ICszMiw3IEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRGljdGlvbmFyeTsKIGNsYXNzIERPTVdpbmRvdzsK
IGNsYXNzIEV2ZW50VGFyZ2V0OwogY2xhc3MgTm9kZTsKQEAgLTU5LDYgKzYwLDcgQEAgcHVibGlj
OgogICAgIGJvb2wgZ2V0KGNvbnN0IGNoYXIqIHByb3BlcnR5TmFtZSwgUmVzdWx0JikgY29uc3Q7
CiAKICAgICBKU0M6OkV4ZWNTdGF0ZSogZXhlY1N0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9leGVj
OyB9CisgICAgSlNDOjpKU09iamVjdCogaW5pdGlhbGl6ZXJPYmplY3QoKSBjb25zdCB7IHJldHVy
biBtX2luaXRpYWxpemVyT2JqZWN0OyB9CiAgICAgYm9vbCBpc1ZhbGlkKCkgY29uc3QgeyByZXR1
cm4gbV9leGVjICYmIG1faW5pdGlhbGl6ZXJPYmplY3Q7IH0KIAogcHJpdmF0ZToKQEAgLTg2LDYg
Kzg4LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkIHNob3J0JiByZXN1bHQpOwogICAgIHN0YXRp
YyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgdW5zaWdu
ZWQgbG9uZyBsb25nJiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgZG91YmxlJiByZXN1bHQpOworICAgIHN0YXRpYyB2
b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgRGljdGlvbmFy
eSYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTVmFsdWUsIFN0cmluZyYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0
VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFNjcmlwdFZhbHVlJiByZXN1bHQp
OwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNW
YWx1ZSwgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mIHJlc3VsdCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAKaW5kZXggZGVhMmE0OC4uZmQzMjg3MiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcApAQCAtMTA2LDYg
KzEwNiwxNCBAQCBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6
OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3RhdAogICAgIHJldHVybiBTZXJpYWxpemVk
U2NyaXB0VmFsdWU6OmNyZWF0ZShzY3JpcHRTdGF0ZSwganNWYWx1ZSgpLCAwLCAwLCB0aHJvd0V4
Y2VwdGlvbnMpOwogfQogCitQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gU2NyaXB0
VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3RhdGUsIE1lc3NhZ2VQb3J0QXJy
YXkqIG1lc3NhZ2VQb3J0cywgQXJyYXlCdWZmZXJBcnJheSogYXJyYXlCdWZmZXJzLCBib29sJiBk
aWRUaHJvdykKK3sKKyAgICBKU1ZhbHVlUmVmIGV4Y2VwdGlvbiA9IDA7CisgICAgUmVmUHRyPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplZFZhbHVlID0gU2VyaWFsaXplZFNjcmlwdFZh
bHVlOjpjcmVhdGUodG9SZWYoc2NyaXB0U3RhdGUpLCB0b1JlZihzY3JpcHRTdGF0ZSwganNWYWx1
ZSgpKSwgbWVzc2FnZVBvcnRzLCBhcnJheUJ1ZmZlcnMsICZleGNlcHRpb24pOworICAgIGRpZFRo
cm93ID0gZXhjZXB0aW9uID8gdHJ1ZSA6IGZhbHNlOworICAgIHJldHVybiBzZXJpYWxpemVkVmFs
dWUucmVsZWFzZSgpOworfQorCiBTY3JpcHRWYWx1ZSBTY3JpcHRWYWx1ZTo6ZGVzZXJpYWxpemUo
U2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRlLCBTZXJpYWxpemVkU2NyaXB0VmFsdWUqIHZhbHVlLCBT
ZXJpYWxpemF0aW9uRXJyb3JNb2RlIHRocm93RXhjZXB0aW9ucykKIHsKICAgICByZXR1cm4gU2Ny
aXB0VmFsdWUoc2NyaXB0U3RhdGUtPmdsb2JhbERhdGEoKSwgdmFsdWUtPmRlc2VyaWFsaXplKHNj
cmlwdFN0YXRlLCBzY3JpcHRTdGF0ZS0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLCAwLCB0aHJvd0V4
Y2VwdGlvbnMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1Njcmlw
dFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oCmluZGV4
IGNmYjk5ZTUuLjE1NzNhNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1NjcmlwdFZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFs
dWUuaApAQCAtNjMsNiArNjMsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0
IFNjcmlwdFZhbHVlJiBvdGhlcikgY29uc3QgeyByZXR1cm4gbV92YWx1ZSA9PSBvdGhlci5tX3Zh
bHVlOyB9CiAKICAgICBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXpl
KFNjcmlwdFN0YXRlKiwgU2VyaWFsaXphdGlvbkVycm9yTW9kZSA9IFRocm93aW5nKTsKKyAgICBQ
YXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwg
TWVzc2FnZVBvcnRBcnJheSosIEFycmF5QnVmZmVyQXJyYXkqLCBib29sJik7CiAgICAgc3RhdGlj
IFNjcmlwdFZhbHVlIGRlc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgU2VyaWFsaXplZFNjcmlwdFZh
bHVlKiwgU2VyaWFsaXphdGlvbkVycm9yTW9kZSA9IFRocm93aW5nKTsKIAogI2lmIEVOQUJMRShJ
TlNQRUNUT1IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvckpTLnBtCmluZGV4IDliMWY3YzQuLjFmYjE3ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yNjIsNiArMjYy
LDggQEAgc3ViIEFkZEluY2x1ZGVzRm9yVHlwZQogICAgICAgICAkaW5jbHVkZXNSZWYtPnsiSlNE
T01TdHJpbmdMaXN0LmgifSA9IDE7CiAgICAgfSBlbHNpZiAoJHR5cGUgZXEgInVuc2lnbmVkIGxv
bmdbXSIpIHsKICAgICAgICAgJGluY2x1ZGVzUmVmLT57Ijx3dGYvVmVjdG9yLmg+In0gPSAxOwor
ICAgIH0gZWxzaWYgKCR0eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAgICAg
ICRpbmNsdWRlc1JlZi0+eyJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCJ9ID0gMTsKICAgICB9IGVs
c2lmICgkaXNDYWxsYmFjaykgewogICAgICAgICAkaW5jbHVkZXNSZWYtPnsiSlMke3R5cGV9Lmgi
fSA9IDE7CiAgICAgfSBlbHNpZiAoSXNUeXBlZEFycmF5VHlwZSgkdHlwZSkpIHsKQEAgLTI2MDQs
MTEgKzI2MDYsMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tIZWFkZXIKICAgICAgICAgICAgICAg
ICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIENPTVBJTEVfQVNTRVJUKGZhbHNlKSIpOwogICAg
ICAgICAgICAgfQogCi0gICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHZpcnR1
YWwgIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAiIC4g
JGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIpOworICAgICAgICAgICAgcHVzaChAaGVh
ZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsICIgLiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRm
dW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgIiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5u
YW1lIC4gIigiKTsKIAogICAgICAgICAgICAgbXkgQGFyZ3MgPSAoKTsKICAgICAgICAgICAgIGZv
cmVhY2ggbXkgJHBhcmFtIChAcGFyYW1zKSB7Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJncywg
R2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtLT5uYW1lKTsKKyAgICAg
ICAgICAgICAgICBwdXNoKEBhcmdzLCBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRwYXJhbS0+
dHlwZSkgLiAiICIgLiAkcGFyYW0tPm5hbWUpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAg
cHVzaChAaGVhZGVyQ29udGVudCwgam9pbigiLCAiLCBAYXJncykpOwogCkBAIC0yNjgzLDcgKzI2
ODUsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICB9
CiAKICAgICAgICAgICAgIEFkZEluY2x1ZGVzRm9yVHlwZUluSW1wbCgkZnVuY3Rpb24tPnNpZ25h
dHVyZS0+dHlwZSk7Ci0gICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxuIiAuIEdldE5h
dGl2ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAke2NsYXNzTmFtZX06OiIg
LiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CisgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MoJGZ1bmN0aW9uLT5z
aWduYXR1cmUtPnR5cGUpIC4gIiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVy
ZS0+bmFtZSAuICIoIik7CiAKICAgICAgICAgICAgIG15IEBhcmdzID0gKCk7CiAgICAgICAgICAg
ICBteSBAYXJnc0NoZWNrID0gKCk7CkBAIC0yNjkxLDcgKzI2OTMsNyBAQCBzdWIgR2VuZXJhdGVD
YWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBh
cmFtcykgewogICAgICAgICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7CiAg
ICAgICAgICAgICAgICAgQWRkSW5jbHVkZXNGb3JUeXBlSW5JbXBsKCRwYXJhbS0+dHlwZSwgMSk7
Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUp
IC4gIiAiIC4gJHBhcmFtTmFtZSk7CisgICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0
aXZlVHlwZUZvckNhbGxiYWNrcygkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtTmFtZSk7CiAg
ICAgICAgICAgICAgICAgaWYgKCR0aGlzVHlwZSBhbmQgJHRoaXNUeXBlIGVxICRwYXJhbS0+dHlw
ZSkgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBhcmdzQ2hlY2ssIDw8RU5EKTsKICAgICBB
U1NFUlQoJHtwYXJhbU5hbWV9KTsKQEAgLTI3MTcsNiArMjcxOSw4IEBAIEVORAogICAgICAgICAg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZChqc1N0cmluZyhl
eGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzaWYgKCRwYXJh
bS0+dHlwZSBlcSAiYm9vbGVhbiIpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNCb29sZWFuKCR7cGFyYW1OYW1lfSkpO1xuIik7Cisg
ICAgICAgICAgICAgICAgfSBlbHNpZiAoJHBhcmFtLT50eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0
VmFsdWUiKSB7CisgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFy
Z3MuYXBwZW5kKCRwYXJhbU5hbWUgPyAkcGFyYW1OYW1lLT5kZXNlcmlhbGl6ZShleGVjLCBtX2Rh
dGEtPmdsb2JhbE9iamVjdCgpLCAwKSA6IGpzTnVsbCgpKTtcbiIpOwogICAgICAgICAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFy
Z3MuYXBwZW5kKHRvSlMoZXhlYywgbV9kYXRhLT5nbG9iYWxPYmplY3QoKSwgJHtwYXJhbU5hbWV9
KSk7XG4iKTsKICAgICAgICAgICAgICAgICB9CkBAIC0yODMyLDYgKzI4MzYsMTQgQEAgc3ViIEdl
dE5hdGl2ZVR5cGUKICAgICByZXR1cm4gIiR7dHlwZX0qIjsKIH0KIAorc3ViIEdldE5hdGl2ZVR5
cGVGb3JDYWxsYmFja3MKK3sKKyAgICBteSAkdHlwZSA9IHNoaWZ0OworICAgIHJldHVybiAiU2Vy
aWFsaXplZFNjcmlwdFZhbHVlKiIgaWYgJHR5cGUgZXEgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSI7
CisKKyAgICByZXR1cm4gR2V0TmF0aXZlVHlwZSgkdHlwZSk7Cit9CisKIHN1YiBHZXRTVkdQcm9w
ZXJ0eVR5cGVzCiB7CiAgICAgbXkgJGltcGxUeXBlID0gc2hpZnQ7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVy
ZXMuY21ha2UKaW5kZXggNDFhNDczZC4uMTU0NjkyYyAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtl
L1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5j
bWFrZQpAQCAtODksNiArODksNyBAQCBNQUNSTyAoV0VCS0lUX09QVElPTl9CRUdJTikKICAgICBX
RUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfVklERU9fVFJBQ0sgIlRvZ2dsZSBUcmFjayBzdXBw
b3J0IGZvciBIVE1MNSB2aWRlbyIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJM
RV9XRUJHTCAiVG9nZ2xlIDNEIGNhbnZhcyAoV2ViR0wpIHN1cHBvcnQiIE9GRikKICAgICBXRUJL
SVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX0FVRElPICJUb2dnbGUgV2ViIEF1ZGlvIHN1cHBv
cnQiIE9GRikKKyAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX0lOVEVOVFMgIlRv
Z2dsZSBXZWIgSW50ZW50cyBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUo
RU5BQkxFX1dFQl9TT0NLRVRTICJUb2dnbGUgV2ViIFNvY2tldHMgc3VwcG9ydCIgT04pCiAgICAg
V0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9USU1JTkcgIlRvZ2dsZSBXZWIgVGltaW5n
IHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV09SS0VSUyAi
VG9nZ2xlIFdlYiBXb3JrZXJzIHN1cHBvcnQiIE9GRikKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFr
ZWNvbmZpZy5oLmNtYWtlIGIvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKaW5kZXggYTA2ODU3
ZC4uYzI2MTBmMiAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKKysrIGIv
U291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKQEAgLTcwLDYgKzcwLDcgQEAKICNjbWFrZWRlZmlu
ZTAxIEVOQUJMRV9WSUVXUE9SVF9SRUZMT1cKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJHTAog
I2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9BVURJTworI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dF
Ql9JTlRFTlRTCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX1NPQ0tFVFMKICNjbWFrZWRlZmlu
ZTAxIEVOQUJMRV9XRUJfVElNSU5HCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV09SS0VSUwo=
</data>
<flag name="commit-queue"
          id="147342"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141248</attachid>
            <date>2012-05-10 14:12:16 -0700</date>
            <delta_ts>2012-05-10 14:49:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents6.patch</filename>
            <type>text/plain</type>
            <size>16243</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0MWRjZDBkLi4zN2ZmMTNk
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA5ICBTdGVwaGVuIENoZW5uZXkgIDxzY2hlbm5leUBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgU1ZHIEZpbHRlcnMgYWxsb3cgaW52YWxpZCBlbGVtZW50cyBhcyBjaGlsZHJlbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dAppbmRleCBjMWYxMDQ1Li42YjBhNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApA
QCAtMyw2ICszLDcgQEAgU0VUKFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dF
QkNPUkVfRElSfS9Nb2R1bGVzL2ZpbGVzeXN0ZW0iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVs
ZXMvZ2VvbG9jYXRpb24iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW5kZXhlZGRiIgor
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL2ludGVudHMiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvd2ViYXVkaW8iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2ViZGF0YWJh
c2UiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2Vic29ja2V0cyIKQEAgLTI1MDYsNiAr
MjUwNywyMCBAQCBJRiAoRU5BQkxFX1dFQl9BVURJTykKICAgICApCiBFTkRJRiAoKQogCitJRiAo
RU5BQkxFX1dFQl9JTlRFTlRTKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisg
ICAgICAgIE1vZHVsZXMvaW50ZW50cy9ET01XaW5kb3dJbnRlbnRzLmlkbAorICAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmlkbAorICAgICAgICBNb2R1bGVzL2ludGVudHMvSW50ZW50UmVz
dWx0Q2FsbGJhY2suaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRz
LmlkbAorICAgICkKKyAgICBMSVNUKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnRSZXF1
ZXN0LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRzLmNwcAorICAg
ICkKK0VORElGICgpCisKICMgTW9kdWxlcyB0aGF0IHRoZSBiaW5kaW5ncyBnZW5lcmF0b3Igc2Ny
aXB0cyBtYXkgdXNlCiBTRVQoU0NSSVBUU19SRVNPTFZFX1NVUFBMRU1FTlRBTAogICAgICR7V0VC
Q09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvSURMUGFyc2VyLnBtCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJm
OTBmNi4uNThkZWI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTA1LTEwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAg
V2ViIEludGVudHMgY29kZSBvbmx5IHN1cHBvcnRzIFY4CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTk1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBuZWNlc3NhcnkgYWJzdHJhY3Rpb24gZm9yIGpz
IERpY3Rpb25hcnkgYW5kIFNjcmlwdFZhbHVlIHNvIHRoYXQKKyAgICAgICAgdGhlIFdlYiBJbnRl
bnRzIGNvZGUgaW4gV2ViQ29yZSBjb21waWxlcyB3aXRoIEpTQywgbm90IGp1c3QgVjguCisKKyAg
ICAgICAgVGhpcyByZXF1aXJlZCBjaGFuZ2VzIGluIHRoZSBKU0MgYmluZGluZ3MgZ2VuZXJhdG9y
IHRvIHBhc3MKKyAgICAgICAgY2FsbGJhY2sgYXJndW1lbnRzIG9mIHR5cGUgU2VyaWFsaXplZFNj
cmlwdFZhbHVlIGFzIHJhdyBwb2ludGVycworICAgICAgICBpbnN0ZWFkIG9mIFJlZlB0ci4gVGhp
cyBtYXRjaGVzIHRoZSBjaGFuZ2UgbWFkZSB0byB0aGUgVjggYmluZGluZ3MKKyAgICAgICAgZ2Vu
ZXJhdG9yIGluIHIxMDQ1MzEuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAg
KiBNb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2ludGVudHMv
SW50ZW50Lmg6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEaWN0aW9uYXJ5OjpEaWN0aW9uYXJ5KToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6RGljdGlvbmFyeTo6Z2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFz
aE1hcCk6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5oOgorICAgICAgICAoRGlj
dGlvbmFyeSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcDoK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6aW5pdGlhbGl6ZXJPYmplY3QpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlw
dFZhbHVlOjpzZXJpYWxpemUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGlu
Z3MvanMvU2NyaXB0VmFsdWUuaDoKKyAgICAgICAgKFNjcmlwdFZhbHVlKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEFkZEluY2x1ZGVz
Rm9yVHlwZSk6CisgICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSGVhZGVyKToKKyAgICAgICAgKEdl
bmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbik6CisgICAgICAgIChHZXROYXRpdmVUeXBlRm9y
Q2FsbGJhY2tzKToKKwogMjAxMi0wNS0xMCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIENyYXNoIGluIEluc2VydFBhcmFncmFwaFNlcGFyYXRvckNvbW1h
bmQ6OmRvQXBwbHkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMv
SW50ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCmlu
ZGV4IGJmZWJhNjUuLmJmOTU2NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW50ZW50cy9JbnRlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9J
bnRlbnQuY3BwCkBAIC0zMyw3ICszMyw2IEBACiAKICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgi
CiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIKLSNpbmNsdWRlICJTY3JpcHRTdGF0ZS5oIgogI2lu
Y2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKaW5kZXggNDUwOTA5Ni4uZGZmNzA4
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaApAQCAtMzUsNiArMzUs
NyBAQAogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgogI2luY2x1
ZGUgIk1lc3NhZ2VQb3J0Q2hhbm5lbC5oIgorI2luY2x1ZGUgIlNjcmlwdFN0YXRlLmgiCiAjaW5j
bHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC00Myw3ICs0NCw2IEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotY2xhc3MgU2NyaXB0U3RhdGU7CiBjbGFzcyBTZXJpYWxpemVkU2NyaXB0VmFsdWU7
CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0RpY3Rpb25hcnkuY3BwCmluZGV4IDJjMWI3ODUuLjc5YmE2MGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCkBAIC0zNSw2ICszNSwxMSBAQCB1c2luZyBuYW1l
c3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK0RpY3Rpb25hcnk6OkRpY3Rpb25h
cnkoKQorICAgIDogbV9kaWN0aW9uYXJ5KDAsIDApCit7Cit9CisKIERpY3Rpb25hcnk6OkRpY3Rp
b25hcnkoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6SlNWYWx1ZSB2YWx1ZSkKICAgICA6IG1f
ZGljdGlvbmFyeShleGVjLCB2YWx1ZS5pc09iamVjdCgpID8gdmFsdWUuZ2V0T2JqZWN0KCkgOiAw
KQogewpAQCAtNDksNSArNTQsMzAgQEAgSlNPYmplY3QqIERpY3Rpb25hcnk6OmFzSlNPYmplY3Q8
Tm90aWZpY2F0aW9uPihOb3RpZmljYXRpb24qIG9iamVjdCkgY29uc3QKIH0KICNlbmRpZgogCiti
b29sIERpY3Rpb25hcnk6OmdldE93blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoV1RGOjpIYXNo
TWFwPFN0cmluZywgU3RyaW5nPiYgbWFwKSBjb25zdAoreworICAgIGlmICghbV9kaWN0aW9uYXJ5
LmlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgSlNPYmplY3QqIG9iamVj
dCA9ICBtX2RpY3Rpb25hcnkuaW5pdGlhbGl6ZXJPYmplY3QoKTsKKyAgICBFeGVjU3RhdGUqIGV4
ZWMgPSBtX2RpY3Rpb25hcnkuZXhlY1N0YXRlKCk7CisKKyAgICBQcm9wZXJ0eU5hbWVBcnJheSBw
cm9wZXJ0eU5hbWVzKGV4ZWMpOworICAgIEpTT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eU5hbWVzKG9i
amVjdCwgZXhlYywgcHJvcGVydHlOYW1lcywgRXhjbHVkZURvbnRFbnVtUHJvcGVydGllcyk7Cisg
ICAgZm9yIChQcm9wZXJ0eU5hbWVBcnJheTo6Y29uc3RfaXRlcmF0b3IgaXQgPSBwcm9wZXJ0eU5h
bWVzLmJlZ2luKCk7IGl0ICE9IHByb3BlcnR5TmFtZXMuZW5kKCk7IGl0KyspIHsKKyAgICAgICAg
U3RyaW5nIHN0cmluZ0tleShpdC0+dXN0cmluZygpLmltcGwoKSk7CisgICAgICAgIGlmIChzdHJp
bmdLZXkuaXNFbXB0eSgpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIEpTVmFsdWUg
dmFsdWUgPSBvYmplY3QtPmdldChleGVjLCAqaXQpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgVVN0cmluZyBzdHJpbmdW
YWx1ZSA9IHZhbHVlLnRvVVN0cmluZyhleGVjKTsKKyAgICAgICAgaWYgKCFleGVjLT5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgICAgIG1hcC5zZXQoc3RyaW5nS2V5LCBTdHJpbmcoc3RyaW5nVmFs
dWUuaW1wbCgpKSk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaAppbmRleCBkNDFjYjE3Li5jY2NlZWU3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oCkBAIC0zMSw2ICszMSw3IEBA
CiAjaW5jbHVkZSAiSlNFdmVudExpc3RlbmVyLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQu
aCIKICNpbmNsdWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgogCkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEV2ZW50TGlzdGVuZXI7CiAKIGNsYXNzIERp
Y3Rpb25hcnkgewogcHVibGljOgorICAgIERpY3Rpb25hcnkoKTsKICAgICBEaWN0aW9uYXJ5KEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlKTsKIAogICAgIC8vIFJldHVybnMgdHJ1ZSBpZiBh
IHZhbHVlIHdhcyBmb3VuZCBmb3IgdGhlIHByb3ZpZGVkIHByb3BlcnR5LgpAQCAtNTgsNiArNjAs
NyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9kaWN0
aW9uYXJ5LmlzVmFsaWQoKTsgfQogICAgIGJvb2wgaXNVbmRlZmluZWRPck51bGwoKSBjb25zdCB7
IHJldHVybiAhbV9kaWN0aW9uYXJ5LmlzVmFsaWQoKTsgfQorICAgIGJvb2wgZ2V0T3duUHJvcGVy
dGllc0FzU3RyaW5nSGFzaE1hcChXVEY6Okhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+JikgY29uc3Q7
CiAgICAgYm9vbCBnZXRXaXRoVW5kZWZpbmVkT3JOdWxsQ2hlY2soY29uc3QgU3RyaW5nJiwgU3Ry
aW5nJikgY29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJ
bk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUu
Y3BwCmluZGV4IGJiZTNmMWMuLjVhNmM4MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1
ZGUgIkNhbGxiYWNrRnVuY3Rpb24uY3BwIgogI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1h
cC5jcHAiCiAjaW5jbHVkZSAiRE9NV3JhcHBlcldvcmxkLmNwcCIKKyNpbmNsdWRlICJEaWN0aW9u
YXJ5LmNwcCIKICNpbmNsdWRlICJHQ0NvbnRyb2xsZXIuY3BwIgogI2luY2x1ZGUgIkpTQXJyYXlC
dWZmZXJDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTQXR0ckN1c3RvbS5jcHAiCkBAIC0xNTIsNiAr
MTUzLDcgQEAKICNpbmNsdWRlICJKU1VpbnQzMkFycmF5Q3VzdG9tLmNwcCIKICNpbmNsdWRlICJK
U1VpbnQ4QXJyYXlDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTVWludDhDbGFtcGVkQXJyYXlDdXN0
b20uY3BwIgorI2luY2x1ZGUgIkpTVmFsdWUuY3BwIgogI2luY2x1ZGUgIkpTV2ViS2l0QW5pbWF0
aW9uQ3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU1dlYktpdEFuaW1hdGlvbkxpc3RDdXN0b20uY3Bw
IgogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlQ3VzdG9tLmNwcCIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwCmluZGV4IGVhZDI5N2EuLmU0NjFj
MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcApAQCAt
MjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkpTRGljdGlvbmFy
eS5oIgogCisjaW5jbHVkZSAiRGljdGlvbmFyeS5oIgogI2luY2x1ZGUgIkpTRE9NV2luZG93Lmgi
CiAjaW5jbHVkZSAiSlNFdmVudFRhcmdldC5oIgogI2luY2x1ZGUgIkpTTWVzc2FnZVBvcnRDdXN0
b20uaCIKQEAgLTkxLDYgKzkyLDExIEBAIHZvaWQgSlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUo
RXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIHZhbHVlLCBkb3VibGUmIHJlc3VsdCkKICAgICByZXN1
bHQgPSB2YWx1ZS50b051bWJlcihleGVjKTsKIH0KIAordm9pZCBKU0RpY3Rpb25hcnk6OmNvbnZl
cnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNDOjpKU1ZhbHVlIHZhbHVlLCBEaWN0aW9u
YXJ5JiByZXN1bHQpCit7CisgICAgcmVzdWx0ID0gRGljdGlvbmFyeShleGVjLCB2YWx1ZSk7Cit9
CisKIHZvaWQgSlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUoRXhlY1N0YXRlKiBleGVjLCBKU1Zh
bHVlIHZhbHVlLCBTdHJpbmcmIHJlc3VsdCkKIHsKICAgICByZXN1bHQgPSB1c3RyaW5nVG9TdHJp
bmcodmFsdWUudG9TdHJpbmcoZXhlYyktPnZhbHVlKGV4ZWMpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmgKaW5kZXggOGY2MzM3ZC4uZTBiYTE2OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmgKQEAgLTMyLDYgKzMyLDcgQEAKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBEaWN0aW9uYXJ5OwogY2xhc3MgRE9NV2luZG93
OwogY2xhc3MgRXZlbnRUYXJnZXQ7CiBjbGFzcyBOb2RlOwpAQCAtNTksNiArNjAsNyBAQCBwdWJs
aWM6CiAgICAgYm9vbCBnZXQoY29uc3QgY2hhciogcHJvcGVydHlOYW1lLCBSZXN1bHQmKSBjb25z
dDsKIAogICAgIEpTQzo6RXhlY1N0YXRlKiBleGVjU3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2V4
ZWM7IH0KKyAgICBKU0M6OkpTT2JqZWN0KiBpbml0aWFsaXplck9iamVjdCgpIGNvbnN0IHsgcmV0
dXJuIG1faW5pdGlhbGl6ZXJPYmplY3Q7IH0KICAgICBib29sIGlzVmFsaWQoKSBjb25zdCB7IHJl
dHVybiBtX2V4ZWMgJiYgbV9pbml0aWFsaXplck9iamVjdDsgfQogCiBwcml2YXRlOgpAQCAtODYs
NiArODgsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgdW5zaWduZWQgc2hvcnQmIHJlc3VsdCk7CiAgICAgc3Rh
dGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCB1bnNp
Z25lZCBsb25nIGxvbmcmIHJlc3VsdCk7CiAgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBkb3VibGUmIHJlc3VsdCk7CisgICAgc3RhdGlj
IHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBEaWN0aW9u
YXJ5JiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNWYWx1ZSwgU3RyaW5nJiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZl
cnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgU2NyaXB0VmFsdWUmIHJlc3Vs
dCk7CiAgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U1ZhbHVlLCBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYgcmVzdWx0KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcAppbmRleCBkZWEyYTQ4Li5mZDMyODcy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuY3BwCkBAIC0xMDYs
NiArMTA2LDE0IEBAIFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBTY3JpcHRWYWx1
ZTo6c2VyaWFsaXplKFNjcmlwdFN0YXRlKiBzY3JpcHRTdGF0CiAgICAgcmV0dXJuIFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlKHNjcmlwdFN0YXRlLCBqc1ZhbHVlKCksIDAsIDAsIHRocm93
RXhjZXB0aW9ucyk7CiB9CiAKK1Bhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBTY3Jp
cHRWYWx1ZTo6c2VyaWFsaXplKFNjcmlwdFN0YXRlKiBzY3JpcHRTdGF0ZSwgTWVzc2FnZVBvcnRB
cnJheSogbWVzc2FnZVBvcnRzLCBBcnJheUJ1ZmZlckFycmF5KiBhcnJheUJ1ZmZlcnMsIGJvb2wm
IGRpZFRocm93KQoreworICAgIEpTVmFsdWVSZWYgZXhjZXB0aW9uID0gMDsKKyAgICBSZWZQdHI8
U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzZXJpYWxpemVkVmFsdWUgPSBTZXJpYWxpemVkU2NyaXB0
VmFsdWU6OmNyZWF0ZSh0b1JlZihzY3JpcHRTdGF0ZSksIHRvUmVmKHNjcmlwdFN0YXRlLCBqc1Zh
bHVlKCkpLCBtZXNzYWdlUG9ydHMsIGFycmF5QnVmZmVycywgJmV4Y2VwdGlvbik7CisgICAgZGlk
VGhyb3cgPSBleGNlcHRpb24gPyB0cnVlIDogZmFsc2U7CisgICAgcmV0dXJuIHNlcmlhbGl6ZWRW
YWx1ZS5yZWxlYXNlKCk7Cit9CisKIFNjcmlwdFZhbHVlIFNjcmlwdFZhbHVlOjpkZXNlcmlhbGl6
ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3RhdGUsIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSogdmFsdWUs
IFNlcmlhbGl6YXRpb25FcnJvck1vZGUgdGhyb3dFeGNlcHRpb25zKQogewogICAgIHJldHVybiBT
Y3JpcHRWYWx1ZShzY3JpcHRTdGF0ZS0+Z2xvYmFsRGF0YSgpLCB2YWx1ZS0+ZGVzZXJpYWxpemUo
c2NyaXB0U3RhdGUsIHNjcmlwdFN0YXRlLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCksIDAsIHRocm93
RXhjZXB0aW9ucykpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2Ny
aXB0VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgKaW5k
ZXggY2ZiOTllNS4uMTU3M2E0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvU2NyaXB0VmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRW
YWx1ZS5oCkBAIC02Myw2ICs2Myw3IEBAIHB1YmxpYzoKICAgICBib29sIG9wZXJhdG9yPT0oY29u
c3QgU2NyaXB0VmFsdWUmIG90aGVyKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlID09IG90aGVyLm1f
dmFsdWU7IH0KIAogICAgIFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzZXJpYWxp
emUoU2NyaXB0U3RhdGUqLCBTZXJpYWxpemF0aW9uRXJyb3JNb2RlID0gVGhyb3dpbmcpOworICAg
IFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzZXJpYWxpemUoU2NyaXB0U3RhdGUq
LCBNZXNzYWdlUG9ydEFycmF5KiwgQXJyYXlCdWZmZXJBcnJheSosIGJvb2wmKTsKICAgICBzdGF0
aWMgU2NyaXB0VmFsdWUgZGVzZXJpYWxpemUoU2NyaXB0U3RhdGUqLCBTZXJpYWxpemVkU2NyaXB0
VmFsdWUqLCBTZXJpYWxpemF0aW9uRXJyb3JNb2RlID0gVGhyb3dpbmcpOwogCiAjaWYgRU5BQkxF
KElOU1BFQ1RPUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2Rl
R2VuZXJhdG9ySlMucG0KaW5kZXggOWIxZjdjNC4uMWZiMTdlNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTI2Miw2ICsy
NjIsOCBAQCBzdWIgQWRkSW5jbHVkZXNGb3JUeXBlCiAgICAgICAgICRpbmNsdWRlc1JlZi0+eyJK
U0RPTVN0cmluZ0xpc3QuaCJ9ID0gMTsKICAgICB9IGVsc2lmICgkdHlwZSBlcSAidW5zaWduZWQg
bG9uZ1tdIikgewogICAgICAgICAkaW5jbHVkZXNSZWYtPnsiPHd0Zi9WZWN0b3IuaD4ifSA9IDE7
CisgICAgfSBlbHNpZiAoJHR5cGUgZXEgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSIpIHsKKyAgICAg
ICAgJGluY2x1ZGVzUmVmLT57IlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIn0gPSAxOwogICAgIH0g
ZWxzaWYgKCRpc0NhbGxiYWNrKSB7CiAgICAgICAgICRpbmNsdWRlc1JlZi0+eyJKUyR7dHlwZX0u
aCJ9ID0gMTsKICAgICB9IGVsc2lmIChJc1R5cGVkQXJyYXlUeXBlKCR0eXBlKSkgewpAQCAtMjYw
NCwxMSArMjYwNiwxMSBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0hlYWRlcgogICAgICAgICAgICAg
ICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgQ09NUElMRV9BU1NFUlQoZmFsc2UpIik7CiAg
ICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgdmly
dHVhbCAiIC4gR2V0TmF0aXZlVHlwZSgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgLiAiICIg
LiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CisgICAgICAgICAgICBwdXNoKEBo
ZWFkZXJDb250ZW50LCAiICAgIHZpcnR1YWwgIiAuIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3Mo
JGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUt
Pm5hbWUgLiAiKCIpOwogCiAgICAgICAgICAgICBteSBAYXJncyA9ICgpOwogICAgICAgICAgICAg
Zm9yZWFjaCBteSAkcGFyYW0gKEBwYXJhbXMpIHsKLSAgICAgICAgICAgICAgICBwdXNoKEBhcmdz
LCBHZXROYXRpdmVUeXBlKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAkcGFyYW0tPm5hbWUpOworICAg
ICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MoJHBhcmFt
LT50eXBlKSAuICIgIiAuICRwYXJhbS0+bmFtZSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBwdXNoKEBoZWFkZXJDb250ZW50LCBqb2luKCIsICIsIEBhcmdzKSk7CiAKQEAgLTI2ODMsNyAr
MjY4NSw3IEBAIHN1YiBHZW5lcmF0ZUNhbGxiYWNrSW1wbGVtZW50YXRpb24KICAgICAgICAgICAg
IH0KIAogICAgICAgICAgICAgQWRkSW5jbHVkZXNGb3JUeXBlSW5JbXBsKCRmdW5jdGlvbi0+c2ln
bmF0dXJlLT50eXBlKTsKLSAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4iIC4gR2V0
TmF0aXZlVHlwZSgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgLiAiICR7Y2xhc3NOYW1lfTo6
IiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKKyAgICAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiXG4iIC4gR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkZnVuY3Rpb24t
PnNpZ25hdHVyZS0+dHlwZSkgLiAiICR7Y2xhc3NOYW1lfTo6IiAuICRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5uYW1lIC4gIigiKTsKIAogICAgICAgICAgICAgbXkgQGFyZ3MgPSAoKTsKICAgICAgICAg
ICAgIG15IEBhcmdzQ2hlY2sgPSAoKTsKQEAgLTI2OTEsNyArMjY5Myw3IEBAIHN1YiBHZW5lcmF0
ZUNhbGxiYWNrSW1wbGVtZW50YXRpb24KICAgICAgICAgICAgIGZvcmVhY2ggbXkgJHBhcmFtIChA
cGFyYW1zKSB7CiAgICAgICAgICAgICAgICAgbXkgJHBhcmFtTmFtZSA9ICRwYXJhbS0+bmFtZTsK
ICAgICAgICAgICAgICAgICBBZGRJbmNsdWRlc0ZvclR5cGVJbkltcGwoJHBhcmFtLT50eXBlLCAx
KTsKLSAgICAgICAgICAgICAgICBwdXNoKEBhcmdzLCBHZXROYXRpdmVUeXBlKCRwYXJhbS0+dHlw
ZSkgLiAiICIgLiAkcGFyYW1OYW1lKTsKKyAgICAgICAgICAgICAgICBwdXNoKEBhcmdzLCBHZXRO
YXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAkcGFyYW1OYW1lKTsK
ICAgICAgICAgICAgICAgICBpZiAoJHRoaXNUeXBlIGFuZCAkdGhpc1R5cGUgZXEgJHBhcmFtLT50
eXBlKSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGFyZ3NDaGVjaywgPDxFTkQpOwogICAg
IEFTU0VSVCgke3BhcmFtTmFtZX0pOwpAQCAtMjcxNyw2ICsyNzE5LDggQEAgRU5ECiAgICAgICAg
ICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5n
KGV4ZWMsICR7cGFyYW1OYW1lfSkpO1xuIik7CiAgICAgICAgICAgICAgICAgfSBlbHNpZiAoJHBh
cmFtLT50eXBlIGVxICJib29sZWFuIikgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIiAgICBhcmdzLmFwcGVuZChqc0Jvb2xlYW4oJHtwYXJhbU5hbWV9KSk7XG4iKTsK
KyAgICAgICAgICAgICAgICB9IGVsc2lmICgkcGFyYW0tPnR5cGUgZXEgIlNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZSIpIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAg
YXJncy5hcHBlbmQoJHBhcmFtTmFtZSA/ICRwYXJhbU5hbWUtPmRlc2VyaWFsaXplKGV4ZWMsIG1f
ZGF0YS0+Z2xvYmFsT2JqZWN0KCksIDApIDoganNOdWxsKCkpO1xuIik7CiAgICAgICAgICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAg
YXJncy5hcHBlbmQodG9KUyhleGVjLCBtX2RhdGEtPmdsb2JhbE9iamVjdCgpLCAke3BhcmFtTmFt
ZX0pKTtcbiIpOwogICAgICAgICAgICAgICAgIH0KQEAgLTI4MzIsNiArMjgzNiwxNCBAQCBzdWIg
R2V0TmF0aXZlVHlwZQogICAgIHJldHVybiAiJHt0eXBlfSoiOwogfQogCitzdWIgR2V0TmF0aXZl
VHlwZUZvckNhbGxiYWNrcworeworICAgIG15ICR0eXBlID0gc2hpZnQ7CisgICAgcmV0dXJuICJT
ZXJpYWxpemVkU2NyaXB0VmFsdWUqIiBpZiAkdHlwZSBlcSAiU2VyaWFsaXplZFNjcmlwdFZhbHVl
IjsKKworICAgIHJldHVybiBHZXROYXRpdmVUeXBlKCR0eXBlKTsKK30KKwogc3ViIEdldFNWR1By
b3BlcnR5VHlwZXMKIHsKICAgICBteSAkaW1wbFR5cGUgPSBzaGlmdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZSBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0
dXJlcy5jbWFrZQppbmRleCA0MWE0NzNkLi4xNTQ2OTJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21h
a2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVz
LmNtYWtlCkBAIC04OSw2ICs4OSw3IEBAIE1BQ1JPIChXRUJLSVRfT1BUSU9OX0JFR0lOKQogICAg
IFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9WSURFT19UUkFDSyAiVG9nZ2xlIFRyYWNrIHN1
cHBvcnQgZm9yIEhUTUw1IHZpZGVvIiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5B
QkxFX1dFQkdMICJUb2dnbGUgM0QgY2FudmFzIChXZWJHTCkgc3VwcG9ydCIgT0ZGKQogICAgIFdF
QktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJfQVVESU8gIlRvZ2dsZSBXZWIgQXVkaW8gc3Vw
cG9ydCIgT0ZGKQorICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJfSU5URU5UUyAi
VG9nZ2xlIFdlYiBJbnRlbnRzIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfV0VCX1NPQ0tFVFMgIlRvZ2dsZSBXZWIgU29ja2V0cyBzdXBwb3J0IiBPTikKICAg
ICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX1RJTUlORyAiVG9nZ2xlIFdlYiBUaW1p
bmcgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XT1JLRVJT
ICJUb2dnbGUgV2ViIFdvcmtlcnMgc3VwcG9ydCIgT0ZGKQpkaWZmIC0tZ2l0IGEvU291cmNlL2Nt
YWtlY29uZmlnLmguY21ha2UgYi9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQppbmRleCBhMDY4
NTdkLi5jMjYxMGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQorKysg
Yi9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQpAQCAtNzAsNiArNzAsNyBAQAogI2NtYWtlZGVm
aW5lMDEgRU5BQkxFX1ZJRVdQT1JUX1JFRkxPVwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQkdM
CiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX0FVRElPCisjY21ha2VkZWZpbmUwMSBFTkFCTEVf
V0VCX0lOVEVOVFMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfU09DS0VUUwogI2NtYWtlZGVm
aW5lMDEgRU5BQkxFX1dFQl9USU1JTkcKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XT1JLRVJTCg==
</data>
<flag name="commit-queue"
          id="147350"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141269</attachid>
            <date>2012-05-10 14:49:15 -0700</date>
            <delta_ts>2012-05-10 15:33:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents.patch</filename>
            <type>text/plain</type>
            <size>16210</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0MWRjZDBkLi4zN2ZmMTNk
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRV9XRUJfSU5U
RU5UUyBmbGFnIHRvIENNYWtlLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDEy
LTA1LTA5ICBTdGVwaGVuIENoZW5uZXkgIDxzY2hlbm5leUBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgU1ZHIEZpbHRlcnMgYWxsb3cgaW52YWxpZCBlbGVtZW50cyBhcyBjaGlsZHJlbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dAppbmRleCBjMWYxMDQ1Li42YjBhNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApA
QCAtMyw2ICszLDcgQEAgU0VUKFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dF
QkNPUkVfRElSfS9Nb2R1bGVzL2ZpbGVzeXN0ZW0iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVs
ZXMvZ2VvbG9jYXRpb24iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW5kZXhlZGRiIgor
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL2ludGVudHMiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvd2ViYXVkaW8iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2ViZGF0YWJh
c2UiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2Vic29ja2V0cyIKQEAgLTI1MDYsNiAr
MjUwNywyMCBAQCBJRiAoRU5BQkxFX1dFQl9BVURJTykKICAgICApCiBFTkRJRiAoKQogCitJRiAo
RU5BQkxFX1dFQl9JTlRFTlRTKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfSURMX0ZJTEVTCisg
ICAgICAgIE1vZHVsZXMvaW50ZW50cy9ET01XaW5kb3dJbnRlbnRzLmlkbAorICAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmlkbAorICAgICAgICBNb2R1bGVzL2ludGVudHMvSW50ZW50UmVz
dWx0Q2FsbGJhY2suaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRz
LmlkbAorICAgICkKKyAgICBMSVNUKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKKyAgICAgICBNb2R1
bGVzL2ludGVudHMvSW50ZW50LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnRSZXF1
ZXN0LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRlbnRzLmNwcAorICAg
ICkKK0VORElGICgpCisKICMgTW9kdWxlcyB0aGF0IHRoZSBiaW5kaW5ncyBnZW5lcmF0b3Igc2Ny
aXB0cyBtYXkgdXNlCiBTRVQoU0NSSVBUU19SRVNPTFZFX1NVUFBMRU1FTlRBTAogICAgICR7V0VC
Q09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvSURMUGFyc2VyLnBtCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJm
OTBmNi4uNThkZWI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTA1LTEwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAg
V2ViIEludGVudHMgY29kZSBvbmx5IHN1cHBvcnRzIFY4CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTk1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBuZWNlc3NhcnkgYWJzdHJhY3Rpb24gZm9yIGpz
IERpY3Rpb25hcnkgYW5kIFNjcmlwdFZhbHVlIHNvIHRoYXQKKyAgICAgICAgdGhlIFdlYiBJbnRl
bnRzIGNvZGUgaW4gV2ViQ29yZSBjb21waWxlcyB3aXRoIEpTQywgbm90IGp1c3QgVjguCisKKyAg
ICAgICAgVGhpcyByZXF1aXJlZCBjaGFuZ2VzIGluIHRoZSBKU0MgYmluZGluZ3MgZ2VuZXJhdG9y
IHRvIHBhc3MKKyAgICAgICAgY2FsbGJhY2sgYXJndW1lbnRzIG9mIHR5cGUgU2VyaWFsaXplZFNj
cmlwdFZhbHVlIGFzIHJhdyBwb2ludGVycworICAgICAgICBpbnN0ZWFkIG9mIFJlZlB0ci4gVGhp
cyBtYXRjaGVzIHRoZSBjaGFuZ2UgbWFkZSB0byB0aGUgVjggYmluZGluZ3MKKyAgICAgICAgZ2Vu
ZXJhdG9yIGluIHIxMDQ1MzEuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAg
KiBNb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2ludGVudHMv
SW50ZW50Lmg6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEaWN0aW9uYXJ5OjpEaWN0aW9uYXJ5KToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6RGljdGlvbmFyeTo6Z2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFz
aE1hcCk6CisgICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5oOgorICAgICAgICAoRGlj
dGlvbmFyeSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcDoK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6aW5pdGlhbGl6ZXJPYmplY3QpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlw
dFZhbHVlOjpzZXJpYWxpemUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGlu
Z3MvanMvU2NyaXB0VmFsdWUuaDoKKyAgICAgICAgKFNjcmlwdFZhbHVlKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEFkZEluY2x1ZGVz
Rm9yVHlwZSk6CisgICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSGVhZGVyKToKKyAgICAgICAgKEdl
bmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbik6CisgICAgICAgIChHZXROYXRpdmVUeXBlRm9y
Q2FsbGJhY2tzKToKKwogMjAxMi0wNS0xMCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIENyYXNoIGluIEluc2VydFBhcmFncmFwaFNlcGFyYXRvckNvbW1h
bmQ6OmRvQXBwbHkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMv
SW50ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCmlu
ZGV4IGJmZWJhNjUuLmJmOTU2NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW50ZW50cy9JbnRlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9J
bnRlbnQuY3BwCkBAIC0zMyw3ICszMyw2IEBACiAKICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgi
CiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIKLSNpbmNsdWRlICJTY3JpcHRTdGF0ZS5oIgogI2lu
Y2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKaW5kZXggNDUwOTA5Ni4uZGZmNzA4
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaApAQCAtMzUsNiArMzUs
NyBAQAogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgogI2luY2x1
ZGUgIk1lc3NhZ2VQb3J0Q2hhbm5lbC5oIgorI2luY2x1ZGUgIlNjcmlwdFN0YXRlLmgiCiAjaW5j
bHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC00Myw3ICs0NCw2IEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotY2xhc3MgU2NyaXB0U3RhdGU7CiBjbGFzcyBTZXJpYWxpemVkU2NyaXB0VmFsdWU7
CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0RpY3Rpb25hcnkuY3BwCmluZGV4IDJjMWI3ODUuLjc5YmE2MGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCkBAIC0zNSw2ICszNSwxMSBAQCB1c2luZyBuYW1l
c3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK0RpY3Rpb25hcnk6OkRpY3Rpb25h
cnkoKQorICAgIDogbV9kaWN0aW9uYXJ5KDAsIDApCit7Cit9CisKIERpY3Rpb25hcnk6OkRpY3Rp
b25hcnkoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6SlNWYWx1ZSB2YWx1ZSkKICAgICA6IG1f
ZGljdGlvbmFyeShleGVjLCB2YWx1ZS5pc09iamVjdCgpID8gdmFsdWUuZ2V0T2JqZWN0KCkgOiAw
KQogewpAQCAtNDksNSArNTQsMzAgQEAgSlNPYmplY3QqIERpY3Rpb25hcnk6OmFzSlNPYmplY3Q8
Tm90aWZpY2F0aW9uPihOb3RpZmljYXRpb24qIG9iamVjdCkgY29uc3QKIH0KICNlbmRpZgogCiti
b29sIERpY3Rpb25hcnk6OmdldE93blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoV1RGOjpIYXNo
TWFwPFN0cmluZywgU3RyaW5nPiYgbWFwKSBjb25zdAoreworICAgIGlmICghbV9kaWN0aW9uYXJ5
LmlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgSlNPYmplY3QqIG9iamVj
dCA9ICBtX2RpY3Rpb25hcnkuaW5pdGlhbGl6ZXJPYmplY3QoKTsKKyAgICBFeGVjU3RhdGUqIGV4
ZWMgPSBtX2RpY3Rpb25hcnkuZXhlY1N0YXRlKCk7CisKKyAgICBQcm9wZXJ0eU5hbWVBcnJheSBw
cm9wZXJ0eU5hbWVzKGV4ZWMpOworICAgIEpTT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eU5hbWVzKG9i
amVjdCwgZXhlYywgcHJvcGVydHlOYW1lcywgRXhjbHVkZURvbnRFbnVtUHJvcGVydGllcyk7Cisg
ICAgZm9yIChQcm9wZXJ0eU5hbWVBcnJheTo6Y29uc3RfaXRlcmF0b3IgaXQgPSBwcm9wZXJ0eU5h
bWVzLmJlZ2luKCk7IGl0ICE9IHByb3BlcnR5TmFtZXMuZW5kKCk7IGl0KyspIHsKKyAgICAgICAg
U3RyaW5nIHN0cmluZ0tleShpdC0+dXN0cmluZygpLmltcGwoKSk7CisgICAgICAgIGlmIChzdHJp
bmdLZXkuaXNFbXB0eSgpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIEpTVmFsdWUg
dmFsdWUgPSBvYmplY3QtPmdldChleGVjLCAqaXQpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgVVN0cmluZyBzdHJpbmdW
YWx1ZSA9IHZhbHVlLnRvVVN0cmluZyhleGVjKTsKKyAgICAgICAgaWYgKCFleGVjLT5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgICAgIG1hcC5zZXQoc3RyaW5nS2V5LCBTdHJpbmcoc3RyaW5nVmFs
dWUuaW1wbCgpKSk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaAppbmRleCBkNDFjYjE3Li5jY2NlZWU3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oCkBAIC0zMSw2ICszMSw3IEBA
CiAjaW5jbHVkZSAiSlNFdmVudExpc3RlbmVyLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQu
aCIKICNpbmNsdWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgogCkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEV2ZW50TGlzdGVuZXI7CiAKIGNsYXNzIERp
Y3Rpb25hcnkgewogcHVibGljOgorICAgIERpY3Rpb25hcnkoKTsKICAgICBEaWN0aW9uYXJ5KEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlKTsKIAogICAgIC8vIFJldHVybnMgdHJ1ZSBpZiBh
IHZhbHVlIHdhcyBmb3VuZCBmb3IgdGhlIHByb3ZpZGVkIHByb3BlcnR5LgpAQCAtNTgsNiArNjAs
NyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9kaWN0
aW9uYXJ5LmlzVmFsaWQoKTsgfQogICAgIGJvb2wgaXNVbmRlZmluZWRPck51bGwoKSBjb25zdCB7
IHJldHVybiAhbV9kaWN0aW9uYXJ5LmlzVmFsaWQoKTsgfQorICAgIGJvb2wgZ2V0T3duUHJvcGVy
dGllc0FzU3RyaW5nSGFzaE1hcChXVEY6Okhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+JikgY29uc3Q7
CiAgICAgYm9vbCBnZXRXaXRoVW5kZWZpbmVkT3JOdWxsQ2hlY2soY29uc3QgU3RyaW5nJiwgU3Ry
aW5nJikgY29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJ
bk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUu
Y3BwCmluZGV4IGJiZTNmMWMuLmI0NTk3OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1
ZGUgIkNhbGxiYWNrRnVuY3Rpb24uY3BwIgogI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1h
cC5jcHAiCiAjaW5jbHVkZSAiRE9NV3JhcHBlcldvcmxkLmNwcCIKKyNpbmNsdWRlICJEaWN0aW9u
YXJ5LmNwcCIKICNpbmNsdWRlICJHQ0NvbnRyb2xsZXIuY3BwIgogI2luY2x1ZGUgIkpTQXJyYXlC
dWZmZXJDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTQXR0ckN1c3RvbS5jcHAiCkBAIC0xODAsNiAr
MTgxLDcgQEAKICNpbmNsdWRlICJTY3JpcHRHQ0V2ZW50LmNwcCIKICNpbmNsdWRlICJTY3JpcHRQ
cm9maWxlci5jcHAiCiAjaW5jbHVkZSAiU2NyaXB0U3RhdGUuY3BwIgorI2luY2x1ZGUgIlNjcmlw
dFZhbHVlLmNwcCIKICNpbmNsdWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuY3BwIgogI2luY2x1
ZGUgIldvcmtlclNjcmlwdENvbnRyb2xsZXIuY3BwIgogI2luY2x1ZGUgIldvcmtlclNjcmlwdERl
YnVnU2VydmVyLmNwcCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RGljdGlvbmFyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnku
Y3BwCmluZGV4IGVhZDI5N2EuLmU0NjFjMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRGljdGlvbmFyeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNEaWN0aW9uYXJ5LmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIkpTRGljdGlvbmFyeS5oIgogCisjaW5jbHVkZSAiRGljdGlvbmFyeS5oIgog
I2luY2x1ZGUgIkpTRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiSlNFdmVudFRhcmdldC5oIgogI2lu
Y2x1ZGUgIkpTTWVzc2FnZVBvcnRDdXN0b20uaCIKQEAgLTkxLDYgKzkyLDExIEBAIHZvaWQgSlNE
aWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUoRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIHZhbHVlLCBk
b3VibGUmIHJlc3VsdCkKICAgICByZXN1bHQgPSB2YWx1ZS50b051bWJlcihleGVjKTsKIH0KIAor
dm9pZCBKU0RpY3Rpb25hcnk6OmNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlND
OjpKU1ZhbHVlIHZhbHVlLCBEaWN0aW9uYXJ5JiByZXN1bHQpCit7CisgICAgcmVzdWx0ID0gRGlj
dGlvbmFyeShleGVjLCB2YWx1ZSk7Cit9CisKIHZvaWQgSlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFs
dWUoRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIHZhbHVlLCBTdHJpbmcmIHJlc3VsdCkKIHsKICAg
ICByZXN1bHQgPSB1c3RyaW5nVG9TdHJpbmcodmFsdWUudG9TdHJpbmcoZXhlYyktPnZhbHVlKGV4
ZWMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFy
eS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmgKaW5kZXggOGY2
MzM3ZC4uZTBiYTE2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
aWN0aW9uYXJ5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5
LmgKQEAgLTMyLDYgKzMyLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBEaWN0
aW9uYXJ5OwogY2xhc3MgRE9NV2luZG93OwogY2xhc3MgRXZlbnRUYXJnZXQ7CiBjbGFzcyBOb2Rl
OwpAQCAtNTksNiArNjAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBnZXQoY29uc3QgY2hhciogcHJv
cGVydHlOYW1lLCBSZXN1bHQmKSBjb25zdDsKIAogICAgIEpTQzo6RXhlY1N0YXRlKiBleGVjU3Rh
dGUoKSBjb25zdCB7IHJldHVybiBtX2V4ZWM7IH0KKyAgICBKU0M6OkpTT2JqZWN0KiBpbml0aWFs
aXplck9iamVjdCgpIGNvbnN0IHsgcmV0dXJuIG1faW5pdGlhbGl6ZXJPYmplY3Q7IH0KICAgICBi
b29sIGlzVmFsaWQoKSBjb25zdCB7IHJldHVybiBtX2V4ZWMgJiYgbV9pbml0aWFsaXplck9iamVj
dDsgfQogCiBwcml2YXRlOgpAQCAtODYsNiArODgsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyB2
b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgdW5zaWduZWQg
c2hvcnQmIHJlc3VsdCk7CiAgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU1ZhbHVlLCB1bnNpZ25lZCBsb25nIGxvbmcmIHJlc3VsdCk7CiAgICAgc3Rh
dGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBkb3Vi
bGUmIHJlc3VsdCk7CisgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU1ZhbHVlLCBEaWN0aW9uYXJ5JiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNv
bnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgU3RyaW5nJiByZXN1bHQp
OwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNW
YWx1ZSwgU2NyaXB0VmFsdWUmIHJlc3VsdCk7CiAgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVl
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZh
bHVlPiYgcmVzdWx0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1Nj
cmlwdFZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNw
cAppbmRleCBkZWEyYTQ4Li5mZDMyODcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
U2NyaXB0VmFsdWUuY3BwCkBAIC0xMDYsNiArMTA2LDE0IEBAIFBhc3NSZWZQdHI8U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlPiBTY3JpcHRWYWx1ZTo6c2VyaWFsaXplKFNjcmlwdFN0YXRlKiBzY3JpcHRT
dGF0CiAgICAgcmV0dXJuIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlKHNjcmlwdFN0YXRl
LCBqc1ZhbHVlKCksIDAsIDAsIHRocm93RXhjZXB0aW9ucyk7CiB9CiAKK1Bhc3NSZWZQdHI8U2Vy
aWFsaXplZFNjcmlwdFZhbHVlPiBTY3JpcHRWYWx1ZTo6c2VyaWFsaXplKFNjcmlwdFN0YXRlKiBz
Y3JpcHRTdGF0ZSwgTWVzc2FnZVBvcnRBcnJheSogbWVzc2FnZVBvcnRzLCBBcnJheUJ1ZmZlckFy
cmF5KiBhcnJheUJ1ZmZlcnMsIGJvb2wmIGRpZFRocm93KQoreworICAgIEpTVmFsdWVSZWYgZXhj
ZXB0aW9uID0gMDsKKyAgICBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzZXJpYWxpemVk
VmFsdWUgPSBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZSh0b1JlZihzY3JpcHRTdGF0ZSks
IHRvUmVmKHNjcmlwdFN0YXRlLCBqc1ZhbHVlKCkpLCBtZXNzYWdlUG9ydHMsIGFycmF5QnVmZmVy
cywgJmV4Y2VwdGlvbik7CisgICAgZGlkVGhyb3cgPSBleGNlcHRpb24gPyB0cnVlIDogZmFsc2U7
CisgICAgcmV0dXJuIHNlcmlhbGl6ZWRWYWx1ZS5yZWxlYXNlKCk7Cit9CisKIFNjcmlwdFZhbHVl
IFNjcmlwdFZhbHVlOjpkZXNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3RhdGUsIFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZSogdmFsdWUsIFNlcmlhbGl6YXRpb25FcnJvck1vZGUgdGhyb3dFeGNl
cHRpb25zKQogewogICAgIHJldHVybiBTY3JpcHRWYWx1ZShzY3JpcHRTdGF0ZS0+Z2xvYmFsRGF0
YSgpLCB2YWx1ZS0+ZGVzZXJpYWxpemUoc2NyaXB0U3RhdGUsIHNjcmlwdFN0YXRlLT5sZXhpY2Fs
R2xvYmFsT2JqZWN0KCksIDAsIHRocm93RXhjZXB0aW9ucykpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1NjcmlwdFZhbHVlLmgKaW5kZXggY2ZiOTllNS4uMTU3M2E0OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oCkBAIC02Myw2ICs2Myw3IEBAIHB1YmxpYzoK
ICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgU2NyaXB0VmFsdWUmIG90aGVyKSBjb25zdCB7IHJl
dHVybiBtX3ZhbHVlID09IG90aGVyLm1fdmFsdWU7IH0KIAogICAgIFBhc3NSZWZQdHI8U2VyaWFs
aXplZFNjcmlwdFZhbHVlPiBzZXJpYWxpemUoU2NyaXB0U3RhdGUqLCBTZXJpYWxpemF0aW9uRXJy
b3JNb2RlID0gVGhyb3dpbmcpOworICAgIFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVl
PiBzZXJpYWxpemUoU2NyaXB0U3RhdGUqLCBNZXNzYWdlUG9ydEFycmF5KiwgQXJyYXlCdWZmZXJB
cnJheSosIGJvb2wmKTsKICAgICBzdGF0aWMgU2NyaXB0VmFsdWUgZGVzZXJpYWxpemUoU2NyaXB0
U3RhdGUqLCBTZXJpYWxpemVkU2NyaXB0VmFsdWUqLCBTZXJpYWxpemF0aW9uRXJyb3JNb2RlID0g
VGhyb3dpbmcpOwogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggOWIxZjdjNC4uMWZi
MTdlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG0KQEAgLTI2Miw2ICsyNjIsOCBAQCBzdWIgQWRkSW5jbHVkZXNGb3JUeXBlCiAg
ICAgICAgICRpbmNsdWRlc1JlZi0+eyJKU0RPTVN0cmluZ0xpc3QuaCJ9ID0gMTsKICAgICB9IGVs
c2lmICgkdHlwZSBlcSAidW5zaWduZWQgbG9uZ1tdIikgewogICAgICAgICAkaW5jbHVkZXNSZWYt
PnsiPHd0Zi9WZWN0b3IuaD4ifSA9IDE7CisgICAgfSBlbHNpZiAoJHR5cGUgZXEgIlNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZSIpIHsKKyAgICAgICAgJGluY2x1ZGVzUmVmLT57IlNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZS5oIn0gPSAxOwogICAgIH0gZWxzaWYgKCRpc0NhbGxiYWNrKSB7CiAgICAgICAgICRp
bmNsdWRlc1JlZi0+eyJKUyR7dHlwZX0uaCJ9ID0gMTsKICAgICB9IGVsc2lmIChJc1R5cGVkQXJy
YXlUeXBlKCR0eXBlKSkgewpAQCAtMjYwNCwxMSArMjYwNiwxMSBAQCBzdWIgR2VuZXJhdGVDYWxs
YmFja0hlYWRlcgogICAgICAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgQ09N
UElMRV9BU1NFUlQoZmFsc2UpIik7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHB1c2go
QGhlYWRlckNvbnRlbnQsICIgICAgdmlydHVhbCAiIC4gR2V0TmF0aXZlVHlwZSgkZnVuY3Rpb24t
PnNpZ25hdHVyZS0+dHlwZSkgLiAiICIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIo
Iik7CisgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHZpcnR1YWwgIiAuIEdl
dE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAi
IC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIpOwogCiAgICAgICAgICAgICBteSBA
YXJncyA9ICgpOwogICAgICAgICAgICAgZm9yZWFjaCBteSAkcGFyYW0gKEBwYXJhbXMpIHsKLSAg
ICAgICAgICAgICAgICBwdXNoKEBhcmdzLCBHZXROYXRpdmVUeXBlKCRwYXJhbS0+dHlwZSkgLiAi
ICIgLiAkcGFyYW0tPm5hbWUpOworICAgICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2
ZVR5cGVGb3JDYWxsYmFja3MoJHBhcmFtLT50eXBlKSAuICIgIiAuICRwYXJhbS0+bmFtZSk7CiAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCBqb2luKCIsICIs
IEBhcmdzKSk7CiAKQEAgLTI2ODMsNyArMjY4NSw3IEBAIHN1YiBHZW5lcmF0ZUNhbGxiYWNrSW1w
bGVtZW50YXRpb24KICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgQWRkSW5jbHVkZXNGb3JU
eXBlSW5JbXBsKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKTsKLSAgICAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiXG4iIC4gR2V0TmF0aXZlVHlwZSgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+
dHlwZSkgLiAiICR7Y2xhc3NOYW1lfTo6IiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4g
IigiKTsKKyAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4iIC4gR2V0TmF0aXZlVHlw
ZUZvckNhbGxiYWNrcygkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgLiAiICR7Y2xhc3NOYW1l
fTo6IiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKIAogICAgICAgICAgICAg
bXkgQGFyZ3MgPSAoKTsKICAgICAgICAgICAgIG15IEBhcmdzQ2hlY2sgPSAoKTsKQEAgLTI2OTEs
NyArMjY5Myw3IEBAIHN1YiBHZW5lcmF0ZUNhbGxiYWNrSW1wbGVtZW50YXRpb24KICAgICAgICAg
ICAgIGZvcmVhY2ggbXkgJHBhcmFtIChAcGFyYW1zKSB7CiAgICAgICAgICAgICAgICAgbXkgJHBh
cmFtTmFtZSA9ICRwYXJhbS0+bmFtZTsKICAgICAgICAgICAgICAgICBBZGRJbmNsdWRlc0ZvclR5
cGVJbkltcGwoJHBhcmFtLT50eXBlLCAxKTsKLSAgICAgICAgICAgICAgICBwdXNoKEBhcmdzLCBH
ZXROYXRpdmVUeXBlKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAkcGFyYW1OYW1lKTsKKyAgICAgICAg
ICAgICAgICBwdXNoKEBhcmdzLCBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRwYXJhbS0+dHlw
ZSkgLiAiICIgLiAkcGFyYW1OYW1lKTsKICAgICAgICAgICAgICAgICBpZiAoJHRoaXNUeXBlIGFu
ZCAkdGhpc1R5cGUgZXEgJHBhcmFtLT50eXBlKSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2go
QGFyZ3NDaGVjaywgPDxFTkQpOwogICAgIEFTU0VSVCgke3BhcmFtTmFtZX0pOwpAQCAtMjcxNyw2
ICsyNzE5LDggQEAgRU5ECiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
ICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4ZWMsICR7cGFyYW1OYW1lfSkpO1xuIik7CiAgICAg
ICAgICAgICAgICAgfSBlbHNpZiAoJHBhcmFtLT50eXBlIGVxICJib29sZWFuIikgewogICAgICAg
ICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZChqc0Jvb2xl
YW4oJHtwYXJhbU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAgICB9IGVsc2lmICgkcGFyYW0t
PnR5cGUgZXEgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSIpIHsKKyAgICAgICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoJHBhcmFtTmFtZSA/ICRwYXJhbU5h
bWUtPmRlc2VyaWFsaXplKGV4ZWMsIG1fZGF0YS0+Z2xvYmFsT2JqZWN0KCksIDApIDoganNOdWxs
KCkpO1xuIik7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCBtX2RhdGEtPmds
b2JhbE9iamVjdCgpLCAke3BhcmFtTmFtZX0pKTtcbiIpOwogICAgICAgICAgICAgICAgIH0KQEAg
LTI4MzIsNiArMjgzNiwxNCBAQCBzdWIgR2V0TmF0aXZlVHlwZQogICAgIHJldHVybiAiJHt0eXBl
fSoiOwogfQogCitzdWIgR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcworeworICAgIG15ICR0eXBl
ID0gc2hpZnQ7CisgICAgcmV0dXJuICJTZXJpYWxpemVkU2NyaXB0VmFsdWUqIiBpZiAkdHlwZSBl
cSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIjsKKworICAgIHJldHVybiBHZXROYXRpdmVUeXBlKCR0
eXBlKTsKK30KKwogc3ViIEdldFNWR1Byb3BlcnR5VHlwZXMKIHsKICAgICBteSAkaW1wbFR5cGUg
PSBzaGlmdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZSBi
L1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQppbmRleCA0MWE0NzNkLi4xNTQ2OTJj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKKysrIGIvU291
cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCkBAIC04OSw2ICs4OSw3IEBAIE1BQ1JPIChX
RUJLSVRfT1BUSU9OX0JFR0lOKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9WSURF
T19UUkFDSyAiVG9nZ2xlIFRyYWNrIHN1cHBvcnQgZm9yIEhUTUw1IHZpZGVvIiBPRkYpCiAgICAg
V0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQkdMICJUb2dnbGUgM0QgY2FudmFzIChXZWJH
TCkgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJfQVVE
SU8gIlRvZ2dsZSBXZWIgQXVkaW8gc3VwcG9ydCIgT0ZGKQorICAgIFdFQktJVF9PUFRJT05fREVG
SU5FKEVOQUJMRV9XRUJfSU5URU5UUyAiVG9nZ2xlIFdlYiBJbnRlbnRzIHN1cHBvcnQiIE9GRikK
ICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX1NPQ0tFVFMgIlRvZ2dsZSBXZWIg
U29ja2V0cyBzdXBwb3J0IiBPTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VC
X1RJTUlORyAiVG9nZ2xlIFdlYiBUaW1pbmcgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJ
T05fREVGSU5FKEVOQUJMRV9XT1JLRVJTICJUb2dnbGUgV2ViIFdvcmtlcnMgc3VwcG9ydCIgT0ZG
KQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UgYi9Tb3VyY2UvY21ha2Vj
b25maWcuaC5jbWFrZQppbmRleCBhMDY4NTdkLi5jMjYxMGYyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
Y21ha2Vjb25maWcuaC5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQpAQCAt
NzAsNiArNzAsNyBAQAogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1ZJRVdQT1JUX1JFRkxPVwogI2Nt
YWtlZGVmaW5lMDEgRU5BQkxFX1dFQkdMCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX0FVRElP
CisjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX0lOVEVOVFMKICNjbWFrZWRlZmluZTAxIEVOQUJM
RV9XRUJfU09DS0VUUwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9USU1JTkcKICNjbWFrZWRl
ZmluZTAxIEVOQUJMRV9XT1JLRVJTCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141279</attachid>
            <date>2012-05-10 15:33:23 -0700</date>
            <delta_ts>2012-05-11 00:20:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents.patch</filename>
            <type>text/plain</type>
            <size>16202</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0MWRjZDBkLi5jN2UyMjc1
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBBZGQgRU5BQkxFX1dFQl9JTlRFTlRT
IGZsYWcgdG8gQ01ha2UuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMu
Y21ha2U6CisgICAgICAgICogU291cmNlL2NtYWtlY29uZmlnLmguY21ha2U6CisKIDIwMTItMDUt
MDkgIFN0ZXBoZW4gQ2hlbm5leSAgPHNjaGVubmV5QGNocm9taXVtLm9yZz4KIAogICAgICAgICBT
VkcgRmlsdGVycyBhbGxvdyBpbnZhbGlkIGVsZW1lbnRzIGFzIGNoaWxkcmVuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlz
dHMudHh0CmluZGV4IGMxZjEwNDUuLjZiMGE0OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0z
LDYgKzMsNyBAQCBTRVQoV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVTCiAgICAgIiR7V0VCQ09S
RV9ESVJ9L01vZHVsZXMvZmlsZXN5c3RlbSIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9n
ZW9sb2NhdGlvbiIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9pbmRleGVkZGIiCisgICAg
IiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW50ZW50cyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9k
dWxlcy93ZWJhdWRpbyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJkYXRhYmFzZSIK
ICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJzb2NrZXRzIgpAQCAtMjUwNiw2ICsyNTA3
LDIwIEBAIElGIChFTkFCTEVfV0VCX0FVRElPKQogICAgICkKIEVORElGICgpCiAKK0lGIChFTkFC
TEVfV0VCX0lOVEVOVFMpCisgICAgTElTVChBUFBFTkQgV2ViQ29yZV9JRExfRklMRVMKKyAgICAg
ICAgTW9kdWxlcy9pbnRlbnRzL0RPTVdpbmRvd0ludGVudHMuaWRsCisgICAgICAgIE1vZHVsZXMv
aW50ZW50cy9JbnRlbnQuaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnRSZXN1bHRD
YWxsYmFjay5pZGwKKyAgICAgICAgTW9kdWxlcy9pbnRlbnRzL05hdmlnYXRvckludGVudHMuaWRs
CisgICAgKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUworICAgICAgIE1vZHVsZXMv
aW50ZW50cy9JbnRlbnQuY3BwCisgICAgICAgTW9kdWxlcy9pbnRlbnRzL0ludGVudFJlcXVlc3Qu
Y3BwCisgICAgICAgTW9kdWxlcy9pbnRlbnRzL05hdmlnYXRvckludGVudHMuY3BwCisgICAgKQor
RU5ESUYgKCkKKwogIyBNb2R1bGVzIHRoYXQgdGhlIGJpbmRpbmdzIGdlbmVyYXRvciBzY3JpcHRz
IG1heSB1c2UKIFNFVChTQ1JJUFRTX1JFU09MVkVfU1VQUExFTUVOVEFMCiAgICAgJHtXRUJDT1JF
X0RJUn0vYmluZGluZ3Mvc2NyaXB0cy9JRExQYXJzZXIucG0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzMmY5MGY2
Li45NjY3ZTlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMTItMDUtMTAgIENocmlz
dG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAgICAgICBXZWIg
SW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBC
YXJ0aC4KKworICAgICAgICBBZGQgbmVjZXNzYXJ5IGFic3RyYWN0aW9uIGZvciBqcyBEaWN0aW9u
YXJ5IGFuZCBTY3JpcHRWYWx1ZSBzbyB0aGF0CisgICAgICAgIHRoZSBXZWIgSW50ZW50cyBjb2Rl
IGluIFdlYkNvcmUgY29tcGlsZXMgd2l0aCBKU0MsIG5vdCBqdXN0IFY4LgorCisgICAgICAgIFRo
aXMgcmVxdWlyZWQgY2hhbmdlcyBpbiB0aGUgSlNDIGJpbmRpbmdzIGdlbmVyYXRvciB0byBwYXNz
CisgICAgICAgIGNhbGxiYWNrIGFyZ3VtZW50cyBvZiB0eXBlIFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZSBhcyByYXcgcG9pbnRlcnMKKyAgICAgICAgaW5zdGVhZCBvZiBSZWZQdHIuIFRoaXMgbWF0Y2hl
cyB0aGUgY2hhbmdlIG1hZGUgdG8gdGhlIFY4IGJpbmRpbmdzCisgICAgICAgIGdlbmVyYXRvciBp
biByMTA0NTMxLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogTW9kdWxl
cy9pbnRlbnRzL0ludGVudC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbnRlbnRzL0ludGVudC5o
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RGljdGlvbmFyeTo6RGljdGlvbmFyeSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAg
KFdlYkNvcmU6OkRpY3Rpb25hcnk6OmdldE93blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXApOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaDoKKyAgICAgICAgKERpY3Rpb25hcnkp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHA6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTRGlj
dGlvbmFyeTo6Y29udmVydFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJp
bmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChX
ZWJDb3JlOjpKU0RpY3Rpb25hcnk6OmluaXRpYWxpemVyT2JqZWN0KToKKyAgICAgICAgKiBiaW5k
aW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRWYWx1ZTo6
c2VyaWFsaXplKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1Nj
cmlwdFZhbHVlLmg6CisgICAgICAgIChTY3JpcHRWYWx1ZSk6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChBZGRJbmNsdWRlc0ZvclR5cGUp
OgorICAgICAgICAoR2VuZXJhdGVDYWxsYmFja0hlYWRlcik6CisgICAgICAgIChHZW5lcmF0ZUNh
bGxiYWNrSW1wbGVtZW50YXRpb24pOgorICAgICAgICAoR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNr
cyk6CisKIDIwMTItMDUtMTAgIEFiaGlzaGVrIEFyeWEgIDxpbmZlcm5vQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBDcmFzaCBpbiBJbnNlcnRQYXJhZ3JhcGhTZXBhcmF0b3JDb21tYW5kOjpkb0Fw
cGx5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcAppbmRleCBiZmVi
YTY1Li5iZjk1NjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMv
SW50ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmNw
cApAQCAtMzMsNyArMzMsNiBAQAogCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgogI2luY2x1
ZGUgIk1lc3NhZ2VQb3J0LmgiCi0jaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIKICNpbmNsdWRlICJT
ZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCmluZGV4IDQ1MDkwOTYuLmRmZjcwODQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKQEAgLTM1LDYgKzM1LDcgQEAKICNp
bmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIKICNpbmNsdWRlICJNZXNz
YWdlUG9ydENoYW5uZWwuaCIKKyNpbmNsdWRlICJTY3JpcHRTdGF0ZS5oIgogI2luY2x1ZGUgPHd0
Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgpAQCAtNDMsNyArNDQsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LWNsYXNzIFNjcmlwdFN0YXRlOwogY2xhc3MgU2VyaWFsaXplZFNjcmlwdFZhbHVlOwogCiB0eXBl
ZGVmIGludCBFeGNlcHRpb25Db2RlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvRGljdGlvbmFyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9u
YXJ5LmNwcAppbmRleCAyYzFiNzg1Li43OWJhNjBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9EaWN0aW9uYXJ5LmNwcApAQCAtMzUsNiArMzUsMTEgQEAgdXNpbmcgbmFtZXNwYWNlIEpT
QzsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitEaWN0aW9uYXJ5OjpEaWN0aW9uYXJ5KCkKKyAg
ICA6IG1fZGljdGlvbmFyeSgwLCAwKQoreworfQorCiBEaWN0aW9uYXJ5OjpEaWN0aW9uYXJ5KEpT
Qzo6RXhlY1N0YXRlKiBleGVjLCBKU0M6OkpTVmFsdWUgdmFsdWUpCiAgICAgOiBtX2RpY3Rpb25h
cnkoZXhlYywgdmFsdWUuaXNPYmplY3QoKSA/IHZhbHVlLmdldE9iamVjdCgpIDogMCkKIHsKQEAg
LTQ5LDUgKzU0LDMwIEBAIEpTT2JqZWN0KiBEaWN0aW9uYXJ5Ojphc0pTT2JqZWN0PE5vdGlmaWNh
dGlvbj4oTm90aWZpY2F0aW9uKiBvYmplY3QpIGNvbnN0CiB9CiAjZW5kaWYKIAorYm9vbCBEaWN0
aW9uYXJ5OjpnZXRPd25Qcm9wZXJ0aWVzQXNTdHJpbmdIYXNoTWFwKFdURjo6SGFzaE1hcDxTdHJp
bmcsIFN0cmluZz4mIG1hcCkgY29uc3QKK3sKKyAgICBpZiAoIW1fZGljdGlvbmFyeS5pc1ZhbGlk
KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIEpTT2JqZWN0KiBvYmplY3QgPSAgbV9k
aWN0aW9uYXJ5LmluaXRpYWxpemVyT2JqZWN0KCk7CisgICAgRXhlY1N0YXRlKiBleGVjID0gbV9k
aWN0aW9uYXJ5LmV4ZWNTdGF0ZSgpOworCisgICAgUHJvcGVydHlOYW1lQXJyYXkgcHJvcGVydHlO
YW1lcyhleGVjKTsKKyAgICBKU09iamVjdDo6Z2V0T3duUHJvcGVydHlOYW1lcyhvYmplY3QsIGV4
ZWMsIHByb3BlcnR5TmFtZXMsIEV4Y2x1ZGVEb250RW51bVByb3BlcnRpZXMpOworICAgIGZvciAo
UHJvcGVydHlOYW1lQXJyYXk6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gcHJvcGVydHlOYW1lcy5iZWdp
bigpOyBpdCAhPSBwcm9wZXJ0eU5hbWVzLmVuZCgpOyBpdCsrKSB7CisgICAgICAgIFN0cmluZyBz
dHJpbmdLZXkoaXQtPnVzdHJpbmcoKS5pbXBsKCkpOworICAgICAgICBpZiAoc3RyaW5nS2V5Lmlz
RW1wdHkoKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBKU1ZhbHVlIHZhbHVlID0g
b2JqZWN0LT5nZXQoZXhlYywgKml0KTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIFVTdHJpbmcgc3RyaW5nVmFsdWUgPSB2
YWx1ZS50b1VTdHJpbmcoZXhlYyk7CisgICAgICAgIGlmICghZXhlYy0+aGFkRXhjZXB0aW9uKCkp
CisgICAgICAgICAgICBtYXAuc2V0KHN0cmluZ0tleSwgU3RyaW5nKHN0cmluZ1ZhbHVlLmltcGwo
KSkpOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorCiB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKaW5kZXggZDQxY2IxNy4uY2NjZWVlNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaApAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1
ZGUgIkpTRXZlbnRMaXN0ZW5lci5oIgogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5j
bHVkZSAiU2NyaXB0VmFsdWUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUg
PHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApA
QCAtNDMsNiArNDQsNyBAQCBjbGFzcyBFdmVudExpc3RlbmVyOwogCiBjbGFzcyBEaWN0aW9uYXJ5
IHsKIHB1YmxpYzoKKyAgICBEaWN0aW9uYXJ5KCk7CiAgICAgRGljdGlvbmFyeShKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNWYWx1ZSk7CiAKICAgICAvLyBSZXR1cm5zIHRydWUgaWYgYSB2YWx1ZSB3
YXMgZm91bmQgZm9yIHRoZSBwcm92aWRlZCBwcm9wZXJ0eS4KQEAgLTU4LDYgKzYwLDcgQEAgcHVi
bGljOgogCiAgICAgYm9vbCBpc09iamVjdCgpIGNvbnN0IHsgcmV0dXJuIG1fZGljdGlvbmFyeS5p
c1ZhbGlkKCk7IH0KICAgICBib29sIGlzVW5kZWZpbmVkT3JOdWxsKCkgY29uc3QgeyByZXR1cm4g
IW1fZGljdGlvbmFyeS5pc1ZhbGlkKCk7IH0KKyAgICBib29sIGdldE93blByb3BlcnRpZXNBc1N0
cmluZ0hhc2hNYXAoV1RGOjpIYXNoTWFwPFN0cmluZywgU3RyaW5nPiYpIGNvbnN0OwogICAgIGJv
b2wgZ2V0V2l0aFVuZGVmaW5lZE9yTnVsbENoZWNrKGNvbnN0IFN0cmluZyYsIFN0cmluZyYpIGNv
bnN0IHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9CiAKIHByaXZhdGU6CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAppbmRl
eCBiYmUzZjFjLi5iNDU5Nzk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJDYWxs
YmFja0Z1bmN0aW9uLmNwcCIKICNpbmNsdWRlICJET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIgog
I2luY2x1ZGUgIkRPTVdyYXBwZXJXb3JsZC5jcHAiCisjaW5jbHVkZSAiRGljdGlvbmFyeS5jcHAi
CiAjaW5jbHVkZSAiR0NDb250cm9sbGVyLmNwcCIKICNpbmNsdWRlICJKU0FycmF5QnVmZmVyQ3Vz
dG9tLmNwcCIKICNpbmNsdWRlICJKU0F0dHJDdXN0b20uY3BwIgpAQCAtMTgwLDYgKzE4MSw3IEBA
CiAjaW5jbHVkZSAiU2NyaXB0R0NFdmVudC5jcHAiCiAjaW5jbHVkZSAiU2NyaXB0UHJvZmlsZXIu
Y3BwIgogI2luY2x1ZGUgIlNjcmlwdFN0YXRlLmNwcCIKKyNpbmNsdWRlICJTY3JpcHRWYWx1ZS5j
cHAiCiAjaW5jbHVkZSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlLmNwcCIKICNpbmNsdWRlICJXb3Jr
ZXJTY3JpcHRDb250cm9sbGVyLmNwcCIKICNpbmNsdWRlICJXb3JrZXJTY3JpcHREZWJ1Z1NlcnZl
ci5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25h
cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcAppbmRl
eCBlYWQyOTdhLi5lNDYxYzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGlj
dGlvbmFyeS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJKU0RpY3Rpb25hcnkuaCIKIAorI2luY2x1ZGUgIkRpY3Rpb25hcnkuaCIKICNpbmNsdWRl
ICJKU0RPTVdpbmRvdy5oIgogI2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlICJK
U01lc3NhZ2VQb3J0Q3VzdG9tLmgiCkBAIC05MSw2ICs5MiwxMSBAQCB2b2lkIEpTRGljdGlvbmFy
eTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgZG91YmxlJiBy
ZXN1bHQpCiAgICAgcmVzdWx0ID0gdmFsdWUudG9OdW1iZXIoZXhlYyk7CiB9CiAKK3ZvaWQgSlNE
aWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6SlNWYWx1
ZSB2YWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KQoreworICAgIHJlc3VsdCA9IERpY3Rpb25hcnko
ZXhlYywgdmFsdWUpOworfQorCiB2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4ZWNT
dGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgU3RyaW5nJiByZXN1bHQpCiB7CiAgICAgcmVzdWx0
ID0gdXN0cmluZ1RvU3RyaW5nKHZhbHVlLnRvU3RyaW5nKGV4ZWMpLT52YWx1ZShleGVjKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oCmluZGV4IDhmNjMzN2QuLmUw
YmExNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFy
eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oCkBAIC0z
Miw2ICszMiw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRGljdGlvbmFyeTsK
IGNsYXNzIERPTVdpbmRvdzsKIGNsYXNzIEV2ZW50VGFyZ2V0OwogY2xhc3MgTm9kZTsKQEAgLTU5
LDYgKzYwLDcgQEAgcHVibGljOgogICAgIGJvb2wgZ2V0KGNvbnN0IGNoYXIqIHByb3BlcnR5TmFt
ZSwgUmVzdWx0JikgY29uc3Q7CiAKICAgICBKU0M6OkV4ZWNTdGF0ZSogZXhlY1N0YXRlKCkgY29u
c3QgeyByZXR1cm4gbV9leGVjOyB9CisgICAgSlNDOjpKU09iamVjdCogaW5pdGlhbGl6ZXJPYmpl
Y3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVyT2JqZWN0OyB9CiAgICAgYm9vbCBpc1Zh
bGlkKCkgY29uc3QgeyByZXR1cm4gbV9leGVjICYmIG1faW5pdGlhbGl6ZXJPYmplY3Q7IH0KIAog
cHJpdmF0ZToKQEAgLTg2LDYgKzg4LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgdm9pZCBjb252
ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkIHNob3J0JiBy
ZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNWYWx1ZSwgdW5zaWduZWQgbG9uZyBsb25nJiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lk
IGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgZG91YmxlJiByZXN1
bHQpOworICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNWYWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFs
dWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFN0cmluZyYgcmVzdWx0KTsKICAgICBz
dGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFNj
cmlwdFZhbHVlJiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mIHJl
c3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAKaW5kZXgg
ZGVhMmE0OC4uZmQzMjg3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
U2NyaXB0VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZh
bHVlLmNwcApAQCAtMTA2LDYgKzEwNiwxNCBAQCBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3RhdAogICAg
IHJldHVybiBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZShzY3JpcHRTdGF0ZSwganNWYWx1
ZSgpLCAwLCAwLCB0aHJvd0V4Y2VwdGlvbnMpOwogfQogCitQYXNzUmVmUHRyPFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2NyaXB0U3Rh
dGUsIE1lc3NhZ2VQb3J0QXJyYXkqIG1lc3NhZ2VQb3J0cywgQXJyYXlCdWZmZXJBcnJheSogYXJy
YXlCdWZmZXJzLCBib29sJiBkaWRUaHJvdykKK3sKKyAgICBKU1ZhbHVlUmVmIGV4Y2VwdGlvbiA9
IDA7CisgICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplZFZhbHVlID0g
U2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUodG9SZWYoc2NyaXB0U3RhdGUpLCB0b1JlZihz
Y3JpcHRTdGF0ZSwganNWYWx1ZSgpKSwgbWVzc2FnZVBvcnRzLCBhcnJheUJ1ZmZlcnMsICZleGNl
cHRpb24pOworICAgIGRpZFRocm93ID0gZXhjZXB0aW9uID8gdHJ1ZSA6IGZhbHNlOworICAgIHJl
dHVybiBzZXJpYWxpemVkVmFsdWUucmVsZWFzZSgpOworfQorCiBTY3JpcHRWYWx1ZSBTY3JpcHRW
YWx1ZTo6ZGVzZXJpYWxpemUoU2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRlLCBTZXJpYWxpemVkU2Ny
aXB0VmFsdWUqIHZhbHVlLCBTZXJpYWxpemF0aW9uRXJyb3JNb2RlIHRocm93RXhjZXB0aW9ucykK
IHsKICAgICByZXR1cm4gU2NyaXB0VmFsdWUoc2NyaXB0U3RhdGUtPmdsb2JhbERhdGEoKSwgdmFs
dWUtPmRlc2VyaWFsaXplKHNjcmlwdFN0YXRlLCBzY3JpcHRTdGF0ZS0+bGV4aWNhbEdsb2JhbE9i
amVjdCgpLCAwLCB0aHJvd0V4Y2VwdGlvbnMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9T
Y3JpcHRWYWx1ZS5oCmluZGV4IGNmYjk5ZTUuLjE1NzNhNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvU2NyaXB0VmFsdWUuaApAQCAtNjMsNiArNjMsNyBAQCBwdWJsaWM6CiAgICAgYm9v
bCBvcGVyYXRvcj09KGNvbnN0IFNjcmlwdFZhbHVlJiBvdGhlcikgY29uc3QgeyByZXR1cm4gbV92
YWx1ZSA9PSBvdGhlci5tX3ZhbHVlOyB9CiAKICAgICBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZT4gc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgU2VyaWFsaXphdGlvbkVycm9yTW9kZSA9
IFRocm93aW5nKTsKKyAgICBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFs
aXplKFNjcmlwdFN0YXRlKiwgTWVzc2FnZVBvcnRBcnJheSosIEFycmF5QnVmZmVyQXJyYXkqLCBi
b29sJik7CiAgICAgc3RhdGljIFNjcmlwdFZhbHVlIGRlc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwg
U2VyaWFsaXplZFNjcmlwdFZhbHVlKiwgU2VyaWFsaXphdGlvbkVycm9yTW9kZSA9IFRocm93aW5n
KTsKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDliMWY3YzQuLjFmYjE3ZTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCkBAIC0yNjIsNiArMjYyLDggQEAgc3ViIEFkZEluY2x1ZGVzRm9yVHlwZQogICAgICAgICAk
aW5jbHVkZXNSZWYtPnsiSlNET01TdHJpbmdMaXN0LmgifSA9IDE7CiAgICAgfSBlbHNpZiAoJHR5
cGUgZXEgInVuc2lnbmVkIGxvbmdbXSIpIHsKICAgICAgICAgJGluY2x1ZGVzUmVmLT57Ijx3dGYv
VmVjdG9yLmg+In0gPSAxOworICAgIH0gZWxzaWYgKCR0eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0
VmFsdWUiKSB7CisgICAgICAgICRpbmNsdWRlc1JlZi0+eyJTZXJpYWxpemVkU2NyaXB0VmFsdWUu
aCJ9ID0gMTsKICAgICB9IGVsc2lmICgkaXNDYWxsYmFjaykgewogICAgICAgICAkaW5jbHVkZXNS
ZWYtPnsiSlMke3R5cGV9LmgifSA9IDE7CiAgICAgfSBlbHNpZiAoSXNUeXBlZEFycmF5VHlwZSgk
dHlwZSkpIHsKQEAgLTI2MDQsMTEgKzI2MDYsMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tIZWFk
ZXIKICAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIENPTVBJTEVfQVNT
RVJUKGZhbHNlKSIpOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBwdXNoKEBoZWFkZXJD
b250ZW50LCAiICAgIHZpcnR1YWwgIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1
cmUtPnR5cGUpIC4gIiAiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIpOworICAg
ICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsICIgLiBHZXROYXRpdmVU
eXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgIiAuICRmdW5j
dGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKIAogICAgICAgICAgICAgbXkgQGFyZ3MgPSAo
KTsKICAgICAgICAgICAgIGZvcmVhY2ggbXkgJHBhcmFtIChAcGFyYW1zKSB7Ci0gICAgICAgICAg
ICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBh
cmFtLT5uYW1lKTsKKyAgICAgICAgICAgICAgICBwdXNoKEBhcmdzLCBHZXROYXRpdmVUeXBlRm9y
Q2FsbGJhY2tzKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAkcGFyYW0tPm5hbWUpOwogICAgICAgICAg
ICAgfQogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgam9pbigiLCAiLCBAYXJncykp
OwogCkBAIC0yNjgzLDcgKzI2ODUsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0
aW9uCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIEFkZEluY2x1ZGVzRm9yVHlwZUluSW1w
bCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSk7Ci0gICAgICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4g
IiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7Cisg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGVGb3JDYWxs
YmFja3MoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAke2NsYXNzTmFtZX06OiIgLiAk
ZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CiAKICAgICAgICAgICAgIG15IEBhcmdz
ID0gKCk7CiAgICAgICAgICAgICBteSBAYXJnc0NoZWNrID0gKCk7CkBAIC0yNjkxLDcgKzI2OTMs
NyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICBmb3Jl
YWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15ICRwYXJhbU5hbWUg
PSAkcGFyYW0tPm5hbWU7CiAgICAgICAgICAgICAgICAgQWRkSW5jbHVkZXNGb3JUeXBlSW5JbXBs
KCRwYXJhbS0+dHlwZSwgMSk7Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZl
VHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtTmFtZSk7CisgICAgICAgICAgICAgICAg
cHVzaChAYXJncywgR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkcGFyYW0tPnR5cGUpIC4gIiAi
IC4gJHBhcmFtTmFtZSk7CiAgICAgICAgICAgICAgICAgaWYgKCR0aGlzVHlwZSBhbmQgJHRoaXNU
eXBlIGVxICRwYXJhbS0+dHlwZSkgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBhcmdzQ2hl
Y2ssIDw8RU5EKTsKICAgICBBU1NFUlQoJHtwYXJhbU5hbWV9KTsKQEAgLTI3MTcsNiArMjcxOSw4
IEBAIEVORAogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdz
LmFwcGVuZChqc1N0cmluZyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOwogICAgICAgICAgICAg
ICAgIH0gZWxzaWYgKCRwYXJhbS0+dHlwZSBlcSAiYm9vbGVhbiIpIHsKICAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNCb29sZWFuKCR7cGFy
YW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAgICAgfSBlbHNpZiAoJHBhcmFtLT50eXBlIGVx
ICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAgICAgICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKCRwYXJhbU5hbWUgPyAkcGFyYW1OYW1lLT5kZXNl
cmlhbGl6ZShleGVjLCBtX2RhdGEtPmdsb2JhbE9iamVjdCgpLCAwKSA6IGpzTnVsbCgpKTtcbiIp
OwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgbV9kYXRhLT5nbG9iYWxPYmpl
Y3QoKSwgJHtwYXJhbU5hbWV9KSk7XG4iKTsKICAgICAgICAgICAgICAgICB9CkBAIC0yODMyLDYg
KzI4MzYsMTQgQEAgc3ViIEdldE5hdGl2ZVR5cGUKICAgICByZXR1cm4gIiR7dHlwZX0qIjsKIH0K
IAorc3ViIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MKK3sKKyAgICBteSAkdHlwZSA9IHNoaWZ0
OworICAgIHJldHVybiAiU2VyaWFsaXplZFNjcmlwdFZhbHVlKiIgaWYgJHR5cGUgZXEgIlNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZSI7CisKKyAgICByZXR1cm4gR2V0TmF0aXZlVHlwZSgkdHlwZSk7Cit9
CisKIHN1YiBHZXRTVkdQcm9wZXJ0eVR5cGVzCiB7CiAgICAgbXkgJGltcGxUeXBlID0gc2hpZnQ7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2Uv
Y21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggNDFhNDczZC4uMTU0NjkyYyAxMDA2NDQK
LS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFr
ZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtODksNiArODksNyBAQCBNQUNSTyAoV0VCS0lUX09Q
VElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfVklERU9fVFJBQ0sg
IlRvZ2dsZSBUcmFjayBzdXBwb3J0IGZvciBIVE1MNSB2aWRlbyIgT0ZGKQogICAgIFdFQktJVF9P
UFRJT05fREVGSU5FKEVOQUJMRV9XRUJHTCAiVG9nZ2xlIDNEIGNhbnZhcyAoV2ViR0wpIHN1cHBv
cnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCX0FVRElPICJUb2dn
bGUgV2ViIEF1ZGlvIHN1cHBvcnQiIE9GRikKKyAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFC
TEVfV0VCX0lOVEVOVFMgIlRvZ2dsZSBXZWIgSW50ZW50cyBzdXBwb3J0IiBPRkYpCiAgICAgV0VC
S0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9TT0NLRVRTICJUb2dnbGUgV2ViIFNvY2tldHMg
c3VwcG9ydCIgT04pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9USU1JTkcg
IlRvZ2dsZSBXZWIgVGltaW5nIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfV09SS0VSUyAiVG9nZ2xlIFdlYiBXb3JrZXJzIHN1cHBvcnQiIE9GRikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlIGIvU291cmNlL2NtYWtlY29uZmlnLmgu
Y21ha2UKaW5kZXggYTA2ODU3ZC4uYzI2MTBmMiAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlY29u
ZmlnLmguY21ha2UKKysrIGIvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKQEAgLTcwLDYgKzcw
LDcgQEAKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9WSUVXUE9SVF9SRUZMT1cKICNjbWFrZWRlZmlu
ZTAxIEVOQUJMRV9XRUJHTAogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9BVURJTworI2NtYWtl
ZGVmaW5lMDEgRU5BQkxFX1dFQl9JTlRFTlRTCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX1NP
Q0tFVFMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfVElNSU5HCiAjY21ha2VkZWZpbmUwMSBF
TkFCTEVfV09SS0VSUwo=
</data>
<flag name="commit-queue"
          id="147383"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141340</attachid>
            <date>2012-05-11 00:20:15 -0700</date>
            <delta_ts>2012-05-11 00:24:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents.patch</filename>
            <type>text/plain</type>
            <size>16737</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA2YmFiODllLi5iN2IwM2E5
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBBZGQgRU5BQkxFX1dFQl9JTlRFTlRT
IGZsYWcgdG8gQ01ha2UuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMu
Y21ha2U6CisgICAgICAgICogU291cmNlL2NtYWtlY29uZmlnLmguY21ha2U6CisKIDIwMTItMDUt
MDkgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENhbGVuZGFy
IFBpY2tlcjogRml4IGEgY3Jhc2ggYnkgY2hhbmdpbmcgaW5wdXQgdHlwZS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNWYWx1ZVJlZi5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKaW5kZXggNDE4NmRiOC4uNGUwZWNiNCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKQEAgLTYzLDcgKzYzLDcgQEAgZXh0ZXJuICJD
IiB7CiBAcGFyYW0gdmFsdWUgICAgVGhlIEpTVmFsdWUgd2hvc2UgdHlwZSB5b3Ugd2FudCB0byBv
YnRhaW4uCiBAcmVzdWx0ICAgICAgICAgQSB2YWx1ZSBvZiB0eXBlIEpTVHlwZSB0aGF0IGlkZW50
aWZpZXMgdmFsdWUncyB0eXBlLgogKi8KLUpTX0VYUE9SVCBKU1R5cGUgSlNWYWx1ZUdldFR5cGUo
SlNDb250ZXh0UmVmIGN0eCwgSlNWYWx1ZVJlZiB2YWx1ZSk7CitKU19FWFBPUlQgOjpKU1R5cGUg
SlNWYWx1ZUdldFR5cGUoSlNDb250ZXh0UmVmIGN0eCwgSlNWYWx1ZVJlZiB2YWx1ZSk7CiAKIC8q
IQogQGZ1bmN0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBi
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGMxZjEwNDUuLjZiMGE0OGIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CkBAIC0zLDYgKzMsNyBAQCBTRVQoV2ViQ29yZV9JTkNMVURFX0RJ
UkVDVE9SSUVTCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvZmlsZXN5c3RlbSIKICAgICAi
JHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9nZW9sb2NhdGlvbiIKICAgICAiJHtXRUJDT1JFX0RJUn0v
TW9kdWxlcy9pbmRleGVkZGIiCisgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW50ZW50cyIK
ICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJhdWRpbyIKICAgICAiJHtXRUJDT1JFX0RJ
Un0vTW9kdWxlcy93ZWJkYXRhYmFzZSIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJz
b2NrZXRzIgpAQCAtMjUwNiw2ICsyNTA3LDIwIEBAIElGIChFTkFCTEVfV0VCX0FVRElPKQogICAg
ICkKIEVORElGICgpCiAKK0lGIChFTkFCTEVfV0VCX0lOVEVOVFMpCisgICAgTElTVChBUFBFTkQg
V2ViQ29yZV9JRExfRklMRVMKKyAgICAgICAgTW9kdWxlcy9pbnRlbnRzL0RPTVdpbmRvd0ludGVu
dHMuaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnQuaWRsCisgICAgICAgIE1vZHVs
ZXMvaW50ZW50cy9JbnRlbnRSZXN1bHRDYWxsYmFjay5pZGwKKyAgICAgICAgTW9kdWxlcy9pbnRl
bnRzL05hdmlnYXRvckludGVudHMuaWRsCisgICAgKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVf
U09VUkNFUworICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCisgICAgICAgTW9kdWxl
cy9pbnRlbnRzL0ludGVudFJlcXVlc3QuY3BwCisgICAgICAgTW9kdWxlcy9pbnRlbnRzL05hdmln
YXRvckludGVudHMuY3BwCisgICAgKQorRU5ESUYgKCkKKwogIyBNb2R1bGVzIHRoYXQgdGhlIGJp
bmRpbmdzIGdlbmVyYXRvciBzY3JpcHRzIG1heSB1c2UKIFNFVChTQ1JJUFRTX1JFU09MVkVfU1VQ
UExFTUVOVEFMCiAgICAgJHtXRUJDT1JFX0RJUn0vYmluZGluZ3Mvc2NyaXB0cy9JRExQYXJzZXIu
cG0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCBhYzdhMTVhLi41ODc5YTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
NDUgQEAKKzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGlu
dGVsLmNvbT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBBZGQgbmVjZXNzYXJ5IGFi
c3RyYWN0aW9uIGZvciBqcyBEaWN0aW9uYXJ5IGFuZCBTY3JpcHRWYWx1ZSBzbyB0aGF0CisgICAg
ICAgIHRoZSBXZWIgSW50ZW50cyBjb2RlIGluIFdlYkNvcmUgY29tcGlsZXMgd2l0aCBKU0MsIG5v
dCBqdXN0IFY4LgorCisgICAgICAgIFRoaXMgcmVxdWlyZWQgY2hhbmdlcyBpbiB0aGUgSlNDIGJp
bmRpbmdzIGdlbmVyYXRvciB0byBwYXNzCisgICAgICAgIGNhbGxiYWNrIGFyZ3VtZW50cyBvZiB0
eXBlIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSBhcyByYXcgcG9pbnRlcnMKKyAgICAgICAgaW5zdGVh
ZCBvZiBSZWZQdHIuIFRoaXMgbWF0Y2hlcyB0aGUgY2hhbmdlIG1hZGUgdG8gdGhlIFY4IGJpbmRp
bmdzCisgICAgICAgIGdlbmVyYXRvciBpbiByMTA0NTMxLgorCisgICAgICAgICogQ01ha2VMaXN0
cy50eHQ6CisgICAgICAgICogTW9kdWxlcy9pbnRlbnRzL0ludGVudC5jcHA6CisgICAgICAgICog
TW9kdWxlcy9pbnRlbnRzL0ludGVudC5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0RpY3Rpb25h
cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGljdGlvbmFyeTo6RGljdGlvbmFyeSk6CisgICAg
ICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRpY3Rpb25hcnk6OmdldE93blByb3Bl
cnRpZXNBc1N0cmluZ0hhc2hNYXApOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0RpY3Rpb25hcnku
aDoKKyAgICAgICAgKERpY3Rpb25hcnkpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQmluZGlu
Z3NBbGxJbk9uZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKToKKyAgICAgICAg
KFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oOgorICAgICAg
ICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpKU0RpY3Rpb25hcnk6OmluaXRpYWxpemVy
T2JqZWN0KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTY3JpcHRWYWx1ZTo6c2VyaWFsaXplKToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmg6CisgICAgICAgIChTY3JpcHRWYWx1
ZSk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAg
ICAgIChBZGRJbmNsdWRlc0ZvclR5cGUpOgorICAgICAgICAoR2VuZXJhdGVDYWxsYmFja0hlYWRl
cik6CisgICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSW1wbGVtZW50YXRpb24pOgorICAgICAgICAo
R2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcyk6CisKIDIwMTItMDUtMDkgIEtlbnQgVGFtdXJhICA8
dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENhbGVuZGFyIFBpY2tlcjogRml4IGEgY3Jh
c2ggYnkgY2hhbmdpbmcgaW5wdXQgdHlwZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRz
L0ludGVudC5jcHAKaW5kZXggYmZlYmE2NS4uYmY5NTY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbnRlbnRzL0ludGVudC5jcHAKQEAgLTMzLDcgKzMzLDYgQEAKIAogI2luY2x1ZGUgIkV4
Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgotI2luY2x1ZGUgIlNjcmlw
dFN0YXRlLmgiCiAjaW5jbHVkZSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgiCiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9J
bnRlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaAppbmRleCA0
NTA5MDk2Li5kZmY3MDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVu
dHMvSW50ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5o
CkBAIC0zNSw2ICszNSw3IEBACiAjaW5jbHVkZSAiS1VSTC5oIgogI2luY2x1ZGUgIk1lc3NhZ2VQ
b3J0LmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBvcnRDaGFubmVsLmgiCisjaW5jbHVkZSAiU2NyaXB0
U3RhdGUuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVm
UHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTQzLDcgKzQ0LDYgQEAKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBTY3JpcHRTdGF0ZTsKIGNsYXNzIFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZTsKIAogdHlwZWRlZiBpbnQgRXhjZXB0aW9uQ29kZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHAKaW5kZXggMmMxYjc4NS4uNzliYTYwYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHAKQEAgLTM1LDYgKzM1LDEx
IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorRGljdGlv
bmFyeTo6RGljdGlvbmFyeSgpCisgICAgOiBtX2RpY3Rpb25hcnkoMCwgMCkKK3sKK30KKwogRGlj
dGlvbmFyeTo6RGljdGlvbmFyeShKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNDOjpKU1ZhbHVlIHZh
bHVlKQogICAgIDogbV9kaWN0aW9uYXJ5KGV4ZWMsIHZhbHVlLmlzT2JqZWN0KCkgPyB2YWx1ZS5n
ZXRPYmplY3QoKSA6IDApCiB7CkBAIC00OSw1ICs1NCwzMCBAQCBKU09iamVjdCogRGljdGlvbmFy
eTo6YXNKU09iamVjdDxOb3RpZmljYXRpb24+KE5vdGlmaWNhdGlvbiogb2JqZWN0KSBjb25zdAog
fQogI2VuZGlmCiAKK2Jvb2wgRGljdGlvbmFyeTo6Z2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFz
aE1hcChXVEY6Okhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+JiBtYXApIGNvbnN0Cit7CisgICAgaWYg
KCFtX2RpY3Rpb25hcnkuaXNWYWxpZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBK
U09iamVjdCogb2JqZWN0ID0gIG1fZGljdGlvbmFyeS5pbml0aWFsaXplck9iamVjdCgpOworICAg
IEV4ZWNTdGF0ZSogZXhlYyA9IG1fZGljdGlvbmFyeS5leGVjU3RhdGUoKTsKKworICAgIFByb3Bl
cnR5TmFtZUFycmF5IHByb3BlcnR5TmFtZXMoZXhlYyk7CisgICAgSlNPYmplY3Q6OmdldE93blBy
b3BlcnR5TmFtZXMob2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWVzLCBFeGNsdWRlRG9udEVudW1Q
cm9wZXJ0aWVzKTsKKyAgICBmb3IgKFByb3BlcnR5TmFtZUFycmF5Ojpjb25zdF9pdGVyYXRvciBp
dCA9IHByb3BlcnR5TmFtZXMuYmVnaW4oKTsgaXQgIT0gcHJvcGVydHlOYW1lcy5lbmQoKTsgaXQr
KykgeworICAgICAgICBTdHJpbmcgc3RyaW5nS2V5KGl0LT51c3RyaW5nKCkuaW1wbCgpKTsKKyAg
ICAgICAgaWYgKHN0cmluZ0tleS5pc0VtcHR5KCkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAg
ICAgICAgSlNWYWx1ZSB2YWx1ZSA9IG9iamVjdC0+Z2V0KGV4ZWMsICppdCk7CisgICAgICAgIGlm
IChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBV
U3RyaW5nIHN0cmluZ1ZhbHVlID0gdmFsdWUudG9VU3RyaW5nKGV4ZWMpOworICAgICAgICBpZiAo
IWV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgbWFwLnNldChzdHJpbmdLZXksIFN0
cmluZyhzdHJpbmdWYWx1ZS5pbXBsKCkpKTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30K
KwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFy
eS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oCmluZGV4IGQ0MWNi
MTcuLmNjY2VlZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rp
b25hcnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKQEAg
LTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJKU0V2ZW50TGlzdGVuZXIuaCIKICNpbmNsdWRlICJO
b3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgRXZlbnRMaXN0ZW5l
cjsKIAogY2xhc3MgRGljdGlvbmFyeSB7CiBwdWJsaWM6CisgICAgRGljdGlvbmFyeSgpOwogICAg
IERpY3Rpb25hcnkoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUpOwogCiAgICAgLy8gUmV0
dXJucyB0cnVlIGlmIGEgdmFsdWUgd2FzIGZvdW5kIGZvciB0aGUgcHJvdmlkZWQgcHJvcGVydHku
CkBAIC01OCw2ICs2MCw3IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaXNPYmplY3QoKSBjb25zdCB7
IHJldHVybiBtX2RpY3Rpb25hcnkuaXNWYWxpZCgpOyB9CiAgICAgYm9vbCBpc1VuZGVmaW5lZE9y
TnVsbCgpIGNvbnN0IHsgcmV0dXJuICFtX2RpY3Rpb25hcnkuaXNWYWxpZCgpOyB9CisgICAgYm9v
bCBnZXRPd25Qcm9wZXJ0aWVzQXNTdHJpbmdIYXNoTWFwKFdURjo6SGFzaE1hcDxTdHJpbmcsIFN0
cmluZz4mKSBjb25zdDsKICAgICBib29sIGdldFdpdGhVbmRlZmluZWRPck51bGxDaGVjayhjb25z
dCBTdHJpbmcmLCBTdHJpbmcmKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxz
ZTsgfQogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNCaW5kaW5nc0FsbEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmlu
ZGluZ3NBbGxJbk9uZS5jcHAKaW5kZXggYmJlM2YxYy4uYjQ1OTc5NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCkBAIC0yOCw2ICsy
OCw3IEBACiAjaW5jbHVkZSAiQ2FsbGJhY2tGdW5jdGlvbi5jcHAiCiAjaW5jbHVkZSAiRE9NT2Jq
ZWN0SGFzaFRhYmxlTWFwLmNwcCIKICNpbmNsdWRlICJET01XcmFwcGVyV29ybGQuY3BwIgorI2lu
Y2x1ZGUgIkRpY3Rpb25hcnkuY3BwIgogI2luY2x1ZGUgIkdDQ29udHJvbGxlci5jcHAiCiAjaW5j
bHVkZSAiSlNBcnJheUJ1ZmZlckN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNBdHRyQ3VzdG9tLmNw
cCIKQEAgLTE4MCw2ICsxODEsNyBAQAogI2luY2x1ZGUgIlNjcmlwdEdDRXZlbnQuY3BwIgogI2lu
Y2x1ZGUgIlNjcmlwdFByb2ZpbGVyLmNwcCIKICNpbmNsdWRlICJTY3JpcHRTdGF0ZS5jcHAiCisj
aW5jbHVkZSAiU2NyaXB0VmFsdWUuY3BwIgogI2luY2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZS5jcHAiCiAjaW5jbHVkZSAiV29ya2VyU2NyaXB0Q29udHJvbGxlci5jcHAiCiAjaW5jbHVkZSAi
V29ya2VyU2NyaXB0RGVidWdTZXJ2ZXIuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRGljdGlvbmFyeS5jcHAKaW5kZXggZWFkMjk3YS4uZTQ2MWMyMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNEaWN0aW9uYXJ5LmgiCiAKKyNpbmNsdWRlICJE
aWN0aW9uYXJ5LmgiCiAjaW5jbHVkZSAiSlNET01XaW5kb3cuaCIKICNpbmNsdWRlICJKU0V2ZW50
VGFyZ2V0LmgiCiAjaW5jbHVkZSAiSlNNZXNzYWdlUG9ydEN1c3RvbS5oIgpAQCAtOTEsNiArOTIs
MTEgQEAgdm9pZCBKU0RpY3Rpb25hcnk6OmNvbnZlcnRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpT
VmFsdWUgdmFsdWUsIGRvdWJsZSYgcmVzdWx0KQogICAgIHJlc3VsdCA9IHZhbHVlLnRvTnVtYmVy
KGV4ZWMpOwogfQogCit2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEpTQzo6RXhlY1N0
YXRlKiBleGVjLCBKU0M6OkpTVmFsdWUgdmFsdWUsIERpY3Rpb25hcnkmIHJlc3VsdCkKK3sKKyAg
ICByZXN1bHQgPSBEaWN0aW9uYXJ5KGV4ZWMsIHZhbHVlKTsKK30KKwogdm9pZCBKU0RpY3Rpb25h
cnk6OmNvbnZlcnRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFsdWUsIFN0cmluZyYg
cmVzdWx0KQogewogICAgIHJlc3VsdCA9IHVzdHJpbmdUb1N0cmluZyh2YWx1ZS50b1N0cmluZyhl
eGVjKS0+dmFsdWUoZXhlYykpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNEaWN0aW9uYXJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25h
cnkuaAppbmRleCA4ZjYzMzdkLi5lMGJhMTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RpY3Rpb25hcnkuaApAQCAtMzIsNiArMzIsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKK2NsYXNzIERpY3Rpb25hcnk7CiBjbGFzcyBET01XaW5kb3c7CiBjbGFzcyBFdmVudFRhcmdl
dDsKIGNsYXNzIE5vZGU7CkBAIC01OSw2ICs2MCw3IEBAIHB1YmxpYzoKICAgICBib29sIGdldChj
b25zdCBjaGFyKiBwcm9wZXJ0eU5hbWUsIFJlc3VsdCYpIGNvbnN0OwogCiAgICAgSlNDOjpFeGVj
U3RhdGUqIGV4ZWNTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXhlYzsgfQorICAgIEpTQzo6SlNP
YmplY3QqIGluaXRpYWxpemVyT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9pbml0aWFsaXplck9i
amVjdDsgfQogICAgIGJvb2wgaXNWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1fZXhlYyAmJiBtX2lu
aXRpYWxpemVyT2JqZWN0OyB9CiAKIHByaXZhdGU6CkBAIC04Niw2ICs4OCw3IEBAIHByaXZhdGU6
CiAgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1Zh
bHVlLCB1bnNpZ25lZCBzaG9ydCYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFs
dWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkIGxvbmcgbG9uZyYgcmVz
dWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTVmFsdWUsIGRvdWJsZSYgcmVzdWx0KTsKKyAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUo
SlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIERpY3Rpb25hcnkmIHJlc3VsdCk7CiAgICAg
c3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBT
dHJpbmcmIHJlc3VsdCk7CiAgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU1ZhbHVlLCBTY3JpcHRWYWx1ZSYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9p
ZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFJlZlB0cjxTZXJp
YWxpemVkU2NyaXB0VmFsdWU+JiByZXN1bHQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvU2NyaXB0VmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
U2NyaXB0VmFsdWUuY3BwCmluZGV4IGRlYTJhNDguLmZkMzI4NzIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAKQEAgLTEwNiw2ICsxMDYsMTQgQEAgUGFzc1Jl
ZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IFNjcmlwdFZhbHVlOjpzZXJpYWxpemUoU2NyaXB0
U3RhdGUqIHNjcmlwdFN0YXQKICAgICByZXR1cm4gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVh
dGUoc2NyaXB0U3RhdGUsIGpzVmFsdWUoKSwgMCwgMCwgdGhyb3dFeGNlcHRpb25zKTsKIH0KIAor
UGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IFNjcmlwdFZhbHVlOjpzZXJpYWxpemUo
U2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRlLCBNZXNzYWdlUG9ydEFycmF5KiBtZXNzYWdlUG9ydHMs
IEFycmF5QnVmZmVyQXJyYXkqIGFycmF5QnVmZmVycywgYm9vbCYgZGlkVGhyb3cpCit7CisgICAg
SlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFs
dWU+IHNlcmlhbGl6ZWRWYWx1ZSA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlKHRvUmVm
KHNjcmlwdFN0YXRlKSwgdG9SZWYoc2NyaXB0U3RhdGUsIGpzVmFsdWUoKSksIG1lc3NhZ2VQb3J0
cywgYXJyYXlCdWZmZXJzLCAmZXhjZXB0aW9uKTsKKyAgICBkaWRUaHJvdyA9IGV4Y2VwdGlvbiA/
IHRydWUgOiBmYWxzZTsKKyAgICByZXR1cm4gc2VyaWFsaXplZFZhbHVlLnJlbGVhc2UoKTsKK30K
KwogU2NyaXB0VmFsdWUgU2NyaXB0VmFsdWU6OmRlc2VyaWFsaXplKFNjcmlwdFN0YXRlKiBzY3Jp
cHRTdGF0ZSwgU2VyaWFsaXplZFNjcmlwdFZhbHVlKiB2YWx1ZSwgU2VyaWFsaXphdGlvbkVycm9y
TW9kZSB0aHJvd0V4Y2VwdGlvbnMpCiB7CiAgICAgcmV0dXJuIFNjcmlwdFZhbHVlKHNjcmlwdFN0
YXRlLT5nbG9iYWxEYXRhKCksIHZhbHVlLT5kZXNlcmlhbGl6ZShzY3JpcHRTdGF0ZSwgc2NyaXB0
U3RhdGUtPmxleGljYWxHbG9iYWxPYmplY3QoKSwgMCwgdGhyb3dFeGNlcHRpb25zKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaAppbmRleCBjZmI5OWU1Li4xNTczYTQ5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgKQEAgLTYzLDYgKzYz
LDcgQEAgcHVibGljOgogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTY3JpcHRWYWx1ZSYgb3Ro
ZXIpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWUgPT0gb3RoZXIubV92YWx1ZTsgfQogCiAgICAgUGFz
c1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHNlcmlhbGl6ZShTY3JpcHRTdGF0ZSosIFNl
cmlhbGl6YXRpb25FcnJvck1vZGUgPSBUaHJvd2luZyk7CisgICAgUGFzc1JlZlB0cjxTZXJpYWxp
emVkU2NyaXB0VmFsdWU+IHNlcmlhbGl6ZShTY3JpcHRTdGF0ZSosIE1lc3NhZ2VQb3J0QXJyYXkq
LCBBcnJheUJ1ZmZlckFycmF5KiwgYm9vbCYpOwogICAgIHN0YXRpYyBTY3JpcHRWYWx1ZSBkZXNl
cmlhbGl6ZShTY3JpcHRTdGF0ZSosIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSosIFNlcmlhbGl6YXRp
b25FcnJvck1vZGUgPSBUaHJvd2luZyk7CiAKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0g
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRl
eCA5YjFmN2M0Li4xZmIxN2U0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMjYyLDYgKzI2Miw4IEBAIHN1YiBBZGRJbmNs
dWRlc0ZvclR5cGUKICAgICAgICAgJGluY2x1ZGVzUmVmLT57IkpTRE9NU3RyaW5nTGlzdC5oIn0g
PSAxOwogICAgIH0gZWxzaWYgKCR0eXBlIGVxICJ1bnNpZ25lZCBsb25nW10iKSB7CiAgICAgICAg
ICRpbmNsdWRlc1JlZi0+eyI8d3RmL1ZlY3Rvci5oPiJ9ID0gMTsKKyAgICB9IGVsc2lmICgkdHlw
ZSBlcSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIikgeworICAgICAgICAkaW5jbHVkZXNSZWYtPnsi
U2VyaWFsaXplZFNjcmlwdFZhbHVlLmgifSA9IDE7CiAgICAgfSBlbHNpZiAoJGlzQ2FsbGJhY2sp
IHsKICAgICAgICAgJGluY2x1ZGVzUmVmLT57IkpTJHt0eXBlfS5oIn0gPSAxOwogICAgIH0gZWxz
aWYgKElzVHlwZWRBcnJheVR5cGUoJHR5cGUpKSB7CkBAIC0yNjA0LDExICsyNjA2LDExIEBAIHN1
YiBHZW5lcmF0ZUNhbGxiYWNrSGVhZGVyCiAgICAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgIiAgICBDT01QSUxFX0FTU0VSVChmYWxzZSkiKTsKICAgICAgICAgICAgIH0KIAotICAg
ICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsICIgLiBHZXROYXRpdmVU
eXBlKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgIiAuICRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5uYW1lIC4gIigiKTsKKyAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAg
dmlydHVhbCAiIC4gR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkZnVuY3Rpb24tPnNpZ25hdHVy
ZS0+dHlwZSkgLiAiICIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CiAKICAg
ICAgICAgICAgIG15IEBhcmdzID0gKCk7CiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAo
QHBhcmFtcykgewotICAgICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGUoJHBh
cmFtLT50eXBlKSAuICIgIiAuICRwYXJhbS0+bmFtZSk7CisgICAgICAgICAgICAgICAgcHVzaChA
YXJncywgR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBh
cmFtLT5uYW1lKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRl
bnQsIGpvaW4oIiwgIiwgQGFyZ3MpKTsKIApAQCAtMjY4Myw3ICsyNjg1LDcgQEAgc3ViIEdlbmVy
YXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBB
ZGRJbmNsdWRlc0ZvclR5cGVJbkltcGwoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpOwotICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJcbiIgLiBHZXROYXRpdmVUeXBlKCRmdW5jdGlv
bi0+c2lnbmF0dXJlLT50eXBlKSAuICIgJHtjbGFzc05hbWV9OjoiIC4gJGZ1bmN0aW9uLT5zaWdu
YXR1cmUtPm5hbWUgLiAiKCIpOworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJcbiIg
LiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAu
ICIgJHtjbGFzc05hbWV9OjoiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIpOwog
CiAgICAgICAgICAgICBteSBAYXJncyA9ICgpOwogICAgICAgICAgICAgbXkgQGFyZ3NDaGVjayA9
ICgpOwpAQCAtMjY5MSw3ICsyNjkzLDcgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRh
dGlvbgogICAgICAgICAgICAgZm9yZWFjaCBteSAkcGFyYW0gKEBwYXJhbXMpIHsKICAgICAgICAg
ICAgICAgICBteSAkcGFyYW1OYW1lID0gJHBhcmFtLT5uYW1lOwogICAgICAgICAgICAgICAgIEFk
ZEluY2x1ZGVzRm9yVHlwZUluSW1wbCgkcGFyYW0tPnR5cGUsIDEpOwotICAgICAgICAgICAgICAg
IHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGUoJHBhcmFtLT50eXBlKSAuICIgIiAuICRwYXJhbU5h
bWUpOworICAgICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFj
a3MoJHBhcmFtLT50eXBlKSAuICIgIiAuICRwYXJhbU5hbWUpOwogICAgICAgICAgICAgICAgIGlm
ICgkdGhpc1R5cGUgYW5kICR0aGlzVHlwZSBlcSAkcGFyYW0tPnR5cGUpIHsKICAgICAgICAgICAg
ICAgICAgICAgcHVzaChAYXJnc0NoZWNrLCA8PEVORCk7CiAgICAgQVNTRVJUKCR7cGFyYW1OYW1l
fSk7CkBAIC0yNzE3LDYgKzI3MTksOCBAQCBFTkQKICAgICAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9
KSk7XG4iKTsKICAgICAgICAgICAgICAgICB9IGVsc2lmICgkcGFyYW0tPnR5cGUgZXEgImJvb2xl
YW4iKSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3Mu
YXBwZW5kKGpzQm9vbGVhbigke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgIH0g
ZWxzaWYgKCRwYXJhbS0+dHlwZSBlcSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIikgeworICAgICAg
ICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCgkcGFyYW1O
YW1lID8gJHBhcmFtTmFtZS0+ZGVzZXJpYWxpemUoZXhlYywgbV9kYXRhLT5nbG9iYWxPYmplY3Qo
KSwgMCkgOiBqc051bGwoKSk7XG4iKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAg
ICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCh0b0pTKGV4
ZWMsIG1fZGF0YS0+Z2xvYmFsT2JqZWN0KCksICR7cGFyYW1OYW1lfSkpO1xuIik7CiAgICAgICAg
ICAgICAgICAgfQpAQCAtMjgzMiw2ICsyODM2LDE0IEBAIHN1YiBHZXROYXRpdmVUeXBlCiAgICAg
cmV0dXJuICIke3R5cGV9KiI7CiB9CiAKK3N1YiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzCit7
CisgICAgbXkgJHR5cGUgPSBzaGlmdDsKKyAgICByZXR1cm4gIlNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZSoiIGlmICR0eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiOworCisgICAgcmV0dXJuIEdl
dE5hdGl2ZVR5cGUoJHR5cGUpOworfQorCiBzdWIgR2V0U1ZHUHJvcGVydHlUeXBlcwogewogICAg
IG15ICRpbXBsVHlwZSA9IHNoaWZ0OwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZl
YXR1cmVzLmNtYWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IDQx
YTQ3M2QuLjE1NDY5MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5j
bWFrZQorKysgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTg5LDYgKzg5
LDcgQEAgTUFDUk8gKFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJ
TkUoRU5BQkxFX1ZJREVPX1RSQUNLICJUb2dnbGUgVHJhY2sgc3VwcG9ydCBmb3IgSFRNTDUgdmlk
ZW8iIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCR0wgIlRvZ2dsZSAz
RCBjYW52YXMgKFdlYkdMKSBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUo
RU5BQkxFX1dFQl9BVURJTyAiVG9nZ2xlIFdlYiBBdWRpbyBzdXBwb3J0IiBPRkYpCisgICAgV0VC
S0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9JTlRFTlRTICJUb2dnbGUgV2ViIEludGVudHMg
c3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJfU09DS0VU
UyAiVG9nZ2xlIFdlYiBTb2NrZXRzIHN1cHBvcnQiIE9OKQogICAgIFdFQktJVF9PUFRJT05fREVG
SU5FKEVOQUJMRV9XRUJfVElNSU5HICJUb2dnbGUgV2ViIFRpbWluZyBzdXBwb3J0IiBPRkYpCiAg
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dPUktFUlMgIlRvZ2dsZSBXZWIgV29ya2Vy
cyBzdXBwb3J0IiBPRkYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZSBi
L1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlCmluZGV4IGEwNjg1N2QuLmMyNjEwZjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZWNvbmZp
Zy5oLmNtYWtlCkBAIC03MCw2ICs3MCw3IEBACiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfVklFV1BP
UlRfUkVGTE9XCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCR0wKICNjbWFrZWRlZmluZTAxIEVO
QUJMRV9XRUJfQVVESU8KKyNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfSU5URU5UUwogI2NtYWtl
ZGVmaW5lMDEgRU5BQkxFX1dFQl9TT0NLRVRTCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX1RJ
TUlORwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dPUktFUlMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141341</attachid>
            <date>2012-05-11 00:24:51 -0700</date>
            <delta_ts>2012-05-11 01:14:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents.patch</filename>
            <type>text/plain</type>
            <size>16731</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA2YmFiODllLi5iN2IwM2E5
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBBZGQgRU5BQkxFX1dFQl9JTlRFTlRT
IGZsYWcgdG8gQ01ha2UuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMu
Y21ha2U6CisgICAgICAgICogU291cmNlL2NtYWtlY29uZmlnLmguY21ha2U6CisKIDIwMTItMDUt
MDkgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENhbGVuZGFy
IFBpY2tlcjogRml4IGEgY3Jhc2ggYnkgY2hhbmdpbmcgaW5wdXQgdHlwZS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNWYWx1ZVJlZi5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKaW5kZXggNDE4NmRiOC4uZmM4MjcxZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKQEAgLTYzLDcgKzYzLDcgQEAgZXh0ZXJuICJD
IiB7CiBAcGFyYW0gdmFsdWUgICAgVGhlIEpTVmFsdWUgd2hvc2UgdHlwZSB5b3Ugd2FudCB0byBv
YnRhaW4uCiBAcmVzdWx0ICAgICAgICAgQSB2YWx1ZSBvZiB0eXBlIEpTVHlwZSB0aGF0IGlkZW50
aWZpZXMgdmFsdWUncyB0eXBlLgogKi8KLUpTX0VYUE9SVCBKU1R5cGUgSlNWYWx1ZUdldFR5cGUo
SlNDb250ZXh0UmVmIGN0eCwgSlNWYWx1ZVJlZiB2YWx1ZSk7CitKU19FWFBPUlQgOjpKU1R5cGUg
SlNWYWx1ZUdldFR5cGUoSlNDb250ZXh0UmVmIGN0eCwgSlNWYWx1ZVJlZik7CiAKIC8qIQogQGZ1
bmN0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGMxZjEwNDUuLjZiMGE0OGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CkBAIC0zLDYgKzMsNyBAQCBTRVQoV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9S
SUVTCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvZmlsZXN5c3RlbSIKICAgICAiJHtXRUJD
T1JFX0RJUn0vTW9kdWxlcy9nZW9sb2NhdGlvbiIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxl
cy9pbmRleGVkZGIiCisgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW50ZW50cyIKICAgICAi
JHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJhdWRpbyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9k
dWxlcy93ZWJkYXRhYmFzZSIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJzb2NrZXRz
IgpAQCAtMjUwNiw2ICsyNTA3LDIwIEBAIElGIChFTkFCTEVfV0VCX0FVRElPKQogICAgICkKIEVO
RElGICgpCiAKK0lGIChFTkFCTEVfV0VCX0lOVEVOVFMpCisgICAgTElTVChBUFBFTkQgV2ViQ29y
ZV9JRExfRklMRVMKKyAgICAgICAgTW9kdWxlcy9pbnRlbnRzL0RPTVdpbmRvd0ludGVudHMuaWRs
CisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnQuaWRsCisgICAgICAgIE1vZHVsZXMvaW50
ZW50cy9JbnRlbnRSZXN1bHRDYWxsYmFjay5pZGwKKyAgICAgICAgTW9kdWxlcy9pbnRlbnRzL05h
dmlnYXRvckludGVudHMuaWRsCisgICAgKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfU09VUkNF
UworICAgICAgIE1vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCisgICAgICAgTW9kdWxlcy9pbnRl
bnRzL0ludGVudFJlcXVlc3QuY3BwCisgICAgICAgTW9kdWxlcy9pbnRlbnRzL05hdmlnYXRvcklu
dGVudHMuY3BwCisgICAgKQorRU5ESUYgKCkKKwogIyBNb2R1bGVzIHRoYXQgdGhlIGJpbmRpbmdz
IGdlbmVyYXRvciBzY3JpcHRzIG1heSB1c2UKIFNFVChTQ1JJUFRTX1JFU09MVkVfU1VQUExFTUVO
VEFMCiAgICAgJHtXRUJDT1JFX0RJUn0vYmluZGluZ3Mvc2NyaXB0cy9JRExQYXJzZXIucG0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCBhYzdhMTVhLi41ODc5YTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBBZGQgbmVjZXNzYXJ5IGFic3RyYWN0
aW9uIGZvciBqcyBEaWN0aW9uYXJ5IGFuZCBTY3JpcHRWYWx1ZSBzbyB0aGF0CisgICAgICAgIHRo
ZSBXZWIgSW50ZW50cyBjb2RlIGluIFdlYkNvcmUgY29tcGlsZXMgd2l0aCBKU0MsIG5vdCBqdXN0
IFY4LgorCisgICAgICAgIFRoaXMgcmVxdWlyZWQgY2hhbmdlcyBpbiB0aGUgSlNDIGJpbmRpbmdz
IGdlbmVyYXRvciB0byBwYXNzCisgICAgICAgIGNhbGxiYWNrIGFyZ3VtZW50cyBvZiB0eXBlIFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZSBhcyByYXcgcG9pbnRlcnMKKyAgICAgICAgaW5zdGVhZCBvZiBS
ZWZQdHIuIFRoaXMgbWF0Y2hlcyB0aGUgY2hhbmdlIG1hZGUgdG8gdGhlIFY4IGJpbmRpbmdzCisg
ICAgICAgIGdlbmVyYXRvciBpbiByMTA0NTMxLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6
CisgICAgICAgICogTW9kdWxlcy9pbnRlbnRzL0ludGVudC5jcHA6CisgICAgICAgICogTW9kdWxl
cy9pbnRlbnRzL0ludGVudC5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RGljdGlvbmFyeTo6RGljdGlvbmFyeSk6CisgICAgICAgIChX
ZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRpY3Rpb25hcnk6OmdldE93blByb3BlcnRpZXNB
c1N0cmluZ0hhc2hNYXApOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaDoKKyAg
ICAgICAgKERpY3Rpb25hcnkpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJ
bk9uZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKToKKyAgICAgICAgKFdlYkNv
cmUpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpKU0RpY3Rpb25hcnk6OmluaXRpYWxpemVyT2JqZWN0
KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTY3JpcHRWYWx1ZTo6c2VyaWFsaXplKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmg6CisgICAgICAgIChTY3JpcHRWYWx1ZSk6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChB
ZGRJbmNsdWRlc0ZvclR5cGUpOgorICAgICAgICAoR2VuZXJhdGVDYWxsYmFja0hlYWRlcik6Cisg
ICAgICAgIChHZW5lcmF0ZUNhbGxiYWNrSW1wbGVtZW50YXRpb24pOgorICAgICAgICAoR2V0TmF0
aXZlVHlwZUZvckNhbGxiYWNrcyk6CisKIDIwMTItMDUtMDkgIEtlbnQgVGFtdXJhICA8dGtlbnRA
Y2hyb21pdW0ub3JnPgogCiAgICAgICAgIENhbGVuZGFyIFBpY2tlcjogRml4IGEgY3Jhc2ggYnkg
Y2hhbmdpbmcgaW5wdXQgdHlwZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW50ZW50cy9JbnRlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVu
dC5jcHAKaW5kZXggYmZlYmE2NS4uYmY5NTY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbnRlbnRzL0ludGVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bnRlbnRzL0ludGVudC5jcHAKQEAgLTMzLDcgKzMzLDYgQEAKIAogI2luY2x1ZGUgIkV4Y2VwdGlv
bkNvZGUuaCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgotI2luY2x1ZGUgIlNjcmlwdFN0YXRl
LmgiCiAjaW5jbHVkZSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgiCiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaAppbmRleCA0NTA5MDk2
Li5kZmY3MDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVudC5oCkBAIC0z
NSw2ICszNSw3IEBACiAjaW5jbHVkZSAiS1VSTC5oIgogI2luY2x1ZGUgIk1lc3NhZ2VQb3J0Lmgi
CiAjaW5jbHVkZSAiTWVzc2FnZVBvcnRDaGFubmVsLmgiCisjaW5jbHVkZSAiU2NyaXB0U3RhdGUu
aCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+
CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTQzLDcgKzQ0LDYgQEAKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCi1jbGFzcyBTY3JpcHRTdGF0ZTsKIGNsYXNzIFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZTsKIAogdHlwZWRlZiBpbnQgRXhjZXB0aW9uQ29kZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvRGljdGlvbmFyeS5jcHAKaW5kZXggMmMxYjc4NS4uNzliYTYwYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHAKQEAgLTM1LDYgKzM1LDExIEBAIHVz
aW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorRGljdGlvbmFyeTo6
RGljdGlvbmFyeSgpCisgICAgOiBtX2RpY3Rpb25hcnkoMCwgMCkKK3sKK30KKwogRGljdGlvbmFy
eTo6RGljdGlvbmFyeShKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNDOjpKU1ZhbHVlIHZhbHVlKQog
ICAgIDogbV9kaWN0aW9uYXJ5KGV4ZWMsIHZhbHVlLmlzT2JqZWN0KCkgPyB2YWx1ZS5nZXRPYmpl
Y3QoKSA6IDApCiB7CkBAIC00OSw1ICs1NCwzMCBAQCBKU09iamVjdCogRGljdGlvbmFyeTo6YXNK
U09iamVjdDxOb3RpZmljYXRpb24+KE5vdGlmaWNhdGlvbiogb2JqZWN0KSBjb25zdAogfQogI2Vu
ZGlmCiAKK2Jvb2wgRGljdGlvbmFyeTo6Z2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFzaE1hcChX
VEY6Okhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+JiBtYXApIGNvbnN0Cit7CisgICAgaWYgKCFtX2Rp
Y3Rpb25hcnkuaXNWYWxpZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBKU09iamVj
dCogb2JqZWN0ID0gIG1fZGljdGlvbmFyeS5pbml0aWFsaXplck9iamVjdCgpOworICAgIEV4ZWNT
dGF0ZSogZXhlYyA9IG1fZGljdGlvbmFyeS5leGVjU3RhdGUoKTsKKworICAgIFByb3BlcnR5TmFt
ZUFycmF5IHByb3BlcnR5TmFtZXMoZXhlYyk7CisgICAgSlNPYmplY3Q6OmdldE93blByb3BlcnR5
TmFtZXMob2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWVzLCBFeGNsdWRlRG9udEVudW1Qcm9wZXJ0
aWVzKTsKKyAgICBmb3IgKFByb3BlcnR5TmFtZUFycmF5Ojpjb25zdF9pdGVyYXRvciBpdCA9IHBy
b3BlcnR5TmFtZXMuYmVnaW4oKTsgaXQgIT0gcHJvcGVydHlOYW1lcy5lbmQoKTsgaXQrKykgewor
ICAgICAgICBTdHJpbmcgc3RyaW5nS2V5KGl0LT51c3RyaW5nKCkuaW1wbCgpKTsKKyAgICAgICAg
aWYgKHN0cmluZ0tleS5pc0VtcHR5KCkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAg
SlNWYWx1ZSB2YWx1ZSA9IG9iamVjdC0+Z2V0KGV4ZWMsICppdCk7CisgICAgICAgIGlmIChleGVj
LT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBVU3RyaW5n
IHN0cmluZ1ZhbHVlID0gdmFsdWUudG9VU3RyaW5nKGV4ZWMpOworICAgICAgICBpZiAoIWV4ZWMt
PmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgbWFwLnNldChzdHJpbmdLZXksIFN0cmluZyhz
dHJpbmdWYWx1ZS5pbXBsKCkpKTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogfTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGljdGlvbmFyeS5oCmluZGV4IGQ0MWNiMTcuLmNj
Y2VlZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnku
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKQEAgLTMxLDYg
KzMxLDcgQEAKICNpbmNsdWRlICJKU0V2ZW50TGlzdGVuZXIuaCIKICNpbmNsdWRlICJOb3RJbXBs
ZW1lbnRlZC5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hN
YXAuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQv
V1RGU3RyaW5nLmg+CiAKQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgRXZlbnRMaXN0ZW5lcjsKIAog
Y2xhc3MgRGljdGlvbmFyeSB7CiBwdWJsaWM6CisgICAgRGljdGlvbmFyeSgpOwogICAgIERpY3Rp
b25hcnkoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUpOwogCiAgICAgLy8gUmV0dXJucyB0
cnVlIGlmIGEgdmFsdWUgd2FzIGZvdW5kIGZvciB0aGUgcHJvdmlkZWQgcHJvcGVydHkuCkBAIC01
OCw2ICs2MCw3IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaXNPYmplY3QoKSBjb25zdCB7IHJldHVy
biBtX2RpY3Rpb25hcnkuaXNWYWxpZCgpOyB9CiAgICAgYm9vbCBpc1VuZGVmaW5lZE9yTnVsbCgp
IGNvbnN0IHsgcmV0dXJuICFtX2RpY3Rpb25hcnkuaXNWYWxpZCgpOyB9CisgICAgYm9vbCBnZXRP
d25Qcm9wZXJ0aWVzQXNTdHJpbmdIYXNoTWFwKFdURjo6SGFzaE1hcDxTdHJpbmcsIFN0cmluZz4m
KSBjb25zdDsKICAgICBib29sIGdldFdpdGhVbmRlZmluZWRPck51bGxDaGVjayhjb25zdCBTdHJp
bmcmLCBTdHJpbmcmKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxzZTsgfQog
CiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5k
aW5nc0FsbEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NB
bGxJbk9uZS5jcHAKaW5kZXggYmJlM2YxYy4uYjQ1OTc5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCkBAIC0yOCw2ICsyOCw3IEBA
CiAjaW5jbHVkZSAiQ2FsbGJhY2tGdW5jdGlvbi5jcHAiCiAjaW5jbHVkZSAiRE9NT2JqZWN0SGFz
aFRhYmxlTWFwLmNwcCIKICNpbmNsdWRlICJET01XcmFwcGVyV29ybGQuY3BwIgorI2luY2x1ZGUg
IkRpY3Rpb25hcnkuY3BwIgogI2luY2x1ZGUgIkdDQ29udHJvbGxlci5jcHAiCiAjaW5jbHVkZSAi
SlNBcnJheUJ1ZmZlckN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNBdHRyQ3VzdG9tLmNwcCIKQEAg
LTE4MCw2ICsxODEsNyBAQAogI2luY2x1ZGUgIlNjcmlwdEdDRXZlbnQuY3BwIgogI2luY2x1ZGUg
IlNjcmlwdFByb2ZpbGVyLmNwcCIKICNpbmNsdWRlICJTY3JpcHRTdGF0ZS5jcHAiCisjaW5jbHVk
ZSAiU2NyaXB0VmFsdWUuY3BwIgogI2luY2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5jcHAi
CiAjaW5jbHVkZSAiV29ya2VyU2NyaXB0Q29udHJvbGxlci5jcHAiCiAjaW5jbHVkZSAiV29ya2Vy
U2NyaXB0RGVidWdTZXJ2ZXIuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNEaWN0aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGlj
dGlvbmFyeS5jcHAKaW5kZXggZWFkMjk3YS4uZTQ2MWMyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9uYXJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAi
Y29uZmlnLmgiCiAjaW5jbHVkZSAiSlNEaWN0aW9uYXJ5LmgiCiAKKyNpbmNsdWRlICJEaWN0aW9u
YXJ5LmgiCiAjaW5jbHVkZSAiSlNET01XaW5kb3cuaCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0
LmgiCiAjaW5jbHVkZSAiSlNNZXNzYWdlUG9ydEN1c3RvbS5oIgpAQCAtOTEsNiArOTIsMTEgQEAg
dm9pZCBKU0RpY3Rpb25hcnk6OmNvbnZlcnRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUg
dmFsdWUsIGRvdWJsZSYgcmVzdWx0KQogICAgIHJlc3VsdCA9IHZhbHVlLnRvTnVtYmVyKGV4ZWMp
OwogfQogCit2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiBl
eGVjLCBKU0M6OkpTVmFsdWUgdmFsdWUsIERpY3Rpb25hcnkmIHJlc3VsdCkKK3sKKyAgICByZXN1
bHQgPSBEaWN0aW9uYXJ5KGV4ZWMsIHZhbHVlKTsKK30KKwogdm9pZCBKU0RpY3Rpb25hcnk6OmNv
bnZlcnRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFsdWUsIFN0cmluZyYgcmVzdWx0
KQogewogICAgIHJlc3VsdCA9IHVzdHJpbmdUb1N0cmluZyh2YWx1ZS50b1N0cmluZyhleGVjKS0+
dmFsdWUoZXhlYykpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
aWN0aW9uYXJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuaApp
bmRleCA4ZjYzMzdkLi5lMGJhMTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RpY3Rpb25hcnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Rp
Y3Rpb25hcnkuaApAQCAtMzIsNiArMzIsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2Ns
YXNzIERpY3Rpb25hcnk7CiBjbGFzcyBET01XaW5kb3c7CiBjbGFzcyBFdmVudFRhcmdldDsKIGNs
YXNzIE5vZGU7CkBAIC01OSw2ICs2MCw3IEBAIHB1YmxpYzoKICAgICBib29sIGdldChjb25zdCBj
aGFyKiBwcm9wZXJ0eU5hbWUsIFJlc3VsdCYpIGNvbnN0OwogCiAgICAgSlNDOjpFeGVjU3RhdGUq
IGV4ZWNTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXhlYzsgfQorICAgIEpTQzo6SlNPYmplY3Qq
IGluaXRpYWxpemVyT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9pbml0aWFsaXplck9iamVjdDsg
fQogICAgIGJvb2wgaXNWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1fZXhlYyAmJiBtX2luaXRpYWxp
emVyT2JqZWN0OyB9CiAKIHByaXZhdGU6CkBAIC04Niw2ICs4OCw3IEBAIHByaXZhdGU6CiAgICAg
c3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCB1
bnNpZ25lZCBzaG9ydCYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkIGxvbmcgbG9uZyYgcmVzdWx0KTsK
ICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFs
dWUsIGRvdWJsZSYgcmVzdWx0KTsKKyAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIERpY3Rpb25hcnkmIHJlc3VsdCk7CiAgICAgc3RhdGlj
IHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBTdHJpbmcm
IHJlc3VsdCk7CiAgICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwg
SlNDOjpKU1ZhbHVlLCBTY3JpcHRWYWx1ZSYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252
ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFJlZlB0cjxTZXJpYWxpemVk
U2NyaXB0VmFsdWU+JiByZXN1bHQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvU2NyaXB0VmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0
VmFsdWUuY3BwCmluZGV4IGRlYTJhNDguLmZkMzI4NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9TY3JpcHRWYWx1ZS5jcHAKQEAgLTEwNiw2ICsxMDYsMTQgQEAgUGFzc1JlZlB0cjxT
ZXJpYWxpemVkU2NyaXB0VmFsdWU+IFNjcmlwdFZhbHVlOjpzZXJpYWxpemUoU2NyaXB0U3RhdGUq
IHNjcmlwdFN0YXQKICAgICByZXR1cm4gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUoc2Ny
aXB0U3RhdGUsIGpzVmFsdWUoKSwgMCwgMCwgdGhyb3dFeGNlcHRpb25zKTsKIH0KIAorUGFzc1Jl
ZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IFNjcmlwdFZhbHVlOjpzZXJpYWxpemUoU2NyaXB0
U3RhdGUqIHNjcmlwdFN0YXRlLCBNZXNzYWdlUG9ydEFycmF5KiBtZXNzYWdlUG9ydHMsIEFycmF5
QnVmZmVyQXJyYXkqIGFycmF5QnVmZmVycywgYm9vbCYgZGlkVGhyb3cpCit7CisgICAgSlNWYWx1
ZVJlZiBleGNlcHRpb24gPSAwOworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHNl
cmlhbGl6ZWRWYWx1ZSA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlKHRvUmVmKHNjcmlw
dFN0YXRlKSwgdG9SZWYoc2NyaXB0U3RhdGUsIGpzVmFsdWUoKSksIG1lc3NhZ2VQb3J0cywgYXJy
YXlCdWZmZXJzLCAmZXhjZXB0aW9uKTsKKyAgICBkaWRUaHJvdyA9IGV4Y2VwdGlvbiA/IHRydWUg
OiBmYWxzZTsKKyAgICByZXR1cm4gc2VyaWFsaXplZFZhbHVlLnJlbGVhc2UoKTsKK30KKwogU2Ny
aXB0VmFsdWUgU2NyaXB0VmFsdWU6OmRlc2VyaWFsaXplKFNjcmlwdFN0YXRlKiBzY3JpcHRTdGF0
ZSwgU2VyaWFsaXplZFNjcmlwdFZhbHVlKiB2YWx1ZSwgU2VyaWFsaXphdGlvbkVycm9yTW9kZSB0
aHJvd0V4Y2VwdGlvbnMpCiB7CiAgICAgcmV0dXJuIFNjcmlwdFZhbHVlKHNjcmlwdFN0YXRlLT5n
bG9iYWxEYXRhKCksIHZhbHVlLT5kZXNlcmlhbGl6ZShzY3JpcHRTdGF0ZSwgc2NyaXB0U3RhdGUt
PmxleGljYWxHbG9iYWxPYmplY3QoKSwgMCwgdGhyb3dFeGNlcHRpb25zKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaAppbmRleCBjZmI5OWU1Li4xNTczYTQ5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgKQEAgLTYzLDYgKzYzLDcgQEAg
cHVibGljOgogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTY3JpcHRWYWx1ZSYgb3RoZXIpIGNv
bnN0IHsgcmV0dXJuIG1fdmFsdWUgPT0gb3RoZXIubV92YWx1ZTsgfQogCiAgICAgUGFzc1JlZlB0
cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHNlcmlhbGl6ZShTY3JpcHRTdGF0ZSosIFNlcmlhbGl6
YXRpb25FcnJvck1vZGUgPSBUaHJvd2luZyk7CisgICAgUGFzc1JlZlB0cjxTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+IHNlcmlhbGl6ZShTY3JpcHRTdGF0ZSosIE1lc3NhZ2VQb3J0QXJyYXkqLCBBcnJh
eUJ1ZmZlckFycmF5KiwgYm9vbCYpOwogICAgIHN0YXRpYyBTY3JpcHRWYWx1ZSBkZXNlcmlhbGl6
ZShTY3JpcHRTdGF0ZSosIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSosIFNlcmlhbGl6YXRpb25FcnJv
ck1vZGUgPSBUaHJvd2luZyk7CiAKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCA5YjFm
N2M0Li4xZmIxN2U0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMjYyLDYgKzI2Miw4IEBAIHN1YiBBZGRJbmNsdWRlc0Zv
clR5cGUKICAgICAgICAgJGluY2x1ZGVzUmVmLT57IkpTRE9NU3RyaW5nTGlzdC5oIn0gPSAxOwog
ICAgIH0gZWxzaWYgKCR0eXBlIGVxICJ1bnNpZ25lZCBsb25nW10iKSB7CiAgICAgICAgICRpbmNs
dWRlc1JlZi0+eyI8d3RmL1ZlY3Rvci5oPiJ9ID0gMTsKKyAgICB9IGVsc2lmICgkdHlwZSBlcSAi
U2VyaWFsaXplZFNjcmlwdFZhbHVlIikgeworICAgICAgICAkaW5jbHVkZXNSZWYtPnsiU2VyaWFs
aXplZFNjcmlwdFZhbHVlLmgifSA9IDE7CiAgICAgfSBlbHNpZiAoJGlzQ2FsbGJhY2spIHsKICAg
ICAgICAgJGluY2x1ZGVzUmVmLT57IkpTJHt0eXBlfS5oIn0gPSAxOwogICAgIH0gZWxzaWYgKElz
VHlwZWRBcnJheVR5cGUoJHR5cGUpKSB7CkBAIC0yNjA0LDExICsyNjA2LDExIEBAIHN1YiBHZW5l
cmF0ZUNhbGxiYWNrSGVhZGVyCiAgICAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwg
IiAgICBDT01QSUxFX0FTU0VSVChmYWxzZSkiKTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAg
ICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsICIgLiBHZXROYXRpdmVUeXBlKCRm
dW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgIiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5u
YW1lIC4gIigiKTsKKyAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgdmlydHVh
bCAiIC4gR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlw
ZSkgLiAiICIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CiAKICAgICAgICAg
ICAgIG15IEBhcmdzID0gKCk7CiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFt
cykgewotICAgICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGUoJHBhcmFtLT50
eXBlKSAuICIgIiAuICRwYXJhbS0+bmFtZSk7CisgICAgICAgICAgICAgICAgcHVzaChAYXJncywg
R2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtLT5u
YW1lKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsIGpv
aW4oIiwgIiwgQGFyZ3MpKTsKIApAQCAtMjY4Myw3ICsyNjg1LDcgQEAgc3ViIEdlbmVyYXRlQ2Fs
bGJhY2tJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBBZGRJbmNs
dWRlc0ZvclR5cGVJbkltcGwoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpOwotICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnQsICJcbiIgLiBHZXROYXRpdmVUeXBlKCRmdW5jdGlvbi0+c2ln
bmF0dXJlLT50eXBlKSAuICIgJHtjbGFzc05hbWV9OjoiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUt
Pm5hbWUgLiAiKCIpOworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJcbiIgLiBHZXRO
YXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAuICIgJHtj
bGFzc05hbWV9OjoiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUgLiAiKCIpOwogCiAgICAg
ICAgICAgICBteSBAYXJncyA9ICgpOwogICAgICAgICAgICAgbXkgQGFyZ3NDaGVjayA9ICgpOwpA
QCAtMjY5MSw3ICsyNjkzLDcgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgog
ICAgICAgICAgICAgZm9yZWFjaCBteSAkcGFyYW0gKEBwYXJhbXMpIHsKICAgICAgICAgICAgICAg
ICBteSAkcGFyYW1OYW1lID0gJHBhcmFtLT5uYW1lOwogICAgICAgICAgICAgICAgIEFkZEluY2x1
ZGVzRm9yVHlwZUluSW1wbCgkcGFyYW0tPnR5cGUsIDEpOwotICAgICAgICAgICAgICAgIHB1c2go
QGFyZ3MsIEdldE5hdGl2ZVR5cGUoJHBhcmFtLT50eXBlKSAuICIgIiAuICRwYXJhbU5hbWUpOwor
ICAgICAgICAgICAgICAgIHB1c2goQGFyZ3MsIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MoJHBh
cmFtLT50eXBlKSAuICIgIiAuICRwYXJhbU5hbWUpOwogICAgICAgICAgICAgICAgIGlmICgkdGhp
c1R5cGUgYW5kICR0aGlzVHlwZSBlcSAkcGFyYW0tPnR5cGUpIHsKICAgICAgICAgICAgICAgICAg
ICAgcHVzaChAYXJnc0NoZWNrLCA8PEVORCk7CiAgICAgQVNTRVJUKCR7cGFyYW1OYW1lfSk7CkBA
IC0yNzE3LDYgKzI3MTksOCBAQCBFTkQKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4i
KTsKICAgICAgICAgICAgICAgICB9IGVsc2lmICgkcGFyYW0tPnR5cGUgZXEgImJvb2xlYW4iKSB7
CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5k
KGpzQm9vbGVhbigke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgIH0gZWxzaWYg
KCRwYXJhbS0+dHlwZSBlcSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIikgeworICAgICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCgkcGFyYW1OYW1lID8g
JHBhcmFtTmFtZS0+ZGVzZXJpYWxpemUoZXhlYywgbV9kYXRhLT5nbG9iYWxPYmplY3QoKSwgMCkg
OiBqc051bGwoKSk7XG4iKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIG1f
ZGF0YS0+Z2xvYmFsT2JqZWN0KCksICR7cGFyYW1OYW1lfSkpO1xuIik7CiAgICAgICAgICAgICAg
ICAgfQpAQCAtMjgzMiw2ICsyODM2LDE0IEBAIHN1YiBHZXROYXRpdmVUeXBlCiAgICAgcmV0dXJu
ICIke3R5cGV9KiI7CiB9CiAKK3N1YiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzCit7CisgICAg
bXkgJHR5cGUgPSBzaGlmdDsKKyAgICByZXR1cm4gIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSoiIGlm
ICR0eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiOworCisgICAgcmV0dXJuIEdldE5hdGl2
ZVR5cGUoJHR5cGUpOworfQorCiBzdWIgR2V0U1ZHUHJvcGVydHlUeXBlcwogewogICAgIG15ICRp
bXBsVHlwZSA9IHNoaWZ0OwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVz
LmNtYWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IDQxYTQ3M2Qu
LjE1NDY5MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQor
KysgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTg5LDYgKzg5LDcgQEAg
TUFDUk8gKFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5B
QkxFX1ZJREVPX1RSQUNLICJUb2dnbGUgVHJhY2sgc3VwcG9ydCBmb3IgSFRNTDUgdmlkZW8iIE9G
RikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VCR0wgIlRvZ2dsZSAzRCBjYW52
YXMgKFdlYkdMKSBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxF
X1dFQl9BVURJTyAiVG9nZ2xlIFdlYiBBdWRpbyBzdXBwb3J0IiBPRkYpCisgICAgV0VCS0lUX09Q
VElPTl9ERUZJTkUoRU5BQkxFX1dFQl9JTlRFTlRTICJUb2dnbGUgV2ViIEludGVudHMgc3VwcG9y
dCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJfU09DS0VUUyAiVG9n
Z2xlIFdlYiBTb2NrZXRzIHN1cHBvcnQiIE9OKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVO
QUJMRV9XRUJfVElNSU5HICJUb2dnbGUgV2ViIFRpbWluZyBzdXBwb3J0IiBPRkYpCiAgICAgV0VC
S0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dPUktFUlMgIlRvZ2dsZSBXZWIgV29ya2VycyBzdXBw
b3J0IiBPRkYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZSBiL1NvdXJj
ZS9jbWFrZWNvbmZpZy5oLmNtYWtlCmluZGV4IGEwNjg1N2QuLmMyNjEwZjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNt
YWtlCkBAIC03MCw2ICs3MCw3IEBACiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfVklFV1BPUlRfUkVG
TE9XCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCR0wKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9X
RUJfQVVESU8KKyNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfSU5URU5UUwogI2NtYWtlZGVmaW5l
MDEgRU5BQkxFX1dFQl9TT0NLRVRTCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfV0VCX1RJTUlORwog
I2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dPUktFUlMK
</data>
<flag name="commit-queue"
          id="147459"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141349</attachid>
            <date>2012-05-11 01:14:28 -0700</date>
            <delta_ts>2012-05-11 09:46:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85954_jsc_web_intents.patch</filename>
            <type>text/plain</type>
            <size>16499</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA2YmFiODllLi5iN2IwM2E5
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTItMDUtMTAgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNv
bT4KKworICAgICAgICBXZWIgSW50ZW50cyBjb2RlIG9ubHkgc3VwcG9ydHMgVjgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1OTU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBBZGQgRU5BQkxFX1dFQl9JTlRFTlRT
IGZsYWcgdG8gQ01ha2UuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMu
Y21ha2U6CisgICAgICAgICogU291cmNlL2NtYWtlY29uZmlnLmguY21ha2U6CisKIDIwMTItMDUt
MDkgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENhbGVuZGFy
IFBpY2tlcjogRml4IGEgY3Jhc2ggYnkgY2hhbmdpbmcgaW5wdXQgdHlwZS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNWYWx1ZVJlZi5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKaW5kZXggNDE4NmRiOC4uMTI1ZTQwMiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlUmVmLmgKQEAgLTYzLDcgKzYzLDcgQEAgZXh0ZXJuICJD
IiB7CiBAcGFyYW0gdmFsdWUgICAgVGhlIEpTVmFsdWUgd2hvc2UgdHlwZSB5b3Ugd2FudCB0byBv
YnRhaW4uCiBAcmVzdWx0ICAgICAgICAgQSB2YWx1ZSBvZiB0eXBlIEpTVHlwZSB0aGF0IGlkZW50
aWZpZXMgdmFsdWUncyB0eXBlLgogKi8KLUpTX0VYUE9SVCBKU1R5cGUgSlNWYWx1ZUdldFR5cGUo
SlNDb250ZXh0UmVmIGN0eCwgSlNWYWx1ZVJlZiB2YWx1ZSk7CitKU19FWFBPUlQgSlNUeXBlIEpT
VmFsdWVHZXRUeXBlKEpTQ29udGV4dFJlZiBjdHgsIEpTVmFsdWVSZWYpOwogCiAvKiEKIEBmdW5j
dGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjMWYxMDQ1Li42YjBhNDhiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dApAQCAtMyw2ICszLDcgQEAgU0VUKFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklF
UwogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL2ZpbGVzeXN0ZW0iCiAgICAgIiR7V0VCQ09S
RV9ESVJ9L01vZHVsZXMvZ2VvbG9jYXRpb24iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMv
aW5kZXhlZGRiIgorICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL2ludGVudHMiCiAgICAgIiR7
V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2ViYXVkaW8iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVs
ZXMvd2ViZGF0YWJhc2UiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvd2Vic29ja2V0cyIK
QEAgLTI1MDYsNiArMjUwNywyMCBAQCBJRiAoRU5BQkxFX1dFQl9BVURJTykKICAgICApCiBFTkRJ
RiAoKQogCitJRiAoRU5BQkxFX1dFQl9JTlRFTlRTKQorICAgIExJU1QoQVBQRU5EIFdlYkNvcmVf
SURMX0ZJTEVTCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9ET01XaW5kb3dJbnRlbnRzLmlkbAor
ICAgICAgICBNb2R1bGVzL2ludGVudHMvSW50ZW50LmlkbAorICAgICAgICBNb2R1bGVzL2ludGVu
dHMvSW50ZW50UmVzdWx0Q2FsbGJhY2suaWRsCisgICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZp
Z2F0b3JJbnRlbnRzLmlkbAorICAgICkKKyAgICBMSVNUKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMK
KyAgICAgICBNb2R1bGVzL2ludGVudHMvSW50ZW50LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50
cy9JbnRlbnRSZXF1ZXN0LmNwcAorICAgICAgIE1vZHVsZXMvaW50ZW50cy9OYXZpZ2F0b3JJbnRl
bnRzLmNwcAorICAgICkKK0VORElGICgpCisKICMgTW9kdWxlcyB0aGF0IHRoZSBiaW5kaW5ncyBn
ZW5lcmF0b3Igc2NyaXB0cyBtYXkgdXNlCiBTRVQoU0NSSVBUU19SRVNPTFZFX1NVUFBMRU1FTlRB
TAogICAgICR7V0VCQ09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvSURMUGFyc2VyLnBtCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKaW5kZXggYWM3YTE1YS4uNTg3OWE1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisy
MDEyLTA1LTEwICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+
CisKKyAgICAgICAgV2ViIEludGVudHMgY29kZSBvbmx5IHN1cHBvcnRzIFY4CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTk1NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IEFkYW0gQmFydGguCisKKyAgICAgICAgQWRkIG5lY2Vzc2FyeSBhYnN0cmFjdGlv
biBmb3IganMgRGljdGlvbmFyeSBhbmQgU2NyaXB0VmFsdWUgc28gdGhhdAorICAgICAgICB0aGUg
V2ViIEludGVudHMgY29kZSBpbiBXZWJDb3JlIGNvbXBpbGVzIHdpdGggSlNDLCBub3QganVzdCBW
OC4KKworICAgICAgICBUaGlzIHJlcXVpcmVkIGNoYW5nZXMgaW4gdGhlIEpTQyBiaW5kaW5ncyBn
ZW5lcmF0b3IgdG8gcGFzcworICAgICAgICBjYWxsYmFjayBhcmd1bWVudHMgb2YgdHlwZSBTZXJp
YWxpemVkU2NyaXB0VmFsdWUgYXMgcmF3IHBvaW50ZXJzCisgICAgICAgIGluc3RlYWQgb2YgUmVm
UHRyLiBUaGlzIG1hdGNoZXMgdGhlIGNoYW5nZSBtYWRlIHRvIHRoZSBWOCBiaW5kaW5ncworICAg
ICAgICBnZW5lcmF0b3IgaW4gcjEwNDUzMS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0Ogor
ICAgICAgICAqIE1vZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwOgorICAgICAgICAqIE1vZHVsZXMv
aW50ZW50cy9JbnRlbnQuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkRpY3Rpb25hcnk6OkRpY3Rpb25hcnkpOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpEaWN0aW9uYXJ5OjpnZXRPd25Qcm9wZXJ0aWVzQXNT
dHJpbmdIYXNoTWFwKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9EaWN0aW9uYXJ5Lmg6CisgICAg
ICAgIChEaWN0aW9uYXJ5KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5P
bmUuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpKU0RpY3Rpb25hcnk6OmNvbnZlcnRWYWx1ZSk6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuaDoKKyAgICAgICAgKFdlYkNv
cmUpOgorICAgICAgICAoV2ViQ29yZTo6SlNEaWN0aW9uYXJ5Ojppbml0aWFsaXplck9iamVjdCk6
CisgICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U2NyaXB0VmFsdWU6OnNlcmlhbGl6ZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAg
KiBiaW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oOgorICAgICAgICAoU2NyaXB0VmFsdWUpOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAgICAgICAoQWRk
SW5jbHVkZXNGb3JUeXBlKToKKyAgICAgICAgKEdlbmVyYXRlQ2FsbGJhY2tIZWFkZXIpOgorICAg
ICAgICAoR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKEdldE5hdGl2
ZVR5cGVGb3JDYWxsYmFja3MpOgorCiAyMDEyLTA1LTA5ICBLZW50IFRhbXVyYSAgPHRrZW50QGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBDYWxlbmRhciBQaWNrZXI6IEZpeCBhIGNyYXNoIGJ5IGNo
YW5naW5nIGlucHV0IHR5cGUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
dGVudHMvSW50ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQu
Y3BwCmluZGV4IGJmZWJhNjUuLmJmOTU2NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW50ZW50cy9JbnRlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50
ZW50cy9JbnRlbnQuY3BwCkBAIC0zMyw3ICszMyw2IEBACiAKICNpbmNsdWRlICJFeGNlcHRpb25D
b2RlLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIKLSNpbmNsdWRlICJTY3JpcHRTdGF0ZS5o
IgogI2luY2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ludGVudHMvSW50ZW50LmgKaW5kZXggNDUwOTA5Ni4u
ZGZmNzA4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbnRlbnRzL0ludGVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW50ZW50cy9JbnRlbnQuaApAQCAtMzUs
NiArMzUsNyBAQAogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgog
I2luY2x1ZGUgIk1lc3NhZ2VQb3J0Q2hhbm5lbC5oIgorI2luY2x1ZGUgIlNjcmlwdFN0YXRlLmgi
CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgog
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC00Myw3ICs0NCw2IEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotY2xhc3MgU2NyaXB0U3RhdGU7CiBjbGFzcyBTZXJpYWxpemVkU2NyaXB0
VmFsdWU7CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0RpY3Rpb25hcnkuY3BwCmluZGV4IDJjMWI3ODUuLjgxYjM0NWQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwCkBAIC0zNSw2ICszNSwxMSBAQCB1c2lu
ZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK0RpY3Rpb25hcnk6OkRp
Y3Rpb25hcnkoKQorICAgIDogbV9kaWN0aW9uYXJ5KDAsIDApCit7Cit9CisKIERpY3Rpb25hcnk6
OkRpY3Rpb25hcnkoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6SlNWYWx1ZSB2YWx1ZSkKICAg
ICA6IG1fZGljdGlvbmFyeShleGVjLCB2YWx1ZS5pc09iamVjdCgpID8gdmFsdWUuZ2V0T2JqZWN0
KCkgOiAwKQogewpAQCAtNDksNSArNTQsMzAgQEAgSlNPYmplY3QqIERpY3Rpb25hcnk6OmFzSlNP
YmplY3Q8Tm90aWZpY2F0aW9uPihOb3RpZmljYXRpb24qIG9iamVjdCkgY29uc3QKIH0KICNlbmRp
ZgogCitib29sIERpY3Rpb25hcnk6OmdldE93blByb3BlcnRpZXNBc1N0cmluZ0hhc2hNYXAoV1RG
OjpIYXNoTWFwPFN0cmluZywgU3RyaW5nPiYgbWFwKSBjb25zdAoreworICAgIGlmICghbV9kaWN0
aW9uYXJ5LmlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgSlNPYmplY3Qq
IG9iamVjdCA9ICBtX2RpY3Rpb25hcnkuaW5pdGlhbGl6ZXJPYmplY3QoKTsKKyAgICBFeGVjU3Rh
dGUqIGV4ZWMgPSBtX2RpY3Rpb25hcnkuZXhlY1N0YXRlKCk7CisKKyAgICBQcm9wZXJ0eU5hbWVB
cnJheSBwcm9wZXJ0eU5hbWVzKGV4ZWMpOworICAgIEpTT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eU5h
bWVzKG9iamVjdCwgZXhlYywgcHJvcGVydHlOYW1lcywgRXhjbHVkZURvbnRFbnVtUHJvcGVydGll
cyk7CisgICAgZm9yIChQcm9wZXJ0eU5hbWVBcnJheTo6Y29uc3RfaXRlcmF0b3IgaXQgPSBwcm9w
ZXJ0eU5hbWVzLmJlZ2luKCk7IGl0ICE9IHByb3BlcnR5TmFtZXMuZW5kKCk7IGl0KyspIHsKKyAg
ICAgICAgU3RyaW5nIHN0cmluZ0tleSA9IHVzdHJpbmdUb1N0cmluZyhpdC0+dXN0cmluZygpKTsK
KyAgICAgICAgaWYgKHN0cmluZ0tleS5pc0VtcHR5KCkpCisgICAgICAgICAgICBjb250aW51ZTsK
KyAgICAgICAgSlNWYWx1ZSB2YWx1ZSA9IG9iamVjdC0+Z2V0KGV4ZWMsICppdCk7CisgICAgICAg
IGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAg
ICBTdHJpbmcgc3RyaW5nVmFsdWUgPSB1c3RyaW5nVG9TdHJpbmcodmFsdWUudG9TdHJpbmcoZXhl
YyktPnZhbHVlKGV4ZWMpKTsKKyAgICAgICAgaWYgKCFleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgICAgIG1hcC5zZXQoc3RyaW5nS2V5LCBzdHJpbmdWYWx1ZSk7CisgICAgfQorCisgICAg
cmV0dXJuIHRydWU7Cit9CisKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0RpY3Rpb25hcnkuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25h
cnkuaAppbmRleCBkNDFjYjE3Li5jY2NlZWU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
RGljdGlvbmFyeS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAiSlNFdmVudExpc3RlbmVy
LmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJTY3JpcHRWYWx1ZS5o
IgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5o
PgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00Myw2ICs0NCw3IEBAIGNs
YXNzIEV2ZW50TGlzdGVuZXI7CiAKIGNsYXNzIERpY3Rpb25hcnkgewogcHVibGljOgorICAgIERp
Y3Rpb25hcnkoKTsKICAgICBEaWN0aW9uYXJ5KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVl
KTsKIAogICAgIC8vIFJldHVybnMgdHJ1ZSBpZiBhIHZhbHVlIHdhcyBmb3VuZCBmb3IgdGhlIHBy
b3ZpZGVkIHByb3BlcnR5LgpAQCAtNTgsNiArNjAsNyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlz
T2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9kaWN0aW9uYXJ5LmlzVmFsaWQoKTsgfQogICAgIGJv
b2wgaXNVbmRlZmluZWRPck51bGwoKSBjb25zdCB7IHJldHVybiAhbV9kaWN0aW9uYXJ5LmlzVmFs
aWQoKTsgfQorICAgIGJvb2wgZ2V0T3duUHJvcGVydGllc0FzU3RyaW5nSGFzaE1hcChXVEY6Okhh
c2hNYXA8U3RyaW5nLCBTdHJpbmc+JikgY29uc3Q7CiAgICAgYm9vbCBnZXRXaXRoVW5kZWZpbmVk
T3JOdWxsQ2hlY2soY29uc3QgU3RyaW5nJiwgU3RyaW5nJikgY29uc3QgeyBub3RJbXBsZW1lbnRl
ZCgpOyByZXR1cm4gZmFsc2U7IH0KIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCmluZGV4IGJiZTNmMWMuLjRkOTM2Mzkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9u
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25l
LmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIkNhbGxiYWNrRnVuY3Rpb24uY3BwIgog
I2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiCiAjaW5jbHVkZSAiRE9NV3JhcHBl
cldvcmxkLmNwcCIKKyNpbmNsdWRlICJEaWN0aW9uYXJ5LmNwcCIKICNpbmNsdWRlICJHQ0NvbnRy
b2xsZXIuY3BwIgogI2luY2x1ZGUgIkpTQXJyYXlCdWZmZXJDdXN0b20uY3BwIgogI2luY2x1ZGUg
IkpTQXR0ckN1c3RvbS5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RpY3Rpb25hcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEaWN0aW9u
YXJ5LmNwcAppbmRleCBlYWQyOTdhLi5lNDYxYzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRGljdGlvbmFyeS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJKU0RpY3Rpb25hcnkuaCIKIAorI2luY2x1ZGUgIkRpY3Rpb25hcnku
aCIKICNpbmNsdWRlICJKU0RPTVdpbmRvdy5oIgogI2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIK
ICNpbmNsdWRlICJKU01lc3NhZ2VQb3J0Q3VzdG9tLmgiCkBAIC05MSw2ICs5MiwxMSBAQCB2b2lk
IEpTRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1
ZSwgZG91YmxlJiByZXN1bHQpCiAgICAgcmVzdWx0ID0gdmFsdWUudG9OdW1iZXIoZXhlYyk7CiB9
CiAKK3ZvaWQgSlNEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqIGV4ZWMs
IEpTQzo6SlNWYWx1ZSB2YWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KQoreworICAgIHJlc3VsdCA9
IERpY3Rpb25hcnkoZXhlYywgdmFsdWUpOworfQorCiB2b2lkIEpTRGljdGlvbmFyeTo6Y29udmVy
dFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSwgU3RyaW5nJiByZXN1bHQpCiB7
CiAgICAgcmVzdWx0ID0gdXN0cmluZ1RvU3RyaW5nKHZhbHVlLnRvU3RyaW5nKGV4ZWMpLT52YWx1
ZShleGVjKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RpY3Rp
b25hcnkuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlvbmFyeS5oCmluZGV4
IDhmNjMzN2QuLmUwYmExNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRGljdGlvbmFyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGljdGlv
bmFyeS5oCkBAIC0zMiw2ICszMiw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3Mg
RGljdGlvbmFyeTsKIGNsYXNzIERPTVdpbmRvdzsKIGNsYXNzIEV2ZW50VGFyZ2V0OwogY2xhc3Mg
Tm9kZTsKQEAgLTU5LDYgKzYwLDcgQEAgcHVibGljOgogICAgIGJvb2wgZ2V0KGNvbnN0IGNoYXIq
IHByb3BlcnR5TmFtZSwgUmVzdWx0JikgY29uc3Q7CiAKICAgICBKU0M6OkV4ZWNTdGF0ZSogZXhl
Y1N0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9leGVjOyB9CisgICAgSlNDOjpKU09iamVjdCogaW5p
dGlhbGl6ZXJPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVyT2JqZWN0OyB9CiAg
ICAgYm9vbCBpc1ZhbGlkKCkgY29uc3QgeyByZXR1cm4gbV9leGVjICYmIG1faW5pdGlhbGl6ZXJP
YmplY3Q7IH0KIAogcHJpdmF0ZToKQEAgLTg2LDYgKzg4LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0
aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2ln
bmVkIHNob3J0JiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgdW5zaWduZWQgbG9uZyBsb25nJiByZXN1bHQpOwogICAg
IHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwg
ZG91YmxlJiByZXN1bHQpOworICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRWYWx1ZShKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNWYWx1ZSwgRGljdGlvbmFyeSYgcmVzdWx0KTsKICAgICBzdGF0aWMgdm9p
ZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIFN0cmluZyYgcmVz
dWx0KTsKICAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTVmFsdWUsIFNjcmlwdFZhbHVlJiByZXN1bHQpOwogICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRW
YWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgUmVmUHRyPFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZT4mIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9TY3JpcHRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRWYWx1
ZS5jcHAKaW5kZXggZGVhMmE0OC4uZmQzMjg3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvU2NyaXB0VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1NjcmlwdFZhbHVlLmNwcApAQCAtMTA2LDYgKzEwNiwxNCBAQCBQYXNzUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0ZSogc2Ny
aXB0U3RhdAogICAgIHJldHVybiBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZShzY3JpcHRT
dGF0ZSwganNWYWx1ZSgpLCAwLCAwLCB0aHJvd0V4Y2VwdGlvbnMpOwogfQogCitQYXNzUmVmUHRy
PFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gU2NyaXB0VmFsdWU6OnNlcmlhbGl6ZShTY3JpcHRTdGF0
ZSogc2NyaXB0U3RhdGUsIE1lc3NhZ2VQb3J0QXJyYXkqIG1lc3NhZ2VQb3J0cywgQXJyYXlCdWZm
ZXJBcnJheSogYXJyYXlCdWZmZXJzLCBib29sJiBkaWRUaHJvdykKK3sKKyAgICBKU1ZhbHVlUmVm
IGV4Y2VwdGlvbiA9IDA7CisgICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFs
aXplZFZhbHVlID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUodG9SZWYoc2NyaXB0U3Rh
dGUpLCB0b1JlZihzY3JpcHRTdGF0ZSwganNWYWx1ZSgpKSwgbWVzc2FnZVBvcnRzLCBhcnJheUJ1
ZmZlcnMsICZleGNlcHRpb24pOworICAgIGRpZFRocm93ID0gZXhjZXB0aW9uID8gdHJ1ZSA6IGZh
bHNlOworICAgIHJldHVybiBzZXJpYWxpemVkVmFsdWUucmVsZWFzZSgpOworfQorCiBTY3JpcHRW
YWx1ZSBTY3JpcHRWYWx1ZTo6ZGVzZXJpYWxpemUoU2NyaXB0U3RhdGUqIHNjcmlwdFN0YXRlLCBT
ZXJpYWxpemVkU2NyaXB0VmFsdWUqIHZhbHVlLCBTZXJpYWxpemF0aW9uRXJyb3JNb2RlIHRocm93
RXhjZXB0aW9ucykKIHsKICAgICByZXR1cm4gU2NyaXB0VmFsdWUoc2NyaXB0U3RhdGUtPmdsb2Jh
bERhdGEoKSwgdmFsdWUtPmRlc2VyaWFsaXplKHNjcmlwdFN0YXRlLCBzY3JpcHRTdGF0ZS0+bGV4
aWNhbEdsb2JhbE9iamVjdCgpLCAwLCB0aHJvd0V4Y2VwdGlvbnMpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9TY3JpcHRWYWx1ZS5oCmluZGV4IGNmYjk5ZTUuLjE1NzNhNDkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFZhbHVlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0VmFsdWUuaApAQCAtNjMsNiArNjMsNyBAQCBwdWJs
aWM6CiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFNjcmlwdFZhbHVlJiBvdGhlcikgY29uc3Qg
eyByZXR1cm4gbV92YWx1ZSA9PSBvdGhlci5tX3ZhbHVlOyB9CiAKICAgICBQYXNzUmVmUHRyPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgU2VyaWFsaXphdGlv
bkVycm9yTW9kZSA9IFRocm93aW5nKTsKKyAgICBQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4gc2VyaWFsaXplKFNjcmlwdFN0YXRlKiwgTWVzc2FnZVBvcnRBcnJheSosIEFycmF5QnVm
ZmVyQXJyYXkqLCBib29sJik7CiAgICAgc3RhdGljIFNjcmlwdFZhbHVlIGRlc2VyaWFsaXplKFNj
cmlwdFN0YXRlKiwgU2VyaWFsaXplZFNjcmlwdFZhbHVlKiwgU2VyaWFsaXphdGlvbkVycm9yTW9k
ZSA9IFRocm93aW5nKTsKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDliMWY3YzQu
LjFmYjE3ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckpTLnBtCkBAIC0yNjIsNiArMjYyLDggQEAgc3ViIEFkZEluY2x1ZGVzRm9yVHlw
ZQogICAgICAgICAkaW5jbHVkZXNSZWYtPnsiSlNET01TdHJpbmdMaXN0LmgifSA9IDE7CiAgICAg
fSBlbHNpZiAoJHR5cGUgZXEgInVuc2lnbmVkIGxvbmdbXSIpIHsKICAgICAgICAgJGluY2x1ZGVz
UmVmLT57Ijx3dGYvVmVjdG9yLmg+In0gPSAxOworICAgIH0gZWxzaWYgKCR0eXBlIGVxICJTZXJp
YWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAgICAgICRpbmNsdWRlc1JlZi0+eyJTZXJpYWxpemVk
U2NyaXB0VmFsdWUuaCJ9ID0gMTsKICAgICB9IGVsc2lmICgkaXNDYWxsYmFjaykgewogICAgICAg
ICAkaW5jbHVkZXNSZWYtPnsiSlMke3R5cGV9LmgifSA9IDE7CiAgICAgfSBlbHNpZiAoSXNUeXBl
ZEFycmF5VHlwZSgkdHlwZSkpIHsKQEAgLTI2MDQsMTEgKzI2MDYsMTEgQEAgc3ViIEdlbmVyYXRl
Q2FsbGJhY2tIZWFkZXIKICAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAg
IENPTVBJTEVfQVNTRVJUKGZhbHNlKSIpOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBw
dXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHZpcnR1YWwgIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0
aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAiIC4gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUg
LiAiKCIpOworICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsICIg
LiBHZXROYXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSAu
ICIgIiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiKTsKIAogICAgICAgICAgICAg
bXkgQGFyZ3MgPSAoKTsKICAgICAgICAgICAgIGZvcmVhY2ggbXkgJHBhcmFtIChAcGFyYW1zKSB7
Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUp
IC4gIiAiIC4gJHBhcmFtLT5uYW1lKTsKKyAgICAgICAgICAgICAgICBwdXNoKEBhcmdzLCBHZXRO
YXRpdmVUeXBlRm9yQ2FsbGJhY2tzKCRwYXJhbS0+dHlwZSkgLiAiICIgLiAkcGFyYW0tPm5hbWUp
OwogICAgICAgICAgICAgfQogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgam9pbigi
LCAiLCBAYXJncykpOwogCkBAIC0yNjgzLDcgKzI2ODUsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFj
a0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIEFkZEluY2x1ZGVz
Rm9yVHlwZUluSW1wbCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSk7Ci0gICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2ZVR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1
cmUtPnR5cGUpIC4gIiAke2NsYXNzTmFtZX06OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFt
ZSAuICIoIik7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxuIiAuIEdldE5hdGl2
ZVR5cGVGb3JDYWxsYmFja3MoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpIC4gIiAke2NsYXNz
TmFtZX06OiIgLiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSAuICIoIik7CiAKICAgICAgICAg
ICAgIG15IEBhcmdzID0gKCk7CiAgICAgICAgICAgICBteSBAYXJnc0NoZWNrID0gKCk7CkBAIC0y
NjkxLDcgKzI2OTMsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAg
ICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15
ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7CiAgICAgICAgICAgICAgICAgQWRkSW5jbHVkZXNG
b3JUeXBlSW5JbXBsKCRwYXJhbS0+dHlwZSwgMSk7Ci0gICAgICAgICAgICAgICAgcHVzaChAYXJn
cywgR2V0TmF0aXZlVHlwZSgkcGFyYW0tPnR5cGUpIC4gIiAiIC4gJHBhcmFtTmFtZSk7CisgICAg
ICAgICAgICAgICAgcHVzaChAYXJncywgR2V0TmF0aXZlVHlwZUZvckNhbGxiYWNrcygkcGFyYW0t
PnR5cGUpIC4gIiAiIC4gJHBhcmFtTmFtZSk7CiAgICAgICAgICAgICAgICAgaWYgKCR0aGlzVHlw
ZSBhbmQgJHRoaXNUeXBlIGVxICRwYXJhbS0+dHlwZSkgewogICAgICAgICAgICAgICAgICAgICBw
dXNoKEBhcmdzQ2hlY2ssIDw8RU5EKTsKICAgICBBU1NFUlQoJHtwYXJhbU5hbWV9KTsKQEAgLTI3
MTcsNiArMjcxOSw4IEBAIEVORAogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dCwgIiAgICBhcmdzLmFwcGVuZChqc1N0cmluZyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOwog
ICAgICAgICAgICAgICAgIH0gZWxzaWYgKCRwYXJhbS0+dHlwZSBlcSAiYm9vbGVhbiIpIHsKICAg
ICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNC
b29sZWFuKCR7cGFyYW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAgICAgfSBlbHNpZiAoJHBh
cmFtLT50eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CisgICAgICAgICAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKCRwYXJhbU5hbWUgPyAkcGFy
YW1OYW1lLT5kZXNlcmlhbGl6ZShleGVjLCBtX2RhdGEtPmdsb2JhbE9iamVjdCgpLCAwKSA6IGpz
TnVsbCgpKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgbV9kYXRh
LT5nbG9iYWxPYmplY3QoKSwgJHtwYXJhbU5hbWV9KSk7XG4iKTsKICAgICAgICAgICAgICAgICB9
CkBAIC0yODMyLDYgKzI4MzYsMTQgQEAgc3ViIEdldE5hdGl2ZVR5cGUKICAgICByZXR1cm4gIiR7
dHlwZX0qIjsKIH0KIAorc3ViIEdldE5hdGl2ZVR5cGVGb3JDYWxsYmFja3MKK3sKKyAgICBteSAk
dHlwZSA9IHNoaWZ0OworICAgIHJldHVybiAiU2VyaWFsaXplZFNjcmlwdFZhbHVlKiIgaWYgJHR5
cGUgZXEgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSI7CisKKyAgICByZXR1cm4gR2V0TmF0aXZlVHlw
ZSgkdHlwZSk7Cit9CisKIHN1YiBHZXRTVkdQcm9wZXJ0eVR5cGVzCiB7CiAgICAgbXkgJGltcGxU
eXBlID0gc2hpZnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21h
a2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggNDFhNDczZC4uMTU0
NjkyYyAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBi
L1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtODksNiArODksNyBAQCBNQUNS
TyAoV0VCS0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVf
VklERU9fVFJBQ0sgIlRvZ2dsZSBUcmFjayBzdXBwb3J0IGZvciBIVE1MNSB2aWRlbyIgT0ZGKQog
ICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9XRUJHTCAiVG9nZ2xlIDNEIGNhbnZhcyAo
V2ViR0wpIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfV0VC
X0FVRElPICJUb2dnbGUgV2ViIEF1ZGlvIHN1cHBvcnQiIE9GRikKKyAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfV0VCX0lOVEVOVFMgIlRvZ2dsZSBXZWIgSW50ZW50cyBzdXBwb3J0IiBP
RkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1dFQl9TT0NLRVRTICJUb2dnbGUg
V2ViIFNvY2tldHMgc3VwcG9ydCIgT04pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxF
X1dFQl9USU1JTkcgIlRvZ2dsZSBXZWIgVGltaW5nIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRf
T1BUSU9OX0RFRklORShFTkFCTEVfV09SS0VSUyAiVG9nZ2xlIFdlYiBXb3JrZXJzIHN1cHBvcnQi
IE9GRikKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlIGIvU291cmNlL2Nt
YWtlY29uZmlnLmguY21ha2UKaW5kZXggYTA2ODU3ZC4uYzI2MTBmMiAxMDA2NDQKLS0tIGEvU291
cmNlL2NtYWtlY29uZmlnLmguY21ha2UKKysrIGIvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UK
QEAgLTcwLDYgKzcwLDcgQEAKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9WSUVXUE9SVF9SRUZMT1cK
ICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJHTAogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9B
VURJTworI2NtYWtlZGVmaW5lMDEgRU5BQkxFX1dFQl9JTlRFTlRTCiAjY21ha2VkZWZpbmUwMSBF
TkFCTEVfV0VCX1NPQ0tFVFMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9XRUJfVElNSU5HCiAjY21h
a2VkZWZpbmUwMSBFTkFCTEVfV09SS0VSUwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>