<?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>221811</bug_id>
          
          <creation_ts>2021-02-12 05:57:57 -0800</creation_ts>
          <short_desc>WebGL contexts do not work as source for Context2D drawImage calls in GPU process</short_desc>
          <delta_ts>2021-02-25 03:27:56 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebGL</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>221748</dependson>
          <blocked>217211</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kimmo Kinnunen">kkinnunen</reporter>
          <assigned_to name="Kimmo Kinnunen">kkinnunen</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>graouts</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kbr</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1728542</commentid>
    <comment_count>0</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-12 05:57:57 -0800</bug_when>
    <thetext>WebGL contexts do not work as source for Context2D drawImage calls in GPU process</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728548</commentid>
    <comment_count>1</comment_count>
      <attachid>420117</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-12 06:37:54 -0800</bug_when>
    <thetext>Created attachment 420117
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729143</commentid>
    <comment_count>2</comment_count>
      <attachid>420312</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-15 06:09:39 -0800</bug_when>
    <thetext>Created attachment 420312
rebase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729199</commentid>
    <comment_count>3</comment_count>
      <attachid>420312</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-15 09:50:58 -0800</bug_when>
    <thetext>Comment on attachment 420312
rebase

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

I’m not a deep subject matter expert, but this looks good.

&gt; Source/WebCore/platform/graphics/cairo/GraphicsContextGLCairo.cpp:109
&gt; +void GraphicsContextGLOpenGL::paintToCanvas(const GraphicsContextGLAttributes&amp; attributes, Ref&lt;ImageData&gt;&amp;&amp; imageData, const IntSize&amp; canvasSize, GraphicsContext&amp; context)

Some ambiguity since both contextAttributes() and this attributes argument exist. Is there any way to make the distinction between the two clearer. I’m guessing that it’s about source attributes vs. destination attributes?

&gt; Source/WebCore/platform/graphics/cg/GraphicsContextGLCG.cpp:518
&gt; +    auto attrs = attributes;

No reason to copy these just to check two flags a couple lines later. I suggest getting rid of this local variable.

&gt; Source/WebCore/platform/graphics/cocoa/GraphicsContextGLIOSurfaceSwapChain.cpp:55
&gt; +    void* result = m_displayBuffer.handle;
&gt; +    m_displayBuffer.handle = nullptr;
&gt; +    return result;

Might be nice to write this with std::exchange:

    return std::exchange(m_displayBuffer.handle, nullptr);

&gt; Source/WebCore/platform/graphics/cocoa/GraphicsContextGLIOSurfaceSwapChain.cpp:61
&gt; +    m_spareBuffer = WTFMove(m_displayBuffer);
&gt; +    m_displayBuffer = WTFMove(buffer);

Might be nice to write this with std::exchange:

    m_spareBuffer = std::exchange(m_displayBuffer, WTFMove(buffer));

&gt; Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGLCocoa.cpp:55
&gt; +    return std::unique_ptr&lt;RemoteGraphicsContextGL&gt;(new RemoteGraphicsContextGLCocoa(attributes, gpuConnectionToWebProcess, graphicsContextGLIdentifier, renderingBackend));

Can this be written using make_unique instead? It’s worth a little effort to avoid the bare &quot;new&quot; for cases like this.

&gt; Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGLCocoa.cpp:68
&gt; +    auto* surface = m_swapChain.displayBuffer().surface.get();
&gt; +    if (surface)

Nicer to define inside the if.

    if (auto surface = ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730344</commentid>
    <comment_count>4</comment_count>
      <attachid>420661</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-17 10:09:46 -0800</bug_when>
    <thetext>Created attachment 420661
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730347</commentid>
    <comment_count>5</comment_count>
      <attachid>420663</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-17 10:15:06 -0800</bug_when>
    <thetext>Created attachment 420663
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730352</commentid>
    <comment_count>6</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-17 10:18:39 -0800</bug_when>
    <thetext>Thanks for the review!
I had to do a cosmetic simplification from
&quot;send an async message with a makeshift fence and wait for the fence&quot;
to
&quot;send a synchronous message&quot;.

There&apos;s no functional difference, as both were synchronous.

This is due to the use of flush id as the makeshift fence. The RemoteImageBufferProxy did not survive changing the flush ids like that, yet. I&apos;ll work making this more asynchronous later, once other bugs in RemoteRenderingBackend are fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730385</commentid>
    <comment_count>7</comment_count>
      <attachid>420663</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-17 10:54:08 -0800</bug_when>
    <thetext>Comment on attachment 420663
Patch

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

Again a few style thoughts.

&gt; Source/WebCore/platform/graphics/cocoa/WebGLLayer.mm:115
&gt; +    WebCore::GraphicsContextGLIOSurfaceSwapChain::present(WTFMove(buffer));

Pretty sure that you don’t need the namespace prefix &quot;WebCore&quot; when using the name of a base class.

&gt; Source/WebCore/platform/graphics/opengl/GraphicsContextGLOpenGL.cpp:226
&gt;      // Reading premultiplied alpha would involve unpremultiplying, which is
&gt;      // lossy.

Drives me crazy to have that orphaned word. Merging this into one line will make me sleep better at night. (If I coded for a few years with 80 column style like they use at Google maybe my tastes would change?)

&gt; Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp:154
&gt; +    // TODO: We do not have functioning read/write fences in RemoteRenderingBackend. Thus this is synchronous,
&gt; +    // as is the messages that call these.

Grammar mistake, &quot;is&quot; -&gt; &quot;are&quot;.

We use FIXME and not TODO on WebKit.

I am not at all familiar with how OK or not OK it is to use synchronous messages for this, nor if this is a long term thing or a short term expedient intermediate step.

&gt; Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp:160
&gt; +            // Note: here we do not try to play back pending commands for imageBuffer. Currently this call is only made for empty

I suggest leaving out &quot;Note:&quot; here.

&gt; Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.messages.in:40
&gt; +    void PaintRenderingResultsToCanvas(WebCore::RenderingResourceIdentifier renderingResourceIdentifier) -&gt; () Synchronous
&gt; +    void PaintCompositedResultsToCanvas(WebCore::RenderingResourceIdentifier renderingResourceIdentifier) -&gt; () Synchronous

Given the type name, I would be tempted to just use the word &quot;identifier&quot; as the argument name.

&gt; Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGLCocoa.cpp:53
&gt; +std::unique_ptr&lt;RemoteGraphicsContextGL&gt; RemoteGraphicsContextGL::create(const WebCore::GraphicsContextGLAttributes&amp; attributes, GPUConnectionToWebProcess&amp; gpuConnectionToWebProcess, GraphicsContextGLIdentifier graphicsContextGLIdentifier, RemoteRenderingBackend&amp; renderingBackend)

I would name the arguments with shorter names: &quot;connection&quot;, &quot;identifier&quot;, &quot;backEnd&quot;. The type names have enough of the rest of the context.

&gt; Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGLCocoa.cpp:58
&gt; +RemoteGraphicsContextGLCocoa::RemoteGraphicsContextGLCocoa(const WebCore::GraphicsContextGLAttributes&amp; attributes, GPUConnectionToWebProcess&amp; connection, GraphicsContextGLIdentifier identifier, RemoteRenderingBackend&amp; renderingBackend)

Hey, you did two of the three of those here!

&gt; Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp:47
&gt; +RefPtr&lt;RemoteGraphicsContextGLProxy&gt; RemoteGraphicsContextGLProxy::create(const GraphicsContextGLAttributes&amp; attributes, RenderingBackendIdentifier renderingBackendIdentifier)

Shorter name idea again.

&gt; Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp:52
&gt; +RemoteGraphicsContextGLProxy::RemoteGraphicsContextGLProxy(GPUProcessConnection&amp; gpuProcessConnection, const GraphicsContextGLAttributes&amp; attrs, RenderingBackendIdentifier renderingBackendIdentifier)

Shorter name idea again. Also would be nice to consistently use &quot;attributes&quot; instead of mixing &quot;attrs&quot; and &quot;attributes&quot;.

&gt; Tools/Scripts/generate-gpup-webgl:105
&gt; +    void PaintRenderingResultsToCanvas(WebCore::RenderingResourceIdentifier renderingResourceIdentifier) -&gt; () Synchronous
&gt; +    void PaintCompositedResultsToCanvas(WebCore::RenderingResourceIdentifier renderingResourceIdentifier) -&gt; () Synchronous

Shorter name idea again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730783</commentid>
    <comment_count>8</comment_count>
      <attachid>420808</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-18 01:32:24 -0800</bug_when>
    <thetext>Created attachment 420808
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730789</commentid>
    <comment_count>9</comment_count>
      <attachid>420812</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-18 01:58:26 -0800</bug_when>
    <thetext>Created attachment 420812
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730819</commentid>
    <comment_count>10</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-18 05:07:41 -0800</bug_when>
    <thetext>Thanks! Applied the naming changes where I could and where I understood to spot them.

Not shortening the name GPUConnectionToWebProcess&amp; gpuConnectionToWebProcess at the sites the variable is used since it&apos;s ambiguous to the use of &quot;connection&quot;, as that&apos;s used in related code for &quot;Connection connection&quot;. Not using &quot;gpuConnection&quot; either, as that&apos;s a different thing. Similar to GPUProcessConnection, not using &quot;connection&quot;, &quot;gpuProcess&quot; or similar shortening, to avoid confusion with different, exisiting concepts &quot;Connection&quot;, &quot;GPUProcess&quot;. Existing code uses the naming.

Not shortening the name &quot;RemoteRenderingBackend&amp; renderingBackend&quot; to &quot;backend&quot;, as that would imply that the backend was backend of RemoteGraphicsContextGL -- it&apos;s not. Similar to imaginary case &quot;RemoteRenderingService&amp; renderingService&quot;, it would not be shortened to &quot;service&quot;. The concept is &quot;RenderingBackend&quot; (whether or not that&apos;s a good name). Not using &quot;backEnd&quot;, since the type is &quot;Backend&quot;, not &quot;BackEnd&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730870</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-18 08:54:59 -0800</bug_when>
    <thetext>I’m OK with those decisions, but let me tell you why I wouldn’t have necessarily made the same ones:

There’s no English word &quot;backend&quot;, and I wish we would not coin that word for WebKit. Even if it’s already done, I won’t go along with it in new names I come up with.

In short functions, I don’t think the argument names need to carry the entire semantic. I agree that if the function was longer you wouldn’t want a name that could be ambiguous, but I don’t think that each variable name needs to be unambiguous on its own. We prefer words to letters in most cases because we think it’s better for human understanding in most cases, but like other programmers who use letters, we understand that in a narrow scope a variable name is just a local handle for something and doesn’t carry the full context.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730897</commentid>
    <comment_count>12</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-18 09:46:40 -0800</bug_when>
    <thetext>Committed r273080: &lt;https://commits.webkit.org/r273080&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 420812.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730898</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-18 09:47:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/74481898&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731242</commentid>
    <comment_count>14</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-18 23:56:49 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #11)
&gt; In short functions, I don’t think the argument names need to carry the
&gt; entire semantic. I agree that if the function was longer you wouldn’t want a
&gt; name that could be ambiguous, but I don’t think that each variable name
&gt; needs to be unambiguous on its own.

Sure, and I agree. I did follow that rule for the cases which were unambiguous enough. For the cases that I did not follow that rule: the variable names need to be unambiguous in the context of the code at hand.

In this part of the proxy side of the code, there&apos;s frequent use of concepts:
- gpuProcessConnection
- gpuProcessProxy
- gpuProcess
- connection
- gpuConnectionToWebProcess


Often times around this code, as was in the patch, multiple of these concepts are present even in the scope. As such, I&apos;d imagine using ambiguous shorthand that clashes semantically as well as lexically is more confusing than the benefit of the short name.


&gt; There’s no English word &quot;backend&quot;, and I wish we would not coin that word for WebKit. Even if it’s already done, I won’t go along with it in new names I come up with.

Sure, I can understand this, especially with *new* new names, e.g. when the concept is created. In this patch, the parameter was new in the sense that it was added to a constructor, but not new in the sense that similar things were all over the code base already.

But you must see this being quite impossible for me. This is problematic as it creates reviewer-induced inconsistency: if the original author of RenderingBackend would have reviewed, he would call my &apos;backEnd&apos; incorrect. If you review, you call my &apos;backend&apos; incorrect. You say &apos;not a word&apos;, he says &apos;defacto word&apos; or &apos;consistency&apos;. 

This puts me into a situation that I need to guess who eventually is reviewing the patch and what are their personal preferences. Now I had other existing code calling backend &apos;backend&apos;, and then if I add another function, suddenly the backend is &apos;backEnd&apos;, since it was a different reviewer. I don&apos;t necessarily agree that this decision would&apos;ve made the code base better, even though technically backend is not a word in non-technical dictionary.

One solution would be to list commonly misused English phrases like &quot;back 
end&quot;, &quot;wake up&quot;, &quot;code base&quot; in coding style and bring everybody up-up-to-date with the expectation of what is correct and what is incorrect. If one reviewer has a rule and other reviewer has an opposing rule, it is hard to work autonomously.

I went with the solution of being consistent with the existing codebase, which I interpreted as implicit rule in the coding style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731279</commentid>
    <comment_count>15</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-19 02:08:37 -0800</bug_when>
    <thetext>(In reply to Kimmo Kinnunen from comment #14)
&gt; But you must see this being quite impossible for me. This is problematic as
&gt; it creates reviewer-induced inconsistency: if the original author of
&gt; RenderingBackend would have reviewed, he would call my &apos;backEnd&apos; incorrect.
&gt; If you review, you call my &apos;backend&apos; incorrect. You say &apos;not a word&apos;, he
&gt; says &apos;defacto word&apos; or &apos;consistency&apos;. 

OTOH, I don&apos;t know if this is a problem in practice. And even if it were, maybe it should be addressed at that point (suggesting incorrect use) than in this point (suggesting correct use of word).

I&apos;ll use &apos;backEnd&apos; from now on.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733277</commentid>
    <comment_count>16</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-25 03:27:56 -0800</bug_when>
    <thetext>*** Bug 219351 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420117</attachid>
            <date>2021-02-12 06:37:54 -0800</date>
            <delta_ts>2021-02-15 06:09:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221811-20210212163752.patch</filename>
            <type>text/plain</type>
            <size>77668</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNzEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTA2N2M2YmIyZDQ2YTFh
NmQyMjI3YmQ5MGVlODI3Y2U3NmZhYTA4Zi4uMzEyYzkyOTc1OTk0NTVjYTdlNGZmNzA4NjgzNGE5
OTdmYTM1Y2M0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIxLTAyLTEyICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgY29udGV4
dHMgZG8gbm90IHdvcmsgYXMgc291cmNlIGZvciBDb250ZXh0MkQgZHJhd0ltYWdlIGNhbGxzIGlu
IEdQVSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjE4MTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJbXBsZW1lbnRzIHJ1ZGltZW50YXJ5IHN1cHBvcnQgZm9yIHJlYWRpbmcgdGhlIFdlYkdM
IGNvbnRleHQgYW5kIHRyYW5zZmVyaW5nCisgICAgICAgIGl0IHRvIGEgSW1hZ2VCdWZmZXIuCisK
KyAgICAgICAgRml4ZXMgbWFueSB0ZXN0cyB0aGF0IGFyZSByZW1vdmVkIGZyb20gZ3B1LXByb2Nl
c3MvVGVzdEV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIGh0bWwvT2Zmc2NyZWVuQ2FudmFzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6dHJhbnNmZXJUb0ltYWdlQml0
bWFwKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnBhaW50UmVu
ZGVyaW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHRHTC5oOgorICAgICAgICBNYWtlIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2Fu
dmFzIGFuZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMKKyAgICAgICAgdGFrZSBJbWFn
ZUJ1ZmZlciYgaW5zdGVhZCBvZiBJbWFnZUJ1ZmZlciosIHNpbmNlIHRoZSBidWZmZXIgYWx3YXlz
CisgICAgICAgIGV4aXN0cy4KKworICAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9H
cmFwaGljc0NvbnRleHRHTENhaXJvLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgQ2hhbmdlIHRoZSBmdW5j
dGlvbiBzaWduYXR1cmUgc28gdGhhdCBpdCBjYW4gYmUgY2FsbGVkIGZyb20KKyAgICAgICAgb3Ro
ZXIgdGhyZWFkIGFuZCB3aXRob3V0IEdyYXBoaWNzQ29udGV4dEdMIGluc3RhbmNlLgorICAgICAg
ICBJdCBpcyBub3QgcmVhbGx5IGEgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wgcmVsYXRlZCBmdW5j
dGlvbi4uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6ZGlzcGxheUJ1ZmZlciBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1
ZmZlcik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBD
aGFpbjo6ZGV0YWNoQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdM
SU9TdXJmYWNlU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW06CisgICAgICAgIChXZWJHTExh
eWVyU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgTW92ZSB0aGUgdHJpcGxlIGJ1ZmZlcmlu
ZyBpbXBsZW1lbnRhdGlvbiB0byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgVGhlIGltcGxlbWVu
dGF0aW9uIGlzIG5vdyBhbHNvIHVzZWQgaW4gR1BVIHByb2Nlc3Mgc2lkZSwKKyAgICAgICAgc2lu
Y2UgdGhlIEdQVSBwcm9jZXNzIG5lZWRzIHRvIGJlIGFibGUgdG8gcmVhZCB0aGUgY29tcG9zaXRl
ZAorICAgICAgICByZXN1bHRzLgorCisgICAgICAgIFByZXZpb3VzbHkgdGhlIHNhbWUgbG9naWMg
d2FzIHNwbGl0IGJldHdlZW4gV2ViIHByb2Nlc3MgYW5kIEdQVSBwcm9jZXNzLgorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VCdWZmZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6Oklt
YWdlQnVmZmVyOjptYWtlUmVhZEZlbmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlQnVmZmVy
Ojpjb21taXRSZWFkRmVuY2UpOgorCisgICAgICAgIEFkZCBydWRpbWVudGFyeSBmdW5jdGlvbnMg
dG8gZXh0cmFjdCB0aGUgZmx1c2ggaWRlbnRpZmllciBhcyBhCisgICAgICAgICJyZWFkIGZlbmNl
Ii4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRH
TE9wZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6
cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0xPcGVuR0w6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyk6CisgICAg
ICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRSZW5kZXJpbmdSZXN1
bHRzVG9JbWFnZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xPcGVu
R0w6OnJlYWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRDb21wb3NpdGVkUmVzdWx0c0ZvclBhaW50aW5n
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0wuaDoKKworICAgICAgICBFeHBvc2UgcHVibGljIGZ1bmN0aW9ucyB0byBnZXQgSW1hZ2VE
YXRhIG91dCBvZiBkcmF3aW5nIGJ1ZmZlciBhbmQKKyAgICAgICAgZGlzcGxheSBidWZmZXIuCisK
IDIwMjEtMDItMTAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAg
TW92ZSBBdWRpb0hhcmR3YXJlTGlzdGVuZXIgaW50byB0aGUgR1BVIFByb2Nlc3MKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5k
ZXggYzg5NzdjZjNhNTMwNjE4NTg5MWZmMjljYzI4MDQ2NWZjNWI3OGM3NC4uM2E4Mjc1ODI5ODk0
ODI2OGI3ZWU1MTFhYTEzNTllYjgwMTBlM2ZlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMjMgQEAK
KzIwMjEtMDItMTIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAg
ICAgICBXZWJHTCBjb250ZXh0cyBkbyBub3Qgd29yayBhcyBzb3VyY2UgZm9yIENvbnRleHQyRCBk
cmF3SW1hZ2UgY2FsbHMgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTgxMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudHMgcnVkaW1lbnRhcnkgc3VwcG9ydCBmb3Ig
cmVhZGluZyB0aGUgV2ViR0wgY29udGV4dCBhbmQgdHJhbnNmZXJpbmcKKyAgICAgICAgaXQgdG8g
YSBJbWFnZUJ1ZmZlci4KKworICAgICAgICBGaXhlcyBtYW55IHRlc3RzIHRoYXQgYXJlIHJlbW92
ZWQgZnJvbSBncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zLgorCisgICAgICAgICogR1BVUHJv
Y2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6R1BV
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0wpOgorICAgICAg
ICAqIEdQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oOgorICAgICAgICAoV2Vi
S2l0OjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3Jh
cHBlcjo6Z2V0IGNvbnN0KToKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dl
YlByb2Nlc3MubWVzc2FnZXMuaW46CisgICAgICAgICogR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1v
dGVHcmFwaGljc0NvbnRleHRHTC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0wpOgorICAgICAgICogV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJv
bWVDbGllbnQ6OmNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMIGNvbnN0KToKKyAgICAgICAgKiBHUFVQ
cm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xDb2NvYSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVy
aW5nQmFja2VuZFByb3h5Lmg6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZVJlbmRlcmluZ0JhY2tl
bmRQcm94eTo6cmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIgY29uc3QpOgorCisgICAgICAgIFJl
bW90ZUdyYXBoaWNzQ29udGV4dEdMIHRha2VzIGEgcmVmIG9mIHRoZSByZXNwZWN0aXZlIFJlbW90
ZVJlbmRlcmluZ0JhY2tlbmQuCisgICAgICAgIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQgaXMgdGhl
IG9uZSB0aGF0IGNhbiBoYW5kbGUgSW1hZ2VCdWZmZXJzLgorCisgICAgICAgIChXZWJLaXQ6OlJl
bW90ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyk6Cisg
ICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWludENvbXBvc2l0ZWRS
ZXN1bHRzVG9DYW52YXMpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRH
TDo6cGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dy
YXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmg6CisgICAgICAgICogR1BVUHJvY2Vzcy9n
cmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5tZXNzYWdlcy5pbjoKKworICAgICAgICBJ
bXBsZW1lbnQgdGhlIGZ1bmN0aW9ucyBieToKKyAgICAgICAgIDEpIFRha2UgYSByZWFkIGZlbmNl
IG9mIHRoZSBJbWFnZUJ1ZmZlcgorICAgICAgICAgMikgUG9zdGluZyB0aGUgdGFzayBmcm9tIFdl
YiBwcm9jZXNzIHRvIEdQVSBwcm9jZXNzIFdlYkdMIHNlcXVlbmNlCisgICAgICAgICAzKSBSZWFk
aW5nIHRoZSBidWZmZXIsIHBvc3QgdGhlIHRhc2sgdG8gUmVuZGVyaW5nQmFja2VuZCBzZXF1ZW5j
ZQorICAgICAgICAgNCkgUGFpbnQgdGhlIHJlc3VsdHMgdG8gdGhlIEltYWdlQnVmZmVyIGFuZCBz
aWduYWwgdGhlIHJlYWQgZmVuY2UKKworICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTENvY29hOjpwcmVwYXJlRm9yRGlzcGxheSk6CisKKyAgICAgICAgUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0wgbm93IHJldGFpbnMgdGhlIHJlZmVyZW5jZSB0byBkaXNwbGF5IGJ1ZmZlci4K
KyAgICAgICAgQmVmb3JlLCBqdXN0IHNlbnQgdGhlIGRpc3BsYXkgYnVmZmVyIHRvIFdlYiBwcm9j
ZXNzIGFuZCBmb3Jnb3QKKyAgICAgICAgYWJvdXQgaXQuCisKKyAgICAgICAgKiBHUFVQcm9jZXNz
L2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwOgorICAgICAgICAoV2ViS2l0OjpS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjpkaXNwYXRjaCk6CisgICAgICAgICogR1BVUHJvY2Vzcy9n
cmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmg6CisKKyAgICAgICAgQWRkIGZ1bmN0aW9u
IHRvIGRpc3BhdGNoIHdvcmsgdG8gcmVuZGVyaW5nIGJhY2tlbmQgc2VxdWVuY2UuCisKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6UmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMUHJveHk6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAg
ICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6cGFpbnRDb21wb3NpdGVk
UmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1v
dGVHcmFwaGljc0NvbnRleHRHTFByb3h5Lmg6CisKKyAgICAgICAgU2VuZCB0aGUgbWVzc2FnZXMu
CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1ZmZlclBy
b3h5Lmg6CisKKyAgICAgICAgQWRkIHJ1ZGltZW50YXJ5IGZ1bmN0aW9ucyB0byBleHRyYWN0IHRo
ZSBmbHVzaCBpZGVudGlmaWVyIGFzIGEKKyAgICAgICAgInJlYWQgZmVuY2UiLgorCisgICAgICAg
ICogV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5Ojpjb25uZWN0
VG9HUFVQcm9jZXNzKToKKworICAgICAgICBVc2UgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1l
c3NhZ2VFdmVuV2hlbldhaXRpbmdGb3JTeW5jUmVwbHkgdG8KKyAgICAgICAgc2VuZCBDcmVhdGVS
ZW5kZXJpbmdCYWNrZW5kLiBJdCBtdXN0IGJlIGRpc3BhdGNoZWQgaW4gb3JkZXIgY29tcGFyZWQg
dG8gb3RoZXIKKyAgICAgICAgbWVzc2FnZXMgc3VjaCBhcyBDcmVhdGVSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTC4KKworCisyMDIxLTAyLTEyICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBs
ZS5jb20+CisKKyAgICAgICAgR1BVIHByb2Nlc3MgV2ViR0wgY29udGV4dCB0b0RhdGFVUkwgZG9l
cyBub3Qgd29yayBmb3Igbm9uLXByZW11bHRpcGxpZWQgY29udGV4dHMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHdvcmtpbmcKKworICAgICAgICAqIEdQ
VVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6
OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKToKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaDoKKyAgICAgICAg
KFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZFdyYXBwZXI6OmdldCBjb25zdCk6CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3Mv
UmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFw
aGljc0NvbnRleHRHTDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0w6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKToKKyAgICAgICAgKFdlYktpdDo6UmVt
b3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKToKKyAg
ICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50Q29tcG9zaXRlZFJl
c3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
OjpwYWludEltYWdlRGF0YVRvSW1hZ2VCdWZmZXIpOgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3Jh
cGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaDoKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dy
YXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2VzLmluOgorICAgICAgICAqIEdQ
VVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpjcmVhdGUpOgorICAgICAgICAo
V2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTENvY29hKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2Nv
YTo6cHJlcGFyZUZvckRpc3BsYXkpOgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3MvUmVt
b3RlUmVuZGVyaW5nQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZVJlbmRlcmlu
Z0JhY2tlbmQ6OmRpc3BhdGNoKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZVJlbmRlcmluZ0JhY2tlbmQuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9S
ZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eSk6Cisg
ICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OnBhaW50UmVuZGVy
aW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eTo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5Lmg6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlSW1hZ2VCdWZmZXJQcm94eS5o
OgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tl
bmRQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94
eTo6Y29ubmVjdFRvR1BVUHJvY2Vzcyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvZ3JhcGhp
Y3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5Lmg6CisgICAgICAgIChXZWJLaXQ6OlJlbW90
ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6cmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIgY29uc3Qp
OgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVHcmFwaGljc0NvbnRl
eHRHTCBjb25zdCk6CisKIDIwMjEtMDItMTEgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFw
cGxlLmNvbT4KIAogICAgICAgICBHUFUgcHJvY2VzcyBXZWJHTCBjb250ZXh0IHRvRGF0YVVSTCBk
b2VzIG5vdCB3b3JrIGZvciBub24tcHJlbXVsdGlwbGllZCBjb250ZXh0cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwCmluZGV4IDZmYTA0ZGMzNTVmODZjZWUzMGJlOGRjMzkz
ZTMwNTJlZTMxYzYzNzUuLjE4ZThlZWI1ZDhhMjRhMTNlMTA5MzY0NzZlZTAwZjdmZTliMmQ3MTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5jcHAKQEAgLTI4NCw3ICsyODQs
NyBAQCBFeGNlcHRpb25PcjxSZWZQdHI8SW1hZ2VCaXRtYXA+PiBPZmZzY3JlZW5DYW52YXM6OnRy
YW5zZmVyVG9JbWFnZUJpdG1hcCgpCiAgICAgICAgICAgICByZXR1cm4geyBSZWZQdHI8SW1hZ2VC
aXRtYXA+IHsgbnVsbHB0ciB9IH07CiAKICAgICAgICAgYXV0byogZ2MzZCA9IHdlYkdMQ29udGV4
dC0+Z3JhcGhpY3NDb250ZXh0R0woKTsKLSAgICAgICAgZ2MzZC0+cGFpbnRSZW5kZXJpbmdSZXN1
bHRzVG9DYW52YXMoaW1hZ2VCaXRtYXAtPmJ1ZmZlcigpKTsKKyAgICAgICAgZ2MzZC0+cGFpbnRS
ZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoKmltYWdlQml0bWFwLT5idWZmZXIoKSk7CiAKICAgICAg
ICAgLy8gRklYTUU6IFRoZSB0cmFuc2ZlciBhbGdvcml0aG0gcmVxdWlyZXMgdGhhdCB0aGUgY2Fu
dmFzIGVmZmVjdGl2ZWx5CiAgICAgICAgIC8vIGNyZWF0ZXMgYSBuZXcgYmFja2luZyBzdG9yZS4g
U2luY2Ugd2UncmUgbm90IGRvaW5nIHRoYXQgeWV0LCB3ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcAppbmRleCAz
ODE1OWJmYjcxODhkYjc5MzY4NmI2MmJjNjI5NzcyY2I4NjE4OTNjLi5kZWE3YzI2ODA4NTZlYmZi
NDY5ZWZhOWFkZmI1YWIyNWVhYTNjODRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcApAQCAtMTIxMCw3ICsx
MjEwLDcgQEAgdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjpwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0NhbnZhcygpCiAgICAgICAgICAgICBhdXRvJiBiYXNlID0gY2FudmFzQmFzZSgpOwog
ICAgICAgICAgICAgYmFzZS5jbGVhckNvcGllZEltYWdlKCk7CiAgICAgICAgICAgICBtX21hcmtl
ZENhbnZhc0RpcnR5ID0gZmFsc2U7Ci0gICAgICAgICAgICBtX2NvbnRleHQtPnBhaW50Q29tcG9z
aXRlZFJlc3VsdHNUb0NhbnZhcyhiYXNlLmJ1ZmZlcigpKTsKKyAgICAgICAgICAgIG1fY29udGV4
dC0+cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKCpiYXNlLmJ1ZmZlcigpKTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtMTIyNSw3ICsxMjI1LDcgQEAgdm9pZCBX
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcygp
CiAKICAgICBtX21hcmtlZENhbnZhc0RpcnR5ID0gZmFsc2U7CiAKLSAgICBtX2NvbnRleHQtPnBh
aW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKGJhc2UuYnVmZmVyKCkpOworICAgIG1fY29udGV4
dC0+cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoKmJhc2UuYnVmZmVyKCkpOwogfQogCiBS
ZWZQdHI8SW1hZ2VEYXRhPiBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjpwYWludFJlbmRlcmlu
Z1Jlc3VsdHNUb0ltYWdlRGF0YSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0wuaAppbmRleCAwMDI2MjQ1ZTQ3OTcyN2RlZmNjMDEx
ZTZlOGExZmRjNTRlMzMxYzZlLi5mN2RjOGFlYzFiMGIzN2ZhYmE1MzZjZDQ3Y2MwMjVmNTk3ZjAz
NzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHRHTC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBo
aWNzQ29udGV4dEdMLmgKQEAgLTEyOTEsOSArMTI5MSw5IEBAIHB1YmxpYzoKICAgICAvLyBGSVhN
RTogdGhlc2Ugc2hvdWxkIGJlIHJlbW92ZWQsIHRoZXkncmUgcGFydCBvZiBkcmF3aW5nIGJ1ZmZl
ciBhbmQKICAgICAvLyBkaXNwbGF5IGJ1ZmZlciBhYnN0cmFjdGlvbnMgdGhhdCB0aGUgY2FsbGVy
IHNob3VsZCBob2xkIHNlcGFyYXRlIHRvCiAgICAgLy8gdGhlIGNvbnRleHQuCi0gICAgdmlydHVh
bCB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZl
ciYpID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0cjxJbWFnZURhdGE+IHBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvSW1hZ2VEYXRhKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBwYWludENvbXBvc2l0ZWRS
ZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXIqKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHBhaW50
Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYpID0gMDsKIAogICAgIC8vIEZJ
WE1FOiB0aGlzIHNob3VsZCBiZSByZW1vdmVkLiBUaGUgbGF5ZXIgc2hvdWxkIGJlIG1hcmtlZCBj
b21wb3NpdGVkIGJ5CiAgICAgLy8gcHJlcGFyaW5nIGZvciBkaXNwbGF5LCBzbyB0aGF0IGNhbnZh
cyBpbWFnZSBidWZmZXIgYW5kIHRoZSBsYXllciBhZ3JlZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VCdWZmZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ltYWdlQnVmZmVyLmgKaW5kZXggNzVjYzc5N2I1MmNmMGNhZTU3NTcy
MThjNzVmMTkzMGM2ZTgzODFlNi4uNTYxZjIwOGQxMDNkNDhiMzAxOGJlYWIwMDMxYTZhZjNkNmVm
Yzc1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VC
dWZmZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZUJ1ZmZl
ci5oCkBAIC04MSw2ICs4MSwxMCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGZsdXNoRHJh
d2luZ0NvbnRleHQoKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgZmx1c2hEcmF3aW5nQ29udGV4dEFz
eW5jKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZEZsdXNoKERpc3BsYXlMaXN0OjpGbHVzaElk
ZW50aWZpZXIpIHsgfQorICAgIHVzaW5nIFJlYWRGZW5jZSA9IERpc3BsYXlMaXN0OjpGbHVzaElk
ZW50aWZpZXI7CisgICAgdmlydHVhbCBSZWFkRmVuY2UgbWFrZVJlYWRGZW5jZSgpIHsgcmV0dXJu
IHsgfTsgfQorICAgIC8vIFJlYWQgaXMgYWxsb3dlZCB3aGVuIFJlYWRGZW5jZSBoYXMgcGFzc2Vk
LiBDdXJyZW50bHkgd2FpdGVkIGJ5IGZsdXNoRHJhd2luZ0NvbnRleHQoKS4KKyAgICB2aXJ0dWFs
IHZvaWQgY29tbWl0UmVhZEZlbmNlKFJlYWRGZW5jZSkgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQg
Y2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1ZmZlcihSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIp
IHsgfQogICAgIHZpcnR1YWwgdm9pZCBwcmVwYXJlVG9BcHBlbmREaXNwbGF5TGlzdEl0ZW1zKERp
c3BsYXlMaXN0OjpJdGVtQnVmZmVySGFuZGxlJiYpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0R0xDYWlyby5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRH
TENhaXJvLmNwcAppbmRleCA1NmY2YjFhNzAxYjIwMGM5ODY4ZDI4MmYwN2MzNzZkYTExMGNlMjVl
Li5iZGE2ODZlM2NmM2I1OTBmNzM0OWNlNDU1YzNiNTJjMTRhNTBiNTViIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRHTENh
aXJvLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFw
aGljc0NvbnRleHRHTENhaXJvLmNwcApAQCAtMTA2LDcgKzEwNiw3IEBAIGJvb2wgR3JhcGhpY3ND
b250ZXh0R0xJbWFnZUV4dHJhY3Rvcjo6ZXh0cmFjdEltYWdlKGJvb2wgcHJlbXVsdGlwbHlBbHBo
YSwgYm9vbCBpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0w6OnBhaW50VG9DYW52YXMoUmVmPEltYWdlRGF0YT4mJiBpbWFnZURhdGEsIGNvbnN0IElu
dFNpemUmIGNhbnZhc1NpemUsIEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCkKK3ZvaWQgR3JhcGhp
Y3NDb250ZXh0R0xPcGVuR0w6OnBhaW50VG9DYW52YXMoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xB
dHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBSZWY8SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwgY29uc3Qg
SW50U2l6ZSYgY2FudmFzU2l6ZSwgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0KQogewogICAgIEFT
U0VSVCghaW1hZ2VEYXRhLT5zaXplKCkuaXNFbXB0eSgpKTsKICAgICBpZiAoY2FudmFzU2l6ZS5p
c0VtcHR5KCkpCkBAIC0xMjIsNyArMTIyLDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5H
TDo6cGFpbnRUb0NhbnZhcyhSZWY8SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwgY29uc3QgSW4KICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRvdGFsQnl0ZXM7IGkgKz0gNCkKICAgICAgICAgc3Rk
Ojpzd2FwKHBpeGVsc1tpXSwgcGl4ZWxzW2kgKyAyXSk7CiAKLSAgICBpZiAoIWNvbnRleHRBdHRy
aWJ1dGVzKCkucHJlbXVsdGlwbGllZEFscGhhKSB7CisgICAgaWYgKCFhdHRyaWJ1dGVzLnByZW11
bHRpcGxpZWRBbHBoYSkgewogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRvdGFsQnl0
ZXM7IGkgKz0gNCkgewogICAgICAgICAgICAgcGl4ZWxzW2kgKyAwXSA9IHN0ZDo6bWluKDI1NSwg
cGl4ZWxzW2kgKyAwXSAqIHBpeGVsc1tpICsgM10gLyAyNTUpOwogICAgICAgICAgICAgcGl4ZWxz
W2kgKyAxXSA9IHN0ZDo6bWluKDI1NSwgcGl4ZWxzW2kgKyAxXSAqIHBpeGVsc1tpICsgM10gLyAy
NTUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3Jh
cGhpY3NDb250ZXh0R0xDRy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
Zy9HcmFwaGljc0NvbnRleHRHTENHLmNwcAppbmRleCBlMmU1MWZkMGEwNjBkYWQyMWIyZDIxYTUy
ODVkNDBkNDczYmM1MjZhLi5mYTkyNmQ1MmRjODg3ZjljYjBjMGMyMGY2MTk2YjIyYzQ5ZTdhZGFm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGlj
c0NvbnRleHRHTENHLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
Zy9HcmFwaGljc0NvbnRleHRHTENHLmNwcApAQCAtNTEwLDEyICs1MTAsMTIgQEAgc3RhdGljIHZv
aWQgcmVsZWFzZUltYWdlRGF0YSh2b2lkKiBpbWFnZURhdGEsIGNvbnN0IHZvaWQqLCBzaXplX3Qp
CiAgICAgcmVpbnRlcnByZXRfY2FzdDxJbWFnZURhdGEqPihpbWFnZURhdGEpLT5kZXJlZigpOwog
fQogCi12b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFn
ZURhdGE+JiYgaW1hZ2VEYXRhLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0Nv
bnRleHQmIGNvbnRleHQpCit2b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2Fu
dmFzKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcywgUmVmPElt
YWdlRGF0YT4mJiBpbWFnZURhdGEsIGNvbnN0IEludFNpemUmIGNhbnZhc1NpemUsIEdyYXBoaWNz
Q29udGV4dCYgY29udGV4dCkKIHsKICAgICBBU1NFUlQoIWltYWdlRGF0YS0+c2l6ZSgpLmlzRW1w
dHkoKSk7CiAgICAgaWYgKGNhbnZhc1NpemUuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47Ci0g
ICAgYXV0byBhdHRycyA9IGNvbnRleHRBdHRyaWJ1dGVzKCk7CisgICAgYXV0byBhdHRycyA9IGF0
dHJpYnV0ZXM7CiAgICAgLy8gSW5wdXQgaXMgR0xfUkdCQSA9PSBrQ0dCaXRtYXBCeXRlT3JkZXIz
MkJpZyB8IGtDR0ltYWdlQWxwaGEqTGFzdC4KICAgICAvLyBHTF9CR1JBIHdvdWxkIGJlIGtDR0Jp
dG1hcEJ5dGVPcmRlcjMyTGl0dGxlIHwga0NHSW1hZ2VBbHBoYSpGaXJzdC4KICAgICBDR0JpdG1h
cEluZm8gYml0bWFwSW5mbyA9IGtDR0JpdG1hcEJ5dGVPcmRlcjMyQmlnOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJ
T1N1cmZhY2VTd2FwQ2hhaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uY3BwCmluZGV4IDkzY2U0
NzMyMTYyOGYxZjYwNzI0MjFhNzZiYzYwY2UxYmM1M2RhYjMuLjZmYzg4ZDY5ZTg3Mzk1NjZiZTYy
Mjk1NTIxNTFkNTI3YTZlZTgzOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHAKQEAgLTMyLDYgKzMyLDM1IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46On5HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbigpID0gZGVmYXVsdDsKIAorY29uc3QgR3JhcGhp
Y3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZlciYgR3JhcGhpY3NDb250ZXh0R0xJ
T1N1cmZhY2VTd2FwQ2hhaW46OmRpc3BsYXlCdWZmZXIoKSBjb25zdAoreworICAgIHJldHVybiBt
X2Rpc3BsYXlCdWZmZXI7Cit9CisKK0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWlu
OjpCdWZmZXIgR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OnJlY3ljbGVCdWZm
ZXIoKQoreworICAgIGlmIChtX3NwYXJlQnVmZmVyLnN1cmZhY2UpIHsKKyAgICAgICAgaWYgKG1f
c3BhcmVCdWZmZXIuc3VyZmFjZS0+aXNJblVzZSgpKQorICAgICAgICAgICAgbV9zcGFyZUJ1ZmZl
ci5zdXJmYWNlLnJlc2V0KCk7CisgICAgICAgIHJldHVybiBXVEZNb3ZlKG1fc3BhcmVCdWZmZXIp
OworICAgIH0KKyAgICByZXR1cm4geyB9OworfQorCit2b2lkKiBHcmFwaGljc0NvbnRleHRHTElP
U3VyZmFjZVN3YXBDaGFpbjo6ZGV0YWNoQ2xpZW50KCkKK3sKKyAgICBBU1NFUlQoIW1fc3BhcmVC
dWZmZXIuc3VyZmFjZSk7CisgICAgdm9pZCogcmVzdWx0ID0gbV9kaXNwbGF5QnVmZmVyLmhhbmRs
ZTsKKyAgICBtX2Rpc3BsYXlCdWZmZXIuaGFuZGxlID0gbnVsbHB0cjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorCit2b2lkIEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluOjpwcmVz
ZW50KEJ1ZmZlciYmIGJ1ZmZlcikKK3sKKyAgICBtX3NwYXJlQnVmZmVyID0gV1RGTW92ZShtX2Rp
c3BsYXlCdWZmZXIpOworICAgIG1fZGlzcGxheUJ1ZmZlciA9IFdURk1vdmUoYnVmZmVyKTsKK30K
KwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFj
ZVN3YXBDaGFpbi5oCmluZGV4IDRkZWQ4ZTVmOTQ5ODI2NzE3NDZjOWU3ZjUzM2FhYzZiMThhYzZi
MGEuLmU0MzdkN2RmMGVlODQxMzllYWZlM2UyZmQ3MjcxOThiOGY2MWEwNjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdM
SU9TdXJmYWNlU3dhcENoYWluLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaApAQCAtNTgsMTkg
KzU4LDIzIEBAIHB1YmxpYzoKICAgICAvLyAtIEJ1ZmZlciB3aXRoIGVtcHR5IHN1cmZhY2UgYW5k
IG5vbi1lbXB0eSBtZXRhZGF0YSBoYW5kbGUgaWYgdGhlIHJlY3ljbGVkIGJ1ZmZlciB3YXMgYXZh
aWxhYmxlCiAgICAgLy8gICBidXQgdGhlIHN1cmZhY2UgaXMgc3RpbGwgaW4gdXNlLgogICAgIC8v
IC0gU3VyZmFjZSBhbmQgaGFuZGxlLgotICAgIHZpcnR1YWwgQnVmZmVyIHJlY3ljbGVCdWZmZXIo
KSA9IDA7CisgICAgdmlydHVhbCBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpOwogCiAgICAgLy8gUHJl
cGFyZXMgdGhlIHRhcmdldCBmb3IgZGlzcGxheSB3aXRoIGEgY29udGVudHMgYnVmZmVyLgotICAg
IHZpcnR1YWwgdm9pZCBwcmVzZW50KEJ1ZmZlcikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwcmVz
ZW50KEJ1ZmZlciYmKTsKIAogICAgIC8vIFJldHVybnMgdGhlIG1vc3QgcmVjZW50IHByZXNlbnRl
ZCBkaXNwbGF5IGJ1ZmZlci4gVGhlIHJlZmVyZW5jZSBpcyB2YWxpZCB1bnRpbAogICAgIC8vIG5l
eHQgcHJlc2VudCwgcmVjeWNsZUJ1ZmZlciBvciBkZXRhY2hDbGllbnQgY2FsbC4KLSAgICB2aXJ0
dWFsIGNvbnN0IEJ1ZmZlciYgZGlzcGxheUJ1ZmZlcigpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IGNvbnN0IEJ1ZmZlciYgZGlzcGxheUJ1ZmZlcigpIGNvbnN0OwogCiAgICAgLy8gRGV0YWNoZXMg
dGhlIGNsaWVudCBhbmQgcmV0dXJucyB0aGUgY3VycmVudCBjb250ZW50cyBidWZmZXIgbWV0YWRh
dGEgaGFuZGxlLgogICAgIC8vIFRoZSBpZiBtdWx0aXBsZSBidWZmZXJzIGhhdmUgYmVlbiBzdWJt
aXR0ZWQsIHJlY3ljbGVCdWZmZXIgbXVzdCBoYXZlIGJlZW4gY2FsbGVkIGJlZm9yZSBjYWxsaW5n
CiAgICAgLy8gdGhpcy4KLSAgICB2aXJ0dWFsIHZvaWQqIGRldGFjaENsaWVudCgpID0gMDsKKyAg
ICB2aXJ0dWFsIHZvaWQqIGRldGFjaENsaWVudCgpOworCitwcm90ZWN0ZWQ6CisgICAgQnVmZmVy
IG1fZGlzcGxheUJ1ZmZlcjsKKyAgICBCdWZmZXIgbV9zcGFyZUJ1ZmZlcjsKIH07CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5
ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVy
Lm1tCmluZGV4IDAzMTM4ZWYxNDMwOTg4ZDcxNWE5OGI3Nzc3ZDNhNTM4OGEzMjk5YWEuLjM3MWI5
YTkxM2FjZmZmNzkxNzI2MWIzZDA4YjQ5ZDhmZjE0ODQ0N2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQpAQCAtMzgsMzEg
KzM4LDEwIEBAIGNsYXNzIFdlYkdMTGF5ZXJTd2FwQ2hhaW4gZmluYWwgOiBwdWJsaWMgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwCiBwdWJsaWM6CiAgICAgZXhwbGljaXQg
V2ViR0xMYXllclN3YXBDaGFpbihXZWJHTExheWVyKiBsYXllcikgIDogbV9sYXllcihsYXllcikg
eyB9OwogICAgIH5XZWJHTExheWVyU3dhcENoYWluKCkgb3ZlcnJpZGUgPSBkZWZhdWx0OwotICAg
IHZvaWQgcHJlc2VudChCdWZmZXIpIG92ZXJyaWRlOwotICAgIGNvbnN0IEJ1ZmZlciYgZGlzcGxh
eUJ1ZmZlcigpIGNvbnN0IG92ZXJyaWRlCi0gICAgewotICAgICAgICByZXR1cm4gbV9kaXNwbGF5
QnVmZmVyOwotICAgIH0KLSAgICBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpIG92ZXJyaWRlCi0gICAg
ewotICAgICAgICBpZiAobV9zcGFyZUJ1ZmZlci5zdXJmYWNlKSB7Ci0gICAgICAgICAgICBpZiAo
bV9zcGFyZUJ1ZmZlci5zdXJmYWNlLT5pc0luVXNlKCkpCi0gICAgICAgICAgICAgICAgbV9zcGFy
ZUJ1ZmZlci5zdXJmYWNlLnJlc2V0KCk7Ci0gICAgICAgICAgICByZXR1cm4gV1RGTW92ZShtX3Nw
YXJlQnVmZmVyKTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4geyB9OwotICAgIH0KLSAgICB2
b2lkKiBkZXRhY2hDbGllbnQoKSBvdmVycmlkZQotICAgIHsKLSAgICAgICAgQVNTRVJUKCFtX3Nw
YXJlQnVmZmVyLnN1cmZhY2UpOwotICAgICAgICB2b2lkKiByZXN1bHQgPSBtX2Rpc3BsYXlCdWZm
ZXIuaGFuZGxlOwotICAgICAgICBtX2Rpc3BsYXlCdWZmZXIuaGFuZGxlID0gbnVsbHB0cjsKLSAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICB9CisgICAgdm9pZCBwcmVzZW50KEJ1ZmZlciYmKSBv
dmVycmlkZTsKKwogICAgIFdlYkNvcmU6OklPU3VyZmFjZSogZGlzcGxheVN1cmZhY2UoKSB7IHJl
dHVybiBtX2Rpc3BsYXlCdWZmZXIuc3VyZmFjZS5nZXQoKTsgfQogcHJpdmF0ZToKLSAgICBCdWZm
ZXIgbV9kaXNwbGF5QnVmZmVyOwotICAgIEJ1ZmZlciBtX3NwYXJlQnVmZmVyOwogICAgIFdlYkdM
TGF5ZXIqIGNvbnN0IG1fbGF5ZXI7CiB9OwogCkBAIC0xMzAsMTEgKzEwOSwxMCBAQCBwcml2YXRl
OgogCiBAZW5kCiAKLXZvaWQgV2ViR0xMYXllclN3YXBDaGFpbjo6cHJlc2VudChCdWZmZXIgYnVm
ZmVyKQordm9pZCBXZWJHTExheWVyU3dhcENoYWluOjpwcmVzZW50KEJ1ZmZlciYmIGJ1ZmZlcikK
IHsKICAgICBBU1NFUlQoIW1fc3BhcmVCdWZmZXIuc3VyZmFjZSk7Ci0gICAgbV9zcGFyZUJ1ZmZl
ciA9IFdURk1vdmUobV9kaXNwbGF5QnVmZmVyKTsKLSAgICBtX2Rpc3BsYXlCdWZmZXIgPSBXVEZN
b3ZlKGJ1ZmZlcik7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2Fw
Q2hhaW46OnByZXNlbnQoV1RGTW92ZShidWZmZXIpKTsKICAgICBbbV9sYXllciBwcmVwYXJlRm9y
RGlzcGxheV07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuY3BwCmluZGV4
IDg4NjcwMTUyMjg0NjMwYzc0YmQ3YjQzN2U1YWM4NzA2ODM2M2IxMWEuLjhkZWQ2ZTUxMGFiYzcz
ZDY3ZDliZDJmNWVmMzQ3M2FkNWIxZGU0MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdM
T3BlbkdMLmNwcApAQCAtMTk2LDcgKzE5Niw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVu
R0w6OnByZXBhcmVGb3JEaXNwbGF5KCkKIH0KICNlbmRpZgogCi12b2lkIEdyYXBoaWNzQ29udGV4
dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciogaW1h
Z2VCdWZmZXIpCit2b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYgaW1hZ2VCdWZmZXIpCiB7CiAgICAgaWYgKCFtYWtl
Q29udGV4dEN1cnJlbnQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjA1LDEwICsyMDUsMTAgQEAg
dm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52
YXMoSW1hZ2VCdWZmZXIqIGltYWdlQnUKICAgICBhdXRvIGltYWdlRGF0YSA9IHJlYWRSZW5kZXJp
bmdSZXN1bHRzKCk7CiAgICAgaWYgKCFpbWFnZURhdGEpCiAgICAgICAgIHJldHVybjsKLSAgICBw
YWludFRvQ2FudmFzKGltYWdlRGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci0+YmFj
a2VuZFNpemUoKSwgaW1hZ2VCdWZmZXItPmNvbnRleHQoKSk7CisgICAgcGFpbnRUb0NhbnZhcyhj
b250ZXh0QXR0cmlidXRlcygpLCBpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1hZ2VCdWZm
ZXIuYmFja2VuZFNpemUoKSwgaW1hZ2VCdWZmZXIuY29udGV4dCgpKTsKIH0KIAotdm9pZCBHcmFw
aGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKEltYWdl
QnVmZmVyKiBpbWFnZUJ1ZmZlcikKK3ZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50
Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYgaW1hZ2VCdWZmZXIpCiB7CiAg
ICAgaWYgKCFtYWtlQ29udGV4dEN1cnJlbnQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjE3LDIy
ICsyMTcsMzYgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3NpdGVk
UmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKiBpbWFnZUIKICAgICBhdXRvIGltYWdlRGF0YSA9
IHJlYWRDb21wb3NpdGVkUmVzdWx0cygpOwogICAgIGlmICghaW1hZ2VEYXRhKQogICAgICAgICBy
ZXR1cm47Ci0gICAgcGFpbnRUb0NhbnZhcyhpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1h
Z2VCdWZmZXItPmJhY2tlbmRTaXplKCksIGltYWdlQnVmZmVyLT5jb250ZXh0KCkpOworICAgIHBh
aW50VG9DYW52YXMoY29udGV4dEF0dHJpYnV0ZXMoKSwgaW1hZ2VEYXRhLnJlbGVhc2VOb25OdWxs
KCksIGltYWdlQnVmZmVyLmJhY2tlbmRTaXplKCksIGltYWdlQnVmZmVyLmNvbnRleHQoKSk7CiB9
CiAKIFJlZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRl
cmluZ1Jlc3VsdHNUb0ltYWdlRGF0YSgpCiB7Ci0gICAgaWYgKCFtYWtlQ29udGV4dEN1cnJlbnQo
KSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgaWYgKGdldEludGVybmFsRnJhbWVidWZm
ZXJTaXplKCkuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAvLyBSZWFk
aW5nIHByZW11bHRpcGxpZWQgYWxwaGEgd291bGQgaW52b2x2ZSB1bnByZW11bHRpcGx5aW5nLCB3
aGljaCBpcwogICAgIC8vIGxvc3N5LgogICAgIGlmIChjb250ZXh0QXR0cmlidXRlcygpLnByZW11
bHRpcGxpZWRBbHBoYSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIHJlYWRS
ZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKTsKK30KKworUmVmUHRyPEltYWdlRGF0YT4gR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKQor
eworICAgIGlmICghbWFrZUNvbnRleHRDdXJyZW50KCkpCisgICAgICAgIHJldHVybiBudWxscHRy
OworICAgIGlmIChnZXRJbnRlcm5hbEZyYW1lYnVmZmVyU2l6ZSgpLmlzRW1wdHkoKSkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAgICAgcmV0dXJuIHJlYWRSZW5kZXJpbmdSZXN1bHRzKCk7CiB9
CiAKK1JlZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpyZWFkQ29tcG9z
aXRlZFJlc3VsdHNGb3JQYWludGluZygpCit7CisgICAgaWYgKCFtYWtlQ29udGV4dEN1cnJlbnQo
KSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWYgKGdldEludGVybmFsRnJhbWVidWZm
ZXJTaXplKCkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4g
cmVhZENvbXBvc2l0ZWRSZXN1bHRzKCk7Cit9CisKICNpZiAhUExBVEZPUk0oQ09DT0EpCiBSZWZQ
dHI8SW1hZ2VEYXRhPiBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cmVhZENvbXBvc2l0ZWRSZXN1
bHRzKCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29w
ZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgKaW5kZXggNTg2ODUwODQ5
OGU1ZTY0ZDg4MWQ5NjE0ZTY3NzgwOWI4MmRjZTAwYS4uZTQ0YmZkNWQ5ZjhhZDlkN2M1Mjc2MDFh
MjUyYTc3MGVkNGY5Nzk1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgKQEAg
LTQ1OCw5ICs0NTgsMTIgQEAgcHVibGljOgogICAgIHZvaWQgZGlzcGF0Y2hDb250ZXh0Q2hhbmdl
ZE5vdGlmaWNhdGlvbigpOwogICAgIHZvaWQgc2ltdWxhdGVDb250ZXh0Q2hhbmdlZCgpIGZpbmFs
OwogCi0gICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciop
IGZpbmFsOworICAgIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZm
ZXImKSBmaW5hbDsKICAgICBSZWZQdHI8SW1hZ2VEYXRhPiBwYWludFJlbmRlcmluZ1Jlc3VsdHNU
b0ltYWdlRGF0YSgpIGZpbmFsOwotICAgIHZvaWQgcGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2Fu
dmFzKEltYWdlQnVmZmVyKikgZmluYWw7CisgICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1bHRz
VG9DYW52YXMoSW1hZ2VCdWZmZXImKSBmaW5hbDsKKworICAgIFJlZlB0cjxJbWFnZURhdGE+IHJl
YWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKTsKKyAgICBSZWZQdHI8SW1hZ2VEYXRhPiBy
ZWFkQ29tcG9zaXRlZFJlc3VsdHNGb3JQYWludGluZygpOwogCiAjaWYgVVNFKE9QRU5HTCkgJiYg
RU5BQkxFKFdFQkdMMikKICAgICB2b2lkIHByaW1pdGl2ZVJlc3RhcnRJbmRleChHQ0dMdWludCk7
CkBAIC01MTUsNiArNTE4LDggQEAgcHVibGljOgogICAgIHN0YXRpYyBib29sIHBvc3NpYmxlRm9y
bWF0QW5kVHlwZUZvckludGVybmFsRm9ybWF0KEdDR0xlbnVtIGludGVybmFsRm9ybWF0LCBHQ0dM
ZW51bSYgZm9ybWF0LCBHQ0dMZW51bSYgdHlwZSk7CiAjZW5kaWYgLy8gIVVTRShBTkdMRSkKIAor
ICAgIHN0YXRpYyB2b2lkIHBhaW50VG9DYW52YXMoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xBdHRy
aWJ1dGVzJiwgUmVmPEltYWdlRGF0YT4mJiwgY29uc3QgSW50U2l6ZSYgY2FudmFzU2l6ZSwgR3Jh
cGhpY3NDb250ZXh0Jik7CisKIHByaXZhdGU6CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0woR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBIb3N0V2lu
ZG93KiwgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wqIHNoYXJlZENvbnRleHQgPSBudWxscHRyLCBH
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiogPSBudWxscHRyKTsKQEAgLTU0Miw3
ICs1NDcsNiBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxJbWFnZURhdGE+IHJlYWRSZW5kZXJpbmdS
ZXN1bHRzKCk7CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZENvbXBvc2l0ZWRSZXN1bHRzKCk7
CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZFBpeGVsc0ZvclBhaW50UmVzdWx0cygpOwotICAg
IHZvaWQgcGFpbnRUb0NhbnZhcyhSZWY8SW1hZ2VEYXRhPiYmLCBjb25zdCBJbnRTaXplJiBjYW52
YXNTaXplLCBHcmFwaGljc0NvbnRleHQmKTsKIAogICAgIGJvb2wgcmVzaGFwZUZCT3MoY29uc3Qg
SW50U2l6ZSYpOwogICAgIHZvaWQgcHJlcGFyZVRleHR1cmVJbXBsKCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAgYi9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKaW5k
ZXggODkxYTdhMGMzOGM3NTY0YjEyNzRmZTkyYmE5OWE2YTFkMWUzNjliYS4uMjFjYzY4YTk1MGNm
YTBhYjhjMmFlODdhYjc2MTU2Y2U3YTQ0YjVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcApAQCAtMzM2LDEwICsz
MzYsMTQgQEAgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZFdyYXBwZXI6On5SZW1vdGVSZW5kZXJpbmdCYWNrZW4KIH0KIAogI2lmIEVOQUJMRShXRUJHTCkK
LXZvaWQgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0wo
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIEdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpCit2b2lkIEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyBhdHRyaWJ1dGVzLCBHcmFwaGljc0NvbnRleHRH
TElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZW5kZXJpbmdCYWNrZW5k
SWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikKIHsKKyAgICBhdXRvKiByZW5k
ZXJpbmdCYWNrZW5kID0gbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kTWFwLmdldChyZW5kZXJpbmdC
YWNrZW5kSWRlbnRpZmllcik7CisgICAgaWYgKCFyZW5kZXJpbmdCYWNrZW5kKQorICAgICAgICBy
ZXR1cm47CisKICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fcmVtb3RlR3JhcGhpY3NDb250ZXh0R0xN
YXAuZW5zdXJlKGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgWyZdKCkgewotICAgICAgICBy
ZXR1cm4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShhdHRyaWJ1dGVzLCAqdGhpcywg
Z3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKTsKKyAgICAgICAgcmV0dXJuIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMOjpjcmVhdGUoYXR0cmlidXRlcywgKnRoaXMsIGdyYXBoaWNzQ29udGV4dEdM
SWRlbnRpZmllciwgcmVuZGVyaW5nQmFja2VuZC0+Z2V0KCkpOwogICAgIH0pOwogICAgIEFTU0VS
VF9VTlVTRUQoYWRkUmVzdWx0LCBhZGRSZXN1bHQuaXNOZXdFbnRyeSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIGIv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaAppbmRl
eCA4MzlmZjhmNTlkNDYzYmNhZWI0ZThjMjE4NWM0ZTM1YTJlYmVkN2IyLi4xOTc3NjhlMWM1ZjA3
ZWUyZTdlYzZjMGRmYmZhOTRlYWM0MGMyMDM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKQEAgLTEzNiw3ICsxMzYsNyBA
QCBwcml2YXRlOgogICAgIHZvaWQgcmVsZWFzZVJlbmRlcmluZ0JhY2tlbmQoUmVuZGVyaW5nQmFj
a2VuZElkZW50aWZpZXIpOwogCiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIHZvaWQgY3JlYXRlR3Jh
cGhpY3NDb250ZXh0R0woV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBHcmFw
aGljc0NvbnRleHRHTElkZW50aWZpZXIpOworICAgIHZvaWQgY3JlYXRlR3JhcGhpY3NDb250ZXh0
R0woV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBHcmFwaGljc0NvbnRleHRH
TElkZW50aWZpZXIsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKTsKICAgICB2b2lkIHJlbGVh
c2VHcmFwaGljc0NvbnRleHRHTChHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpOwogI2VuZGlm
CiAKQEAgLTIwNyw3ICsyMDcsNyBAQCBwcml2YXRlOgogICAgIHB1YmxpYzoKICAgICAgICAgUmVt
b3RlUmVuZGVyaW5nQmFja2VuZFdyYXBwZXIoUmVmPFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ+JiYp
OwogICAgICAgICB+UmVtb3RlUmVuZGVyaW5nQmFja2VuZFdyYXBwZXIoKTsKLQorICAgICAgICBS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kJiBnZXQoKSBjb25zdCB7IHJldHVybiBtX3JlbW90ZVJlbmRl
cmluZ0JhY2tlbmQuZ2V0KCk7IH0KICAgICBwcml2YXRlOgogICAgICAgICBSZWY8UmVtb3RlUmVu
ZGVyaW5nQmFja2VuZD4gbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kOwogICAgIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5t
ZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IGI1Njk4ZGVhYjhhNTc4ZDE0MDQ5YTFiYTM0NWU2MGQy
ZDU4MjhhMzMuLmE3NWI5MGRlYjYyYzg0ZjE2ODQxZTJjODhiNWIyZjI1ZTZkYzIwNTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0yNiw3ICsyNiw3IEBAIG1lc3NhZ2VzIC0+IEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgV2FudHNEaXNwYXRjaE1lc3NhZ2UgewogICAgIHZvaWQg
Q3JlYXRlUmVuZGVyaW5nQmFja2VuZChXZWJLaXQ6OlJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVy
IGlkZW50aWZpZXIsIElQQzo6U2VtYXBob3JlIHJlc3VtZURpc3BsYXlMaXN0U2VtYXBob3JlKQog
ICAgIHZvaWQgUmVsZWFzZVJlbmRlcmluZ0JhY2tlbmQoV2ViS2l0OjpSZW5kZXJpbmdCYWNrZW5k
SWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikKICNpZiBFTkFCTEUoV0VCR0wp
Ci0gICAgdm9pZCBDcmVhdGVHcmFwaGljc0NvbnRleHRHTChzdHJ1Y3QgV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIFdlYktpdDo6R3JhcGhpY3NDb250ZXh0
R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcikKKyAgICB2b2lkIENyZWF0
ZUdyYXBoaWNzQ29udGV4dEdMKHN0cnVjdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMgYXR0cmlidXRlcywgV2ViS2l0OjpHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3Jh
cGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBXZWJLaXQ6OlJlbmRlcmluZ0JhY2tlbmRJZGVudGlm
aWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogICAgIHZvaWQgUmVsZWFzZUdyYXBoaWNz
Q29udGV4dEdMKFdlYktpdDo6R3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29u
dGV4dEdMSWRlbnRpZmllcikKICNlbmRpZgogICAgIHZvaWQgQ2xlYXJOb3dQbGF5aW5nSW5mbygp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0wuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1Jl
bW90ZUdyYXBoaWNzQ29udGV4dEdMLmNwcAppbmRleCA3OWIzNDU5NmZiZjJkMGRmYzk4MTg2NTFi
ZGNmZWI0YjBhMGM4NzVkLi4yYTE5ZmQ1MmNjMDEzMDZiZjFkYjA5N2U2NTJmYTdhYzc1MDI0NTAw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGlj
cy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5jcHAKQEAgLTM5LDE3ICszOSwxOCBAQCBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiAjaWYgIVBMQVRGT1JNKENP
Q09BKQotc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBSZW1vdGVHcmFw
aGljc0NvbnRleHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgZ3B1Q29ubmVj
dGlvblRvV2ViUHJvY2VzcywgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29u
dGV4dEdMSWRlbnRpZmllcikKK3N0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRH
TD4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShjb25zdCBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmll
ciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmKQog
ewogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBudWxscHRyOwogfQogI2Vu
ZGlmCiAKLVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTChj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBo
aWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlZjxH
cmFwaGljc0NvbnRleHRHTE9wZW5HTD4gY29udGV4dCkKK1JlbW90ZUdyYXBoaWNzQ29udGV4dEdM
OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIsIFJlZjxHcmFwaGljc0NvbnRleHRHTE9wZW5HTD4gY29udGV4
dCwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYgcmVuZGVyaW5nQmFja2VuZCkKICAgICA6IG1fY29u
dGV4dChXVEZNb3ZlKGNvbnRleHQpKQogICAgICwgbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
KG1ha2VXZWFrUHRyKGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MpKQogICAgICwgbV9ncmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIoZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKQorICAgICwg
bV9yZW5kZXJpbmdCYWNrZW5kKG1ha2VSZWYocmVuZGVyaW5nQmFja2VuZCkpCiB7CiAgICAgaWYg
KGF1dG8qIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgPSBtX2dwdUNvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MuZ2V0KCkpCiAgICAgICAgIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MtPm1lc3NhZ2VS
ZWNlaXZlck1hcCgpLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0w6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlm
aWVyLnRvVUludDY0KCksICp0aGlzKTsKQEAgLTEzNyw2ICsxMzgsMzUgQEAgdm9pZCBSZW1vdGVH
cmFwaGljc0NvbnRleHRHTDo6bm90aWZ5TWFya0NvbnRleHRDaGFuZ2VkKCkKICAgICBtX2NvbnRl
eHQtPm1hcmtDb250ZXh0Q2hhbmdlZCgpOwogfQogCit2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdSZXNv
dXJjZUlkZW50aWZpZXIgYnVmZmVySWRlbnRpZmllciwgV2ViQ29yZTo6SW1hZ2VCdWZmZXI6OlJl
YWRGZW5jZSByZWFkRmVuY2UpCit7CisgICAgcGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKG1f
Y29udGV4dC0+cmVhZFJlbmRlcmluZ1Jlc3VsdHNGb3JQYWludGluZygpLCBidWZmZXJJZGVudGlm
aWVyLCByZWFkRmVuY2UpOworfQorCit2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWlu
dENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVu
dGlmaWVyIGJ1ZmZlcklkZW50aWZpZXIsIFdlYkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2Ug
cmVhZEZlbmNlKQoreworICAgIHBhaW50SW1hZ2VEYXRhVG9JbWFnZUJ1ZmZlcihtX2NvbnRleHQt
PnJlYWRDb21wb3NpdGVkUmVzdWx0c0ZvclBhaW50aW5nKCksIGJ1ZmZlcklkZW50aWZpZXIsIHJl
YWRGZW5jZSk7Cit9CisKK3ZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50SW1hZ2VE
YXRhVG9JbWFnZUJ1ZmZlcihSZWZQdHI8V2ViQ29yZTo6SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwg
V2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGJ1ZmZlcklkZW50aWZpZXIsIFdl
YkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UgcmVhZEZlbmNlKQoreworICAgIG1fcmVuZGVy
aW5nQmFja2VuZC0+ZGlzcGF0Y2goW3JlbmRlcmluZ0JhY2tlbmQgPSBtX3JlbmRlcmluZ0JhY2tl
bmQsIGltYWdlRGF0YSA9IFdURk1vdmUoaW1hZ2VEYXRhKSwgYnVmZmVySWRlbnRpZmllciwgcmVh
ZEZlbmNlLCBhdHRyaWJ1dGVzID0gbV9jb250ZXh0LT5jb250ZXh0QXR0cmlidXRlcygpXSgpIG11
dGFibGUgeworICAgICAgICBhdXRvIGltYWdlQnVmZmVyID0gcmVuZGVyaW5nQmFja2VuZC0+cmVt
b3RlUmVzb3VyY2VDYWNoZSgpLmNhY2hlZEltYWdlQnVmZmVyKGJ1ZmZlcklkZW50aWZpZXIpOwor
ICAgICAgICBpZiAoIWltYWdlQnVmZmVyKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAv
LyBOb3RlOiBoZXJlIHdlIGRvIG5vdCB0cnkgdG8gcGxheSBiYWNrIHBlbmRpbmcgY29tbWFuZHMg
Zm9yIGltYWdlQnVmZmVyLiBDdXJyZW50bHkgdGhpcyBjYWxsIGlzIG9ubHkgbWFkZSBmb3IgZW1w
dHkKKyAgICAgICAgLy8gaW1hZ2UgYnVmZmVycyBhbmQgdGhlcmUncyBubyBnb29kIHdheSB0byBh
ZGQgZGlzcGxheSBsaXN0cy4KKyAgICAgICAgaWYgKGltYWdlRGF0YSkKKyAgICAgICAgICAgIEdy
YXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKGF0dHJpYnV0ZXMsIGltYWdlRGF0
YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci0+YmFja2VuZFNpemUoKSwgaW1hZ2VCdWZm
ZXItPmNvbnRleHQoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGltYWdlQnVmZmVyLT5j
b250ZXh0KCkuY2xlYXJSZWN0KHsgSW50UG9pbnQoKSwgaW1hZ2VCdWZmZXItPmJhY2tlbmRTaXpl
KCkgfSk7CisgICAgICAgIC8vIFVuZm9ydHVuYXRlbHkgImZsdXNoIiBpbXBsZW1lbnRhdGlvbiBp
biBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kIG92ZXJsb2FkcyBvcmRlcmluZyBhbmQgZWZmZWN0cy4K
KyAgICAgICAgLy8gVGh1cyB3ZSBuZWVkIHRvIGZsdXNoIGV2ZW4gdGhvdWdoIHdlJ3JlIHVzaW5n
IHRoZSBSZWFkRmVuY2UgZm9yIG9yZGVyaW5nLgorICAgICAgICBpbWFnZUJ1ZmZlci0+Zmx1c2hD
b250ZXh0KCk7CisgICAgICAgIHJlbmRlcmluZ0JhY2tlbmQtPmRpZEZsdXNoKHJlYWRGZW5jZSwg
YnVmZmVySWRlbnRpZmllcik7CisgICAgfSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAog
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9S
ZW1vdGVHcmFwaGljc0NvbnRleHRHTC5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmgKaW5kZXggMDAxNTlhYzhiNTg2YThiNjJhM2Rk
YTNhNTcwMDRlODgzZTE1NmQwOC4uOGZlZmVhOGEwMGMwM2E2NWNkYjliYjE5N2YwODc1ZTExNTBi
YzM3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZUdyYXBoaWNzQ29udGV4dEdMLmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmgKQEAgLTMxLDcgKzMxLDcgQEAKICNpbmNsdWRl
ICJHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIuaCIKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2
ZXIuaCIKICNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCi0KKyNpbmNsdWRlICJSZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9FeHRlbnNpb25zR0wuaD4KICNpbmNs
dWRlIDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9Ob3RJbXBsZW1lbnRlZC5oPgpAQCAtNTksMTMgKzU5LDEzIEBAIGNsYXNzIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMCiAgICAgLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVyCiAgICAgLCBw
cml2YXRlIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpDbGllbnQgewogcHVibGljOgotICAg
IHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IGNyZWF0ZShj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKTsKKyAgICBzdGF0aWMg
c3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBjcmVhdGUoY29uc3QgV2Vi
Q29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZCYpOwogICAgIH5SZW1vdGVHcmFwaGljc0NvbnRleHRHTCgpIG92ZXJyaWRlOwogCiAgICAgR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2VzcyogZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcygpIGNvbnN0
OwogCiBwcm90ZWN0ZWQ6Ci0gICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMPik7CisgICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMPiwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYpOwogCiAgICAgLy8gSVBDOjpN
ZXNzYWdlU2VuZGVyIG92ZXJyaWRlcy4KICAgICBJUEM6OkNvbm5lY3Rpb24qIG1lc3NhZ2VTZW5k
ZXJDb25uZWN0aW9uKCkgY29uc3QgZmluYWw7CkBAIC05MiwxMiArOTIsMTcgQEAgcHJvdGVjdGVk
OgogI2VuZGlmCiAgICAgdm9pZCBnZXRFcnJvcihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQz
Ml90KT4mJik7CiAgICAgdm9pZCBzeW50aGVzaXplR0xFcnJvcih1aW50MzJfdCBlcnJvcik7Cisg
ICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdS
ZXNvdXJjZUlkZW50aWZpZXIsIFdlYkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UpOworICAg
IHZvaWQgcGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllciwgV2ViQ29yZTo6SW1hZ2VCdWZmZXI6OlJlYWRGZW5jZSk7CiAKICNp
bmNsdWRlICJSZW1vdGVHcmFwaGljc0NvbnRleHRHTEZ1bmN0aW9uc0dlbmVyYXRlZC5oIiAvLyBO
T0xJTlQKIAorICAgIHZvaWQgcGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKFJlZlB0cjxXZWJD
b3JlOjpJbWFnZURhdGE+JiYsIFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciwg
V2ViQ29yZTo6SW1hZ2VCdWZmZXI6OlJlYWRGZW5jZSk7CisKICAgICBSZWY8V2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0w+IG1fY29udGV4dDsKICAgICBXZWFrUHRyPEdQVUNvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M+IG1fZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzczsKICAgICBHcmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIgbV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXI7CisgICAg
UmVmPFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ+IG1fcmVuZGVyaW5nQmFja2VuZDsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2VzLmluIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2Vz
LmluCmluZGV4IDdhMTkyNWRiYjI3YWJmM2QzMDM0Y2I3ZmNiMzhhM2YzOTNlM2RjZmEuLjE1YTBm
NjE2MzkyZWQ3MmFmMmY3ZDlmOTc3YzdhMWQ1NWFmNDAyZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5tZXNzYWdl
cy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0wubWVzc2FnZXMuaW4KQEAgLTM2LDYgKzM2LDkgQEAgbWVzc2FnZXMgLT4gUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0wgTm90UmVmQ291bnRlZCB7CiAgICAgdm9pZCBOb3RpZnlNYXJr
Q29udGV4dENoYW5nZWQoKQogICAgIHZvaWQgU3ludGhlc2l6ZUdMRXJyb3IodWludDMyX3QgZXJy
b3IpCiAgICAgdm9pZCBHZXRFcnJvcigpIC0+ICh1aW50MzJfdCByZXR1cm5WYWx1ZSkgU3luY2hy
b25vdXMKKyAgICB2b2lkIFBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJl
bmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIFdl
YkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UgcmVhZEZlbmNlKQorICAgIHZvaWQgUGFpbnRD
b21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRp
ZmllciByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIFdlYkNvcmU6OkltYWdlQnVmZmVyOjpS
ZWFkRmVuY2UgcmVhZEZlbmNlKQorCiAKICAgICB2b2lkIFNldEZhaWxOZXh0R1BVU3RhdHVzQ2hl
Y2soKQogICAgIHZvaWQgTW92ZUVycm9yc1RvU3ludGhldGljRXJyb3JMaXN0KCkgLT4gKGJvb2wg
cmV0dXJuVmFsdWUpIFN5bmNocm9ub3VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5j
cHAKaW5kZXggOGUyZDFmYzY1MTg2MjgzOTVlOTc0MWM0NGU3YWM4NTFiMDhlZjYyNy4uYmIxNWE5
NTZkNWQwMmYyNDA1M2NkMDQ2MjJiNjFlZDQzNjU1ZmU1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0Nv
bnRleHRHTENvY29hLmNwcApAQCAtMzcsNjMgKzM3LDM2IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJD
b3JlOwogCiBuYW1lc3BhY2UgewogCi1jbGFzcyBSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29h
IGZpbmFsIDogcHVibGljIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMLCBwcml2YXRlIFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluIHsKK2NsYXNzIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMQ29jb2EgZmluYWwgOiBwdWJsaWMgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wg
ewogcHVibGljOgotICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoY29uc3QgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcik7CisgICAgUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xDb2NvYShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kJik7CiAgICAgflJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29j
b2EoKSBmaW5hbCA9IGRlZmF1bHQ7CiAKICAgICAvLyBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBv
dmVycmlkZXMuCiAgICAgdm9pZCBwcmVwYXJlRm9yRGlzcGxheShDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdURjo6TWFjaFNlbmRSaWdodCYmKT4mJikgZmluYWw7Ci0KLSAgICAvLyBHcmFwaGljc0Nv
bnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiBvdmVycmlkZXMuCi0gICAgQnVmZmVyIHJlY3ljbGVC
dWZmZXIoKSBmaW5hbDsKLSAgICB2b2lkIHByZXNlbnQoQnVmZmVyKSBmaW5hbDsKLSAgICBjb25z
dCBCdWZmZXImIGRpc3BsYXlCdWZmZXIoKSBjb25zdCBmaW5hbDsKLSAgICB2b2lkKiBkZXRhY2hD
bGllbnQoKSBmaW5hbDsKIHByaXZhdGU6Ci0gICAgR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VT
d2FwQ2hhaW46OkJ1ZmZlciBtX2Rpc3BsYXlCdWZmZXI7CisgICAgV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4gbV9zd2FwQ2hhaW47CiB9OwogCiB9CiAKLXN0ZDo6
dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTD4gUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0w6OmNyZWF0ZShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0
dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50
aWZpZXIpCi17Ci0gICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTD4obmV3IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoYXR0cmlidXRlcywgZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzcywgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKSk7Ci19Ci0K
LVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29j
b2EoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVz
LCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBHcmFwaGljc0NvbnRleHRH
TElkZW50aWZpZXIgaWRlbnRpZmllcikKLSAgICA6IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKGF0
dHJpYnV0ZXMsIGNvbm5lY3Rpb24sIGlkZW50aWZpZXIsIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdM
OjpjcmVhdGVGb3JHUFVQcm9jZXNzKGF0dHJpYnV0ZXMsIHRoaXMpKQotewotfQotCi1HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6QnVmZmVyIFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMQ29jb2E6OnJlY3ljbGVCdWZmZXIoKQotewotICAgIHJldHVybiBXVEZNb3ZlKG1fZGlzcGxh
eUJ1ZmZlcik7Ci19Ci0KLXZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6cHJlc2Vu
dChCdWZmZXIgYnVmZmVyKQotewotICAgIEFTU0VSVCghbV9kaXNwbGF5QnVmZmVyLnN1cmZhY2Up
OwotICAgIG1fZGlzcGxheUJ1ZmZlciA9IFdURk1vdmUoYnVmZmVyKTsKLX0KLQotY29uc3QgR3Jh
cGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZlciYgUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xDb2NvYTo6ZGlzcGxheUJ1ZmZlcigpIGNvbnN0CitzdGQ6OnVuaXF1ZV9wdHI8UmVt
b3RlR3JhcGhpY3NDb250ZXh0R0w+IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpjcmVhdGUoY29u
c3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBHUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzJiBncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLCBHcmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kJiByZW5kZXJpbmdCYWNrZW5kKQogewotICAgIHJldHVybiBtX2Rpc3Bs
YXlCdWZmZXI7CisgICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTD4obmV3IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoYXR0cmlidXRlcywgZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzcywgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCByZW5kZXJp
bmdCYWNrZW5kKSk7CiB9CiAKLXZvaWQqIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OmRl
dGFjaENsaWVudCgpCitSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRl
cyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgR3Jh
cGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlbW90ZVJlbmRlcmluZ0JhY2tl
bmQmIHJlbmRlcmluZ0JhY2tlbmQpCisgICAgOiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTChhdHRy
aWJ1dGVzLCBjb25uZWN0aW9uLCBpZGVudGlmaWVyLCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6
Y3JlYXRlRm9yR1BVUHJvY2VzcyhhdHRyaWJ1dGVzLCAmbV9zd2FwQ2hhaW4pLCByZW5kZXJpbmdC
YWNrZW5kKQogewotICAgIHJldHVybiBzdGQ6OmV4Y2hhbmdlKG1fZGlzcGxheUJ1ZmZlci5oYW5k
bGUsIG51bGxwdHIpOwogfQogCiB2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OnBy
ZXBhcmVGb3JEaXNwbGF5KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV1RGOjpNYWNoU2VuZFJpZ2h0
JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIG1fY29udGV4dC0+cHJlcGFyZUZvckRp
c3BsYXkoKTsKLSAgICBhdXRvIGRpc3BsYXlCdWZmZXIgPSBXVEZNb3ZlKG1fZGlzcGxheUJ1ZmZl
ci5zdXJmYWNlKTsKICAgICBNYWNoU2VuZFJpZ2h0IHNlbmRSaWdodDsKLSAgICBpZiAoZGlzcGxh
eUJ1ZmZlcikKLSAgICAgICAgc2VuZFJpZ2h0ID0gZGlzcGxheUJ1ZmZlci0+Y3JlYXRlU2VuZFJp
Z2h0KCk7CisgICAgYXV0byogc3VyZmFjZSA9IG1fc3dhcENoYWluLmRpc3BsYXlCdWZmZXIoKS5z
dXJmYWNlLmdldCgpOworICAgIGlmIChzdXJmYWNlKQorICAgICAgICBzZW5kUmlnaHQgPSBzdXJm
YWNlLT5jcmVhdGVTZW5kUmlnaHQoKTsKICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHNl
bmRSaWdodCkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3Jh
cGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nl
c3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHAKaW5kZXggMjFiMDJhMzNmMWUw
ZjVhNDA3ZjljYzI2ODZiNTQzMzA3ZGNiYzEyOC4uZDhjZDI5NzA3ZWIxM2RjNTlkZGZhMjJmNmNh
ZmEwYjZlYzg3NDFhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmNwcApAQCAtOTEsNiArOTEsMTEg
QEAgdm9pZCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjpkaXNjb25uZWN0KCkKICAgICBtX2dwdUNv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MtPmNvbm5lY3Rpb24oKS5yZW1vdmVXb3JrUXVldWVNZXNzYWdl
UmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6Om1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSwgbV9yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIH0KIAor
dm9pZCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjpkaXNwYXRjaChGdW5jdGlvbjx2b2lkKCk+JiYg
dGFzaykKK3sKKyAgICBtX3dvcmtRdWV1ZS0+ZGlzcGF0Y2goV1RGTW92ZSh0YXNrKSk7Cit9CisK
IElQQzo6Q29ubmVjdGlvbiogUmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6bWVzc2FnZVNlbmRlckNv
bm5lY3Rpb24oKSBjb25zdAogewogICAgIHJldHVybiAmbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzLT5jb25uZWN0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
Z3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaAppbmRleCBiN2FlZTI2Mjc3MDVi
YjlhY2MxMDE5ZDcxNTVlZjI3ZTE1M2QyYjI4Li5lMDU5NmJkZWUyNTI4NWU3Nzk3NDFiMmI2MTYy
MmI2MGE3NjY3MzM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhp
Y3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmgKQEAgLTgwLDYgKzgwLDkgQEAgcHVi
bGljOgogCiAgICAgdm9pZCBkaXNjb25uZWN0KCk7CiAKKyAgICAvLyBSdW5zIEZ1bmN0aW9uIGlu
IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQgdGFzayBxdWV1ZS4KKyAgICB2b2lkIGRpc3BhdGNoKEZ1
bmN0aW9uPHZvaWQoKT4mJik7CisKIHByaXZhdGU6CiAgICAgUmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZChHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIs
IElQQzo6U2VtYXBob3JlJiYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuY3BwIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFBy
b3h5LmNwcAppbmRleCBmMjliZTAwNmViN2I5NzY0Yjc4MmQ5MTYyNWM4MDE2MGZmOGYzNmYzLi4x
NGU0MzJjZjJhYWU4NmE5Mjk0MzVjYTI5NWMyOWMyMTIzYjVhNmVhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdM
UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5jcHAKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRl
ICJSZW1vdGVHcmFwaGljc0NvbnRleHRHTE1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0xQcm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgor
I2luY2x1ZGUgPFdlYkNvcmUvSW1hZ2VCdWZmZXIuaD4KIAogI2lmIFBMQVRGT1JNKENPQ09BKQog
I2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0Q0cuaD4KQEAgLTQzLDE4ICs0NCwxOCBA
QCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKLVJlZlB0
cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5PiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFBy
b3h5OjpjcmVhdGUoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVz
KQorUmVmUHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk+IFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMUHJveHk6OmNyZWF0ZShjb25zdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0
dHJpYnV0ZXMsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVu
dGlmaWVyKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVHUFVQcm9jZXNzQ29ubmVjdGlv
bigpLCBhdHRyaWJ1dGVzKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTFByb3h5KFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVByb2Nlc3ND
b25uZWN0aW9uKCksIGF0dHJpYnV0ZXMsIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKSk7CiB9
CiAKLVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
UHJveHkoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVByb2Nlc3NDb25uZWN0aW9uLCBjb25zdCBH
cmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJzKQorUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eShHUFVQcm9jZXNzQ29ubmVjdGlv
biYgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24sIGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRl
cyYgYXR0cnMsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVu
dGlmaWVyKQogICAgIDogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2UoYXR0cnMpCiAg
ICAgLCBtX2dwdVByb2Nlc3NDb25uZWN0aW9uKCZncHVQcm9jZXNzQ29ubmVjdGlvbikKIHsKICAg
ICBncHVQcm9jZXNzQ29ubmVjdGlvbi5hZGRDbGllbnQoKnRoaXMpOwogICAgIGdwdVByb2Nlc3ND
b25uZWN0aW9uLm1lc3NhZ2VSZWNlaXZlck1hcCgpLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdl
czo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBt
X2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Ci0gICAgY29u
bmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkNyZWF0
ZUdyYXBoaWNzQ29udGV4dEdMKGF0dHJzLCBtX2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciks
IDAsIElQQzo6U2VuZE9wdGlvbjo6RGlzcGF0Y2hNZXNzYWdlRXZlbldoZW5XYWl0aW5nRm9yU3lu
Y1JlcGx5KTsKKyAgICBjb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6Q3JlYXRlR3JhcGhpY3NDb250ZXh0R0woYXR0cnMsIG1fZ3JhcGhpY3NDb250
ZXh0R0xJZGVudGlmaWVyLCByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciksIDAsIElQQzo6U2Vu
ZE9wdGlvbjo6RGlzcGF0Y2hNZXNzYWdlRXZlbldoZW5XYWl0aW5nRm9yU3luY1JlcGx5KTsKIH0K
IAogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6flJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
UHJveHkoKQpAQCAtMTMwLDE0ICsxMzEsNDAgQEAgdm9pZCBSZW1vdGVHcmFwaGljc0NvbnRleHRH
TFByb3h5OjpzaW11bGF0ZUNvbnRleHRDaGFuZ2VkKCkKICAgICBub3RJbXBsZW1lbnRlZCgpOwog
fQogCi12b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OnBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikKK3ZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQ
cm94eTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXImIGJ1ZmZlcikK
IHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIC8vIEZJWE1FOiB0aGUgYnVmZmVyIGlzICJy
ZWxhdGl2ZWx5IGVtcHR5IiBhbHdheXMsIGJ1dCBmb3IgY29uc2lzdGVuY3ksIHdlIG5lZWQgdG8g
ZW5zdXJlCisgICAgLy8gbm8gcGVuZGluZyBvcGVyYXRpb25zIGFyZSB0YXJnZXRlZCBmb3IgdGhl
IGBidWZmZXJgLgorICAgIGJ1ZmZlci5mbHVzaERyYXdpbmdDb250ZXh0KCk7CisKKyAgICAvLyBG
SVhNRTogV2UgY2Fubm90IHN5bmNocm9uaXplIHNvIHRoYXQgd2Ugd291bGQga25vdyBubyBwZW5k
aW5nIG9wZXJhdGlvbnMgYXJlIHVzaW5nIHRoZSBgYnVmZmVyYC4KKworICAgIC8vIEZJWE1FOiBN
YXliZSBpbXBsZW1lbnQgSVBDOjpGZW5jZSBvciBzb21ldGhpbmcgc2ltaWxhci4KKyAgICBhdXRv
IGJ1ZmZlckZlbmNlID0gYnVmZmVyLm1ha2VSZWFkRmVuY2UoKTsKKyAgICBhdXRvIHNlbmRSZXN1
bHQgPSBzZW5kKE1lc3NhZ2VzOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRSZW5kZXJp
bmdSZXN1bHRzVG9DYW52YXMoYnVmZmVyLnJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcigpLCBi
dWZmZXJGZW5jZSkpOworICAgIGlmICghc2VuZFJlc3VsdCkgeworICAgICAgICBtYXJrQ29udGV4
dExvc3QoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBidWZmZXIuY29tbWl0UmVhZEZl
bmNlKGJ1ZmZlckZlbmNlKTsKKyAgICAvLyBGSVhNRTogQ3VycmVudGx5IFJlbW90ZUltYWdlQnVm
ZmVyUHJveHk6OmdldEltYWdlRGF0YSBldCBhbCBkbyBub3Qgd2FpdCBmb3IgdGhlIHJlYWQgZmVu
Y2VzIG9mIHRoZSBpbWFnZXMKKyAgICAvLyBpbnNpZGUgdGhlIGRpc3BsYXkgbGlzdHMuIFJhdGhl
ciwgaXQgYXNzdW1lcyB0aGF0IHByb2Nlc3NpbmcgaXRzIHNlcXVlbmNlIChlLmcuIHRoZSBkaXNw
bGF5IGxpc3QpIHdpbGwgZXF1YWwgdG8gcmVhZCBmZW5jZXMgYmVpbmcKKyAgICAvLyBmdWxmaWxs
ZWQuIEhvd2V2ZXIsIHNpbmNlIHRoZSBhYm92ZSByZWFkIGZlbmNlIGdvZXMgdGhyb3VnaCBkaWZm
ZXJlbnQgc2VxdWVuY2UgKFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMIHByb2Nlc3NpbmcgdGhyZWFk
KSwKKyAgICAvLyB0aGlzIHRoZSBhc3N1bXB0aW9uIGlzIG5vdCBvay4KKyAgICBidWZmZXIuZmx1
c2hEcmF3aW5nQ29udGV4dCgpOwogfQogCi12b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJv
eHk6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciopCit2b2lkIFJl
bW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZh
cyhJbWFnZUJ1ZmZlciYgYnVmZmVyKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgYnVm
ZmVyLmZsdXNoRHJhd2luZ0NvbnRleHQoKTsKKyAgICBhdXRvIGJ1ZmZlckZlbmNlID0gYnVmZmVy
Lm1ha2VSZWFkRmVuY2UoKTsKKyAgICBhdXRvIHNlbmRSZXN1bHQgPSBzZW5kKE1lc3NhZ2VzOjpS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKGJ1
ZmZlci5yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIoKSwgYnVmZmVyRmVuY2UpKTsKKyAgICBp
ZiAoIXNlbmRSZXN1bHQpIHsKKyAgICAgICAgbWFya0NvbnRleHRMb3N0KCk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisgICAgYnVmZmVyLmNvbW1pdFJlYWRGZW5jZShidWZmZXJGZW5jZSk7Cisg
ICAgYnVmZmVyLmZsdXNoRHJhd2luZ0NvbnRleHQoKTsKIH0KIAogdm9pZCBSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTFByb3h5OjpzeW50aGVzaXplR0xFcnJvcihHQ0dMZW51bSBlcnJvcikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0xQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGlj
cy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmgKaW5kZXggODMxYjRiMGFiMTM3ZTZhYWY4
MzU5NmUwYjBhMDc2ZGYxZTA5MTc2MS4uNWNlNTc2NzZiMDkwNWE2NTc0MDQyYTlmNTQzOGE0NzFm
YjdlZjk5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGlj
cy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmgKQEAgLTMz
LDYgKzMzLDcgQEAKICNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCiAjaW5jbHVkZSAiUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZVJlc291cmNlQ2Fj
aGVQcm94eS5oIgorI2luY2x1ZGUgIlJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9Ob3RJbXBs
ZW1lbnRlZC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94
eUJhc2UuaD4KQEAgLTUwLDcgKzUxLDcgQEAgY2xhc3MgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQ
cm94eSBmaW5hbAogICAgICwgcHJpdmF0ZSBHUFVQcm9jZXNzQ29ubmVjdGlvbjo6Q2xpZW50CiAg
ICAgLCBwdWJsaWMgV2ViQ29yZTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2Ugewog
cHVibGljOgotICAgIHN0YXRpYyBSZWZQdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eT4g
Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYpOworICAg
IHN0YXRpYyBSZWZQdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eT4gY3JlYXRlKGNvbnN0
IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYsIFJlbmRlcmluZ0JhY2tlbmRJ
ZGVudGlmaWVyKTsKICAgICB+UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eSgpIGZpbmFsOwog
CiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIgb3ZlcnJpZGVzLgpAQCAtNjMsOCArNjQsOCBA
QCBwdWJsaWM6CiAgICAgdm9pZCBlbnN1cmVFeHRlbnNpb25FbmFibGVkKGNvbnN0IFN0cmluZyYg
ZXh0ZW5zaW9uKSBmaW5hbDsKICAgICB2b2lkIG5vdGlmeU1hcmtDb250ZXh0Q2hhbmdlZCgpIGZp
bmFsOwogICAgIHZvaWQgc2ltdWxhdGVDb250ZXh0Q2hhbmdlZCgpIGZpbmFsOwotICAgIHZvaWQg
cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6SW1hZ2VCdWZmZXIqKSBmaW5h
bDsKLSAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpJbWFn
ZUJ1ZmZlciopIGZpbmFsOworICAgIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMo
V2ViQ29yZTo6SW1hZ2VCdWZmZXImKSBmaW5hbDsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJl
c3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpJbWFnZUJ1ZmZlciYpIGZpbmFsOwogICAgIHZvaWQgc3lu
dGhlc2l6ZUdMRXJyb3IoR0NHTGVudW0gZXJyb3IpIGZpbmFsOwogICAgIEdDR0xlbnVtIGdldEVy
cm9yKCkgZmluYWw7CiAKQEAgLTM1Niw3ICszNTcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlz
Y29ubmVjdEdwdVByb2Nlc3NJZk5lZWRlZCgpOwogICAgIHZvaWQgYWJhbmRvbkdwdVByb2Nlc3Mo
KTsKIAotICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoR1BVUHJvY2Vzc0Nvbm5lY3Rp
b24mLCBjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmKTsKKyAgICBS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KEdQVVByb2Nlc3NDb25uZWN0aW9uJiwgY29uc3Qg
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgUmVuZGVyaW5nQmFja2VuZElk
ZW50aWZpZXIpOwogICAgIEdQVVByb2Nlc3NDb25uZWN0aW9uKiBtX2dwdVByb2Nlc3NDb25uZWN0
aW9uOwogICAgIGJvb2wgbV9kaWRJbml0aWFsaXplIHsgZmFsc2UgfTsKICAgICBHQ0dMZW51bSBt
X2Vycm9yV2hlbkNvbnRleHRJc0xvc3QgPSBOT19FUlJPUjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlSW1hZ2VCdWZmZXJQcm94eS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1ZmZlclBy
b3h5LmgKaW5kZXggMGNhMmJiMjAzZTRjNzQyN2I1NDRlNmUzYTc0M2Q2YzE4MDUzOTJiMC4uZDU1
MTQyMmZmNTNlZmRkZTcyNzFjMjA1ZGFkMjA0OGMzYjlkMDBjOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1ZmZlclByb3h5LmgK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1
ZmZlclByb3h5LmgKQEAgLTIwNSwxMiArMjA1LDI0IEBAIHByb3RlY3RlZDoKICAgICAgICAgICAg
IHJldHVybjsKIAogICAgICAgICBpZiAoIW1fZHJhd2luZ0NvbnRleHQuZGlzcGxheUxpc3QoKS5p
c0VtcHR5KCkpIHsKLSAgICAgICAgICAgIG1fc2VudEZsdXNoSWRlbnRpZmllciA9IFdlYkNvcmU6
OkRpc3BsYXlMaXN0OjpGbHVzaElkZW50aWZpZXI6OmdlbmVyYXRlKCk7Ci0gICAgICAgICAgICBt
X2RyYXdpbmdDb250ZXh0LnJlY29yZGVyKCkuZmx1c2hDb250ZXh0KG1fc2VudEZsdXNoSWRlbnRp
Zmllcik7CisgICAgICAgICAgICBhdXRvIHJlYWRGZW5jZSA9IG1ha2VSZWFkRmVuY2UoKTsKKyAg
ICAgICAgICAgIG1fZHJhd2luZ0NvbnRleHQucmVjb3JkZXIoKS5mbHVzaENvbnRleHQocmVhZEZl
bmNlKTsKKyAgICAgICAgICAgIGNsZWFyRGlzcGxheUxpc3QoKTsKKyAgICAgICAgICAgIGNvbW1p
dFJlYWRGZW5jZShyZWFkRmVuY2UpOwogICAgICAgICB9CiAKICAgICAgICAgbV9yZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kUHJveHktPnNlbmREZWZlcnJlZFdha2V1cE1lc3NhZ2VJZk5lZWRlZCgpOwot
ICAgICAgICBjbGVhckRpc3BsYXlMaXN0KCk7CisgICAgfQorCisgICAgV2ViQ29yZTo6SW1hZ2VC
dWZmZXI6OlJlYWRGZW5jZSBtYWtlUmVhZEZlbmNlKCkgZmluYWwKKyAgICB7CisgICAgICAgIHJl
dHVybiBXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Rmx1c2hJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwor
ICAgIH0KKworICAgIHZvaWQgY29tbWl0UmVhZEZlbmNlKFdlYkNvcmU6OkltYWdlQnVmZmVyOjpS
ZWFkRmVuY2UgcmVhZEZlbmNlKSBmaW5hbAorICAgIHsKKyAgICAgICAgQVNTRVJUKG1fZHJhd2lu
Z0NvbnRleHQuZGlzcGxheUxpc3QoKS5pc0VtcHR5KCkpOyAvLyBDdXJyZW50bHkgd2UgY2Fubm90
IHdyaXRlIG92ZXIgcGVuZGluZyBjb21tYW5kcy4KKyAgICAgICAgbV9zZW50Rmx1c2hJZGVudGlm
aWVyID0gcmVhZEZlbmNlOwogICAgIH0KIAogICAgIHZvaWQgY2FjaGVOYXRpdmVJbWFnZShXZWJD
b3JlOjpOYXRpdmVJbWFnZSYgaW1hZ2UpIG92ZXJyaWRlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmlu
Z0JhY2tlbmRQcm94eS5jcHAKaW5kZXggYTRjNDVlMDA4MGFiYzYzZmY2Y2JjNTM5MTYzNTNjOTdl
MjE4ZDE3ZS4uM2IxNGY0MzBmNjE5NGQ2MDY1YTMyMmU1MmE4ODU3MThmOTcxNzM3NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJp
bmdCYWNrZW5kUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3Jh
cGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcApAQCAtNjUsNyArNjUsNyBAQCB2
b2lkIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6Y29ubmVjdFRvR1BVUHJvY2VzcygpCiAg
ICAgYXV0byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVBy
b2Nlc3NDb25uZWN0aW9uKCk7CiAgICAgY29ubmVjdGlvbi5hZGRDbGllbnQoKnRoaXMpOwogICAg
IGNvbm5lY3Rpb24ubWVzc2FnZVJlY2VpdmVyTWFwKCkuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3Nh
Z2VzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwg
bV9yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Ci0gICAgc2Vu
ZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Q3JlYXRlUmVuZGVyaW5nQmFj
a2VuZChtX3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLCBtX3Jlc3VtZURpc3BsYXlMaXN0U2Vt
YXBob3JlKSwgMCk7CisgICAgc2VuZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6Q3JlYXRlUmVuZGVyaW5nQmFja2VuZChtX3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLCBt
X3Jlc3VtZURpc3BsYXlMaXN0U2VtYXBob3JlKSwgMCwgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRj
aE1lc3NhZ2VFdmVuV2hlbldhaXRpbmdGb3JTeW5jUmVwbHkpOwogfQogCiB2b2lkIFJlbW90ZVJl
bmRlcmluZ0JhY2tlbmRQcm94eTo6cmVlc3RhYmxpc2hHUFVQcm9jZXNzQ29ubmVjdGlvbigpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJl
bmRlcmluZ0JhY2tlbmRQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFw
aGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuaAppbmRleCA2N2JlNGFiNjdlNGM5OWZk
YTkyOGZjZWQ3MDM5Y2M0MDg1NjIyNTdiLi41YzkwYWY2MjRlYTQzMjcwNWQ4ZGU2YWU1ZmIyMTU0
NjYwZTFhMTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBo
aWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmgKQEAgLTk4
LDYgKzk4LDcgQEAgcHVibGljOgogICAgIERpZFJlY2VpdmVCYWNrZW5kQ3JlYXRpb25SZXN1bHQg
d2FpdEZvckRpZENyZWF0ZUltYWdlQnVmZmVyQmFja2VuZCgpOwogICAgIGJvb2wgd2FpdEZvckRp
ZEZsdXNoKCk7CiAKKyAgICBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNr
ZW5kSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZp
ZXI7IH0KIHByaXZhdGU6CiAgICAgUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5KCk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5jcHAKaW5kZXggYzA5YTI3YjdlN2Y1M2ZiNDQyNDQ0NzFhNmQ2Yjc0ZmNl
MDVkNDNhMC4uMDVlMTc3YTUwOWIyYmE3MjFjYTg2OTgwYTA1NThlZmMzNDIyMjk5ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5jcHAKQEAgLTkyOCw3ICs5MjgsNyBAQCBSZWZQdHI8R3JhcGhpY3NDb250
ZXh0R0w+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgR3Jh
cGhpYwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBVTlVTRURfVkFSSUFCTEUoaG9zdFdp
bmRvd0Rpc3BsYXlJRCk7CiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgcmV0dXJuIFJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMUHJveHk6OmNyZWF0ZShhdHRyaWJ1dGVzKTsKKyAgICByZXR1cm4gUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6Y3JlYXRlKGF0dHJpYnV0ZXMsIG1fcGFnZS5lbnN1
cmVSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkoKS5yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmll
cigpKTsKICNlbHNlCiAgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Rv
b2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA5ODA0YzRlMDBlN2FhM2Y5Mjlm
ZjFmNTA3MzEyODU5ZDgzZWU1YTQ0Li41OTVkNTM0ODkwYjc4MTc1NmRhZDE2YzgyMzliZGE5Mzcw
Yjg1N2RkIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMDItMTIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVu
QGFwcGxlLmNvbT4KKworICAgICAgICBXZWJHTCBjb250ZXh0cyBkbyBub3Qgd29yayBhcyBzb3Vy
Y2UgZm9yIENvbnRleHQyRCBkcmF3SW1hZ2UgY2FsbHMgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTgxMQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0d28gc2lnbmF0
dXJlcyBmb3IgbWFudWFsbHkgaW1wbGVtZW50ZWQgbWVzc2FnZXMuCisKKyAgICAgICAgKiBTY3Jp
cHRzL2dlbmVyYXRlLWdwdXAtd2ViZ2w6CisKIDIwMjEtMDItMTEgIEtpbW1vIEtpbm51bmVuICA8
a2tpbm51bmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBHUFUgcHJvY2VzcyBXZWJHTCBjb250ZXh0
IHRvRGF0YVVSTCBkb2VzIG5vdCB3b3JrIGZvciBub24tcHJlbXVsdGlwbGllZCBjb250ZXh0cwpk
aWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmdsIGIvVG9vbHMvU2Ny
aXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmdsCmluZGV4IDU2ODVlOTA3NTM1M2ZkMWQyY2VhOTQ2MjA2
YjU3ZTQ4YjQyNjYzZmQuLjE0MjA5ZGNlMGFkMzgyOGI3N2IxYjE1NzE4ZmJmNGUwNWEwZTI3MWEg
MTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvZ2VuZXJhdGUtZ3B1cC13ZWJnbAorKysgYi9Ub29s
cy9TY3JpcHRzL2dlbmVyYXRlLWdwdXAtd2ViZ2wKQEAgLTEwMSw2ICsxMDEsOSBAQCBtZXNzYWdl
cyAtPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBOb3RSZWZDb3VudGVkIHt7CiAgICAgdm9pZCBO
b3RpZnlNYXJrQ29udGV4dENoYW5nZWQoKQogICAgIHZvaWQgU3ludGhlc2l6ZUdMRXJyb3IodWlu
dDMyX3QgZXJyb3IpCiAgICAgdm9pZCBHZXRFcnJvcigpIC0+ICh1aW50MzJfdCByZXR1cm5WYWx1
ZSkgU3luY2hyb25vdXMKKyAgICB2b2lkIFBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdl
YkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciByZW5kZXJpbmdSZXNvdXJjZUlkZW50
aWZpZXIsIFdlYkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UgcmVhZEZlbmNlKQorICAgIHZv
aWQgUGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291
cmNlSWRlbnRpZmllciByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIFdlYkNvcmU6OkltYWdl
QnVmZmVyOjpSZWFkRmVuY2UgcmVhZEZlbmNlKQorCiB7fQogfX0KIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGY2NzhkY2Vi
NGU4NTQxZmE5MDYxMTM1NmE3YjFlOTViMDViN2E5MGYuLjFjZDgwY2I5YTM1NTkzOGFmMWMxZmZk
ZDYxZmJiZmI5ZmEyMDA4Y2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wMi0xMiAgS2lt
bW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorCisgICAgICAgIFdlYkdMIGNvbnRl
eHRzIGRvIG5vdCB3b3JrIGFzIHNvdXJjZSBmb3IgQ29udGV4dDJEIGRyYXdJbWFnZSBjYWxscyBp
biBHUFUgcHJvY2VzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjIxODExCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmVtb3ZlIG5vdyBwYXNzaW5nIHRlc3RzIGZyb20gdGhlIGV4cGVjdGF0aW9ucy4KKwor
ICAgICAgICAqIGdwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjEtMDItMTAgIFJv
YiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBVc2UgZXZlbnQgbG9vcCB0byBz
ZXQgdGl0bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2dwdS1wcm9jZXNzL1Rlc3RFeHBlY3Rh
dGlvbnMgYi9MYXlvdXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGYy
NTY4ZjVlMTczYWYwOTlhYjU0OWE1ZjRhMzc0NmU4OWViYmQwMGYuLjczODk0Mzk0MDhlNjlkNjE2
MzlmMDFmY2RkNjY4YTQxYThjM2JkNTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2dwdS1wcm9j
ZXNzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvZ3B1LXByb2Nlc3MvVGVzdEV4
cGVjdGF0aW9ucwpAQCAtODMsMTIgKzgzLDggQEAgZmFzdC9jYW52YXMvaW1hZ2UtcGF0dGVybi1y
b3RhdGUuaHRtbCBbIENyYXNoIF0KIGZhc3QvY2FudmFzL3BhdHRlcm4td2l0aC10cmFuc2Zvcm0u
aHRtbCBbIENyYXNoIF0KIGZhc3QvY2FudmFzL3BhdHRlcm5maWxsLXJlcGVhdC5odG1sIFsgQ3Jh
c2ggXQogZmFzdC9jYW52YXMvd2ViZ2wvY2FudmFzLTJkLXdlYmdsLXRleHR1cmUuaHRtbCBbIEZh
aWx1cmUgXQotZmFzdC9jYW52YXMvd2ViZ2wvY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQog
ZmFzdC9jYW52YXMvd2ViZ2wvY29udGV4dC1jcmVhdGlvbi1hdHRyaWJ1dGVzLmh0bWwgWyBGYWls
dXJlIF0KIGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtdXBkYXRlLW9uLWRpc3BsYXktY29uZmln
dXJhdGlvbi5odG1sIFsgVGltZW91dCBdCi1mYXN0L2NhbnZhcy93ZWJnbC9nbC1waXhlbHN0b3Jl
aS5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2NhbnZhcy93ZWJnbC9sb3NlLWNvbnRleHQtb24tc3Rh
dHVzLWZhaWx1cmUuaHRtbCBbIEZhaWx1cmUgXQotZmFzdC9jYW52YXMvd2ViZ2wvcHJlbXVsdGlw
bHlhbHBoYS10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KIGZhc3QvY2FudmFzL3dlYmdsL3RleC1pbWFn
ZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdiNTY1Lmh0bWwgWyBGYWlsdXJlIF0KIGZh
c3QvY2FudmFzL3dlYmdsL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdi
YTQ0NDQuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9jYW52YXMvd2ViZ2wvdGV4LWltYWdlLWFuZC1z
dWItaW1hZ2UtMmQtd2l0aC12aWRlby1yZ2JhNTU1MS5odG1sIFsgRmFpbHVyZSBdCkBAIC0zODMs
MTkgKzM3OSwxMiBAQCBodHRwL3Rlc3RzL3NlY3VyaXR5L3dlYmF1ZGlvLXJlbmRlci1yZW1vdGUt
YXVkaW8tYWxsb3dlZC1jcm9zc29yaWdpbi5odG1sIFsgVGltZQogaHR0cC90ZXN0cy9zZWN1cml0
eS93ZWJhdWRpby1yZW5kZXItcmVtb3RlLWF1ZGlvLWJsb2NrZWQtbm8tY3Jvc3NvcmlnaW4tcmVk
aXJlY3QuaHRtbCBbIFRpbWVvdXQgXQogaHR0cC90ZXN0cy9zZWN1cml0eS93ZWJhdWRpby1yZW5k
ZXItcmVtb3RlLWF1ZGlvLWJsb2NrZWQtbm8tY3Jvc3NvcmlnaW4uaHRtbCBbIFRpbWVvdXQgXQog
Ci13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jYW52YXMvY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY2FudmFzL2RyYXctc3RhdGljLXdlYmdsLXRv
LW11bHRpcGxlLWNhbnZhcy10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZv
cm1hbmNlL2NhbnZhcy9kcmF3LXdlYmdsLXRvLWNhbnZhcy10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NhbnZhcy90by1kYXRhLXVybC10ZXN0Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NvbnRleHQvY29udGV4dC1hdHRyaWJ1
dGUtcHJlc2VydmUtZHJhd2luZy1idWZmZXIuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMv
Y29uZm9ybWFuY2UvY29udGV4dC9wcmVtdWx0aXBseWFscGhhLXRlc3QuaHRtbCBbIEZhaWx1cmUg
XQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13
aXRoLWNhbnZhcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRl
bnNpb25zL29lcy10ZXh0dXJlLWZsb2F0LXdpdGgtdmlkZW8uaHRtbCBbIEZhaWx1cmUgXQogd2Vi
Z2wvMS4wLjMvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1oYWxmLWZsb2F0LXdp
dGgtY2FudmFzLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2V4dGVu
c2lvbnMvb2VzLXRleHR1cmUtaGFsZi1mbG9hdC13aXRoLXZpZGVvLmh0bWwgWyBGYWlsdXJlIF0K
IHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3JlbmRlcmluZy9tYW55LWRyYXctY2FsbHMuaHRtbCBb
IFRpbWVvdXQgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2Uvc3RhdGUvZ2wtb2JqZWN0LWdldC1j
YWxscy5odG1sIFsgVGltZW91dCBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy9n
bC1waXhlbHN0b3JlaS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90
ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLWNhbnZhcy1yZ2I1NjUuaHRt
bCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdl
LWFuZC1zdWItaW1hZ2UtMmQtd2l0aC1jYW52YXMtcmdiYTQ0NDQuaHRtbCBbIEZhaWx1cmUgXQog
d2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2Ut
MmQtd2l0aC1jYW52YXMtcmdiYTU1NTEuaHRtbCBbIEZhaWx1cmUgXQpAQCAtNDA0LDIyICszOTMs
MTEgQEAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWIt
aW1hZ2UtMmQtd2l0aC12aWRlby1yZ2I1NjUuaHQKIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3Rl
eHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdiYTQ0NDQuaHRt
bCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdl
LWFuZC1zdWItaW1hZ2UtMmQtd2l0aC12aWRlby1yZ2JhNTU1MS5odG1sIFsgRmFpbHVyZSBdCiB3
ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0y
ZC13aXRoLXZpZGVvLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3Rl
eHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFzLXJnYjU2
NS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgt
aW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXdlYmdsLWNhbnZhcy1yZ2JhNDQ0NC5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5k
LXN1Yi1pbWFnZS0yZC13aXRoLXdlYmdsLWNhbnZhcy1yZ2JhNTU1MS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFn
ZS0yZC13aXRoLXdlYmdsLWNhbnZhcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25m
b3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2Utd2ViZ2wuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wv
MS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4cGFyYW1ldGVyLXRlc3QuaHRtbCBbIEZhaWx1
cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4dHVyZS1hY3RpdmUtYmlu
ZC0yLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3Rl
eHR1cmUtYWN0aXZlLWJpbmQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFu
Y2UvdGV4dHVyZXMvdGV4dHVyZS1jb3B5aW5nLWZlZWRiYWNrLWxvb3BzLmh0bWwgWyBDcmFzaCBd
CiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS91bmlmb3Jtcy91bmlmb3JtLXNhbXBsZXJzLXRlc3Qu
aHRtbCBbIFRpbWVvdXQgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvY2FudmFzL2NhbnZhcy10
ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NhbnZhcy9kcmF3
LXN0YXRpYy13ZWJnbC10by1tdWx0aXBsZS1jYW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jYW52YXMvZHJhdy13ZWJnbC10by1jYW52YXMtdGVzdC5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jYW52YXMvdG8tZGF0YS11
cmwtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jb250ZXh0
L2NvbnRleHQtYXR0cmlidXRlLXByZXNlcnZlLWRyYXdpbmctYnVmZmVyLmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NvbnRleHQvcHJlbXVsdGlwbHlhbHBoYS10ZXN0
Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2Vz
LXRleHR1cmUtZmxvYXQtd2l0aC1jYW52YXMuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLXZpZGVvLmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1
cmUtaGFsZi1mbG9hdC13aXRoLWNhbnZhcy5odG1sIFsgRmFpbHVyZSBdCkBAIC00MzcsNyArNDE1
LDYgQEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21f
aW1hZ2VfYml0bWFwL3RleC0yZC1yZ2ItcmdiLXUKIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3Rl
eHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcmdiYS1yZ2JhLXVu
c2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4
dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0yZC1yZ2JhLXJnYmEtdW5z
aWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTJkLXJnYmEt
cmdiYS11bnNpZ25lZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlL3RleHR1cmVzL21pc2MvZ2wtcGl4ZWxzdG9yZWkuaHRtbCBbIEZhaWx1cmUg
XQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvbWlzYy90ZXgtaW1hZ2Utd2ViZ2wu
aHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvbWlzYy90
ZXh0dXJlLWFjdGl2ZS1iaW5kLTIuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UvdGV4dHVyZXMvbWlzYy90ZXh0dXJlLWFjdGl2ZS1iaW5kLmh0bWwgWyBGYWlsdXJlIF0K
QEAgLTQ0NiwxMSArNDIzLDYgQEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvdmlk
ZW8vdGV4LTJkLXJnYi1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbAogd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UvdGV4dHVyZXMvdmlkZW8vdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9ieXRl
Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3ZpZGVv
L3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBd
CiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiYS1yZ2Jh
LXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2ItcmdiLXVuc2lnbmVkX2J5
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0yZC1yZ2ItcmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgt
MmQtcmdiYS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWdu
ZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZS90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9zaG9ydF81
XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3VuaWZvcm1z
L3VuaWZvcm0tc2FtcGxlcnMtdGVzdC5odG1sIFsgVGltZW91dCBdCiB3ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvcmVhZGluZy9yZWFkLXBpeGVscy1wYWNrLXBhcmFtZXRlcnMuaHRtbCBbIEZhaWx1
cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3N0YXRlL2dsLW9iamVjdC1nZXQtY2FsbHMu
aHRtbCBbIFRpbWVvdXQgXQpAQCAtNTE2LDcyICs0ODgsNiBAQCB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvY2FudmFzL3RleC0zZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRt
bCBbCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzL3RleC0zZC1yZ2Jh
OHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXMvdGV4LTNkLXNyZ2I4LXJnYi11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXMvdGV4LTNkLXNyZ2I4X2FscGhhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVj
dGFuZ2xlL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJk
LXIxMWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3Jl
Y3RhbmdsZS90ZXgtMmQtcjE2Zi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yMTZm
LXJlZC1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcjMyZi1yZWQtZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19z
dWJfcmVjdGFuZ2xlL3RleC0yZC1yOC1yZWQtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUv
dGV4LTJkLXI4dWktcmVkX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4
LTJkLXJnMTZmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmcxNmYtcmctaGFsZl9m
bG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
Y2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnMzJmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rhbmds
ZS90ZXgtMmQtcmc4LXJnLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZzh1
aS1yZ19pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2IxNmYt
cmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiMTZmLXJnYi1oYWxmX2Zsb2F0Lmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNf
c3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiMzJmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4
LTJkLXJnYjU2NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjU2
NS1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2I1X2Ex
LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjVfYTEtcmdiYS11
bnNpZ25lZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiOC1yZ2ItdW5z
aWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4
dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjh1aS1yZ2JfaW50ZWdlci11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiOV9lNS1yZ2ItZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1yZ2I5X2U1LXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90
ZXgtMmQtcmdiYTE2Zi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiYTE2Zi1y
Z2JhLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2JhMzJmLXJnYmEtZmxvYXQu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZh
c19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVj
dGFuZ2xlL3RleC0yZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVj
dGFuZ2xlL3RleC0yZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0yZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90
ZXgtMmQtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1zcmdi
OF9hbHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjExZl9n
MTFmX2IxMGYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjExZl9nMTFmX2IxMGYt
cmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2It
dW5zaWduZWRfaW50XzEwZl8xMWZfMTFmX3Jldi5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXIxNmYt
cmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjE2Zi1yZWQtaGFsZl9mbG9hdC5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1
Yl9yZWN0YW5nbGUvdGV4LTNkLXIzMmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qt
cjgtcmVkLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yOHVpLXJlZF9pbnRl
Z2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZzE2Zi1yZy1mbG9hdC5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFz
X3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnMTZmLXJnLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0zZC1yZzMyZi1yZy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnOC1yZy11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmc4dWktcmdfaW50ZWdlci11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiMTZmLXJnYi1mbG9hdC5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0
YW5nbGUvdGV4LTNkLXJnYjE2Zi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNk
LXJnYjMyZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1NjUtcmdiLXVuc2ln
bmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX3Nob3J0
XzVfNl81Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX2J5dGUu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZh
c19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVf
MS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVj
dGFuZ2xlL3RleC0zZC1yZ2I4dWktcmdiX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0
YW5nbGUvdGV4LTNkLXJnYjlfZTUtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmdi
OV9lNS1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYmExNmYtcmdiYS1m
bG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
Y2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYmExNmYtcmdiYS1oYWxmX2Zsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3Vi
X3JlY3RhbmdsZS90ZXgtM2QtcmdiYTMyZi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgt
M2QtcmdiYTQtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTQt
cmdiYS11bnNpZ25lZF9zaG9ydF80XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTgt
cmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTh1aS1yZ2JhX2lu
dGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXNyZ2I4LXJnYi11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWdu
ZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1y
Z2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcjExZl9nMTFmX2IxMGYt
cmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcjExZl9nMTFm
X2IxMGYtcmdiLXVuc2lnbmVkX2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbCBbIEZhaWx1cmUgXQpA
QCAtNjQ4LDcgKzU1NCw2IEBAIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFn
ZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTNkLXJnYmE4LXJnCiB3ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0z
ZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9i
aXRtYXAvdGV4LTNkLXNyZ2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9i
aXRtYXAvdGV4LTNkLXNyZ2I4X2FscGhhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL21pc2MvaW50ZWdlci1jdWJl
bWFwLXRleHR1cmUtc2FtcGxpbmcuaHRtbCBbIENyYXNoIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy92aWRlby90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLWZsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy92aWRlby90ZXgt
MmQtcjExZl9nMTFmX2IxMGYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1y
Z2ItdW5zaWduZWRfaW50XzEwZl8xMWZfMTFmX3Jldi5odG1sIFsgRmFpbHVyZSBdCkBAIC03MTUs
NjggKzYyMCw2IEBAIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy92aWRlby90ZXgt
M2QtcmdiYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGCiB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTNkLXJnYmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVk
X2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L3ZpZGVvL3RleC0zZC1zcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTNkLXNyZ2I4X2FscGhh
OC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLWZs
b2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMv
dGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9j
YW52YXMvdGV4LTJkLXIxNmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXIxNmYtcmVkLWhhbGZf
ZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L3dlYmdsX2NhbnZhcy90ZXgtMmQtcjMyZi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjgtcmVk
LXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjh1aS1yZWRfaW50ZWdlci11bnNpZ25lZF9i
eXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTJkLXJnMTZmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnMTZmLXJn
LWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmczMmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQt
cmc4LXJnLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmc4dWktcmdfaW50ZWdlci11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjE2Zi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQt
cmdiMTZmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjMyZi1yZ2ItZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtMmQtcmdiNTY1LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjU2
NS1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiNV9hMS1yZ2JhLXVu
c2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVf
NV81XzEuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0y
ZC1yZ2I4dWktcmdiX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhMTZm
LXJnYmEtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiYTE2Zi1yZ2JhLWhhbGZfZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZh
cy90ZXgtMmQtcmdiYTMyZi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmE0LXJnYmEtdW5z
aWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4
dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80
XzQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtMmQtcmdiYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJk
LXJnYmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtc3JnYjgt
cmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWdu
ZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItZmxvYXQuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90
ZXgtM2QtcjExZl9nMTFmX2IxMGYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjExZl9n
MTFmX2IxMGYtcmdiLXVuc2lnbmVkX2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qt
cjE2Zi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjE2Zi1yZWQtaGFsZl9mbG9hdC5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFz
L3RleC0zZC1yMzJmLXJlZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yOC1yZWQtdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0zZC1yOHVpLXJlZF9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90
ZXgtM2QtcmcxNmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmcxNmYtcmctaGFsZl9mbG9hdC5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xf
Y2FudmFzL3RleC0zZC1yZzMyZi1yZy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZzgtcmctdW5zaWdu
ZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZzh1aS1yZ19pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtM2QtcmdiMTZmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2IxNmYtcmdiLWhh
bGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiMzJmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1y
Z2I1NjUtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiNTY1LXJnYi11bnNpZ25l
ZF9zaG9ydF81XzZfNS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfYnl0ZS5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xf
Y2FudmFzL3RleC0zZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFz
L3RleC0zZC1yZ2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjh1aS1yZ2Jf
aW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmExNmYtcmdiYS1mbG9hdC5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xf
Y2FudmFzL3RleC0zZC1yZ2JhMTZmLXJnYmEtaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2Jh
MzJmLXJnYmEtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiYTQtcmdiYS11bnNpZ25lZF9ieXRlLmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9j
YW52YXMvdGV4LTNkLXJnYmE0LXJnYmEtdW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0zZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiYTh1aS1yZ2Jh
X2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1zcmdiOC1yZ2ItdW5zaWduZWRf
Ynl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
d2ViZ2xfY2FudmFzL3RleC0zZC1zcmdiOF9hbHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmdsL21hbnktY29udGV4dHMtYWNjZXNzLWFmdGVyLWxvc3MuaHRtbCBb
IEZhaWx1cmUgXQogd2ViZ2wvbWF4LWFjdGl2ZS1jb250ZXh0cy1jb25zb2xlLXdhcm5pbmcuaHRt
bCBbIEZhaWx1cmUgXQogd2ViZ2wvbWF4LWFjdGl2ZS1jb250ZXh0cy1nYy5odG1sIFsgRmFpbHVy
ZSBdCkBAIC03OTUsNCArNjM4LDQgQEAgd2VicnRjL3ZpZGVvLXJvdGF0aW9uLmh0bWwgWyBUaW1l
b3V0IF0KIHdlYnJ0Yy92aWRlby11bm11dGUuaHRtbCBbIFRpbWVvdXQgXQogcGxhdGZvcm0vbWFj
L3dlYnJ0Yy9jYXB0dXJlQ2FudmFzLXdlYnJ0Yy1zb2Z0d2FyZS1lbmNvZGVyLmh0bWwgWyBUaW1l
b3V0IF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL2xlZ2FjeS9SVENQ
ZWVyQ29ubmVjdGlvbi1jcmVhdGVPZmZlci1vZmZlclRvUmVjZWl2ZS5odG1sIFsgQ3Jhc2ggXQot
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwU2VuZGVyLXJlcGxh
Y2VUcmFjay5odHRwcy5odG1sIFsgVGltZW91dCBdClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwU2VuZGVyLXJl
cGxhY2VUcmFjay5odHRwcy5odG1sIFsgVGltZW91dCBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420312</attachid>
            <date>2021-02-15 06:09:39 -0800</date>
            <delta_ts>2021-02-17 10:09:41 -0800</delta_ts>
            <desc>rebase</desc>
            <filename>bug-221811-20210215160937.patch</filename>
            <type>text/plain</type>
            <size>74799</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmM1MTJjNjE4ZjU4NGNk
NDg2YzdlMDdmMWJmYzAyMWY3Y2ZjMjQ4OC4uNGIxYWNmNzE4MDcyNjhkNGIxMWU3ZDgyM2NmZWM0
ZjEzODNhYWI5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIxLTAyLTEyICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgY29udGV4
dHMgZG8gbm90IHdvcmsgYXMgc291cmNlIGZvciBDb250ZXh0MkQgZHJhd0ltYWdlIGNhbGxzIGlu
IEdQVSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjE4MTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJbXBsZW1lbnRzIHJ1ZGltZW50YXJ5IHN1cHBvcnQgZm9yIHJlYWRpbmcgdGhlIFdlYkdM
IGNvbnRleHQgYW5kIHRyYW5zZmVyaW5nCisgICAgICAgIGl0IHRvIGEgSW1hZ2VCdWZmZXIuCisK
KyAgICAgICAgRml4ZXMgbWFueSB0ZXN0cyB0aGF0IGFyZSByZW1vdmVkIGZyb20gZ3B1LXByb2Nl
c3MvVGVzdEV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIGh0bWwvT2Zmc2NyZWVuQ2FudmFzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6dHJhbnNmZXJUb0ltYWdlQml0
bWFwKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnBhaW50UmVu
ZGVyaW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHRHTC5oOgorICAgICAgICBNYWtlIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2Fu
dmFzIGFuZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMKKyAgICAgICAgdGFrZSBJbWFn
ZUJ1ZmZlciYgaW5zdGVhZCBvZiBJbWFnZUJ1ZmZlciosIHNpbmNlIHRoZSBidWZmZXIgYWx3YXlz
CisgICAgICAgIGV4aXN0cy4KKworICAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9H
cmFwaGljc0NvbnRleHRHTENhaXJvLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgQ2hhbmdlIHRoZSBmdW5j
dGlvbiBzaWduYXR1cmUgc28gdGhhdCBpdCBjYW4gYmUgY2FsbGVkIGZyb20KKyAgICAgICAgb3Ro
ZXIgdGhyZWFkIGFuZCB3aXRob3V0IEdyYXBoaWNzQ29udGV4dEdMIGluc3RhbmNlLgorICAgICAg
ICBJdCBpcyBub3QgcmVhbGx5IGEgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wgcmVsYXRlZCBmdW5j
dGlvbi4uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6ZGlzcGxheUJ1ZmZlciBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1
ZmZlcik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBD
aGFpbjo6ZGV0YWNoQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdM
SU9TdXJmYWNlU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW06CisgICAgICAgIChXZWJHTExh
eWVyU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgTW92ZSB0aGUgdHJpcGxlIGJ1ZmZlcmlu
ZyBpbXBsZW1lbnRhdGlvbiB0byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgVGhlIGltcGxlbWVu
dGF0aW9uIGlzIG5vdyBhbHNvIHVzZWQgaW4gR1BVIHByb2Nlc3Mgc2lkZSwKKyAgICAgICAgc2lu
Y2UgdGhlIEdQVSBwcm9jZXNzIG5lZWRzIHRvIGJlIGFibGUgdG8gcmVhZCB0aGUgY29tcG9zaXRl
ZAorICAgICAgICByZXN1bHRzLgorCisgICAgICAgIFByZXZpb3VzbHkgdGhlIHNhbWUgbG9naWMg
d2FzIHNwbGl0IGJldHdlZW4gV2ViIHByb2Nlc3MgYW5kIEdQVSBwcm9jZXNzLgorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VCdWZmZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6Oklt
YWdlQnVmZmVyOjptYWtlUmVhZEZlbmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlQnVmZmVy
Ojpjb21taXRSZWFkRmVuY2UpOgorCisgICAgICAgIEFkZCBydWRpbWVudGFyeSBmdW5jdGlvbnMg
dG8gZXh0cmFjdCB0aGUgZmx1c2ggaWRlbnRpZmllciBhcyBhCisgICAgICAgICJyZWFkIGZlbmNl
Ii4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRH
TE9wZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6
cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0xPcGVuR0w6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyk6CisgICAg
ICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRSZW5kZXJpbmdSZXN1
bHRzVG9JbWFnZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xPcGVu
R0w6OnJlYWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRDb21wb3NpdGVkUmVzdWx0c0ZvclBhaW50aW5n
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0wuaDoKKworICAgICAgICBFeHBvc2UgcHVibGljIGZ1bmN0aW9ucyB0byBnZXQgSW1hZ2VE
YXRhIG91dCBvZiBkcmF3aW5nIGJ1ZmZlciBhbmQKKyAgICAgICAgZGlzcGxheSBidWZmZXIuCisK
IDIwMjEtMDItMTUgIENocmlzIExvcmQgIDxjbG9yZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIENT
U0ZvbnRGYWNlIHNob3VsZCBub3QgbmVlZCBpdHMgbV9mb250U2VsZWN0b3IgZGF0YSBtZW1iZXIK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggMjU1NzdlODg0OGNiZDc1MWU5OWI5NmRhM2E4MjIzOTlkMWVhYzA4Ni4uMDNl
MGYyZGY5ZWFhNjc2YTAwMWQ3NGQyZjY3OGQ5N2YwMjc5YWQ4NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSw3OSBAQAorMjAyMS0wMi0xMiAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29t
PgorCisgICAgICAgIFdlYkdMIGNvbnRleHRzIGRvIG5vdCB3b3JrIGFzIHNvdXJjZSBmb3IgQ29u
dGV4dDJEIGRyYXdJbWFnZSBjYWxscyBpbiBHUFUgcHJvY2VzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxODExCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50cyBydWRpbWVudGFyeSBzdXBw
b3J0IGZvciByZWFkaW5nIHRoZSBXZWJHTCBjb250ZXh0IGFuZCB0cmFuc2ZlcmluZworICAgICAg
ICBpdCB0byBhIEltYWdlQnVmZmVyLgorCisgICAgICAgIEZpeGVzIG1hbnkgdGVzdHMgdGhhdCBh
cmUgcmVtb3ZlZCBmcm9tIGdwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMuCisKKyAgICAgICAg
KiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjcmVhdGVHcmFwaGljc0NvbnRleHRHTCk6
CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmg6CisgICAg
ICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OlJlbW90ZVJlbmRlcmluZ0Jh
Y2tlbmRXcmFwcGVyOjpnZXQgY29uc3QpOgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVQ29ubmVj
dGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTCk6CisgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYkNocm9tZUNsaWVudDo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0wgY29uc3QpOgorICAgICAg
ICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpjcmVhdGUpOgorICAg
ICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTENvY29hKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1v
dGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlUmVuZGVy
aW5nQmFja2VuZFByb3h5OjpyZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciBjb25zdCk6CisKKyAg
ICAgICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wgdGFrZXMgYSByZWYgb2YgdGhlIHJlc3BlY3Rp
dmUgUmVtb3RlUmVuZGVyaW5nQmFja2VuZC4KKyAgICAgICAgUmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZCBpcyB0aGUgb25lIHRoYXQgY2FuIGhhbmRsZSBJbWFnZUJ1ZmZlcnMuCisKKyAgICAgICAgKFdl
YktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2Fu
dmFzKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50Q29t
cG9zaXRlZFJlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMOjpwYWludEltYWdlRGF0YVRvSW1hZ2VCdWZmZXIpOgorICAgICAgICAqIEdQVVBy
b2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaDoKKyAgICAgICAgKiBHUFVQ
cm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2VzLmluOgorCisg
ICAgICAgIEltcGxlbWVudCB0aGUgZnVuY3Rpb25zIGJ5OgorICAgICAgICAgMSkgVGFrZSBhIHJl
YWQgZmVuY2Ugb2YgdGhlIEltYWdlQnVmZmVyCisgICAgICAgICAyKSBQb3N0aW5nIHRoZSB0YXNr
IGZyb20gV2ViIHByb2Nlc3MgdG8gR1BVIHByb2Nlc3MgV2ViR0wgc2VxdWVuY2UKKyAgICAgICAg
IDMpIFJlYWRpbmcgdGhlIGJ1ZmZlciwgcG9zdCB0aGUgdGFzayB0byBSZW5kZXJpbmdCYWNrZW5k
IHNlcXVlbmNlCisgICAgICAgICA0KSBQYWludCB0aGUgcmVzdWx0cyB0byB0aGUgSW1hZ2VCdWZm
ZXIgYW5kIHNpZ25hbCB0aGUgcmVhZCBmZW5jZQorCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMQ29jb2E6OnByZXBhcmVGb3JEaXNwbGF5KToKKworICAgICAgICBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTCBub3cgcmV0YWlucyB0aGUgcmVmZXJlbmNlIHRvIGRpc3BsYXkg
YnVmZmVyLgorICAgICAgICBCZWZvcmUsIGp1c3Qgc2VudCB0aGUgZGlzcGxheSBidWZmZXIgdG8g
V2ViIHByb2Nlc3MgYW5kIGZvcmdvdAorICAgICAgICBhYm91dCBpdC4KKworICAgICAgICAqIEdQ
VVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6OmRpc3BhdGNoKToKKyAgICAgICAgKiBHUFVQ
cm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaDoKKworICAgICAgICBBZGQg
ZnVuY3Rpb24gdG8gZGlzcGF0Y2ggd29yayB0byByZW5kZXJpbmcgYmFja2VuZCBzZXF1ZW5jZS4K
KworICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4
dEdMUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFBy
b3h5OjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFBy
b3h5OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KToKKyAgICAgICAgKFdlYktpdDo6UmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMp
OgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpwYWludENv
bXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMpOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuaDoKKworICAgICAgICBTZW5kIHRoZSBt
ZXNzYWdlcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUltYWdl
QnVmZmVyUHJveHkuaDoKKworICAgICAgICBBZGQgcnVkaW1lbnRhcnkgZnVuY3Rpb25zIHRvIGV4
dHJhY3QgdGhlIGZsdXNoIGlkZW50aWZpZXIgYXMgYQorICAgICAgICAicmVhZCBmZW5jZSIuCisK
KyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5k
UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHk6
OmNvbm5lY3RUb0dQVVByb2Nlc3MpOgorCisgICAgICAgIFVzZSBJUEM6OlNlbmRPcHRpb246OkRp
c3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBseSB0bworICAgICAgICBzZW5k
IENyZWF0ZVJlbmRlcmluZ0JhY2tlbmQuIEl0IG11c3QgYmUgZGlzcGF0Y2hlZCBpbiBvcmRlciBj
b21wYXJlZCB0byBvdGhlcgorICAgICAgICBtZXNzYWdlcyBzdWNoIGFzIENyZWF0ZVJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMLgorCiAyMDIxLTAyLTEzICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBA
YXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwCmluZGV4IDZmYTA0ZGMzNTVmODZjZWUzMGJlOGRjMzkz
ZTMwNTJlZTMxYzYzNzUuLjE4ZThlZWI1ZDhhMjRhMTNlMTA5MzY0NzZlZTAwZjdmZTliMmQ3MTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5jcHAKQEAgLTI4NCw3ICsyODQs
NyBAQCBFeGNlcHRpb25PcjxSZWZQdHI8SW1hZ2VCaXRtYXA+PiBPZmZzY3JlZW5DYW52YXM6OnRy
YW5zZmVyVG9JbWFnZUJpdG1hcCgpCiAgICAgICAgICAgICByZXR1cm4geyBSZWZQdHI8SW1hZ2VC
aXRtYXA+IHsgbnVsbHB0ciB9IH07CiAKICAgICAgICAgYXV0byogZ2MzZCA9IHdlYkdMQ29udGV4
dC0+Z3JhcGhpY3NDb250ZXh0R0woKTsKLSAgICAgICAgZ2MzZC0+cGFpbnRSZW5kZXJpbmdSZXN1
bHRzVG9DYW52YXMoaW1hZ2VCaXRtYXAtPmJ1ZmZlcigpKTsKKyAgICAgICAgZ2MzZC0+cGFpbnRS
ZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoKmltYWdlQml0bWFwLT5idWZmZXIoKSk7CiAKICAgICAg
ICAgLy8gRklYTUU6IFRoZSB0cmFuc2ZlciBhbGdvcml0aG0gcmVxdWlyZXMgdGhhdCB0aGUgY2Fu
dmFzIGVmZmVjdGl2ZWx5CiAgICAgICAgIC8vIGNyZWF0ZXMgYSBuZXcgYmFja2luZyBzdG9yZS4g
U2luY2Ugd2UncmUgbm90IGRvaW5nIHRoYXQgeWV0LCB3ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcAppbmRleCAz
ODE1OWJmYjcxODhkYjc5MzY4NmI2MmJjNjI5NzcyY2I4NjE4OTNjLi5kZWE3YzI2ODA4NTZlYmZi
NDY5ZWZhOWFkZmI1YWIyNWVhYTNjODRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcApAQCAtMTIxMCw3ICsx
MjEwLDcgQEAgdm9pZCBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjpwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0NhbnZhcygpCiAgICAgICAgICAgICBhdXRvJiBiYXNlID0gY2FudmFzQmFzZSgpOwog
ICAgICAgICAgICAgYmFzZS5jbGVhckNvcGllZEltYWdlKCk7CiAgICAgICAgICAgICBtX21hcmtl
ZENhbnZhc0RpcnR5ID0gZmFsc2U7Ci0gICAgICAgICAgICBtX2NvbnRleHQtPnBhaW50Q29tcG9z
aXRlZFJlc3VsdHNUb0NhbnZhcyhiYXNlLmJ1ZmZlcigpKTsKKyAgICAgICAgICAgIG1fY29udGV4
dC0+cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKCpiYXNlLmJ1ZmZlcigpKTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtMTIyNSw3ICsxMjI1LDcgQEAgdm9pZCBX
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcygp
CiAKICAgICBtX21hcmtlZENhbnZhc0RpcnR5ID0gZmFsc2U7CiAKLSAgICBtX2NvbnRleHQtPnBh
aW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKGJhc2UuYnVmZmVyKCkpOworICAgIG1fY29udGV4
dC0+cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoKmJhc2UuYnVmZmVyKCkpOwogfQogCiBS
ZWZQdHI8SW1hZ2VEYXRhPiBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjpwYWludFJlbmRlcmlu
Z1Jlc3VsdHNUb0ltYWdlRGF0YSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0wuaAppbmRleCAwMDI2MjQ1ZTQ3OTcyN2RlZmNjMDEx
ZTZlOGExZmRjNTRlMzMxYzZlLi5mN2RjOGFlYzFiMGIzN2ZhYmE1MzZjZDQ3Y2MwMjVmNTk3ZjAz
NzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHRHTC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBo
aWNzQ29udGV4dEdMLmgKQEAgLTEyOTEsOSArMTI5MSw5IEBAIHB1YmxpYzoKICAgICAvLyBGSVhN
RTogdGhlc2Ugc2hvdWxkIGJlIHJlbW92ZWQsIHRoZXkncmUgcGFydCBvZiBkcmF3aW5nIGJ1ZmZl
ciBhbmQKICAgICAvLyBkaXNwbGF5IGJ1ZmZlciBhYnN0cmFjdGlvbnMgdGhhdCB0aGUgY2FsbGVy
IHNob3VsZCBob2xkIHNlcGFyYXRlIHRvCiAgICAgLy8gdGhlIGNvbnRleHQuCi0gICAgdmlydHVh
bCB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZl
ciYpID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0cjxJbWFnZURhdGE+IHBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvSW1hZ2VEYXRhKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBwYWludENvbXBvc2l0ZWRS
ZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXIqKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHBhaW50
Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYpID0gMDsKIAogICAgIC8vIEZJ
WE1FOiB0aGlzIHNob3VsZCBiZSByZW1vdmVkLiBUaGUgbGF5ZXIgc2hvdWxkIGJlIG1hcmtlZCBj
b21wb3NpdGVkIGJ5CiAgICAgLy8gcHJlcGFyaW5nIGZvciBkaXNwbGF5LCBzbyB0aGF0IGNhbnZh
cyBpbWFnZSBidWZmZXIgYW5kIHRoZSBsYXllciBhZ3JlZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VCdWZmZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ltYWdlQnVmZmVyLmgKaW5kZXggNzVjYzc5N2I1MmNmMGNhZTU3NTcy
MThjNzVmMTkzMGM2ZTgzODFlNi4uNTYxZjIwOGQxMDNkNDhiMzAxOGJlYWIwMDMxYTZhZjNkNmVm
Yzc1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VC
dWZmZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZUJ1ZmZl
ci5oCkBAIC04MSw2ICs4MSwxMCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGZsdXNoRHJh
d2luZ0NvbnRleHQoKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgZmx1c2hEcmF3aW5nQ29udGV4dEFz
eW5jKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZEZsdXNoKERpc3BsYXlMaXN0OjpGbHVzaElk
ZW50aWZpZXIpIHsgfQorICAgIHVzaW5nIFJlYWRGZW5jZSA9IERpc3BsYXlMaXN0OjpGbHVzaElk
ZW50aWZpZXI7CisgICAgdmlydHVhbCBSZWFkRmVuY2UgbWFrZVJlYWRGZW5jZSgpIHsgcmV0dXJu
IHsgfTsgfQorICAgIC8vIFJlYWQgaXMgYWxsb3dlZCB3aGVuIFJlYWRGZW5jZSBoYXMgcGFzc2Vk
LiBDdXJyZW50bHkgd2FpdGVkIGJ5IGZsdXNoRHJhd2luZ0NvbnRleHQoKS4KKyAgICB2aXJ0dWFs
IHZvaWQgY29tbWl0UmVhZEZlbmNlKFJlYWRGZW5jZSkgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQg
Y2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1ZmZlcihSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIp
IHsgfQogICAgIHZpcnR1YWwgdm9pZCBwcmVwYXJlVG9BcHBlbmREaXNwbGF5TGlzdEl0ZW1zKERp
c3BsYXlMaXN0OjpJdGVtQnVmZmVySGFuZGxlJiYpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0R0xDYWlyby5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRH
TENhaXJvLmNwcAppbmRleCA1NmY2YjFhNzAxYjIwMGM5ODY4ZDI4MmYwN2MzNzZkYTExMGNlMjVl
Li5iZGE2ODZlM2NmM2I1OTBmNzM0OWNlNDU1YzNiNTJjMTRhNTBiNTViIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRHTENh
aXJvLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFw
aGljc0NvbnRleHRHTENhaXJvLmNwcApAQCAtMTA2LDcgKzEwNiw3IEBAIGJvb2wgR3JhcGhpY3ND
b250ZXh0R0xJbWFnZUV4dHJhY3Rvcjo6ZXh0cmFjdEltYWdlKGJvb2wgcHJlbXVsdGlwbHlBbHBo
YSwgYm9vbCBpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0w6OnBhaW50VG9DYW52YXMoUmVmPEltYWdlRGF0YT4mJiBpbWFnZURhdGEsIGNvbnN0IElu
dFNpemUmIGNhbnZhc1NpemUsIEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCkKK3ZvaWQgR3JhcGhp
Y3NDb250ZXh0R0xPcGVuR0w6OnBhaW50VG9DYW52YXMoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xB
dHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBSZWY8SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwgY29uc3Qg
SW50U2l6ZSYgY2FudmFzU2l6ZSwgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0KQogewogICAgIEFT
U0VSVCghaW1hZ2VEYXRhLT5zaXplKCkuaXNFbXB0eSgpKTsKICAgICBpZiAoY2FudmFzU2l6ZS5p
c0VtcHR5KCkpCkBAIC0xMjIsNyArMTIyLDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5H
TDo6cGFpbnRUb0NhbnZhcyhSZWY8SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwgY29uc3QgSW4KICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRvdGFsQnl0ZXM7IGkgKz0gNCkKICAgICAgICAgc3Rk
Ojpzd2FwKHBpeGVsc1tpXSwgcGl4ZWxzW2kgKyAyXSk7CiAKLSAgICBpZiAoIWNvbnRleHRBdHRy
aWJ1dGVzKCkucHJlbXVsdGlwbGllZEFscGhhKSB7CisgICAgaWYgKCFhdHRyaWJ1dGVzLnByZW11
bHRpcGxpZWRBbHBoYSkgewogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRvdGFsQnl0
ZXM7IGkgKz0gNCkgewogICAgICAgICAgICAgcGl4ZWxzW2kgKyAwXSA9IHN0ZDo6bWluKDI1NSwg
cGl4ZWxzW2kgKyAwXSAqIHBpeGVsc1tpICsgM10gLyAyNTUpOwogICAgICAgICAgICAgcGl4ZWxz
W2kgKyAxXSA9IHN0ZDo6bWluKDI1NSwgcGl4ZWxzW2kgKyAxXSAqIHBpeGVsc1tpICsgM10gLyAy
NTUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3Jh
cGhpY3NDb250ZXh0R0xDRy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
Zy9HcmFwaGljc0NvbnRleHRHTENHLmNwcAppbmRleCBlMmU1MWZkMGEwNjBkYWQyMWIyZDIxYTUy
ODVkNDBkNDczYmM1MjZhLi5mYTkyNmQ1MmRjODg3ZjljYjBjMGMyMGY2MTk2YjIyYzQ5ZTdhZGFm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGlj
c0NvbnRleHRHTENHLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
Zy9HcmFwaGljc0NvbnRleHRHTENHLmNwcApAQCAtNTEwLDEyICs1MTAsMTIgQEAgc3RhdGljIHZv
aWQgcmVsZWFzZUltYWdlRGF0YSh2b2lkKiBpbWFnZURhdGEsIGNvbnN0IHZvaWQqLCBzaXplX3Qp
CiAgICAgcmVpbnRlcnByZXRfY2FzdDxJbWFnZURhdGEqPihpbWFnZURhdGEpLT5kZXJlZigpOwog
fQogCi12b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFn
ZURhdGE+JiYgaW1hZ2VEYXRhLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0Nv
bnRleHQmIGNvbnRleHQpCit2b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2Fu
dmFzKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcywgUmVmPElt
YWdlRGF0YT4mJiBpbWFnZURhdGEsIGNvbnN0IEludFNpemUmIGNhbnZhc1NpemUsIEdyYXBoaWNz
Q29udGV4dCYgY29udGV4dCkKIHsKICAgICBBU1NFUlQoIWltYWdlRGF0YS0+c2l6ZSgpLmlzRW1w
dHkoKSk7CiAgICAgaWYgKGNhbnZhc1NpemUuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47Ci0g
ICAgYXV0byBhdHRycyA9IGNvbnRleHRBdHRyaWJ1dGVzKCk7CisgICAgYXV0byBhdHRycyA9IGF0
dHJpYnV0ZXM7CiAgICAgLy8gSW5wdXQgaXMgR0xfUkdCQSA9PSBrQ0dCaXRtYXBCeXRlT3JkZXIz
MkJpZyB8IGtDR0ltYWdlQWxwaGEqTGFzdC4KICAgICAvLyBHTF9CR1JBIHdvdWxkIGJlIGtDR0Jp
dG1hcEJ5dGVPcmRlcjMyTGl0dGxlIHwga0NHSW1hZ2VBbHBoYSpGaXJzdC4KICAgICBDR0JpdG1h
cEluZm8gYml0bWFwSW5mbyA9IGtDR0JpdG1hcEJ5dGVPcmRlcjMyQmlnOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJ
T1N1cmZhY2VTd2FwQ2hhaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uY3BwCmluZGV4IDkzY2U0
NzMyMTYyOGYxZjYwNzI0MjFhNzZiYzYwY2UxYmM1M2RhYjMuLjZmYzg4ZDY5ZTg3Mzk1NjZiZTYy
Mjk1NTIxNTFkNTI3YTZlZTgzOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHAKQEAgLTMyLDYgKzMyLDM1IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46On5HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbigpID0gZGVmYXVsdDsKIAorY29uc3QgR3JhcGhp
Y3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZlciYgR3JhcGhpY3NDb250ZXh0R0xJ
T1N1cmZhY2VTd2FwQ2hhaW46OmRpc3BsYXlCdWZmZXIoKSBjb25zdAoreworICAgIHJldHVybiBt
X2Rpc3BsYXlCdWZmZXI7Cit9CisKK0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWlu
OjpCdWZmZXIgR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OnJlY3ljbGVCdWZm
ZXIoKQoreworICAgIGlmIChtX3NwYXJlQnVmZmVyLnN1cmZhY2UpIHsKKyAgICAgICAgaWYgKG1f
c3BhcmVCdWZmZXIuc3VyZmFjZS0+aXNJblVzZSgpKQorICAgICAgICAgICAgbV9zcGFyZUJ1ZmZl
ci5zdXJmYWNlLnJlc2V0KCk7CisgICAgICAgIHJldHVybiBXVEZNb3ZlKG1fc3BhcmVCdWZmZXIp
OworICAgIH0KKyAgICByZXR1cm4geyB9OworfQorCit2b2lkKiBHcmFwaGljc0NvbnRleHRHTElP
U3VyZmFjZVN3YXBDaGFpbjo6ZGV0YWNoQ2xpZW50KCkKK3sKKyAgICBBU1NFUlQoIW1fc3BhcmVC
dWZmZXIuc3VyZmFjZSk7CisgICAgdm9pZCogcmVzdWx0ID0gbV9kaXNwbGF5QnVmZmVyLmhhbmRs
ZTsKKyAgICBtX2Rpc3BsYXlCdWZmZXIuaGFuZGxlID0gbnVsbHB0cjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorCit2b2lkIEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluOjpwcmVz
ZW50KEJ1ZmZlciYmIGJ1ZmZlcikKK3sKKyAgICBtX3NwYXJlQnVmZmVyID0gV1RGTW92ZShtX2Rp
c3BsYXlCdWZmZXIpOworICAgIG1fZGlzcGxheUJ1ZmZlciA9IFdURk1vdmUoYnVmZmVyKTsKK30K
KwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFj
ZVN3YXBDaGFpbi5oCmluZGV4IDRkZWQ4ZTVmOTQ5ODI2NzE3NDZjOWU3ZjUzM2FhYzZiMThhYzZi
MGEuLmU0MzdkN2RmMGVlODQxMzllYWZlM2UyZmQ3MjcxOThiOGY2MWEwNjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdM
SU9TdXJmYWNlU3dhcENoYWluLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaApAQCAtNTgsMTkg
KzU4LDIzIEBAIHB1YmxpYzoKICAgICAvLyAtIEJ1ZmZlciB3aXRoIGVtcHR5IHN1cmZhY2UgYW5k
IG5vbi1lbXB0eSBtZXRhZGF0YSBoYW5kbGUgaWYgdGhlIHJlY3ljbGVkIGJ1ZmZlciB3YXMgYXZh
aWxhYmxlCiAgICAgLy8gICBidXQgdGhlIHN1cmZhY2UgaXMgc3RpbGwgaW4gdXNlLgogICAgIC8v
IC0gU3VyZmFjZSBhbmQgaGFuZGxlLgotICAgIHZpcnR1YWwgQnVmZmVyIHJlY3ljbGVCdWZmZXIo
KSA9IDA7CisgICAgdmlydHVhbCBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpOwogCiAgICAgLy8gUHJl
cGFyZXMgdGhlIHRhcmdldCBmb3IgZGlzcGxheSB3aXRoIGEgY29udGVudHMgYnVmZmVyLgotICAg
IHZpcnR1YWwgdm9pZCBwcmVzZW50KEJ1ZmZlcikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwcmVz
ZW50KEJ1ZmZlciYmKTsKIAogICAgIC8vIFJldHVybnMgdGhlIG1vc3QgcmVjZW50IHByZXNlbnRl
ZCBkaXNwbGF5IGJ1ZmZlci4gVGhlIHJlZmVyZW5jZSBpcyB2YWxpZCB1bnRpbAogICAgIC8vIG5l
eHQgcHJlc2VudCwgcmVjeWNsZUJ1ZmZlciBvciBkZXRhY2hDbGllbnQgY2FsbC4KLSAgICB2aXJ0
dWFsIGNvbnN0IEJ1ZmZlciYgZGlzcGxheUJ1ZmZlcigpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IGNvbnN0IEJ1ZmZlciYgZGlzcGxheUJ1ZmZlcigpIGNvbnN0OwogCiAgICAgLy8gRGV0YWNoZXMg
dGhlIGNsaWVudCBhbmQgcmV0dXJucyB0aGUgY3VycmVudCBjb250ZW50cyBidWZmZXIgbWV0YWRh
dGEgaGFuZGxlLgogICAgIC8vIFRoZSBpZiBtdWx0aXBsZSBidWZmZXJzIGhhdmUgYmVlbiBzdWJt
aXR0ZWQsIHJlY3ljbGVCdWZmZXIgbXVzdCBoYXZlIGJlZW4gY2FsbGVkIGJlZm9yZSBjYWxsaW5n
CiAgICAgLy8gdGhpcy4KLSAgICB2aXJ0dWFsIHZvaWQqIGRldGFjaENsaWVudCgpID0gMDsKKyAg
ICB2aXJ0dWFsIHZvaWQqIGRldGFjaENsaWVudCgpOworCitwcm90ZWN0ZWQ6CisgICAgQnVmZmVy
IG1fZGlzcGxheUJ1ZmZlcjsKKyAgICBCdWZmZXIgbV9zcGFyZUJ1ZmZlcjsKIH07CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5
ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVy
Lm1tCmluZGV4IDAzMTM4ZWYxNDMwOTg4ZDcxNWE5OGI3Nzc3ZDNhNTM4OGEzMjk5YWEuLjM3MWI5
YTkxM2FjZmZmNzkxNzI2MWIzZDA4YjQ5ZDhmZjE0ODQ0N2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQpAQCAtMzgsMzEg
KzM4LDEwIEBAIGNsYXNzIFdlYkdMTGF5ZXJTd2FwQ2hhaW4gZmluYWwgOiBwdWJsaWMgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwCiBwdWJsaWM6CiAgICAgZXhwbGljaXQg
V2ViR0xMYXllclN3YXBDaGFpbihXZWJHTExheWVyKiBsYXllcikgIDogbV9sYXllcihsYXllcikg
eyB9OwogICAgIH5XZWJHTExheWVyU3dhcENoYWluKCkgb3ZlcnJpZGUgPSBkZWZhdWx0OwotICAg
IHZvaWQgcHJlc2VudChCdWZmZXIpIG92ZXJyaWRlOwotICAgIGNvbnN0IEJ1ZmZlciYgZGlzcGxh
eUJ1ZmZlcigpIGNvbnN0IG92ZXJyaWRlCi0gICAgewotICAgICAgICByZXR1cm4gbV9kaXNwbGF5
QnVmZmVyOwotICAgIH0KLSAgICBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpIG92ZXJyaWRlCi0gICAg
ewotICAgICAgICBpZiAobV9zcGFyZUJ1ZmZlci5zdXJmYWNlKSB7Ci0gICAgICAgICAgICBpZiAo
bV9zcGFyZUJ1ZmZlci5zdXJmYWNlLT5pc0luVXNlKCkpCi0gICAgICAgICAgICAgICAgbV9zcGFy
ZUJ1ZmZlci5zdXJmYWNlLnJlc2V0KCk7Ci0gICAgICAgICAgICByZXR1cm4gV1RGTW92ZShtX3Nw
YXJlQnVmZmVyKTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4geyB9OwotICAgIH0KLSAgICB2
b2lkKiBkZXRhY2hDbGllbnQoKSBvdmVycmlkZQotICAgIHsKLSAgICAgICAgQVNTRVJUKCFtX3Nw
YXJlQnVmZmVyLnN1cmZhY2UpOwotICAgICAgICB2b2lkKiByZXN1bHQgPSBtX2Rpc3BsYXlCdWZm
ZXIuaGFuZGxlOwotICAgICAgICBtX2Rpc3BsYXlCdWZmZXIuaGFuZGxlID0gbnVsbHB0cjsKLSAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICB9CisgICAgdm9pZCBwcmVzZW50KEJ1ZmZlciYmKSBv
dmVycmlkZTsKKwogICAgIFdlYkNvcmU6OklPU3VyZmFjZSogZGlzcGxheVN1cmZhY2UoKSB7IHJl
dHVybiBtX2Rpc3BsYXlCdWZmZXIuc3VyZmFjZS5nZXQoKTsgfQogcHJpdmF0ZToKLSAgICBCdWZm
ZXIgbV9kaXNwbGF5QnVmZmVyOwotICAgIEJ1ZmZlciBtX3NwYXJlQnVmZmVyOwogICAgIFdlYkdM
TGF5ZXIqIGNvbnN0IG1fbGF5ZXI7CiB9OwogCkBAIC0xMzAsMTEgKzEwOSwxMCBAQCBwcml2YXRl
OgogCiBAZW5kCiAKLXZvaWQgV2ViR0xMYXllclN3YXBDaGFpbjo6cHJlc2VudChCdWZmZXIgYnVm
ZmVyKQordm9pZCBXZWJHTExheWVyU3dhcENoYWluOjpwcmVzZW50KEJ1ZmZlciYmIGJ1ZmZlcikK
IHsKICAgICBBU1NFUlQoIW1fc3BhcmVCdWZmZXIuc3VyZmFjZSk7Ci0gICAgbV9zcGFyZUJ1ZmZl
ciA9IFdURk1vdmUobV9kaXNwbGF5QnVmZmVyKTsKLSAgICBtX2Rpc3BsYXlCdWZmZXIgPSBXVEZN
b3ZlKGJ1ZmZlcik7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2Fw
Q2hhaW46OnByZXNlbnQoV1RGTW92ZShidWZmZXIpKTsKICAgICBbbV9sYXllciBwcmVwYXJlRm9y
RGlzcGxheV07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuY3BwCmluZGV4
IDg4NjcwMTUyMjg0NjMwYzc0YmQ3YjQzN2U1YWM4NzA2ODM2M2IxMWEuLjhkZWQ2ZTUxMGFiYzcz
ZDY3ZDliZDJmNWVmMzQ3M2FkNWIxZGU0MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdM
T3BlbkdMLmNwcApAQCAtMTk2LDcgKzE5Niw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVu
R0w6OnByZXBhcmVGb3JEaXNwbGF5KCkKIH0KICNlbmRpZgogCi12b2lkIEdyYXBoaWNzQ29udGV4
dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciogaW1h
Z2VCdWZmZXIpCit2b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYgaW1hZ2VCdWZmZXIpCiB7CiAgICAgaWYgKCFtYWtl
Q29udGV4dEN1cnJlbnQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjA1LDEwICsyMDUsMTAgQEAg
dm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52
YXMoSW1hZ2VCdWZmZXIqIGltYWdlQnUKICAgICBhdXRvIGltYWdlRGF0YSA9IHJlYWRSZW5kZXJp
bmdSZXN1bHRzKCk7CiAgICAgaWYgKCFpbWFnZURhdGEpCiAgICAgICAgIHJldHVybjsKLSAgICBw
YWludFRvQ2FudmFzKGltYWdlRGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci0+YmFj
a2VuZFNpemUoKSwgaW1hZ2VCdWZmZXItPmNvbnRleHQoKSk7CisgICAgcGFpbnRUb0NhbnZhcyhj
b250ZXh0QXR0cmlidXRlcygpLCBpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1hZ2VCdWZm
ZXIuYmFja2VuZFNpemUoKSwgaW1hZ2VCdWZmZXIuY29udGV4dCgpKTsKIH0KIAotdm9pZCBHcmFw
aGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKEltYWdl
QnVmZmVyKiBpbWFnZUJ1ZmZlcikKK3ZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50
Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYgaW1hZ2VCdWZmZXIpCiB7CiAg
ICAgaWYgKCFtYWtlQ29udGV4dEN1cnJlbnQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjE3LDIy
ICsyMTcsMzYgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3NpdGVk
UmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKiBpbWFnZUIKICAgICBhdXRvIGltYWdlRGF0YSA9
IHJlYWRDb21wb3NpdGVkUmVzdWx0cygpOwogICAgIGlmICghaW1hZ2VEYXRhKQogICAgICAgICBy
ZXR1cm47Ci0gICAgcGFpbnRUb0NhbnZhcyhpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1h
Z2VCdWZmZXItPmJhY2tlbmRTaXplKCksIGltYWdlQnVmZmVyLT5jb250ZXh0KCkpOworICAgIHBh
aW50VG9DYW52YXMoY29udGV4dEF0dHJpYnV0ZXMoKSwgaW1hZ2VEYXRhLnJlbGVhc2VOb25OdWxs
KCksIGltYWdlQnVmZmVyLmJhY2tlbmRTaXplKCksIGltYWdlQnVmZmVyLmNvbnRleHQoKSk7CiB9
CiAKIFJlZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRl
cmluZ1Jlc3VsdHNUb0ltYWdlRGF0YSgpCiB7Ci0gICAgaWYgKCFtYWtlQ29udGV4dEN1cnJlbnQo
KSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgaWYgKGdldEludGVybmFsRnJhbWVidWZm
ZXJTaXplKCkuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAvLyBSZWFk
aW5nIHByZW11bHRpcGxpZWQgYWxwaGEgd291bGQgaW52b2x2ZSB1bnByZW11bHRpcGx5aW5nLCB3
aGljaCBpcwogICAgIC8vIGxvc3N5LgogICAgIGlmIChjb250ZXh0QXR0cmlidXRlcygpLnByZW11
bHRpcGxpZWRBbHBoYSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIHJlYWRS
ZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKTsKK30KKworUmVmUHRyPEltYWdlRGF0YT4gR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKQor
eworICAgIGlmICghbWFrZUNvbnRleHRDdXJyZW50KCkpCisgICAgICAgIHJldHVybiBudWxscHRy
OworICAgIGlmIChnZXRJbnRlcm5hbEZyYW1lYnVmZmVyU2l6ZSgpLmlzRW1wdHkoKSkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAgICAgcmV0dXJuIHJlYWRSZW5kZXJpbmdSZXN1bHRzKCk7CiB9
CiAKK1JlZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpyZWFkQ29tcG9z
aXRlZFJlc3VsdHNGb3JQYWludGluZygpCit7CisgICAgaWYgKCFtYWtlQ29udGV4dEN1cnJlbnQo
KSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWYgKGdldEludGVybmFsRnJhbWVidWZm
ZXJTaXplKCkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4g
cmVhZENvbXBvc2l0ZWRSZXN1bHRzKCk7Cit9CisKICNpZiAhUExBVEZPUk0oQ09DT0EpCiBSZWZQ
dHI8SW1hZ2VEYXRhPiBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cmVhZENvbXBvc2l0ZWRSZXN1
bHRzKCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29w
ZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgKaW5kZXggNTg2ODUwODQ5
OGU1ZTY0ZDg4MWQ5NjE0ZTY3NzgwOWI4MmRjZTAwYS4uZTQ0YmZkNWQ5ZjhhZDlkN2M1Mjc2MDFh
MjUyYTc3MGVkNGY5Nzk1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgKQEAg
LTQ1OCw5ICs0NTgsMTIgQEAgcHVibGljOgogICAgIHZvaWQgZGlzcGF0Y2hDb250ZXh0Q2hhbmdl
ZE5vdGlmaWNhdGlvbigpOwogICAgIHZvaWQgc2ltdWxhdGVDb250ZXh0Q2hhbmdlZCgpIGZpbmFs
OwogCi0gICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciop
IGZpbmFsOworICAgIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZm
ZXImKSBmaW5hbDsKICAgICBSZWZQdHI8SW1hZ2VEYXRhPiBwYWludFJlbmRlcmluZ1Jlc3VsdHNU
b0ltYWdlRGF0YSgpIGZpbmFsOwotICAgIHZvaWQgcGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2Fu
dmFzKEltYWdlQnVmZmVyKikgZmluYWw7CisgICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1bHRz
VG9DYW52YXMoSW1hZ2VCdWZmZXImKSBmaW5hbDsKKworICAgIFJlZlB0cjxJbWFnZURhdGE+IHJl
YWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKTsKKyAgICBSZWZQdHI8SW1hZ2VEYXRhPiBy
ZWFkQ29tcG9zaXRlZFJlc3VsdHNGb3JQYWludGluZygpOwogCiAjaWYgVVNFKE9QRU5HTCkgJiYg
RU5BQkxFKFdFQkdMMikKICAgICB2b2lkIHByaW1pdGl2ZVJlc3RhcnRJbmRleChHQ0dMdWludCk7
CkBAIC01MTUsNiArNTE4LDggQEAgcHVibGljOgogICAgIHN0YXRpYyBib29sIHBvc3NpYmxlRm9y
bWF0QW5kVHlwZUZvckludGVybmFsRm9ybWF0KEdDR0xlbnVtIGludGVybmFsRm9ybWF0LCBHQ0dM
ZW51bSYgZm9ybWF0LCBHQ0dMZW51bSYgdHlwZSk7CiAjZW5kaWYgLy8gIVVTRShBTkdMRSkKIAor
ICAgIHN0YXRpYyB2b2lkIHBhaW50VG9DYW52YXMoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xBdHRy
aWJ1dGVzJiwgUmVmPEltYWdlRGF0YT4mJiwgY29uc3QgSW50U2l6ZSYgY2FudmFzU2l6ZSwgR3Jh
cGhpY3NDb250ZXh0Jik7CisKIHByaXZhdGU6CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0woR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBIb3N0V2lu
ZG93KiwgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wqIHNoYXJlZENvbnRleHQgPSBudWxscHRyLCBH
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiogPSBudWxscHRyKTsKQEAgLTU0Miw3
ICs1NDcsNiBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxJbWFnZURhdGE+IHJlYWRSZW5kZXJpbmdS
ZXN1bHRzKCk7CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZENvbXBvc2l0ZWRSZXN1bHRzKCk7
CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZFBpeGVsc0ZvclBhaW50UmVzdWx0cygpOwotICAg
IHZvaWQgcGFpbnRUb0NhbnZhcyhSZWY8SW1hZ2VEYXRhPiYmLCBjb25zdCBJbnRTaXplJiBjYW52
YXNTaXplLCBHcmFwaGljc0NvbnRleHQmKTsKIAogICAgIGJvb2wgcmVzaGFwZUZCT3MoY29uc3Qg
SW50U2l6ZSYpOwogICAgIHZvaWQgcHJlcGFyZVRleHR1cmVJbXBsKCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAgYi9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKaW5k
ZXggNmI5NzI2MzBlMWM5MjI4YzEzODNjNDc3OTZjYzFkYWI5NDA5N2MzNi4uMTNhZTE4NTQ2MzIw
MTQ5MDM3YWRiYWI2OTYzYjAyNGNhMTY4MDkzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcApAQCAtMzM3LDEwICsz
MzcsMTQgQEAgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZFdyYXBwZXI6On5SZW1vdGVSZW5kZXJpbmdCYWNrZW4KIH0KIAogI2lmIEVOQUJMRShXRUJHTCkK
LXZvaWQgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0wo
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIEdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpCit2b2lkIEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyBhdHRyaWJ1dGVzLCBHcmFwaGljc0NvbnRleHRH
TElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZW5kZXJpbmdCYWNrZW5k
SWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikKIHsKKyAgICBhdXRvKiByZW5k
ZXJpbmdCYWNrZW5kID0gbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kTWFwLmdldChyZW5kZXJpbmdC
YWNrZW5kSWRlbnRpZmllcik7CisgICAgaWYgKCFyZW5kZXJpbmdCYWNrZW5kKQorICAgICAgICBy
ZXR1cm47CisKICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fcmVtb3RlR3JhcGhpY3NDb250ZXh0R0xN
YXAuZW5zdXJlKGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgWyZdKCkgewotICAgICAgICBy
ZXR1cm4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShhdHRyaWJ1dGVzLCAqdGhpcywg
Z3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKTsKKyAgICAgICAgcmV0dXJuIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMOjpjcmVhdGUoYXR0cmlidXRlcywgKnRoaXMsIGdyYXBoaWNzQ29udGV4dEdM
SWRlbnRpZmllciwgcmVuZGVyaW5nQmFja2VuZC0+Z2V0KCkpOwogICAgIH0pOwogICAgIEFTU0VS
VF9VTlVTRUQoYWRkUmVzdWx0LCBhZGRSZXN1bHQuaXNOZXdFbnRyeSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIGIv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaAppbmRl
eCBmNzZiN2E2Y2M5ZTU3ZGY1N2I2MmFmZTZkYzk2NTg3YTQ1NmRhMDZjLi40MmVhZGVkMjdhMjhh
MGZlYWMyZWU4NDU1YWM0ZTA0MGY3NTNiMTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKQEAgLTEzOCw3ICsxMzgsNyBA
QCBwcml2YXRlOgogICAgIHZvaWQgcmVsZWFzZVJlbmRlcmluZ0JhY2tlbmQoUmVuZGVyaW5nQmFj
a2VuZElkZW50aWZpZXIpOwogCiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIHZvaWQgY3JlYXRlR3Jh
cGhpY3NDb250ZXh0R0woV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBHcmFw
aGljc0NvbnRleHRHTElkZW50aWZpZXIpOworICAgIHZvaWQgY3JlYXRlR3JhcGhpY3NDb250ZXh0
R0woV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBHcmFwaGljc0NvbnRleHRH
TElkZW50aWZpZXIsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKTsKICAgICB2b2lkIHJlbGVh
c2VHcmFwaGljc0NvbnRleHRHTChHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpOwogI2VuZGlm
CiAKQEAgLTIxMSw3ICsyMTEsNyBAQCBwcml2YXRlOgogICAgIHB1YmxpYzoKICAgICAgICAgUmVt
b3RlUmVuZGVyaW5nQmFja2VuZFdyYXBwZXIoUmVmPFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ+JiYp
OwogICAgICAgICB+UmVtb3RlUmVuZGVyaW5nQmFja2VuZFdyYXBwZXIoKTsKLQorICAgICAgICBS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kJiBnZXQoKSBjb25zdCB7IHJldHVybiBtX3JlbW90ZVJlbmRl
cmluZ0JhY2tlbmQuZ2V0KCk7IH0KICAgICBwcml2YXRlOgogICAgICAgICBSZWY8UmVtb3RlUmVu
ZGVyaW5nQmFja2VuZD4gbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kOwogICAgIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5t
ZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IDMwZjVjMjk4ODYyMTRmOTEwNGYxYWZhMDgzNWIyMzhh
MzZkYzZlZjEuLjJiNjhlM2IwODdhOTM1ZDE5ZWIxZDc5N2JiZTgzYWQ5ZDM4MDQ4MDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0yNiw3ICsyNiw3IEBAIG1lc3NhZ2VzIC0+IEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgV2FudHNEaXNwYXRjaE1lc3NhZ2UgewogICAgIHZvaWQg
Q3JlYXRlUmVuZGVyaW5nQmFja2VuZChXZWJLaXQ6OlJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVy
IGlkZW50aWZpZXIsIElQQzo6U2VtYXBob3JlIHJlc3VtZURpc3BsYXlMaXN0U2VtYXBob3JlKQog
ICAgIHZvaWQgUmVsZWFzZVJlbmRlcmluZ0JhY2tlbmQoV2ViS2l0OjpSZW5kZXJpbmdCYWNrZW5k
SWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikKICNpZiBFTkFCTEUoV0VCR0wp
Ci0gICAgdm9pZCBDcmVhdGVHcmFwaGljc0NvbnRleHRHTChzdHJ1Y3QgV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIFdlYktpdDo6R3JhcGhpY3NDb250ZXh0
R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcikKKyAgICB2b2lkIENyZWF0
ZUdyYXBoaWNzQ29udGV4dEdMKHN0cnVjdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMgYXR0cmlidXRlcywgV2ViS2l0OjpHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3Jh
cGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBXZWJLaXQ6OlJlbmRlcmluZ0JhY2tlbmRJZGVudGlm
aWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogICAgIHZvaWQgUmVsZWFzZUdyYXBoaWNz
Q29udGV4dEdMKFdlYktpdDo6R3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29u
dGV4dEdMSWRlbnRpZmllcikKICNlbmRpZgogICAgIHZvaWQgQ2xlYXJOb3dQbGF5aW5nSW5mbygp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0wuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1Jl
bW90ZUdyYXBoaWNzQ29udGV4dEdMLmNwcAppbmRleCA3OWIzNDU5NmZiZjJkMGRmYzk4MTg2NTFi
ZGNmZWI0YjBhMGM4NzVkLi4yYTE5ZmQ1MmNjMDEzMDZiZjFkYjA5N2U2NTJmYTdhYzc1MDI0NTAw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGlj
cy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5jcHAKQEAgLTM5LDE3ICszOSwxOCBAQCBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiAjaWYgIVBMQVRGT1JNKENP
Q09BKQotc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBSZW1vdGVHcmFw
aGljc0NvbnRleHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgZ3B1Q29ubmVj
dGlvblRvV2ViUHJvY2VzcywgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29u
dGV4dEdMSWRlbnRpZmllcikKK3N0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRH
TD4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShjb25zdCBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmll
ciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmKQog
ewogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBudWxscHRyOwogfQogI2Vu
ZGlmCiAKLVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTChj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBo
aWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlZjxH
cmFwaGljc0NvbnRleHRHTE9wZW5HTD4gY29udGV4dCkKK1JlbW90ZUdyYXBoaWNzQ29udGV4dEdM
OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIsIFJlZjxHcmFwaGljc0NvbnRleHRHTE9wZW5HTD4gY29udGV4
dCwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYgcmVuZGVyaW5nQmFja2VuZCkKICAgICA6IG1fY29u
dGV4dChXVEZNb3ZlKGNvbnRleHQpKQogICAgICwgbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
KG1ha2VXZWFrUHRyKGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MpKQogICAgICwgbV9ncmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIoZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKQorICAgICwg
bV9yZW5kZXJpbmdCYWNrZW5kKG1ha2VSZWYocmVuZGVyaW5nQmFja2VuZCkpCiB7CiAgICAgaWYg
KGF1dG8qIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgPSBtX2dwdUNvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MuZ2V0KCkpCiAgICAgICAgIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MtPm1lc3NhZ2VS
ZWNlaXZlck1hcCgpLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0w6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlm
aWVyLnRvVUludDY0KCksICp0aGlzKTsKQEAgLTEzNyw2ICsxMzgsMzUgQEAgdm9pZCBSZW1vdGVH
cmFwaGljc0NvbnRleHRHTDo6bm90aWZ5TWFya0NvbnRleHRDaGFuZ2VkKCkKICAgICBtX2NvbnRl
eHQtPm1hcmtDb250ZXh0Q2hhbmdlZCgpOwogfQogCit2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdSZXNv
dXJjZUlkZW50aWZpZXIgYnVmZmVySWRlbnRpZmllciwgV2ViQ29yZTo6SW1hZ2VCdWZmZXI6OlJl
YWRGZW5jZSByZWFkRmVuY2UpCit7CisgICAgcGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKG1f
Y29udGV4dC0+cmVhZFJlbmRlcmluZ1Jlc3VsdHNGb3JQYWludGluZygpLCBidWZmZXJJZGVudGlm
aWVyLCByZWFkRmVuY2UpOworfQorCit2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWlu
dENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVu
dGlmaWVyIGJ1ZmZlcklkZW50aWZpZXIsIFdlYkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2Ug
cmVhZEZlbmNlKQoreworICAgIHBhaW50SW1hZ2VEYXRhVG9JbWFnZUJ1ZmZlcihtX2NvbnRleHQt
PnJlYWRDb21wb3NpdGVkUmVzdWx0c0ZvclBhaW50aW5nKCksIGJ1ZmZlcklkZW50aWZpZXIsIHJl
YWRGZW5jZSk7Cit9CisKK3ZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50SW1hZ2VE
YXRhVG9JbWFnZUJ1ZmZlcihSZWZQdHI8V2ViQ29yZTo6SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwg
V2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGJ1ZmZlcklkZW50aWZpZXIsIFdl
YkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UgcmVhZEZlbmNlKQoreworICAgIG1fcmVuZGVy
aW5nQmFja2VuZC0+ZGlzcGF0Y2goW3JlbmRlcmluZ0JhY2tlbmQgPSBtX3JlbmRlcmluZ0JhY2tl
bmQsIGltYWdlRGF0YSA9IFdURk1vdmUoaW1hZ2VEYXRhKSwgYnVmZmVySWRlbnRpZmllciwgcmVh
ZEZlbmNlLCBhdHRyaWJ1dGVzID0gbV9jb250ZXh0LT5jb250ZXh0QXR0cmlidXRlcygpXSgpIG11
dGFibGUgeworICAgICAgICBhdXRvIGltYWdlQnVmZmVyID0gcmVuZGVyaW5nQmFja2VuZC0+cmVt
b3RlUmVzb3VyY2VDYWNoZSgpLmNhY2hlZEltYWdlQnVmZmVyKGJ1ZmZlcklkZW50aWZpZXIpOwor
ICAgICAgICBpZiAoIWltYWdlQnVmZmVyKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAv
LyBOb3RlOiBoZXJlIHdlIGRvIG5vdCB0cnkgdG8gcGxheSBiYWNrIHBlbmRpbmcgY29tbWFuZHMg
Zm9yIGltYWdlQnVmZmVyLiBDdXJyZW50bHkgdGhpcyBjYWxsIGlzIG9ubHkgbWFkZSBmb3IgZW1w
dHkKKyAgICAgICAgLy8gaW1hZ2UgYnVmZmVycyBhbmQgdGhlcmUncyBubyBnb29kIHdheSB0byBh
ZGQgZGlzcGxheSBsaXN0cy4KKyAgICAgICAgaWYgKGltYWdlRGF0YSkKKyAgICAgICAgICAgIEdy
YXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKGF0dHJpYnV0ZXMsIGltYWdlRGF0
YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci0+YmFja2VuZFNpemUoKSwgaW1hZ2VCdWZm
ZXItPmNvbnRleHQoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGltYWdlQnVmZmVyLT5j
b250ZXh0KCkuY2xlYXJSZWN0KHsgSW50UG9pbnQoKSwgaW1hZ2VCdWZmZXItPmJhY2tlbmRTaXpl
KCkgfSk7CisgICAgICAgIC8vIFVuZm9ydHVuYXRlbHkgImZsdXNoIiBpbXBsZW1lbnRhdGlvbiBp
biBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kIG92ZXJsb2FkcyBvcmRlcmluZyBhbmQgZWZmZWN0cy4K
KyAgICAgICAgLy8gVGh1cyB3ZSBuZWVkIHRvIGZsdXNoIGV2ZW4gdGhvdWdoIHdlJ3JlIHVzaW5n
IHRoZSBSZWFkRmVuY2UgZm9yIG9yZGVyaW5nLgorICAgICAgICBpbWFnZUJ1ZmZlci0+Zmx1c2hD
b250ZXh0KCk7CisgICAgICAgIHJlbmRlcmluZ0JhY2tlbmQtPmRpZEZsdXNoKHJlYWRGZW5jZSwg
YnVmZmVySWRlbnRpZmllcik7CisgICAgfSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAog
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9S
ZW1vdGVHcmFwaGljc0NvbnRleHRHTC5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmgKaW5kZXggMDAxNTlhYzhiNTg2YThiNjJhM2Rk
YTNhNTcwMDRlODgzZTE1NmQwOC4uOGZlZmVhOGEwMGMwM2E2NWNkYjliYjE5N2YwODc1ZTExNTBi
YzM3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZUdyYXBoaWNzQ29udGV4dEdMLmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmgKQEAgLTMxLDcgKzMxLDcgQEAKICNpbmNsdWRl
ICJHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIuaCIKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2
ZXIuaCIKICNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCi0KKyNpbmNsdWRlICJSZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9FeHRlbnNpb25zR0wuaD4KICNpbmNs
dWRlIDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9Ob3RJbXBsZW1lbnRlZC5oPgpAQCAtNTksMTMgKzU5LDEzIEBAIGNsYXNzIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMCiAgICAgLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVyCiAgICAgLCBw
cml2YXRlIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpDbGllbnQgewogcHVibGljOgotICAg
IHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IGNyZWF0ZShj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKTsKKyAgICBzdGF0aWMg
c3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBjcmVhdGUoY29uc3QgV2Vi
Q29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZCYpOwogICAgIH5SZW1vdGVHcmFwaGljc0NvbnRleHRHTCgpIG92ZXJyaWRlOwogCiAgICAgR1BV
Q29ubmVjdGlvblRvV2ViUHJvY2VzcyogZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcygpIGNvbnN0
OwogCiBwcm90ZWN0ZWQ6Ci0gICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMPik7CisgICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMPiwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYpOwogCiAgICAgLy8gSVBDOjpN
ZXNzYWdlU2VuZGVyIG92ZXJyaWRlcy4KICAgICBJUEM6OkNvbm5lY3Rpb24qIG1lc3NhZ2VTZW5k
ZXJDb25uZWN0aW9uKCkgY29uc3QgZmluYWw7CkBAIC05MiwxMiArOTIsMTcgQEAgcHJvdGVjdGVk
OgogI2VuZGlmCiAgICAgdm9pZCBnZXRFcnJvcihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQz
Ml90KT4mJik7CiAgICAgdm9pZCBzeW50aGVzaXplR0xFcnJvcih1aW50MzJfdCBlcnJvcik7Cisg
ICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdS
ZXNvdXJjZUlkZW50aWZpZXIsIFdlYkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UpOworICAg
IHZvaWQgcGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllciwgV2ViQ29yZTo6SW1hZ2VCdWZmZXI6OlJlYWRGZW5jZSk7CiAKICNp
bmNsdWRlICJSZW1vdGVHcmFwaGljc0NvbnRleHRHTEZ1bmN0aW9uc0dlbmVyYXRlZC5oIiAvLyBO
T0xJTlQKIAorICAgIHZvaWQgcGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKFJlZlB0cjxXZWJD
b3JlOjpJbWFnZURhdGE+JiYsIFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciwg
V2ViQ29yZTo6SW1hZ2VCdWZmZXI6OlJlYWRGZW5jZSk7CisKICAgICBSZWY8V2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0w+IG1fY29udGV4dDsKICAgICBXZWFrUHRyPEdQVUNvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M+IG1fZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzczsKICAgICBHcmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIgbV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXI7CisgICAg
UmVmPFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ+IG1fcmVuZGVyaW5nQmFja2VuZDsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2VzLmluIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2Vz
LmluCmluZGV4IDdhMTkyNWRiYjI3YWJmM2QzMDM0Y2I3ZmNiMzhhM2YzOTNlM2RjZmEuLjE1YTBm
NjE2MzkyZWQ3MmFmMmY3ZDlmOTc3YzdhMWQ1NWFmNDAyZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5tZXNzYWdl
cy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0wubWVzc2FnZXMuaW4KQEAgLTM2LDYgKzM2LDkgQEAgbWVzc2FnZXMgLT4gUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0wgTm90UmVmQ291bnRlZCB7CiAgICAgdm9pZCBOb3RpZnlNYXJr
Q29udGV4dENoYW5nZWQoKQogICAgIHZvaWQgU3ludGhlc2l6ZUdMRXJyb3IodWludDMyX3QgZXJy
b3IpCiAgICAgdm9pZCBHZXRFcnJvcigpIC0+ICh1aW50MzJfdCByZXR1cm5WYWx1ZSkgU3luY2hy
b25vdXMKKyAgICB2b2lkIFBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJl
bmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIFdl
YkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UgcmVhZEZlbmNlKQorICAgIHZvaWQgUGFpbnRD
b21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRp
ZmllciByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIFdlYkNvcmU6OkltYWdlQnVmZmVyOjpS
ZWFkRmVuY2UgcmVhZEZlbmNlKQorCiAKICAgICB2b2lkIFNldEZhaWxOZXh0R1BVU3RhdHVzQ2hl
Y2soKQogICAgIHZvaWQgTW92ZUVycm9yc1RvU3ludGhldGljRXJyb3JMaXN0KCkgLT4gKGJvb2wg
cmV0dXJuVmFsdWUpIFN5bmNocm9ub3VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5j
cHAKaW5kZXggOGUyZDFmYzY1MTg2MjgzOTVlOTc0MWM0NGU3YWM4NTFiMDhlZjYyNy4uYmIxNWE5
NTZkNWQwMmYyNDA1M2NkMDQ2MjJiNjFlZDQzNjU1ZmU1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0Nv
bnRleHRHTENvY29hLmNwcApAQCAtMzcsNjMgKzM3LDM2IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJD
b3JlOwogCiBuYW1lc3BhY2UgewogCi1jbGFzcyBSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29h
IGZpbmFsIDogcHVibGljIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMLCBwcml2YXRlIFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluIHsKK2NsYXNzIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMQ29jb2EgZmluYWwgOiBwdWJsaWMgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wg
ewogcHVibGljOgotICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoY29uc3QgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcik7CisgICAgUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xDb2NvYShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kJik7CiAgICAgflJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29j
b2EoKSBmaW5hbCA9IGRlZmF1bHQ7CiAKICAgICAvLyBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBv
dmVycmlkZXMuCiAgICAgdm9pZCBwcmVwYXJlRm9yRGlzcGxheShDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdURjo6TWFjaFNlbmRSaWdodCYmKT4mJikgZmluYWw7Ci0KLSAgICAvLyBHcmFwaGljc0Nv
bnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiBvdmVycmlkZXMuCi0gICAgQnVmZmVyIHJlY3ljbGVC
dWZmZXIoKSBmaW5hbDsKLSAgICB2b2lkIHByZXNlbnQoQnVmZmVyKSBmaW5hbDsKLSAgICBjb25z
dCBCdWZmZXImIGRpc3BsYXlCdWZmZXIoKSBjb25zdCBmaW5hbDsKLSAgICB2b2lkKiBkZXRhY2hD
bGllbnQoKSBmaW5hbDsKIHByaXZhdGU6Ci0gICAgR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VT
d2FwQ2hhaW46OkJ1ZmZlciBtX2Rpc3BsYXlCdWZmZXI7CisgICAgV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4gbV9zd2FwQ2hhaW47CiB9OwogCiB9CiAKLXN0ZDo6
dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTD4gUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0w6OmNyZWF0ZShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0
dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50
aWZpZXIpCi17Ci0gICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTD4obmV3IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoYXR0cmlidXRlcywgZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzcywgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKSk7Ci19Ci0K
LVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29j
b2EoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVz
LCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBHcmFwaGljc0NvbnRleHRH
TElkZW50aWZpZXIgaWRlbnRpZmllcikKLSAgICA6IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKGF0
dHJpYnV0ZXMsIGNvbm5lY3Rpb24sIGlkZW50aWZpZXIsIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdM
OjpjcmVhdGVGb3JHUFVQcm9jZXNzKGF0dHJpYnV0ZXMsIHRoaXMpKQotewotfQotCi1HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6QnVmZmVyIFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMQ29jb2E6OnJlY3ljbGVCdWZmZXIoKQotewotICAgIHJldHVybiBXVEZNb3ZlKG1fZGlzcGxh
eUJ1ZmZlcik7Ci19Ci0KLXZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6cHJlc2Vu
dChCdWZmZXIgYnVmZmVyKQotewotICAgIEFTU0VSVCghbV9kaXNwbGF5QnVmZmVyLnN1cmZhY2Up
OwotICAgIG1fZGlzcGxheUJ1ZmZlciA9IFdURk1vdmUoYnVmZmVyKTsKLX0KLQotY29uc3QgR3Jh
cGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZlciYgUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xDb2NvYTo6ZGlzcGxheUJ1ZmZlcigpIGNvbnN0CitzdGQ6OnVuaXF1ZV9wdHI8UmVt
b3RlR3JhcGhpY3NDb250ZXh0R0w+IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpjcmVhdGUoY29u
c3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBHUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzJiBncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLCBHcmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kJiByZW5kZXJpbmdCYWNrZW5kKQogewotICAgIHJldHVybiBtX2Rpc3Bs
YXlCdWZmZXI7CisgICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTD4obmV3IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoYXR0cmlidXRlcywgZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzcywgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCByZW5kZXJp
bmdCYWNrZW5kKSk7CiB9CiAKLXZvaWQqIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OmRl
dGFjaENsaWVudCgpCitSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRl
cyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgR3Jh
cGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlbW90ZVJlbmRlcmluZ0JhY2tl
bmQmIHJlbmRlcmluZ0JhY2tlbmQpCisgICAgOiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTChhdHRy
aWJ1dGVzLCBjb25uZWN0aW9uLCBpZGVudGlmaWVyLCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6
Y3JlYXRlRm9yR1BVUHJvY2VzcyhhdHRyaWJ1dGVzLCAmbV9zd2FwQ2hhaW4pLCByZW5kZXJpbmdC
YWNrZW5kKQogewotICAgIHJldHVybiBzdGQ6OmV4Y2hhbmdlKG1fZGlzcGxheUJ1ZmZlci5oYW5k
bGUsIG51bGxwdHIpOwogfQogCiB2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OnBy
ZXBhcmVGb3JEaXNwbGF5KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV1RGOjpNYWNoU2VuZFJpZ2h0
JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIG1fY29udGV4dC0+cHJlcGFyZUZvckRp
c3BsYXkoKTsKLSAgICBhdXRvIGRpc3BsYXlCdWZmZXIgPSBXVEZNb3ZlKG1fZGlzcGxheUJ1ZmZl
ci5zdXJmYWNlKTsKICAgICBNYWNoU2VuZFJpZ2h0IHNlbmRSaWdodDsKLSAgICBpZiAoZGlzcGxh
eUJ1ZmZlcikKLSAgICAgICAgc2VuZFJpZ2h0ID0gZGlzcGxheUJ1ZmZlci0+Y3JlYXRlU2VuZFJp
Z2h0KCk7CisgICAgYXV0byogc3VyZmFjZSA9IG1fc3dhcENoYWluLmRpc3BsYXlCdWZmZXIoKS5z
dXJmYWNlLmdldCgpOworICAgIGlmIChzdXJmYWNlKQorICAgICAgICBzZW5kUmlnaHQgPSBzdXJm
YWNlLT5jcmVhdGVTZW5kUmlnaHQoKTsKICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHNl
bmRSaWdodCkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3Jh
cGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nl
c3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHAKaW5kZXggMmM3NjI1MTg2YWVl
MTVkNzcyYjc2NGJkZDU1OWYwYTFjMjcwYmQ0MS4uN2NkYzZlYmMzMDY0OGQwMDMxODQ0YmViMjVk
YWM0OWJmNGY5ZTY2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmNwcApAQCAtOTIsNiArOTIsMTEg
QEAgdm9pZCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjpkaXNjb25uZWN0KCkKICAgICBtX2dwdUNv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MtPmNvbm5lY3Rpb24oKS5yZW1vdmVXb3JrUXVldWVNZXNzYWdl
UmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6Om1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSwgbV9yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIH0KIAor
dm9pZCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjpkaXNwYXRjaChGdW5jdGlvbjx2b2lkKCk+JiYg
dGFzaykKK3sKKyAgICBtX3dvcmtRdWV1ZS0+ZGlzcGF0Y2goV1RGTW92ZSh0YXNrKSk7Cit9CisK
IElQQzo6Q29ubmVjdGlvbiogUmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6bWVzc2FnZVNlbmRlckNv
bm5lY3Rpb24oKSBjb25zdAogewogICAgIHJldHVybiAmbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzLT5jb25uZWN0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
Z3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaAppbmRleCBiN2FlZTI2Mjc3MDVi
YjlhY2MxMDE5ZDcxNTVlZjI3ZTE1M2QyYjI4Li5lMDU5NmJkZWUyNTI4NWU3Nzk3NDFiMmI2MTYy
MmI2MGE3NjY3MzM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhp
Y3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmgKQEAgLTgwLDYgKzgwLDkgQEAgcHVi
bGljOgogCiAgICAgdm9pZCBkaXNjb25uZWN0KCk7CiAKKyAgICAvLyBSdW5zIEZ1bmN0aW9uIGlu
IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQgdGFzayBxdWV1ZS4KKyAgICB2b2lkIGRpc3BhdGNoKEZ1
bmN0aW9uPHZvaWQoKT4mJik7CisKIHByaXZhdGU6CiAgICAgUmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZChHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIs
IElQQzo6U2VtYXBob3JlJiYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuY3BwIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFBy
b3h5LmNwcAppbmRleCBmMjliZTAwNmViN2I5NzY0Yjc4MmQ5MTYyNWM4MDE2MGZmOGYzNmYzLi4x
NGU0MzJjZjJhYWU4NmE5Mjk0MzVjYTI5NWMyOWMyMTIzYjVhNmVhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdM
UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5jcHAKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRl
ICJSZW1vdGVHcmFwaGljc0NvbnRleHRHTE1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0xQcm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgor
I2luY2x1ZGUgPFdlYkNvcmUvSW1hZ2VCdWZmZXIuaD4KIAogI2lmIFBMQVRGT1JNKENPQ09BKQog
I2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0Q0cuaD4KQEAgLTQzLDE4ICs0NCwxOCBA
QCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKLVJlZlB0
cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5PiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFBy
b3h5OjpjcmVhdGUoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVz
KQorUmVmUHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk+IFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMUHJveHk6OmNyZWF0ZShjb25zdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0
dHJpYnV0ZXMsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVu
dGlmaWVyKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVHUFVQcm9jZXNzQ29ubmVjdGlv
bigpLCBhdHRyaWJ1dGVzKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTFByb3h5KFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVByb2Nlc3ND
b25uZWN0aW9uKCksIGF0dHJpYnV0ZXMsIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKSk7CiB9
CiAKLVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
UHJveHkoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVByb2Nlc3NDb25uZWN0aW9uLCBjb25zdCBH
cmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJzKQorUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eShHUFVQcm9jZXNzQ29ubmVjdGlv
biYgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24sIGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRl
cyYgYXR0cnMsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVu
dGlmaWVyKQogICAgIDogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2UoYXR0cnMpCiAg
ICAgLCBtX2dwdVByb2Nlc3NDb25uZWN0aW9uKCZncHVQcm9jZXNzQ29ubmVjdGlvbikKIHsKICAg
ICBncHVQcm9jZXNzQ29ubmVjdGlvbi5hZGRDbGllbnQoKnRoaXMpOwogICAgIGdwdVByb2Nlc3ND
b25uZWN0aW9uLm1lc3NhZ2VSZWNlaXZlck1hcCgpLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdl
czo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBt
X2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Ci0gICAgY29u
bmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkNyZWF0
ZUdyYXBoaWNzQ29udGV4dEdMKGF0dHJzLCBtX2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciks
IDAsIElQQzo6U2VuZE9wdGlvbjo6RGlzcGF0Y2hNZXNzYWdlRXZlbldoZW5XYWl0aW5nRm9yU3lu
Y1JlcGx5KTsKKyAgICBjb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6Q3JlYXRlR3JhcGhpY3NDb250ZXh0R0woYXR0cnMsIG1fZ3JhcGhpY3NDb250
ZXh0R0xJZGVudGlmaWVyLCByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciksIDAsIElQQzo6U2Vu
ZE9wdGlvbjo6RGlzcGF0Y2hNZXNzYWdlRXZlbldoZW5XYWl0aW5nRm9yU3luY1JlcGx5KTsKIH0K
IAogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6flJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
UHJveHkoKQpAQCAtMTMwLDE0ICsxMzEsNDAgQEAgdm9pZCBSZW1vdGVHcmFwaGljc0NvbnRleHRH
TFByb3h5OjpzaW11bGF0ZUNvbnRleHRDaGFuZ2VkKCkKICAgICBub3RJbXBsZW1lbnRlZCgpOwog
fQogCi12b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OnBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikKK3ZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQ
cm94eTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXImIGJ1ZmZlcikK
IHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIC8vIEZJWE1FOiB0aGUgYnVmZmVyIGlzICJy
ZWxhdGl2ZWx5IGVtcHR5IiBhbHdheXMsIGJ1dCBmb3IgY29uc2lzdGVuY3ksIHdlIG5lZWQgdG8g
ZW5zdXJlCisgICAgLy8gbm8gcGVuZGluZyBvcGVyYXRpb25zIGFyZSB0YXJnZXRlZCBmb3IgdGhl
IGBidWZmZXJgLgorICAgIGJ1ZmZlci5mbHVzaERyYXdpbmdDb250ZXh0KCk7CisKKyAgICAvLyBG
SVhNRTogV2UgY2Fubm90IHN5bmNocm9uaXplIHNvIHRoYXQgd2Ugd291bGQga25vdyBubyBwZW5k
aW5nIG9wZXJhdGlvbnMgYXJlIHVzaW5nIHRoZSBgYnVmZmVyYC4KKworICAgIC8vIEZJWE1FOiBN
YXliZSBpbXBsZW1lbnQgSVBDOjpGZW5jZSBvciBzb21ldGhpbmcgc2ltaWxhci4KKyAgICBhdXRv
IGJ1ZmZlckZlbmNlID0gYnVmZmVyLm1ha2VSZWFkRmVuY2UoKTsKKyAgICBhdXRvIHNlbmRSZXN1
bHQgPSBzZW5kKE1lc3NhZ2VzOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRSZW5kZXJp
bmdSZXN1bHRzVG9DYW52YXMoYnVmZmVyLnJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcigpLCBi
dWZmZXJGZW5jZSkpOworICAgIGlmICghc2VuZFJlc3VsdCkgeworICAgICAgICBtYXJrQ29udGV4
dExvc3QoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBidWZmZXIuY29tbWl0UmVhZEZl
bmNlKGJ1ZmZlckZlbmNlKTsKKyAgICAvLyBGSVhNRTogQ3VycmVudGx5IFJlbW90ZUltYWdlQnVm
ZmVyUHJveHk6OmdldEltYWdlRGF0YSBldCBhbCBkbyBub3Qgd2FpdCBmb3IgdGhlIHJlYWQgZmVu
Y2VzIG9mIHRoZSBpbWFnZXMKKyAgICAvLyBpbnNpZGUgdGhlIGRpc3BsYXkgbGlzdHMuIFJhdGhl
ciwgaXQgYXNzdW1lcyB0aGF0IHByb2Nlc3NpbmcgaXRzIHNlcXVlbmNlIChlLmcuIHRoZSBkaXNw
bGF5IGxpc3QpIHdpbGwgZXF1YWwgdG8gcmVhZCBmZW5jZXMgYmVpbmcKKyAgICAvLyBmdWxmaWxs
ZWQuIEhvd2V2ZXIsIHNpbmNlIHRoZSBhYm92ZSByZWFkIGZlbmNlIGdvZXMgdGhyb3VnaCBkaWZm
ZXJlbnQgc2VxdWVuY2UgKFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMIHByb2Nlc3NpbmcgdGhyZWFk
KSwKKyAgICAvLyB0aGlzIHRoZSBhc3N1bXB0aW9uIGlzIG5vdCBvay4KKyAgICBidWZmZXIuZmx1
c2hEcmF3aW5nQ29udGV4dCgpOwogfQogCi12b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJv
eHk6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciopCit2b2lkIFJl
bW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZh
cyhJbWFnZUJ1ZmZlciYgYnVmZmVyKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgYnVm
ZmVyLmZsdXNoRHJhd2luZ0NvbnRleHQoKTsKKyAgICBhdXRvIGJ1ZmZlckZlbmNlID0gYnVmZmVy
Lm1ha2VSZWFkRmVuY2UoKTsKKyAgICBhdXRvIHNlbmRSZXN1bHQgPSBzZW5kKE1lc3NhZ2VzOjpS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKGJ1
ZmZlci5yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIoKSwgYnVmZmVyRmVuY2UpKTsKKyAgICBp
ZiAoIXNlbmRSZXN1bHQpIHsKKyAgICAgICAgbWFya0NvbnRleHRMb3N0KCk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisgICAgYnVmZmVyLmNvbW1pdFJlYWRGZW5jZShidWZmZXJGZW5jZSk7Cisg
ICAgYnVmZmVyLmZsdXNoRHJhd2luZ0NvbnRleHQoKTsKIH0KIAogdm9pZCBSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTFByb3h5OjpzeW50aGVzaXplR0xFcnJvcihHQ0dMZW51bSBlcnJvcikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0xQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGlj
cy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmgKaW5kZXggODMxYjRiMGFiMTM3ZTZhYWY4
MzU5NmUwYjBhMDc2ZGYxZTA5MTc2MS4uNWNlNTc2NzZiMDkwNWE2NTc0MDQyYTlmNTQzOGE0NzFm
YjdlZjk5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGlj
cy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmgKQEAgLTMz
LDYgKzMzLDcgQEAKICNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCiAjaW5jbHVkZSAiUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZVJlc291cmNlQ2Fj
aGVQcm94eS5oIgorI2luY2x1ZGUgIlJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9Ob3RJbXBs
ZW1lbnRlZC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94
eUJhc2UuaD4KQEAgLTUwLDcgKzUxLDcgQEAgY2xhc3MgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQ
cm94eSBmaW5hbAogICAgICwgcHJpdmF0ZSBHUFVQcm9jZXNzQ29ubmVjdGlvbjo6Q2xpZW50CiAg
ICAgLCBwdWJsaWMgV2ViQ29yZTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2Ugewog
cHVibGljOgotICAgIHN0YXRpYyBSZWZQdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eT4g
Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYpOworICAg
IHN0YXRpYyBSZWZQdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eT4gY3JlYXRlKGNvbnN0
IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYsIFJlbmRlcmluZ0JhY2tlbmRJ
ZGVudGlmaWVyKTsKICAgICB+UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eSgpIGZpbmFsOwog
CiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIgb3ZlcnJpZGVzLgpAQCAtNjMsOCArNjQsOCBA
QCBwdWJsaWM6CiAgICAgdm9pZCBlbnN1cmVFeHRlbnNpb25FbmFibGVkKGNvbnN0IFN0cmluZyYg
ZXh0ZW5zaW9uKSBmaW5hbDsKICAgICB2b2lkIG5vdGlmeU1hcmtDb250ZXh0Q2hhbmdlZCgpIGZp
bmFsOwogICAgIHZvaWQgc2ltdWxhdGVDb250ZXh0Q2hhbmdlZCgpIGZpbmFsOwotICAgIHZvaWQg
cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6SW1hZ2VCdWZmZXIqKSBmaW5h
bDsKLSAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpJbWFn
ZUJ1ZmZlciopIGZpbmFsOworICAgIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMo
V2ViQ29yZTo6SW1hZ2VCdWZmZXImKSBmaW5hbDsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJl
c3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpJbWFnZUJ1ZmZlciYpIGZpbmFsOwogICAgIHZvaWQgc3lu
dGhlc2l6ZUdMRXJyb3IoR0NHTGVudW0gZXJyb3IpIGZpbmFsOwogICAgIEdDR0xlbnVtIGdldEVy
cm9yKCkgZmluYWw7CiAKQEAgLTM1Niw3ICszNTcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlz
Y29ubmVjdEdwdVByb2Nlc3NJZk5lZWRlZCgpOwogICAgIHZvaWQgYWJhbmRvbkdwdVByb2Nlc3Mo
KTsKIAotICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoR1BVUHJvY2Vzc0Nvbm5lY3Rp
b24mLCBjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmKTsKKyAgICBS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KEdQVVByb2Nlc3NDb25uZWN0aW9uJiwgY29uc3Qg
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgUmVuZGVyaW5nQmFja2VuZElk
ZW50aWZpZXIpOwogICAgIEdQVVByb2Nlc3NDb25uZWN0aW9uKiBtX2dwdVByb2Nlc3NDb25uZWN0
aW9uOwogICAgIGJvb2wgbV9kaWRJbml0aWFsaXplIHsgZmFsc2UgfTsKICAgICBHQ0dMZW51bSBt
X2Vycm9yV2hlbkNvbnRleHRJc0xvc3QgPSBOT19FUlJPUjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlSW1hZ2VCdWZmZXJQcm94eS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1ZmZlclBy
b3h5LmgKaW5kZXggMGNhMmJiMjAzZTRjNzQyN2I1NDRlNmUzYTc0M2Q2YzE4MDUzOTJiMC4uZDU1
MTQyMmZmNTNlZmRkZTcyNzFjMjA1ZGFkMjA0OGMzYjlkMDBjOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1ZmZlclByb3h5LmgK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1
ZmZlclByb3h5LmgKQEAgLTIwNSwxMiArMjA1LDI0IEBAIHByb3RlY3RlZDoKICAgICAgICAgICAg
IHJldHVybjsKIAogICAgICAgICBpZiAoIW1fZHJhd2luZ0NvbnRleHQuZGlzcGxheUxpc3QoKS5p
c0VtcHR5KCkpIHsKLSAgICAgICAgICAgIG1fc2VudEZsdXNoSWRlbnRpZmllciA9IFdlYkNvcmU6
OkRpc3BsYXlMaXN0OjpGbHVzaElkZW50aWZpZXI6OmdlbmVyYXRlKCk7Ci0gICAgICAgICAgICBt
X2RyYXdpbmdDb250ZXh0LnJlY29yZGVyKCkuZmx1c2hDb250ZXh0KG1fc2VudEZsdXNoSWRlbnRp
Zmllcik7CisgICAgICAgICAgICBhdXRvIHJlYWRGZW5jZSA9IG1ha2VSZWFkRmVuY2UoKTsKKyAg
ICAgICAgICAgIG1fZHJhd2luZ0NvbnRleHQucmVjb3JkZXIoKS5mbHVzaENvbnRleHQocmVhZEZl
bmNlKTsKKyAgICAgICAgICAgIGNsZWFyRGlzcGxheUxpc3QoKTsKKyAgICAgICAgICAgIGNvbW1p
dFJlYWRGZW5jZShyZWFkRmVuY2UpOwogICAgICAgICB9CiAKICAgICAgICAgbV9yZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kUHJveHktPnNlbmREZWZlcnJlZFdha2V1cE1lc3NhZ2VJZk5lZWRlZCgpOwot
ICAgICAgICBjbGVhckRpc3BsYXlMaXN0KCk7CisgICAgfQorCisgICAgV2ViQ29yZTo6SW1hZ2VC
dWZmZXI6OlJlYWRGZW5jZSBtYWtlUmVhZEZlbmNlKCkgZmluYWwKKyAgICB7CisgICAgICAgIHJl
dHVybiBXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Rmx1c2hJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwor
ICAgIH0KKworICAgIHZvaWQgY29tbWl0UmVhZEZlbmNlKFdlYkNvcmU6OkltYWdlQnVmZmVyOjpS
ZWFkRmVuY2UgcmVhZEZlbmNlKSBmaW5hbAorICAgIHsKKyAgICAgICAgQVNTRVJUKG1fZHJhd2lu
Z0NvbnRleHQuZGlzcGxheUxpc3QoKS5pc0VtcHR5KCkpOyAvLyBDdXJyZW50bHkgd2UgY2Fubm90
IHdyaXRlIG92ZXIgcGVuZGluZyBjb21tYW5kcy4KKyAgICAgICAgbV9zZW50Rmx1c2hJZGVudGlm
aWVyID0gcmVhZEZlbmNlOwogICAgIH0KIAogICAgIHZvaWQgY2FjaGVOYXRpdmVJbWFnZShXZWJD
b3JlOjpOYXRpdmVJbWFnZSYgaW1hZ2UpIG92ZXJyaWRlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmlu
Z0JhY2tlbmRQcm94eS5jcHAKaW5kZXggYTRjNDVlMDA4MGFiYzYzZmY2Y2JjNTM5MTYzNTNjOTdl
MjE4ZDE3ZS4uM2IxNGY0MzBmNjE5NGQ2MDY1YTMyMmU1MmE4ODU3MThmOTcxNzM3NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJp
bmdCYWNrZW5kUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3Jh
cGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcApAQCAtNjUsNyArNjUsNyBAQCB2
b2lkIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6Y29ubmVjdFRvR1BVUHJvY2VzcygpCiAg
ICAgYXV0byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVBy
b2Nlc3NDb25uZWN0aW9uKCk7CiAgICAgY29ubmVjdGlvbi5hZGRDbGllbnQoKnRoaXMpOwogICAg
IGNvbm5lY3Rpb24ubWVzc2FnZVJlY2VpdmVyTWFwKCkuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3Nh
Z2VzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwg
bV9yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Ci0gICAgc2Vu
ZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Q3JlYXRlUmVuZGVyaW5nQmFj
a2VuZChtX3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLCBtX3Jlc3VtZURpc3BsYXlMaXN0U2Vt
YXBob3JlKSwgMCk7CisgICAgc2VuZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6Q3JlYXRlUmVuZGVyaW5nQmFja2VuZChtX3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLCBt
X3Jlc3VtZURpc3BsYXlMaXN0U2VtYXBob3JlKSwgMCwgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRj
aE1lc3NhZ2VFdmVuV2hlbldhaXRpbmdGb3JTeW5jUmVwbHkpOwogfQogCiB2b2lkIFJlbW90ZVJl
bmRlcmluZ0JhY2tlbmRQcm94eTo6cmVlc3RhYmxpc2hHUFVQcm9jZXNzQ29ubmVjdGlvbigpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJl
bmRlcmluZ0JhY2tlbmRQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFw
aGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuaAppbmRleCA2N2JlNGFiNjdlNGM5OWZk
YTkyOGZjZWQ3MDM5Y2M0MDg1NjIyNTdiLi41YzkwYWY2MjRlYTQzMjcwNWQ4ZGU2YWU1ZmIyMTU0
NjYwZTFhMTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBo
aWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmgKQEAgLTk4
LDYgKzk4LDcgQEAgcHVibGljOgogICAgIERpZFJlY2VpdmVCYWNrZW5kQ3JlYXRpb25SZXN1bHQg
d2FpdEZvckRpZENyZWF0ZUltYWdlQnVmZmVyQmFja2VuZCgpOwogICAgIGJvb2wgd2FpdEZvckRp
ZEZsdXNoKCk7CiAKKyAgICBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNr
ZW5kSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZp
ZXI7IH0KIHByaXZhdGU6CiAgICAgUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5KCk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5jcHAKaW5kZXggYzA5YTI3YjdlN2Y1M2ZiNDQyNDQ0NzFhNmQ2Yjc0ZmNl
MDVkNDNhMC4uMDVlMTc3YTUwOWIyYmE3MjFjYTg2OTgwYTA1NThlZmMzNDIyMjk5ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5jcHAKQEAgLTkyOCw3ICs5MjgsNyBAQCBSZWZQdHI8R3JhcGhpY3NDb250
ZXh0R0w+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgR3Jh
cGhpYwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBVTlVTRURfVkFSSUFCTEUoaG9zdFdp
bmRvd0Rpc3BsYXlJRCk7CiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgcmV0dXJuIFJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMUHJveHk6OmNyZWF0ZShhdHRyaWJ1dGVzKTsKKyAgICByZXR1cm4gUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6Y3JlYXRlKGF0dHJpYnV0ZXMsIG1fcGFnZS5lbnN1
cmVSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkoKS5yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmll
cigpKTsKICNlbHNlCiAgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Rv
b2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA1OGI4NWVhOTUyZDIyMmZmOTQz
OTBkYTI5OGQyYTQ2YmMxZDM4YTg0Li4zMzczY2UwNDNiNWY3ZjY5MWU4ZGVhMTVhYzc1NzM5OGEz
NGI4ZGUxIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMDItMTIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVu
QGFwcGxlLmNvbT4KKworICAgICAgICBXZWJHTCBjb250ZXh0cyBkbyBub3Qgd29yayBhcyBzb3Vy
Y2UgZm9yIENvbnRleHQyRCBkcmF3SW1hZ2UgY2FsbHMgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTgxMQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0d28gc2lnbmF0
dXJlcyBmb3IgbWFudWFsbHkgaW1wbGVtZW50ZWQgbWVzc2FnZXMuCisKKyAgICAgICAgKiBTY3Jp
cHRzL2dlbmVyYXRlLWdwdXAtd2ViZ2w6CisKIDIwMjEtMDItMTQgIFBlbmcgTGl1ICA8cGVuZy5s
aXU2QGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVUF0gTW92ZSBVc2VHUFVQcm9jZXNzRm9yTWVk
aWFFbmFibGVkIGZyb20gV2ViUHJlZmVyZW5jZXNJbnRlcm5hbCB0byBXZWJQcmVmZXJlbmNlc0V4
cGVyaW1lbnRhbApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmds
IGIvVG9vbHMvU2NyaXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmdsCmluZGV4IDU2ODVlOTA3NTM1M2Zk
MWQyY2VhOTQ2MjA2YjU3ZTQ4YjQyNjYzZmQuLjE0MjA5ZGNlMGFkMzgyOGI3N2IxYjE1NzE4ZmJm
NGUwNWEwZTI3MWEgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvZ2VuZXJhdGUtZ3B1cC13ZWJn
bAorKysgYi9Ub29scy9TY3JpcHRzL2dlbmVyYXRlLWdwdXAtd2ViZ2wKQEAgLTEwMSw2ICsxMDEs
OSBAQCBtZXNzYWdlcyAtPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBOb3RSZWZDb3VudGVkIHt7
CiAgICAgdm9pZCBOb3RpZnlNYXJrQ29udGV4dENoYW5nZWQoKQogICAgIHZvaWQgU3ludGhlc2l6
ZUdMRXJyb3IodWludDMyX3QgZXJyb3IpCiAgICAgdm9pZCBHZXRFcnJvcigpIC0+ICh1aW50MzJf
dCByZXR1cm5WYWx1ZSkgU3luY2hyb25vdXMKKyAgICB2b2lkIFBhaW50UmVuZGVyaW5nUmVzdWx0
c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciByZW5kZXJpbmdS
ZXNvdXJjZUlkZW50aWZpZXIsIFdlYkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UgcmVhZEZl
bmNlKQorICAgIHZvaWQgUGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJl
bmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIFdl
YkNvcmU6OkltYWdlQnVmZmVyOjpSZWFkRmVuY2UgcmVhZEZlbmNlKQorCiB7fQogfX0KIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IGYwMTI1ZmRiMzc4N2FlNDhlY2VhMzMzZmJiMTRiMTk5ZjhjMTJiMGEuLjc3OTYxNjRhMWM1
ODEzNjkyZDQ1NTRhMmEyNGRhY2RjZTlmZTUzNzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAy
MS0wMi0xMiAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorCisgICAgICAg
IFdlYkdMIGNvbnRleHRzIGRvIG5vdCB3b3JrIGFzIHNvdXJjZSBmb3IgQ29udGV4dDJEIGRyYXdJ
bWFnZSBjYWxscyBpbiBHUFUgcHJvY2VzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjIxODExCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgUmVtb3ZlIG5vdyBwYXNzaW5nIHRlc3RzIGZyb20gdGhlIGV4cGVj
dGF0aW9ucy4KKworICAgICAgICAqIGdwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIw
MjEtMDItMTUgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgW3NlbGVjdG9yc10gVXBkYXRlIFdQVCB0ZXN0IHN1aXRlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvZ3B1LXBy
b2Nlc3MvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBjM2Q0ZGUzZDkzYTgzNzAzYTg3NWY1MzQwZWQ1
ZjJmM2RkM2ZjNTc1Li5hZGIwZmY0MjhmOWNkOTFkOWJkNmI0NGRhMWUwYjVhMjVlZThlMWQ3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL2dwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIwLDEyICsyMCw4
IEBAIGZhc3QvY2FudmFzL2NhbnZhcy1sYXJnZS1kaW1lbnNpb25zLmh0bWwgWyBGYWlsdXJlIF0K
IGZhc3QvY2FudmFzL2NhbnZhcy1yZW5kZXItbGF5ZXIuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9j
YW52YXMvaGlkcGktcmVwYWludC1vbi1yZXRpbmEtbGVhdmVzLWJpdHMtYmVoaW5kLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KIGZhc3QvY2FudmFzL3dlYmdsL2NhbnZhcy0yZC13ZWJnbC10ZXh0
dXJlLmh0bWwgWyBGYWlsdXJlIF0KLWZhc3QvY2FudmFzL3dlYmdsL2NhbnZhcy10ZXN0Lmh0bWwg
WyBGYWlsdXJlIF0KIGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtY3JlYXRpb24tYXR0cmlidXRl
cy5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJnbC9jb250ZXh0LXVwZGF0ZS1vbi1k
aXNwbGF5LWNvbmZpZ3VyYXRpb24uaHRtbCBbIFRpbWVvdXQgXQotZmFzdC9jYW52YXMvd2ViZ2wv
Z2wtcGl4ZWxzdG9yZWkuaHRtbCBbIEZhaWx1cmUgXQotZmFzdC9jYW52YXMvd2ViZ2wvbG9zZS1j
b250ZXh0LW9uLXN0YXR1cy1mYWlsdXJlLmh0bWwgWyBGYWlsdXJlIF0KLWZhc3QvY2FudmFzL3dl
YmdsL3ByZW11bHRpcGx5YWxwaGEtdGVzdC5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93
ZWJnbC90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYjU2NS5odG1sIFsg
RmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJnbC90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13
aXRoLXZpZGVvLXJnYmE0NDQ0Lmh0bWwgWyBGYWlsdXJlIF0KIGZhc3QvY2FudmFzL3dlYmdsL3Rl
eC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdiYTU1NTEuaHRtbCBbIEZhaWx1
cmUgXQpAQCAtMjI5LDE5ICsyMjUsMTIgQEAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVyZmEKIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZGVz
dGluYXRpb25ub2RlLWludGVyZmFjZS9kZXN0aW5hdGlvbi5odG1sIFsgRmFpbHVyZSBdCiBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW1l
ZGlhZWxlbWVudGF1ZGlvc291cmNlbm9kZS1pbnRlcmZhY2Uvbm8tY29ycy5odHRwcy5odG1sIFsg
RmFpbHVyZSBdCiAKLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NhbnZhcy9jYW52YXMtdGVzdC5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jYW52YXMvZHJhdy1zdGF0
aWMtd2ViZ2wtdG8tbXVsdGlwbGUtY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
MS4wLjMvY29uZm9ybWFuY2UvY2FudmFzL2RyYXctd2ViZ2wtdG8tY2FudmFzLXRlc3QuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY2FudmFzL3RvLWRhdGEtdXJsLXRl
c3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY29udGV4dC9jb250
ZXh0LWF0dHJpYnV0ZS1wcmVzZXJ2ZS1kcmF3aW5nLWJ1ZmZlci5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jb250ZXh0L3ByZW11bHRpcGx5YWxwaGEtdGVzdC5odG1s
IFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRlbnNpb25zL29lcy10ZXh0
dXJlLWZsb2F0LXdpdGgtY2FudmFzLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZv
cm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUtZmxvYXQtd2l0aC12aWRlby5odG1sIFsgRmFp
bHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRlbnNpb25zL29lcy10ZXh0dXJlLWhh
bGYtZmxvYXQtd2l0aC1jYW52YXMuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9y
bWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1oYWxmLWZsb2F0LXdpdGgtdmlkZW8uaHRtbCBb
IEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvcmVuZGVyaW5nL21hbnktZHJhdy1j
YWxscy5odG1sIFsgVGltZW91dCBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9zdGF0ZS9nbC1v
YmplY3QtZ2V0LWNhbGxzLmh0bWwgWyBUaW1lb3V0IF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNl
L3RleHR1cmVzL2dsLXBpeGVsc3RvcmVpLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2Nv
bmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtY2FudmFz
LXJnYjU2NS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJl
cy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLWNhbnZhcy1yZ2JhNDQ0NC5odG1sIFsg
RmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5k
LXN1Yi1pbWFnZS0yZC13aXRoLWNhbnZhcy1yZ2JhNTU1MS5odG1sIFsgRmFpbHVyZSBdCkBAIC0y
NTAsMjIgKzIzOSwxMSBAQCB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1h
Z2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYjU2NS5odAogd2ViZ2wvMS4wLjMvY29u
Zm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC12aWRlby1y
Z2JhNDQ0NC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJl
cy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYmE1NTUxLmh0bWwgWyBG
YWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQt
c3ViLWltYWdlLTJkLXdpdGgtdmlkZW8uaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29u
Zm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC13ZWJnbC1j
YW52YXMtcmdiNTY1Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3Rl
eHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFzLXJnYmE0
NDQ0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3Rl
eC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFzLXJnYmE1NTUxLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1h
bmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFzLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmds
LzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS13ZWJnbC5odG1sIFsgRmFpbHVy
ZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXhwYXJhbWV0ZXItdGVzdC5o
dG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXh0dXJl
LWFjdGl2ZS1iaW5kLTIuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2Uv
dGV4dHVyZXMvdGV4dHVyZS1hY3RpdmUtYmluZC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAu
My9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXh0dXJlLWNvcHlpbmctZmVlZGJhY2stbG9vcHMuaHRt
bCBbIENyYXNoIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3VuaWZvcm1zL3VuaWZvcm0tc2Ft
cGxlcnMtdGVzdC5odG1sIFsgVGltZW91dCBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jYW52
YXMvY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uv
Y2FudmFzL2RyYXctc3RhdGljLXdlYmdsLXRvLW11bHRpcGxlLWNhbnZhcy10ZXN0Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NhbnZhcy9kcmF3LXdlYmdsLXRvLWNh
bnZhcy10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NhbnZh
cy90by1kYXRhLXVybC10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlL2NvbnRleHQvY29udGV4dC1hdHRyaWJ1dGUtcHJlc2VydmUtZHJhd2luZy1idWZmZXIuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvY29udGV4dC9wcmVtdWx0aXBs
eWFscGhhLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvZXh0
ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLWNhbnZhcy5odG1sIFsgRmFpbHVyZSBdCiB3
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9leHRlbnNpb25zL29lcy10ZXh0dXJlLWZsb2F0LXdpdGgt
dmlkZW8uaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvZXh0ZW5zaW9u
cy9vZXMtdGV4dHVyZS1oYWxmLWZsb2F0LXdpdGgtY2FudmFzLmh0bWwgWyBGYWlsdXJlIF0KQEAg
LTI4Myw3ICsyNjEsNiBAQCB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9pbWFnZV9i
aXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTJkLXJnYi1yZ2ItdQogd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0yZC1y
Z2JhLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTJkLXJn
YmEtcmdiYS11bnNpZ25lZF9zaG9ydF80XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90
ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvbWlzYy9nbC1waXhlbHN0b3JlaS5odG1s
IFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9taXNjL3RleC1p
bWFnZS13ZWJnbC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0
dXJlcy9taXNjL3RleHR1cmUtYWN0aXZlLWJpbmQtMi5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9taXNjL3RleHR1cmUtYWN0aXZlLWJpbmQuaHRtbCBb
IEZhaWx1cmUgXQpAQCAtMjkyLDExICsyNjksNiBAQCB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90
ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiLXJnYi11bnNpZ25lZF9zaG9ydF81XzZfNS5odG1sCiB3
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiYS1yZ2JhLXVu
c2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4
dHVyZXMvdmlkZW8vdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9zaG9ydF80XzRfNF80Lmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3ZpZGVvL3RleC0y
ZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYi1yZ2It
dW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90
ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYi1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvd2ViZ2xf
Y2FudmFzL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmEt
cmdiYS11bnNpZ25lZF9zaG9ydF80XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiYS1yZ2JhLXVuc2ln
bmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UvdW5pZm9ybXMvdW5pZm9ybS1zYW1wbGVycy10ZXN0Lmh0bWwgWyBUaW1lb3V0IF0KIHdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi9yZWFkaW5nL3JlYWQtcGl4ZWxzLXBhY2stcGFyYW1ldGVycy5o
dG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvc3RhdGUvZ2wtb2JqZWN0
LWdldC1jYWxscy5odG1sIFsgVGltZW91dCBdCkBAIC0zNjIsNzIgKzMzNCw2IEBAIHdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXMvdGV4LTNkLXJnYmE4LXJnYmEtdW5zaWdu
ZWRfYnl0ZS5odG1sIFsKIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXMv
dGV4LTNkLXJnYmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUg
XQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhcy90ZXgtM2Qtc3JnYjgt
cmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhcy90ZXgtM2Qtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi1mbG9hdC5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9y
ZWN0YW5nbGUvdGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rh
bmdsZS90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLXVuc2lnbmVkX2ludF8xMGZfMTFmXzExZl9y
ZXYuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2Nh
bnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yMTZmLXJlZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUv
dGV4LTJkLXIxNmYtcmVkLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yMzJmLXJl
ZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXI4LXJlZC11bnNpZ25lZF9ieXRlLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3Vi
X3JlY3RhbmdsZS90ZXgtMmQtcjh1aS1yZWRfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3Jl
Y3RhbmdsZS90ZXgtMmQtcmcxNmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZzE2
Zi1yZy1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmczMmYtcmctZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19z
dWJfcmVjdGFuZ2xlL3RleC0yZC1yZzgtcmctdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUv
dGV4LTJkLXJnOHVpLXJnX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4
LTJkLXJnYjE2Zi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2IxNmYtcmdiLWhh
bGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2IzMmYtcmdiLWZsb2F0Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3Jl
Y3RhbmdsZS90ZXgtMmQtcmdiNTY1LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90
ZXgtMmQtcmdiNTY1LXJnYi11bnNpZ25lZF9zaG9ydF81XzZfNS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4
LTJkLXJnYjVfYTEtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdi
NV9hMS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1y
Z2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiOHVpLXJnYl9p
bnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2I5X2U1LXJnYi1m
bG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
Y2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjlfZTUtcmdiLWhhbGZfZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1yZ2JhMTZmLXJnYmEtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0y
ZC1yZ2JhMTZmLXJnYmEtaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYmEzMmYt
cmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4
dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYmE0LXJnYmEtdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYmE0LXJnYmEtdW5zaWduZWRfc2hvcnRfNF80XzRf
NC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9y
ZWN0YW5nbGUvdGV4LTJkLXJnYmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1zcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUv
dGV4LTJkLXNyZ2I4X2FscGhhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yMTFm
X2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXIxMWZfZzEx
Zl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90
ZXgtM2QtcjE2Zi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yMTZmLXJlZC1oYWxm
X2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjMyZi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFu
Z2xlL3RleC0zZC1yOC1yZWQtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXI4
dWktcmVkX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnMTZm
LXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmcxNmYtcmctaGFsZl9mbG9hdC5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1
Yl9yZWN0YW5nbGUvdGV4LTNkLXJnMzJmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qt
cmc4LXJnLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZzh1aS1yZ19pbnRl
Z2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2IxNmYtcmdiLWZsb2F0
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52
YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiMTZmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rh
bmdsZS90ZXgtM2QtcmdiMzJmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjU2
NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjU2NS1yZ2ItdW5z
aWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1X2ExLXJnYmEtdW5z
aWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4
dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjVfYTEtcmdiYS11bnNpZ25lZF9z
aG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiOC1yZ2ItdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjh1aS1yZ2JfaW50ZWdlci11bnNpZ25lZF9ieXRl
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52
YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiOV9lNS1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0zZC1yZ2I5X2U1LXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmdi
YTE2Zi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTE2Zi1yZ2JhLWhhbGZf
ZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2JhMzJmLXJnYmEtZmxvYXQuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVj
dGFuZ2xlL3RleC0zZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0zZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0zZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2Jh
OHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtc3Jn
YjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1zcmdiOF9hbHBoYTgt
cmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTJkLXIxMWZf
ZzExZl9iMTBmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0yZC1yMTFm
X2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0y
ZC1yMTFmX2cxMWZfYjEwZi1yZ2ItdW5zaWduZWRfaW50XzEwZl8xMWZfMTFmX3Jldi5odG1sIFsg
RmFpbHVyZSBdCkBAIC00OTQsNyArNDAwLDYgQEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtM2QtcmdiYTgtcmcKIHdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9i
aXRtYXAvdGV4LTNkLXJnYmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9m
cm9tX2ltYWdlX2JpdG1hcC90ZXgtM2Qtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9m
cm9tX2ltYWdlX2JpdG1hcC90ZXgtM2Qtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRfYnl0ZS5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvbWlzYy9p
bnRlZ2VyLWN1YmVtYXAtdGV4dHVyZS1zYW1wbGluZy5odG1sIFsgQ3Jhc2ggXQogd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2It
ZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L3ZpZGVvL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVy
ZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTJkLXIxMWZf
ZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwgWyBGYWlsdXJl
IF0KQEAgLTU2MSw2OCArNDY2LDYgQEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L3ZpZGVvL3RleC0zZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEYKIHdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy92aWRlby90ZXgtM2QtcmdiYTh1aS1yZ2JhX2ludGVn
ZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTNkLXNyZ2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBG
YWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy92aWRlby90ZXgtM2Qt
c3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yMTFmX2cxMWZf
YjEwZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLWhhbGZfZmxv
YXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLXVuc2lnbmVkX2ludF8xMGZfMTFm
XzExZl9yZXYuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjE2Zi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjE2
Zi1yZWQtaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yMzJmLXJlZC1mbG9hdC5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0yZC1yOC1yZWQtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yOHVpLXJlZF9pbnRlZ2Vy
LXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmcxNmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgt
MmQtcmcxNmYtcmctaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZzMyZi1yZy1mbG9hdC5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2Fu
dmFzL3RleC0yZC1yZzgtcmctdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZzh1aS1yZ19p
bnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiMTZmLXJnYi1mbG9hdC5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2Fu
dmFzL3RleC0yZC1yZ2IxNmYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiMzJmLXJn
Yi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90
ZXgtMmQtcmdiNTY1LXJnYi11bnNpZ25lZF9zaG9ydF81XzZfNS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2I1
X2ExLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2I1X2ExLXJnYmEtdW5zaWdu
ZWRfc2hvcnRfNV81XzVfMS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9j
YW52YXMvdGV4LTJkLXJnYjh1aS1yZ2JfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTJkLXJnYmExNmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhMTZmLXJnYmEtaGFsZl9m
bG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
d2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhMzJmLXJnYmEtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdi
YTQtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmE0LXJnYmEtdW5zaWduZWRf
c2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtMmQtcmdiYTh1aS1yZ2JhX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0yZC1zcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1zcmdiOF9hbHBoYTgt
cmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXIxMWZfZzExZl9iMTBmLXJnYi1mbG9h
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItdW5zaWduZWRfaW50XzEwZl8xMWZfMTFmX3Jldi5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2Fu
dmFzL3RleC0zZC1yMTZmLXJlZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yMTZmLXJlZC1oYWxmX2Zs
b2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTNkLXIzMmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXI4LXJlZC11
bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXI4dWktcmVkX2ludGVnZXItdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0zZC1yZzE2Zi1yZy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZzE2Zi1yZy1o
YWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnMzJmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJn
OC1yZy11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnOHVpLXJnX2ludGVnZXItdW5zaWdu
ZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2IxNmYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJn
YjE2Zi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2IzMmYtcmdiLWZsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52
YXMvdGV4LTNkLXJnYjU2NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2I1NjUt
cmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjVfYTEtcmdiYS11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjVfYTEtcmdiYS11bnNpZ25lZF9zaG9ydF81XzVf
NV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qt
cmdiOHVpLXJnYl9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiYTE2Zi1y
Z2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmExNmYtcmdiYS1oYWxmX2Zsb2F0Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMv
dGV4LTNkLXJnYmEzMmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2JhNC1yZ2JhLXVuc2ln
bmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiYTQtcmdiYS11bnNpZ25lZF9zaG9ydF80XzRfNF80
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJn
bF9jYW52YXMvdGV4LTNkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1y
Z2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXNyZ2I4LXJn
Yi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXNyZ2I4X2FscGhhOC1yZ2JhLXVuc2lnbmVk
X2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvbWFueS1jb250ZXh0cy1hY2Nlc3MtYWZ0ZXIt
bG9zcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC9tYXgtYWN0aXZlLWNvbnRleHRzLWNvbnNvbGUt
d2FybmluZy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC9tYXgtYWN0aXZlLWNvbnRleHRzLWdjLmh0
bWwgWyBGYWlsdXJlIF0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420661</attachid>
            <date>2021-02-17 10:09:46 -0800</date>
            <delta_ts>2021-02-17 10:15:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221811-20210217200944.patch</filename>
            <type>text/plain</type>
            <size>71847</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjExYTJmM2RmMTMwN2Jj
Y2M2MzM4OTMyNTY3NmQxNzQ5YTgyYWY1MS4uNzk4ZDZjZTc1NTRhN2RiNGZkZTRhMjkxNWZmY2Q3
ZmQ3NjdmYzY2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIxLTAyLTEyICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgY29udGV4
dHMgZG8gbm90IHdvcmsgYXMgc291cmNlIGZvciBDb250ZXh0MkQgZHJhd0ltYWdlIGNhbGxzIGlu
IEdQVSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjE4MTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJbXBsZW1lbnRzIHJ1ZGltZW50YXJ5IHN1cHBvcnQgZm9yIHJlYWRpbmcgdGhlIFdlYkdM
IGNvbnRleHQgYW5kIHRyYW5zZmVyaW5nCisgICAgICAgIGl0IHRvIGEgSW1hZ2VCdWZmZXIuCisK
KyAgICAgICAgRml4ZXMgbWFueSB0ZXN0cyB0aGF0IGFyZSByZW1vdmVkIGZyb20gZ3B1LXByb2Nl
c3MvVGVzdEV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIGh0bWwvT2Zmc2NyZWVuQ2FudmFzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6dHJhbnNmZXJUb0ltYWdlQml0
bWFwKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnBhaW50UmVu
ZGVyaW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHRHTC5oOgorICAgICAgICBNYWtlIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2Fu
dmFzIGFuZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMKKyAgICAgICAgdGFrZSBJbWFn
ZUJ1ZmZlciYgaW5zdGVhZCBvZiBJbWFnZUJ1ZmZlciosIHNpbmNlIHRoZSBidWZmZXIgYWx3YXlz
CisgICAgICAgIGV4aXN0cy4KKworICAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9H
cmFwaGljc0NvbnRleHRHTENhaXJvLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgQ2hhbmdlIHRoZSBmdW5j
dGlvbiBzaWduYXR1cmUgc28gdGhhdCBpdCBjYW4gYmUgY2FsbGVkIGZyb20KKyAgICAgICAgb3Ro
ZXIgdGhyZWFkIGFuZCB3aXRob3V0IEdyYXBoaWNzQ29udGV4dEdMIGluc3RhbmNlLgorICAgICAg
ICBJdCBpcyBub3QgcmVhbGx5IGEgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wgcmVsYXRlZCBmdW5j
dGlvbi4uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6ZGlzcGxheUJ1ZmZlciBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1
ZmZlcik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBD
aGFpbjo6ZGV0YWNoQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdM
SU9TdXJmYWNlU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW06CisgICAgICAgIChXZWJHTExh
eWVyU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgTW92ZSB0aGUgdHJpcGxlIGJ1ZmZlcmlu
ZyBpbXBsZW1lbnRhdGlvbiB0byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgVGhlIGltcGxlbWVu
dGF0aW9uIGlzIG5vdyBhbHNvIHVzZWQgaW4gR1BVIHByb2Nlc3Mgc2lkZSwKKyAgICAgICAgc2lu
Y2UgdGhlIEdQVSBwcm9jZXNzIG5lZWRzIHRvIGJlIGFibGUgdG8gcmVhZCB0aGUgY29tcG9zaXRl
ZAorICAgICAgICByZXN1bHRzLgorCisgICAgICAgIFByZXZpb3VzbHkgdGhlIHNhbWUgbG9naWMg
d2FzIHNwbGl0IGJldHdlZW4gV2ViIHByb2Nlc3MgYW5kIEdQVSBwcm9jZXNzLgorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VCdWZmZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6Oklt
YWdlQnVmZmVyOjptYWtlUmVhZEZlbmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlQnVmZmVy
Ojpjb21taXRSZWFkRmVuY2UpOgorCisgICAgICAgIEFkZCBydWRpbWVudGFyeSBmdW5jdGlvbnMg
dG8gZXh0cmFjdCB0aGUgZmx1c2ggaWRlbnRpZmllciBhcyBhCisgICAgICAgICJyZWFkIGZlbmNl
Ii4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRH
TE9wZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6
cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0xPcGVuR0w6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyk6CisgICAg
ICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRSZW5kZXJpbmdSZXN1
bHRzVG9JbWFnZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xPcGVu
R0w6OnJlYWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRDb21wb3NpdGVkUmVzdWx0c0ZvclBhaW50aW5n
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0wuaDoKKworICAgICAgICBFeHBvc2UgcHVibGljIGZ1bmN0aW9ucyB0byBnZXQgSW1hZ2VE
YXRhIG91dCBvZiBkcmF3aW5nIGJ1ZmZlciBhbmQKKyAgICAgICAgZGlzcGxheSBidWZmZXIuCisK
IDIwMjEtMDItMTcgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBJbXBy
b3ZlIHBlcmNlbnRhZ2UgaGVpZ2h0IGluIHNob3VsZENvbXB1dGVMb2dpY2FsV2lkdGhGcm9tQXNw
ZWN0UmF0aW8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKaW5kZXggMTlkNmU1ODRmNzdmMjhiOTczMmQ1YTM4ZjEyYjYwODc5NTJi
ZDVkOS4uM2NiMmQ3Zjc1ODI1YWY2MGQ1NDVmOGNmNGFhMjQxZGM3YjkyNzZjMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
QEAgLTEsMyArMSw3OSBAQAorMjAyMS0wMi0xMiAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5A
YXBwbGUuY29tPgorCisgICAgICAgIFdlYkdMIGNvbnRleHRzIGRvIG5vdCB3b3JrIGFzIHNvdXJj
ZSBmb3IgQ29udGV4dDJEIGRyYXdJbWFnZSBjYWxscyBpbiBHUFUgcHJvY2VzcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxODExCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50cyBydWRpbWVu
dGFyeSBzdXBwb3J0IGZvciByZWFkaW5nIHRoZSBXZWJHTCBjb250ZXh0IGFuZCB0cmFuc2Zlcmlu
ZworICAgICAgICBpdCB0byBhIEltYWdlQnVmZmVyLgorCisgICAgICAgIEZpeGVzIG1hbnkgdGVz
dHMgdGhhdCBhcmUgcmVtb3ZlZCBmcm9tIGdwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMuCisK
KyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjcmVhdGVHcmFwaGljc0Nv
bnRleHRHTCk6CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
Lmg6CisgICAgICAgIChXZWJLaXQ6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OlJlbW90ZVJl
bmRlcmluZ0JhY2tlbmRXcmFwcGVyOjpnZXQgY29uc3QpOgorICAgICAgICAqIEdQVVByb2Nlc3Mv
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBHUFVQcm9j
ZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlJl
bW90ZUdyYXBoaWNzQ29udGV4dEdMOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTCk6CisgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0wgY29uc3Qp
OgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xD
b2NvYS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpjcmVh
dGUpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpSZW1v
dGVHcmFwaGljc0NvbnRleHRHTENvY29hKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFw
aGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6UmVt
b3RlUmVuZGVyaW5nQmFja2VuZFByb3h5OjpyZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciBjb25z
dCk6CisKKyAgICAgICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wgdGFrZXMgYSByZWYgb2YgdGhl
IHJlc3BlY3RpdmUgUmVtb3RlUmVuZGVyaW5nQmFja2VuZC4KKyAgICAgICAgUmVtb3RlUmVuZGVy
aW5nQmFja2VuZCBpcyB0aGUgb25lIHRoYXQgY2FuIGhhbmRsZSBJbWFnZUJ1ZmZlcnMuCisKKyAg
ICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvQ2FudmFzKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6
OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWludEltYWdlRGF0YVRvSW1hZ2VCdWZmZXIpOgorICAgICAg
ICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaDoKKyAgICAg
ICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2Vz
LmluOgorCisgICAgICAgIEltcGxlbWVudCB0aGUgZnVuY3Rpb25zIGJ5OgorICAgICAgICAgMSkg
VGFrZSBhIHJlYWQgZmVuY2Ugb2YgdGhlIEltYWdlQnVmZmVyCisgICAgICAgICAyKSBQb3N0aW5n
IHRoZSB0YXNrIGZyb20gV2ViIHByb2Nlc3MgdG8gR1BVIHByb2Nlc3MgV2ViR0wgc2VxdWVuY2UK
KyAgICAgICAgIDMpIFJlYWRpbmcgdGhlIGJ1ZmZlciwgcG9zdCB0aGUgdGFzayB0byBSZW5kZXJp
bmdCYWNrZW5kIHNlcXVlbmNlCisgICAgICAgICA0KSBQYWludCB0aGUgcmVzdWx0cyB0byB0aGUg
SW1hZ2VCdWZmZXIgYW5kIHNpZ25hbCB0aGUgcmVhZCBmZW5jZQorCisgICAgICAgIChXZWJLaXQ6
OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OnByZXBhcmVGb3JEaXNwbGF5KToKKworICAg
ICAgICBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBub3cgcmV0YWlucyB0aGUgcmVmZXJlbmNlIHRv
IGRpc3BsYXkgYnVmZmVyLgorICAgICAgICBCZWZvcmUsIGp1c3Qgc2VudCB0aGUgZGlzcGxheSBi
dWZmZXIgdG8gV2ViIHByb2Nlc3MgYW5kIGZvcmdvdAorICAgICAgICBhYm91dCBpdC4KKworICAg
ICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6OmRpc3BhdGNoKToKKyAgICAg
ICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaDoKKworICAg
ICAgICBBZGQgZnVuY3Rpb24gdG8gZGlzcGF0Y2ggd29yayB0byByZW5kZXJpbmcgYmFja2VuZCBz
ZXF1ZW5jZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBo
aWNzQ29udGV4dEdMUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTFByb3h5OjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTFByb3h5OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KToKKyAgICAgICAgKFdl
YktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRz
VG9DYW52YXMpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
OjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
R1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuaDoKKworICAgICAgICBT
ZW5kIHRoZSBtZXNzYWdlcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1Jl
bW90ZUltYWdlQnVmZmVyUHJveHkuaDoKKworICAgICAgICBBZGQgcnVkaW1lbnRhcnkgZnVuY3Rp
b25zIHRvIGV4dHJhY3QgdGhlIGZsdXNoIGlkZW50aWZpZXIgYXMgYQorICAgICAgICAicmVhZCBm
ZW5jZSIuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJp
bmdCYWNrZW5kUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVSZW5kZXJpbmdCYWNr
ZW5kUHJveHk6OmNvbm5lY3RUb0dQVVByb2Nlc3MpOgorCisgICAgICAgIFVzZSBJUEM6OlNlbmRP
cHRpb246OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBseSB0bworICAg
ICAgICBzZW5kIENyZWF0ZVJlbmRlcmluZ0JhY2tlbmQuIEl0IG11c3QgYmUgZGlzcGF0Y2hlZCBp
biBvcmRlciBjb21wYXJlZCB0byBvdGhlcgorICAgICAgICBtZXNzYWdlcyBzdWNoIGFzIENyZWF0
ZVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMLgorCiAyMDIxLTAyLTE3ICBDYXJsb3MgR2FyY2lhIENh
bXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKHIyNzI2MzYp
IFtHVEtdIENyYXNoIGFuZCBmYWlsdXJlcyBpbiBBUEkgdGVzdCAvV2ViS2l0Mkd0ay9UZXN0UmVz
b3VyY2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5jcHAKaW5kZXggNmZhMDRk
YzM1NWY4NmNlZTMwYmU4ZGMzOTNlMzA1MmVlMzFjNjM3NS4uMThlOGVlYjVkOGEyNGExM2UxMDkz
NjQ3NmVlMDBmN2ZlOWIyZDcxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZz
Y3JlZW5DYW52YXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFz
LmNwcApAQCAtMjg0LDcgKzI4NCw3IEBAIEV4Y2VwdGlvbk9yPFJlZlB0cjxJbWFnZUJpdG1hcD4+
IE9mZnNjcmVlbkNhbnZhczo6dHJhbnNmZXJUb0ltYWdlQml0bWFwKCkKICAgICAgICAgICAgIHJl
dHVybiB7IFJlZlB0cjxJbWFnZUJpdG1hcD4geyBudWxscHRyIH0gfTsKIAogICAgICAgICBhdXRv
KiBnYzNkID0gd2ViR0xDb250ZXh0LT5ncmFwaGljc0NvbnRleHRHTCgpOwotICAgICAgICBnYzNk
LT5wYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhpbWFnZUJpdG1hcC0+YnVmZmVyKCkpOwor
ICAgICAgICBnYzNkLT5wYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcygqaW1hZ2VCaXRtYXAt
PmJ1ZmZlcigpKTsKIAogICAgICAgICAvLyBGSVhNRTogVGhlIHRyYW5zZmVyIGFsZ29yaXRobSBy
ZXF1aXJlcyB0aGF0IHRoZSBjYW52YXMgZWZmZWN0aXZlbHkKICAgICAgICAgLy8gY3JlYXRlcyBh
IG5ldyBiYWNraW5nIHN0b3JlLiBTaW5jZSB3ZSdyZSBub3QgZG9pbmcgdGhhdCB5ZXQsIHdlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRl
eHRCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29u
dGV4dEJhc2UuY3BwCmluZGV4IDM4MTU5YmZiNzE4OGRiNzkzNjg2YjYyYmM2Mjk3NzJjYjg2MTg5
M2MuLmRlYTdjMjY4MDg1NmViZmI0NjllZmE5YWRmYjVhYjI1ZWFhM2M4NGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJh
c2UuY3BwCkBAIC0xMjEwLDcgKzEyMTAsNyBAQCB2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dEJh
c2U6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKCkKICAgICAgICAgICAgIGF1dG8mIGJh
c2UgPSBjYW52YXNCYXNlKCk7CiAgICAgICAgICAgICBiYXNlLmNsZWFyQ29waWVkSW1hZ2UoKTsK
ICAgICAgICAgICAgIG1fbWFya2VkQ2FudmFzRGlydHkgPSBmYWxzZTsKLSAgICAgICAgICAgIG1f
Y29udGV4dC0+cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKGJhc2UuYnVmZmVyKCkpOwor
ICAgICAgICAgICAgbV9jb250ZXh0LT5wYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoKmJh
c2UuYnVmZmVyKCkpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC0xMjI1
LDcgKzEyMjUsNyBAQCB2b2lkIFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnBhaW50UmVuZGVy
aW5nUmVzdWx0c1RvQ2FudmFzKCkKIAogICAgIG1fbWFya2VkQ2FudmFzRGlydHkgPSBmYWxzZTsK
IAotICAgIG1fY29udGV4dC0+cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoYmFzZS5idWZm
ZXIoKSk7CisgICAgbV9jb250ZXh0LT5wYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcygqYmFz
ZS5idWZmZXIoKSk7CiB9CiAKIFJlZlB0cjxJbWFnZURhdGE+IFdlYkdMUmVuZGVyaW5nQ29udGV4
dEJhc2U6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvSW1hZ2VEYXRhKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTC5oCmluZGV4IDAw
MjYyNDVlNDc5NzI3ZGVmY2MwMTFlNmU4YTFmZGM1NGUzMzFjNmUuLmY3ZGM4YWVjMWIwYjM3ZmFi
YTUzNmNkNDdjYzAyNWY1OTdmMDM3OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0wuaApAQCAtMTI5MSw5ICsxMjkxLDkgQEAg
cHVibGljOgogICAgIC8vIEZJWE1FOiB0aGVzZSBzaG91bGQgYmUgcmVtb3ZlZCwgdGhleSdyZSBw
YXJ0IG9mIGRyYXdpbmcgYnVmZmVyIGFuZAogICAgIC8vIGRpc3BsYXkgYnVmZmVyIGFic3RyYWN0
aW9ucyB0aGF0IHRoZSBjYWxsZXIgc2hvdWxkIGhvbGQgc2VwYXJhdGUgdG8KICAgICAvLyB0aGUg
Y29udGV4dC4KLSAgICB2aXJ0dWFsIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMo
SW1hZ2VCdWZmZXIqKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0
c1RvQ2FudmFzKEltYWdlQnVmZmVyJikgPSAwOwogICAgIHZpcnR1YWwgUmVmUHRyPEltYWdlRGF0
YT4gcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9JbWFnZURhdGEoKSA9IDA7Ci0gICAgdmlydHVhbCB2
b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciopID0gMDsKKyAg
ICB2aXJ0dWFsIHZvaWQgcGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVy
JikgPSAwOwogCiAgICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIGJlIHJlbW92ZWQuIFRoZSBsYXll
ciBzaG91bGQgYmUgbWFya2VkIGNvbXBvc2l0ZWQgYnkKICAgICAvLyBwcmVwYXJpbmcgZm9yIGRp
c3BsYXksIHNvIHRoYXQgY2FudmFzIGltYWdlIGJ1ZmZlciBhbmQgdGhlIGxheWVyIGFncmVlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGlj
c0NvbnRleHRHTENhaXJvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nh
aXJvL0dyYXBoaWNzQ29udGV4dEdMQ2Fpcm8uY3BwCmluZGV4IDU2ZjZiMWE3MDFiMjAwYzk4Njhk
MjgyZjA3YzM3NmRhMTEwY2UyNWUuLjViOGQ4YjVmMWFlMmMxZmI2YjRlYjE4Yjg1ZjBhMjVjOGE1
NzQ3Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJv
L0dyYXBoaWNzQ29udGV4dEdMQ2Fpcm8uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dEdMQ2Fpcm8uY3BwCkBAIC0xMDYsNyArMTA2
LDcgQEAgYm9vbCBHcmFwaGljc0NvbnRleHRHTEltYWdlRXh0cmFjdG9yOjpleHRyYWN0SW1hZ2Uo
Ym9vbCBwcmVtdWx0aXBseUFscGhhLCBib29sIGkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9p
ZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRUb0NhbnZhcyhSZWY8SW1hZ2VEYXRhPiYm
IGltYWdlRGF0YSwgY29uc3QgSW50U2l6ZSYgY2FudmFzU2l6ZSwgR3JhcGhpY3NDb250ZXh0JiBj
b250ZXh0KQordm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRUb0NhbnZhcyhjb25z
dCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIHNvdXJjZUNvbnRleHRBdHRyaWJ1dGVzLCBS
ZWY8SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwgY29uc3QgSW50U2l6ZSYgY2FudmFzU2l6ZSwgR3Jh
cGhpY3NDb250ZXh0JiBjb250ZXh0KQogewogICAgIEFTU0VSVCghaW1hZ2VEYXRhLT5zaXplKCku
aXNFbXB0eSgpKTsKICAgICBpZiAoY2FudmFzU2l6ZS5pc0VtcHR5KCkpCkBAIC0xMjIsNyArMTIy
LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRUb0NhbnZhcyhSZWY8SW1h
Z2VEYXRhPiYmIGltYWdlRGF0YSwgY29uc3QgSW4KICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IHRvdGFsQnl0ZXM7IGkgKz0gNCkKICAgICAgICAgc3RkOjpzd2FwKHBpeGVsc1tpXSwgcGl4ZWxz
W2kgKyAyXSk7CiAKLSAgICBpZiAoIWNvbnRleHRBdHRyaWJ1dGVzKCkucHJlbXVsdGlwbGllZEFs
cGhhKSB7CisgICAgaWYgKCFzb3VyY2VDb250ZXh0QXR0cmlidXRlcy5wcmVtdWx0aXBsaWVkQWxw
aGEpIHsKICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCB0b3RhbEJ5dGVzOyBpICs9IDQp
IHsKICAgICAgICAgICAgIHBpeGVsc1tpICsgMF0gPSBzdGQ6Om1pbigyNTUsIHBpeGVsc1tpICsg
MF0gKiBwaXhlbHNbaSArIDNdIC8gMjU1KTsKICAgICAgICAgICAgIHBpeGVsc1tpICsgMV0gPSBz
dGQ6Om1pbigyNTUsIHBpeGVsc1tpICsgMV0gKiBwaXhlbHNbaSArIDNdIC8gMjU1KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4
dEdMQ0cuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3ND
b250ZXh0R0xDRy5jcHAKaW5kZXggNWRlZDNhMDg3ZGEzMmM4NTAzMGQ4ZGI4NTIyOTU3OWE0OTlk
MjgxMS4uMzlkMmMwMTc2OGI2ODdiZWE0N2M5NDQzZTZhMDRmYzQ1ZGRiMmMyYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0R0xD
Ry5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3ND
b250ZXh0R0xDRy5jcHAKQEAgLTUxMSwxOCArNTExLDE3IEBAIHN0YXRpYyB2b2lkIHJlbGVhc2VJ
bWFnZURhdGEodm9pZCogaW1hZ2VEYXRhLCBjb25zdCB2b2lkKiwgc2l6ZV90KQogICAgIHJlaW50
ZXJwcmV0X2Nhc3Q8SW1hZ2VEYXRhKj4oaW1hZ2VEYXRhKS0+ZGVyZWYoKTsKIH0KIAotdm9pZCBH
cmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRUb0NhbnZhcyhSZWY8SW1hZ2VEYXRhPiYmIGlt
YWdlRGF0YSwgY29uc3QgSW50U2l6ZSYgY2FudmFzU2l6ZSwgR3JhcGhpY3NDb250ZXh0JiBjb250
ZXh0KQordm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRUb0NhbnZhcyhjb25zdCBH
cmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIHNvdXJjZUNvbnRleHRBdHRyaWJ1dGVzLCBSZWY8
SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwgY29uc3QgSW50U2l6ZSYgY2FudmFzU2l6ZSwgR3JhcGhp
Y3NDb250ZXh0JiBjb250ZXh0KQogewogICAgIEFTU0VSVCghaW1hZ2VEYXRhLT5zaXplKCkuaXNF
bXB0eSgpKTsKICAgICBpZiAoY2FudmFzU2l6ZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsK
LSAgICBhdXRvIGF0dHJzID0gY29udGV4dEF0dHJpYnV0ZXMoKTsKICAgICAvLyBJbnB1dCBpcyBH
TF9SR0JBID09IGtDR0JpdG1hcEJ5dGVPcmRlcjMyQmlnIHwga0NHSW1hZ2VBbHBoYSpMYXN0Lgog
ICAgIC8vIEdMX0JHUkEgd291bGQgYmUga0NHQml0bWFwQnl0ZU9yZGVyMzJMaXR0bGUgfCBrQ0dJ
bWFnZUFscGhhKkZpcnN0LgogICAgIENHQml0bWFwSW5mbyBiaXRtYXBJbmZvID0ga0NHQml0bWFw
Qnl0ZU9yZGVyMzJCaWc7Ci0gICAgaWYgKCFhdHRycy5hbHBoYSkKKyAgICBpZiAoIXNvdXJjZUNv
bnRleHRBdHRyaWJ1dGVzLmFscGhhKQogICAgICAgICBiaXRtYXBJbmZvIHw9IGtDR0ltYWdlQWxw
aGFOb25lU2tpcExhc3Q7Ci0gICAgZWxzZSBpZiAoYXR0cnMucHJlbXVsdGlwbGllZEFscGhhKQor
ICAgIGVsc2UgaWYgKHNvdXJjZUNvbnRleHRBdHRyaWJ1dGVzLnByZW11bHRpcGxpZWRBbHBoYSkK
ICAgICAgICAgYml0bWFwSW5mbyB8PSBrQ0dJbWFnZUFscGhhUHJlbXVsdGlwbGllZExhc3Q7CiAg
ICAgZWxzZQogICAgICAgICBiaXRtYXBJbmZvIHw9IGtDR0ltYWdlQWxwaGFMYXN0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250
ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uY3BwCmluZGV4
IDkzY2U0NzMyMTYyOGYxZjYwNzI0MjFhNzZiYzYwY2UxYmM1M2RhYjMuLjljNDAyNzIxZGI1ZmQ2
NDc4NmEyZTZhMmJhNGZlNDIwNGY2NTBiZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWlu
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHAKQEAgLTMyLDYgKzMyLDMyIEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46On5H
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbigpID0gZGVmYXVsdDsKIAorY29uc3Qg
R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZlciYgR3JhcGhpY3NDb250
ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OmRpc3BsYXlCdWZmZXIoKSBjb25zdAoreworICAgIHJl
dHVybiBtX2Rpc3BsYXlCdWZmZXI7Cit9CisKK0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dh
cENoYWluOjpCdWZmZXIgR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OnJlY3lj
bGVCdWZmZXIoKQoreworICAgIGlmIChtX3NwYXJlQnVmZmVyLnN1cmZhY2UpIHsKKyAgICAgICAg
aWYgKG1fc3BhcmVCdWZmZXIuc3VyZmFjZS0+aXNJblVzZSgpKQorICAgICAgICAgICAgbV9zcGFy
ZUJ1ZmZlci5zdXJmYWNlLnJlc2V0KCk7CisgICAgICAgIHJldHVybiBXVEZNb3ZlKG1fc3BhcmVC
dWZmZXIpOworICAgIH0KKyAgICByZXR1cm4geyB9OworfQorCit2b2lkKiBHcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6ZGV0YWNoQ2xpZW50KCkKK3sKKyAgICBBU1NFUlQoIW1f
c3BhcmVCdWZmZXIuc3VyZmFjZSk7CisgICAgcmV0dXJuIHN0ZDo6ZXhjaGFuZ2UobV9kaXNwbGF5
QnVmZmVyLmhhbmRsZSwgbnVsbHB0cik7Cit9CisKK3ZvaWQgR3JhcGhpY3NDb250ZXh0R0xJT1N1
cmZhY2VTd2FwQ2hhaW46OnByZXNlbnQoQnVmZmVyJiYgYnVmZmVyKQoreworICAgIG1fc3BhcmVC
dWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG1fZGlzcGxheUJ1ZmZlciwgV1RGTW92ZShidWZmZXIpKTsK
K30KKwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3Vy
ZmFjZVN3YXBDaGFpbi5oCmluZGV4IDRkZWQ4ZTVmOTQ5ODI2NzE3NDZjOWU3ZjUzM2FhYzZiMThh
YzZiMGEuLmU0MzdkN2RmMGVlODQxMzllYWZlM2UyZmQ3MjcxOThiOGY2MWEwNjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4
dEdMSU9TdXJmYWNlU3dhcENoYWluLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaApAQCAtNTgs
MTkgKzU4LDIzIEBAIHB1YmxpYzoKICAgICAvLyAtIEJ1ZmZlciB3aXRoIGVtcHR5IHN1cmZhY2Ug
YW5kIG5vbi1lbXB0eSBtZXRhZGF0YSBoYW5kbGUgaWYgdGhlIHJlY3ljbGVkIGJ1ZmZlciB3YXMg
YXZhaWxhYmxlCiAgICAgLy8gICBidXQgdGhlIHN1cmZhY2UgaXMgc3RpbGwgaW4gdXNlLgogICAg
IC8vIC0gU3VyZmFjZSBhbmQgaGFuZGxlLgotICAgIHZpcnR1YWwgQnVmZmVyIHJlY3ljbGVCdWZm
ZXIoKSA9IDA7CisgICAgdmlydHVhbCBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpOwogCiAgICAgLy8g
UHJlcGFyZXMgdGhlIHRhcmdldCBmb3IgZGlzcGxheSB3aXRoIGEgY29udGVudHMgYnVmZmVyLgot
ICAgIHZpcnR1YWwgdm9pZCBwcmVzZW50KEJ1ZmZlcikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBw
cmVzZW50KEJ1ZmZlciYmKTsKIAogICAgIC8vIFJldHVybnMgdGhlIG1vc3QgcmVjZW50IHByZXNl
bnRlZCBkaXNwbGF5IGJ1ZmZlci4gVGhlIHJlZmVyZW5jZSBpcyB2YWxpZCB1bnRpbAogICAgIC8v
IG5leHQgcHJlc2VudCwgcmVjeWNsZUJ1ZmZlciBvciBkZXRhY2hDbGllbnQgY2FsbC4KLSAgICB2
aXJ0dWFsIGNvbnN0IEJ1ZmZlciYgZGlzcGxheUJ1ZmZlcigpIGNvbnN0ID0gMDsKKyAgICB2aXJ0
dWFsIGNvbnN0IEJ1ZmZlciYgZGlzcGxheUJ1ZmZlcigpIGNvbnN0OwogCiAgICAgLy8gRGV0YWNo
ZXMgdGhlIGNsaWVudCBhbmQgcmV0dXJucyB0aGUgY3VycmVudCBjb250ZW50cyBidWZmZXIgbWV0
YWRhdGEgaGFuZGxlLgogICAgIC8vIFRoZSBpZiBtdWx0aXBsZSBidWZmZXJzIGhhdmUgYmVlbiBz
dWJtaXR0ZWQsIHJlY3ljbGVCdWZmZXIgbXVzdCBoYXZlIGJlZW4gY2FsbGVkIGJlZm9yZSBjYWxs
aW5nCiAgICAgLy8gdGhpcy4KLSAgICB2aXJ0dWFsIHZvaWQqIGRldGFjaENsaWVudCgpID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQqIGRldGFjaENsaWVudCgpOworCitwcm90ZWN0ZWQ6CisgICAgQnVm
ZmVyIG1fZGlzcGxheUJ1ZmZlcjsKKyAgICBCdWZmZXIgbV9zcGFyZUJ1ZmZlcjsKIH07CiAKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdM
TGF5ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExh
eWVyLm1tCmluZGV4IDAzMTM4ZWYxNDMwOTg4ZDcxNWE5OGI3Nzc3ZDNhNTM4OGEzMjk5YWEuLjM3
MWI5YTkxM2FjZmZmNzkxNzI2MWIzZDA4YjQ5ZDhmZjE0ODQ0N2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQpAQCAtMzgs
MzEgKzM4LDEwIEBAIGNsYXNzIFdlYkdMTGF5ZXJTd2FwQ2hhaW4gZmluYWwgOiBwdWJsaWMgV2Vi
Q29yZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwCiBwdWJsaWM6CiAgICAgZXhwbGlj
aXQgV2ViR0xMYXllclN3YXBDaGFpbihXZWJHTExheWVyKiBsYXllcikgIDogbV9sYXllcihsYXll
cikgeyB9OwogICAgIH5XZWJHTExheWVyU3dhcENoYWluKCkgb3ZlcnJpZGUgPSBkZWZhdWx0Owot
ICAgIHZvaWQgcHJlc2VudChCdWZmZXIpIG92ZXJyaWRlOwotICAgIGNvbnN0IEJ1ZmZlciYgZGlz
cGxheUJ1ZmZlcigpIGNvbnN0IG92ZXJyaWRlCi0gICAgewotICAgICAgICByZXR1cm4gbV9kaXNw
bGF5QnVmZmVyOwotICAgIH0KLSAgICBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpIG92ZXJyaWRlCi0g
ICAgewotICAgICAgICBpZiAobV9zcGFyZUJ1ZmZlci5zdXJmYWNlKSB7Ci0gICAgICAgICAgICBp
ZiAobV9zcGFyZUJ1ZmZlci5zdXJmYWNlLT5pc0luVXNlKCkpCi0gICAgICAgICAgICAgICAgbV9z
cGFyZUJ1ZmZlci5zdXJmYWNlLnJlc2V0KCk7Ci0gICAgICAgICAgICByZXR1cm4gV1RGTW92ZSht
X3NwYXJlQnVmZmVyKTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4geyB9OwotICAgIH0KLSAg
ICB2b2lkKiBkZXRhY2hDbGllbnQoKSBvdmVycmlkZQotICAgIHsKLSAgICAgICAgQVNTRVJUKCFt
X3NwYXJlQnVmZmVyLnN1cmZhY2UpOwotICAgICAgICB2b2lkKiByZXN1bHQgPSBtX2Rpc3BsYXlC
dWZmZXIuaGFuZGxlOwotICAgICAgICBtX2Rpc3BsYXlCdWZmZXIuaGFuZGxlID0gbnVsbHB0cjsK
LSAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICB9CisgICAgdm9pZCBwcmVzZW50KEJ1ZmZlciYm
KSBvdmVycmlkZTsKKwogICAgIFdlYkNvcmU6OklPU3VyZmFjZSogZGlzcGxheVN1cmZhY2UoKSB7
IHJldHVybiBtX2Rpc3BsYXlCdWZmZXIuc3VyZmFjZS5nZXQoKTsgfQogcHJpdmF0ZToKLSAgICBC
dWZmZXIgbV9kaXNwbGF5QnVmZmVyOwotICAgIEJ1ZmZlciBtX3NwYXJlQnVmZmVyOwogICAgIFdl
YkdMTGF5ZXIqIGNvbnN0IG1fbGF5ZXI7CiB9OwogCkBAIC0xMzAsMTEgKzEwOSwxMCBAQCBwcml2
YXRlOgogCiBAZW5kCiAKLXZvaWQgV2ViR0xMYXllclN3YXBDaGFpbjo6cHJlc2VudChCdWZmZXIg
YnVmZmVyKQordm9pZCBXZWJHTExheWVyU3dhcENoYWluOjpwcmVzZW50KEJ1ZmZlciYmIGJ1ZmZl
cikKIHsKICAgICBBU1NFUlQoIW1fc3BhcmVCdWZmZXIuc3VyZmFjZSk7Ci0gICAgbV9zcGFyZUJ1
ZmZlciA9IFdURk1vdmUobV9kaXNwbGF5QnVmZmVyKTsKLSAgICBtX2Rpc3BsYXlCdWZmZXIgPSBX
VEZNb3ZlKGJ1ZmZlcik7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VT
d2FwQ2hhaW46OnByZXNlbnQoV1RGTW92ZShidWZmZXIpKTsKICAgICBbbV9sYXllciBwcmVwYXJl
Rm9yRGlzcGxheV07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuY3BwCmlu
ZGV4IDg4NjcwMTUyMjg0NjMwYzc0YmQ3YjQzN2U1YWM4NzA2ODM2M2IxMWEuLjhkZWQ2ZTUxMGFi
YzczZDY3ZDliZDJmNWVmMzQ3M2FkNWIxZGU0MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4
dEdMT3BlbkdMLmNwcApAQCAtMTk2LDcgKzE5Niw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0w6OnByZXBhcmVGb3JEaXNwbGF5KCkKIH0KICNlbmRpZgogCi12b2lkIEdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciog
aW1hZ2VCdWZmZXIpCit2b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmlu
Z1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYgaW1hZ2VCdWZmZXIpCiB7CiAgICAgaWYgKCFt
YWtlQ29udGV4dEN1cnJlbnQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjA1LDEwICsyMDUsMTAg
QEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9D
YW52YXMoSW1hZ2VCdWZmZXIqIGltYWdlQnUKICAgICBhdXRvIGltYWdlRGF0YSA9IHJlYWRSZW5k
ZXJpbmdSZXN1bHRzKCk7CiAgICAgaWYgKCFpbWFnZURhdGEpCiAgICAgICAgIHJldHVybjsKLSAg
ICBwYWludFRvQ2FudmFzKGltYWdlRGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci0+
YmFja2VuZFNpemUoKSwgaW1hZ2VCdWZmZXItPmNvbnRleHQoKSk7CisgICAgcGFpbnRUb0NhbnZh
cyhjb250ZXh0QXR0cmlidXRlcygpLCBpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1hZ2VC
dWZmZXIuYmFja2VuZFNpemUoKSwgaW1hZ2VCdWZmZXIuY29udGV4dCgpKTsKIH0KIAotdm9pZCBH
cmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKElt
YWdlQnVmZmVyKiBpbWFnZUJ1ZmZlcikKK3ZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBh
aW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYgaW1hZ2VCdWZmZXIpCiB7
CiAgICAgaWYgKCFtYWtlQ29udGV4dEN1cnJlbnQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjE3
LDIyICsyMTcsMzYgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3Np
dGVkUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKiBpbWFnZUIKICAgICBhdXRvIGltYWdlRGF0
YSA9IHJlYWRDb21wb3NpdGVkUmVzdWx0cygpOwogICAgIGlmICghaW1hZ2VEYXRhKQogICAgICAg
ICByZXR1cm47Ci0gICAgcGFpbnRUb0NhbnZhcyhpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwg
aW1hZ2VCdWZmZXItPmJhY2tlbmRTaXplKCksIGltYWdlQnVmZmVyLT5jb250ZXh0KCkpOworICAg
IHBhaW50VG9DYW52YXMoY29udGV4dEF0dHJpYnV0ZXMoKSwgaW1hZ2VEYXRhLnJlbGVhc2VOb25O
dWxsKCksIGltYWdlQnVmZmVyLmJhY2tlbmRTaXplKCksIGltYWdlQnVmZmVyLmNvbnRleHQoKSk7
CiB9CiAKIFJlZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJl
bmRlcmluZ1Jlc3VsdHNUb0ltYWdlRGF0YSgpCiB7Ci0gICAgaWYgKCFtYWtlQ29udGV4dEN1cnJl
bnQoKSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgaWYgKGdldEludGVybmFsRnJhbWVi
dWZmZXJTaXplKCkuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAvLyBS
ZWFkaW5nIHByZW11bHRpcGxpZWQgYWxwaGEgd291bGQgaW52b2x2ZSB1bnByZW11bHRpcGx5aW5n
LCB3aGljaCBpcwogICAgIC8vIGxvc3N5LgogICAgIGlmIChjb250ZXh0QXR0cmlidXRlcygpLnBy
ZW11bHRpcGxpZWRBbHBoYSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIHJl
YWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKTsKK30KKworUmVmUHRyPEltYWdlRGF0YT4g
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmco
KQoreworICAgIGlmICghbWFrZUNvbnRleHRDdXJyZW50KCkpCisgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgIGlmIChnZXRJbnRlcm5hbEZyYW1lYnVmZmVyU2l6ZSgpLmlzRW1wdHkoKSkKKyAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgcmV0dXJuIHJlYWRSZW5kZXJpbmdSZXN1bHRzKCk7
CiB9CiAKK1JlZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpyZWFkQ29t
cG9zaXRlZFJlc3VsdHNGb3JQYWludGluZygpCit7CisgICAgaWYgKCFtYWtlQ29udGV4dEN1cnJl
bnQoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWYgKGdldEludGVybmFsRnJhbWVi
dWZmZXJTaXplKCkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1
cm4gcmVhZENvbXBvc2l0ZWRSZXN1bHRzKCk7Cit9CisKICNpZiAhUExBVEZPUk0oQ09DT0EpCiBS
ZWZQdHI8SW1hZ2VEYXRhPiBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cmVhZENvbXBvc2l0ZWRS
ZXN1bHRzKCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgKaW5kZXggNTg2ODUw
ODQ5OGU1ZTY0ZDg4MWQ5NjE0ZTY3NzgwOWI4MmRjZTAwYS4uZTQ0YmZkNWQ5ZjhhZDlkN2M1Mjc2
MDFhMjUyYTc3MGVkNGY5Nzk1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmgK
QEAgLTQ1OCw5ICs0NTgsMTIgQEAgcHVibGljOgogICAgIHZvaWQgZGlzcGF0Y2hDb250ZXh0Q2hh
bmdlZE5vdGlmaWNhdGlvbigpOwogICAgIHZvaWQgc2ltdWxhdGVDb250ZXh0Q2hhbmdlZCgpIGZp
bmFsOwogCi0gICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZl
ciopIGZpbmFsOworICAgIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoSW1hZ2VC
dWZmZXImKSBmaW5hbDsKICAgICBSZWZQdHI8SW1hZ2VEYXRhPiBwYWludFJlbmRlcmluZ1Jlc3Vs
dHNUb0ltYWdlRGF0YSgpIGZpbmFsOwotICAgIHZvaWQgcGFpbnRDb21wb3NpdGVkUmVzdWx0c1Rv
Q2FudmFzKEltYWdlQnVmZmVyKikgZmluYWw7CisgICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1
bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXImKSBmaW5hbDsKKworICAgIFJlZlB0cjxJbWFnZURhdGE+
IHJlYWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKTsKKyAgICBSZWZQdHI8SW1hZ2VEYXRh
PiByZWFkQ29tcG9zaXRlZFJlc3VsdHNGb3JQYWludGluZygpOwogCiAjaWYgVVNFKE9QRU5HTCkg
JiYgRU5BQkxFKFdFQkdMMikKICAgICB2b2lkIHByaW1pdGl2ZVJlc3RhcnRJbmRleChHQ0dMdWlu
dCk7CkBAIC01MTUsNiArNTE4LDggQEAgcHVibGljOgogICAgIHN0YXRpYyBib29sIHBvc3NpYmxl
Rm9ybWF0QW5kVHlwZUZvckludGVybmFsRm9ybWF0KEdDR0xlbnVtIGludGVybmFsRm9ybWF0LCBH
Q0dMZW51bSYgZm9ybWF0LCBHQ0dMZW51bSYgdHlwZSk7CiAjZW5kaWYgLy8gIVVTRShBTkdMRSkK
IAorICAgIHN0YXRpYyB2b2lkIHBhaW50VG9DYW52YXMoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xB
dHRyaWJ1dGVzJiwgUmVmPEltYWdlRGF0YT4mJiwgY29uc3QgSW50U2l6ZSYgY2FudmFzU2l6ZSwg
R3JhcGhpY3NDb250ZXh0Jik7CisKIHByaXZhdGU6CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAg
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0woR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBIb3N0
V2luZG93KiwgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wqIHNoYXJlZENvbnRleHQgPSBudWxscHRy
LCBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiogPSBudWxscHRyKTsKQEAgLTU0
Miw3ICs1NDcsNiBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxJbWFnZURhdGE+IHJlYWRSZW5kZXJp
bmdSZXN1bHRzKCk7CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZENvbXBvc2l0ZWRSZXN1bHRz
KCk7CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZFBpeGVsc0ZvclBhaW50UmVzdWx0cygpOwot
ICAgIHZvaWQgcGFpbnRUb0NhbnZhcyhSZWY8SW1hZ2VEYXRhPiYmLCBjb25zdCBJbnRTaXplJiBj
YW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmKTsKIAogICAgIGJvb2wgcmVzaGFwZUZCT3MoY29u
c3QgSW50U2l6ZSYpOwogICAgIHZvaWQgcHJlcGFyZVRleHR1cmVJbXBsKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAK
aW5kZXggZDU3N2U0MzQ5OWYxODE0NzkxYzhhMGVmNzFjYjM0YTAyNGExZmFlMi4uZTE2N2VjMDI2
NDQyMDU2OTg3YmU5OGU1NDc5NmM2MzE2NTU5NjE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcApAQCAtMzM3LDEw
ICszMzcsMTQgQEAgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVtb3RlUmVuZGVyaW5nQmFj
a2VuZFdyYXBwZXI6On5SZW1vdGVSZW5kZXJpbmdCYWNrZW4KIH0KIAogI2lmIEVOQUJMRShXRUJH
TCkKLXZvaWQgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0
R0woV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIEdyYXBo
aWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpCit2b2lk
IEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyBhdHRyaWJ1dGVzLCBHcmFwaGljc0NvbnRl
eHRHTElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZW5kZXJpbmdCYWNr
ZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikKIHsKKyAgICBhdXRvKiBy
ZW5kZXJpbmdCYWNrZW5kID0gbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kTWFwLmdldChyZW5kZXJp
bmdCYWNrZW5kSWRlbnRpZmllcik7CisgICAgaWYgKCFyZW5kZXJpbmdCYWNrZW5kKQorICAgICAg
ICByZXR1cm47CisKICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fcmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xNYXAuZW5zdXJlKGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgWyZdKCkgewotICAgICAg
ICByZXR1cm4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShhdHRyaWJ1dGVzLCAqdGhp
cywgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKTsKKyAgICAgICAgcmV0dXJuIFJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMOjpjcmVhdGUoYXR0cmlidXRlcywgKnRoaXMsIGdyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllciwgcmVuZGVyaW5nQmFja2VuZC0+Z2V0KCkpOwogICAgIH0pOwogICAgIEFT
U0VSVF9VTlVTRUQoYWRkUmVzdWx0LCBhZGRSZXN1bHQuaXNOZXdFbnRyeSk7CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5o
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaApp
bmRleCBlYmIwZDAwOGYzZDcxMjkyMTdiOGU5NmVmYTE5YmQ1MWZmYWZhMTY3Li41ZTgyMDMzNTdm
NzgxZmRjMDUzZTE1ZGNjOGZjOGUxNTk2MDQ0ZTQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKQEAgLTEzOCw3ICsxMzgs
NyBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVsZWFzZVJlbmRlcmluZ0JhY2tlbmQoUmVuZGVyaW5n
QmFja2VuZElkZW50aWZpZXIpOwogCiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIHZvaWQgY3JlYXRl
R3JhcGhpY3NDb250ZXh0R0woV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBH
cmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpOworICAgIHZvaWQgY3JlYXRlR3JhcGhpY3NDb250
ZXh0R0woV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLCBHcmFwaGljc0NvbnRl
eHRHTElkZW50aWZpZXIsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKTsKICAgICB2b2lkIHJl
bGVhc2VHcmFwaGljc0NvbnRleHRHTChHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpOwogI2Vu
ZGlmCiAKQEAgLTIxMSw3ICsyMTEsNyBAQCBwcml2YXRlOgogICAgIHB1YmxpYzoKICAgICAgICAg
UmVtb3RlUmVuZGVyaW5nQmFja2VuZFdyYXBwZXIoUmVmPFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ+
JiYpOwogICAgICAgICB+UmVtb3RlUmVuZGVyaW5nQmFja2VuZFdyYXBwZXIoKTsKLQorICAgICAg
ICBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kJiBnZXQoKSBjb25zdCB7IHJldHVybiBtX3JlbW90ZVJl
bmRlcmluZ0JhY2tlbmQuZ2V0KCk7IH0KICAgICBwcml2YXRlOgogICAgICAgICBSZWY8UmVtb3Rl
UmVuZGVyaW5nQmFja2VuZD4gbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kOwogICAgIH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IDMwZjVjMjk4ODYyMTRmOTEwNGYxYWZhMDgzNWIy
MzhhMzZkYzZlZjEuLjJiNjhlM2IwODdhOTM1ZDE5ZWIxZDc5N2JiZTgzYWQ5ZDM4MDQ4MDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0yNiw3ICsyNiw3IEBAIG1lc3NhZ2VzIC0+
IEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgV2FudHNEaXNwYXRjaE1lc3NhZ2UgewogICAgIHZv
aWQgQ3JlYXRlUmVuZGVyaW5nQmFja2VuZChXZWJLaXQ6OlJlbmRlcmluZ0JhY2tlbmRJZGVudGlm
aWVyIGlkZW50aWZpZXIsIElQQzo6U2VtYXBob3JlIHJlc3VtZURpc3BsYXlMaXN0U2VtYXBob3Jl
KQogICAgIHZvaWQgUmVsZWFzZVJlbmRlcmluZ0JhY2tlbmQoV2ViS2l0OjpSZW5kZXJpbmdCYWNr
ZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikKICNpZiBFTkFCTEUoV0VC
R0wpCi0gICAgdm9pZCBDcmVhdGVHcmFwaGljc0NvbnRleHRHTChzdHJ1Y3QgV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIFdlYktpdDo6R3JhcGhpY3NDb250
ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcikKKyAgICB2b2lkIENy
ZWF0ZUdyYXBoaWNzQ29udGV4dEdMKHN0cnVjdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0
dHJpYnV0ZXMgYXR0cmlidXRlcywgV2ViS2l0OjpHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIg
Z3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBXZWJLaXQ6OlJlbmRlcmluZ0JhY2tlbmRJZGVu
dGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogICAgIHZvaWQgUmVsZWFzZUdyYXBo
aWNzQ29udGV4dEdMKFdlYktpdDo6R3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllcikKICNlbmRpZgogICAgIHZvaWQgQ2xlYXJOb3dQbGF5aW5nSW5m
bygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0wuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNz
L1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmNwcAppbmRleCA3OWIzNDU5NmZiZjJkMGRmYzk4MTg2
NTFiZGNmZWI0YjBhMGM4NzVkLi5mZmFhYzA5MTlkMWM1YzFlMWY4NWIxZDk2N2Q5Yjg0ZTMxM2M5
NmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFw
aGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5jcHAKQEAgLTM5LDE3ICszOSwxOCBAQCBuYW1l
c3BhY2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiAjaWYgIVBMQVRGT1JN
KENPQ09BKQotc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBSZW1vdGVH
cmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdM
QXR0cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzcywgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllcikKK3N0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTD4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShjb25zdCBXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRp
ZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQm
KQogewogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBudWxscHRyOwogfQog
I2VuZGlmCiAKLVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpSZW1vdGVHcmFwaGljc0NvbnRleHRH
TChjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMs
IEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdy
YXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJl
ZjxHcmFwaGljc0NvbnRleHRHTE9wZW5HTD4gY29udGV4dCkKK1JlbW90ZUdyYXBoaWNzQ29udGV4
dEdMOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGdw
dUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFw
aGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlZjxHcmFwaGljc0NvbnRleHRHTE9wZW5HTD4gY29u
dGV4dCwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYgcmVuZGVyaW5nQmFja2VuZCkKICAgICA6IG1f
Y29udGV4dChXVEZNb3ZlKGNvbnRleHQpKQogICAgICwgbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzKG1ha2VXZWFrUHRyKGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MpKQogICAgICwgbV9ncmFw
aGljc0NvbnRleHRHTElkZW50aWZpZXIoZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKQorICAg
ICwgbV9yZW5kZXJpbmdCYWNrZW5kKG1ha2VSZWYocmVuZGVyaW5nQmFja2VuZCkpCiB7CiAgICAg
aWYgKGF1dG8qIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgPSBtX2dwdUNvbm5lY3Rpb25Ub1dl
YlByb2Nlc3MuZ2V0KCkpCiAgICAgICAgIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MtPm1lc3Nh
Z2VSZWNlaXZlck1hcCgpLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0w6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgZ3JhcGhpY3NDb250ZXh0R0xJZGVu
dGlmaWVyLnRvVUludDY0KCksICp0aGlzKTsKQEAgLTEzNyw2ICsxMzgsNDUgQEAgdm9pZCBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTDo6bm90aWZ5TWFya0NvbnRleHRDaGFuZ2VkKCkKICAgICBtX2Nv
bnRleHQtPm1hcmtDb250ZXh0Q2hhbmdlZCgpOwogfQogCit2b2lkIFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdS
ZXNvdXJjZUlkZW50aWZpZXIgYnVmZmVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHBhaW50SW1hZ2VEYXRhVG9JbWFnZUJ1
ZmZlcihtX2NvbnRleHQtPnJlYWRSZW5kZXJpbmdSZXN1bHRzRm9yUGFpbnRpbmcoKSwgYnVmZmVy
SWRlbnRpZmllciwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29y
ZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGJ1ZmZlcklkZW50aWZpZXIsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBwYWludEltYWdl
RGF0YVRvSW1hZ2VCdWZmZXIobV9jb250ZXh0LT5yZWFkQ29tcG9zaXRlZFJlc3VsdHNGb3JQYWlu
dGluZygpLCBidWZmZXJJZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9
CisKK3ZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50SW1hZ2VEYXRhVG9JbWFnZUJ1
ZmZlcihSZWZQdHI8V2ViQ29yZTo6SW1hZ2VEYXRhPiYmIGltYWdlRGF0YSwgV2ViQ29yZTo6UmVu
ZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGJ1ZmZlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICAvLyBUT0RPOiBXZSBkbyBu
b3QgaGF2ZSBmdW5jdGlvbmluZyByZWFkL3dyaXRlIGZlbmNlcyBpbiBSZW1vdGVSZW5kZXJpbmdC
YWNrZW5kLiBUaHVzIHRoaXMgaXMgc3luY2hyb25vdXMsCisgICAgLy8gYXMgaXMgdGhlIG1lc3Nh
Z2VzIHRoYXQgY2FsbCB0aGVzZS4KKyAgICBMb2NrIG11dGV4OworICAgIENvbmRpdGlvbiBjb25k
aXRpb25WYXJpYWJsZTsKKyAgICBib29sIGlzRmluaXNoZWQgPSBmYWxzZTsKKyAgICBtX3JlbmRl
cmluZ0JhY2tlbmQtPmRpc3BhdGNoKFsmXSgpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBp
bWFnZUJ1ZmZlciA9IG1fcmVuZGVyaW5nQmFja2VuZC0+cmVtb3RlUmVzb3VyY2VDYWNoZSgpLmNh
Y2hlZEltYWdlQnVmZmVyKGJ1ZmZlcklkZW50aWZpZXIpKSB7CisgICAgICAgICAgICAvLyBOb3Rl
OiBoZXJlIHdlIGRvIG5vdCB0cnkgdG8gcGxheSBiYWNrIHBlbmRpbmcgY29tbWFuZHMgZm9yIGlt
YWdlQnVmZmVyLiBDdXJyZW50bHkgdGhpcyBjYWxsIGlzIG9ubHkgbWFkZSBmb3IgZW1wdHkKKyAg
ICAgICAgICAgIC8vIGltYWdlIGJ1ZmZlcnMgYW5kIHRoZXJlJ3Mgbm8gZ29vZCB3YXkgdG8gYWRk
IGRpc3BsYXkgbGlzdHMuCisgICAgICAgICAgICBpZiAoaW1hZ2VEYXRhKQorICAgICAgICAgICAg
ICAgIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKG1fY29udGV4dC0+Y29u
dGV4dEF0dHJpYnV0ZXMoKSwgaW1hZ2VEYXRhLnJlbGVhc2VOb25OdWxsKCksIGltYWdlQnVmZmVy
LT5iYWNrZW5kU2l6ZSgpLCBpbWFnZUJ1ZmZlci0+Y29udGV4dCgpKTsKKyAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICBpbWFnZUJ1ZmZlci0+Y29udGV4dCgpLmNsZWFyUmVjdCh7IElu
dFBvaW50KCksIGltYWdlQnVmZmVyLT5iYWNrZW5kU2l6ZSgpIH0pOworICAgICAgICAgICAgLy8g
VW5mb3J0dW5hdGVseSAiZmx1c2giIGltcGxlbWVudGF0aW9uIGluIFJlbW90ZVJlbmRlcmluZ0Jh
Y2tlbmQgb3ZlcmxvYWRzIG9yZGVyaW5nIGFuZCBlZmZlY3RzLgorICAgICAgICAgICAgaW1hZ2VC
dWZmZXItPmZsdXNoQ29udGV4dCgpOworICAgICAgICB9CisgICAgICAgIGF1dG8gbG9ja2VyID0g
aG9sZExvY2sobXV0ZXgpOworICAgICAgICBpc0ZpbmlzaGVkID0gdHJ1ZTsKKyAgICAgICAgY29u
ZGl0aW9uVmFyaWFibGUubm90aWZ5T25lKCk7CisgICAgfSk7CisgICAgc3RkOjp1bmlxdWVfbG9j
azxMb2NrPiBsb2NrKG11dGV4KTsKKyAgICBjb25kaXRpb25WYXJpYWJsZS53YWl0KGxvY2ssIFsm
XSB7CisgICAgICAgIHJldHVybiBpc0ZpbmlzaGVkOworICAgIH0pOworICAgIGNvbXBsZXRpb25I
YW5kbGVyKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRl
eHRHTC5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNz
Q29udGV4dEdMLmgKaW5kZXggMDAxNTlhYzhiNTg2YThiNjJhM2RkYTNhNTcwMDRlODgzZTE1NmQw
OC4uYWFhNTc0OWQwYmM1NDY0NmIyYzFmOGY0YzM5ZTU4YmRhOTYxZTg0ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdM
LmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNz
Q29udGV4dEdMLmgKQEAgLTMxLDcgKzMxLDcgQEAKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHRH
TElkZW50aWZpZXIuaCIKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKICNpbmNsdWRlICJN
ZXNzYWdlU2VuZGVyLmgiCi0KKyNpbmNsdWRlICJSZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9FeHRlbnNpb25zR0wuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBo
aWNzQ29udGV4dEdMT3BlbkdMLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5o
PgpAQCAtNTgsMTQgKzU4LDE1IEBAIGNsYXNzIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMCiAgICAg
OiBwdWJsaWMgSVBDOjpNZXNzYWdlU2VuZGVyCiAgICAgLCBwcml2YXRlIElQQzo6TWVzc2FnZVJl
Y2VpdmVyCiAgICAgLCBwcml2YXRlIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpDbGllbnQg
eworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6
OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IGNyZWF0ZShjb25zdCBXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
JiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKTsKKyAgICBzdGF0aWMgc3RkOjp1bmlxdWVf
cHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBjcmVhdGUoY29uc3QgV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIEdyYXBo
aWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYpOwogICAgIH5S
ZW1vdGVHcmFwaGljc0NvbnRleHRHTCgpIG92ZXJyaWRlOwogCiAgICAgR1BVQ29ubmVjdGlvblRv
V2ViUHJvY2VzcyogZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcygpIGNvbnN0OwogCiBwcm90ZWN0
ZWQ6Ci0gICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIEdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMT3BlbkdM
Pik7CisgICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIEdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMT3BlbkdM
PiwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYpOwogCiAgICAgLy8gSVBDOjpNZXNzYWdlU2VuZGVy
IG92ZXJyaWRlcy4KICAgICBJUEM6OkNvbm5lY3Rpb24qIG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9u
KCkgY29uc3QgZmluYWw7CkBAIC05MiwxMiArOTMsMTcgQEAgcHJvdGVjdGVkOgogI2VuZGlmCiAg
ICAgdm9pZCBnZXRFcnJvcihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQzMl90KT4mJik7CiAg
ICAgdm9pZCBzeW50aGVzaXplR0xFcnJvcih1aW50MzJfdCBlcnJvcik7CisgICAgdm9pZCBwYWlu
dFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50
aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CisgICAgdm9pZCBwYWludENvbXBv
c2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwogCiAjaW5jbHVkZSAiUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0xGdW5jdGlvbnNHZW5lcmF0ZWQuaCIgLy8gTk9MSU5UCiAKKyAgICB2b2lkIHBh
aW50SW1hZ2VEYXRhVG9JbWFnZUJ1ZmZlcihSZWZQdHI8V2ViQ29yZTo6SW1hZ2VEYXRhPiYmLCBX
ZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoKT4mJik7CisKICAgICBSZWY8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w+IG1f
Y29udGV4dDsKICAgICBXZWFrUHRyPEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M+IG1fZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzczsKICAgICBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgbV9n
cmFwaGljc0NvbnRleHRHTElkZW50aWZpZXI7CisgICAgUmVmPFJlbW90ZVJlbmRlcmluZ0JhY2tl
bmQ+IG1fcmVuZGVyaW5nQmFja2VuZDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNz
Q29udGV4dEdMLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNz
L1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2VzLmluCmluZGV4IDdhMTkyNWRiYjI3YWJm
M2QzMDM0Y2I3ZmNiMzhhM2YzOTNlM2RjZmEuLjQyYzI5N2Q5YTUzYTQ3ZDU5ZDJhODhiMmI0NGRk
ZTZlZjc1MmNmMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGlj
cy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wubWVzc2FnZXMuaW4K
QEAgLTM2LDYgKzM2LDkgQEAgbWVzc2FnZXMgLT4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wgTm90
UmVmQ291bnRlZCB7CiAgICAgdm9pZCBOb3RpZnlNYXJrQ29udGV4dENoYW5nZWQoKQogICAgIHZv
aWQgU3ludGhlc2l6ZUdMRXJyb3IodWludDMyX3QgZXJyb3IpCiAgICAgdm9pZCBHZXRFcnJvcigp
IC0+ICh1aW50MzJfdCByZXR1cm5WYWx1ZSkgU3luY2hyb25vdXMKKyAgICB2b2lkIFBhaW50UmVu
ZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmll
ciByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIpIC0+ICgpIFN5bmNocm9ub3VzCisgICAgdm9p
ZCBQYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3Vy
Y2VJZGVudGlmaWVyIHJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcikgLT4gKCkgU3luY2hyb25v
dXMKKwogCiAgICAgdm9pZCBTZXRGYWlsTmV4dEdQVVN0YXR1c0NoZWNrKCkKICAgICB2b2lkIE1v
dmVFcnJvcnNUb1N5bnRoZXRpY0Vycm9yTGlzdCgpIC0+IChib29sIHJldHVyblZhbHVlKSBTeW5j
aHJvbm91cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1Jl
bW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EuY3BwCmluZGV4IDhlMmQxZmM2
NTE4NjI4Mzk1ZTk3NDFjNDRlN2FjODUxYjA4ZWY2MjcuLjE5MTlhYjRjY2QxNDU4NmI3YzIzYmY0
M2ZjNzgxMjI4ZDdlNGY5NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9n
cmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5jcHAK
QEAgLTM3LDYzICszNywzNSBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNl
IHsKIAotY2xhc3MgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYSBmaW5hbCA6IHB1YmxpYyBS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTCwgcHJpdmF0ZSBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TElPU3VyZmFjZVN3YXBDaGFpbiB7CitjbGFzcyBSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29h
IGZpbmFsIDogcHVibGljIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMIHsKIHB1YmxpYzoKLSAgICBS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dEdMQXR0cmlidXRlcyYsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBHcmFwaGljc0NvbnRl
eHRHTElkZW50aWZpZXIpOworICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoY29uc3Qg
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgR1BVQ29ubmVjdGlvblRvV2Vi
UHJvY2VzcyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVtb3RlUmVuZGVyaW5nQmFj
a2VuZCYpOwogICAgIH5SZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hKCkgZmluYWwgPSBkZWZh
dWx0OwogCiAgICAgLy8gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wgb3ZlcnJpZGVzLgogICAgIHZv
aWQgcHJlcGFyZUZvckRpc3BsYXkoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXVEY6Ok1hY2hTZW5k
UmlnaHQmJik+JiYpIGZpbmFsOwotCi0gICAgLy8gR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VT
d2FwQ2hhaW4gb3ZlcnJpZGVzLgotICAgIEJ1ZmZlciByZWN5Y2xlQnVmZmVyKCkgZmluYWw7Ci0g
ICAgdm9pZCBwcmVzZW50KEJ1ZmZlcikgZmluYWw7Ci0gICAgY29uc3QgQnVmZmVyJiBkaXNwbGF5
QnVmZmVyKCkgY29uc3QgZmluYWw7Ci0gICAgdm9pZCogZGV0YWNoQ2xpZW50KCkgZmluYWw7CiBw
cml2YXRlOgotICAgIEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluOjpCdWZmZXIg
bV9kaXNwbGF5QnVmZmVyOworICAgIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNl
U3dhcENoYWluIG1fc3dhcENoYWluOwogfTsKIAogfQogCi1zdGQ6OnVuaXF1ZV9wdHI8UmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0w+IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpjcmVhdGUoY29uc3Qg
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBHUFVDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzJiBncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLCBHcmFwaGljc0Nv
bnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKQotewotICAgIHJl
dHVybiBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+KG5ldyBSZW1vdGVH
cmFwaGljc0NvbnRleHRHTENvY29hKGF0dHJpYnV0ZXMsIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MsIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcikpOwotfQotCi1SZW1vdGVHcmFwaGljc0Nv
bnRleHRHTENvY29hOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRv
V2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGlkZW50
aWZpZXIpCi0gICAgOiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTChhdHRyaWJ1dGVzLCBjb25uZWN0
aW9uLCBpZGVudGlmaWVyLCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6Y3JlYXRlRm9yR1BVUHJv
Y2VzcyhhdHRyaWJ1dGVzLCB0aGlzKSkKLXsKLX0KLQotR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZh
Y2VTd2FwQ2hhaW46OkJ1ZmZlciBSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpyZWN5Y2xl
QnVmZmVyKCkKLXsKLSAgICByZXR1cm4gV1RGTW92ZShtX2Rpc3BsYXlCdWZmZXIpOwotfQotCi12
b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OnByZXNlbnQoQnVmZmVyIGJ1ZmZlcikK
LXsKLSAgICBBU1NFUlQoIW1fZGlzcGxheUJ1ZmZlci5zdXJmYWNlKTsKLSAgICBtX2Rpc3BsYXlC
dWZmZXIgPSBXVEZNb3ZlKGJ1ZmZlcik7Ci19Ci0KLWNvbnN0IEdyYXBoaWNzQ29udGV4dEdMSU9T
dXJmYWNlU3dhcENoYWluOjpCdWZmZXImIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OmRp
c3BsYXlCdWZmZXIoKSBjb25zdAorc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBo
aWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyYgZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcywgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlm
aWVyIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYg
cmVuZGVyaW5nQmFja2VuZCkKIHsKLSAgICByZXR1cm4gbV9kaXNwbGF5QnVmZmVyOworICAgIHJl
dHVybiBtYWtlVW5pcXVlPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E+KGF0dHJpYnV0ZXMs
IGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwg
cmVuZGVyaW5nQmFja2VuZCk7CiB9CiAKLXZvaWQqIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29j
b2E6OmRldGFjaENsaWVudCgpCitSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpSZW1vdGVH
cmFwaGljc0NvbnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlv
biwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlbW90ZVJlbmRlcmlu
Z0JhY2tlbmQmIHJlbmRlcmluZ0JhY2tlbmQpCisgICAgOiBSZW1vdGVHcmFwaGljc0NvbnRleHRH
TChhdHRyaWJ1dGVzLCBjb25uZWN0aW9uLCBpZGVudGlmaWVyLCBHcmFwaGljc0NvbnRleHRHTE9w
ZW5HTDo6Y3JlYXRlRm9yR1BVUHJvY2VzcyhhdHRyaWJ1dGVzLCAmbV9zd2FwQ2hhaW4pLCByZW5k
ZXJpbmdCYWNrZW5kKQogewotICAgIHJldHVybiBzdGQ6OmV4Y2hhbmdlKG1fZGlzcGxheUJ1ZmZl
ci5oYW5kbGUsIG51bGxwdHIpOwogfQogCiB2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29j
b2E6OnByZXBhcmVGb3JEaXNwbGF5KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV1RGOjpNYWNoU2Vu
ZFJpZ2h0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIG1fY29udGV4dC0+cHJlcGFy
ZUZvckRpc3BsYXkoKTsKLSAgICBhdXRvIGRpc3BsYXlCdWZmZXIgPSBXVEZNb3ZlKG1fZGlzcGxh
eUJ1ZmZlci5zdXJmYWNlKTsKICAgICBNYWNoU2VuZFJpZ2h0IHNlbmRSaWdodDsKLSAgICBpZiAo
ZGlzcGxheUJ1ZmZlcikKLSAgICAgICAgc2VuZFJpZ2h0ID0gZGlzcGxheUJ1ZmZlci0+Y3JlYXRl
U2VuZFJpZ2h0KCk7CisgICAgaWYgKGF1dG8qIHN1cmZhY2UgPSBtX3N3YXBDaGFpbi5kaXNwbGF5
QnVmZmVyKCkuc3VyZmFjZS5nZXQoKSkKKyAgICAgICAgc2VuZFJpZ2h0ID0gc3VyZmFjZS0+Y3Jl
YXRlU2VuZFJpZ2h0KCk7CiAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShzZW5kUmlnaHQp
KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1Jl
bW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwCmluZGV4IDJjNzYyNTE4NmFlZTE1ZDc3MmI3
NjRiZGQ1NTlmMGExYzI3MGJkNDEuLjdjZGM2ZWJjMzA2NDhkMDAzMTg0NGJlYjI1ZGFjNDliZjRm
OWU2NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1v
dGVSZW5kZXJpbmdCYWNrZW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3Jh
cGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHAKQEAgLTkyLDYgKzkyLDExIEBAIHZvaWQg
UmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6ZGlzY29ubmVjdCgpCiAgICAgbV9ncHVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzLT5jb25uZWN0aW9uKCkucmVtb3ZlV29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVy
KE1lc3NhZ2VzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCks
IG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIudG9VSW50NjQoKSk7CiB9CiAKK3ZvaWQgUmVt
b3RlUmVuZGVyaW5nQmFja2VuZDo6ZGlzcGF0Y2goRnVuY3Rpb248dm9pZCgpPiYmIHRhc2spCit7
CisgICAgbV93b3JrUXVldWUtPmRpc3BhdGNoKFdURk1vdmUodGFzaykpOworfQorCiBJUEM6OkNv
bm5lY3Rpb24qIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6Om1lc3NhZ2VTZW5kZXJDb25uZWN0aW9u
KCkgY29uc3QKIHsKICAgICByZXR1cm4gJm1fZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy0+Y29u
bmVjdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNz
L1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFw
aGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmgKaW5kZXggYjdhZWUyNjI3NzA1YmI5YWNjMTAx
OWQ3MTU1ZWYyN2UxNTNkMmIyOC4uZTA1OTZiZGVlMjUyODVlNzc5NzQxYjJiNjE2MjJiNjBhNzY2
NzMzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZVJlbmRlcmluZ0JhY2tlbmQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhp
Y3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5oCkBAIC04MCw2ICs4MCw5IEBAIHB1YmxpYzoKIAog
ICAgIHZvaWQgZGlzY29ubmVjdCgpOwogCisgICAgLy8gUnVucyBGdW5jdGlvbiBpbiBSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kIHRhc2sgcXVldWUuCisgICAgdm9pZCBkaXNwYXRjaChGdW5jdGlvbjx2
b2lkKCk+JiYpOworCiBwcml2YXRlOgogICAgIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQoR1BVQ29u
bmVjdGlvblRvV2ViUHJvY2VzcyYsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLCBJUEM6OlNl
bWFwaG9yZSYmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9n
cmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5jcHAK
aW5kZXggZjI5YmUwMDZlYjdiOTc2NGI3ODJkOTE2MjVjODAxNjBmZjhmMzZmMy4uNTYzOWI0MmJk
OWJiNzgyZDQwN2RkMTYzZGZmMDhmZGE2NzUzMDIxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBo
aWNzQ29udGV4dEdMUHJveHkuY3BwCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMUHJveHlNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3MuaCIKKyNpbmNsdWRl
IDxXZWJDb3JlL0ltYWdlQnVmZmVyLmg+CiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRl
IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dENHLmg+CkBAIC00MywxOCArNDQsMTggQEAgbmFtZXNw
YWNlIFdlYktpdCB7CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCi1SZWZQdHI8UmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eT4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6Y3Jl
YXRlKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcykKK1JlZlB0
cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5PiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFBy
b3h5OjpjcmVhdGUoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVz
LCBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikK
IHsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHko
V2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKSwgYXR0
cmlidXRlcykpOworICAgIHJldHVybiBhZG9wdFJlZihuZXcgUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVHUFVQcm9jZXNzQ29ubmVjdGlv
bigpLCBhdHRyaWJ1dGVzLCByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikpOwogfQogCi1SZW1v
dGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KEdQ
VVByb2Nlc3NDb25uZWN0aW9uJiBncHVQcm9jZXNzQ29ubmVjdGlvbiwgY29uc3QgR3JhcGhpY3ND
b250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRycykKK1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6
OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVBy
b2Nlc3NDb25uZWN0aW9uLCBjb25zdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJz
LCBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcikK
ICAgICA6IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNlKGF0dHJzKQogICAgICwgbV9n
cHVQcm9jZXNzQ29ubmVjdGlvbigmZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24pCiB7CiAgICAgZ3B1UHJv
Y2Vzc0Nvbm5lY3Rpb24uYWRkQ2xpZW50KCp0aGlzKTsKICAgICBncHVQcm9jZXNzQ29ubmVjdGlv
bi5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9ncmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIudG9VSW50NjQoKSwgKnRoaXMpOwotICAgIGNvbm5lY3Rpb24o
KS5zZW5kKE1lc3NhZ2VzOjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpDcmVhdGVHcmFwaGlj
c0NvbnRleHRHTChhdHRycywgbV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpLCAwLCBJUEM6
OlNlbmRPcHRpb246OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBseSk7
CisgICAgY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OkNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKGF0dHJzLCBtX2dyYXBoaWNzQ29udGV4dEdMSWRl
bnRpZmllciwgcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIpLCAwLCBJUEM6OlNlbmRPcHRpb246
OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBseSk7CiB9CiAKIFJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6On5SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KCkK
QEAgLTEzMCwxNCArMTMxLDM0IEBAIHZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6
c2ltdWxhdGVDb250ZXh0Q2hhbmdlZCgpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotdm9p
ZCBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0Nh
bnZhcyhJbWFnZUJ1ZmZlciopCit2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OnBh
aW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyJiBidWZmZXIpCiB7Ci0gICAg
bm90SW1wbGVtZW50ZWQoKTsKKyAgICAvLyBGSVhNRTogdGhlIGJ1ZmZlciBpcyAicmVsYXRpdmVs
eSBlbXB0eSIgYWx3YXlzLCBidXQgZm9yIGNvbnNpc3RlbmN5LCB3ZSBuZWVkIHRvIGVuc3VyZQor
ICAgIC8vIG5vIHBlbmRpbmcgb3BlcmF0aW9ucyBhcmUgdGFyZ2V0ZWQgZm9yIHRoZSBgYnVmZmVy
YC4KKyAgICBidWZmZXIuZmx1c2hEcmF3aW5nQ29udGV4dCgpOworCisgICAgLy8gRklYTUU6IFdl
IGNhbm5vdCBzeW5jaHJvbml6ZSBzbyB0aGF0IHdlIHdvdWxkIGtub3cgbm8gcGVuZGluZyBvcGVy
YXRpb25zIGFyZSB1c2luZyB0aGUgYGJ1ZmZlcmAuCisKKyAgICAvLyBGSVhNRTogQ3VycmVudGx5
IFJlbW90ZUltYWdlQnVmZmVyUHJveHk6OmdldEltYWdlRGF0YSBldCBhbCBkbyBub3Qgd2FpdCBm
b3IgdGhlIGZsdXNoZXMgb2YgdGhlIGltYWdlcworICAgIC8vIGluc2lkZSB0aGUgZGlzcGxheSBs
aXN0cy4gUmF0aGVyLCBpdCBhc3N1bWVzIHRoYXQgcHJvY2Vzc2luZyBpdHMgc2VxdWVuY2UgKGUu
Zy4gdGhlIGRpc3BsYXkgbGlzdCkgd2lsbCBlcXVhbCB0byByZWFkIGZsdXNoIGJlaW5nCisgICAg
Ly8gZnVsZmlsbGVkLiBGb3IgYmVsb3csIHdlIGNhbm5vdCBjcmVhdGUgYSBuZXcgZmx1c2ggaWQg
c2luY2Ugd2UgZ28gdGhyb3VnaCBkaWZmZXJlbnQgc2VxdWVuY2UgKFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMIHNlcXVlbmNlKQorCisgICAgLy8gRklYTUU6IE1heWJlIGltcGxlbWVudCBJUEM6OkZl
bmNlIG9yIHNvbWV0aGluZyBzaW1pbGFyLgorICAgIGF1dG8gc2VuZFJlc3VsdCA9IHNlbmRTeW5j
KE1lc3NhZ2VzOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRSZW5kZXJpbmdSZXN1bHRz
VG9DYW52YXMoYnVmZmVyLnJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcigpKSwgTWVzc2FnZXM6
OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpQYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhczo6
UmVwbHkoKSk7CisgICAgaWYgKCFzZW5kUmVzdWx0KSB7CisgICAgICAgIG1hcmtDb250ZXh0TG9z
dCgpOworICAgICAgICByZXR1cm47CisgICAgfQogfQogCi12b2lkIFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMUHJveHk6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciop
Cit2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OnBhaW50Q29tcG9zaXRlZFJlc3Vs
dHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYgYnVmZmVyKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7
CisgICAgYnVmZmVyLmZsdXNoRHJhd2luZ0NvbnRleHQoKTsKKyAgICBhdXRvIHNlbmRSZXN1bHQg
PSBzZW5kU3luYyhNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OlBhaW50Q29tcG9z
aXRlZFJlc3VsdHNUb0NhbnZhcyhidWZmZXIucmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKCkp
LCBNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OlBhaW50Q29tcG9zaXRlZFJlc3Vs
dHNUb0NhbnZhczo6UmVwbHkoKSk7CisgICAgaWYgKCFzZW5kUmVzdWx0KSB7CisgICAgICAgIG1h
cmtDb250ZXh0TG9zdCgpOworICAgICAgICByZXR1cm47CisgICAgfQogfQogCiB2b2lkIFJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OnN5bnRoZXNpemVHTEVycm9yKEdDR0xlbnVtIGVycm9y
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1v
dGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuaAppbmRleCA4MzFiNGIwYWIx
MzdlNmFhZjgzNTk2ZTBiMGEwNzZkZjFlMDkxNzYxLi41Y2U1NzY3NmIwOTA1YTY1NzQwNDJhOWY1
NDM4YTQ3MWZiN2VmOTkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHku
aApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIk1lc3NhZ2VTZW5kZXIuaCIKICNpbmNsdWRl
ICJSZW1vdGVHcmFwaGljc0NvbnRleHRHTE1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlUmVz
b3VyY2VDYWNoZVByb3h5LmgiCisjaW5jbHVkZSAiUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIu
aCIKICNpbmNsdWRlICJXZWJDb3JlQXJndW1lbnRDb2RlcnMuaCIKICNpbmNsdWRlIDxXZWJDb3Jl
L05vdEltcGxlbWVudGVkLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SZW1vdGVHcmFwaGljc0NvbnRl
eHRHTFByb3h5QmFzZS5oPgpAQCAtNTAsNyArNTEsNyBAQCBjbGFzcyBSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTFByb3h5IGZpbmFsCiAgICAgLCBwcml2YXRlIEdQVVByb2Nlc3NDb25uZWN0aW9uOjpD
bGllbnQKICAgICAsIHB1YmxpYyBXZWJDb3JlOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
QmFzZSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZlB0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRH
TFByb3h5PiBjcmVhdGUoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVz
Jik7CisgICAgc3RhdGljIFJlZlB0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5PiBjcmVh
dGUoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiwgUmVuZGVyaW5n
QmFja2VuZElkZW50aWZpZXIpOwogICAgIH5SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KCkg
ZmluYWw7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlciBvdmVycmlkZXMuCkBAIC02Myw4
ICs2NCw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGVuc3VyZUV4dGVuc2lvbkVuYWJsZWQoY29uc3Qg
U3RyaW5nJiBleHRlbnNpb24pIGZpbmFsOwogICAgIHZvaWQgbm90aWZ5TWFya0NvbnRleHRDaGFu
Z2VkKCkgZmluYWw7CiAgICAgdm9pZCBzaW11bGF0ZUNvbnRleHRDaGFuZ2VkKCkgZmluYWw7Ci0g
ICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpJbWFnZUJ1ZmZl
ciopIGZpbmFsOwotICAgIHZvaWQgcGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNv
cmU6OkltYWdlQnVmZmVyKikgZmluYWw7CisgICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNU
b0NhbnZhcyhXZWJDb3JlOjpJbWFnZUJ1ZmZlciYpIGZpbmFsOworICAgIHZvaWQgcGFpbnRDb21w
b3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OkltYWdlQnVmZmVyJikgZmluYWw7CiAgICAg
dm9pZCBzeW50aGVzaXplR0xFcnJvcihHQ0dMZW51bSBlcnJvcikgZmluYWw7CiAgICAgR0NHTGVu
dW0gZ2V0RXJyb3IoKSBmaW5hbDsKIApAQCAtMzU2LDcgKzM1Nyw3IEBAIHByaXZhdGU6CiAgICAg
dm9pZCBkaXNjb25uZWN0R3B1UHJvY2Vzc0lmTmVlZGVkKCk7CiAgICAgdm9pZCBhYmFuZG9uR3B1
UHJvY2VzcygpOwogCi0gICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eShHUFVQcm9jZXNz
Q29ubmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYp
OworICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBSZW5kZXJpbmdC
YWNrZW5kSWRlbnRpZmllcik7CiAgICAgR1BVUHJvY2Vzc0Nvbm5lY3Rpb24qIG1fZ3B1UHJvY2Vz
c0Nvbm5lY3Rpb247CiAgICAgYm9vbCBtX2RpZEluaXRpYWxpemUgeyBmYWxzZSB9OwogICAgIEdD
R0xlbnVtIG1fZXJyb3JXaGVuQ29udGV4dElzTG9zdCA9IE5PX0VSUk9SOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNr
ZW5kUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1v
dGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuY3BwCmluZGV4IGE0YzQ1ZTAwODBhYmM2M2ZmNmNiYzUz
OTE2MzUzYzk3ZTIxOGQxN2UuLjNiMTRmNDMwZjYxOTRkNjA2NWEzMjJlNTJhODg1NzE4Zjk3MTcz
NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVt
b3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5jcHAKQEAgLTY1LDcg
KzY1LDcgQEAgdm9pZCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHk6OmNvbm5lY3RUb0dQVVBy
b2Nlc3MoKQogICAgIGF1dG8mIGNvbm5lY3Rpb24gPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5l
bnN1cmVHUFVQcm9jZXNzQ29ubmVjdGlvbigpOwogICAgIGNvbm5lY3Rpb24uYWRkQ2xpZW50KCp0
aGlzKTsKICAgICBjb25uZWN0aW9uLm1lc3NhZ2VSZWNlaXZlck1hcCgpLmFkZE1lc3NhZ2VSZWNl
aXZlcihNZXNzYWdlczo6UmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5OjptZXNzYWdlUmVjZWl2
ZXJOYW1lKCksIG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIudG9VSW50NjQoKSwgKnRoaXMp
OwotICAgIHNlbmQoTWVzc2FnZXM6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkNyZWF0ZVJl
bmRlcmluZ0JhY2tlbmQobV9yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciwgbV9yZXN1bWVEaXNw
bGF5TGlzdFNlbWFwaG9yZSksIDApOworICAgIHNlbmQoTWVzc2FnZXM6OkdQVUNvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OkNyZWF0ZVJlbmRlcmluZ0JhY2tlbmQobV9yZW5kZXJpbmdCYWNrZW5kSWRl
bnRpZmllciwgbV9yZXN1bWVEaXNwbGF5TGlzdFNlbWFwaG9yZSksIDAsIElQQzo6U2VuZE9wdGlv
bjo6RGlzcGF0Y2hNZXNzYWdlRXZlbldoZW5XYWl0aW5nRm9yU3luY1JlcGx5KTsKIH0KIAogdm9p
ZCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHk6OnJlZXN0YWJsaXNoR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGlj
cy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmgKaW5kZXggNjdiZTRh
YjY3ZTRjOTlmZGE5MjhmY2VkNzAzOWNjNDA4NTYyMjU3Yi4uNWM5MGFmNjI0ZWE0MzI3MDVkOGRl
NmFlNWZiMjE1NDY2MGUxYTEwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94
eS5oCkBAIC05OCw2ICs5OCw3IEBAIHB1YmxpYzoKICAgICBEaWRSZWNlaXZlQmFja2VuZENyZWF0
aW9uUmVzdWx0IHdhaXRGb3JEaWRDcmVhdGVJbWFnZUJ1ZmZlckJhY2tlbmQoKTsKICAgICBib29s
IHdhaXRGb3JEaWRGbHVzaCgpOwogCisgICAgUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIgcmVu
ZGVyaW5nQmFja2VuZElkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3JlbmRlcmluZ0JhY2tl
bmRJZGVudGlmaWVyOyB9CiBwcml2YXRlOgogICAgIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94
eSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IGZhODRlZmFkM2MzMzBmYjFkMWJiMTc5
NDkwYTNlYmVkNzljZjFiYmUuLmEwNzAxNzc0OWIzZTI4MmM2NzI0ZmExZDU0MTg4MjMxMjlkYTQ1
ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCkBAIC05MjksNyArOTI5LDcgQEAgUmVmUHRyPEdy
YXBoaWNzQ29udGV4dEdMPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUdyYXBoaWNzQ29udGV4dEdM
KGNvbnN0IEdyYXBoaWMKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgVU5VU0VEX1ZBUklB
QkxFKGhvc3RXaW5kb3dEaXNwbGF5SUQpOwogI2lmIFBMQVRGT1JNKENPQ09BKQotICAgIHJldHVy
biBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpjcmVhdGUoYXR0cmlidXRlcyk7CisgICAg
cmV0dXJuIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OmNyZWF0ZShhdHRyaWJ1dGVzLCBt
X3BhZ2UuZW5zdXJlUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5KCkucmVuZGVyaW5nQmFja2Vu
ZElkZW50aWZpZXIoKSk7CiAjZWxzZQogICAgIHJldHVybiBudWxscHRyOwogI2VuZGlmCmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODE3OTI2ZjYw
ZTU1MzRhYmI1MDQxODU1OTBkZjc0MWZkMmI4N2RiYi4uNjBjZGNjMGMzMmM3MGQ1NGQ2Y2EwY2Qy
MWMzZTdmNTVjYzllYzA1ZiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAyLTEyICBLaW1tbyBLaW5udW5lbiAg
PGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgY29udGV4dHMgZG8gbm90IHdv
cmsgYXMgc291cmNlIGZvciBDb250ZXh0MkQgZHJhd0ltYWdlIGNhbGxzIGluIEdQVSBwcm9jZXNz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE4MTEK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUg
dHdvIHNpZ25hdHVyZXMgZm9yIG1hbnVhbGx5IGltcGxlbWVudGVkIG1lc3NhZ2VzLgorCisgICAg
ICAgICogU2NyaXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmdsOgorCiAyMDIxLTAyLTE3ICBDYXJsb3Mg
R2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9O
KHIyNzI2MzYpIFtHVEtdIENyYXNoIGFuZCBmYWlsdXJlcyBpbiBBUEkgdGVzdCAvV2ViS2l0Mkd0
ay9UZXN0UmVzb3VyY2VzCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL2dlbmVyYXRlLWdwdXAt
d2ViZ2wgYi9Ub29scy9TY3JpcHRzL2dlbmVyYXRlLWdwdXAtd2ViZ2wKaW5kZXggNTY4NWU5MDc1
MzUzZmQxZDJjZWE5NDYyMDZiNTdlNDhiNDI2NjNmZC4uNTM5YTgzYzRlMjc0OWUxNDFhNDU2OWQ0
NGMxYzU3MWY0NzIxNDhhZSAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy9nZW5lcmF0ZS1ncHVw
LXdlYmdsCisrKyBiL1Rvb2xzL1NjcmlwdHMvZ2VuZXJhdGUtZ3B1cC13ZWJnbApAQCAtMTAxLDYg
KzEwMSw5IEBAIG1lc3NhZ2VzIC0+IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMIE5vdFJlZkNvdW50
ZWQge3sKICAgICB2b2lkIE5vdGlmeU1hcmtDb250ZXh0Q2hhbmdlZCgpCiAgICAgdm9pZCBTeW50
aGVzaXplR0xFcnJvcih1aW50MzJfdCBlcnJvcikKICAgICB2b2lkIEdldEVycm9yKCkgLT4gKHVp
bnQzMl90IHJldHVyblZhbHVlKSBTeW5jaHJvbm91cworICAgIHZvaWQgUGFpbnRSZW5kZXJpbmdS
ZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIHJlbmRl
cmluZ1Jlc291cmNlSWRlbnRpZmllcikgLT4gKCkgU3luY2hyb25vdXMKKyAgICB2b2lkIFBhaW50
Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50
aWZpZXIgcmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKSAtPiAoKSBTeW5jaHJvbm91cworCiB7
fQogfX0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IDg2YTYyYTlkMDE2NjlmNmJiMDZmZDRhZWRiOGVjNTBkNThkMmE0ZTQu
LjA1MzQ2ZjUxMmZhZDYyNDljZjQyNDI4YjMzY2E4Y2NiZTRmMmNiYmQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNCBAQAorMjAyMS0wMi0xMiAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29t
PgorCisgICAgICAgIFdlYkdMIGNvbnRleHRzIGRvIG5vdCB3b3JrIGFzIHNvdXJjZSBmb3IgQ29u
dGV4dDJEIGRyYXdJbWFnZSBjYWxscyBpbiBHUFUgcHJvY2VzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxODExCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVtb3ZlIG5vdyBwYXNzaW5nIHRlc3RzIGZy
b20gdGhlIGV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIGdwdS1wcm9jZXNzL1Rlc3RFeHBlY3Rh
dGlvbnM6CisKIDIwMjEtMDItMTcgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAg
ICAgICBJbXByb3ZlIHBlcmNlbnRhZ2UgaGVpZ2h0IGluIHNob3VsZENvbXB1dGVMb2dpY2FsV2lk
dGhGcm9tQXNwZWN0UmF0aW8KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2dwdS1wcm9jZXNzL1Rl
c3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IDNiOTBjMmFiYWMxYWZlMzVkZjg2NGE0YWJiOTNhYmIwMDI5MGZhYTQuLmVlNzdlMmJk
NGE5OTY1N2Q5ZTA5OGViNTA5ZTIwM2E5MWViMjZmMzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2dwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvZ3B1LXByb2Nl
c3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTksMTEgKzE5LDcgQEAgZmFzdC9jYW52YXMvY2FudmFz
LWxhcmdlLWRpbWVuc2lvbnMuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9jYW52YXMvY2FudmFzLXJl
bmRlci1sYXllci5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy9oaWRwaS1yZXBhaW50LW9u
LXJldGluYS1sZWF2ZXMtYml0cy1iZWhpbmQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogZmFz
dC9jYW52YXMvd2ViZ2wvY2FudmFzLTJkLXdlYmdsLXRleHR1cmUuaHRtbCBbIEZhaWx1cmUgXQot
ZmFzdC9jYW52YXMvd2ViZ2wvY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9jYW52
YXMvd2ViZ2wvY29udGV4dC11cGRhdGUtb24tZGlzcGxheS1jb25maWd1cmF0aW9uLmh0bWwgWyBU
aW1lb3V0IF0KLWZhc3QvY2FudmFzL3dlYmdsL2dsLXBpeGVsc3RvcmVpLmh0bWwgWyBGYWlsdXJl
IF0KLWZhc3QvY2FudmFzL3dlYmdsL2xvc2UtY29udGV4dC1vbi1zdGF0dXMtZmFpbHVyZS5odG1s
IFsgRmFpbHVyZSBdCi1mYXN0L2NhbnZhcy93ZWJnbC9wcmVtdWx0aXBseWFscGhhLXRlc3QuaHRt
bCBbIEZhaWx1cmUgXQogZmFzdC9jYW52YXMvd2ViZ2wvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2Ut
MmQtd2l0aC12aWRlby1yZ2I1NjUuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9jYW52YXMvd2ViZ2wv
dGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC12aWRlby1yZ2JhNDQ0NC5odG1sIFsgRmFp
bHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJnbC90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRo
LXZpZGVvLXJnYmE1NTUxLmh0bWwgWyBGYWlsdXJlIF0KQEAgLTIyMCwxOSArMjE2LDEyIEBAIGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
Y29udm9sdmVybm9kZS1pbnRlcmZhCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWRlc3RpbmF0aW9ubm9kZS1pbnRlcmZhY2UvZGVzdGlu
YXRpb24uaHRtbCBbIEZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1tZWRpYWVsZW1lbnRhdWRpb3NvdXJjZW5vZGUtaW50
ZXJmYWNlL25vLWNvcnMuaHR0cHMuaHRtbCBbIEZhaWx1cmUgXQogCi13ZWJnbC8xLjAuMy9jb25m
b3JtYW5jZS9jYW52YXMvY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMv
Y29uZm9ybWFuY2UvY2FudmFzL2RyYXctc3RhdGljLXdlYmdsLXRvLW11bHRpcGxlLWNhbnZhcy10
ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NhbnZhcy9kcmF3
LXdlYmdsLXRvLWNhbnZhcy10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZv
cm1hbmNlL2NhbnZhcy90by1kYXRhLXVybC10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEu
MC4zL2NvbmZvcm1hbmNlL2NvbnRleHQvY29udGV4dC1hdHRyaWJ1dGUtcHJlc2VydmUtZHJhd2lu
Zy1idWZmZXIuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY29udGV4
dC9wcmVtdWx0aXBseWFscGhhLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29u
Zm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLWNhbnZhcy5odG1sIFsg
RmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRlbnNpb25zL29lcy10ZXh0dXJl
LWZsb2F0LXdpdGgtdmlkZW8uaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFu
Y2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1oYWxmLWZsb2F0LXdpdGgtY2FudmFzLmh0bWwgWyBG
YWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUt
aGFsZi1mbG9hdC13aXRoLXZpZGVvLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZv
cm1hbmNlL3JlbmRlcmluZy9tYW55LWRyYXctY2FsbHMuaHRtbCBbIFRpbWVvdXQgXQogd2ViZ2wv
MS4wLjMvY29uZm9ybWFuY2Uvc3RhdGUvZ2wtb2JqZWN0LWdldC1jYWxscy5odG1sIFsgVGltZW91
dCBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy9nbC1waXhlbHN0b3JlaS5odG1s
IFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2Ut
YW5kLXN1Yi1pbWFnZS0yZC13aXRoLWNhbnZhcy1yZ2I1NjUuaHRtbCBbIEZhaWx1cmUgXQogd2Vi
Z2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQt
d2l0aC1jYW52YXMtcmdiYTQ0NDQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9y
bWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC1jYW52YXMtcmdi
YTU1NTEuaHRtbCBbIEZhaWx1cmUgXQpAQCAtMjQxLDIxICsyMzAsMTEgQEAgd2ViZ2wvMS4wLjMv
Y29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC12aWRl
by1yZ2I1NjUuaHQKIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1h
bmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdiYTQ0NDQuaHRtbCBbIEZhaWx1cmUgXQogd2Vi
Z2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQt
d2l0aC12aWRlby1yZ2JhNTU1MS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3Jt
YW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1h
bmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFzLXJnYjU2NS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFn
ZS0yZC13aXRoLXdlYmdsLWNhbnZhcy1yZ2JhNDQ0NC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8x
LjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRo
LXdlYmdsLWNhbnZhcy1yZ2JhNTU1MS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25m
b3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXdlYmdsLWNh
bnZhcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90
ZXgtaW1hZ2Utd2ViZ2wuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2Uv
dGV4dHVyZXMvdGV4cGFyYW1ldGVyLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMv
Y29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4dHVyZS1hY3RpdmUtYmluZC0yLmh0bWwgWyBGYWlsdXJl
IF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleHR1cmUtYWN0aXZlLWJpbmQu
aHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdW5pZm9ybXMvdW5pZm9y
bS1zYW1wbGVycy10ZXN0Lmh0bWwgWyBUaW1lb3V0IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
L2NhbnZhcy9jYW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZS9jYW52YXMvZHJhdy1zdGF0aWMtd2ViZ2wtdG8tbXVsdGlwbGUtY2FudmFzLXRlc3QuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvY2FudmFzL2RyYXctd2ViZ2wt
dG8tY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uv
Y2FudmFzL3RvLWRhdGEtdXJsLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UvY29udGV4dC9jb250ZXh0LWF0dHJpYnV0ZS1wcmVzZXJ2ZS1kcmF3aW5nLWJ1ZmZl
ci5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jb250ZXh0L3ByZW11
bHRpcGx5YWxwaGEtdGVzdC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZS9leHRlbnNpb25zL29lcy10ZXh0dXJlLWZsb2F0LXdpdGgtY2FudmFzLmh0bWwgWyBGYWlsdXJl
IF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUtZmxvYXQt
d2l0aC12aWRlby5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9leHRl
bnNpb25zL29lcy10ZXh0dXJlLWhhbGYtZmxvYXQtd2l0aC1jYW52YXMuaHRtbCBbIEZhaWx1cmUg
XQpAQCAtMjczLDcgKzI1Miw2IEBAIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL2lt
YWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcmdiLXJnYi11CiB3ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4
LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgt
MmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbCBbIEZhaWx1cmUgXQogd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0
bWFwL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9taXNjL2dsLXBpeGVsc3RvcmVp
Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL21pc2Mv
dGV4LWltYWdlLXdlYmdsLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
L3RleHR1cmVzL21pc2MvdGV4dHVyZS1hY3RpdmUtYmluZC0yLmh0bWwgWyBGYWlsdXJlIF0KIHdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL21pc2MvdGV4dHVyZS1hY3RpdmUtYmluZC5o
dG1sIFsgRmFpbHVyZSBdCkBAIC0yODIsMTEgKzI2MCw2IEBAIHdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yZ2ItcmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0
bWwKIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yZ2JhLXJn
YmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZS90ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQu
aHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvdmlkZW8v
dGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdi
LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiLXJnYi11bnNpZ25lZF9zaG9ydF81
XzZfNS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQt
cmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhLXJnYmEt
dW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZS91bmlmb3Jtcy91bmlmb3JtLXNhbXBsZXJzLXRlc3QuaHRtbCBbIFRpbWVvdXQgXQog
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3JlYWRpbmcvcmVhZC1waXhlbHMtcGFjay1wYXJhbWV0
ZXJzLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi9zdGF0ZS9nbC1v
YmplY3QtZ2V0LWNhbGxzLmh0bWwgWyBUaW1lb3V0IF0KQEAgLTM1Miw3MiArMzI1LDYgQEAgd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhcy90ZXgtM2QtcmdiYTgtcmdiYS11
bnNpZ25lZF9ieXRlLmh0bWwgWwogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2Nh
bnZhcy90ZXgtM2QtcmdiYTh1aS1yZ2JhX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFp
bHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzL3RleC0zZC1z
cmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzL3RleC0zZC1zcmdiOF9hbHBoYTgtcmdiYS11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLWZsb2F0Lmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNf
c3ViX3JlY3RhbmdsZS90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLWhhbGZfZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItdW5zaWduZWRfaW50XzEwZl8xMWZf
MTFmX3Jldi5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXIxNmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rh
bmdsZS90ZXgtMmQtcjE2Zi1yZWQtaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXIz
MmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcjgtcmVkLXVuc2lnbmVkX2J5dGUu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZh
c19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yOHVpLXJlZF9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19z
dWJfcmVjdGFuZ2xlL3RleC0yZC1yZzE2Zi1yZy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJk
LXJnMTZmLXJnLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZzMyZi1yZy1mbG9h
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnOC1yZy11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rh
bmdsZS90ZXgtMmQtcmc4dWktcmdfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rhbmds
ZS90ZXgtMmQtcmdiMTZmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjE2Zi1y
Z2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjMyZi1yZ2ItZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19z
dWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFu
Z2xlL3RleC0yZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rhbmds
ZS90ZXgtMmQtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0y
ZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4
LTJkLXJnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2I4dWkt
cmdiX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjlfZTUt
cmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiOV9lNS1yZ2ItaGFsZl9mbG9hdC5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFz
X3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYmExNmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUv
dGV4LTJkLXJnYmExNmYtcmdiYS1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdi
YTMyZi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiYTQtcmdiYS11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiYTQtcmdiYS11bnNpZ25lZF9zaG9ydF80
XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNf
c3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiYTh1aS1yZ2JhX2ludGVnZXItdW5zaWduZWRfYnl0ZS5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFz
X3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXNyZ2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rh
bmdsZS90ZXgtMmQtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5n
bGUvdGV4LTNkLXIxMWZfZzExZl9iMTBmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNk
LXIxMWZfZzExZl9iMTBmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjEx
Zl9nMTFmX2IxMGYtcmdiLXVuc2lnbmVkX2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFu
Z2xlL3RleC0zZC1yMTZmLXJlZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXIxNmYtcmVk
LWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yMzJmLXJlZC1mbG9hdC5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9y
ZWN0YW5nbGUvdGV4LTNkLXI4LXJlZC11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgt
M2Qtcjh1aS1yZWRfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qt
cmcxNmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZzE2Zi1yZy1oYWxmX2Zsb2F0
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52
YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmczMmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0zZC1yZzgtcmctdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnOHVpLXJn
X2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjE2Zi1yZ2It
ZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2IxNmYtcmdiLWhhbGZfZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0zZC1yZ2IzMmYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qt
cmdiNTY1LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiNTY1LXJn
Yi11bnNpZ25lZF9zaG9ydF81XzZfNS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjVfYTEtcmdi
YS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiNV9hMS1yZ2JhLXVuc2ln
bmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I4LXJnYi11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiOHVpLXJnYl9pbnRlZ2VyLXVuc2lnbmVk
X2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I5X2U1LXJnYi1mbG9hdC5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0
YW5nbGUvdGV4LTNkLXJnYjlfZTUtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0z
ZC1yZ2JhMTZmLXJnYmEtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2JhMTZmLXJnYmEt
aGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4
dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYmEzMmYtcmdiYS1mbG9hdC5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1
Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYmE0LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5n
bGUvdGV4LTNkLXJnYmE0LXJnYmEtdW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5n
bGUvdGV4LTNkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNk
LXJnYmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0z
ZC1zcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXNyZ2I4X2Fs
cGhhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQt
cjExZl9nMTFmX2IxMGYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTJk
LXIxMWZfZzExZl9iMTBmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAv
dGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0
bWwgWyBGYWlsdXJlIF0KQEAgLTU1MCw2OCArNDU3LDYgQEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL3ZpZGVvL3RleC0zZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBb
IEYKIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy92aWRlby90ZXgtM2QtcmdiYTh1
aS1yZ2JhX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTNkLXNyZ2I4LXJnYi11bnNpZ25lZF9i
eXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy92
aWRlby90ZXgtM2Qtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0y
ZC1yMTFmX2cxMWZfYjEwZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjExZl9nMTFmX2IxMGYt
cmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLXVuc2lnbmVk
X2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjE2Zi1yZWQtZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZh
cy90ZXgtMmQtcjE2Zi1yZWQtaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yMzJmLXJlZC1mbG9h
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0yZC1yOC1yZWQtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yOHVp
LXJlZF9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmcxNmYtcmctZmxvYXQu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmds
X2NhbnZhcy90ZXgtMmQtcmcxNmYtcmctaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZzMyZi1y
Zy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZzgtcmctdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0y
ZC1yZzh1aS1yZ19pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiMTZmLXJn
Yi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2IxNmYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgt
MmQtcmdiMzJmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX2J5
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtMmQtcmdiNTY1LXJnYi11bnNpZ25lZF9zaG9ydF81XzZfNS5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFz
L3RleC0yZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2I1X2Ex
LXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2I4LXJnYi11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjh1aS1yZ2JfaW50ZWdlci11bnNpZ25lZF9ieXRl
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJn
bF9jYW52YXMvdGV4LTJkLXJnYmExNmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhMTZm
LXJnYmEtaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhMzJmLXJnYmEtZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZh
cy90ZXgtMmQtcmdiYTQtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmE0LXJn
YmEtdW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhOC1yZ2JhLXVuc2ln
bmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiYTh1aS1yZ2JhX2ludGVnZXItdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0yZC1zcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1z
cmdiOF9hbHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXIxMWZfZzExZl9i
MTBmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9h
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItdW5zaWduZWRfaW50XzEwZl8xMWZf
MTFmX3Jldi5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yMTZmLXJlZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yMTZm
LXJlZC1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXIzMmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTNkLXI4LXJlZC11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXI4dWktcmVkX2ludGVnZXIt
dW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZzE2Zi1yZy1mbG9hdC5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0z
ZC1yZzE2Zi1yZy1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnMzJmLXJnLWZsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52
YXMvdGV4LTNkLXJnOC1yZy11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnOHVpLXJnX2lu
dGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2IxNmYtcmdiLWZsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52
YXMvdGV4LTNkLXJnYjE2Zi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2IzMmYtcmdi
LWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjU2NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0zZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjVf
YTEtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjVfYTEtcmdiYS11bnNpZ25l
ZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtM2QtcmdiOHVpLXJnYl9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgt
M2QtcmdiYTE2Zi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmExNmYtcmdiYS1oYWxmX2Zs
b2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmEzMmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2Jh
NC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiYTQtcmdiYS11bnNpZ25lZF9z
aG9ydF80XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2Fu
dmFzL3RleC0zZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTNkLXNyZ2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXNyZ2I4X2FscGhhOC1y
Z2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvbWFueS1jb250ZXh0cy1h
Y2Nlc3MtYWZ0ZXItbG9zcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC9tYXgtYWN0aXZlLWNvbnRl
eHRzLWNvbnNvbGUtd2FybmluZy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC9tYXgtYWN0aXZlLWNv
bnRleHRzLWdjLmh0bWwgWyBGYWlsdXJlIF0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420663</attachid>
            <date>2021-02-17 10:15:06 -0800</date>
            <delta_ts>2021-02-18 01:32:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221811-20210217201504.patch</filename>
            <type>text/plain</type>
            <size>71492</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjExYTJmM2RmMTMwN2Jj
Y2M2MzM4OTMyNTY3NmQxNzQ5YTgyYWY1MS4uNTNjYTk1YWE1YjMxMTI0ZmZmMzIxY2EwNDU0OWEx
YmYwOGJiZDUzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDIxLTAyLTEyICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgY29udGV4
dHMgZG8gbm90IHdvcmsgYXMgc291cmNlIGZvciBDb250ZXh0MkQgZHJhd0ltYWdlIGNhbGxzIGlu
IEdQVSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjE4MTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJbXBsZW1lbnRzIHJ1ZGltZW50YXJ5IHN1cHBvcnQgZm9yIHJlYWRpbmcgdGhlIFdlYkdM
IGNvbnRleHQgYW5kIHRyYW5zZmVyaW5nCisgICAgICAgIGl0IHRvIGEgSW1hZ2VCdWZmZXIuCisK
KyAgICAgICAgRml4ZXMgbWFueSB0ZXN0cyB0aGF0IGFyZSByZW1vdmVkIGZyb20gZ3B1LXByb2Nl
c3MvVGVzdEV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIGh0bWwvT2Zmc2NyZWVuQ2FudmFzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6dHJhbnNmZXJUb0ltYWdlQml0
bWFwKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnBhaW50UmVu
ZGVyaW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHRHTC5oOgorICAgICAgICBNYWtlIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2Fu
dmFzIGFuZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMKKyAgICAgICAgdGFrZSBJbWFn
ZUJ1ZmZlciYgaW5zdGVhZCBvZiBJbWFnZUJ1ZmZlciosIHNpbmNlIHRoZSBidWZmZXIgYWx3YXlz
CisgICAgICAgIGV4aXN0cy4KKworICAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9H
cmFwaGljc0NvbnRleHRHTENhaXJvLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgQ2hhbmdlIHRoZSBmdW5j
dGlvbiBzaWduYXR1cmUgc28gdGhhdCBpdCBjYW4gYmUgY2FsbGVkIGZyb20KKyAgICAgICAgb3Ro
ZXIgdGhyZWFkIGFuZCB3aXRob3V0IEdyYXBoaWNzQ29udGV4dEdMIGluc3RhbmNlLgorICAgICAg
ICBJdCBpcyBub3QgcmVhbGx5IGEgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wgcmVsYXRlZCBmdW5j
dGlvbi4uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6ZGlzcGxheUJ1ZmZlciBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1
ZmZlcik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBD
aGFpbjo6ZGV0YWNoQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdM
SU9TdXJmYWNlU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW06CisgICAgICAgIChXZWJHTExh
eWVyU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgTW92ZSB0aGUgdHJpcGxlIGJ1ZmZlcmlu
ZyBpbXBsZW1lbnRhdGlvbiB0byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgVGhlIGltcGxlbWVu
dGF0aW9uIGlzIG5vdyBhbHNvIHVzZWQgaW4gR1BVIHByb2Nlc3Mgc2lkZSwKKyAgICAgICAgc2lu
Y2UgdGhlIEdQVSBwcm9jZXNzIG5lZWRzIHRvIGJlIGFibGUgdG8gcmVhZCB0aGUgY29tcG9zaXRl
ZAorICAgICAgICByZXN1bHRzLgorCisgICAgICAgIFByZXZpb3VzbHkgdGhlIHNhbWUgbG9naWMg
d2FzIHNwbGl0IGJldHdlZW4gV2ViIHByb2Nlc3MgYW5kIEdQVSBwcm9jZXNzLgorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmlu
Z1Jlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9w
ZW5HTDo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0ltYWdlRGF0
YSk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cmVhZFJlbmRl
cmluZ1Jlc3VsdHNGb3JQYWludGluZyk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTE9wZW5HTDo6cmVhZENvbXBvc2l0ZWRSZXN1bHRzRm9yUGFpbnRpbmcpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5oOgorCisg
ICAgICAgIEV4cG9zZSBwdWJsaWMgZnVuY3Rpb25zIHRvIGdldCBJbWFnZURhdGEgb3V0IG9mIGRy
YXdpbmcgYnVmZmVyIGFuZAorICAgICAgICBkaXNwbGF5IGJ1ZmZlci4KKwogMjAyMS0wMi0xNyAg
Um9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEltcHJvdmUgcGVyY2VudGFn
ZSBoZWlnaHQgaW4gc2hvdWxkQ29tcHV0ZUxvZ2ljYWxXaWR0aEZyb21Bc3BlY3RSYXRpbwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZwppbmRleCAxOWQ2ZTU4NGY3N2YyOGI5NzMyZDVhMzhmMTJiNjA4Nzk1MmJkNWQ5Li4xMjU2MWIz
NzU2NTA0ZGZkZTc5OWVkYjA3ZDQ1MDdlNmMwYzVjMGEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDc1
IEBACisyMDIxLTAyLTEyICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisK
KyAgICAgICAgV2ViR0wgY29udGV4dHMgZG8gbm90IHdvcmsgYXMgc291cmNlIGZvciBDb250ZXh0
MkQgZHJhd0ltYWdlIGNhbGxzIGluIEdQVSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE4MTEKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIHJ1ZGltZW50YXJ5IHN1cHBvcnQg
Zm9yIHJlYWRpbmcgdGhlIFdlYkdMIGNvbnRleHQgYW5kIHRyYW5zZmVyaW5nCisgICAgICAgIGl0
IHRvIGEgSW1hZ2VCdWZmZXIuCisKKyAgICAgICAgRml4ZXMgbWFueSB0ZXN0cyB0aGF0IGFyZSBy
ZW1vdmVkIGZyb20gZ3B1LXByb2Nlc3MvVGVzdEV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIEdQ
VVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6
OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKToKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaDoKKyAgICAgICAg
KFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZFdyYXBwZXI6OmdldCBjb25zdCk6CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3Mv
UmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFw
aGljc0NvbnRleHRHTDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0w6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKToKKyAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
Q2hyb21lQ2xpZW50OjpjcmVhdGVHcmFwaGljc0NvbnRleHRHTCBjb25zdCk6CisgICAgICAgICog
R1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZSk6CisgICAgICAg
IChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OlJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMQ29jb2EpOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJl
bmRlcmluZ0JhY2tlbmRQcm94eS5oOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVSZW5kZXJpbmdC
YWNrZW5kUHJveHk6OnJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyIGNvbnN0KToKKworICAgICAg
ICBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCB0YWtlcyBhIHJlZiBvZiB0aGUgcmVzcGVjdGl2ZSBS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kLgorICAgICAgICBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kIGlz
IHRoZSBvbmUgdGhhdCBjYW4gaGFuZGxlIEltYWdlQnVmZmVycy4KKworICAgICAgICAoV2ViS2l0
OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMp
OgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6cGFpbnRDb21wb3Np
dGVkUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250
ZXh0R0w6OnBhaW50SW1hZ2VEYXRhVG9JbWFnZUJ1ZmZlcik6CisgICAgICAgICogR1BVUHJvY2Vz
cy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5oOgorICAgICAgICAqIEdQVVByb2Nl
c3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wubWVzc2FnZXMuaW46CisKKyAgICAg
ICAgSW1wbGVtZW50IHRoZSBmdW5jdGlvbnMgYnk6CisgICAgICAgICAxKSBXYWl0IGZvciB0aGUg
cGVuZGluZyBjaGFuZ2VzIHRvIHRoZSBJbWFnZUJ1ZmZlcgorICAgICAgICAgMikgU2VuZCBhIHN5
bmNocm9ub3VzIG1lc3NhZ2UgZnJvbSBXZWIgcHJvY2VzcyB0byBHUFUgcHJvY2VzcyBXZWJHTCBz
ZXF1ZW5jZQorICAgICAgICAgMykgUmVhZGluZyB0aGUgYnVmZmVyLCBwb3N0IHRoZSB0YXNrIHRv
IFJlbmRlcmluZ0JhY2tlbmQgc2VxdWVuY2UKKyAgICAgICAgIDQpIFBhaW50IHRoZSByZXN1bHRz
IHRvIHRoZSBJbWFnZUJ1ZmZlcgorICAgICAgICAgNSkgUmV0dXJuIHRoZSBzeW5jaHJvbm91cyBt
ZXNzYWdlIHJlc3VsdAorCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
Q29jb2E6OnByZXBhcmVGb3JEaXNwbGF5KToKKworICAgICAgICBSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTCBub3cgcmV0YWlucyB0aGUgcmVmZXJlbmNlIHRvIGRpc3BsYXkgYnVmZmVyLgorICAgICAg
ICBCZWZvcmUsIGp1c3Qgc2VudCB0aGUgZGlzcGxheSBidWZmZXIgdG8gV2ViIHByb2Nlc3MgYW5k
IGZvcmdvdAorICAgICAgICBhYm91dCBpdC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhp
Y3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZVJl
bmRlcmluZ0JhY2tlbmQ6OmRpc3BhdGNoKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNz
L1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaDoKKworICAgICAgICBBZGQgZnVuY3Rpb24gdG8gZGlz
cGF0Y2ggd29yayB0byByZW5kZXJpbmcgYmFja2VuZCBzZXF1ZW5jZS4KKworICAgICAgICAqIFdl
YlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpSZW1vdGVHcmFw
aGljc0NvbnRleHRHTFByb3h5KToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMpOgorICAgICAgICAoV2Vi
S2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpwYWludENvbXBvc2l0ZWRSZXN1bHRz
VG9DYW52YXMpOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBo
aWNzQ29udGV4dEdMUHJveHkuaDoKKworICAgICAgICBTZW5kIHRoZSBtZXNzYWdlcy4KKworICAg
ICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94
eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6Y29u
bmVjdFRvR1BVUHJvY2Vzcyk6CisKKyAgICAgICAgVXNlIElQQzo6U2VuZE9wdGlvbjo6RGlzcGF0
Y2hNZXNzYWdlRXZlbldoZW5XYWl0aW5nRm9yU3luY1JlcGx5IHRvCisgICAgICAgIHNlbmQgQ3Jl
YXRlUmVuZGVyaW5nQmFja2VuZC4gSXQgbXVzdCBiZSBkaXNwYXRjaGVkIGluIG9yZGVyIGNvbXBh
cmVkIHRvIG90aGVyCisgICAgICAgIG1lc3NhZ2VzIHN1Y2ggYXMgQ3JlYXRlUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0wuCisKIDIwMjEtMDItMTcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNp
YUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI3MjYzNikgW0dUS10gQ3Jhc2gg
YW5kIGZhaWx1cmVzIGluIEFQSSB0ZXN0IC9XZWJLaXQyR3RrL1Rlc3RSZXNvdXJjZXMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcAppbmRleCA2ZmEwNGRjMzU1Zjg2Y2VlMzBi
ZThkYzM5M2UzMDUyZWUzMWM2Mzc1Li4xOGU4ZWViNWQ4YTI0YTEzZTEwOTM2NDc2ZWUwMGY3ZmU5
YjJkNzE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwCkBAIC0yODQs
NyArMjg0LDcgQEAgRXhjZXB0aW9uT3I8UmVmUHRyPEltYWdlQml0bWFwPj4gT2Zmc2NyZWVuQ2Fu
dmFzOjp0cmFuc2ZlclRvSW1hZ2VCaXRtYXAoKQogICAgICAgICAgICAgcmV0dXJuIHsgUmVmUHRy
PEltYWdlQml0bWFwPiB7IG51bGxwdHIgfSB9OwogCiAgICAgICAgIGF1dG8qIGdjM2QgPSB3ZWJH
TENvbnRleHQtPmdyYXBoaWNzQ29udGV4dEdMKCk7Ci0gICAgICAgIGdjM2QtPnBhaW50UmVuZGVy
aW5nUmVzdWx0c1RvQ2FudmFzKGltYWdlQml0bWFwLT5idWZmZXIoKSk7CisgICAgICAgIGdjM2Qt
PnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKCppbWFnZUJpdG1hcC0+YnVmZmVyKCkpOwog
CiAgICAgICAgIC8vIEZJWE1FOiBUaGUgdHJhbnNmZXIgYWxnb3JpdGhtIHJlcXVpcmVzIHRoYXQg
dGhlIGNhbnZhcyBlZmZlY3RpdmVseQogICAgICAgICAvLyBjcmVhdGVzIGEgbmV3IGJhY2tpbmcg
c3RvcmUuIFNpbmNlIHdlJ3JlIG5vdCBkb2luZyB0aGF0IHlldCwgd2UKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAK
aW5kZXggMzgxNTliZmI3MTg4ZGI3OTM2ODZiNjJiYzYyOTc3MmNiODYxODkzYy4uZGVhN2MyNjgw
ODU2ZWJmYjQ2OWVmYTlhZGZiNWFiMjVlYWEzYzg0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKQEAgLTEy
MTAsNyArMTIxMCw3IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRSZW5k
ZXJpbmdSZXN1bHRzVG9DYW52YXMoKQogICAgICAgICAgICAgYXV0byYgYmFzZSA9IGNhbnZhc0Jh
c2UoKTsKICAgICAgICAgICAgIGJhc2UuY2xlYXJDb3BpZWRJbWFnZSgpOwogICAgICAgICAgICAg
bV9tYXJrZWRDYW52YXNEaXJ0eSA9IGZhbHNlOwotICAgICAgICAgICAgbV9jb250ZXh0LT5wYWlu
dENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoYmFzZS5idWZmZXIoKSk7CisgICAgICAgICAgICBt
X2NvbnRleHQtPnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcygqYmFzZS5idWZmZXIoKSk7
CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEyMjUsNyArMTIyNSw3IEBA
IHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9D
YW52YXMoKQogCiAgICAgbV9tYXJrZWRDYW52YXNEaXJ0eSA9IGZhbHNlOwogCi0gICAgbV9jb250
ZXh0LT5wYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhiYXNlLmJ1ZmZlcigpKTsKKyAgICBt
X2NvbnRleHQtPnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKCpiYXNlLmJ1ZmZlcigpKTsK
IH0KIAogUmVmUHRyPEltYWdlRGF0YT4gV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRS
ZW5kZXJpbmdSZXN1bHRzVG9JbWFnZURhdGEoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0wuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmgKaW5kZXggMDAyNjI0NWU0Nzk3Mjdk
ZWZjYzAxMWU2ZThhMWZkYzU0ZTMzMWM2ZS4uZjdkYzhhZWMxYjBiMzdmYWJhNTM2Y2Q0N2NjMDI1
ZjU5N2YwMzc5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
R3JhcGhpY3NDb250ZXh0R0wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9HcmFwaGljc0NvbnRleHRHTC5oCkBAIC0xMjkxLDkgKzEyOTEsOSBAQCBwdWJsaWM6CiAgICAg
Ly8gRklYTUU6IHRoZXNlIHNob3VsZCBiZSByZW1vdmVkLCB0aGV5J3JlIHBhcnQgb2YgZHJhd2lu
ZyBidWZmZXIgYW5kCiAgICAgLy8gZGlzcGxheSBidWZmZXIgYWJzdHJhY3Rpb25zIHRoYXQgdGhl
IGNhbGxlciBzaG91bGQgaG9sZCBzZXBhcmF0ZSB0bwogICAgIC8vIHRoZSBjb250ZXh0LgotICAg
IHZpcnR1YWwgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciop
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoSW1h
Z2VCdWZmZXImKSA9IDA7CiAgICAgdmlydHVhbCBSZWZQdHI8SW1hZ2VEYXRhPiBwYWludFJlbmRl
cmluZ1Jlc3VsdHNUb0ltYWdlRGF0YSgpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGFpbnRDb21w
b3NpdGVkUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXImKSA9IDA7CiAKICAg
ICAvLyBGSVhNRTogdGhpcyBzaG91bGQgYmUgcmVtb3ZlZC4gVGhlIGxheWVyIHNob3VsZCBiZSBt
YXJrZWQgY29tcG9zaXRlZCBieQogICAgIC8vIHByZXBhcmluZyBmb3IgZGlzcGxheSwgc28gdGhh
dCBjYW52YXMgaW1hZ2UgYnVmZmVyIGFuZCB0aGUgbGF5ZXIgYWdyZWUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dEdMQ2Fp
cm8uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3ND
b250ZXh0R0xDYWlyby5jcHAKaW5kZXggNTZmNmIxYTcwMWIyMDBjOTg2OGQyODJmMDdjMzc2ZGEx
MTBjZTI1ZS4uNWI4ZDhiNWYxYWUyYzFmYjZiNGViMThiODVmMGEyNWM4YTU3NDdjYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250
ZXh0R0xDYWlyby5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fp
cm8vR3JhcGhpY3NDb250ZXh0R0xDYWlyby5jcHAKQEAgLTEwNiw3ICsxMDYsNyBAQCBib29sIEdy
YXBoaWNzQ29udGV4dEdMSW1hZ2VFeHRyYWN0b3I6OmV4dHJhY3RJbWFnZShib29sIHByZW11bHRp
cGx5QWxwaGEsIGJvb2wgaQogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIEdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBj
b25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQpCit2b2lk
IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKGNvbnN0IEdyYXBoaWNzQ29u
dGV4dEdMQXR0cmlidXRlcyYgc291cmNlQ29udGV4dEF0dHJpYnV0ZXMsIFJlZjxJbWFnZURhdGE+
JiYgaW1hZ2VEYXRhLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQm
IGNvbnRleHQpCiB7CiAgICAgQVNTRVJUKCFpbWFnZURhdGEtPnNpemUoKS5pc0VtcHR5KCkpOwog
ICAgIGlmIChjYW52YXNTaXplLmlzRW1wdHkoKSkKQEAgLTEyMiw3ICsxMjIsNyBAQCB2b2lkIEdy
YXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1h
Z2VEYXRhLCBjb25zdCBJbgogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdG90YWxCeXRlczsg
aSArPSA0KQogICAgICAgICBzdGQ6OnN3YXAocGl4ZWxzW2ldLCBwaXhlbHNbaSArIDJdKTsKIAot
ICAgIGlmICghY29udGV4dEF0dHJpYnV0ZXMoKS5wcmVtdWx0aXBsaWVkQWxwaGEpIHsKKyAgICBp
ZiAoIXNvdXJjZUNvbnRleHRBdHRyaWJ1dGVzLnByZW11bHRpcGxpZWRBbHBoYSkgewogICAgICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRvdGFsQnl0ZXM7IGkgKz0gNCkgewogICAgICAgICAg
ICAgcGl4ZWxzW2kgKyAwXSA9IHN0ZDo6bWluKDI1NSwgcGl4ZWxzW2kgKyAwXSAqIHBpeGVsc1tp
ICsgM10gLyAyNTUpOwogICAgICAgICAgICAgcGl4ZWxzW2kgKyAxXSA9IHN0ZDo6bWluKDI1NSwg
cGl4ZWxzW2kgKyAxXSAqIHBpeGVsc1tpICsgM10gLyAyNTUpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0R0xDRy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNw
cAppbmRleCA1ZGVkM2EwODdkYTMyYzg1MDMwZDhkYjg1MjI5NTc5YTQ5OWQyODExLi4zOWQyYzAx
NzY4YjY4N2JlYTQ3Yzk0NDNlNmEwNGZjNDVkZGIyYzJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNw
cApAQCAtNTExLDE4ICs1MTEsMTcgQEAgc3RhdGljIHZvaWQgcmVsZWFzZUltYWdlRGF0YSh2b2lk
KiBpbWFnZURhdGEsIGNvbnN0IHZvaWQqLCBzaXplX3QpCiAgICAgcmVpbnRlcnByZXRfY2FzdDxJ
bWFnZURhdGEqPihpbWFnZURhdGEpLT5kZXJlZigpOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4
dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBjb25z
dCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQpCit2b2lkIEdy
YXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKGNvbnN0IEdyYXBoaWNzQ29udGV4
dEdMQXR0cmlidXRlcyYgc291cmNlQ29udGV4dEF0dHJpYnV0ZXMsIFJlZjxJbWFnZURhdGE+JiYg
aW1hZ2VEYXRhLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNv
bnRleHQpCiB7CiAgICAgQVNTRVJUKCFpbWFnZURhdGEtPnNpemUoKS5pc0VtcHR5KCkpOwogICAg
IGlmIChjYW52YXNTaXplLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwotICAgIGF1dG8gYXR0
cnMgPSBjb250ZXh0QXR0cmlidXRlcygpOwogICAgIC8vIElucHV0IGlzIEdMX1JHQkEgPT0ga0NH
Qml0bWFwQnl0ZU9yZGVyMzJCaWcgfCBrQ0dJbWFnZUFscGhhKkxhc3QuCiAgICAgLy8gR0xfQkdS
QSB3b3VsZCBiZSBrQ0dCaXRtYXBCeXRlT3JkZXIzMkxpdHRsZSB8IGtDR0ltYWdlQWxwaGEqRmly
c3QuCiAgICAgQ0dCaXRtYXBJbmZvIGJpdG1hcEluZm8gPSBrQ0dCaXRtYXBCeXRlT3JkZXIzMkJp
ZzsKLSAgICBpZiAoIWF0dHJzLmFscGhhKQorICAgIGlmICghc291cmNlQ29udGV4dEF0dHJpYnV0
ZXMuYWxwaGEpCiAgICAgICAgIGJpdG1hcEluZm8gfD0ga0NHSW1hZ2VBbHBoYU5vbmVTa2lwTGFz
dDsKLSAgICBlbHNlIGlmIChhdHRycy5wcmVtdWx0aXBsaWVkQWxwaGEpCisgICAgZWxzZSBpZiAo
c291cmNlQ29udGV4dEF0dHJpYnV0ZXMucHJlbXVsdGlwbGllZEFscGhhKQogICAgICAgICBiaXRt
YXBJbmZvIHw9IGtDR0ltYWdlQWxwaGFQcmVtdWx0aXBsaWVkTGFzdDsKICAgICBlbHNlCiAgICAg
ICAgIGJpdG1hcEluZm8gfD0ga0NHSW1hZ2VBbHBoYUxhc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFj
ZVN3YXBDaGFpbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9H
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHAKaW5kZXggOTNjZTQ3MzIxNjI4
ZjFmNjA3MjQyMWE3NmJjNjBjZTFiYzUzZGFiMy4uOWM0MDI3MjFkYjVmZDY0Nzg2YTJlNmEyYmE0
ZmU0MjA0ZjY1MGJmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9T
dXJmYWNlU3dhcENoYWluLmNwcApAQCAtMzIsNiArMzIsMzIgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6fkdyYXBoaWNzQ29udGV4
dEdMSU9TdXJmYWNlU3dhcENoYWluKCkgPSBkZWZhdWx0OwogCitjb25zdCBHcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6QnVmZmVyJiBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFj
ZVN3YXBDaGFpbjo6ZGlzcGxheUJ1ZmZlcigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fZGlzcGxh
eUJ1ZmZlcjsKK30KKworR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZl
ciBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1ZmZlcigpCit7
CisgICAgaWYgKG1fc3BhcmVCdWZmZXIuc3VyZmFjZSkgeworICAgICAgICBpZiAobV9zcGFyZUJ1
ZmZlci5zdXJmYWNlLT5pc0luVXNlKCkpCisgICAgICAgICAgICBtX3NwYXJlQnVmZmVyLnN1cmZh
Y2UucmVzZXQoKTsKKyAgICAgICAgcmV0dXJuIFdURk1vdmUobV9zcGFyZUJ1ZmZlcik7CisgICAg
fQorICAgIHJldHVybiB7IH07Cit9CisKK3ZvaWQqIEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNl
U3dhcENoYWluOjpkZXRhY2hDbGllbnQoKQoreworICAgIEFTU0VSVCghbV9zcGFyZUJ1ZmZlci5z
dXJmYWNlKTsKKyAgICByZXR1cm4gc3RkOjpleGNoYW5nZShtX2Rpc3BsYXlCdWZmZXIuaGFuZGxl
LCBudWxscHRyKTsKK30KKwordm9pZCBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFp
bjo6cHJlc2VudChCdWZmZXImJiBidWZmZXIpCit7CisgICAgbV9zcGFyZUJ1ZmZlciA9IHN0ZDo6
ZXhjaGFuZ2UobV9kaXNwbGF5QnVmZmVyLCBXVEZNb3ZlKGJ1ZmZlcikpOworfQorCiB9CiAKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2Ev
R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWlu
LmgKaW5kZXggNGRlZDhlNWY5NDk4MjY3MTc0NmM5ZTdmNTMzYWFjNmIxOGFjNmIwYS4uZTQzN2Q3
ZGYwZWU4NDEzOWVhZmUzZTJmZDcyNzE5OGI4ZjYxYTA2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VT
d2FwQ2hhaW4uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9H
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oCkBAIC01OCwxOSArNTgsMjMgQEAg
cHVibGljOgogICAgIC8vIC0gQnVmZmVyIHdpdGggZW1wdHkgc3VyZmFjZSBhbmQgbm9uLWVtcHR5
IG1ldGFkYXRhIGhhbmRsZSBpZiB0aGUgcmVjeWNsZWQgYnVmZmVyIHdhcyBhdmFpbGFibGUKICAg
ICAvLyAgIGJ1dCB0aGUgc3VyZmFjZSBpcyBzdGlsbCBpbiB1c2UuCiAgICAgLy8gLSBTdXJmYWNl
IGFuZCBoYW5kbGUuCi0gICAgdmlydHVhbCBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpID0gMDsKKyAg
ICB2aXJ0dWFsIEJ1ZmZlciByZWN5Y2xlQnVmZmVyKCk7CiAKICAgICAvLyBQcmVwYXJlcyB0aGUg
dGFyZ2V0IGZvciBkaXNwbGF5IHdpdGggYSBjb250ZW50cyBidWZmZXIuCi0gICAgdmlydHVhbCB2
b2lkIHByZXNlbnQoQnVmZmVyKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHByZXNlbnQoQnVmZmVy
JiYpOwogCiAgICAgLy8gUmV0dXJucyB0aGUgbW9zdCByZWNlbnQgcHJlc2VudGVkIGRpc3BsYXkg
YnVmZmVyLiBUaGUgcmVmZXJlbmNlIGlzIHZhbGlkIHVudGlsCiAgICAgLy8gbmV4dCBwcmVzZW50
LCByZWN5Y2xlQnVmZmVyIG9yIGRldGFjaENsaWVudCBjYWxsLgotICAgIHZpcnR1YWwgY29uc3Qg
QnVmZmVyJiBkaXNwbGF5QnVmZmVyKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgY29uc3QgQnVm
ZmVyJiBkaXNwbGF5QnVmZmVyKCkgY29uc3Q7CiAKICAgICAvLyBEZXRhY2hlcyB0aGUgY2xpZW50
IGFuZCByZXR1cm5zIHRoZSBjdXJyZW50IGNvbnRlbnRzIGJ1ZmZlciBtZXRhZGF0YSBoYW5kbGUu
CiAgICAgLy8gVGhlIGlmIG11bHRpcGxlIGJ1ZmZlcnMgaGF2ZSBiZWVuIHN1Ym1pdHRlZCwgcmVj
eWNsZUJ1ZmZlciBtdXN0IGhhdmUgYmVlbiBjYWxsZWQgYmVmb3JlIGNhbGxpbmcKICAgICAvLyB0
aGlzLgotICAgIHZpcnR1YWwgdm9pZCogZGV0YWNoQ2xpZW50KCkgPSAwOworICAgIHZpcnR1YWwg
dm9pZCogZGV0YWNoQ2xpZW50KCk7CisKK3Byb3RlY3RlZDoKKyAgICBCdWZmZXIgbV9kaXNwbGF5
QnVmZmVyOworICAgIEJ1ZmZlciBtX3NwYXJlQnVmZmVyOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbSBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KaW5kZXgg
MDMxMzhlZjE0MzA5ODhkNzE1YTk4Yjc3NzdkM2E1Mzg4YTMyOTlhYS4uMzcxYjlhOTEzYWNmZmY3
OTE3MjYxYjNkMDhiNDlkOGZmMTQ4NDQ3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLm1tCkBAIC0zOCwzMSArMzgsMTAgQEAg
Y2xhc3MgV2ViR0xMYXllclN3YXBDaGFpbiBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXAKIHB1YmxpYzoKICAgICBleHBsaWNpdCBXZWJHTExheWVy
U3dhcENoYWluKFdlYkdMTGF5ZXIqIGxheWVyKSAgOiBtX2xheWVyKGxheWVyKSB7IH07CiAgICAg
fldlYkdMTGF5ZXJTd2FwQ2hhaW4oKSBvdmVycmlkZSA9IGRlZmF1bHQ7Ci0gICAgdm9pZCBwcmVz
ZW50KEJ1ZmZlcikgb3ZlcnJpZGU7Ci0gICAgY29uc3QgQnVmZmVyJiBkaXNwbGF5QnVmZmVyKCkg
Y29uc3Qgb3ZlcnJpZGUKLSAgICB7Ci0gICAgICAgIHJldHVybiBtX2Rpc3BsYXlCdWZmZXI7Ci0g
ICAgfQotICAgIEJ1ZmZlciByZWN5Y2xlQnVmZmVyKCkgb3ZlcnJpZGUKLSAgICB7Ci0gICAgICAg
IGlmIChtX3NwYXJlQnVmZmVyLnN1cmZhY2UpIHsKLSAgICAgICAgICAgIGlmIChtX3NwYXJlQnVm
ZmVyLnN1cmZhY2UtPmlzSW5Vc2UoKSkKLSAgICAgICAgICAgICAgICBtX3NwYXJlQnVmZmVyLnN1
cmZhY2UucmVzZXQoKTsKLSAgICAgICAgICAgIHJldHVybiBXVEZNb3ZlKG1fc3BhcmVCdWZmZXIp
OwotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB7IH07Ci0gICAgfQotICAgIHZvaWQqIGRldGFj
aENsaWVudCgpIG92ZXJyaWRlCi0gICAgewotICAgICAgICBBU1NFUlQoIW1fc3BhcmVCdWZmZXIu
c3VyZmFjZSk7Ci0gICAgICAgIHZvaWQqIHJlc3VsdCA9IG1fZGlzcGxheUJ1ZmZlci5oYW5kbGU7
Ci0gICAgICAgIG1fZGlzcGxheUJ1ZmZlci5oYW5kbGUgPSBudWxscHRyOwotICAgICAgICByZXR1
cm4gcmVzdWx0OwotICAgIH0KKyAgICB2b2lkIHByZXNlbnQoQnVmZmVyJiYpIG92ZXJyaWRlOwor
CiAgICAgV2ViQ29yZTo6SU9TdXJmYWNlKiBkaXNwbGF5U3VyZmFjZSgpIHsgcmV0dXJuIG1fZGlz
cGxheUJ1ZmZlci5zdXJmYWNlLmdldCgpOyB9CiBwcml2YXRlOgotICAgIEJ1ZmZlciBtX2Rpc3Bs
YXlCdWZmZXI7Ci0gICAgQnVmZmVyIG1fc3BhcmVCdWZmZXI7CiAgICAgV2ViR0xMYXllciogY29u
c3QgbV9sYXllcjsKIH07CiAKQEAgLTEzMCwxMSArMTA5LDEwIEBAIHByaXZhdGU6CiAKIEBlbmQK
IAotdm9pZCBXZWJHTExheWVyU3dhcENoYWluOjpwcmVzZW50KEJ1ZmZlciBidWZmZXIpCit2b2lk
IFdlYkdMTGF5ZXJTd2FwQ2hhaW46OnByZXNlbnQoQnVmZmVyJiYgYnVmZmVyKQogewogICAgIEFT
U0VSVCghbV9zcGFyZUJ1ZmZlci5zdXJmYWNlKTsKLSAgICBtX3NwYXJlQnVmZmVyID0gV1RGTW92
ZShtX2Rpc3BsYXlCdWZmZXIpOwotICAgIG1fZGlzcGxheUJ1ZmZlciA9IFdURk1vdmUoYnVmZmVy
KTsKKyAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cHJl
c2VudChXVEZNb3ZlKGJ1ZmZlcikpOwogICAgIFttX2xheWVyIHByZXBhcmVGb3JEaXNwbGF5XTsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3Blbmds
L0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAKaW5kZXggODg2NzAxNTIy
ODQ2MzBjNzRiZDdiNDM3ZTVhYzg3MDY4MzYzYjExYS4uOGRlZDZlNTEwYWJjNzNkNjdkOWJkMmY1
ZWYzNDczYWQ1YjFkZTQwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuY3Bw
CkBAIC0xOTYsNyArMTk2LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cHJlcGFy
ZUZvckRpc3BsYXkoKQogfQogI2VuZGlmCiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6
OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKiBpbWFnZUJ1ZmZlcikK
K3ZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2Fu
dmFzKEltYWdlQnVmZmVyJiBpbWFnZUJ1ZmZlcikKIHsKICAgICBpZiAoIW1ha2VDb250ZXh0Q3Vy
cmVudCgpKQogICAgICAgICByZXR1cm47CkBAIC0yMDUsMTAgKzIwNSwxMCBAQCB2b2lkIEdyYXBo
aWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1
ZmZlciogaW1hZ2VCdQogICAgIGF1dG8gaW1hZ2VEYXRhID0gcmVhZFJlbmRlcmluZ1Jlc3VsdHMo
KTsKICAgICBpZiAoIWltYWdlRGF0YSkKICAgICAgICAgcmV0dXJuOwotICAgIHBhaW50VG9DYW52
YXMoaW1hZ2VEYXRhLnJlbGVhc2VOb25OdWxsKCksIGltYWdlQnVmZmVyLT5iYWNrZW5kU2l6ZSgp
LCBpbWFnZUJ1ZmZlci0+Y29udGV4dCgpKTsKKyAgICBwYWludFRvQ2FudmFzKGNvbnRleHRBdHRy
aWJ1dGVzKCksIGltYWdlRGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci5iYWNrZW5k
U2l6ZSgpLCBpbWFnZUJ1ZmZlci5jb250ZXh0KCkpOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4
dEdMT3BlbkdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXIqIGlt
YWdlQnVmZmVyKQordm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3NpdGVk
UmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyJiBpbWFnZUJ1ZmZlcikKIHsKICAgICBpZiAoIW1h
a2VDb250ZXh0Q3VycmVudCgpKQogICAgICAgICByZXR1cm47CkBAIC0yMTcsMjIgKzIxNywzNiBA
QCB2b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9D
YW52YXMoSW1hZ2VCdWZmZXIqIGltYWdlQgogICAgIGF1dG8gaW1hZ2VEYXRhID0gcmVhZENvbXBv
c2l0ZWRSZXN1bHRzKCk7CiAgICAgaWYgKCFpbWFnZURhdGEpCiAgICAgICAgIHJldHVybjsKLSAg
ICBwYWludFRvQ2FudmFzKGltYWdlRGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci0+
YmFja2VuZFNpemUoKSwgaW1hZ2VCdWZmZXItPmNvbnRleHQoKSk7CisgICAgcGFpbnRUb0NhbnZh
cyhjb250ZXh0QXR0cmlidXRlcygpLCBpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1hZ2VC
dWZmZXIuYmFja2VuZFNpemUoKSwgaW1hZ2VCdWZmZXIuY29udGV4dCgpKTsKIH0KIAogUmVmUHRy
PEltYWdlRGF0YT4gR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50UmVuZGVyaW5nUmVzdWx0
c1RvSW1hZ2VEYXRhKCkKIHsKLSAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVudCgpKQotICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKLSAgICBpZiAoZ2V0SW50ZXJuYWxGcmFtZWJ1ZmZlclNpemUoKS5p
c0VtcHR5KCkpCi0gICAgICAgIHJldHVybiBudWxscHRyOwogICAgIC8vIFJlYWRpbmcgcHJlbXVs
dGlwbGllZCBhbHBoYSB3b3VsZCBpbnZvbHZlIHVucHJlbXVsdGlwbHlpbmcsIHdoaWNoIGlzCiAg
ICAgLy8gbG9zc3kuCiAgICAgaWYgKGNvbnRleHRBdHRyaWJ1dGVzKCkucHJlbXVsdGlwbGllZEFs
cGhhKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gcmVhZFJlbmRlcmluZ1Jl
c3VsdHNGb3JQYWludGluZygpOworfQorCitSZWZQdHI8SW1hZ2VEYXRhPiBHcmFwaGljc0NvbnRl
eHRHTE9wZW5HTDo6cmVhZFJlbmRlcmluZ1Jlc3VsdHNGb3JQYWludGluZygpCit7CisgICAgaWYg
KCFtYWtlQ29udGV4dEN1cnJlbnQoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWYg
KGdldEludGVybmFsRnJhbWVidWZmZXJTaXplKCkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4g
bnVsbHB0cjsKICAgICByZXR1cm4gcmVhZFJlbmRlcmluZ1Jlc3VsdHMoKTsKIH0KIAorUmVmUHRy
PEltYWdlRGF0YT4gR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRDb21wb3NpdGVkUmVzdWx0
c0ZvclBhaW50aW5nKCkKK3sKKyAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVudCgpKQorICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKyAgICBpZiAoZ2V0SW50ZXJuYWxGcmFtZWJ1ZmZlclNpemUoKS5p
c0VtcHR5KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiByZWFkQ29tcG9z
aXRlZFJlc3VsdHMoKTsKK30KKwogI2lmICFQTEFURk9STShDT0NPQSkKIFJlZlB0cjxJbWFnZURh
dGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpyZWFkQ29tcG9zaXRlZFJlc3VsdHMoKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBo
aWNzQ29udGV4dEdMT3BlbkdMLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9v
cGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaAppbmRleCA1ODY4NTA4NDk4ZTVlNjRkODgx
ZDk2MTRlNjc3ODA5YjgyZGNlMDBhLi5lNDRiZmQ1ZDlmOGFkOWQ3YzUyNzYwMWEyNTJhNzcwZWQ0
Zjk3OTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVu
Z2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaApAQCAtNDU4LDkgKzQ1
OCwxMiBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaXNwYXRjaENvbnRleHRDaGFuZ2VkTm90aWZpY2F0
aW9uKCk7CiAgICAgdm9pZCBzaW11bGF0ZUNvbnRleHRDaGFuZ2VkKCkgZmluYWw7CiAKLSAgICB2
b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikgZmluYWw7Cisg
ICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYpIGZpbmFs
OwogICAgIFJlZlB0cjxJbWFnZURhdGE+IHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvSW1hZ2VEYXRh
KCkgZmluYWw7Ci0gICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VC
dWZmZXIqKSBmaW5hbDsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhJ
bWFnZUJ1ZmZlciYpIGZpbmFsOworCisgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZFJlbmRlcmlu
Z1Jlc3VsdHNGb3JQYWludGluZygpOworICAgIFJlZlB0cjxJbWFnZURhdGE+IHJlYWRDb21wb3Np
dGVkUmVzdWx0c0ZvclBhaW50aW5nKCk7CiAKICNpZiBVU0UoT1BFTkdMKSAmJiBFTkFCTEUoV0VC
R0wyKQogICAgIHZvaWQgcHJpbWl0aXZlUmVzdGFydEluZGV4KEdDR0x1aW50KTsKQEAgLTUxNSw2
ICs1MTgsOCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgcG9zc2libGVGb3JtYXRBbmRUeXBl
Rm9ySW50ZXJuYWxGb3JtYXQoR0NHTGVudW0gaW50ZXJuYWxGb3JtYXQsIEdDR0xlbnVtJiBmb3Jt
YXQsIEdDR0xlbnVtJiB0eXBlKTsKICNlbmRpZiAvLyAhVVNFKEFOR0xFKQogCisgICAgc3RhdGlj
IHZvaWQgcGFpbnRUb0NhbnZhcyhjb25zdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBS
ZWY8SW1hZ2VEYXRhPiYmLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRl
eHQmKTsKKwogcHJpdmF0ZToKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBHcmFwaGljc0NvbnRl
eHRHTE9wZW5HTChHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEhvc3RXaW5kb3cqLCBHcmFw
aGljc0NvbnRleHRHTE9wZW5HTCogc2hhcmVkQ29udGV4dCA9IG51bGxwdHIsIEdyYXBoaWNzQ29u
dGV4dEdMSU9TdXJmYWNlU3dhcENoYWluKiA9IG51bGxwdHIpOwpAQCAtNTQyLDcgKzU0Nyw2IEBA
IHByaXZhdGU6CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZFJlbmRlcmluZ1Jlc3VsdHMoKTsK
ICAgICBSZWZQdHI8SW1hZ2VEYXRhPiByZWFkQ29tcG9zaXRlZFJlc3VsdHMoKTsKICAgICBSZWZQ
dHI8SW1hZ2VEYXRhPiByZWFkUGl4ZWxzRm9yUGFpbnRSZXN1bHRzKCk7Ci0gICAgdm9pZCBwYWlu
dFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYsIGNvbnN0IEludFNpemUmIGNhbnZhc1NpemUsIEdy
YXBoaWNzQ29udGV4dCYpOwogCiAgICAgYm9vbCByZXNoYXBlRkJPcyhjb25zdCBJbnRTaXplJik7
CiAgICAgdm9pZCBwcmVwYXJlVGV4dHVyZUltcGwoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAppbmRleCBkNTc3ZTQz
NDk5ZjE4MTQ3OTFjOGEwZWY3MWNiMzRhMDI0YTFmYWUyLi5lMTY3ZWMwMjY0NDIwNTY5ODdiZTk4
ZTU0Nzk2YzYzMTY1NTk2MTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCkBAIC0zMzcsMTAgKzMzNywxNCBAQCBH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3JhcHBlcjo6
flJlbW90ZVJlbmRlcmluZ0JhY2tlbgogfQogCiAjaWYgRU5BQkxFKFdFQkdMKQotdm9pZCBHUFVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjcmVhdGVHcmFwaGljc0NvbnRleHRHTChXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMgYXR0cmlidXRlcywgR3JhcGhpY3NDb250ZXh0R0xJ
ZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcikKK3ZvaWQgR1BVQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0woV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmll
ciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVy
IHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogeworICAgIGF1dG8qIHJlbmRlcmluZ0JhY2tl
bmQgPSBtX3JlbW90ZVJlbmRlcmluZ0JhY2tlbmRNYXAuZ2V0KHJlbmRlcmluZ0JhY2tlbmRJZGVu
dGlmaWVyKTsKKyAgICBpZiAoIXJlbmRlcmluZ0JhY2tlbmQpCisgICAgICAgIHJldHVybjsKKwog
ICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9yZW1vdGVHcmFwaGljc0NvbnRleHRHTE1hcC5lbnN1cmUo
Z3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBbJl0oKSB7Ci0gICAgICAgIHJldHVybiBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKGF0dHJpYnV0ZXMsICp0aGlzLCBncmFwaGljc0Nv
bnRleHRHTElkZW50aWZpZXIpOworICAgICAgICByZXR1cm4gUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0w6OmNyZWF0ZShhdHRyaWJ1dGVzLCAqdGhpcywgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVy
LCByZW5kZXJpbmdCYWNrZW5kLT5nZXQoKSk7CiAgICAgfSk7CiAgICAgQVNTRVJUX1VOVVNFRChh
ZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCmluZGV4IGViYjBkMDA4
ZjNkNzEyOTIxN2I4ZTk2ZWZhMTliZDUxZmZhZmExNjcuLjVlODIwMzM1N2Y3ODFmZGMwNTNlMTVk
Y2M4ZmM4ZTE1OTYwNDRlNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9H
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaApAQCAtMTM4LDcgKzEzOCw3IEBAIHByaXZhdGU6
CiAgICAgdm9pZCByZWxlYXNlUmVuZGVyaW5nQmFja2VuZChSZW5kZXJpbmdCYWNrZW5kSWRlbnRp
Zmllcik7CiAKICNpZiBFTkFCTEUoV0VCR0wpCi0gICAgdm9pZCBjcmVhdGVHcmFwaGljc0NvbnRl
eHRHTChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEdyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllcik7CisgICAgdm9pZCBjcmVhdGVHcmFwaGljc0NvbnRleHRHTChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmll
ciwgUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIpOwogICAgIHZvaWQgcmVsZWFzZUdyYXBoaWNz
Q29udGV4dEdMKEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcik7CiAjZW5kaWYKIApAQCAtMjEx
LDcgKzIxMSw3IEBAIHByaXZhdGU6CiAgICAgcHVibGljOgogICAgICAgICBSZW1vdGVSZW5kZXJp
bmdCYWNrZW5kV3JhcHBlcihSZWY8UmVtb3RlUmVuZGVyaW5nQmFja2VuZD4mJik7CiAgICAgICAg
IH5SZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3JhcHBlcigpOwotCisgICAgICAgIFJlbW90ZVJlbmRl
cmluZ0JhY2tlbmQmIGdldCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVtb3RlUmVuZGVyaW5nQmFja2Vu
ZC5nZXQoKTsgfQogICAgIHByaXZhdGU6CiAgICAgICAgIFJlZjxSZW1vdGVSZW5kZXJpbmdCYWNr
ZW5kPiBtX3JlbW90ZVJlbmRlcmluZ0JhY2tlbmQ7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmlu
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVz
c2FnZXMuaW4KaW5kZXggMzBmNWMyOTg4NjIxNGY5MTA0ZjFhZmEwODM1YjIzOGEzNmRjNmVmMS4u
MmI2OGUzYjA4N2E5MzVkMTllYjFkNzk3YmJlODNhZDlkMzgwNDgwMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVzc2FnZXMu
aW4KKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MubWVzc2FnZXMuaW4KQEAgLTI2LDcgKzI2LDcgQEAgbWVzc2FnZXMgLT4gR1BVQ29ubmVjdGlv
blRvV2ViUHJvY2VzcyBXYW50c0Rpc3BhdGNoTWVzc2FnZSB7CiAgICAgdm9pZCBDcmVhdGVSZW5k
ZXJpbmdCYWNrZW5kKFdlYktpdDo6UmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIgaWRlbnRpZmll
ciwgSVBDOjpTZW1hcGhvcmUgcmVzdW1lRGlzcGxheUxpc3RTZW1hcGhvcmUpCiAgICAgdm9pZCBS
ZWxlYXNlUmVuZGVyaW5nQmFja2VuZChXZWJLaXQ6OlJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVy
IHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogI2lmIEVOQUJMRShXRUJHTCkKLSAgICB2b2lk
IENyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKHN0cnVjdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TEF0dHJpYnV0ZXMgYXR0cmlidXRlcywgV2ViS2l0OjpHcmFwaGljc0NvbnRleHRHTElkZW50aWZp
ZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKQorICAgIHZvaWQgQ3JlYXRlR3JhcGhpY3ND
b250ZXh0R0woc3RydWN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyBhdHRy
aWJ1dGVzLCBXZWJLaXQ6OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRl
eHRHTElkZW50aWZpZXIsIFdlYktpdDo6UmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIgcmVuZGVy
aW5nQmFja2VuZElkZW50aWZpZXIpCiAgICAgdm9pZCBSZWxlYXNlR3JhcGhpY3NDb250ZXh0R0wo
V2ViS2l0OjpHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVu
dGlmaWVyKQogI2VuZGlmCiAgICAgdm9pZCBDbGVhck5vd1BsYXlpbmdJbmZvKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRl
eHRHTC5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0wuY3BwCmluZGV4IDc5YjM0NTk2ZmJmMmQwZGZjOTgxODY1MWJkY2ZlYjRiMGEw
Yzg3NWQuLmZmYWFjMDkxOWQxYzVjMWUxZjg1YjFkOTY3ZDliODRlMzEzYzk2ZWEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRl
eHRHTC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdy
YXBoaWNzQ29udGV4dEdMLmNwcApAQCAtMzksMTcgKzM5LDE4IEBAIG5hbWVzcGFjZSBXZWJLaXQg
ewogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKICNpZiAhUExBVEZPUk0oQ09DT0EpCi1zdGQ6
OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMOjpjcmVhdGUoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBh
dHRyaWJ1dGVzLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBncHVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVu
dGlmaWVyKQorc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBSZW1vdGVH
cmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdM
QXR0cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzcywgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllciwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYpCiB7CiAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAjZW5kaWYKIAotUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0w6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKGNvbnN0IFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlv
blRvV2ViUHJvY2VzcyYgZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcywgR3JhcGhpY3NDb250ZXh0
R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgUmVmPEdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMPiBjb250ZXh0KQorUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OlJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRl
cyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgZ3B1Q29ubmVjdGlvblRv
V2ViUHJvY2VzcywgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdM
SWRlbnRpZmllciwgUmVmPEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMPiBjb250ZXh0LCBSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kJiByZW5kZXJpbmdCYWNrZW5kKQogICAgIDogbV9jb250ZXh0KFdURk1v
dmUoY29udGV4dCkpCiAgICAgLCBtX2dwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MobWFrZVdlYWtQ
dHIoZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcykpCiAgICAgLCBtX2dyYXBoaWNzQ29udGV4dEdM
SWRlbnRpZmllcihncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpCisgICAgLCBtX3JlbmRlcmlu
Z0JhY2tlbmQobWFrZVJlZihyZW5kZXJpbmdCYWNrZW5kKSkKIHsKICAgICBpZiAoYXV0byogZ3B1
Q29ubmVjdGlvblRvV2ViUHJvY2VzcyA9IG1fZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy5nZXQo
KSkKICAgICAgICAgZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2Vzcy0+bWVzc2FnZVJlY2VpdmVyTWFw
KCkuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6
bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIudG9VSW50
NjQoKSwgKnRoaXMpOwpAQCAtMTM3LDYgKzEzOCw0NSBAQCB2b2lkIFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMOjpub3RpZnlNYXJrQ29udGV4dENoYW5nZWQoKQogICAgIG1fY29udGV4dC0+bWFya0Nv
bnRleHRDaGFuZ2VkKCk7CiB9CiAKK3ZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OnBhaW50
UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRp
ZmllciBidWZmZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgcGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKG1fY29udGV4
dC0+cmVhZFJlbmRlcmluZ1Jlc3VsdHNGb3JQYWludGluZygpLCBidWZmZXJJZGVudGlmaWVyLCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0w6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdS
ZXNvdXJjZUlkZW50aWZpZXIgYnVmZmVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHBhaW50SW1hZ2VEYXRhVG9JbWFnZUJ1
ZmZlcihtX2NvbnRleHQtPnJlYWRDb21wb3NpdGVkUmVzdWx0c0ZvclBhaW50aW5nKCksIGJ1ZmZl
cklkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTDo6cGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKFJlZlB0cjxX
ZWJDb3JlOjpJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJj
ZUlkZW50aWZpZXIgYnVmZmVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIC8vIFRPRE86IFdlIGRvIG5vdCBoYXZlIGZ1bmN0
aW9uaW5nIHJlYWQvd3JpdGUgZmVuY2VzIGluIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQuIFRodXMg
dGhpcyBpcyBzeW5jaHJvbm91cywKKyAgICAvLyBhcyBpcyB0aGUgbWVzc2FnZXMgdGhhdCBjYWxs
IHRoZXNlLgorICAgIExvY2sgbXV0ZXg7CisgICAgQ29uZGl0aW9uIGNvbmRpdGlvblZhcmlhYmxl
OworICAgIGJvb2wgaXNGaW5pc2hlZCA9IGZhbHNlOworICAgIG1fcmVuZGVyaW5nQmFja2VuZC0+
ZGlzcGF0Y2goWyZdKCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIGltYWdlQnVmZmVyID0g
bV9yZW5kZXJpbmdCYWNrZW5kLT5yZW1vdGVSZXNvdXJjZUNhY2hlKCkuY2FjaGVkSW1hZ2VCdWZm
ZXIoYnVmZmVySWRlbnRpZmllcikpIHsKKyAgICAgICAgICAgIC8vIE5vdGU6IGhlcmUgd2UgZG8g
bm90IHRyeSB0byBwbGF5IGJhY2sgcGVuZGluZyBjb21tYW5kcyBmb3IgaW1hZ2VCdWZmZXIuIEN1
cnJlbnRseSB0aGlzIGNhbGwgaXMgb25seSBtYWRlIGZvciBlbXB0eQorICAgICAgICAgICAgLy8g
aW1hZ2UgYnVmZmVycyBhbmQgdGhlcmUncyBubyBnb29kIHdheSB0byBhZGQgZGlzcGxheSBsaXN0
cy4KKyAgICAgICAgICAgIGlmIChpbWFnZURhdGEpCisgICAgICAgICAgICAgICAgR3JhcGhpY3ND
b250ZXh0R0xPcGVuR0w6OnBhaW50VG9DYW52YXMobV9jb250ZXh0LT5jb250ZXh0QXR0cmlidXRl
cygpLCBpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1hZ2VCdWZmZXItPmJhY2tlbmRTaXpl
KCksIGltYWdlQnVmZmVyLT5jb250ZXh0KCkpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAg
ICAgICAgIGltYWdlQnVmZmVyLT5jb250ZXh0KCkuY2xlYXJSZWN0KHsgSW50UG9pbnQoKSwgaW1h
Z2VCdWZmZXItPmJhY2tlbmRTaXplKCkgfSk7CisgICAgICAgICAgICAvLyBVbmZvcnR1bmF0ZWx5
ICJmbHVzaCIgaW1wbGVtZW50YXRpb24gaW4gUmVtb3RlUmVuZGVyaW5nQmFja2VuZCBvdmVybG9h
ZHMgb3JkZXJpbmcgYW5kIGVmZmVjdHMuCisgICAgICAgICAgICBpbWFnZUJ1ZmZlci0+Zmx1c2hD
b250ZXh0KCk7CisgICAgICAgIH0KKyAgICAgICAgYXV0byBsb2NrZXIgPSBob2xkTG9jayhtdXRl
eCk7CisgICAgICAgIGlzRmluaXNoZWQgPSB0cnVlOworICAgICAgICBjb25kaXRpb25WYXJpYWJs
ZS5ub3RpZnlPbmUoKTsKKyAgICB9KTsKKyAgICBzdGQ6OnVuaXF1ZV9sb2NrPExvY2s+IGxvY2so
bXV0ZXgpOworICAgIGNvbmRpdGlvblZhcmlhYmxlLndhaXQobG9jaywgWyZdIHsKKyAgICAgICAg
cmV0dXJuIGlzRmluaXNoZWQ7CisgICAgfSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmggYi9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaApp
bmRleCAwMDE1OWFjOGI1ODZhOGI2MmEzZGRhM2E1NzAwNGU4ODNlMTU2ZDA4Li5hYWE1NzQ5ZDBi
YzU0NjQ2YjJjMWY4ZjRjMzllNThiZGE5NjFlODRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaApA
QCAtMzEsNyArMzEsNyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllci5o
IgogI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgogI2luY2x1ZGUgIk1lc3NhZ2VTZW5kZXIu
aCIKLQorI2luY2x1ZGUgIlJlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaCIKICNpbmNsdWRlIDxXZWJD
b3JlL0V4dGVuc2lvbnNHTC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0wuaD4KICNpbmNsdWRlIDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CkBAIC01OCwxNCAr
NTgsMTUgQEAgY2xhc3MgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wKICAgICA6IHB1YmxpYyBJUEM6
Ok1lc3NhZ2VTZW5kZXIKICAgICAsIHByaXZhdGUgSVBDOjpNZXNzYWdlUmVjZWl2ZXIKICAgICAs
IHByaXZhdGUgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6OkNsaWVudCB7CisgICAgV1RGX01B
S0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTD4gY3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMQXR0cmlidXRlcyYsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBHcmFwaGljc0Nv
bnRleHRHTElkZW50aWZpZXIpOworICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0w+IGNyZWF0ZShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0
dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJ
ZGVudGlmaWVyLCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kJik7CiAgICAgflJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMKCkgb3ZlcnJpZGU7CiAKICAgICBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzKiBn
cHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzKCkgY29uc3Q7CiAKIHByb3RlY3RlZDoKLSAgICBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMmLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVu
dGlmaWVyLCBSZWY8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w+KTsKKyAgICBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMmLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVu
dGlmaWVyLCBSZWY8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w+LCBSZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kJik7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VTZW5kZXIgb3ZlcnJpZGVzLgog
ICAgIElQQzo6Q29ubmVjdGlvbiogbWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKSBjb25zdCBmaW5h
bDsKQEAgLTkyLDEyICs5MywxNyBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYKICAgICB2b2lkIGdldEVy
cm9yKENvbXBsZXRpb25IYW5kbGVyPHZvaWQodWludDMyX3QpPiYmKTsKICAgICB2b2lkIHN5bnRo
ZXNpemVHTEVycm9yKHVpbnQzMl90IGVycm9yKTsKKyAgICB2b2lkIHBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNU
b0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoKT4mJik7CiAKICNpbmNsdWRlICJSZW1vdGVHcmFwaGljc0NvbnRleHRHTEZ1
bmN0aW9uc0dlbmVyYXRlZC5oIiAvLyBOT0xJTlQKIAorICAgIHZvaWQgcGFpbnRJbWFnZURhdGFU
b0ltYWdlQnVmZmVyKFJlZlB0cjxXZWJDb3JlOjpJbWFnZURhdGE+JiYsIFdlYkNvcmU6OlJlbmRl
cmluZ1Jlc291cmNlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKwog
ICAgIFJlZjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTD4gbV9jb250ZXh0OwogICAg
IFdlYWtQdHI8R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcz4gbV9ncHVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOwogICAgIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBtX2dyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllcjsKKyAgICBSZWY8UmVtb3RlUmVuZGVyaW5nQmFja2VuZD4gbV9yZW5kZXJp
bmdCYWNrZW5kOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wubWVz
c2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0wubWVzc2FnZXMuaW4KaW5kZXggN2ExOTI1ZGJiMjdhYmYzZDMwMzRjYjdmY2Iz
OGEzZjM5M2UzZGNmYS4uNDJjMjk3ZDlhNTNhNDdkNTlkMmE4OGIyYjQ0ZGRlNmVmNzUyY2YyNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBo
aWNzQ29udGV4dEdMLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9n
cmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5tZXNzYWdlcy5pbgpAQCAtMzYsNiArMzYs
OSBAQCBtZXNzYWdlcyAtPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBOb3RSZWZDb3VudGVkIHsK
ICAgICB2b2lkIE5vdGlmeU1hcmtDb250ZXh0Q2hhbmdlZCgpCiAgICAgdm9pZCBTeW50aGVzaXpl
R0xFcnJvcih1aW50MzJfdCBlcnJvcikKICAgICB2b2lkIEdldEVycm9yKCkgLT4gKHVpbnQzMl90
IHJldHVyblZhbHVlKSBTeW5jaHJvbm91cworICAgIHZvaWQgUGFpbnRSZW5kZXJpbmdSZXN1bHRz
VG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIHJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcikgLT4gKCkgU3luY2hyb25vdXMKKyAgICB2b2lkIFBhaW50Q29tcG9z
aXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIg
cmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKSAtPiAoKSBTeW5jaHJvbm91cworCiAKICAgICB2
b2lkIFNldEZhaWxOZXh0R1BVU3RhdHVzQ2hlY2soKQogICAgIHZvaWQgTW92ZUVycm9yc1RvU3lu
dGhldGljRXJyb3JMaXN0KCkgLT4gKGJvb2wgcmV0dXJuVmFsdWUpIFN5bmNocm9ub3VzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xDb2NvYS5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5jcHAKaW5kZXggOGUyZDFmYzY1MTg2MjgzOTVlOTc0
MWM0NGU3YWM4NTFiMDhlZjYyNy4uMTkxOWFiNGNjZDE0NTg2YjdjMjNiZjQzZmM3ODEyMjhkN2U0
Zjk0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hLmNwcApAQCAtMzcsNjMgKzM3
LDM1IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgewogCi1jbGFzcyBS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hIGZpbmFsIDogcHVibGljIFJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMLCBwcml2YXRlIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dh
cENoYWluIHsKK2NsYXNzIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EgZmluYWwgOiBwdWJs
aWMgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wgewogcHVibGljOgotICAgIFJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMQ29jb2EoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVz
JiwgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmll
cik7CisgICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYShjb25zdCBXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgR3Jh
cGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kJik7CiAgICAg
flJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoKSBmaW5hbCA9IGRlZmF1bHQ7CiAKICAgICAv
LyBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBvdmVycmlkZXMuCiAgICAgdm9pZCBwcmVwYXJlRm9y
RGlzcGxheShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdURjo6TWFjaFNlbmRSaWdodCYmKT4mJikg
ZmluYWw7Ci0KLSAgICAvLyBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiBvdmVy
cmlkZXMuCi0gICAgQnVmZmVyIHJlY3ljbGVCdWZmZXIoKSBmaW5hbDsKLSAgICB2b2lkIHByZXNl
bnQoQnVmZmVyKSBmaW5hbDsKLSAgICBjb25zdCBCdWZmZXImIGRpc3BsYXlCdWZmZXIoKSBjb25z
dCBmaW5hbDsKLSAgICB2b2lkKiBkZXRhY2hDbGllbnQoKSBmaW5hbDsKIHByaXZhdGU6Ci0gICAg
R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZlciBtX2Rpc3BsYXlCdWZm
ZXI7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4gbV9z
d2FwQ2hhaW47CiB9OwogCiB9CiAKLXN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTD4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShjb25zdCBXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29udGV4dEdMSWRlbnRp
ZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpCi17Ci0gICAgcmV0dXJuIHN0ZDo6dW5p
cXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTD4obmV3IFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMQ29jb2EoYXR0cmlidXRlcywgZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcywgZ3JhcGhpY3ND
b250ZXh0R0xJZGVudGlmaWVyKSk7Ci19Ci0KLVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6
OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBj
b25uZWN0aW9uLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgaWRlbnRpZmllcikKLSAgICA6
IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKGF0dHJpYnV0ZXMsIGNvbm5lY3Rpb24sIGlkZW50aWZp
ZXIsIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpjcmVhdGVGb3JHUFVQcm9jZXNzKGF0dHJpYnV0
ZXMsIHRoaXMpKQotewotfQotCi1HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6
QnVmZmVyIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OnJlY3ljbGVCdWZmZXIoKQotewot
ICAgIHJldHVybiBXVEZNb3ZlKG1fZGlzcGxheUJ1ZmZlcik7Ci19Ci0KLXZvaWQgUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0xDb2NvYTo6cHJlc2VudChCdWZmZXIgYnVmZmVyKQotewotICAgIEFTU0VS
VCghbV9kaXNwbGF5QnVmZmVyLnN1cmZhY2UpOwotICAgIG1fZGlzcGxheUJ1ZmZlciA9IFdURk1v
dmUoYnVmZmVyKTsKLX0KLQotY29uc3QgR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hh
aW46OkJ1ZmZlciYgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6ZGlzcGxheUJ1ZmZlcigp
IGNvbnN0CitzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IFJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMOjpjcmVhdGUoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xB
dHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBncHVDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3ND
b250ZXh0R0xJZGVudGlmaWVyLCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kJiByZW5kZXJpbmdCYWNr
ZW5kKQogewotICAgIHJldHVybiBtX2Rpc3BsYXlCdWZmZXI7CisgICAgcmV0dXJuIG1ha2VVbmlx
dWU8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYT4oYXR0cmlidXRlcywgZ3B1Q29ubmVjdGlv
blRvV2ViUHJvY2VzcywgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCByZW5kZXJpbmdCYWNr
ZW5kKTsKIH0KIAotdm9pZCogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6ZGV0YWNoQ2xp
ZW50KCkKK1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2E6OlJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMQ29jb2EoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRy
aWJ1dGVzLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBHcmFwaGljc0Nv
bnRleHRHTElkZW50aWZpZXIgaWRlbnRpZmllciwgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCYgcmVu
ZGVyaW5nQmFja2VuZCkKKyAgICA6IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKGF0dHJpYnV0ZXMs
IGNvbm5lY3Rpb24sIGlkZW50aWZpZXIsIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpjcmVhdGVG
b3JHUFVQcm9jZXNzKGF0dHJpYnV0ZXMsICZtX3N3YXBDaGFpbiksIHJlbmRlcmluZ0JhY2tlbmQp
CiB7Ci0gICAgcmV0dXJuIHN0ZDo6ZXhjaGFuZ2UobV9kaXNwbGF5QnVmZmVyLmhhbmRsZSwgbnVs
bHB0cik7CiB9CiAKIHZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6cHJlcGFyZUZv
ckRpc3BsYXkoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXVEY6Ok1hY2hTZW5kUmlnaHQmJik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgbV9jb250ZXh0LT5wcmVwYXJlRm9yRGlzcGxheSgp
OwotICAgIGF1dG8gZGlzcGxheUJ1ZmZlciA9IFdURk1vdmUobV9kaXNwbGF5QnVmZmVyLnN1cmZh
Y2UpOwogICAgIE1hY2hTZW5kUmlnaHQgc2VuZFJpZ2h0OwotICAgIGlmIChkaXNwbGF5QnVmZmVy
KQotICAgICAgICBzZW5kUmlnaHQgPSBkaXNwbGF5QnVmZmVyLT5jcmVhdGVTZW5kUmlnaHQoKTsK
KyAgICBpZiAoYXV0byogc3VyZmFjZSA9IG1fc3dhcENoYWluLmRpc3BsYXlCdWZmZXIoKS5zdXJm
YWNlLmdldCgpKQorICAgICAgICBzZW5kUmlnaHQgPSBzdXJmYWNlLT5jcmVhdGVTZW5kUmlnaHQo
KTsKICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHNlbmRSaWdodCkpOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5n
QmFja2VuZC5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVu
ZGVyaW5nQmFja2VuZC5jcHAKaW5kZXggMmM3NjI1MTg2YWVlMTVkNzcyYjc2NGJkZDU1OWYwYTFj
MjcwYmQ0MS4uN2NkYzZlYmMzMDY0OGQwMDMxODQ0YmViMjVkYWM0OWJmNGY5ZTY2MiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0Jh
Y2tlbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kLmNwcApAQCAtOTIsNiArOTIsMTEgQEAgdm9pZCBSZW1vdGVSZW5kZXJp
bmdCYWNrZW5kOjpkaXNjb25uZWN0KCkKICAgICBtX2dwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mt
PmNvbm5lY3Rpb24oKS5yZW1vdmVXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJl
bW90ZVJlbmRlcmluZ0JhY2tlbmQ6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9yZW5kZXJpbmdC
YWNrZW5kSWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIH0KIAordm9pZCBSZW1vdGVSZW5kZXJpbmdC
YWNrZW5kOjpkaXNwYXRjaChGdW5jdGlvbjx2b2lkKCk+JiYgdGFzaykKK3sKKyAgICBtX3dvcmtR
dWV1ZS0+ZGlzcGF0Y2goV1RGTW92ZSh0YXNrKSk7Cit9CisKIElQQzo6Q29ubmVjdGlvbiogUmVt
b3RlUmVuZGVyaW5nQmFja2VuZDo6bWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKSBjb25zdAogewog
ICAgIHJldHVybiAmbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLT5jb25uZWN0aW9uKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVy
aW5nQmFja2VuZC5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJl
bmRlcmluZ0JhY2tlbmQuaAppbmRleCBiN2FlZTI2Mjc3MDViYjlhY2MxMDE5ZDcxNTVlZjI3ZTE1
M2QyYjI4Li5lMDU5NmJkZWUyNTI4NWU3Nzk3NDFiMmI2MTYyMmI2MGE3NjY3MzM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFj
a2VuZC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kLmgKQEAgLTgwLDYgKzgwLDkgQEAgcHVibGljOgogCiAgICAgdm9pZCBkaXNj
b25uZWN0KCk7CiAKKyAgICAvLyBSdW5zIEZ1bmN0aW9uIGluIFJlbW90ZVJlbmRlcmluZ0JhY2tl
bmQgdGFzayBxdWV1ZS4KKyAgICB2b2lkIGRpc3BhdGNoKEZ1bmN0aW9uPHZvaWQoKT4mJik7CisK
IHByaXZhdGU6CiAgICAgUmVtb3RlUmVuZGVyaW5nQmFja2VuZChHUFVDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzJiwgUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIsIElQQzo6U2VtYXBob3JlJiYpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90
ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQ
VS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmNwcAppbmRleCBmMjliZTAw
NmViN2I5NzY0Yjc4MmQ5MTYyNWM4MDE2MGZmOGYzNmYzLi41NjM5YjQyYmQ5YmI3ODJkNDA3ZGQx
NjNkZmYwOGZkYTY3NTMwMjE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
R1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQ
cm94eS5jcHAKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTE1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eU1l
c3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgorI2luY2x1ZGUgPFdlYkNvcmUvSW1h
Z2VCdWZmZXIuaD4KIAogI2lmIFBMQVRGT1JNKENPQ09BKQogI2luY2x1ZGUgPFdlYkNvcmUvR3Jh
cGhpY3NDb250ZXh0Q0cuaD4KQEAgLTQzLDE4ICs0NCwxOCBAQCBuYW1lc3BhY2UgV2ViS2l0IHsK
IAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKLVJlZlB0cjxSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTFByb3h5PiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpjcmVhdGUoY29uc3QgR3Jh
cGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVzKQorUmVmUHRyPFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMUHJveHk+IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OmNyZWF0ZShj
b25zdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIFJlbmRlcmluZ0Jh
Y2tlbmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogewotICAgIHJldHVy
biBhZG9wdFJlZihuZXcgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eShXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS5lbnN1cmVHUFVQcm9jZXNzQ29ubmVjdGlvbigpLCBhdHRyaWJ1dGVzKSk7Cisg
ICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KFdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVByb2Nlc3NDb25uZWN0aW9uKCksIGF0dHJpYnV0
ZXMsIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKSk7CiB9CiAKLVJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMUHJveHk6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24mIGdwdVByb2Nlc3NDb25uZWN0aW9uLCBjb25zdCBHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMmIGF0dHJzKQorUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6UmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0xQcm94eShHUFVQcm9jZXNzQ29ubmVjdGlvbiYgZ3B1UHJvY2Vzc0Nvbm5lY3Rp
b24sIGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cnMsIFJlbmRlcmluZ0Jh
Y2tlbmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogICAgIDogUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2UoYXR0cnMpCiAgICAgLCBtX2dwdVByb2Nlc3NDb25u
ZWN0aW9uKCZncHVQcm9jZXNzQ29ubmVjdGlvbikKIHsKICAgICBncHVQcm9jZXNzQ29ubmVjdGlv
bi5hZGRDbGllbnQoKnRoaXMpOwogICAgIGdwdVByb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VSZWNl
aXZlck1hcCgpLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX2dyYXBoaWNzQ29udGV4dEdMSWRl
bnRpZmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Ci0gICAgY29ubmVjdGlvbigpLnNlbmQoTWVzc2Fn
ZXM6OkdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKGF0
dHJzLCBtX2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciksIDAsIElQQzo6U2VuZE9wdGlvbjo6
RGlzcGF0Y2hNZXNzYWdlRXZlbldoZW5XYWl0aW5nRm9yU3luY1JlcGx5KTsKKyAgICBjb25uZWN0
aW9uKCkuc2VuZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Q3JlYXRlR3Jh
cGhpY3NDb250ZXh0R0woYXR0cnMsIG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCByZW5k
ZXJpbmdCYWNrZW5kSWRlbnRpZmllciksIDAsIElQQzo6U2VuZE9wdGlvbjo6RGlzcGF0Y2hNZXNz
YWdlRXZlbldoZW5XYWl0aW5nRm9yU3luY1JlcGx5KTsKIH0KIAogUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eTo6flJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoKQpAQCAtMTMwLDE0ICsx
MzEsMzQgQEAgdm9pZCBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpzaW11bGF0ZUNvbnRl
eHRDaGFuZ2VkKCkKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi12b2lkIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMUHJveHk6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVm
ZmVyKikKK3ZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6cGFpbnRSZW5kZXJpbmdS
ZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXImIGJ1ZmZlcikKIHsKLSAgICBub3RJbXBsZW1lbnRl
ZCgpOworICAgIC8vIEZJWE1FOiB0aGUgYnVmZmVyIGlzICJyZWxhdGl2ZWx5IGVtcHR5IiBhbHdh
eXMsIGJ1dCBmb3IgY29uc2lzdGVuY3ksIHdlIG5lZWQgdG8gZW5zdXJlCisgICAgLy8gbm8gcGVu
ZGluZyBvcGVyYXRpb25zIGFyZSB0YXJnZXRlZCBmb3IgdGhlIGBidWZmZXJgLgorICAgIGJ1ZmZl
ci5mbHVzaERyYXdpbmdDb250ZXh0KCk7CisKKyAgICAvLyBGSVhNRTogV2UgY2Fubm90IHN5bmNo
cm9uaXplIHNvIHRoYXQgd2Ugd291bGQga25vdyBubyBwZW5kaW5nIG9wZXJhdGlvbnMgYXJlIHVz
aW5nIHRoZSBgYnVmZmVyYC4KKworICAgIC8vIEZJWE1FOiBDdXJyZW50bHkgUmVtb3RlSW1hZ2VC
dWZmZXJQcm94eTo6Z2V0SW1hZ2VEYXRhIGV0IGFsIGRvIG5vdCB3YWl0IGZvciB0aGUgZmx1c2hl
cyBvZiB0aGUgaW1hZ2VzCisgICAgLy8gaW5zaWRlIHRoZSBkaXNwbGF5IGxpc3RzLiBSYXRoZXIs
IGl0IGFzc3VtZXMgdGhhdCBwcm9jZXNzaW5nIGl0cyBzZXF1ZW5jZSAoZS5nLiB0aGUgZGlzcGxh
eSBsaXN0KSB3aWxsIGVxdWFsIHRvIHJlYWQgZmx1c2ggYmVpbmcKKyAgICAvLyBmdWxmaWxsZWQu
IEZvciBiZWxvdywgd2UgY2Fubm90IGNyZWF0ZSBhIG5ldyBmbHVzaCBpZCBzaW5jZSB3ZSBnbyB0
aHJvdWdoIGRpZmZlcmVudCBzZXF1ZW5jZSAoUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wgc2VxdWVu
Y2UpCisKKyAgICAvLyBGSVhNRTogTWF5YmUgaW1wbGVtZW50IElQQzo6RmVuY2Ugb3Igc29tZXRo
aW5nIHNpbWlsYXIuCisgICAgYXV0byBzZW5kUmVzdWx0ID0gc2VuZFN5bmMoTWVzc2FnZXM6OlJl
bW90ZUdyYXBoaWNzQ29udGV4dEdMOjpQYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhidWZm
ZXIucmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKCkpLCBNZXNzYWdlczo6UmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0w6OlBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzOjpSZXBseSgpKTsKKyAg
ICBpZiAoIXNlbmRSZXN1bHQpIHsKKyAgICAgICAgbWFya0NvbnRleHRMb3N0KCk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CiB9CiAKLXZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6
cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikKK3ZvaWQgUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eTo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKElt
YWdlQnVmZmVyJiBidWZmZXIpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBidWZmZXIu
Zmx1c2hEcmF3aW5nQ29udGV4dCgpOworICAgIGF1dG8gc2VuZFJlc3VsdCA9IHNlbmRTeW5jKE1l
c3NhZ2VzOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRDb21wb3NpdGVkUmVzdWx0c1Rv
Q2FudmFzKGJ1ZmZlci5yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIoKSksIE1lc3NhZ2VzOjpS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzOjpS
ZXBseSgpKTsKKyAgICBpZiAoIXNlbmRSZXN1bHQpIHsKKyAgICAgICAgbWFya0NvbnRleHRMb3N0
KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CiB9CiAKIHZvaWQgUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eTo6c3ludGhlc2l6ZUdMRXJyb3IoR0NHTGVudW0gZXJyb3IpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5oCmluZGV4IDgzMWI0YjBhYjEzN2U2YWFmODM1OTZl
MGIwYTA3NmRmMWUwOTE3NjEuLjVjZTU3Njc2YjA5MDVhNjU3NDA0MmE5ZjU0MzhhNDcxZmI3ZWY5
OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5oCkBAIC0zMyw2ICsz
Myw3IEBACiAjaW5jbHVkZSAiTWVzc2FnZVNlbmRlci5oIgogI2luY2x1ZGUgIlJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMTWVzc2FnZXMuaCIKICNpbmNsdWRlICJSZW1vdGVSZXNvdXJjZUNhY2hlUHJv
eHkuaCIKKyNpbmNsdWRlICJSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllci5oIgogI2luY2x1ZGUg
IldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogI2luY2x1ZGUgPFdlYkNvcmUvTm90SW1wbGVtZW50
ZWQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNl
Lmg+CkBAIC01MCw3ICs1MSw3IEBAIGNsYXNzIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkg
ZmluYWwKICAgICAsIHByaXZhdGUgR1BVUHJvY2Vzc0Nvbm5lY3Rpb246OkNsaWVudAogICAgICwg
cHVibGljIFdlYkNvcmU6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNlIHsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUmVmUHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk+IGNyZWF0
ZShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmKTsKKyAgICBzdGF0
aWMgUmVmUHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk+IGNyZWF0ZShjb25zdCBXZWJD
b3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBSZW5kZXJpbmdCYWNrZW5kSWRlbnRp
Zmllcik7CiAgICAgflJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoKSBmaW5hbDsKIAogICAg
IC8vIElQQzo6TWVzc2FnZVJlY2VpdmVyIG92ZXJyaWRlcy4KQEAgLTYzLDggKzY0LDggQEAgcHVi
bGljOgogICAgIHZvaWQgZW5zdXJlRXh0ZW5zaW9uRW5hYmxlZChjb25zdCBTdHJpbmcmIGV4dGVu
c2lvbikgZmluYWw7CiAgICAgdm9pZCBub3RpZnlNYXJrQ29udGV4dENoYW5nZWQoKSBmaW5hbDsK
ICAgICB2b2lkIHNpbXVsYXRlQ29udGV4dENoYW5nZWQoKSBmaW5hbDsKLSAgICB2b2lkIHBhaW50
UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OkltYWdlQnVmZmVyKikgZmluYWw7Ci0g
ICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6SW1hZ2VCdWZm
ZXIqKSBmaW5hbDsKKyAgICB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNv
cmU6OkltYWdlQnVmZmVyJikgZmluYWw7CisgICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1bHRz
VG9DYW52YXMoV2ViQ29yZTo6SW1hZ2VCdWZmZXImKSBmaW5hbDsKICAgICB2b2lkIHN5bnRoZXNp
emVHTEVycm9yKEdDR0xlbnVtIGVycm9yKSBmaW5hbDsKICAgICBHQ0dMZW51bSBnZXRFcnJvcigp
IGZpbmFsOwogCkBAIC0zNTYsNyArMzU3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpc2Nvbm5l
Y3RHcHVQcm9jZXNzSWZOZWVkZWQoKTsKICAgICB2b2lkIGFiYW5kb25HcHVQcm9jZXNzKCk7CiAK
LSAgICBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KEdQVVByb2Nlc3NDb25uZWN0aW9uJiwg
Y29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJik7CisgICAgUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eShHUFVQcm9jZXNzQ29ubmVjdGlvbiYsIGNvbnN0IFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlm
aWVyKTsKICAgICBHUFVQcm9jZXNzQ29ubmVjdGlvbiogbV9ncHVQcm9jZXNzQ29ubmVjdGlvbjsK
ICAgICBib29sIG1fZGlkSW5pdGlhbGl6ZSB7IGZhbHNlIH07CiAgICAgR0NHTGVudW0gbV9lcnJv
cldoZW5Db250ZXh0SXNMb3N0ID0gTk9fRVJST1I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0Jh
Y2tlbmRQcm94eS5jcHAKaW5kZXggYTRjNDVlMDA4MGFiYzYzZmY2Y2JjNTM5MTYzNTNjOTdlMjE4
ZDE3ZS4uM2IxNGY0MzBmNjE5NGQ2MDY1YTMyMmU1MmE4ODU3MThmOTcxNzM3NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdC
YWNrZW5kUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhp
Y3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcApAQCAtNjUsNyArNjUsNyBAQCB2b2lk
IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6Y29ubmVjdFRvR1BVUHJvY2VzcygpCiAgICAg
YXV0byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVByb2Nl
c3NDb25uZWN0aW9uKCk7CiAgICAgY29ubmVjdGlvbi5hZGRDbGllbnQoKnRoaXMpOwogICAgIGNv
bm5lY3Rpb24ubWVzc2FnZVJlY2VpdmVyTWFwKCkuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2Vz
OjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9y
ZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Ci0gICAgc2VuZChN
ZXNzYWdlczo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Q3JlYXRlUmVuZGVyaW5nQmFja2Vu
ZChtX3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLCBtX3Jlc3VtZURpc3BsYXlMaXN0U2VtYXBo
b3JlKSwgMCk7CisgICAgc2VuZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
Q3JlYXRlUmVuZGVyaW5nQmFja2VuZChtX3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLCBtX3Jl
c3VtZURpc3BsYXlMaXN0U2VtYXBob3JlKSwgMCwgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1l
c3NhZ2VFdmVuV2hlbldhaXRpbmdGb3JTeW5jUmVwbHkpOwogfQogCiB2b2lkIFJlbW90ZVJlbmRl
cmluZ0JhY2tlbmRQcm94eTo6cmVlc3RhYmxpc2hHUFVQcm9jZXNzQ29ubmVjdGlvbigpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRl
cmluZ0JhY2tlbmRQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGlj
cy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuaAppbmRleCA2N2JlNGFiNjdlNGM5OWZkYTky
OGZjZWQ3MDM5Y2M0MDg1NjIyNTdiLi41YzkwYWY2MjRlYTQzMjcwNWQ4ZGU2YWU1ZmIyMTU0NjYw
ZTFhMTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNz
L1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmgKQEAgLTk4LDYg
Kzk4LDcgQEAgcHVibGljOgogICAgIERpZFJlY2VpdmVCYWNrZW5kQ3JlYXRpb25SZXN1bHQgd2Fp
dEZvckRpZENyZWF0ZUltYWdlQnVmZmVyQmFja2VuZCgpOwogICAgIGJvb2wgd2FpdEZvckRpZEZs
dXNoKCk7CiAKKyAgICBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5k
SWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXI7
IH0KIHByaXZhdGU6CiAgICAgUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5KCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHAKaW5kZXggZmE4NGVmYWQzYzMzMGZiMWQxYmIxNzk0OTBhM2ViZWQ3OWNm
MWJiZS4uYTA3MDE3NzQ5YjNlMjgyYzY3MjRmYTFkNTQxODgyMzEyOWRhNDVkZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHAKQEAgLTkyOSw3ICs5MjksNyBAQCBSZWZQdHI8R3JhcGhpY3NDb250ZXh0
R0w+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgR3JhcGhp
YwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBVTlVTRURfVkFSSUFCTEUoaG9zdFdpbmRv
d0Rpc3BsYXlJRCk7CiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgcmV0dXJuIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMUHJveHk6OmNyZWF0ZShhdHRyaWJ1dGVzKTsKKyAgICByZXR1cm4gUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eTo6Y3JlYXRlKGF0dHJpYnV0ZXMsIG1fcGFnZS5lbnN1cmVS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkoKS5yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcigp
KTsKICNlbHNlCiAgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Rvb2xz
L0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4MTc5MjZmNjBlNTUzNGFiYjUwNDE4
NTU5MGRmNzQxZmQyYjg3ZGJiLi42MGNkY2MwYzMyYzcwZDU0ZDZjYTBjZDIxYzNlN2Y1NWNjOWVj
MDVmIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjEtMDItMTIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFw
cGxlLmNvbT4KKworICAgICAgICBXZWJHTCBjb250ZXh0cyBkbyBub3Qgd29yayBhcyBzb3VyY2Ug
Zm9yIENvbnRleHQyRCBkcmF3SW1hZ2UgY2FsbHMgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTgxMQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0d28gc2lnbmF0dXJl
cyBmb3IgbWFudWFsbHkgaW1wbGVtZW50ZWQgbWVzc2FnZXMuCisKKyAgICAgICAgKiBTY3JpcHRz
L2dlbmVyYXRlLWdwdXAtd2ViZ2w6CisKIDIwMjEtMDItMTcgIENhcmxvcyBHYXJjaWEgQ2FtcG9z
ICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI3MjYzNikgW0dU
S10gQ3Jhc2ggYW5kIGZhaWx1cmVzIGluIEFQSSB0ZXN0IC9XZWJLaXQyR3RrL1Rlc3RSZXNvdXJj
ZXMKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvZ2VuZXJhdGUtZ3B1cC13ZWJnbCBiL1Rvb2xz
L1NjcmlwdHMvZ2VuZXJhdGUtZ3B1cC13ZWJnbAppbmRleCA1Njg1ZTkwNzUzNTNmZDFkMmNlYTk0
NjIwNmI1N2U0OGI0MjY2M2ZkLi41MzlhODNjNGUyNzQ5ZTE0MWE0NTY5ZDQ0YzFjNTcxZjQ3MjE0
OGFlIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL2dlbmVyYXRlLWdwdXAtd2ViZ2wKKysrIGIv
VG9vbHMvU2NyaXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmdsCkBAIC0xMDEsNiArMTAxLDkgQEAgbWVz
c2FnZXMgLT4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wgTm90UmVmQ291bnRlZCB7ewogICAgIHZv
aWQgTm90aWZ5TWFya0NvbnRleHRDaGFuZ2VkKCkKICAgICB2b2lkIFN5bnRoZXNpemVHTEVycm9y
KHVpbnQzMl90IGVycm9yKQogICAgIHZvaWQgR2V0RXJyb3IoKSAtPiAodWludDMyX3QgcmV0dXJu
VmFsdWUpIFN5bmNocm9ub3VzCisgICAgdm9pZCBQYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZh
cyhXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIgcmVuZGVyaW5nUmVzb3VyY2VJ
ZGVudGlmaWVyKSAtPiAoKSBTeW5jaHJvbm91cworICAgIHZvaWQgUGFpbnRDb21wb3NpdGVkUmVz
dWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciByZW5kZXJp
bmdSZXNvdXJjZUlkZW50aWZpZXIpIC0+ICgpIFN5bmNocm9ub3VzCisKIHt9CiB9fQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggODZhNjJhOWQwMTY2OWY2YmIwNmZkNGFlZGI4ZWM1MGQ1OGQyYTRlNC4uMDUzNDZmNTEyZmFk
NjI0OWNmNDI0MjhiMzNjYThjY2JlNGYyY2JiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIx
LTAyLTEyICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAg
V2ViR0wgY29udGV4dHMgZG8gbm90IHdvcmsgYXMgc291cmNlIGZvciBDb250ZXh0MkQgZHJhd0lt
YWdlIGNhbGxzIGluIEdQVSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjE4MTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBSZW1vdmUgbm93IHBhc3NpbmcgdGVzdHMgZnJvbSB0aGUgZXhwZWN0
YXRpb25zLgorCisgICAgICAgICogZ3B1LXByb2Nlc3MvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAy
MS0wMi0xNyAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEltcHJvdmUg
cGVyY2VudGFnZSBoZWlnaHQgaW4gc2hvdWxkQ29tcHV0ZUxvZ2ljYWxXaWR0aEZyb21Bc3BlY3RS
YXRpbwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZ3B1LXByb2Nlc3MvVGVzdEV4cGVjdGF0aW9u
cyBiL0xheW91dFRlc3RzL2dwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggM2I5MGMy
YWJhYzFhZmUzNWRmODY0YTRhYmI5M2FiYjAwMjkwZmFhNC4uZWU3N2UyYmQ0YTk5NjU3ZDllMDk4
ZWI1MDllMjAzYTkxZWIyNmYzNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZ3B1LXByb2Nlc3Mv
VGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0
YXRpb25zCkBAIC0xOSwxMSArMTksNyBAQCBmYXN0L2NhbnZhcy9jYW52YXMtbGFyZ2UtZGltZW5z
aW9ucy5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy9jYW52YXMtcmVuZGVyLWxheWVyLmh0
bWwgWyBGYWlsdXJlIF0KIGZhc3QvY2FudmFzL2hpZHBpLXJlcGFpbnQtb24tcmV0aW5hLWxlYXZl
cy1iaXRzLWJlaGluZC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJn
bC9jYW52YXMtMmQtd2ViZ2wtdGV4dHVyZS5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2NhbnZhcy93
ZWJnbC9jYW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJnbC9jb250
ZXh0LXVwZGF0ZS1vbi1kaXNwbGF5LWNvbmZpZ3VyYXRpb24uaHRtbCBbIFRpbWVvdXQgXQotZmFz
dC9jYW52YXMvd2ViZ2wvZ2wtcGl4ZWxzdG9yZWkuaHRtbCBbIEZhaWx1cmUgXQotZmFzdC9jYW52
YXMvd2ViZ2wvbG9zZS1jb250ZXh0LW9uLXN0YXR1cy1mYWlsdXJlLmh0bWwgWyBGYWlsdXJlIF0K
LWZhc3QvY2FudmFzL3dlYmdsL3ByZW11bHRpcGx5YWxwaGEtdGVzdC5odG1sIFsgRmFpbHVyZSBd
CiBmYXN0L2NhbnZhcy93ZWJnbC90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVv
LXJnYjU2NS5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJnbC90ZXgtaW1hZ2UtYW5k
LXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYmE0NDQ0Lmh0bWwgWyBGYWlsdXJlIF0KIGZhc3Qv
Y2FudmFzL3dlYmdsL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdiYTU1
NTEuaHRtbCBbIEZhaWx1cmUgXQpAQCAtMjIwLDE5ICsyMTYsMTIgQEAgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2Rl
LWludGVyZmEKIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtZGVzdGluYXRpb25ub2RlLWludGVyZmFjZS9kZXN0aW5hdGlvbi5odG1sIFsg
RmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLW1lZGlhZWxlbWVudGF1ZGlvc291cmNlbm9kZS1pbnRlcmZhY2Uvbm8tY29y
cy5odHRwcy5odG1sIFsgRmFpbHVyZSBdCiAKLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NhbnZh
cy9jYW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9j
YW52YXMvZHJhdy1zdGF0aWMtd2ViZ2wtdG8tbXVsdGlwbGUtY2FudmFzLXRlc3QuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY2FudmFzL2RyYXctd2ViZ2wtdG8tY2Fu
dmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY2FudmFz
L3RvLWRhdGEtdXJsLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFu
Y2UvY29udGV4dC9jb250ZXh0LWF0dHJpYnV0ZS1wcmVzZXJ2ZS1kcmF3aW5nLWJ1ZmZlci5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jb250ZXh0L3ByZW11bHRpcGx5
YWxwaGEtdGVzdC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRl
bnNpb25zL29lcy10ZXh0dXJlLWZsb2F0LXdpdGgtY2FudmFzLmh0bWwgWyBGYWlsdXJlIF0KIHdl
YmdsLzEuMC4zL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUtZmxvYXQtd2l0aC12
aWRlby5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRlbnNpb25z
L29lcy10ZXh0dXJlLWhhbGYtZmxvYXQtd2l0aC1jYW52YXMuaHRtbCBbIEZhaWx1cmUgXQogd2Vi
Z2wvMS4wLjMvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1oYWxmLWZsb2F0LXdp
dGgtdmlkZW8uaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvcmVuZGVy
aW5nL21hbnktZHJhdy1jYWxscy5odG1sIFsgVGltZW91dCBdCiB3ZWJnbC8xLjAuMy9jb25mb3Jt
YW5jZS9zdGF0ZS9nbC1vYmplY3QtZ2V0LWNhbGxzLmh0bWwgWyBUaW1lb3V0IF0KLXdlYmdsLzEu
MC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL2dsLXBpeGVsc3RvcmVpLmh0bWwgWyBGYWlsdXJlIF0K
IHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdl
LTJkLXdpdGgtY2FudmFzLXJnYjU2NS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25m
b3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLWNhbnZhcy1y
Z2JhNDQ0NC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJl
cy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLWNhbnZhcy1yZ2JhNTU1MS5odG1sIFsg
RmFpbHVyZSBdCkBAIC0yNDEsMjEgKzIzMCwxMSBAQCB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90
ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYjU2NS5odAog
d2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2Ut
MmQtd2l0aC12aWRlby1yZ2JhNDQ0NC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25m
b3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJn
YmE1NTUxLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVz
L3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8uaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2Ut
MmQtd2l0aC13ZWJnbC1jYW52YXMtcmdiNTY1Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4z
L2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2Vi
Z2wtY2FudmFzLXJnYmE0NDQ0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1h
bmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFz
LXJnYmE1NTUxLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1
cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFzLmh0bWwgWyBG
YWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS13ZWJn
bC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXhw
YXJhbWV0ZXItdGVzdC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90
ZXh0dXJlcy90ZXh0dXJlLWFjdGl2ZS1iaW5kLTIuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4w
LjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4dHVyZS1hY3RpdmUtYmluZC5odG1sIFsgRmFpbHVy
ZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS91bmlmb3Jtcy91bmlmb3JtLXNhbXBsZXJzLXRl
c3QuaHRtbCBbIFRpbWVvdXQgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvY2FudmFzL2NhbnZh
cy10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NhbnZhcy9k
cmF3LXN0YXRpYy13ZWJnbC10by1tdWx0aXBsZS1jYW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jYW52YXMvZHJhdy13ZWJnbC10by1jYW52YXMtdGVz
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jYW52YXMvdG8tZGF0
YS11cmwtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jb250
ZXh0L2NvbnRleHQtYXR0cmlidXRlLXByZXNlcnZlLWRyYXdpbmctYnVmZmVyLmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NvbnRleHQvcHJlbXVsdGlwbHlhbHBoYS10
ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMv
b2VzLXRleHR1cmUtZmxvYXQtd2l0aC1jYW52YXMuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLXZpZGVvLmh0
bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRl
eHR1cmUtaGFsZi1mbG9hdC13aXRoLWNhbnZhcy5odG1sIFsgRmFpbHVyZSBdCkBAIC0yNzMsNyAr
MjUyLDYgQEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zy
b21faW1hZ2VfYml0bWFwL3RleC0yZC1yZ2ItcmdiLXUKIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
L3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcmdiYS1yZ2Jh
LXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uv
dGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0yZC1yZ2JhLXJnYmEt
dW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTJkLXJn
YmEtcmdiYS11bnNpZ25lZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL21pc2MvZ2wtcGl4ZWxzdG9yZWkuaHRtbCBbIEZhaWx1
cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvbWlzYy90ZXgtaW1hZ2Utd2Vi
Z2wuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvbWlz
Yy90ZXh0dXJlLWFjdGl2ZS1iaW5kLTIuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UvdGV4dHVyZXMvbWlzYy90ZXh0dXJlLWFjdGl2ZS1iaW5kLmh0bWwgWyBGYWlsdXJl
IF0KQEAgLTI4MiwxMSArMjYwLDYgQEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMv
dmlkZW8vdGV4LTJkLXJnYi1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbAogd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvdmlkZW8vdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9i
eXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3Zp
ZGVvL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVy
ZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiYS1y
Z2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2ItcmdiLXVuc2lnbmVk
X2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMv
d2ViZ2xfY2FudmFzL3RleC0yZC1yZ2ItcmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90
ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhLXJnYmEtdW5z
aWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZS90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9zaG9y
dF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3VuaWZv
cm1zL3VuaWZvcm0tc2FtcGxlcnMtdGVzdC5odG1sIFsgVGltZW91dCBdCiB3ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvcmVhZGluZy9yZWFkLXBpeGVscy1wYWNrLXBhcmFtZXRlcnMuaHRtbCBbIEZh
aWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3N0YXRlL2dsLW9iamVjdC1nZXQtY2Fs
bHMuaHRtbCBbIFRpbWVvdXQgXQpAQCAtMzUyLDcyICszMjUsNiBAQCB3ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzL3RleC0zZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUu
aHRtbCBbCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzL3RleC0zZC1y
Z2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXMvdGV4LTNkLXNyZ2I4LXJnYi11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXMvdGV4LTNkLXNyZ2I4X2FscGhhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4
LTJkLXIxMWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3Vi
X3JlY3RhbmdsZS90ZXgtMmQtcjE2Zi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1y
MTZmLXJlZC1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcjMyZi1yZWQtZmxvYXQu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZh
c19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yOC1yZWQtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5n
bGUvdGV4LTJkLXI4dWktcmVkX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUv
dGV4LTJkLXJnMTZmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmcxNmYtcmctaGFs
Zl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnMzJmLXJnLWZsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rh
bmdsZS90ZXgtMmQtcmc4LXJnLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1y
Zzh1aS1yZ19pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2Ix
NmYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiMTZmLXJnYi1oYWxmX2Zsb2F0
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52
YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiMzJmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUv
dGV4LTJkLXJnYjU2NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJn
YjU2NS1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2I1
X2ExLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjVfYTEtcmdi
YS11bnNpZ25lZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiOC1yZ2It
dW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjh1aS1yZ2JfaW50ZWdlci11
bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiOV9lNS1yZ2ItZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19z
dWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2I5X2U1LXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rhbmds
ZS90ZXgtMmQtcmdiYTE2Zi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiYTE2
Zi1yZ2JhLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2JhMzJmLXJnYmEtZmxv
YXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2Nh
bnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0yZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rhbmds
ZS90ZXgtMmQtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1z
cmdiOF9hbHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjEx
Zl9nMTFmX2IxMGYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjExZl9nMTFmX2Ix
MGYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1y
Z2ItdW5zaWduZWRfaW50XzEwZl8xMWZfMTFmX3Jldi5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXIx
NmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjE2Zi1yZWQtaGFsZl9mbG9hdC5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFz
X3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXIzMmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgt
M2QtcjgtcmVkLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yOHVpLXJlZF9p
bnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZzE2Zi1yZy1mbG9h
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnMTZmLXJnLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFu
Z2xlL3RleC0zZC1yZzMyZi1yZy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnOC1yZy11
bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmc4dWktcmdfaW50ZWdlci11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiMTZmLXJnYi1mbG9hdC5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9y
ZWN0YW5nbGUvdGV4LTNkLXJnYjE2Zi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4
LTNkLXJnYjMyZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1NjUtcmdiLXVu
c2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX3No
b3J0XzVfNl81Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX2J5
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2Nh
bnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81
XzVfMS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
Y2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0zZC1yZ2I4dWktcmdiX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9y
ZWN0YW5nbGUvdGV4LTNkLXJnYjlfZTUtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qt
cmdiOV9lNS1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYmExNmYtcmdi
YS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYmExNmYtcmdiYS1oYWxmX2Zsb2F0Lmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNf
c3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTMyZi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90
ZXgtM2QtcmdiYTQtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmdi
YTQtcmdiYS11bnNpZ25lZF9zaG9ydF80XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmdi
YTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTh1aS1yZ2Jh
X2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXNyZ2I4LXJnYi11
bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtc3JnYjhfYWxwaGE4LXJnYmEtdW5z
aWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4
dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0yZC1yMTFmX2cxMWZfYjEw
Zi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcjExZl9nMTFmX2Ix
MGYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcjExZl9n
MTFmX2IxMGYtcmdiLXVuc2lnbmVkX2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbCBbIEZhaWx1cmUg
XQpAQCAtNTUwLDY4ICs0NTcsNiBAQCB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
dmlkZW8vdGV4LTNkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRgogd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0zZC1yZ2JhOHVpLXJnYmFfaW50ZWdl
ci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy92aWRlby90ZXgtM2Qtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0zZC1z
cmdiOF9hbHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXIxMWZfZzExZl9i
MTBmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9h
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItdW5zaWduZWRfaW50XzEwZl8xMWZf
MTFmX3Jldi5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yMTZmLXJlZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yMTZm
LXJlZC1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXIzMmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTJkLXI4LXJlZC11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXI4dWktcmVkX2ludGVnZXIt
dW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZzE2Zi1yZy1mbG9hdC5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0y
ZC1yZzE2Zi1yZy1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnMzJmLXJnLWZsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52
YXMvdGV4LTJkLXJnOC1yZy11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnOHVpLXJnX2lu
dGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2IxNmYtcmdiLWZsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52
YXMvdGV4LTJkLXJnYjE2Zi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2IzMmYtcmdi
LWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjU2NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0yZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjVf
YTEtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjVfYTEtcmdiYS11bnNpZ25l
ZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtMmQtcmdiOHVpLXJnYl9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgt
MmQtcmdiYTE2Zi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmExNmYtcmdiYS1oYWxmX2Zs
b2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmEzMmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2Jh
NC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiYTQtcmdiYS11bnNpZ25lZF9z
aG9ydF80XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2Fu
dmFzL3RleC0yZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTJkLXNyZ2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXNyZ2I4X2FscGhhOC1y
Z2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjExZl9nMTFmX2IxMGYtcmdiLWZsb2F0
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJn
bF9jYW52YXMvdGV4LTNkLXIxMWZfZzExZl9iMTBmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTNkLXIxMWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52
YXMvdGV4LTNkLXIxNmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXIxNmYtcmVkLWhhbGZfZmxv
YXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtM2QtcjMyZi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjgtcmVkLXVu
c2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtcjh1aS1yZWRfaW50ZWdlci11bnNpZ25lZF9ieXRl
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJn
bF9jYW52YXMvdGV4LTNkLXJnMTZmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnMTZmLXJnLWhh
bGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmczMmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtcmc4
LXJnLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtcmc4dWktcmdfaW50ZWdlci11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjE2Zi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtcmdi
MTZmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjMyZi1yZ2ItZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZh
cy90ZXgtM2QtcmdiNTY1LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjU2NS1y
Z2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiNV9hMS1yZ2JhLXVuc2ln
bmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81
XzEuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtM2QtcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1y
Z2I4dWktcmdiX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2JhMTZmLXJn
YmEtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiYTE2Zi1yZ2JhLWhhbGZfZmxvYXQuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90
ZXgtM2QtcmdiYTMyZi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmE0LXJnYmEtdW5zaWdu
ZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmds
X2NhbnZhcy90ZXgtM2QtcmdiYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJn
YmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtc3JnYjgtcmdi
LXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRf
Ynl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC9tYW55LWNvbnRleHRzLWFjY2Vzcy1hZnRlci1s
b3NzLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsL21heC1hY3RpdmUtY29udGV4dHMtY29uc29sZS13
YXJuaW5nLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsL21heC1hY3RpdmUtY29udGV4dHMtZ2MuaHRt
bCBbIEZhaWx1cmUgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420808</attachid>
            <date>2021-02-18 01:32:24 -0800</date>
            <delta_ts>2021-02-18 02:01:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221811-20210218113221.patch</filename>
            <type>text/plain</type>
            <size>71863</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczMDY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTA1YmZmOWQzYjcyMThk
YjI0ZDg3NTM4N2Y5NTgzYWJhMDJiYjg4Ni4uYmZhYjZkYWZlMjg3YTFiMDYyZTlkMjM0OTI1MTQ3
YzU2YzRlZmJiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDIxLTAyLTEyICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgY29udGV4
dHMgZG8gbm90IHdvcmsgYXMgc291cmNlIGZvciBDb250ZXh0MkQgZHJhd0ltYWdlIGNhbGxzIGlu
IEdQVSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjE4MTEKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAg
ICBJbXBsZW1lbnRzIHJ1ZGltZW50YXJ5IHN1cHBvcnQgZm9yIHJlYWRpbmcgdGhlIFdlYkdMIGNv
bnRleHQgYW5kIHRyYW5zZmVyaW5nCisgICAgICAgIGl0IHRvIGEgSW1hZ2VCdWZmZXIuCisKKyAg
ICAgICAgRml4ZXMgbWFueSB0ZXN0cyB0aGF0IGFyZSByZW1vdmVkIGZyb20gZ3B1LXByb2Nlc3Mv
VGVzdEV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIGh0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6dHJhbnNmZXJUb0ltYWdlQml0bWFw
KToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnBhaW50UmVuZGVy
aW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHRHTC5oOgorICAgICAgICBNYWtlIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFz
IGFuZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMKKyAgICAgICAgdGFrZSBJbWFnZUJ1
ZmZlciYgaW5zdGVhZCBvZiBJbWFnZUJ1ZmZlciosIHNpbmNlIHRoZSBidWZmZXIgYWx3YXlzCisg
ICAgICAgIGV4aXN0cy4KKworICAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFw
aGljc0NvbnRleHRHTENhaXJvLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
Zy9HcmFwaGljc0NvbnRleHRHTENHLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgQ2hhbmdlIHRoZSBmdW5jdGlv
biBzaWduYXR1cmUgc28gdGhhdCBpdCBjYW4gYmUgY2FsbGVkIGZyb20KKyAgICAgICAgb3RoZXIg
dGhyZWFkIGFuZCB3aXRob3V0IEdyYXBoaWNzQ29udGV4dEdMIGluc3RhbmNlLgorICAgICAgICBJ
dCBpcyBub3QgcmVhbGx5IGEgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wgcmVsYXRlZCBmdW5jdGlv
bi4uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRH
TElPU3VyZmFjZVN3YXBDaGFpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6ZGlzcGxheUJ1ZmZlciBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1ZmZl
cik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFp
bjo6ZGV0YWNoQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMSU9T
dXJmYWNlU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
b2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW06CisgICAgICAgIChXZWJHTExheWVy
U3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgTW92ZSB0aGUgdHJpcGxlIGJ1ZmZlcmluZyBp
bXBsZW1lbnRhdGlvbiB0byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgVGhlIGltcGxlbWVudGF0
aW9uIGlzIG5vdyBhbHNvIHVzZWQgaW4gR1BVIHByb2Nlc3Mgc2lkZSwKKyAgICAgICAgc2luY2Ug
dGhlIEdQVSBwcm9jZXNzIG5lZWRzIHRvIGJlIGFibGUgdG8gcmVhZCB0aGUgY29tcG9zaXRlZAor
ICAgICAgICByZXN1bHRzLgorCisgICAgICAgIFByZXZpb3VzbHkgdGhlIHNhbWUgbG9naWMgd2Fz
IHNwbGl0IGJldHdlZW4gV2ViIHByb2Nlc3MgYW5kIEdQVSBwcm9jZXNzLgorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5H
TDo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0ltYWdlRGF0YSk6
CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cmVhZFJlbmRlcmlu
Z1Jlc3VsdHNGb3JQYWludGluZyk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TE9wZW5HTDo6cmVhZENvbXBvc2l0ZWRSZXN1bHRzRm9yUGFpbnRpbmcpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5oOgorCisgICAg
ICAgIEV4cG9zZSBwdWJsaWMgZnVuY3Rpb25zIHRvIGdldCBJbWFnZURhdGEgb3V0IG9mIGRyYXdp
bmcgYnVmZmVyIGFuZAorICAgICAgICBkaXNwbGF5IGJ1ZmZlci4KKwogMjAyMS0wMi0xOCAgQW50
b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBQYWdlIHVwZGF0ZXMg
YW5kIHJBRiBjYWxsYmFja3Mgc2hvdWxkIHJ1biBhdCBhIGZyZXF1ZW5jeSBjbG9zZSB0byA2MEh6
IG9uIGhpZ2ggcmVmcmVzaC1yYXRlIGRpc3BsYXlzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDMxNzMxMWZjZmI1MjYy
MTlhY2Y4YTYxMzZlMTAzYzlmMTAzNDlkOTUuLjk3ZDFmZDkwY2Q2N2YwZWU0ZTM5ZDZiNzA3OTBk
ZGRmZWZiNzdmMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzUgQEAKKzIwMjEtMDItMTIgIEtpbW1v
IEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBXZWJHTCBjb250ZXh0
cyBkbyBub3Qgd29yayBhcyBzb3VyY2UgZm9yIENvbnRleHQyRCBkcmF3SW1hZ2UgY2FsbHMgaW4g
R1BVIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyMTgxMQorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAg
IEltcGxlbWVudHMgcnVkaW1lbnRhcnkgc3VwcG9ydCBmb3IgcmVhZGluZyB0aGUgV2ViR0wgY29u
dGV4dCBhbmQgdHJhbnNmZXJpbmcKKyAgICAgICAgaXQgdG8gYSBJbWFnZUJ1ZmZlci4KKworICAg
ICAgICBGaXhlcyBtYW55IHRlc3RzIHRoYXQgYXJlIHJlbW92ZWQgZnJvbSBncHUtcHJvY2Vzcy9U
ZXN0RXhwZWN0YXRpb25zLgorCisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0wpOgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVQ29u
bmVjdGlvblRvV2ViUHJvY2Vzcy5oOgorICAgICAgICAoV2ViS2l0OjpHUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3JhcHBlcjo6Z2V0IGNvbnN0KToKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW46
CisgICAgICAgICogR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpjcmVhdGUpOgor
ICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0wpOgorICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUdyYXBo
aWNzQ29udGV4dEdMIGNvbnN0KToKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFw
aGljc0NvbnRleHRHTDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xDb2NvYTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYSk6CisgICAgICAgICog
V2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5Lmg6Cisg
ICAgICAgIChXZWJLaXQ6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6cmVuZGVyaW5nQmFj
a2VuZElkZW50aWZpZXIgY29uc3QpOgorCisgICAgICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
IHRha2VzIGEgcmVmIG9mIHRoZSByZXNwZWN0aXZlIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQuCisg
ICAgICAgIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQgaXMgdGhlIG9uZSB0aGF0IGNhbiBoYW5kbGUg
SW1hZ2VCdWZmZXJzLgorCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
OjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMpOgorICAg
ICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6cGFpbnRJbWFnZURhdGFUb0lt
YWdlQnVmZmVyKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNz
Q29udGV4dEdMLmg6CisgICAgICAgICogR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGlj
c0NvbnRleHRHTC5tZXNzYWdlcy5pbjoKKworICAgICAgICBJbXBsZW1lbnQgdGhlIGZ1bmN0aW9u
cyBieToKKyAgICAgICAgIDEpIFdhaXQgZm9yIHRoZSBwZW5kaW5nIGNoYW5nZXMgdG8gdGhlIElt
YWdlQnVmZmVyCisgICAgICAgICAyKSBTZW5kIGEgc3luY2hyb25vdXMgbWVzc2FnZSBmcm9tIFdl
YiBwcm9jZXNzIHRvIEdQVSBwcm9jZXNzIFdlYkdMIHNlcXVlbmNlCisgICAgICAgICAzKSBSZWFk
aW5nIHRoZSBidWZmZXIsIHBvc3QgdGhlIHRhc2sgdG8gUmVuZGVyaW5nQmFja2VuZCBzZXF1ZW5j
ZQorICAgICAgICAgNCkgUGFpbnQgdGhlIHJlc3VsdHMgdG8gdGhlIEltYWdlQnVmZmVyCisgICAg
ICAgICA1KSBSZXR1cm4gdGhlIHN5bmNocm9ub3VzIG1lc3NhZ2UgcmVzdWx0CisKKyAgICAgICAg
KFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6cHJlcGFyZUZvckRpc3BsYXkp
OgorCisgICAgICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMIG5vdyByZXRhaW5zIHRoZSByZWZl
cmVuY2UgdG8gZGlzcGxheSBidWZmZXIuCisgICAgICAgIEJlZm9yZSwganVzdCBzZW50IHRoZSBk
aXNwbGF5IGJ1ZmZlciB0byBXZWIgcHJvY2VzcyBhbmQgZm9yZ290CisgICAgICAgIGFib3V0IGl0
LgorCisgICAgICAgICogR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5k
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6ZGlzcGF0Y2gp
OgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5o
OgorCisgICAgICAgIEFkZCBmdW5jdGlvbiB0byBkaXNwYXRjaCB3b3JrIHRvIHJlbmRlcmluZyBi
YWNrZW5kIHNlcXVlbmNlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMUHJveHk6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkpOgorICAg
ICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpwYWludFJlbmRlcmlu
Z1Jlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMUHJveHk6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5oOgorCisg
ICAgICAgIFNlbmQgdGhlIG1lc3NhZ2VzLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvZ3Jh
cGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
UmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5Ojpjb25uZWN0VG9HUFVQcm9jZXNzKToKKworICAg
ICAgICBVc2UgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1lc3NhZ2VFdmVuV2hlbldhaXRpbmdG
b3JTeW5jUmVwbHkgdG8KKyAgICAgICAgc2VuZCBDcmVhdGVSZW5kZXJpbmdCYWNrZW5kLiBJdCBt
dXN0IGJlIGRpc3BhdGNoZWQgaW4gb3JkZXIgY29tcGFyZWQgdG8gb3RoZXIKKyAgICAgICAgbWVz
c2FnZXMgc3VjaCBhcyBDcmVhdGVSZW1vdGVHcmFwaGljc0NvbnRleHRHTC4KKwogMjAyMS0wMi0x
NyAgTWVnYW4gR2FyZG5lciAgPG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dHVybiBjb3JyZWN0IHRhcmdldCBmb3IgQXBwIEhpZ2hsaWdodCBtZW51cy4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcAppbmRleCA2ZmEwNGRjMzU1Zjg2Y2VlMzBiZThkYzM5
M2UzMDUyZWUzMWM2Mzc1Li4xOGU4ZWViNWQ4YTI0YTEzZTEwOTM2NDc2ZWUwMGY3ZmU5YjJkNzE5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwCkBAIC0yODQsNyArMjg0
LDcgQEAgRXhjZXB0aW9uT3I8UmVmUHRyPEltYWdlQml0bWFwPj4gT2Zmc2NyZWVuQ2FudmFzOjp0
cmFuc2ZlclRvSW1hZ2VCaXRtYXAoKQogICAgICAgICAgICAgcmV0dXJuIHsgUmVmUHRyPEltYWdl
Qml0bWFwPiB7IG51bGxwdHIgfSB9OwogCiAgICAgICAgIGF1dG8qIGdjM2QgPSB3ZWJHTENvbnRl
eHQtPmdyYXBoaWNzQ29udGV4dEdMKCk7Ci0gICAgICAgIGdjM2QtPnBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvQ2FudmFzKGltYWdlQml0bWFwLT5idWZmZXIoKSk7CisgICAgICAgIGdjM2QtPnBhaW50
UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKCppbWFnZUJpdG1hcC0+YnVmZmVyKCkpOwogCiAgICAg
ICAgIC8vIEZJWE1FOiBUaGUgdHJhbnNmZXIgYWxnb3JpdGhtIHJlcXVpcmVzIHRoYXQgdGhlIGNh
bnZhcyBlZmZlY3RpdmVseQogICAgICAgICAvLyBjcmVhdGVzIGEgbmV3IGJhY2tpbmcgc3RvcmUu
IFNpbmNlIHdlJ3JlIG5vdCBkb2luZyB0aGF0IHlldCwgd2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKaW5kZXgg
MzgxNTliZmI3MTg4ZGI3OTM2ODZiNjJiYzYyOTc3MmNiODYxODkzYy4uZGVhN2MyNjgwODU2ZWJm
YjQ2OWVmYTlhZGZiNWFiMjVlYWEzYzg0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKQEAgLTEyMTAsNyAr
MTIxMCw3IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRSZW5kZXJpbmdS
ZXN1bHRzVG9DYW52YXMoKQogICAgICAgICAgICAgYXV0byYgYmFzZSA9IGNhbnZhc0Jhc2UoKTsK
ICAgICAgICAgICAgIGJhc2UuY2xlYXJDb3BpZWRJbWFnZSgpOwogICAgICAgICAgICAgbV9tYXJr
ZWRDYW52YXNEaXJ0eSA9IGZhbHNlOwotICAgICAgICAgICAgbV9jb250ZXh0LT5wYWludENvbXBv
c2l0ZWRSZXN1bHRzVG9DYW52YXMoYmFzZS5idWZmZXIoKSk7CisgICAgICAgICAgICBtX2NvbnRl
eHQtPnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcygqYmFzZS5idWZmZXIoKSk7CiAgICAg
ICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEyMjUsNyArMTIyNSw3IEBAIHZvaWQg
V2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMo
KQogCiAgICAgbV9tYXJrZWRDYW52YXNEaXJ0eSA9IGZhbHNlOwogCi0gICAgbV9jb250ZXh0LT5w
YWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhiYXNlLmJ1ZmZlcigpKTsKKyAgICBtX2NvbnRl
eHQtPnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKCpiYXNlLmJ1ZmZlcigpKTsKIH0KIAog
UmVmUHRyPEltYWdlRGF0YT4gV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRSZW5kZXJp
bmdSZXN1bHRzVG9JbWFnZURhdGEoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0wuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmgKaW5kZXggMDAyNjI0NWU0Nzk3MjdkZWZjYzAx
MWU2ZThhMWZkYzU0ZTMzMWM2ZS4uZjdkYzhhZWMxYjBiMzdmYWJhNTM2Y2Q0N2NjMDI1ZjU5N2Yw
Mzc5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhp
Y3NDb250ZXh0R0wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHRHTC5oCkBAIC0xMjkxLDkgKzEyOTEsOSBAQCBwdWJsaWM6CiAgICAgLy8gRklY
TUU6IHRoZXNlIHNob3VsZCBiZSByZW1vdmVkLCB0aGV5J3JlIHBhcnQgb2YgZHJhd2luZyBidWZm
ZXIgYW5kCiAgICAgLy8gZGlzcGxheSBidWZmZXIgYWJzdHJhY3Rpb25zIHRoYXQgdGhlIGNhbGxl
ciBzaG91bGQgaG9sZCBzZXBhcmF0ZSB0bwogICAgIC8vIHRoZSBjb250ZXh0LgotICAgIHZpcnR1
YWwgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciopID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZm
ZXImKSA9IDA7CiAgICAgdmlydHVhbCBSZWZQdHI8SW1hZ2VEYXRhPiBwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0ltYWdlRGF0YSgpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGFpbnRDb21wb3NpdGVk
UmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwYWlu
dENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXImKSA9IDA7CiAKICAgICAvLyBG
SVhNRTogdGhpcyBzaG91bGQgYmUgcmVtb3ZlZC4gVGhlIGxheWVyIHNob3VsZCBiZSBtYXJrZWQg
Y29tcG9zaXRlZCBieQogICAgIC8vIHByZXBhcmluZyBmb3IgZGlzcGxheSwgc28gdGhhdCBjYW52
YXMgaW1hZ2UgYnVmZmVyIGFuZCB0aGUgbGF5ZXIgYWdyZWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dEdMQ2Fpcm8uY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0
R0xDYWlyby5jcHAKaW5kZXggNTZmNmIxYTcwMWIyMDBjOTg2OGQyODJmMDdjMzc2ZGExMTBjZTI1
ZS4uNWI4ZDhiNWYxYWUyYzFmYjZiNGViMThiODVmMGEyNWM4YTU3NDdjYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0R0xD
YWlyby5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3Jh
cGhpY3NDb250ZXh0R0xDYWlyby5jcHAKQEAgLTEwNiw3ICsxMDYsNyBAQCBib29sIEdyYXBoaWNz
Q29udGV4dEdMSW1hZ2VFeHRyYWN0b3I6OmV4dHJhY3RJbWFnZShib29sIHByZW11bHRpcGx5QWxw
aGEsIGJvb2wgaQogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dEdM
T3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBjb25zdCBJ
bnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQpCit2b2lkIEdyYXBo
aWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdM
QXR0cmlidXRlcyYgc291cmNlQ29udGV4dEF0dHJpYnV0ZXMsIFJlZjxJbWFnZURhdGE+JiYgaW1h
Z2VEYXRhLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRl
eHQpCiB7CiAgICAgQVNTRVJUKCFpbWFnZURhdGEtPnNpemUoKS5pc0VtcHR5KCkpOwogICAgIGlm
IChjYW52YXNTaXplLmlzRW1wdHkoKSkKQEAgLTEyMiw3ICsxMjIsNyBAQCB2b2lkIEdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VEYXRh
LCBjb25zdCBJbgogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdG90YWxCeXRlczsgaSArPSA0
KQogICAgICAgICBzdGQ6OnN3YXAocGl4ZWxzW2ldLCBwaXhlbHNbaSArIDJdKTsKIAotICAgIGlm
ICghY29udGV4dEF0dHJpYnV0ZXMoKS5wcmVtdWx0aXBsaWVkQWxwaGEpIHsKKyAgICBpZiAoIXNv
dXJjZUNvbnRleHRBdHRyaWJ1dGVzLnByZW11bHRpcGxpZWRBbHBoYSkgewogICAgICAgICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IHRvdGFsQnl0ZXM7IGkgKz0gNCkgewogICAgICAgICAgICAgcGl4
ZWxzW2kgKyAwXSA9IHN0ZDo6bWluKDI1NSwgcGl4ZWxzW2kgKyAwXSAqIHBpeGVsc1tpICsgM10g
LyAyNTUpOwogICAgICAgICAgICAgcGl4ZWxzW2kgKyAxXSA9IHN0ZDo6bWluKDI1NSwgcGl4ZWxz
W2kgKyAxXSAqIHBpeGVsc1tpICsgM10gLyAyNTUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0R0xDRy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcAppbmRl
eCA1ZGVkM2EwODdkYTMyYzg1MDMwZDhkYjg1MjI5NTc5YTQ5OWQyODExLi4zOWQyYzAxNzY4YjY4
N2JlYTQ3Yzk0NDNlNmEwNGZjNDVkZGIyYzJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcApAQCAt
NTExLDE4ICs1MTEsMTcgQEAgc3RhdGljIHZvaWQgcmVsZWFzZUltYWdlRGF0YSh2b2lkKiBpbWFn
ZURhdGEsIGNvbnN0IHZvaWQqLCBzaXplX3QpCiAgICAgcmVpbnRlcnByZXRfY2FzdDxJbWFnZURh
dGEqPihpbWFnZURhdGEpLT5kZXJlZigpOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dEdMT3Bl
bkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBjb25zdCBJbnRT
aXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQpCit2b2lkIEdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlcyYgc291cmNlQ29udGV4dEF0dHJpYnV0ZXMsIFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VE
YXRhLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQp
CiB7CiAgICAgQVNTRVJUKCFpbWFnZURhdGEtPnNpemUoKS5pc0VtcHR5KCkpOwogICAgIGlmIChj
YW52YXNTaXplLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwotICAgIGF1dG8gYXR0cnMgPSBj
b250ZXh0QXR0cmlidXRlcygpOwogICAgIC8vIElucHV0IGlzIEdMX1JHQkEgPT0ga0NHQml0bWFw
Qnl0ZU9yZGVyMzJCaWcgfCBrQ0dJbWFnZUFscGhhKkxhc3QuCiAgICAgLy8gR0xfQkdSQSB3b3Vs
ZCBiZSBrQ0dCaXRtYXBCeXRlT3JkZXIzMkxpdHRsZSB8IGtDR0ltYWdlQWxwaGEqRmlyc3QuCiAg
ICAgQ0dCaXRtYXBJbmZvIGJpdG1hcEluZm8gPSBrQ0dCaXRtYXBCeXRlT3JkZXIzMkJpZzsKLSAg
ICBpZiAoIWF0dHJzLmFscGhhKQorICAgIGlmICghc291cmNlQ29udGV4dEF0dHJpYnV0ZXMuYWxw
aGEpCiAgICAgICAgIGJpdG1hcEluZm8gfD0ga0NHSW1hZ2VBbHBoYU5vbmVTa2lwTGFzdDsKLSAg
ICBlbHNlIGlmIChhdHRycy5wcmVtdWx0aXBsaWVkQWxwaGEpCisgICAgZWxzZSBpZiAoc291cmNl
Q29udGV4dEF0dHJpYnV0ZXMucHJlbXVsdGlwbGllZEFscGhhKQogICAgICAgICBiaXRtYXBJbmZv
IHw9IGtDR0ltYWdlQWxwaGFQcmVtdWx0aXBsaWVkTGFzdDsKICAgICBlbHNlCiAgICAgICAgIGJp
dG1hcEluZm8gfD0ga0NHSW1hZ2VBbHBoYUxhc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBD
aGFpbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHAKaW5kZXggOTNjZTQ3MzIxNjI4ZjFmNjA3
MjQyMWE3NmJjNjBjZTFiYzUzZGFiMy4uOWM0MDI3MjFkYjVmZDY0Nzg2YTJlNmEyYmE0ZmU0MjA0
ZjY1MGJmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29j
b2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNl
U3dhcENoYWluLmNwcApAQCAtMzIsNiArMzIsMzIgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBH
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6fkdyYXBoaWNzQ29udGV4dEdMSU9T
dXJmYWNlU3dhcENoYWluKCkgPSBkZWZhdWx0OwogCitjb25zdCBHcmFwaGljc0NvbnRleHRHTElP
U3VyZmFjZVN3YXBDaGFpbjo6QnVmZmVyJiBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBD
aGFpbjo6ZGlzcGxheUJ1ZmZlcigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fZGlzcGxheUJ1ZmZl
cjsKK30KKworR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZlciBHcmFw
aGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1ZmZlcigpCit7CisgICAg
aWYgKG1fc3BhcmVCdWZmZXIuc3VyZmFjZSkgeworICAgICAgICBpZiAobV9zcGFyZUJ1ZmZlci5z
dXJmYWNlLT5pc0luVXNlKCkpCisgICAgICAgICAgICBtX3NwYXJlQnVmZmVyLnN1cmZhY2UucmVz
ZXQoKTsKKyAgICAgICAgcmV0dXJuIFdURk1vdmUobV9zcGFyZUJ1ZmZlcik7CisgICAgfQorICAg
IHJldHVybiB7IH07Cit9CisKK3ZvaWQqIEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENo
YWluOjpkZXRhY2hDbGllbnQoKQoreworICAgIEFTU0VSVCghbV9zcGFyZUJ1ZmZlci5zdXJmYWNl
KTsKKyAgICByZXR1cm4gc3RkOjpleGNoYW5nZShtX2Rpc3BsYXlCdWZmZXIuaGFuZGxlLCBudWxs
cHRyKTsKK30KKwordm9pZCBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cHJl
c2VudChCdWZmZXImJiBidWZmZXIpCit7CisgICAgbV9zcGFyZUJ1ZmZlciA9IHN0ZDo6ZXhjaGFu
Z2UobV9kaXNwbGF5QnVmZmVyLCBXVEZNb3ZlKGJ1ZmZlcikpOworfQorCiB9CiAKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhp
Y3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmgKaW5k
ZXggNGRlZDhlNWY5NDk4MjY3MTc0NmM5ZTdmNTMzYWFjNmIxOGFjNmIwYS4uZTQzN2Q3ZGYwZWU4
NDEzOWVhZmUzZTJmZDcyNzE5OGI4ZjYxYTA2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hh
aW4uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oCkBAIC01OCwxOSArNTgsMjMgQEAgcHVibGlj
OgogICAgIC8vIC0gQnVmZmVyIHdpdGggZW1wdHkgc3VyZmFjZSBhbmQgbm9uLWVtcHR5IG1ldGFk
YXRhIGhhbmRsZSBpZiB0aGUgcmVjeWNsZWQgYnVmZmVyIHdhcyBhdmFpbGFibGUKICAgICAvLyAg
IGJ1dCB0aGUgc3VyZmFjZSBpcyBzdGlsbCBpbiB1c2UuCiAgICAgLy8gLSBTdXJmYWNlIGFuZCBo
YW5kbGUuCi0gICAgdmlydHVhbCBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpID0gMDsKKyAgICB2aXJ0
dWFsIEJ1ZmZlciByZWN5Y2xlQnVmZmVyKCk7CiAKICAgICAvLyBQcmVwYXJlcyB0aGUgdGFyZ2V0
IGZvciBkaXNwbGF5IHdpdGggYSBjb250ZW50cyBidWZmZXIuCi0gICAgdmlydHVhbCB2b2lkIHBy
ZXNlbnQoQnVmZmVyKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHByZXNlbnQoQnVmZmVyJiYpOwog
CiAgICAgLy8gUmV0dXJucyB0aGUgbW9zdCByZWNlbnQgcHJlc2VudGVkIGRpc3BsYXkgYnVmZmVy
LiBUaGUgcmVmZXJlbmNlIGlzIHZhbGlkIHVudGlsCiAgICAgLy8gbmV4dCBwcmVzZW50LCByZWN5
Y2xlQnVmZmVyIG9yIGRldGFjaENsaWVudCBjYWxsLgotICAgIHZpcnR1YWwgY29uc3QgQnVmZmVy
JiBkaXNwbGF5QnVmZmVyKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgY29uc3QgQnVmZmVyJiBk
aXNwbGF5QnVmZmVyKCkgY29uc3Q7CiAKICAgICAvLyBEZXRhY2hlcyB0aGUgY2xpZW50IGFuZCBy
ZXR1cm5zIHRoZSBjdXJyZW50IGNvbnRlbnRzIGJ1ZmZlciBtZXRhZGF0YSBoYW5kbGUuCiAgICAg
Ly8gVGhlIGlmIG11bHRpcGxlIGJ1ZmZlcnMgaGF2ZSBiZWVuIHN1Ym1pdHRlZCwgcmVjeWNsZUJ1
ZmZlciBtdXN0IGhhdmUgYmVlbiBjYWxsZWQgYmVmb3JlIGNhbGxpbmcKICAgICAvLyB0aGlzLgot
ICAgIHZpcnR1YWwgdm9pZCogZGV0YWNoQ2xpZW50KCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCog
ZGV0YWNoQ2xpZW50KCk7CisKK3Byb3RlY3RlZDoKKyAgICBCdWZmZXIgbV9kaXNwbGF5QnVmZmVy
OworICAgIEJ1ZmZlciBtX3NwYXJlQnVmZmVyOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbSBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KaW5kZXggMDMxMzhl
ZjE0MzA5ODhkNzE1YTk4Yjc3NzdkM2E1Mzg4YTMyOTlhYS4uMTUzYTNiMDcwYmNjNDg2YTkwNzhm
YWFjYjc4NTNlOWEyYzA5NDY4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLm1tCkBAIC0zOCwzMSArMzgsMTAgQEAgY2xhc3Mg
V2ViR0xMYXllclN3YXBDaGFpbiBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXAKIHB1YmxpYzoKICAgICBleHBsaWNpdCBXZWJHTExheWVyU3dhcENo
YWluKFdlYkdMTGF5ZXIqIGxheWVyKSAgOiBtX2xheWVyKGxheWVyKSB7IH07CiAgICAgfldlYkdM
TGF5ZXJTd2FwQ2hhaW4oKSBvdmVycmlkZSA9IGRlZmF1bHQ7Ci0gICAgdm9pZCBwcmVzZW50KEJ1
ZmZlcikgb3ZlcnJpZGU7Ci0gICAgY29uc3QgQnVmZmVyJiBkaXNwbGF5QnVmZmVyKCkgY29uc3Qg
b3ZlcnJpZGUKLSAgICB7Ci0gICAgICAgIHJldHVybiBtX2Rpc3BsYXlCdWZmZXI7Ci0gICAgfQot
ICAgIEJ1ZmZlciByZWN5Y2xlQnVmZmVyKCkgb3ZlcnJpZGUKLSAgICB7Ci0gICAgICAgIGlmICht
X3NwYXJlQnVmZmVyLnN1cmZhY2UpIHsKLSAgICAgICAgICAgIGlmIChtX3NwYXJlQnVmZmVyLnN1
cmZhY2UtPmlzSW5Vc2UoKSkKLSAgICAgICAgICAgICAgICBtX3NwYXJlQnVmZmVyLnN1cmZhY2Uu
cmVzZXQoKTsKLSAgICAgICAgICAgIHJldHVybiBXVEZNb3ZlKG1fc3BhcmVCdWZmZXIpOwotICAg
ICAgICB9Ci0gICAgICAgIHJldHVybiB7IH07Ci0gICAgfQotICAgIHZvaWQqIGRldGFjaENsaWVu
dCgpIG92ZXJyaWRlCi0gICAgewotICAgICAgICBBU1NFUlQoIW1fc3BhcmVCdWZmZXIuc3VyZmFj
ZSk7Ci0gICAgICAgIHZvaWQqIHJlc3VsdCA9IG1fZGlzcGxheUJ1ZmZlci5oYW5kbGU7Ci0gICAg
ICAgIG1fZGlzcGxheUJ1ZmZlci5oYW5kbGUgPSBudWxscHRyOwotICAgICAgICByZXR1cm4gcmVz
dWx0OwotICAgIH0KKyAgICB2b2lkIHByZXNlbnQoQnVmZmVyJiYpIG92ZXJyaWRlOworCiAgICAg
V2ViQ29yZTo6SU9TdXJmYWNlKiBkaXNwbGF5U3VyZmFjZSgpIHsgcmV0dXJuIG1fZGlzcGxheUJ1
ZmZlci5zdXJmYWNlLmdldCgpOyB9CiBwcml2YXRlOgotICAgIEJ1ZmZlciBtX2Rpc3BsYXlCdWZm
ZXI7Ci0gICAgQnVmZmVyIG1fc3BhcmVCdWZmZXI7CiAgICAgV2ViR0xMYXllciogY29uc3QgbV9s
YXllcjsKIH07CiAKQEAgLTEzMCwxMSArMTA5LDEwIEBAIHByaXZhdGU6CiAKIEBlbmQKIAotdm9p
ZCBXZWJHTExheWVyU3dhcENoYWluOjpwcmVzZW50KEJ1ZmZlciBidWZmZXIpCit2b2lkIFdlYkdM
TGF5ZXJTd2FwQ2hhaW46OnByZXNlbnQoQnVmZmVyJiYgYnVmZmVyKQogewogICAgIEFTU0VSVCgh
bV9zcGFyZUJ1ZmZlci5zdXJmYWNlKTsKLSAgICBtX3NwYXJlQnVmZmVyID0gV1RGTW92ZShtX2Rp
c3BsYXlCdWZmZXIpOwotICAgIG1fZGlzcGxheUJ1ZmZlciA9IFdURk1vdmUoYnVmZmVyKTsKKyAg
ICBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cHJlc2VudChXVEZNb3ZlKGJ1
ZmZlcikpOwogICAgIFttX2xheWVyIHByZXBhcmVGb3JEaXNwbGF5XTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4
dEdMT3BlbkdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9H
cmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAKaW5kZXggODg2NzAxNTIyODQ2MzBjNzRiZDdiNDM3
ZTVhYzg3MDY4MzYzYjExYS4uNzQ3MTc3ZjI2YTM5YTMwNGQ5ZDlhMGU4MDQ2ZDM2MGVkZjRlZWQw
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dy
YXBoaWNzQ29udGV4dEdMT3BlbkdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuY3BwCkBAIC0xOTYsNyArMTk2
LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cHJlcGFyZUZvckRpc3BsYXkoKQog
fQogI2VuZGlmCiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50UmVuZGVyaW5n
UmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKiBpbWFnZUJ1ZmZlcikKK3ZvaWQgR3JhcGhpY3ND
b250ZXh0R0xPcGVuR0w6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVy
JiBpbWFnZUJ1ZmZlcikKIHsKICAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVudCgpKQogICAgICAg
ICByZXR1cm47CkBAIC0yMDUsMTAgKzIwNSwxMCBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dEdMT3Bl
bkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciogaW1hZ2VCdQog
ICAgIGF1dG8gaW1hZ2VEYXRhID0gcmVhZFJlbmRlcmluZ1Jlc3VsdHMoKTsKICAgICBpZiAoIWlt
YWdlRGF0YSkKICAgICAgICAgcmV0dXJuOwotICAgIHBhaW50VG9DYW52YXMoaW1hZ2VEYXRhLnJl
bGVhc2VOb25OdWxsKCksIGltYWdlQnVmZmVyLT5iYWNrZW5kU2l6ZSgpLCBpbWFnZUJ1ZmZlci0+
Y29udGV4dCgpKTsKKyAgICBwYWludFRvQ2FudmFzKGNvbnRleHRBdHRyaWJ1dGVzKCksIGltYWdl
RGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci5iYWNrZW5kU2l6ZSgpLCBpbWFnZUJ1
ZmZlci5jb250ZXh0KCkpOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWlu
dENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXIqIGltYWdlQnVmZmVyKQordm9p
ZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFz
KEltYWdlQnVmZmVyJiBpbWFnZUJ1ZmZlcikKIHsKICAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVu
dCgpKQogICAgICAgICByZXR1cm47CkBAIC0yMTcsMjIgKzIxNywzNSBAQCB2b2lkIEdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZm
ZXIqIGltYWdlQgogICAgIGF1dG8gaW1hZ2VEYXRhID0gcmVhZENvbXBvc2l0ZWRSZXN1bHRzKCk7
CiAgICAgaWYgKCFpbWFnZURhdGEpCiAgICAgICAgIHJldHVybjsKLSAgICBwYWludFRvQ2FudmFz
KGltYWdlRGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci0+YmFja2VuZFNpemUoKSwg
aW1hZ2VCdWZmZXItPmNvbnRleHQoKSk7CisgICAgcGFpbnRUb0NhbnZhcyhjb250ZXh0QXR0cmli
dXRlcygpLCBpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1hZ2VCdWZmZXIuYmFja2VuZFNp
emUoKSwgaW1hZ2VCdWZmZXIuY29udGV4dCgpKTsKIH0KIAogUmVmUHRyPEltYWdlRGF0YT4gR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvSW1hZ2VEYXRhKCkK
K3sKKyAgICAvLyBSZWFkaW5nIHByZW11bHRpcGxpZWQgYWxwaGEgd291bGQgaW52b2x2ZSB1bnBy
ZW11bHRpcGx5aW5nLCB3aGljaCBpcyBsb3NzeS4KKyAgICBpZiAoY29udGV4dEF0dHJpYnV0ZXMo
KS5wcmVtdWx0aXBsaWVkQWxwaGEpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVy
biByZWFkUmVuZGVyaW5nUmVzdWx0c0ZvclBhaW50aW5nKCk7Cit9CisKK1JlZlB0cjxJbWFnZURh
dGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpyZWFkUmVuZGVyaW5nUmVzdWx0c0ZvclBhaW50
aW5nKCkKIHsKICAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVudCgpKQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKICAgICBpZiAoZ2V0SW50ZXJuYWxGcmFtZWJ1ZmZlclNpemUoKS5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgIC8vIFJlYWRpbmcgcHJlbXVsdGlwbGllZCBh
bHBoYSB3b3VsZCBpbnZvbHZlIHVucHJlbXVsdGlwbHlpbmcsIHdoaWNoIGlzCi0gICAgLy8gbG9z
c3kuCi0gICAgaWYgKGNvbnRleHRBdHRyaWJ1dGVzKCkucHJlbXVsdGlwbGllZEFscGhhKQotICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKICAgICByZXR1cm4gcmVhZFJlbmRlcmluZ1Jlc3VsdHMoKTsK
IH0KIAorUmVmUHRyPEltYWdlRGF0YT4gR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRDb21w
b3NpdGVkUmVzdWx0c0ZvclBhaW50aW5nKCkKK3sKKyAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVu
dCgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBpZiAoZ2V0SW50ZXJuYWxGcmFtZWJ1
ZmZlclNpemUoKS5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVy
biByZWFkQ29tcG9zaXRlZFJlc3VsdHMoKTsKK30KKwogI2lmICFQTEFURk9STShDT0NPQSkKIFJl
ZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpyZWFkQ29tcG9zaXRlZFJl
c3VsdHMoKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
b3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaAppbmRleCA1ODY4NTA4
NDk4ZTVlNjRkODgxZDk2MTRlNjc3ODA5YjgyZGNlMDBhLi5lNDRiZmQ1ZDlmOGFkOWQ3YzUyNzYw
MWEyNTJhNzcwZWQ0Zjk3OTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaApA
QCAtNDU4LDkgKzQ1OCwxMiBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaXNwYXRjaENvbnRleHRDaGFu
Z2VkTm90aWZpY2F0aW9uKCk7CiAgICAgdm9pZCBzaW11bGF0ZUNvbnRleHRDaGFuZ2VkKCkgZmlu
YWw7CiAKLSAgICB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVy
KikgZmluYWw7CisgICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1
ZmZlciYpIGZpbmFsOwogICAgIFJlZlB0cjxJbWFnZURhdGE+IHBhaW50UmVuZGVyaW5nUmVzdWx0
c1RvSW1hZ2VEYXRhKCkgZmluYWw7Ci0gICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9D
YW52YXMoSW1hZ2VCdWZmZXIqKSBmaW5hbDsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3Vs
dHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYpIGZpbmFsOworCisgICAgUmVmUHRyPEltYWdlRGF0YT4g
cmVhZFJlbmRlcmluZ1Jlc3VsdHNGb3JQYWludGluZygpOworICAgIFJlZlB0cjxJbWFnZURhdGE+
IHJlYWRDb21wb3NpdGVkUmVzdWx0c0ZvclBhaW50aW5nKCk7CiAKICNpZiBVU0UoT1BFTkdMKSAm
JiBFTkFCTEUoV0VCR0wyKQogICAgIHZvaWQgcHJpbWl0aXZlUmVzdGFydEluZGV4KEdDR0x1aW50
KTsKQEAgLTUxNSw2ICs1MTgsOCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgcG9zc2libGVG
b3JtYXRBbmRUeXBlRm9ySW50ZXJuYWxGb3JtYXQoR0NHTGVudW0gaW50ZXJuYWxGb3JtYXQsIEdD
R0xlbnVtJiBmb3JtYXQsIEdDR0xlbnVtJiB0eXBlKTsKICNlbmRpZiAvLyAhVVNFKEFOR0xFKQog
CisgICAgc3RhdGljIHZvaWQgcGFpbnRUb0NhbnZhcyhjb25zdCBHcmFwaGljc0NvbnRleHRHTEF0
dHJpYnV0ZXMmLCBSZWY8SW1hZ2VEYXRhPiYmLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBH
cmFwaGljc0NvbnRleHQmKTsKKwogcHJpdmF0ZToKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBH
cmFwaGljc0NvbnRleHRHTE9wZW5HTChHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEhvc3RX
aW5kb3cqLCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTCogc2hhcmVkQ29udGV4dCA9IG51bGxwdHIs
IEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluKiA9IG51bGxwdHIpOwpAQCAtNTQy
LDcgKzU0Nyw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZFJlbmRlcmlu
Z1Jlc3VsdHMoKTsKICAgICBSZWZQdHI8SW1hZ2VEYXRhPiByZWFkQ29tcG9zaXRlZFJlc3VsdHMo
KTsKICAgICBSZWZQdHI8SW1hZ2VEYXRhPiByZWFkUGl4ZWxzRm9yUGFpbnRSZXN1bHRzKCk7Ci0g
ICAgdm9pZCBwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYsIGNvbnN0IEludFNpemUmIGNh
bnZhc1NpemUsIEdyYXBoaWNzQ29udGV4dCYpOwogCiAgICAgYm9vbCByZXNoYXBlRkJPcyhjb25z
dCBJbnRTaXplJik7CiAgICAgdm9pZCBwcmVwYXJlVGV4dHVyZUltcGwoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBi
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcApp
bmRleCBkNTc3ZTQzNDk5ZjE4MTQ3OTFjOGEwZWY3MWNiMzRhMDI0YTFmYWUyLi5lMTY3ZWMwMjY0
NDIwNTY5ODdiZTk4ZTU0Nzk2YzYzMTY1NTk2MTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCkBAIC0zMzcsMTAg
KzMzNywxNCBAQCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpSZW1vdGVSZW5kZXJpbmdCYWNr
ZW5kV3JhcHBlcjo6flJlbW90ZVJlbmRlcmluZ0JhY2tlbgogfQogCiAjaWYgRU5BQkxFKFdFQkdM
KQotdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjcmVhdGVHcmFwaGljc0NvbnRleHRH
TChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMgYXR0cmlidXRlcywgR3JhcGhp
Y3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcikKK3ZvaWQg
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0woV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIEdyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlbmRlcmluZ0JhY2tl
bmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogeworICAgIGF1dG8qIHJl
bmRlcmluZ0JhY2tlbmQgPSBtX3JlbW90ZVJlbmRlcmluZ0JhY2tlbmRNYXAuZ2V0KHJlbmRlcmlu
Z0JhY2tlbmRJZGVudGlmaWVyKTsKKyAgICBpZiAoIXJlbmRlcmluZ0JhY2tlbmQpCisgICAgICAg
IHJldHVybjsKKwogICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9yZW1vdGVHcmFwaGljc0NvbnRleHRH
TE1hcC5lbnN1cmUoZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBbJl0oKSB7Ci0gICAgICAg
IHJldHVybiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKGF0dHJpYnV0ZXMsICp0aGlz
LCBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpOworICAgICAgICByZXR1cm4gUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0w6OmNyZWF0ZShhdHRyaWJ1dGVzLCAqdGhpcywgZ3JhcGhpY3NDb250ZXh0
R0xJZGVudGlmaWVyLCByZW5kZXJpbmdCYWNrZW5kLT5nZXQoKSk7CiAgICAgfSk7CiAgICAgQVNT
RVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgg
Yi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCmlu
ZGV4IGViYjBkMDA4ZjNkNzEyOTIxN2I4ZTk2ZWZhMTliZDUxZmZhZmExNjcuLjVlODIwMzM1N2Y3
ODFmZGMwNTNlMTVkY2M4ZmM4ZTE1OTYwNDRlNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaApAQCAtMTM4LDcgKzEzOCw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZWxlYXNlUmVuZGVyaW5nQmFja2VuZChSZW5kZXJpbmdC
YWNrZW5kSWRlbnRpZmllcik7CiAKICNpZiBFTkFCTEUoV0VCR0wpCi0gICAgdm9pZCBjcmVhdGVH
cmFwaGljc0NvbnRleHRHTChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEdy
YXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcik7CisgICAgdm9pZCBjcmVhdGVHcmFwaGljc0NvbnRl
eHRHTChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEdyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllciwgUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIpOwogICAgIHZvaWQgcmVs
ZWFzZUdyYXBoaWNzQ29udGV4dEdMKEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcik7CiAjZW5k
aWYKIApAQCAtMjExLDcgKzIxMSw3IEBAIHByaXZhdGU6CiAgICAgcHVibGljOgogICAgICAgICBS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3JhcHBlcihSZWY8UmVtb3RlUmVuZGVyaW5nQmFja2VuZD4m
Jik7CiAgICAgICAgIH5SZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3JhcHBlcigpOwotCisgICAgICAg
IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmIGdldCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVtb3RlUmVu
ZGVyaW5nQmFja2VuZC5nZXQoKTsgfQogICAgIHByaXZhdGU6CiAgICAgICAgIFJlZjxSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kPiBtX3JlbW90ZVJlbmRlcmluZ0JhY2tlbmQ7CiAgICAgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dl
YlByb2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggMzBmNWMyOTg4NjIxNGY5MTA0ZjFhZmEwODM1YjIz
OGEzNmRjNmVmMS4uMmI2OGUzYjA4N2E5MzVkMTllYjFkNzk3YmJlODNhZDlkMzgwNDgwMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rp
b25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KQEAgLTI2LDcgKzI2LDcgQEAgbWVzc2FnZXMgLT4g
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyBXYW50c0Rpc3BhdGNoTWVzc2FnZSB7CiAgICAgdm9p
ZCBDcmVhdGVSZW5kZXJpbmdCYWNrZW5kKFdlYktpdDo6UmVuZGVyaW5nQmFja2VuZElkZW50aWZp
ZXIgaWRlbnRpZmllciwgSVBDOjpTZW1hcGhvcmUgcmVzdW1lRGlzcGxheUxpc3RTZW1hcGhvcmUp
CiAgICAgdm9pZCBSZWxlYXNlUmVuZGVyaW5nQmFja2VuZChXZWJLaXQ6OlJlbmRlcmluZ0JhY2tl
bmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogI2lmIEVOQUJMRShXRUJH
TCkKLSAgICB2b2lkIENyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKHN0cnVjdCBXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXMgYXR0cmlidXRlcywgV2ViS2l0OjpHcmFwaGljc0NvbnRl
eHRHTElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKQorICAgIHZvaWQgQ3Jl
YXRlR3JhcGhpY3NDb250ZXh0R0woc3RydWN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlcyBhdHRyaWJ1dGVzLCBXZWJLaXQ6OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBn
cmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFdlYktpdDo6UmVuZGVyaW5nQmFja2VuZElkZW50
aWZpZXIgcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIpCiAgICAgdm9pZCBSZWxlYXNlR3JhcGhp
Y3NDb250ZXh0R0woV2ViS2l0OjpHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3ND
b250ZXh0R0xJZGVudGlmaWVyKQogI2VuZGlmCiAgICAgdm9pZCBDbGVhck5vd1BsYXlpbmdJbmZv
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVH
cmFwaGljc0NvbnRleHRHTC5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3Mv
UmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuY3BwCmluZGV4IDc5YjM0NTk2ZmJmMmQwZGZjOTgxODY1
MWJkY2ZlYjRiMGEwYzg3NWQuLmVhMzExM2IzZjFkOWQ0NGJhMzhjODlmNTAzMTU4MDcyYTlmNThm
OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVH
cmFwaGljc0NvbnRleHRHTC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmNwcApAQCAtMzksMjAgKzM5LDIxIEBAIG5hbWVz
cGFjZSBXZWJLaXQgewogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKICNpZiAhUExBVEZPUk0o
Q09DT0EpCi1zdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IFJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMOjpjcmVhdGUoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xB
dHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBncHVDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3ND
b250ZXh0R0xJZGVudGlmaWVyKQorc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBo
aWNzQ29udGV4dEdMQXR0cmlidXRlcyYsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBHcmFw
aGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmKQogewogICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBudWxscHRyOwogfQogI2VuZGlmCiAK
LVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29u
dGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlZjxHcmFwaGlj
c0NvbnRleHRHTE9wZW5HTD4gY29udGV4dCkKK1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpSZW1v
dGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24s
IEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBpZGVudGlmaWVyLCBSZWY8R3JhcGhpY3NDb250
ZXh0R0xPcGVuR0w+IGNvbnRleHQsIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmIHJlbmRlcmluZ0Jh
Y2tlbmQpCiAgICAgOiBtX2NvbnRleHQoV1RGTW92ZShjb250ZXh0KSkKLSAgICAsIG1fZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzcyhtYWtlV2Vha1B0cihncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
KSkKLSAgICAsIG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKGdyYXBoaWNzQ29udGV4dEdM
SWRlbnRpZmllcikKKyAgICAsIG1fZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcyhtYWtlV2Vha1B0
cihjb25uZWN0aW9uKSkKKyAgICAsIG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKGlkZW50
aWZpZXIpCisgICAgLCBtX3JlbmRlcmluZ0JhY2tlbmQobWFrZVJlZihyZW5kZXJpbmdCYWNrZW5k
KSkKIHsKICAgICBpZiAoYXV0byogZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcyA9IG1fZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2Vzcy5nZXQoKSkKLSAgICAgICAgZ3B1Q29ubmVjdGlvblRvV2ViUHJv
Y2Vzcy0+bWVzc2FnZVJlY2VpdmVyTWFwKCkuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBncmFwaGljc0Nv
bnRleHRHTElkZW50aWZpZXIudG9VSW50NjQoKSwgKnRoaXMpOworICAgICAgICBncHVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzLT5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5hZGRNZXNzYWdlUmVjZWl2ZXIo
TWVzc2FnZXM6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCks
IG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLnRvVUludDY0KCksICp0aGlzKTsKICAgICBt
X2NvbnRleHQtPmFkZENsaWVudCgqdGhpcyk7CiAgICAgU3RyaW5nIGV4dGVuc2lvbnMgPSBtX2Nv
bnRleHQtPmdldFN0cmluZyhHcmFwaGljc0NvbnRleHRHTDo6RVhURU5TSU9OUyk7CiAgICAgU3Ry
aW5nIHJlcXVlc3RhYmxlRXh0ZW5zaW9ucyA9IG1fY29udGV4dC0+Z2V0U3RyaW5nKEV4dGVuc2lv
bnNHTDo6UkVRVUVTVEFCTEVfRVhURU5TSU9OU19BTkdMRSk7CkBAIC0xMzcsNiArMTM4LDQ1IEBA
IHZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6Om5vdGlmeU1hcmtDb250ZXh0Q2hhbmdlZCgp
CiAgICAgbV9jb250ZXh0LT5tYXJrQ29udGV4dENoYW5nZWQoKTsKIH0KIAordm9pZCBSZW1vdGVH
cmFwaGljc0NvbnRleHRHTDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6
UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGltYWdlQnVmZmVyLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcGFpbnRJbWFnZURhdGFUb0lt
YWdlQnVmZmVyKG1fY29udGV4dC0+cmVhZFJlbmRlcmluZ1Jlc3VsdHNGb3JQYWludGluZygpLCBp
bWFnZUJ1ZmZlciwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29y
ZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGltYWdlQnVmZmVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcGFpbnRJbWFnZURhdGFU
b0ltYWdlQnVmZmVyKG1fY29udGV4dC0+cmVhZENvbXBvc2l0ZWRSZXN1bHRzRm9yUGFpbnRpbmco
KSwgaW1hZ2VCdWZmZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6cGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKFJlZlB0
cjxXZWJDb3JlOjpJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBXZWJDb3JlOjpSZW5kZXJpbmdSZXNv
dXJjZUlkZW50aWZpZXIgdGFyZ2V0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgLy8gRklYTUU6IFdlIGRvIG5vdCBoYXZlIGZ1bmN0aW9uaW5n
IHJlYWQvd3JpdGUgZmVuY2VzIGluIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQuIFRodXMgdGhpcyBp
cyBzeW5jaHJvbm91cywKKyAgICAvLyBhcyBhcmUgdGhlIG1lc3NhZ2VzIHRoYXQgY2FsbCB0aGVz
ZS4KKyAgICBMb2NrIG11dGV4OworICAgIENvbmRpdGlvbiBjb25kaXRpb25WYXJpYWJsZTsKKyAg
ICBib29sIGlzRmluaXNoZWQgPSBmYWxzZTsKKyAgICBtX3JlbmRlcmluZ0JhY2tlbmQtPmRpc3Bh
dGNoKFsmXSgpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBpbWFnZUJ1ZmZlciA9IG1fcmVu
ZGVyaW5nQmFja2VuZC0+cmVtb3RlUmVzb3VyY2VDYWNoZSgpLmNhY2hlZEltYWdlQnVmZmVyKHRh
cmdldCkpIHsKKyAgICAgICAgICAgIC8vIEhlcmUgd2UgZG8gbm90IHRyeSB0byBwbGF5IGJhY2sg
cGVuZGluZyBjb21tYW5kcyBmb3IgaW1hZ2VCdWZmZXIuIEN1cnJlbnRseSB0aGlzIGNhbGwgaXMg
b25seSBtYWRlIGZvciBlbXB0eQorICAgICAgICAgICAgLy8gaW1hZ2UgYnVmZmVycyBhbmQgdGhl
cmUncyBubyBnb29kIHdheSB0byBhZGQgZGlzcGxheSBsaXN0cy4KKyAgICAgICAgICAgIGlmIChp
bWFnZURhdGEpCisgICAgICAgICAgICAgICAgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50
VG9DYW52YXMobV9jb250ZXh0LT5jb250ZXh0QXR0cmlidXRlcygpLCBpbWFnZURhdGEucmVsZWFz
ZU5vbk51bGwoKSwgaW1hZ2VCdWZmZXItPmJhY2tlbmRTaXplKCksIGltYWdlQnVmZmVyLT5jb250
ZXh0KCkpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGltYWdlQnVmZmVyLT5j
b250ZXh0KCkuY2xlYXJSZWN0KHsgSW50UG9pbnQoKSwgaW1hZ2VCdWZmZXItPmJhY2tlbmRTaXpl
KCkgfSk7CisgICAgICAgICAgICAvLyBVbmZvcnR1bmF0ZWx5ICJmbHVzaCIgaW1wbGVtZW50YXRp
b24gaW4gUmVtb3RlUmVuZGVyaW5nQmFja2VuZCBvdmVybG9hZHMgb3JkZXJpbmcgYW5kIGVmZmVj
dHMuCisgICAgICAgICAgICBpbWFnZUJ1ZmZlci0+Zmx1c2hDb250ZXh0KCk7CisgICAgICAgIH0K
KyAgICAgICAgYXV0byBsb2NrZXIgPSBob2xkTG9jayhtdXRleCk7CisgICAgICAgIGlzRmluaXNo
ZWQgPSB0cnVlOworICAgICAgICBjb25kaXRpb25WYXJpYWJsZS5ub3RpZnlPbmUoKTsKKyAgICB9
KTsKKyAgICBzdGQ6OnVuaXF1ZV9sb2NrPExvY2s+IGxvY2sobXV0ZXgpOworICAgIGNvbmRpdGlv
blZhcmlhYmxlLndhaXQobG9jaywgWyZdIHsKKyAgICAgICAgcmV0dXJuIGlzRmluaXNoZWQ7Cisg
ICAgfSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
Z3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaAppbmRleCAwMDE1OWFjOGI1ODZhOGI2
MmEzZGRhM2E1NzAwNGU4ODNlMTU2ZDA4Li5hYWE1NzQ5ZDBiYzU0NjQ2YjJjMWY4ZjRjMzllNThi
ZGE5NjFlODRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3Mv
UmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
Z3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaApAQCAtMzEsNyArMzEsNyBAQAogI2lu
Y2x1ZGUgIkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIk1lc3NhZ2VS
ZWNlaXZlci5oIgogI2luY2x1ZGUgIk1lc3NhZ2VTZW5kZXIuaCIKLQorI2luY2x1ZGUgIlJlbW90
ZVJlbmRlcmluZ0JhY2tlbmQuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0V4dGVuc2lvbnNHTC5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CkBAIC01OCwxNCArNTgsMTUgQEAgY2xhc3MgUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0wKICAgICA6IHB1YmxpYyBJUEM6Ok1lc3NhZ2VTZW5kZXIKICAgICAs
IHByaXZhdGUgSVBDOjpNZXNzYWdlUmVjZWl2ZXIKICAgICAsIHByaXZhdGUgV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0R0w6OkNsaWVudCB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBw
dWJsaWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRH
TD4gY3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYsIEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpOwor
ICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IGNyZWF0
ZShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kJik7CiAgICAgflJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKCkgb3ZlcnJpZGU7
CiAKICAgICBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzKiBncHVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzKCkgY29uc3Q7CiAKIHByb3RlY3RlZDoKLSAgICBSZW1vdGVHcmFwaGljc0NvbnRleHRHTChj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZWY8V2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w+KTsKKyAgICBSZW1vdGVHcmFwaGljc0NvbnRleHRHTChj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZWY8V2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w+LCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kJik7CiAKICAg
ICAvLyBJUEM6Ok1lc3NhZ2VTZW5kZXIgb3ZlcnJpZGVzLgogICAgIElQQzo6Q29ubmVjdGlvbiog
bWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKSBjb25zdCBmaW5hbDsKQEAgLTkyLDEyICs5MywxNyBA
QCBwcm90ZWN0ZWQ6CiAjZW5kaWYKICAgICB2b2lkIGdldEVycm9yKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQodWludDMyX3QpPiYmKTsKICAgICB2b2lkIHN5bnRoZXNpemVHTEVycm9yKHVpbnQzMl90
IGVycm9yKTsKKyAgICB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6
OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYm
KTsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5k
ZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CiAK
ICNpbmNsdWRlICJSZW1vdGVHcmFwaGljc0NvbnRleHRHTEZ1bmN0aW9uc0dlbmVyYXRlZC5oIiAv
LyBOT0xJTlQKIAorICAgIHZvaWQgcGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKFJlZlB0cjxX
ZWJDb3JlOjpJbWFnZURhdGE+JiYsIFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmll
ciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKwogICAgIFJlZjxXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTE9wZW5HTD4gbV9jb250ZXh0OwogICAgIFdlYWtQdHI8R1BVQ29ubmVjdGlv
blRvV2ViUHJvY2Vzcz4gbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOwogICAgIEdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllciBtX2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcjsKKyAgICBS
ZWY8UmVtb3RlUmVuZGVyaW5nQmFja2VuZD4gbV9yZW5kZXJpbmdCYWNrZW5kOwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
Z3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wubWVzc2FnZXMu
aW4KaW5kZXggN2ExOTI1ZGJiMjdhYmYzZDMwMzRjYjdmY2IzOGEzZjM5M2UzZGNmYS4uZDE1MDk1
OWFhYTVlNTRhM2VjNTBiNzRhMjIxOTcwODRiMDBkYTY4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2Vz
LmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGlj
c0NvbnRleHRHTC5tZXNzYWdlcy5pbgpAQCAtMzYsNiArMzYsOSBAQCBtZXNzYWdlcyAtPiBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTCBOb3RSZWZDb3VudGVkIHsKICAgICB2b2lkIE5vdGlmeU1hcmtD
b250ZXh0Q2hhbmdlZCgpCiAgICAgdm9pZCBTeW50aGVzaXplR0xFcnJvcih1aW50MzJfdCBlcnJv
cikKICAgICB2b2lkIEdldEVycm9yKCkgLT4gKHVpbnQzMl90IHJldHVyblZhbHVlKSBTeW5jaHJv
bm91cworICAgIHZvaWQgUGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVu
ZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGlkZW50aWZpZXIpIC0+ICgpIFN5bmNocm9ub3VzCisg
ICAgdm9pZCBQYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5n
UmVzb3VyY2VJZGVudGlmaWVyIGlkZW50aWZpZXIpIC0+ICgpIFN5bmNocm9ub3VzCisKIAogICAg
IHZvaWQgU2V0RmFpbE5leHRHUFVTdGF0dXNDaGVjaygpCiAgICAgdm9pZCBNb3ZlRXJyb3JzVG9T
eW50aGV0aWNFcnJvckxpc3QoKSAtPiAoYm9vbCByZXR1cm5WYWx1ZSkgU3luY2hyb25vdXMKQEAg
LTI5Miw0ICsyOTUsMyBAQCBtZXNzYWdlcyAtPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBOb3RS
ZWZDb3VudGVkIHsKIH0KIAogI2VuZGlmCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29h
LmNwcAppbmRleCA4ZTJkMWZjNjUxODYyODM5NWU5NzQxYzQ0ZTdhYzg1MWIwOGVmNjI3Li4yMmIy
MTUzMGZhYjU5YjFjNDU1YjIxOThmMmVlZjJhNGY4ZGU5NzgxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNz
Q29udGV4dEdMQ29jb2EuY3BwCkBAIC0zNyw2MyArMzcsMzUgQEAgdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiAKIG5hbWVzcGFjZSB7CiAKLWNsYXNzIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29j
b2EgZmluYWwgOiBwdWJsaWMgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wsIHByaXZhdGUgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4geworY2xhc3MgUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0xDb2NvYSBmaW5hbCA6IHB1YmxpYyBSZW1vdGVHcmFwaGljc0NvbnRleHRH
TCB7CiBwdWJsaWM6Ci0gICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYShjb25zdCBXZWJD
b3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKTsKKyAgICBSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYs
IEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIs
IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmKTsKICAgICB+UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xD
b2NvYSgpIGZpbmFsID0gZGVmYXVsdDsKIAogICAgIC8vIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
IG92ZXJyaWRlcy4KICAgICB2b2lkIHByZXBhcmVGb3JEaXNwbGF5KENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoV1RGOjpNYWNoU2VuZFJpZ2h0JiYpPiYmKSBmaW5hbDsKLQotICAgIC8vIEdyYXBoaWNz
Q29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluIG92ZXJyaWRlcy4KLSAgICBCdWZmZXIgcmVjeWNs
ZUJ1ZmZlcigpIGZpbmFsOwotICAgIHZvaWQgcHJlc2VudChCdWZmZXIpIGZpbmFsOwotICAgIGNv
bnN0IEJ1ZmZlciYgZGlzcGxheUJ1ZmZlcigpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQqIGRldGFj
aENsaWVudCgpIGZpbmFsOwogcHJpdmF0ZToKLSAgICBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFj
ZVN3YXBDaGFpbjo6QnVmZmVyIG1fZGlzcGxheUJ1ZmZlcjsKKyAgICBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiBtX3N3YXBDaGFpbjsKIH07CiAKIH0KIAotc3Rk
Ojp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYg
YXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgZ3B1Q29ubmVjdGlvblRvV2Vi
UHJvY2VzcywgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRl
bnRpZmllcikKLXsKLSAgICByZXR1cm4gc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMPihuZXcgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYShhdHRyaWJ1dGVzLCBncHVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzLCBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpKTsKLX0K
LQotUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xD
b2NvYShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0
ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIEdyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllciBpZGVudGlmaWVyKQotICAgIDogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wo
YXR0cmlidXRlcywgY29ubmVjdGlvbiwgaWRlbnRpZmllciwgR3JhcGhpY3NDb250ZXh0R0xPcGVu
R0w6OmNyZWF0ZUZvckdQVVByb2Nlc3MoYXR0cmlidXRlcywgdGhpcykpCi17Ci19Ci0KLUdyYXBo
aWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluOjpCdWZmZXIgUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xDb2NvYTo6cmVjeWNsZUJ1ZmZlcigpCi17Ci0gICAgcmV0dXJuIFdURk1vdmUobV9kaXNw
bGF5QnVmZmVyKTsKLX0KLQotdm9pZCBSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpwcmVz
ZW50KEJ1ZmZlciBidWZmZXIpCi17Ci0gICAgQVNTRVJUKCFtX2Rpc3BsYXlCdWZmZXIuc3VyZmFj
ZSk7Ci0gICAgbV9kaXNwbGF5QnVmZmVyID0gV1RGTW92ZShidWZmZXIpOwotfQotCi1jb25zdCBH
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6QnVmZmVyJiBSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTENvY29hOjpkaXNwbGF5QnVmZmVyKCkgY29uc3QKK3N0ZDo6dW5pcXVlX3B0cjxS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTD4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIEdyYXBoaWNzQ29udGV4dEdMSWRl
bnRpZmllciBpZGVudGlmaWVyLCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kJiByZW5kZXJpbmdCYWNr
ZW5kKQogewotICAgIHJldHVybiBtX2Rpc3BsYXlCdWZmZXI7CisgICAgcmV0dXJuIG1ha2VVbmlx
dWU8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYT4oYXR0cmlidXRlcywgZ3B1Q29ubmVjdGlv
biwgaWRlbnRpZmllciwgcmVuZGVyaW5nQmFja2VuZCk7CiB9CiAKLXZvaWQqIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMQ29jb2E6OmRldGFjaENsaWVudCgpCitSZW1vdGVHcmFwaGljc0NvbnRleHRH
TENvY29hOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6OkdyYXBo
aWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyYgY29ubmVjdGlvbiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmIHJlbmRlcmluZ0JhY2tlbmQpCisgICAgOiBSZW1vdGVH
cmFwaGljc0NvbnRleHRHTChhdHRyaWJ1dGVzLCBjb25uZWN0aW9uLCBpZGVudGlmaWVyLCBHcmFw
aGljc0NvbnRleHRHTE9wZW5HTDo6Y3JlYXRlRm9yR1BVUHJvY2VzcyhhdHRyaWJ1dGVzLCAmbV9z
d2FwQ2hhaW4pLCByZW5kZXJpbmdCYWNrZW5kKQogewotICAgIHJldHVybiBzdGQ6OmV4Y2hhbmdl
KG1fZGlzcGxheUJ1ZmZlci5oYW5kbGUsIG51bGxwdHIpOwogfQogCiB2b2lkIFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMQ29jb2E6OnByZXBhcmVGb3JEaXNwbGF5KENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoV1RGOjpNYWNoU2VuZFJpZ2h0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIG1f
Y29udGV4dC0+cHJlcGFyZUZvckRpc3BsYXkoKTsKLSAgICBhdXRvIGRpc3BsYXlCdWZmZXIgPSBX
VEZNb3ZlKG1fZGlzcGxheUJ1ZmZlci5zdXJmYWNlKTsKICAgICBNYWNoU2VuZFJpZ2h0IHNlbmRS
aWdodDsKLSAgICBpZiAoZGlzcGxheUJ1ZmZlcikKLSAgICAgICAgc2VuZFJpZ2h0ID0gZGlzcGxh
eUJ1ZmZlci0+Y3JlYXRlU2VuZFJpZ2h0KCk7CisgICAgaWYgKGF1dG8qIHN1cmZhY2UgPSBtX3N3
YXBDaGFpbi5kaXNwbGF5QnVmZmVyKCkuc3VyZmFjZS5nZXQoKSkKKyAgICAgICAgc2VuZFJpZ2h0
ID0gc3VyZmFjZS0+Y3JlYXRlU2VuZFJpZ2h0KCk7CiAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RG
TW92ZShzZW5kUmlnaHQpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwIGIvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwCmluZGV4IDJjNzYy
NTE4NmFlZTE1ZDc3MmI3NjRiZGQ1NTlmMGExYzI3MGJkNDEuLjdjZGM2ZWJjMzA2NDhkMDAzMTg0
NGJlYjI1ZGFjNDliZjRmOWU2NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHAKQEAgLTkyLDYg
KzkyLDExIEBAIHZvaWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6ZGlzY29ubmVjdCgpCiAgICAg
bV9ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLT5jb25uZWN0aW9uKCkucmVtb3ZlV29ya1F1ZXVl
TWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjptZXNzYWdl
UmVjZWl2ZXJOYW1lKCksIG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIudG9VSW50NjQoKSk7
CiB9CiAKK3ZvaWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6ZGlzcGF0Y2goRnVuY3Rpb248dm9p
ZCgpPiYmIHRhc2spCit7CisgICAgbV93b3JrUXVldWUtPmRpc3BhdGNoKFdURk1vdmUodGFzaykp
OworfQorCiBJUEM6OkNvbm5lY3Rpb24qIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6Om1lc3NhZ2VT
ZW5kZXJDb25uZWN0aW9uKCkgY29uc3QKIHsKICAgICByZXR1cm4gJm1fZ3B1Q29ubmVjdGlvblRv
V2ViUHJvY2Vzcy0+Y29ubmVjdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQ
cm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaCBiL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmgKaW5kZXggYjdhZWUy
NjI3NzA1YmI5YWNjMTAxOWQ3MTU1ZWYyN2UxNTNkMmIyOC4uZTA1OTZiZGVlMjUyODVlNzc5NzQx
YjJiNjE2MjJiNjBhNzY2NzMzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5oCkBAIC04MCw2ICs4MCw5
IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZGlzY29ubmVjdCgpOwogCisgICAgLy8gUnVucyBGdW5j
dGlvbiBpbiBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kIHRhc2sgcXVldWUuCisgICAgdm9pZCBkaXNw
YXRjaChGdW5jdGlvbjx2b2lkKCk+JiYpOworCiBwcml2YXRlOgogICAgIFJlbW90ZVJlbmRlcmlu
Z0JhY2tlbmQoR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIFJlbmRlcmluZ0JhY2tlbmRJZGVu
dGlmaWVyLCBJUEM6OlNlbWFwaG9yZSYmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eS5jcHAKaW5kZXggZjI5YmUwMDZlYjdiOTc2NGI3ODJkOTE2MjVjODAxNjBmZjhm
MzZmMy4uMWVkZDk3ZjBmNmE3YWMzYzBiMWQ2YjY5ZDJmMTdjZmI2YjdlMTM0MCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0Nv
bnRleHRHTFByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuY3BwCkBAIC0zMyw2ICszMyw3IEBACiAj
aW5jbHVkZSAiUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJl
bW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nl
c3MuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0ltYWdlQnVmZmVyLmg+CiAKICNpZiBQTEFURk9STShD
T0NPQSkKICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dENHLmg+CkBAIC00MywxOCAr
NDQsMTggQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwog
Ci1SZWZQdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eT4gUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eTo6Y3JlYXRlKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0
cmlidXRlcykKK1JlZlB0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5PiBSZW1vdGVHcmFw
aGljc0NvbnRleHRHTFByb3h5OjpjcmVhdGUoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1
dGVzJiBhdHRyaWJ1dGVzLCBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNr
ZW5kKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQ
cm94eShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVHUFVQcm9jZXNzQ29ubmVjdGlvbigp
LCBhdHRyaWJ1dGVzKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTFByb3h5KFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVByb2Nlc3NDb25u
ZWN0aW9uKCksIGF0dHJpYnV0ZXMsIHJlbmRlcmluZ0JhY2tlbmQpKTsKIH0KIAotUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0xQcm94eTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eShHUFVQcm9j
ZXNzQ29ubmVjdGlvbiYgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24sIGNvbnN0IEdyYXBoaWNzQ29udGV4
dEdMQXR0cmlidXRlcyYgYXR0cnMpCi0gICAgOiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
QmFzZShhdHRycykKLSAgICAsIG1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24oJmdwdVByb2Nlc3NDb25u
ZWN0aW9uKQorUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6UmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eShHUFVQcm9jZXNzQ29ubmVjdGlvbiYgY29ubmVjdGlvbiwgY29uc3QgR3JhcGhp
Y3NDb250ZXh0R0xBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBSZW5kZXJpbmdCYWNrZW5kSWRlbnRp
ZmllciByZW5kZXJpbmdCYWNrZW5kKQorICAgIDogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94
eUJhc2UoYXR0cmlidXRlcykKKyAgICAsIG1fZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24oJmNvbm5lY3Rp
b24pCiB7CiAgICAgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24uYWRkQ2xpZW50KCp0aGlzKTsKICAgICBn
cHVQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5hZGRNZXNzYWdlUmVjZWl2
ZXIoTWVzc2FnZXM6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6Om1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSwgbV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIudG9VSW50NjQoKSwgKnRoaXMp
OwotICAgIGNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpHUFVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpDcmVhdGVHcmFwaGljc0NvbnRleHRHTChhdHRycywgbV9ncmFwaGljc0NvbnRleHRHTElk
ZW50aWZpZXIpLCAwLCBJUEM6OlNlbmRPcHRpb246OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2Fp
dGluZ0ZvclN5bmNSZXBseSk7CisgICAgY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OkdQVUNv
bm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKGF0dHJpYnV0ZXMs
IG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCByZW5kZXJpbmdCYWNrZW5kKSwgMCwgSVBD
OjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1lc3NhZ2VFdmVuV2hlbldhaXRpbmdGb3JTeW5jUmVwbHkp
OwogfQogCiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5Ojp+UmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eSgpCkBAIC0xMzAsMTQgKzEzMSwzNCBAQCB2b2lkIFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMUHJveHk6OnNpbXVsYXRlQ29udGV4dENoYW5nZWQoKQogICAgIG5vdEltcGxlbWVudGVk
KCk7CiB9CiAKLXZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6cGFpbnRSZW5kZXJp
bmdSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXIqKQordm9pZCBSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTFByb3h5OjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYgYnVm
ZmVyKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgLy8gRklYTUU6IHRoZSBidWZmZXIg
aXMgInJlbGF0aXZlbHkgZW1wdHkiIGFsd2F5cywgYnV0IGZvciBjb25zaXN0ZW5jeSwgd2UgbmVl
ZCB0byBlbnN1cmUKKyAgICAvLyBubyBwZW5kaW5nIG9wZXJhdGlvbnMgYXJlIHRhcmdldGVkIGZv
ciB0aGUgYGJ1ZmZlcmAuCisgICAgYnVmZmVyLmZsdXNoRHJhd2luZ0NvbnRleHQoKTsKKworICAg
IC8vIEZJWE1FOiBXZSBjYW5ub3Qgc3luY2hyb25pemUgc28gdGhhdCB3ZSB3b3VsZCBrbm93IG5v
IHBlbmRpbmcgb3BlcmF0aW9ucyBhcmUgdXNpbmcgdGhlIGBidWZmZXJgLgorCisgICAgLy8gRklY
TUU6IEN1cnJlbnRseSBSZW1vdGVJbWFnZUJ1ZmZlclByb3h5OjpnZXRJbWFnZURhdGEgZXQgYWwg
ZG8gbm90IHdhaXQgZm9yIHRoZSBmbHVzaGVzIG9mIHRoZSBpbWFnZXMKKyAgICAvLyBpbnNpZGUg
dGhlIGRpc3BsYXkgbGlzdHMuIFJhdGhlciwgaXQgYXNzdW1lcyB0aGF0IHByb2Nlc3NpbmcgaXRz
IHNlcXVlbmNlIChlLmcuIHRoZSBkaXNwbGF5IGxpc3QpIHdpbGwgZXF1YWwgdG8gcmVhZCBmbHVz
aCBiZWluZworICAgIC8vIGZ1bGZpbGxlZC4gRm9yIGJlbG93LCB3ZSBjYW5ub3QgY3JlYXRlIGEg
bmV3IGZsdXNoIGlkIHNpbmNlIHdlIGdvIHRocm91Z2ggZGlmZmVyZW50IHNlcXVlbmNlIChSZW1v
dGVHcmFwaGljc0NvbnRleHRHTCBzZXF1ZW5jZSkKKworICAgIC8vIEZJWE1FOiBNYXliZSBpbXBs
ZW1lbnQgSVBDOjpGZW5jZSBvciBzb21ldGhpbmcgc2ltaWxhci4KKyAgICBhdXRvIHNlbmRSZXN1
bHQgPSBzZW5kU3luYyhNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OlBhaW50UmVu
ZGVyaW5nUmVzdWx0c1RvQ2FudmFzKGJ1ZmZlci5yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIo
KSksIE1lc3NhZ2VzOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRSZW5kZXJpbmdSZXN1
bHRzVG9DYW52YXM6OlJlcGx5KCkpOworICAgIGlmICghc2VuZFJlc3VsdCkgeworICAgICAgICBt
YXJrQ29udGV4dExvc3QoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KIH0KIAotdm9pZCBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMo
SW1hZ2VCdWZmZXIqKQordm9pZCBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpwYWludENv
bXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXImIGJ1ZmZlcikKIHsKLSAgICBub3RJ
bXBsZW1lbnRlZCgpOworICAgIGJ1ZmZlci5mbHVzaERyYXdpbmdDb250ZXh0KCk7CisgICAgYXV0
byBzZW5kUmVzdWx0ID0gc2VuZFN5bmMoTWVzc2FnZXM6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
OjpQYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoYnVmZmVyLnJlbmRlcmluZ1Jlc291cmNl
SWRlbnRpZmllcigpKSwgTWVzc2FnZXM6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpQYWludENv
bXBvc2l0ZWRSZXN1bHRzVG9DYW52YXM6OlJlcGx5KCkpOworICAgIGlmICghc2VuZFJlc3VsdCkg
eworICAgICAgICBtYXJrQ29udGV4dExvc3QoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KIH0K
IAogdm9pZCBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpzeW50aGVzaXplR0xFcnJvcihH
Q0dMZW51bSBlcnJvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
Z3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5oIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmgKaW5k
ZXggODMxYjRiMGFiMTM3ZTZhYWY4MzU5NmUwYjBhMDc2ZGYxZTA5MTc2MS4uNWNlNTc2NzZiMDkw
NWE2NTc0MDQyYTlmNTQzOGE0NzFmYjdlZjk5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmgKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0Nv
bnRleHRHTFByb3h5LmgKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJNZXNzYWdlU2VuZGVy
LmgiCiAjaW5jbHVkZSAiUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xNZXNzYWdlcy5oIgogI2luY2x1
ZGUgIlJlbW90ZVJlc291cmNlQ2FjaGVQcm94eS5oIgorI2luY2x1ZGUgIlJlbmRlcmluZ0JhY2tl
bmRJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCiAjaW5j
bHVkZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2UuaD4KQEAgLTUwLDcgKzUxLDcgQEAgY2xhc3MgUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eSBmaW5hbAogICAgICwgcHJpdmF0ZSBHUFVQcm9jZXNz
Q29ubmVjdGlvbjo6Q2xpZW50CiAgICAgLCBwdWJsaWMgV2ViQ29yZTo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xQcm94eUJhc2UgewogcHVibGljOgotICAgIHN0YXRpYyBSZWZQdHI8UmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0xQcm94eT4gY3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dEdMQXR0cmlidXRlcyYpOworICAgIHN0YXRpYyBSZWZQdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eT4gY3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRl
cyYsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKTsKICAgICB+UmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eSgpIGZpbmFsOwogCiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIgb3ZlcnJp
ZGVzLgpAQCAtNjMsOCArNjQsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBlbnN1cmVFeHRlbnNpb25F
bmFibGVkKGNvbnN0IFN0cmluZyYgZXh0ZW5zaW9uKSBmaW5hbDsKICAgICB2b2lkIG5vdGlmeU1h
cmtDb250ZXh0Q2hhbmdlZCgpIGZpbmFsOwogICAgIHZvaWQgc2ltdWxhdGVDb250ZXh0Q2hhbmdl
ZCgpIGZpbmFsOwotICAgIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29y
ZTo6SW1hZ2VCdWZmZXIqKSBmaW5hbDsKLSAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNU
b0NhbnZhcyhXZWJDb3JlOjpJbWFnZUJ1ZmZlciopIGZpbmFsOworICAgIHZvaWQgcGFpbnRSZW5k
ZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6SW1hZ2VCdWZmZXImKSBmaW5hbDsKKyAgICB2
b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpJbWFnZUJ1ZmZlciYp
IGZpbmFsOwogICAgIHZvaWQgc3ludGhlc2l6ZUdMRXJyb3IoR0NHTGVudW0gZXJyb3IpIGZpbmFs
OwogICAgIEdDR0xlbnVtIGdldEVycm9yKCkgZmluYWw7CiAKQEAgLTM1Niw3ICszNTcsNyBAQCBw
cml2YXRlOgogICAgIHZvaWQgZGlzY29ubmVjdEdwdVByb2Nlc3NJZk5lZWRlZCgpOwogICAgIHZv
aWQgYWJhbmRvbkdwdVByb2Nlc3MoKTsKIAotICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJv
eHkoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TEF0dHJpYnV0ZXMmKTsKKyAgICBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KEdQVVByb2Nl
c3NDb25uZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVz
JiwgUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIpOwogICAgIEdQVVByb2Nlc3NDb25uZWN0aW9u
KiBtX2dwdVByb2Nlc3NDb25uZWN0aW9uOwogICAgIGJvb2wgbV9kaWRJbml0aWFsaXplIHsgZmFs
c2UgfTsKICAgICBHQ0dMZW51bSBtX2Vycm9yV2hlbkNvbnRleHRJc0xvc3QgPSBOT19FUlJPUjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3Rl
UmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
Z3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcAppbmRleCBhNGM0NWUwMDgw
YWJjNjNmZjZjYmM1MzkxNjM1M2M5N2UyMThkMTdlLi4zYjE0ZjQzMGY2MTk0ZDYwNjVhMzIyZTUy
YTg4NTcxOGY5NzE3Mzc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHku
Y3BwCkBAIC02NSw3ICs2NSw3IEBAIHZvaWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5Ojpj
b25uZWN0VG9HUFVQcm9jZXNzKCkKICAgICBhdXRvJiBjb25uZWN0aW9uID0gV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkuZW5zdXJlR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKTsKICAgICBjb25uZWN0aW9u
LmFkZENsaWVudCgqdGhpcyk7CiAgICAgY29ubmVjdGlvbi5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5h
ZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6
bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLnRvVUlu
dDY0KCksICp0aGlzKTsKLSAgICBzZW5kKE1lc3NhZ2VzOjpHUFVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpDcmVhdGVSZW5kZXJpbmdCYWNrZW5kKG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIs
IG1fcmVzdW1lRGlzcGxheUxpc3RTZW1hcGhvcmUpLCAwKTsKKyAgICBzZW5kKE1lc3NhZ2VzOjpH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpDcmVhdGVSZW5kZXJpbmdCYWNrZW5kKG1fcmVuZGVy
aW5nQmFja2VuZElkZW50aWZpZXIsIG1fcmVzdW1lRGlzcGxheUxpc3RTZW1hcGhvcmUpLCAwLCBJ
UEM6OlNlbmRPcHRpb246OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBs
eSk7CiB9CiAKIHZvaWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5OjpyZWVzdGFibGlzaEdQ
VVByb2Nlc3NDb25uZWN0aW9uKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmggYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5o
CmluZGV4IDY3YmU0YWI2N2U0Yzk5ZmRhOTI4ZmNlZDcwMzljYzQwODU2MjI1N2IuLjVjOTBhZjYy
NGVhNDMyNzA1ZDhkZTZhZTVmYjIxNTQ2NjBlMWExMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmgK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJp
bmdCYWNrZW5kUHJveHkuaApAQCAtOTgsNiArOTgsNyBAQCBwdWJsaWM6CiAgICAgRGlkUmVjZWl2
ZUJhY2tlbmRDcmVhdGlvblJlc3VsdCB3YWl0Rm9yRGlkQ3JlYXRlSW1hZ2VCdWZmZXJCYWNrZW5k
KCk7CiAgICAgYm9vbCB3YWl0Rm9yRGlkRmx1c2goKTsKIAorICAgIFJlbmRlcmluZ0JhY2tlbmRJ
ZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9y
ZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcjsgfQogcHJpdmF0ZToKICAgICBSZW1vdGVSZW5kZXJp
bmdCYWNrZW5kUHJveHkoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAppbmRleCBmYTg0ZWZhZDNj
MzMwZmIxZDFiYjE3OTQ5MGEzZWJlZDc5Y2YxYmJlLi5hMDcwMTc3NDliM2UyODJjNjcyNGZhMWQ1
NDE4ODIzMTI5ZGE0NWRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAtOTI5LDcgKzkyOSw3
IEBAIFJlZlB0cjxHcmFwaGljc0NvbnRleHRHTD4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVHcmFw
aGljc0NvbnRleHRHTChjb25zdCBHcmFwaGljCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IFVOVVNFRF9WQVJJQUJMRShob3N0V2luZG93RGlzcGxheUlEKTsKICNpZiBQTEFURk9STShDT0NP
QSkKLSAgICByZXR1cm4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6Y3JlYXRlKGF0dHJp
YnV0ZXMpOworICAgIHJldHVybiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpjcmVhdGUo
YXR0cmlidXRlcywgbV9wYWdlLmVuc3VyZVJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eSgpLnJl
bmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKCkpOwogI2Vsc2UKICAgICByZXR1cm4gbnVsbHB0cjsK
ICNlbmRpZgpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmlu
ZGV4IDVlYjlmMTliOGY0MmVhZjJjMTM2ZmM5YmNkYTk3YWY5ZWZjMjZkNjMuLmRlZDM5YjFiYmZj
ZDA1Yzg2NTVhMTY1YWFkMWJjMmQ0OTViMTQwMWYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxv
ZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wMi0xMiAgS2lt
bW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorCisgICAgICAgIFdlYkdMIGNvbnRl
eHRzIGRvIG5vdCB3b3JrIGFzIHNvdXJjZSBmb3IgQ29udGV4dDJEIGRyYXdJbWFnZSBjYWxscyBp
biBHUFUgcHJvY2VzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjIxODExCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAg
ICAgVXBkYXRlIHR3byBzaWduYXR1cmVzIGZvciBtYW51YWxseSBpbXBsZW1lbnRlZCBtZXNzYWdl
cy4KKworICAgICAgICAqIFNjcmlwdHMvZ2VuZXJhdGUtZ3B1cC13ZWJnbDoKKwogMjAyMS0wMi0x
OCAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBQYWdlIHVw
ZGF0ZXMgYW5kIHJBRiBjYWxsYmFja3Mgc2hvdWxkIHJ1biBhdCBhIGZyZXF1ZW5jeSBjbG9zZSB0
byA2MEh6IG9uIGhpZ2ggcmVmcmVzaC1yYXRlIGRpc3BsYXlzCmRpZmYgLS1naXQgYS9Ub29scy9T
Y3JpcHRzL2dlbmVyYXRlLWdwdXAtd2ViZ2wgYi9Ub29scy9TY3JpcHRzL2dlbmVyYXRlLWdwdXAt
d2ViZ2wKaW5kZXggNTY4NWU5MDc1MzUzZmQxZDJjZWE5NDYyMDZiNTdlNDhiNDI2NjNmZC4uZmU4
ZmE5YWU1MTc0MGJkYTYzZjUxNTNmZGE4ZjE2ZDdlNjJiNWZiZiAxMDA3NTUKLS0tIGEvVG9vbHMv
U2NyaXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmdsCisrKyBiL1Rvb2xzL1NjcmlwdHMvZ2VuZXJhdGUt
Z3B1cC13ZWJnbApAQCAtMTAxLDYgKzEwMSw5IEBAIG1lc3NhZ2VzIC0+IFJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMIE5vdFJlZkNvdW50ZWQge3sKICAgICB2b2lkIE5vdGlmeU1hcmtDb250ZXh0Q2hh
bmdlZCgpCiAgICAgdm9pZCBTeW50aGVzaXplR0xFcnJvcih1aW50MzJfdCBlcnJvcikKICAgICB2
b2lkIEdldEVycm9yKCkgLT4gKHVpbnQzMl90IHJldHVyblZhbHVlKSBTeW5jaHJvbm91cworICAg
IHZvaWQgUGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5nUmVz
b3VyY2VJZGVudGlmaWVyIGltYWdlQnVmZmVyKSAtPiAoKSBTeW5jaHJvbm91cworICAgIHZvaWQg
UGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNl
SWRlbnRpZmllciBpbWFnZUJ1ZmZlcikgLT4gKCkgU3luY2hyb25vdXMKKwoge30KIH19CiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCAyN2ZkOGUzYTRhYzI3Y2E4ZDA1ZDcwODdhOTc1NDk1NzBmOTM0ZmU0Li5mNGJiZDFiZGZh
MzA4NzI0Nzk0MGE5ODBjZjViNTRkZjc4MTZhMDFlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIw
MjEtMDItMTIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAg
ICBXZWJHTCBjb250ZXh0cyBkbyBub3Qgd29yayBhcyBzb3VyY2UgZm9yIENvbnRleHQyRCBkcmF3
SW1hZ2UgY2FsbHMgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMTgxMQorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFk
bGVyLgorCisgICAgICAgIFJlbW92ZSBub3cgcGFzc2luZyB0ZXN0cyBmcm9tIHRoZSBleHBlY3Rh
dGlvbnMuCisKKyAgICAgICAgKiBncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zOgorCiAyMDIx
LTAyLTE3ICBUeWxlciBXaWxjb2NrICA8dHdpbGNvLm9AcHJvdG9ubWFpbC5jb20+CiAKICAgICAg
ICAgSW1wb3J0IENTUyBAY291bnRlci1zdHlsZSBXUFRzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvZ3B1LXByb2Nlc3Mv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCAzYjkwYzJhYmFjMWFmZTM1ZGY4NjRhNGFiYjkzYWJiMDAy
OTBmYWE0Li5lZTc3ZTJiZDRhOTk2NTdkOWUwOThlYjUwOWUyMDNhOTFlYjI2ZjM0IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91
dFRlc3RzL2dwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE5LDExICsxOSw3IEBAIGZh
c3QvY2FudmFzL2NhbnZhcy1sYXJnZS1kaW1lbnNpb25zLmh0bWwgWyBGYWlsdXJlIF0KIGZhc3Qv
Y2FudmFzL2NhbnZhcy1yZW5kZXItbGF5ZXIuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9jYW52YXMv
aGlkcGktcmVwYWludC1vbi1yZXRpbmEtbGVhdmVzLWJpdHMtYmVoaW5kLmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KIGZhc3QvY2FudmFzL3dlYmdsL2NhbnZhcy0yZC13ZWJnbC10ZXh0dXJlLmh0
bWwgWyBGYWlsdXJlIF0KLWZhc3QvY2FudmFzL3dlYmdsL2NhbnZhcy10ZXN0Lmh0bWwgWyBGYWls
dXJlIF0KIGZhc3QvY2FudmFzL3dlYmdsL2NvbnRleHQtdXBkYXRlLW9uLWRpc3BsYXktY29uZmln
dXJhdGlvbi5odG1sIFsgVGltZW91dCBdCi1mYXN0L2NhbnZhcy93ZWJnbC9nbC1waXhlbHN0b3Jl
aS5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2NhbnZhcy93ZWJnbC9sb3NlLWNvbnRleHQtb24tc3Rh
dHVzLWZhaWx1cmUuaHRtbCBbIEZhaWx1cmUgXQotZmFzdC9jYW52YXMvd2ViZ2wvcHJlbXVsdGlw
bHlhbHBoYS10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KIGZhc3QvY2FudmFzL3dlYmdsL3RleC1pbWFn
ZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdiNTY1Lmh0bWwgWyBGYWlsdXJlIF0KIGZh
c3QvY2FudmFzL3dlYmdsL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdi
YTQ0NDQuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9jYW52YXMvd2ViZ2wvdGV4LWltYWdlLWFuZC1z
dWItaW1hZ2UtMmQtd2l0aC12aWRlby1yZ2JhNTU1MS5odG1sIFsgRmFpbHVyZSBdCkBAIC0yMjAs
MTkgKzIxNiwxMiBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3Ro
ZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYQogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1kZXN0aW5hdGlvbm5vZGUt
aW50ZXJmYWNlL2Rlc3RpbmF0aW9uLmh0bWwgWyBGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtbWVkaWFlbGVtZW50YXVk
aW9zb3VyY2Vub2RlLWludGVyZmFjZS9uby1jb3JzLmh0dHBzLmh0bWwgWyBGYWlsdXJlIF0KIAot
d2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY2FudmFzL2NhbnZhcy10ZXN0Lmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NhbnZhcy9kcmF3LXN0YXRpYy13ZWJnbC10by1t
dWx0aXBsZS1jYW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3Jt
YW5jZS9jYW52YXMvZHJhdy13ZWJnbC10by1jYW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jYW52YXMvdG8tZGF0YS11cmwtdGVzdC5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jb250ZXh0L2NvbnRleHQtYXR0cmlidXRl
LXByZXNlcnZlLWRyYXdpbmctYnVmZmVyLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2Nv
bmZvcm1hbmNlL2NvbnRleHQvcHJlbXVsdGlwbHlhbHBoYS10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0K
IHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUtZmxvYXQtd2l0
aC1jYW52YXMuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvZXh0ZW5z
aW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLXZpZGVvLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmds
LzEuMC4zL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUtaGFsZi1mbG9hdC13aXRo
LWNhbnZhcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRlbnNp
b25zL29lcy10ZXh0dXJlLWhhbGYtZmxvYXQtd2l0aC12aWRlby5odG1sIFsgRmFpbHVyZSBdCiB3
ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9yZW5kZXJpbmcvbWFueS1kcmF3LWNhbGxzLmh0bWwgWyBU
aW1lb3V0IF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3N0YXRlL2dsLW9iamVjdC1nZXQtY2Fs
bHMuaHRtbCBbIFRpbWVvdXQgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvZ2wt
cGl4ZWxzdG9yZWkuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4
dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC1jYW52YXMtcmdiNTY1Lmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1h
bmQtc3ViLWltYWdlLTJkLXdpdGgtY2FudmFzLXJnYmE0NDQ0Lmh0bWwgWyBGYWlsdXJlIF0KIHdl
YmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJk
LXdpdGgtY2FudmFzLXJnYmE1NTUxLmh0bWwgWyBGYWlsdXJlIF0KQEAgLTI0MSwyMSArMjMwLDEx
IEBAIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWlt
YWdlLTJkLXdpdGgtdmlkZW8tcmdiNTY1Lmh0CiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0
dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYmE0NDQ0Lmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1h
bmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdiYTU1NTEuaHRtbCBbIEZhaWx1cmUgXQogd2Vi
Z2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQt
d2l0aC12aWRlby5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0
dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXdlYmdsLWNhbnZhcy1yZ2I1NjUu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWlt
YWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC13ZWJnbC1jYW52YXMtcmdiYTQ0NDQuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1z
dWItaW1hZ2UtMmQtd2l0aC13ZWJnbC1jYW52YXMtcmdiYTU1NTEuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2Ut
MmQtd2l0aC13ZWJnbC1jYW52YXMuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9y
bWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLXdlYmdsLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEu
MC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleHBhcmFtZXRlci10ZXN0Lmh0bWwgWyBGYWlsdXJl
IF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleHR1cmUtYWN0aXZlLWJpbmQt
Mi5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXh0
dXJlLWFjdGl2ZS1iaW5kLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNl
L3VuaWZvcm1zL3VuaWZvcm0tc2FtcGxlcnMtdGVzdC5odG1sIFsgVGltZW91dCBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZS9jYW52YXMvY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UvY2FudmFzL2RyYXctc3RhdGljLXdlYmdsLXRvLW11bHRpcGxl
LWNhbnZhcy10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2Nh
bnZhcy9kcmF3LXdlYmdsLXRvLWNhbnZhcy10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlL2NhbnZhcy90by1kYXRhLXVybC10ZXN0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NvbnRleHQvY29udGV4dC1hdHRyaWJ1dGUtcHJlc2Vy
dmUtZHJhd2luZy1idWZmZXIuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UvY29udGV4dC9wcmVtdWx0aXBseWFscGhhLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLWNhbnZh
cy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9leHRlbnNpb25zL29l
cy10ZXh0dXJlLWZsb2F0LXdpdGgtdmlkZW8uaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1oYWxmLWZsb2F0LXdpdGgtY2FudmFz
Lmh0bWwgWyBGYWlsdXJlIF0KQEAgLTI3Myw3ICsyNTIsNiBAQCB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTJkLXJnYi1y
Z2ItdQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21f
aW1hZ2VfYml0bWFwL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9p
bWFnZV9iaXRtYXAvdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9zaG9ydF80XzRfNF80Lmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL2ltYWdlX2JpdG1h
cF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81
XzEuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvbWlz
Yy9nbC1waXhlbHN0b3JlaS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZS90ZXh0dXJlcy9taXNjL3RleC1pbWFnZS13ZWJnbC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9taXNjL3RleHR1cmUtYWN0aXZlLWJpbmQtMi5odG1s
IFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9taXNjL3RleHR1
cmUtYWN0aXZlLWJpbmQuaHRtbCBbIEZhaWx1cmUgXQpAQCAtMjgyLDExICsyNjAsNiBAQCB3ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiLXJnYi11bnNpZ25l
ZF9zaG9ydF81XzZfNS5odG1sCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRl
by90ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvdmlkZW8vdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25l
ZF9zaG9ydF80XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
L3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy93ZWJnbF9j
YW52YXMvdGV4LTJkLXJnYi1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYi1yZ2It
dW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy93ZWJn
bF9jYW52YXMvdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9zaG9ydF80XzRfNF80Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90
ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1cmUgXQog
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdW5pZm9ybXMvdW5pZm9ybS1zYW1wbGVycy10ZXN0Lmh0
bWwgWyBUaW1lb3V0IF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi9yZWFkaW5nL3JlYWQtcGl4
ZWxzLXBhY2stcGFyYW1ldGVycy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvc3RhdGUvZ2wtb2JqZWN0LWdldC1jYWxscy5odG1sIFsgVGltZW91dCBdCkBAIC0zNTIs
NzIgKzMyNSw2IEBAIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXMvdGV4
LTNkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsKIHdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy9jYW52YXMvdGV4LTNkLXJnYmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVk
X2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L2NhbnZhcy90ZXgtM2Qtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQog
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhcy90ZXgtM2Qtc3JnYjhfYWxw
aGE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXIxMWZfZzExZl9i
MTBmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi1o
YWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLXVuc2ln
bmVkX2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yMTZmLXJlZC1m
bG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
Y2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXIxNmYtcmVkLWhhbGZfZmxvYXQuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVj
dGFuZ2xlL3RleC0yZC1yMzJmLXJlZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXI4LXJl
ZC11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcjh1aS1yZWRfaW50ZWdlci11
bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmcxNmYtcmctZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1yZzE2Zi1yZy1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgt
MmQtcmczMmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZzgtcmctdW5zaWduZWRf
Ynl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
Y2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnOHVpLXJnX2ludGVnZXItdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjE2Zi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0yZC1yZ2IxNmYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2Iz
MmYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiNTY1LXJnYi11bnNpZ25lZF9i
eXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9j
YW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiNTY1LXJnYi11bnNpZ25lZF9zaG9ydF81XzZf
NS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjVfYTEtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3Vi
X3JlY3RhbmdsZS90ZXgtMmQtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19z
dWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rhbmds
ZS90ZXgtMmQtcmdiOHVpLXJnYl9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0yZC1yZ2I5X2U1LXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjlfZTUt
cmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2JhMTZmLXJnYmEtZmxvYXQu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZh
c19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2JhMTZmLXJnYmEtaGFsZl9mbG9hdC5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0
YW5nbGUvdGV4LTJkLXJnYmEzMmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJn
YmE0LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYmE0LXJnYmEt
dW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYmE4LXJnYmEt
dW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYmE4dWktcmdiYV9pbnRlZ2Vy
LXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1zcmdiOC1yZ2ItdW5zaWduZWRf
Ynl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
Y2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXNyZ2I4X2FscGhhOC1yZ2JhLXVuc2lnbmVkX2J5
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2Nh
bnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0
YW5nbGUvdGV4LTNkLXIxMWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZf
cmV2Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9j
YW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjE2Zi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0zZC1yMTZmLXJlZC1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjMyZi1y
ZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yOC1yZWQtdW5zaWduZWRfYnl0ZS5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1
Yl9yZWN0YW5nbGUvdGV4LTNkLXI4dWktcmVkX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9y
ZWN0YW5nbGUvdGV4LTNkLXJnMTZmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmcx
NmYtcmctaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnMzJmLXJnLWZsb2F0Lmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNf
c3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmc4LXJnLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0zZC1yZzh1aS1yZ19pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0zZC1yZ2IxNmYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiMTZmLXJnYi1o
YWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiMzJmLXJnYi1mbG9hdC5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9y
ZWN0YW5nbGUvdGV4LTNkLXJnYjU2NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUv
dGV4LTNkLXJnYjU2NS1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0zZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJn
YjVfYTEtcmdiYS11bnNpZ25lZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qt
cmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjh1aS1yZ2Jf
aW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiOV9lNS1yZ2It
ZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I5X2U1LXJnYi1oYWxmX2Zsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3Vi
X3JlY3RhbmdsZS90ZXgtM2QtcmdiYTE2Zi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgt
M2QtcmdiYTE2Zi1yZ2JhLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2JhMzJm
LXJnYmEtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX2J5
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2Nh
bnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80
XzQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2Nh
bnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0zZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3Vi
X3JlY3RhbmdsZS90ZXgtM2Qtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xl
L3RleC0zZC1zcmdiOF9hbHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0K
IHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFn
ZV9iaXRtYXAvdGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBd
CiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1h
Z2VfYml0bWFwL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFp
bHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zy
b21faW1hZ2VfYml0bWFwL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItdW5zaWduZWRfaW50XzEw
Zl8xMWZfMTFmX3Jldi5odG1sIFsgRmFpbHVyZSBdCkBAIC01NTAsNjggKzQ1Nyw2IEBAIHdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy92aWRlby90ZXgtM2QtcmdiYTgtcmdiYS11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlk
ZW8vdGV4LTNkLXJnYmE4dWktcmdiYV9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1
cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0zZC1zcmdi
OC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTNkLXNyZ2I4X2FscGhhOC1yZ2JhLXVuc2lnbmVkX2J5
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJk
LXIxMWZfZzExZl9iMTBmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXIxMWZfZzExZl9i
MTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXIxNmYt
cmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXIxNmYtcmVkLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgt
MmQtcjMyZi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcjgtcmVkLXVuc2lnbmVkX2J5dGUuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtMmQtcjh1aS1yZWRfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJk
LXJnMTZmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnMTZmLXJnLWhhbGZfZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZh
cy90ZXgtMmQtcmczMmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmc4LXJnLXVuc2lnbmVkX2J5
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtMmQtcmc4dWktcmdfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMv
dGV4LTJkLXJnYjE2Zi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiMTZmLXJnYi1oYWxmX2Zs
b2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjMyZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiNTY1
LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjU2NS1yZ2ItdW5zaWduZWRfc2hv
cnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZh
cy90ZXgtMmQtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgt
MmQtcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2I4dWktcmdiX2ludGVn
ZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhMTZmLXJnYmEtZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZh
cy90ZXgtMmQtcmdiYTE2Zi1yZ2JhLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiYTMyZi1y
Z2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmE0LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFz
L3RleC0yZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQt
cmdiYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmE4dWktcmdiYV9pbnRl
Z2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmds
X2NhbnZhcy90ZXgtMmQtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjExZl9nMTFmX2Ix
MGYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjExZl9nMTFmX2IxMGYtcmdiLXVuc2ln
bmVkX2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjE2Zi1yZWQtZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtM2QtcjE2Zi1yZWQtaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yMzJmLXJlZC1m
bG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
d2ViZ2xfY2FudmFzL3RleC0zZC1yOC1yZWQtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1y
OHVpLXJlZF9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmcxNmYtcmctZmxv
YXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtM2QtcmcxNmYtcmctaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZzMy
Zi1yZy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4
dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZzgtcmctdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0zZC1yZzh1aS1yZ19pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiMTZm
LXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4
dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2IxNmYtcmdiLWhhbGZfZmxvYXQuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90
ZXgtM2QtcmdiMzJmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2I1NjUtcmdiLXVuc2lnbmVk
X2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiNTY1LXJnYi11bnNpZ25lZF9zaG9ydF81XzZfNS5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2Fu
dmFzL3RleC0zZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2I1
X2ExLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2I4LXJnYi11
bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjh1aS1yZ2JfaW50ZWdlci11bnNpZ25lZF9i
eXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93
ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmExNmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2Jh
MTZmLXJnYmEtaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2JhMzJmLXJnYmEtZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtM2QtcmdiYTQtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmE0
LXJnYmEtdW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2JhOC1yZ2JhLXVu
c2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiYTh1aS1yZ2JhX2ludGVnZXItdW5zaWduZWRf
Ynl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
d2ViZ2xfY2FudmFzL3RleC0zZC1zcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0z
ZC1zcmdiOF9hbHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmds
L21hbnktY29udGV4dHMtYWNjZXNzLWFmdGVyLWxvc3MuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wv
bWF4LWFjdGl2ZS1jb250ZXh0cy1jb25zb2xlLXdhcm5pbmcuaHRtbCBbIEZhaWx1cmUgXQogd2Vi
Z2wvbWF4LWFjdGl2ZS1jb250ZXh0cy1nYy5odG1sIFsgRmFpbHVyZSBdCg==
</data>
<flag name="commit-queue"
          id="439459"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420812</attachid>
            <date>2021-02-18 01:58:26 -0800</date>
            <delta_ts>2021-02-18 09:46:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221811-20210218115824.patch</filename>
            <type>text/plain</type>
            <size>72056</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczMDY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTA1YmZmOWQzYjcyMThk
YjI0ZDg3NTM4N2Y5NTgzYWJhMDJiYjg4Ni4uYmZhYjZkYWZlMjg3YTFiMDYyZTlkMjM0OTI1MTQ3
YzU2YzRlZmJiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDIxLTAyLTEyICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgY29udGV4
dHMgZG8gbm90IHdvcmsgYXMgc291cmNlIGZvciBDb250ZXh0MkQgZHJhd0ltYWdlIGNhbGxzIGlu
IEdQVSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjE4MTEKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAg
ICBJbXBsZW1lbnRzIHJ1ZGltZW50YXJ5IHN1cHBvcnQgZm9yIHJlYWRpbmcgdGhlIFdlYkdMIGNv
bnRleHQgYW5kIHRyYW5zZmVyaW5nCisgICAgICAgIGl0IHRvIGEgSW1hZ2VCdWZmZXIuCisKKyAg
ICAgICAgRml4ZXMgbWFueSB0ZXN0cyB0aGF0IGFyZSByZW1vdmVkIGZyb20gZ3B1LXByb2Nlc3Mv
VGVzdEV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIGh0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Ok9mZnNjcmVlbkNhbnZhczo6dHJhbnNmZXJUb0ltYWdlQml0bWFw
KToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnBhaW50UmVuZGVy
aW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHRHTC5oOgorICAgICAgICBNYWtlIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFz
IGFuZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMKKyAgICAgICAgdGFrZSBJbWFnZUJ1
ZmZlciYgaW5zdGVhZCBvZiBJbWFnZUJ1ZmZlciosIHNpbmNlIHRoZSBidWZmZXIgYWx3YXlzCisg
ICAgICAgIGV4aXN0cy4KKworICAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFw
aGljc0NvbnRleHRHTENhaXJvLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
Zy9HcmFwaGljc0NvbnRleHRHTENHLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKToKKyAgICAgICAgQ2hhbmdlIHRoZSBmdW5jdGlv
biBzaWduYXR1cmUgc28gdGhhdCBpdCBjYW4gYmUgY2FsbGVkIGZyb20KKyAgICAgICAgb3RoZXIg
dGhyZWFkIGFuZCB3aXRob3V0IEdyYXBoaWNzQ29udGV4dEdMIGluc3RhbmNlLgorICAgICAgICBJ
dCBpcyBub3QgcmVhbGx5IGEgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wgcmVsYXRlZCBmdW5jdGlv
bi4uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRH
TElPU3VyZmFjZVN3YXBDaGFpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6ZGlzcGxheUJ1ZmZlciBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1ZmZl
cik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFp
bjo6ZGV0YWNoQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMSU9T
dXJmYWNlU3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
b2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW06CisgICAgICAgIChXZWJHTExheWVy
U3dhcENoYWluOjpwcmVzZW50KToKKyAgICAgICAgTW92ZSB0aGUgdHJpcGxlIGJ1ZmZlcmluZyBp
bXBsZW1lbnRhdGlvbiB0byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgVGhlIGltcGxlbWVudGF0
aW9uIGlzIG5vdyBhbHNvIHVzZWQgaW4gR1BVIHByb2Nlc3Mgc2lkZSwKKyAgICAgICAgc2luY2Ug
dGhlIEdQVSBwcm9jZXNzIG5lZWRzIHRvIGJlIGFibGUgdG8gcmVhZCB0aGUgY29tcG9zaXRlZAor
ICAgICAgICByZXN1bHRzLgorCisgICAgICAgIFByZXZpb3VzbHkgdGhlIHNhbWUgbG9naWMgd2Fz
IHNwbGl0IGJldHdlZW4gV2ViIHByb2Nlc3MgYW5kIEdQVSBwcm9jZXNzLgorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5H
TDo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0ltYWdlRGF0YSk6
CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cmVhZFJlbmRlcmlu
Z1Jlc3VsdHNGb3JQYWludGluZyk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TE9wZW5HTDo6cmVhZENvbXBvc2l0ZWRSZXN1bHRzRm9yUGFpbnRpbmcpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHRHTE9wZW5HTC5oOgorCisgICAg
ICAgIEV4cG9zZSBwdWJsaWMgZnVuY3Rpb25zIHRvIGdldCBJbWFnZURhdGEgb3V0IG9mIGRyYXdp
bmcgYnVmZmVyIGFuZAorICAgICAgICBkaXNwbGF5IGJ1ZmZlci4KKwogMjAyMS0wMi0xOCAgQW50
b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBQYWdlIHVwZGF0ZXMg
YW5kIHJBRiBjYWxsYmFja3Mgc2hvdWxkIHJ1biBhdCBhIGZyZXF1ZW5jeSBjbG9zZSB0byA2MEh6
IG9uIGhpZ2ggcmVmcmVzaC1yYXRlIGRpc3BsYXlzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDMxNzMxMWZjZmI1MjYy
MTlhY2Y4YTYxMzZlMTAzYzlmMTAzNDlkOTUuLjk3ZDFmZDkwY2Q2N2YwZWU0ZTM5ZDZiNzA3OTBk
ZGRmZWZiNzdmMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzUgQEAKKzIwMjEtMDItMTIgIEtpbW1v
IEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBXZWJHTCBjb250ZXh0
cyBkbyBub3Qgd29yayBhcyBzb3VyY2UgZm9yIENvbnRleHQyRCBkcmF3SW1hZ2UgY2FsbHMgaW4g
R1BVIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyMTgxMQorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAg
IEltcGxlbWVudHMgcnVkaW1lbnRhcnkgc3VwcG9ydCBmb3IgcmVhZGluZyB0aGUgV2ViR0wgY29u
dGV4dCBhbmQgdHJhbnNmZXJpbmcKKyAgICAgICAgaXQgdG8gYSBJbWFnZUJ1ZmZlci4KKworICAg
ICAgICBGaXhlcyBtYW55IHRlc3RzIHRoYXQgYXJlIHJlbW92ZWQgZnJvbSBncHUtcHJvY2Vzcy9U
ZXN0RXhwZWN0YXRpb25zLgorCisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0wpOgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVQ29u
bmVjdGlvblRvV2ViUHJvY2Vzcy5oOgorICAgICAgICAoV2ViS2l0OjpHUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3JhcHBlcjo6Z2V0IGNvbnN0KToKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW46
CisgICAgICAgICogR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpjcmVhdGUpOgor
ICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0wpOgorICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUdyYXBo
aWNzQ29udGV4dEdMIGNvbnN0KToKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZUdyYXBoaWNzQ29udGV4dEdMQ29jb2EuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVHcmFw
aGljc0NvbnRleHRHTDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xDb2NvYTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYSk6CisgICAgICAgICog
V2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5Lmg6Cisg
ICAgICAgIChXZWJLaXQ6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6cmVuZGVyaW5nQmFj
a2VuZElkZW50aWZpZXIgY29uc3QpOgorCisgICAgICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
IHRha2VzIGEgcmVmIG9mIHRoZSByZXNwZWN0aXZlIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQuCisg
ICAgICAgIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQgaXMgdGhlIG9uZSB0aGF0IGNhbiBoYW5kbGUg
SW1hZ2VCdWZmZXJzLgorCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
OjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMpOgorICAg
ICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6cGFpbnRJbWFnZURhdGFUb0lt
YWdlQnVmZmVyKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNz
Q29udGV4dEdMLmg6CisgICAgICAgICogR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGlj
c0NvbnRleHRHTC5tZXNzYWdlcy5pbjoKKworICAgICAgICBJbXBsZW1lbnQgdGhlIGZ1bmN0aW9u
cyBieToKKyAgICAgICAgIDEpIFdhaXQgZm9yIHRoZSBwZW5kaW5nIGNoYW5nZXMgdG8gdGhlIElt
YWdlQnVmZmVyCisgICAgICAgICAyKSBTZW5kIGEgc3luY2hyb25vdXMgbWVzc2FnZSBmcm9tIFdl
YiBwcm9jZXNzIHRvIEdQVSBwcm9jZXNzIFdlYkdMIHNlcXVlbmNlCisgICAgICAgICAzKSBSZWFk
aW5nIHRoZSBidWZmZXIsIHBvc3QgdGhlIHRhc2sgdG8gUmVuZGVyaW5nQmFja2VuZCBzZXF1ZW5j
ZQorICAgICAgICAgNCkgUGFpbnQgdGhlIHJlc3VsdHMgdG8gdGhlIEltYWdlQnVmZmVyCisgICAg
ICAgICA1KSBSZXR1cm4gdGhlIHN5bmNocm9ub3VzIG1lc3NhZ2UgcmVzdWx0CisKKyAgICAgICAg
KFdlYktpdDo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6cHJlcGFyZUZvckRpc3BsYXkp
OgorCisgICAgICAgIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMIG5vdyByZXRhaW5zIHRoZSByZWZl
cmVuY2UgdG8gZGlzcGxheSBidWZmZXIuCisgICAgICAgIEJlZm9yZSwganVzdCBzZW50IHRoZSBk
aXNwbGF5IGJ1ZmZlciB0byBXZWIgcHJvY2VzcyBhbmQgZm9yZ290CisgICAgICAgIGFib3V0IGl0
LgorCisgICAgICAgICogR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5k
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6ZGlzcGF0Y2gp
OgorICAgICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5o
OgorCisgICAgICAgIEFkZCBmdW5jdGlvbiB0byBkaXNwYXRjaCB3b3JrIHRvIHJlbmRlcmluZyBi
YWNrZW5kIHNlcXVlbmNlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVt
b3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMUHJveHk6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkpOgorICAg
ICAgICAoV2ViS2l0OjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpwYWludFJlbmRlcmlu
Z1Jlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMUHJveHk6OnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5oOgorCisg
ICAgICAgIFNlbmQgdGhlIG1lc3NhZ2VzLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvZ3Jh
cGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
UmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5Ojpjb25uZWN0VG9HUFVQcm9jZXNzKToKKworICAg
ICAgICBVc2UgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1lc3NhZ2VFdmVuV2hlbldhaXRpbmdG
b3JTeW5jUmVwbHkgdG8KKyAgICAgICAgc2VuZCBDcmVhdGVSZW5kZXJpbmdCYWNrZW5kLiBJdCBt
dXN0IGJlIGRpc3BhdGNoZWQgaW4gb3JkZXIgY29tcGFyZWQgdG8gb3RoZXIKKyAgICAgICAgbWVz
c2FnZXMgc3VjaCBhcyBDcmVhdGVSZW1vdGVHcmFwaGljc0NvbnRleHRHTC4KKwogMjAyMS0wMi0x
NyAgTWVnYW4gR2FyZG5lciAgPG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dHVybiBjb3JyZWN0IHRhcmdldCBmb3IgQXBwIEhpZ2hsaWdodCBtZW51cy4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvT2Zmc2NyZWVuQ2FudmFzLmNwcAppbmRleCA2ZmEwNGRjMzU1Zjg2Y2VlMzBiZThkYzM5
M2UzMDUyZWUzMWM2Mzc1Li4xOGU4ZWViNWQ4YTI0YTEzZTEwOTM2NDc2ZWUwMGY3ZmU5YjJkNzE5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL09mZnNjcmVlbkNhbnZhcy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9PZmZzY3JlZW5DYW52YXMuY3BwCkBAIC0yODQsNyArMjg0
LDcgQEAgRXhjZXB0aW9uT3I8UmVmUHRyPEltYWdlQml0bWFwPj4gT2Zmc2NyZWVuQ2FudmFzOjp0
cmFuc2ZlclRvSW1hZ2VCaXRtYXAoKQogICAgICAgICAgICAgcmV0dXJuIHsgUmVmUHRyPEltYWdl
Qml0bWFwPiB7IG51bGxwdHIgfSB9OwogCiAgICAgICAgIGF1dG8qIGdjM2QgPSB3ZWJHTENvbnRl
eHQtPmdyYXBoaWNzQ29udGV4dEdMKCk7Ci0gICAgICAgIGdjM2QtPnBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvQ2FudmFzKGltYWdlQml0bWFwLT5idWZmZXIoKSk7CisgICAgICAgIGdjM2QtPnBhaW50
UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKCppbWFnZUJpdG1hcC0+YnVmZmVyKCkpOwogCiAgICAg
ICAgIC8vIEZJWE1FOiBUaGUgdHJhbnNmZXIgYWxnb3JpdGhtIHJlcXVpcmVzIHRoYXQgdGhlIGNh
bnZhcyBlZmZlY3RpdmVseQogICAgICAgICAvLyBjcmVhdGVzIGEgbmV3IGJhY2tpbmcgc3RvcmUu
IFNpbmNlIHdlJ3JlIG5vdCBkb2luZyB0aGF0IHlldCwgd2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKaW5kZXgg
MzgxNTliZmI3MTg4ZGI3OTM2ODZiNjJiYzYyOTc3MmNiODYxODkzYy4uZGVhN2MyNjgwODU2ZWJm
YjQ2OWVmYTlhZGZiNWFiMjVlYWEzYzg0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKQEAgLTEyMTAsNyAr
MTIxMCw3IEBAIHZvaWQgV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRSZW5kZXJpbmdS
ZXN1bHRzVG9DYW52YXMoKQogICAgICAgICAgICAgYXV0byYgYmFzZSA9IGNhbnZhc0Jhc2UoKTsK
ICAgICAgICAgICAgIGJhc2UuY2xlYXJDb3BpZWRJbWFnZSgpOwogICAgICAgICAgICAgbV9tYXJr
ZWRDYW52YXNEaXJ0eSA9IGZhbHNlOwotICAgICAgICAgICAgbV9jb250ZXh0LT5wYWludENvbXBv
c2l0ZWRSZXN1bHRzVG9DYW52YXMoYmFzZS5idWZmZXIoKSk7CisgICAgICAgICAgICBtX2NvbnRl
eHQtPnBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcygqYmFzZS5idWZmZXIoKSk7CiAgICAg
ICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEyMjUsNyArMTIyNSw3IEBAIHZvaWQg
V2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMo
KQogCiAgICAgbV9tYXJrZWRDYW52YXNEaXJ0eSA9IGZhbHNlOwogCi0gICAgbV9jb250ZXh0LT5w
YWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhiYXNlLmJ1ZmZlcigpKTsKKyAgICBtX2NvbnRl
eHQtPnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKCpiYXNlLmJ1ZmZlcigpKTsKIH0KIAog
UmVmUHRyPEltYWdlRGF0YT4gV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6cGFpbnRSZW5kZXJp
bmdSZXN1bHRzVG9JbWFnZURhdGEoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0wuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmgKaW5kZXggMDAyNjI0NWU0Nzk3MjdkZWZjYzAx
MWU2ZThhMWZkYzU0ZTMzMWM2ZS4uZjdkYzhhZWMxYjBiMzdmYWJhNTM2Y2Q0N2NjMDI1ZjU5N2Yw
Mzc5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhp
Y3NDb250ZXh0R0wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHRHTC5oCkBAIC0xMjkxLDkgKzEyOTEsOSBAQCBwdWJsaWM6CiAgICAgLy8gRklY
TUU6IHRoZXNlIHNob3VsZCBiZSByZW1vdmVkLCB0aGV5J3JlIHBhcnQgb2YgZHJhd2luZyBidWZm
ZXIgYW5kCiAgICAgLy8gZGlzcGxheSBidWZmZXIgYWJzdHJhY3Rpb25zIHRoYXQgdGhlIGNhbGxl
ciBzaG91bGQgaG9sZCBzZXBhcmF0ZSB0bwogICAgIC8vIHRoZSBjb250ZXh0LgotICAgIHZpcnR1
YWwgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciopID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgcGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZm
ZXImKSA9IDA7CiAgICAgdmlydHVhbCBSZWZQdHI8SW1hZ2VEYXRhPiBwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0ltYWdlRGF0YSgpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGFpbnRDb21wb3NpdGVk
UmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwYWlu
dENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXImKSA9IDA7CiAKICAgICAvLyBG
SVhNRTogdGhpcyBzaG91bGQgYmUgcmVtb3ZlZC4gVGhlIGxheWVyIHNob3VsZCBiZSBtYXJrZWQg
Y29tcG9zaXRlZCBieQogICAgIC8vIHByZXBhcmluZyBmb3IgZGlzcGxheSwgc28gdGhhdCBjYW52
YXMgaW1hZ2UgYnVmZmVyIGFuZCB0aGUgbGF5ZXIgYWdyZWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dEdMQ2Fpcm8uY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0
R0xDYWlyby5jcHAKaW5kZXggNTZmNmIxYTcwMWIyMDBjOTg2OGQyODJmMDdjMzc2ZGExMTBjZTI1
ZS4uNWI4ZDhiNWYxYWUyYzFmYjZiNGViMThiODVmMGEyNWM4YTU3NDdjYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0R0xD
YWlyby5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3Jh
cGhpY3NDb250ZXh0R0xDYWlyby5jcHAKQEAgLTEwNiw3ICsxMDYsNyBAQCBib29sIEdyYXBoaWNz
Q29udGV4dEdMSW1hZ2VFeHRyYWN0b3I6OmV4dHJhY3RJbWFnZShib29sIHByZW11bHRpcGx5QWxw
aGEsIGJvb2wgaQogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dEdM
T3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBjb25zdCBJ
bnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQpCit2b2lkIEdyYXBo
aWNzQ29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdM
QXR0cmlidXRlcyYgc291cmNlQ29udGV4dEF0dHJpYnV0ZXMsIFJlZjxJbWFnZURhdGE+JiYgaW1h
Z2VEYXRhLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRl
eHQpCiB7CiAgICAgQVNTRVJUKCFpbWFnZURhdGEtPnNpemUoKS5pc0VtcHR5KCkpOwogICAgIGlm
IChjYW52YXNTaXplLmlzRW1wdHkoKSkKQEAgLTEyMiw3ICsxMjIsNyBAQCB2b2lkIEdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VEYXRh
LCBjb25zdCBJbgogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdG90YWxCeXRlczsgaSArPSA0
KQogICAgICAgICBzdGQ6OnN3YXAocGl4ZWxzW2ldLCBwaXhlbHNbaSArIDJdKTsKIAotICAgIGlm
ICghY29udGV4dEF0dHJpYnV0ZXMoKS5wcmVtdWx0aXBsaWVkQWxwaGEpIHsKKyAgICBpZiAoIXNv
dXJjZUNvbnRleHRBdHRyaWJ1dGVzLnByZW11bHRpcGxpZWRBbHBoYSkgewogICAgICAgICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IHRvdGFsQnl0ZXM7IGkgKz0gNCkgewogICAgICAgICAgICAgcGl4
ZWxzW2kgKyAwXSA9IHN0ZDo6bWluKDI1NSwgcGl4ZWxzW2kgKyAwXSAqIHBpeGVsc1tpICsgM10g
LyAyNTUpOwogICAgICAgICAgICAgcGl4ZWxzW2kgKyAxXSA9IHN0ZDo6bWluKDI1NSwgcGl4ZWxz
W2kgKyAxXSAqIHBpeGVsc1tpICsgM10gLyAyNTUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0R0xDRy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcAppbmRl
eCA1ZGVkM2EwODdkYTMyYzg1MDMwZDhkYjg1MjI5NTc5YTQ5OWQyODExLi4zOWQyYzAxNzY4YjY4
N2JlYTQ3Yzk0NDNlNmEwNGZjNDVkZGIyYzJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRHTENHLmNwcApAQCAt
NTExLDE4ICs1MTEsMTcgQEAgc3RhdGljIHZvaWQgcmVsZWFzZUltYWdlRGF0YSh2b2lkKiBpbWFn
ZURhdGEsIGNvbnN0IHZvaWQqLCBzaXplX3QpCiAgICAgcmVpbnRlcnByZXRfY2FzdDxJbWFnZURh
dGEqPihpbWFnZURhdGEpLT5kZXJlZigpOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dEdMT3Bl
bkdMOjpwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBjb25zdCBJbnRT
aXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQpCit2b2lkIEdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludFRvQ2FudmFzKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlcyYgc291cmNlQ29udGV4dEF0dHJpYnV0ZXMsIFJlZjxJbWFnZURhdGE+JiYgaW1hZ2VE
YXRhLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQp
CiB7CiAgICAgQVNTRVJUKCFpbWFnZURhdGEtPnNpemUoKS5pc0VtcHR5KCkpOwogICAgIGlmIChj
YW52YXNTaXplLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwotICAgIGF1dG8gYXR0cnMgPSBj
b250ZXh0QXR0cmlidXRlcygpOwogICAgIC8vIElucHV0IGlzIEdMX1JHQkEgPT0ga0NHQml0bWFw
Qnl0ZU9yZGVyMzJCaWcgfCBrQ0dJbWFnZUFscGhhKkxhc3QuCiAgICAgLy8gR0xfQkdSQSB3b3Vs
ZCBiZSBrQ0dCaXRtYXBCeXRlT3JkZXIzMkxpdHRsZSB8IGtDR0ltYWdlQWxwaGEqRmlyc3QuCiAg
ICAgQ0dCaXRtYXBJbmZvIGJpdG1hcEluZm8gPSBrQ0dCaXRtYXBCeXRlT3JkZXIzMkJpZzsKLSAg
ICBpZiAoIWF0dHJzLmFscGhhKQorICAgIGlmICghc291cmNlQ29udGV4dEF0dHJpYnV0ZXMuYWxw
aGEpCiAgICAgICAgIGJpdG1hcEluZm8gfD0ga0NHSW1hZ2VBbHBoYU5vbmVTa2lwTGFzdDsKLSAg
ICBlbHNlIGlmIChhdHRycy5wcmVtdWx0aXBsaWVkQWxwaGEpCisgICAgZWxzZSBpZiAoc291cmNl
Q29udGV4dEF0dHJpYnV0ZXMucHJlbXVsdGlwbGllZEFscGhhKQogICAgICAgICBiaXRtYXBJbmZv
IHw9IGtDR0ltYWdlQWxwaGFQcmVtdWx0aXBsaWVkTGFzdDsKICAgICBlbHNlCiAgICAgICAgIGJp
dG1hcEluZm8gfD0ga0NHSW1hZ2VBbHBoYUxhc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBD
aGFpbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHAKaW5kZXggOTNjZTQ3MzIxNjI4ZjFmNjA3
MjQyMWE3NmJjNjBjZTFiYzUzZGFiMy4uOWM0MDI3MjFkYjVmZDY0Nzg2YTJlNmEyYmE0ZmU0MjA0
ZjY1MGJmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29j
b2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNl
U3dhcENoYWluLmNwcApAQCAtMzIsNiArMzIsMzIgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBH
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6fkdyYXBoaWNzQ29udGV4dEdMSU9T
dXJmYWNlU3dhcENoYWluKCkgPSBkZWZhdWx0OwogCitjb25zdCBHcmFwaGljc0NvbnRleHRHTElP
U3VyZmFjZVN3YXBDaGFpbjo6QnVmZmVyJiBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBD
aGFpbjo6ZGlzcGxheUJ1ZmZlcigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fZGlzcGxheUJ1ZmZl
cjsKK30KKworR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW46OkJ1ZmZlciBHcmFw
aGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cmVjeWNsZUJ1ZmZlcigpCit7CisgICAg
aWYgKG1fc3BhcmVCdWZmZXIuc3VyZmFjZSkgeworICAgICAgICBpZiAobV9zcGFyZUJ1ZmZlci5z
dXJmYWNlLT5pc0luVXNlKCkpCisgICAgICAgICAgICBtX3NwYXJlQnVmZmVyLnN1cmZhY2UucmVz
ZXQoKTsKKyAgICAgICAgcmV0dXJuIFdURk1vdmUobV9zcGFyZUJ1ZmZlcik7CisgICAgfQorICAg
IHJldHVybiB7IH07Cit9CisKK3ZvaWQqIEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENo
YWluOjpkZXRhY2hDbGllbnQoKQoreworICAgIEFTU0VSVCghbV9zcGFyZUJ1ZmZlci5zdXJmYWNl
KTsKKyAgICByZXR1cm4gc3RkOjpleGNoYW5nZShtX2Rpc3BsYXlCdWZmZXIuaGFuZGxlLCBudWxs
cHRyKTsKK30KKwordm9pZCBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cHJl
c2VudChCdWZmZXImJiBidWZmZXIpCit7CisgICAgbV9zcGFyZUJ1ZmZlciA9IHN0ZDo6ZXhjaGFu
Z2UobV9kaXNwbGF5QnVmZmVyLCBXVEZNb3ZlKGJ1ZmZlcikpOworfQorCiB9CiAKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhp
Y3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmgKaW5k
ZXggNGRlZDhlNWY5NDk4MjY3MTc0NmM5ZTdmNTMzYWFjNmIxOGFjNmIwYS4uZTQzN2Q3ZGYwZWU4
NDEzOWVhZmUzZTJmZDcyNzE5OGI4ZjYxYTA2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hh
aW4uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oCkBAIC01OCwxOSArNTgsMjMgQEAgcHVibGlj
OgogICAgIC8vIC0gQnVmZmVyIHdpdGggZW1wdHkgc3VyZmFjZSBhbmQgbm9uLWVtcHR5IG1ldGFk
YXRhIGhhbmRsZSBpZiB0aGUgcmVjeWNsZWQgYnVmZmVyIHdhcyBhdmFpbGFibGUKICAgICAvLyAg
IGJ1dCB0aGUgc3VyZmFjZSBpcyBzdGlsbCBpbiB1c2UuCiAgICAgLy8gLSBTdXJmYWNlIGFuZCBo
YW5kbGUuCi0gICAgdmlydHVhbCBCdWZmZXIgcmVjeWNsZUJ1ZmZlcigpID0gMDsKKyAgICB2aXJ0
dWFsIEJ1ZmZlciByZWN5Y2xlQnVmZmVyKCk7CiAKICAgICAvLyBQcmVwYXJlcyB0aGUgdGFyZ2V0
IGZvciBkaXNwbGF5IHdpdGggYSBjb250ZW50cyBidWZmZXIuCi0gICAgdmlydHVhbCB2b2lkIHBy
ZXNlbnQoQnVmZmVyKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHByZXNlbnQoQnVmZmVyJiYpOwog
CiAgICAgLy8gUmV0dXJucyB0aGUgbW9zdCByZWNlbnQgcHJlc2VudGVkIGRpc3BsYXkgYnVmZmVy
LiBUaGUgcmVmZXJlbmNlIGlzIHZhbGlkIHVudGlsCiAgICAgLy8gbmV4dCBwcmVzZW50LCByZWN5
Y2xlQnVmZmVyIG9yIGRldGFjaENsaWVudCBjYWxsLgotICAgIHZpcnR1YWwgY29uc3QgQnVmZmVy
JiBkaXNwbGF5QnVmZmVyKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgY29uc3QgQnVmZmVyJiBk
aXNwbGF5QnVmZmVyKCkgY29uc3Q7CiAKICAgICAvLyBEZXRhY2hlcyB0aGUgY2xpZW50IGFuZCBy
ZXR1cm5zIHRoZSBjdXJyZW50IGNvbnRlbnRzIGJ1ZmZlciBtZXRhZGF0YSBoYW5kbGUuCiAgICAg
Ly8gVGhlIGlmIG11bHRpcGxlIGJ1ZmZlcnMgaGF2ZSBiZWVuIHN1Ym1pdHRlZCwgcmVjeWNsZUJ1
ZmZlciBtdXN0IGhhdmUgYmVlbiBjYWxsZWQgYmVmb3JlIGNhbGxpbmcKICAgICAvLyB0aGlzLgot
ICAgIHZpcnR1YWwgdm9pZCogZGV0YWNoQ2xpZW50KCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCog
ZGV0YWNoQ2xpZW50KCk7CisKK3Byb3RlY3RlZDoKKyAgICBCdWZmZXIgbV9kaXNwbGF5QnVmZmVy
OworICAgIEJ1ZmZlciBtX3NwYXJlQnVmZmVyOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbSBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KaW5kZXggMDMxMzhl
ZjE0MzA5ODhkNzE1YTk4Yjc3NzdkM2E1Mzg4YTMyOTlhYS4uMTUzYTNiMDcwYmNjNDg2YTkwNzhm
YWFjYjc4NTNlOWEyYzA5NDY4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLm1tCkBAIC0zOCwzMSArMzgsMTAgQEAgY2xhc3Mg
V2ViR0xMYXllclN3YXBDaGFpbiBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXAKIHB1YmxpYzoKICAgICBleHBsaWNpdCBXZWJHTExheWVyU3dhcENo
YWluKFdlYkdMTGF5ZXIqIGxheWVyKSAgOiBtX2xheWVyKGxheWVyKSB7IH07CiAgICAgfldlYkdM
TGF5ZXJTd2FwQ2hhaW4oKSBvdmVycmlkZSA9IGRlZmF1bHQ7Ci0gICAgdm9pZCBwcmVzZW50KEJ1
ZmZlcikgb3ZlcnJpZGU7Ci0gICAgY29uc3QgQnVmZmVyJiBkaXNwbGF5QnVmZmVyKCkgY29uc3Qg
b3ZlcnJpZGUKLSAgICB7Ci0gICAgICAgIHJldHVybiBtX2Rpc3BsYXlCdWZmZXI7Ci0gICAgfQot
ICAgIEJ1ZmZlciByZWN5Y2xlQnVmZmVyKCkgb3ZlcnJpZGUKLSAgICB7Ci0gICAgICAgIGlmICht
X3NwYXJlQnVmZmVyLnN1cmZhY2UpIHsKLSAgICAgICAgICAgIGlmIChtX3NwYXJlQnVmZmVyLnN1
cmZhY2UtPmlzSW5Vc2UoKSkKLSAgICAgICAgICAgICAgICBtX3NwYXJlQnVmZmVyLnN1cmZhY2Uu
cmVzZXQoKTsKLSAgICAgICAgICAgIHJldHVybiBXVEZNb3ZlKG1fc3BhcmVCdWZmZXIpOwotICAg
ICAgICB9Ci0gICAgICAgIHJldHVybiB7IH07Ci0gICAgfQotICAgIHZvaWQqIGRldGFjaENsaWVu
dCgpIG92ZXJyaWRlCi0gICAgewotICAgICAgICBBU1NFUlQoIW1fc3BhcmVCdWZmZXIuc3VyZmFj
ZSk7Ci0gICAgICAgIHZvaWQqIHJlc3VsdCA9IG1fZGlzcGxheUJ1ZmZlci5oYW5kbGU7Ci0gICAg
ICAgIG1fZGlzcGxheUJ1ZmZlci5oYW5kbGUgPSBudWxscHRyOwotICAgICAgICByZXR1cm4gcmVz
dWx0OwotICAgIH0KKyAgICB2b2lkIHByZXNlbnQoQnVmZmVyJiYpIG92ZXJyaWRlOworCiAgICAg
V2ViQ29yZTo6SU9TdXJmYWNlKiBkaXNwbGF5U3VyZmFjZSgpIHsgcmV0dXJuIG1fZGlzcGxheUJ1
ZmZlci5zdXJmYWNlLmdldCgpOyB9CiBwcml2YXRlOgotICAgIEJ1ZmZlciBtX2Rpc3BsYXlCdWZm
ZXI7Ci0gICAgQnVmZmVyIG1fc3BhcmVCdWZmZXI7CiAgICAgV2ViR0xMYXllciogY29uc3QgbV9s
YXllcjsKIH07CiAKQEAgLTEzMCwxMSArMTA5LDEwIEBAIHByaXZhdGU6CiAKIEBlbmQKIAotdm9p
ZCBXZWJHTExheWVyU3dhcENoYWluOjpwcmVzZW50KEJ1ZmZlciBidWZmZXIpCit2b2lkIFdlYkdM
TGF5ZXJTd2FwQ2hhaW46OnByZXNlbnQoQnVmZmVyJiYgYnVmZmVyKQogewogICAgIEFTU0VSVCgh
bV9zcGFyZUJ1ZmZlci5zdXJmYWNlKTsKLSAgICBtX3NwYXJlQnVmZmVyID0gV1RGTW92ZShtX2Rp
c3BsYXlCdWZmZXIpOwotICAgIG1fZGlzcGxheUJ1ZmZlciA9IFdURk1vdmUoYnVmZmVyKTsKKyAg
ICBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6cHJlc2VudChXVEZNb3ZlKGJ1
ZmZlcikpOwogICAgIFttX2xheWVyIHByZXBhcmVGb3JEaXNwbGF5XTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4
dEdMT3BlbkdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9H
cmFwaGljc0NvbnRleHRHTE9wZW5HTC5jcHAKaW5kZXggODg2NzAxNTIyODQ2MzBjNzRiZDdiNDM3
ZTVhYzg3MDY4MzYzYjExYS4uNzQ3MTc3ZjI2YTM5YTMwNGQ5ZDlhMGU4MDQ2ZDM2MGVkZjRlZWQw
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dy
YXBoaWNzQ29udGV4dEdMT3BlbkdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuY3BwCkBAIC0xOTYsNyArMTk2
LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cHJlcGFyZUZvckRpc3BsYXkoKQog
fQogI2VuZGlmCiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50UmVuZGVyaW5n
UmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKiBpbWFnZUJ1ZmZlcikKK3ZvaWQgR3JhcGhpY3ND
b250ZXh0R0xPcGVuR0w6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVy
JiBpbWFnZUJ1ZmZlcikKIHsKICAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVudCgpKQogICAgICAg
ICByZXR1cm47CkBAIC0yMDUsMTAgKzIwNSwxMCBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dEdMT3Bl
bkdMOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciogaW1hZ2VCdQog
ICAgIGF1dG8gaW1hZ2VEYXRhID0gcmVhZFJlbmRlcmluZ1Jlc3VsdHMoKTsKICAgICBpZiAoIWlt
YWdlRGF0YSkKICAgICAgICAgcmV0dXJuOwotICAgIHBhaW50VG9DYW52YXMoaW1hZ2VEYXRhLnJl
bGVhc2VOb25OdWxsKCksIGltYWdlQnVmZmVyLT5iYWNrZW5kU2l6ZSgpLCBpbWFnZUJ1ZmZlci0+
Y29udGV4dCgpKTsKKyAgICBwYWludFRvQ2FudmFzKGNvbnRleHRBdHRyaWJ1dGVzKCksIGltYWdl
RGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci5iYWNrZW5kU2l6ZSgpLCBpbWFnZUJ1
ZmZlci5jb250ZXh0KCkpOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpwYWlu
dENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZmZXIqIGltYWdlQnVmZmVyKQordm9p
ZCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFz
KEltYWdlQnVmZmVyJiBpbWFnZUJ1ZmZlcikKIHsKICAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVu
dCgpKQogICAgICAgICByZXR1cm47CkBAIC0yMTcsMjIgKzIxNywzNSBAQCB2b2lkIEdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoSW1hZ2VCdWZm
ZXIqIGltYWdlQgogICAgIGF1dG8gaW1hZ2VEYXRhID0gcmVhZENvbXBvc2l0ZWRSZXN1bHRzKCk7
CiAgICAgaWYgKCFpbWFnZURhdGEpCiAgICAgICAgIHJldHVybjsKLSAgICBwYWludFRvQ2FudmFz
KGltYWdlRGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBpbWFnZUJ1ZmZlci0+YmFja2VuZFNpemUoKSwg
aW1hZ2VCdWZmZXItPmNvbnRleHQoKSk7CisgICAgcGFpbnRUb0NhbnZhcyhjb250ZXh0QXR0cmli
dXRlcygpLCBpbWFnZURhdGEucmVsZWFzZU5vbk51bGwoKSwgaW1hZ2VCdWZmZXIuYmFja2VuZFNp
emUoKSwgaW1hZ2VCdWZmZXIuY29udGV4dCgpKTsKIH0KIAogUmVmUHRyPEltYWdlRGF0YT4gR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvSW1hZ2VEYXRhKCkK
K3sKKyAgICAvLyBSZWFkaW5nIHByZW11bHRpcGxpZWQgYWxwaGEgd291bGQgaW52b2x2ZSB1bnBy
ZW11bHRpcGx5aW5nLCB3aGljaCBpcyBsb3NzeS4KKyAgICBpZiAoY29udGV4dEF0dHJpYnV0ZXMo
KS5wcmVtdWx0aXBsaWVkQWxwaGEpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVy
biByZWFkUmVuZGVyaW5nUmVzdWx0c0ZvclBhaW50aW5nKCk7Cit9CisKK1JlZlB0cjxJbWFnZURh
dGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpyZWFkUmVuZGVyaW5nUmVzdWx0c0ZvclBhaW50
aW5nKCkKIHsKICAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVudCgpKQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKICAgICBpZiAoZ2V0SW50ZXJuYWxGcmFtZWJ1ZmZlclNpemUoKS5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgIC8vIFJlYWRpbmcgcHJlbXVsdGlwbGllZCBh
bHBoYSB3b3VsZCBpbnZvbHZlIHVucHJlbXVsdGlwbHlpbmcsIHdoaWNoIGlzCi0gICAgLy8gbG9z
c3kuCi0gICAgaWYgKGNvbnRleHRBdHRyaWJ1dGVzKCkucHJlbXVsdGlwbGllZEFscGhhKQotICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKICAgICByZXR1cm4gcmVhZFJlbmRlcmluZ1Jlc3VsdHMoKTsK
IH0KIAorUmVmUHRyPEltYWdlRGF0YT4gR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlYWRDb21w
b3NpdGVkUmVzdWx0c0ZvclBhaW50aW5nKCkKK3sKKyAgICBpZiAoIW1ha2VDb250ZXh0Q3VycmVu
dCgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBpZiAoZ2V0SW50ZXJuYWxGcmFtZWJ1
ZmZlclNpemUoKS5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVy
biByZWFkQ29tcG9zaXRlZFJlc3VsdHMoKTsKK30KKwogI2lmICFQTEFURk9STShDT0NPQSkKIFJl
ZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpyZWFkQ29tcG9zaXRlZFJl
c3VsdHMoKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
b3BlbmdsL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaAppbmRleCA1ODY4NTA4
NDk4ZTVlNjRkODgxZDk2MTRlNjc3ODA5YjgyZGNlMDBhLi5lNDRiZmQ1ZDlmOGFkOWQ3YzUyNzYw
MWEyNTJhNzcwZWQ0Zjk3OTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaApA
QCAtNDU4LDkgKzQ1OCwxMiBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaXNwYXRjaENvbnRleHRDaGFu
Z2VkTm90aWZpY2F0aW9uKCk7CiAgICAgdm9pZCBzaW11bGF0ZUNvbnRleHRDaGFuZ2VkKCkgZmlu
YWw7CiAKLSAgICB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVy
KikgZmluYWw7CisgICAgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1
ZmZlciYpIGZpbmFsOwogICAgIFJlZlB0cjxJbWFnZURhdGE+IHBhaW50UmVuZGVyaW5nUmVzdWx0
c1RvSW1hZ2VEYXRhKCkgZmluYWw7Ci0gICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9D
YW52YXMoSW1hZ2VCdWZmZXIqKSBmaW5hbDsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3Vs
dHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciYpIGZpbmFsOworCisgICAgUmVmUHRyPEltYWdlRGF0YT4g
cmVhZFJlbmRlcmluZ1Jlc3VsdHNGb3JQYWludGluZygpOworICAgIFJlZlB0cjxJbWFnZURhdGE+
IHJlYWRDb21wb3NpdGVkUmVzdWx0c0ZvclBhaW50aW5nKCk7CiAKICNpZiBVU0UoT1BFTkdMKSAm
JiBFTkFCTEUoV0VCR0wyKQogICAgIHZvaWQgcHJpbWl0aXZlUmVzdGFydEluZGV4KEdDR0x1aW50
KTsKQEAgLTUxNSw2ICs1MTgsOCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgcG9zc2libGVG
b3JtYXRBbmRUeXBlRm9ySW50ZXJuYWxGb3JtYXQoR0NHTGVudW0gaW50ZXJuYWxGb3JtYXQsIEdD
R0xlbnVtJiBmb3JtYXQsIEdDR0xlbnVtJiB0eXBlKTsKICNlbmRpZiAvLyAhVVNFKEFOR0xFKQog
CisgICAgc3RhdGljIHZvaWQgcGFpbnRUb0NhbnZhcyhjb25zdCBHcmFwaGljc0NvbnRleHRHTEF0
dHJpYnV0ZXMmLCBSZWY8SW1hZ2VEYXRhPiYmLCBjb25zdCBJbnRTaXplJiBjYW52YXNTaXplLCBH
cmFwaGljc0NvbnRleHQmKTsKKwogcHJpdmF0ZToKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBH
cmFwaGljc0NvbnRleHRHTE9wZW5HTChHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEhvc3RX
aW5kb3cqLCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTCogc2hhcmVkQ29udGV4dCA9IG51bGxwdHIs
IEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluKiA9IG51bGxwdHIpOwpAQCAtNTQy
LDcgKzU0Nyw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPEltYWdlRGF0YT4gcmVhZFJlbmRlcmlu
Z1Jlc3VsdHMoKTsKICAgICBSZWZQdHI8SW1hZ2VEYXRhPiByZWFkQ29tcG9zaXRlZFJlc3VsdHMo
KTsKICAgICBSZWZQdHI8SW1hZ2VEYXRhPiByZWFkUGl4ZWxzRm9yUGFpbnRSZXN1bHRzKCk7Ci0g
ICAgdm9pZCBwYWludFRvQ2FudmFzKFJlZjxJbWFnZURhdGE+JiYsIGNvbnN0IEludFNpemUmIGNh
bnZhc1NpemUsIEdyYXBoaWNzQ29udGV4dCYpOwogCiAgICAgYm9vbCByZXNoYXBlRkJPcyhjb25z
dCBJbnRTaXplJik7CiAgICAgdm9pZCBwcmVwYXJlVGV4dHVyZUltcGwoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBi
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcApp
bmRleCBkNTc3ZTQzNDk5ZjE4MTQ3OTFjOGEwZWY3MWNiMzRhMDI0YTFmYWUyLi5lMTY3ZWMwMjY0
NDIwNTY5ODdiZTk4ZTU0Nzk2YzYzMTY1NTk2MTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCkBAIC0zMzcsMTAg
KzMzNywxNCBAQCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpSZW1vdGVSZW5kZXJpbmdCYWNr
ZW5kV3JhcHBlcjo6flJlbW90ZVJlbmRlcmluZ0JhY2tlbgogfQogCiAjaWYgRU5BQkxFKFdFQkdM
KQotdm9pZCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjcmVhdGVHcmFwaGljc0NvbnRleHRH
TChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMgYXR0cmlidXRlcywgR3JhcGhp
Y3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcikKK3ZvaWQg
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0woV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIEdyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlbmRlcmluZ0JhY2tl
bmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogeworICAgIGF1dG8qIHJl
bmRlcmluZ0JhY2tlbmQgPSBtX3JlbW90ZVJlbmRlcmluZ0JhY2tlbmRNYXAuZ2V0KHJlbmRlcmlu
Z0JhY2tlbmRJZGVudGlmaWVyKTsKKyAgICBpZiAoIXJlbmRlcmluZ0JhY2tlbmQpCisgICAgICAg
IHJldHVybjsKKwogICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9yZW1vdGVHcmFwaGljc0NvbnRleHRH
TE1hcC5lbnN1cmUoZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBbJl0oKSB7Ci0gICAgICAg
IHJldHVybiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKGF0dHJpYnV0ZXMsICp0aGlz
LCBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpOworICAgICAgICByZXR1cm4gUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0w6OmNyZWF0ZShhdHRyaWJ1dGVzLCAqdGhpcywgZ3JhcGhpY3NDb250ZXh0
R0xJZGVudGlmaWVyLCByZW5kZXJpbmdCYWNrZW5kLT5nZXQoKSk7CiAgICAgfSk7CiAgICAgQVNT
RVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgg
Yi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCmlu
ZGV4IGViYjBkMDA4ZjNkNzEyOTIxN2I4ZTk2ZWZhMTliZDUxZmZhZmExNjcuLjVlODIwMzM1N2Y3
ODFmZGMwNTNlMTVkY2M4ZmM4ZTE1OTYwNDRlNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaApAQCAtMTM4LDcgKzEzOCw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZWxlYXNlUmVuZGVyaW5nQmFja2VuZChSZW5kZXJpbmdC
YWNrZW5kSWRlbnRpZmllcik7CiAKICNpZiBFTkFCTEUoV0VCR0wpCi0gICAgdm9pZCBjcmVhdGVH
cmFwaGljc0NvbnRleHRHTChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEdy
YXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcik7CisgICAgdm9pZCBjcmVhdGVHcmFwaGljc0NvbnRl
eHRHTChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMsIEdyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllciwgUmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIpOwogICAgIHZvaWQgcmVs
ZWFzZUdyYXBoaWNzQ29udGV4dEdMKEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcik7CiAjZW5k
aWYKIApAQCAtMjExLDcgKzIxMSw3IEBAIHByaXZhdGU6CiAgICAgcHVibGljOgogICAgICAgICBS
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3JhcHBlcihSZWY8UmVtb3RlUmVuZGVyaW5nQmFja2VuZD4m
Jik7CiAgICAgICAgIH5SZW1vdGVSZW5kZXJpbmdCYWNrZW5kV3JhcHBlcigpOwotCisgICAgICAg
IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmIGdldCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVtb3RlUmVu
ZGVyaW5nQmFja2VuZC5nZXQoKTsgfQogICAgIHByaXZhdGU6CiAgICAgICAgIFJlZjxSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kPiBtX3JlbW90ZVJlbmRlcmluZ0JhY2tlbmQ7CiAgICAgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dl
YlByb2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggMzBmNWMyOTg4NjIxNGY5MTA0ZjFhZmEwODM1YjIz
OGEzNmRjNmVmMS4uMmI2OGUzYjA4N2E5MzVkMTllYjFkNzk3YmJlODNhZDlkMzgwNDgwMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rp
b25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KQEAgLTI2LDcgKzI2LDcgQEAgbWVzc2FnZXMgLT4g
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyBXYW50c0Rpc3BhdGNoTWVzc2FnZSB7CiAgICAgdm9p
ZCBDcmVhdGVSZW5kZXJpbmdCYWNrZW5kKFdlYktpdDo6UmVuZGVyaW5nQmFja2VuZElkZW50aWZp
ZXIgaWRlbnRpZmllciwgSVBDOjpTZW1hcGhvcmUgcmVzdW1lRGlzcGxheUxpc3RTZW1hcGhvcmUp
CiAgICAgdm9pZCBSZWxlYXNlUmVuZGVyaW5nQmFja2VuZChXZWJLaXQ6OlJlbmRlcmluZ0JhY2tl
bmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKQogI2lmIEVOQUJMRShXRUJH
TCkKLSAgICB2b2lkIENyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKHN0cnVjdCBXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXMgYXR0cmlidXRlcywgV2ViS2l0OjpHcmFwaGljc0NvbnRl
eHRHTElkZW50aWZpZXIgZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKQorICAgIHZvaWQgQ3Jl
YXRlR3JhcGhpY3NDb250ZXh0R0woc3RydWN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlcyBhdHRyaWJ1dGVzLCBXZWJLaXQ6OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBn
cmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFdlYktpdDo6UmVuZGVyaW5nQmFja2VuZElkZW50
aWZpZXIgcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIpCiAgICAgdm9pZCBSZWxlYXNlR3JhcGhp
Y3NDb250ZXh0R0woV2ViS2l0OjpHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3ND
b250ZXh0R0xJZGVudGlmaWVyKQogI2VuZGlmCiAgICAgdm9pZCBDbGVhck5vd1BsYXlpbmdJbmZv
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVH
cmFwaGljc0NvbnRleHRHTC5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3Mv
UmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuY3BwCmluZGV4IDc5YjM0NTk2ZmJmMmQwZGZjOTgxODY1
MWJkY2ZlYjRiMGEwYzg3NWQuLmVhMzExM2IzZjFkOWQ0NGJhMzhjODlmNTAzMTU4MDcyYTlmNThm
OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVH
cmFwaGljc0NvbnRleHRHTC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmNwcApAQCAtMzksMjAgKzM5LDIxIEBAIG5hbWVz
cGFjZSBXZWJLaXQgewogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKICNpZiAhUExBVEZPUk0o
Q09DT0EpCi1zdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IFJlbW90ZUdy
YXBoaWNzQ29udGV4dEdMOjpjcmVhdGUoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xB
dHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBncHVDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIgZ3JhcGhpY3ND
b250ZXh0R0xJZGVudGlmaWVyKQorc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBo
aWNzQ29udGV4dEdMQXR0cmlidXRlcyYsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBHcmFw
aGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmKQogewogICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBudWxscHRyOwogfQogI2VuZGlmCiAK
LVJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MmIGdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MsIEdyYXBoaWNzQ29u
dGV4dEdMSWRlbnRpZmllciBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIsIFJlZjxHcmFwaGlj
c0NvbnRleHRHTE9wZW5HTD4gY29udGV4dCkKK1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjpSZW1v
dGVHcmFwaGljc0NvbnRleHRHTChjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMmIGF0dHJpYnV0ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24s
IEdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciBpZGVudGlmaWVyLCBSZWY8R3JhcGhpY3NDb250
ZXh0R0xPcGVuR0w+IGNvbnRleHQsIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmIHJlbmRlcmluZ0Jh
Y2tlbmQpCiAgICAgOiBtX2NvbnRleHQoV1RGTW92ZShjb250ZXh0KSkKLSAgICAsIG1fZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2VzcyhtYWtlV2Vha1B0cihncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
KSkKLSAgICAsIG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKGdyYXBoaWNzQ29udGV4dEdM
SWRlbnRpZmllcikKKyAgICAsIG1fZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcyhtYWtlV2Vha1B0
cihjb25uZWN0aW9uKSkKKyAgICAsIG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKGlkZW50
aWZpZXIpCisgICAgLCBtX3JlbmRlcmluZ0JhY2tlbmQobWFrZVJlZihyZW5kZXJpbmdCYWNrZW5k
KSkKIHsKICAgICBpZiAoYXV0byogZ3B1Q29ubmVjdGlvblRvV2ViUHJvY2VzcyA9IG1fZ3B1Q29u
bmVjdGlvblRvV2ViUHJvY2Vzcy5nZXQoKSkKLSAgICAgICAgZ3B1Q29ubmVjdGlvblRvV2ViUHJv
Y2Vzcy0+bWVzc2FnZVJlY2VpdmVyTWFwKCkuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBncmFwaGljc0Nv
bnRleHRHTElkZW50aWZpZXIudG9VSW50NjQoKSwgKnRoaXMpOworICAgICAgICBncHVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzLT5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5hZGRNZXNzYWdlUmVjZWl2ZXIo
TWVzc2FnZXM6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCks
IG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLnRvVUludDY0KCksICp0aGlzKTsKICAgICBt
X2NvbnRleHQtPmFkZENsaWVudCgqdGhpcyk7CiAgICAgU3RyaW5nIGV4dGVuc2lvbnMgPSBtX2Nv
bnRleHQtPmdldFN0cmluZyhHcmFwaGljc0NvbnRleHRHTDo6RVhURU5TSU9OUyk7CiAgICAgU3Ry
aW5nIHJlcXVlc3RhYmxlRXh0ZW5zaW9ucyA9IG1fY29udGV4dC0+Z2V0U3RyaW5nKEV4dGVuc2lv
bnNHTDo6UkVRVUVTVEFCTEVfRVhURU5TSU9OU19BTkdMRSk7CkBAIC0xMzcsNiArMTM4LDQ1IEBA
IHZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6Om5vdGlmeU1hcmtDb250ZXh0Q2hhbmdlZCgp
CiAgICAgbV9jb250ZXh0LT5tYXJrQ29udGV4dENoYW5nZWQoKTsKIH0KIAordm9pZCBSZW1vdGVH
cmFwaGljc0NvbnRleHRHTDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6
UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGltYWdlQnVmZmVyLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcGFpbnRJbWFnZURhdGFUb0lt
YWdlQnVmZmVyKG1fY29udGV4dC0+cmVhZFJlbmRlcmluZ1Jlc3VsdHNGb3JQYWludGluZygpLCBp
bWFnZUJ1ZmZlciwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMOjpwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29y
ZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGltYWdlQnVmZmVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcGFpbnRJbWFnZURhdGFU
b0ltYWdlQnVmZmVyKG1fY29udGV4dC0+cmVhZENvbXBvc2l0ZWRSZXN1bHRzRm9yUGFpbnRpbmco
KSwgaW1hZ2VCdWZmZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6cGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKFJlZlB0
cjxXZWJDb3JlOjpJbWFnZURhdGE+JiYgaW1hZ2VEYXRhLCBXZWJDb3JlOjpSZW5kZXJpbmdSZXNv
dXJjZUlkZW50aWZpZXIgdGFyZ2V0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgLy8gRklYTUU6IFdlIGRvIG5vdCBoYXZlIGZ1bmN0aW9uaW5n
IHJlYWQvd3JpdGUgZmVuY2VzIGluIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQuIFRodXMgdGhpcyBp
cyBzeW5jaHJvbm91cywKKyAgICAvLyBhcyBhcmUgdGhlIG1lc3NhZ2VzIHRoYXQgY2FsbCB0aGVz
ZS4KKyAgICBMb2NrIG11dGV4OworICAgIENvbmRpdGlvbiBjb25kaXRpb25WYXJpYWJsZTsKKyAg
ICBib29sIGlzRmluaXNoZWQgPSBmYWxzZTsKKyAgICBtX3JlbmRlcmluZ0JhY2tlbmQtPmRpc3Bh
dGNoKFsmXSgpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBpbWFnZUJ1ZmZlciA9IG1fcmVu
ZGVyaW5nQmFja2VuZC0+cmVtb3RlUmVzb3VyY2VDYWNoZSgpLmNhY2hlZEltYWdlQnVmZmVyKHRh
cmdldCkpIHsKKyAgICAgICAgICAgIC8vIEhlcmUgd2UgZG8gbm90IHRyeSB0byBwbGF5IGJhY2sg
cGVuZGluZyBjb21tYW5kcyBmb3IgaW1hZ2VCdWZmZXIuIEN1cnJlbnRseSB0aGlzIGNhbGwgaXMg
b25seSBtYWRlIGZvciBlbXB0eQorICAgICAgICAgICAgLy8gaW1hZ2UgYnVmZmVycyBhbmQgdGhl
cmUncyBubyBnb29kIHdheSB0byBhZGQgZGlzcGxheSBsaXN0cy4KKyAgICAgICAgICAgIGlmIChp
bWFnZURhdGEpCisgICAgICAgICAgICAgICAgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OnBhaW50
VG9DYW52YXMobV9jb250ZXh0LT5jb250ZXh0QXR0cmlidXRlcygpLCBpbWFnZURhdGEucmVsZWFz
ZU5vbk51bGwoKSwgaW1hZ2VCdWZmZXItPmJhY2tlbmRTaXplKCksIGltYWdlQnVmZmVyLT5jb250
ZXh0KCkpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGltYWdlQnVmZmVyLT5j
b250ZXh0KCkuY2xlYXJSZWN0KHsgSW50UG9pbnQoKSwgaW1hZ2VCdWZmZXItPmJhY2tlbmRTaXpl
KCkgfSk7CisgICAgICAgICAgICAvLyBVbmZvcnR1bmF0ZWx5ICJmbHVzaCIgaW1wbGVtZW50YXRp
b24gaW4gUmVtb3RlUmVuZGVyaW5nQmFja2VuZCBvdmVybG9hZHMgb3JkZXJpbmcgYW5kIGVmZmVj
dHMuCisgICAgICAgICAgICBpbWFnZUJ1ZmZlci0+Zmx1c2hDb250ZXh0KCk7CisgICAgICAgIH0K
KyAgICAgICAgYXV0byBsb2NrZXIgPSBob2xkTG9jayhtdXRleCk7CisgICAgICAgIGlzRmluaXNo
ZWQgPSB0cnVlOworICAgICAgICBjb25kaXRpb25WYXJpYWJsZS5ub3RpZnlPbmUoKTsKKyAgICB9
KTsKKyAgICBzdGQ6OnVuaXF1ZV9sb2NrPExvY2s+IGxvY2sobXV0ZXgpOworICAgIGNvbmRpdGlv
blZhcmlhYmxlLndhaXQobG9jaywgWyZdIHsKKyAgICAgICAgcmV0dXJuIGlzRmluaXNoZWQ7Cisg
ICAgfSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBo
aWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
Z3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaAppbmRleCAwMDE1OWFjOGI1ODZhOGI2
MmEzZGRhM2E1NzAwNGU4ODNlMTU2ZDA4Li5hYWE1NzQ5ZDBiYzU0NjQ2YjJjMWY4ZjRjMzllNThi
ZGE5NjFlODRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3Mv
UmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
Z3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wuaApAQCAtMzEsNyArMzEsNyBAQAogI2lu
Y2x1ZGUgIkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIk1lc3NhZ2VS
ZWNlaXZlci5oIgogI2luY2x1ZGUgIk1lc3NhZ2VTZW5kZXIuaCIKLQorI2luY2x1ZGUgIlJlbW90
ZVJlbmRlcmluZ0JhY2tlbmQuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0V4dGVuc2lvbnNHTC5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CkBAIC01OCwxNCArNTgsMTUgQEAgY2xhc3MgUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0wKICAgICA6IHB1YmxpYyBJUEM6Ok1lc3NhZ2VTZW5kZXIKICAgICAs
IHByaXZhdGUgSVBDOjpNZXNzYWdlUmVjZWl2ZXIKICAgICAsIHByaXZhdGUgV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0R0w6OkNsaWVudCB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBw
dWJsaWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRH
TD4gY3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYsIEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpOwor
ICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0w+IGNyZWF0
ZShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0
aW9uVG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kJik7CiAgICAgflJlbW90ZUdyYXBoaWNzQ29udGV4dEdMKCkgb3ZlcnJpZGU7
CiAKICAgICBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzKiBncHVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzKCkgY29uc3Q7CiAKIHByb3RlY3RlZDoKLSAgICBSZW1vdGVHcmFwaGljc0NvbnRleHRHTChj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZWY8V2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w+KTsKKyAgICBSZW1vdGVHcmFwaGljc0NvbnRleHRHTChj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLCBSZWY8V2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0w+LCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kJik7CiAKICAg
ICAvLyBJUEM6Ok1lc3NhZ2VTZW5kZXIgb3ZlcnJpZGVzLgogICAgIElQQzo6Q29ubmVjdGlvbiog
bWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKSBjb25zdCBmaW5hbDsKQEAgLTkyLDEyICs5MywxNyBA
QCBwcm90ZWN0ZWQ6CiAjZW5kaWYKICAgICB2b2lkIGdldEVycm9yKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQodWludDMyX3QpPiYmKTsKICAgICB2b2lkIHN5bnRoZXNpemVHTEVycm9yKHVpbnQzMl90
IGVycm9yKTsKKyAgICB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6
OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYm
KTsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJDb3JlOjpSZW5k
ZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CiAK
ICNpbmNsdWRlICJSZW1vdGVHcmFwaGljc0NvbnRleHRHTEZ1bmN0aW9uc0dlbmVyYXRlZC5oIiAv
LyBOT0xJTlQKIAorICAgIHZvaWQgcGFpbnRJbWFnZURhdGFUb0ltYWdlQnVmZmVyKFJlZlB0cjxX
ZWJDb3JlOjpJbWFnZURhdGE+JiYsIFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmll
ciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKwogICAgIFJlZjxXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTE9wZW5HTD4gbV9jb250ZXh0OwogICAgIFdlYWtQdHI8R1BVQ29ubmVjdGlv
blRvV2ViUHJvY2Vzcz4gbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOwogICAgIEdyYXBoaWNz
Q29udGV4dEdMSWRlbnRpZmllciBtX2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcjsKKyAgICBS
ZWY8UmVtb3RlUmVuZGVyaW5nQmFja2VuZD4gbV9yZW5kZXJpbmdCYWNrZW5kOwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
Z3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wubWVzc2FnZXMu
aW4KaW5kZXggN2ExOTI1ZGJiMjdhYmYzZDMwMzRjYjdmY2IzOGEzZjM5M2UzZGNmYS4uZDE1MDk1
OWFhYTVlNTRhM2VjNTBiNzRhMjIxOTcwODRiMDBkYTY4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMLm1lc3NhZ2Vz
LmluCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGlj
c0NvbnRleHRHTC5tZXNzYWdlcy5pbgpAQCAtMzYsNiArMzYsOSBAQCBtZXNzYWdlcyAtPiBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTCBOb3RSZWZDb3VudGVkIHsKICAgICB2b2lkIE5vdGlmeU1hcmtD
b250ZXh0Q2hhbmdlZCgpCiAgICAgdm9pZCBTeW50aGVzaXplR0xFcnJvcih1aW50MzJfdCBlcnJv
cikKICAgICB2b2lkIEdldEVycm9yKCkgLT4gKHVpbnQzMl90IHJldHVyblZhbHVlKSBTeW5jaHJv
bm91cworICAgIHZvaWQgUGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVu
ZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIGlkZW50aWZpZXIpIC0+ICgpIFN5bmNocm9ub3VzCisg
ICAgdm9pZCBQYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6UmVuZGVyaW5n
UmVzb3VyY2VJZGVudGlmaWVyIGlkZW50aWZpZXIpIC0+ICgpIFN5bmNocm9ub3VzCisKIAogICAg
IHZvaWQgU2V0RmFpbE5leHRHUFVTdGF0dXNDaGVjaygpCiAgICAgdm9pZCBNb3ZlRXJyb3JzVG9T
eW50aGV0aWNFcnJvckxpc3QoKSAtPiAoYm9vbCByZXR1cm5WYWx1ZSkgU3luY2hyb25vdXMKQEAg
LTI5Miw0ICsyOTUsMyBAQCBtZXNzYWdlcyAtPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBOb3RS
ZWZDb3VudGVkIHsKIH0KIAogI2VuZGlmCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29h
LmNwcAppbmRleCA4ZTJkMWZjNjUxODYyODM5NWU5NzQxYzQ0ZTdhYzg1MWIwOGVmNjI3Li43OWU1
MzA3MWExMmMwODQyZWJhNzhiNTY4NGY2NTg1NTU4NzE2ZDlmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNz
Q29udGV4dEdMQ29jb2EuY3BwCkBAIC0zNyw2MyArMzcsMzUgQEAgdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiAKIG5hbWVzcGFjZSB7CiAKLWNsYXNzIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMQ29j
b2EgZmluYWwgOiBwdWJsaWMgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wsIHByaXZhdGUgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4geworY2xhc3MgUmVtb3RlR3Jh
cGhpY3NDb250ZXh0R0xDb2NvYSBmaW5hbCA6IHB1YmxpYyBSZW1vdGVHcmFwaGljc0NvbnRleHRH
TCB7CiBwdWJsaWM6Ci0gICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYShjb25zdCBXZWJD
b3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBHUFVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzJiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyKTsKKyAgICBSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYs
IEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIs
IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQmKTsKICAgICB+UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xD
b2NvYSgpIGZpbmFsID0gZGVmYXVsdDsKIAogICAgIC8vIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
IG92ZXJyaWRlcy4KICAgICB2b2lkIHByZXBhcmVGb3JEaXNwbGF5KENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoV1RGOjpNYWNoU2VuZFJpZ2h0JiYpPiYmKSBmaW5hbDsKLQotICAgIC8vIEdyYXBoaWNz
Q29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluIG92ZXJyaWRlcy4KLSAgICBCdWZmZXIgcmVjeWNs
ZUJ1ZmZlcigpIGZpbmFsOwotICAgIHZvaWQgcHJlc2VudChCdWZmZXIpIGZpbmFsOwotICAgIGNv
bnN0IEJ1ZmZlciYgZGlzcGxheUJ1ZmZlcigpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQqIGRldGFj
aENsaWVudCgpIGZpbmFsOwogcHJpdmF0ZToKLSAgICBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFj
ZVN3YXBDaGFpbjo6QnVmZmVyIG1fZGlzcGxheUJ1ZmZlcjsKKyAgICBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiBtX3N3YXBDaGFpbjsKIH07CiAKIH0KIAotc3Rk
Ojp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMPiBSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTDo6Y3JlYXRlKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYg
YXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgZ3B1Q29ubmVjdGlvblRvV2Vi
UHJvY2VzcywgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGdyYXBoaWNzQ29udGV4dEdMSWRl
bnRpZmllcikKLXsKLSAgICByZXR1cm4gc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMPihuZXcgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYShhdHRyaWJ1dGVzLCBncHVD
b25uZWN0aW9uVG9XZWJQcm9jZXNzLCBncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpKTsKLX0K
LQotUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xD
b2NvYShjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0
ZXMsIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIEdyYXBoaWNzQ29udGV4
dEdMSWRlbnRpZmllciBpZGVudGlmaWVyKQotICAgIDogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wo
YXR0cmlidXRlcywgY29ubmVjdGlvbiwgaWRlbnRpZmllciwgR3JhcGhpY3NDb250ZXh0R0xPcGVu
R0w6OmNyZWF0ZUZvckdQVVByb2Nlc3MoYXR0cmlidXRlcywgdGhpcykpCi17Ci19Ci0KLUdyYXBo
aWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluOjpCdWZmZXIgUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xDb2NvYTo6cmVjeWNsZUJ1ZmZlcigpCi17Ci0gICAgcmV0dXJuIFdURk1vdmUobV9kaXNw
bGF5QnVmZmVyKTsKLX0KLQotdm9pZCBSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hOjpwcmVz
ZW50KEJ1ZmZlciBidWZmZXIpCi17Ci0gICAgQVNTRVJUKCFtX2Rpc3BsYXlCdWZmZXIuc3VyZmFj
ZSk7Ci0gICAgbV9kaXNwbGF5QnVmZmVyID0gV1RGTW92ZShidWZmZXIpOwotfQotCi1jb25zdCBH
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbjo6QnVmZmVyJiBSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTENvY29hOjpkaXNwbGF5QnVmZmVyKCkgY29uc3QKK3N0ZDo6dW5pcXVlX3B0cjxS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTD4gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0w6OmNyZWF0ZShj
b25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEdQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIEdyYXBoaWNzQ29udGV4dEdMSWRl
bnRpZmllciBpZGVudGlmaWVyLCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kJiByZW5kZXJpbmdCYWNr
ZW5kKQogewotICAgIHJldHVybiBtX2Rpc3BsYXlCdWZmZXI7CisgICAgcmV0dXJuIG1ha2VVbmlx
dWU8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xDb2NvYT4oYXR0cmlidXRlcywgY29ubmVjdGlvbiwg
aWRlbnRpZmllciwgcmVuZGVyaW5nQmFja2VuZCk7CiB9CiAKLXZvaWQqIFJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMQ29jb2E6OmRldGFjaENsaWVudCgpCitSZW1vdGVHcmFwaGljc0NvbnRleHRHTENv
Y29hOjpSZW1vdGVHcmFwaGljc0NvbnRleHRHTENvY29hKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcywgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYgY29ubmVjdGlvbiwgR3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJl
bW90ZVJlbmRlcmluZ0JhY2tlbmQmIHJlbmRlcmluZ0JhY2tlbmQpCisgICAgOiBSZW1vdGVHcmFw
aGljc0NvbnRleHRHTChhdHRyaWJ1dGVzLCBjb25uZWN0aW9uLCBpZGVudGlmaWVyLCBHcmFwaGlj
c0NvbnRleHRHTE9wZW5HTDo6Y3JlYXRlRm9yR1BVUHJvY2VzcyhhdHRyaWJ1dGVzLCAmbV9zd2Fw
Q2hhaW4pLCByZW5kZXJpbmdCYWNrZW5kKQogewotICAgIHJldHVybiBzdGQ6OmV4Y2hhbmdlKG1f
ZGlzcGxheUJ1ZmZlci5oYW5kbGUsIG51bGxwdHIpOwogfQogCiB2b2lkIFJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMQ29jb2E6OnByZXBhcmVGb3JEaXNwbGF5KENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V1RGOjpNYWNoU2VuZFJpZ2h0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIG1fY29u
dGV4dC0+cHJlcGFyZUZvckRpc3BsYXkoKTsKLSAgICBhdXRvIGRpc3BsYXlCdWZmZXIgPSBXVEZN
b3ZlKG1fZGlzcGxheUJ1ZmZlci5zdXJmYWNlKTsKICAgICBNYWNoU2VuZFJpZ2h0IHNlbmRSaWdo
dDsKLSAgICBpZiAoZGlzcGxheUJ1ZmZlcikKLSAgICAgICAgc2VuZFJpZ2h0ID0gZGlzcGxheUJ1
ZmZlci0+Y3JlYXRlU2VuZFJpZ2h0KCk7CisgICAgaWYgKGF1dG8qIHN1cmZhY2UgPSBtX3N3YXBD
aGFpbi5kaXNwbGF5QnVmZmVyKCkuc3VyZmFjZS5nZXQoKSkKKyAgICAgICAgc2VuZFJpZ2h0ID0g
c3VyZmFjZS0+Y3JlYXRlU2VuZFJpZ2h0KCk7CiAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92
ZShzZW5kUmlnaHQpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQ
cm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuY3BwCmluZGV4IDJjNzYyNTE4
NmFlZTE1ZDc3MmI3NjRiZGQ1NTlmMGExYzI3MGJkNDEuLjdjZGM2ZWJjMzA2NDhkMDAzMTg0NGJl
YjI1ZGFjNDliZjRmOWU2NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9n
cmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5jcHAKQEAgLTkyLDYgKzky
LDExIEBAIHZvaWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6ZGlzY29ubmVjdCgpCiAgICAgbV9n
cHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLT5jb25uZWN0aW9uKCkucmVtb3ZlV29ya1F1ZXVlTWVz
c2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjptZXNzYWdlUmVj
ZWl2ZXJOYW1lKCksIG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXIudG9VSW50NjQoKSk7CiB9
CiAKK3ZvaWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6ZGlzcGF0Y2goRnVuY3Rpb248dm9pZCgp
PiYmIHRhc2spCit7CisgICAgbV93b3JrUXVldWUtPmRpc3BhdGNoKFdURk1vdmUodGFzaykpOwor
fQorCiBJUEM6OkNvbm5lY3Rpb24qIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6Om1lc3NhZ2VTZW5k
ZXJDb25uZWN0aW9uKCkgY29uc3QKIHsKICAgICByZXR1cm4gJm1fZ3B1Q29ubmVjdGlvblRvV2Vi
UHJvY2Vzcy0+Y29ubmVjdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaCBiL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmgKaW5kZXggYjdhZWUyNjI3
NzA1YmI5YWNjMTAxOWQ3MTU1ZWYyN2UxNTNkMmIyOC4uZTA1OTZiZGVlMjUyODVlNzc5NzQxYjJi
NjE2MjJiNjBhNzY2NzMzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dy
YXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5oCkBAIC04MCw2ICs4MCw5IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgZGlzY29ubmVjdCgpOwogCisgICAgLy8gUnVucyBGdW5jdGlv
biBpbiBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kIHRhc2sgcXVldWUuCisgICAgdm9pZCBkaXNwYXRj
aChGdW5jdGlvbjx2b2lkKCk+JiYpOworCiBwcml2YXRlOgogICAgIFJlbW90ZVJlbmRlcmluZ0Jh
Y2tlbmQoR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlm
aWVyLCBJUEM6OlNlbWFwaG9yZSYmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eS5jcHAKaW5kZXggZjI5YmUwMDZlYjdiOTc2NGI3ODJkOTE2MjVjODAxNjBmZjhmMzZm
My4uYzA1MjkyMWUwMTdlOGMzYzYyMTQ4NGUxMzk3YjgzYjNmYmZmZDFiMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRl
eHRHTFByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNz
L1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuY3BwCkBAIC0zMyw2ICszMyw3IEBACiAjaW5j
bHVkZSAiUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3Mu
aCIKKyNpbmNsdWRlIDxXZWJDb3JlL0ltYWdlQnVmZmVyLmg+CiAKICNpZiBQTEFURk9STShDT0NP
QSkKICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dENHLmg+CkBAIC00MywxOCArNDQs
MTggQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCi1S
ZWZQdHI8UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eT4gUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eTo6Y3JlYXRlKGNvbnN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmli
dXRlcykKK1JlZlB0cjxSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5PiBSZW1vdGVHcmFwaGlj
c0NvbnRleHRHTFByb3h5OjpjcmVhdGUoY29uc3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVz
JiBhdHRyaWJ1dGVzLCBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5k
KQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94
eShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVHUFVQcm9jZXNzQ29ubmVjdGlvbigpLCBh
dHRyaWJ1dGVzKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTFByb3h5KFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVByb2Nlc3NDb25uZWN0
aW9uKCksIGF0dHJpYnV0ZXMsIHJlbmRlcmluZ0JhY2tlbmQpKTsKIH0KIAotUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0xQcm94eTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eShHUFVQcm9jZXNz
Q29ubmVjdGlvbiYgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24sIGNvbnN0IEdyYXBoaWNzQ29udGV4dEdM
QXR0cmlidXRlcyYgYXR0cnMpCi0gICAgOiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5QmFz
ZShhdHRycykKK1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OlJlbW90ZUdyYXBoaWNzQ29u
dGV4dEdMUHJveHkoR1BVUHJvY2Vzc0Nvbm5lY3Rpb24mIGdwdVByb2Nlc3NDb25uZWN0aW9uLCBj
b25zdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIFJlbmRlcmluZ0Jh
Y2tlbmRJZGVudGlmaWVyIHJlbmRlcmluZ0JhY2tlbmQpCisgICAgOiBSZW1vdGVHcmFwaGljc0Nv
bnRleHRHTFByb3h5QmFzZShhdHRyaWJ1dGVzKQogICAgICwgbV9ncHVQcm9jZXNzQ29ubmVjdGlv
bigmZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24pCiB7Ci0gICAgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24uYWRk
Q2xpZW50KCp0aGlzKTsKLSAgICBncHVQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlUmVjZWl2ZXJN
YXAoKS5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdM
UHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZp
ZXIudG9VSW50NjQoKSwgKnRoaXMpOwotICAgIGNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpDcmVhdGVHcmFwaGljc0NvbnRleHRHTChhdHRycywg
bV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpLCAwLCBJUEM6OlNlbmRPcHRpb246OkRpc3Bh
dGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBseSk7CisgICAgbV9ncHVQcm9jZXNz
Q29ubmVjdGlvbi0+YWRkQ2xpZW50KCp0aGlzKTsKKyAgICBtX2dwdVByb2Nlc3NDb25uZWN0aW9u
LT5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9ncmFwaGlj
c0NvbnRleHRHTElkZW50aWZpZXIudG9VSW50NjQoKSwgKnRoaXMpOworICAgIGNvbm5lY3Rpb24o
KS5zZW5kKE1lc3NhZ2VzOjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpDcmVhdGVHcmFwaGlj
c0NvbnRleHRHTChhdHRyaWJ1dGVzLCBtX2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllciwgcmVu
ZGVyaW5nQmFja2VuZCksIDAsIElQQzo6U2VuZE9wdGlvbjo6RGlzcGF0Y2hNZXNzYWdlRXZlbldo
ZW5XYWl0aW5nRm9yU3luY1JlcGx5KTsKIH0KIAogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94
eTo6flJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoKQpAQCAtMTMwLDE0ICsxMzEsMzQgQEAg
dm9pZCBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5OjpzaW11bGF0ZUNvbnRleHRDaGFuZ2Vk
KCkKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi12b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMUHJveHk6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikKK3Zv
aWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9D
YW52YXMoSW1hZ2VCdWZmZXImIGJ1ZmZlcikKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAg
IC8vIEZJWE1FOiB0aGUgYnVmZmVyIGlzICJyZWxhdGl2ZWx5IGVtcHR5IiBhbHdheXMsIGJ1dCBm
b3IgY29uc2lzdGVuY3ksIHdlIG5lZWQgdG8gZW5zdXJlCisgICAgLy8gbm8gcGVuZGluZyBvcGVy
YXRpb25zIGFyZSB0YXJnZXRlZCBmb3IgdGhlIGBidWZmZXJgLgorICAgIGJ1ZmZlci5mbHVzaERy
YXdpbmdDb250ZXh0KCk7CisKKyAgICAvLyBGSVhNRTogV2UgY2Fubm90IHN5bmNocm9uaXplIHNv
IHRoYXQgd2Ugd291bGQga25vdyBubyBwZW5kaW5nIG9wZXJhdGlvbnMgYXJlIHVzaW5nIHRoZSBg
YnVmZmVyYC4KKworICAgIC8vIEZJWE1FOiBDdXJyZW50bHkgUmVtb3RlSW1hZ2VCdWZmZXJQcm94
eTo6Z2V0SW1hZ2VEYXRhIGV0IGFsIGRvIG5vdCB3YWl0IGZvciB0aGUgZmx1c2hlcyBvZiB0aGUg
aW1hZ2VzCisgICAgLy8gaW5zaWRlIHRoZSBkaXNwbGF5IGxpc3RzLiBSYXRoZXIsIGl0IGFzc3Vt
ZXMgdGhhdCBwcm9jZXNzaW5nIGl0cyBzZXF1ZW5jZSAoZS5nLiB0aGUgZGlzcGxheSBsaXN0KSB3
aWxsIGVxdWFsIHRvIHJlYWQgZmx1c2ggYmVpbmcKKyAgICAvLyBmdWxmaWxsZWQuIEZvciBiZWxv
dywgd2UgY2Fubm90IGNyZWF0ZSBhIG5ldyBmbHVzaCBpZCBzaW5jZSB3ZSBnbyB0aHJvdWdoIGRp
ZmZlcmVudCBzZXF1ZW5jZSAoUmVtb3RlR3JhcGhpY3NDb250ZXh0R0wgc2VxdWVuY2UpCisKKyAg
ICAvLyBGSVhNRTogTWF5YmUgaW1wbGVtZW50IElQQzo6RmVuY2Ugb3Igc29tZXRoaW5nIHNpbWls
YXIuCisgICAgYXV0byBzZW5kUmVzdWx0ID0gc2VuZFN5bmMoTWVzc2FnZXM6OlJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMOjpQYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhidWZmZXIucmVuZGVy
aW5nUmVzb3VyY2VJZGVudGlmaWVyKCkpLCBNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3NDb250ZXh0
R0w6OlBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzOjpSZXBseSgpKTsKKyAgICBpZiAoIXNl
bmRSZXN1bHQpIHsKKyAgICAgICAgbWFya0NvbnRleHRMb3N0KCk7CisgICAgICAgIHJldHVybjsK
KyAgICB9CiB9CiAKLXZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6cGFpbnRDb21w
b3NpdGVkUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVyKikKK3ZvaWQgUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xQcm94eTo6cGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKEltYWdlQnVmZmVy
JiBidWZmZXIpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBidWZmZXIuZmx1c2hEcmF3
aW5nQ29udGV4dCgpOworICAgIGF1dG8gc2VuZFJlc3VsdCA9IHNlbmRTeW5jKE1lc3NhZ2VzOjpS
ZW1vdGVHcmFwaGljc0NvbnRleHRHTDo6UGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzKGJ1
ZmZlci5yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIoKSksIE1lc3NhZ2VzOjpSZW1vdGVHcmFw
aGljc0NvbnRleHRHTDo6UGFpbnRDb21wb3NpdGVkUmVzdWx0c1RvQ2FudmFzOjpSZXBseSgpKTsK
KyAgICBpZiAoIXNlbmRSZXN1bHQpIHsKKyAgICAgICAgbWFya0NvbnRleHRMb3N0KCk7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CiB9CiAKIHZvaWQgUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94
eTo6c3ludGhlc2l6ZUdMRXJyb3IoR0NHTGVudW0gZXJyb3IpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJv
eHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0xQcm94eS5oCmluZGV4IDgzMWI0YjBhYjEzN2U2YWFmODM1OTZlMGIwYTA3NmRm
MWUwOTE3NjEuLjVjZTU3Njc2YjA5MDVhNjU3NDA0MmE5ZjU0MzhhNDcxZmI3ZWY5OTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0xQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3Jh
cGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5oCkBAIC0zMyw2ICszMyw3IEBACiAj
aW5jbHVkZSAiTWVzc2FnZVNlbmRlci5oIgogI2luY2x1ZGUgIlJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMTWVzc2FnZXMuaCIKICNpbmNsdWRlICJSZW1vdGVSZXNvdXJjZUNhY2hlUHJveHkuaCIKKyNp
bmNsdWRlICJSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYkNvcmVB
cmd1bWVudENvZGVycy5oIgogI2luY2x1ZGUgPFdlYkNvcmUvTm90SW1wbGVtZW50ZWQuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNlLmg+CkBAIC01
MCw3ICs1MSw3IEBAIGNsYXNzIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkgZmluYWwKICAg
ICAsIHByaXZhdGUgR1BVUHJvY2Vzc0Nvbm5lY3Rpb246OkNsaWVudAogICAgICwgcHVibGljIFdl
YkNvcmU6OlJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNlIHsKIHB1YmxpYzoKLSAgICBz
dGF0aWMgUmVmUHRyPFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk+IGNyZWF0ZShjb25zdCBX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmKTsKKyAgICBzdGF0aWMgUmVmUHRy
PFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk+IGNyZWF0ZShjb25zdCBXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXMmLCBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcik7CiAg
ICAgflJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkoKSBmaW5hbDsKIAogICAgIC8vIElQQzo6
TWVzc2FnZVJlY2VpdmVyIG92ZXJyaWRlcy4KQEAgLTYzLDggKzY0LDggQEAgcHVibGljOgogICAg
IHZvaWQgZW5zdXJlRXh0ZW5zaW9uRW5hYmxlZChjb25zdCBTdHJpbmcmIGV4dGVuc2lvbikgZmlu
YWw7CiAgICAgdm9pZCBub3RpZnlNYXJrQ29udGV4dENoYW5nZWQoKSBmaW5hbDsKICAgICB2b2lk
IHNpbXVsYXRlQ29udGV4dENoYW5nZWQoKSBmaW5hbDsKLSAgICB2b2lkIHBhaW50UmVuZGVyaW5n
UmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OkltYWdlQnVmZmVyKikgZmluYWw7Ci0gICAgdm9pZCBw
YWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMoV2ViQ29yZTo6SW1hZ2VCdWZmZXIqKSBmaW5h
bDsKKyAgICB2b2lkIHBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKFdlYkNvcmU6OkltYWdl
QnVmZmVyJikgZmluYWw7CisgICAgdm9pZCBwYWludENvbXBvc2l0ZWRSZXN1bHRzVG9DYW52YXMo
V2ViQ29yZTo6SW1hZ2VCdWZmZXImKSBmaW5hbDsKICAgICB2b2lkIHN5bnRoZXNpemVHTEVycm9y
KEdDR0xlbnVtIGVycm9yKSBmaW5hbDsKICAgICBHQ0dMZW51bSBnZXRFcnJvcigpIGZpbmFsOwog
CkBAIC0zNTYsNyArMzU3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpc2Nvbm5lY3RHcHVQcm9j
ZXNzSWZOZWVkZWQoKTsKICAgICB2b2lkIGFiYW5kb25HcHVQcm9jZXNzKCk7CiAKLSAgICBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTFByb3h5KEdQVVByb2Nlc3NDb25uZWN0aW9uJiwgY29uc3QgV2Vi
Q29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzJik7CisgICAgUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xQcm94eShHUFVQcm9jZXNzQ29ubmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OkdyYXBo
aWNzQ29udGV4dEdMQXR0cmlidXRlcyYsIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKTsKICAg
ICBHUFVQcm9jZXNzQ29ubmVjdGlvbiogbV9ncHVQcm9jZXNzQ29ubmVjdGlvbjsKICAgICBib29s
IG1fZGlkSW5pdGlhbGl6ZSB7IGZhbHNlIH07CiAgICAgR0NHTGVudW0gbV9lcnJvcldoZW5Db250
ZXh0SXNMb3N0ID0gTk9fRVJST1I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94
eS5jcHAKaW5kZXggYTRjNDVlMDA4MGFiYzYzZmY2Y2JjNTM5MTYzNTNjOTdlMjE4ZDE3ZS4uM2Ix
NGY0MzBmNjE5NGQ2MDY1YTMyMmU1MmE4ODU3MThmOTcxNzM3NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJv
eHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3MvUmVtb3Rl
UmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcApAQCAtNjUsNyArNjUsNyBAQCB2b2lkIFJlbW90ZVJl
bmRlcmluZ0JhY2tlbmRQcm94eTo6Y29ubmVjdFRvR1BVUHJvY2VzcygpCiAgICAgYXV0byYgY29u
bmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZUdQVVByb2Nlc3NDb25uZWN0
aW9uKCk7CiAgICAgY29ubmVjdGlvbi5hZGRDbGllbnQoKnRoaXMpOwogICAgIGNvbm5lY3Rpb24u
bWVzc2FnZVJlY2VpdmVyTWFwKCkuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9yZW5kZXJpbmdC
YWNrZW5kSWRlbnRpZmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Ci0gICAgc2VuZChNZXNzYWdlczo6
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Q3JlYXRlUmVuZGVyaW5nQmFja2VuZChtX3JlbmRl
cmluZ0JhY2tlbmRJZGVudGlmaWVyLCBtX3Jlc3VtZURpc3BsYXlMaXN0U2VtYXBob3JlKSwgMCk7
CisgICAgc2VuZChNZXNzYWdlczo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Q3JlYXRlUmVu
ZGVyaW5nQmFja2VuZChtX3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyLCBtX3Jlc3VtZURpc3Bs
YXlMaXN0U2VtYXBob3JlKSwgMCwgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1lc3NhZ2VFdmVu
V2hlbldhaXRpbmdGb3JTeW5jUmVwbHkpOwogfQogCiB2b2lkIFJlbW90ZVJlbmRlcmluZ0JhY2tl
bmRQcm94eTo6cmVlc3RhYmxpc2hHUFVQcm9jZXNzQ29ubmVjdGlvbigpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tl
bmRQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kUHJveHkuaAppbmRleCA2N2JlNGFiNjdlNGM5OWZkYTkyOGZjZWQ3MDM5
Y2M0MDg1NjIyNTdiLi41YzkwYWY2MjRlYTQzMjcwNWQ4ZGU2YWU1ZmIyMTU0NjYwZTFhMTA0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJl
bmRlcmluZ0JhY2tlbmRQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
Z3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmgKQEAgLTk4LDYgKzk4LDcgQEAg
cHVibGljOgogICAgIERpZFJlY2VpdmVCYWNrZW5kQ3JlYXRpb25SZXN1bHQgd2FpdEZvckRpZENy
ZWF0ZUltYWdlQnVmZmVyQmFja2VuZCgpOwogICAgIGJvb2wgd2FpdEZvckRpZEZsdXNoKCk7CiAK
KyAgICBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciByZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmll
cigpIGNvbnN0IHsgcmV0dXJuIG1fcmVuZGVyaW5nQmFja2VuZElkZW50aWZpZXI7IH0KIHByaXZh
dGU6CiAgICAgUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5KCk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3Bw
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5jcHAKaW5kZXggZmE4NGVmYWQzYzMzMGZiMWQxYmIxNzk0OTBhM2ViZWQ3OWNmMWJiZS4uYTA3
MDE3NzQ5YjNlMjgyYzY3MjRmYTFkNTQxODgyMzEyOWRhNDVkZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5jcHAKQEAgLTkyOSw3ICs5MjksNyBAQCBSZWZQdHI8R3JhcGhpY3NDb250ZXh0R0w+IFdlYkNo
cm9tZUNsaWVudDo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0R0woY29uc3QgR3JhcGhpYwogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICBVTlVTRURfVkFSSUFCTEUoaG9zdFdpbmRvd0Rpc3BsYXlJ
RCk7CiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgcmV0dXJuIFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMUHJveHk6OmNyZWF0ZShhdHRyaWJ1dGVzKTsKKyAgICByZXR1cm4gUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xQcm94eTo6Y3JlYXRlKGF0dHJpYnV0ZXMsIG1fcGFnZS5lbnN1cmVSZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kUHJveHkoKS5yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcigpKTsKICNlbHNl
CiAgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxv
ZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA1ZWI5ZjE5YjhmNDJlYWYyYzEzNmZjOWJjZGE5N2Fm
OWVmYzI2ZDYzLi5kZWQzOWIxYmJmY2QwNWM4NjU1YTE2NWFhZDFiYzJkNDk1YjE0MDFmIDEwMDY0
NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTQgQEAKKzIwMjEtMDItMTIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4K
KworICAgICAgICBXZWJHTCBjb250ZXh0cyBkbyBub3Qgd29yayBhcyBzb3VyY2UgZm9yIENvbnRl
eHQyRCBkcmF3SW1hZ2UgY2FsbHMgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTgxMQorCisgICAgICAgIFJldmlld2VkIGJ5
IERhcmluIEFkbGVyLgorCisgICAgICAgIFVwZGF0ZSB0d28gc2lnbmF0dXJlcyBmb3IgbWFudWFs
bHkgaW1wbGVtZW50ZWQgbWVzc2FnZXMuCisKKyAgICAgICAgKiBTY3JpcHRzL2dlbmVyYXRlLWdw
dXAtd2ViZ2w6CisKIDIwMjEtMDItMTggIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgUGFnZSB1cGRhdGVzIGFuZCByQUYgY2FsbGJhY2tzIHNob3VsZCBydW4g
YXQgYSBmcmVxdWVuY3kgY2xvc2UgdG8gNjBIeiBvbiBoaWdoIHJlZnJlc2gtcmF0ZSBkaXNwbGF5
cwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmdsIGIvVG9vbHMv
U2NyaXB0cy9nZW5lcmF0ZS1ncHVwLXdlYmdsCmluZGV4IDU2ODVlOTA3NTM1M2ZkMWQyY2VhOTQ2
MjA2YjU3ZTQ4YjQyNjYzZmQuLmZlOGZhOWFlNTE3NDBiZGE2M2Y1MTUzZmRhOGYxNmQ3ZTYyYjVm
YmYgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvZ2VuZXJhdGUtZ3B1cC13ZWJnbAorKysgYi9U
b29scy9TY3JpcHRzL2dlbmVyYXRlLWdwdXAtd2ViZ2wKQEAgLTEwMSw2ICsxMDEsOSBAQCBtZXNz
YWdlcyAtPiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTCBOb3RSZWZDb3VudGVkIHt7CiAgICAgdm9p
ZCBOb3RpZnlNYXJrQ29udGV4dENoYW5nZWQoKQogICAgIHZvaWQgU3ludGhlc2l6ZUdMRXJyb3Io
dWludDMyX3QgZXJyb3IpCiAgICAgdm9pZCBHZXRFcnJvcigpIC0+ICh1aW50MzJfdCByZXR1cm5W
YWx1ZSkgU3luY2hyb25vdXMKKyAgICB2b2lkIFBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFz
KFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciBpbWFnZUJ1ZmZlcikgLT4gKCkg
U3luY2hyb25vdXMKKyAgICB2b2lkIFBhaW50Q29tcG9zaXRlZFJlc3VsdHNUb0NhbnZhcyhXZWJD
b3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIgaW1hZ2VCdWZmZXIpIC0+ICgpIFN5bmNo
cm9ub3VzCisKIHt9CiB9fQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMjdmZDhlM2E0YWMyN2NhOGQwNWQ3MDg3YTk3NTQ5
NTcwZjkzNGZlNC4uZjRiYmQxYmRmYTMwODcyNDc5NDBhOTgwY2Y1YjU0ZGY3ODE2YTAxZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAyLTEyICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5l
bkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgY29udGV4dHMgZG8gbm90IHdvcmsgYXMgc291
cmNlIGZvciBDb250ZXh0MkQgZHJhd0ltYWdlIGNhbGxzIGluIEdQVSBwcm9jZXNzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE4MTEKKworICAgICAg
ICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBSZW1vdmUgbm93IHBhc3Npbmcg
dGVzdHMgZnJvbSB0aGUgZXhwZWN0YXRpb25zLgorCisgICAgICAgICogZ3B1LXByb2Nlc3MvVGVz
dEV4cGVjdGF0aW9uczoKKwogMjAyMS0wMi0xNyAgVHlsZXIgV2lsY29jayAgPHR3aWxjby5vQHBy
b3Rvbm1haWwuY29tPgogCiAgICAgICAgIEltcG9ydCBDU1MgQGNvdW50ZXItc3R5bGUgV1BUcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZ3B1LXByb2Nlc3MvVGVzdEV4cGVjdGF0aW9ucyBiL0xh
eW91dFRlc3RzL2dwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggM2I5MGMyYWJhYzFh
ZmUzNWRmODY0YTRhYmI5M2FiYjAwMjkwZmFhNC4uZWU3N2UyYmQ0YTk5NjU3ZDllMDk4ZWI1MDll
MjAzYTkxZWIyNmYzNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZ3B1LXByb2Nlc3MvVGVzdEV4
cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25z
CkBAIC0xOSwxMSArMTksNyBAQCBmYXN0L2NhbnZhcy9jYW52YXMtbGFyZ2UtZGltZW5zaW9ucy5o
dG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy9jYW52YXMtcmVuZGVyLWxheWVyLmh0bWwgWyBG
YWlsdXJlIF0KIGZhc3QvY2FudmFzL2hpZHBpLXJlcGFpbnQtb24tcmV0aW5hLWxlYXZlcy1iaXRz
LWJlaGluZC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJnbC9jYW52
YXMtMmQtd2ViZ2wtdGV4dHVyZS5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2NhbnZhcy93ZWJnbC9j
YW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJnbC9jb250ZXh0LXVw
ZGF0ZS1vbi1kaXNwbGF5LWNvbmZpZ3VyYXRpb24uaHRtbCBbIFRpbWVvdXQgXQotZmFzdC9jYW52
YXMvd2ViZ2wvZ2wtcGl4ZWxzdG9yZWkuaHRtbCBbIEZhaWx1cmUgXQotZmFzdC9jYW52YXMvd2Vi
Z2wvbG9zZS1jb250ZXh0LW9uLXN0YXR1cy1mYWlsdXJlLmh0bWwgWyBGYWlsdXJlIF0KLWZhc3Qv
Y2FudmFzL3dlYmdsL3ByZW11bHRpcGx5YWxwaGEtdGVzdC5odG1sIFsgRmFpbHVyZSBdCiBmYXN0
L2NhbnZhcy93ZWJnbC90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYjU2
NS5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy93ZWJnbC90ZXgtaW1hZ2UtYW5kLXN1Yi1p
bWFnZS0yZC13aXRoLXZpZGVvLXJnYmE0NDQ0Lmh0bWwgWyBGYWlsdXJlIF0KIGZhc3QvY2FudmFz
L3dlYmdsL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8tcmdiYTU1NTEuaHRt
bCBbIEZhaWx1cmUgXQpAQCAtMjIwLDE5ICsyMTYsMTIgQEAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVy
ZmEKIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtZGVzdGluYXRpb25ub2RlLWludGVyZmFjZS9kZXN0aW5hdGlvbi5odG1sIFsgRmFpbHVy
ZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLW1lZGlhZWxlbWVudGF1ZGlvc291cmNlbm9kZS1pbnRlcmZhY2Uvbm8tY29ycy5odHRw
cy5odG1sIFsgRmFpbHVyZSBdCiAKLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2NhbnZhcy9jYW52
YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jYW52YXMv
ZHJhdy1zdGF0aWMtd2ViZ2wtdG8tbXVsdGlwbGUtY2FudmFzLXRlc3QuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY2FudmFzL2RyYXctd2ViZ2wtdG8tY2FudmFzLXRl
c3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY2FudmFzL3RvLWRh
dGEtdXJsLXRlc3QuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvY29u
dGV4dC9jb250ZXh0LWF0dHJpYnV0ZS1wcmVzZXJ2ZS1kcmF3aW5nLWJ1ZmZlci5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9jb250ZXh0L3ByZW11bHRpcGx5YWxwaGEt
dGVzdC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRlbnNpb25z
L29lcy10ZXh0dXJlLWZsb2F0LXdpdGgtY2FudmFzLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEu
MC4zL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUtZmxvYXQtd2l0aC12aWRlby5o
dG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9leHRlbnNpb25zL29lcy10
ZXh0dXJlLWhhbGYtZmxvYXQtd2l0aC1jYW52YXMuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4w
LjMvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1oYWxmLWZsb2F0LXdpdGgtdmlk
ZW8uaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvcmVuZGVyaW5nL21h
bnktZHJhdy1jYWxscy5odG1sIFsgVGltZW91dCBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS9z
dGF0ZS9nbC1vYmplY3QtZ2V0LWNhbGxzLmh0bWwgWyBUaW1lb3V0IF0KLXdlYmdsLzEuMC4zL2Nv
bmZvcm1hbmNlL3RleHR1cmVzL2dsLXBpeGVsc3RvcmVpLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmds
LzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdp
dGgtY2FudmFzLXJnYjU2NS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5j
ZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLWNhbnZhcy1yZ2JhNDQ0
NC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgt
aW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLWNhbnZhcy1yZ2JhNTU1MS5odG1sIFsgRmFpbHVy
ZSBdCkBAIC0yNDEsMjEgKzIzMCwxMSBAQCB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJl
cy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYjU2NS5odAogd2ViZ2wv
MS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0
aC12aWRlby1yZ2JhNDQ0NC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5j
ZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYmE1NTUx
Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1p
bWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtdmlkZW8uaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
MS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0
aC13ZWJnbC1jYW52YXMtcmdiNTY1Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZv
cm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2Fu
dmFzLXJnYmE0NDQ0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3Rl
eHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFzLXJnYmE1
NTUxLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3Rl
eC1pbWFnZS1hbmQtc3ViLWltYWdlLTJkLXdpdGgtd2ViZ2wtY2FudmFzLmh0bWwgWyBGYWlsdXJl
IF0KIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS13ZWJnbC5odG1s
IFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXhwYXJhbWV0
ZXItdGVzdC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJl
cy90ZXh0dXJlLWFjdGl2ZS1iaW5kLTIuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMS4wLjMvY29u
Zm9ybWFuY2UvdGV4dHVyZXMvdGV4dHVyZS1hY3RpdmUtYmluZC5odG1sIFsgRmFpbHVyZSBdCiB3
ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS91bmlmb3Jtcy91bmlmb3JtLXNhbXBsZXJzLXRlc3QuaHRt
bCBbIFRpbWVvdXQgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvY2FudmFzL2NhbnZhcy10ZXN0
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NhbnZhcy9kcmF3LXN0
YXRpYy13ZWJnbC10by1tdWx0aXBsZS1jYW52YXMtdGVzdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZS9jYW52YXMvZHJhdy13ZWJnbC10by1jYW52YXMtdGVzdC5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jYW52YXMvdG8tZGF0YS11cmwt
dGVzdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9jb250ZXh0L2Nv
bnRleHQtYXR0cmlidXRlLXByZXNlcnZlLWRyYXdpbmctYnVmZmVyLmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2NvbnRleHQvcHJlbXVsdGlwbHlhbHBoYS10ZXN0Lmh0
bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRl
eHR1cmUtZmxvYXQtd2l0aC1jYW52YXMuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLXZpZGVvLmh0bWwgWyBG
YWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUt
aGFsZi1mbG9hdC13aXRoLWNhbnZhcy5odG1sIFsgRmFpbHVyZSBdCkBAIC0yNzMsNyArMjUyLDYg
QEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1h
Z2VfYml0bWFwL3RleC0yZC1yZ2ItcmdiLXUKIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1
cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcmdiYS1yZ2JhLXVuc2ln
bmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVy
ZXMvaW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWdu
ZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV9pbWFnZV9iaXRtYXAvdGV4LTJkLXJnYmEtcmdi
YS11bnNpZ25lZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlL3RleHR1cmVzL21pc2MvZ2wtcGl4ZWxzdG9yZWkuaHRtbCBbIEZhaWx1cmUgXQog
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvbWlzYy90ZXgtaW1hZ2Utd2ViZ2wuaHRt
bCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvbWlzYy90ZXh0
dXJlLWFjdGl2ZS1iaW5kLTIuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UvdGV4dHVyZXMvbWlzYy90ZXh0dXJlLWFjdGl2ZS1iaW5kLmh0bWwgWyBGYWlsdXJlIF0KQEAg
LTI4MiwxMSArMjYwLDYgQEAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvdmlkZW8v
dGV4LTJkLXJnYi1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbAogd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UvdGV4dHVyZXMvdmlkZW8vdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9ieXRlLmh0
bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3ZpZGVvL3Rl
eC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCiB3
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiYS1yZ2JhLXVu
c2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2ItcmdiLXVuc2lnbmVkX2J5dGUu
aHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMvd2ViZ2xf
Y2FudmFzL3RleC0yZC1yZ2ItcmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0bWwgWyBGYWlsdXJl
IF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQt
cmdiYS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRf
c2hvcnRfNF80XzRfNC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90
ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmEtcmdiYS11bnNpZ25lZF9zaG9ydF81XzVf
NV8xLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3VuaWZvcm1zL3Vu
aWZvcm0tc2FtcGxlcnMtdGVzdC5odG1sIFsgVGltZW91dCBdCiB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvcmVhZGluZy9yZWFkLXBpeGVscy1wYWNrLXBhcmFtZXRlcnMuaHRtbCBbIEZhaWx1cmUg
XQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3N0YXRlL2dsLW9iamVjdC1nZXQtY2FsbHMuaHRt
bCBbIFRpbWVvdXQgXQpAQCAtMzUyLDcyICszMjUsNiBAQCB3ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvY2FudmFzL3RleC0zZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBb
CiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzL3RleC0zZC1yZ2JhOHVp
LXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXMvdGV4LTNkLXNyZ2I4LXJnYi11bnNpZ25lZF9i
eXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9j
YW52YXMvdGV4LTNkLXNyZ2I4X2FscGhhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFu
Z2xlL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0y
ZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXIx
MWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3Rh
bmdsZS90ZXgtMmQtcjE2Zi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yMTZmLXJl
ZC1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcjMyZi1yZWQtZmxvYXQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJf
cmVjdGFuZ2xlL3RleC0yZC1yOC1yZWQtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4
LTJkLXI4dWktcmVkX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJk
LXJnMTZmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmcxNmYtcmctaGFsZl9mbG9h
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnMzJmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90
ZXgtMmQtcmc4LXJnLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZzh1aS1y
Z19pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2IxNmYtcmdi
LWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiMTZmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3Vi
X3JlY3RhbmdsZS90ZXgtMmQtcmdiMzJmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJk
LXJnYjU2NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjU2NS1y
Z2ItdW5zaWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2I1X2ExLXJn
YmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjVfYTEtcmdiYS11bnNp
Z25lZF9zaG9ydF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiOC1yZ2ItdW5zaWdu
ZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTJkLXJnYjh1aS1yZ2JfaW50ZWdlci11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiOV9lNS1yZ2ItZmxvYXQuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVj
dGFuZ2xlL3RleC0yZC1yZ2I5X2U1LXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgt
MmQtcmdiYTE2Zi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtMmQtcmdiYTE2Zi1yZ2Jh
LWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2JhMzJmLXJnYmEtZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19z
dWJfcmVjdGFuZ2xlL3RleC0yZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFu
Z2xlL3RleC0yZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFu
Z2xlL3RleC0yZC1yZ2JhOC1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0y
ZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgt
MmQtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0yZC1zcmdiOF9h
bHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjExZl9nMTFm
X2IxMGYtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjExZl9nMTFmX2IxMGYtcmdi
LWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yMTFmX2cxMWZfYjEwZi1yZ2ItdW5z
aWduZWRfaW50XzEwZl8xMWZfMTFmX3Jldi5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXIxNmYtcmVk
LWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcjE2Zi1yZWQtaGFsZl9mbG9hdC5odG1sIFsg
RmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9y
ZWN0YW5nbGUvdGV4LTNkLXIzMmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcjgt
cmVkLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yOHVpLXJlZF9pbnRlZ2Vy
LXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZzE2Zi1yZy1mbG9hdC5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1
Yl9yZWN0YW5nbGUvdGV4LTNkLXJnMTZmLXJnLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3Rl
eC0zZC1yZzMyZi1yZy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnOC1yZy11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtcmc4dWktcmdfaW50ZWdlci11bnNpZ25lZF9i
eXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9j
YW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiMTZmLXJnYi1mbG9hdC5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5n
bGUvdGV4LTNkLXJnYjE2Zi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJn
YjMyZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1NjUtcmdiLXVuc2lnbmVk
X2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L2NhbnZhc19zdWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1NjUtcmdiLXVuc2lnbmVkX3Nob3J0XzVf
Nl81Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9j
YW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19z
dWJfcmVjdGFuZ2xlL3RleC0zZC1yZ2I1X2ExLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5o
dG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFz
X3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2NhbnZhc19zdWJfcmVjdGFu
Z2xlL3RleC0zZC1yZ2I4dWktcmdiX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVy
ZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5n
bGUvdGV4LTNkLXJnYjlfZTUtcmdiLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiOV9l
NS1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYmExNmYtcmdiYS1mbG9h
dC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvY2Fu
dmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXJnYmExNmYtcmdiYS1oYWxmX2Zsb2F0Lmh0bWwgWyBG
YWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3Jl
Y3RhbmdsZS90ZXgtM2QtcmdiYTMyZi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qt
cmdiYTQtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTQtcmdi
YS11bnNpZ25lZF9zaG9ydF80XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTgtcmdi
YS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2QtcmdiYTh1aS1yZ2JhX2ludGVn
ZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5j
ZTIvdGV4dHVyZXMvY2FudmFzX3N1Yl9yZWN0YW5nbGUvdGV4LTNkLXNyZ2I4LXJnYi11bnNpZ25l
ZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy9jYW52YXNfc3ViX3JlY3RhbmdsZS90ZXgtM2Qtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRf
Ynl0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMv
aW1hZ2VfYml0bWFwX2Zyb21faW1hZ2VfYml0bWFwL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2It
ZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdi
LWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2JpdG1hcC90ZXgtMmQtcjExZl9nMTFmX2Ix
MGYtcmdiLXVuc2lnbmVkX2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbCBbIEZhaWx1cmUgXQpAQCAt
NTUwLDY4ICs0NTcsNiBAQCB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlkZW8v
dGV4LTNkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRgogd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0zZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNp
Z25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy92aWRlby90ZXgtM2Qtc3JnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUg
XQogd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0zZC1zcmdiOF9h
bHBoYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXIxMWZfZzExZl9iMTBmLXJn
Yi1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1s
IFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2Fu
dmFzL3RleC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItdW5zaWduZWRfaW50XzEwZl8xMWZfMTFmX3Jl
di5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0yZC1yMTZmLXJlZC1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yMTZmLXJlZC1o
YWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXIzMmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXI4
LXJlZC11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXI4dWktcmVkX2ludGVnZXItdW5zaWdu
ZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZzE2Zi1yZy1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZzE2
Zi1yZy1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnMzJmLXJnLWZsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTJkLXJnOC1yZy11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnOHVpLXJnX2ludGVnZXIt
dW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIv
dGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2IxNmYtcmdiLWZsb2F0Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTJkLXJnYjE2Zi1yZ2ItaGFsZl9mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2IzMmYtcmdiLWZsb2F0
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJn
bF9jYW52YXMvdGV4LTJkLXJnYjU2NS1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBd
Ci13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1y
Z2I1NjUtcmdiLXVuc2lnbmVkX3Nob3J0XzVfNl81Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjVfYTEtcmdi
YS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjVfYTEtcmdiYS11bnNpZ25lZF9zaG9y
dF81XzVfNV8xLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYjgtcmdiLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZh
aWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90
ZXgtMmQtcmdiOHVpLXJnYl9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQot
d2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdi
YTE2Zi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmExNmYtcmdiYS1oYWxmX2Zsb2F0Lmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9j
YW52YXMvdGV4LTJkLXJnYmEzMmYtcmdiYS1mbG9hdC5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0yZC1yZ2JhNC1yZ2Jh
LXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2Uy
L3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtMmQtcmdiYTQtcmdiYS11bnNpZ25lZF9zaG9ydF80
XzRfNF80Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy93ZWJnbF9jYW52YXMvdGV4LTJkLXJnYmE4LXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFp
bHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3Rl
eC0yZC1yZ2JhOHVpLXJnYmFfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXNy
Z2I4LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZv
cm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTJkLXNyZ2I4X2FscGhhOC1yZ2JhLXVu
c2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjExZl9nMTFmX2IxMGYtcmdiLWZsb2F0Lmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52
YXMvdGV4LTNkLXIxMWZfZzExZl9iMTBmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXIx
MWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwgWyBGYWls
dXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4
LTNkLXIxNmYtcmVkLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXIxNmYtcmVkLWhhbGZfZmxvYXQuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtM2QtcjMyZi1yZWQtZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcjgtcmVkLXVuc2lnbmVk
X2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L3dlYmdsX2NhbnZhcy90ZXgtM2Qtcjh1aS1yZWRfaW50ZWdlci11bnNpZ25lZF9ieXRlLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52
YXMvdGV4LTNkLXJnMTZmLXJnLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2Nv
bmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnMTZmLXJnLWhhbGZfZmxv
YXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtM2QtcmczMmYtcmctZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtcmc4LXJnLXVu
c2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3Rl
eHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtcmc4dWktcmdfaW50ZWdlci11bnNpZ25lZF9ieXRl
Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJn
bF9jYW52YXMvdGV4LTNkLXJnYjE2Zi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wv
Mi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiMTZmLXJn
Yi1oYWxmX2Zsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90
ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjMyZi1yZ2ItZmxvYXQuaHRtbCBbIEZhaWx1
cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgt
M2QtcmdiNTY1LXJnYi11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYjU2NS1yZ2ItdW5z
aWduZWRfc2hvcnRfNV82XzUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFu
Y2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2QtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX2J5
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtM2QtcmdiNV9hMS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRt
bCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2Nh
bnZhcy90ZXgtM2QtcmdiOC1yZ2ItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJn
bC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2I4dWkt
cmdiX2ludGVnZXItdW5zaWduZWRfYnl0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9j
b25mb3JtYW5jZTIvdGV4dHVyZXMvd2ViZ2xfY2FudmFzL3RleC0zZC1yZ2JhMTZmLXJnYmEtZmxv
YXQuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dl
YmdsX2NhbnZhcy90ZXgtM2QtcmdiYTE2Zi1yZ2JhLWhhbGZfZmxvYXQuaHRtbCBbIEZhaWx1cmUg
XQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qt
cmdiYTMyZi1yZ2JhLWZsb2F0Lmh0bWwgWyBGYWlsdXJlIF0KLXdlYmdsLzIuMC4wL2NvbmZvcm1h
bmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmE0LXJnYmEtdW5zaWduZWRfYnl0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvd2Vi
Z2xfY2FudmFzL3RleC0zZC1yZ2JhNC1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbCBb
IEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZh
cy90ZXgtM2QtcmdiYTgtcmdiYS11bnNpZ25lZF9ieXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy93ZWJnbF9jYW52YXMvdGV4LTNkLXJnYmE4dWkt
cmdiYV9pbnRlZ2VyLXVuc2lnbmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAv
Y29uZm9ybWFuY2UyL3RleHR1cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtc3JnYjgtcmdiLXVuc2ln
bmVkX2J5dGUuaHRtbCBbIEZhaWx1cmUgXQotd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1
cmVzL3dlYmdsX2NhbnZhcy90ZXgtM2Qtc3JnYjhfYWxwaGE4LXJnYmEtdW5zaWduZWRfYnl0ZS5o
dG1sIFsgRmFpbHVyZSBdCiB3ZWJnbC9tYW55LWNvbnRleHRzLWFjY2Vzcy1hZnRlci1sb3NzLmh0
bWwgWyBGYWlsdXJlIF0KIHdlYmdsL21heC1hY3RpdmUtY29udGV4dHMtY29uc29sZS13YXJuaW5n
Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmdsL21heC1hY3RpdmUtY29udGV4dHMtZ2MuaHRtbCBbIEZh
aWx1cmUgXQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>