<?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>197900</bug_id>
          
          <creation_ts>2019-05-14 18:09:41 -0700</creation_ts>
          <short_desc>Please support WEBGL_compressed_texture_etc1 extension (and possibly WEBGL_compressed_texture_etc too)</short_desc>
          <delta_ts>2019-11-07 17:38:35 -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>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>202780</dependson>
          <blocked>202836</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kenneth Russell">kbr</reporter>
          <assigned_to name="Kenneth Russell">kbr</assigned_to>
          <cc>achristensen</cc>
    
    <cc>annulen</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>graouts</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>justin_fan</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>noam</cc>
    
    <cc>rakuco</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1536318</commentid>
    <comment_count>0</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-05-14 18:09:41 -0700</bug_when>
    <thetext>Per WebGL WG face-to-face meeting from May 14, 2019:

Could WebKit please expose the ETC compressed texture formats in the WebGL implementation?
https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc1/

This should be easily supportable, and should work on essentially all iOS hardware.

Separately, there was a question of whether WebKit could start using OpenGL ES 3.0 contexts inside its current WebGL implementation. If that&apos;s feasible, then it would be easy to also support the ETC2 compressed texture formats and extension:
https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc/

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536345</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-05-14 22:54:03 -0700</bug_when>
    <thetext>&lt;rdar://problem/50799006&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1568227</commentid>
    <comment_count>2</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-09-05 13:27:31 -0700</bug_when>
    <thetext>Working on implementing this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572939</commentid>
    <comment_count>3</comment_count>
      <attachid>379281</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-09-20 16:24:38 -0700</bug_when>
    <thetext>Created attachment 379281
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572941</commentid>
    <comment_count>4</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-09-20 16:27:22 -0700</bug_when>
    <thetext>Dean, Alex: could you please review?

The new enums violate the style guide but are in line with the format of the other OpenGL-related enums.

I had difficulty testing this. The only platform these will be supported on right now is the iOS Simulator with the current OpenGL ES backend and I couldn&apos;t fully debug it. Hoping we can land these changes and finish debugging them in a follow-on bug if they don&apos;t actually work on iOS hardware.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572974</commentid>
    <comment_count>5</comment_count>
      <attachid>379281</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-09-20 17:21:05 -0700</bug_when>
    <thetext>Comment on attachment 379281
Patch

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

It definitely needs to compile on Linux.
I&apos;ll need to compile for an iOS device and open https://www.khronos.org/registry/webgl/sdk/tests/conformance/extensions/webgl-compressed-texture-etc.html?webglVersion=1&amp;quiet=0&amp;quick=1 and https://www.khronos.org/registry/webgl/sdk/tests/conformance/extensions/webgl-compressed-texture-etc1.html?webglVersion=1&amp;quiet=0&amp;quick=1 to make sure it&apos;s supported.

&gt; Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:235
&gt; +        || name == &quot;GL_CHROMIUM_compressed_texture_etc&quot;) {

Does the name have to have CHROMIUM in it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572975</commentid>
    <comment_count>6</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-09-20 17:21:45 -0700</bug_when>
    <thetext>(In reply to Kenneth Russell from comment #0)
&gt; This should be easily supportable, and should work on essentially all iOS
&gt; hardware.
Could you elaborate?  Is there hardware that you know isn&apos;t supported?  Will it fall back if it&apos;s not supported?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573417</commentid>
    <comment_count>7</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-09-23 14:41:06 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #6)
&gt; (In reply to Kenneth Russell from comment #0)
&gt; &gt; This should be easily supportable, and should work on essentially all iOS
&gt; &gt; hardware.
&gt; Could you elaborate?  Is there hardware that you know isn&apos;t supported?  Will
&gt; it fall back if it&apos;s not supported?

I should have said &quot;all iOS hardware&quot;. Note I haven&apos;t yet gotten this to work in the iOS simulator, but there were some bugs in my earlier patch which are now fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573418</commentid>
    <comment_count>8</comment_count>
      <attachid>379281</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-09-23 14:41:34 -0700</bug_when>
    <thetext>Comment on attachment 379281
Patch

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

Linux build errors are hopefully fixed with the new patch.

&gt;&gt; Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:235
&gt;&gt; +        || name == &quot;GL_CHROMIUM_compressed_texture_etc&quot;) {
&gt; 
&gt; Does the name have to have CHROMIUM in it?

That&apos;s the name of the extension ANGLE advertises when the ETC2 compressed texture formats are natively supported. (WebGL, compared to ES 3.0, had to make them optional to avoid having to decompress them on some platforms.) It would be simplest to phrase the associated code in terms of that extension, rather than inventing a new extension name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573419</commentid>
    <comment_count>9</comment_count>
      <attachid>379395</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-09-23 14:42:08 -0700</bug_when>
    <thetext>Created attachment 379395
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577052</commentid>
    <comment_count>10</comment_count>
      <attachid>379395</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-10-04 15:34:51 -0700</bug_when>
    <thetext>Comment on attachment 379395
Patch

r-
We do not want to add any CHROMIUM prefixed things in WebKit.  If ANGLE vends it, it should be ANGLE prefixed.
This also must pass all existing tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1579259</commentid>
    <comment_count>11</comment_count>
      <attachid>380790</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-10-11 14:46:55 -0700</bug_when>
    <thetext>Created attachment 380790
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1579262</commentid>
    <comment_count>12</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-10-11 14:51:04 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #10)
&gt; Comment on attachment 379395 [details]
&gt; Patch
&gt; 
&gt; r-
&gt; We do not want to add any CHROMIUM prefixed things in WebKit.  If ANGLE
&gt; vends it, it should be ANGLE prefixed.
&gt; This also must pass all existing tests.

ANGLE has been updated to vend GL_ANGLE_compressed_texture_etc instead and this patch has been updated.

The breakage of WebGL 2.0 tests in the last patch was caused by some testing code accidentally left in; should be fixed now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1587621</commentid>
    <comment_count>13</comment_count>
      <attachid>382872</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-11-05 17:52:21 -0800</bug_when>
    <thetext>Created attachment 382872
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1587623</commentid>
    <comment_count>14</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-11-05 17:54:56 -0800</bug_when>
    <thetext>This revised patch has finally been successfully tested in the iOS simulator. The changes to GraphicsContext3DCocoa.mm were made in support of more easily setting m_attribs.isWebGL2 to true, to force-allocate an OpenGL ES 3.0 context.

Hoping this passes the EWS bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1587829</commentid>
    <comment_count>15</comment_count>
      <attachid>382872</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-11-06 10:23:01 -0800</bug_when>
    <thetext>Comment on attachment 382872
Patch

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

Thanks for turning on ASTC as well. We hadn&apos;t done that yet because we were worried about moving to a GLES 3 backend.

&gt; Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp:64
&gt; +    bool res = context.graphicsContext3D()-&gt;getExtensions().supports(&quot;GL_ANGLE_compressed_texture_etc&quot;);
&gt; +    os_log(OS_LOG_DEFAULT, &quot;WebGLCompressedTextureETC::supported returning %d&quot;, (int) res);
&gt; +    return res;

I think you accidentally left this logging in.

&gt; Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp:55
&gt; +    bool res = context.graphicsContext3D()-&gt;getExtensions().supports(&quot;GL_OES_compressed_ETC1_RGB8_texture&quot;);
&gt; +    os_log(OS_LOG_DEFAULT, &quot;WebGLCompressedTextureETC1::supported returning %d&quot;, (int) res);
&gt; +    return res;

Same here.

&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5575
&gt; +    case Extensions3D::ETC1_RGB8_OES:
&gt;          {

Nit: I believe our style guide says the { here should go on the line above - although it might not be consistently applied in this file.

&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5653
&gt; +        {

Ditto.

&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5656
&gt; +            bytesRequired = (width + kEACAndETC2BlockSize - 1) / kEACAndETC2BlockSize;
&gt; +            bytesRequired *= (height + kEACAndETC2BlockSize - 1) / kEACAndETC2BlockSize;
&gt; +            bytesRequired *= 8;

Could this ever overflow?

&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5663
&gt; +        {

Ditto.

&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5666
&gt; +            bytesRequired = (width + kEACAndETC2BlockSize - 1) / kEACAndETC2BlockSize;
&gt; +            bytesRequired *= (height + kEACAndETC2BlockSize - 1) / kEACAndETC2BlockSize;
&gt; +            bytesRequired *= 16;

Overflow?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1587954</commentid>
    <comment_count>16</comment_count>
      <attachid>382972</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-11-06 15:48:49 -0800</bug_when>
    <thetext>Created attachment 382972
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1587959</commentid>
    <comment_count>17</comment_count>
      <attachid>382872</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2019-11-06 15:55:41 -0800</bug_when>
    <thetext>Comment on attachment 382872
Patch

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

&gt;&gt; Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp:64
&gt;&gt; +    return res;
&gt; 
&gt; I think you accidentally left this logging in.

Sorry about that. Fixed.

&gt;&gt; Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp:55
&gt;&gt; +    return res;
&gt; 
&gt; Same here.

Sorry again. Removed.

&gt;&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5575
&gt;&gt;          {
&gt; 
&gt; Nit: I believe our style guide says the { here should go on the line above - although it might not be consistently applied in this file.

Thanks, fixed.

&gt;&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5653
&gt;&gt; +        {
&gt; 
&gt; Ditto.

Fixed.

&gt;&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5656
&gt;&gt; +            bytesRequired *= 8;
&gt; 
&gt; Could this ever overflow?

Not sure - Chromium&apos;s similar code doesn&apos;t use checked math - but have changed this to use checked math for safety.

&gt;&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5663
&gt;&gt; +        {
&gt; 
&gt; Ditto.

Fixed.

&gt;&gt; Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:5666
&gt;&gt; +            bytesRequired *= 16;
&gt; 
&gt; Overflow?

Used CheckedMath here too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588524</commentid>
    <comment_count>18</comment_count>
      <attachid>382972</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-07 17:38:33 -0800</bug_when>
    <thetext>Comment on attachment 382972
Patch

Clearing flags on attachment: 382972

Committed r252226: &lt;https://trac.webkit.org/changeset/252226&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588525</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-07 17:38:35 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379281</attachid>
            <date>2019-09-20 16:24:38 -0700</date>
            <delta_ts>2019-09-23 14:42:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197900-20190920162438.patch</filename>
            <type>text/plain</type>
            <size>39310</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwMTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWMwMDY0OTE4Mjk2N2Q2
M2I2YjkxOWUxNDMzMzAyOTUzNGI4ZTRjZS4uMDFlMTJmNmI1ZmQyNjExMDQ4ODAzZjhiNWVkODk1
ZTJhMGU5ZjE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE5LTA5LTIwICBLZW5u
ZXRoIFJ1c3NlbGwgIDxrYnJAZ29vZ2xlLmNvbT4KKworICAgICAgICBQbGVhc2Ugc3VwcG9ydCBX
RUJHTF9jb21wcmVzc2VkX3RleHR1cmVfZXRjMSBleHRlbnNpb24gKGFuZCBwb3NzaWJseSBXRUJH
TF9jb21wcmVzc2VkX3RleHR1cmVfZXRjIHRvbykKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NzkwMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIENvdmVyZWQgYnkgV2ViR0wgY29uZm9ybWFuY2UgdGVzdCBz
dWl0ZS4gTm90IHlldCBlbmFibGVkIG9uIGFueSBjdXJyZW50CisJV2ViS2l0IHBvcnRzLCBob3dl
dmVyLgorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdDoKKyAgICAg
ICAgKiBEZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdDoKKyAgICAgICAgKiBEZXJpdmVk
U291cmNlcy5tYWtlOgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUNv
bnZlcnRXZWJHTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjb252ZXJ0VG9KU1ZhbHVlKToKKyAg
ICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOjpXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1
cmVFVEM6OmdldE5hbWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQzo6c3VwcG9ydGVkKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDLmg6IEFkZGVkLgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6V2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxKToKKyAg
ICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOjpnZXROYW1lIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOjpzdXBwb3J0
ZWQpOgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmg6
IEFkZGVkLgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMx
LmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xFeHRlbnNpb24uaDoKKyAg
ICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnZhbGlkYXRlVmVydGV4QXR0
cmlidXRlcyk6CisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFz
ZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dDNEQ29jb2EubW06Cisg
ICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RXh0ZW5zaW9uczNET3BlbkdMOjpzdXBwb3J0c0V4dGVuc2lv
bik6CisKIDIwMTktMDktMjAgIEtlaXRoIFJvbGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFJlbW92ZSBjaGVjayBvZiBzZXRTb3VyY2VBcHBQaWQgc2VsZWN0b3IgdGhhdCdzIG5v
IGxvbmdlciBuZWVkZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54
Y2ZpbGVsaXN0CmluZGV4IDJmOThmOWUzMTVlYjZmODNlMDMzNGNhN2Y3ODQ4ZTNkZWE0ZDEyMDku
LmYyZDljYjYyODY2Y2NlYTEzNGM5MDkyZDllYWE1NmZjMWE3ZGJkNTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApAQCAtODExLDYgKzgxMSw4
IEBAICQoUFJPSkVDVF9ESVIpL2h0bWwvY2FudmFzL1dlYkdMQWN0aXZlSW5mby5pZGwKICQoUFJP
SkVDVF9ESVIpL2h0bWwvY2FudmFzL1dlYkdMQnVmZmVyLmlkbAogJChQUk9KRUNUX0RJUikvaHRt
bC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuaWRsCiAkKFBST0pFQ1RfRElSKS9o
dG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmlkbAorJChQUk9KRUNUX0RJUikv
aHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5pZGwKKyQoUFJPSkVDVF9ESVIp
L2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbAogJChQUk9KRUNUX0RJ
UikvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmlkbAogJChQUk9KRUNU
X0RJUikvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaWRsCiAkKFBST0pF
Q1RfRElSKS9odG1sL2NhbnZhcy9XZWJHTENvbnRleHRBdHRyaWJ1dGVzLmlkbApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCA5M2M1Yzg2
NzU4NTk0YWEwYTA3ZGI2MmIwYzhlMDRkMzQ0Yjg3ODFhLi4yMjk1M2NlNjQ2OGJkZWI2MmJhNzBk
NWNlOTRlMGNhMGYyNjFjMWI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1vdXRwdXQueGNmaWxlbGlzdApAQCAtMTg5Nyw2ICsxODk3LDEwIEBAICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFT
VEMuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVk
U291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5jcHAKICQoQlVJTFRf
UFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUFUQy5oCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaAorJChCVUlM
VF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDMS5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaAogJChCVUlMVF9QUk9EVUNUU19ESVIp
L0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3Bw
CiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVQVlJUQy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmNwcApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UKaW5kZXggMjg0MGVmZDZmYWU2OTQwNzljMWMwMTRjMzNiYTAxNTAwZjMy
OTg3Yy4uMzVhNDYxOWQ4YjdkYjM5ZTg0MmYyMDY2ZWMxYjMyMzg3ZWM4N2VlOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC04MTIsNiArODEyLDggQEAgSlNfQklORElOR19JRExT
ID0gXAogICAgICQoV2ViQ29yZSkvaHRtbC9jYW52YXMvV2ViR0xCdWZmZXIuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmlkbCBc
CisgICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlk
bCBcCisgICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
MS5pZGwgXAogICAgICQoV2ViQ29yZSkvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZVBWUlRDLmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRU
ZXh0dXJlUzNUQy5pZGwgXAogICAgICQoV2ViQ29yZSkvaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0
QXR0cmlidXRlcy5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQg
Yi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBmZDRkZDMxMzdlYjRjNWUxMWYyMGIz
ZTlhNWEzYzI1NzNlMGUyNWY0Li5hNjdmNDU0NGFiMWRmMmQ1MTlmODAyYzE2OWVlOTUzM2M4MDAz
M2IwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTI2Niw2ICsxMjY2LDggQEAgaHRtbC9jYW52YXMvV2Vi
R0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKIGh0bWwvY2FudmFzL1dlYkdMQnVmZmVyLmNwcAogaHRt
bC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuY3BwCiBodG1sL2NhbnZhcy9XZWJH
TENvbXByZXNzZWRUZXh0dXJlQVRDLmNwcAoraHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQy5jcHAKK2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcAog
aHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmNwcAogaHRtbC9jYW52YXMv
V2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuY3BwCiBodG1sL2NhbnZhcy9XZWJHTENvbnRleHRF
dmVudC5jcHAKQEAgLTM1MTIsNiArMzUxNCw4IEBAIEpTV2ViR0xBY3RpdmVJbmZvLmNwcAogSlNX
ZWJHTEJ1ZmZlci5jcHAKIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuY3BwCiBKU1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVBVEMuY3BwCitKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3Bw
CitKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcAogSlNXZWJHTENvbXByZXNzZWRUZXh0
dXJlUFZSVEMuY3BwCiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmNwcAogSlNXZWJHTENv
bnRleHRBdHRyaWJ1dGVzLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDdlNGQzMDdhNmNmYmZkNGFjZjYxZWRkMzc1YmZmZTE0
MzA3MGU3MzAuLmE4MjA3M2ViNDI4ODNiMzEzNGE2NjQzYTFhZTY0YjJiOWYxNzI2MDEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTE5NzMsOCArMTk3MywxMSBAQAogCQk2QzRDOTZERjFBRDQ0ODM1MDAzNjU2NzIgLyogSlNSZWFk
YWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2QzRDOTZEQjFBRDQ0ODM1MDAzNjU2NzIgLyogSlNSZWFkYWJsZVN0cmVh
bUJZT0JSZXF1ZXN0LmggKi87IH07CiAJCTZDNEM5NkRGMUFENDQ4MzUwMDM2NUE1MCAvKiBKU1Jl
YWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZDNEM5NkRCMUFENDQ4MzUwMDM2NUE1MCAvKiBKU1JlYWRh
YmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk2QzYzODg5NUE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNkM2Mzg4OTNBOTZDQ0VFNTBDOEM5NDZDIC8qIENhY2hlZFJlc291
cmNlUmVxdWVzdEluaXRpYXRvcnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk2RTBCOTA2OTIzMjFBNjhEMDA2MjIzQjIgLyogV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQzEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDZFMEI5MDY1MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDMS5oICovOyB9OwogCQk2RTBFNTY5QzE4M0JGRkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVk
UmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUw
RTU2OUExODNCRkZFNjAwRTBFOEQ1IC8qIEZsb2F0Um91bmRlZFJlY3QuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk2RTIxQzZDMDExMjYzMzg1MDBB
N0JFMDIgLyogR3JhcGhpY3NDb250ZXh0M0QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNkUyMUM2QkYxMTI2MzM4NTAwQTdCRTAyIC8qIEdyYXBoaWNz
Q29udGV4dDNELmNwcCAqLzsgfTsKKwkJNkUyNDJCMkIyMzM1OTQwNTAwMkNBREQ0IC8qIEpTV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDZFMjQyQjJBMjMzNTkzRDgwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxLmggKi87IH07CisJCTZFMjQyQjJDMjMzNTk0MDkwMDJDQURENCAvKiBK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDZFMjQyQjI4MjMzNTkzRDcwMDJDQURENCAvKiBKU1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMuaCAqLzsgfTsKIAkJNkUzRkFEMzkxNDczM0Y0MDAwRTQyMzA2IC8q
IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFM0ZBRDM3MTQ3MzNGNDAwMEU0MjMwNiAvKiBKU1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVTM1RDLmggKi87IH07CiAJCTZFM0ZBRDM5MTQ3MzNGNDAwMEU0MjMw
NyAvKiBKU1dlYkdMRGVwdGhUZXh0dXJlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA2RTNGQUQzNzE0NzMzRjQwMDBFNDIzMDcgLyogSlNXZWJHTERlcHRo
VGV4dHVyZS5oICovOyB9OwogCQk2RTNGQUQzOTE0NzMzRjQwMTFFNDIzMDcgLyogSlNXZWJHTERl
YnVnUmVuZGVyZXJJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA2RTNGQUQzNzE0NzMzRjQwMTFFNDIzMDcgLyogSlNXZWJHTERlYnVnUmVuZGVyZXJJ
bmZvLmggKi87IH07CkBAIC0xOTkyLDYgKzE5OTUsNyBAQAogCQk2RTcyRjU1MDIyOURDRDE3MDBC
M0UxNTEgLyogRXh0ZW5zaW9uczNEQU5HTEUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDZFMjdGMjQ0MjI5QzlGOEQwMEYxRjYzMiAvKiBFeHRlbnNpb25z
M0RBTkdMRS5oICovOyB9OwogCQk2RTcyRjU1MTIyOURDRDFBMDBCM0UxNTEgLyogVGVtcG9yYXJ5
QU5HTEVTZXR0aW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA2RTI5MDg2MzIyOURCOTcwMDAwOTg2RTIgLyogVGVtcG9yYXJ5QU5HTEVTZXR0aW5nLmgg
Ki87IH07CiAJCTZFODRFOUUxMTc2NjhCRjEwMDgxNUI2OCAvKiBSYXN0ZXJTaGFwZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkU4NEU5REYxNzY2OEJB
RDAwODE1QjY4IC8qIFJhc3RlclNoYXBlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkU4QUNERUQyMzM0NUNCQzAwMjRBQUY1IC8qIFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDZFOEFDREVCMjMzNDVDQUYwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDLmggKi87IH07CiAJCTZFQkYwRTQ5MTJBODkyNjEwMERCMTcwOSAvKiBPRVNUZXh0dXJl
RmxvYXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZF
QkYwRTQ2MTJBODkyNjEwMERCMTcwOSAvKiBPRVNUZXh0dXJlRmxvYXQuaCAqLzsgfTsKIAkJNkVC
RjBFNTUxMkE4OTI5ODAwREIxNzA5IC8qIFdlYkdMRXh0ZW5zaW9uLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RUJGMEU1MzEyQTg5Mjk4MDBEQjE3MDkg
LyogV2ViR0xFeHRlbnNpb24uaCAqLzsgfTsKIAkJNkVCRjBFNzcxMkE5ODY4ODAwREIxNzA5IC8q
IEpTT0VTVGV4dHVyZUZsb2F0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA2RUJGMEU3NTEyQTk4Njg4MDBEQjE3MDkgLyogSlNPRVNUZXh0dXJlRmxvYXQu
aCAqLzsgfTsKQEAgLTkwOTksMTAgKzkxMDMsMTcgQEAKIAkJNkM0Qzk2REIxQUQ0NDgzNTAwMzY1
QTUwIC8qIEpTUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkM2Mzg4OTNBOTZDQ0VFNTBDOEM5NDZDIC8q
IENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkM2Mzg4OTRBOTZDQ0VFNTBDOEM5NDZDIC8qIENhY2hlZFJl
c291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk2RTBCOTA2NTIzMjFBNjhDMDA2MjIzQjIgLyogV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQzEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NkUwQjkwNjcyMzIxQTY4QzAwNjIyM0IyIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMEI5MDY4MjMyMUE2OEQwMDYyMjNCMiAv
KiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTZFMEU1Njk5MTgzQkZGRTYwMEUwRThENSAvKiBGbG9hdFJvdW5k
ZWRSZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZsb2F0Um91
bmRlZFJlY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTBFNTY5QTE4M0JG
RkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVkUmVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBGbG9hdFJvdW5kZWRSZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTZFMjFDNkJGMTEyNjMzODUwMEE3QkUwMiAvKiBHcmFwaGljc0NvbnRleHQzRC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFwaGljc0NvbnRleHQzRC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFMjFDNkMxMTEyNjMzOTkwMEE3QkUwMiAv
KiBHcmFwaGljc0NvbnRleHQzRENHLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEdyYXBoaWNzQ29udGV4dDNEQ0cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk2RTI0MkIyNjIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5j
cHA7IHBhdGggPSAuLi8uLi8uLi8uLi8uLi8uLi9XZWJLaXRCdWlsZC9EZWJ1Zy9EZXJpdmVkU291
cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTZFMjQyQjI4MjMzNTkzRDcwMDJDQURENCAvKiBKU1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSlNXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDLmg7IHBhdGggPSAuLi8uLi8uLi8uLi8uLi8uLi9XZWJLaXRCdWlsZC9EZWJ1Zy9EZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk2RTI0MkIyOTIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKU1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMxLmNwcDsgcGF0aCA9IC4uLy4uLy4uLy4uLy4uLy4uL1dlYktpdEJ1
aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDMS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMjQyQjJBMjMzNTkzRDgw
MDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaDsgcGF0aCA9IC4uLy4uLy4uLy4uLy4uLy4u
L1dlYktpdEJ1aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTI3RjI0MjIy
OThDRTRCMDBGMUY2MzIgLyogR3JhcGhpY3NDb250ZXh0M0RBTkdMRS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFwaGljc0NvbnRleHQzREFOR0xFLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUyN0YyNDMyMjlDOUY4NDAwRjFGNjMyIC8qIEV4
dGVuc2lvbnMzREFOR0xFLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEV4dGVuc2lvbnMzREFOR0xFLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUy
N0YyNDQyMjlDOUY4RDAwRjFGNjMyIC8qIEV4dGVuc2lvbnMzREFOR0xFLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV4dGVuc2lvbnMzREFOR0xFLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC05MTMyLDYgKzkxNDMsOSBAQAogCQk2RTY3RDJBODEyODBFOEJEMDA4
NzU4RjcgLyogRXh0ZW5zaW9uczNELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEV4dGVuc2lvbnMzRC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTg0RTlERTE3
NjY4QkFEMDA4MTVCNjggLyogUmFzdGVyU2hhcGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmFzdGVyU2hhcGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk2RTg0RTlERjE3NjY4QkFEMDA4MTVCNjggLyogUmFzdGVyU2hhcGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmFzdGVyU2hhcGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNkU4QUNERTkyMzM0NUNBRjAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVFVEMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
Qy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFOEFDREVCMjMzNDVDQUYwMDI0
QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkU4
QUNERUMyMzM0NUNCMDAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk2RUJGMEU0NTEyQTg5MjYxMDBEQjE3MDkgLyogT0VTVGV4dHVyZUZsb2F0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9FU1RleHR1cmVGbG9hdC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFQkYwRTQ2MTJBODkyNjEwMERCMTcwOSAv
KiBPRVNUZXh0dXJlRmxvYXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT0VT
VGV4dHVyZUZsb2F0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFQkYwRTQ3MTJB
ODkyNjEwMERCMTcwOSAvKiBPRVNUZXh0dXJlRmxvYXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IE9FU1RleHR1cmVGbG9hdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0x
ODI0NCw2ICsxODI1OCwxMiBAQAogCQkJCTdFNjZFMjMxMTZENkVCNkMwMEY3RTdGRiAvKiBXZWJH
TENvbXByZXNzZWRUZXh0dXJlQVRDLmNwcCAqLywKIAkJCQk3RTY2RTIzMjE2RDZFQjZDMDBGN0U3
RkYgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oICovLAogCQkJCTdFQTMwRjYyMTZERkQ2
MjcwMDI1N0QwQiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmlkbCAqLywKKwkJCQk2RThB
Q0RFOTIzMzQ1Q0FGMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAgKi8s
CisJCQkJNkU4QUNERUIyMzM0NUNBRjAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMuaCAqLywKKwkJCQk2RThBQ0RFQzIzMzQ1Q0IwMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQy5pZGwgKi8sCisJCQkJNkUwQjkwNjgyMzIxQTY4RDAwNjIyM0IyIC8qIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcCAqLywKKwkJCQk2RTBCOTA2NTIzMjFBNjhDMDA2MjIz
QjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCAqLywKKwkJCQk2RTBCOTA2NzIzMjFB
NjhDMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaWRsICovLAogCQkJCTdF
NjZFMjMxMTdFNkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3Bw
ICovLAogCQkJCTdFNjZFMjMyMTdFNkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0
dXJlUFZSVEMuaCAqLywKIAkJCQk3RUEzMEY2MjE3RUZENjI3MDAyNTdEMEIgLyogV2ViR0xDb21w
cmVzc2VkVGV4dHVyZVBWUlRDLmlkbCAqLywKQEAgLTIzMDI3LDYgKzIzMDQ3LDEwIEBACiAJCQkJ
NDlDN0I5ODExMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xCdWZmZXIuaCAqLywKIAkJCQk3RUEz
MEY2NzE2REZGRTc1MDAyNTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmNwcCAq
LywKIAkJCQk3RUEzMEY2ODE2REZGRTc1MDAyNTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0
dXJlQVRDLmggKi8sCisJCQkJNkUyNDJCMjYyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQy5jcHAgKi8sCisJCQkJNkUyNDJCMjgyMzM1OTNENzAwMkNBREQ0IC8q
IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oICovLAorCQkJCTZFMjQyQjI5MjMzNTkzRDcw
MDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcCAqLywKKwkJCQk2RTI0
MkIyQTIzMzU5M0Q4MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oICov
LAogCQkJCTdFQTMwRjY3MTdFRkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1
cmVQVlJUQy5jcHAgKi8sCiAJCQkJN0VBMzBGNjgxN0VGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xD
b21wcmVzc2VkVGV4dHVyZVBWUlRDLmggKi8sCiAJCQkJNkUzRkFEMzYxNDczM0Y0MDAwRTQyMzA2
IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuY3BwICovLApAQCAtMzA1OTMsNiArMzA2
MTcsOCBAQAogCQkJCUE3RDIwRjYzMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5m
by5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDlDN0I5OTQxMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2Vi
R0xCdWZmZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTdFQTMwRjZBMTZERkZFNzUwMDI1N0QwQiAv
KiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCBpbiBIZWFkZXJzICovLAorCQkJCTZFMjQy
QjJDMjMzNTk0MDkwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTZFMjQyQjJCMjMzNTk0MDUwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxLmggaW4gSGVhZGVycyAqLywKIAkJCQk3RUEzMEY2QTE3RUZGRTc1MDAy
NTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaCBpbiBIZWFkZXJzICovLAog
CQkJCTZFM0ZBRDM5MTQ3MzNGNDAwMEU0MjMwNiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVT
M1RDLmggaW4gSGVhZGVycyAqLywKIAkJCQk2RUU4QTc3MzEwRjgwM0YzMDA1QTRBMjQgLyogSlNX
ZWJHTENvbnRleHRBdHRyaWJ1dGVzLmggaW4gSGVhZGVycyAqLywKQEAgLTMyMzAwLDYgKzMyMzI2
LDggQEAKIAkJCQk0OUM3QjlDOTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xCdWZmZXIuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUQwOEIwMEU0MjBBMjgyNTkwMDA0QkMwQSAvKiBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlQVNUQy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0U2NkUyMzQxNkQ2RUI2QzAwRjdF
N0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCBpbiBIZWFkZXJzICovLAorCQkJCTZF
OEFDREVEMjMzNDVDQkMwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmggaW4g
SGVhZGVycyAqLywKKwkJCQk2RTBCOTA2OTIzMjFBNjhEMDA2MjIzQjIgLyogV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQzEuaCBpbiBIZWFkZXJzICovLAogCQkJCTdFNjZFMjM0MTdFNkVCNkMwMEY3
RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTZFM0ZBRThGMTQ3MzNGREIwMEU0MjMwNiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNkU0RTkxQUYxMEY3RkIzMTAwQTI3NzlDIC8qIFdlYkdMQ29u
dGV4dEF0dHJpYnV0ZXMuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNET01Db252ZXJ0V2ViR0wuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01Db252ZXJ0V2ViR0wuY3BwCmluZGV4IDQwMjM5NGQ2YThmMzk0MDMyNTE4
YmJmZGY3YjU2MzRmMDcwNGI2Y2EuLmRhOTI5ZGNmYzVlZWIzMzIwOTE5NGE5ZTlmZWFhOTVkZjZh
MTU4NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVy
dFdlYkdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRX
ZWJHTC5jcHAKQEAgLTQ1LDYgKzQ1LDggQEAKICNpbmNsdWRlICJKU1dlYkdMQnVmZmVyLmgiCiAj
aW5jbHVkZSAiSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5oIgogI2luY2x1ZGUgIkpTV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oIgorI2luY2x1ZGUgIkpTV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQy5oIgorI2luY2x1ZGUgIkpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCIKICNp
bmNsdWRlICJKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oIgogI2luY2x1ZGUgIkpTV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCIKICNpbmNsdWRlICJKU1dlYkdMRGVidWdSZW5kZXJl
ckluZm8uaCIKQEAgLTE3Niw2ICsxNzgsMTAgQEAgSlNWYWx1ZSBjb252ZXJ0VG9KU1ZhbHVlKEV4
ZWNTdGF0ZSYgc3RhdGUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFdlYkcKICAg
ICAgICAgcmV0dXJuIHRvSlMoJnN0YXRlLCAmZ2xvYmFsT2JqZWN0LCBzdGF0aWNfY2FzdDxXZWJH
TERlYnVnU2hhZGVycyY+KGV4dGVuc2lvbikpOwogICAgIGNhc2UgV2ViR0xFeHRlbnNpb246Oldl
YkdMQ29tcHJlc3NlZFRleHR1cmVBVENOYW1lOgogICAgICAgICByZXR1cm4gdG9KUygmc3RhdGUs
ICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMmPihl
eHRlbnNpb24pKTsKKyAgICBjYXNlIFdlYkdMRXh0ZW5zaW9uOjpXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDTmFtZToKKyAgICAgICAgcmV0dXJuIHRvSlMoJnN0YXRlLCAmZ2xvYmFsT2JqZWN0LCBz
dGF0aWNfY2FzdDxXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDJj4oZXh0ZW5zaW9uKSk7CisgICAg
Y2FzZSBXZWJHTEV4dGVuc2lvbjo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzFOYW1lOgorICAg
ICAgICByZXR1cm4gdG9KUygmc3RhdGUsICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMxJj4oZXh0ZW5zaW9uKSk7CiAgICAgY2FzZSBXZWJHTEV4dGVu
c2lvbjo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDTmFtZToKICAgICAgICAgcmV0dXJuIHRv
SlMoJnN0YXRlLCAmZ2xvYmFsT2JqZWN0LCBzdGF0aWNfY2FzdDxXZWJHTENvbXByZXNzZWRUZXh0
dXJlUFZSVEMmPihleHRlbnNpb24pKTsKICAgICBjYXNlIFdlYkdMRXh0ZW5zaW9uOjpXZWJHTENv
bXByZXNzZWRUZXh0dXJlUzNUQ05hbWU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNhODdj
NGMzZTBkOTY2MTFlZjEwY2E0NjQxYTFlNjJkOWE0ZjRiOWMKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcApA
QCAtMCwwICsxLDY3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lm
IEVOQUJMRShXRUJHTCkKKyNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgiCisK
KyNpbmNsdWRlICJFeHRlbnNpb25zM0QuaCIKKyNpbmNsdWRlICJXZWJHTFJlbmRlcmluZ0NvbnRl
eHRCYXNlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQyhXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNl
JiBjb250ZXh0KQorICAgIDogV2ViR0xFeHRlbnNpb24oY29udGV4dCkKK3sKKyAgICBjb250ZXh0
LmdyYXBoaWNzQ29udGV4dDNEKCktPmdldEV4dGVuc2lvbnMoKS5lbnN1cmVFbmFibGVkKCJHTF9D
SFJPTUlVTV9jb21wcmVzc2VkX3RleHR1cmVfZXRjIik7CisKKyAgICBjb250ZXh0LmFkZENvbXBy
ZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SMTFfRUFDKTsKKyAg
ICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJF
U1NFRF9TSUdORURfUjExX0VBQyk7CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZv
cm1hdChFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfUkcxMV9FQUMpOworICAgIGNvbnRleHQuYWRk
Q29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9S
RzExX0VBQyk7CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNp
b25zM0Q6OkNPTVBSRVNTRURfUkdCOF9FVEMyKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRU
ZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9FVEMyKTsKKyAgICBj
b250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NF
RF9SR0I4X1BVTkNIVEhST1VHSF9BTFBIQTFfRVRDMik7CisgICAgY29udGV4dC5hZGRDb21wcmVz
c2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfUFVOQ0hUSFJP
VUdIX0FMUEhBMV9FVEMyKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0
KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JBOF9FVEMyX0VBQyk7CisgICAgY29udGV4dC5h
ZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhf
QUxQSEE4X0VUQzJfRUFDKTsKK30KKworV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6fldlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMoKSA9IGRlZmF1bHQ7CisKK1dlYkdMRXh0ZW5zaW9uOjpFeHRl
bnNpb25OYW1lIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OmdldE5hbWUoKSBjb25zdAorewor
ICAgIHJldHVybiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDTmFtZTsKK30KKworYm9vbCBXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDOjpzdXBwb3J0ZWQoV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFz
ZSYgY29udGV4dCkKK3sKKyAgICByZXR1cm4gY29udGV4dC5ncmFwaGljc0NvbnRleHQzRCgpLT5n
ZXRFeHRlbnNpb25zKCkuc3VwcG9ydHMoIkdMX0NIUk9NSVVNX2NvbXByZXNzZWRfdGV4dHVyZV9l
dGMiKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdF
QkdMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQy5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdhMzM4YWRhMjZlYjkyNGNjYWExMDI1Yjg3OGJh
M2Q5MjNkZjhhNDYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgKQEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJHTCkKKworI2luY2x1ZGUgIldlYkdM
RXh0ZW5zaW9uLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQyBmaW5hbCA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CitwdWJsaWM6Cisg
ICAgZXhwbGljaXQgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQyhXZWJHTFJlbmRlcmluZ0NvbnRl
eHRCYXNlJik7CisgICAgdmlydHVhbCB+V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQygpOworCisg
ICAgc3RhdGljIGJvb2wgc3VwcG9ydGVkKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAg
ICBFeHRlbnNpb25OYW1lIGdldE5hbWUoKSBjb25zdCBvdmVycmlkZTsKK307CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5NTNm
YWEzYjczODljYzY1ZDZlMDlkNDMzMzc5ZGJkMTE2YzU4NzMKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbApA
QCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKy8vIGh0dHBzOi8vd3d3Lmtocm9ub3Mub3Jn
L3JlZ2lzdHJ5L3dlYmdsL2V4dGVuc2lvbnMvV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0Yy8K
KworWworICAgIENvbmRpdGlvbmFsPVdFQkdMLAorICAgIERvTm90Q2hlY2tDb25zdGFudHMsCisg
ICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsV2ViR0xSZW5kZXJpbmdDb250ZXh0LAorICAgIE5v
SW50ZXJmYWNlT2JqZWN0LAorXSBpbnRlcmZhY2UgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQyB7
CisgICAgLyogQ29tcHJlc3NlZCBUZXh0dXJlIEZvcm1hdCAqLworICAgIGNvbnN0IHVuc2lnbmVk
IGxvbmcgQ09NUFJFU1NFRF9SMTFfRUFDICAgICAgICAgICAgICAgICAgICAgICAgPSAweDkyNzA7
CisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1NJR05FRF9SMTFfRUFDICAgICAg
ICAgICAgICAgICA9IDB4OTI3MTsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURf
UkcxMV9FQUMgICAgICAgICAgICAgICAgICAgICAgID0gMHg5MjcyOworICAgIGNvbnN0IHVuc2ln
bmVkIGxvbmcgQ09NUFJFU1NFRF9TSUdORURfUkcxMV9FQUMgICAgICAgICAgICAgICAgPSAweDky
NzM7CisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1JHQjhfRVRDMiAgICAgICAg
ICAgICAgICAgICAgICA9IDB4OTI3NDsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNT
RURfU1JHQjhfRVRDMiAgICAgICAgICAgICAgICAgICAgID0gMHg5Mjc1OworICAgIGNvbnN0IHVu
c2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9SR0I4X1BVTkNIVEhST1VHSF9BTFBIQTFfRVRDMiAgPSAw
eDkyNzY7CisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1NSR0I4X1BVTkNIVEhS
T1VHSF9BTFBIQTFfRVRDMiA9IDB4OTI3NzsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBS
RVNTRURfUkdCQThfRVRDMl9FQUMgICAgICAgICAgICAgICAgID0gMHg5Mjc4OworICAgIGNvbnN0
IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9TUkdCOF9BTFBIQThfRVRDMl9FQUMgICAgICAgICAg
PSAweDkyNzk7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkYzNiZWUwYTg3NmFj
ZjY5ODFiMDA0OGM2NzUwM2QzYzRjZmJjZTYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAKQEAgLTAsMCAr
MSw1OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
CisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgor
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUo
V0VCR0wpCisjaW5jbHVkZSAiV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCIKKworI2luY2x1
ZGUgIkV4dGVuc2lvbnMzRC5oIgorI2luY2x1ZGUgIldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2Uu
aCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6
V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEoV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZSYgY29u
dGV4dCkKKyAgICA6IFdlYkdMRXh0ZW5zaW9uKGNvbnRleHQpCit7CisgICAgY29udGV4dC5ncmFw
aGljc0NvbnRleHQzRCgpLT5nZXRFeHRlbnNpb25zKCkuZW5zdXJlRW5hYmxlZCgiR0xfT0VTX2Nv
bXByZXNzZWRfRVRDMV9SR0I4X3RleHR1cmUiKTsKKworICAgIGNvbnRleHQuYWRkQ29tcHJlc3Nl
ZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpFVEMxX1JHQjhfT0VTKTsKK30KKworV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzE6On5XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMSgpID0gZGVm
YXVsdDsKKworV2ViR0xFeHRlbnNpb246OkV4dGVuc2lvbk5hbWUgV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQzE6OmdldE5hbWUoKSBjb25zdAoreworICAgIHJldHVybiBXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDMU5hbWU7Cit9CisKK2Jvb2wgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OnN1
cHBvcnRlZChXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlJiBjb250ZXh0KQoreworICAgIHJldHVy
biBjb250ZXh0LmdyYXBoaWNzQ29udGV4dDNEKCktPmdldEV4dGVuc2lvbnMoKS5zdXBwb3J0cygi
R0xfT0VTX2NvbXByZXNzZWRfRVRDMV9SR0I4X3RleHR1cmUiKTsKK30KKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMGY3NmE0ODBjM2Q2YjViNjVhZDJhYWM5MzA4YmFhZjdiZjA2NzBmZgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1
cmVFVEMxLmgKQEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2lmIEVOQUJMRShXRUJHTCkKKworI2luY2x1ZGUgIldlYkdMRXh0ZW5zaW9uLmgiCisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEgZmluYWwg
OiBwdWJsaWMgV2ViR0xFeHRlbnNpb24geworcHVibGljOgorICAgIGV4cGxpY2l0IFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMxKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAgICB2aXJ0
dWFsIH5XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMSgpOworCisgICAgc3RhdGljIGJvb2wgc3Vw
cG9ydGVkKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAgICBFeHRlbnNpb25OYW1lIGdl
dE5hbWUoKSBjb25zdCBvdmVycmlkZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwor
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDMS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDMS5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjNjM2M2NWQ0Y2M3ZmY1YjVkOGEy
M2ZmZTg5NjJmMDE4MDYzMzE3YwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbApAQCAtMCwwICsxLDM2IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKy8vIGh0dHBzOi8vd3d3Lmtocm9ub3Mub3JnL3JlZ2lzdHJ5L3dlYmds
L2V4dGVuc2lvbnMvV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEvCisKK1sKKyAgICBDb25k
aXRpb25hbD1XRUJHTCwKKyAgICBEb05vdENoZWNrQ29uc3RhbnRzLAorICAgIEdlbmVyYXRlSXNS
ZWFjaGFibGU9SW1wbFdlYkdMUmVuZGVyaW5nQ29udGV4dCwKKyAgICBOb0ludGVyZmFjZU9iamVj
dCwKK10gaW50ZXJmYWNlIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxIHsKKyAgICAvKiBDb21w
cmVzc2VkIFRleHR1cmUgRm9ybWF0cyAqLworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJF
U1NFRF9SR0JfRVRDMV9XRUJHTCA9IDB4OEQ2NDsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL2NhbnZhcy9XZWJHTEV4dGVuc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvV2ViR0xFeHRlbnNpb24uaAppbmRleCAyYTFhMzRjYTdmNDZkNDFiZDhkN2IyNDJkZDU4
MWVmOGY4ZjYxNjExLi4wMmExZTgxZDVhYzE4MGI0ZDc0NmRhN2IzZjliZmZjNTQ0NjQ2NDgxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEV4dGVuc2lvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRXh0ZW5zaW9uLmgKQEAgLTU1LDYg
KzU1LDggQEAgcHVibGljOgogICAgICAgICBXZWJHTERyYXdCdWZmZXJzTmFtZSwKICAgICAgICAg
T0VTRWxlbWVudEluZGV4VWludE5hbWUsCiAgICAgICAgIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVB
VENOYW1lLAorICAgICAgICBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDTmFtZSwKKyAgICAgICAg
V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzFOYW1lLAogICAgICAgICBXZWJHTENvbXByZXNzZWRU
ZXh0dXJlUFZSVENOYW1lLAogICAgICAgICBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQ05hbWUs
CiAgICAgICAgIEFOR0xFSW5zdGFuY2VkQXJyYXlzTmFtZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKaW5kZXgg
MjI0ZTM0ZDgzMjdhZGI4NTViOTQ3MTNlZGYzYzYwYTg1ODc4NWY3Mi4uY2Q1NjM3ZjBhMDczZjc4
OTEwMWRiZDkyMmYwOGZhNjk4YmFkZDFiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAKQEAgLTIwNDIsNyAr
MjA0MiwxMCBAQCBib29sIFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnZhbGlkYXRlSW5kZXhB
cnJheVByZWNpc2UoR0MzRHNpemVpIGNvdW50LCBHQzNEZQogCiBib29sIFdlYkdMUmVuZGVyaW5n
Q29udGV4dEJhc2U6OnZhbGlkYXRlVmVydGV4QXR0cmlidXRlcyh1bnNpZ25lZCBlbGVtZW50Q291
bnQsIHVuc2lnbmVkIHByaW1pdGl2ZUNvdW50KQogewotI2lmICFVU0UoQU5HTEUpCisjaWYgVVNF
KEFOR0xFKQorICAgIFVOVVNFRF9QQVJBTShlbGVtZW50Q291bnQpOworICAgIFVOVVNFRF9QQVJB
TShwcmltaXRpdmVDb3VudCk7CisjZWxzZQogICAgIGlmICghbV9jdXJyZW50UHJvZ3JhbSkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgKaW5kZXggNzlmZDRlN2QzMjA2MDlhNDAx
NzhhOTQ1OWY5ODYxMzlkZWZkNWQ3OS4uMmViNzAwODJjZTI1Mzc5YzUwY2UxZDJhMjY3ZTAxNjIx
MWY3Y2NmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5k
ZXJpbmdDb250ZXh0QmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
UmVuZGVyaW5nQ29udGV4dEJhc2UuaApAQCAtMzc1LDYgKzM3NSw4IEBAIHByb3RlY3RlZDoKICAg
ICBmcmllbmQgY2xhc3MgV2ViR0xEZWJ1Z1NoYWRlcnM7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVBU1RDOwogICAgIGZyaWVuZCBjbGFzcyBXZWJHTENvbXByZXNzZWRU
ZXh0dXJlQVRDOworICAgIGZyaWVuZCBjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOwor
ICAgIGZyaWVuZCBjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTsKICAgICBmcmllbmQg
Y2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDOwogICAgIGZyaWVuZCBjbGFzcyBXZWJH
TENvbXByZXNzZWRUZXh0dXJlUzNUQzsKICAgICBmcmllbmQgY2xhc3MgV2ViR0xSZW5kZXJpbmdD
b250ZXh0RXJyb3JNZXNzYWdlQ2FsbGJhY2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9FeHRlbnNpb25zM0QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oCmluZGV4IDA2Y2E1ZTI5NmI0N2VhNjBkYjc0YzE0NDk5
ZDJlMTNlYWQ4ZDhmY2MuLjc4ZjJhMDM4NjE5OTQyMjZjOTM0Y2E2NTFhMGRiMWI5MGFkMzEyNzkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMz
RC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5o
CkBAIC0xNTgsNiArMTU4LDE4IEBAIHB1YmxpYzoKICAgICAgICAgLy8gR0xfT0VTX2NvbXByZXNz
ZWRfRVRDMV9SR0I4X3RleHR1cmUKICAgICAgICAgRVRDMV9SR0I4X09FUyA9IDB4OEQ2NCwKIAor
ICAgICAgICAvLyBXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfZXRjCisgICAgICAgIENPTVBSRVNT
RURfUjExX0VBQyA9IDB4OTI3MCwKKyAgICAgICAgQ09NUFJFU1NFRF9TSUdORURfUjExX0VBQyA9
IDB4OTI3MSwKKyAgICAgICAgQ09NUFJFU1NFRF9SRzExX0VBQyA9IDB4OTI3MiwKKyAgICAgICAg
Q09NUFJFU1NFRF9TSUdORURfUkcxMV9FQUMgPSAweDkyNzMsCisgICAgICAgIENPTVBSRVNTRURf
UkdCOF9FVEMyID0gMHg5Mjc0LAorICAgICAgICBDT01QUkVTU0VEX1NSR0I4X0VUQzIgPSAweDky
NzUsCisgICAgICAgIENPTVBSRVNTRURfUkdCOF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzIgPSAw
eDkyNzYsCisgICAgICAgIENPTVBSRVNTRURfU1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMy
ID0gMHg5Mjc3LAorICAgICAgICBDT01QUkVTU0VEX1JHQkE4X0VUQzJfRUFDID0gMHg5Mjc4LAor
ICAgICAgICBDT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9FVEMyX0VBQyA9IDB4OTI3OSwKKwogICAg
ICAgICAvLyBHTF9JTUdfdGV4dHVyZV9jb21wcmVzc2lvbl9wdnJ0YwogICAgICAgICBDT01QUkVT
U0VEX1JHQl9QVlJUQ180QlBQVjFfSU1HID0gMHg4QzAwLAogICAgICAgICBDT01QUkVTU0VEX1JH
Ql9QVlJUQ18yQlBQVjFfSU1HID0gMHg4QzAxLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0M0RDb2NvYS5tbSBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dDNEQ29jb2Eu
bW0KaW5kZXggZWM5ODA1MTQ1NWI3MGQwODVlN2NmZTZlMzViYzEzYjJhOTIzZjc4MS4uMmI5Mzk1
MGYyZDVlOTliZmQ3ODdjMDM2ZTEyYWNjNThhM2UwZGQ0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0M0RDb2NvYS5tbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRl
eHQzRENvY29hLm1tCkBAIC0yNzcsOCArMjc3LDYgQEAgR3JhcGhpY3NDb250ZXh0M0Q6OkdyYXBo
aWNzQ29udGV4dDNEKEdyYXBoaWNzQ29udGV4dDNEQXR0cmlidXRlcyBhdHRycywgSG9zdFdpbmQK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1faXNGb3JXZWJHTDIgPSBhdHRycy5pc1dl
YkdMMjsKLQogICAgIENHTFNldEN1cnJlbnRDb250ZXh0KG1fY29udGV4dE9iaik7CiAKICAgICAv
LyBXZWJHTCAyIGV4cGVjdHMgRVMgMy1vbmx5IFBSSU1JVElWRV9SRVNUQVJUX0ZJWEVEX0lOREVY
IHRvIGJlIGVuYWJsZWQ7IHdlIG11c3QgZW11bGF0ZSB0aGlzIG9uIG5vbi1FUyAzIHN5c3RlbXMu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0
ZW5zaW9uczNET3BlbkdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29w
ZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwCmluZGV4IDEzMTE5ZmZhNzVlMWMzMDdkMDgzNGE3
ZmQ3ZmM5ZGRlZDUyNjQzZGYuLmMwYjRiNWYyYTc1MDFhNWU4N2Y4OGJjNGNjNTlkODgzODkwOWFm
YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9F
eHRlbnNpb25zM0RPcGVuR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwCkBAIC0yMzAsNiArMjMwLDEyIEBAIGJv
b2wgRXh0ZW5zaW9uczNET3BlbkdMOjpzdXBwb3J0c0V4dGVuc2lvbihjb25zdCBTdHJpbmcmIG5h
bWUpCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBpZiAobmFtZSA9PSAiR0xfRVhUX3Bh
Y2tlZF9kZXB0aF9zdGVuY2lsIikKICAgICAgICAgcmV0dXJuIG1fYXZhaWxhYmxlRXh0ZW5zaW9u
cy5jb250YWlucygiR0xfT0VTX3BhY2tlZF9kZXB0aF9zdGVuY2lsIik7CisKKyAgICBpZiAobmFt
ZSA9PSAiR0xfT0VTX2NvbXByZXNzZWRfRVRDMV9SR0I4X3RleHR1cmUiCisgICAgICAgIHx8IG5h
bWUgPT0gIkdMX0NIUk9NSVVNX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMiKSB7CisgICAgICAgIC8v
IEltcGxpY2l0bHkgZW5hYmxlZCB3aXRoIEVTIDMuMCBjb250ZXh0cy4KKyAgICAgICAgcmV0dXJu
IG1fY29udGV4dC0+bV9pc0ZvcldlYkdMMjsKKyAgICB9CiAjZW5kaWYKIAogICAgIHJldHVybiBt
X2F2YWlsYWJsZUV4dGVuc2lvbnMuY29udGFpbnMobmFtZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379395</attachid>
            <date>2019-09-23 14:42:08 -0700</date>
            <delta_ts>2019-10-11 14:46:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197900-20190923164207.patch</filename>
            <type>text/plain</type>
            <size>47892</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwMjQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjgyZjA0NGY0Yjc1MDlh
YmQ2ZGE0N2FlODE1M2RiMjFkNmJhNDJhMi4uNDUxYjk3ZjM5NWQ2ZjRlNzg0MGJiMWU3NGJlNzAy
YmU4NzAwZGMwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDE5LTA5LTIzICBLZW5u
ZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsZWFzZSBzdXBwb3J0
IFdFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMxIGV4dGVuc2lvbiAoYW5kIHBvc3NpYmx5IFdF
QkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMgdG9vKQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3OTAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQ292ZXJlZCBieSBXZWJHTCBjb25mb3JtYW5jZSB0ZXN0
IHN1aXRlLiBOb3QgeWV0IGVuYWJsZWQgb24gYW55IGN1cnJlbnQKKyAgICAgICAgV2ViS2l0IHBv
cnRzLCBob3dldmVyLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogRGVy
aXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1v
dXRwdXQueGNmaWxlbGlzdDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAg
ICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRXZWJHTC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpjb252ZXJ0VG9KU1ZhbHVlKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9X
ZWJHTDJSZW5kZXJpbmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMMlJlbmRl
cmluZ0NvbnRleHQ6OmdldEV4dGVuc2lvbik6CisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQy5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQyk6CisgICAgICAg
IChXZWJDb3JlOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOjpnZXROYW1lIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRlZCk6Cisg
ICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oOiBBZGRlZC4K
KyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbDogQWRk
ZWQuCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3Bw
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOjpX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDMTo6Z2V0TmFtZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMTo6c3VwcG9ydGVkKToKKyAgICAgICAgKiBodG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL2Nh
bnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGw6IEFkZGVkLgorICAgICAgICAqIGh0
bWwvY2FudmFzL1dlYkdMRXh0ZW5zaW9uLmg6CisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xS
ZW5kZXJpbmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29u
dGV4dDo6Z2V0RXh0ZW5zaW9uKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmlu
Z0NvbnRleHRCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4
dEJhc2U6OnZhbGlkYXRlVmVydGV4QXR0cmlidXRlcyk6CisgICAgICAgIChXZWJDb3JlOjpXZWJH
TFJlbmRlcmluZ0NvbnRleHRCYXNlOjpleHRlbnNpb25Jc0VuYWJsZWQpOgorICAgICAgICAqIGh0
bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9FeHRlbnNpb25zM0QuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
b2NvYS9HcmFwaGljc0NvbnRleHQzRENvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0M0Q6OkdyYXBoaWNzQ29udGV4dDNEKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV4
dGVuc2lvbnMzRE9wZW5HTDo6c3VwcG9ydHNFeHRlbnNpb24pOgorCiAyMDE5LTA5LTIzICBCcmVu
dCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgV2lu
Q2Fpcm8vRlRXIEJ1aWxkIGZpeCBhZnRlciByMjUwMTkyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRl
eCA4MjYyYmU2OGM4MjQwOGJmNzE1NmExYzgxZmRkN2I2MmZiNGI1YzFjLi4xNGZmMGE4ZjdkMWE4
N2IwOTlmOTRhN2Q4NjE4MGU5NjgxYTQ3Y2MyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTI5
OSw2ICsxMjk5LDggQEAgaWYgKEVOQUJMRV9XRUJHTCkKICAgICAgICAgaHRtbC9jYW52YXMvV2Vi
R0xCdWZmZXIuY3BwCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVB
U1RDLmNwcAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmNw
cAorICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcAorICAg
ICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAKICAgICAgICAg
aHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmNwcAogICAgICAgICBodG1s
L2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5jcHAKICAgICAgICAgaHRtbC9jYW52
YXMvV2ViR0xDb250ZXh0RXZlbnQuY3BwCkBAIC0xMzQ4LDYgKzEzNTAsOCBAQCBpZiAoRU5BQkxF
X1dFQkdMKQogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTEJ1ZmZlci5pZGwKICAgICAgICAgaHRt
bC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuaWRsCiAgICAgICAgIGh0bWwvY2Fu
dmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaWRsCisgICAgICAgIGh0bWwvY2FudmFzL1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsCisgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMxLmlkbAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNz
ZWRUZXh0dXJlUFZSVEMuaWRsCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRl
eHR1cmVTM1RDLmlkbAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbnRleHRBdHRyaWJ1dGVz
LmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNm
aWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QK
aW5kZXggMmY5OGY5ZTMxNWViNmY4M2UwMzM0Y2E3Zjc4NDhlM2RlYTRkMTIwOS4uZjJkOWNiNjI4
NjZjY2VhMTM0YzkwOTJkOWVhYTU2ZmMxYTdkYmQ1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC04MTEsNiArODExLDggQEAgJChQUk9K
RUNUX0RJUikvaHRtbC9jYW52YXMvV2ViR0xBY3RpdmVJbmZvLmlkbAogJChQUk9KRUNUX0RJUikv
aHRtbC9jYW52YXMvV2ViR0xCdWZmZXIuaWRsCiAkKFBST0pFQ1RfRElSKS9odG1sL2NhbnZhcy9X
ZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5pZGwKICQoUFJPSkVDVF9ESVIpL2h0bWwvY2FudmFz
L1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaWRsCiskKFBST0pFQ1RfRElSKS9odG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbAorJChQUk9KRUNUX0RJUikvaHRtbC9jYW52
YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaWRsCiAkKFBST0pFQ1RfRElSKS9odG1sL2Nh
bnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaWRsCiAkKFBST0pFQ1RfRElSKS9odG1s
L2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5pZGwKICQoUFJPSkVDVF9ESVIpL2h0
bWwvY2FudmFzL1dlYkdMQ29udGV4dEF0dHJpYnV0ZXMuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CmluZGV4IDkzYzVjODY3NTg1OTRhYTBh
MDdkYjYyYjBjOGUwNGQzNDRiODc4MWEuLjIyOTUzY2U2NDY4YmRlYjYyYmE3MGQ1Y2U5NGUwY2Ew
ZjI2MWMxYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1
dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54
Y2ZpbGVsaXN0CkBAIC0xODk3LDYgKzE4OTcsMTAgQEAgJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5jcHAKICQo
QlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUFTVEMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmNwcAogJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmgK
KyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oCiskKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMx
LmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5jcHAKICQoQlVJTFRf
UFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4
dHVyZVBWUlRDLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZQppbmRleCAyODQwZWZkNmZhZTY5NDA3OWMxYzAxNGMzM2JhMDE1MDBmMzI5ODdjLi4zNWE0
NjE5ZDhiN2RiMzllODQyZjIwNjZlYzFiMzIzODdlYzg3ZWU4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLm1ha2UKQEAgLTgxMiw2ICs4MTIsOCBAQCBKU19CSU5ESU5HX0lETFMgPSBcCiAgICAg
JChXZWJDb3JlKS9odG1sL2NhbnZhcy9XZWJHTEJ1ZmZlci5pZGwgXAogICAgICQoV2ViQ29yZSkv
aHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuaWRsIFwKICAgICAkKFdlYkNv
cmUpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaWRsIFwKKyAgICAkKFdl
YkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsIFwKKyAgICAk
KFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaWRs
IFwKICAgICAkKFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RD
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9XZWJHTENvbnRleHRBdHRyaWJ1dGVz
LmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9X
ZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGZkNGRkMzEzN2ViNGM1ZTExZjIwYjNlOWE1YTNjMjU3
M2UwZTI1ZjQuLmE2N2Y0NTQ0YWIxZGYyZDUxOWY4MDJjMTY5ZWU5NTMzYzgwMDMzYjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1Nv
dXJjZXMudHh0CkBAIC0xMjY2LDYgKzEyNjYsOCBAQCBodG1sL2NhbnZhcy9XZWJHTDJSZW5kZXJp
bmdDb250ZXh0LmNwcAogaHRtbC9jYW52YXMvV2ViR0xCdWZmZXIuY3BwCiBodG1sL2NhbnZhcy9X
ZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5jcHAKIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVBVEMuY3BwCitodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNw
cAoraHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwCiBodG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3BwCiBodG1sL2NhbnZhcy9XZWJHTENvbXBy
ZXNzZWRUZXh0dXJlUzNUQy5jcHAKIGh0bWwvY2FudmFzL1dlYkdMQ29udGV4dEV2ZW50LmNwcApA
QCAtMzUxMiw2ICszNTE0LDggQEAgSlNXZWJHTEFjdGl2ZUluZm8uY3BwCiBKU1dlYkdMQnVmZmVy
LmNwcAogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5jcHAKIEpTV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUFUQy5jcHAKK0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAKK0pTV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwCiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5j
cHAKIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuY3BwCiBKU1dlYkdMQ29udGV4dEF0dHJp
YnV0ZXMuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKaW5kZXggMzAwZmM0YjBhMTFjZWM4OTRjMzY5ODczMGFlZTE2MDMxN2Q3YjllZC4u
MmU2ZTlkMjY5MDUyOTQzMTRjMzRhNzZhYTBhNWY1Y2UzNjFiNjcyOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTk3Myw4ICsx
OTczLDExIEBACiAJCTZDNEM5NkRGMUFENDQ4MzUwMDM2NTY3MiAvKiBKU1JlYWRhYmxlU3RyZWFt
QllPQlJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDZDNEM5NkRCMUFENDQ4MzUwMDM2NTY3MiAvKiBKU1JlYWRhYmxlU3RyZWFtQllPQlJlcXVl
c3QuaCAqLzsgfTsKIAkJNkM0Qzk2REYxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJl
YW1EZWZhdWx0Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNkM0Qzk2REIxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW1E
ZWZhdWx0Q29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTZDNjM4ODk1QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJl
cXVlc3RJbml0aWF0b3JzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA2QzYzODg5M0E5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
SW5pdGlhdG9ycy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTZFMEI5MDY5MjMyMUE2OEQwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDMS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUw
QjkwNjUyMzIxQTY4QzAwNjIyM0IyIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmggKi87
IH07CiAJCTZFMEU1NjlDMTgzQkZGRTYwMEUwRThENSAvKiBGbG9hdFJvdW5kZWRSZWN0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTBFNTY5QTE4M0JG
RkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVkUmVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTZFMjFDNkMwMTEyNjMzODUwMEE3QkUwMiAvKiBH
cmFwaGljc0NvbnRleHQzRC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA2RTIxQzZCRjExMjYzMzg1MDBBN0JFMDIgLyogR3JhcGhpY3NDb250ZXh0M0Qu
Y3BwICovOyB9OworCQk2RTI0MkIyQjIzMzU5NDA1MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNkUyNDJCMkEyMzM1OTNEODAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEuaCAqLzsgfTsKKwkJNkUyNDJCMkMyMzM1OTQwOTAwMkNBREQ0IC8qIEpTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNkUyNDJCMjgyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQy5oICovOyB9OwogCQk2RTNGQUQzOTE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENv
bXByZXNzZWRUZXh0dXJlUzNUQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNkUzRkFEMzcxNDczM0Y0MDAwRTQyMzA2IC8qIEpTV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZVMzVEMuaCAqLzsgfTsKIAkJNkUzRkFEMzkxNDczM0Y0MDAwRTQyMzA3IC8qIEpTV2Vi
R0xEZXB0aFRleHR1cmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDZFM0ZBRDM3MTQ3MzNGNDAwMEU0MjMwNyAvKiBKU1dlYkdMRGVwdGhUZXh0dXJlLmgg
Ki87IH07CiAJCTZFM0ZBRDM5MTQ3MzNGNDAxMUU0MjMwNyAvKiBKU1dlYkdMRGVidWdSZW5kZXJl
ckluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZF
M0ZBRDM3MTQ3MzNGNDAxMUU0MjMwNyAvKiBKU1dlYkdMRGVidWdSZW5kZXJlckluZm8uaCAqLzsg
fTsKQEAgLTE5OTIsNiArMTk5NSw3IEBACiAJCTZFNzJGNTUwMjI5RENEMTcwMEIzRTE1MSAvKiBF
eHRlbnNpb25zM0RBTkdMRS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNkUyN0YyNDQyMjlDOUY4RDAwRjFGNjMyIC8qIEV4dGVuc2lvbnMzREFOR0xFLmgg
Ki87IH07CiAJCTZFNzJGNTUxMjI5RENEMUEwMEIzRTE1MSAvKiBUZW1wb3JhcnlBTkdMRVNldHRp
bmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFMjkw
ODYzMjI5REI5NzAwMDA5ODZFMiAvKiBUZW1wb3JhcnlBTkdMRVNldHRpbmcuaCAqLzsgfTsKIAkJ
NkU4NEU5RTExNzY2OEJGMTAwODE1QjY4IC8qIFJhc3RlclNoYXBlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTg0RTlERjE3NjY4QkFEMDA4MTVCNjgg
LyogUmFzdGVyU2hhcGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk2RThBQ0RFRDIzMzQ1Q0JDMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NkU4QUNERUIyMzM0NUNBRjAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAq
LzsgfTsKIAkJNkVCRjBFNDkxMkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkVCRjBFNDYxMkE4
OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5oICovOyB9OwogCQk2RUJGMEU1NTEyQTg5
Mjk4MDBEQjE3MDkgLyogV2ViR0xFeHRlbnNpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFQkYwRTUzMTJBODkyOTgwMERCMTcwOSAvKiBXZWJHTEV4
dGVuc2lvbi5oICovOyB9OwogCQk2RUJGMEU3NzEyQTk4Njg4MDBEQjE3MDkgLyogSlNPRVNUZXh0
dXJlRmxvYXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDZFQkYwRTc1MTJBOTg2ODgwMERCMTcwOSAvKiBKU09FU1RleHR1cmVGbG9hdC5oICovOyB9OwpA
QCAtOTEwMSwxMCArOTEwNSwxNyBAQAogCQk2QzRDOTZEQjFBRDQ0ODM1MDAzNjVBNTAgLyogSlNS
ZWFkYWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk2QzYzODg5M0E5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk2QzYzODg5NEE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0SW5pdGlhdG9ycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTZFMEI5MDY1MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDMS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTBCOTA2NzIz
MjFBNjhDMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUwQjkwNjgyMzIxQTY4RDAwNjIyM0IyIC8qIFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNkUwRTU2OTkxODNCRkZFNjAwRTBFOEQ1IC8qIEZsb2F0Um91bmRlZFJlY3QuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmxvYXRSb3VuZGVkUmVjdC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFMEU1NjlBMTgzQkZGRTYwMEUwRThE
NSAvKiBGbG9hdFJvdW5kZWRSZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEZsb2F0Um91bmRlZFJlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUyMUM2
QkYxMTI2MzM4NTAwQTdCRTAyIC8qIEdyYXBoaWNzQ29udGV4dDNELmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyYXBoaWNzQ29udGV4dDNELmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUyMUM2QzExMTI2MzM5OTAwQTdCRTAyIC8qIEdyYXBoaWNz
Q29udGV4dDNEQ0cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR3Jh
cGhpY3NDb250ZXh0M0RDRy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMjQy
QjI2MjMzNTkzRDcwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcDsgcGF0aCA9
IC4uLy4uLy4uLy4uLy4uLy4uL1dlYktpdEJ1aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNkUyNDJCMjgyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaDsg
cGF0aCA9IC4uLy4uLy4uLy4uLy4uLy4uL1dlYktpdEJ1aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTZFMjQyQjI5MjMzNTkzRDcwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEpTV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQzEuY3BwOyBwYXRoID0gLi4vLi4vLi4vLi4vLi4vLi4vV2ViS2l0QnVpbGQvRGVidWcv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUyNDJCMkEyMzM1OTNEODAwMkNBREQ0IC8q
IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSlNXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDMS5oOyBwYXRoID0gLi4vLi4vLi4vLi4vLi4vLi4vV2ViS2l0QnVp
bGQvRGVidWcvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMxLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFMjdGMjQyMjI5OENFNEIwMEYx
RjYzMiAvKiBHcmFwaGljc0NvbnRleHQzREFOR0xFLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEdyYXBoaWNzQ29udGV4dDNEQU5HTEUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk2RTI3RjI0MzIyOUM5Rjg0MDBGMUY2MzIgLyogRXh0ZW5zaW9uczNE
QU5HTEUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXh0ZW5zaW9u
czNEQU5HTEUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTI3RjI0NDIyOUM5
RjhEMDBGMUY2MzIgLyogRXh0ZW5zaW9uczNEQU5HTEUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRXh0ZW5zaW9uczNEQU5HTEUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTkxMzQsNiArOTE0NSw5IEBACiAJCTZFNjdEMkE4MTI4MEU4QkQwMDg3NThGNyAvKiBF
eHRlbnNpb25zM0QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXh0ZW5zaW9u
czNELmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFODRFOURFMTc2NjhCQUQwMDgx
NUI2OCAvKiBSYXN0ZXJTaGFwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBSYXN0ZXJTaGFwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFODRF
OURGMTc2NjhCQUQwMDgxNUI2OCAvKiBSYXN0ZXJTaGFwZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSYXN0ZXJTaGFwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk2RThBQ0RFOTIzMzQ1Q0FGMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkU4QUNERUIyMzM0NUNBRjAwMjRBQUY1IC8qIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RThBQ0RFQzIzMzQ1
Q0IwMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZF
QkYwRTQ1MTJBODkyNjEwMERCMTcwOSAvKiBPRVNUZXh0dXJlRmxvYXQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gT0VTVGV4dHVyZUZsb2F0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkVCRjBFNDYxMkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1
cmVGbG9hdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPRVNUZXh0dXJlRmxv
YXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkVCRjBFNDcxMkE4OTI2MTAwREIx
NzA5IC8qIE9FU1RleHR1cmVGbG9hdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gT0VTVGV4
dHVyZUZsb2F0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE4MjU0LDYgKzE4
MjY4LDEyIEBACiAJCQkJN0U2NkUyMzExNkQ2RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVBVEMuY3BwICovLAogCQkJCTdFNjZFMjMyMTZENkVCNkMwMEY3RTdGRiAvKiBXZWJH
TENvbXByZXNzZWRUZXh0dXJlQVRDLmggKi8sCiAJCQkJN0VBMzBGNjIxNkRGRDYyNzAwMjU3RDBC
IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaWRsICovLAorCQkJCTZFOEFDREU5MjMzNDVD
QUYwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcCAqLywKKwkJCQk2RThB
Q0RFQjIzMzQ1Q0FGMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oICovLAor
CQkJCTZFOEFDREVDMjMzNDVDQjAwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
LmlkbCAqLywKKwkJCQk2RTBCOTA2ODIzMjFBNjhEMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQzEuY3BwICovLAorCQkJCTZFMEI5MDY1MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMS5oICovLAorCQkJCTZFMEI5MDY3MjMyMUE2OEMwMDYyMjNC
MiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwgKi8sCiAJCQkJN0U2NkUyMzExN0U2
RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5jcHAgKi8sCiAJCQkJ
N0U2NkUyMzIxN0U2RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5o
ICovLAogCQkJCTdFQTMwRjYyMTdFRkQ2MjcwMDI1N0QwQiAvKiBXZWJHTENvbXByZXNzZWRUZXh0
dXJlUFZSVEMuaWRsICovLApAQCAtMjMwMzcsNiArMjMwNTcsMTAgQEAKIAkJCQk0OUM3Qjk4MTEw
NDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTEJ1ZmZlci5oICovLAogCQkJCTdFQTMwRjY3MTZERkZF
NzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuY3BwICovLAogCQkJCTdF
QTMwRjY4MTZERkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCAq
LywKKwkJCQk2RTI0MkIyNjIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDLmNwcCAqLywKKwkJCQk2RTI0MkIyODIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDLmggKi8sCisJCQkJNkUyNDJCMjkyMzM1OTNENzAwMkNBREQ0IC8q
IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwICovLAorCQkJCTZFMjQyQjJBMjMzNTkz
RDgwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmggKi8sCiAJCQkJN0VB
MzBGNjcxN0VGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmNw
cCAqLywKIAkJCQk3RUEzMEY2ODE3RUZGRTc1MDAyNTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlUFZSVEMuaCAqLywKIAkJCQk2RTNGQUQzNjE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJH
TENvbXByZXNzZWRUZXh0dXJlUzNUQy5jcHAgKi8sCkBAIC0zMDYwMyw2ICszMDYyNyw4IEBACiAJ
CQkJQTdEMjBGNjMxMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk0OUM3Qjk5NDEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTEJ1ZmZlci5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJN0VBMzBGNkExNkRGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUFUQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkUyNDJCMkMyMzM1OTQw
OTAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNkUyNDJCMkIyMzM1OTQwNTAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEuaCBpbiBIZWFkZXJzICovLAogCQkJCTdFQTMwRjZBMTdFRkZFNzUwMDI1N0QwQiAvKiBK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNkUzRkFE
MzkxNDczM0Y0MDAwRTQyMzA2IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTZFRThBNzczMTBGODAzRjMwMDVBNEEyNCAvKiBKU1dlYkdMQ29udGV4
dEF0dHJpYnV0ZXMuaCBpbiBIZWFkZXJzICovLApAQCAtMzIzMTIsNiArMzIzMzgsOCBAQAogCQkJ
CTQ5QzdCOUM5MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTEJ1ZmZlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJRDA4QjAwRTQyMEEyODI1OTAwMDRCQzBBIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVB
U1RDLmggaW4gSGVhZGVycyAqLywKIAkJCQk3RTY2RTIzNDE2RDZFQjZDMDBGN0U3RkYgLyogV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkU4QUNERUQyMzM0
NUNCQzAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCBpbiBIZWFkZXJzICov
LAorCQkJCTZFMEI5MDY5MjMyMUE2OEQwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDMS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0U2NkUyMzQxN0U2RUI2QzAwRjdFN0ZGIC8qIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNkUzRkFFOEYx
NDczM0ZEQjAwRTQyMzA2IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk2RTRFOTFBRjEwRjdGQjMxMDBBMjc3OUMgLyogV2ViR0xDb250ZXh0QXR0cmli
dXRlcy5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTUNvbnZlcnRXZWJHTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTUNvbnZlcnRXZWJHTC5jcHAKaW5kZXggNDAyMzk0ZDZhOGYzOTQwMzI1MThiYmZkZjdiNTYz
NGYwNzA0YjZjYS4uZGE5MjlkY2ZjNWVlYjMzMjA5MTk0YTllOWZlYWE5NWRmNmExNTg2MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db252ZXJ0V2ViR0wuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydFdlYkdMLmNwcApA
QCAtNDUsNiArNDUsOCBAQAogI2luY2x1ZGUgIkpTV2ViR0xCdWZmZXIuaCIKICNpbmNsdWRlICJK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmgiCiAjaW5jbHVkZSAiSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlQVRDLmgiCisjaW5jbHVkZSAiSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgi
CisjaW5jbHVkZSAiSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oIgogI2luY2x1ZGUgIkpT
V2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmgiCiAjaW5jbHVkZSAiSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlUzNUQy5oIgogI2luY2x1ZGUgIkpTV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5oIgpA
QCAtMTc2LDYgKzE3OCwxMCBAQCBKU1ZhbHVlIGNvbnZlcnRUb0pTVmFsdWUoRXhlY1N0YXRlJiBz
dGF0ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgV2ViRwogICAgICAgICByZXR1
cm4gdG9KUygmc3RhdGUsICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFdlYkdMRGVidWdTaGFk
ZXJzJj4oZXh0ZW5zaW9uKSk7CiAgICAgY2FzZSBXZWJHTEV4dGVuc2lvbjo6V2ViR0xDb21wcmVz
c2VkVGV4dHVyZUFUQ05hbWU6CiAgICAgICAgIHJldHVybiB0b0pTKCZzdGF0ZSwgJmdsb2JhbE9i
amVjdCwgc3RhdGljX2Nhc3Q8V2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQyY+KGV4dGVuc2lvbikp
OworICAgIGNhc2UgV2ViR0xFeHRlbnNpb246OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVENOYW1l
OgorICAgICAgICByZXR1cm4gdG9KUygmc3RhdGUsICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0
PFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMmPihleHRlbnNpb24pKTsKKyAgICBjYXNlIFdlYkdM
RXh0ZW5zaW9uOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMU5hbWU6CisgICAgICAgIHJldHVy
biB0b0pTKCZzdGF0ZSwgJmdsb2JhbE9iamVjdCwgc3RhdGljX2Nhc3Q8V2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQzEmPihleHRlbnNpb24pKTsKICAgICBjYXNlIFdlYkdMRXh0ZW5zaW9uOjpXZWJH
TENvbXByZXNzZWRUZXh0dXJlUFZSVENOYW1lOgogICAgICAgICByZXR1cm4gdG9KUygmc3RhdGUs
ICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQyY+
KGV4dGVuc2lvbikpOwogICAgIGNhc2UgV2ViR0xFeHRlbnNpb246OldlYkdMQ29tcHJlc3NlZFRl
eHR1cmVTM1RDTmFtZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dl
YkdMMlJlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2Vi
R0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKaW5kZXggY2Q0NzIxMjYxYjJlMDIyYjU1MjVkZDNkM2Nh
NTQ2OWY5YzBiM2VhOS4uZTRiOWEwNTNhYzg2MGMwOWJhNTc3ODI5ZjZiODZkOWZhZDM3MTcwMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0wyUmVuZGVyaW5nQ29u
dGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0wyUmVuZGVyaW5n
Q29udGV4dC5jcHAKQEAgLTQ1LDYgKzQ1LDggQEAKICNpbmNsdWRlICJXZWJHTEFjdGl2ZUluZm8u
aCIKICNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5oIgogI2luY2x1ZGUgIldl
YkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCIKKyNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDLmgiCisjaW5jbHVkZSAiV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCIKICNpbmNs
dWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaCIKICNpbmNsdWRlICJXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlUzNUQy5oIgogI2luY2x1ZGUgIldlYkdMRGVidWdSZW5kZXJlckluZm8uaCIK
QEAgLTEzNzMsMTAgKzEzNzUsMTIgQEAgV2ViR0xFeHRlbnNpb24qIFdlYkdMMlJlbmRlcmluZ0Nv
bnRleHQ6OmdldEV4dGVuc2lvbihjb25zdCBTdHJpbmcmIG5hbWUpCiAgICAgRU5BQkxFX0lGX1JF
UVVFU1RFRChPRVNUZXh0dXJlSGFsZkZsb2F0LCBtX29lc1RleHR1cmVIYWxmRmxvYXQsICJPRVNf
dGV4dHVyZV9oYWxmX2Zsb2F0IiwgZW5hYmxlU3VwcG9ydGVkRXh0ZW5zaW9uKCJHTF9PRVNfdGV4
dHVyZV9oYWxmX2Zsb2F0Il9zKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChPRVNUZXh0dXJl
SGFsZkZsb2F0TGluZWFyLCBtX29lc1RleHR1cmVIYWxmRmxvYXRMaW5lYXIsICJPRVNfdGV4dHVy
ZV9oYWxmX2Zsb2F0X2xpbmVhciIsIGVuYWJsZVN1cHBvcnRlZEV4dGVuc2lvbigiR0xfT0VTX3Rl
eHR1cmVfaGFsZl9mbG9hdF9saW5lYXIiX3MpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdl
YkdMTG9zZUNvbnRleHQsIG1fd2ViZ2xMb3NlQ29udGV4dCwgIldFQkdMX2xvc2VfY29udGV4dCIs
IHRydWUpOworICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFT
VEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFTVEMsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1
cmVfYXN0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDOjpzdXBwb3J0ZWQoKnRoaXMpKTsK
ICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMsIG1fd2Vi
Z2xDb21wcmVzc2VkVGV4dHVyZUFUQywgIldFQktJVF9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVf
YXRjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQzo6c3VwcG9ydGVkKCp0aGlzKSk7CisgICAg
RU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLCBtX3dlYmdsQ29t
cHJlc3NlZFRleHR1cmVFVEMsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YyIs
IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRlZCgqdGhpcykpOworICAgIEVOQUJM
RV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEsIG1fd2ViZ2xDb21wcmVz
c2VkVGV4dHVyZUVUQzEsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEiLCBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6c3VwcG9ydGVkKCp0aGlzKSk7CiAgICAgRU5BQkxF
X0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMsIG1fd2ViZ2xDb21wcmVz
c2VkVGV4dHVyZVBWUlRDLCAiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9wdnJ0YyIs
IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQzo6c3VwcG9ydGVkKCp0aGlzKSk7CiAgICAgRU5B
QkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQywgbV93ZWJnbENvbXBy
ZXNzZWRUZXh0dXJlUzNUQywgIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9zM3RjIiwgV2ViR0xD
b21wcmVzc2VkVGV4dHVyZVMzVEM6OnN1cHBvcnRlZCgqdGhpcykpOwotICAgIEVOQUJMRV9JRl9S
RVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4
dHVyZUFTVEMsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfYXN0YyIsIFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVBU1RDOjpzdXBwb3J0ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVE
KFdlYkdMRGVwdGhUZXh0dXJlLCBtX3dlYmdsRGVwdGhUZXh0dXJlLCAiV0VCR0xfZGVwdGhfdGV4
dHVyZSIsIFdlYkdMRGVwdGhUZXh0dXJlOjpzdXBwb3J0ZWQoKmdyYXBoaWNzQ29udGV4dDNEKCkp
KTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMRGVidWdSZW5kZXJlckluZm8sIG1fd2Vi
Z2xEZWJ1Z1JlbmRlcmVySW5mbywgIldFQkdMX2RlYnVnX3JlbmRlcmVyX2luZm8iLCB0cnVlKTsK
ICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMRGVidWdTaGFkZXJzLCBtX3dlYmdsRGVidWdT
aGFkZXJzLCAiV0VCR0xfZGVidWdfc2hhZGVycyIsIG1fY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygp
LnN1cHBvcnRzKCJHTF9BTkdMRV90cmFuc2xhdGVkX3NoYWRlcl9zb3VyY2UiX3MpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uM2E4N2M0YzNlMGQ5NjYxMWVmMTBjYTQ2NDFhMWU2MmQ5YTRm
NGI5YwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMuY3BwCkBAIC0wLDAgKzEsNjcgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTkgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQkdMKQorI2luY2x1ZGUgIldlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMuaCIKKworI2luY2x1ZGUgIkV4dGVuc2lvbnMzRC5oIgorI2lu
Y2x1ZGUgIldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
KFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmIGNvbnRleHQpCisgICAgOiBXZWJHTEV4dGVuc2lv
bihjb250ZXh0KQoreworICAgIGNvbnRleHQuZ3JhcGhpY3NDb250ZXh0M0QoKS0+Z2V0RXh0ZW5z
aW9ucygpLmVuc3VyZUVuYWJsZWQoIkdMX0NIUk9NSVVNX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMi
KTsKKworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNE
OjpDT01QUkVTU0VEX1IxMV9FQUMpOworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVG
b3JtYXQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9SMTFfRUFDKTsKKyAgICBjb250
ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9S
RzExX0VBQyk7CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNp
b25zM0Q6OkNPTVBSRVNTRURfU0lHTkVEX1JHMTFfRUFDKTsKKyAgICBjb250ZXh0LmFkZENvbXBy
ZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0I4X0VUQzIpOwor
ICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpDT01Q
UkVTU0VEX1NSR0I4X0VUQzIpOworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVGb3Jt
YXQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMy
KTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6
Q09NUFJFU1NFRF9TUkdCOF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzIpOworICAgIGNvbnRleHQu
YWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQkE4
X0VUQzJfRUFDKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVu
c2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9BTFBIQThfRVRDMl9FQUMpOworfQorCitXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDOjp+V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQygpID0gZGVmYXVs
dDsKKworV2ViR0xFeHRlbnNpb246OkV4dGVuc2lvbk5hbWUgV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzo6Z2V0TmFtZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVFVENOYW1lOworfQorCitib29sIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRl
ZChXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlJiBjb250ZXh0KQoreworICAgIHJldHVybiBjb250
ZXh0LmdyYXBoaWNzQ29udGV4dDNEKCktPmdldEV4dGVuc2lvbnMoKS5zdXBwb3J0cygiR0xfQ0hS
T01JVU1fY29tcHJlc3NlZF90ZXh0dXJlX2V0YyIpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2Ez
MzhhZGEyNmViOTI0Y2NhYTEwMjViODc4YmEzZDkyM2RmOGE0NgotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaApA
QCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxF
KFdFQkdMKQorCisjaW5jbHVkZSAiV2ViR0xFeHRlbnNpb24uaCIKKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDIGZpbmFsIDogcHVibGljIFdl
YkdMRXh0ZW5zaW9uIHsKK3B1YmxpYzoKKyAgICBleHBsaWNpdCBXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAgICB2aXJ0dWFsIH5XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDKCk7CisKKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0ZWQoV2ViR0xS
ZW5kZXJpbmdDb250ZXh0QmFzZSYpOworICAgIEV4dGVuc2lvbk5hbWUgZ2V0TmFtZSgpIGNvbnN0
IG92ZXJyaWRlOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQy5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTk1M2ZhYTNiNzM4OWNjNjVkNmUwOWQ0MzMzNzlkYmQxMTZj
NTg3MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMuaWRsCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTkgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
Ly8gaHR0cHM6Ly93d3cua2hyb25vcy5vcmcvcmVnaXN0cnkvd2ViZ2wvZXh0ZW5zaW9ucy9XRUJH
TF9jb21wcmVzc2VkX3RleHR1cmVfZXRjLworCitbCisgICAgQ29uZGl0aW9uYWw9V0VCR0wsCisg
ICAgRG9Ob3RDaGVja0NvbnN0YW50cywKKyAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxXZWJH
TFJlbmRlcmluZ0NvbnRleHQsCisgICAgTm9JbnRlcmZhY2VPYmplY3QsCitdIGludGVyZmFjZSBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDIHsKKyAgICAvKiBDb21wcmVzc2VkIFRleHR1cmUgRm9y
bWF0ICovCisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1IxMV9FQUMgICAgICAg
ICAgICAgICAgICAgICAgICA9IDB4OTI3MDsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBS
RVNTRURfU0lHTkVEX1IxMV9FQUMgICAgICAgICAgICAgICAgID0gMHg5MjcxOworICAgIGNvbnN0
IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9SRzExX0VBQyAgICAgICAgICAgICAgICAgICAgICAg
PSAweDkyNzI7CisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1NJR05FRF9SRzEx
X0VBQyAgICAgICAgICAgICAgICA9IDB4OTI3MzsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENP
TVBSRVNTRURfUkdCOF9FVEMyICAgICAgICAgICAgICAgICAgICAgID0gMHg5Mjc0OworICAgIGNv
bnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9TUkdCOF9FVEMyICAgICAgICAgICAgICAgICAg
ICAgPSAweDkyNzU7CisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1JHQjhfUFVO
Q0hUSFJPVUdIX0FMUEhBMV9FVEMyICA9IDB4OTI3NjsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25n
IENPTVBSRVNTRURfU1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMyID0gMHg5Mjc3OworICAg
IGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9SR0JBOF9FVEMyX0VBQyAgICAgICAgICAg
ICAgICAgPSAweDkyNzg7CisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1NSR0I4
X0FMUEhBOF9FVEMyX0VBQyAgICAgICAgICA9IDB4OTI3OTsKK307CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYmRjM2JlZTBhODc2YWNmNjk4MWIwMDQ4YzY3NTAzZDNjNGNmYmNlNgotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMxLmNwcApAQCAtMCwwICsxLDU4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKworI2lmIEVOQUJMRShXRUJHTCkKKyNpbmNsdWRlICJXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5oIgorCisjaW5jbHVkZSAiRXh0ZW5zaW9uczNELmgiCisjaW5jbHVkZSAi
V2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMShXZWJH
TFJlbmRlcmluZ0NvbnRleHRCYXNlJiBjb250ZXh0KQorICAgIDogV2ViR0xFeHRlbnNpb24oY29u
dGV4dCkKK3sKKyAgICBjb250ZXh0LmdyYXBoaWNzQ29udGV4dDNEKCktPmdldEV4dGVuc2lvbnMo
KS5lbnN1cmVFbmFibGVkKCJHTF9PRVNfY29tcHJlc3NlZF9FVEMxX1JHQjhfdGV4dHVyZSIpOwor
CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6OkVU
QzFfUkdCOF9PRVMpOworfQorCitXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6fldlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMxKCkgPSBkZWZhdWx0OworCitXZWJHTEV4dGVuc2lvbjo6RXh0ZW5z
aW9uTmFtZSBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6Z2V0TmFtZSgpIGNvbnN0Cit7Cisg
ICAgcmV0dXJuIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxTmFtZTsKK30KKworYm9vbCBXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMTo6c3VwcG9ydGVkKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJh
c2UmIGNvbnRleHQpCit7CisgICAgcmV0dXJuIGNvbnRleHQuZ3JhcGhpY3NDb250ZXh0M0QoKS0+
Z2V0RXh0ZW5zaW9ucygpLnN1cHBvcnRzKCJHTF9PRVNfY29tcHJlc3NlZF9FVEMxX1JHQjhfdGV4
dHVyZSIpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUo
V0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDMS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQzEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZjc2YTQ4MGMzZDZiNWI2NWFkMmFhYzkz
MDhiYWFmN2JmMDY3MGZmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaApAQCAtMCwwICsxLDQ1IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKFdFQkdMKQorCisjaW5jbHVkZSAi
V2ViR0xFeHRlbnNpb24uaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDMSBmaW5hbCA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CitwdWJs
aWM6CisgICAgZXhwbGljaXQgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEoV2ViR0xSZW5kZXJp
bmdDb250ZXh0QmFzZSYpOworICAgIHZpcnR1YWwgfldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMx
KCk7CisKKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0ZWQoV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFz
ZSYpOworICAgIEV4dGVuc2lvbk5hbWUgZ2V0TmFtZSgpIGNvbnN0IG92ZXJyaWRlOworfTsKKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mM2MzYzY1ZDRjYzdmZjViNWQ4YTIzZmZlODk2MmYwMTgwNjMzMTdjCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEuaWRsCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworLy8gaHR0cHM6Ly93d3cu
a2hyb25vcy5vcmcvcmVnaXN0cnkvd2ViZ2wvZXh0ZW5zaW9ucy9XRUJHTF9jb21wcmVzc2VkX3Rl
eHR1cmVfZXRjMS8KKworWworICAgIENvbmRpdGlvbmFsPVdFQkdMLAorICAgIERvTm90Q2hlY2tD
b25zdGFudHMsCisgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsV2ViR0xSZW5kZXJpbmdDb250
ZXh0LAorICAgIE5vSW50ZXJmYWNlT2JqZWN0LAorXSBpbnRlcmZhY2UgV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQzEgeworICAgIC8qIENvbXByZXNzZWQgVGV4dHVyZSBGb3JtYXRzICovCisgICAg
Y29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1JHQl9FVEMxX1dFQkdMID0gMHg4RDY0Owor
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRXh0ZW5zaW9u
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEV4dGVuc2lvbi5oCmluZGV4IDJh
MWEzNGNhN2Y0NmQ0MWJkOGQ3YjI0MmRkNTgxZWY4ZjhmNjE2MTEuLjAyYTFlODFkNWFjMTgwYjRk
NzQ2ZGE3YjNmOWJmZmM1NDQ2NDY0ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Y2FudmFzL1dlYkdMRXh0ZW5zaW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0xFeHRlbnNpb24uaApAQCAtNTUsNiArNTUsOCBAQCBwdWJsaWM6CiAgICAgICAgIFdlYkdM
RHJhd0J1ZmZlcnNOYW1lLAogICAgICAgICBPRVNFbGVtZW50SW5kZXhVaW50TmFtZSwKICAgICAg
ICAgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQ05hbWUsCisgICAgICAgIFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVENOYW1lLAorICAgICAgICBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMU5hbWUs
CiAgICAgICAgIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQ05hbWUsCiAgICAgICAgIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVBU1RDTmFtZSwKICAgICAgICAgQU5HTEVJbnN0YW5jZWRBcnJheXNO
YW1lLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJp
bmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5n
Q29udGV4dC5jcHAKaW5kZXggZTVmZGU3MDMzNzQ1NmEzMWUxNTcxZWUxMGYzZmQyNjQyZGIwMzZi
OS4uYTExMTZlMDQ5OGU0ZDA3NzFkYWFiZGUwMTRiMTM0MDNiODE5MzVhZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwCkBA
IC01MSw2ICs1MSw4IEBACiAjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAjaW5jbHVkZSAiV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUFTVEMuaCIKICNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJl
QVRDLmgiCisjaW5jbHVkZSAiV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIgorI2luY2x1ZGUg
IldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgiCiAjaW5jbHVkZSAiV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZVBWUlRDLmgiCiAjaW5jbHVkZSAiV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCIK
ICNpbmNsdWRlICJXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmgiCkBAIC0xNDgsMTAgKzE1MCwxMiBA
QCBXZWJHTEV4dGVuc2lvbiogV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRFeHRlbnNpb24oY29u
c3QgU3RyaW5nJiBuYW1lKQogICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoT0VTVmVydGV4QXJyYXlP
YmplY3QsIG1fb2VzVmVydGV4QXJyYXlPYmplY3QsICJPRVNfdmVydGV4X2FycmF5X29iamVjdCIs
IGVuYWJsZVN1cHBvcnRlZEV4dGVuc2lvbigiR0xfT0VTX3ZlcnRleF9hcnJheV9vYmplY3QiX3Mp
KTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKE9FU0VsZW1lbnRJbmRleFVpbnQsIG1fb2VzRWxl
bWVudEluZGV4VWludCwgIk9FU19lbGVtZW50X2luZGV4X3VpbnQiLCBlbmFibGVTdXBwb3J0ZWRF
eHRlbnNpb24oIkdMX09FU19lbGVtZW50X2luZGV4X3VpbnQiX3MpKTsKICAgICBFTkFCTEVfSUZf
UkVRVUVTVEVEKFdlYkdMTG9zZUNvbnRleHQsIG1fd2ViZ2xMb3NlQ29udGV4dCwgIldFQkdMX2xv
c2VfY29udGV4dCIsIHRydWUpOworICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUFTVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFTVEMsICJXRUJHTF9jb21w
cmVzc2VkX3RleHR1cmVfYXN0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDOjpzdXBwb3J0
ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVBVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFUQywgIldFQktJVF9XRUJHTF9jb21wcmVz
c2VkX3RleHR1cmVfYXRjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQzo6c3VwcG9ydGVkKCp0
aGlzKSk7CisgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
LCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVFVEMsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90
ZXh0dXJlX2V0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRlZCgqdGhpcykp
OworICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEsIG1f
d2ViZ2xDb21wcmVzc2VkVGV4dHVyZUVUQzEsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0
dXJlX2V0YzEiLCBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6c3VwcG9ydGVkKCp0aGlzKSk7
CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMsIG1f
d2ViZ2xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLCAiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4
dHVyZV9wdnJ0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQzo6c3VwcG9ydGVkKCp0aGlz
KSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQywg
bV93ZWJnbENvbXByZXNzZWRUZXh0dXJlUzNUQywgIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9z
M3RjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEM6OnN1cHBvcnRlZCgqdGhpcykpOwotICAg
IEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMsIG1fd2ViZ2xD
b21wcmVzc2VkVGV4dHVyZUFTVEMsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfYXN0YyIsIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDOjpzdXBwb3J0ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVf
SUZfUkVRVUVTVEVEKFdlYkdMRGVwdGhUZXh0dXJlLCBtX3dlYmdsRGVwdGhUZXh0dXJlLCAiV0VC
R0xfZGVwdGhfdGV4dHVyZSIsIFdlYkdMRGVwdGhUZXh0dXJlOjpzdXBwb3J0ZWQoKm1fY29udGV4
dCkpOwogICAgIGlmIChlcXVhbElnbm9yaW5nQVNDSUlDYXNlKG5hbWUsICJXRUJHTF9kcmF3X2J1
ZmZlcnMiKSkgewogICAgICAgICBpZiAoIW1fd2ViZ2xEcmF3QnVmZmVycykgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNl
LmNwcAppbmRleCAyMjRlMzRkODMyN2FkYjg1NWI5NDcxM2VkZjNjNjBhODU4Nzg1ZjcyLi4wZGRh
ZmFhM2RjYjA3ZDA2MzdiM2Q5ZDNjMDNjZjFiYjJlMjY4OTc2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcApA
QCAtMjA0Miw3ICsyMDQyLDEwIEBAIGJvb2wgV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6dmFs
aWRhdGVJbmRleEFycmF5UHJlY2lzZShHQzNEc2l6ZWkgY291bnQsIEdDM0RlCiAKIGJvb2wgV2Vi
R0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6dmFsaWRhdGVWZXJ0ZXhBdHRyaWJ1dGVzKHVuc2lnbmVk
IGVsZW1lbnRDb3VudCwgdW5zaWduZWQgcHJpbWl0aXZlQ291bnQpCiB7Ci0jaWYgIVVTRShBTkdM
RSkKKyNpZiBVU0UoQU5HTEUpCisgICAgVU5VU0VEX1BBUkFNKGVsZW1lbnRDb3VudCk7CisgICAg
VU5VU0VEX1BBUkFNKHByaW1pdGl2ZUNvdW50KTsKKyNlbHNlCiAgICAgaWYgKCFtX2N1cnJlbnRQ
cm9ncmFtKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKQEAgLTMwNzEsNyArMzA3NCwxMCBAQCBi
b29sIFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OmV4dGVuc2lvbklzRW5hYmxlZChjb25zdCBT
dHJpbmcmIG5hbWUpCiAgICAgQ0hFQ0tfRVhURU5TSU9OKG1fd2ViZ2xMb3NlQ29udGV4dCwgIldF
QkdMX2xvc2VfY29udGV4dCIpOwogICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmdsRGVidWdSZW5k
ZXJlckluZm8sICJXRUJHTF9kZWJ1Z19yZW5kZXJlcl9pbmZvIik7CiAgICAgQ0hFQ0tfRVhURU5T
SU9OKG1fd2ViZ2xEZWJ1Z1NoYWRlcnMsICJXRUJHTF9kZWJ1Z19zaGFkZXJzIik7CisgICAgQ0hF
Q0tfRVhURU5TSU9OKG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFTVEMsICJXRUJLSVRfV0VCR0xf
Y29tcHJlc3NlZF90ZXh0dXJlX2FzdGMiKTsKICAgICBDSEVDS19FWFRFTlNJT04obV93ZWJnbENv
bXByZXNzZWRUZXh0dXJlQVRDLCAiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9hdGMi
KTsKKyAgICBDSEVDS19FWFRFTlNJT04obV93ZWJnbENvbXByZXNzZWRUZXh0dXJlRVRDLCAiV0VC
S0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMiKTsKKyAgICBDSEVDS19FWFRFTlNJT04o
bV93ZWJnbENvbXByZXNzZWRUZXh0dXJlRVRDMSwgIldFQktJVF9XRUJHTF9jb21wcmVzc2VkX3Rl
eHR1cmVfZXRjMSIpOwogICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmdsQ29tcHJlc3NlZFRleHR1
cmVQVlJUQywgIldFQktJVF9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfcHZydGMiKTsKICAgICBD
SEVDS19FWFRFTlNJT04obV93ZWJnbENvbXByZXNzZWRUZXh0dXJlUzNUQywgIldFQkdMX2NvbXBy
ZXNzZWRfdGV4dHVyZV9zM3RjIik7CiAgICAgQ0hFQ0tfRVhURU5TSU9OKG1fd2ViZ2xEZXB0aFRl
eHR1cmUsICJXRUJHTF9kZXB0aF90ZXh0dXJlIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgKaW5kZXggNzlmZDRlN2Qz
MjA2MDlhNDAxNzhhOTQ1OWY5ODYxMzlkZWZkNWQ3OS4uYTQwMjdmYmZlYjRjNTc1YTE2MmUwOGFj
MjRjYjU4NmZkN2I0ODIzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2Fu
dmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaApAQCAtNzQsNiArNzQsOCBAQCBjbGFzcyBX
ZWJHTENvbnRleHRHcm91cDsKIGNsYXNzIFdlYkdMQ29udGV4dE9iamVjdDsKIGNsYXNzIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVBU1RDOwogY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQzsK
K2NsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM7CitjbGFzcyBXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDMTsKIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQzsKIGNsYXNzIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDOwogY2xhc3MgV2ViR0xEZWJ1Z1JlbmRlcmVySW5mbzsK
QEAgLTM3NSw2ICszNzcsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMRGVi
dWdTaGFkZXJzOwogICAgIGZyaWVuZCBjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzsK
ICAgICBmcmllbmQgY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQzsKKyAgICBmcmllbmQg
Y2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzsKKyAgICBmcmllbmQgY2xhc3MgV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzE7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVQVlJUQzsKICAgICBmcmllbmQgY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEM7
CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMUmVuZGVyaW5nQ29udGV4dEVycm9yTWVzc2FnZUNhbGxi
YWNrOwpAQCAtNjAyLDYgKzYwNiw4IEBAIHByb3RlY3RlZDoKICAgICBzdGQ6OnVuaXF1ZV9wdHI8
V2ViR0xEZWJ1Z1NoYWRlcnM+IG1fd2ViZ2xEZWJ1Z1NoYWRlcnM7CiAgICAgc3RkOjp1bmlxdWVf
cHRyPFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDPiBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVB
U1RDOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDPiBtX3dl
YmdsQ29tcHJlc3NlZFRleHR1cmVBVEM7CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEM+IG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUVUQzsKKyAgICBzdGQ6OnVu
aXF1ZV9wdHI8V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE+IG1fd2ViZ2xDb21wcmVzc2VkVGV4
dHVyZUVUQzE7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJU
Qz4gbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlUFZSVEM7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDPiBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVTM1RDOwog
ICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJHTERlcHRoVGV4dHVyZT4gbV93ZWJnbERlcHRoVGV4dHVy
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lv
bnMzRC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRXh0ZW5zaW9uczNELmgK
aW5kZXggMDZjYTVlMjk2YjQ3ZWE2MGRiNzRjMTQ0OTlkMmUxM2VhZDhkOGZjYy4uNzhmMmEwMzg2
MTk5NDIyNmM5MzRjYTY1MWEwZGIxYjkwYWQzMTI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvRXh0ZW5zaW9uczNELmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRXh0ZW5zaW9uczNELmgKQEAgLTE1OCw2ICsxNTgsMTggQEAgcHVi
bGljOgogICAgICAgICAvLyBHTF9PRVNfY29tcHJlc3NlZF9FVEMxX1JHQjhfdGV4dHVyZQogICAg
ICAgICBFVEMxX1JHQjhfT0VTID0gMHg4RDY0LAogCisgICAgICAgIC8vIFdFQkdMX2NvbXByZXNz
ZWRfdGV4dHVyZV9ldGMKKyAgICAgICAgQ09NUFJFU1NFRF9SMTFfRUFDID0gMHg5MjcwLAorICAg
ICAgICBDT01QUkVTU0VEX1NJR05FRF9SMTFfRUFDID0gMHg5MjcxLAorICAgICAgICBDT01QUkVT
U0VEX1JHMTFfRUFDID0gMHg5MjcyLAorICAgICAgICBDT01QUkVTU0VEX1NJR05FRF9SRzExX0VB
QyA9IDB4OTI3MywKKyAgICAgICAgQ09NUFJFU1NFRF9SR0I4X0VUQzIgPSAweDkyNzQsCisgICAg
ICAgIENPTVBSRVNTRURfU1JHQjhfRVRDMiA9IDB4OTI3NSwKKyAgICAgICAgQ09NUFJFU1NFRF9S
R0I4X1BVTkNIVEhST1VHSF9BTFBIQTFfRVRDMiA9IDB4OTI3NiwKKyAgICAgICAgQ09NUFJFU1NF
RF9TUkdCOF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzIgPSAweDkyNzcsCisgICAgICAgIENPTVBS
RVNTRURfUkdCQThfRVRDMl9FQUMgPSAweDkyNzgsCisgICAgICAgIENPTVBSRVNTRURfU1JHQjhf
QUxQSEE4X0VUQzJfRUFDID0gMHg5Mjc5LAorCiAgICAgICAgIC8vIEdMX0lNR190ZXh0dXJlX2Nv
bXByZXNzaW9uX3B2cnRjCiAgICAgICAgIENPTVBSRVNTRURfUkdCX1BWUlRDXzRCUFBWMV9JTUcg
PSAweDhDMDAsCiAgICAgICAgIENPTVBSRVNTRURfUkdCX1BWUlRDXzJCUFBWMV9JTUcgPSAweDhD
MDEsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9H
cmFwaGljc0NvbnRleHQzRENvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY29jb2EvR3JhcGhpY3NDb250ZXh0M0RDb2NvYS5tbQppbmRleCBlYzk4MDUxNDU1YjcwZDA4
NWU3Y2ZlNmUzNWJjMTNiMmE5MjNmNzgxLi4yYjkzOTUwZjJkNWU5OWJmZDc4N2MwMzZlMTJhY2M1
OGEzZTBkZDQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
b2NvYS9HcmFwaGljc0NvbnRleHQzRENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dDNEQ29jb2EubW0KQEAgLTI3Nyw4ICsy
NzcsNiBAQCBHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QoR3JhcGhpY3NDb250
ZXh0M0RBdHRyaWJ1dGVzIGF0dHJzLCBIb3N0V2luZAogICAgICAgICByZXR1cm47CiAgICAgfQog
Ci0gICAgbV9pc0ZvcldlYkdMMiA9IGF0dHJzLmlzV2ViR0wyOwotCiAgICAgQ0dMU2V0Q3VycmVu
dENvbnRleHQobV9jb250ZXh0T2JqKTsKIAogICAgIC8vIFdlYkdMIDIgZXhwZWN0cyBFUyAzLW9u
bHkgUFJJTUlUSVZFX1JFU1RBUlRfRklYRURfSU5ERVggdG8gYmUgZW5hYmxlZDsgd2UgbXVzdCBl
bXVsYXRlIHRoaXMgb24gbm9uLUVTIDMgc3lzdGVtcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5j
cHAKaW5kZXggMTMxMTlmZmE3NWUxYzMwN2QwODM0YTdmZDdmYzlkZGVkNTI2NDNkZi4uYzBiNGI1
ZjJhNzUwMWE1ZTg3Zjg4YmM0Y2M1OWQ4ODM4OTA5YWZhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9w
ZW5HTC5jcHAKQEAgLTIzMCw2ICsyMzAsMTIgQEAgYm9vbCBFeHRlbnNpb25zM0RPcGVuR0w6OnN1
cHBvcnRzRXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgbmFtZSkKICNpZiBQTEFURk9STShJT1NfRkFN
SUxZKQogICAgIGlmIChuYW1lID09ICJHTF9FWFRfcGFja2VkX2RlcHRoX3N0ZW5jaWwiKQogICAg
ICAgICByZXR1cm4gbV9hdmFpbGFibGVFeHRlbnNpb25zLmNvbnRhaW5zKCJHTF9PRVNfcGFja2Vk
X2RlcHRoX3N0ZW5jaWwiKTsKKworICAgIGlmIChuYW1lID09ICJHTF9PRVNfY29tcHJlc3NlZF9F
VEMxX1JHQjhfdGV4dHVyZSIKKyAgICAgICAgfHwgbmFtZSA9PSAiR0xfQ0hST01JVU1fY29tcHJl
c3NlZF90ZXh0dXJlX2V0YyIpIHsKKyAgICAgICAgLy8gSW1wbGljaXRseSBlbmFibGVkIHdpdGgg
RVMgMy4wIGNvbnRleHRzLgorICAgICAgICByZXR1cm4gbV9jb250ZXh0LT5tX2lzRm9yV2ViR0wy
OworICAgIH0KICNlbmRpZgogCiAgICAgcmV0dXJuIG1fYXZhaWxhYmxlRXh0ZW5zaW9ucy5jb250
YWlucyhuYW1lKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380790</attachid>
            <date>2019-10-11 14:46:55 -0700</date>
            <delta_ts>2019-11-05 17:52:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197900-20191011144654.patch</filename>
            <type>text/plain</type>
            <size>46625</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUxMDI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTkxOGYzZWUxNTcyZjE2
ZmJmNmVjNTc5ZmRkYzI5MmY4YTk2MmFkZC4uZmMyMmRiNzI3ZjRiM2Y2ZTU2ODExNDcwZGJhMTNi
NmQyMDMxZTcwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDE5LTEwLTExICBLZW5u
ZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsZWFzZSBzdXBwb3J0
IFdFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMxIGV4dGVuc2lvbiAoYW5kIHBvc3NpYmx5IFdF
QkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMgdG9vKQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3OTAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQ292ZXJlZCBieSBXZWJHTCBjb25mb3JtYW5jZSB0ZXN0
IHN1aXRlLiBOb3QgeWV0IGVuYWJsZWQgb24gYW55IGN1cnJlbnQKKyAgICAgICAgV2ViS2l0IHBv
cnRzLCBob3dldmVyLgorCisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9N
Q29udmVydFdlYkdMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnZlcnRUb0pTVmFsdWUpOgor
ICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMMlJlbmRlcmluZ0NvbnRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6V2ViR0wyUmVuZGVyaW5nQ29udGV4dDo6Z2V0RXh0ZW5zaW9uKToKKyAgICAg
ICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcDogQWRkZWQuCisg
ICAgICAgIChXZWJDb3JlOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOjpXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEM6OmdldE5hbWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQzo6c3VwcG9ydGVkKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDLmg6IEFkZGVkLgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDMS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzE6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxKToKKyAgICAg
ICAgKFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOjpnZXROYW1lIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOjpzdXBwb3J0ZWQp
OgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmg6IEFk
ZGVkLgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlk
bDogQWRkZWQuCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xFeHRlbnNpb24uaDoKKyAgICAg
ICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRFeHRlbnNpb24pOgorICAgICAgICAqIGh0
bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6dmFsaWRhdGVWZXJ0ZXhBdHRyaWJ1dGVzKToK
KyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OmV4dGVuc2lvbklz
RW5hYmxlZCk6CisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFz
ZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dDNEQ29jb2EubW06Cisg
ICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RXh0ZW5zaW9uczNET3BlbkdMOjpzdXBwb3J0c0V4dGVuc2lv
bik6CisKIDIwMTktMTAtMTEgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0
Lm9yZz4KIAogICAgICAgICBPbmx5IHVzZSBDRk5ldHdvcmsgU1BJIGZvciBtZXRyaWNzIHdoZXJl
IG5lZWRlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjOTk1MTFiZDViODFiNjRlNjgyMGI3MDBj
ZTdkZTVkNzE1YjU3ZGQ0Li4yODdhNTQ5ZTA3MGRlNGJkNWJmZTcxZDU1ZmY5YWQzYzlmN2FkY2M5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTMwNyw2ICsxMzA3LDggQEAgaWYgKEVOQUJMRV9X
RUJHTCkKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xCdWZmZXIuY3BwCiAgICAgICAgIGh0bWwv
Y2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmNwcAogICAgICAgICBodG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmNwcAorICAgICAgICBodG1sL2NhbnZhcy9XZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcAorICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDMS5jcHAKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZVBWUlRDLmNwcAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0
dXJlUzNUQy5jcHAKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0RXZlbnQuY3BwCkBA
IC0xMzU2LDYgKzEzNTgsOCBAQCBpZiAoRU5BQkxFX1dFQkdMKQogICAgICAgICBodG1sL2NhbnZh
cy9XZWJHTEJ1ZmZlci5pZGwKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUFTVEMuaWRsCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVB
VEMuaWRsCisgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRs
CisgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbAogICAg
ICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaWRsCiAgICAgICAg
IGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmlkbAogICAgICAgICBodG1s
L2NhbnZhcy9XZWJHTENvbnRleHRBdHRyaWJ1dGVzLmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggOGU4NGU2ODcyOGVjMGUxM2YyMDEw
NGM1ZjI5ZDAzNDczNzgwODIxOS4uNzAyZGIzNDAzMWUxZTE4NTFmZTU4YzdlYmY3OTY1OGVmMDIx
OWY4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNm
aWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0CkBAIC04MTcsNiArODE3LDggQEAgJChQUk9KRUNUX0RJUikvaHRtbC9jYW52YXMvV2ViR0xB
Y3RpdmVJbmZvLmlkbAogJChQUk9KRUNUX0RJUikvaHRtbC9jYW52YXMvV2ViR0xCdWZmZXIuaWRs
CiAkKFBST0pFQ1RfRElSKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5p
ZGwKICQoUFJPSkVDVF9ESVIpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMu
aWRsCiskKFBST0pFQ1RfRElSKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
LmlkbAorJChQUk9KRUNUX0RJUikvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
QzEuaWRsCiAkKFBST0pFQ1RfRElSKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJl
UFZSVEMuaWRsCiAkKFBST0pFQ1RfRElSKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0
dXJlUzNUQy5pZGwKICQoUFJPSkVDVF9ESVIpL2h0bWwvY2FudmFzL1dlYkdMQ29udGV4dEF0dHJp
YnV0ZXMuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRw
dXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2Zp
bGVsaXN0CmluZGV4IDk1MWRkZjNhNGQ1MDNmNmYyNzBlZmRhOGMzOTA1YWRmNDhlN2ZhZDYuLjll
NTg5OTFmZWNkZTkyNjQ5Mjk1YjNhNWJjOTkyMGM0YjJkOTZmZGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CkBAIC0xOTEzLDYgKzE5MTMs
MTAgQEAgJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJH
TENvbXByZXNzZWRUZXh0dXJlQVNUQy5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVk
U291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuaAogJChCVUlMVF9Q
Uk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0
dXJlQVRDLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAKKyQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQy5oCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIp
L0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oCiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVQVlJUQy5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmgKICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMz
VEMuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCBmNTg3Y2IzMmFjZmNiMDI4
NmFiOTgxYjZmYjlmNmU2NmQ3NzcyMzkwLi4yNTZkYjMzNmUxM2I2NzY3MjIyOTU4M2FhOTVhNGNl
NjVkN2I4MDgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTgxOSw2ICs4MTks
OCBAQCBKU19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9XZWJH
TEJ1ZmZlci5pZGwgXAogICAgICQoV2ViQ29yZSkvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUFTVEMuaWRsIFwKICAgICAkKFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVBVEMuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9X
ZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaWRsIFwKICAgICAkKFdlYkNvcmUpL2h0bWwvY2Fu
dmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1s
L2NhbnZhcy9XZWJHTENvbnRleHRBdHRyaWJ1dGVzLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGFl
MjU3NjU0MzU5YWZhOWJjNDM2NGNkY2E3NGJmMjJhMzMwMmQzZWEuLjMxOTQyOGNiYWQ2ZTIxYWQ4
ZGVjNzQ4Y2U1NWUxMDkzNGE5YjgyY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJj
ZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0xMjc2LDYgKzEyNzYs
OCBAQCBodG1sL2NhbnZhcy9XZWJHTDJSZW5kZXJpbmdDb250ZXh0LmNwcAogaHRtbC9jYW52YXMv
V2ViR0xCdWZmZXIuY3BwCiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5j
cHAKIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuY3BwCitodG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcAoraHRtbC9jYW52YXMvV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQzEuY3BwCiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUFZS
VEMuY3BwCiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5jcHAKIGh0bWwv
Y2FudmFzL1dlYkdMQ29udGV4dEV2ZW50LmNwcApAQCAtMzUzMSw2ICszNTMzLDggQEAgSlNXZWJH
TEFjdGl2ZUluZm8uY3BwCiBKU1dlYkdMQnVmZmVyLmNwcAogSlNXZWJHTENvbXByZXNzZWRUZXh0
dXJlQVNUQy5jcHAKIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5jcHAKK0pTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQy5jcHAKK0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwCiBK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5jcHAKIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZVMzVEMuY3BwCiBKU1dlYkdMQ29udGV4dEF0dHJpYnV0ZXMuY3BwCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNDk1NTQwNGM4ODlh
ZGNiNDg3OGE2OGRlNmFlZGZhYzk5ZDhjNmFlYy4uYzdiZGFmY2NmMzk1ZmIwZjY5ZTAzODFjMDcw
MDFhOGQwOTQ3OGNjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTk4MCw4ICsxOTgwLDExIEBACiAJCTZDNEM5NkRGMUFENDQ4
MzUwMDM2NTY3MiAvKiBKU1JlYWRhYmxlU3RyZWFtQllPQlJlcXVlc3QuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZDNEM5NkRCMUFENDQ4MzUwMDM2NTY3
MiAvKiBKU1JlYWRhYmxlU3RyZWFtQllPQlJlcXVlc3QuaCAqLzsgfTsKIAkJNkM0Qzk2REYxQUQ0
NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkM0Qzk2REIxQUQ0NDgz
NTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTZDNjM4ODk1QTk2Q0NF
RTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2QzYzODg5M0E5NkNDRUU1MEM4
Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTZFMEI5MDY5MjMyMUE2OEQwMDYy
MjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUwQjkwNjUyMzIxQTY4QzAwNjIyM0IyIC8qIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmggKi87IH07CiAJCTZFMEU1NjlDMTgzQkZGRTYwMEUw
RThENSAvKiBGbG9hdFJvdW5kZWRSZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA2RTBFNTY5QTE4M0JGRkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVk
UmVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTZFMjFDNkMwMTEyNjMzODUwMEE3QkUwMiAvKiBHcmFwaGljc0NvbnRleHQzRC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTIxQzZCRjExMjYzMzg1
MDBBN0JFMDIgLyogR3JhcGhpY3NDb250ZXh0M0QuY3BwICovOyB9OworCQk2RTI0MkIyQjIzMzU5
NDA1MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUyNDJCMkEyMzM1OTNEODAwMkNB
REQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCAqLzsgfTsKKwkJNkUyNDJCMkMy
MzM1OTQwOTAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUyNDJCMjgyMzM1OTNENzAw
MkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oICovOyB9OwogCQk2RTNGQUQz
OTE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUzRkFEMzcxNDczM0Y0
MDAwRTQyMzA2IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCAqLzsgfTsKIAkJNkUz
RkFEMzkxNDczM0Y0MDAwRTQyMzA3IC8qIEpTV2ViR0xEZXB0aFRleHR1cmUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFM0ZBRDM3MTQ3MzNGNDAwMEU0
MjMwNyAvKiBKU1dlYkdMRGVwdGhUZXh0dXJlLmggKi87IH07CiAJCTZFM0ZBRDM5MTQ3MzNGNDAx
MUU0MjMwNyAvKiBKU1dlYkdMRGVidWdSZW5kZXJlckluZm8uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFM0ZBRDM3MTQ3MzNGNDAxMUU0MjMwNyAvKiBK
U1dlYkdMRGVidWdSZW5kZXJlckluZm8uaCAqLzsgfTsKQEAgLTE5OTksNiArMjAwMiw3IEBACiAJ
CTZFNzJGNTUwMjI5RENEMTcwMEIzRTE1MSAvKiBFeHRlbnNpb25zM0RBTkdMRS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUyN0YyNDQyMjlDOUY4RDAw
RjFGNjMyIC8qIEV4dGVuc2lvbnMzREFOR0xFLmggKi87IH07CiAJCTZFNzJGNTUxMjI5RENEMUEw
MEIzRTE1MSAvKiBUZW1wb3JhcnlBTkdMRVNldHRpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFMjkwODYzMjI5REI5NzAwMDA5ODZFMiAvKiBUZW1w
b3JhcnlBTkdMRVNldHRpbmcuaCAqLzsgfTsKIAkJNkU4NEU5RTExNzY2OEJGMTAwODE1QjY4IC8q
IFJhc3RlclNoYXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA2RTg0RTlERjE3NjY4QkFEMDA4MTVCNjggLyogUmFzdGVyU2hhcGUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RThBQ0RFRDIzMzQ1Q0JD
MDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkU4QUNERUIyMzM0NUNBRjAwMjRBQUY1IC8q
IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAqLzsgfTsKIAkJNkVCRjBFNDkxMkE4OTI2MTAw
REIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNkVCRjBFNDYxMkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVG
bG9hdC5oICovOyB9OwogCQk2RUJGMEU1NTEyQTg5Mjk4MDBEQjE3MDkgLyogV2ViR0xFeHRlbnNp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFQkYw
RTUzMTJBODkyOTgwMERCMTcwOSAvKiBXZWJHTEV4dGVuc2lvbi5oICovOyB9OwogCQk2RUJGMEU3
NzEyQTk4Njg4MDBEQjE3MDkgLyogSlNPRVNUZXh0dXJlRmxvYXQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFQkYwRTc1MTJBOTg2ODgwMERCMTcwOSAv
KiBKU09FU1RleHR1cmVGbG9hdC5oICovOyB9OwpAQCAtOTEyOSwxMCArOTEzMywxNyBAQAogCQk2
QzRDOTZEQjFBRDQ0ODM1MDAzNjVBNTAgLyogSlNSZWFkYWJsZVN0cmVhbURlZmF1bHRDb250cm9s
bGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUmVhZGFibGVTdHJlYW1E
ZWZhdWx0Q29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2QzYzODg5
M0E5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5p
dGlhdG9ycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2QzYzODg5NEE5NkNDRUU1
MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlh
dG9ycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMEI5MDY1MjMyMUE2OEMw
MDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk2RTBCOTA2NzIzMjFBNjhDMDA2MjIzQjIgLyogV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQzEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUwQjkw
NjgyMzIxQTY4RDAwNjIyM0IyIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMxLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUwRTU2OTkxODNCRkZFNjAw
RTBFOEQ1IC8qIEZsb2F0Um91bmRlZFJlY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gRmxvYXRSb3VuZGVkUmVjdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTZFMEU1NjlBMTgzQkZGRTYwMEUwRThENSAvKiBGbG9hdFJvdW5kZWRSZWN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZsb2F0Um91bmRlZFJlY3QuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUyMUM2QkYxMTI2MzM4NTAwQTdCRTAyIC8qIEdyYXBo
aWNzQ29udGV4dDNELmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdy
YXBoaWNzQ29udGV4dDNELmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUyMUM2
QzExMTI2MzM5OTAwQTdCRTAyIC8qIEdyYXBoaWNzQ29udGV4dDNEQ0cuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0M0RDRy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMjQyQjI2MjMzNTkzRDcwMDJDQURENCAvKiBKU1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDLmNwcDsgcGF0aCA9IC4uLy4uLy4uLy4uLy4uLy4uL1dlYktpdEJ1
aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUyNDJCMjgyMzM1OTNENzAw
MkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaDsgcGF0aCA9IC4uLy4uLy4uLy4uLy4uLy4uL1dl
YktpdEJ1aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMjQyQjI5MjMzNTkz
RDcwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwOyBwYXRoID0gLi4vLi4v
Li4vLi4vLi4vLi4vV2ViS2l0QnVpbGQvRGVidWcvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNkUyNDJCMkEyMzM1OTNEODAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
QzEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oOyBwYXRo
ID0gLi4vLi4vLi4vLi4vLi4vLi4vV2ViS2l0QnVpbGQvRGVidWcvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTZFMjdGMjQyMjI5OENFNEIwMEYxRjYzMiAvKiBHcmFwaGljc0NvbnRleHQzREFO
R0xFLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyYXBoaWNzQ29u
dGV4dDNEQU5HTEUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTI3RjI0MzIy
OUM5Rjg0MDBGMUY2MzIgLyogRXh0ZW5zaW9uczNEQU5HTEUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRXh0ZW5zaW9uczNEQU5HTEUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk2RTI3RjI0NDIyOUM5RjhEMDBGMUY2MzIgLyogRXh0ZW5zaW9uczNE
QU5HTEUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXh0ZW5zaW9uczNEQU5H
TEUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTkxNjIsNiArOTE3Myw5IEBACiAJ
CTZFNjdEMkE4MTI4MEU4QkQwMDg3NThGNyAvKiBFeHRlbnNpb25zM0QuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRXh0ZW5zaW9uczNELmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTZFODRFOURFMTc2NjhCQUQwMDgxNUI2OCAvKiBSYXN0ZXJTaGFwZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSYXN0ZXJTaGFwZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFODRFOURGMTc2NjhCQUQwMDgxNUI2OCAvKiBSYXN0
ZXJTaGFwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSYXN0ZXJTaGFwZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RThBQ0RFOTIzMzQ1Q0FGMDAyNEFBRjUg
LyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NkU4QUNERUIyMzM0NUNBRjAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk2RThBQ0RFQzIzMzQ1Q0IwMDAyNEFBRjUgLyogV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFQkYwRTQ1MTJBODkyNjEwMERCMTcwOSAvKiBP
RVNUZXh0dXJlRmxvYXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
T0VTVGV4dHVyZUZsb2F0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkVCRjBF
NDYxMkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBPRVNUZXh0dXJlRmxvYXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNkVCRjBFNDcxMkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gT0VTVGV4dHVyZUZsb2F0LmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTE4MzE4LDYgKzE4MzMyLDEyIEBACiAJCQkJN0U2NkUyMzExNkQ2
RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuY3BwICovLAogCQkJCTdF
NjZFMjMyMTZENkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmggKi8s
CiAJCQkJN0VBMzBGNjIxNkRGRDYyNzAwMjU3RDBCIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVB
VEMuaWRsICovLAorCQkJCTZFOEFDREU5MjMzNDVDQUYwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDLmNwcCAqLywKKwkJCQk2RThBQ0RFQjIzMzQ1Q0FGMDAyNEFBRjUgLyogV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oICovLAorCQkJCTZFOEFDREVDMjMzNDVDQjAwMDI0QUFG
NSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbCAqLywKKwkJCQk2RTBCOTA2ODIzMjFB
NjhEMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwICovLAorCQkJCTZF
MEI5MDY1MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oICov
LAorCQkJCTZFMEI5MDY3MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDMS5pZGwgKi8sCiAJCQkJN0U2NkUyMzExN0U2RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVQVlJUQy5jcHAgKi8sCiAJCQkJN0U2NkUyMzIxN0U2RUI2QzAwRjdFN0ZGIC8q
IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oICovLAogCQkJCTdFQTMwRjYyMTdFRkQ2Mjcw
MDI1N0QwQiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaWRsICovLApAQCAtMjMxMTAs
NiArMjMxMzAsMTAgQEAKIAkJCQk0OUM3Qjk4MTEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTEJ1
ZmZlci5oICovLAogCQkJCTdFQTMwRjY3MTZERkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVBVEMuY3BwICovLAogCQkJCTdFQTMwRjY4MTZERkZFNzUwMDI1N0QwQiAvKiBK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCAqLywKKwkJCQk2RTI0MkIyNjIzMzU5M0Q3MDAy
Q0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcCAqLywKKwkJCQk2RTI0MkIy
ODIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmggKi8sCisJ
CQkJNkUyNDJCMjkyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
QzEuY3BwICovLAorCQkJCTZFMjQyQjJBMjMzNTkzRDgwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxLmggKi8sCiAJCQkJN0VBMzBGNjcxN0VGRkU3NTAwMjU3RDBCIC8qIEpT
V2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmNwcCAqLywKIAkJCQk3RUEzMEY2ODE3RUZGRTc1
MDAyNTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaCAqLywKIAkJCQk2RTNG
QUQzNjE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5jcHAg
Ki8sCkBAIC0zMDcyNSw2ICszMDc0OSw4IEBACiAJCQkJQTdEMjBGNjMxMDdGNDA2OTAwQTgwMzky
IC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OUM3Qjk5NDEwNDJE
MkQzMDAwOUQ0NDcgLyogSlNXZWJHTEJ1ZmZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0VBMzBG
NkExNkRGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNkUyNDJCMkMyMzM1OTQwOTAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkUyNDJCMkIyMzM1OTQwNTAwMkNB
REQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTdFQTMwRjZBMTdFRkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJU
Qy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNkUzRkFEMzkxNDczM0Y0MDAwRTQyMzA2IC8qIEpTV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCBpbiBIZWFkZXJzICovLAogCQkJCTZFRThBNzczMTBG
ODAzRjMwMDVBNEEyNCAvKiBKU1dlYkdMQ29udGV4dEF0dHJpYnV0ZXMuaCBpbiBIZWFkZXJzICov
LApAQCAtMzI0MzksNiArMzI0NjUsOCBAQAogCQkJCTQ5QzdCOUM5MTA0MkQzMkYwMDA5RDQ0NyAv
KiBXZWJHTEJ1ZmZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRDA4QjAwRTQyMEEyODI1OTAwMDRC
QzBBIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmggaW4gSGVhZGVycyAqLywKIAkJCQk3
RTY2RTIzNDE2RDZFQjZDMDBGN0U3RkYgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNkU4QUNERUQyMzM0NUNCQzAwMjRBQUY1IC8qIFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMuaCBpbiBIZWFkZXJzICovLAorCQkJCTZFMEI5MDY5MjMyMUE2OEQwMDYy
MjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
N0U2NkUyMzQxN0U2RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNkUzRkFFOEYxNDczM0ZEQjAwRTQyMzA2IC8qIFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVTM1RDLmggaW4gSGVhZGVycyAqLywKIAkJCQk2RTRFOTFBRjEwRjdGQjMx
MDBBMjc3OUMgLyogV2ViR0xDb250ZXh0QXR0cmlidXRlcy5oIGluIEhlYWRlcnMgKi8sCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRXZWJHTC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRXZWJHTC5jcHAKaW5kZXgg
NDAyMzk0ZDZhOGYzOTQwMzI1MThiYmZkZjdiNTYzNGYwNzA0YjZjYS4uZGE5MjlkY2ZjNWVlYjMz
MjA5MTk0YTllOWZlYWE5NWRmNmExNTg2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01Db252ZXJ0V2ViR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NQ29udmVydFdlYkdMLmNwcApAQCAtNDUsNiArNDUsOCBAQAogI2luY2x1ZGUg
IkpTV2ViR0xCdWZmZXIuaCIKICNpbmNsdWRlICJKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RD
LmgiCiAjaW5jbHVkZSAiSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmgiCisjaW5jbHVkZSAi
SlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgiCisjaW5jbHVkZSAiSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5oIgogI2luY2x1ZGUgIkpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRD
LmgiCiAjaW5jbHVkZSAiSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5oIgogI2luY2x1ZGUg
IkpTV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5oIgpAQCAtMTc2LDYgKzE3OCwxMCBAQCBKU1ZhbHVl
IGNvbnZlcnRUb0pTVmFsdWUoRXhlY1N0YXRlJiBzdGF0ZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgV2ViRwogICAgICAgICByZXR1cm4gdG9KUygmc3RhdGUsICZnbG9iYWxPYmpl
Y3QsIHN0YXRpY19jYXN0PFdlYkdMRGVidWdTaGFkZXJzJj4oZXh0ZW5zaW9uKSk7CiAgICAgY2Fz
ZSBXZWJHTEV4dGVuc2lvbjo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQ05hbWU6CiAgICAgICAg
IHJldHVybiB0b0pTKCZzdGF0ZSwgJmdsb2JhbE9iamVjdCwgc3RhdGljX2Nhc3Q8V2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFUQyY+KGV4dGVuc2lvbikpOworICAgIGNhc2UgV2ViR0xFeHRlbnNpb246
OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVENOYW1lOgorICAgICAgICByZXR1cm4gdG9KUygmc3Rh
dGUsICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMm
PihleHRlbnNpb24pKTsKKyAgICBjYXNlIFdlYkdMRXh0ZW5zaW9uOjpXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDMU5hbWU6CisgICAgICAgIHJldHVybiB0b0pTKCZzdGF0ZSwgJmdsb2JhbE9iamVj
dCwgc3RhdGljX2Nhc3Q8V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEmPihleHRlbnNpb24pKTsK
ICAgICBjYXNlIFdlYkdMRXh0ZW5zaW9uOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVENOYW1l
OgogICAgICAgICByZXR1cm4gdG9KUygmc3RhdGUsICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0
PFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQyY+KGV4dGVuc2lvbikpOwogICAgIGNhc2UgV2Vi
R0xFeHRlbnNpb246OldlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDTmFtZToKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMMlJlbmRlcmluZ0NvbnRleHQuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKaW5k
ZXggY2Q0NzIxMjYxYjJlMDIyYjU1MjVkZDNkM2NhNTQ2OWY5YzBiM2VhOS4uM2EyZjdjZTZhZDg2
NTFkZDEzNzVhNThkMTVhZTk2MWI0ZDU3ZDJmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKQEAgLTQ1LDYgKzQ1LDgg
QEAKICNpbmNsdWRlICJXZWJHTEFjdGl2ZUluZm8uaCIKICNpbmNsdWRlICJXZWJHTENvbXByZXNz
ZWRUZXh0dXJlQVNUQy5oIgogI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCIK
KyNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgiCisjaW5jbHVkZSAiV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzEuaCIKICNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJl
UFZSVEMuaCIKICNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5oIgogI2luY2x1
ZGUgIldlYkdMRGVidWdSZW5kZXJlckluZm8uaCIKQEAgLTEzNzMsMTAgKzEzNzUsMTIgQEAgV2Vi
R0xFeHRlbnNpb24qIFdlYkdMMlJlbmRlcmluZ0NvbnRleHQ6OmdldEV4dGVuc2lvbihjb25zdCBT
dHJpbmcmIG5hbWUpCiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChPRVNUZXh0dXJlSGFsZkZsb2F0
LCBtX29lc1RleHR1cmVIYWxmRmxvYXQsICJPRVNfdGV4dHVyZV9oYWxmX2Zsb2F0IiwgZW5hYmxl
U3VwcG9ydGVkRXh0ZW5zaW9uKCJHTF9PRVNfdGV4dHVyZV9oYWxmX2Zsb2F0Il9zKSk7CiAgICAg
RU5BQkxFX0lGX1JFUVVFU1RFRChPRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLCBtX29lc1RleHR1
cmVIYWxmRmxvYXRMaW5lYXIsICJPRVNfdGV4dHVyZV9oYWxmX2Zsb2F0X2xpbmVhciIsIGVuYWJs
ZVN1cHBvcnRlZEV4dGVuc2lvbigiR0xfT0VTX3RleHR1cmVfaGFsZl9mbG9hdF9saW5lYXIiX3Mp
KTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMTG9zZUNvbnRleHQsIG1fd2ViZ2xMb3Nl
Q29udGV4dCwgIldFQkdMX2xvc2VfY29udGV4dCIsIHRydWUpOworICAgIEVOQUJMRV9JRl9SRVFV
RVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVy
ZUFTVEMsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfYXN0YyIsIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVBU1RDOjpzdXBwb3J0ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVBVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFUQywgIldF
QktJVF9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfYXRjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUFUQzo6c3VwcG9ydGVkKCp0aGlzKSk7CisgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDLCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVFVEMsICJXRUJHTF9j
b21wcmVzc2VkX3RleHR1cmVfZXRjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6c3VwcG9y
dGVkKCp0aGlzKSk7CisgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDMSwgbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlRVRDMSwgIldFQkdMX2NvbXByZXNzZWRf
dGV4dHVyZV9ldGMxIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OnN1cHBvcnRlZCgqdGhp
cykpOwogICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRD
LCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVQVlJUQywgIldFQktJVF9XRUJHTF9jb21wcmVzc2Vk
X3RleHR1cmVfcHZydGMiLCBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEM6OnN1cHBvcnRlZCgq
dGhpcykpOwogICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMz
VEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZVMzVEMsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1
cmVfczN0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDOjpzdXBwb3J0ZWQoKnRoaXMpKTsK
LSAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLCBtX3dl
YmdsQ29tcHJlc3NlZFRleHR1cmVBU1RDLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2FzdGMi
LCBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzo6c3VwcG9ydGVkKCp0aGlzKSk7CiAgICAgRU5B
QkxFX0lGX1JFUVVFU1RFRChXZWJHTERlcHRoVGV4dHVyZSwgbV93ZWJnbERlcHRoVGV4dHVyZSwg
IldFQkdMX2RlcHRoX3RleHR1cmUiLCBXZWJHTERlcHRoVGV4dHVyZTo6c3VwcG9ydGVkKCpncmFw
aGljc0NvbnRleHQzRCgpKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTERlYnVnUmVu
ZGVyZXJJbmZvLCBtX3dlYmdsRGVidWdSZW5kZXJlckluZm8sICJXRUJHTF9kZWJ1Z19yZW5kZXJl
cl9pbmZvIiwgdHJ1ZSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTERlYnVnU2hhZGVy
cywgbV93ZWJnbERlYnVnU2hhZGVycywgIldFQkdMX2RlYnVnX3NoYWRlcnMiLCBtX2NvbnRleHQt
PmdldEV4dGVuc2lvbnMoKS5zdXBwb3J0cygiR0xfQU5HTEVfdHJhbnNsYXRlZF9zaGFkZXJfc291
cmNlIl9zKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY0Yzk0YTZkNjNmNDliMjY2ODFk
YTM1NzYyNWJjYmQ1MWQxYmM3NjQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcApAQCAtMCwwICsxLDY3IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShXRUJHTCkK
KyNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgiCisKKyNpbmNsdWRlICJFeHRl
bnNpb25zM0QuaCIKKyNpbmNsdWRlICJXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgiCisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6V2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQyhXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlJiBjb250ZXh0KQorICAg
IDogV2ViR0xFeHRlbnNpb24oY29udGV4dCkKK3sKKyAgICBjb250ZXh0LmdyYXBoaWNzQ29udGV4
dDNEKCktPmdldEV4dGVuc2lvbnMoKS5lbnN1cmVFbmFibGVkKCJHTF9BTkdMRV9jb21wcmVzc2Vk
X3RleHR1cmVfZXRjIik7CisKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0
KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SMTFfRUFDKTsKKyAgICBjb250ZXh0LmFkZENvbXBy
ZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TSUdORURfUjExX0VB
Qyk7CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6
OkNPTVBSRVNTRURfUkcxMV9FQUMpOworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVG
b3JtYXQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9SRzExX0VBQyk7CisgICAgY29u
dGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURf
UkdCOF9FVEMyKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVu
c2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9FVEMyKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNz
ZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0I4X1BVTkNIVEhST1VH
SF9BTFBIQTFfRVRDMik7CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChF
eHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMyKTsK
KyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09N
UFJFU1NFRF9SR0JBOF9FVEMyX0VBQyk7CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVy
ZUZvcm1hdChFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0VUQzJfRUFDKTsK
K30KKworV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6fldlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMoKSA9IGRlZmF1bHQ7CisKK1dlYkdMRXh0ZW5zaW9uOjpFeHRlbnNpb25OYW1lIFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEM6OmdldE5hbWUoKSBjb25zdAoreworICAgIHJldHVybiBXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDTmFtZTsKK30KKworYm9vbCBXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDOjpzdXBwb3J0ZWQoV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZSYgY29udGV4dCkKK3sKKyAg
ICByZXR1cm4gY29udGV4dC5ncmFwaGljc0NvbnRleHQzRCgpLT5nZXRFeHRlbnNpb25zKCkuc3Vw
cG9ydHMoIkdMX0FOR0xFX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMiKTsKK30KKworfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjdhMzM4YWRhMjZlYjkyNGNjYWExMDI1Yjg3OGJhM2Q5MjNkZjhhNDYKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDLmgKQEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2lmIEVOQUJMRShXRUJHTCkKKworI2luY2x1ZGUgIldlYkdMRXh0ZW5zaW9uLmgiCisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQyBmaW5hbCA6
IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CitwdWJsaWM6CisgICAgZXhwbGljaXQgV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQyhXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlJik7CisgICAgdmlydHVh
bCB+V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQygpOworCisgICAgc3RhdGljIGJvb2wgc3VwcG9y
dGVkKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAgICBFeHRlbnNpb25OYW1lIGdldE5h
bWUoKSBjb25zdCBvdmVycmlkZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5NTNmYWEzYjczODljYzY1ZDZlMDlkNDMz
Mzc5ZGJkMTE2YzU4NzMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbApAQCAtMCwwICsxLDQ1IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKy8vIGh0dHBzOi8vd3d3Lmtocm9ub3Mub3JnL3JlZ2lzdHJ5L3dlYmdsL2V4dGVu
c2lvbnMvV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0Yy8KKworWworICAgIENvbmRpdGlvbmFs
PVdFQkdMLAorICAgIERvTm90Q2hlY2tDb25zdGFudHMsCisgICAgR2VuZXJhdGVJc1JlYWNoYWJs
ZT1JbXBsV2ViR0xSZW5kZXJpbmdDb250ZXh0LAorICAgIE5vSW50ZXJmYWNlT2JqZWN0LAorXSBp
bnRlcmZhY2UgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQyB7CisgICAgLyogQ29tcHJlc3NlZCBU
ZXh0dXJlIEZvcm1hdCAqLworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9SMTFf
RUFDICAgICAgICAgICAgICAgICAgICAgICAgPSAweDkyNzA7CisgICAgY29uc3QgdW5zaWduZWQg
bG9uZyBDT01QUkVTU0VEX1NJR05FRF9SMTFfRUFDICAgICAgICAgICAgICAgICA9IDB4OTI3MTsK
KyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfUkcxMV9FQUMgICAgICAgICAgICAg
ICAgICAgICAgID0gMHg5MjcyOworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9T
SUdORURfUkcxMV9FQUMgICAgICAgICAgICAgICAgPSAweDkyNzM7CisgICAgY29uc3QgdW5zaWdu
ZWQgbG9uZyBDT01QUkVTU0VEX1JHQjhfRVRDMiAgICAgICAgICAgICAgICAgICAgICA9IDB4OTI3
NDsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfU1JHQjhfRVRDMiAgICAgICAg
ICAgICAgICAgICAgID0gMHg5Mjc1OworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NF
RF9SR0I4X1BVTkNIVEhST1VHSF9BTFBIQTFfRVRDMiAgPSAweDkyNzY7CisgICAgY29uc3QgdW5z
aWduZWQgbG9uZyBDT01QUkVTU0VEX1NSR0I4X1BVTkNIVEhST1VHSF9BTFBIQTFfRVRDMiA9IDB4
OTI3NzsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfUkdCQThfRVRDMl9FQUMg
ICAgICAgICAgICAgICAgID0gMHg5Mjc4OworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJF
U1NFRF9TUkdCOF9BTFBIQThfRVRDMl9FQUMgICAgICAgICAgPSAweDkyNzk7Cit9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
QzEuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkYzNiZWUwYTg3NmFjZjY5ODFiMDA0OGM2NzUwM2QzYzRj
ZmJjZTYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAKQEAgLTAsMCArMSw1OCBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAxOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoV0VCR0wpCisjaW5jbHVkZSAiV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCIKKworI2luY2x1ZGUgIkV4dGVuc2lvbnMzRC5oIgor
I2luY2x1ZGUgIldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaCIKKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6V2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEoV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZSYgY29udGV4dCkKKyAgICA6IFdlYkdMRXh0
ZW5zaW9uKGNvbnRleHQpCit7CisgICAgY29udGV4dC5ncmFwaGljc0NvbnRleHQzRCgpLT5nZXRF
eHRlbnNpb25zKCkuZW5zdXJlRW5hYmxlZCgiR0xfT0VTX2NvbXByZXNzZWRfRVRDMV9SR0I4X3Rl
eHR1cmUiKTsKKworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5z
aW9uczNEOjpFVEMxX1JHQjhfT0VTKTsKK30KKworV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6
On5XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMSgpID0gZGVmYXVsdDsKKworV2ViR0xFeHRlbnNp
b246OkV4dGVuc2lvbk5hbWUgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OmdldE5hbWUoKSBj
b25zdAoreworICAgIHJldHVybiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMU5hbWU7Cit9CisK
K2Jvb2wgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OnN1cHBvcnRlZChXZWJHTFJlbmRlcmlu
Z0NvbnRleHRCYXNlJiBjb250ZXh0KQoreworICAgIHJldHVybiBjb250ZXh0LmdyYXBoaWNzQ29u
dGV4dDNEKCktPmdldEV4dGVuc2lvbnMoKS5zdXBwb3J0cygiR0xfT0VTX2NvbXByZXNzZWRfRVRD
MV9SR0I4X3RleHR1cmUiKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYg
Ly8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFz
L1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGY3NmE0ODBjM2Q2YjVi
NjVhZDJhYWM5MzA4YmFhZjdiZjA2NzBmZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgKQEAgLTAsMCArMSw0
NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJHTCkKKwor
I2luY2x1ZGUgIldlYkdMRXh0ZW5zaW9uLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xh
c3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEgZmluYWwgOiBwdWJsaWMgV2ViR0xFeHRlbnNp
b24geworcHVibGljOgorICAgIGV4cGxpY2l0IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxKFdl
YkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAgICB2aXJ0dWFsIH5XZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDMSgpOworCisgICAgc3RhdGljIGJvb2wgc3VwcG9ydGVkKFdlYkdMUmVuZGVyaW5n
Q29udGV4dEJhc2UmKTsKKyAgICBFeHRlbnNpb25OYW1lIGdldE5hbWUoKSBjb25zdCBvdmVycmlk
ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZjNjM2M2NWQ0Y2M3ZmY1YjVkOGEyM2ZmZTg5NjJmMDE4MDYzMzE3Ywot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxLmlkbApAQCAtMCwwICsxLDM2IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKy8vIGh0
dHBzOi8vd3d3Lmtocm9ub3Mub3JnL3JlZ2lzdHJ5L3dlYmdsL2V4dGVuc2lvbnMvV0VCR0xfY29t
cHJlc3NlZF90ZXh0dXJlX2V0YzEvCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJHTCwKKyAgICBE
b05vdENoZWNrQ29uc3RhbnRzLAorICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbFdlYkdMUmVu
ZGVyaW5nQ29udGV4dCwKKyAgICBOb0ludGVyZmFjZU9iamVjdCwKK10gaW50ZXJmYWNlIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMxIHsKKyAgICAvKiBDb21wcmVzc2VkIFRleHR1cmUgRm9ybWF0
cyAqLworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9SR0JfRVRDMV9XRUJHTCA9
IDB4OEQ2NDsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TEV4dGVuc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xFeHRlbnNpb24u
aAppbmRleCAyYTFhMzRjYTdmNDZkNDFiZDhkN2IyNDJkZDU4MWVmOGY4ZjYxNjExLi4wMmExZTgx
ZDVhYzE4MGI0ZDc0NmRhN2IzZjliZmZjNTQ0NjQ2NDgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL2NhbnZhcy9XZWJHTEV4dGVuc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMRXh0ZW5zaW9uLmgKQEAgLTU1LDYgKzU1LDggQEAgcHVibGljOgogICAg
ICAgICBXZWJHTERyYXdCdWZmZXJzTmFtZSwKICAgICAgICAgT0VTRWxlbWVudEluZGV4VWludE5h
bWUsCiAgICAgICAgIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVENOYW1lLAorICAgICAgICBXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDTmFtZSwKKyAgICAgICAgV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzFOYW1lLAogICAgICAgICBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVENOYW1lLAogICAg
ICAgICBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQ05hbWUsCiAgICAgICAgIEFOR0xFSW5zdGFu
Y2VkQXJyYXlzTmFtZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dl
YkdMUmVuZGVyaW5nQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHQuY3BwCmluZGV4IGU1ZmRlNzAzMzc0NTZhMzFlMTU3MWVlMTBmM2Zk
MjY0MmRiMDM2YjkuLmVhZDBlMmNmY2FhNTE4MGU2ODE1NDdiZTllM2NjYWQ4M2E2NDk1OTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250
ZXh0LmNwcApAQCAtNTEsNiArNTEsOCBAQAogI2luY2x1ZGUgIlJlbmRlckJveC5oIgogI2luY2x1
ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmgiCiAjaW5jbHVkZSAiV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUFUQy5oIgorI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCIK
KyNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oIgogI2luY2x1ZGUgIldlYkdM
Q29tcHJlc3NlZFRleHR1cmVQVlJUQy5oIgogI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1
cmVTM1RDLmgiCiAjaW5jbHVkZSAiV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5oIgpAQCAtMTQ4LDEw
ICsxNTAsMTIgQEAgV2ViR0xFeHRlbnNpb24qIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6Z2V0RXh0
ZW5zaW9uKGNvbnN0IFN0cmluZyYgbmFtZSkKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKE9FU1Zl
cnRleEFycmF5T2JqZWN0LCBtX29lc1ZlcnRleEFycmF5T2JqZWN0LCAiT0VTX3ZlcnRleF9hcnJh
eV9vYmplY3QiLCBlbmFibGVTdXBwb3J0ZWRFeHRlbnNpb24oIkdMX09FU192ZXJ0ZXhfYXJyYXlf
b2JqZWN0Il9zKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChPRVNFbGVtZW50SW5kZXhVaW50
LCBtX29lc0VsZW1lbnRJbmRleFVpbnQsICJPRVNfZWxlbWVudF9pbmRleF91aW50IiwgZW5hYmxl
U3VwcG9ydGVkRXh0ZW5zaW9uKCJHTF9PRVNfZWxlbWVudF9pbmRleF91aW50Il9zKSk7CiAgICAg
RU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTExvc2VDb250ZXh0LCBtX3dlYmdsTG9zZUNvbnRleHQs
ICJXRUJHTF9sb3NlX2NvbnRleHQiLCB0cnVlKTsKKyAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVBU1RDLCAi
V0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2FzdGMiLCBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNU
Qzo6c3VwcG9ydGVkKCp0aGlzKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlQVRDLCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVBVEMsICJXRUJLSVRfV0VC
R0xfY29tcHJlc3NlZF90ZXh0dXJlX2F0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEM6OnN1
cHBvcnRlZCgqdGhpcykpOworICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQywgbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlRVRDLCAiV0VCR0xfY29tcHJlc3Nl
ZF90ZXh0dXJlX2V0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRlZCgqdGhp
cykpOworICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEs
IG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUVUQzEsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVf
ZXRjMSIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOjpzdXBwb3J0ZWQoKnRoaXMpKTsKICAg
ICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQywgbV93ZWJn
bENvbXByZXNzZWRUZXh0dXJlUFZSVEMsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJl
X3B2cnRjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDOjpzdXBwb3J0ZWQoKnRoaXMpKTsK
ICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLCBtX3dl
YmdsQ29tcHJlc3NlZFRleHR1cmVTM1RDLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3MzdGMi
LCBXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQzo6c3VwcG9ydGVkKCp0aGlzKSk7Ci0gICAgRU5B
QkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQywgbV93ZWJnbENvbXBy
ZXNzZWRUZXh0dXJlQVNUQywgIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9hc3RjIiwgV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUFTVEM6OnN1cHBvcnRlZCgqdGhpcykpOwogICAgIEVOQUJMRV9JRl9S
RVFVRVNURUQoV2ViR0xEZXB0aFRleHR1cmUsIG1fd2ViZ2xEZXB0aFRleHR1cmUsICJXRUJHTF9k
ZXB0aF90ZXh0dXJlIiwgV2ViR0xEZXB0aFRleHR1cmU6OnN1cHBvcnRlZCgqbV9jb250ZXh0KSk7
CiAgICAgaWYgKGVxdWFsSWdub3JpbmdBU0NJSUNhc2UobmFtZSwgIldFQkdMX2RyYXdfYnVmZmVy
cyIpKSB7CiAgICAgICAgIGlmICghbV93ZWJnbERyYXdCdWZmZXJzKSB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3Bw
CmluZGV4IGRlNDdhZTc0ZDdkNTlkYjA5NWM0MzdjNGU5ZDU5NzdhODZkZGUwODYuLjdmNGQ4ODBm
YjhhNDk2MTgzMGZlMGVmNWRlMWQ3NzQ4MzBiY2FmMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3BwCkBAIC0z
MDg0LDcgKzMwODQsMTAgQEAgYm9vbCBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjpleHRlbnNp
b25Jc0VuYWJsZWQoY29uc3QgU3RyaW5nJiBuYW1lKQogICAgIENIRUNLX0VYVEVOU0lPTihtX3dl
YmdsTG9zZUNvbnRleHQsICJXRUJHTF9sb3NlX2NvbnRleHQiKTsKICAgICBDSEVDS19FWFRFTlNJ
T04obV93ZWJnbERlYnVnUmVuZGVyZXJJbmZvLCAiV0VCR0xfZGVidWdfcmVuZGVyZXJfaW5mbyIp
OwogICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmdsRGVidWdTaGFkZXJzLCAiV0VCR0xfZGVidWdf
c2hhZGVycyIpOworICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVB
U1RDLCAiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9hc3RjIik7CiAgICAgQ0hFQ0tf
RVhURU5TSU9OKG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFUQywgIldFQktJVF9XRUJHTF9jb21w
cmVzc2VkX3RleHR1cmVfYXRjIik7CisgICAgQ0hFQ0tfRVhURU5TSU9OKG1fd2ViZ2xDb21wcmVz
c2VkVGV4dHVyZUVUQywgIldFQktJVF9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfZXRjIik7Cisg
ICAgQ0hFQ0tfRVhURU5TSU9OKG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUVUQzEsICJXRUJLSVRf
V0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEiKTsKICAgICBDSEVDS19FWFRFTlNJT04obV93
ZWJnbENvbXByZXNzZWRUZXh0dXJlUFZSVEMsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0
dXJlX3B2cnRjIik7CiAgICAgQ0hFQ0tfRVhURU5TSU9OKG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVy
ZVMzVEMsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfczN0YyIpOwogICAgIENIRUNLX0VYVEVO
U0lPTihtX3dlYmdsRGVwdGhUZXh0dXJlLCAiV0VCR0xfZGVwdGhfdGV4dHVyZSIpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFz
ZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFz
ZS5oCmluZGV4IDcwZGI2ZjhjMDJiNDU1YmY1OTA1MjQ1NmI3NzE4YTlhNDA5NWZiYmEuLjhlNDkw
YWQ2NWUzNmU2MzJmNzA5YzA2NzkyMTFjY2ViY2Q2OGJlNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgKQEAgLTc1
LDYgKzc1LDggQEAgY2xhc3MgV2ViR0xDb250ZXh0R3JvdXA7CiBjbGFzcyBXZWJHTENvbnRleHRP
YmplY3Q7CiBjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzsKIGNsYXNzIFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVBVEM7CitjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOworY2xh
c3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE7CiBjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0
dXJlUFZSVEM7CiBjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQzsKIGNsYXNzIFdlYkdM
RGVidWdSZW5kZXJlckluZm87CkBAIC0zNzYsNiArMzc4LDggQEAgcHJvdGVjdGVkOgogICAgIGZy
aWVuZCBjbGFzcyBXZWJHTERlYnVnU2hhZGVyczsKICAgICBmcmllbmQgY2xhc3MgV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFTVEM7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVBVEM7CisgICAgZnJpZW5kIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM7CisgICAg
ZnJpZW5kIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOwogICAgIGZyaWVuZCBjbGFz
cyBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEM7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVTM1RDOwogICAgIGZyaWVuZCBjbGFzcyBXZWJHTFJlbmRlcmluZ0NvbnRl
eHRFcnJvck1lc3NhZ2VDYWxsYmFjazsKQEAgLTYwNiw2ICs2MTAsOCBAQCBwcm90ZWN0ZWQ6CiAg
ICAgc3RkOjp1bmlxdWVfcHRyPFdlYkdMRGVidWdTaGFkZXJzPiBtX3dlYmdsRGVidWdTaGFkZXJz
OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQz4gbV93ZWJn
bENvbXByZXNzZWRUZXh0dXJlQVNUQzsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViR0xDb21wcmVz
c2VkVGV4dHVyZUFUQz4gbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlQVRDOworICAgIHN0ZDo6dW5p
cXVlX3B0cjxXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDPiBtX3dlYmdsQ29tcHJlc3NlZFRleHR1
cmVFVEM7CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxPiBt
X3dlYmdsQ29tcHJlc3NlZFRleHR1cmVFVEMxOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJHTENv
bXByZXNzZWRUZXh0dXJlUFZSVEM+IG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZVBWUlRDOwogICAg
IHN0ZDo6dW5pcXVlX3B0cjxXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQz4gbV93ZWJnbENvbXBy
ZXNzZWRUZXh0dXJlUzNUQzsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViR0xEZXB0aFRleHR1cmU+
IG1fd2ViZ2xEZXB0aFRleHR1cmU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9FeHRlbnNpb25zM0QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0V4dGVuc2lvbnMzRC5oCmluZGV4IDA2Y2E1ZTI5NmI0N2VhNjBkYjc0YzE0NDk5ZDJlMTNl
YWQ4ZDhmY2MuLjc4ZjJhMDM4NjE5OTQyMjZjOTM0Y2E2NTFhMGRiMWI5MGFkMzEyNzkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oCkBAIC0x
NTgsNiArMTU4LDE4IEBAIHB1YmxpYzoKICAgICAgICAgLy8gR0xfT0VTX2NvbXByZXNzZWRfRVRD
MV9SR0I4X3RleHR1cmUKICAgICAgICAgRVRDMV9SR0I4X09FUyA9IDB4OEQ2NCwKIAorICAgICAg
ICAvLyBXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfZXRjCisgICAgICAgIENPTVBSRVNTRURfUjEx
X0VBQyA9IDB4OTI3MCwKKyAgICAgICAgQ09NUFJFU1NFRF9TSUdORURfUjExX0VBQyA9IDB4OTI3
MSwKKyAgICAgICAgQ09NUFJFU1NFRF9SRzExX0VBQyA9IDB4OTI3MiwKKyAgICAgICAgQ09NUFJF
U1NFRF9TSUdORURfUkcxMV9FQUMgPSAweDkyNzMsCisgICAgICAgIENPTVBSRVNTRURfUkdCOF9F
VEMyID0gMHg5Mjc0LAorICAgICAgICBDT01QUkVTU0VEX1NSR0I4X0VUQzIgPSAweDkyNzUsCisg
ICAgICAgIENPTVBSRVNTRURfUkdCOF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzIgPSAweDkyNzYs
CisgICAgICAgIENPTVBSRVNTRURfU1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMyID0gMHg5
Mjc3LAorICAgICAgICBDT01QUkVTU0VEX1JHQkE4X0VUQzJfRUFDID0gMHg5Mjc4LAorICAgICAg
ICBDT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9FVEMyX0VBQyA9IDB4OTI3OSwKKwogICAgICAgICAv
LyBHTF9JTUdfdGV4dHVyZV9jb21wcmVzc2lvbl9wdnJ0YwogICAgICAgICBDT01QUkVTU0VEX1JH
Ql9QVlJUQ180QlBQVjFfSU1HID0gMHg4QzAwLAogICAgICAgICBDT01QUkVTU0VEX1JHQl9QVlJU
Q18yQlBQVjFfSU1HID0gMHg4QzAxLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcAppbmRleCAx
MzExOWZmYTc1ZTFjMzA3ZDA4MzRhN2ZkN2ZjOWRkZWQ1MjY0M2RmLi5kOWRiNjAzYjQxODU3ZDY1
NjljNzY0MzgzNjdhMmRmYzAxMjE4NTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcApA
QCAtMjMwLDYgKzIzMCwxMiBAQCBib29sIEV4dGVuc2lvbnMzRE9wZW5HTDo6c3VwcG9ydHNFeHRl
bnNpb24oY29uc3QgU3RyaW5nJiBuYW1lKQogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAg
aWYgKG5hbWUgPT0gIkdMX0VYVF9wYWNrZWRfZGVwdGhfc3RlbmNpbCIpCiAgICAgICAgIHJldHVy
biBtX2F2YWlsYWJsZUV4dGVuc2lvbnMuY29udGFpbnMoIkdMX09FU19wYWNrZWRfZGVwdGhfc3Rl
bmNpbCIpOworCisgICAgaWYgKG5hbWUgPT0gIkdMX09FU19jb21wcmVzc2VkX0VUQzFfUkdCOF90
ZXh0dXJlIgorICAgICAgICB8fCBuYW1lID09ICJHTF9BTkdMRV9jb21wcmVzc2VkX3RleHR1cmVf
ZXRjIikgeworICAgICAgICAvLyBJbXBsaWNpdGx5IGVuYWJsZWQgd2l0aCBFUyAzLjAgY29udGV4
dHMuCisgICAgICAgIHJldHVybiBtX2NvbnRleHQtPm1faXNGb3JXZWJHTDI7CisgICAgfQogI2Vu
ZGlmCiAKICAgICByZXR1cm4gbV9hdmFpbGFibGVFeHRlbnNpb25zLmNvbnRhaW5zKG5hbWUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>382872</attachid>
            <date>2019-11-05 17:52:21 -0800</date>
            <delta_ts>2019-11-06 15:48:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197900-20191105175220.patch</filename>
            <type>text/plain</type>
            <size>56665</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUyMTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjc3ZDEzNjg3ZDVjZDY1
MThhNGNhMTI3NDRlZTg5NjZiODc1YTZhMy4uY2Q4YmE1ZmQyMTZlYTUzOTkwZDE4ZDJjMGUyNDhl
OTIxZGU0YTYyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDE5LTExLTA1ICBLZW5u
ZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsZWFzZSBzdXBwb3J0
IFdFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMxIGV4dGVuc2lvbiAoYW5kIHBvc3NpYmx5IFdF
QkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMgdG9vKQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3OTAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgU3VwcG9ydCB0aGUgRVRDMSBhbmQgRVRDMiBjb21wcmVz
c2VkIHRleHR1cmUgZm9ybWF0cyBpbiBXZWJLaXQncyBXZWJHTAorICAgICAgICBpbXBsZW1lbnRh
dGlvbi4KKworICAgICAgICBUZXN0ZWQgYnkgY2hhbmdpbmcgdGhlIGNvZGUgdG8gYWxsb2NhdGUg
YW4gT3BlbkdMIEVTIDMuMCBjb250ZXh0IGZvciBXZWJHTCwKKyAgICAgICAgYW5kIHJ1bm5pbmcg
aW4gdGhlIGlPUyBTaW11bGF0b3IuIFRoZSBXZWJHTCBjb25mb3JtYW5jZSB0ZXN0cworICAgICAg
ICB3ZWJnbC1jb21wcmVzc2VkLXRleHR1cmUtZXRjLmh0bWwgYW5kIHdlYmdsLWNvbXByZXNzZWQt
dGV4dHVyZS1ldGMxLmh0bWwgYWxsCisgICAgICAgIHBhc3Mgd2l0aCB0aGVzZSBjaGFuZ2VzLgor
CisgICAgICAgIFdoZW4gYW4gQU5HTEUgYmFja2VuZCBpcyBzdXBwb3J0ZWQgb24gaU9TLCB0aGVz
ZSBleHRlbnNpb25zIHdpbGwKKyAgICAgICAgYXV0b21hdGljYWxseSBiZSBzdXBwb3J0ZWQsIGFu
ZCBzb21lIG9mIHRoZSBuZXcgdmFsaWRhdGlvbiBjb2RlIGNhbiBiZQorICAgICAgICByZW1vdmVk
LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMt
aW5wdXQueGNmaWxlbGlzdDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxl
bGlzdDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIFNvdXJjZXMu
dHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRXZWJHTC5jcHA6CisgICAgICAgIChXZWJDb3Jl
Ojpjb252ZXJ0VG9KU1ZhbHVlKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTDJSZW5kZXJp
bmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMMlJlbmRlcmluZ0NvbnRleHQ6
OmdldEV4dGVuc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpXZWJHTDJSZW5kZXJpbmdDb250ZXh0
OjpnZXRTdXBwb3J0ZWRFeHRlbnNpb25zKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDKToKKyAgICAgICAg
KFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OmdldE5hbWUgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6c3VwcG9ydGVkKToKKyAg
ICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmg6IEFkZGVkLgor
ICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsOiBBZGRl
ZC4KKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHA6
IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6Oldl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxOjpnZXROYW1lIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMxOjpzdXBwb3J0ZWQpOgorICAgICAgICAqIGh0bWwvY2FudmFz
L1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmg6IEFkZGVkLgorICAgICAgICAqIGh0bWwvY2Fu
dmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbDogQWRkZWQuCisgICAgICAgICogaHRt
bC9jYW52YXMvV2ViR0xFeHRlbnNpb24uaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJl
bmRlcmluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250
ZXh0OjpnZXRFeHRlbnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250
ZXh0OjpnZXRTdXBwb3J0ZWRFeHRlbnNpb25zKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVy
aW5nQ29udGV4dEJhc2U6OmV4dGVuc2lvbklzRW5hYmxlZCk6CisgICAgICAgIChXZWJDb3JlOjpX
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjp2YWxpZGF0ZUNvbXByZXNzZWRUZXhGdW5jRGF0YSk6
CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjp2YWxpZGF0ZUNv
bXByZXNzZWRUZXhEaW1lbnNpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5n
Q29udGV4dEJhc2U6OnZhbGlkYXRlQ29tcHJlc3NlZFRleFN1YkRpbWVuc2lvbnMpOgorICAgICAg
ICAqIGh0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9FeHRlbnNpb25zM0QuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHQzRENvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0M0Q6OkdyYXBoaWNzQ29udGV4dDNEKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkV4dGVuc2lvbnMzRE9wZW5HTDo6c3VwcG9ydHNFeHRlbnNpb24pOgorCiAyMDE5LTExLTA1
ICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29tPgogCiAgICAgICAgIFtX
aW5dW0NNYWtlXSBCdWlsZCBXZWJDb3JlIGFzIGFuIE9CSkVDVCBsaWJyYXJ5IHVubGVzcyBBcHBs
ZSBpbnRlcm5hbCBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZjMzNjg0NTRiZTczMjFi
ZTZhNmRiZjgyYTExZTQ4ZmI1OTcyM2I0OS4uNzk2N2M3NGUzYWZhYTMzZTQzMjg1ZmM4ZjVlYjAx
NGRmODcwYTExMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysr
IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTEzMTQsNiArMTMxNCw4IEBAIGlm
IChFTkFCTEVfV0VCR0wpCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQnVmZmVyLmNwcAogICAg
ICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5jcHAKICAgICAgICAg
aHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5jcHAKKyAgICAgICAgaHRtbC9j
YW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAKKyAgICAgICAgaHRtbC9jYW52YXMv
V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVQVlJUQy5jcHAKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xDb21w
cmVzc2VkVGV4dHVyZVMzVEMuY3BwCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29udGV4dEV2
ZW50LmNwcApAQCAtMTM2Myw2ICsxMzY1LDggQEAgaWYgKEVOQUJMRV9XRUJHTCkKICAgICAgICAg
aHRtbC9jYW52YXMvV2ViR0xCdWZmZXIuaWRsCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVBU1RDLmlkbAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNz
ZWRUZXh0dXJlQVRDLmlkbAorICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDLmlkbAorICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
MS5pZGwKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmlk
bAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5pZGwKICAg
ICAgICAgaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0QXR0cmlidXRlcy5pZGwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CmluZGV4IGIzMWEyNTAwYmFh
YjI0ZmYwYjY0ODZiZTFmZDJkY2ZkNTQ3MjI1NTEuLmYyOTI3OWU3MzA2NTdjNWFhMmY4ODM0NWE2
NmIwOTBjM2ZmOTFiMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LWlucHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5w
dXQueGNmaWxlbGlzdApAQCAtODI1LDYgKzgyNSw4IEBAICQoUFJPSkVDVF9ESVIpL2h0bWwvY2Fu
dmFzL1dlYkdMQWN0aXZlSW5mby5pZGwKICQoUFJPSkVDVF9ESVIpL2h0bWwvY2FudmFzL1dlYkdM
QnVmZmVyLmlkbAogJChQUk9KRUNUX0RJUikvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUFTVEMuaWRsCiAkKFBST0pFQ1RfRElSKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRU
ZXh0dXJlQVRDLmlkbAorJChQUk9KRUNUX0RJUikvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQy5pZGwKKyQoUFJPSkVDVF9ESVIpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMxLmlkbAogJChQUk9KRUNUX0RJUikvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVz
c2VkVGV4dHVyZVBWUlRDLmlkbAogJChQUk9KRUNUX0RJUikvaHRtbC9jYW52YXMvV2ViR0xDb21w
cmVzc2VkVGV4dHVyZVMzVEMuaWRsCiAkKFBST0pFQ1RfRElSKS9odG1sL2NhbnZhcy9XZWJHTENv
bnRleHRBdHRyaWJ1dGVzLmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1v
dXRwdXQueGNmaWxlbGlzdAppbmRleCA1Mzk0OTFlMjgxYTFlMDBjNzc4NjQ4OTkxNTE3Y2Y5ZDdi
NzlkOTg2Li44NTlhYTM0NzQyODY0MWVkMDU2ZDkxYTVmODVmYzhhYmJhZWM0OGZmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtMTky
Nyw2ICsxOTI3LDEwIEBAICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJ
UikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmgK
ICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFUQy5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oCiskKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMu
Y3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAKKyQoQlVJTFRfUFJP
RFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNX
ZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oCiAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVTM1RDLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggMTYxNzRl
NWE5Y2RkNzI4MmNlZDNjNDY2YTc1YTI1ZGFlM2Y4YmYyYi4uZmQ3MjM2NjI4NWJlYmFhZGEzNjcw
YmFhMjA0Y2VmNDQyMDQ0YjRhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC04
MjksNiArODI5LDggQEAgSlNfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvaHRtbC9j
YW52YXMvV2ViR0xCdWZmZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVBU1RDLmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL2NhbnZhcy9X
ZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmlkbCBcCisgICAgJChXZWJDb3JlKS9odG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbCBcCisgICAgJChXZWJDb3JlKS9odG1sL2Nh
bnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwgXAogICAgICQoV2ViQ29yZSkvaHRt
bC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5pZGwgXAogICAgICQoV2Vi
Q29yZSkvaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0QXR0cmlidXRlcy5pZGwgXApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dAppbmRleCBjNjlmYjU3Y2YzOTIxNTNmOTJkNGM5ZDI0NjE2Mzc2YjBlN2VkZjQ1Li5jOWMwYTJl
NDhiYzczMWQ0YmNkZjVhMDI2NzNjZWJmNDYwYmU2N2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTI4
Nyw2ICsxMjg3LDggQEAgaHRtbC9jYW52YXMvV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKIGh0
bWwvY2FudmFzL1dlYkdMQnVmZmVyLmNwcAogaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUFTVEMuY3BwCiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmNwcAor
aHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAKK2h0bWwvY2FudmFzL1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcAogaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZVBWUlRDLmNwcAogaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMu
Y3BwCiBodG1sL2NhbnZhcy9XZWJHTENvbnRleHRFdmVudC5jcHAKQEAgLTM1NTUsNiArMzU1Nyw4
IEBAIEpTV2ViR0xBY3RpdmVJbmZvLmNwcAogSlNXZWJHTEJ1ZmZlci5jcHAKIEpTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFTVEMuY3BwCiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuY3BwCitK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwCitKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMxLmNwcAogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3BwCiBKU1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVTM1RDLmNwcAogSlNXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmNwcApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGQ5
MDYxYjJkZGE1MWNjODNlNDUxZjdjY2YzOTJkNDdjYjU3NWM1ZTkuLmE1ZjQ0Zjc3ZDYzMzAxMWYw
NmRjYWM0NDJmMDYzNzQzNjQzMjRjYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE5ODcsOCArMTk4NywxMSBAQAogCQk2QzRD
OTZERjFBRDQ0ODM1MDAzNjU2NzIgLyogSlNSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2QzRDOTZEQjFBRDQ0
ODM1MDAzNjU2NzIgLyogSlNSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmggKi87IH07CiAJCTZD
NEM5NkRGMUFENDQ4MzUwMDM2NUE1MCAvKiBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xs
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZDNEM5
NkRCMUFENDQ4MzUwMDM2NUE1MCAvKiBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk2QzYz
ODg5NUE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkM2Mzg4OTNB
OTZDQ0VFNTBDOEM5NDZDIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RTBCOTA2OTIz
MjFBNjhEMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFMEI5MDY1MjMyMUE2OEMwMDYy
MjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oICovOyB9OwogCQk2RTBFNTY5QzE4
M0JGRkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVkUmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUwRTU2OUExODNCRkZFNjAwRTBFOEQ1IC8qIEZs
b2F0Um91bmRlZFJlY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQk2RTIxQzZDMDExMjYzMzg1MDBBN0JFMDIgLyogR3JhcGhpY3NDb250ZXh0M0Qu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUyMUM2
QkYxMTI2MzM4NTAwQTdCRTAyIC8qIEdyYXBoaWNzQ29udGV4dDNELmNwcCAqLzsgfTsKKwkJNkUy
NDJCMkIyMzM1OTQwNTAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFMjQyQjJBMjMz
NTkzRDgwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmggKi87IH07CisJ
CTZFMjQyQjJDMjMzNTk0MDkwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFMjQyQjI4
MjMzNTkzRDcwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAqLzsgfTsK
IAkJNkUzRkFEMzkxNDczM0Y0MDAwRTQyMzA2IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMz
VEMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFM0ZB
RDM3MTQ3MzNGNDAwMEU0MjMwNiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmggKi87
IH07CiAJCTZFM0ZBRDM5MTQ3MzNGNDAwMEU0MjMwNyAvKiBKU1dlYkdMRGVwdGhUZXh0dXJlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTNGQUQzNzE0
NzMzRjQwMDBFNDIzMDcgLyogSlNXZWJHTERlcHRoVGV4dHVyZS5oICovOyB9OwogCQk2RTNGQUQz
OTE0NzMzRjQwMTFFNDIzMDcgLyogSlNXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTNGQUQzNzE0NzMzRjQwMTFF
NDIzMDcgLyogSlNXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmggKi87IH07CkBAIC0yMDA2LDYgKzIw
MDksNyBAQAogCQk2RTcyRjU1MDIyOURDRDE3MDBCM0UxNTEgLyogRXh0ZW5zaW9uczNEQU5HTEUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFMjdGMjQ0
MjI5QzlGOEQwMEYxRjYzMiAvKiBFeHRlbnNpb25zM0RBTkdMRS5oICovOyB9OwogCQk2RTcyRjU1
MTIyOURDRDFBMDBCM0UxNTEgLyogVGVtcG9yYXJ5QU5HTEVTZXR0aW5nLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTI5MDg2MzIyOURCOTcwMDAwOTg2
RTIgLyogVGVtcG9yYXJ5QU5HTEVTZXR0aW5nLmggKi87IH07CiAJCTZFODRFOUUxMTc2NjhCRjEw
MDgxNUI2OCAvKiBSYXN0ZXJTaGFwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNkU4NEU5REYxNzY2OEJBRDAwODE1QjY4IC8qIFJhc3RlclNoYXBlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkU4QUNE
RUQyMzM0NUNCQzAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFOEFDREVCMjMzNDVDQUYw
MDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmggKi87IH07CiAJCTZFQkYwRTQ5
MTJBODkyNjEwMERCMTcwOSAvKiBPRVNUZXh0dXJlRmxvYXQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFQkYwRTQ2MTJBODkyNjEwMERCMTcwOSAvKiBP
RVNUZXh0dXJlRmxvYXQuaCAqLzsgfTsKIAkJNkVCRjBFNTUxMkE4OTI5ODAwREIxNzA5IC8qIFdl
YkdMRXh0ZW5zaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA2RUJGMEU1MzEyQTg5Mjk4MDBEQjE3MDkgLyogV2ViR0xFeHRlbnNpb24uaCAqLzsgfTsK
IAkJNkVCRjBFNzcxMkE5ODY4ODAwREIxNzA5IC8qIEpTT0VTVGV4dHVyZUZsb2F0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RUJGMEU3NTEyQTk4Njg4
MDBEQjE3MDkgLyogSlNPRVNUZXh0dXJlRmxvYXQuaCAqLzsgfTsKQEAgLTkxNjksMTAgKzkxNzMs
MTcgQEAKIAkJNkM0Qzk2REIxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW1EZWZh
dWx0Q29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JlYWRh
YmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNkM2Mzg4OTNBOTZDQ0VFNTBDOEM5NDZDIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRp
YXRvcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFJlc291cmNl
UmVxdWVzdEluaXRpYXRvcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkM2Mzg4
OTRBOTZDQ0VFNTBDOEM5NDZDIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENhY2hlZFJlc291cmNlUmVx
dWVzdEluaXRpYXRvcnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTBCOTA2
NTIzMjFBNjhDMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUwQjkwNjcyMzIxQTY4QzAwNjIyM0IyIC8q
IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTZFMEI5MDY4MjMyMUE2OEQwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
MS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFMEU1Njk5
MTgzQkZGRTYwMEUwRThENSAvKiBGbG9hdFJvdW5kZWRSZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZsb2F0Um91bmRlZFJlY3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk2RTBFNTY5QTE4M0JGRkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVk
UmVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGbG9hdFJvdW5kZWRSZWN0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFMjFDNkJGMTEyNjMzODUwMEE3QkUw
MiAvKiBHcmFwaGljc0NvbnRleHQzRC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBHcmFwaGljc0NvbnRleHQzRC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTZFMjFDNkMxMTEyNjMzOTkwMEE3QkUwMiAvKiBHcmFwaGljc0NvbnRleHQzRENHLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyYXBoaWNzQ29udGV4dDNEQ0cu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTI0MkIyNjIzMzU5M0Q3MDAyQ0FE
RDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHA7IHBhdGggPSAuLi8uLi8uLi8uLi8uLi8u
Li9XZWJLaXRCdWlsZC9EZWJ1Zy9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMjQyQjI4
MjMzNTkzRDcwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmg7IHBhdGggPSAuLi8uLi8uLi8u
Li8uLi8uLi9XZWJLaXRCdWlsZC9EZWJ1Zy9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTI0
MkIyOTIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcDsgcGF0
aCA9IC4uLy4uLy4uLy4uLy4uLy4uL1dlYktpdEJ1aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTZFMjQyQjJBMjMzNTkzRDgwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMxLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
QzEuaDsgcGF0aCA9IC4uLy4uLy4uLy4uLy4uLy4uL1dlYktpdEJ1aWxkL0RlYnVnL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk2RTI3RjI0MjIyOThDRTRCMDBGMUY2MzIgLyogR3JhcGhpY3ND
b250ZXh0M0RBTkdMRS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBH
cmFwaGljc0NvbnRleHQzREFOR0xFLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NkUyN0YyNDMyMjlDOUY4NDAwRjFGNjMyIC8qIEV4dGVuc2lvbnMzREFOR0xFLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEV4dGVuc2lvbnMzREFOR0xFLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUyN0YyNDQyMjlDOUY4RDAwRjFGNjMyIC8qIEV4
dGVuc2lvbnMzREFOR0xFLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV4dGVu
c2lvbnMzREFOR0xFLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MjAyLDYgKzky
MTMsOSBAQAogCQk2RTY3RDJBODEyODBFOEJEMDA4NzU4RjcgLyogRXh0ZW5zaW9uczNELmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV4dGVuc2lvbnMzRC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk2RTg0RTlERTE3NjY4QkFEMDA4MTVCNjggLyogUmFzdGVyU2hh
cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmFzdGVyU2hhcGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTg0RTlERjE3NjY4QkFEMDA4MTVC
NjggLyogUmFzdGVyU2hhcGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmFz
dGVyU2hhcGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkU4QUNERTkyMzM0NUNB
RjAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTZFOEFDREVCMjMzNDVDQUYwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkU4QUNERUMyMzM0NUNCMDAwMjRBQUY1IC8qIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RUJGMEU0NTEyQTg5MjYxMDBE
QjE3MDkgLyogT0VTVGV4dHVyZUZsb2F0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IE9FU1RleHR1cmVGbG9hdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTZFQkYwRTQ2MTJBODkyNjEwMERCMTcwOSAvKiBPRVNUZXh0dXJlRmxvYXQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT0VTVGV4dHVyZUZsb2F0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTZFQkYwRTQ3MTJBODkyNjEwMERCMTcwOSAvKiBPRVNUZXh0dXJl
RmxvYXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE9FU1RleHR1cmVGbG9hdC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODQ1MCw2ICsxODQ2NCwxMiBAQAogCQkJCTdF
NjZFMjMxMTZENkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmNwcCAq
LywKIAkJCQk3RTY2RTIzMjE2RDZFQjZDMDBGN0U3RkYgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUFUQy5oICovLAogCQkJCTdFQTMwRjYyMTZERkQ2MjcwMDI1N0QwQiAvKiBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlQVRDLmlkbCAqLywKKwkJCQk2RThBQ0RFOTIzMzQ1Q0FGMDAyNEFBRjUgLyogV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAgKi8sCisJCQkJNkU4QUNERUIyMzM0NUNBRjAwMjRB
QUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAqLywKKwkJCQk2RThBQ0RFQzIzMzQ1
Q0IwMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5pZGwgKi8sCisJCQkJNkUw
QjkwNjgyMzIxQTY4RDAwNjIyM0IyIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcCAq
LywKKwkJCQk2RTBCOTA2NTIzMjFBNjhDMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEuaCAqLywKKwkJCQk2RTBCOTA2NzIzMjFBNjhDMDA2MjIzQjIgLyogV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQzEuaWRsICovLAogCQkJCTdFNjZFMjMxMTdFNkVCNkMwMEY3RTdGRiAvKiBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3BwICovLAogCQkJCTdFNjZFMjMyMTdFNkVCNkMw
MEY3RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaCAqLywKIAkJCQk3RUEzMEY2
MjE3RUZENjI3MDAyNTdEMEIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmlkbCAqLywK
QEAgLTIzMjU2LDYgKzIzMjc2LDEwIEBACiAJCQkJNDlDN0I5ODExMDQyRDJEMzAwMDlENDQ3IC8q
IEpTV2ViR0xCdWZmZXIuaCAqLywKIAkJCQk3RUEzMEY2NzE2REZGRTc1MDAyNTdEMEIgLyogSlNX
ZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmNwcCAqLywKIAkJCQk3RUEzMEY2ODE2REZGRTc1MDAy
NTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmggKi8sCisJCQkJNkUyNDJCMjYy
MzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAgKi8sCisJ
CQkJNkUyNDJCMjgyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
Qy5oICovLAorCQkJCTZFMjQyQjI5MjMzNTkzRDcwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMxLmNwcCAqLywKKwkJCQk2RTI0MkIyQTIzMzU5M0Q4MDAyQ0FERDQgLyogSlNX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oICovLAogCQkJCTdFQTMwRjY3MTdFRkZFNzUwMDI1
N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5jcHAgKi8sCiAJCQkJN0VBMzBG
NjgxN0VGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmggKi8s
CiAJCQkJNkUzRkFEMzYxNDczM0Y0MDAwRTQyMzA2IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZVMzVEMuY3BwICovLApAQCAtMzA5NjUsNiArMzA5ODksOCBAQAogCQkJCUE3RDIwRjYzMTA3RjQw
NjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDlD
N0I5OTQxMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xCdWZmZXIuaCBpbiBIZWFkZXJzICovLAog
CQkJCTdFQTMwRjZBMTZERkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVB
VEMuaCBpbiBIZWFkZXJzICovLAorCQkJCTZFMjQyQjJDMjMzNTk0MDkwMDJDQURENCAvKiBKU1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCBpbiBIZWFkZXJzICovLAorCQkJCTZFMjQyQjJCMjMz
NTk0MDUwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk3RUEzMEY2QTE3RUZGRTc1MDAyNTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlUFZSVEMuaCBpbiBIZWFkZXJzICovLAogCQkJCTZFM0ZBRDM5MTQ3MzNGNDAwMEU0MjMw
NiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmggaW4gSGVhZGVycyAqLywKIAkJCQk2
RUU4QTc3MzEwRjgwM0YzMDA1QTRBMjQgLyogSlNXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmggaW4g
SGVhZGVycyAqLywKQEAgLTMyNjkwLDYgKzMyNzE2LDggQEAKIAkJCQk0OUM3QjlDOTEwNDJEMzJG
MDAwOUQ0NDcgLyogV2ViR0xCdWZmZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUQwOEIwMEU0MjBB
MjgyNTkwMDA0QkMwQSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJN0U2NkUyMzQxNkQ2RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVBVEMuaCBpbiBIZWFkZXJzICovLAorCQkJCTZFOEFDREVEMjMzNDVDQkMwMDI0QUFGNSAvKiBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTBCOTA2OTIz
MjFBNjhEMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTdFNjZFMjM0MTdFNkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0
dXJlUFZSVEMuaCBpbiBIZWFkZXJzICovLAogCQkJCTZFM0ZBRThGMTQ3MzNGREIwMEU0MjMwNiAv
KiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNkU0RTkx
QUYxMEY3RkIzMTAwQTI3NzlDIC8qIFdlYkdMQ29udGV4dEF0dHJpYnV0ZXMuaCBpbiBIZWFkZXJz
ICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db252ZXJ0
V2ViR0wuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db252ZXJ0V2ViR0wu
Y3BwCmluZGV4IDkwMGUwZjc2MjEyNjA2N2Y5YzIyYTA3ZjBkYTNiZmNkM2QxYWQ1Y2MuLjc4YTRh
ZTYyZTc0N2FjNzE2NjgxMzMzYjRlNDQ3ZmZhNWJlNjFkMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydFdlYkdMLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRXZWJHTC5jcHAKQEAgLTQ1LDYgKzQ1LDggQEAK
ICNpbmNsdWRlICJKU1dlYkdMQnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlQVNUQy5oIgogI2luY2x1ZGUgIkpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oIgor
I2luY2x1ZGUgIkpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIgorI2luY2x1ZGUgIkpTV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCIKICNpbmNsdWRlICJKU1dlYkdMQ29tcHJlc3NlZFRl
eHR1cmVQVlJUQy5oIgogI2luY2x1ZGUgIkpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCIK
ICNpbmNsdWRlICJKU1dlYkdMRGVidWdSZW5kZXJlckluZm8uaCIKQEAgLTE3Niw2ICsxNzgsMTAg
QEAgSlNWYWx1ZSBjb252ZXJ0VG9KU1ZhbHVlKEpTR2xvYmFsT2JqZWN0JiBsZXhpY2FsR2xvYmFs
T2JqZWN0LCBKU0RPTUdsb2JhbE9iamVjdCYKICAgICAgICAgcmV0dXJuIHRvSlMoJmxleGljYWxH
bG9iYWxPYmplY3QsICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFdlYkdMRGVidWdTaGFkZXJz
Jj4oZXh0ZW5zaW9uKSk7CiAgICAgY2FzZSBXZWJHTEV4dGVuc2lvbjo6V2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUFUQ05hbWU6CiAgICAgICAgIHJldHVybiB0b0pTKCZsZXhpY2FsR2xvYmFsT2JqZWN0
LCAmZ2xvYmFsT2JqZWN0LCBzdGF0aWNfY2FzdDxXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDJj4o
ZXh0ZW5zaW9uKSk7CisgICAgY2FzZSBXZWJHTEV4dGVuc2lvbjo6V2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQ05hbWU6CisgICAgICAgIHJldHVybiB0b0pTKCZsZXhpY2FsR2xvYmFsT2JqZWN0LCAm
Z2xvYmFsT2JqZWN0LCBzdGF0aWNfY2FzdDxXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDJj4oZXh0
ZW5zaW9uKSk7CisgICAgY2FzZSBXZWJHTEV4dGVuc2lvbjo6V2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzFOYW1lOgorICAgICAgICByZXR1cm4gdG9KUygmbGV4aWNhbEdsb2JhbE9iamVjdCwgJmds
b2JhbE9iamVjdCwgc3RhdGljX2Nhc3Q8V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEmPihleHRl
bnNpb24pKTsKICAgICBjYXNlIFdlYkdMRXh0ZW5zaW9uOjpXZWJHTENvbXByZXNzZWRUZXh0dXJl
UFZSVENOYW1lOgogICAgICAgICByZXR1cm4gdG9KUygmbGV4aWNhbEdsb2JhbE9iamVjdCwgJmds
b2JhbE9iamVjdCwgc3RhdGljX2Nhc3Q8V2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDJj4oZXh0
ZW5zaW9uKSk7CiAgICAgY2FzZSBXZWJHTEV4dGVuc2lvbjo6V2ViR0xDb21wcmVzc2VkVGV4dHVy
ZVMzVENOYW1lOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0wy
UmVuZGVyaW5nQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTDJS
ZW5kZXJpbmdDb250ZXh0LmNwcAppbmRleCBjZDQ3MjEyNjFiMmUwMjJiNTUyNWRkM2QzY2E1NDY5
ZjljMGIzZWE5Li40YmFmM2FhMDE4YmRiOWZkMzc5MDU4NjU5ZDFjODJlMjM1ZWFmOGRhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTDJSZW5kZXJpbmdDb250ZXh0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTDJSZW5kZXJpbmdDb250
ZXh0LmNwcApAQCAtNDUsNiArNDUsOCBAQAogI2luY2x1ZGUgIldlYkdMQWN0aXZlSW5mby5oIgog
I2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmgiCiAjaW5jbHVkZSAiV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUFUQy5oIgorI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMuaCIKKyNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oIgogI2luY2x1ZGUg
IldlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oIgogI2luY2x1ZGUgIldlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVTM1RDLmgiCiAjaW5jbHVkZSAiV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5oIgpAQCAt
MTM3MywxMCArMTM3NSwxMiBAQCBXZWJHTEV4dGVuc2lvbiogV2ViR0wyUmVuZGVyaW5nQ29udGV4
dDo6Z2V0RXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgbmFtZSkKICAgICBFTkFCTEVfSUZfUkVRVUVT
VEVEKE9FU1RleHR1cmVIYWxmRmxvYXQsIG1fb2VzVGV4dHVyZUhhbGZGbG9hdCwgIk9FU190ZXh0
dXJlX2hhbGZfZmxvYXQiLCBlbmFibGVTdXBwb3J0ZWRFeHRlbnNpb24oIkdMX09FU190ZXh0dXJl
X2hhbGZfZmxvYXQiX3MpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKE9FU1RleHR1cmVIYWxm
RmxvYXRMaW5lYXIsIG1fb2VzVGV4dHVyZUhhbGZGbG9hdExpbmVhciwgIk9FU190ZXh0dXJlX2hh
bGZfZmxvYXRfbGluZWFyIiwgZW5hYmxlU3VwcG9ydGVkRXh0ZW5zaW9uKCJHTF9PRVNfdGV4dHVy
ZV9oYWxmX2Zsb2F0X2xpbmVhciJfcykpOwogICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xM
b3NlQ29udGV4dCwgbV93ZWJnbExvc2VDb250ZXh0LCAiV0VCR0xfbG9zZV9jb250ZXh0IiwgdHJ1
ZSk7CisgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQywg
bV93ZWJnbENvbXByZXNzZWRUZXh0dXJlQVNUQywgIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9h
c3RjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEM6OnN1cHBvcnRlZCgqdGhpcykpOwogICAg
IEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQywgbV93ZWJnbENv
bXByZXNzZWRUZXh0dXJlQVRDLCAiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9hdGMi
LCBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDOjpzdXBwb3J0ZWQoKnRoaXMpKTsKKyAgICBFTkFC
TEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMsIG1fd2ViZ2xDb21wcmVz
c2VkVGV4dHVyZUVUQywgIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMiLCBXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDOjpzdXBwb3J0ZWQoKnRoaXMpKTsKKyAgICBFTkFCTEVfSUZfUkVRVUVT
VEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVF
VEMxLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEiLCBXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDMTo6c3VwcG9ydGVkKCp0aGlzKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJH
TENvbXByZXNzZWRUZXh0dXJlUFZSVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLCAi
V0VCS0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9wdnJ0YyIsIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVQVlJUQzo6c3VwcG9ydGVkKCp0aGlzKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChX
ZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQywgbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlUzNUQywg
IldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9zM3RjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMz
VEM6OnN1cHBvcnRlZCgqdGhpcykpOwotICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFTVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFTVEMsICJXRUJHTF9j
b21wcmVzc2VkX3RleHR1cmVfYXN0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDOjpzdXBw
b3J0ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMRGVwdGhUZXh0dXJl
LCBtX3dlYmdsRGVwdGhUZXh0dXJlLCAiV0VCR0xfZGVwdGhfdGV4dHVyZSIsIFdlYkdMRGVwdGhU
ZXh0dXJlOjpzdXBwb3J0ZWQoKmdyYXBoaWNzQ29udGV4dDNEKCkpKTsKICAgICBFTkFCTEVfSUZf
UkVRVUVTVEVEKFdlYkdMRGVidWdSZW5kZXJlckluZm8sIG1fd2ViZ2xEZWJ1Z1JlbmRlcmVySW5m
bywgIldFQkdMX2RlYnVnX3JlbmRlcmVyX2luZm8iLCB0cnVlKTsKICAgICBFTkFCTEVfSUZfUkVR
VUVTVEVEKFdlYkdMRGVidWdTaGFkZXJzLCBtX3dlYmdsRGVidWdTaGFkZXJzLCAiV0VCR0xfZGVi
dWdfc2hhZGVycyIsIG1fY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpLnN1cHBvcnRzKCJHTF9BTkdM
RV90cmFuc2xhdGVkX3NoYWRlcl9zb3VyY2UiX3MpKTsKQEAgLTE0MDQsMTQgKzE0MDgsMTggQEAg
T3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+IFdlYkdMMlJlbmRlcmluZ0NvbnRleHQ6OmdldFN1cHBv
cnRlZEV4dGVuc2lvbnMoKQogICAgICAgICByZXN1bHQuYXBwZW5kKCJPRVNfdGV4dHVyZV9oYWxm
X2Zsb2F0X2xpbmVhciJfcyk7CiAgICAgaWYgKGV4dGVuc2lvbnMuc3VwcG9ydHMoIkdMX0VYVF90
ZXh0dXJlX2ZpbHRlcl9hbmlzb3Ryb3BpYyJfcykpCiAgICAgICAgIHJlc3VsdC5hcHBlbmQoIldF
QktJVF9FWFRfdGV4dHVyZV9maWx0ZXJfYW5pc290cm9waWMiX3MpOworICAgIGlmIChXZWJHTENv
bXByZXNzZWRUZXh0dXJlQVNUQzo6c3VwcG9ydGVkKCp0aGlzKSkKKyAgICAgICAgcmVzdWx0LmFw
cGVuZCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2FzdGMiX3MpOwogICAgIGlmIChXZWJHTENv
bXByZXNzZWRUZXh0dXJlQVRDOjpzdXBwb3J0ZWQoKnRoaXMpKQogICAgICAgICByZXN1bHQuYXBw
ZW5kKCJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2F0YyJfcyk7CisgICAgaWYgKFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRlZCgqdGhpcykpCisgICAgICAgIHJlc3Vs
dC5hcHBlbmQoIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMiX3MpOworICAgIGlmIChXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMTo6c3VwcG9ydGVkKCp0aGlzKSkKKyAgICAgICAgcmVzdWx0
LmFwcGVuZCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEiX3MpOwogICAgIGlmIChXZWJH
TENvbXByZXNzZWRUZXh0dXJlUFZSVEM6OnN1cHBvcnRlZCgqdGhpcykpCiAgICAgICAgIHJlc3Vs
dC5hcHBlbmQoIldFQktJVF9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfcHZydGMiX3MpOwogICAg
IGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQzo6c3VwcG9ydGVkKCp0aGlzKSkKICAgICAg
ICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3MzdGMiX3MpOwotICAg
IGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzo6c3VwcG9ydGVkKCp0aGlzKSkKLSAgICAg
ICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2FzdGMiX3MpOwogICAg
IGlmIChXZWJHTERlcHRoVGV4dHVyZTo6c3VwcG9ydGVkKCpncmFwaGljc0NvbnRleHQzRCgpKSkK
ICAgICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfZGVwdGhfdGV4dHVyZSJfcyk7CiAgICAgcmVz
dWx0LmFwcGVuZCgiV0VCR0xfbG9zZV9jb250ZXh0Il9zKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYzRiMDBjZGUzYTMyNzljMzE0ZGI3MTAzMTRjNjgzY2Q4ZDQzYzBlZAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1
cmVFVEMuY3BwCkBAIC0wLDAgKzEsNjkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZp
Zy5oIgorCisjaWYgRU5BQkxFKFdFQkdMKQorI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1
cmVFVEMuaCIKKworI2luY2x1ZGUgIkV4dGVuc2lvbnMzRC5oIgorI2luY2x1ZGUgIldlYkdMUmVu
ZGVyaW5nQ29udGV4dEJhc2UuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDKFdlYkdMUmVuZGVyaW5n
Q29udGV4dEJhc2UmIGNvbnRleHQpCisgICAgOiBXZWJHTEV4dGVuc2lvbihjb250ZXh0KQorewor
ICAgIGNvbnRleHQuZ3JhcGhpY3NDb250ZXh0M0QoKS0+Z2V0RXh0ZW5zaW9ucygpLmVuc3VyZUVu
YWJsZWQoIkdMX0FOR0xFX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMiKTsKKworICAgIGNvbnRleHQu
YWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1IxMV9F
QUMpOworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNE
OjpDT01QUkVTU0VEX1NJR05FRF9SMTFfRUFDKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRU
ZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SRzExX0VBQyk7CisgICAgY29u
dGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURf
U0lHTkVEX1JHMTFfRUFDKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0
KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0I4X0VUQzIpOworICAgIGNvbnRleHQuYWRkQ29t
cHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NSR0I4X0VUQzIp
OworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpD
T01QUkVTU0VEX1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMyKTsKKyAgICBjb250ZXh0LmFk
ZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9Q
VU5DSFRIUk9VR0hfQUxQSEExX0VUQzIpOworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1
cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQkE4X0VUQzJfRUFDKTsKKyAgICBj
b250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NF
RF9TUkdCOF9BTFBIQThfRVRDMl9FQUMpOworfQorCitXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
Ojp+V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQygpID0gZGVmYXVsdDsKKworV2ViR0xFeHRlbnNp
b246OkV4dGVuc2lvbk5hbWUgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6Z2V0TmFtZSgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVENOYW1lOworfQorCiti
b29sIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRlZChXZWJHTFJlbmRlcmluZ0Nv
bnRleHRCYXNlJiBjb250ZXh0KQoreworICAgIGJvb2wgcmVzID0gY29udGV4dC5ncmFwaGljc0Nv
bnRleHQzRCgpLT5nZXRFeHRlbnNpb25zKCkuc3VwcG9ydHMoIkdMX0FOR0xFX2NvbXByZXNzZWRf
dGV4dHVyZV9ldGMiKTsKKyAgICBvc19sb2coT1NfTE9HX0RFRkFVTFQsICJXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDOjpzdXBwb3J0ZWQgcmV0dXJuaW5nICVkIiwgKGludCkgcmVzKTsKKyAgICBy
ZXR1cm4gcmVzOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCR0wpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2EzMzhhZGEyNmViOTI0Y2NhYTEwMjVi
ODc4YmEzZDkyM2RmOGE0NgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Y2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaApAQCAtMCwwICsxLDQ1IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKFdFQkdMKQorCisjaW5jbHVkZSAi
V2ViR0xFeHRlbnNpb24uaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDIGZpbmFsIDogcHVibGljIFdlYkdMRXh0ZW5zaW9uIHsKK3B1Ymxp
YzoKKyAgICBleHBsaWNpdCBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDKFdlYkdMUmVuZGVyaW5n
Q29udGV4dEJhc2UmKTsKKyAgICB2aXJ0dWFsIH5XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDKCk7
CisKKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0ZWQoV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZSYp
OworICAgIEV4dGVuc2lvbk5hbWUgZ2V0TmFtZSgpIGNvbnN0IG92ZXJyaWRlOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5pZGwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MTk1M2ZhYTNiNzM4OWNjNjVkNmUwOWQ0MzMzNzlkYmQxMTZjNTg3MwotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMu
aWRsCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworLy8gaHR0cHM6Ly93d3cua2hyb25v
cy5vcmcvcmVnaXN0cnkvd2ViZ2wvZXh0ZW5zaW9ucy9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVf
ZXRjLworCitbCisgICAgQ29uZGl0aW9uYWw9V0VCR0wsCisgICAgRG9Ob3RDaGVja0NvbnN0YW50
cywKKyAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxXZWJHTFJlbmRlcmluZ0NvbnRleHQsCisg
ICAgTm9JbnRlcmZhY2VPYmplY3QsCitdIGludGVyZmFjZSBXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDIHsKKyAgICAvKiBDb21wcmVzc2VkIFRleHR1cmUgRm9ybWF0ICovCisgICAgY29uc3QgdW5z
aWduZWQgbG9uZyBDT01QUkVTU0VEX1IxMV9FQUMgICAgICAgICAgICAgICAgICAgICAgICA9IDB4
OTI3MDsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfU0lHTkVEX1IxMV9FQUMg
ICAgICAgICAgICAgICAgID0gMHg5MjcxOworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJF
U1NFRF9SRzExX0VBQyAgICAgICAgICAgICAgICAgICAgICAgPSAweDkyNzI7CisgICAgY29uc3Qg
dW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1NJR05FRF9SRzExX0VBQyAgICAgICAgICAgICAgICA9
IDB4OTI3MzsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfUkdCOF9FVEMyICAg
ICAgICAgICAgICAgICAgICAgID0gMHg5Mjc0OworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09N
UFJFU1NFRF9TUkdCOF9FVEMyICAgICAgICAgICAgICAgICAgICAgPSAweDkyNzU7CisgICAgY29u
c3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMy
ICA9IDB4OTI3NjsKKyAgICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfU1JHQjhfUFVO
Q0hUSFJPVUdIX0FMUEhBMV9FVEMyID0gMHg5Mjc3OworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcg
Q09NUFJFU1NFRF9SR0JBOF9FVEMyX0VBQyAgICAgICAgICAgICAgICAgPSAweDkyNzg7CisgICAg
Y29uc3QgdW5zaWduZWQgbG9uZyBDT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9FVEMyX0VBQyAgICAg
ICAgICA9IDB4OTI3OTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2I4NGZhNTYz
NWNmMmRlNmYxZGE3MWIyMDk0ZjQxMWFjNmIzODI3MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcApAQCAt
MCwwICsxLDYwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVO
QUJMRShXRUJHTCkKKyNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oIgorCisj
aW5jbHVkZSAiRXh0ZW5zaW9uczNELmgiCisjaW5jbHVkZSAiV2ViR0xSZW5kZXJpbmdDb250ZXh0
QmFzZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1dlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMxOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMShXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNl
JiBjb250ZXh0KQorICAgIDogV2ViR0xFeHRlbnNpb24oY29udGV4dCkKK3sKKyAgICBjb250ZXh0
LmdyYXBoaWNzQ29udGV4dDNEKCktPmdldEV4dGVuc2lvbnMoKS5lbnN1cmVFbmFibGVkKCJHTF9P
RVNfY29tcHJlc3NlZF9FVEMxX1JHQjhfdGV4dHVyZSIpOworCisgICAgY29udGV4dC5hZGRDb21w
cmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6OkVUQzFfUkdCOF9PRVMpOworfQorCitX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6fldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxKCkg
PSBkZWZhdWx0OworCitXZWJHTEV4dGVuc2lvbjo6RXh0ZW5zaW9uTmFtZSBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMTo6Z2V0TmFtZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxTmFtZTsKK30KKworYm9vbCBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
MTo6c3VwcG9ydGVkKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmIGNvbnRleHQpCit7CisgICAg
Ym9vbCByZXMgPSBjb250ZXh0LmdyYXBoaWNzQ29udGV4dDNEKCktPmdldEV4dGVuc2lvbnMoKS5z
dXBwb3J0cygiR0xfT0VTX2NvbXByZXNzZWRfRVRDMV9SR0I4X3RleHR1cmUiKTsKKyAgICBvc19s
b2coT1NfTE9HX0RFRkFVTFQsICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6c3VwcG9ydGVk
IHJldHVybmluZyAlZCIsIChpbnQpIHJlcyk7CisgICAgcmV0dXJuIHJlczsKK30KKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMGY3NmE0ODBjM2Q2YjViNjVhZDJhYWM5MzA4YmFhZjdiZjA2NzBmZgotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMxLmgKQEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
OSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2lmIEVOQUJMRShXRUJHTCkKKworI2luY2x1ZGUgIldlYkdMRXh0ZW5zaW9uLmgiCisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEg
ZmluYWwgOiBwdWJsaWMgV2ViR0xFeHRlbnNpb24geworcHVibGljOgorICAgIGV4cGxpY2l0IFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAg
ICB2aXJ0dWFsIH5XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMSgpOworCisgICAgc3RhdGljIGJv
b2wgc3VwcG9ydGVkKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAgICBFeHRlbnNpb25O
YW1lIGdldE5hbWUoKSBjb25zdCBvdmVycmlkZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9X
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjNjM2M2NWQ0Y2M3ZmY1
YjVkOGEyM2ZmZTg5NjJmMDE4MDYzMzE3YwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbApAQCAtMCwwICsx
LDM2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
KyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisg
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKy8vIGh0dHBzOi8vd3d3Lmtocm9ub3Mub3JnL3JlZ2lzdHJ5
L3dlYmdsL2V4dGVuc2lvbnMvV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEvCisKK1sKKyAg
ICBDb25kaXRpb25hbD1XRUJHTCwKKyAgICBEb05vdENoZWNrQ29uc3RhbnRzLAorICAgIEdlbmVy
YXRlSXNSZWFjaGFibGU9SW1wbFdlYkdMUmVuZGVyaW5nQ29udGV4dCwKKyAgICBOb0ludGVyZmFj
ZU9iamVjdCwKK10gaW50ZXJmYWNlIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxIHsKKyAgICAv
KiBDb21wcmVzc2VkIFRleHR1cmUgRm9ybWF0cyAqLworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcg
Q09NUFJFU1NFRF9SR0JfRVRDMV9XRUJHTCA9IDB4OEQ2NDsKK307CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEV4dGVuc2lvbi5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvV2ViR0xFeHRlbnNpb24uaAppbmRleCAyYTFhMzRjYTdmNDZkNDFiZDhkN2Iy
NDJkZDU4MWVmOGY4ZjYxNjExLi4wMmExZTgxZDVhYzE4MGI0ZDc0NmRhN2IzZjliZmZjNTQ0NjQ2
NDgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEV4dGVuc2lv
bi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRXh0ZW5zaW9uLmgKQEAg
LTU1LDYgKzU1LDggQEAgcHVibGljOgogICAgICAgICBXZWJHTERyYXdCdWZmZXJzTmFtZSwKICAg
ICAgICAgT0VTRWxlbWVudEluZGV4VWludE5hbWUsCiAgICAgICAgIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVBVENOYW1lLAorICAgICAgICBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDTmFtZSwKKyAg
ICAgICAgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzFOYW1lLAogICAgICAgICBXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlUFZSVENOYW1lLAogICAgICAgICBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNU
Q05hbWUsCiAgICAgICAgIEFOR0xFSW5zdGFuY2VkQXJyYXlzTmFtZSwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwCmluZGV4IGU1
ZmRlNzAzMzc0NTZhMzFlMTU3MWVlMTBmM2ZkMjY0MmRiMDM2YjkuLmJlZmE4MGEzMDMwZTY4OGQ1
MDM3M2MxNzg2NDM0NzFmOWRhY2IzNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Y2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcApAQCAtNTEsNiArNTEsOCBAQAogI2lu
Y2x1ZGUgIlJlbmRlckJveC5oIgogI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RD
LmgiCiAjaW5jbHVkZSAiV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oIgorI2luY2x1ZGUgIldl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCIKKyNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDMS5oIgogI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oIgogI2lu
Y2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmgiCiAjaW5jbHVkZSAiV2ViR0xEZWJ1
Z1JlbmRlcmVySW5mby5oIgpAQCAtMTQ4LDEwICsxNTAsMTIgQEAgV2ViR0xFeHRlbnNpb24qIFdl
YkdMUmVuZGVyaW5nQ29udGV4dDo6Z2V0RXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgbmFtZSkKICAg
ICBFTkFCTEVfSUZfUkVRVUVTVEVEKE9FU1ZlcnRleEFycmF5T2JqZWN0LCBtX29lc1ZlcnRleEFy
cmF5T2JqZWN0LCAiT0VTX3ZlcnRleF9hcnJheV9vYmplY3QiLCBlbmFibGVTdXBwb3J0ZWRFeHRl
bnNpb24oIkdMX09FU192ZXJ0ZXhfYXJyYXlfb2JqZWN0Il9zKSk7CiAgICAgRU5BQkxFX0lGX1JF
UVVFU1RFRChPRVNFbGVtZW50SW5kZXhVaW50LCBtX29lc0VsZW1lbnRJbmRleFVpbnQsICJPRVNf
ZWxlbWVudF9pbmRleF91aW50IiwgZW5hYmxlU3VwcG9ydGVkRXh0ZW5zaW9uKCJHTF9PRVNfZWxl
bWVudF9pbmRleF91aW50Il9zKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTExvc2VD
b250ZXh0LCBtX3dlYmdsTG9zZUNvbnRleHQsICJXRUJHTF9sb3NlX2NvbnRleHQiLCB0cnVlKTsK
KyAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLCBtX3dl
YmdsQ29tcHJlc3NlZFRleHR1cmVBU1RDLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2FzdGMi
LCBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzo6c3VwcG9ydGVkKCp0aGlzKSk7CiAgICAgRU5B
QkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLCBtX3dlYmdsQ29tcHJl
c3NlZFRleHR1cmVBVEMsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2F0YyIsIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVBVEM6OnN1cHBvcnRlZCgqdGhpcykpOworICAgIEVOQUJMRV9J
Rl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQywgbV93ZWJnbENvbXByZXNzZWRU
ZXh0dXJlRVRDLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YyIsIFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEM6OnN1cHBvcnRlZCgqdGhpcykpOworICAgIEVOQUJMRV9JRl9SRVFVRVNURUQo
V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUVUQzEs
ICJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfZXRjMSIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMxOjpzdXBwb3J0ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVQVlJUQywgbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlUFZSVEMsICJXRUJL
SVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3B2cnRjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZVBWUlRDOjpzdXBwb3J0ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVTM1RDLCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVTM1RDLCAiV0VC
R0xfY29tcHJlc3NlZF90ZXh0dXJlX3MzdGMiLCBXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQzo6
c3VwcG9ydGVkKCp0aGlzKSk7Ci0gICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNz
ZWRUZXh0dXJlQVNUQywgbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlQVNUQywgIldFQkdMX2NvbXBy
ZXNzZWRfdGV4dHVyZV9hc3RjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEM6OnN1cHBvcnRl
ZCgqdGhpcykpOwogICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xEZXB0aFRleHR1cmUsIG1f
d2ViZ2xEZXB0aFRleHR1cmUsICJXRUJHTF9kZXB0aF90ZXh0dXJlIiwgV2ViR0xEZXB0aFRleHR1
cmU6OnN1cHBvcnRlZCgqbV9jb250ZXh0KSk7CiAgICAgaWYgKGVxdWFsSWdub3JpbmdBU0NJSUNh
c2UobmFtZSwgIldFQkdMX2RyYXdfYnVmZmVycyIpKSB7CiAgICAgICAgIGlmICghbV93ZWJnbERy
YXdCdWZmZXJzKSB7CkBAIC0yMTcsMTQgKzIyMSwxOCBAQCBPcHRpb25hbDxWZWN0b3I8U3RyaW5n
Pj4gV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRTdXBwb3J0ZWRFeHRlbnNpb25zKCkKICAgICBp
ZiAobV9jb250ZXh0LT5nZXRFeHRlbnNpb25zKCkuc3VwcG9ydHMoIkdMX09FU19lbGVtZW50X2lu
ZGV4X3VpbnQiX3MpKQogICAgICAgICByZXN1bHQuYXBwZW5kKCJPRVNfZWxlbWVudF9pbmRleF91
aW50Il9zKTsKICAgICByZXN1bHQuYXBwZW5kKCJXRUJHTF9sb3NlX2NvbnRleHQiX3MpOworICAg
IGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzo6c3VwcG9ydGVkKCp0aGlzKSkKKyAgICAg
ICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2FzdGMiX3MpOwogICAg
IGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDOjpzdXBwb3J0ZWQoKnRoaXMpKQogICAgICAg
ICByZXN1bHQuYXBwZW5kKCJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2F0YyJfcyk7
CisgICAgaWYgKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRlZCgqdGhpcykpCisg
ICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMiX3MpOwor
ICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6c3VwcG9ydGVkKCp0aGlzKSkKKyAg
ICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEiX3MpOwog
ICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEM6OnN1cHBvcnRlZCgqdGhpcykpCiAg
ICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQktJVF9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfcHZy
dGMiX3MpOwogICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQzo6c3VwcG9ydGVkKCp0
aGlzKSkKICAgICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3Mz
dGMiX3MpOwotICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzo6c3VwcG9ydGVkKCp0
aGlzKSkKLSAgICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2Fz
dGMiX3MpOwogICAgIGlmIChXZWJHTERlcHRoVGV4dHVyZTo6c3VwcG9ydGVkKCptX2NvbnRleHQp
KQogICAgICAgICByZXN1bHQuYXBwZW5kKCJXRUJHTF9kZXB0aF90ZXh0dXJlIl9zKTsKICAgICBp
ZiAoc3VwcG9ydHNEcmF3QnVmZmVycygpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcAppbmRleCAxNGE3MDk1NjAw
MWNiYjk5NzJiNmU2MDdiZDcwNzE1NmJkYjljMDVhLi45MjJmYjk3ZTkxYWJiYjk4YjE0NzVlZTAx
MTg1YzkyMjRhMTVmZGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9X
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcApAQCAtMzA5MSw3ICszMDkxLDEwIEBA
IGJvb2wgV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6ZXh0ZW5zaW9uSXNFbmFibGVkKGNvbnN0
IFN0cmluZyYgbmFtZSkKICAgICBDSEVDS19FWFRFTlNJT04obV93ZWJnbExvc2VDb250ZXh0LCAi
V0VCR0xfbG9zZV9jb250ZXh0Iik7CiAgICAgQ0hFQ0tfRVhURU5TSU9OKG1fd2ViZ2xEZWJ1Z1Jl
bmRlcmVySW5mbywgIldFQkdMX2RlYnVnX3JlbmRlcmVyX2luZm8iKTsKICAgICBDSEVDS19FWFRF
TlNJT04obV93ZWJnbERlYnVnU2hhZGVycywgIldFQkdMX2RlYnVnX3NoYWRlcnMiKTsKKyAgICBD
SEVDS19FWFRFTlNJT04obV93ZWJnbENvbXByZXNzZWRUZXh0dXJlQVNUQywgIldFQktJVF9XRUJH
TF9jb21wcmVzc2VkX3RleHR1cmVfYXN0YyIpOwogICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmds
Q29tcHJlc3NlZFRleHR1cmVBVEMsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2F0
YyIpOworICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVFVEMsICJX
RUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YyIpOworICAgIENIRUNLX0VYVEVOU0lP
TihtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVFVEMxLCAiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRf
dGV4dHVyZV9ldGMxIik7CiAgICAgQ0hFQ0tfRVhURU5TSU9OKG1fd2ViZ2xDb21wcmVzc2VkVGV4
dHVyZVBWUlRDLCAiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9wdnJ0YyIpOwogICAg
IENIRUNLX0VYVEVOU0lPTihtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVTM1RDLCAiV0VCR0xfY29t
cHJlc3NlZF90ZXh0dXJlX3MzdGMiKTsKICAgICBDSEVDS19FWFRFTlNJT04obV93ZWJnbERlcHRo
VGV4dHVyZSwgIldFQkdMX2RlcHRoX3RleHR1cmUiKTsKQEAgLTU1NjIsMTAgKzU1NjUsMTMgQEAg
Ym9vbCBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjp2YWxpZGF0ZUNvbXByZXNzZWRUZXhGdW5j
RGF0YShjb25zdCBjaGFyKiBmdW5jdGkKICAgICBjb25zdCBHQzNEZW51bSBBU1RDRW51bVN0YXJ0
UkdCQSA9IEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JBX0FTVENfNHg0X0tIUjsKICAgICBj
b25zdCBHQzNEZW51bSBBU1RDRW51bVN0YXJ0U1JHQjggPSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNT
RURfU1JHQjhfQUxQSEE4X0FTVENfNHg0X0tIUjsKIAorICAgIGNvbnN0IGludCBrRUFDQW5kRVRD
MkJsb2NrU2l6ZSA9IDQ7CisKICAgICBzd2l0Y2ggKGZvcm1hdCkgewogICAgIGNhc2UgRXh0ZW5z
aW9uczNEOjpDT01QUkVTU0VEX1JHQl9TM1RDX0RYVDFfRVhUOgogICAgIGNhc2UgRXh0ZW5zaW9u
czNEOjpDT01QUkVTU0VEX1JHQkFfUzNUQ19EWFQxX0VYVDoKICAgICBjYXNlIEV4dGVuc2lvbnMz
RDo6Q09NUFJFU1NFRF9BVENfUkdCX0FNRDoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6RVRDMV9S
R0I4X09FUzoKICAgICAgICAgewogICAgICAgICAgICAgY29uc3QgaW50IGtCbG9ja1NpemUgPSA4
OwogICAgICAgICAgICAgY29uc3QgaW50IGtCbG9ja1dpZHRoID0gNDsKQEAgLTU2MzgsNiArNTY0
NCwyOCBAQCBib29sIFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnZhbGlkYXRlQ29tcHJlc3Nl
ZFRleEZ1bmNEYXRhKGNvbnN0IGNoYXIqIGZ1bmN0aQogICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpD
T01QUkVTU0VEX1NSR0I4X0FMUEhBOF9BU1RDXzEyeDEyX0tIUjoKICAgICAgICAgYnl0ZXNSZXF1
aXJlZCA9IGNhbGN1bGF0ZUJ5dGVzRm9yQVNUQyh3aWR0aCwgaGVpZ2h0LCBBU1RDUGFyYW1ldGVy
c1tmb3JtYXQgLSBBU1RDRW51bVN0YXJ0U1JHQjhdKTsKICAgICAgICAgYnJlYWs7CisgICAgY2Fz
ZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfUjExX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMz
RDo6Q09NUFJFU1NFRF9TSUdORURfUjExX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09N
UFJFU1NFRF9SR0I4X0VUQzI6CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JH
QjhfRVRDMjoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0I4X1BVTkNIVEhS
T1VHSF9BTFBIQTFfRVRDMjoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdC
OF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzI6CisgICAgICAgIHsKKyAgICAgICAgICAgIGJ5dGVz
UmVxdWlyZWQgPSAod2lkdGggKyBrRUFDQW5kRVRDMkJsb2NrU2l6ZSAtIDEpIC8ga0VBQ0FuZEVU
QzJCbG9ja1NpemU7CisgICAgICAgICAgICBieXRlc1JlcXVpcmVkICo9IChoZWlnaHQgKyBrRUFD
QW5kRVRDMkJsb2NrU2l6ZSAtIDEpIC8ga0VBQ0FuZEVUQzJCbG9ja1NpemU7CisgICAgICAgICAg
ICBieXRlc1JlcXVpcmVkICo9IDg7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAg
IGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHMTFfRUFDOgorICAgIGNhc2UgRXh0ZW5z
aW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9SRzExX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMz
RDo6Q09NUFJFU1NFRF9SR0JBOF9FVEMyX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09N
UFJFU1NFRF9TUkdCOF9BTFBIQThfRVRDMl9FQUM6CisgICAgICAgIHsKKyAgICAgICAgICAgIGJ5
dGVzUmVxdWlyZWQgPSAod2lkdGggKyBrRUFDQW5kRVRDMkJsb2NrU2l6ZSAtIDEpIC8ga0VBQ0Fu
ZEVUQzJCbG9ja1NpemU7CisgICAgICAgICAgICBieXRlc1JlcXVpcmVkICo9IChoZWlnaHQgKyBr
RUFDQW5kRVRDMkJsb2NrU2l6ZSAtIDEpIC8ga0VBQ0FuZEVUQzJCbG9ja1NpemU7CisgICAgICAg
ICAgICBieXRlc1JlcXVpcmVkICo9IDE2OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0K
ICAgICBkZWZhdWx0OgogICAgICAgICBzeW50aGVzaXplR0xFcnJvcihHcmFwaGljc0NvbnRleHQz
RDo6SU5WQUxJRF9FTlVNLCBmdW5jdGlvbk5hbWUsICJpbnZhbGlkIGZvcm1hdCIpOwogICAgICAg
ICByZXR1cm4gZmFsc2U7CkBAIC01NzA4LDcgKzU3MzYsMTggQEAgYm9vbCBXZWJHTFJlbmRlcmlu
Z0NvbnRleHRCYXNlOjp2YWxpZGF0ZUNvbXByZXNzZWRUZXhEaW1lbnNpb25zKGNvbnN0IGNoYXIq
IGZ1bmMKICAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9BTFBIQThfQVNU
Q18xMHgxMF9LSFI6CiAgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfQUxQ
SEE4X0FTVENfMTJ4MTBfS0hSOgogICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NS
R0I4X0FMUEhBOF9BU1RDXzEyeDEyX0tIUjoKLSAgICAgICAgLy8gTm8gaGVpZ2h0IGFuZCB3aWR0
aCByZXN0cmljdGlvbnMgb24gQVNUQy4KKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6RVRDMV9SR0I4
X09FUzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SMTFfRUFDOgorICAgIGNh
c2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9SMTFfRUFDOgorICAgIGNhc2UgRXh0
ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHMTFfRUFDOgorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpD
T01QUkVTU0VEX1NJR05FRF9SRzExX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJF
U1NFRF9SR0I4X0VUQzI6CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhf
RVRDMjoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0I4X1BVTkNIVEhST1VH
SF9BTFBIQTFfRVRDMjoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9Q
VU5DSFRIUk9VR0hfQUxQSEExX0VUQzI6CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNT
RURfUkdCQThfRVRDMl9FQUM6CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JH
QjhfQUxQSEE4X0VUQzJfRUFDOgorICAgICAgICAvLyBObyBoZWlnaHQgYW5kIHdpZHRoIHJlc3Ry
aWN0aW9ucyBvbiBBU1RDLCBFVEMxIG9yIEVUQzIuCiAgICAgICAgIHJldHVybiB0cnVlOwogICAg
IGRlZmF1bHQ6CiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTU3NTYsNiArNTc5NSwzNCBAQCBi
b29sIFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2U6OnZhbGlkYXRlQ29tcHJlc3NlZFRleFN1YkRp
bWVuc2lvbnMoY29uc3QgY2hhciogZgogICAgICAgICB9CiAgICAgICAgIHJldHVybiB2YWxpZGF0
ZUNvbXByZXNzZWRUZXhEaW1lbnNpb25zKGZ1bmN0aW9uTmFtZSwgdGFyZ2V0LCBsZXZlbCwgd2lk
dGgsIGhlaWdodCwgZm9ybWF0KTsKICAgICB9CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkVUQzFf
UkdCOF9PRVM6CisgICAgICAgIC8vIE5vdCBzdXBwb3J0ZWQgZm9yIEVUQzFfUkdCOF9PRVMgdGV4
dHVyZXMuCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09N
UFJFU1NFRF9SMTFfRUFDOgorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05F
RF9SMTFfRUFDOgorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHMTFfRUFDOgor
ICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9SRzExX0VBQzoKKyAgICBj
YXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0I4X0VUQzI6CisgICAgY2FzZSBFeHRlbnNp
b25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfRVRDMjoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09N
UFJFU1NFRF9SR0I4X1BVTkNIVEhST1VHSF9BTFBIQTFfRVRDMjoKKyAgICBjYXNlIEV4dGVuc2lv
bnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzI6CisgICAgY2Fz
ZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfUkdCQThfRVRDMl9FQUM6CisgICAgY2FzZSBFeHRl
bnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0VUQzJfRUFDOiB7CisgICAgICAgIGlm
ICh0YXJnZXQgPT0gR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfM0QpIHsKKyAgICAgICAgICAg
IHN5bnRoZXNpemVHTEVycm9yKEdyYXBoaWNzQ29udGV4dDNEOjpJTlZBTElEX09QRVJBVElPTiwg
ZnVuY3Rpb25OYW1lLCAibm90IHN1cHBvcnRlZCBvbiBURVhUVVJFXzNEIHRleHR1cmVzIik7Cisg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKyAgICAgICAgY29uc3QgaW50IGtC
bG9ja1NpemUgPSA0OworICAgICAgICBpbnQgdGV4V2lkdGggPSB0ZXgtPmdldFdpZHRoKHRhcmdl
dCwgbGV2ZWwpOworICAgICAgICBpbnQgdGV4SGVpZ2h0ID0gdGV4LT5nZXRIZWlnaHQodGFyZ2V0
LCBsZXZlbCk7CisgICAgICAgIGlmICgoeG9mZnNldCAlIGtCbG9ja1NpemUpIHx8ICh5b2Zmc2V0
ICUga0Jsb2NrU2l6ZSkKKyAgICAgICAgICAgIHx8ICgod2lkdGggJSBrQmxvY2tTaXplKSAmJiB4
b2Zmc2V0ICsgd2lkdGggIT0gdGV4V2lkdGgpCisgICAgICAgICAgICB8fCAoKGhlaWdodCAlIGtC
bG9ja1NpemUpICYmIHlvZmZzZXQgKyBoZWlnaHQgIT0gdGV4SGVpZ2h0KSkgeworICAgICAgICAg
ICAgc3ludGhlc2l6ZUdMRXJyb3IoR3JhcGhpY3NDb250ZXh0M0Q6OklOVkFMSURfT1BFUkFUSU9O
LCBmdW5jdGlvbk5hbWUsICJkaW1lbnNpb25zIG11c3QgbWF0Y2ggZXhpc3RpbmcgdGV4dHVyZSBs
ZXZlbCBkaW1lbnNpb25zIik7CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0K
KyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldHVy
biBmYWxzZTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9X
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9X
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgKaW5kZXggNGI1ZWVkYzY2YzU1ZjE1NWViYmQ4YWZm
ZDVhYjNiNjQwYTdiZDQ3YS4uNTlhMGMwN2Q1ZWQ1MzkzYjJiZTEyOWFkZmY4MmU3YTAxMGRkZmFl
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdD
b250ZXh0QmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVy
aW5nQ29udGV4dEJhc2UuaApAQCAtNzcsNiArNzcsOCBAQCBjbGFzcyBXZWJHTENvbnRleHRHcm91
cDsKIGNsYXNzIFdlYkdMQ29udGV4dE9iamVjdDsKIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVBU1RDOwogY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQzsKK2NsYXNzIFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEM7CitjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTsKIGNs
YXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQzsKIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVTM1RDOwogY2xhc3MgV2ViR0xEZWJ1Z1JlbmRlcmVySW5mbzsKQEAgLTM4NSw2ICszODcs
OCBAQCBwcm90ZWN0ZWQ6CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMRGVidWdTaGFkZXJzOwogICAg
IGZyaWVuZCBjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzsKICAgICBmcmllbmQgY2xh
c3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQzsKKyAgICBmcmllbmQgY2xhc3MgV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQzsKKyAgICBmcmllbmQgY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzE7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQzsKICAg
ICBmcmllbmQgY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEM7CiAgICAgZnJpZW5kIGNs
YXNzIFdlYkdMUmVuZGVyaW5nQ29udGV4dEVycm9yTWVzc2FnZUNhbGxiYWNrOwpAQCAtNjEzLDYg
KzYxNyw4IEBAIHByb3RlY3RlZDoKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViR0xEZWJ1Z1NoYWRl
cnM+IG1fd2ViZ2xEZWJ1Z1NoYWRlcnM7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVBU1RDPiBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVBU1RDOwogICAgIHN0ZDo6
dW5pcXVlX3B0cjxXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDPiBtX3dlYmdsQ29tcHJlc3NlZFRl
eHR1cmVBVEM7CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM+
IG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUVUQzsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzE+IG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUVUQzE7CiAgICAg
c3RkOjp1bmlxdWVfcHRyPFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQz4gbV93ZWJnbENvbXBy
ZXNzZWRUZXh0dXJlUFZSVEM7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVTM1RDPiBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVTM1RDOwogICAgIHN0ZDo6dW5pcXVl
X3B0cjxXZWJHTERlcHRoVGV4dHVyZT4gbV93ZWJnbERlcHRoVGV4dHVyZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRXh0ZW5zaW9uczNELmgKaW5kZXggMDZjYTVlMjk2
YjQ3ZWE2MGRiNzRjMTQ0OTlkMmUxM2VhZDhkOGZjYy4uNzhmMmEwMzg2MTk5NDIyNmM5MzRjYTY1
MWEwZGIxYjkwYWQzMTI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRXh0ZW5zaW9uczNELmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRXh0ZW5zaW9uczNELmgKQEAgLTE1OCw2ICsxNTgsMTggQEAgcHVibGljOgogICAgICAgICAv
LyBHTF9PRVNfY29tcHJlc3NlZF9FVEMxX1JHQjhfdGV4dHVyZQogICAgICAgICBFVEMxX1JHQjhf
T0VTID0gMHg4RDY0LAogCisgICAgICAgIC8vIFdFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMK
KyAgICAgICAgQ09NUFJFU1NFRF9SMTFfRUFDID0gMHg5MjcwLAorICAgICAgICBDT01QUkVTU0VE
X1NJR05FRF9SMTFfRUFDID0gMHg5MjcxLAorICAgICAgICBDT01QUkVTU0VEX1JHMTFfRUFDID0g
MHg5MjcyLAorICAgICAgICBDT01QUkVTU0VEX1NJR05FRF9SRzExX0VBQyA9IDB4OTI3MywKKyAg
ICAgICAgQ09NUFJFU1NFRF9SR0I4X0VUQzIgPSAweDkyNzQsCisgICAgICAgIENPTVBSRVNTRURf
U1JHQjhfRVRDMiA9IDB4OTI3NSwKKyAgICAgICAgQ09NUFJFU1NFRF9SR0I4X1BVTkNIVEhST1VH
SF9BTFBIQTFfRVRDMiA9IDB4OTI3NiwKKyAgICAgICAgQ09NUFJFU1NFRF9TUkdCOF9QVU5DSFRI
Uk9VR0hfQUxQSEExX0VUQzIgPSAweDkyNzcsCisgICAgICAgIENPTVBSRVNTRURfUkdCQThfRVRD
Ml9FQUMgPSAweDkyNzgsCisgICAgICAgIENPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0VUQzJfRUFD
ID0gMHg5Mjc5LAorCiAgICAgICAgIC8vIEdMX0lNR190ZXh0dXJlX2NvbXByZXNzaW9uX3B2cnRj
CiAgICAgICAgIENPTVBSRVNTRURfUkdCX1BWUlRDXzRCUFBWMV9JTUcgPSAweDhDMDAsCiAgICAg
ICAgIENPTVBSRVNTRURfUkdCX1BWUlRDXzJCUFBWMV9JTUcgPSAweDhDMDEsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHQz
RENvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhp
Y3NDb250ZXh0M0RDb2NvYS5tbQppbmRleCA3ZjYxZWY2ZjIzY2Q3YjRmZDYzZTg0ZWEwNTAzNDNh
NDM3NzBjMDM3Li4xZDhiYzNlMGMzMGE3NWI0NzI3YTM0ZGU1NjdiNDM0Mjc5MTk1YmMwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0Nv
bnRleHQzRENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
Y29hL0dyYXBoaWNzQ29udGV4dDNEQ29jb2EubW0KQEAgLTI0Myw3ICsyNDMsNyBAQCBHcmFwaGlj
c0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QoR3JhcGhpY3NDb250ZXh0M0RBdHRyaWJ1dGVz
IGF0dHJzLCBIb3N0V2luZAogICAgICAgICBhdHRyaWJzLmFwcGVuZChzdGF0aWNfY2FzdDxDR0xQ
aXhlbEZvcm1hdEF0dHJpYnV0ZT4oNCkpOwogICAgIH0KIAotICAgIGlmIChhdHRycy5pc1dlYkdM
MikgeworICAgIGlmIChtX2F0dHJzLmlzV2ViR0wyKSB7CiAgICAgICAgIC8vIEZJWE1FOiBJbnN0
ZWFkIG9mIGJhY2tpbmcgYSBXZWJHTDIgR3JhcGhpY3NDb250ZXh0M0Qgd2l0aCBhIE9wZW5HTCA0
IGNvbnRleHQsIHdlIHNob3VsZCBpbnN0ZWFkIGJhY2sgaXQgd2l0aCBBTkdMRS4KICAgICAgICAg
Ly8gVXNlIGFuIE9wZW5HTCA0IGNvbnRleHQgZm9yIG5vdyB1bnRpbCB0aGUgQU5HTEUgYmFja2Vu
ZCBpcyByZWFkeS4KICAgICAgICAgYXR0cmlicy5hcHBlbmQoa0NHTFBGQU9wZW5HTFByb2ZpbGUp
OwpAQCAtMjc4LDcgKzI3OCw3IEBAIEdyYXBoaWNzQ29udGV4dDNEOjpHcmFwaGljc0NvbnRleHQz
RChHcmFwaGljc0NvbnRleHQzREF0dHJpYnV0ZXMgYXR0cnMsIEhvc3RXaW5kCiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKLSAgICBtX2lzRm9yV2ViR0wyID0gYXR0cnMuaXNXZWJHTDI7CisgICAg
bV9pc0ZvcldlYkdMMiA9IG1fYXR0cnMuaXNXZWJHTDI7CiAKICAgICBDR0xTZXRDdXJyZW50Q29u
dGV4dChtX2NvbnRleHRPYmopOwogCkBAIC0zMjYsNyArMzI2LDcgQEAgR3JhcGhpY3NDb250ZXh0
M0Q6OkdyYXBoaWNzQ29udGV4dDNEKEdyYXBoaWNzQ29udGV4dDNEQXR0cmlidXRlcyBhdHRycywg
SG9zdFdpbmQKICAgICB9CiAKICAgICBzdGQ6OnZlY3RvcjxFR0xpbnQ+IGNvbnRleHRBdHRyaWJ1
dGVzOwotICAgIGlmIChhdHRycy5pc1dlYkdMMikgeworICAgIGlmIChtX2F0dHJzLmlzV2ViR0wy
KSB7CiAgICAgICAgIGNvbnRleHRBdHRyaWJ1dGVzLnB1c2hfYmFjayhFR0xfQ09OVEVYVF9DTElF
TlRfVkVSU0lPTik7CiAgICAgICAgIGNvbnRleHRBdHRyaWJ1dGVzLnB1c2hfYmFjaygzKTsKICAg
ICB9IGVsc2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
b3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcAppbmRleCAxMzExOWZmYTc1ZTFj
MzA3ZDA4MzRhN2ZkN2ZjOWRkZWQ1MjY0M2RmLi42MWMwYzZlNDg3ZDIyNjQ3MDdkNmFlN2I5MmYw
N2VhMGU5YzFjYjNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcApAQCAtMjI3LDkgKzIy
NywxNSBAQCBib29sIEV4dGVuc2lvbnMzRE9wZW5HTDo6c3VwcG9ydHNFeHRlbnNpb24oY29uc3Qg
U3RyaW5nJiBuYW1lKQogI2VuZGlmCiAgICAgfQogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
KyNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVMQVRP
UikKICAgICBpZiAobmFtZSA9PSAiR0xfRVhUX3BhY2tlZF9kZXB0aF9zdGVuY2lsIikKICAgICAg
ICAgcmV0dXJuIG1fYXZhaWxhYmxlRXh0ZW5zaW9ucy5jb250YWlucygiR0xfT0VTX3BhY2tlZF9k
ZXB0aF9zdGVuY2lsIik7CisKKyAgICBpZiAobmFtZSA9PSAiR0xfT0VTX2NvbXByZXNzZWRfRVRD
MV9SR0I4X3RleHR1cmUiCisgICAgICAgIHx8IG5hbWUgPT0gIkdMX0FOR0xFX2NvbXByZXNzZWRf
dGV4dHVyZV9ldGMiKSB7CisgICAgICAgIC8vIEltcGxpY2l0bHkgZW5hYmxlZCB3aXRoIEVTIDMu
MCBjb250ZXh0cy4KKyAgICAgICAgcmV0dXJuIG1fY29udGV4dC0+bV9pc0ZvcldlYkdMMjsKKyAg
ICB9CiAjZW5kaWYKIAogICAgIHJldHVybiBtX2F2YWlsYWJsZUV4dGVuc2lvbnMuY29udGFpbnMo
bmFtZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>382972</attachid>
            <date>2019-11-06 15:48:49 -0800</date>
            <delta_ts>2019-11-07 17:38:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197900-20191106154848.patch</filename>
            <type>text/plain</type>
            <size>57764</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUyMTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWY0YjZiY2UzYTliZjli
MDNhOGYwYWU3Yjg5ZDJmNTNjMTQxY2FiMS4uZjY5MzFjN2RkNjA1M2JiMzk1NjgzNWU5Y2ZmM2Fi
ZjI4NDA5MWU0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDE5LTExLTA2ICBLZW5u
ZXRoIFJ1c3NlbGwgIDxrYnJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsZWFzZSBzdXBwb3J0
IFdFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMxIGV4dGVuc2lvbiAoYW5kIHBvc3NpYmx5IFdF
QkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMgdG9vKQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3OTAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgU3VwcG9ydCB0aGUgRVRDMSBhbmQgRVRDMiBjb21wcmVz
c2VkIHRleHR1cmUgZm9ybWF0cyBpbiBXZWJLaXQncyBXZWJHTAorICAgICAgICBpbXBsZW1lbnRh
dGlvbi4KKworICAgICAgICBUZXN0ZWQgYnkgY2hhbmdpbmcgdGhlIGNvZGUgdG8gYWxsb2NhdGUg
YW4gT3BlbkdMIEVTIDMuMCBjb250ZXh0IGZvciBXZWJHTCwKKyAgICAgICAgYW5kIHJ1bm5pbmcg
aW4gdGhlIGlPUyBTaW11bGF0b3IuIFRoZSBXZWJHTCBjb25mb3JtYW5jZSB0ZXN0cworICAgICAg
ICB3ZWJnbC1jb21wcmVzc2VkLXRleHR1cmUtZXRjLmh0bWwgYW5kIHdlYmdsLWNvbXByZXNzZWQt
dGV4dHVyZS1ldGMxLmh0bWwgYWxsCisgICAgICAgIHBhc3Mgd2l0aCB0aGVzZSBjaGFuZ2VzLgor
CisgICAgICAgIFdoZW4gYW4gQU5HTEUgYmFja2VuZCBpcyBzdXBwb3J0ZWQgb24gaU9TLCB0aGVz
ZSBleHRlbnNpb25zIHdpbGwKKyAgICAgICAgYXV0b21hdGljYWxseSBiZSBzdXBwb3J0ZWQsIGFu
ZCBzb21lIG9mIHRoZSBuZXcgdmFsaWRhdGlvbiBjb2RlIGNhbiBiZQorICAgICAgICByZW1vdmVk
LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMt
aW5wdXQueGNmaWxlbGlzdDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxl
bGlzdDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIFNvdXJjZXMu
dHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRXZWJHTC5jcHA6CisgICAgICAgIChXZWJDb3Jl
Ojpjb252ZXJ0VG9KU1ZhbHVlKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTDJSZW5kZXJp
bmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMMlJlbmRlcmluZ0NvbnRleHQ6
OmdldEV4dGVuc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpXZWJHTDJSZW5kZXJpbmdDb250ZXh0
OjpnZXRTdXBwb3J0ZWRFeHRlbnNpb25zKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpXZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDOjpXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDKToKKyAgICAgICAg
KFdlYkNvcmU6OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OmdldE5hbWUgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6c3VwcG9ydGVkKToKKyAg
ICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmg6IEFkZGVkLgor
ICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsOiBBZGRl
ZC4KKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHA6
IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6Oldl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxOjpnZXROYW1lIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMxOjpzdXBwb3J0ZWQpOgorICAgICAgICAqIGh0bWwvY2FudmFz
L1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmg6IEFkZGVkLgorICAgICAgICAqIGh0bWwvY2Fu
dmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbDogQWRkZWQuCisgICAgICAgICogaHRt
bC9jYW52YXMvV2ViR0xFeHRlbnNpb24uaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJl
bmRlcmluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250
ZXh0OjpnZXRFeHRlbnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250
ZXh0OjpnZXRTdXBwb3J0ZWRFeHRlbnNpb25zKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVy
aW5nQ29udGV4dEJhc2U6OmV4dGVuc2lvbklzRW5hYmxlZCk6CisgICAgICAgIChXZWJDb3JlOjpX
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjp2YWxpZGF0ZUNvbXByZXNzZWRUZXhGdW5jRGF0YSk6
CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjp2YWxpZGF0ZUNv
bXByZXNzZWRUZXhEaW1lbnNpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMUmVuZGVyaW5n
Q29udGV4dEJhc2U6OnZhbGlkYXRlQ29tcHJlc3NlZFRleFN1YkRpbWVuc2lvbnMpOgorICAgICAg
ICAqIGh0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9FeHRlbnNpb25zM0QuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHQzRENvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0M0Q6OkdyYXBoaWNzQ29udGV4dDNEKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkV4dGVuc2lvbnMzRE9wZW5HTDo6c3VwcG9ydHNFeHRlbnNpb24pOgorCiAyMDE5LTExLTA2
ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ11bTWFyZ2lu
Q29sbGFwc2luZ10gQWRkIExpbmU6OmlzQ29uc2lkZXJlZEVtcHR5CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
CmluZGV4IGYzMzY4NDU0YmU3MzIxYmU2YTZkYmY4MmExMWU0OGZiNTk3MjNiNDkuLjc5NjdjNzRl
M2FmYWEzM2U0MzI4NWZjOGY1ZWIwMTRkZjg3MGExMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBA
IC0xMzE0LDYgKzEzMTQsOCBAQCBpZiAoRU5BQkxFX1dFQkdMKQogICAgICAgICBodG1sL2NhbnZh
cy9XZWJHTEJ1ZmZlci5jcHAKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUFTVEMuY3BwCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVB
VEMuY3BwCisgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3Bw
CisgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcAogICAg
ICAgICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3BwCiAgICAgICAg
IGh0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmNwcAogICAgICAgICBodG1s
L2NhbnZhcy9XZWJHTENvbnRleHRFdmVudC5jcHAKQEAgLTEzNjMsNiArMTM2NSw4IEBAIGlmIChF
TkFCTEVfV0VCR0wpCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQnVmZmVyLmlkbAogICAgICAg
ICBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5pZGwKICAgICAgICAgaHRt
bC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5pZGwKKyAgICAgICAgaHRtbC9jYW52
YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5pZGwKKyAgICAgICAgaHRtbC9jYW52YXMvV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaWRsCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVQVlJUQy5pZGwKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xDb21wcmVz
c2VkVGV4dHVyZVMzVEMuaWRsCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29udGV4dEF0dHJp
YnV0ZXMuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1
dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxl
bGlzdAppbmRleCBiMzFhMjUwMGJhYWIyNGZmMGI2NDg2YmUxZmQyZGNmZDU0NzIyNTUxLi5mMjky
NzllNzMwNjU3YzVhYTJmODgzNDVhNjZiMDkwYzNmZjkxYjA0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTgyNSw2ICs4MjUsOCBAQCAk
KFBST0pFQ1RfRElSKS9odG1sL2NhbnZhcy9XZWJHTEFjdGl2ZUluZm8uaWRsCiAkKFBST0pFQ1Rf
RElSKS9odG1sL2NhbnZhcy9XZWJHTEJ1ZmZlci5pZGwKICQoUFJPSkVDVF9ESVIpL2h0bWwvY2Fu
dmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmlkbAogJChQUk9KRUNUX0RJUikvaHRtbC9j
YW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5pZGwKKyQoUFJPSkVDVF9ESVIpL2h0bWwv
Y2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaWRsCiskKFBST0pFQ1RfRElSKS9odG1s
L2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwKICQoUFJPSkVDVF9ESVIpL2h0
bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5pZGwKICQoUFJPSkVDVF9ESVIp
L2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmlkbAogJChQUk9KRUNUX0RJ
UikvaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0QXR0cmlidXRlcy5pZGwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5kZXggNTM5NDkxZTI4MWEx
ZTAwYzc3ODY0ODk5MTUxN2NmOWQ3Yjc5ZDk4Ni4uODU5YWEzNDc0Mjg2NDFlZDA1NmQ5MWE1Zjg1
ZmM4YWJiYWVjNDhmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMt
b3V0cHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0
cHV0LnhjZmlsZWxpc3QKQEAgLTE5MjcsNiArMTkyNywxMCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJ
UikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmNw
cAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENv
bXByZXNzZWRUZXh0dXJlQVNUQy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuY3BwCiAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVB
VEMuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgKKyQoQlVJTFRfUFJP
RFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmNwcAogJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlUFZSVEMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5jcHAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlCmluZGV4IDE2MTc0ZTVhOWNkZDcyODJjZWQzYzQ2NmE3NWEyNWRhZTNmOGJmMmIu
LmZkNzIzNjYyODViZWJhYWRhMzY3MGJhYTIwNGNlZjQ0MjA0NGI0YTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQpAQCAtODI5LDYgKzgyOSw4IEBAIEpTX0JJTkRJTkdfSURMUyA9IFwK
ICAgICAkKFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQnVmZmVyLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5pZGwgXAogICAgICQo
V2ViQ29yZSkvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5pZGwgXAorICAg
ICQoV2ViQ29yZSkvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5pZGwgXAor
ICAgICQoV2ViQ29yZSkvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaWRs
IFwKICAgICAkKFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJU
Qy5pZGwgXAogICAgICQoV2ViQ29yZSkvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZVMzVEMuaWRsIFwKICAgICAkKFdlYkNvcmUpL2h0bWwvY2FudmFzL1dlYkdMQ29udGV4dEF0dHJp
YnV0ZXMuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggYzY5ZmI1N2NmMzkyMTUzZjkyZDRjOWQyNDYx
NjM3NmIwZTdlZGY0NS4uYzljMGEyZTQ4YmM3MzFkNGJjZGY1YTAyNjczY2ViZjQ2MGJlNjdiYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNv
cmUvU291cmNlcy50eHQKQEAgLTEyODcsNiArMTI4Nyw4IEBAIGh0bWwvY2FudmFzL1dlYkdMMlJl
bmRlcmluZ0NvbnRleHQuY3BwCiBodG1sL2NhbnZhcy9XZWJHTEJ1ZmZlci5jcHAKIGh0bWwvY2Fu
dmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmNwcAogaHRtbC9jYW52YXMvV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFUQy5jcHAKK2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMuY3BwCitodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAKIGh0bWwv
Y2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5jcHAKIGh0bWwvY2FudmFzL1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVTM1RDLmNwcAogaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0RXZlbnQu
Y3BwCkBAIC0zNTU1LDYgKzM1NTcsOCBAQCBKU1dlYkdMQWN0aXZlSW5mby5jcHAKIEpTV2ViR0xC
dWZmZXIuY3BwCiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmNwcAogSlNXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlQVRDLmNwcAorSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcAorSlNX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAKIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBW
UlRDLmNwcAogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5jcHAKIEpTV2ViR0xDb250ZXh0
QXR0cmlidXRlcy5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBkOTA2MWIyZGRhNTFjYzgzZTQ1MWY3Y2NmMzkyZDQ3Y2I1NzVj
NWU5Li5hNWY0NGY3N2Q2MzMwMTFmMDZkY2FjNDQyZjA2Mzc0MzY0MzI0Y2MxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xOTg3
LDggKzE5ODcsMTEgQEAKIAkJNkM0Qzk2REYxQUQ0NDgzNTAwMzY1NjcyIC8qIEpTUmVhZGFibGVT
dHJlYW1CWU9CUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNkM0Qzk2REIxQUQ0NDgzNTAwMzY1NjcyIC8qIEpTUmVhZGFibGVTdHJlYW1CWU9C
UmVxdWVzdC5oICovOyB9OwogCQk2QzRDOTZERjFBRDQ0ODM1MDAzNjVBNTAgLyogSlNSZWFkYWJs
ZVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA2QzRDOTZEQjFBRDQ0ODM1MDAzNjVBNTAgLyogSlNSZWFkYWJsZVN0
cmVhbURlZmF1bHRDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJNkM2Mzg4OTVBOTZDQ0VFNTBDOEM5NDZDIC8qIENhY2hlZFJlc291
cmNlUmVxdWVzdEluaXRpYXRvcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDZDNjM4ODkzQTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJl
cXVlc3RJbml0aWF0b3JzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNkUwQjkwNjkyMzIxQTY4RDAwNjIyM0IyIC8qIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVFVEMxLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA2RTBCOTA2NTIzMjFBNjhDMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEu
aCAqLzsgfTsKIAkJNkUwRTU2OUMxODNCRkZFNjAwRTBFOEQ1IC8qIEZsb2F0Um91bmRlZFJlY3Qu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFMEU1NjlB
MTgzQkZGRTYwMEUwRThENSAvKiBGbG9hdFJvdW5kZWRSZWN0LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNkUyMUM2QzAxMTI2MzM4NTAwQTdCRTAy
IC8qIEdyYXBoaWNzQ29udGV4dDNELmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDZFMjFDNkJGMTEyNjMzODUwMEE3QkUwMiAvKiBHcmFwaGljc0NvbnRl
eHQzRC5jcHAgKi87IH07CisJCTZFMjQyQjJCMjMzNTk0MDUwMDJDQURENCAvKiBKU1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMxLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA2RTI0MkIyQTIzMzU5M0Q4MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDMS5oICovOyB9OworCQk2RTI0MkIyQzIzMzU5NDA5MDAyQ0FERDQgLyogSlNXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2RTI0MkIyODIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDLmggKi87IH07CiAJCTZFM0ZBRDM5MTQ3MzNGNDAwMEU0MjMwNiAvKiBKU1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA2RTNGQUQzNzE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlUzNUQy5oICovOyB9OwogCQk2RTNGQUQzOTE0NzMzRjQwMDBFNDIzMDcgLyog
SlNXZWJHTERlcHRoVGV4dHVyZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNkUzRkFEMzcxNDczM0Y0MDAwRTQyMzA3IC8qIEpTV2ViR0xEZXB0aFRleHR1
cmUuaCAqLzsgfTsKIAkJNkUzRkFEMzkxNDczM0Y0MDExRTQyMzA3IC8qIEpTV2ViR0xEZWJ1Z1Jl
bmRlcmVySW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNkUzRkFEMzcxNDczM0Y0MDExRTQyMzA3IC8qIEpTV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5o
ICovOyB9OwpAQCAtMjAwNiw2ICsyMDA5LDcgQEAKIAkJNkU3MkY1NTAyMjlEQ0QxNzAwQjNFMTUx
IC8qIEV4dGVuc2lvbnMzREFOR0xFLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2RTI3RjI0NDIyOUM5RjhEMDBGMUY2MzIgLyogRXh0ZW5zaW9uczNEQU5H
TEUuaCAqLzsgfTsKIAkJNkU3MkY1NTEyMjlEQ0QxQTAwQjNFMTUxIC8qIFRlbXBvcmFyeUFOR0xF
U2V0dGluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NkUyOTA4NjMyMjlEQjk3MDAwMDk4NkUyIC8qIFRlbXBvcmFyeUFOR0xFU2V0dGluZy5oICovOyB9
OwogCQk2RTg0RTlFMTE3NjY4QkYxMDA4MTVCNjggLyogUmFzdGVyU2hhcGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFODRFOURGMTc2NjhCQUQwMDgx
NUI2OCAvKiBSYXN0ZXJTaGFwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTZFOEFDREVEMjMzNDVDQkMwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA2RThBQ0RFQjIzMzQ1Q0FGMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
Qy5oICovOyB9OwogCQk2RUJGMEU0OTEyQTg5MjYxMDBEQjE3MDkgLyogT0VTVGV4dHVyZUZsb2F0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RUJGMEU0
NjEyQTg5MjYxMDBEQjE3MDkgLyogT0VTVGV4dHVyZUZsb2F0LmggKi87IH07CiAJCTZFQkYwRTU1
MTJBODkyOTgwMERCMTcwOSAvKiBXZWJHTEV4dGVuc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkVCRjBFNTMxMkE4OTI5ODAwREIxNzA5IC8qIFdl
YkdMRXh0ZW5zaW9uLmggKi87IH07CiAJCTZFQkYwRTc3MTJBOTg2ODgwMERCMTcwOSAvKiBKU09F
U1RleHR1cmVGbG9hdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNkVCRjBFNzUxMkE5ODY4ODAwREIxNzA5IC8qIEpTT0VTVGV4dHVyZUZsb2F0LmggKi87
IH07CkBAIC05MTY5LDEwICs5MTczLDE3IEBACiAJCTZDNEM5NkRCMUFENDQ4MzUwMDM2NUE1MCAv
KiBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNSZWFkYWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZDNjM4ODkzQTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTZDNjM4ODk0QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJj
ZVJlcXVlc3RJbml0aWF0b3JzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNkUwQjkwNjUyMzIxQTY4QzAwNjIyM0IyIC8qIFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMxLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMxLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMEI5
MDY3MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTBCOTA2ODIzMjFBNjhEMDA2MjIzQjIgLyogV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk2RTBFNTY5OTE4M0JGRkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVkUmVj
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGbG9hdFJvdW5kZWRS
ZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUwRTU2OUExODNCRkZFNjAw
RTBFOEQ1IC8qIEZsb2F0Um91bmRlZFJlY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRmxvYXRSb3VuZGVkUmVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2
RTIxQzZCRjExMjYzMzg1MDBBN0JFMDIgLyogR3JhcGhpY3NDb250ZXh0M0QuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0M0QuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RTIxQzZDMTExMjYzMzk5MDBBN0JFMDIgLyogR3Jh
cGhpY3NDb250ZXh0M0RDRy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBHcmFwaGljc0NvbnRleHQzRENHLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NkUyNDJCMjYyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwOyBw
YXRoID0gLi4vLi4vLi4vLi4vLi4vLi4vV2ViS2l0QnVpbGQvRGVidWcvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk2RTI0MkIyODIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
Qy5oOyBwYXRoID0gLi4vLi4vLi4vLi4vLi4vLi4vV2ViS2l0QnVpbGQvRGVidWcvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNkUyNDJCMjkyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQzEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5jcHA7IHBhdGggPSAuLi8uLi8uLi8uLi8uLi8uLi9XZWJLaXRCdWlsZC9E
ZWJ1Zy9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTI0MkIyQTIzMzU5M0Q4MDAyQ0FE
RDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKU1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmg7IHBhdGggPSAuLi8uLi8uLi8uLi8uLi8uLi9XZWJL
aXRCdWlsZC9EZWJ1Zy9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQzEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkUyN0YyNDIyMjk4Q0U0
QjAwRjFGNjMyIC8qIEdyYXBoaWNzQ29udGV4dDNEQU5HTEUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0M0RBTkdMRS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFMjdGMjQzMjI5QzlGODQwMEYxRjYzMiAvKiBFeHRlbnNp
b25zM0RBTkdMRS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFeHRl
bnNpb25zM0RBTkdMRS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTZFMjdGMjQ0
MjI5QzlGOEQwMEYxRjYzMiAvKiBFeHRlbnNpb25zM0RBTkdMRS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBFeHRlbnNpb25zM0RBTkdMRS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtOTIwMiw2ICs5MjEzLDkgQEAKIAkJNkU2N0QyQTgxMjgwRThCRDAwODc1OEY3
IC8qIEV4dGVuc2lvbnMzRC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFeHRl
bnNpb25zM0QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNkU4NEU5REUxNzY2OEJB
RDAwODE1QjY4IC8qIFJhc3RlclNoYXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFJhc3RlclNoYXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NkU4NEU5REYxNzY2OEJBRDAwODE1QjY4IC8qIFJhc3RlclNoYXBlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJhc3RlclNoYXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTZFOEFDREU5MjMzNDVDQUYwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RThBQ0RFQjIzMzQ1Q0FGMDAyNEFBRjUg
LyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFOEFDREVD
MjMzNDVDQjAwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNkVCRjBFNDUxMkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBPRVNUZXh0dXJlRmxvYXQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RUJGMEU0NjEyQTg5MjYxMDBEQjE3MDkgLyogT0VT
VGV4dHVyZUZsb2F0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9FU1RleHR1
cmVGbG9hdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2RUJGMEU0NzEyQTg5MjYx
MDBEQjE3MDkgLyogT0VTVGV4dHVyZUZsb2F0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBP
RVNUZXh0dXJlRmxvYXQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTg0NTAs
NiArMTg0NjQsMTIgQEAKIAkJCQk3RTY2RTIzMTE2RDZFQjZDMDBGN0U3RkYgLyogV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFUQy5jcHAgKi8sCiAJCQkJN0U2NkUyMzIxNkQ2RUI2QzAwRjdFN0ZGIC8q
IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCAqLywKIAkJCQk3RUEzMEY2MjE2REZENjI3MDAy
NTdEMEIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5pZGwgKi8sCisJCQkJNkU4QUNERTky
MzM0NUNBRjAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwICovLAorCQkJ
CTZFOEFDREVCMjMzNDVDQUYwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgg
Ki8sCisJCQkJNkU4QUNERUMyMzM0NUNCMDAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVFVEMuaWRsICovLAorCQkJCTZFMEI5MDY4MjMyMUE2OEQwMDYyMjNCMiAvKiBXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDMS5jcHAgKi8sCisJCQkJNkUwQjkwNjUyMzIxQTY4QzAwNjIyM0IyIC8q
IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmggKi8sCisJCQkJNkUwQjkwNjcyMzIxQTY4QzAw
NjIyM0IyIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmlkbCAqLywKIAkJCQk3RTY2RTIz
MTE3RTZFQjZDMDBGN0U3RkYgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmNwcCAqLywK
IAkJCQk3RTY2RTIzMjE3RTZFQjZDMDBGN0U3RkYgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBW
UlRDLmggKi8sCiAJCQkJN0VBMzBGNjIxN0VGRDYyNzAwMjU3RDBCIC8qIFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVQVlJUQy5pZGwgKi8sCkBAIC0yMzI1Niw2ICsyMzI3NiwxMCBAQAogCQkJCTQ5QzdC
OTgxMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMQnVmZmVyLmggKi8sCiAJCQkJN0VBMzBGNjcx
NkRGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5jcHAgKi8sCiAJ
CQkJN0VBMzBGNjgxNkRGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFU
Qy5oICovLAorCQkJCTZFMjQyQjI2MjMzNTkzRDcwMDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMuY3BwICovLAorCQkJCTZFMjQyQjI4MjMzNTkzRDcwMDJDQURENCAvKiBKU1dl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAqLywKKwkJCQk2RTI0MkIyOTIzMzU5M0Q3MDAyQ0FE
RDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAgKi8sCisJCQkJNkUyNDJCMkEy
MzM1OTNEODAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCAqLywKIAkJ
CQk3RUEzMEY2NzE3RUZGRTc1MDAyNTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZS
VEMuY3BwICovLAogCQkJCTdFQTMwRjY4MTdFRkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVQVlJUQy5oICovLAogCQkJCTZFM0ZBRDM2MTQ3MzNGNDAwMEU0MjMwNiAvKiBK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmNwcCAqLywKQEAgLTMwOTY1LDYgKzMwOTg5LDgg
QEAKIAkJCQlBN0QyMEY2MzEwN0Y0MDY5MDBBODAzOTIgLyogSlNXZWJHTEFjdGl2ZUluZm8uaCBp
biBIZWFkZXJzICovLAogCQkJCTQ5QzdCOTk0MTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMQnVm
ZmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3RUEzMEY2QTE2REZGRTc1MDAyNTdEMEIgLyogSlNX
ZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTI0MkIyQzIz
MzU5NDA5MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk2RTI0MkIyQjIzMzU5NDA1MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDMS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0VBMzBGNkExN0VGRkU3NTAwMjU3RDBC
IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmggaW4gSGVhZGVycyAqLywKIAkJCQk2
RTNGQUQzOTE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNkVFOEE3NzMxMEY4MDNGMzAwNUE0QTI0IC8qIEpTV2ViR0xD
b250ZXh0QXR0cmlidXRlcy5oIGluIEhlYWRlcnMgKi8sCkBAIC0zMjY5MCw2ICszMjcxNiw4IEBA
CiAJCQkJNDlDN0I5QzkxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMQnVmZmVyLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlEMDhCMDBFNDIwQTI4MjU5MDAwNEJDMEEgLyogV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUFTVEMuaCBpbiBIZWFkZXJzICovLAogCQkJCTdFNjZFMjM0MTZENkVCNkMwMEY3RTdGRiAv
KiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RThBQ0RF
RDIzMzQ1Q0JDMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNkUwQjkwNjkyMzIxQTY4RDAwNjIyM0IyIC8qIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVFVEMxLmggaW4gSGVhZGVycyAqLywKIAkJCQk3RTY2RTIzNDE3RTZFQjZDMDBGN0U3RkYg
LyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLmggaW4gSGVhZGVycyAqLywKIAkJCQk2RTNG
QUU4RjE0NzMzRkRCMDBFNDIzMDYgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTZFNEU5MUFGMTBGN0ZCMzEwMEEyNzc5QyAvKiBXZWJHTENvbnRleHRB
dHRyaWJ1dGVzLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NQ29udmVydFdlYkdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NQ29udmVydFdlYkdMLmNwcAppbmRleCA5MDBlMGY3NjIxMjYwNjdmOWMyMmEwN2Yw
ZGEzYmZjZDNkMWFkNWNjLi43OGE0YWU2MmU3NDdhYzcxNjY4MTMzM2I0ZTQ0N2ZmYTViZTYxZDEw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRXZWJH
TC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db252ZXJ0V2ViR0wu
Y3BwCkBAIC00NSw2ICs0NSw4IEBACiAjaW5jbHVkZSAiSlNXZWJHTEJ1ZmZlci5oIgogI2luY2x1
ZGUgIkpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuaCIKICNpbmNsdWRlICJKU1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVBVEMuaCIKKyNpbmNsdWRlICJKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMuaCIKKyNpbmNsdWRlICJKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgiCiAjaW5jbHVk
ZSAiSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaCIKICNpbmNsdWRlICJKU1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVTM1RDLmgiCiAjaW5jbHVkZSAiSlNXZWJHTERlYnVnUmVuZGVyZXJJbmZv
LmgiCkBAIC0xNzYsNiArMTc4LDEwIEBAIEpTVmFsdWUgY29udmVydFRvSlNWYWx1ZShKU0dsb2Jh
bE9iamVjdCYgbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3QmCiAgICAgICAg
IHJldHVybiB0b0pTKCZsZXhpY2FsR2xvYmFsT2JqZWN0LCAmZ2xvYmFsT2JqZWN0LCBzdGF0aWNf
Y2FzdDxXZWJHTERlYnVnU2hhZGVycyY+KGV4dGVuc2lvbikpOwogICAgIGNhc2UgV2ViR0xFeHRl
bnNpb246OldlYkdMQ29tcHJlc3NlZFRleHR1cmVBVENOYW1lOgogICAgICAgICByZXR1cm4gdG9K
UygmbGV4aWNhbEdsb2JhbE9iamVjdCwgJmdsb2JhbE9iamVjdCwgc3RhdGljX2Nhc3Q8V2ViR0xD
b21wcmVzc2VkVGV4dHVyZUFUQyY+KGV4dGVuc2lvbikpOworICAgIGNhc2UgV2ViR0xFeHRlbnNp
b246OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVENOYW1lOgorICAgICAgICByZXR1cm4gdG9KUygm
bGV4aWNhbEdsb2JhbE9iamVjdCwgJmdsb2JhbE9iamVjdCwgc3RhdGljX2Nhc3Q8V2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQyY+KGV4dGVuc2lvbikpOworICAgIGNhc2UgV2ViR0xFeHRlbnNpb246
OldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxTmFtZToKKyAgICAgICAgcmV0dXJuIHRvSlMoJmxl
eGljYWxHbG9iYWxPYmplY3QsICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVFVEMxJj4oZXh0ZW5zaW9uKSk7CiAgICAgY2FzZSBXZWJHTEV4dGVuc2lvbjo6
V2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDTmFtZToKICAgICAgICAgcmV0dXJuIHRvSlMoJmxl
eGljYWxHbG9iYWxPYmplY3QsICZnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVQVlJUQyY+KGV4dGVuc2lvbikpOwogICAgIGNhc2UgV2ViR0xFeHRlbnNpb246
OldlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDTmFtZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1dlYkdMMlJlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKaW5kZXggY2Q0NzIxMjYx
YjJlMDIyYjU1MjVkZDNkM2NhNTQ2OWY5YzBiM2VhOS4uNGJhZjNhYTAxOGJkYjlmZDM3OTA1ODY1
OWQxYzgyZTIzNWVhZjhkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAKQEAgLTQ1LDYgKzQ1LDggQEAKICNpbmNsdWRl
ICJXZWJHTEFjdGl2ZUluZm8uaCIKICNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNU
Qy5oIgogI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCIKKyNpbmNsdWRlICJX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgiCisjaW5jbHVkZSAiV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQzEuaCIKICNpbmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaCIKICNp
bmNsdWRlICJXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5oIgogI2luY2x1ZGUgIldlYkdMRGVi
dWdSZW5kZXJlckluZm8uaCIKQEAgLTEzNzMsMTAgKzEzNzUsMTIgQEAgV2ViR0xFeHRlbnNpb24q
IFdlYkdMMlJlbmRlcmluZ0NvbnRleHQ6OmdldEV4dGVuc2lvbihjb25zdCBTdHJpbmcmIG5hbWUp
CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChPRVNUZXh0dXJlSGFsZkZsb2F0LCBtX29lc1RleHR1
cmVIYWxmRmxvYXQsICJPRVNfdGV4dHVyZV9oYWxmX2Zsb2F0IiwgZW5hYmxlU3VwcG9ydGVkRXh0
ZW5zaW9uKCJHTF9PRVNfdGV4dHVyZV9oYWxmX2Zsb2F0Il9zKSk7CiAgICAgRU5BQkxFX0lGX1JF
UVVFU1RFRChPRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLCBtX29lc1RleHR1cmVIYWxmRmxvYXRM
aW5lYXIsICJPRVNfdGV4dHVyZV9oYWxmX2Zsb2F0X2xpbmVhciIsIGVuYWJsZVN1cHBvcnRlZEV4
dGVuc2lvbigiR0xfT0VTX3RleHR1cmVfaGFsZl9mbG9hdF9saW5lYXIiX3MpKTsKICAgICBFTkFC
TEVfSUZfUkVRVUVTVEVEKFdlYkdMTG9zZUNvbnRleHQsIG1fd2ViZ2xMb3NlQ29udGV4dCwgIldF
QkdMX2xvc2VfY29udGV4dCIsIHRydWUpOworICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUFTVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFTVEMsICJXRUJH
TF9jb21wcmVzc2VkX3RleHR1cmVfYXN0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDOjpz
dXBwb3J0ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVBVEMsIG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZUFUQywgIldFQktJVF9XRUJHTF9j
b21wcmVzc2VkX3RleHR1cmVfYXRjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQzo6c3VwcG9y
dGVkKCp0aGlzKSk7CisgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDLCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVFVEMsICJXRUJHTF9jb21wcmVzc2VkX3Rl
eHR1cmVfZXRjIiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6c3VwcG9ydGVkKCp0aGlzKSk7
CisgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMSwgbV93
ZWJnbENvbXByZXNzZWRUZXh0dXJlRVRDMSwgIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMx
IiwgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OnN1cHBvcnRlZCgqdGhpcykpOwogICAgIEVO
QUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLCBtX3dlYmdsQ29t
cHJlc3NlZFRleHR1cmVQVlJUQywgIldFQktJVF9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfcHZy
dGMiLCBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEM6OnN1cHBvcnRlZCgqdGhpcykpOwogICAg
IEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMsIG1fd2ViZ2xD
b21wcmVzc2VkVGV4dHVyZVMzVEMsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfczN0YyIsIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDOjpzdXBwb3J0ZWQoKnRoaXMpKTsKLSAgICBFTkFCTEVf
SUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLCBtX3dlYmdsQ29tcHJlc3Nl
ZFRleHR1cmVBU1RDLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2FzdGMiLCBXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlQVNUQzo6c3VwcG9ydGVkKCp0aGlzKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVF
U1RFRChXZWJHTERlcHRoVGV4dHVyZSwgbV93ZWJnbERlcHRoVGV4dHVyZSwgIldFQkdMX2RlcHRo
X3RleHR1cmUiLCBXZWJHTERlcHRoVGV4dHVyZTo6c3VwcG9ydGVkKCpncmFwaGljc0NvbnRleHQz
RCgpKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTERlYnVnUmVuZGVyZXJJbmZvLCBt
X3dlYmdsRGVidWdSZW5kZXJlckluZm8sICJXRUJHTF9kZWJ1Z19yZW5kZXJlcl9pbmZvIiwgdHJ1
ZSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTERlYnVnU2hhZGVycywgbV93ZWJnbERl
YnVnU2hhZGVycywgIldFQkdMX2RlYnVnX3NoYWRlcnMiLCBtX2NvbnRleHQtPmdldEV4dGVuc2lv
bnMoKS5zdXBwb3J0cygiR0xfQU5HTEVfdHJhbnNsYXRlZF9zaGFkZXJfc291cmNlIl9zKSk7CkBA
IC0xNDA0LDE0ICsxNDA4LDE4IEBAIE9wdGlvbmFsPFZlY3RvcjxTdHJpbmc+PiBXZWJHTDJSZW5k
ZXJpbmdDb250ZXh0OjpnZXRTdXBwb3J0ZWRFeHRlbnNpb25zKCkKICAgICAgICAgcmVzdWx0LmFw
cGVuZCgiT0VTX3RleHR1cmVfaGFsZl9mbG9hdF9saW5lYXIiX3MpOwogICAgIGlmIChleHRlbnNp
b25zLnN1cHBvcnRzKCJHTF9FWFRfdGV4dHVyZV9maWx0ZXJfYW5pc290cm9waWMiX3MpKQogICAg
ICAgICByZXN1bHQuYXBwZW5kKCJXRUJLSVRfRVhUX3RleHR1cmVfZmlsdGVyX2FuaXNvdHJvcGlj
Il9zKTsKKyAgICBpZiAoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEM6OnN1cHBvcnRlZCgqdGhp
cykpCisgICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9hc3Rj
Il9zKTsKICAgICBpZiAoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQzo6c3VwcG9ydGVkKCp0aGlz
KSkKICAgICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVy
ZV9hdGMiX3MpOworICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOjpzdXBwb3J0ZWQo
KnRoaXMpKQorICAgICAgICByZXN1bHQuYXBwZW5kKCJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVf
ZXRjIl9zKTsKKyAgICBpZiAoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OnN1cHBvcnRlZCgq
dGhpcykpCisgICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9l
dGMxIl9zKTsKICAgICBpZiAoV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDOjpzdXBwb3J0ZWQo
KnRoaXMpKQogICAgICAgICByZXN1bHQuYXBwZW5kKCJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90
ZXh0dXJlX3B2cnRjIl9zKTsKICAgICBpZiAoV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEM6OnN1
cHBvcnRlZCgqdGhpcykpCiAgICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQkdMX2NvbXByZXNzZWRf
dGV4dHVyZV9zM3RjIl9zKTsKLSAgICBpZiAoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEM6OnN1
cHBvcnRlZCgqdGhpcykpCi0gICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQkdMX2NvbXByZXNzZWRf
dGV4dHVyZV9hc3RjIl9zKTsKICAgICBpZiAoV2ViR0xEZXB0aFRleHR1cmU6OnN1cHBvcnRlZCgq
Z3JhcGhpY3NDb250ZXh0M0QoKSkpCiAgICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQkdMX2RlcHRo
X3RleHR1cmUiX3MpOwogICAgIHJlc3VsdC5hcHBlbmQoIldFQkdMX2xvc2VfY29udGV4dCJfcyk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY0Yzk0YTZkNjNmNDliMjY2ODFkYTM1NzYyNWJj
YmQ1MWQxYmM3NjQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcApAQCAtMCwwICsxLDY3IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShXRUJHTCkKKyNpbmNsdWRl
ICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgiCisKKyNpbmNsdWRlICJFeHRlbnNpb25zM0Qu
aCIKKyNpbmNsdWRlICJXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgiCisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6V2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQyhXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlJiBjb250ZXh0KQorICAgIDogV2ViR0xF
eHRlbnNpb24oY29udGV4dCkKK3sKKyAgICBjb250ZXh0LmdyYXBoaWNzQ29udGV4dDNEKCktPmdl
dEV4dGVuc2lvbnMoKS5lbnN1cmVFbmFibGVkKCJHTF9BTkdMRV9jb21wcmVzc2VkX3RleHR1cmVf
ZXRjIik7CisKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lv
bnMzRDo6Q09NUFJFU1NFRF9SMTFfRUFDKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0
dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TSUdORURfUjExX0VBQyk7CisgICAg
Y29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6OkNPTVBSRVNT
RURfUkcxMV9FQUMpOworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0
ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9SRzExX0VBQyk7CisgICAgY29udGV4dC5hZGRD
b21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfUkdCOF9FVEMy
KTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6
Q09NUFJFU1NFRF9TUkdCOF9FVEMyKTsKKyAgICBjb250ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJl
Rm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0I4X1BVTkNIVEhST1VHSF9BTFBIQTFf
RVRDMik7CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChFeHRlbnNpb25z
M0Q6OkNPTVBSRVNTRURfU1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMyKTsKKyAgICBjb250
ZXh0LmFkZENvbXByZXNzZWRUZXh0dXJlRm9ybWF0KEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9S
R0JBOF9FVEMyX0VBQyk7CisgICAgY29udGV4dC5hZGRDb21wcmVzc2VkVGV4dHVyZUZvcm1hdChF
eHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0VUQzJfRUFDKTsKK30KKworV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzo6fldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMoKSA9IGRl
ZmF1bHQ7CisKK1dlYkdMRXh0ZW5zaW9uOjpFeHRlbnNpb25OYW1lIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVFVEM6OmdldE5hbWUoKSBjb25zdAoreworICAgIHJldHVybiBXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDTmFtZTsKK30KKworYm9vbCBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOjpzdXBw
b3J0ZWQoV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZSYgY29udGV4dCkKK3sKKyAgICByZXR1cm4g
Y29udGV4dC5ncmFwaGljc0NvbnRleHQzRCgpLT5nZXRFeHRlbnNpb25zKCkuc3VwcG9ydHMoIkdM
X0FOR0xFX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMiKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdh
MzM4YWRhMjZlYjkyNGNjYWExMDI1Yjg3OGJhM2Q5MjNkZjhhNDYKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmgK
QEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJM
RShXRUJHTCkKKworI2luY2x1ZGUgIldlYkdMRXh0ZW5zaW9uLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQyBmaW5hbCA6IHB1YmxpYyBX
ZWJHTEV4dGVuc2lvbiB7CitwdWJsaWM6CisgICAgZXhwbGljaXQgV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQyhXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlJik7CisgICAgdmlydHVhbCB+V2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQygpOworCisgICAgc3RhdGljIGJvb2wgc3VwcG9ydGVkKFdlYkdM
UmVuZGVyaW5nQ29udGV4dEJhc2UmKTsKKyAgICBFeHRlbnNpb25OYW1lIGdldE5hbWUoKSBjb25z
dCBvdmVycmlkZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJl
RVRDLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1
cmVFVEMuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5NTNmYWEzYjczODljYzY1ZDZlMDlkNDMzMzc5ZGJkMTE2
YzU4NzMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbApAQCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
Ky8vIGh0dHBzOi8vd3d3Lmtocm9ub3Mub3JnL3JlZ2lzdHJ5L3dlYmdsL2V4dGVuc2lvbnMvV0VC
R0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0Yy8KKworWworICAgIENvbmRpdGlvbmFsPVdFQkdMLAor
ICAgIERvTm90Q2hlY2tDb25zdGFudHMsCisgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsV2Vi
R0xSZW5kZXJpbmdDb250ZXh0LAorICAgIE5vSW50ZXJmYWNlT2JqZWN0LAorXSBpbnRlcmZhY2Ug
V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQyB7CisgICAgLyogQ29tcHJlc3NlZCBUZXh0dXJlIEZv
cm1hdCAqLworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9SMTFfRUFDICAgICAg
ICAgICAgICAgICAgICAgICAgPSAweDkyNzA7CisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBDT01Q
UkVTU0VEX1NJR05FRF9SMTFfRUFDICAgICAgICAgICAgICAgICA9IDB4OTI3MTsKKyAgICBjb25z
dCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfUkcxMV9FQUMgICAgICAgICAgICAgICAgICAgICAg
ID0gMHg5MjcyOworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9TSUdORURfUkcx
MV9FQUMgICAgICAgICAgICAgICAgPSAweDkyNzM7CisgICAgY29uc3QgdW5zaWduZWQgbG9uZyBD
T01QUkVTU0VEX1JHQjhfRVRDMiAgICAgICAgICAgICAgICAgICAgICA9IDB4OTI3NDsKKyAgICBj
b25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfU1JHQjhfRVRDMiAgICAgICAgICAgICAgICAg
ICAgID0gMHg5Mjc1OworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9SR0I4X1BV
TkNIVEhST1VHSF9BTFBIQTFfRVRDMiAgPSAweDkyNzY7CisgICAgY29uc3QgdW5zaWduZWQgbG9u
ZyBDT01QUkVTU0VEX1NSR0I4X1BVTkNIVEhST1VHSF9BTFBIQTFfRVRDMiA9IDB4OTI3NzsKKyAg
ICBjb25zdCB1bnNpZ25lZCBsb25nIENPTVBSRVNTRURfUkdCQThfRVRDMl9FQUMgICAgICAgICAg
ICAgICAgID0gMHg5Mjc4OworICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9TUkdC
OF9BTFBIQThfRVRDMl9FQUMgICAgICAgICAgPSAweDkyNzk7Cit9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3Bw
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmJkYzNiZWUwYTg3NmFjZjY5ODFiMDA0OGM2NzUwM2QzYzRjZmJjZTYKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5jcHAKQEAgLTAsMCArMSw1OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoV0VCR0wpCisjaW5jbHVkZSAiV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQzEuaCIKKworI2luY2x1ZGUgIkV4dGVuc2lvbnMzRC5oIgorI2luY2x1ZGUg
IldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEoV2Vi
R0xSZW5kZXJpbmdDb250ZXh0QmFzZSYgY29udGV4dCkKKyAgICA6IFdlYkdMRXh0ZW5zaW9uKGNv
bnRleHQpCit7CisgICAgY29udGV4dC5ncmFwaGljc0NvbnRleHQzRCgpLT5nZXRFeHRlbnNpb25z
KCkuZW5zdXJlRW5hYmxlZCgiR0xfT0VTX2NvbXByZXNzZWRfRVRDMV9SR0I4X3RleHR1cmUiKTsK
KworICAgIGNvbnRleHQuYWRkQ29tcHJlc3NlZFRleHR1cmVGb3JtYXQoRXh0ZW5zaW9uczNEOjpF
VEMxX1JHQjhfT0VTKTsKK30KKworV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6On5XZWJHTENv
bXByZXNzZWRUZXh0dXJlRVRDMSgpID0gZGVmYXVsdDsKKworV2ViR0xFeHRlbnNpb246OkV4dGVu
c2lvbk5hbWUgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OmdldE5hbWUoKSBjb25zdAorewor
ICAgIHJldHVybiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMU5hbWU7Cit9CisKK2Jvb2wgV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUVUQzE6OnN1cHBvcnRlZChXZWJHTFJlbmRlcmluZ0NvbnRleHRC
YXNlJiBjb250ZXh0KQoreworICAgIHJldHVybiBjb250ZXh0LmdyYXBoaWNzQ29udGV4dDNEKCkt
PmdldEV4dGVuc2lvbnMoKS5zdXBwb3J0cygiR0xfT0VTX2NvbXByZXNzZWRfRVRDMV9SR0I4X3Rl
eHR1cmUiKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxF
KFdFQkdMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQzEuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29t
cHJlc3NlZFRleHR1cmVFVEMxLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGY3NmE0ODBjM2Q2YjViNjVhZDJhYWM5
MzA4YmFhZjdiZjA2NzBmZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Y2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgKQEAgLTAsMCArMSw0NSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJHTCkKKworI2luY2x1ZGUg
IldlYkdMRXh0ZW5zaW9uLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzEgZmluYWwgOiBwdWJsaWMgV2ViR0xFeHRlbnNpb24geworcHVi
bGljOgorICAgIGV4cGxpY2l0IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxKFdlYkdMUmVuZGVy
aW5nQ29udGV4dEJhc2UmKTsKKyAgICB2aXJ0dWFsIH5XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRD
MSgpOworCisgICAgc3RhdGljIGJvb2wgc3VwcG9ydGVkKFdlYkdMUmVuZGVyaW5nQ29udGV4dEJh
c2UmKTsKKyAgICBFeHRlbnNpb25OYW1lIGdldE5hbWUoKSBjb25zdCBvdmVycmlkZTsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZjNjM2M2NWQ0Y2M3ZmY1YjVkOGEyM2ZmZTg5NjJmMDE4MDYzMzE3YwotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1
cmVFVEMxLmlkbApAQCAtMCwwICsxLDM2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKy8vIGh0dHBzOi8vd3d3
Lmtocm9ub3Mub3JnL3JlZ2lzdHJ5L3dlYmdsL2V4dGVuc2lvbnMvV0VCR0xfY29tcHJlc3NlZF90
ZXh0dXJlX2V0YzEvCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJHTCwKKyAgICBEb05vdENoZWNr
Q29uc3RhbnRzLAorICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbFdlYkdMUmVuZGVyaW5nQ29u
dGV4dCwKKyAgICBOb0ludGVyZmFjZU9iamVjdCwKK10gaW50ZXJmYWNlIFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVFVEMxIHsKKyAgICAvKiBDb21wcmVzc2VkIFRleHR1cmUgRm9ybWF0cyAqLworICAg
IGNvbnN0IHVuc2lnbmVkIGxvbmcgQ09NUFJFU1NFRF9SR0JfRVRDMV9XRUJHTCA9IDB4OEQ2NDsK
K307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEV4dGVuc2lv
bi5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xFeHRlbnNpb24uaAppbmRleCAy
YTFhMzRjYTdmNDZkNDFiZDhkN2IyNDJkZDU4MWVmOGY4ZjYxNjExLi4wMmExZTgxZDVhYzE4MGI0
ZDc0NmRhN2IzZjliZmZjNTQ0NjQ2NDgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L2NhbnZhcy9XZWJHTEV4dGVuc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFz
L1dlYkdMRXh0ZW5zaW9uLmgKQEAgLTU1LDYgKzU1LDggQEAgcHVibGljOgogICAgICAgICBXZWJH
TERyYXdCdWZmZXJzTmFtZSwKICAgICAgICAgT0VTRWxlbWVudEluZGV4VWludE5hbWUsCiAgICAg
ICAgIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVENOYW1lLAorICAgICAgICBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDTmFtZSwKKyAgICAgICAgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzFOYW1l
LAogICAgICAgICBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVENOYW1lLAogICAgICAgICBXZWJH
TENvbXByZXNzZWRUZXh0dXJlQVNUQ05hbWUsCiAgICAgICAgIEFOR0xFSW5zdGFuY2VkQXJyYXlz
TmFtZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVy
aW5nQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmlu
Z0NvbnRleHQuY3BwCmluZGV4IGU1ZmRlNzAzMzc0NTZhMzFlMTU3MWVlMTBmM2ZkMjY0MmRiMDM2
YjkuLmJlZmE4MGEzMDMwZTY4OGQ1MDM3M2MxNzg2NDM0NzFmOWRhY2IzNGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcApA
QCAtNTEsNiArNTEsOCBAQAogI2luY2x1ZGUgIlJlbmRlckJveC5oIgogI2luY2x1ZGUgIldlYkdM
Q29tcHJlc3NlZFRleHR1cmVBU1RDLmgiCiAjaW5jbHVkZSAiV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUFUQy5oIgorI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCIKKyNpbmNsdWRl
ICJXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5oIgogI2luY2x1ZGUgIldlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVQVlJUQy5oIgogI2luY2x1ZGUgIldlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmgi
CiAjaW5jbHVkZSAiV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5oIgpAQCAtMTQ4LDEwICsxNTAsMTIg
QEAgV2ViR0xFeHRlbnNpb24qIFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6Z2V0RXh0ZW5zaW9uKGNv
bnN0IFN0cmluZyYgbmFtZSkKICAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKE9FU1ZlcnRleEFycmF5
T2JqZWN0LCBtX29lc1ZlcnRleEFycmF5T2JqZWN0LCAiT0VTX3ZlcnRleF9hcnJheV9vYmplY3Qi
LCBlbmFibGVTdXBwb3J0ZWRFeHRlbnNpb24oIkdMX09FU192ZXJ0ZXhfYXJyYXlfb2JqZWN0Il9z
KSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChPRVNFbGVtZW50SW5kZXhVaW50LCBtX29lc0Vs
ZW1lbnRJbmRleFVpbnQsICJPRVNfZWxlbWVudF9pbmRleF91aW50IiwgZW5hYmxlU3VwcG9ydGVk
RXh0ZW5zaW9uKCJHTF9PRVNfZWxlbWVudF9pbmRleF91aW50Il9zKSk7CiAgICAgRU5BQkxFX0lG
X1JFUVVFU1RFRChXZWJHTExvc2VDb250ZXh0LCBtX3dlYmdsTG9zZUNvbnRleHQsICJXRUJHTF9s
b3NlX2NvbnRleHQiLCB0cnVlKTsKKyAgICBFTkFCTEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVBU1RDLCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVBU1RDLCAiV0VCR0xfY29t
cHJlc3NlZF90ZXh0dXJlX2FzdGMiLCBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzo6c3VwcG9y
dGVkKCp0aGlzKSk7CiAgICAgRU5BQkxFX0lGX1JFUVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0
dXJlQVRDLCBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVBVEMsICJXRUJLSVRfV0VCR0xfY29tcHJl
c3NlZF90ZXh0dXJlX2F0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEM6OnN1cHBvcnRlZCgq
dGhpcykpOworICAgIEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
QywgbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlRVRDLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJl
X2V0YyIsIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6OnN1cHBvcnRlZCgqdGhpcykpOworICAg
IEVOQUJMRV9JRl9SRVFVRVNURUQoV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEsIG1fd2ViZ2xD
b21wcmVzc2VkVGV4dHVyZUVUQzEsICJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfZXRjMSIsIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxOjpzdXBwb3J0ZWQoKnRoaXMpKTsKICAgICBFTkFCTEVf
SUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQywgbV93ZWJnbENvbXByZXNz
ZWRUZXh0dXJlUFZSVEMsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3B2cnRjIiwg
V2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDOjpzdXBwb3J0ZWQoKnRoaXMpKTsKICAgICBFTkFC
TEVfSUZfUkVRVUVTVEVEKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLCBtX3dlYmdsQ29tcHJl
c3NlZFRleHR1cmVTM1RDLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3MzdGMiLCBXZWJHTENv
bXByZXNzZWRUZXh0dXJlUzNUQzo6c3VwcG9ydGVkKCp0aGlzKSk7Ci0gICAgRU5BQkxFX0lGX1JF
UVVFU1RFRChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQywgbV93ZWJnbENvbXByZXNzZWRUZXh0
dXJlQVNUQywgIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9hc3RjIiwgV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUFTVEM6OnN1cHBvcnRlZCgqdGhpcykpOwogICAgIEVOQUJMRV9JRl9SRVFVRVNURUQo
V2ViR0xEZXB0aFRleHR1cmUsIG1fd2ViZ2xEZXB0aFRleHR1cmUsICJXRUJHTF9kZXB0aF90ZXh0
dXJlIiwgV2ViR0xEZXB0aFRleHR1cmU6OnN1cHBvcnRlZCgqbV9jb250ZXh0KSk7CiAgICAgaWYg
KGVxdWFsSWdub3JpbmdBU0NJSUNhc2UobmFtZSwgIldFQkdMX2RyYXdfYnVmZmVycyIpKSB7CiAg
ICAgICAgIGlmICghbV93ZWJnbERyYXdCdWZmZXJzKSB7CkBAIC0yMTcsMTQgKzIyMSwxOCBAQCBP
cHRpb25hbDxWZWN0b3I8U3RyaW5nPj4gV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRTdXBwb3J0
ZWRFeHRlbnNpb25zKCkKICAgICBpZiAobV9jb250ZXh0LT5nZXRFeHRlbnNpb25zKCkuc3VwcG9y
dHMoIkdMX09FU19lbGVtZW50X2luZGV4X3VpbnQiX3MpKQogICAgICAgICByZXN1bHQuYXBwZW5k
KCJPRVNfZWxlbWVudF9pbmRleF91aW50Il9zKTsKICAgICByZXN1bHQuYXBwZW5kKCJXRUJHTF9s
b3NlX2NvbnRleHQiX3MpOworICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQzo6c3Vw
cG9ydGVkKCp0aGlzKSkKKyAgICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfY29tcHJlc3NlZF90
ZXh0dXJlX2FzdGMiX3MpOwogICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDOjpzdXBw
b3J0ZWQoKnRoaXMpKQogICAgICAgICByZXN1bHQuYXBwZW5kKCJXRUJLSVRfV0VCR0xfY29tcHJl
c3NlZF90ZXh0dXJlX2F0YyJfcyk7CisgICAgaWYgKFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM6
OnN1cHBvcnRlZCgqdGhpcykpCisgICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQkdMX2NvbXByZXNz
ZWRfdGV4dHVyZV9ldGMiX3MpOworICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMTo6
c3VwcG9ydGVkKCp0aGlzKSkKKyAgICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xfY29tcHJlc3Nl
ZF90ZXh0dXJlX2V0YzEiX3MpOwogICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEM6
OnN1cHBvcnRlZCgqdGhpcykpCiAgICAgICAgIHJlc3VsdC5hcHBlbmQoIldFQktJVF9XRUJHTF9j
b21wcmVzc2VkX3RleHR1cmVfcHZydGMiX3MpOwogICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0
dXJlUzNUQzo6c3VwcG9ydGVkKCp0aGlzKSkKICAgICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xf
Y29tcHJlc3NlZF90ZXh0dXJlX3MzdGMiX3MpOwotICAgIGlmIChXZWJHTENvbXByZXNzZWRUZXh0
dXJlQVNUQzo6c3VwcG9ydGVkKCp0aGlzKSkKLSAgICAgICAgcmVzdWx0LmFwcGVuZCgiV0VCR0xf
Y29tcHJlc3NlZF90ZXh0dXJlX2FzdGMiX3MpOwogICAgIGlmIChXZWJHTERlcHRoVGV4dHVyZTo6
c3VwcG9ydGVkKCptX2NvbnRleHQpKQogICAgICAgICByZXN1bHQuYXBwZW5kKCJXRUJHTF9kZXB0
aF90ZXh0dXJlIl9zKTsKICAgICBpZiAoc3VwcG9ydHNEcmF3QnVmZmVycygpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNl
LmNwcAppbmRleCAxNGE3MDk1NjAwMWNiYjk5NzJiNmU2MDdiZDcwNzE1NmJkYjljMDVhLi4yMTFj
NmRhYjRjOGE1ZTg0ODdiNWI4N2UwZjcwOTE3NmMyZGE3MTRlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcApA
QCAtMzA5MSw3ICszMDkxLDEwIEBAIGJvb2wgV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6ZXh0
ZW5zaW9uSXNFbmFibGVkKGNvbnN0IFN0cmluZyYgbmFtZSkKICAgICBDSEVDS19FWFRFTlNJT04o
bV93ZWJnbExvc2VDb250ZXh0LCAiV0VCR0xfbG9zZV9jb250ZXh0Iik7CiAgICAgQ0hFQ0tfRVhU
RU5TSU9OKG1fd2ViZ2xEZWJ1Z1JlbmRlcmVySW5mbywgIldFQkdMX2RlYnVnX3JlbmRlcmVyX2lu
Zm8iKTsKICAgICBDSEVDS19FWFRFTlNJT04obV93ZWJnbERlYnVnU2hhZGVycywgIldFQkdMX2Rl
YnVnX3NoYWRlcnMiKTsKKyAgICBDSEVDS19FWFRFTlNJT04obV93ZWJnbENvbXByZXNzZWRUZXh0
dXJlQVNUQywgIldFQktJVF9XRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfYXN0YyIpOwogICAgIENI
RUNLX0VYVEVOU0lPTihtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVBVEMsICJXRUJLSVRfV0VCR0xf
Y29tcHJlc3NlZF90ZXh0dXJlX2F0YyIpOworICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmdsQ29t
cHJlc3NlZFRleHR1cmVFVEMsICJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YyIp
OworICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVFVEMxLCAiV0VC
S0lUX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9ldGMxIik7CiAgICAgQ0hFQ0tfRVhURU5TSU9O
KG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZVBWUlRDLCAiV0VCS0lUX1dFQkdMX2NvbXByZXNzZWRf
dGV4dHVyZV9wdnJ0YyIpOwogICAgIENIRUNLX0VYVEVOU0lPTihtX3dlYmdsQ29tcHJlc3NlZFRl
eHR1cmVTM1RDLCAiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3MzdGMiKTsKICAgICBDSEVDS19F
WFRFTlNJT04obV93ZWJnbERlcHRoVGV4dHVyZSwgIldFQkdMX2RlcHRoX3RleHR1cmUiKTsKQEAg
LTU1NjIsMTkgKzU1NjUsMjEgQEAgYm9vbCBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjp2YWxp
ZGF0ZUNvbXByZXNzZWRUZXhGdW5jRGF0YShjb25zdCBjaGFyKiBmdW5jdGkKICAgICBjb25zdCBH
QzNEZW51bSBBU1RDRW51bVN0YXJ0UkdCQSA9IEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JB
X0FTVENfNHg0X0tIUjsKICAgICBjb25zdCBHQzNEZW51bSBBU1RDRW51bVN0YXJ0U1JHQjggPSBF
eHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0FTVENfNHg0X0tIUjsKIAorICAg
IGNvbnN0IGludCBrRUFDQW5kRVRDMkJsb2NrU2l6ZSA9IDQ7CisKICAgICBzd2l0Y2ggKGZvcm1h
dCkgewogICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQl9TM1RDX0RYVDFfRVhU
OgogICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQkFfUzNUQ19EWFQxX0VYVDoK
ICAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9BVENfUkdCX0FNRDoKLSAgICAgICAg
ewotICAgICAgICAgICAgY29uc3QgaW50IGtCbG9ja1NpemUgPSA4OwotICAgICAgICAgICAgY29u
c3QgaW50IGtCbG9ja1dpZHRoID0gNDsKLSAgICAgICAgICAgIGNvbnN0IGludCBrQmxvY2tIZWln
aHQgPSA0OwotICAgICAgICAgICAgaW50IG51bUJsb2Nrc0Fjcm9zcyA9ICh3aWR0aCArIGtCbG9j
a1dpZHRoIC0gMSkgLyBrQmxvY2tXaWR0aDsKLSAgICAgICAgICAgIGludCBudW1CbG9ja3NEb3du
ID0gKGhlaWdodCArIGtCbG9ja0hlaWdodCAtIDEpIC8ga0Jsb2NrSGVpZ2h0OwotICAgICAgICAg
ICAgYnl0ZXNSZXF1aXJlZCA9IG51bUJsb2Nrc0Fjcm9zcyAqIG51bUJsb2Nrc0Rvd24gKiBrQmxv
Y2tTaXplOwotICAgICAgICB9CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkVUQzFfUkdCOF9PRVM6
IHsKKyAgICAgICAgY29uc3QgaW50IGtCbG9ja1NpemUgPSA4OworICAgICAgICBjb25zdCBpbnQg
a0Jsb2NrV2lkdGggPSA0OworICAgICAgICBjb25zdCBpbnQga0Jsb2NrSGVpZ2h0ID0gNDsKKyAg
ICAgICAgaW50IG51bUJsb2Nrc0Fjcm9zcyA9ICh3aWR0aCArIGtCbG9ja1dpZHRoIC0gMSkgLyBr
QmxvY2tXaWR0aDsKKyAgICAgICAgaW50IG51bUJsb2Nrc0Rvd24gPSAoaGVpZ2h0ICsga0Jsb2Nr
SGVpZ2h0IC0gMSkgLyBrQmxvY2tIZWlnaHQ7CisgICAgICAgIGJ5dGVzUmVxdWlyZWQgPSBudW1C
bG9ja3NBY3Jvc3MgKiBudW1CbG9ja3NEb3duICoga0Jsb2NrU2l6ZTsKICAgICAgICAgYnJlYWs7
CisgICAgfQogICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQkFfUzNUQ19EWFQz
X0VYVDoKICAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JBX1MzVENfRFhUNV9F
WFQ6CiAgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfQVRDX1JHQkFfRVhQTElDSVRf
QUxQSEFfQU1EOgpAQCAtNTYzOCw2ICs1NjQzLDM2IEBAIGJvb2wgV2ViR0xSZW5kZXJpbmdDb250
ZXh0QmFzZTo6dmFsaWRhdGVDb21wcmVzc2VkVGV4RnVuY0RhdGEoY29uc3QgY2hhciogZnVuY3Rp
CiAgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0FTVENfMTJ4
MTJfS0hSOgogICAgICAgICBieXRlc1JlcXVpcmVkID0gY2FsY3VsYXRlQnl0ZXNGb3JBU1RDKHdp
ZHRoLCBoZWlnaHQsIEFTVENQYXJhbWV0ZXJzW2Zvcm1hdCAtIEFTVENFbnVtU3RhcnRTUkdCOF0p
OwogICAgICAgICBicmVhazsKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SMTFf
RUFDOgorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9SMTFfRUFDOgor
ICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQjhfRVRDMjoKKyAgICBjYXNlIEV4
dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9FVEMyOgorICAgIGNhc2UgRXh0ZW5zaW9uczNE
OjpDT01QUkVTU0VEX1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMyOgorICAgIGNhc2UgRXh0
ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NSR0I4X1BVTkNIVEhST1VHSF9BTFBIQTFfRVRDMjogewor
ICAgICAgICBDaGVja2VkPHVuc2lnbmVkLCBSZWNvcmRPdmVyZmxvdz4gY2hlY2tlZEJ5dGVzUmVx
dWlyZWQgPSAod2lkdGggKyBrRUFDQW5kRVRDMkJsb2NrU2l6ZSAtIDEpIC8ga0VBQ0FuZEVUQzJC
bG9ja1NpemU7CisgICAgICAgIGNoZWNrZWRCeXRlc1JlcXVpcmVkICo9IChoZWlnaHQgKyBrRUFD
QW5kRVRDMkJsb2NrU2l6ZSAtIDEpIC8ga0VBQ0FuZEVUQzJCbG9ja1NpemU7CisgICAgICAgIGNo
ZWNrZWRCeXRlc1JlcXVpcmVkICo9IDg7CisgICAgICAgIGlmIChjaGVja2VkQnl0ZXNSZXF1aXJl
ZC5oYXNPdmVyZmxvd2VkKCkpIHsKKyAgICAgICAgICAgIHN5bnRoZXNpemVHTEVycm9yKEdyYXBo
aWNzQ29udGV4dDNEOjpJTlZBTElEX1ZBTFVFLCBmdW5jdGlvbk5hbWUsICJ0b28gbGFyZ2UgZGlt
ZW5zaW9ucyIpOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgICAg
IGJ5dGVzUmVxdWlyZWQgPSBjaGVja2VkQnl0ZXNSZXF1aXJlZC51bnNhZmVHZXQoKTsKKyAgICAg
ICAgYnJlYWs7CisgICAgfQorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHMTFf
RUFDOgorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NJR05FRF9SRzExX0VBQzoK
KyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JBOF9FVEMyX0VBQzoKKyAgICBj
YXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TUkdCOF9BTFBIQThfRVRDMl9FQUM6IHsKKyAg
ICAgICAgQ2hlY2tlZDx1bnNpZ25lZCwgUmVjb3JkT3ZlcmZsb3c+IGNoZWNrZWRCeXRlc1JlcXVp
cmVkID0gKHdpZHRoICsga0VBQ0FuZEVUQzJCbG9ja1NpemUgLSAxKSAvIGtFQUNBbmRFVEMyQmxv
Y2tTaXplOworICAgICAgICBjaGVja2VkQnl0ZXNSZXF1aXJlZCAqPSAoaGVpZ2h0ICsga0VBQ0Fu
ZEVUQzJCbG9ja1NpemUgLSAxKSAvIGtFQUNBbmRFVEMyQmxvY2tTaXplOworICAgICAgICBjaGVj
a2VkQnl0ZXNSZXF1aXJlZCAqPSAxNjsKKyAgICAgICAgaWYgKGNoZWNrZWRCeXRlc1JlcXVpcmVk
Lmhhc092ZXJmbG93ZWQoKSkgeworICAgICAgICAgICAgc3ludGhlc2l6ZUdMRXJyb3IoR3JhcGhp
Y3NDb250ZXh0M0Q6OklOVkFMSURfVkFMVUUsIGZ1bmN0aW9uTmFtZSwgInRvbyBsYXJnZSBkaW1l
bnNpb25zIik7CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKyAgICAgICAg
Ynl0ZXNSZXF1aXJlZCA9IGNoZWNrZWRCeXRlc1JlcXVpcmVkLnVuc2FmZUdldCgpOworICAgICAg
ICBicmVhazsKKyAgICB9CiAgICAgZGVmYXVsdDoKICAgICAgICAgc3ludGhlc2l6ZUdMRXJyb3Io
R3JhcGhpY3NDb250ZXh0M0Q6OklOVkFMSURfRU5VTSwgZnVuY3Rpb25OYW1lLCAiaW52YWxpZCBm
b3JtYXQiKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtNTcwOCw3ICs1NzQzLDE4IEBAIGJv
b2wgV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZTo6dmFsaWRhdGVDb21wcmVzc2VkVGV4RGltZW5z
aW9ucyhjb25zdCBjaGFyKiBmdW5jCiAgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURf
U1JHQjhfQUxQSEE4X0FTVENfMTB4MTBfS0hSOgogICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01Q
UkVTU0VEX1NSR0I4X0FMUEhBOF9BU1RDXzEyeDEwX0tIUjoKICAgICBjYXNlIEV4dGVuc2lvbnMz
RDo6Q09NUFJFU1NFRF9TUkdCOF9BTFBIQThfQVNUQ18xMngxMl9LSFI6Ci0gICAgICAgIC8vIE5v
IGhlaWdodCBhbmQgd2lkdGggcmVzdHJpY3Rpb25zIG9uIEFTVEMuCisgICAgY2FzZSBFeHRlbnNp
b25zM0Q6OkVUQzFfUkdCOF9PRVM6CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURf
UjExX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TSUdORURfUjExX0VB
QzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SRzExX0VBQzoKKyAgICBjYXNl
IEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TSUdORURfUkcxMV9FQUM6CisgICAgY2FzZSBFeHRl
bnNpb25zM0Q6OkNPTVBSRVNTRURfUkdCOF9FVEMyOgorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpD
T01QUkVTU0VEX1NSR0I4X0VUQzI6CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURf
UkdCOF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzI6CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNP
TVBSRVNTRURfU1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMyOgorICAgIGNhc2UgRXh0ZW5z
aW9uczNEOjpDT01QUkVTU0VEX1JHQkE4X0VUQzJfRUFDOgorICAgIGNhc2UgRXh0ZW5zaW9uczNE
OjpDT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9FVEMyX0VBQzoKKyAgICAgICAgLy8gTm8gaGVpZ2h0
IGFuZCB3aWR0aCByZXN0cmljdGlvbnMgb24gQVNUQywgRVRDMSBvciBFVEMyLgogICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC01NzU2
LDYgKzU4MDIsMzQgQEAgYm9vbCBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlOjp2YWxpZGF0ZUNv
bXByZXNzZWRUZXhTdWJEaW1lbnNpb25zKGNvbnN0IGNoYXIqIGYKICAgICAgICAgfQogICAgICAg
ICByZXR1cm4gdmFsaWRhdGVDb21wcmVzc2VkVGV4RGltZW5zaW9ucyhmdW5jdGlvbk5hbWUsIHRh
cmdldCwgbGV2ZWwsIHdpZHRoLCBoZWlnaHQsIGZvcm1hdCk7CiAgICAgfQorICAgIGNhc2UgRXh0
ZW5zaW9uczNEOjpFVEMxX1JHQjhfT0VTOgorICAgICAgICAvLyBOb3Qgc3VwcG9ydGVkIGZvciBF
VEMxX1JHQjhfT0VTIHRleHR1cmVzLgorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgY2FzZSBF
eHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfUjExX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6
Q09NUFJFU1NFRF9TSUdORURfUjExX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJF
U1NFRF9SRzExX0VBQzoKKyAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9TSUdORURf
UkcxMV9FQUM6CisgICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfUkdCOF9FVEMyOgor
ICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NSR0I4X0VUQzI6CisgICAgY2FzZSBF
eHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfUkdCOF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzI6Cisg
ICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfU1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhB
MV9FVEMyOgorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQkE4X0VUQzJfRUFD
OgorICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9FVEMyX0VB
QzogeworICAgICAgICBpZiAodGFyZ2V0ID09IEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzNE
KSB7CisgICAgICAgICAgICBzeW50aGVzaXplR0xFcnJvcihHcmFwaGljc0NvbnRleHQzRDo6SU5W
QUxJRF9PUEVSQVRJT04sIGZ1bmN0aW9uTmFtZSwgIm5vdCBzdXBwb3J0ZWQgb24gVEVYVFVSRV8z
RCB0ZXh0dXJlcyIpOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAg
ICAgIGNvbnN0IGludCBrQmxvY2tTaXplID0gNDsKKyAgICAgICAgaW50IHRleFdpZHRoID0gdGV4
LT5nZXRXaWR0aCh0YXJnZXQsIGxldmVsKTsKKyAgICAgICAgaW50IHRleEhlaWdodCA9IHRleC0+
Z2V0SGVpZ2h0KHRhcmdldCwgbGV2ZWwpOworICAgICAgICBpZiAoKHhvZmZzZXQgJSBrQmxvY2tT
aXplKSB8fCAoeW9mZnNldCAlIGtCbG9ja1NpemUpCisgICAgICAgICAgICB8fCAoKHdpZHRoICUg
a0Jsb2NrU2l6ZSkgJiYgeG9mZnNldCArIHdpZHRoICE9IHRleFdpZHRoKQorICAgICAgICAgICAg
fHwgKChoZWlnaHQgJSBrQmxvY2tTaXplKSAmJiB5b2Zmc2V0ICsgaGVpZ2h0ICE9IHRleEhlaWdo
dCkpIHsKKyAgICAgICAgICAgIHN5bnRoZXNpemVHTEVycm9yKEdyYXBoaWNzQ29udGV4dDNEOjpJ
TlZBTElEX09QRVJBVElPTiwgZnVuY3Rpb25OYW1lLCAiZGltZW5zaW9ucyBtdXN0IG1hdGNoIGV4
aXN0aW5nIHRleHR1cmUgbGV2ZWwgZGltZW5zaW9ucyIpOworICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgICAgICB9CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KICAgICBkZWZhdWx0
OgogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5oCmluZGV4IDRiNWVlZGM2
NmM1NWYxNTVlYmJkOGFmZmQ1YWIzYjY0MGE3YmQ0N2EuLjU5YTBjMDdkNWVkNTM5M2IyYmUxMjlh
ZGZmODJlN2EwMTBkZGZhZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFz
L1dlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgKQEAgLTc3LDYgKzc3LDggQEAgY2xhc3Mg
V2ViR0xDb250ZXh0R3JvdXA7CiBjbGFzcyBXZWJHTENvbnRleHRPYmplY3Q7CiBjbGFzcyBXZWJH
TENvbXByZXNzZWRUZXh0dXJlQVNUQzsKIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEM7
CitjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDOworY2xhc3MgV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQzE7CiBjbGFzcyBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEM7CiBjbGFzcyBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQzsKIGNsYXNzIFdlYkdMRGVidWdSZW5kZXJlckluZm87
CkBAIC0zODUsNiArMzg3LDggQEAgcHJvdGVjdGVkOgogICAgIGZyaWVuZCBjbGFzcyBXZWJHTERl
YnVnU2hhZGVyczsKICAgICBmcmllbmQgY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEM7
CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEM7CisgICAgZnJpZW5k
IGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEM7CisgICAgZnJpZW5kIGNsYXNzIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMxOwogICAgIGZyaWVuZCBjbGFzcyBXZWJHTENvbXByZXNzZWRU
ZXh0dXJlUFZSVEM7CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RD
OwogICAgIGZyaWVuZCBjbGFzcyBXZWJHTFJlbmRlcmluZ0NvbnRleHRFcnJvck1lc3NhZ2VDYWxs
YmFjazsKQEAgLTYxMyw2ICs2MTcsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RkOjp1bmlxdWVfcHRy
PFdlYkdMRGVidWdTaGFkZXJzPiBtX3dlYmdsRGVidWdTaGFkZXJzOwogICAgIHN0ZDo6dW5pcXVl
X3B0cjxXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQz4gbV93ZWJnbENvbXByZXNzZWRUZXh0dXJl
QVNUQzsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQz4gbV93
ZWJnbENvbXByZXNzZWRUZXh0dXJlQVRDOworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDPiBtX3dlYmdsQ29tcHJlc3NlZFRleHR1cmVFVEM7CisgICAgc3RkOjp1
bmlxdWVfcHRyPFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxPiBtX3dlYmdsQ29tcHJlc3NlZFRl
eHR1cmVFVEMxOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZS
VEM+IG1fd2ViZ2xDb21wcmVzc2VkVGV4dHVyZVBWUlRDOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxX
ZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQz4gbV93ZWJnbENvbXByZXNzZWRUZXh0dXJlUzNUQzsK
ICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViR0xEZXB0aFRleHR1cmU+IG1fd2ViZ2xEZXB0aFRleHR1
cmU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9FeHRlbnNp
b25zM0QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5o
CmluZGV4IDA2Y2E1ZTI5NmI0N2VhNjBkYjc0YzE0NDk5ZDJlMTNlYWQ4ZDhmY2MuLjc4ZjJhMDM4
NjE5OTQyMjZjOTM0Y2E2NTFhMGRiMWI5MGFkMzEyNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oCkBAIC0xNTgsNiArMTU4LDE4IEBAIHB1
YmxpYzoKICAgICAgICAgLy8gR0xfT0VTX2NvbXByZXNzZWRfRVRDMV9SR0I4X3RleHR1cmUKICAg
ICAgICAgRVRDMV9SR0I4X09FUyA9IDB4OEQ2NCwKIAorICAgICAgICAvLyBXRUJHTF9jb21wcmVz
c2VkX3RleHR1cmVfZXRjCisgICAgICAgIENPTVBSRVNTRURfUjExX0VBQyA9IDB4OTI3MCwKKyAg
ICAgICAgQ09NUFJFU1NFRF9TSUdORURfUjExX0VBQyA9IDB4OTI3MSwKKyAgICAgICAgQ09NUFJF
U1NFRF9SRzExX0VBQyA9IDB4OTI3MiwKKyAgICAgICAgQ09NUFJFU1NFRF9TSUdORURfUkcxMV9F
QUMgPSAweDkyNzMsCisgICAgICAgIENPTVBSRVNTRURfUkdCOF9FVEMyID0gMHg5Mjc0LAorICAg
ICAgICBDT01QUkVTU0VEX1NSR0I4X0VUQzIgPSAweDkyNzUsCisgICAgICAgIENPTVBSRVNTRURf
UkdCOF9QVU5DSFRIUk9VR0hfQUxQSEExX0VUQzIgPSAweDkyNzYsCisgICAgICAgIENPTVBSRVNT
RURfU1JHQjhfUFVOQ0hUSFJPVUdIX0FMUEhBMV9FVEMyID0gMHg5Mjc3LAorICAgICAgICBDT01Q
UkVTU0VEX1JHQkE4X0VUQzJfRUFDID0gMHg5Mjc4LAorICAgICAgICBDT01QUkVTU0VEX1NSR0I4
X0FMUEhBOF9FVEMyX0VBQyA9IDB4OTI3OSwKKwogICAgICAgICAvLyBHTF9JTUdfdGV4dHVyZV9j
b21wcmVzc2lvbl9wdnJ0YwogICAgICAgICBDT01QUkVTU0VEX1JHQl9QVlJUQ180QlBQVjFfSU1H
ID0gMHg4QzAwLAogICAgICAgICBDT01QUkVTU0VEX1JHQl9QVlJUQ18yQlBQVjFfSU1HID0gMHg4
QzAxLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2Ev
R3JhcGhpY3NDb250ZXh0M0RDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dDNEQ29jb2EubW0KaW5kZXggN2Y2MWVmNmYyM2NkN2I0
ZmQ2M2U4NGVhMDUwMzQzYTQzNzcwYzAzNy4uMWQ4YmMzZTBjMzBhNzViNDcyN2EzNGRlNTY3YjQz
NDI3OTE5NWJjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29jb2EvR3JhcGhpY3NDb250ZXh0M0RDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHQzRENvY29hLm1tCkBAIC0yNDMsNyAr
MjQzLDcgQEAgR3JhcGhpY3NDb250ZXh0M0Q6OkdyYXBoaWNzQ29udGV4dDNEKEdyYXBoaWNzQ29u
dGV4dDNEQXR0cmlidXRlcyBhdHRycywgSG9zdFdpbmQKICAgICAgICAgYXR0cmlicy5hcHBlbmQo
c3RhdGljX2Nhc3Q8Q0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGU+KDQpKTsKICAgICB9CiAKLSAgICBp
ZiAoYXR0cnMuaXNXZWJHTDIpIHsKKyAgICBpZiAobV9hdHRycy5pc1dlYkdMMikgewogICAgICAg
ICAvLyBGSVhNRTogSW5zdGVhZCBvZiBiYWNraW5nIGEgV2ViR0wyIEdyYXBoaWNzQ29udGV4dDNE
IHdpdGggYSBPcGVuR0wgNCBjb250ZXh0LCB3ZSBzaG91bGQgaW5zdGVhZCBiYWNrIGl0IHdpdGgg
QU5HTEUuCiAgICAgICAgIC8vIFVzZSBhbiBPcGVuR0wgNCBjb250ZXh0IGZvciBub3cgdW50aWwg
dGhlIEFOR0xFIGJhY2tlbmQgaXMgcmVhZHkuCiAgICAgICAgIGF0dHJpYnMuYXBwZW5kKGtDR0xQ
RkFPcGVuR0xQcm9maWxlKTsKQEAgLTI3OCw3ICsyNzgsNyBAQCBHcmFwaGljc0NvbnRleHQzRDo6
R3JhcGhpY3NDb250ZXh0M0QoR3JhcGhpY3NDb250ZXh0M0RBdHRyaWJ1dGVzIGF0dHJzLCBIb3N0
V2luZAogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgbV9pc0ZvcldlYkdMMiA9IGF0dHJz
LmlzV2ViR0wyOworICAgIG1faXNGb3JXZWJHTDIgPSBtX2F0dHJzLmlzV2ViR0wyOwogCiAgICAg
Q0dMU2V0Q3VycmVudENvbnRleHQobV9jb250ZXh0T2JqKTsKIApAQCAtMzI2LDcgKzMyNiw3IEBA
IEdyYXBoaWNzQ29udGV4dDNEOjpHcmFwaGljc0NvbnRleHQzRChHcmFwaGljc0NvbnRleHQzREF0
dHJpYnV0ZXMgYXR0cnMsIEhvc3RXaW5kCiAgICAgfQogCiAgICAgc3RkOjp2ZWN0b3I8RUdMaW50
PiBjb250ZXh0QXR0cmlidXRlczsKLSAgICBpZiAoYXR0cnMuaXNXZWJHTDIpIHsKKyAgICBpZiAo
bV9hdHRycy5pc1dlYkdMMikgewogICAgICAgICBjb250ZXh0QXR0cmlidXRlcy5wdXNoX2JhY2so
RUdMX0NPTlRFWFRfQ0xJRU5UX1ZFUlNJT04pOwogICAgICAgICBjb250ZXh0QXR0cmlidXRlcy5w
dXNoX2JhY2soMyk7CiAgICAgfSBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAKaW5k
ZXggMTMxMTlmZmE3NWUxYzMwN2QwODM0YTdmZDdmYzlkZGVkNTI2NDNkZi4uNjFjMGM2ZTQ4N2Qy
MjY0NzA3ZDZhZTdiOTJmMDdlYTBlOWMxY2IzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5j
cHAKQEAgLTIyNyw5ICsyMjcsMTUgQEAgYm9vbCBFeHRlbnNpb25zM0RPcGVuR0w6OnN1cHBvcnRz
RXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgbmFtZSkKICNlbmRpZgogICAgIH0KIAotI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgUExBVEZPUk0oSU9T
X0ZBTUlMWV9TSU1VTEFUT1IpCiAgICAgaWYgKG5hbWUgPT0gIkdMX0VYVF9wYWNrZWRfZGVwdGhf
c3RlbmNpbCIpCiAgICAgICAgIHJldHVybiBtX2F2YWlsYWJsZUV4dGVuc2lvbnMuY29udGFpbnMo
IkdMX09FU19wYWNrZWRfZGVwdGhfc3RlbmNpbCIpOworCisgICAgaWYgKG5hbWUgPT0gIkdMX09F
U19jb21wcmVzc2VkX0VUQzFfUkdCOF90ZXh0dXJlIgorICAgICAgICB8fCBuYW1lID09ICJHTF9B
TkdMRV9jb21wcmVzc2VkX3RleHR1cmVfZXRjIikgeworICAgICAgICAvLyBJbXBsaWNpdGx5IGVu
YWJsZWQgd2l0aCBFUyAzLjAgY29udGV4dHMuCisgICAgICAgIHJldHVybiBtX2NvbnRleHQtPm1f
aXNGb3JXZWJHTDI7CisgICAgfQogI2VuZGlmCiAKICAgICByZXR1cm4gbV9hdmFpbGFibGVFeHRl
bnNpb25zLmNvbnRhaW5zKG5hbWUpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>