<?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>117825</bug_id>
          
          <creation_ts>2013-06-20 01:21:37 -0700</creation_ts>
          <short_desc>REGRESSION (r150663): Using webkitAudioContext in Inspector makes it undefined everywhere</short_desc>
          <delta_ts>2013-06-21 09:19:58 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.8</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, Regression</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sindre Aa">sindre</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>ap</cc>
    
    <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>crogers</cc>
    
    <cc>eflews.bot</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>gtk-ews</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>haraken</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philn</cc>
    
    <cc>rakuco</cc>
    
    <cc>rniwa</cc>
    
    <cc>timothy</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>902045</commentid>
    <comment_count>0</comment_count>
    <who name="Sindre Aa">sindre</who>
    <bug_when>2013-06-20 01:21:37 -0700</bug_when>
    <thetext>For the last week or more, webkitAudioContext is not set.

Inspector autocompletes the name, but still returns undefined:
&gt; webkitAudioContext
&lt; undefined

&gt; new webkitAudioContext
&lt; TypeError: &apos;undefined&apos; is not a constructor (evaluating &apos;new webkitAudioContext&apos;)


offlineAudioContext seems to work:
&gt; webkitOfflineAudioContext
&lt; webkitOfflineAudioContextConstructor

I always end up reverting to r150366, in which Web Audio is working. There were quite a few builds after this that created horrible popping/scratching noises when initializing the audio context, and now it is simply not defined.
I can reproduce it on any page. Just open the console on the welcome-screen when opening the fresh install (r151760) and try to create a context. I have tried restarting the browser. Not sure if I have restarted the mac after installing, so I could try that as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902189</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-06-20 09:54:58 -0700</bug_when>
    <thetext>Regressed in &lt;http://trac.webkit.org/changeset/150663&gt;.

What I&apos;m observing is that webkitAudioContext works in a document until I try to access it from Web Inspector, at which time it disappears from the document too.

Unsure if this is limited to webkitAudioContext, or a more widespread problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902192</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-06-20 09:56:45 -0700</bug_when>
    <thetext>&lt;rdar://problem/14217549&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902250</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 12:07:26 -0700</bug_when>
    <thetext>new webkitAudioContext(); works in WebInspector for WebKit2 EFL. window.webkitAudioContext is not undefined either. I&apos;m looking into the issue but it is likely to be a setting problem if it works on EFL but not mac port. The constructor is enabled at runtime via RuntimeEnabledSettings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902253</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 12:10:34 -0700</bug_when>
    <thetext>RuntimeEnabledFeatures::webkitAudioContextEnabled() is called to check if the constructor should be enabled at runtime. It returns true if the WebAudio setting is enabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902274</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 12:54:16 -0700</bug_when>
    <thetext>One difference in behavior after the patch is that WebAudio used to be a per-PageGroup preference. Now, it is a global preference because it is part of RuntimeEnabledFeatures.

It is possible that the WebAudio setting get disabled somehow when the Safari Web Inspector is showed? This would explain why the constructor would disappear from the document when the inspector is used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902285</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-06-20 13:23:09 -0700</bug_when>
    <thetext>Yes, Web Inspector does not enable WebAudio (why would it?).

Clients should be free to apply different settings to multiple PageGroups. The idea of PageGroups is that there are entirely separate, with code creating each not necessarily aware that there are others.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902296</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 13:41:43 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Yes, Web Inspector does not enable WebAudio (why would it?).

So the webkitAudioContext constructor should not be exposed in the Web inspector, right?

&gt; 
&gt; Clients should be free to apply different settings to multiple PageGroups. The idea of PageGroups is that there are entirely separate, with code creating each not necessarily aware that there are others.

I understand, I wasn&apos;t sure of the value of having WebAudio support at pagegroup level. But I understand this is confusing in the current state. For the record, I this is not the only setting behaving like this. I followed the model of CSSRegions and CSSCompositing.

I guess I will roll out. We would need support in the JSC bindings generator for something similar to [EnabledAtRuntime] but using Settings instead of RuntimeEnabledFeatures.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902307</commentid>
    <comment_count>8</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-06-20 13:56:45 -0700</bug_when>
    <thetext>&gt; So the webkitAudioContext constructor should not be exposed in the Web inspector, right?

Probably not to Web Inspector code (unless there is a specific reason to need it, in which Web Inspector will opt into it).

Should obviously be exposed in Web Inspector console, as that runs in the context of the inspected page.

&gt; I followed the model of CSSRegions and CSSCompositing

So, the same issue exists for these? That&apos;s quite unfortunate :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902313</commentid>
    <comment_count>9</comment_count>
      <attachid>205120</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 14:05:15 -0700</bug_when>
    <thetext>Created attachment 205120
roll out</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902323</commentid>
    <comment_count>10</comment_count>
      <attachid>205120</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-06-20 14:15:27 -0700</bug_when>
    <thetext>Comment on attachment 205120
roll out

Attachment 205120 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/858693</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902325</commentid>
    <comment_count>11</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 14:19:02 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; &gt; So the webkitAudioContext constructor should not be exposed in the Web inspector, right?
&gt; 
&gt; Probably not to Web Inspector code (unless there is a specific reason to need it, in which Web Inspector will opt into it).
&gt; 
&gt; Should obviously be exposed in Web Inspector console, as that runs in the context of the inspected page.
&gt; 
&gt; &gt; I followed the model of CSSRegions and CSSCompositing
&gt; 
&gt; So, the same issue exists for these? That&apos;s quite unfortunate :(

They may not have exactly the same issue, it depends if their constructor is actually enabled at runtime. However, their WebKit2 setting is linked to a global boolean in RuntimeEnabledFeatures:
http://trac.webkit.org/browser/trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp#L2490
http://trac.webkit.org/browser/trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp#L2491

So changing these settings would affect all page groups.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902326</commentid>
    <comment_count>12</comment_count>
      <attachid>205120</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-06-20 14:19:13 -0700</bug_when>
    <thetext>Comment on attachment 205120
roll out

Attachment 205120 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/956138</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902328</commentid>
    <comment_count>13</comment_count>
      <attachid>205120</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-06-20 14:19:49 -0700</bug_when>
    <thetext>Comment on attachment 205120
roll out

Attachment 205120 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/937394</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902332</commentid>
    <comment_count>14</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 14:27:19 -0700</bug_when>
    <thetext>Ok, rolling it out is not easy but I am working on it :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902340</commentid>
    <comment_count>15</comment_count>
      <attachid>205120</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-06-20 14:54:47 -0700</bug_when>
    <thetext>Comment on attachment 205120
roll out

Attachment 205120 did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/857654</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902351</commentid>
    <comment_count>16</comment_count>
      <attachid>205126</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 15:34:48 -0700</bug_when>
    <thetext>Created attachment 205126
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902354</commentid>
    <comment_count>17</comment_count>
      <attachid>205127</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-20 16:08:42 -0700</bug_when>
    <thetext>Created attachment 205127
JSDOMWindow.cpp diff</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902358</commentid>
    <comment_count>18</comment_count>
      <attachid>205126</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-06-20 16:41:40 -0700</bug_when>
    <thetext>Comment on attachment 205126
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        RuntimeEnabledFeatures.

Would it be hard to change WebAudio so that it uses RuntimeEnabledFeatures?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902359</commentid>
    <comment_count>19</comment_count>
      <attachid>205126</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-06-20 16:43:40 -0700</bug_when>
    <thetext>Comment on attachment 205126
Patch

For the time being, I&apos;ll r+ it as this CL is a reasonable revert for r150663, which caused the regression. However, we might want to invent a cleaner solution (e.g. WebAudio should use RuntimeEnabledFeatures).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902415</commentid>
    <comment_count>20</comment_count>
      <attachid>205126</attachid>
    <who name="kov&apos;s GTK+ EWS bot">gtk-ews</who>
    <bug_when>2013-06-20 20:44:02 -0700</bug_when>
    <thetext>Comment on attachment 205126
Patch

Attachment 205126 did not pass gtk-ews (gtk):
Output: http://webkit-queues.appspot.com/results/918432</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902453</commentid>
    <comment_count>21</comment_count>
    <who name="Sindre Aa">sindre</who>
    <bug_when>2013-06-20 23:48:28 -0700</bug_when>
    <thetext>By the way, the reason I discovered this was not because it was not found through the inspector, but because my project (which uses webAudio) failed to create the webkitAudioContext. It might be because the inspector was open at the same time, in another tab?

Now (still on the same build) it seems to work occasionally (not consistently). Sometimes I need to refresh the page and close other tabs to get it working again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902465</commentid>
    <comment_count>22</comment_count>
      <attachid>205155</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-21 00:21:49 -0700</bug_when>
    <thetext>Created attachment 205155
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902466</commentid>
    <comment_count>23</comment_count>
      <attachid>205155</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-06-21 00:23:02 -0700</bug_when>
    <thetext>Comment on attachment 205155
Patch for landing

Looks OK as an immediate fix for the regression, though we might want to invent a cleaner solution.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902469</commentid>
    <comment_count>24</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-21 00:30:32 -0700</bug_when>
    <thetext>(In reply to comment #19)
&gt; (From update of attachment 205126 [details])
&gt; For the time being, I&apos;ll r+ it as this CL is a reasonable revert for r150663, which caused the regression. However, we might want to invent a cleaner solution (e.g. WebAudio should use RuntimeEnabledFeatures).

Do we really want to use RuntimeEnabledFeatures to enable features at runtime? What is the issue with using Settings?

I was thinking that we might want to get rid of RuntimeEnabledFeatures class (Which is barely used at the moment) and use Settings instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902470</commentid>
    <comment_count>25</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-06-21 00:48:51 -0700</bug_when>
    <thetext>(In reply to comment #24)
&gt; Do we really want to use RuntimeEnabledFeatures to enable features at runtime? What is the issue with using Settings?
&gt; 
&gt; I was thinking that we might want to get rid of RuntimeEnabledFeatures class (Which is barely used at the moment) and use Settings instead?

Sorry for not being clear (I was confused a bit). My point is that it is nasty that (1) we have both [EnabledAtRuntime] and [EnabledBySettings] and that (2) RuntimeEnabledFeatures.h is hand-written. So replacing RuntimeEnabledFeatures with Settings sounds like a reasonable approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902500</commentid>
    <comment_count>26</comment_count>
      <attachid>205155</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-21 03:35:23 -0700</bug_when>
    <thetext>Comment on attachment 205155
Patch for landing

Clearing flags on attachment: 205155

Committed r151832: &lt;http://trac.webkit.org/changeset/151832&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902501</commentid>
    <comment_count>27</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-21 03:35:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902578</commentid>
    <comment_count>28</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-06-21 09:19:58 -0700</bug_when>
    <thetext>&gt; I was thinking that we might want to get rid of RuntimeEnabledFeatures class (Which is barely used at the moment) and use Settings instead?

+1</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205120</attachid>
            <date>2013-06-20 14:05:15 -0700</date>
            <delta_ts>2013-06-20 15:34:48 -0700</delta_ts>
            <desc>roll out</desc>
            <filename>117825_rollout.patch</filename>
            <type>text/plain</type>
            <size>33296</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyZmM0Mjg3Li5lNzEyZjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkg
QEAKKzIwMTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcu
Y29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNTA2NjMKKyAgICAgICAg
aHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUwNjYzCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTY1MzAKKworICAgICAgICBJdCBjYXVz
ZWQgQnVnIDExNzgyNS4KKworICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAg
ICogTW9kdWxlcy93ZWJhdWRpby9BdWRpb0NvbnRleHQuaWRsOgorICAgICAgICAqIFRhcmdldC5w
cmk6CisgICAgICAgICogVXNlSlNDLmNtYWtlOgorICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgor
ICAgICAgICAqIFdlYkNvcmUub3JkZXI6CisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNv
cmUudmN4cHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZp
bHRlcnM6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAg
ICAgICAqIGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgorICAgICAg
ICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0V2Via2l0QXVkaW9Db250ZXh0
RW5hYmxlZCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcDoK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1dlYkF1ZGlvQ3VzdG9tLmNwcDogQWRk
ZWQuCisgICAgICAgIChXZWJDb3JlOjpzZXR0aW5nc0ZvcldpbmRvd1dlYkF1ZGlvKToKKyAgICAg
ICAgKFdlYkNvcmU6OkpTRE9NV2luZG93Ojp3ZWJraXRBdWRpb0NvbnRleHQpOgorICAgICAgICAq
IHBhZ2UvRE9NV2luZG93LmlkbDoKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmluOgorCiAyMDEz
LTA2LTIwICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTUxNDUxLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxp
c3QuYW0KaW5kZXggMDhlMzI4My4uOWI5NWM0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
R05VbWFrZWZpbGUubGlzdC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0
LmFtCkBAIC0yMzg2LDYgKzIzODYsNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93Q3VzdG9tLmggXAogCVNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTVdpbmRvd1NoZWxsLmggXAorCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NV2luZG93V2ViQXVkaW9DdXN0b20uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTVdyYXBwZXIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdyYXBwZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEYXRhVmlld0N1c3Rv
bS5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b0NvbnRleHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb0NvbnRl
eHQuaWRsCmluZGV4IDQ2ZjUxODYuLjNjZjdiZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Db250ZXh0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQ29udGV4dC5pZGwKQEAgLTI0LDEyICsyNCwxMSBAQAogICov
CiAKIFsKLSAgICBFbmFibGVkQXRSdW50aW1lLAorICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAg
IENvbmRpdGlvbmFsPVdFQl9BVURJTywKICAgICBBY3RpdmVET01PYmplY3QsCiAgICAgQ3VzdG9t
Q29uc3RydWN0b3IsCi0gICAgRXZlbnRUYXJnZXQsCi0gICAgSW50ZXJmYWNlTmFtZT13ZWJraXRB
dWRpb0NvbnRleHQKKyAgICBFdmVudFRhcmdldAogXSBpbnRlcmZhY2UgQXVkaW9Db250ZXh0IHsK
ICAgICAvLyBBbGwgcmVuZGVyZWQgYXVkaW8gdWx0aW1hdGVseSBjb25uZWN0cyB0byBkZXN0aW5h
dGlvbiwgd2hpY2ggcmVwcmVzZW50cyB0aGUgYXVkaW8gaGFyZHdhcmUuCiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIEF1ZGlvRGVzdGluYXRpb25Ob2RlIGRlc3RpbmF0aW9uOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5k
ZXggY2JhNDI2Yy4uZDFjMDE3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnBy
aQorKysgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCkBAIC0xMTMsNiArMTEzLDcgQEAgU09V
UkNFUyArPSBcCiAgICAgIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAgXAogICAgICBi
aW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5jcHAgXAogICAgICBiaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd1NoZWxsLmNwcCBcCisgICAgIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93V2ViQXVkaW9D
dXN0b20uY3BwIFwKICAgICAgYmluZGluZ3MvanMvSlNET01XcmFwcGVyLmNwcCBcCiAgICAgIGJp
bmRpbmdzL2pzL0pTRGF0YVZpZXdDdXN0b20uY3BwIFwKICAgICAgYmluZGluZ3MvanMvSlNEZXZp
Y2VNb3Rpb25FdmVudEN1c3RvbS5jcHAgXApAQCAtMzQyMyw2ICszNDI0LDcgQEAgZW5hYmxlPyhX
RUJfQVVESU8pIHsKICAgICAgICAgYmluZGluZ3MvanMvSlNBdWRpb0J1ZmZlclNvdXJjZU5vZGVD
dXN0b20uY3BwIFwKICAgICAgICAgYmluZGluZ3MvanMvSlNBdWRpb0NvbnRleHRDdXN0b20uY3Bw
IFwKICAgICAgICAgYmluZGluZ3MvanMvSlNCaXF1YWRGaWx0ZXJOb2RlQ3VzdG9tLmNwcCBcCisg
ICAgICAgIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93V2ViQXVkaW9DdXN0b20uY3BwIFwKICAgICAg
ICAgYmluZGluZ3MvanMvSlNPc2NpbGxhdG9yTm9kZUN1c3RvbS5jcHAgXAogICAgICAgICBiaW5k
aW5ncy9qcy9KU1Bhbm5lck5vZGVDdXN0b20uY3BwIFwKICAgICAgICAgTW9kdWxlcy93ZWJhdWRp
by9Bc3luY0F1ZGlvRGVjb2Rlci5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVXNl
SlNDLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCmluZGV4IGU0YTc1MTBjLi4w
ZGQzMDliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCkBAIC02NSw2ICs2NSw3IEBAIGxpc3QoQVBQRU5EIFdl
YkNvcmVfU09VUkNFUwogICAgIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKICAgICBi
aW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0RPTVdp
bmRvd1NoZWxsLmNwcAorICAgIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93V2ViQXVkaW9DdXN0b20u
Y3BwCiAgICAgYmluZGluZ3MvanMvSlNET01XcmFwcGVyLmNwcAogICAgIGJpbmRpbmdzL2pzL0pT
RGV2aWNlTW90aW9uRXZlbnRDdXN0b20uY3BwCiAgICAgYmluZGluZ3MvanMvSlNEZXZpY2VPcmll
bnRhdGlvbkV2ZW50Q3VzdG9tLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCA5ZDQ4MTI2Li5i
MTBiM2NhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMjY4MCwxMCArMjY4MCw2IEBAIF9fWk43
V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0dXJlczM3aXNBdXRob3JTaGFkb3dET01Gb3JBbnlF
bGVtZW50RW5hYmxlZEUKIF9fWk43V2ViQ29yZTR0b0pTRVBOM0pTQzlFeGVjU3RhdGVFUE5TXzE3
SlNET01HbG9iYWxPYmplY3RFUE5TXzEwU2hhZG93Um9vdEUKICNlbmRpZgogCi0jaWYgRU5BQkxF
KFdFQl9BVURJTykKLV9fWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0dXJlczE3aXNXZWJB
dWRpb0VuYWJsZWRFCi0jZW5kaWYKLQogI2lmIEVOQUJMRShESUFMT0dfRUxFTUVOVCkKIF9fWk43
V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0dXJlczIyaXNEaWFsb2dFbGVtZW50RW5hYmxlZEUK
ICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5vcmRlciBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUub3JkZXIKaW5kZXggMzQzNDEyNi4uYTg0ZTlhMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5vcmRlcgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLm9yZGVyCkBAIC00MDc4OSw3ICs0MDc4OSw2IEBAIF9fWk43V2ViQ29yZTIzUGxhdGZvcm1J
bnN0cnVtZW50YXRpb244bV9jbGllbnRFCiBfX1pON1dlYkNvcmUyMVJlbmRlckxheWVyRmlsdGVy
SW5mbzExc19maWx0ZXJNYXBFCiBfX1pON1dlYkNvcmUyM1JlbmRlclNWR1Jlc291cmNlTWFza2Vy
MTRzX3Jlc291cmNlVHlwZUUKIF9fWk43V2ViQ29yZTE1UmVzb3VyY2VSZXF1ZXN0MjNzX2h0dHBQ
aXBlbGluaW5nRW5hYmxlZEUKLV9fWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0dXJlczE3
aXNXZWJBdWRpb0VuYWJsZWRFCiBfX1pON1dlYkNvcmUyMlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMy
MmlzQ1NTRXhjbHVzaW9uc0VuYWJsZWRFCiBfX1pON1dlYkNvcmUyMlJ1bnRpbWVFbmFibGVkRmVh
dHVyZXMxOGlzQ1NTU2hhcGVzRW5hYmxlZEUKIF9fWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRG
ZWF0dXJlczQwaXNMYW5nQXR0cmlidXRlQXdhcmVGb3JtQ29udHJvbFVJRW5hYmxlZEUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4IGRjYjcw
NzYuLjA4ZjJhMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9X
ZWJDb3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNv
cmUudmN4cHJvagpAQCAtOTYzNyw2ICs5NjM3LDE0IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVp
bGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dp
bkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9k
dWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+
CisgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xKU0RPTVdpbmRvd1dlYkF1
ZGlvQ3VzdG9tLmNwcCI+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVk
RnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmln
dXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98V2luMzInIj50cnVlPC9FeGNs
dWRlZEZyb21CdWlsZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSIn
JChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxiaW5kaW5nc1xqc1xKU0RPTVdyYXBwZXIuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVn
fFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVp
bGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5D
YWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCmluZGV4IDYz
NDM4NjQuLjFjOTdlYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJv
ai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycworKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKQEAgLTUzMTksNiArNTMxOSw5IEBACiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xKU0RPTVdpbmRvd1NoZWxsLmNwcCI+
CiAgICAgICA8RmlsdGVyPmJpbmRpbmdzXGpzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Cisg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xKU0RPTVdpbmRvd1dlYkF1ZGlv
Q3VzdG9tLmNwcCI+CisgICAgICA8RmlsdGVyPmJpbmRpbmdzXGpzPC9GaWx0ZXI+CisgICAgPC9D
bENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xKU0RPTVdy
YXBwZXIuY3BwIj4KICAgICAgIDxGaWx0ZXI+YmluZGluZ3NcanM8L0ZpbHRlcj4KICAgICA8L0Ns
Q29tcGlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCBiODFhOGM4Li43MGYzZGRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNDYyLDYgKzM0NjIsNyBAQAog
CQlBN0Y1RDk0RjEzODRGMDJEMDBBMjlBODcgLyogTm9kZVJlbmRlcmluZ0NvbnRleHQuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdGNUQ5NEQxMzg0
RjAyRDAwQTI5QTg3IC8qIE5vZGVSZW5kZXJpbmdDb250ZXh0LmNwcCAqLzsgfTsKIAkJQTdGNUQ5
NTAxMzg0RjAyRDAwQTI5QTg3IC8qIE5vZGVSZW5kZXJpbmdDb250ZXh0LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0Y1RDk0RTEzODRGMDJEMDBBMjlB
ODcgLyogTm9kZVJlbmRlcmluZ0NvbnRleHQuaCAqLzsgfTsKIAkJQTgwQTM4RkUwRTUwQ0M4MjAw
QTI1RUJDIC8qIFBhdHRlcm5DRy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBODBBMzhGRDBFNTBDQzgyMDBBMjVFQkMgLyogUGF0dGVybkNHLmNwcCAq
LzsgfTsKKwkJQTgwQTk0MjMxNDlGMjI1RTAwOTg5MjkxIC8qIEpTRE9NV2luZG93V2ViQXVkaW9D
dXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTgwQTk0MjIxNDlGMjI1RTAwOTg5MjkxIC8qIEpTRE9NV2luZG93V2ViQXVkaW9DdXN0b20uY3Bw
ICovOyB9OwogCQlBODBENjcwODBFOUU5REVCMDBFNDIwRjAgLyogR3JhcGhpY3NDb250ZXh0UGxh
dGZvcm1Qcml2YXRlQ0cuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE4MEQ2NzA3MEU5RTlERUIwMEU0MjBGMCAvKiBHcmFwaGljc0NvbnRleHRQbGF0Zm9y
bVByaXZhdGVDRy5oICovOyB9OwogCQlBODBFNkNFNDBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTVmFs
dWVMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4MEU2Q0JBMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NWYWx1ZUxpc3QuY3BwICovOyB9OwogCQlB
ODBFNkNFNjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUHJpbWl0aXZlVmFsdWUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2Q0JDMEExOTg5Q0EwMDdG
QjhDNSAvKiBDU1NQcmltaXRpdmVWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CkBAIC05OTMzLDYgKzk5MzQsNyBAQAogCQlBN0Y3M0VEOTE2OUFE
N0FBMDBDQkFBNEIgLyogRE9NU2hhZG93Um9vdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBET01TaGFkb3dSb290Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3
RjczRURBMTY5QUQ3QUEwMENCQUE0QiAvKiBET01TaGFkb3dSb290Lm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRE9NU2hhZG93Um9vdC5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTgwQTM4RkQwRTUwQ0M4MjAwQTI1RUJDIC8qIFBhdHRlcm5DRy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXR0ZXJuQ0cuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBBOTQyMjE0OUYyMjVFMDA5ODkyOTEgLyog
SlNET01XaW5kb3dXZWJBdWRpb0N1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0RPTVdpbmRvd1dlYkF1ZGlvQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQTgwRDY3MDcwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4
dFBsYXRmb3JtUHJpdmF0ZUNHLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdy
YXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZUNHLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUE4MEU2Q0JBMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NWYWx1ZUxpc3QuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU1ZhbHVlTGlzdC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4MEU2Q0JDMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NQ
cmltaXRpdmVWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTUHJp
bWl0aXZlVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE4ODE0LDYgKzE4
ODE2LDcgQEAKIAkJCQkxNEUwQkM1NTEzNjE0OEE4MDAyQUQxMkUgLyogSlNET01Ub2tlbkxpc3RD
dXN0b20uY3BwICovLAogCQkJCUJDRDlDMjVFMEMxN0FBNjcwMDVDOTBBMiAvKiBKU0RPTVdpbmRv
d0N1c3RvbS5jcHAgKi8sCiAJCQkJNjUyRkJCQkIwREUyN0NCNjAwMDFEMzg2IC8qIEpTRE9NV2lu
ZG93Q3VzdG9tLmggKi8sCisJCQkJQTgwQTk0MjIxNDlGMjI1RTAwOTg5MjkxIC8qIEpTRE9NV2lu
ZG93V2ViQXVkaW9DdXN0b20uY3BwICovLAogCQkJCUJDMkVENTU0MEM2QjlCRDMwMDkyMEJGRiAv
KiBKU0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDRUZBRjREMEMzMTdFNjkwMEZBODFGNiAv
KiBKU0V2ZW50Q3VzdG9tLmNwcCAqLywKIAkJCQkyRTc1ODJFRDEyNzY0RjI2MDA2MjYyOEIgLyog
SlNGaWxlUmVhZGVyQ3VzdG9tLmNwcCAqLywKQEAgLTI1NDE4LDYgKzI1NDIxLDcgQEAKIAkJCQlC
QzY5MzI3MzBEN0UyOTM5MDBBRTQ0RDEgLyogSlNET01XaW5kb3dCYXNlLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUJDRDlDMjYyMEMxN0FBNjcwMDVDOTBBMiAvKiBKU0RPTVdpbmRvd0N1c3RvbS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0JGQjUzQzBEQ0QyOUNGMDAxOUIzRTUgLyogSlNET01X
aW5kb3dTaGVsbC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlBODBBOTQyMzE0OUYyMjVFMDA5ODky
OTEgLyogSlNET01XaW5kb3dXZWJBdWRpb0N1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlD
RERFNjkxRjE3MURGQUQwMDBBNDREODkgLyogSlNBdWRpb0J1ZmZlckN1c3RvbS5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlGRDc4NjhCOTEzNkI5OTkyMDBENDAzREYgLyogSlNEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTY1REYzMUY5MDlEMUNDNjAwMDBCRTMy
NSAvKiBKU0VsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IDJj
YmJhOTAuLmY5NzIxM2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVy
aWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0xNTMsNyArMTUzLDcgQEAgcHVi
bGljOgogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VCX0FVRElPKQotICAgIHN0YXRpYyB2b2lkIHNl
dFdlYkF1ZGlvRW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBpc1dlYkF1ZGlvRW5hYmxlZCA9IGlz
RW5hYmxlZDsgfQorICAgIHN0YXRpYyB2b2lkIHNldFdlYmtpdEF1ZGlvQ29udGV4dEVuYWJsZWQo
Ym9vbCBpc0VuYWJsZWQpIHsgaXNXZWJBdWRpb0VuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KICAgICBz
dGF0aWMgYm9vbCB3ZWJraXRBdWRpb0NvbnRleHRFbmFibGVkKCkgeyByZXR1cm4gaXNXZWJBdWRp
b0VuYWJsZWQ7IH0KICAgICBzdGF0aWMgYm9vbCB3ZWJraXRPZmZsaW5lQXVkaW9Db250ZXh0RW5h
YmxlZCgpIHsgcmV0dXJuIGlzV2ViQXVkaW9FbmFibGVkOyB9CiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCmluZGV4IGUzZTdh
ZWEuLmZkODg5YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmlu
ZGluZ3NBbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5k
aW5nc0FsbEluT25lLmNwcApAQCAtNjksNiArNjksNyBAQAogI2luY2x1ZGUgIkpTRE9NV2luZG93
QmFzZS5jcHAiCiAjaW5jbHVkZSAiSlNET01XaW5kb3dDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpT
RE9NV2luZG93U2hlbGwuY3BwIgorI2luY2x1ZGUgIkpTRE9NV2luZG93V2ViQXVkaW9DdXN0b20u
Y3BwIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5jcHAiCiAjaW5jbHVkZSAiSlNEYXRhVmlld0N1
c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNEZWRpY2F0ZWRXb3JrZXJDb250ZXh0Q3VzdG9tLmNwcCIK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93V2ViQXVk
aW9DdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dXZWJB
dWRpb0N1c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDEzMTQw
ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2lu
ZG93V2ViQXVkaW9DdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDcsIDIwMDgsIDIwMDksIDIwMTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNl
LCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGli
cmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor
ICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy
cmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
Zm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRo
IHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0
bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry
ZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICovCisK
KyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0RPTVdpbmRvd0N1c3RvbS5oIgorCisj
aWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIkpTQXVk
aW9Db250ZXh0LmgiCisjaW5jbHVkZSAiU2V0dGluZ3MuaCIKKwordXNpbmcgbmFtZXNwYWNlIEpT
QzsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0aWMgU2V0dGluZ3MqIHNldHRpbmdzRm9y
V2luZG93V2ViQXVkaW8oY29uc3QgSlNET01XaW5kb3cqIHdpbmRvdykKK3sKKyAgICBBU1NFUlQo
d2luZG93KTsKKyAgICBpZiAoRnJhbWUqIGZyYW1lID0gd2luZG93LT5pbXBsKCktPmZyYW1lKCkp
CisgICAgICAgIHJldHVybiBmcmFtZS0+c2V0dGluZ3MoKTsKKyAgICByZXR1cm4gMDsKK30KKwor
SlNWYWx1ZSBKU0RPTVdpbmRvdzo6d2Via2l0QXVkaW9Db250ZXh0KEV4ZWNTdGF0ZSogZXhlYykg
Y29uc3QKK3sKKyAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBzZXR0aW5nc0ZvcldpbmRvd1dlYkF1
ZGlvKHRoaXMpOworICAgIGlmIChzZXR0aW5ncyAmJiBzZXR0aW5ncy0+d2ViQXVkaW9FbmFibGVk
KCkpCisgICAgICAgIHJldHVybiBnZXRET01Db25zdHJ1Y3RvcjxKU0F1ZGlvQ29udGV4dENvbnN0
cnVjdG9yPihleGVjLCB0aGlzKTsKKyAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRE9NV2luZG93LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbApp
bmRleCAxYTMyYWI1Li42N2QzMWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVdpbmRvdy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCkBAIC0z
MjgsNSArMzI4LDkgQEAKICAgICBbQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRV0gYXR0cmli
dXRlIElEQk9iamVjdFN0b3JlQ29uc3RydWN0b3Igd2Via2l0SURCT2JqZWN0U3RvcmU7CiAgICAg
W0NvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0VdIGF0dHJpYnV0ZSBJREJSZXF1ZXN0Q29uc3Ry
dWN0b3Igd2Via2l0SURCUmVxdWVzdDsKICAgICBbQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFT
RV0gYXR0cmlidXRlIElEQlRyYW5zYWN0aW9uQ29uc3RydWN0b3Igd2Via2l0SURCVHJhbnNhY3Rp
b247CisKKyAgICAvLyBDb25zdHJ1Y3RvcnMgd2hvc2UgbmFtZSBkb2VzIG5vdCBtYXRjaCB0aGUg
aW50ZXJmYWNlIG5hbWUuCisgICAgW0NvbmRpdGlvbmFsPVdFQl9BVURJTywgQ3VzdG9tR2V0dGVy
XSBhdHRyaWJ1dGUgQXVkaW9Db250ZXh0Q29uc3RydWN0b3Igd2Via2l0QXVkaW9Db250ZXh0Owor
CiAjZW5kaWYgLy8gZGVmaW5lZChMQU5HVUFHRV9KQVZBU0NSSVBUKQogfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
dHRpbmdzLmluCmluZGV4IDEyMmZiMDUuLmVhYjE0YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvU2V0dGluZ3MuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5p
bgpAQCAtMTE1LDYgKzExNSw3IEBAIHByaXZpbGVnZWRXZWJHTEV4dGVuc2lvbnNFbmFibGVkIGlu
aXRpYWw9ZmFsc2UKIGFjY2VsZXJhdGVkMmRDYW52YXNFbmFibGVkIGluaXRpYWw9ZmFsc2UKIGFu
dGlhbGlhc2VkMmRDYW52YXNFbmFibGVkIGluaXRpYWw9dHJ1ZQogbG9hZERlZmVycmluZ0VuYWJs
ZWQgaW5pdGlhbD10cnVlCit3ZWJBdWRpb0VuYWJsZWQgaW5pdGlhbD1mYWxzZQogcGFnaW5hdGVE
dXJpbmdMYXlvdXRFbmFibGVkIGluaXRpYWw9ZmFsc2UKIGZ1bGxTY3JlZW5FbmFibGVkIGluaXRp
YWw9ZmFsc2UsIGNvbmRpdGlvbmFsPUZVTExTQ1JFRU5fQVBJCiBhc3luY2hyb25vdXNTcGVsbENo
ZWNraW5nRW5hYmxlZCBpbml0aWFsPWZhbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Vm
bC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5kZXggZDkzNDIxOC4u
YTlmZGNlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTA2LTIwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAgICAgICBV
bnJldmlld2VkLCByb2xsaW5nIG91dCByMTUwNjYzCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtp
dC5vcmcvY2hhbmdlc2V0LzE1MDY2MworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTE2NTMwCisKKyAgICAgICAgSXQgY2F1c2VkIEJ1ZyAxMTc4MjUuCisK
KyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuY3BwOgor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5oOgorICAg
ICAgICAqIGV3ay9ld2tfdmlldy5jcHA6CisgICAgICAgIChfZXdrX3ZpZXdfcHJpdl9uZXcpOgor
ICAgICAgICAoZXdrX3ZpZXdfc2V0dGluZ193ZWJfYXVkaW9fZ2V0KToKKyAgICAgICAgKGV3a192
aWV3X3NldHRpbmdfd2ViX2F1ZGlvX3NldCk6CisgICAgICAgICogZXdrL2V3a192aWV3Lmg6CisK
IDIwMTMtMDYtMTcgIFNlb2tqdSBLd29uICA8c2Vva2p1Lmt3b25AZ21haWwuY29tPgogCiAgICAg
ICAgIFtFRkxdIFJlbW92ZSB1bm5lZWRlZCBXZWJDb3JlIG5hbWVzcGFjZSBpbiBGcmFtZUxvYWRl
ckNsaWVudEVmbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQv
RHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVT
dXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5jcHAKaW5kZXggNzQ5MGFjNy4uMjI0YTRi
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRl
clRyZWVTdXBwb3J0RWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9y
dC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuY3BwCkBAIC0zMjQsMTUgKzMyNCw2IEBAIHZvaWQg
RHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRTZWFtbGVzc0lGcmFtZXNFbmFibGVkKGJvb2wg
ZW5hYmxlZCkKICNlbmRpZgogfQogCi12b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0
V2ViQXVkaW9FbmFibGVkKGJvb2wgZW5hYmxlZCkKLXsKLSNpZiBFTkFCTEUoV0VCX0FVRElPKQot
ICAgIFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFdlYkF1ZGlvRW5hYmxlZChl
bmFibGVkKTsKLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKGVuYWJsZWQpOwotI2VuZGlmCi19Ci0K
IGJvb2wgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjppc0NvbW1hbmRFbmFibGVkKGNvbnN0IEV2
YXNfT2JqZWN0KiBld2tWaWV3LCBjb25zdCBjaGFyKiBuYW1lKQogewogICAgIERSVF9TVVBQUlRf
UEFHRV9HRVRfT1JfUkVUVVJOKGV3a1ZpZXcsIHBhZ2UsIGZhbHNlKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5o
IGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0
RWZsLmgKaW5kZXggZGM2MWVhNi4uMzExZDlhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9l
ZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmgKKysrIGIvU291cmNl
L1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmgKQEAg
LTgxLDcgKzgxLDYgQEAgcHVibGljOgogICAgIHN0YXRpYyB2b2lkIHNldENTU0dyaWRMYXlvdXRF
bmFibGVkKGNvbnN0IEV2YXNfT2JqZWN0KiBld2tWaWV3LCBib29sIGVuYWJsZWQpOwogICAgIHN0
YXRpYyB2b2lkIHNldENTU1JlZ2lvbnNFbmFibGVkKGNvbnN0IEV2YXNfT2JqZWN0KiBld2tWaWV3
LCBib29sIGVuYWJsZWQpOwogICAgIHN0YXRpYyB2b2lkIHNldFNlYW1sZXNzSUZyYW1lc0VuYWJs
ZWQoYm9vbCk7Ci0gICAgc3RhdGljIHZvaWQgc2V0V2ViQXVkaW9FbmFibGVkKGJvb2wpOwogCiAg
ICAgc3RhdGljIHZvaWQgZm9yY2VMYXlvdXQoRXZhc19PYmplY3QqIGV3a0ZyYW1lKTsKICAgICBz
dGF0aWMgdm9pZCBzZXRUcmFja3NSZXBhaW50cyhFdmFzX09iamVjdCogZXdrRnJhbWUsIGJvb2wg
ZW5hYmxlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3Bw
IGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAppbmRleCAyYTdiZDg5Li42ZWYx
OTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKQEAgLTMzNSw2ICszMzUsOSBAQCBz
dHJ1Y3QgX0V3a19WaWV3X1ByaXZhdGVfRGF0YSB7CiAgICAgICAgIGJvb2wgb2ZmbGluZUFwcENh
Y2hlIDogMTsKICAgICAgICAgYm9vbCBwYWdlQ2FjaGUgOiAxOwogICAgICAgICBib29sIGVuYWJs
ZVhTU0F1ZGl0b3IgOiAxOworI2lmIEVOQUJMRShXRUJfQVVESU8pCisgICAgICAgIGJvb2wgd2Vi
QXVkaW8gOiAxOworI2VuZGlmCiAgICAgICAgIGJvb2wgd2ViR0xFbmFibGVkIDogMTsKICAgICAg
ICAgYm9vbCB0YWJzVG9MaW5rcyA6IDE7CiAgICAgICAgIHN0cnVjdCB7CkBAIC03NTksNyArNzYy
LDcgQEAgc3RhdGljIEV3a19WaWV3X1ByaXZhdGVfRGF0YSogX2V3a192aWV3X3ByaXZfbmV3KEV3
a19WaWV3X1NtYXJ0X0RhdGEqIHNtYXJ0RGF0YSkKICAgICBwcml2LT5wYWdlU2V0dGluZ3MtPnNl
dFVzZXNQYWdlQ2FjaGUodHJ1ZSk7CiAgICAgcHJpdi0+cGFnZVNldHRpbmdzLT5zZXRVc2VzRW5j
b2RpbmdEZXRlY3RvcihmYWxzZSk7CiAjaWYgRU5BQkxFKFdFQl9BVURJTykKLSAgICBXZWJDb3Jl
OjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRXZWJBdWRpb0VuYWJsZWQoZmFsc2UpOworICAg
IHByaXYtPnBhZ2VTZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVkKGZhbHNlKTsKICNlbmRpZgog
ICAgIHByaXYtPnBhZ2VTZXR0aW5ncy0+c2V0V2ViR0xFbmFibGVkKHRydWUpOwogICAgIHByaXYt
PnBhZ2VTZXR0aW5ncy0+c2V0WFNTQXVkaXRvckVuYWJsZWQodHJ1ZSk7CkBAIC04MzUsNiArODM4
LDkgQEAgc3RhdGljIEV3a19WaWV3X1ByaXZhdGVfRGF0YSogX2V3a192aWV3X3ByaXZfbmV3KEV3
a19WaWV3X1NtYXJ0X0RhdGEqIHNtYXJ0RGF0YSkKICAgICBwcml2LT5zZXR0aW5ncy50YWJzVG9M
aW5rcyA9IHRydWU7CiAKICAgICBwcml2LT5zZXR0aW5ncy51c2VyQWdlbnQgPSBld2tfc2V0dGlu
Z3NfZGVmYXVsdF91c2VyX2FnZW50X2dldCgpOworI2lmIEVOQUJMRShXRUJfQVVESU8pCisgICAg
cHJpdi0+c2V0dGluZ3Mud2ViQXVkaW8gPSBwcml2LT5wYWdlU2V0dGluZ3MtPndlYkF1ZGlvRW5h
YmxlZCgpOworI2VuZGlmCiAKICAgICAvLyBTaW5jZSB0aGVyZSdzIG5vIHNjYWxlIHNlcGFyYXRl
ZCBmcm9tIHpvb21pbmcgaW4gd2Via2l0LWVmbCwgdGhpcyBmdW5jdGlvbmFsaXR5IG9mCiAgICAg
Ly8gdmlld3BvcnQgbWV0YSB0YWcgaXMgaW1wbGVtZW50ZWQgdXNpbmcgem9vbS4gV2hlbiBzY2Fs
ZSB6b29tIGlzIHN1cHBvcnRlZCBieSB3ZWJraXQtZWZsLApAQCAtNDU3Niw2ICs0NTgyLDM1IEBA
IHZvaWQgZXdrX3ZpZXdfbWFya19mb3Jfc3luYyhFdmFzX09iamVjdCogZXdrVmlldykKIH0KICNl
bmRpZgogCitFaW5hX0Jvb2wgZXdrX3ZpZXdfc2V0dGluZ193ZWJfYXVkaW9fZ2V0KGNvbnN0IEV2
YXNfT2JqZWN0KiBld2tWaWV3KQoreworI2lmIEVOQUJMRShXRUJfQVVESU8pCisgICAgRVdLX1ZJ
RVdfU0RfR0VUX09SX1JFVFVSTihld2tWaWV3LCBzbWFydERhdGEsIGZhbHNlKTsKKyAgICBFV0tf
VklFV19QUklWX0dFVF9PUl9SRVRVUk4oc21hcnREYXRhLCBwcml2LCBmYWxzZSk7CisgICAgcmV0
dXJuIHByaXYtPnNldHRpbmdzLndlYkF1ZGlvOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZXdr
Vmlldyk7CisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisKK0VpbmFfQm9vbCBld2tfdmll
d19zZXR0aW5nX3dlYl9hdWRpb19zZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEVpbmFfQm9vbCBl
bmFibGUpCit7CisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyAgICBFV0tfVklFV19TRF9HRVRfT1Jf
UkVUVVJOKGV3a1ZpZXcsIHNtYXJ0RGF0YSwgZmFsc2UpOworICAgIEVXS19WSUVXX1BSSVZfR0VU
X09SX1JFVFVSTihzbWFydERhdGEsIHByaXYsIGZhbHNlKTsKKyAgICBpZiAocHJpdi0+c2V0dGlu
Z3Mud2ViQXVkaW8gIT0gZW5hYmxlKSB7CisgICAgICAgIHByaXYtPnBhZ2VTZXR0aW5ncy0+c2V0
V2ViQXVkaW9FbmFibGVkKGVuYWJsZSk7CisgICAgICAgIHByaXYtPnNldHRpbmdzLndlYkF1ZGlv
ID0gZW5hYmxlOworICAgIH0KKyAgICByZXR1cm4gdHJ1ZTsKKyNlbHNlCisgICAgVU5VU0VEX1BB
UkFNKGV3a1ZpZXcpOworICAgIFVOVVNFRF9QQVJBTShlbmFibGUpOworICAgIHJldHVybiBmYWxz
ZTsKKyNlbmRpZgorfQorCiB2b2lkIGV3a192aWV3X2N1cnNvcl9zZXQoRXZhc19PYmplY3QqIGV3
a1ZpZXcsIGNvbnN0IFdlYkNvcmU6OkN1cnNvciYgY3Vyc29yKQogewogICAgIEVXS19WSUVXX1NE
X0dFVF9PUl9SRVRVUk4oZXdrVmlldywgc21hcnREYXRhKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3
LmgKaW5kZXggM2M2NWVjMS4uNTAxMDBjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwv
ZXdrL2V3a192aWV3LmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmgKQEAg
LTI2NzgsNiArMjY3OCwyNyBAQCBFQVBJIEVpbmFfQm9vbCBld2tfdmlld19zZXR0aW5nX3Nob3Vs
ZF9kaXNwbGF5X3RleHRfZGVzY3JpcHRpb25zX2dldChjb25zdCBFdmFzXwogRUFQSSB2b2lkIGV3
a192aWV3X3NldHRpbmdfc2hvdWxkX2Rpc3BsYXlfdGV4dF9kZXNjcmlwdGlvbnNfc2V0KEV2YXNf
T2JqZWN0ICpvLCBFaW5hX0Jvb2wgZW5hYmxlKTsKIAogLyoqCisgKiBRdWVyaWVzIGlmIHRoZSB3
ZWIgYXVkaW8gZmVhdHVyZSBvZiBIVE1MNSBpcyBlbmFibGVkLgorICoKKyAqIEBwYXJhbSBvIHZp
ZXcgb2JqZWN0IHRvIHF1ZXJ5IGlmIHRoZSB3ZWIgYXVkaW8gZmVhdHVyZSBpcyBlbmFibGVkCisg
KgorICogQHJldHVybiBAYyBFSU5BX1RSVUUgaWYgd2ViIGF1ZGlvIGlzIGVuYWJsZWQsCisgKiAg
ICAgICAgIEBjIEVJTkFfRkFMU0UgaWYgbm90IG9yIG9uIGZhaWx1cmUKKyAqLworRUFQSSBFaW5h
X0Jvb2wgICAgZXdrX3ZpZXdfc2V0dGluZ193ZWJfYXVkaW9fZ2V0KGNvbnN0IEV2YXNfT2JqZWN0
ICpvKTsKKworLyoqCisgKiBFbmFibGVzL2Rpc2FibGVzIHRoZSB3ZWIgYXVkaW8gZmVhdHVyZSBv
ZiBIVE1MNS4KKyAqCisgKiBAcGFyYW0gbyB2aWV3IG9iamVjdCB0byBzZXQgdGhlIHdlYiBhdWRp
bworICogQHBhcmFtIGVuYWJsZSBAYyBFSU5BX1RSVUUgdG8gZW5hYmxlIHRoZSB3ZWIgYXVkaW8g
ZmVhdHVyZSwKKyAqICAgICAgICBAYyBFSU5BX0ZBTFNFIHRvIGRpc2FibGUKKyAqCisgKiBAcmV0
dXJuIEBjIEVJTkFfVFJVRSBvbiBzdWNjZXNzIG9yIEBjIEVJTkFfRkFMU0Ugb24gZmFpbHVyZQor
ICovCitFQVBJIEVpbmFfQm9vbCAgICBld2tfdmlld19zZXR0aW5nX3dlYl9hdWRpb19zZXQoRXZh
c19PYmplY3QgKm8sIEVpbmFfQm9vbCBlbmFibGUpOworCisvKioKICAqIFNob3cgdGhlIGluc3Bl
Y3RvciB0byBkZWJ1ZyBhIHdlYiBwYWdlLgogICoKICAqIFRoZSBmb2xsb3dpbmcgc2lnbmFscyBh
cmUgZW1paXRlZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwppbmRleCA2ZjhmZjQ1Li4yNzA2NjQ0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9ndGsv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXog
IDxjaC5kdW1lekBzaXNhLnNhbXN1bmcuY29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxp
bmcgb3V0IHIxNTA2NjMKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQv
MTUwNjYzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MTY1MzAKKworICAgICAgICBJdCBjYXVzZWQgQnVnIDExNzgyNS4KKworICAgICAgICAqIHdlYmtp
dC93ZWJraXR3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld191cGRhdGVfc2V0
dGluZ3MpOgorICAgICAgICAod2Via2l0X3dlYl92aWV3X3NldHRpbmdzX25vdGlmeSk6CisKIDIw
MTMtMDYtMTggIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQuIFVwZGF0ZSBORVdTIGFuZCBWZXJzaW9ucy5tNCBmb3IgMi4xLjIg
cmVsZWFzZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2
aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcAppbmRl
eCBlYzUwYTdiLi43NmJiYzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnZpZXcuY3BwCkBAIC0zNTcyLDcgKzM1NzIsNyBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3Zp
ZXdfdXBkYXRlX3NldHRpbmdzKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCiAjZW5kaWYKIAogI2lm
IEVOQUJMRShXRUJfQVVESU8pCi0gICAgV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6
c2V0V2ViQXVkaW9FbmFibGVkKHNldHRpbmdzUHJpdmF0ZS0+ZW5hYmxlV2ViQXVkaW8pOworICAg
IGNvcmVTZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVkKHNldHRpbmdzUHJpdmF0ZS0+ZW5hYmxl
V2ViQXVkaW8pOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU01PT1RIX1NDUk9MTElORykKQEAgLTM3
MTgsNyArMzcxOCw3IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfdmlld19zZXR0aW5nc19ub3Rp
ZnkoV2ViS2l0V2ViU2V0dGluZ3MqIHdlYlNldHRpbmdzLCBHUGFyCiAKICNpZiBFTkFCTEUoV0VC
X0FVRElPKQogICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRlcm5fc3RyaW5nKCJlbmFibGUtd2Vi
YXVkaW8iKSkKLSAgICAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0V2ViQXVkaW9FbmFi
bGVkKGdfdmFsdWVfZ2V0X2Jvb2xlYW4oJnZhbHVlKSk7CisgICAgICAgIHNldHRpbmdzLT5zZXRX
ZWJBdWRpb0VuYWJsZWQoZ192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsKICNlbmRpZgogCiAj
aWYgRU5BQkxFKFNNT09USF9TQ1JPTExJTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggZmFjOWU4Yy4u
YzU3MWIwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEzLTA2LTIwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAgICAgICBV
bnJldmlld2VkLCByb2xsaW5nIG91dCByMTUwNjYzCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtp
dC5vcmcvY2hhbmdlc2V0LzE1MDY2MworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTE2NTMwCisKKyAgICAgICAgSXQgY2F1c2VkIEJ1ZyAxMTc4MjUuCisK
KyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcubW06CisgICAgICAgICgtW1dlYlZpZXcgX3ByZWZl
cmVuY2VzQ2hhbmdlZDpdKToKKwogMjAxMy0wNi0xOSAgQmVuamFtaW4gUG91bGFpbiAgPGJwb3Vs
YWluQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgdGhlIFBsYXRmb3JtRXZlbnQgdGltZXN0YW1w
IHdoZW4gY3JlYXRpbmcgYSBET00gRXZlbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5t
bQppbmRleCBhYTlmYzI0Li5kMGMzYjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3
Lm1tCkBAIC0xNDk1LDYgKzE0OTUsNyBAQCBzdGF0aWMgYm9vbCBuZWVkc1NlbGZSZXRhaW5XaGls
ZUxvYWRpbmdRdWlyaygpCiAgICAgc2V0dGluZ3MtPnNldENhbnZhc1VzZXNBY2NlbGVyYXRlZERy
YXdpbmcoW3ByZWZlcmVuY2VzIGNhbnZhc1VzZXNBY2NlbGVyYXRlZERyYXdpbmddKTsgICAgCiAg
ICAgc2V0dGluZ3MtPnNldFNob3dEZWJ1Z0JvcmRlcnMoW3ByZWZlcmVuY2VzIHNob3dEZWJ1Z0Jv
cmRlcnNdKTsKICAgICBzZXR0aW5ncy0+c2V0U2hvd1JlcGFpbnRDb3VudGVyKFtwcmVmZXJlbmNl
cyBzaG93UmVwYWludENvdW50ZXJdKTsKKyAgICBzZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVk
KFtwcmVmZXJlbmNlcyB3ZWJBdWRpb0VuYWJsZWRdKTsKICAgICBzZXR0aW5ncy0+c2V0V2ViR0xF
bmFibGVkKFtwcmVmZXJlbmNlcyB3ZWJHTEVuYWJsZWRdKTsKICAgICBzZXR0aW5ncy0+c2V0QWNj
ZWxlcmF0ZWQyZENhbnZhc0VuYWJsZWQoW3ByZWZlcmVuY2VzIGFjY2VsZXJhdGVkMmRDYW52YXNF
bmFibGVkXSk7CiAgICAgc2V0dGluZ3MtPnNldExvYWREZWZlcnJpbmdFbmFibGVkKHNob3VsZEVu
YWJsZUxvYWREZWZlcnJpbmcoKSk7CkBAIC0xNTA2LDkgKzE1MDcsNiBAQCBzdGF0aWMgYm9vbCBu
ZWVkc1NlbGZSZXRhaW5XaGlsZUxvYWRpbmdRdWlyaygpCiAjZW5kaWYKICAgICBSdW50aW1lRW5h
YmxlZEZlYXR1cmVzOjpzZXRDU1NSZWdpb25zRW5hYmxlZChbcHJlZmVyZW5jZXMgY3NzUmVnaW9u
c0VuYWJsZWRdKTsKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRDU1NDb21wb3NpdGlu
Z0VuYWJsZWQoW3ByZWZlcmVuY2VzIGNzc0NvbXBvc2l0aW5nRW5hYmxlZF0pOwotI2lmIEVOQUJM
RShXRUJfQVVESU8pCi0gICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0V2ViQXVkaW9FbmFi
bGVkKFtwcmVmZXJlbmNlcyB3ZWJBdWRpb0VuYWJsZWRdKTsKLSNlbmRpZgogI2lmIEVOQUJMRShJ
RlJBTUVfU0VBTUxFU1MpCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0U2VhbWxlc3NJ
RnJhbWVzRW5hYmxlZChbcHJlZmVyZW5jZXMgc2VhbWxlc3NJRnJhbWVzRW5hYmxlZF0pOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuY3BwIGIv
U291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcAppbmRleCBlOGI3OWU5Li43MzQ0
YmFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAKQEAgLTE3NSw3ICsxNzUs
NyBAQCB2b2lkIFFXZWJTZXR0aW5nc1ByaXZhdGU6OmFwcGx5KCkKICNlbmRpZgogI2lmIEVOQUJM
RShXRUJfQVVESU8pCiAgICAgICAgIHZhbHVlID0gYXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGlu
Z3M6OldlYkF1ZGlvRW5hYmxlZCwgZ2xvYmFsLT5hdHRyaWJ1dGVzLnZhbHVlKFFXZWJTZXR0aW5n
czo6V2ViQXVkaW9FbmFibGVkKSk7Ci0gICAgICAgIFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNldFdlYkF1ZGlvRW5hYmxlZCh2YWx1ZSk7CisgICAgICAgIHNldHRpbmdzLT5zZXRX
ZWJBdWRpb0VuYWJsZWQodmFsdWUpOwogI2VuZGlmCiAKICAgICAgICAgdmFsdWUgPSBhdHRyaWJ1
dGVzLnZhbHVlKFFXZWJTZXR0aW5nczo6Q1NTUmVnaW9uc0VuYWJsZWQsCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmlu
ZGV4IGE0ZmQ1YmQuLjU1ZDU5NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIw
MTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcuY29tPgor
CisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNTA2NjMKKyAgICAgICAgaHR0cDov
L3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUwNjYzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTY1MzAKKworICAgICAgICBJdCBjYXVzZWQgQnVn
IDExNzgyNS4KKworICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuY3BwOgorICAgICAgICAoUVdl
YlNldHRpbmdzUHJpdmF0ZTo6YXBwbHkpOgorCiAyMDEzLTA2LTE3ICBNaWNoYWVsIEJyw7xuaW5n
ICA8bWljaGFlbC5icnVuaW5nQGRpZ2lhLmNvbT4KIAogICAgICAgICBbUXRdIFJlbW92ZSBRdCBz
cGVjaWZpYyBRVEtJVCBmbGFnZ2VkIGNvZGUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dp
bi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggNWM2NGI2OS4u
NDc0NmEzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEzLTA2LTIwICBD
aHJpc3RvcGhlIER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAgICAgICBV
bnJldmlld2VkLCByb2xsaW5nIG91dCByMTUwNjYzCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtp
dC5vcmcvY2hhbmdlc2V0LzE1MDY2MworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTE2NTMwCisKKyAgICAgICAgSXQgY2F1c2VkIEJ1ZyAxMTc4MjUuCisK
KyAgICAgICAgKiBXZWJWaWV3LmNwcDoKKyAgICAgICAgKFdlYlZpZXc6Om5vdGlmeVByZWZlcmVu
Y2VzQ2hhbmdlZCk6CisKIDIwMTMtMDYtMTkgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW1dpbmRvd3NdIENvcnJlY3Qgc3R5bGUgb24gbGFzdCBwYXRjaC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwIGIvU291cmNlL1dlYktp
dC93aW4vV2ViVmlldy5jcHAKaW5kZXggOGNlMzdmMy4uNjM2MjNlNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC93aW4vV2ViVmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViVmll
dy5jcHAKQEAgLTQ5MjMsNyArNDkyMyw3IEBAIEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJlZmVy
ZW5jZXNDaGFuZ2VkKElXZWJOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKICAgICBzZXR0aW5n
cy0+c2V0U2hvd1JlcGFpbnRDb3VudGVyKGVuYWJsZWQpOwogCiAjaWYgRU5BQkxFKFdFQl9BVURJ
TykKLSAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRXZWJBdWRpb0VuYWJsZWQodHJ1ZSk7
CisgICAgc2V0dGluZ3MtPnNldFdlYkF1ZGlvRW5hYmxlZCh0cnVlKTsKICNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQogCiAjaWYgRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDA0OWZkOTYu
LjI2YTQ3ZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMy0wNi0yMCAgQ2hyaXN0
b3BoZSBEdW1leiAgPGNoLmR1bWV6QHNpc2Euc2Ftc3VuZy5jb20+CisKKyAgICAgICAgVW5yZXZp
ZXdlZCwgcm9sbGluZyBvdXQgcjE1MDY2MworICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xNTA2NjMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExNjUzMAorCisgICAgICAgIEl0IGNhdXNlZCBCdWcgMTE3ODI1LgorCisgICAg
ICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVz
dFJ1bm5lcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyk6CisKIDIwMTMtMDYtMjAg
IEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYlByb2Nlc3Mg
aGFuZ3MgbG9hZGluZyBlZmYub3JnIChXYWl0aW5nIGZvcmV2ZXIgb24gYSBzeW5jIFhIUiwgTmV0
d29ya1Byb2Nlc3MgdW5hYmxlIHRvIHNlcnZpY2UgaXQpLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcApp
bmRleCA2MzBkOTZhLi5lZjRhODJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcApAQCAtMjA2LDEx
ICsyMDYsNiBAQCB2b2lkIEluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9y
VGVzdFJ1bm5lcihXZWJQYWdlR3JvdXBQcm94eSogcGFnZQogICAgICAgICBSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjpzZXRDU1NDb21wb3NpdGluZ0VuYWJsZWQoZW5hYmxlZCk7CiAjZW5kaWYKIAot
I2lmIEVOQUJMRShXRUJfQVVESU8pCi0gICAgaWYgKHByZWZlcmVuY2UgPT0gIldlYktpdFdlYkF1
ZGlvRW5hYmxlZCIpCi0gICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFdlYkF1ZGlv
RW5hYmxlZChlbmFibGVkKTsKLSNlbmRpZgotCiAgICAgLy8gTWFwIHRoZSBuYW1lcyB1c2VkIGlu
IExheW91dFRlc3RzIHdpdGggdGhlIG5hbWVzIHVzZWQgaW4gV2ViQ29yZTo6U2V0dGluZ3MgYW5k
IFdlYlByZWZlcmVuY2VzU3RvcmUuCiAjZGVmaW5lIEZPUl9FQUNIX09WRVJSSURFX0JPT0xfUFJF
RkVSRU5DRShtYWNybykgXAogICAgIG1hY3JvKFdlYktpdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdF
bmFibGVkLCBBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCwgYWNjZWxlcmF0ZWRDb21wb3Np
dGluZ0VuYWJsZWQpIFwKQEAgLTIyNSw2ICsyMjAsNyBAQCB2b2lkIEluamVjdGVkQnVuZGxlOjpv
dmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcihXZWJQYWdlR3JvdXBQcm94eSogcGFn
ZQogICAgIG1hY3JvKFdlYktpdFBhZ2VDYWNoZVN1cHBvcnRzUGx1Z2luc1ByZWZlcmVuY2VLZXks
IFBhZ2VDYWNoZVN1cHBvcnRzUGx1Z2lucywgcGFnZUNhY2hlU3VwcG9ydHNQbHVnaW5zKSBcCiAg
ICAgbWFjcm8oV2ViS2l0UGx1Z2luc0VuYWJsZWQsIFBsdWdpbnNFbmFibGVkLCBwbHVnaW5zRW5h
YmxlZCkgXAogICAgIG1hY3JvKFdlYktpdFVzZXNQYWdlQ2FjaGVQcmVmZXJlbmNlS2V5LCBVc2Vz
UGFnZUNhY2hlLCB1c2VzUGFnZUNhY2hlKSBcCisgICAgbWFjcm8oV2ViS2l0V2ViQXVkaW9FbmFi
bGVkLCBXZWJBdWRpb0VuYWJsZWQsIHdlYkF1ZGlvRW5hYmxlZCkgXAogICAgIG1hY3JvKFdlYktp
dFdlYkdMRW5hYmxlZCwgV2ViR0xFbmFibGVkLCB3ZWJHTEVuYWJsZWQpIFwKICAgICBtYWNybyhX
ZWJLaXRYU1NBdWRpdG9yRW5hYmxlZCwgWFNTQXVkaXRvckVuYWJsZWQsIHhzc0F1ZGl0b3JFbmFi
bGVkKSBcCiAgICAgbWFjcm8oV2ViS2l0U2hvdWxkUmVzcGVjdEltYWdlT3JpZW50YXRpb24sIFNo
b3VsZFJlc3BlY3RJbWFnZU9yaWVudGF0aW9uLCBzaG91bGRSZXNwZWN0SW1hZ2VPcmllbnRhdGlv
bikgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmlu
ZGV4IDY3ZTY4MmYuLjAxZTBjMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTI1MjAsNyArMjUyMCw3IEBAIHZvaWQgV2ViUGFnZTo6dXBk
YXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAjZW5kaWYK
IAogI2lmIEVOQUJMRShXRUJfQVVESU8pCi0gICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0
V2ViQXVkaW9FbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tl
eTo6d2ViQXVkaW9FbmFibGVkS2V5KCkpKTsKKyAgICBzZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFi
bGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6d2ViQXVkaW9F
bmFibGVkS2V5KCkpKTsKICNlbmRpZgogCiAgICAgc2V0dGluZ3MtPnNldEFwcGxpY2F0aW9uQ2hy
b21lTW9kZShzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmFwcGxp
Y2F0aW9uQ2hyb21lTW9kZUtleSgpKSk7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9U
b29scy9DaGFuZ2VMb2cKaW5kZXggODYzM2Y1My4uZGNjNGVjYiAxMDA2NDQKLS0tIGEvVG9vbHMv
Q2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEzLTA2
LTIwICBDaHJpc3RvcGhlIER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAg
ICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTUwNjYzCisgICAgICAgIGh0dHA6Ly90cmFj
LndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1MDY2MworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE2NTMwCisKKyAgICAgICAgSXQgY2F1c2VkIEJ1ZyAxMTc4
MjUuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUu
Y3BwOgorICAgICAgICAoRHVtcFJlbmRlclRyZWVDaHJvbWU6OnJlc2V0RGVmYXVsdHNUb0NvbnNp
c3RlbnRWYWx1ZXMpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9UZXN0UnVubmVyRWZs
LmNwcDoKKyAgICAgICAgKFRlc3RSdW5uZXI6Om92ZXJyaWRlUHJlZmVyZW5jZSk6CisKIDIwMTMt
MDYtMjAgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtCbGFja0JlcnJ5XSBIYW5kbGUgdGVzdFJ1bm5lci5zZXRXaWxsU2VuZFJlcXVlc3RSZXR1
cm5zTnVsbCgpIGluIERSVApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1
bXBSZW5kZXJUcmVlQ2hyb21lLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVu
ZGVyVHJlZUNocm9tZS5jcHAKaW5kZXggOGMwNzg2YS4uOTEyODBjMiAxMDA2NDQKLS0tIGEvVG9v
bHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcAorKysgYi9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwCkBAIC0yODQsNiAr
Mjg0LDcgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZUNocm9tZTo6cmVzZXREZWZhdWx0c1RvQ29uc2lz
dGVudFZhbHVlcygpCiAgICAgZXdrX3ZpZXdfc2V0dGluZ19lbmFibGVfaHlwZXJsaW5rX2F1ZGl0
aW5nX3NldChtYWluVmlldygpLCBFSU5BX0ZBTFNFKTsKICAgICBld2tfdmlld19zZXR0aW5nX2lu
Y2x1ZGVfbGlua3NfaW5fZm9jdXNfY2hhaW5fc2V0KG1haW5WaWV3KCksIEVJTkFfRkFMU0UpOwog
ICAgIGV3a192aWV3X3NldHRpbmdfc2NyaXB0c19jYW5fYWNjZXNzX2NsaXBib2FyZF9zZXQobWFp
blZpZXcoKSwgRUlOQV9UUlVFKTsKKyAgICBld2tfdmlld19zZXR0aW5nX3dlYl9hdWRpb19zZXQo
bWFpblZpZXcoKSwgRUlOQV9GQUxTRSk7CiAgICAgZXdrX3ZpZXdfc2V0dGluZ19hbGxvd191bml2
ZXJzYWxfYWNjZXNzX2Zyb21fZmlsZV91cmxzX3NldChtYWluVmlldygpLCBFSU5BX1RSVUUpOwog
ICAgIGV3a192aWV3X3NldHRpbmdfYWxsb3dfZmlsZV9hY2Nlc3NfZnJvbV9maWxlX3VybHNfc2V0
KG1haW5WaWV3KCksIEVJTkFfVFJVRSk7CiAgICAgZXdrX3ZpZXdfc2V0dGluZ19yZXNpemFibGVf
dGV4dGFyZWFzX3NldChtYWluVmlldygpLCBFSU5BX1RSVUUpOwpAQCAtMzI0LDcgKzMyNSw2IEBA
IHZvaWQgRHVtcFJlbmRlclRyZWVDaHJvbWU6OnJlc2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1
ZXMoKQogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0U2hvdWxkVHJhY2tWaXNpdGVk
TGlua3MoZmFsc2UpOwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0VHJhY2tzUmVw
YWludHMobWFpbkZyYW1lKCksIGZhbHNlKTsKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6
OnNldFNlYW1sZXNzSUZyYW1lc0VuYWJsZWQodHJ1ZSk7Ci0gICAgRHVtcFJlbmRlclRyZWVTdXBw
b3J0RWZsOjpzZXRXZWJBdWRpb0VuYWJsZWQoZmFsc2UpOwogCiAgICAgLy8gUmVzZXQgY2FwYWNp
dGllcyBmb3IgdGhlIG1lbW9yeSBjYWNoZSBmb3IgZGVhZCBvYmplY3RzLgogICAgIHN0YXRpYyBj
b25zdCB1bnNpZ25lZCBjYWNoZVRvdGFsQ2FwYWNpdHkgPSAgODE5MiAqIDEwMjQ7CmRpZmYgLS1n
aXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvVGVzdFJ1bm5lckVmbC5jcHAgYi9Ub29scy9E
dW1wUmVuZGVyVHJlZS9lZmwvVGVzdFJ1bm5lckVmbC5jcHAKaW5kZXggODVjNzBkYS4uMjdiMzA0
YyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL1Rlc3RSdW5uZXJFZmwuY3Bw
CisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9UZXN0UnVubmVyRWZsLmNwcApAQCAtNjYx
LDcgKzY2MSw3IEBAIHZvaWQgVGVzdFJ1bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKEpTU3RyaW5n
UmVmIGtleSwgSlNTdHJpbmdSZWYgdmFsdWUpCiAgICAgZWxzZSBpZiAoZXF1YWxzKGtleSwgIldl
YktpdENTU1JlZ2lvbnNFbmFibGVkIikpCiAgICAgICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVm
bDo6c2V0Q1NTUmVnaW9uc0VuYWJsZWQoYnJvd3Nlci0+bWFpblZpZXcoKSwgdG9Cb29sKHZhbHVl
KSk7CiAgICAgZWxzZSBpZiAoZXF1YWxzKGtleSwgIldlYktpdFdlYkF1ZGlvRW5hYmxlZCIpKQot
ICAgICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFdlYkF1ZGlvRW5hYmxlZCh0b0Jv
b2wodmFsdWUpKTsKKyAgICAgICAgZXdrX3ZpZXdfc2V0dGluZ193ZWJfYXVkaW9fc2V0KGJyb3dz
ZXItPm1haW5WaWV3KCksIHRvQm9vbCh2YWx1ZSkpOwogICAgIGVsc2UgaWYgKGVxdWFscyhrZXks
ICJXZWJLaXREaXNwbGF5SW1hZ2VzS2V5IikpCiAgICAgICAgIGV3a192aWV3X3NldHRpbmdfYXV0
b19sb2FkX2ltYWdlc19zZXQoYnJvd3Nlci0+bWFpblZpZXcoKSwgdG9Cb29sKHZhbHVlKSk7CiAg
ICAgZWxzZQo=
</data>
<flag name="commit-queue"
          id="226592"
          type_id="3"
          status="-"
          setter="eflews.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205126</attachid>
            <date>2013-06-20 15:34:48 -0700</date>
            <delta_ts>2013-06-21 00:21:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>117825_webaudiocontext.patch</filename>
            <type>text/plain</type>
            <size>31594</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyZmM0Mjg3Li4xYTUyNWQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEg
QEAKKzIwMTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcu
Y29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIxNTA2NjMpOiBVc2luZyB3ZWJraXRBdWRpb0Nv
bnRleHQgaW4gSW5zcGVjdG9yIG1ha2VzIGl0IHVuZGVmaW5lZCBldmVyeXdoZXJlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc4MjUKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQYXJ0aWFsbHkgcmV2ZXJ0
IHIxNTA2NjMgc28gdGhhdCB3ZSB1c2UgU2V0dGluZ3MgdG8gZW5hYmxlIFdlYkF1ZGlvIGluc3Rl
YWQgb2YKKyAgICAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlcy4KKworICAgICAgICBJbnRyb2R1
Y2UgYSBuZXcgW0VuYWJsZWRCeVNldHRpbmddIElETCBleHRlbmRlZCBhdHRyaWJ1dGUgd2hpY2gg
YmVoYXZlcyBzaW1pbGFybHkgdG8KKyAgICAgICAgdGhlIGV4aXN0aW5nIFtFbmFibGVkQXRSdW50
aW1lXSBidXQgcmVsaWVzIG9uIFNldHRpbmdzIGluc3RlYWQgb2YgUnVudGltZUVuYWJsZWRGZWF0
dXJlcworICAgICAgICB0byBkZXRlcm1pbmUgaWYgdGhlIGZlYXR1cmUgc2hvdWxkIGJlIGVuYWJs
ZWQuIE1ha2UgdXNlIG9mIHRoaXMgbmV3IElETCBhdHRyaWJ1dGUgZm9yCisgICAgICAgIHdlYmtp
dEF1ZGlvQ29udGV4dCBpbnRlcmZhY2UuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBiZWhh
dmlvciBjaGFuZ2UuCisKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQ29udGV4dC5p
ZGw6CisgICAgICAgICogV2ViQ29yZS5leHAuaW46CisgICAgICAgICogV2ViQ29yZS5vcmRlcjoK
KyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOgor
ICAgICAgICAqIGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAgICAgICAoR2Vu
ZXJhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRy
aWJ1dGVzLnR4dDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5w
bDoKKyAgICAgICAgKEdlbmVyYXRlQ29uc3RydWN0b3JBdHRyaWJ1dGUpOgorICAgICAgICAqIGJp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwOgorICAgICAgICAoV2ViQ29yZTo6
anNUZXN0T2JqVGVzdFN1Yk9iakVuYWJsZWRCeVNldHRpbmdDb25zdHJ1Y3Rvcik6CisgICAgICAg
IChXZWJDb3JlOjpzZXRKU1Rlc3RPYmpUZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZ0NvbnN0cnVj
dG9yKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmg6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdE9iai5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RPYmoubW06CisgICAgICAgICgt
W0RPTVRlc3RPYmogVGVzdFN1Yk9iakVuYWJsZWRCeVNldHRpbmddKToKKyAgICAgICAgKC1bRE9N
VGVzdE9iaiBzZXRUZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZzpdKToKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGw6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5p
bjoKKwogMjAxMy0wNi0yMCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+
CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE1MTQ1MS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Db250ZXh0LmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Db250ZXh0LmlkbAppbmRleCA0NmY1MTg2
Li45MDk0ZmNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1
ZGlvQ29udGV4dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b0NvbnRleHQuaWRsCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogWwotICAgIEVuYWJsZWRBdFJ1
bnRpbWUsCisgICAgRW5hYmxlZEJ5U2V0dGluZz1XZWJBdWRpbywKICAgICBDb25kaXRpb25hbD1X
RUJfQVVESU8sCiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgIEN1c3RvbUNvbnN0cnVjdG9yLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmV4cC5pbgppbmRleCA5ZDQ4MTI2Li5iMTBiM2NhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4
cC5pbgpAQCAtMjY4MCwxMCArMjY4MCw2IEBAIF9fWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRG
ZWF0dXJlczM3aXNBdXRob3JTaGFkb3dET01Gb3JBbnlFbGVtZW50RW5hYmxlZEUKIF9fWk43V2Vi
Q29yZTR0b0pTRVBOM0pTQzlFeGVjU3RhdGVFUE5TXzE3SlNET01HbG9iYWxPYmplY3RFUE5TXzEw
U2hhZG93Um9vdEUKICNlbmRpZgogCi0jaWYgRU5BQkxFKFdFQl9BVURJTykKLV9fWk43V2ViQ29y
ZTIyUnVudGltZUVuYWJsZWRGZWF0dXJlczE3aXNXZWJBdWRpb0VuYWJsZWRFCi0jZW5kaWYKLQog
I2lmIEVOQUJMRShESUFMT0dfRUxFTUVOVCkKIF9fWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRG
ZWF0dXJlczIyaXNEaWFsb2dFbGVtZW50RW5hYmxlZEUKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5vcmRlciBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUub3JkZXIK
aW5kZXggMzQzNDEyNi4uYTg0ZTlhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5vcmRlcgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLm9yZGVyCkBAIC00MDc4OSw3ICs0
MDc4OSw2IEBAIF9fWk43V2ViQ29yZTIzUGxhdGZvcm1JbnN0cnVtZW50YXRpb244bV9jbGllbnRF
CiBfX1pON1dlYkNvcmUyMVJlbmRlckxheWVyRmlsdGVySW5mbzExc19maWx0ZXJNYXBFCiBfX1pO
N1dlYkNvcmUyM1JlbmRlclNWR1Jlc291cmNlTWFza2VyMTRzX3Jlc291cmNlVHlwZUUKIF9fWk43
V2ViQ29yZTE1UmVzb3VyY2VSZXF1ZXN0MjNzX2h0dHBQaXBlbGluaW5nRW5hYmxlZEUKLV9fWk43
V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0dXJlczE3aXNXZWJBdWRpb0VuYWJsZWRFCiBfX1pO
N1dlYkNvcmUyMlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMyMmlzQ1NTRXhjbHVzaW9uc0VuYWJsZWRF
CiBfX1pON1dlYkNvcmUyMlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMxOGlzQ1NTU2hhcGVzRW5hYmxl
ZEUKIF9fWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0dXJlczQwaXNMYW5nQXR0cmlidXRl
QXdhcmVGb3JtQ29udHJvbFVJRW5hYmxlZEUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwCmluZGV4IDM2NTgx
NDUuLjRmYTI2NmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMv
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
Z2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcApAQCAtNDksNyArNDksNiBAQCBib29s
IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OmlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQgPSB0cnVl
OwogYm9vbCBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjppc0RhdGFUcmFuc2Zlckl0ZW1zRW5hYmxl
ZCA9IHRydWU7CiBib29sIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OmlzR2VvbG9jYXRpb25FbmFi
bGVkID0gdHJ1ZTsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNJbmRleGVkREJFbmFi
bGVkID0gZmFsc2U7Ci1ib29sIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OmlzV2ViQXVkaW9FbmFi
bGVkID0gZmFsc2U7CiBib29sIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OmlzVG91Y2hFbmFibGVk
ID0gdHJ1ZTsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNEZXZpY2VNb3Rpb25FbmFi
bGVkID0gdHJ1ZTsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNEZXZpY2VPcmllbnRh
dGlvbkVuYWJsZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
Z2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAppbmRleCAyY2JiYTkwLi5lNzQzNWEw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRp
bWVFbmFibGVkRmVhdHVyZXMuaApAQCAtMTUyLDEyICsxNTIsNiBAQCBwdWJsaWM6CiAgICAgc3Rh
dGljIGJvb2wgb3BlbkRhdGFiYXNlU3luY0VuYWJsZWQoKTsKICNlbmRpZgogCi0jaWYgRU5BQkxF
KFdFQl9BVURJTykKLSAgICBzdGF0aWMgdm9pZCBzZXRXZWJBdWRpb0VuYWJsZWQoYm9vbCBpc0Vu
YWJsZWQpIHsgaXNXZWJBdWRpb0VuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KLSAgICBzdGF0aWMgYm9v
bCB3ZWJraXRBdWRpb0NvbnRleHRFbmFibGVkKCkgeyByZXR1cm4gaXNXZWJBdWRpb0VuYWJsZWQ7
IH0KLSAgICBzdGF0aWMgYm9vbCB3ZWJraXRPZmZsaW5lQXVkaW9Db250ZXh0RW5hYmxlZCgpIHsg
cmV0dXJuIGlzV2ViQXVkaW9FbmFibGVkOyB9Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShUT1VDSF9F
VkVOVFMpCiAgICAgc3RhdGljIGJvb2wgdG91Y2hFbmFibGVkKCkgeyByZXR1cm4gaXNUb3VjaEVu
YWJsZWQ7IH0KICAgICBzdGF0aWMgdm9pZCBzZXRUb3VjaEVuYWJsZWQoYm9vbCBpc0VuYWJsZWQp
IHsgaXNUb3VjaEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KQEAgLTMxNyw3ICszMTEsNiBAQCBwcml2
YXRlOgogICAgIHN0YXRpYyBib29sIGlzRGF0YVRyYW5zZmVySXRlbXNFbmFibGVkOwogICAgIHN0
YXRpYyBib29sIGlzR2VvbG9jYXRpb25FbmFibGVkOwogICAgIHN0YXRpYyBib29sIGlzSW5kZXhl
ZERCRW5hYmxlZDsKLSAgICBzdGF0aWMgYm9vbCBpc1dlYkF1ZGlvRW5hYmxlZDsKICAgICBzdGF0
aWMgYm9vbCBpc1RvdWNoRW5hYmxlZDsKICAgICBzdGF0aWMgYm9vbCBpc0RldmljZU1vdGlvbkVu
YWJsZWQ7CiAgICAgc3RhdGljIGJvb2wgaXNEZXZpY2VPcmllbnRhdGlvbkVuYWJsZWQ7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmlu
ZGV4IGZiOGI5ODguLjEyZDQ1Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yMDIzLDIwICsyMDIzLDI5IEBAIHN1YiBH
ZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICJKU1ZhbHVlICR7Z2V0RnVuY3Rpb25OYW1lfShFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgc2xv
dEJhc2UsIFByb3BlcnR5TmFtZSlcbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAie1xuIik7CiAKLSAgICAgICAgICAgICAgICAjIEdsb2JhbCBjb25zdHJ1Y3RvcnMgY2Fu
IGJlIGRpc2FibGVkIGF0IHJ1bnRpbWUuCi0gICAgICAgICAgICAgICAgaWYgKCRhdHRyaWJ1dGUt
PnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkVuYWJsZWRBdFJ1bnRpbWUifSAmJiAk
YXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgPX4gL0NvbnN0cnVjdG9yJC8pIHsKLSAgICAgICAg
ICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIp
OwotICAgICAgICAgICAgICAgICAgICBteSAkZW5hYmxlX2Z1bmN0aW9uID0gR2V0UnVudGltZUVu
YWJsZUZ1bmN0aW9uTmFtZSgkYXR0cmlidXRlLT5zaWduYXR1cmUpOwotICAgICAgICAgICAgICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBpZiAoISR7ZW5hYmxlX2Z1bmN0aW9ufSgpKVxu
Iik7Ci0gICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICByZXR1
cm4ganNVbmRlZmluZWQoKTtcbiIpOwotICAgICAgICAgICAgICAgIH0KLQogICAgICAgICAgICAg
ICAgIGlmICghJGF0dHJpYnV0ZS0+aXNTdGF0aWMgfHwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50
eXBlID1+IC9Db25zdHJ1Y3RvciQvKSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiICAgICR7Y2xhc3NOYW1lfSogY2FzdGVkVGhpcyA9IGpzQ2FzdDwkY2xhc3NOYW1l
Kj4oYXNPYmplY3Qoc2xvdEJhc2UpKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAg
ICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIFVOVVNFRF9QQVJBTShz
bG90QmFzZSk7XG4iKTsKICAgICAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAgICAgICAjIEds
b2JhbCBjb25zdHJ1Y3RvcnMgY2FuIGJlIGRpc2FibGVkIGF0IHJ1bnRpbWUuCisgICAgICAgICAg
ICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSA9fiAvQ29uc3RydWN0b3IkLykg
eworICAgICAgICAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiRW5hYmxlZEF0UnVudGltZSJ9KSB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBBZGRUb0ltcGxJbmNsdWRlcygiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIik7CisgICAg
ICAgICAgICAgICAgICAgICAgICBteSAkZW5hYmxlX2Z1bmN0aW9uID0gR2V0UnVudGltZUVuYWJs
ZUZ1bmN0aW9uTmFtZSgkYXR0cmlidXRlLT5zaWduYXR1cmUpOworICAgICAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgaWYgKCEke2VuYWJsZV9mdW5jdGlvbn0oKSlc
biIpOworICAgICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAg
IHJldHVybiBqc1VuZGVmaW5lZCgpO1xuIik7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzaWYg
KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkVuYWJsZWRCeVNl
dHRpbmcifSkgeworICAgICAgICAgICAgICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIkZy
YW1lLmgiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCJTZXR0
aW5ncy5oIik7CisgICAgICAgICAgICAgICAgICAgICAgICBteSAkZW5hYmxlX2Z1bmN0aW9uID0g
VG9NZXRob2ROYW1lKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkVuYWJsZWRCeVNldHRpbmcifSkgLiAiRW5hYmxlZCI7CisgICAgICAgICAgICAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBjYXN0ZWRUaGlz
LT5pbXBsKCktPmZyYW1lKCkgPyBjYXN0ZWRUaGlzLT5pbXBsKCktPmZyYW1lKCktPnNldHRpbmdz
KCkgOiAwO1xuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwg
IiAgICBpZiAoIXNldHRpbmdzIHx8ICFzZXR0aW5ncy0+JGVuYWJsZV9mdW5jdGlvbigpKVxuIik7
CisgICAgICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7XG4iKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIH0KKwogICAgICAgICAgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJDYWNoZWRBdHRyaWJ1dGUifSkgewogICAgICAgICAgICAgICAg
ICAgICAkbmVlZHNNYXJrQ2hpbGRyZW4gPSAxOwogICAgICAgICAgICAgICAgIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CmluZGV4IDE4
MGVlMzkuLjQyNTkwMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvSURMQXR0cmlidXRlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy9JRExBdHRyaWJ1dGVzLnR4dApAQCAtNTMsNiArNTMsNyBAQCBEb05vdENoZWNrU2VjdXJpdHkK
IERvTm90Q2hlY2tTZWN1cml0eU9uR2V0dGVyCiBEb05vdENoZWNrU2VjdXJpdHlPblNldHRlcgog
RW5hYmxlZEF0UnVudGltZT0qCitFbmFibGVkQnlTZXR0aW5nPSoKIEVuZm9yY2VSYW5nZQogRXZl
bnRUYXJnZXQKIEV4dGVuZHNET01HbG9iYWxPYmplY3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBsIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNzLWlkbHMucGwKaW5kZXggZTc2YzQ5Ni4uYzVjZDQ5
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNz
LWlkbHMucGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNz
LWlkbHMucGwKQEAgLTE4Myw3ICsxODMsNyBAQCBzdWIgR2VuZXJhdGVDb25zdHJ1Y3RvckF0dHJp
YnV0ZQogICAgIG15ICRjb2RlID0gIiAgICAiOwogICAgIG15IEBleHRlbmRlZEF0dHJpYnV0ZXNM
aXN0OwogICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZU5hbWUgKGtleXMgJXskZXh0ZW5kZWRBdHRy
aWJ1dGVzfSkgewotICAgICAgbmV4dCB1bmxlc3MgKCRhdHRyaWJ1dGVOYW1lIGVxICJDb25kaXRp
b25hbCIgfHwgJGF0dHJpYnV0ZU5hbWUgZXEgIkVuYWJsZWRBdFJ1bnRpbWUiIHx8ICRhdHRyaWJ1
dGVOYW1lIGVxICJFbmFibGVkUGVyQ29udGV4dCIpOworICAgICAgbmV4dCB1bmxlc3MgKCRhdHRy
aWJ1dGVOYW1lIGVxICJDb25kaXRpb25hbCIgfHwgJGF0dHJpYnV0ZU5hbWUgZXEgIkVuYWJsZWRB
dFJ1bnRpbWUiIHx8ICRhdHRyaWJ1dGVOYW1lIGVxICJFbmFibGVkQnlTZXR0aW5nIik7CiAgICAg
ICBteSAkZXh0ZW5kZWRBdHRyaWJ1dGUgPSAkYXR0cmlidXRlTmFtZTsKICAgICAgICRleHRlbmRl
ZEF0dHJpYnV0ZSAuPSAiPSIgLiAkZXh0ZW5kZWRBdHRyaWJ1dGVzLT57JGF0dHJpYnV0ZU5hbWV9
IHVubGVzcyAkZXh0ZW5kZWRBdHRyaWJ1dGVzLT57JGF0dHJpYnV0ZU5hbWV9IGVxICJWQUxVRV9J
U19NSVNTSU5HIjsKICAgICAgIHB1c2goQGV4dGVuZGVkQXR0cmlidXRlc0xpc3QsICRleHRlbmRl
ZEF0dHJpYnV0ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0T2JqLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RPYmouY3BwCmluZGV4IGEwNTZlMTcuLmEzNjg1NzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3Bw
CkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiRGljdGlvbmFyeS5oIgogI2luY2x1ZGUgIkRv
Y3VtZW50LmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgorI2luY2x1ZGUgIkZyYW1lLmgi
CiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5j
bHVkZSAiSlNET01TdHJpbmdMaXN0LmgiCkBAIC00OCw2ICs0OSw3IEBACiAjaW5jbHVkZSAiU2Ny
aXB0Q2FsbFN0YWNrRmFjdG9yeS5oIgogI2luY2x1ZGUgIlNjcmlwdFByb2ZpbGUuaCIKICNpbmNs
dWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKKyNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2lu
Y2x1ZGUgIlRlc3RPYmouaCIKICNpbmNsdWRlICJib29sLmgiCiAjaW5jbHVkZSA8cnVudGltZS9F
cnJvci5oPgpAQCAtNzksNiArODEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0T2JqVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAicmVhZE9ubHlMb25nQXR0ciIsIERvbnREZWxl
dGUgfCBSZWFkT25seSwgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFs
dWVGdW5jPihqc1Rlc3RPYmpSZWFkT25seUxvbmdBdHRyKSwgKGludHB0cl90KTAsIE5vSW50cmlu
c2ljIH0sCiAgICAgeyAicmVhZE9ubHlTdHJpbmdBdHRyIiwgRG9udERlbGV0ZSB8IFJlYWRPbmx5
LCAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVz
dE9ialJlYWRPbmx5U3RyaW5nQXR0ciksIChpbnRwdHJfdCkwLCBOb0ludHJpbnNpYyB9LAogICAg
IHsgInJlYWRPbmx5VGVzdE9iakF0dHIiLCBEb250RGVsZXRlIHwgUmVhZE9ubHksIChpbnRwdHJf
dClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T2JqUmVhZE9u
bHlUZXN0T2JqQXR0ciksIChpbnRwdHJfdCkwLCBOb0ludHJpbnNpYyB9LAorICAgIHsgIlRlc3RT
dWJPYmpFbmFibGVkQnlTZXR0aW5nIiwgRG9udEVudW0sIChpbnRwdHJfdClzdGF0aWNfY2FzdDxQ
cm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T2JqVGVzdFN1Yk9iakVuYWJsZWRCeVNl
dHRpbmdDb25zdHJ1Y3RvciksIChpbnRwdHJfdClzZXRKU1Rlc3RPYmpUZXN0U3ViT2JqRW5hYmxl
ZEJ5U2V0dGluZ0NvbnN0cnVjdG9yLCBOb0ludHJpbnNpYyB9LAogICAgIHsgImVudW1BdHRyIiwg
RG9udERlbGV0ZSwgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVG
dW5jPihqc1Rlc3RPYmpFbnVtQXR0ciksIChpbnRwdHJfdClzZXRKU1Rlc3RPYmpFbnVtQXR0ciwg
Tm9JbnRyaW5zaWMgfSwKICAgICB7ICJieXRlQXR0ciIsIERvbnREZWxldGUsIChpbnRwdHJfdClz
dGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T2JqQnl0ZUF0dHIp
LCAoaW50cHRyX3Qpc2V0SlNUZXN0T2JqQnl0ZUF0dHIsIE5vSW50cmluc2ljIH0sCiAgICAgeyAi
b2N0ZXRBdHRyIiwgRG9udERlbGV0ZSwgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xv
dDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RPYmpPY3RldEF0dHIpLCAoaW50cHRyX3Qpc2V0SlNUZXN0
T2JqT2N0ZXRBdHRyLCBOb0ludHJpbnNpYyB9LApAQCAtNDU1LDYgKzQ1OCwxNiBAQCBKU1ZhbHVl
IGpzVGVzdE9iakNvbnN0cnVjdG9yVGVzdFN1Yk9iaihFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUg
c2xvdEJhc2UsIFByb3BlcgogfQogCiAKK0pTVmFsdWUganNUZXN0T2JqVGVzdFN1Yk9iakVuYWJs
ZWRCeVNldHRpbmdDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgc2xvdEJhc2Us
IFByb3BlcnR5TmFtZSkKK3sKKyAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0Nhc3Q8SlNU
ZXN0T2JqKj4oYXNPYmplY3Qoc2xvdEJhc2UpKTsKKyAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBj
YXN0ZWRUaGlzLT5pbXBsKCktPmZyYW1lKCkgPyBjYXN0ZWRUaGlzLT5pbXBsKCktPmZyYW1lKCkt
PnNldHRpbmdzKCkgOiAwOworICAgIGlmICghc2V0dGluZ3MgfHwgIXNldHRpbmdzLT50ZXN0U2V0
dGluZ0VuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgcmV0dXJu
IEpTVGVzdFN1Yk9iajo6Z2V0Q29uc3RydWN0b3IoZXhlYywgY2FzdGVkVGhpcy0+Z2xvYmFsT2Jq
ZWN0KCkpOworfQorCisKIEpTVmFsdWUganNUZXN0T2JqRW51bUF0dHIoRXhlY1N0YXRlKiBleGVj
LCBKU1ZhbHVlIHNsb3RCYXNlLCBQcm9wZXJ0eU5hbWUpCiB7CiAgICAgSlNUZXN0T2JqKiBjYXN0
ZWRUaGlzID0ganNDYXN0PEpTVGVzdE9iaio+KGFzT2JqZWN0KHNsb3RCYXNlKSk7CkBAIC0xMTA2
LDYgKzExMTksMTQgQEAgdm9pZCBzZXRKU1Rlc3RPYmpDb25zdHJ1Y3RvclN0YXRpY1N0cmluZ0F0
dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCosIEpTVmFsdWUKIH0KIAogCit2b2lkIHNldEpT
VGVzdE9ialRlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBl
eGVjLCBKU09iamVjdCogdGhpc09iamVjdCwgSlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBVTlVTRURf
UEFSQU0oZXhlYyk7CisgICAgLy8gU2hhZG93aW5nIGEgYnVpbHQtaW4gY29uc3RydWN0b3IKKyAg
ICBqc0Nhc3Q8SlNUZXN0T2JqKj4odGhpc09iamVjdCktPnB1dERpcmVjdChleGVjLT52bSgpLCBJ
ZGVudGlmaWVyKGV4ZWMsICJUZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZyIpLCB2YWx1ZSk7Cit9
CisKKwogdm9pZCBzZXRKU1Rlc3RPYmpFbnVtQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0
KiB0aGlzT2JqZWN0LCBKU1ZhbHVlIHZhbHVlKQogewogICAgIFVOVVNFRF9QQVJBTShleGVjKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RPYmouaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RP
YmouaAppbmRleCA3YTJkNmVjLi42M2E4YmI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oCkBAIC0yNDEsNiArMjQxLDggQEAg
SlNDOjpKU1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVjdG9yU3RhdGljUmVhZE9ubHlMb25nQXR0cihK
U0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlMKIEpTQzo6SlNWYWx1ZSBqc1Rlc3RPYmpDb25zdHJ1Y3Rv
clN0YXRpY1N0cmluZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIEpTQzo6UHJv
cGVydHlOYW1lKTsKIHZvaWQgc2V0SlNUZXN0T2JqQ29uc3RydWN0b3JTdGF0aWNTdHJpbmdBdHRy
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6SlNWYWx1ZSk7CiBKU0M6OkpT
VmFsdWUganNUZXN0T2JqQ29uc3RydWN0b3JUZXN0U3ViT2JqKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CitKU0M6OkpTVmFsdWUganNUZXN0T2JqVGVz
dFN1Yk9iakVuYWJsZWRCeVNldHRpbmdDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RPYmpUZXN0U3ViT2Jq
RW5hYmxlZEJ5U2V0dGluZ0NvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6SlNWYWx1ZSk7CiBKU0M6OkpTVmFsdWUganNUZXN0T2JqRW51bUF0dHIoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKIHZvaWQgc2V0SlNU
ZXN0T2JqRW51bUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpKU1Zh
bHVlKTsKIEpTQzo6SlNWYWx1ZSBqc1Rlc3RPYmpCeXRlQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdE9iai5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdE9iai5oCmluZGV4IGUwM2QwMjUu
LjljOGNiZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9PYmpDL0RPTVRlc3RPYmouaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvT2JqQy9ET01UZXN0T2JqLmgKQEAgLTM5LDYgKzM5LDcgQEAKIEBjbGFzcyBET01UZXN0
T2JqZWN0QUNvbnN0cnVjdG9yOwogQGNsYXNzIERPTVRlc3RPYmplY3RCQ29uc3RydWN0b3I7CiBA
Y2xhc3MgRE9NVGVzdE9iamVjdENDb25zdHJ1Y3RvcjsKK0BjbGFzcyBET01UZXN0U3ViT2JqQ29u
c3RydWN0b3I7CiBAY2xhc3MgRE9NYW55OwogQGNsYXNzIERPTWJvb2w7CiBAY2xhc3MgTlNTdHJp
bmc7CkBAIC02Niw2ICs2Nyw3IEBAIGVudW0gewogQHByb3BlcnR5KHJlYWRvbmx5KSBpbnQgcmVh
ZE9ubHlMb25nQXR0cjsKIEBwcm9wZXJ0eShyZWFkb25seSwgY29weSkgTlNTdHJpbmcgKnJlYWRP
bmx5U3RyaW5nQXR0cjsKIEBwcm9wZXJ0eShyZWFkb25seSwgcmV0YWluKSBET01UZXN0T2JqICpy
ZWFkT25seVRlc3RPYmpBdHRyOworQHByb3BlcnR5KHJldGFpbikgRE9NVGVzdFN1Yk9iakNvbnN0
cnVjdG9yICpUZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZzsKIEBwcm9wZXJ0eSBjaGFyIGJ5dGVB
dHRyOwogQHByb3BlcnR5IHVuc2lnbmVkIGNoYXIgb2N0ZXRBdHRyOwogQHByb3BlcnR5IHNob3J0
IHNob3J0QXR0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9PYmpDL0RPTVRlc3RPYmoubW0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvT2JqQy9ET01UZXN0T2JqLm1tCmluZGV4IGZlODMxMTguLjlhYTJlNDkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RPYmou
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVz
dE9iai5tbQpAQCAtNDUsNiArNDUsNyBAQAogI2ltcG9ydCAiRE9NVGVzdE9iamVjdEFDb25zdHJ1
Y3RvckludGVybmFsLmgiCiAjaW1wb3J0ICJET01UZXN0T2JqZWN0QkNvbnN0cnVjdG9ySW50ZXJu
YWwuaCIKICNpbXBvcnQgIkRPTVRlc3RPYmplY3RDQ29uc3RydWN0b3JJbnRlcm5hbC5oIgorI2lt
cG9ydCAiRE9NVGVzdFN1Yk9iakNvbnN0cnVjdG9ySW50ZXJuYWwuaCIKICNpbXBvcnQgIkRPTWFu
eUludGVybmFsLmgiCiAjaW1wb3J0ICJET01ib29sSW50ZXJuYWwuaCIKICNpbXBvcnQgIkRpY3Rp
b25hcnkuaCIKQEAgLTY1LDYgKzY2LDcgQEAKICNpbXBvcnQgIlRlc3RPYmplY3RBQ29uc3RydWN0
b3IuaCIKICNpbXBvcnQgIlRlc3RPYmplY3RCQ29uc3RydWN0b3IuaCIKICNpbXBvcnQgIlRlc3RP
YmplY3RDQ29uc3RydWN0b3IuaCIKKyNpbXBvcnQgIlRlc3RTdWJPYmpDb25zdHJ1Y3Rvci5oIgog
I2ltcG9ydCAiVGhyZWFkQ2hlY2suaCIKICNpbXBvcnQgIldlYkNvcmVPYmpDRXh0cmFzLmgiCiAj
aW1wb3J0ICJXZWJTY3JpcHRPYmplY3RQcml2YXRlLmgiCkBAIC0xMTEsNiArMTEzLDIwIEBACiAg
ICAgcmV0dXJuIGtpdChXVEY6OmdldFB0cihJTVBMLT5yZWFkT25seVRlc3RPYmpBdHRyKCkpKTsK
IH0KIAorLSAoRE9NVGVzdFN1Yk9iakNvbnN0cnVjdG9yICopVGVzdFN1Yk9iakVuYWJsZWRCeVNl
dHRpbmcKK3sKKyAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUgc3RhdGU7CisgICAg
cmV0dXJuIGtpdChXVEY6OmdldFB0cihJTVBMLT50ZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZygp
KSk7Cit9CisKKy0gKHZvaWQpc2V0VGVzdFN1Yk9iakVuYWJsZWRCeVNldHRpbmc6KERPTVRlc3RT
dWJPYmpDb25zdHJ1Y3RvciAqKW5ld1Rlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nCit7CisgICAg
V2ViQ29yZTo6SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOworICAgIEFTU0VSVChuZXdUZXN0
U3ViT2JqRW5hYmxlZEJ5U2V0dGluZyk7CisKKyAgICBJTVBMLT5zZXRUZXN0U3ViT2JqRW5hYmxl
ZEJ5U2V0dGluZyhjb3JlKG5ld1Rlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nKSk7Cit9CisKIC0g
KGNoYXIpYnl0ZUF0dHIKIHsKICAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUgc3Rh
dGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVz
dE9iai5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5p
ZGwKaW5kZXggMDY3OWYzNy4uNzFjYWU4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbApAQCAtNDMsNiArNDMsNyBAQCBlbnVtIFRlc3RF
bnVtVHlwZSB7ICIiLCAiRW51bVZhbHVlMSIsICJFbnVtVmFsdWUyIiwgIkVudW1WYWx1ZTMiIH07
CiAgICAgc3RhdGljIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nICAgICBzdGF0aWNSZWFkT25seUxv
bmdBdHRyOwogICAgIHN0YXRpYyBhdHRyaWJ1dGUgRE9NU3RyaW5nICAgICAgICAgc3RhdGljU3Ry
aW5nQXR0cjsKICAgICBzdGF0aWMgcmVhZG9ubHkgYXR0cmlidXRlIFRlc3RTdWJPYmpDb25zdHJ1
Y3RvciBUZXN0U3ViT2JqOworICAgIFtFbmFibGVkQnlTZXR0aW5nPVRlc3RTZXR0aW5nXSBhdHRy
aWJ1dGUgVGVzdFN1Yk9iakNvbnN0cnVjdG9yIFRlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nOwog
ICAgIGF0dHJpYnV0ZSBUZXN0RW51bVR5cGUgICAgICAgICAgICAgZW51bUF0dHI7CiAgICAgYXR0
cmlidXRlIGJ5dGUgICAgICAgICAgICAgICAgICAgICBieXRlQXR0cjsKICAgICBhdHRyaWJ1dGUg
b2N0ZXQgICAgICAgICAgICAgICAgICAgIG9jdGV0QXR0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmlu
CmluZGV4IDEyMmZiMDUuLmVhYjE0YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
U2V0dGluZ3MuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgpAQCAtMTE1
LDYgKzExNSw3IEBAIHByaXZpbGVnZWRXZWJHTEV4dGVuc2lvbnNFbmFibGVkIGluaXRpYWw9ZmFs
c2UKIGFjY2VsZXJhdGVkMmRDYW52YXNFbmFibGVkIGluaXRpYWw9ZmFsc2UKIGFudGlhbGlhc2Vk
MmRDYW52YXNFbmFibGVkIGluaXRpYWw9dHJ1ZQogbG9hZERlZmVycmluZ0VuYWJsZWQgaW5pdGlh
bD10cnVlCit3ZWJBdWRpb0VuYWJsZWQgaW5pdGlhbD1mYWxzZQogcGFnaW5hdGVEdXJpbmdMYXlv
dXRFbmFibGVkIGluaXRpYWw9ZmFsc2UKIGZ1bGxTY3JlZW5FbmFibGVkIGluaXRpYWw9ZmFsc2Us
IGNvbmRpdGlvbmFsPUZVTExTQ1JFRU5fQVBJCiBhc3luY2hyb25vdXNTcGVsbENoZWNraW5nRW5h
YmxlZCBpbml0aWFsPWZhbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5kZXggZDkzNDIxOC4uMmFjMDgzMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTA2LTIwICBDaHJpc3RvcGhl
IER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9O
IChyMTUwNjYzKTogVXNpbmcgd2Via2l0QXVkaW9Db250ZXh0IGluIEluc3BlY3RvciBtYWtlcyBp
dCB1bmRlZmluZWQgZXZlcnl3aGVyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTE3ODI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVXNlIFNldHRpbmdzIHRvIGVuYWJsZSBXZWIgQXVkaW8gaW5zdGVhZCBv
ZiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRHVt
cFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9y
dEVmbDo6c2V0V2ViQXVkaW9FbmFibGVkKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1w
UmVuZGVyVHJlZVN1cHBvcnRFZmwuaDoKKyAgICAgICAgKiBld2svZXdrX3ZpZXcuY3BwOgorICAg
ICAgICAoX2V3a192aWV3X3ByaXZfbmV3KToKKwogMjAxMy0wNi0xNyAgU2Vva2p1IEt3b24gIDxz
ZW9ranUua3dvbkBnbWFpbC5jb20+CiAKICAgICAgICAgW0VGTF0gUmVtb3ZlIHVubmVlZGVkIFdl
YkNvcmUgbmFtZXNwYWNlIGluIEZyYW1lTG9hZGVyQ2xpZW50RWZsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuY3Bw
IGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0
RWZsLmNwcAppbmRleCA3NDkwYWM3Li44YzM2MDY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5j
cHAKQEAgLTMyNCwxMSArMzI0LDE0IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpz
ZXRTZWFtbGVzc0lGcmFtZXNFbmFibGVkKGJvb2wgZW5hYmxlZCkKICNlbmRpZgogfQogCi12b2lk
IER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0V2ViQXVkaW9FbmFibGVkKGJvb2wgZW5hYmxl
ZCkKK3ZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRXZWJBdWRpb0VuYWJsZWQoRXZh
c19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCkKIHsKICNpZiBFTkFCTEUoV0VCX0FVRElP
KQotICAgIFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFdlYkF1ZGlvRW5hYmxl
ZChlbmFibGVkKTsKKyAgICBEUlRfU1VQUFJUX1BBR0VfR0VUX09SX1JFVFVSTihld2tWaWV3LCBw
YWdlKTsKKworICAgIHBhZ2UtPnNldHRpbmdzKCktPnNldFdlYkF1ZGlvRW5hYmxlZChlbmFibGVk
KTsKICNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGV3a1ZpZXcpOwogICAgIFVOVVNFRF9QQVJBTShl
bmFibGVkKTsKICNlbmRpZgogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29y
ZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9X
ZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuaAppbmRleCBkYzYxZWE2Li4z
YmMyYjRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1w
UmVuZGVyVHJlZVN1cHBvcnRFZmwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3Vw
cG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuaApAQCAtODEsNyArODEsNyBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIHZvaWQgc2V0Q1NTR3JpZExheW91dEVuYWJsZWQoY29uc3QgRXZhc19PYmpl
Y3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCk7CiAgICAgc3RhdGljIHZvaWQgc2V0Q1NTUmVnaW9u
c0VuYWJsZWQoY29uc3QgRXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCk7CiAgICAg
c3RhdGljIHZvaWQgc2V0U2VhbWxlc3NJRnJhbWVzRW5hYmxlZChib29sKTsKLSAgICBzdGF0aWMg
dm9pZCBzZXRXZWJBdWRpb0VuYWJsZWQoYm9vbCk7CisgICAgc3RhdGljIHZvaWQgc2V0V2ViQXVk
aW9FbmFibGVkKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBib29sKTsKIAogICAgIHN0YXRpYyB2b2lk
IGZvcmNlTGF5b3V0KEV2YXNfT2JqZWN0KiBld2tGcmFtZSk7CiAgICAgc3RhdGljIHZvaWQgc2V0
VHJhY2tzUmVwYWludHMoRXZhc19PYmplY3QqIGV3a0ZyYW1lLCBib29sIGVuYWJsZWQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcCBiL1NvdXJjZS9XZWJL
aXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKaW5kZXggMmE3YmQ4OS4uYWIyNzRiNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L2VmbC9ld2svZXdrX3ZpZXcuY3BwCkBAIC03NTksNyArNzU5LDcgQEAgc3RhdGljIEV3a19WaWV3
X1ByaXZhdGVfRGF0YSogX2V3a192aWV3X3ByaXZfbmV3KEV3a19WaWV3X1NtYXJ0X0RhdGEqIHNt
YXJ0RGF0YSkKICAgICBwcml2LT5wYWdlU2V0dGluZ3MtPnNldFVzZXNQYWdlQ2FjaGUodHJ1ZSk7
CiAgICAgcHJpdi0+cGFnZVNldHRpbmdzLT5zZXRVc2VzRW5jb2RpbmdEZXRlY3RvcihmYWxzZSk7
CiAjaWYgRU5BQkxFKFdFQl9BVURJTykKLSAgICBXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzZXRXZWJBdWRpb0VuYWJsZWQoZmFsc2UpOworICAgIHByaXYtPnBhZ2VTZXR0aW5ncy0+
c2V0V2ViQXVkaW9FbmFibGVkKGZhbHNlKTsKICNlbmRpZgogICAgIHByaXYtPnBhZ2VTZXR0aW5n
cy0+c2V0V2ViR0xFbmFibGVkKHRydWUpOwogICAgIHByaXYtPnBhZ2VTZXR0aW5ncy0+c2V0WFNT
QXVkaXRvckVuYWJsZWQodHJ1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKaW5kZXggNmY4ZmY0NS4uYzM0MGUw
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEzLTA2LTIwICBDaHJpc3Rv
cGhlIER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAgICAgICBSRUdSRVNT
SU9OIChyMTUwNjYzKTogVXNpbmcgd2Via2l0QXVkaW9Db250ZXh0IGluIEluc3BlY3RvciBtYWtl
cyBpdCB1bmRlZmluZWQgZXZlcnl3aGVyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVXNlIFNldHRpbmdzIHRvIGVuYWJsZSBXZWIgQXVkaW8gaW5zdGVh
ZCBvZiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzLgorCisgICAgICAgICogd2Via2l0L3dlYmtpdHdl
YnZpZXcuY3BwOgorICAgICAgICAod2Via2l0X3dlYl92aWV3X3NldHRpbmdzX25vdGlmeSk6CisK
IDIwMTMtMDYtMTggIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFVucmV2aWV3ZWQuIFVwZGF0ZSBORVdTIGFuZCBWZXJzaW9ucy5tNCBmb3IgMi4x
LjIgcmVsZWFzZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcApp
bmRleCBlYzUwYTdiLi5jMjkyNTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJr
aXQvd2Via2l0d2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnZpZXcuY3BwCkBAIC0zNzE4LDcgKzM3MTgsNyBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2Vi
X3ZpZXdfc2V0dGluZ3Nfbm90aWZ5KFdlYktpdFdlYlNldHRpbmdzKiB3ZWJTZXR0aW5ncywgR1Bh
cgogCiAjaWYgRU5BQkxFKFdFQl9BVURJTykKICAgICBlbHNlIGlmIChuYW1lID09IGdfaW50ZXJu
X3N0cmluZygiZW5hYmxlLXdlYmF1ZGlvIikpCi0gICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OnNldFdlYkF1ZGlvRW5hYmxlZChnX3ZhbHVlX2dldF9ib29sZWFuKCZ2YWx1ZSkpOworICAg
ICAgICBzZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVkKGdfdmFsdWVfZ2V0X2Jvb2xlYW4oJnZh
bHVlKSk7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShTTU9PVEhfU0NST0xMSU5HKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nCmluZGV4IGZhYzllOGMuLjMyOWRlNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFj
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NSBAQAorMjAxMy0wNi0yMCAgQ2hyaXN0b3BoZSBEdW1leiAgPGNoLmR1bWV6QHNpc2Euc2Ftc3Vu
Zy5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTiAocjE1MDY2Myk6IFVzaW5nIHdlYmtpdEF1ZGlv
Q29udGV4dCBpbiBJbnNwZWN0b3IgbWFrZXMgaXQgdW5kZWZpbmVkIGV2ZXJ5d2hlcmUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzgyNQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBTZXR0aW5ncyB0
byBlbmFibGUgV2ViIEF1ZGlvIGluc3RlYWQgb2YgUnVudGltZUVuYWJsZWRGZWF0dXJlcy4KKwor
ICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJlZmVy
ZW5jZXNDaGFuZ2VkOl0pOgorCiAyMDEzLTA2LTE5ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxh
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSB0aGUgUGxhdGZvcm1FdmVudCB0aW1lc3RhbXAg
d2hlbiBjcmVhdGluZyBhIERPTSBFdmVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1t
CmluZGV4IGFhOWZjMjQuLjI4NzY2ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcu
bW0KQEAgLTE1MDcsNyArMTUwNyw3IEBAIHN0YXRpYyBib29sIG5lZWRzU2VsZlJldGFpbldoaWxl
TG9hZGluZ1F1aXJrKCkKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRDU1NSZWdpb25z
RW5hYmxlZChbcHJlZmVyZW5jZXMgY3NzUmVnaW9uc0VuYWJsZWRdKTsKICAgICBSdW50aW1lRW5h
YmxlZEZlYXR1cmVzOjpzZXRDU1NDb21wb3NpdGluZ0VuYWJsZWQoW3ByZWZlcmVuY2VzIGNzc0Nv
bXBvc2l0aW5nRW5hYmxlZF0pOwogI2lmIEVOQUJMRShXRUJfQVVESU8pCi0gICAgUnVudGltZUVu
YWJsZWRGZWF0dXJlczo6c2V0V2ViQXVkaW9FbmFibGVkKFtwcmVmZXJlbmNlcyB3ZWJBdWRpb0Vu
YWJsZWRdKTsKKyAgICBzZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVkKFtwcmVmZXJlbmNlcyB3
ZWJBdWRpb0VuYWJsZWRdKTsKICNlbmRpZgogI2lmIEVOQUJMRShJRlJBTUVfU0VBTUxFU1MpCiAg
ICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0U2VhbWxlc3NJRnJhbWVzRW5hYmxlZChbcHJl
ZmVyZW5jZXMgc2VhbWxlc3NJRnJhbWVzRW5hYmxlZF0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJz
ZXR0aW5ncy5jcHAKaW5kZXggZThiNzllOS4uNzM0NGJhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9x
d2Vic2V0dGluZ3MuY3BwCkBAIC0xNzUsNyArMTc1LDcgQEAgdm9pZCBRV2ViU2V0dGluZ3NQcml2
YXRlOjphcHBseSgpCiAjZW5kaWYKICNpZiBFTkFCTEUoV0VCX0FVRElPKQogICAgICAgICB2YWx1
ZSA9IGF0dHJpYnV0ZXMudmFsdWUoUVdlYlNldHRpbmdzOjpXZWJBdWRpb0VuYWJsZWQsIGdsb2Jh
bC0+YXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6OldlYkF1ZGlvRW5hYmxlZCkpOwotICAg
ICAgICBXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRXZWJBdWRpb0VuYWJsZWQo
dmFsdWUpOworICAgICAgICBzZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVkKHZhbHVlKTsKICNl
bmRpZgogCiAgICAgICAgIHZhbHVlID0gYXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6OkNT
U1JlZ2lvbnNFbmFibGVkLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRleCBhNGZkNWJkLi5kMjZkNDc1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEzLTA2LTIwICBDaHJpc3RvcGhlIER1bWV6
ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMTUw
NjYzKTogVXNpbmcgd2Via2l0QXVkaW9Db250ZXh0IGluIEluc3BlY3RvciBtYWtlcyBpdCB1bmRl
ZmluZWQgZXZlcnl3aGVyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTE3ODI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVXNlIFNldHRpbmdzIHRvIGVuYWJsZSBXZWIgQXVkaW8gaW5zdGVhZCBvZiBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzLgorCisgICAgICAgICogQXBpL3F3ZWJzZXR0aW5ncy5jcHA6Cisg
ICAgICAgIChRV2ViU2V0dGluZ3NQcml2YXRlOjphcHBseSk6CisKIDIwMTMtMDYtMTcgIE1pY2hh
ZWwgQnLDvG5pbmcgIDxtaWNoYWVsLmJydW5pbmdAZGlnaWEuY29tPgogCiAgICAgICAgIFtRdF0g
UmVtb3ZlIFF0IHNwZWNpZmljIFFUS0lUIGZsYWdnZWQgY29kZS4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwppbmRl
eCA1YzY0YjY5Li5kOTkxNGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIw
MTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcuY29tPgor
CisgICAgICAgIFJFR1JFU1NJT04gKHIxNTA2NjMpOiBVc2luZyB3ZWJraXRBdWRpb0NvbnRleHQg
aW4gSW5zcGVjdG9yIG1ha2VzIGl0IHVuZGVmaW5lZCBldmVyeXdoZXJlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc4MjUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgU2V0dGluZ3MgdG8gZW5hYmxl
IFdlYiBBdWRpbyBpbnN0ZWFkIG9mIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuCisKKyAgICAgICAg
KiBXZWJWaWV3LmNwcDoKKyAgICAgICAgKFdlYlZpZXc6Om5vdGlmeVByZWZlcmVuY2VzQ2hhbmdl
ZCk6CisKIDIwMTMtMDYtMTkgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAK
ICAgICAgICAgW1dpbmRvd3NdIENvcnJlY3Qgc3R5bGUgb24gbGFzdCBwYXRjaC4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2Vi
Vmlldy5jcHAKaW5kZXggOGNlMzdmMy4uMzQ1MzU0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC93aW4vV2ViVmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViVmlldy5jcHAKQEAg
LTQ5MjMsNyArNDkyMyw3IEBAIEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFu
Z2VkKElXZWJOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKICAgICBzZXR0aW5ncy0+c2V0U2hv
d1JlcGFpbnRDb3VudGVyKGVuYWJsZWQpOwogCiAjaWYgRU5BQkxFKFdFQl9BVURJTykKLSAgICBS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRXZWJBdWRpb0VuYWJsZWQodHJ1ZSk7CisgICAgc2V0
dGluZ3MtPjpzZXRXZWJBdWRpb0VuYWJsZWQodHJ1ZSk7CiAjZW5kaWYgLy8gRU5BQkxFKFdFQl9B
VURJTykKIAogI2lmIEVOQUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAwNDlmZDk2Li41YTRhNzRh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTMtMDYtMjAgIENocmlzdG9waGUgRHVt
ZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIx
NTA2NjMpOiBVc2luZyB3ZWJraXRBdWRpb0NvbnRleHQgaW4gSW5zcGVjdG9yIG1ha2VzIGl0IHVu
ZGVmaW5lZCBldmVyeXdoZXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMTc4MjUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBVc2UgU2V0dGluZ3MgdG8gZW5hYmxlIFdlYiBBdWRpbyBpbnN0ZWFkIG9mIFJ1
bnRpbWVFbmFibGVkRmVhdHVyZXMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0luamVjdGVkQnVuZGxlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGU6
Om92ZXJyaWRlQm9vbFByZWZlcmVuY2VGb3JUZXN0UnVubmVyKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0
ZVByZWZlcmVuY2VzKToKKwogMjAxMy0wNi0yMCAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgV2ViUHJvY2VzcyBoYW5ncyBsb2FkaW5nIGVmZi5vcmcgKFdhaXRp
bmcgZm9yZXZlciBvbiBhIHN5bmMgWEhSLCBOZXR3b3JrUHJvY2VzcyB1bmFibGUgdG8gc2Vydmlj
ZSBpdCkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0luamVjdGVkQnVuZGxlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCmluZGV4IDYzMGQ5NmEuLmVmNGE4MmYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRC
dW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
SW5qZWN0ZWRCdW5kbGUuY3BwCkBAIC0yMDYsMTEgKzIwNiw2IEBAIHZvaWQgSW5qZWN0ZWRCdW5k
bGU6Om92ZXJyaWRlQm9vbFByZWZlcmVuY2VGb3JUZXN0UnVubmVyKFdlYlBhZ2VHcm91cFByb3h5
KiBwYWdlCiAgICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldENTU0NvbXBvc2l0aW5n
RW5hYmxlZChlbmFibGVkKTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKFdFQl9BVURJTykKLSAgICBp
ZiAocHJlZmVyZW5jZSA9PSAiV2ViS2l0V2ViQXVkaW9FbmFibGVkIikKLSAgICAgICAgUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2V0V2ViQXVkaW9FbmFibGVkKGVuYWJsZWQpOwotI2VuZGlmCi0K
ICAgICAvLyBNYXAgdGhlIG5hbWVzIHVzZWQgaW4gTGF5b3V0VGVzdHMgd2l0aCB0aGUgbmFtZXMg
dXNlZCBpbiBXZWJDb3JlOjpTZXR0aW5ncyBhbmQgV2ViUHJlZmVyZW5jZXNTdG9yZS4KICNkZWZp
bmUgRk9SX0VBQ0hfT1ZFUlJJREVfQk9PTF9QUkVGRVJFTkNFKG1hY3JvKSBcCiAgICAgbWFjcm8o
V2ViS2l0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQsIEFjY2VsZXJhdGVkQ29tcG9zaXRp
bmdFbmFibGVkLCBhY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCkgXApAQCAtMjI1LDYgKzIy
MCw3IEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGU6Om92ZXJyaWRlQm9vbFByZWZlcmVuY2VGb3JUZXN0
UnVubmVyKFdlYlBhZ2VHcm91cFByb3h5KiBwYWdlCiAgICAgbWFjcm8oV2ViS2l0UGFnZUNhY2hl
U3VwcG9ydHNQbHVnaW5zUHJlZmVyZW5jZUtleSwgUGFnZUNhY2hlU3VwcG9ydHNQbHVnaW5zLCBw
YWdlQ2FjaGVTdXBwb3J0c1BsdWdpbnMpIFwKICAgICBtYWNybyhXZWJLaXRQbHVnaW5zRW5hYmxl
ZCwgUGx1Z2luc0VuYWJsZWQsIHBsdWdpbnNFbmFibGVkKSBcCiAgICAgbWFjcm8oV2ViS2l0VXNl
c1BhZ2VDYWNoZVByZWZlcmVuY2VLZXksIFVzZXNQYWdlQ2FjaGUsIHVzZXNQYWdlQ2FjaGUpIFwK
KyAgICBtYWNybyhXZWJLaXRXZWJBdWRpb0VuYWJsZWQsIFdlYkF1ZGlvRW5hYmxlZCwgd2ViQXVk
aW9FbmFibGVkKSBcCiAgICAgbWFjcm8oV2ViS2l0V2ViR0xFbmFibGVkLCBXZWJHTEVuYWJsZWQs
IHdlYkdMRW5hYmxlZCkgXAogICAgIG1hY3JvKFdlYktpdFhTU0F1ZGl0b3JFbmFibGVkLCBYU1NB
dWRpdG9yRW5hYmxlZCwgeHNzQXVkaXRvckVuYWJsZWQpIFwKICAgICBtYWNybyhXZWJLaXRTaG91
bGRSZXNwZWN0SW1hZ2VPcmllbnRhdGlvbiwgU2hvdWxkUmVzcGVjdEltYWdlT3JpZW50YXRpb24s
IHNob3VsZFJlc3BlY3RJbWFnZU9yaWVudGF0aW9uKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggNjdlNjgyZi4uMDFlMGMwMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMjUyMCw3
ICsyNTIwLDcgQEAgdm9pZCBXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQcmVm
ZXJlbmNlc1N0b3JlJiBzdG9yZSkKICNlbmRpZgogCiAjaWYgRU5BQkxFKFdFQl9BVURJTykKLSAg
ICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRXZWJBdWRpb0VuYWJsZWQoc3RvcmUuZ2V0Qm9v
bFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojp3ZWJBdWRpb0VuYWJsZWRLZXkoKSkpOwor
ICAgIHNldHRpbmdzLT5zZXRXZWJBdWRpb0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5
KFdlYlByZWZlcmVuY2VzS2V5Ojp3ZWJBdWRpb0VuYWJsZWRLZXkoKSkpOwogI2VuZGlmCiAKICAg
ICBzZXR0aW5ncy0+c2V0QXBwbGljYXRpb25DaHJvbWVNb2RlKHN0b3JlLmdldEJvb2xWYWx1ZUZv
cktleShXZWJQcmVmZXJlbmNlc0tleTo6YXBwbGljYXRpb25DaHJvbWVNb2RlS2V5KCkpKTsKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4NjMzZjUz
Li42MWQxZGNhIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXogIDxjaC5k
dW1lekBzaXNhLnNhbXN1bmcuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIxNTA2NjMpOiBV
c2luZyB3ZWJraXRBdWRpb0NvbnRleHQgaW4gSW5zcGVjdG9yIG1ha2VzIGl0IHVuZGVmaW5lZCBl
dmVyeXdoZXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMTc4MjUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFdlYkF1ZGlvRW5hYmxlZCgpIG5vdyByZXF1
aXJlcyBhbiBhZGRpdGlvbmFsIHZpZXcgYXJndW1lbnQuCisKKyAgICAgICAgKiBEdW1wUmVuZGVy
VHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwOgorICAgICAgICAoRHVtcFJlbmRlclRy
ZWVDaHJvbWU6OnJlc2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1ZXMpOgorICAgICAgICAqIER1
bXBSZW5kZXJUcmVlL2VmbC9UZXN0UnVubmVyRWZsLmNwcDoKKyAgICAgICAgKFRlc3RSdW5uZXI6
Om92ZXJyaWRlUHJlZmVyZW5jZSk6CisKIDIwMTMtMDYtMjAgIENhcmxvcyBHYXJjaWEgQ2FtcG9z
ICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtCbGFja0JlcnJ5XSBIYW5kbGUgdGVz
dFJ1bm5lci5zZXRXaWxsU2VuZFJlcXVlc3RSZXR1cm5zTnVsbCgpIGluIERSVApkaWZmIC0tZ2l0
IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcCBiL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAKaW5kZXggOGMw
Nzg2YS4uNWE2MzM4NCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBS
ZW5kZXJUcmVlQ2hyb21lLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJl
bmRlclRyZWVDaHJvbWUuY3BwCkBAIC0zMjQsNyArMzI0LDcgQEAgdm9pZCBEdW1wUmVuZGVyVHJl
ZUNocm9tZTo6cmVzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlcygpCiAgICAgRHVtcFJlbmRl
clRyZWVTdXBwb3J0RWZsOjpzZXRTaG91bGRUcmFja1Zpc2l0ZWRMaW5rcyhmYWxzZSk7CiAgICAg
RHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRUcmFja3NSZXBhaW50cyhtYWluRnJhbWUoKSwg
ZmFsc2UpOwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0U2VhbWxlc3NJRnJhbWVz
RW5hYmxlZCh0cnVlKTsKLSAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFdlYkF1ZGlv
RW5hYmxlZChmYWxzZSk7CisgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRXZWJBdWRp
b0VuYWJsZWQobWFpblZpZXcoKSwgZmFsc2UpOwogCiAgICAgLy8gUmVzZXQgY2FwYWNpdGllcyBm
b3IgdGhlIG1lbW9yeSBjYWNoZSBmb3IgZGVhZCBvYmplY3RzLgogICAgIHN0YXRpYyBjb25zdCB1
bnNpZ25lZCBjYWNoZVRvdGFsQ2FwYWNpdHkgPSAgODE5MiAqIDEwMjQ7CmRpZmYgLS1naXQgYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9lZmwvVGVzdFJ1bm5lckVmbC5jcHAgYi9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9lZmwvVGVzdFJ1bm5lckVmbC5jcHAKaW5kZXggODVjNzBkYS4uOWY2NmU5NSAxMDA2
NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL1Rlc3RSdW5uZXJFZmwuY3BwCisrKyBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9UZXN0UnVubmVyRWZsLmNwcApAQCAtNjYxLDcgKzY2
MSw3IEBAIHZvaWQgVGVzdFJ1bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKEpTU3RyaW5nUmVmIGtl
eSwgSlNTdHJpbmdSZWYgdmFsdWUpCiAgICAgZWxzZSBpZiAoZXF1YWxzKGtleSwgIldlYktpdENT
U1JlZ2lvbnNFbmFibGVkIikpCiAgICAgICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0
Q1NTUmVnaW9uc0VuYWJsZWQoYnJvd3Nlci0+bWFpblZpZXcoKSwgdG9Cb29sKHZhbHVlKSk7CiAg
ICAgZWxzZSBpZiAoZXF1YWxzKGtleSwgIldlYktpdFdlYkF1ZGlvRW5hYmxlZCIpKQotICAgICAg
ICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFdlYkF1ZGlvRW5hYmxlZCh0b0Jvb2wodmFs
dWUpKTsKKyAgICAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRXZWJBdWRpb0VuYWJs
ZWQoYnJvd3Nlci0+bWFpblZpZXcoKSwgdG9Cb29sKHZhbHVlKSk7CiAgICAgZWxzZSBpZiAoZXF1
YWxzKGtleSwgIldlYktpdERpc3BsYXlJbWFnZXNLZXkiKSkKICAgICAgICAgZXdrX3ZpZXdfc2V0
dGluZ19hdXRvX2xvYWRfaW1hZ2VzX3NldChicm93c2VyLT5tYWluVmlldygpLCB0b0Jvb2wodmFs
dWUpKTsKICAgICBlbHNlCg==
</data>
<flag name="review"
          id="226595"
          type_id="1"
          status="+"
          setter="haraken"
    />
    <flag name="commit-queue"
          id="226618"
          type_id="3"
          status="-"
          setter="gtk-ews"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205127</attachid>
            <date>2013-06-20 16:08:42 -0700</date>
            <delta_ts>2013-06-20 16:08:42 -0700</delta_ts>
            <desc>JSDOMWindow.cpp diff</desc>
            <filename>JSDOMWindow.cpp.diff</filename>
            <type>text/plain</type>
            <size>3526</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">LS0tIC9ob21lL2NocmlzL2RldmVsL1dlYktpdC9XZWJLaXRCdWlsZC9EZWJ1Zy9EZXJpdmVkU291
cmNlcy9XZWJDb3JlL0pTRE9NV2luZG93LmNwcAorKysgL2hvbWUvY2hyaXMvZGV2ZWwvV2ViS2l0
L1dlYktpdEJ1aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNET01XaW5kb3cuY3Bw
Lm5ldwpAQCAtMzksNiArMzksNyBAQAogI2luY2x1ZGUgIkV2ZW50LmgiCiAjaW5jbHVkZSAiRXZl
bnRMaXN0ZW5lci5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKKyNpbmNsdWRlICJGcmFt
ZS5oIgogI2luY2x1ZGUgIkhpc3RvcnkuaCIKICNpbmNsdWRlICJKU0FycmF5QnVmZmVyLmgiCiAj
aW5jbHVkZSAiSlNBcnJheUJ1ZmZlclZpZXcuaCIKQEAgLTI1MSw2ICsyNTIsNyBAQAogI2luY2x1
ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgog
I2luY2x1ZGUgIlNjcmVlbi5oIgorI2luY2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiU3Rv
cmFnZS5oIgogI2luY2x1ZGUgIlN0eWxlTWVkaWEuaCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnR5
U2V0LmgiCkBAIC00MjI0LDkgKzQyMjYsMTAgQEAKICNpZiBFTkFCTEUoV0VCX0FVRElPKQogSlNW
YWx1ZSBqc0RPTVdpbmRvd1dlYmtpdEF1ZGlvQ29udGV4dENvbnN0cnVjdG9yKEV4ZWNTdGF0ZSog
ZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwgUHJvcGVydHlOYW1lKQogewotICAgIGlmICghUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6d2Via2l0QXVkaW9Db250ZXh0RW5hYmxlZCgpKQotICAgICAgICBy
ZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICBKU0RPTVdpbmRvdyogY2FzdGVkVGhpcyA9IGpzQ2Fz
dDxKU0RPTVdpbmRvdyo+KGFzT2JqZWN0KHNsb3RCYXNlKSk7CisgICAgSlNET01XaW5kb3cqIGNh
c3RlZFRoaXMgPSBqc0Nhc3Q8SlNET01XaW5kb3cqPihhc09iamVjdChzbG90QmFzZSkpOworICAg
IFNldHRpbmdzKiBzZXR0aW5ncyA9IGNhc3RlZFRoaXMtPmltcGwoKS0+ZnJhbWUoKSA/IGNhc3Rl
ZFRoaXMtPmltcGwoKS0+ZnJhbWUoKS0+c2V0dGluZ3MoKSA6IDA7CisgICAgaWYgKCFzZXR0aW5n
cyB8fCAhc2V0dGluZ3MtPndlYkF1ZGlvRW5hYmxlZCgpKQorICAgICAgICByZXR1cm4ganNVbmRl
ZmluZWQoKTsKICAgICBpZiAoIUJpbmRpbmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0RP
TVdpbmRvdyhleGVjLCBjYXN0ZWRUaGlzLT5pbXBsKCkpKQogICAgICAgICByZXR1cm4ganNVbmRl
ZmluZWQoKTsKICAgICByZXR1cm4gSlNBdWRpb0NvbnRleHQ6OmdldENvbnN0cnVjdG9yKGV4ZWMs
IGNhc3RlZFRoaXMpOwpAQCAtNDQ4OCw5ICs0NDkxLDkgQEAKICNpZiBFTkFCTEUoV0VCX1NPQ0tF
VFMpCiBKU1ZhbHVlIGpzRE9NV2luZG93V2ViU29ja2V0Q29uc3RydWN0b3IoRXhlY1N0YXRlKiBl
eGVjLCBKU1ZhbHVlIHNsb3RCYXNlLCBQcm9wZXJ0eU5hbWUpCiB7CisgICAgSlNET01XaW5kb3cq
IGNhc3RlZFRoaXMgPSBqc0Nhc3Q8SlNET01XaW5kb3cqPihhc09iamVjdChzbG90QmFzZSkpOwog
ICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6d2ViU29ja2V0RW5hYmxlZCgpKQogICAg
ICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICBKU0RPTVdpbmRvdyogY2FzdGVkVGhpcyA9
IGpzQ2FzdDxKU0RPTVdpbmRvdyo+KGFzT2JqZWN0KHNsb3RCYXNlKSk7CiAgICAgaWYgKCFCaW5k
aW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9ET01XaW5kb3coZXhlYywgY2FzdGVkVGhp
cy0+aW1wbCgpKSkKICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiAgICAgcmV0dXJuIEpT
V2ViU29ja2V0OjpnZXRDb25zdHJ1Y3RvcihleGVjLCBjYXN0ZWRUaGlzKTsKQEAgLTU0NzMsOSAr
NTQ3Niw5IEBACiAjaWYgRU5BQkxFKFZJREVPKQogSlNWYWx1ZSBqc0RPTVdpbmRvd0hUTUxBdWRp
b0VsZW1lbnRDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgc2xvdEJhc2UsIFBy
b3BlcnR5TmFtZSkKIHsKKyAgICBKU0RPTVdpbmRvdyogY2FzdGVkVGhpcyA9IGpzQ2FzdDxKU0RP
TVdpbmRvdyo+KGFzT2JqZWN0KHNsb3RCYXNlKSk7CiAgICAgaWYgKCFSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpodG1sQXVkaW9FbGVtZW50RW5hYmxlZCgpKQogICAgICAgICByZXR1cm4ganNVbmRl
ZmluZWQoKTsKLSAgICBKU0RPTVdpbmRvdyogY2FzdGVkVGhpcyA9IGpzQ2FzdDxKU0RPTVdpbmRv
dyo+KGFzT2JqZWN0KHNsb3RCYXNlKSk7CiAgICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OnNob3Vs
ZEFsbG93QWNjZXNzVG9ET01XaW5kb3coZXhlYywgY2FzdGVkVGhpcy0+aW1wbCgpKSkKICAgICAg
ICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiAgICAgcmV0dXJuIEpTSFRNTEF1ZGlvRWxlbWVudDo6
Z2V0Q29uc3RydWN0b3IoZXhlYywgY2FzdGVkVGhpcyk7CkBAIC01NDg2LDkgKzU0ODksOSBAQAog
I2lmIEVOQUJMRShWSURFTykKIEpTVmFsdWUganNET01XaW5kb3dBdWRpb0NvbnN0cnVjdG9yKEV4
ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwgUHJvcGVydHlOYW1lKQogeworICAgIEpT
RE9NV2luZG93KiBjYXN0ZWRUaGlzID0ganNDYXN0PEpTRE9NV2luZG93Kj4oYXNPYmplY3Qoc2xv
dEJhc2UpKTsKICAgICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OmF1ZGlvRW5hYmxlZCgp
KQogICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICBKU0RPTVdpbmRvdyogY2FzdGVk
VGhpcyA9IGpzQ2FzdDxKU0RPTVdpbmRvdyo+KGFzT2JqZWN0KHNsb3RCYXNlKSk7CiAgICAgaWYg
KCFCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9ET01XaW5kb3coZXhlYywgY2Fz
dGVkVGhpcy0+aW1wbCgpKSkKICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiAgICAgcmV0
dXJuIEpTSFRNTEF1ZGlvRWxlbWVudDo6Z2V0TmFtZWRDb25zdHJ1Y3RvcihleGVjLCBjYXN0ZWRU
aGlzKTsKQEAgLTgzMjcsOSArODMzMCw5IEBACiAjaWYgRU5BQkxFKFNIQVJFRF9XT1JLRVJTKQog
SlNWYWx1ZSBqc0RPTVdpbmRvd1NoYXJlZFdvcmtlckNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhl
YywgSlNWYWx1ZSBzbG90QmFzZSwgUHJvcGVydHlOYW1lKQogeworICAgIEpTRE9NV2luZG93KiBj
YXN0ZWRUaGlzID0ganNDYXN0PEpTRE9NV2luZG93Kj4oYXNPYmplY3Qoc2xvdEJhc2UpKTsKICAg
ICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZFdvcmtlckVuYWJsZWQoKSkKICAg
ICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgSlNET01XaW5kb3cqIGNhc3RlZFRoaXMg
PSBqc0Nhc3Q8SlNET01XaW5kb3cqPihhc09iamVjdChzbG90QmFzZSkpOwogICAgIGlmICghQmlu
ZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRE9NV2luZG93KGV4ZWMsIGNhc3RlZFRo
aXMtPmltcGwoKSkpCiAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwogICAgIHJldHVybiBK
U1NoYXJlZFdvcmtlcjo6Z2V0Q29uc3RydWN0b3IoZXhlYywgY2FzdGVkVGhpcyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205155</attachid>
            <date>2013-06-21 00:21:49 -0700</date>
            <delta_ts>2013-06-21 03:35:23 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>117825_webaudiocontext.patch</filename>
            <type>text/plain</type>
            <size>31927</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1ZjJmMGQyLi43NjcwMjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEg
QEAKKzIwMTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcu
Y29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIxNTA2NjMpOiBVc2luZyB3ZWJraXRBdWRpb0Nv
bnRleHQgaW4gSW5zcGVjdG9yIG1ha2VzIGl0IHVuZGVmaW5lZCBldmVyeXdoZXJlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc4MjUKKworICAgICAg
ICBSZXZpZXdlZCBieSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgUGFydGlhbGx5IHJldmVydCBy
MTUwNjYzIHNvIHRoYXQgd2UgdXNlIFNldHRpbmdzIHRvIGVuYWJsZSBXZWJBdWRpbyBpbnN0ZWFk
IG9mCisgICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuCisKKyAgICAgICAgSW50cm9kdWNl
IGEgbmV3IFtFbmFibGVkQnlTZXR0aW5nXSBJREwgZXh0ZW5kZWQgYXR0cmlidXRlIHdoaWNoIGJl
aGF2ZXMgc2ltaWxhcmx5IHRvCisgICAgICAgIHRoZSBleGlzdGluZyBbRW5hYmxlZEF0UnVudGlt
ZV0gYnV0IHJlbGllcyBvbiBTZXR0aW5ncyBpbnN0ZWFkIG9mIFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMKKyAgICAgICAgdG8gZGV0ZXJtaW5lIGlmIHRoZSBmZWF0dXJlIHNob3VsZCBiZSBlbmFibGVk
LiBNYWtlIHVzZSBvZiB0aGlzIG5ldyBJREwgYXR0cmlidXRlIGZvcgorICAgICAgICB3ZWJraXRB
dWRpb0NvbnRleHQgaW50ZXJmYWNlLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gYmVoYXZp
b3IgY2hhbmdlLgorCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9BdWRpb0NvbnRleHQuaWRs
OgorICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIFdlYkNvcmUub3JkZXI6Cisg
ICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcDoKKyAg
ICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEdlbmVy
YXRlSW1wbGVtZW50YXRpb24pOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmli
dXRlcy50eHQ6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNzLWlkbHMucGw6
CisgICAgICAgIChHZW5lcmF0ZUNvbnN0cnVjdG9yQXR0cmlidXRlKToKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ompz
VGVzdE9ialRlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nQ29uc3RydWN0b3IpOgorICAgICAgICAo
V2ViQ29yZTo6c2V0SlNUZXN0T2JqVGVzdFN1Yk9iakVuYWJsZWRCeVNldHRpbmdDb25zdHJ1Y3Rv
cik6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RPYmouaDoKKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0T2JqLm1tOgorICAgICAgICAoLVtE
T01UZXN0T2JqIFRlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nXSk6CisgICAgICAgICgtW0RPTVRl
c3RPYmogc2V0VGVzdFN1Yk9iakVuYWJsZWRCeVNldHRpbmc6XSk6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaW46
CisKIDIwMTMtMDYtMjAgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgUkVHUkVTU0lPTihyMTQ1Nzg4KTogbW91c2UgZHJhZyBvbiBjYW52YXMgc2hvdWxkbid0IHN0
YXJ0IHNlbGVjdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9BdWRpb0NvbnRleHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b0NvbnRleHQuaWRsCmluZGV4IDQ2ZjUxODYuLjkwOTRmY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Db250ZXh0LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQ29udGV4dC5pZGwKQEAgLTI0LDcgKzI0LDcgQEAK
ICAqLwogCiBbCi0gICAgRW5hYmxlZEF0UnVudGltZSwKKyAgICBFbmFibGVkQnlTZXR0aW5nPVdl
YkF1ZGlvLAogICAgIENvbmRpdGlvbmFsPVdFQl9BVURJTywKICAgICBBY3RpdmVET01PYmplY3Qs
CiAgICAgQ3VzdG9tQ29uc3RydWN0b3IsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmV4cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IDlkNDgxMjYu
LmIxMGIzY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC0yNjgwLDEwICsyNjgwLDYgQEAgX19a
TjdXZWJDb3JlMjJSdW50aW1lRW5hYmxlZEZlYXR1cmVzMzdpc0F1dGhvclNoYWRvd0RPTUZvckFu
eUVsZW1lbnRFbmFibGVkRQogX19aTjdXZWJDb3JlNHRvSlNFUE4zSlNDOUV4ZWNTdGF0ZUVQTlNf
MTdKU0RPTUdsb2JhbE9iamVjdEVQTlNfMTBTaGFkb3dSb290RQogI2VuZGlmCiAKLSNpZiBFTkFC
TEUoV0VCX0FVRElPKQotX19aTjdXZWJDb3JlMjJSdW50aW1lRW5hYmxlZEZlYXR1cmVzMTdpc1dl
YkF1ZGlvRW5hYmxlZEUKLSNlbmRpZgotCiAjaWYgRU5BQkxFKERJQUxPR19FTEVNRU5UKQogX19a
TjdXZWJDb3JlMjJSdW50aW1lRW5hYmxlZEZlYXR1cmVzMjJpc0RpYWxvZ0VsZW1lbnRFbmFibGVk
RQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLm9yZGVyIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5vcmRlcgppbmRleCAzNDM0MTI2Li5hODRlOWExIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLm9yZGVyCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUub3JkZXIKQEAgLTQwNzg5LDcgKzQwNzg5LDYgQEAgX19aTjdXZWJDb3JlMjNQbGF0Zm9y
bUluc3RydW1lbnRhdGlvbjhtX2NsaWVudEUKIF9fWk43V2ViQ29yZTIxUmVuZGVyTGF5ZXJGaWx0
ZXJJbmZvMTFzX2ZpbHRlck1hcEUKIF9fWk43V2ViQ29yZTIzUmVuZGVyU1ZHUmVzb3VyY2VNYXNr
ZXIxNHNfcmVzb3VyY2VUeXBlRQogX19aTjdXZWJDb3JlMTVSZXNvdXJjZVJlcXVlc3QyM3NfaHR0
cFBpcGVsaW5pbmdFbmFibGVkRQotX19aTjdXZWJDb3JlMjJSdW50aW1lRW5hYmxlZEZlYXR1cmVz
MTdpc1dlYkF1ZGlvRW5hYmxlZEUKIF9fWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0dXJl
czIyaXNDU1NFeGNsdXNpb25zRW5hYmxlZEUKIF9fWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRG
ZWF0dXJlczE4aXNDU1NTaGFwZXNFbmFibGVkRQogX19aTjdXZWJDb3JlMjJSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzNDBpc0xhbmdBdHRyaWJ1dGVBd2FyZUZvcm1Db250cm9sVUlFbmFibGVkRQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJs
ZWRGZWF0dXJlcy5jcHAKaW5kZXggMzY1ODE0NS4uNGZhMjY2YyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
Y3BwCkBAIC00OSw3ICs0OSw2IEBAIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNBcHBs
aWNhdGlvbkNhY2hlRW5hYmxlZCA9IHRydWU7CiBib29sIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OmlzRGF0YVRyYW5zZmVySXRlbXNFbmFibGVkID0gdHJ1ZTsKIGJvb2wgUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6aXNHZW9sb2NhdGlvbkVuYWJsZWQgPSB0cnVlOwogYm9vbCBSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjppc0luZGV4ZWREQkVuYWJsZWQgPSBmYWxzZTsKLWJvb2wgUnVudGltZUVuYWJs
ZWRGZWF0dXJlczo6aXNXZWJBdWRpb0VuYWJsZWQgPSBmYWxzZTsKIGJvb2wgUnVudGltZUVuYWJs
ZWRGZWF0dXJlczo6aXNUb3VjaEVuYWJsZWQgPSB0cnVlOwogYm9vbCBSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjppc0RldmljZU1vdGlvbkVuYWJsZWQgPSB0cnVlOwogYm9vbCBSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjppc0RldmljZU9yaWVudGF0aW9uRW5hYmxlZCA9IHRydWU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJl
cy5oCmluZGV4IDJjYmJhOTAuLmU3NDM1YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0xNTIsMTIg
KzE1Miw2IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgYm9vbCBvcGVuRGF0YWJhc2VTeW5jRW5hYmxl
ZCgpOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoV0VCX0FVRElPKQotICAgIHN0YXRpYyB2b2lkIHNl
dFdlYkF1ZGlvRW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBpc1dlYkF1ZGlvRW5hYmxlZCA9IGlz
RW5hYmxlZDsgfQotICAgIHN0YXRpYyBib29sIHdlYmtpdEF1ZGlvQ29udGV4dEVuYWJsZWQoKSB7
IHJldHVybiBpc1dlYkF1ZGlvRW5hYmxlZDsgfQotICAgIHN0YXRpYyBib29sIHdlYmtpdE9mZmxp
bmVBdWRpb0NvbnRleHRFbmFibGVkKCkgeyByZXR1cm4gaXNXZWJBdWRpb0VuYWJsZWQ7IH0KLSNl
bmRpZgotCiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKICAgICBzdGF0aWMgYm9vbCB0b3VjaEVu
YWJsZWQoKSB7IHJldHVybiBpc1RvdWNoRW5hYmxlZDsgfQogICAgIHN0YXRpYyB2b2lkIHNldFRv
dWNoRW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBpc1RvdWNoRW5hYmxlZCA9IGlzRW5hYmxlZDsg
fQpAQCAtMzE3LDcgKzMxMSw2IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIGJvb2wgaXNEYXRhVHJh
bnNmZXJJdGVtc0VuYWJsZWQ7CiAgICAgc3RhdGljIGJvb2wgaXNHZW9sb2NhdGlvbkVuYWJsZWQ7
CiAgICAgc3RhdGljIGJvb2wgaXNJbmRleGVkREJFbmFibGVkOwotICAgIHN0YXRpYyBib29sIGlz
V2ViQXVkaW9FbmFibGVkOwogICAgIHN0YXRpYyBib29sIGlzVG91Y2hFbmFibGVkOwogICAgIHN0
YXRpYyBib29sIGlzRGV2aWNlTW90aW9uRW5hYmxlZDsKICAgICBzdGF0aWMgYm9vbCBpc0Rldmlj
ZU9yaWVudGF0aW9uRW5hYmxlZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggZmI4Yjk4OC4uMTJkNDVjZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAg
LTIwMjMsMjAgKzIwMjMsMjkgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIkpTVmFsdWUgJHtnZXRGdW5jdGlvbk5hbWV9KEV4
ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwgUHJvcGVydHlOYW1lKVxuIik7CiAgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKIAotICAgICAgICAgICAgICAg
ICMgR2xvYmFsIGNvbnN0cnVjdG9ycyBjYW4gYmUgZGlzYWJsZWQgYXQgcnVudGltZS4KLSAgICAg
ICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiRW5hYmxlZEF0UnVudGltZSJ9ICYmICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSA9fiAv
Q29uc3RydWN0b3IkLykgewotICAgICAgICAgICAgICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcygi
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIik7Ci0gICAgICAgICAgICAgICAgICAgIG15ICRlbmFi
bGVfZnVuY3Rpb24gPSBHZXRSdW50aW1lRW5hYmxlRnVuY3Rpb25OYW1lKCRhdHRyaWJ1dGUtPnNp
Z25hdHVyZSk7Ci0gICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlm
ICghJHtlbmFibGVfZnVuY3Rpb259KCkpXG4iKTsKLSAgICAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpO1xuIik7Ci0gICAgICAg
ICAgICAgICAgfQotCiAgICAgICAgICAgICAgICAgaWYgKCEkYXR0cmlidXRlLT5pc1N0YXRpYyB8
fCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgPX4gL0NvbnN0cnVjdG9yJC8pIHsKICAgICAg
ICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgJHtjbGFzc05hbWV9KiBjYXN0
ZWRUaGlzID0ganNDYXN0PCRjbGFzc05hbWUqPihhc09iamVjdChzbG90QmFzZSkpO1xuIik7CiAg
ICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICIgICAgVU5VU0VEX1BBUkFNKHNsb3RCYXNlKTtcbiIpOwogICAgICAgICAgICAgICAg
IH0KIAorICAgICAgICAgICAgICAgICMgR2xvYmFsIGNvbnN0cnVjdG9ycyBjYW4gYmUgZGlzYWJs
ZWQgYXQgcnVudGltZS4KKyAgICAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT50eXBlID1+IC9Db25zdHJ1Y3RvciQvKSB7CisgICAgICAgICAgICAgICAgICAgIGlmICgkYXR0
cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmFibGVkQXRSdW50aW1l
In0pIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCJSdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmgiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIG15ICRlbmFibGVf
ZnVuY3Rpb24gPSBHZXRSdW50aW1lRW5hYmxlRnVuY3Rpb25OYW1lKCRhdHRyaWJ1dGUtPnNpZ25h
dHVyZSk7CisgICAgICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBp
ZiAoISR7ZW5hYmxlX2Z1bmN0aW9ufSgpKVxuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7XG4iKTsKKyAg
ICAgICAgICAgICAgICAgICAgfSBlbHNpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiRW5hYmxlZEJ5U2V0dGluZyJ9KSB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBBZGRUb0ltcGxJbmNsdWRlcygiRnJhbWUuaCIpOworICAgICAgICAgICAgICAgICAgICAg
ICAgQWRkVG9JbXBsSW5jbHVkZXMoIlNldHRpbmdzLmgiKTsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIG15ICRlbmFibGVfZnVuY3Rpb24gPSBUb01ldGhvZE5hbWUoJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRW5hYmxlZEJ5U2V0dGluZyJ9KSAuICJFbmFibGVk
IjsKKyAgICAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIFNldHRp
bmdzKiBzZXR0aW5ncyA9IGNhc3RlZFRoaXMtPmltcGwoKS0+ZnJhbWUoKSA/IGNhc3RlZFRoaXMt
PmltcGwoKS0+ZnJhbWUoKS0+c2V0dGluZ3MoKSA6IDA7XG4iKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmICghc2V0dGluZ3MgfHwgIXNldHRpbmdz
LT4kZW5hYmxlX2Z1bmN0aW9uKCkpXG4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTtcbiIpOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorCiAgICAgICAgICAgICAgICAgaWYg
KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNhY2hlZEF0dHJp
YnV0ZSJ9KSB7CiAgICAgICAgICAgICAgICAgICAgICRuZWVkc01hcmtDaGlsZHJlbiA9IDE7CiAg
ICAgICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9JRExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
SURMQXR0cmlidXRlcy50eHQKaW5kZXggMTgwZWUzOS4uNDI1OTAwNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CkBAIC01Myw2ICs1
Myw3IEBAIERvTm90Q2hlY2tTZWN1cml0eQogRG9Ob3RDaGVja1NlY3VyaXR5T25HZXR0ZXIKIERv
Tm90Q2hlY2tTZWN1cml0eU9uU2V0dGVyCiBFbmFibGVkQXRSdW50aW1lPSoKK0VuYWJsZWRCeVNl
dHRpbmc9KgogRW5mb3JjZVJhbmdlCiBFdmVudFRhcmdldAogRXh0ZW5kc0RPTUdsb2JhbE9iamVj
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNz
LWlkbHMucGwgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRs
cy5wbAppbmRleCBlNzZjNDk2Li5jNWNkNDk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5wbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5wbApAQCAtMTgzLDcgKzE4Myw3IEBAIHN1
YiBHZW5lcmF0ZUNvbnN0cnVjdG9yQXR0cmlidXRlCiAgICAgbXkgJGNvZGUgPSAiICAgICI7CiAg
ICAgbXkgQGV4dGVuZGVkQXR0cmlidXRlc0xpc3Q7CiAgICAgZm9yZWFjaCBteSAkYXR0cmlidXRl
TmFtZSAoa2V5cyAleyRleHRlbmRlZEF0dHJpYnV0ZXN9KSB7Ci0gICAgICBuZXh0IHVubGVzcyAo
JGF0dHJpYnV0ZU5hbWUgZXEgIkNvbmRpdGlvbmFsIiB8fCAkYXR0cmlidXRlTmFtZSBlcSAiRW5h
YmxlZEF0UnVudGltZSIgfHwgJGF0dHJpYnV0ZU5hbWUgZXEgIkVuYWJsZWRQZXJDb250ZXh0Iik7
CisgICAgICBuZXh0IHVubGVzcyAoJGF0dHJpYnV0ZU5hbWUgZXEgIkNvbmRpdGlvbmFsIiB8fCAk
YXR0cmlidXRlTmFtZSBlcSAiRW5hYmxlZEF0UnVudGltZSIgfHwgJGF0dHJpYnV0ZU5hbWUgZXEg
IkVuYWJsZWRCeVNldHRpbmciKTsKICAgICAgIG15ICRleHRlbmRlZEF0dHJpYnV0ZSA9ICRhdHRy
aWJ1dGVOYW1lOwogICAgICAgJGV4dGVuZGVkQXR0cmlidXRlIC49ICI9IiAuICRleHRlbmRlZEF0
dHJpYnV0ZXMtPnskYXR0cmlidXRlTmFtZX0gdW5sZXNzICRleHRlbmRlZEF0dHJpYnV0ZXMtPnsk
YXR0cmlidXRlTmFtZX0gZXEgIlZBTFVFX0lTX01JU1NJTkciOwogICAgICAgcHVzaChAZXh0ZW5k
ZWRBdHRyaWJ1dGVzTGlzdCwgJGV4dGVuZGVkQXR0cmlidXRlKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5jcHAKaW5kZXggYTA1
NmUxNy4uYTM2ODU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE9iai5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE9iai5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJE
aWN0aW9uYXJ5LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFeGNlcHRpb25D
b2RlLmgiCisjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNs
dWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU0RPTVN0cmluZ0xpc3QuaCIKQEAgLTQ4
LDYgKzQ5LDcgQEAKICNpbmNsdWRlICJTY3JpcHRDYWxsU3RhY2tGYWN0b3J5LmgiCiAjaW5jbHVk
ZSAiU2NyaXB0UHJvZmlsZS5oIgogI2luY2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgor
I2luY2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiVGVzdE9iai5oIgogI2luY2x1ZGUgImJv
b2wuaCIKICNpbmNsdWRlIDxydW50aW1lL0Vycm9yLmg+CkBAIC03OSw2ICs4MSw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RPYmpUYWJsZVZhbHVlc1tdID0KICAgICB7ICJy
ZWFkT25seUxvbmdBdHRyIiwgRG9udERlbGV0ZSB8IFJlYWRPbmx5LCAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE9ialJlYWRPbmx5TG9uZ0F0
dHIpLCAoaW50cHRyX3QpMCwgTm9JbnRyaW5zaWMgfSwKICAgICB7ICJyZWFkT25seVN0cmluZ0F0
dHIiLCBEb250RGVsZXRlIHwgUmVhZE9ubHksIChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0
eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T2JqUmVhZE9ubHlTdHJpbmdBdHRyKSwgKGludHB0
cl90KTAsIE5vSW50cmluc2ljIH0sCiAgICAgeyAicmVhZE9ubHlUZXN0T2JqQXR0ciIsIERvbnRE
ZWxldGUgfCBSZWFkT25seSwgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0
VmFsdWVGdW5jPihqc1Rlc3RPYmpSZWFkT25seVRlc3RPYmpBdHRyKSwgKGludHB0cl90KTAsIE5v
SW50cmluc2ljIH0sCisgICAgeyAiVGVzdFN1Yk9iakVuYWJsZWRCeVNldHRpbmciLCBEb250RW51
bSwgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rl
c3RPYmpUZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZ0NvbnN0cnVjdG9yKSwgKGludHB0cl90KXNl
dEpTVGVzdE9ialRlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nQ29uc3RydWN0b3IsIE5vSW50cmlu
c2ljIH0sCiAgICAgeyAiZW51bUF0dHIiLCBEb250RGVsZXRlLCAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE9iakVudW1BdHRyKSwgKGludHB0
cl90KXNldEpTVGVzdE9iakVudW1BdHRyLCBOb0ludHJpbnNpYyB9LAogICAgIHsgImJ5dGVBdHRy
IiwgRG9udERlbGV0ZSwgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFs
dWVGdW5jPihqc1Rlc3RPYmpCeXRlQXR0ciksIChpbnRwdHJfdClzZXRKU1Rlc3RPYmpCeXRlQXR0
ciwgTm9JbnRyaW5zaWMgfSwKICAgICB7ICJvY3RldEF0dHIiLCBEb250RGVsZXRlLCAoaW50cHRy
X3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE9iak9jdGV0
QXR0ciksIChpbnRwdHJfdClzZXRKU1Rlc3RPYmpPY3RldEF0dHIsIE5vSW50cmluc2ljIH0sCkBA
IC00NTUsNiArNDU4LDE2IEBAIEpTVmFsdWUganNUZXN0T2JqQ29uc3RydWN0b3JUZXN0U3ViT2Jq
KEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwgUHJvcGVyCiB9CiAKIAorSlNWYWx1
ZSBqc1Rlc3RPYmpUZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZ0NvbnN0cnVjdG9yKEV4ZWNTdGF0
ZSogZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwgUHJvcGVydHlOYW1lKQoreworICAgIEpTVGVzdE9i
aiogY2FzdGVkVGhpcyA9IGpzQ2FzdDxKU1Rlc3RPYmoqPihhc09iamVjdChzbG90QmFzZSkpOwor
ICAgIFNldHRpbmdzKiBzZXR0aW5ncyA9IGNhc3RlZFRoaXMtPmltcGwoKS0+ZnJhbWUoKSA/IGNh
c3RlZFRoaXMtPmltcGwoKS0+ZnJhbWUoKS0+c2V0dGluZ3MoKSA6IDA7CisgICAgaWYgKCFzZXR0
aW5ncyB8fCAhc2V0dGluZ3MtPnRlc3RTZXR0aW5nRW5hYmxlZCgpKQorICAgICAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKKyAgICByZXR1cm4gSlNUZXN0U3ViT2JqOjpnZXRDb25zdHJ1Y3Rvcihl
eGVjLCBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3QoKSk7Cit9CisKKwogSlNWYWx1ZSBqc1Rlc3RP
YmpFbnVtQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgc2xvdEJhc2UsIFByb3BlcnR5TmFt
ZSkKIHsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0Nhc3Q8SlNUZXN0T2JqKj4oYXNP
YmplY3Qoc2xvdEJhc2UpKTsKQEAgLTExMDYsNiArMTExOSwxNCBAQCB2b2lkIHNldEpTVGVzdE9i
akNvbnN0cnVjdG9yU3RhdGljU3RyaW5nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0Kiwg
SlNWYWx1ZQogfQogCiAKK3ZvaWQgc2V0SlNUZXN0T2JqVGVzdFN1Yk9iakVuYWJsZWRCeVNldHRp
bmdDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiB0aGlzT2JqZWN0LCBKU1Zh
bHVlIHZhbHVlKQoreworICAgIFVOVVNFRF9QQVJBTShleGVjKTsKKyAgICAvLyBTaGFkb3dpbmcg
YSBidWlsdC1pbiBjb25zdHJ1Y3RvcgorICAgIGpzQ2FzdDxKU1Rlc3RPYmoqPih0aGlzT2JqZWN0
KS0+cHV0RGlyZWN0KGV4ZWMtPnZtKCksIElkZW50aWZpZXIoZXhlYywgIlRlc3RTdWJPYmpFbmFi
bGVkQnlTZXR0aW5nIiksIHZhbHVlKTsKK30KKworCiB2b2lkIHNldEpTVGVzdE9iakVudW1BdHRy
KEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHRoaXNPYmplY3QsIEpTVmFsdWUgdmFsdWUpCiB7
CiAgICAgVU5VU0VEX1BBUkFNKGV4ZWMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oCmluZGV4IDdhMmQ2ZWMuLjYzYThiYjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RP
YmouaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
T2JqLmgKQEAgLTI0MSw2ICsyNDEsOCBAQCBKU0M6OkpTVmFsdWUganNUZXN0T2JqQ29uc3RydWN0
b3JTdGF0aWNSZWFkT25seUxvbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKUwogSlNDOjpK
U1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVjdG9yU3RhdGljU3RyaW5nQXR0cihKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogdm9pZCBzZXRKU1Rlc3RPYmpD
b25zdHJ1Y3RvclN0YXRpY1N0cmluZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpKU1ZhbHVlKTsKIEpTQzo6SlNWYWx1ZSBqc1Rlc3RPYmpDb25zdHJ1Y3RvclRlc3RT
dWJPYmooSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsK
K0pTQzo6SlNWYWx1ZSBqc1Rlc3RPYmpUZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZ0NvbnN0cnVj
dG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2
b2lkIHNldEpTVGVzdE9ialRlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nQ29uc3RydWN0b3IoSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpKU1ZhbHVlKTsKIEpTQzo6SlNWYWx1
ZSBqc1Rlc3RPYmpFbnVtQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgSlNDOjpQ
cm9wZXJ0eU5hbWUpOwogdm9pZCBzZXRKU1Rlc3RPYmpFbnVtQXR0cihKU0M6OkV4ZWNTdGF0ZSos
IEpTQzo6SlNPYmplY3QqLCBKU0M6OkpTVmFsdWUpOwogSlNDOjpKU1ZhbHVlIGpzVGVzdE9iakJ5
dGVBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9E
T01UZXN0T2JqLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvT2JqQy9E
T01UZXN0T2JqLmgKaW5kZXggZTAzZDAyNS4uOWM4Y2JkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdE9iai5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RPYmouaApAQCAtMzks
NiArMzksNyBAQAogQGNsYXNzIERPTVRlc3RPYmplY3RBQ29uc3RydWN0b3I7CiBAY2xhc3MgRE9N
VGVzdE9iamVjdEJDb25zdHJ1Y3RvcjsKIEBjbGFzcyBET01UZXN0T2JqZWN0Q0NvbnN0cnVjdG9y
OworQGNsYXNzIERPTVRlc3RTdWJPYmpDb25zdHJ1Y3RvcjsKIEBjbGFzcyBET01hbnk7CiBAY2xh
c3MgRE9NYm9vbDsKIEBjbGFzcyBOU1N0cmluZzsKQEAgLTY2LDYgKzY3LDcgQEAgZW51bSB7CiBA
cHJvcGVydHkocmVhZG9ubHkpIGludCByZWFkT25seUxvbmdBdHRyOwogQHByb3BlcnR5KHJlYWRv
bmx5LCBjb3B5KSBOU1N0cmluZyAqcmVhZE9ubHlTdHJpbmdBdHRyOwogQHByb3BlcnR5KHJlYWRv
bmx5LCByZXRhaW4pIERPTVRlc3RPYmogKnJlYWRPbmx5VGVzdE9iakF0dHI7CitAcHJvcGVydHko
cmV0YWluKSBET01UZXN0U3ViT2JqQ29uc3RydWN0b3IgKlRlc3RTdWJPYmpFbmFibGVkQnlTZXR0
aW5nOwogQHByb3BlcnR5IGNoYXIgYnl0ZUF0dHI7CiBAcHJvcGVydHkgdW5zaWduZWQgY2hhciBv
Y3RldEF0dHI7CiBAcHJvcGVydHkgc2hvcnQgc2hvcnRBdHRyOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L09iakMvRE9NVGVzdE9iai5tbSBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9PYmpDL0RPTVRlc3RPYmoubW0KaW5kZXgg
ZmU4MzExOC4uOWFhMmU0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L09iakMvRE9NVGVzdE9iai5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvT2JqQy9ET01UZXN0T2JqLm1tCkBAIC00NSw2ICs0NSw3IEBACiAjaW1w
b3J0ICJET01UZXN0T2JqZWN0QUNvbnN0cnVjdG9ySW50ZXJuYWwuaCIKICNpbXBvcnQgIkRPTVRl
c3RPYmplY3RCQ29uc3RydWN0b3JJbnRlcm5hbC5oIgogI2ltcG9ydCAiRE9NVGVzdE9iamVjdEND
b25zdHJ1Y3RvckludGVybmFsLmgiCisjaW1wb3J0ICJET01UZXN0U3ViT2JqQ29uc3RydWN0b3JJ
bnRlcm5hbC5oIgogI2ltcG9ydCAiRE9NYW55SW50ZXJuYWwuaCIKICNpbXBvcnQgIkRPTWJvb2xJ
bnRlcm5hbC5oIgogI2ltcG9ydCAiRGljdGlvbmFyeS5oIgpAQCAtNjUsNiArNjYsNyBAQAogI2lt
cG9ydCAiVGVzdE9iamVjdEFDb25zdHJ1Y3Rvci5oIgogI2ltcG9ydCAiVGVzdE9iamVjdEJDb25z
dHJ1Y3Rvci5oIgogI2ltcG9ydCAiVGVzdE9iamVjdENDb25zdHJ1Y3Rvci5oIgorI2ltcG9ydCAi
VGVzdFN1Yk9iakNvbnN0cnVjdG9yLmgiCiAjaW1wb3J0ICJUaHJlYWRDaGVjay5oIgogI2ltcG9y
dCAiV2ViQ29yZU9iakNFeHRyYXMuaCIKICNpbXBvcnQgIldlYlNjcmlwdE9iamVjdFByaXZhdGUu
aCIKQEAgLTExMSw2ICsxMTMsMjAgQEAKICAgICByZXR1cm4ga2l0KFdURjo6Z2V0UHRyKElNUEwt
PnJlYWRPbmx5VGVzdE9iakF0dHIoKSkpOwogfQogCistIChET01UZXN0U3ViT2JqQ29uc3RydWN0
b3IgKilUZXN0U3ViT2JqRW5hYmxlZEJ5U2V0dGluZworeworICAgIFdlYkNvcmU6OkpTTWFpblRo
cmVhZE51bGxTdGF0ZSBzdGF0ZTsKKyAgICByZXR1cm4ga2l0KFdURjo6Z2V0UHRyKElNUEwtPnRl
c3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nKCkpKTsKK30KKworLSAodm9pZClzZXRUZXN0U3ViT2Jq
RW5hYmxlZEJ5U2V0dGluZzooRE9NVGVzdFN1Yk9iakNvbnN0cnVjdG9yICopbmV3VGVzdFN1Yk9i
akVuYWJsZWRCeVNldHRpbmcKK3sKKyAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUg
c3RhdGU7CisgICAgQVNTRVJUKG5ld1Rlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nKTsKKworICAg
IElNUEwtPnNldFRlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nKGNvcmUobmV3VGVzdFN1Yk9iakVu
YWJsZWRCeVNldHRpbmcpKTsKK30KKwogLSAoY2hhcilieXRlQXR0cgogewogICAgIFdlYkNvcmU6
OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAppbmRleCAwNjc5ZjM3Li43MWNhZTgwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCkBA
IC00Myw2ICs0Myw3IEBAIGVudW0gVGVzdEVudW1UeXBlIHsgIiIsICJFbnVtVmFsdWUxIiwgIkVu
dW1WYWx1ZTIiLCAiRW51bVZhbHVlMyIgfTsKICAgICBzdGF0aWMgcmVhZG9ubHkgYXR0cmlidXRl
IGxvbmcgICAgIHN0YXRpY1JlYWRPbmx5TG9uZ0F0dHI7CiAgICAgc3RhdGljIGF0dHJpYnV0ZSBE
T01TdHJpbmcgICAgICAgICBzdGF0aWNTdHJpbmdBdHRyOwogICAgIHN0YXRpYyByZWFkb25seSBh
dHRyaWJ1dGUgVGVzdFN1Yk9iakNvbnN0cnVjdG9yIFRlc3RTdWJPYmo7CisgICAgW0VuYWJsZWRC
eVNldHRpbmc9VGVzdFNldHRpbmddIGF0dHJpYnV0ZSBUZXN0U3ViT2JqQ29uc3RydWN0b3IgVGVz
dFN1Yk9iakVuYWJsZWRCeVNldHRpbmc7CiAgICAgYXR0cmlidXRlIFRlc3RFbnVtVHlwZSAgICAg
ICAgICAgICBlbnVtQXR0cjsKICAgICBhdHRyaWJ1dGUgYnl0ZSAgICAgICAgICAgICAgICAgICAg
IGJ5dGVBdHRyOwogICAgIGF0dHJpYnV0ZSBvY3RldCAgICAgICAgICAgICAgICAgICAgb2N0ZXRB
dHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbiBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4KaW5kZXggMTIyZmIwNS4uZWFiMTRhNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1NldHRpbmdzLmluCkBAIC0xMTUsNiArMTE1LDcgQEAgcHJpdmlsZWdlZFdlYkdMRXh0
ZW5zaW9uc0VuYWJsZWQgaW5pdGlhbD1mYWxzZQogYWNjZWxlcmF0ZWQyZENhbnZhc0VuYWJsZWQg
aW5pdGlhbD1mYWxzZQogYW50aWFsaWFzZWQyZENhbnZhc0VuYWJsZWQgaW5pdGlhbD10cnVlCiBs
b2FkRGVmZXJyaW5nRW5hYmxlZCBpbml0aWFsPXRydWUKK3dlYkF1ZGlvRW5hYmxlZCBpbml0aWFs
PWZhbHNlCiBwYWdpbmF0ZUR1cmluZ0xheW91dEVuYWJsZWQgaW5pdGlhbD1mYWxzZQogZnVsbFNj
cmVlbkVuYWJsZWQgaW5pdGlhbD1mYWxzZSwgY29uZGl0aW9uYWw9RlVMTFNDUkVFTl9BUEkKIGFz
eW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdFbmFibGVkIGluaXRpYWw9ZmFsc2UKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxv
ZwppbmRleCBkOTM0MjE4Li44N2U2ZjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcu
Y29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIxNTA2NjMpOiBVc2luZyB3ZWJraXRBdWRpb0Nv
bnRleHQgaW4gSW5zcGVjdG9yIG1ha2VzIGl0IHVuZGVmaW5lZCBldmVyeXdoZXJlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc4MjUKKworICAgICAg
ICBSZXZpZXdlZCBieSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgVXNlIFNldHRpbmdzIHRvIGVu
YWJsZSBXZWIgQXVkaW8gaW5zdGVhZCBvZiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzLgorCisgICAg
ICAgICogV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcDoKKyAgICAg
ICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0V2ViQXVkaW9FbmFibGVkKToKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuaDoKKyAgICAgICAg
KiBld2svZXdrX3ZpZXcuY3BwOgorICAgICAgICAoX2V3a192aWV3X3ByaXZfbmV3KToKKwogMjAx
My0wNi0xNyAgU2Vva2p1IEt3b24gIDxzZW9ranUua3dvbkBnbWFpbC5jb20+CiAKICAgICAgICAg
W0VGTF0gUmVtb3ZlIHVubmVlZGVkIFdlYkNvcmUgbmFtZXNwYWNlIGluIEZyYW1lTG9hZGVyQ2xp
ZW50RWZsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1w
UmVuZGVyVHJlZVN1cHBvcnRFZmwuY3BwIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBv
cnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcAppbmRleCA3NDkwYWM3Li44YzM2MDY5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJl
ZVN1cHBvcnRFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1
bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5jcHAKQEAgLTMyNCwxMSArMzI0LDE0IEBAIHZvaWQgRHVt
cFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRTZWFtbGVzc0lGcmFtZXNFbmFibGVkKGJvb2wgZW5h
YmxlZCkKICNlbmRpZgogfQogCi12b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0V2Vi
QXVkaW9FbmFibGVkKGJvb2wgZW5hYmxlZCkKK3ZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZs
OjpzZXRXZWJBdWRpb0VuYWJsZWQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCkK
IHsKICNpZiBFTkFCTEUoV0VCX0FVRElPKQotICAgIFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNldFdlYkF1ZGlvRW5hYmxlZChlbmFibGVkKTsKKyAgICBEUlRfU1VQUFJUX1BBR0Vf
R0VUX09SX1JFVFVSTihld2tWaWV3LCBwYWdlKTsKKworICAgIHBhZ2UtPnNldHRpbmdzKCktPnNl
dFdlYkF1ZGlvRW5hYmxlZChlbmFibGVkKTsKICNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGV3a1Zp
ZXcpOwogICAgIFVOVVNFRF9QQVJBTShlbmFibGVkKTsKICNlbmRpZgogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZs
LmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBv
cnRFZmwuaAppbmRleCBkYzYxZWE2Li4zYmMyYjRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuaApA
QCAtODEsNyArODEsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgc2V0Q1NTR3JpZExheW91
dEVuYWJsZWQoY29uc3QgRXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCk7CiAgICAg
c3RhdGljIHZvaWQgc2V0Q1NTUmVnaW9uc0VuYWJsZWQoY29uc3QgRXZhc19PYmplY3QqIGV3a1Zp
ZXcsIGJvb2wgZW5hYmxlZCk7CiAgICAgc3RhdGljIHZvaWQgc2V0U2VhbWxlc3NJRnJhbWVzRW5h
YmxlZChib29sKTsKLSAgICBzdGF0aWMgdm9pZCBzZXRXZWJBdWRpb0VuYWJsZWQoYm9vbCk7Cisg
ICAgc3RhdGljIHZvaWQgc2V0V2ViQXVkaW9FbmFibGVkKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBi
b29sKTsKIAogICAgIHN0YXRpYyB2b2lkIGZvcmNlTGF5b3V0KEV2YXNfT2JqZWN0KiBld2tGcmFt
ZSk7CiAgICAgc3RhdGljIHZvaWQgc2V0VHJhY2tzUmVwYWludHMoRXZhc19PYmplY3QqIGV3a0Zy
YW1lLCBib29sIGVuYWJsZWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3
a192aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKaW5kZXggMmE3
YmQ4OS4uYWIyNzRiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCkBAIC03NTksNyAr
NzU5LDcgQEAgc3RhdGljIEV3a19WaWV3X1ByaXZhdGVfRGF0YSogX2V3a192aWV3X3ByaXZfbmV3
KEV3a19WaWV3X1NtYXJ0X0RhdGEqIHNtYXJ0RGF0YSkKICAgICBwcml2LT5wYWdlU2V0dGluZ3Mt
PnNldFVzZXNQYWdlQ2FjaGUodHJ1ZSk7CiAgICAgcHJpdi0+cGFnZVNldHRpbmdzLT5zZXRVc2Vz
RW5jb2RpbmdEZXRlY3RvcihmYWxzZSk7CiAjaWYgRU5BQkxFKFdFQl9BVURJTykKLSAgICBXZWJD
b3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRXZWJBdWRpb0VuYWJsZWQoZmFsc2UpOwor
ICAgIHByaXYtPnBhZ2VTZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVkKGZhbHNlKTsKICNlbmRp
ZgogICAgIHByaXYtPnBhZ2VTZXR0aW5ncy0+c2V0V2ViR0xFbmFibGVkKHRydWUpOwogICAgIHBy
aXYtPnBhZ2VTZXR0aW5ncy0+c2V0WFNTQXVkaXRvckVuYWJsZWQodHJ1ZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VM
b2cKaW5kZXggNmY4ZmY0NS4uNGJhMjY1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEzLTA2LTIxICBDaHJpc3RvcGhlIER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5n
LmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMTUwNjYzKTogVXNpbmcgd2Via2l0QXVkaW9D
b250ZXh0IGluIEluc3BlY3RvciBtYWtlcyBpdCB1bmRlZmluZWQgZXZlcnl3aGVyZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODI1CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgS2VudGFybyBIYXJhLgorCisgICAgICAgIFVzZSBTZXR0aW5ncyB0byBl
bmFibGUgV2ViIEF1ZGlvIGluc3RlYWQgb2YgUnVudGltZUVuYWJsZWRGZWF0dXJlcy4KKworICAg
ICAgICAqIHdlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfdmll
d191cGRhdGVfc2V0dGluZ3MpOgorICAgICAgICAod2Via2l0X3dlYl92aWV3X3NldHRpbmdzX25v
dGlmeSk6CisKIDIwMTMtMDYtMTggIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIFVwZGF0ZSBORVdTIGFuZCBWZXJzaW9ucy5t
NCBmb3IgMi4xLjIgcmVsZWFzZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2
aWV3LmNwcAppbmRleCBlYzUwYTdiLi43NmJiYzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2d0ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnZpZXcuY3BwCkBAIC0zNTcyLDcgKzM1NzIsNyBAQCBzdGF0aWMgdm9pZCB3
ZWJraXRfd2ViX3ZpZXdfdXBkYXRlX3NldHRpbmdzKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCiAj
ZW5kaWYKIAogI2lmIEVOQUJMRShXRUJfQVVESU8pCi0gICAgV2ViQ29yZTo6UnVudGltZUVuYWJs
ZWRGZWF0dXJlczo6c2V0V2ViQXVkaW9FbmFibGVkKHNldHRpbmdzUHJpdmF0ZS0+ZW5hYmxlV2Vi
QXVkaW8pOworICAgIGNvcmVTZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVkKHNldHRpbmdzUHJp
dmF0ZS0+ZW5hYmxlV2ViQXVkaW8pOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU01PT1RIX1NDUk9M
TElORykKQEAgLTM3MTgsNyArMzcxOCw3IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfdmlld19z
ZXR0aW5nc19ub3RpZnkoV2ViS2l0V2ViU2V0dGluZ3MqIHdlYlNldHRpbmdzLCBHUGFyCiAKICNp
ZiBFTkFCTEUoV0VCX0FVRElPKQogICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRlcm5fc3RyaW5n
KCJlbmFibGUtd2ViYXVkaW8iKSkKLSAgICAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0
V2ViQXVkaW9FbmFibGVkKGdfdmFsdWVfZ2V0X2Jvb2xlYW4oJnZhbHVlKSk7CisgICAgICAgIHNl
dHRpbmdzLT5zZXRXZWJBdWRpb0VuYWJsZWQoZ192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsK
ICNlbmRpZgogCiAjaWYgRU5BQkxFKFNNT09USF9TQ1JPTExJTkcpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5k
ZXggZjMwNmVlNy4uNDIxNTJkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisy
MDEzLTA2LTIwICBDaHJpc3RvcGhlIER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4K
KworICAgICAgICBSRUdSRVNTSU9OIChyMTUwNjYzKTogVXNpbmcgd2Via2l0QXVkaW9Db250ZXh0
IGluIEluc3BlY3RvciBtYWtlcyBpdCB1bmRlZmluZWQgZXZlcnl3aGVyZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODI1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgS2VudGFybyBIYXJhLgorCisgICAgICAgIFVzZSBTZXR0aW5ncyB0byBlbmFibGUg
V2ViIEF1ZGlvIGluc3RlYWQgb2YgUnVudGltZUVuYWJsZWRGZWF0dXJlcy4KKworICAgICAgICAq
IFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJlZmVyZW5jZXNDaGFu
Z2VkOl0pOgorCiAyMDEzLTA2LTIwICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIEZyYW1lVmlldyBuZWVkcyB0byBpbml0aWFsaXplIHBhaW50c0VudGly
ZUNvbnRlbnRzIG9uIGNyZWF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5k
ZXggYWE5ZmMyNC4uMjg3NjZkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpA
QCAtMTUwNyw3ICsxNTA3LDcgQEAgc3RhdGljIGJvb2wgbmVlZHNTZWxmUmV0YWluV2hpbGVMb2Fk
aW5nUXVpcmsoKQogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldENTU1JlZ2lvbnNFbmFi
bGVkKFtwcmVmZXJlbmNlcyBjc3NSZWdpb25zRW5hYmxlZF0pOwogICAgIFJ1bnRpbWVFbmFibGVk
RmVhdHVyZXM6OnNldENTU0NvbXBvc2l0aW5nRW5hYmxlZChbcHJlZmVyZW5jZXMgY3NzQ29tcG9z
aXRpbmdFbmFibGVkXSk7CiAjaWYgRU5BQkxFKFdFQl9BVURJTykKLSAgICBSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjpzZXRXZWJBdWRpb0VuYWJsZWQoW3ByZWZlcmVuY2VzIHdlYkF1ZGlvRW5hYmxl
ZF0pOworICAgIHNldHRpbmdzLT5zZXRXZWJBdWRpb0VuYWJsZWQoW3ByZWZlcmVuY2VzIHdlYkF1
ZGlvRW5hYmxlZF0pOwogI2VuZGlmCiAjaWYgRU5BQkxFKElGUkFNRV9TRUFNTEVTUykKICAgICBS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRTZWFtbGVzc0lGcmFtZXNFbmFibGVkKFtwcmVmZXJl
bmNlcyBzZWFtbGVzc0lGcmFtZXNFbmFibGVkXSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3F0L0FwaS9xd2Vic2V0dGluZ3MuY3BwIGIvU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnNldHRp
bmdzLmNwcAppbmRleCBlOGI3OWU5Li43MzQ0YmFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L3F0L0FwaS9xd2Vic2V0dGluZ3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJz
ZXR0aW5ncy5jcHAKQEAgLTE3NSw3ICsxNzUsNyBAQCB2b2lkIFFXZWJTZXR0aW5nc1ByaXZhdGU6
OmFwcGx5KCkKICNlbmRpZgogI2lmIEVOQUJMRShXRUJfQVVESU8pCiAgICAgICAgIHZhbHVlID0g
YXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6OldlYkF1ZGlvRW5hYmxlZCwgZ2xvYmFsLT5h
dHRyaWJ1dGVzLnZhbHVlKFFXZWJTZXR0aW5nczo6V2ViQXVkaW9FbmFibGVkKSk7Ci0gICAgICAg
IFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFdlYkF1ZGlvRW5hYmxlZCh2YWx1
ZSk7CisgICAgICAgIHNldHRpbmdzLT5zZXRXZWJBdWRpb0VuYWJsZWQodmFsdWUpOwogI2VuZGlm
CiAKICAgICAgICAgdmFsdWUgPSBhdHRyaWJ1dGVzLnZhbHVlKFFXZWJTZXR0aW5nczo6Q1NTUmVn
aW9uc0VuYWJsZWQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGE0ZmQ1YmQuLjM1NmYwNTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTMtMDYtMjAgIENocmlzdG9waGUgRHVtZXogIDxj
aC5kdW1lekBzaXNhLnNhbXN1bmcuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIxNTA2NjMp
OiBVc2luZyB3ZWJraXRBdWRpb0NvbnRleHQgaW4gSW5zcGVjdG9yIG1ha2VzIGl0IHVuZGVmaW5l
ZCBldmVyeXdoZXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMTc4MjUKKworICAgICAgICBSZXZpZXdlZCBieSBLZW50YXJvIEhhcmEuCisKKyAgICAg
ICAgVXNlIFNldHRpbmdzIHRvIGVuYWJsZSBXZWIgQXVkaW8gaW5zdGVhZCBvZiBSdW50aW1lRW5h
YmxlZEZlYXR1cmVzLgorCisgICAgICAgICogQXBpL3F3ZWJzZXR0aW5ncy5jcHA6CisgICAgICAg
IChRV2ViU2V0dGluZ3NQcml2YXRlOjphcHBseSk6CisKIDIwMTMtMDYtMTcgIE1pY2hhZWwgQnLD
vG5pbmcgIDxtaWNoYWVsLmJydW5pbmdAZGlnaWEuY29tPgogCiAgICAgICAgIFtRdF0gUmVtb3Zl
IFF0IHNwZWNpZmljIFFUS0lUIGZsYWdnZWQgY29kZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwppbmRleCA1YzY0
YjY5Li5iNzQ1YWIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTMtMDYt
MjAgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcuY29tPgorCisgICAg
ICAgIFJFR1JFU1NJT04gKHIxNTA2NjMpOiBVc2luZyB3ZWJraXRBdWRpb0NvbnRleHQgaW4gSW5z
cGVjdG9yIG1ha2VzIGl0IHVuZGVmaW5lZCBldmVyeXdoZXJlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc4MjUKKworICAgICAgICBSZXZpZXdlZCBi
eSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgVXNlIFNldHRpbmdzIHRvIGVuYWJsZSBXZWIgQXVk
aW8gaW5zdGVhZCBvZiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzLgorCisgICAgICAgICogV2ViVmll
dy5jcHA6CisgICAgICAgIChXZWJWaWV3Ojpub3RpZnlQcmVmZXJlbmNlc0NoYW5nZWQpOgorCiAy
MDEzLTA2LTE5ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAg
IFtXaW5kb3dzXSBDb3JyZWN0IHN0eWxlIG9uIGxhc3QgcGF0Y2guCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuY3Bw
CmluZGV4IDhjZTM3ZjMuLjM0NTM1NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dl
YlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCkBAIC00OTIzLDcg
KzQ5MjMsNyBAQCBIUkVTVUxUIFdlYlZpZXc6Om5vdGlmeVByZWZlcmVuY2VzQ2hhbmdlZChJV2Vi
Tm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24pCiAgICAgc2V0dGluZ3MtPnNldFNob3dSZXBhaW50
Q291bnRlcihlbmFibGVkKTsKIAogI2lmIEVOQUJMRShXRUJfQVVESU8pCi0gICAgUnVudGltZUVu
YWJsZWRGZWF0dXJlczo6c2V0V2ViQXVkaW9FbmFibGVkKHRydWUpOworICAgIHNldHRpbmdzLT46
c2V0V2ViQXVkaW9FbmFibGVkKHRydWUpOwogI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVESU8pCiAK
ICNpZiBFTkFCTEUoV0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTM5NjU2ZC4uMWJjNmVjYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEzLTA2LTIwICBDaHJpc3RvcGhlIER1bWV6ICA8Y2gu
ZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMTUwNjYzKTog
VXNpbmcgd2Via2l0QXVkaW9Db250ZXh0IGluIEluc3BlY3RvciBtYWtlcyBpdCB1bmRlZmluZWQg
ZXZlcnl3aGVyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTE3ODI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VudGFybyBIYXJhLgorCisgICAgICAg
IFVzZSBTZXR0aW5ncyB0byBlbmFibGUgV2ViIEF1ZGlvIGluc3RlYWQgb2YgUnVudGltZUVuYWJs
ZWRGZWF0dXJlcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZTo6b3ZlcnJpZGVC
b29sUHJlZmVyZW5jZUZvclRlc3RSdW5uZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5j
ZXMpOgorCiAyMDEzLTA2LTIwICBTZXJnaW8gQ29ycmVpYSAgPHNlcmdpby5jb3JyZWlhQG9wZW5i
b3NzYS5vcmc+CiAKICAgICAgICAgW1dLMl0gTG9vcGluZyBmb3IgRUlOVFIgb24gY2xvc2UoKSBp
cyBpbmNvcnJlY3QgZm9yIExpbnV4LCBhdCBsZWFzdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAppbmRl
eCA2MzBkOTZhLi5lZjRhODJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcApAQCAtMjA2LDExICsy
MDYsNiBAQCB2b2lkIEluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVz
dFJ1bm5lcihXZWJQYWdlR3JvdXBQcm94eSogcGFnZQogICAgICAgICBSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzZXRDU1NDb21wb3NpdGluZ0VuYWJsZWQoZW5hYmxlZCk7CiAjZW5kaWYKIAotI2lm
IEVOQUJMRShXRUJfQVVESU8pCi0gICAgaWYgKHByZWZlcmVuY2UgPT0gIldlYktpdFdlYkF1ZGlv
RW5hYmxlZCIpCi0gICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFdlYkF1ZGlvRW5h
YmxlZChlbmFibGVkKTsKLSNlbmRpZgotCiAgICAgLy8gTWFwIHRoZSBuYW1lcyB1c2VkIGluIExh
eW91dFRlc3RzIHdpdGggdGhlIG5hbWVzIHVzZWQgaW4gV2ViQ29yZTo6U2V0dGluZ3MgYW5kIFdl
YlByZWZlcmVuY2VzU3RvcmUuCiAjZGVmaW5lIEZPUl9FQUNIX09WRVJSSURFX0JPT0xfUFJFRkVS
RU5DRShtYWNybykgXAogICAgIG1hY3JvKFdlYktpdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFi
bGVkLCBBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCwgYWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z0VuYWJsZWQpIFwKQEAgLTIyNSw2ICsyMjAsNyBAQCB2b2lkIEluamVjdGVkQnVuZGxlOjpvdmVy
cmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcihXZWJQYWdlR3JvdXBQcm94eSogcGFnZQog
ICAgIG1hY3JvKFdlYktpdFBhZ2VDYWNoZVN1cHBvcnRzUGx1Z2luc1ByZWZlcmVuY2VLZXksIFBh
Z2VDYWNoZVN1cHBvcnRzUGx1Z2lucywgcGFnZUNhY2hlU3VwcG9ydHNQbHVnaW5zKSBcCiAgICAg
bWFjcm8oV2ViS2l0UGx1Z2luc0VuYWJsZWQsIFBsdWdpbnNFbmFibGVkLCBwbHVnaW5zRW5hYmxl
ZCkgXAogICAgIG1hY3JvKFdlYktpdFVzZXNQYWdlQ2FjaGVQcmVmZXJlbmNlS2V5LCBVc2VzUGFn
ZUNhY2hlLCB1c2VzUGFnZUNhY2hlKSBcCisgICAgbWFjcm8oV2ViS2l0V2ViQXVkaW9FbmFibGVk
LCBXZWJBdWRpb0VuYWJsZWQsIHdlYkF1ZGlvRW5hYmxlZCkgXAogICAgIG1hY3JvKFdlYktpdFdl
YkdMRW5hYmxlZCwgV2ViR0xFbmFibGVkLCB3ZWJHTEVuYWJsZWQpIFwKICAgICBtYWNybyhXZWJL
aXRYU1NBdWRpdG9yRW5hYmxlZCwgWFNTQXVkaXRvckVuYWJsZWQsIHhzc0F1ZGl0b3JFbmFibGVk
KSBcCiAgICAgbWFjcm8oV2ViS2l0U2hvdWxkUmVzcGVjdEltYWdlT3JpZW50YXRpb24sIFNob3Vs
ZFJlc3BlY3RJbWFnZU9yaWVudGF0aW9uLCBzaG91bGRSZXNwZWN0SW1hZ2VPcmllbnRhdGlvbikg
XApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4
IDY3ZTY4MmYuLjAxZTBjMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAKQEAgLTI1MjAsNyArMjUyMCw3IEBAIHZvaWQgV2ViUGFnZTo6dXBkYXRl
UHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAjZW5kaWYKIAog
I2lmIEVOQUJMRShXRUJfQVVESU8pCi0gICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0V2Vi
QXVkaW9FbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6
d2ViQXVkaW9FbmFibGVkS2V5KCkpKTsKKyAgICBzZXR0aW5ncy0+c2V0V2ViQXVkaW9FbmFibGVk
KHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6d2ViQXVkaW9FbmFi
bGVkS2V5KCkpKTsKICNlbmRpZgogCiAgICAgc2V0dGluZ3MtPnNldEFwcGxpY2F0aW9uQ2hyb21l
TW9kZShzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmFwcGxpY2F0
aW9uQ2hyb21lTW9kZUtleSgpKSk7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggZDAwNTMxMC4uNmY0ZTY3MSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEzLTA2LTIw
ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2guZHVtZXpAc2lzYS5zYW1zdW5nLmNvbT4KKworICAgICAg
ICBSRUdSRVNTSU9OIChyMTUwNjYzKTogVXNpbmcgd2Via2l0QXVkaW9Db250ZXh0IGluIEluc3Bl
Y3RvciBtYWtlcyBpdCB1bmRlZmluZWQgZXZlcnl3aGVyZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
S2VudGFybyBIYXJhLgorCisgICAgICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0V2Vi
QXVkaW9FbmFibGVkKCkgbm93IHJlcXVpcmVzIGFuIGFkZGl0aW9uYWwgdmlldyBhcmd1bWVudC4K
KworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHA6
CisgICAgICAgIChEdW1wUmVuZGVyVHJlZUNocm9tZTo6cmVzZXREZWZhdWx0c1RvQ29uc2lzdGVu
dFZhbHVlcyk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL1Rlc3RSdW5uZXJFZmwuY3Bw
OgorICAgICAgICAoVGVzdFJ1bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKToKKwogMjAxMy0wNi0y
MCAgUnl1YW4gQ2hvaSAgPHJ5dWFuLmNob2lAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0NNQUtF
XVtFRkxdIEVuYWJsZSBET000IEV2ZW50cyBDb25zdHJ1Y3RvcgpkaWZmIC0tZ2l0IGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAKaW5kZXggOGMwNzg2YS4uNWE2
MzM4NCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVl
Q2hyb21lLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVD
aHJvbWUuY3BwCkBAIC0zMjQsNyArMzI0LDcgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZUNocm9tZTo6
cmVzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlcygpCiAgICAgRHVtcFJlbmRlclRyZWVTdXBw
b3J0RWZsOjpzZXRTaG91bGRUcmFja1Zpc2l0ZWRMaW5rcyhmYWxzZSk7CiAgICAgRHVtcFJlbmRl
clRyZWVTdXBwb3J0RWZsOjpzZXRUcmFja3NSZXBhaW50cyhtYWluRnJhbWUoKSwgZmFsc2UpOwog
ICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0U2VhbWxlc3NJRnJhbWVzRW5hYmxlZCh0
cnVlKTsKLSAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFdlYkF1ZGlvRW5hYmxlZChm
YWxzZSk7CisgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRXZWJBdWRpb0VuYWJsZWQo
bWFpblZpZXcoKSwgZmFsc2UpOwogCiAgICAgLy8gUmVzZXQgY2FwYWNpdGllcyBmb3IgdGhlIG1l
bW9yeSBjYWNoZSBmb3IgZGVhZCBvYmplY3RzLgogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj
YWNoZVRvdGFsQ2FwYWNpdHkgPSAgODE5MiAqIDEwMjQ7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1w
UmVuZGVyVHJlZS9lZmwvVGVzdFJ1bm5lckVmbC5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9l
ZmwvVGVzdFJ1bm5lckVmbC5jcHAKaW5kZXggODVjNzBkYS4uOWY2NmU5NSAxMDA2NDQKLS0tIGEv
VG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL1Rlc3RSdW5uZXJFZmwuY3BwCisrKyBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2VmbC9UZXN0UnVubmVyRWZsLmNwcApAQCAtNjYxLDcgKzY2MSw3IEBAIHZv
aWQgVGVzdFJ1bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKEpTU3RyaW5nUmVmIGtleSwgSlNTdHJp
bmdSZWYgdmFsdWUpCiAgICAgZWxzZSBpZiAoZXF1YWxzKGtleSwgIldlYktpdENTU1JlZ2lvbnNF
bmFibGVkIikpCiAgICAgICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0Q1NTUmVnaW9u
c0VuYWJsZWQoYnJvd3Nlci0+bWFpblZpZXcoKSwgdG9Cb29sKHZhbHVlKSk7CiAgICAgZWxzZSBp
ZiAoZXF1YWxzKGtleSwgIldlYktpdFdlYkF1ZGlvRW5hYmxlZCIpKQotICAgICAgICBEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRFZmw6OnNldFdlYkF1ZGlvRW5hYmxlZCh0b0Jvb2wodmFsdWUpKTsKKyAg
ICAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRXZWJBdWRpb0VuYWJsZWQoYnJvd3Nl
ci0+bWFpblZpZXcoKSwgdG9Cb29sKHZhbHVlKSk7CiAgICAgZWxzZSBpZiAoZXF1YWxzKGtleSwg
IldlYktpdERpc3BsYXlJbWFnZXNLZXkiKSkKICAgICAgICAgZXdrX3ZpZXdfc2V0dGluZ19hdXRv
X2xvYWRfaW1hZ2VzX3NldChicm93c2VyLT5tYWluVmlldygpLCB0b0Jvb2wodmFsdWUpKTsKICAg
ICBlbHNlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>