<?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>221744</bug_id>
          
          <creation_ts>2021-02-10 22:41:59 -0800</creation_ts>
          <short_desc>[GPU Process] Temporarily disable drawing OT-SVG glyphs in the GPU process until it can be implemented properly</short_desc>
          <delta_ts>2025-01-15 09:36:58 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=285935</see_also>
          <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>221765</dependson>
    
    <dependson>221834</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>dino</cc>
    
    <cc>jonlee</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1727966</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-10 22:41:59 -0800</bug_when>
    <thetext>[GPU Process] Temporarily disable drawing OT-SVG glyphs into canvas until it can be implemented properly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727967</commentid>
    <comment_count>1</comment_count>
      <attachid>419948</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-10 22:43:57 -0800</bug_when>
    <thetext>Created attachment 419948
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727968</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-10 22:44:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/74222334&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727969</commentid>
    <comment_count>3</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-10 22:46:48 -0800</bug_when>
    <thetext>To-do:

1. Figure out how to make it build on non-internal OSes
2. Add ASSERT_WITH_SECURITY_IMPLICATION()s to make sure the GPUP doesn&apos;t parse OT-SVG content
3. Split this patch into two: one for the refactoring, and one for the actual change

We probably don&apos;t want to add any tests, because we don&apos;t want to guarantee that OT-SVG doesn&apos;t work... Instead, we would just temporarily disable any existing tests we have that make sure that drawing OT-SVG into canvas *does* work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728272</commentid>
    <comment_count>4</comment_count>
      <attachid>420036</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-11 13:37:56 -0800</bug_when>
    <thetext>Created attachment 420036
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728310</commentid>
    <comment_count>5</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-11 14:45:14 -0800</bug_when>
    <thetext>isInGPUProcess()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728311</commentid>
    <comment_count>6</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-11 14:45:34 -0800</bug_when>
    <thetext>and RELEASE_ASSERT() is better to use here than ASSERT_WITH_SECURITY_IMPLICATION().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728562</commentid>
    <comment_count>7</comment_count>
      <attachid>420126</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-12 08:19:47 -0800</bug_when>
    <thetext>Created attachment 420126
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728565</commentid>
    <comment_count>8</comment_count>
      <attachid>420128</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-12 08:48:27 -0800</bug_when>
    <thetext>Created attachment 420128
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728608</commentid>
    <comment_count>9</comment_count>
      <attachid>420137</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-12 09:36:57 -0800</bug_when>
    <thetext>Created attachment 420137
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728854</commentid>
    <comment_count>10</comment_count>
      <attachid>420193</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-12 16:42:47 -0800</bug_when>
    <thetext>Created attachment 420193
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728907</commentid>
    <comment_count>11</comment_count>
      <attachid>420211</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-12 22:29:34 -0800</bug_when>
    <thetext>Created attachment 420211
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728910</commentid>
    <comment_count>12</comment_count>
      <attachid>420213</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-12 22:51:46 -0800</bug_when>
    <thetext>Created attachment 420213
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728975</commentid>
    <comment_count>13</comment_count>
      <attachid>420234</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-13 20:59:03 -0800</bug_when>
    <thetext>Created attachment 420234
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729010</commentid>
    <comment_count>14</comment_count>
      <attachid>420251</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-14 13:51:31 -0800</bug_when>
    <thetext>Created attachment 420251
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729015</commentid>
    <comment_count>15</comment_count>
      <attachid>420254</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-14 14:17:24 -0800</bug_when>
    <thetext>Created attachment 420254
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729028</commentid>
    <comment_count>16</comment_count>
      <attachid>420262</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-14 17:18:43 -0800</bug_when>
    <thetext>Created attachment 420262
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729029</commentid>
    <comment_count>17</comment_count>
      <attachid>420263</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-14 17:20:11 -0800</bug_when>
    <thetext>Created attachment 420263
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729030</commentid>
    <comment_count>18</comment_count>
      <attachid>420264</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-14 17:21:30 -0800</bug_when>
    <thetext>Created attachment 420264
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729196</commentid>
    <comment_count>19</comment_count>
      <attachid>420264</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-15 09:47:04 -0800</bug_when>
    <thetext>Comment on attachment 420264
Patch

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

Presumably this will cause some new test failures in the GPUProcess bot?

&gt; Source/WebCore/platform/graphics/coretext/FontCascadeCoreText.cpp:197
&gt; +        for (unsigned i = 0; i &lt; numGlyphs; ++i)
&gt; +            RELEASE_ASSERT(!font.glyphIsRenderedWithOTSVG(glyphs[i]));

Wouldn&apos;t it be much more efficient to pass an array of glyphs to glyphIsRenderedWithOTSV()? This is also adding an extra traversal of the glyph array even in release builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729298</commentid>
    <comment_count>20</comment_count>
      <attachid>420348</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-15 12:32:31 -0800</bug_when>
    <thetext>Created attachment 420348
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729332</commentid>
    <comment_count>21</comment_count>
      <attachid>420359</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-15 13:27:17 -0800</bug_when>
    <thetext>Created attachment 420359
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729473</commentid>
    <comment_count>22</comment_count>
      <attachid>420399</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-15 17:21:33 -0800</bug_when>
    <thetext>Created attachment 420399
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729476</commentid>
    <comment_count>23</comment_count>
      <attachid>420401</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-15 17:22:57 -0800</bug_when>
    <thetext>Created attachment 420401
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729545</commentid>
    <comment_count>24</comment_count>
      <attachid>420421</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-15 20:23:29 -0800</bug_when>
    <thetext>Created attachment 420421
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729558</commentid>
    <comment_count>25</comment_count>
      <attachid>420426</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-15 23:20:43 -0800</bug_when>
    <thetext>Created attachment 420426
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730093</commentid>
    <comment_count>26</comment_count>
      <attachid>420426</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-16 19:48:53 -0800</bug_when>
    <thetext>Comment on attachment 420426
Patch

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

&gt; Source/WebCore/PAL/pal/cf/OTSVGTable.cpp:34
&gt; +OTSVGTable::OTSVGTable()
&gt; +{
&gt; +}

= default

&gt; Source/WebCore/PAL/pal/cf/OTSVGTable.cpp:44
&gt; +    other.table = nullptr;

isn&apos;t this what std::exchange is for?

&gt; Source/WebCore/PAL/pal/cf/OTSVGTable.cpp:58
&gt; +    table = other.table;
&gt; +    other.table = nullptr;

std::exchange (or std::swap I forget)

&gt; Source/WebCore/platform/graphics/coretext/FontCoreText.cpp:785
&gt; +            m_otSVGTable = PAL::OTSVGTable();

= { }?

&gt; Source/WebCore/platform/graphics/coretext/FontCoreText.cpp:793
&gt; +        if (PAL::softLinkOTSVGOTSVGTableGetDocumentIndexForGlyph(m_otSVGTable.value().table, glyphs[i]) != kCFNotFound) {

Is there any perf hit for calling softLinkOTSVGOTSVGTableGetDocumentIndexForGlyph every time inside the loop?

&gt; Source/WebCore/platform/graphics/displaylists/DisplayListDrawGlyphsRecorderCoreText.cpp:376
&gt; +struct GlyphsAndAdvancesStorage {
&gt; +    Vector&lt;GlyphBufferGlyph&gt; glyphs;
&gt; +    Vector&lt;GlyphBufferAdvance&gt; advances;
&gt; +};
&gt; +struct GlyphsAndAdvances {
&gt; +    const GlyphBufferGlyph* glyphs;
&gt; +    const GlyphBufferAdvance* advances;
&gt; +    unsigned numGlyphs;
&gt; +    GlyphBufferAdvance initialAdvance;
&gt; +    Optional&lt;GlyphsAndAdvancesStorage&gt; storage;
&gt; +};
&gt; +static GlyphsAndAdvances filterOutOTSVGGlyphs(const Font&amp; font, const GlyphBufferGlyph* glyphs, const GlyphBufferAdvance* advances, unsigned numGlyphs)

I&apos;d like a few more blank lines here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730109</commentid>
    <comment_count>27</comment_count>
      <attachid>420588</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-16 20:13:53 -0800</bug_when>
    <thetext>Created attachment 420588
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730754</commentid>
    <comment_count>28</comment_count>
      <attachid>420800</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-17 23:18:32 -0800</bug_when>
    <thetext>Created attachment 420800
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731169</commentid>
    <comment_count>29</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-18 19:21:38 -0800</bug_when>
    <thetext>The Windows errors look unrelated. I&apos;ll land tonight and watch the bots to make sure nothing bad happens.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731173</commentid>
    <comment_count>30</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-18 19:27:05 -0800</bug_when>
    <thetext>Committed r273121 (234318@main): &lt;https://commits.webkit.org/234318@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731175</commentid>
    <comment_count>31</comment_count>
      <attachid>420426</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-18 19:27:44 -0800</bug_when>
    <thetext>Comment on attachment 420426
Patch

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

&gt;&gt; Source/WebCore/PAL/pal/cf/OTSVGTable.cpp:44
&gt;&gt; +    other.table = nullptr;
&gt; 
&gt; isn&apos;t this what std::exchange is for?

std::swap()

&gt;&gt; Source/WebCore/platform/graphics/coretext/FontCoreText.cpp:793
&gt;&gt; +        if (PAL::softLinkOTSVGOTSVGTableGetDocumentIndexForGlyph(m_otSVGTable.value().table, glyphs[i]) != kCFNotFound) {
&gt; 
&gt; Is there any perf hit for calling softLinkOTSVGOTSVGTableGetDocumentIndexForGlyph every time inside the loop?

Do you mean a perf hit because the function is soft linked, or a perf hit because we have to call it at all?

If you mean because it&apos;s soft linked, the macro is actually smart enough to only do the soft linking stuff the first time it&apos;s called. The function pointer initially gets set to a stub which will look up the real function and then assign it to the function pointer. So the runtime cost for soft-linking is minimal.

If you mean because we have to call it at all, we only call it for SVG fonts (see line 788 above), and almost no fonts are SVG fonts. So we&apos;re almost never going to run this code.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419948</attachid>
            <date>2021-02-10 22:43:57 -0800</date>
            <delta_ts>2021-02-11 13:37:38 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-221744-20210210224356.patch</filename>
            <type>text/plain</type>
            <size>38081</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNjU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmU4ODgyZjkwZGU3YmI4
NDQ0OGJlNGU3ZWI5MDE2Zjk3ZjA0YjE0MC4uNTk5MmY2ZTJjZjNmYTI0NGQ1OTBhMTM5ODhjYmYw
MjBiYWMxMTFmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIxLTAyLTEwICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbnRvIGNhbnZh
cyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBsdWcgdGhlIHNlY3VyaXR5IGhvbGUuIFdl
IGRvbid0IHdhbnQgdG8gcGFyc2UgT1QtU1ZHIGNvbnRlbnQgaW4gdGhlIEdQVSBwcm9jZXNzLgor
ICAgICAgICBVbnRpbCB3ZSBjYW4gcHJvcGVybHkgdHJhbnNjb2RlIE9ULVNWRyBnbHlwaHMgdG8g
b3VyIG93biBkaXNwbGF5IGxpc3RzLCBzaW1wbHkgZGlzYWJsZQorICAgICAgICB0aGVtLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cyAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3Bw
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9Gb250Q2FzY2FkZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBoQnVmZmVyIGNvbnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9G
b250Q2FzY2FkZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dseXBoQnVmZmVyTWVt
YmVycy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmRyYXdHbHlwaHMpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEltcGwuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Z2x5
cGhJc1JlbmRlcmVkV2l0aE9UU1ZHIGNvbnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXIuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVj
b3JkZXJDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6ZmlsdGVy
T3V0T1RTVkdHbHlwaHMpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRyYXdHbHlw
aHNSZWNvcmRlcjo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlz
cGxheWxpc3RzL0Rpc3BsYXlMaXN0SXRlbXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxh
eUxpc3Q6OkRyYXdHbHlwaHM6OmFwcGx5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3Bs
YXlMaXN0OjpEcmF3R2x5cGhzOjpnZW5lcmF0ZUdseXBoQnVmZmVyIGNvbnN0KTogRGVsZXRlZC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RJdGVt
cy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlz
dFJlY29yZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZWNvcmRlcjo6
ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rp
c3BsYXlMaXN0UmVjb3JkZXIuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvbWF0aG1sL01hdGhPcGVy
YXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNYXRoT3BlcmF0b3I6OnBhaW50R2x5cGgpOgor
ICAgICAgICAoV2ViQ29yZTo6TWF0aE9wZXJhdG9yOjpwYWludCk6CisgICAgICAgICogcmVuZGVy
aW5nL21hdGhtbC9SZW5kZXJNYXRoTUxUb2tlbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJNYXRoTUxUb2tlbjo6cGFpbnQpOgorCiAyMDIxLTAyLTEwICBDaHJpcyBEdW1leiAgPGNkdW1l
ekBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXguCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5n
ZUxvZwppbmRleCAwMDA2MTk4ZmFhNjlmMTJlZjNiYjVkMDg5N2E2YWUwOWFhZDc5MDg1Li5kNTI4
ZTI1M2ZkMzQ4NzI5MjAzMmVmMmRlYTEwMmVkODgxZDIwODFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNCBAQAorMjAyMS0wMi0xMCAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4Zmll
bGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vzc10gVGVtcG9yYXJpbHkgZGlzYWJs
ZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW50byBjYW52YXMgdW50aWwgaXQgY2FuIGJlIGltcGxl
bWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjE3NDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIHBhbC9zcGkvY29jb2EvQ29yZVRleHRTUEkuaDoKKyAgICAgICAgKE9UU1ZHVGFi
bGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoT1RTVkdUYWJsZTo6fk9UU1ZHVGFibGUpOgorCiAy
MDIxLTAyLTA1ICBFcmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgogCiAgICAg
ICAgIFtNYWNdIENvbm5lY3QgTWVkaWFTZXNzaW9uIHdpdGggTWVkaWFSZW1vdGUgYW5kIE5vd1Bs
YXlpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0NvcmVU
ZXh0U1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9Db3JlVGV4dFNQSS5o
CmluZGV4IGYwYjA2ODM4YzljNTM5NjU0OWIyZTBjZjEwOWY0ZWE5OThmZDgyOWIuLmRkN2RjMDRl
ODYxODRkNjlmMDBlZmI1MjE5ZTEzMzA2NDMwMDk2M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2NvY29hL0NvcmVUZXh0U1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvY29jb2EvQ29yZVRleHRTUEkuaApAQCAtMzEsNiArMzEsNyBAQAogI2lmIFVT
RShBUFBMRV9JTlRFUk5BTF9TREspCiAKICNpbmNsdWRlIDxDb3JlVGV4dC9Db3JlVGV4dFByaXYu
aD4KKyNpbmNsdWRlIDxPVFNWRy9PVFNWRy5oPgogCiAjZWxzZQogCkBAIC0yMDAsNCArMjAxLDI2
IEBAIENURm9udERlc2NyaXB0b3JSZWYgQ1RGb250Q3JlYXRlUGh5c2ljYWxGb250RGVzY3JpcHRv
ckZvckNoYXJhY3RlcnNXaXRoTGFuZ3VhZ2UoCiBib29sIENURm9udElzQXBwbGVDb2xvckVtb2pp
KENURm9udFJlZik7CiBDVEZvbnRSZWYgQ1RGb250Q3JlYXRlRm9yQ2hhcmFjdGVycyhDVEZvbnRS
ZWYgY3VycmVudEZvbnQsIGNvbnN0IFVURjE2Q2hhciAqY2hhcmFjdGVycywgQ0ZJbmRleCBsZW5n
dGgsIENGSW5kZXggKmNvdmVyZWRMZW5ndGgpOwogCitPVFNWR1RhYmxlUmVmIE9UU1ZHVGFibGVD
cmVhdGVGcm9tRGF0YShDRkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENH
RmxvYXQgZm9udFNpemUpOworQ0ZJbmRleCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckds
eXBoKE9UU1ZHVGFibGVSZWYsIENHR2x5cGgpOwordm9pZCBPVFNWR1RhYmxlUmVsZWFzZShPVFNW
R1RhYmxlUmVmKTsKKworc3RydWN0IE9UU1ZHVGFibGUgeworICAgIE9UU1ZHVGFibGUoKQorICAg
IHsKKyAgICB9CisKKyAgICBPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQg
dW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSkKKyAgICAgICAgOiB0YWJsZShPVFNWR1RhYmxl
Q3JlYXRlRnJvbURhdGEoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSkKKyAgICB7Cisg
ICAgfQorCisgICAgfk9UU1ZHVGFibGUoKQorICAgIHsKKyAgICAgICAgT1RTVkdUYWJsZVJlbGVh
c2UodGFibGUpOworICAgIH0KKworICAgIE9UU1ZHVGFibGVSZWYgdGFibGUgeyBudWxscHRyIH07
Cit9OworCiBXVEZfRVhURVJOX0NfRU5ECmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZmU0Mjk1NDg3ZGQwNTEwYzFkNzNkODY4OTkx
YjIxNWIxNDRjMjAzZS4uMzA0ZDhlOTM3MTU4MWFmY2ZhOWMzMjFjYjg1ODM5ZmYxZTA4OTk4MyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtNjIwLDYgKzYyMCw3IEBACiAJCTFDNjYyNjExMUM2RTdDQTYwMEFCNTI3QyAvKiBGb250
RmFjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM2
NjI2MEYxQzZFN0NBNjAwQUI1MjdDIC8qIEZvbnRGYWNlLmggKi87IH07CiAJCTFDNzNBNzEzMjE4
NTc1N0UwMDRDQ0VBNSAvKiBUZXh0VW5kZXJsaW5lT2Zmc2V0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0I2QjRGQjIxN0I4Mzk0MDA5M0I5Q0QgLyog
VGV4dFVuZGVybGluZU9mZnNldC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCTFDNzNBNzE1MjE4NTc1ODcwMDRDQ0VBNSAvKiBUZXh0RGVjb3JhdGlv
blRoaWNrbmVzcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUNCNkI0RjgyMTdCODM5MzAwOTNCOUNEIC8qIFRleHREZWNvcmF0aW9uVGhpY2tuZXNzLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUM3N0M4
QUMyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNzdDOEFBMjVENDVBNTEwMDYzNUUwQyAv
KiBPVFNWRy5mcmFtZXdvcmsgKi87IH07CiAJCTFDODFCOTVBMEU5NzMzMDgwMDI2NkUwNyAvKiBJ
bnNwZWN0b3JDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQzgxQjk1NjBFOTczMzA4MDAyNjZFMDcgLyogSW5zcGVjdG9yQ29udHJvbGxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFD
ODFCOTVDMEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNwZWN0b3JDbGllbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDODFCOTU4MEU5NzMzMDgwMDI2NkUw
NyAvKiBJbnNwZWN0b3JDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQkxQ0FGMzQ4MTBBNkM0MDUyMDBBQkUwNkUgLyogV2ViU2NyaXB0T2Jq
ZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0FG
MzQ3RTBBNkM0MDUyMDBBQkUwNkUgLyogV2ViU2NyaXB0T2JqZWN0LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTY4MzIsNiArNjgzMyw3IEBACiAJ
CTFDNkZEOEFFMjUwQTMxMTUwMEQ2RTkyMCAvKiBGb250Q2FzY2FkZUNvcmVUZXh0LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEZvbnRDYXNjYWRlQ29yZVRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkxQzZGRDhBRjI1MEEzM0NGMDBENkU5MjAgLyogRm9udENvcmVUZXh0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvbnRDb3JlVGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTFDNkZEOEIwMjUwQTM1RjEwMEQ2RTkyMCAvKiBGb250Q29jb2EuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRm9udENvY29hLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUM3N0M4QUEyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZyYW1ld29yayAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3
b3JrOyBuYW1lID0gT1RTVkcuZnJhbWV3b3JrOyBwYXRoID0gL1N5c3RlbS9MaWJyYXJ5L1ByaXZh
dGVGcmFtZXdvcmtzL09UU1ZHLmZyYW1ld29yazsgc291cmNlVHJlZSA9IFNES1JPT1Q7IH07CiAJ
CTFDODFCOTU2MEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNwZWN0b3JDb250cm9sbGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvckNvbnRyb2xsZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM4MUI5NTcwRTk3MzMwODAwMjY2RTA3IC8qIEluc3Bl
Y3RvckNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SW5zcGVjdG9yQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFD
ODFCOTU4MEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNwZWN0b3JDbGllbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0xNzEyNSw2ICsxNzEyNyw3IEBACiAJCQkJMUMwOUQwNTkxRTMxQzZBOTAw
NzI1RjE4IC8qIGxpYlBBTC5hIGluIEZyYW1ld29ya3MgKi8sCiAJCQkJREQ3NjNCQjIwOTkyQzJD
OTAwNzQwQjhFIC8qIGxpYnhtbDIuZHlsaWIgaW4gRnJhbWV3b3JrcyAqLywKIAkJCQkzNzk5MTlC
MjEyMDBERTUwMDBFQTA0MUMgLyogbGliei5keWxpYiBpbiBGcmFtZXdvcmtzICovLAorCQkJCTFD
NzdDOEFDMjVENDVBNTEwMDYzNUUwQyAvKiBPVFNWRy5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAq
LywKIAkJCQlBODhBRDUyRjA5NTI0QjkyMDAxREQxOTYgLyogUXVhcnR6Q29yZS5mcmFtZXdvcmsg
aW4gRnJhbWV3b3JrcyAqLywKIAkJCQk1RkUxRDI5MjE3OEZEMUYzMDAxQUEzQzMgLyogU2VjdXJp
dHkuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCiAJCQkpOwpAQCAtMTc3NjMsNiArMTc3NjYs
NyBAQAogCQkJCURENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGliICovLAog
CQkJCTM3OTkxOUIxMTIwMERFNTAwMEVBMDQxQyAvKiBsaWJ6LmR5bGliICovLAogCQkJCTU3NEY1
NUUyMjA0RjNDQkYwMDI5NDhDNiAvKiBMb2NhbEF1dGhlbnRpY2F0aW9uLmZyYW1ld29yayAqLywK
KwkJCQkxQzc3QzhBQTI1RDQ1QTUxMDA2MzVFMEMgLyogT1RTVkcuZnJhbWV3b3JrICovLAogCQkJ
CUE4NUQ3QTJGMDg3OUVCQTkwMDZBOTE3MiAvKiBRdWFydHpDb3JlLmZyYW1ld29yayAqLywKIAkJ
CQk1RkUxRDI5MTE3OEZEMUYzMDAxQUEzQzMgLyogU2VjdXJpdHkuZnJhbWV3b3JrICovLAogCQkJ
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5jcHAKaW5kZXggYTM0OTZh
NjJjZTkzNDhhZmMzM2NmOWExMjkyNTA5YTQ1OWYyMzcyNy4uMzA1YTQ3NGViYzAyNTg2ODEwMWFl
M2Q0NDY2YjYzNTMzYTlhM2QzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvRm9udC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udC5jcHAKQEAgLTMwLDkgKzMwLDEwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiRm9udC5oIgogCi0jaWYgUExBVEZPUk0oQ09DT0EpCisjaWYgVVNFKENPUkVfVEVYVCkKICNp
bmNsdWRlIDxwYWwvc3BpL2NvY29hL0NvcmVUZXh0U1BJLmg+CiAjZW5kaWYKKwogI2luY2x1ZGUg
IkNhY2hlZEZvbnQuaCIKICNpbmNsdWRlICJDaGFyYWN0ZXJQcm9wZXJ0aWVzLmgiCiAjaW5jbHVk
ZSAiRm9udENhY2hlLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKaW5k
ZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBiZC4uYWIyOTE3ZGMyMjNh
ZGQ3YWVkNDc4OGNjNjc2M2JjMTAzYTA5ZjE2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlzIGZpbGUgaXMgcGFydCBv
ZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmln
aHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAgKiBUaGlzIGxpYnJhcnkg
aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCkBAIC00Miw2
ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDxDb3JlRm91bmRhdGlv
bi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9zcGkvY29jb2EvQ29yZVRleHRTUEku
aD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAjZW5kaWYKIApAQCAtMjE0LDYgKzIxNSw3
IEBAIHB1YmxpYzoKICAgICBjb25zdCBCaXRWZWN0b3ImIGdseXBoc1N1cHBvcnRlZEJ5QWxsU21h
bGxDYXBzKCkgY29uc3Q7CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRCeVBl
dGl0ZUNhcHMoKSBjb25zdDsKICAgICBjb25zdCBCaXRWZWN0b3ImIGdseXBoc1N1cHBvcnRlZEJ5
QWxsUGV0aXRlQ2FwcygpIGNvbnN0OworICAgIGJvb2wgZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZH
KENHR2x5cGgpIGNvbnN0OwogI2VuZGlmCiAKICAgICBib29sIGNhblJlbmRlckNvbWJpbmluZ0No
YXJhY3RlclNlcXVlbmNlKGNvbnN0IFVDaGFyKiwgc2l6ZV90KSBjb25zdDsKQEAgLTI5Myw2ICsy
OTUsNyBAQCBwcml2YXRlOgogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBo
c1N1cHBvcnRlZEJ5QWxsU21hbGxDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9y
PiBtX2dseXBoc1N1cHBvcnRlZEJ5UGV0aXRlQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJp
dFZlY3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRCeUFsbFBldGl0ZUNhcHM7CisgICAgbXV0YWJsZSBP
cHRpb25hbDxPVFNWR1RhYmxlPiBtX290U1ZHVGFibGU7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JN
KFdJTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRD
YXNjYWRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRl
LmNwcAppbmRleCBkMzIyNGEzMGE5M2NmYTRjZWIyYWQ3ZThhZjI3MzBlODViN2Q1ZDM0Li4zMTM3
MGNmYmZhMzQ4ZGMzMTI1ODA0YTY0MDRjZmRlMDc1ZDAyMWE3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGUuY3BwCkBAIC0yLDcgKzIsNyBAQAog
ICogQ29weXJpZ2h0IChDKSAxOTk5IExhcnMgS25vbGwgKGtub2xsQGtkZS5vcmcpCiAgKiAgICAg
ICAgICAgKEMpIDE5OTkgQW50dGkgS29pdmlzdG8gKGtvaXZpc3RvQGtkZS5vcmcpCiAgKiAgICAg
ICAgICAgKEMpIDIwMDAgRGlyayBNdWVsbGVyIChtdWVsbGVyQGtkZS5vcmcpCi0gKiBDb3B5cmln
aHQgKEMpIDIwMDMtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDMtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0
IGFuZC9vcgogICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkg
R2VuZXJhbCBQdWJsaWMKQEAgLTE0NjgsNyArMTQ2OCw3IEBAIHZvaWQgRm9udENhc2NhZGU6OmRy
YXdHbHlwaEJ1ZmZlcihHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEdseXBoQnVmZmVy
JiBnCiAKICAgICAgICAgaWYgKCZuZXh0Rm9udERhdGEgIT0gZm9udERhdGEpIHsKICAgICAgICAg
ICAgIGlmIChzaG91bGREcmF3SWZMb2FkaW5nKCpmb250RGF0YSwgY3VzdG9tRm9udE5vdFJlYWR5
QWN0aW9uKSkKLSAgICAgICAgICAgICAgICBjb250ZXh0LmRyYXdHbHlwaHMoKmZvbnREYXRhLCBn
bHlwaEJ1ZmZlciwgbGFzdEZyb20sIG5leHRHbHlwaCAtIGxhc3RGcm9tLCBzdGFydFBvaW50LCBt
X2ZvbnREZXNjcmlwdGlvbi5mb250U21vb3RoaW5nKCkpOworICAgICAgICAgICAgICAgIGNvbnRl
eHQuZHJhd0dseXBocygqZm9udERhdGEsIGdseXBoQnVmZmVyLmdseXBocyhsYXN0RnJvbSksIGds
eXBoQnVmZmVyLmFkdmFuY2VzKGxhc3RGcm9tKSwgbmV4dEdseXBoIC0gbGFzdEZyb20sIHN0YXJ0
UG9pbnQsIG1fZm9udERlc2NyaXB0aW9uLmZvbnRTbW9vdGhpbmcoKSk7CiAKICAgICAgICAgICAg
IGxhc3RGcm9tID0gbmV4dEdseXBoOwogICAgICAgICAgICAgZm9udERhdGEgPSAmbmV4dEZvbnRE
YXRhOwpAQCAtMTQ4MSw3ICsxNDgxLDcgQEAgdm9pZCBGb250Q2FzY2FkZTo6ZHJhd0dseXBoQnVm
ZmVyKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgR2x5cGhCdWZmZXImIGcKICAgICB9
CiAKICAgICBpZiAoc2hvdWxkRHJhd0lmTG9hZGluZygqZm9udERhdGEsIGN1c3RvbUZvbnROb3RS
ZWFkeUFjdGlvbikpCi0gICAgICAgIGNvbnRleHQuZHJhd0dseXBocygqZm9udERhdGEsIGdseXBo
QnVmZmVyLCBsYXN0RnJvbSwgbmV4dEdseXBoIC0gbGFzdEZyb20sIHN0YXJ0UG9pbnQsIG1fZm9u
dERlc2NyaXB0aW9uLmZvbnRTbW9vdGhpbmcoKSk7CisgICAgICAgIGNvbnRleHQuZHJhd0dseXBo
cygqZm9udERhdGEsIGdseXBoQnVmZmVyLmdseXBocyhsYXN0RnJvbSksIGdseXBoQnVmZmVyLmFk
dmFuY2VzKGxhc3RGcm9tKSwgbmV4dEdseXBoIC0gbGFzdEZyb20sIHN0YXJ0UG9pbnQsIG1fZm9u
dERlc2NyaXB0aW9uLmZvbnRTbW9vdGhpbmcoKSk7CiAgICAgcG9pbnQuc2V0WChuZXh0WCk7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNj
YWRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZS5oCmlu
ZGV4IDYwYWY2ZjM1YWU0ZWI3MWE0MDBjZjEzNmFjODA2MzZkN2Y2MDljMDAuLjJkZDNkYjBjNDNl
N2M4MDQ0MDVhMjQ0YWFlNzFkMTVkY2FmMmViN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGUuaApAQCAtMiw3ICsyLDcgQEAKICAqIENvcHlyaWdo
dCAoQykgMjAwMCBMYXJzIEtub2xsIChrbm9sbEBrZGUub3JnKQogICogICAgICAgICAgIChDKSAy
MDAwIEFudHRpIEtvaXZpc3RvIChrb2l2aXN0b0BrZGUub3JnKQogICogICAgICAgICAgIChDKSAy
MDAwIERpcmsgTXVlbGxlciAobXVlbGxlckBrZGUub3JnKQotICogQ29weXJpZ2h0IChDKSAyMDAz
LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDAzLTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChD
KSAyMDA4IEhvbGdlciBIYW5zIFBldGVyIEZyZXl0aGVyCiAgKgogICogVGhpcyBsaWJyYXJ5IGlz
IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgpAQCAtMTE2LDcg
KzExNiw3IEBAIHB1YmxpYzoKIAogICAgIGVudW0gQ3VzdG9tRm9udE5vdFJlYWR5QWN0aW9uIHsg
RG9Ob3RQYWludElmRm9udE5vdFJlYWR5LCBVc2VGYWxsYmFja0lmRm9udE5vdFJlYWR5IH07CiAg
ICAgV0VCQ09SRV9FWFBPUlQgRmxvYXRTaXplIGRyYXdUZXh0KEdyYXBoaWNzQ29udGV4dCYsIGNv
bnN0IFRleHRSdW4mLCBjb25zdCBGbG9hdFBvaW50JiwgdW5zaWduZWQgZnJvbSA9IDAsIE9wdGlv
bmFsPHVuc2lnbmVkPiB0byA9IFdURjo6bnVsbG9wdCwgQ3VzdG9tRm9udE5vdFJlYWR5QWN0aW9u
ID0gRG9Ob3RQYWludElmRm9udE5vdFJlYWR5KSBjb25zdDsKLSAgICBzdGF0aWMgdm9pZCBkcmF3
R2x5cGhzKEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZvbnQmLCBjb25zdCBHbHlwaEJ1ZmZlciYs
IHVuc2lnbmVkIGZyb20sIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYsIEZv
bnRTbW9vdGhpbmdNb2RlKTsKKyAgICBzdGF0aWMgdm9pZCBkcmF3R2x5cGhzKEdyYXBoaWNzQ29u
dGV4dCYsIGNvbnN0IEZvbnQmLCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiwgY29uc3QgR2x5cGhC
dWZmZXJBZHZhbmNlKiwgdW5zaWduZWQgbnVtR2x5cGhzLCBjb25zdCBGbG9hdFBvaW50JiwgRm9u
dFNtb290aGluZ01vZGUpOwogICAgIHZvaWQgZHJhd0VtcGhhc2lzTWFya3MoR3JhcGhpY3NDb250
ZXh0JiwgY29uc3QgVGV4dFJ1biYsIGNvbnN0IEF0b21TdHJpbmcmIG1hcmssIGNvbnN0IEZsb2F0
UG9pbnQmLCB1bnNpZ25lZCBmcm9tID0gMCwgT3B0aW9uYWw8dW5zaWduZWQ+IHRvID0gV1RGOjpu
dWxsb3B0KSBjb25zdDsKIAogICAgIERhc2hBcnJheSBkYXNoZXNGb3JJbnRlcnNlY3Rpb25zV2l0
aFJlY3QoY29uc3QgVGV4dFJ1biYsIGNvbnN0IEZsb2F0UG9pbnQmIHRleHRPcmlnaW4sIGNvbnN0
IEZsb2F0UmVjdCYgbGluZUV4dGVudHMpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2x5cGhCdWZmZXJNZW1iZXJzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9HbHlwaEJ1ZmZlck1lbWJlcnMuaAppbmRleCBmNGY2N2EwNmM5
MGUwMGYwYjM0ZDk5YzkxNzgyMzI4MDRmYjU1NjU2Li5mYWJjZGY2NzgzOThlYTZiZDQyYzEzYzc0
NmI3MDZhZjc5MmQzZWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9HbHlwaEJ1ZmZlck1lbWJlcnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9HbHlwaEJ1ZmZlck1lbWJlcnMuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUgSW5jLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dApAQCAtNDEsNiArNDEsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAvLyBUaGUgQ0cg
cG9ydHMgdXNlIHRoZSBDRyB0eXBlcyBkaXJlY3RseSwgc28gYW4gYXJyYXkgb2YgdGhlc2UgdHlw
ZXMgY2FuIGJlIGZlZCBkaXJlY3RseSBpbnRvIENURm9udFNoYXBlR2x5cGhzKCkuCisvLyBXaGVu
IHlvdSB3cml0ZSBjb2RlIHRoYXQgaW50ZXJhY3RzIHdpdGggdGhlc2UgdHlwZXMsIHVzZSB0aGUg
ZnVuY3Rpb25zIGJlbG93IQogI2lmIFVTRShDRykKIHVzaW5nIEdseXBoQnVmZmVyR2x5cGggPSBD
R0dseXBoOwogdXNpbmcgR2x5cGhCdWZmZXJBZHZhbmNlID0gQ0dTaXplOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHAKaW5kZXgg
YTgwYzY0YTQ2MTA5YWU2MTk1NzRiZWQ4MjVjNGEzZDcwYzNmYTM2OC4uN2Q4YTE2MWEyMjM5ZjUw
MmU3NjBhYWI0ODQzZjA5ZjFlY2IwZmNlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoK
LSAqIENvcHlyaWdodCAoQykgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAwOSwgMjAxMyBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDMtMjAyMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTY3NywxOCArNjc3LDE3IEBAIEZsb2F0U2l6ZSBHcmFwaGljc0NvbnRleHQ6OmRy
YXdUZXh0KGNvbnN0IEZvbnRDYXNjYWRlJiBmb250LCBjb25zdCBUZXh0UnVuJiBydW4sCiAgICAg
cmV0dXJuIGZvbnQuZHJhd1RleHQoKnRoaXMsIHJ1biwgcG9pbnQsIGZyb20sIHRvKTsKIH0KIAot
dm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3Qg
R2x5cGhCdWZmZXImIGJ1ZmZlciwgdW5zaWduZWQgZnJvbSwgdW5zaWduZWQgbnVtR2x5cGhzLCBj
b25zdCBGbG9hdFBvaW50JiBwb2ludCwgRm9udFNtb290aGluZ01vZGUgZm9udFNtb290aGluZ01v
ZGUpCit2b2lkIEdyYXBoaWNzQ29udGV4dDo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBj
b25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSog
YWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgcG9pbnQsIEZv
bnRTbW9vdGhpbmdNb2RlIGZvbnRTbW9vdGhpbmdNb2RlKQogewotICAgIEFTU0VSVChidWZmZXIu
aXNGbGF0dGVuZWQoKSk7CiAgICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSkKICAgICAgICAgcmV0
dXJuOwogCiAgICAgaWYgKG1faW1wbCkgewotICAgICAgICBtX2ltcGwtPmRyYXdHbHlwaHMoZm9u
dCwgYnVmZmVyLCBmcm9tLCBudW1HbHlwaHMsIHBvaW50LCBmb250U21vb3RoaW5nTW9kZSk7Cisg
ICAgICAgIG1faW1wbC0+ZHJhd0dseXBocyhmb250LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlw
aHMsIHBvaW50LCBmb250U21vb3RoaW5nTW9kZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
LSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocygqdGhpcywgZm9udCwgYnVmZmVyLCBmcm9tLCBu
dW1HbHlwaHMsIHBvaW50LCBmb250U21vb3RoaW5nTW9kZSk7CisgICAgRm9udENhc2NhZGU6OmRy
YXdHbHlwaHMoKnRoaXMsIGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywgcG9pbnQs
IGZvbnRTbW9vdGhpbmdNb2RlKTsKIH0KIAogdm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdFbXBo
YXNpc01hcmtzKGNvbnN0IEZvbnRDYXNjYWRlJiBmb250LCBjb25zdCBUZXh0UnVuJiBydW4sIGNv
bnN0IEF0b21TdHJpbmcmIG1hcmssIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50LCB1bnNpZ25lZCBm
cm9tLCBPcHRpb25hbDx1bnNpZ25lZD4gdG8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oCmluZGV4IDA4NDY4ZGNjN2E3NTM4MjAzZTkz
YWExYzU2NjU3NThhMDM3ZTkyMjEuLjZmZTI0NzQ5Y2MyYTkzNWExYzY2ZjAxMWQ2NWFiMTkzNjc0
Y2YzNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBo
aWNzQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBo
aWNzQ29udGV4dC5oCkBAIC00MTgsNyArNDE4LDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICBG
bG9hdFNpemUgZHJhd1RleHQoY29uc3QgRm9udENhc2NhZGUmLCBjb25zdCBUZXh0UnVuJiwgY29u
c3QgRmxvYXRQb2ludCYsIHVuc2lnbmVkIGZyb20gPSAwLCBPcHRpb25hbDx1bnNpZ25lZD4gdG8g
PSBXVEY6Om51bGxvcHQpOwotICAgIHZvaWQgZHJhd0dseXBocyhjb25zdCBGb250JiwgY29uc3Qg
R2x5cGhCdWZmZXImLCB1bnNpZ25lZCBmcm9tLCB1bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0IEZs
b2F0UG9pbnQmLCBGb250U21vb3RoaW5nTW9kZSk7CisgICAgdm9pZCBkcmF3R2x5cGhzKGNvbnN0
IEZvbnQmLCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiwgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNl
KiwgdW5zaWduZWQgbnVtR2x5cGhzLCBjb25zdCBGbG9hdFBvaW50JiwgRm9udFNtb290aGluZ01v
ZGUpOwogICAgIHZvaWQgZHJhd0VtcGhhc2lzTWFya3MoY29uc3QgRm9udENhc2NhZGUmLCBjb25z
dCBUZXh0UnVuJiwgY29uc3QgQXRvbVN0cmluZyYgbWFyaywgY29uc3QgRmxvYXRQb2ludCYsIHVu
c2lnbmVkIGZyb20gPSAwLCBPcHRpb25hbDx1bnNpZ25lZD4gdG8gPSBXVEY6Om51bGxvcHQpOwog
ICAgIHZvaWQgZHJhd0JpZGlUZXh0KGNvbnN0IEZvbnRDYXNjYWRlJiwgY29uc3QgVGV4dFJ1biYs
IGNvbnN0IEZsb2F0UG9pbnQmLCBGb250Q2FzY2FkZTo6Q3VzdG9tRm9udE5vdFJlYWR5QWN0aW9u
ID0gRm9udENhc2NhZGU6OkRvTm90UGFpbnRJZkZvbnROb3RSZWFkeSk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEltcGwuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEltcGwuaApp
bmRleCA4ZjA0Y2QyZjQ1ODYyNWVjYTQ0ZmQzMzQyZmQzNDU4Y2QyNGRkYzU2Li40MDUyNmE1Nzk2
ZWRlMGYwNTgwZGM2ODM4MmUwODAwMjgzOGQyMDUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRJbXBsLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0SW1wbC5oCkBAIC0xLDUgKzEs
NSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTctMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTY4LDcgKzY4LDcg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBhcHBseUZpbGxQYXR0ZXJuKCkgPSAwOwogI2Vu
ZGlmCiAKLSAgICB2aXJ0dWFsIHZvaWQgZHJhd0dseXBocyhjb25zdCBGb250JiwgY29uc3QgR2x5
cGhCdWZmZXImLCB1bnNpZ25lZCBmcm9tLCB1bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0
UG9pbnQmIGFuY2hvclBvaW50LCBGb250U21vb3RoaW5nTW9kZSkgPSAwOworICAgIHZpcnR1YWwg
dm9pZCBkcmF3R2x5cGhzKGNvbnN0IEZvbnQmLCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiwgY29u
c3QgR2x5cGhCdWZmZXJBZHZhbmNlKiwgdW5zaWduZWQgbnVtR2x5cGhzLCBjb25zdCBGbG9hdFBv
aW50JiBhbmNob3JQb2ludCwgRm9udFNtb290aGluZ01vZGUpID0gMDsKIAogICAgIHZpcnR1YWwg
dm9pZCBkcmF3SW1hZ2VCdWZmZXIoSW1hZ2VCdWZmZXImLCBjb25zdCBGbG9hdFJlY3QmIGRlc3Rp
bmF0aW9uLCBjb25zdCBGbG9hdFJlY3QmIHNvdXJjZSwgY29uc3QgSW1hZ2VQYWludGluZ09wdGlv
bnMmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRyYXdOYXRpdmVJbWFnZShOYXRpdmVJbWFnZSYs
IGNvbnN0IEZsb2F0U2l6ZSYgaW1hZ2VTaXplLCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBj
b25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEltYWdlUGFpbnRpbmdPcHRpb25zJikgPSAw
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQv
Rm9udENhc2NhZGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAppbmRleCA4ZjFmYmYyOTk0ZTNmZWEy
OTVlZmE5ZmZhNmJjOTFiMzJiMDNiMzI0Li42MmNlNDM1NjFiZGU3MzNjMWE4NzUxMzI0YjNjM2M1
NGIwMmY2ODU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
b3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcApAQCAtMiw3ICsy
LDcgQEAKICAqIENvcHlyaWdodCAoQykgMTk5OSBMYXJzIEtub2xsIChrbm9sbEBrZGUub3JnKQog
ICogICAgICAgICAgIChDKSAxOTk5IEFudHRpIEtvaXZpc3RvIChrb2l2aXN0b0BrZGUub3JnKQog
ICogICAgICAgICAgIChDKSAyMDAwIERpcmsgTXVlbGxlciAobXVlbGxlckBrZGUub3JnKQotICog
Q29weXJpZ2h0IChDKSAyMDAzLCAyMDA2LTIwMjAsIDIwMTYgQXBwbGUgSW5jLgorICogQ29weXJp
Z2h0IChDKSAyMDAzLCAyMDA2LTIwMjEsIDIwMTYgQXBwbGUgSW5jLgogICoKICAqIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAq
IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljCkBAIC0xODMsNyArMTgzLDcgQEAgc3RhdGljIHZvaWQgc2V0Q0dGb250UmVuZGVyaW5nTW9k
ZShHcmFwaGljc0NvbnRleHQmIGNvbnRleHQpCiAgICAgQ0dDb250ZXh0U2V0U2hvdWxkU3VicGl4
ZWxRdWFudGl6ZUZvbnRzKGNnQ29udGV4dCwgZG9TdWJwaXhlbFF1YW50aXphdGlvbik7CiB9CiAK
LXZvaWQgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBj
b25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlciYgZ2x5cGhCdWZmZXIsIHVuc2lnbmVk
IGZyb20sIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgYW5jaG9yUG9pbnQs
IEZvbnRTbW9vdGhpbmdNb2RlIHNtb290aGluZ01vZGUpCit2b2lkIEZvbnRDYXNjYWRlOjpkcmF3
R2x5cGhzKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRm9udCYgZm9udCwgY29uc3Qg
R2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzLCBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFu
Y2VzLCB1bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0UG9pbnQmIGFuY2hvclBvaW50LCBG
b250U21vb3RoaW5nTW9kZSBzbW9vdGhpbmdNb2RlKQogewogICAgIGNvbnN0IGF1dG8mIHBsYXRm
b3JtRGF0YSA9IGZvbnQucGxhdGZvcm1EYXRhKCk7CiAgICAgaWYgKCFwbGF0Zm9ybURhdGEuc2l6
ZSgpKQpAQCAtMjYwLDIzICsyNjAsMjMgQEAgdm9pZCBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhH
cmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEcKICAgICAg
ICAgZmxvYXQgc2hhZG93VGV4dFggPSBwb2ludC54KCkgKyBzaGFkb3dPZmZzZXQud2lkdGgoKTsK
ICAgICAgICAgLy8gSWYgc2hhZG93cyBhcmUgaWdub3JpbmcgdHJhbnNmb3JtcywgdGhlbiB3ZSBo
YXZlbid0IGFwcGxpZWQgdGhlIFkgY29vcmRpbmF0ZSBmbGlwIHlldCwgc28gZG93biBpcyBuZWdh
dGl2ZS4KICAgICAgICAgZmxvYXQgc2hhZG93VGV4dFkgPSBwb2ludC55KCkgKyBzaGFkb3dPZmZz
ZXQuaGVpZ2h0KCkgKiAoY29udGV4dC5zaGFkb3dzSWdub3JlVHJhbnNmb3JtcygpID8gLTEgOiAx
KTsKLSAgICAgICAgc2hvd0dseXBoc1dpdGhBZHZhbmNlcyhGbG9hdFBvaW50KHNoYWRvd1RleHRY
LCBzaGFkb3dUZXh0WSksIGZvbnQsIGNnQ29udGV4dCwgZ2x5cGhCdWZmZXIuZ2x5cGhzKGZyb20p
LCBnbHlwaEJ1ZmZlci5hZHZhbmNlcyhmcm9tKSwgbnVtR2x5cGhzLCB0ZXh0TWF0cml4KTsKKyAg
ICAgICAgc2hvd0dseXBoc1dpdGhBZHZhbmNlcyhGbG9hdFBvaW50KHNoYWRvd1RleHRYLCBzaGFk
b3dUZXh0WSksIGZvbnQsIGNnQ29udGV4dCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCB0
ZXh0TWF0cml4KTsKICAgICAgICAgaWYgKHN5bnRoZXRpY0JvbGRPZmZzZXQpCi0gICAgICAgICAg
ICBzaG93R2x5cGhzV2l0aEFkdmFuY2VzKEZsb2F0UG9pbnQoc2hhZG93VGV4dFggKyBzeW50aGV0
aWNCb2xkT2Zmc2V0LCBzaGFkb3dUZXh0WSksIGZvbnQsIGNnQ29udGV4dCwgZ2x5cGhCdWZmZXIu
Z2x5cGhzKGZyb20pLCBnbHlwaEJ1ZmZlci5hZHZhbmNlcyhmcm9tKSwgbnVtR2x5cGhzLCB0ZXh0
TWF0cml4KTsKKyAgICAgICAgICAgIHNob3dHbHlwaHNXaXRoQWR2YW5jZXMoRmxvYXRQb2ludChz
aGFkb3dUZXh0WCArIHN5bnRoZXRpY0JvbGRPZmZzZXQsIHNoYWRvd1RleHRZKSwgZm9udCwgY2dD
b250ZXh0LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMsIHRleHRNYXRyaXgpOwogICAgICAg
ICBjb250ZXh0LnNldEZpbGxDb2xvcihmaWxsQ29sb3IpOwogICAgIH0KIAogI2lmIEVOQUJMRShM
RVRURVJQUkVTUykKICAgICBpZiAodXNlTGV0dGVycHJlc3NFZmZlY3QpCi0gICAgICAgIHNob3dM
ZXR0ZXJwcmVzc2VkR2x5cGhzV2l0aEFkdmFuY2VzKHBvaW50LCBmb250LCBjb250ZXh0LCBnbHlw
aEJ1ZmZlci5nbHlwaHMoZnJvbSksIGdseXBoQnVmZmVyLmFkdmFuY2VzKGZyb20pLCBudW1HbHlw
aHMpOworICAgICAgICBzaG93TGV0dGVycHJlc3NlZEdseXBoc1dpdGhBZHZhbmNlcyhwb2ludCwg
Zm9udCwgY29udGV4dCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzKTsKICAgICBlbHNlCiAj
ZW5kaWYKICAgICB7Ci0gICAgICAgIHNob3dHbHlwaHNXaXRoQWR2YW5jZXMocG9pbnQsIGZvbnQs
IGNnQ29udGV4dCwgZ2x5cGhCdWZmZXIuZ2x5cGhzKGZyb20pLCBnbHlwaEJ1ZmZlci5hZHZhbmNl
cyhmcm9tKSwgbnVtR2x5cGhzLCB0ZXh0TWF0cml4KTsKKyAgICAgICAgc2hvd0dseXBoc1dpdGhB
ZHZhbmNlcyhwb2ludCwgZm9udCwgY2dDb250ZXh0LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlw
aHMsIHRleHRNYXRyaXgpOwogICAgIH0KIAogICAgIGlmIChzeW50aGV0aWNCb2xkT2Zmc2V0KQot
ICAgICAgICBzaG93R2x5cGhzV2l0aEFkdmFuY2VzKEZsb2F0UG9pbnQocG9pbnQueCgpICsgc3lu
dGhldGljQm9sZE9mZnNldCwgcG9pbnQueSgpKSwgZm9udCwgY2dDb250ZXh0LCBnbHlwaEJ1ZmZl
ci5nbHlwaHMoZnJvbSksIGdseXBoQnVmZmVyLmFkdmFuY2VzKGZyb20pLCBudW1HbHlwaHMsIHRl
eHRNYXRyaXgpOworICAgICAgICBzaG93R2x5cGhzV2l0aEFkdmFuY2VzKEZsb2F0UG9pbnQocG9p
bnQueCgpICsgc3ludGhldGljQm9sZE9mZnNldCwgcG9pbnQueSgpKSwgZm9udCwgY2dDb250ZXh0
LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMsIHRleHRNYXRyaXgpOwogCiAgICAgaWYgKGhh
c1NpbXBsZVNoYWRvdykKICAgICAgICAgY29udGV4dC5zZXRTaGFkb3coc2hhZG93T2Zmc2V0LCBz
aGFkb3dCbHVyLCBzaGFkb3dDb2xvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAppbmRleCBkMTc3NWQ0
NGVlODdiMjQ5YTJkNzVhMzBlMzUzMzQxYTk3M2JiMjJiLi4xYTJkYWYwOGQ5NzY4OWUxMDFlYmEw
YWVhYzAyYzcyYjBlM2E0M2Q0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA2IEFsZXhleSBQcm9za3VyeWFrb3YKICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKQEAgLTc3NCw0ICs3NzQsMTUgQEAgYm9vbCBGb250Ojppc1Byb2JhYmx5
T25seVVzZWRUb1JlbmRlckljb25zKCkgY29uc3QKICAgICB9KTsKIH0KIAorYm9vbCBGb250Ojpn
bHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoQ0dHbHlwaCBnbHlwaCkgY29uc3QKK3sKKyAgICBpZiAo
IW1fb3RTVkdUYWJsZSkgeworICAgICAgICBpZiAoYXV0byB0YWJsZURhdGEgPSBhZG9wdENGKENU
Rm9udENvcHlUYWJsZShwbGF0Zm9ybURhdGEoKS5jdEZvbnQoKSwga0NURm9udFRhYmxlU1ZHLCBr
Q1RGb250VGFibGVPcHRpb25Ob09wdGlvbnMpKSkKKyAgICAgICAgICAgIG1fb3RTVkdUYWJsZSA9
IE9UU1ZHVGFibGUodGFibGVEYXRhLmdldCgpLCBmb250TWV0cmljcygpLnVuaXRzUGVyRW0oKSwg
cGxhdGZvcm1EYXRhKCkuc2l6ZSgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9vdFNW
R1RhYmxlID0gT1RTVkdUYWJsZSgpOworICAgIH0KKyAgICByZXR1cm4gbV9vdFNWR1RhYmxlLnZh
bHVlKCkudGFibGUgJiYgT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaChtX290U1ZH
VGFibGUudmFsdWUoKS50YWJsZSwgZ2x5cGgpICE9IGtDRk5vdEZvdW5kOworfQorCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdH
bHlwaHNSZWNvcmRlci5oCmluZGV4IDFmMWRiMGNlZTBiOGYzY2RjMTg4NTM3YWI4ZDNiYjY5YWM3
MTYxMzMuLmE4MWY2M2Y0NTk2ZTAzN2U2NWZiNmFkMGViZTM0NDkzYTg5Mjg4M2IgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5
TGlzdERyYXdHbHlwaHNSZWNvcmRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlci5oCkBAIC0x
LDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAtMjAyMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTU2LDcg
KzU2LDcgQEAgcHVibGljOgogICAgIH07CiAgICAgZXhwbGljaXQgRHJhd0dseXBoc1JlY29yZGVy
KFJlY29yZGVyJiwgRHJhd0dseXBoc0RlY29uc3RydWN0aW9uKTsKIAotICAgIHZvaWQgZHJhd0ds
eXBocyhjb25zdCBGb250JiwgY29uc3QgR2x5cGhCdWZmZXImLCB1bnNpZ25lZCBmcm9tLCB1bnNp
Z25lZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0UG9pbnQmIGFuY2hvclBvaW50LCBGb250U21vb3Ro
aW5nTW9kZSk7CisgICAgdm9pZCBkcmF3R2x5cGhzKGNvbnN0IEZvbnQmLCBjb25zdCBHbHlwaEJ1
ZmZlckdseXBoKiwgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiwgdW5zaWduZWQgbnVtR2x5cGhz
LCBjb25zdCBGbG9hdFBvaW50JiBhbmNob3JQb2ludCwgRm9udFNtb290aGluZ01vZGUpOwogCiAj
aWYgVVNFKENPUkVfVEVYVCkKICAgICB2b2lkIHJlY29yZEJlZ2luTGF5ZXIoQ0dSZW5kZXJpbmdT
dGF0ZVJlZiwgQ0dHU3RhdGVSZWYsIENHUmVjdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVj
b3JkZXJDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNw
bGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKaW5kZXgg
NTYwNDM5MjNlOGE0ZWFmOTJkNTViYWE1NzQwNDUwMzcwNTQ5YjQ4My4uMGU0YmYzZmRhOGIwMmI4
ZWFmM2Y0YTYzZWM0OGYyYmM5MWI2YmJhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVy
Q29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3Bs
YXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcApAQCAtMSw1
ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLTIwMjEgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zNiw2ICsz
Niw3IEBACiAjaW5jbHVkZSAiR2x5cGhCdWZmZXIuaCIKIAogI2luY2x1ZGUgPENvcmVUZXh0L0Nv
cmVUZXh0Lmg+CisjaW5jbHVkZSA8cGFsL3NwaS9jb2NvYS9Db3JlVGV4dFNQSS5oPgogI2luY2x1
ZGUgPHd0Zi9WZWN0b3IuaD4KIAogI2lmIFBMQVRGT1JNKFdJTikKQEAgLTM2MiwxNiArMzYzLDUx
IEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3SW1hZ2UoQ0dSZW5kZXJpbmdT
dGF0ZVJlZiwgQ0dHU3RhdGVSZWYgZ3N0YXRlCiAgICAgbV9vd25lci50cmFuc2xhdGUoMCwgLShy
ZWN0LnNpemUuaGVpZ2h0ICsgMiAqIHJlY3Qub3JpZ2luLnkpKTsKIH0KIAotdm9pZCBEcmF3R2x5
cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZm
ZXImIGdseXBoQnVmZmVyLCB1bnNpZ25lZCBmcm9tLCB1bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0
IEZsb2F0UG9pbnQmIHN0YXJ0UG9pbnQsIEZvbnRTbW9vdGhpbmdNb2RlIHNtb290aGluZ01vZGUp
CitzdHJ1Y3QgR2x5cGhzQW5kQWR2YW5jZXMgeworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBo
PiBnbHlwaHM7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyQWR2YW5jZT4gYWR2YW5jZXM7CisgICAg
R2x5cGhCdWZmZXJBZHZhbmNlIGluaXRpYWxBZHZhbmNlOworfTsKK3N0YXRpYyBHbHlwaHNBbmRB
ZHZhbmNlcyBmaWx0ZXJPdXRPVFNWR0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlw
aEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMs
IHVuc2lnbmVkIG51bUdseXBocykKK3sKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaD4gcmVz
dWx0R2x5cGhzOworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckFkdmFuY2U+IHJlc3VsdEFkdmFuY2Vz
OworICAgIEdseXBoQnVmZmVyQWR2YW5jZSBpbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZl
ckFkdmFuY2UoKTsKKworICAgIHJlc3VsdEdseXBocy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51
bUdseXBocyk7CisgICAgcmVzdWx0QWR2YW5jZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1H
bHlwaHMpOworCisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKSB7
CisgICAgICAgIEFTU0VSVChyZXN1bHRHbHlwaHMuc2l6ZSgpID09IHJlc3VsdEFkdmFuY2VzLnNp
emUoKSk7CisgICAgICAgIGlmIChmb250LmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhnbHlwaHNb
aV0pKSB7CisgICAgICAgICAgICBpZiAocmVzdWx0R2x5cGhzLmlzRW1wdHkoKSkKKyAgICAgICAg
ICAgICAgICBpbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2Uoc2l6ZShpbml0
aWFsQWR2YW5jZSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgcmVzdWx0QWR2YW5jZXMubGFzdCgpID0gbWFrZUdseXBoQnVmZmVyQWR2YW5j
ZShzaXplKHJlc3VsdEFkdmFuY2VzLmxhc3QoKSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICByZXN1bHRHbHlwaHMudW5jaGVja2VkQXBwZW5kKGds
eXBoc1tpXSk7CisgICAgICAgICAgICByZXN1bHRBZHZhbmNlcy51bmNoZWNrZWRBcHBlbmQoYWR2
YW5jZXNbaV0pOworICAgICAgICB9CisgICAgICAgIEFTU0VSVChyZXN1bHRHbHlwaHMuc2l6ZSgp
ID09IHJlc3VsdEFkdmFuY2VzLnNpemUoKSk7CisgICAgfQorCisgICAgcmV0dXJuIHsgV1RGTW92
ZShyZXN1bHRHbHlwaHMpLCBXVEZNb3ZlKHJlc3VsdEFkdmFuY2VzKSwgV1RGTW92ZShpbml0aWFs
QWR2YW5jZSkgfTsKK30KKwordm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29u
c3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzLCBjb25zdCBHbHlw
aEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0
UG9pbnQmIHN0YXJ0UG9pbnQsIEZvbnRTbW9vdGhpbmdNb2RlIHNtb290aGluZ01vZGUpCiB7CiAg
ICAgaWYgKG1fZHJhd0dseXBoc0RlY29uc3RydWN0aW9uID09IERyYXdHbHlwaHNEZWNvbnN0cnVj
dGlvbjo6RG9udERlY29uc3RydWN0KSB7Ci0gICAgICAgIG1fb3duZXIuYXBwZW5kRHJhd0dyYXBo
c0l0ZW1XaXRoQ2FjaGVkRm9udChmb250LCBnbHlwaEJ1ZmZlci5nbHlwaHMoZnJvbSksIGdseXBo
QnVmZmVyLmFkdmFuY2VzKGZyb20pLCBudW1HbHlwaHMsIHN0YXJ0UG9pbnQsIHNtb290aGluZ01v
ZGUpOworICAgICAgICBtX293bmVyLmFwcGVuZERyYXdHcmFwaHNJdGVtV2l0aENhY2hlZEZvbnQo
Zm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBvaW50LCBzbW9vdGhpbmdN
b2RlKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIEFTU0VSVChtX2RyYXdHbHlwaHNE
ZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRlY29uc3RydWN0KTsK
KworICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1NTI+IFJlY29yZCBPVFNWRyBn
bHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RT
VkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250LCBnbHlwaHMsIGFkdmFuY2VzLCBu
dW1HbHlwaHMpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4dChmb250LCBzbW9vdGhpbmdN
b2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9u
dCwgZ2x5cGhCdWZmZXIsIGZyb20sIG51bUdseXBocywgc3RhcnRQb2ludCwgc21vb3RoaW5nTW9k
ZSk7CisgICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRleHQsIGZvbnQs
IGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocy5kYXRhKCksIGdseXBo
c0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmFkdmFuY2VzLmRhdGEoKSwgbnVtR2x5cGhz
LCBzdGFydFBvaW50ICsgc2l6ZShnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5p
bml0aWFsQWR2YW5jZSksIHNtb290aGluZ01vZGUpOwogICAgIGNvbmNsdWRlSW50ZXJuYWxDb250
ZXh0KCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdEl0ZW1zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdEl0ZW1zLmNwcAppbmRleCAyMTNk
YjljOGNmNDJlYzFhZTJkMTMzOTM3NWQ5ZjU2MzBlNzZkNzQzLi5mYjQ5YmU1OTI2M2Y2MWMzMmQ1
NTE5ZWNmZjMxZDI3NDA2YzliMGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RJdGVtcy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0SXRlbXMu
Y3BwCkBAIC0zODAsMTcgKzM4MCw5IEBAIERyYXdHbHlwaHM6OkRyYXdHbHlwaHMoY29uc3QgRm9u
dCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzLCBjb25zdCBHCiAgICAgY29t
cHV0ZUJvdW5kcyhmb250KTsKIH0KIAotaW5saW5lIEdseXBoQnVmZmVyIERyYXdHbHlwaHM6Omdl
bmVyYXRlR2x5cGhCdWZmZXIoY29uc3QgRm9udCYgZm9udCkgY29uc3QKLXsKLSAgICBHbHlwaEJ1
ZmZlciByZXN1bHQ7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2dseXBocy5zaXplKCk7
ICsraSkKLSAgICAgICAgcmVzdWx0LmFkZChtX2dseXBoc1tpXSwgZm9udCwgbV9hZHZhbmNlc1tp
XSwgR2x5cGhCdWZmZXI6Om5vT2Zmc2V0KTsKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCiB2b2lk
IERyYXdHbHlwaHM6OmFwcGx5KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRm9udCYg
Zm9udCkgY29uc3QKIHsKLSAgICBjb250ZXh0LmRyYXdHbHlwaHMoZm9udCwgZ2VuZXJhdGVHbHlw
aEJ1ZmZlcihmb250KSwgMCwgbV9nbHlwaHMuc2l6ZSgpLCBhbmNob3JQb2ludCgpLCBtX3Ntb290
aGluZ01vZGUpOworICAgIGNvbnRleHQuZHJhd0dseXBocyhmb250LCBtX2dseXBocy5kYXRhKCks
IG1fYWR2YW5jZXMuZGF0YSgpLCBtX2dseXBocy5zaXplKCksIGFuY2hvclBvaW50KCksIG1fc21v
b3RoaW5nTW9kZSk7CiB9CiAKIHZvaWQgRHJhd0dseXBoczo6Y29tcHV0ZUJvdW5kcyhjb25zdCBG
b250JiBmb250KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0SXRlbXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdEl0ZW1zLmgKaW5kZXggNGNmYmQ4OWIw
NDY1OTVmMjgxZDQxZTIxMjA1YTdmZjNhNmE2MzY3ZS4uODg2NTVlZjA1MzNiOTM0NGQzMDZhMzY5
NDM4M2IyYWM3YmNlOTM3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0SXRlbXMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RJdGVtcy5oCkBAIC05
NTYsOCArOTU2LDYgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICB2b2lkIGNvbXB1dGVCb3VuZHMo
Y29uc3QgRm9udCYpOwogCi0gICAgR2x5cGhCdWZmZXIgZ2VuZXJhdGVHbHlwaEJ1ZmZlcihjb25z
dCBGb250JikgY29uc3Q7Ci0KICAgICBSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIgbV9mb250
SWRlbnRpZmllcjsKICAgICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaCwgMTI4PiBtX2dseXBoczsK
ICAgICBWZWN0b3I8R2x5cGhCdWZmZXJBZHZhbmNlLCAxMjg+IG1fYWR2YW5jZXM7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3RSZWNvcmRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNw
bGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5jcHAKaW5kZXggNGNkYzNiMGFlY2M5NGRjYjE2
NjZmMDk5Mjk0MTY2NTE3MjRiM2EzYS4uODUzNWFlODA0ZTUzMTdiYTlmYzA5NzlkYmFhNDg0OGU1
MTMwYjA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlz
cGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmNwcApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE2LTIwMjEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0xNjIs
OSArMTYyLDkgQEAgdm9pZCBSZWNvcmRlcjo6c2V0TWl0ZXJMaW1pdChmbG9hdCBtaXRlckxpbWl0
KQogICAgIGFwcGVuZDxTZXRNaXRlckxpbWl0PihtaXRlckxpbWl0KTsKIH0KIAotdm9pZCBSZWNv
cmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlciYgZ2x5
cGhCdWZmZXIsIHVuc2lnbmVkIGZyb20sIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQ
b2ludCYgc3RhcnRQb2ludCwgRm9udFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKK3ZvaWQg
UmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJH
bHlwaCogZ2x5cGhzLCBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1bnNpZ25l
ZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0UG9pbnQmIHN0YXJ0UG9pbnQsIEZvbnRTbW9vdGhpbmdN
b2RlIHNtb290aGluZ01vZGUpCiB7Ci0gICAgbV9kcmF3R2x5cGhzUmVjb3JkZXIuZHJhd0dseXBo
cyhmb250LCBnbHlwaEJ1ZmZlciwgZnJvbSwgbnVtR2x5cGhzLCBzdGFydFBvaW50LCBzbW9vdGhp
bmdNb2RlKTsKKyAgICBtX2RyYXdHbHlwaHNSZWNvcmRlci5kcmF3R2x5cGhzKGZvbnQsIGdseXBo
cywgYWR2YW5jZXMsIG51bUdseXBocywgc3RhcnRQb2ludCwgc21vb3RoaW5nTW9kZSk7CiB9CiAK
IHZvaWQgUmVjb3JkZXI6OmFwcGVuZERyYXdHcmFwaHNJdGVtV2l0aENhY2hlZEZvbnQoY29uc3Qg
Rm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzLCBjb25zdCBHbHlwaEJ1
ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1bnNpZ25lZCBjb3VudCwgY29uc3QgRmxvYXRQb2ludCYg
bG9jYWxBbmNob3IsIEZvbnRTbW9vdGhpbmdNb2RlIHNtb290aGluZ01vZGUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxp
c3RSZWNvcmRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaAppbmRleCA2NGY3OGFjYjZjNDk2Mzk4NTI2NmQyYzQz
NTcxZWI2OTQ0NWNlMDNjLi5jZDgxZjIxODZlMTQ2YzAxN2ExODU4NWJiMzhkNjIxYjNiOGIwOTU3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlz
dHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmgKQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNi0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMTA0LDcgKzEwNCw3IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBhcHBseUZpbGxQYXR0ZXJuKCkgb3ZlcnJpZGU7CiAjZW5kaWYK
IAotICAgIHZvaWQgZHJhd0dseXBocyhjb25zdCBGb250JiwgY29uc3QgR2x5cGhCdWZmZXImLCB1
bnNpZ25lZCBmcm9tLCB1bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0UG9pbnQmIGFuY2hv
clBvaW50LCBGb250U21vb3RoaW5nTW9kZSkgb3ZlcnJpZGU7CisgICAgdm9pZCBkcmF3R2x5cGhz
KGNvbnN0IEZvbnQmLCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiwgY29uc3QgR2x5cGhCdWZmZXJB
ZHZhbmNlKiwgdW5zaWduZWQgbnVtR2x5cGhzLCBjb25zdCBGbG9hdFBvaW50JiBhbmNob3JQb2lu
dCwgRm9udFNtb290aGluZ01vZGUpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBhcHBlbmREcmF3R3Jh
cGhzSXRlbVdpdGhDYWNoZWRGb250KGNvbnN0IEZvbnQmLCBjb25zdCBHbHlwaEJ1ZmZlckdseXBo
KiwgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiwgdW5zaWduZWQgY291bnQsIGNvbnN0IEZsb2F0
UG9pbnQmIGxvY2FsQW5jaG9yLCBGb250U21vb3RoaW5nTW9kZSk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvTWF0aE9wZXJhdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvTWF0aE9wZXJhdG9yLmNwcAppbmRleCBjNzVmMTgzMzJl
ZmJjOWI5MzViOTlkNGZjNzJlOTU1NGY0Mjk0MzU0Li4xZDI4Nzc2NjYyMWVjM2RlZTQ0OWI4MDRl
MzYzODVhNjNiYjdlOWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0
aG1sL01hdGhPcGVyYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGht
bC9NYXRoT3BlcmF0b3IuY3BwCkBAIC0xLDYgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykg
MjAxNiBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAy
MDE2IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTYtMjAyMSBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCkBAIC01MjQsOSArNTI0LDkgQEAgTGF5b3V0UmVjdCBNYXRoT3BlcmF0
b3I6OnBhaW50R2x5cGgoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlLCBQYWludEluZm8mIGluZm8s
IGMKICAgICBHcmFwaGljc0NvbnRleHRTdGF0ZVNhdmVyIHN0YXRlU2F2ZXIoaW5mby5jb250ZXh0
KCkpOwogICAgIGluZm8uY29udGV4dCgpLmNsaXAoY2xpcEJvdW5kcyk7CiAKLSAgICBHbHlwaEJ1
ZmZlciBidWZmZXI7Ci0gICAgYnVmZmVyLmFkZChkYXRhLmdseXBoLCAqZGF0YS5mb250LCBhZHZh
bmNlV2lkdGhGb3JHbHlwaChkYXRhKSk7Ci0gICAgaW5mby5jb250ZXh0KCkuZHJhd0dseXBocygq
ZGF0YS5mb250LCBidWZmZXIsIDAsIDEsIG9yaWdpbiwgc3R5bGUuZm9udENhc2NhZGUoKS5mb250
RGVzY3JpcHRpb24oKS5mb250U21vb3RoaW5nKCkpOworICAgIC8vIEZJWE1FOiBJZiB3ZSdyZSBq
dXN0IGRyYXdpbmcgYSBzaW5nbGUgZ2x5cGgsIHdoeSBkbyB3ZSBuZWVkIHRvIGNvbXB1dGUgYW4g
YWR2YW5jZT8KKyAgICBhdXRvIGFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKGFkdmFu
Y2VXaWR0aEZvckdseXBoKGRhdGEpKTsKKyAgICBpbmZvLmNvbnRleHQoKS5kcmF3R2x5cGhzKCpk
YXRhLmZvbnQsICZkYXRhLmdseXBoLCAmYWR2YW5jZSwgMSwgb3JpZ2luLCBzdHlsZS5mb250Q2Fz
Y2FkZSgpLmZvbnREZXNjcmlwdGlvbigpLmZvbnRTbW9vdGhpbmcoKSk7CiAKICAgICByZXR1cm4g
Z2x5cGhQYWludFJlY3Q7CiB9CkBAIC03MjgsMTIgKzcyOCwxMiBAQCB2b2lkIE1hdGhPcGVyYXRv
cjo6cGFpbnQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlLCBQYWludEluZm8mIGluZm8sIGNvbnN0
IExheW91dAogICAgIGlmIChtX3N0cmV0Y2hUeXBlID09IFN0cmV0Y2hUeXBlOjpTaXplVmFyaWFu
dCkKICAgICAgICAgZ2x5cGhEYXRhLmdseXBoID0gbV92YXJpYW50R2x5cGg7CiAKLSAgICBHbHlw
aEJ1ZmZlciBidWZmZXI7Ci0gICAgYnVmZmVyLmFkZChnbHlwaERhdGEuZ2x5cGgsICpnbHlwaERh
dGEuZm9udCwgYWR2YW5jZVdpZHRoRm9yR2x5cGgoZ2x5cGhEYXRhKSk7CiAgICAgTGF5b3V0UG9p
bnQgb3BlcmF0b3JUb3BMZWZ0ID0gcGFpbnRPZmZzZXQ7CiAgICAgRmxvYXRSZWN0IGdseXBoQm91
bmRzID0gYm91bmRzRm9yR2x5cGgoZ2x5cGhEYXRhKTsKICAgICBMYXlvdXRQb2ludCBvcGVyYXRv
ck9yaWdpbiB7IG9wZXJhdG9yVG9wTGVmdC54KCksIExheW91dFVuaXQob3BlcmF0b3JUb3BMZWZ0
LnkoKSAtIGdseXBoQm91bmRzLnkoKSkgfTsKLSAgICBwYWludEluZm8uY29udGV4dCgpLmRyYXdH
bHlwaHMoKmdseXBoRGF0YS5mb250LCBidWZmZXIsIDAsIDEsIG9wZXJhdG9yT3JpZ2luLCBzdHls
ZS5mb250Q2FzY2FkZSgpLmZvbnREZXNjcmlwdGlvbigpLmZvbnRTbW9vdGhpbmcoKSk7CisgICAg
Ly8gRklYTUU6IElmIHdlJ3JlIGp1c3QgZHJhd2luZyBhIHNpbmdsZSBnbHlwaCwgd2h5IGRvIHdl
IG5lZWQgdG8gY29tcHV0ZSBhbiBhZHZhbmNlPworICAgIGF1dG8gYWR2YW5jZSA9IG1ha2VHbHlw
aEJ1ZmZlckFkdmFuY2UoYWR2YW5jZVdpZHRoRm9yR2x5cGgoZ2x5cGhEYXRhKSk7CisgICAgcGFp
bnRJbmZvLmNvbnRleHQoKS5kcmF3R2x5cGhzKCpnbHlwaERhdGEuZm9udCwgJmdseXBoRGF0YS5n
bHlwaCwgJmFkdmFuY2UsIDEsIG9wZXJhdG9yT3JpZ2luLCBzdHlsZS5mb250Q2FzY2FkZSgpLmZv
bnREZXNjcmlwdGlvbigpLmZvbnRTbW9vdGhpbmcoKSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MVG9rZW4uY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxUb2tlbi5jcHAKaW5kZXgg
ZDUzZDZjNGJiMmYyYWNhMDAwMzY4YzA1N2IzMDVlYjQ5ODdjMzQ3ZC4uN2VmYWU0ZDBmYjliNzc1
ZTY5NzhmNTAyMjg5NjZmNzU3OWEzMzgxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxUb2tlbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxUb2tlbi5jcHAKQEAgLTEsNyArMSw3IEBACiAv
KgogICogQ29weXJpZ2h0IChDKSAyMDE0IEZyw6lkw6lyaWMgV2FuZyAoZnJlZC53YW5nQGZyZWUu
ZnIpLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDE2IElnYWxpYSBT
LkwuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNi0yMDIxIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTYwNiwxMCArNjA2LDEw
IEBAIHZvaWQgUmVuZGVyTWF0aE1MVG9rZW46OnBhaW50KFBhaW50SW5mbyYgaW5mbywgY29uc3Qg
TGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQogICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIg
c3RhdGVTYXZlcihpbmZvLmNvbnRleHQoKSk7CiAgICAgaW5mby5jb250ZXh0KCkuc2V0RmlsbENv
bG9yKHN0eWxlKCkudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3Bl
cnR5Q29sb3IpKTsKIAotICAgIEdseXBoQnVmZmVyIGJ1ZmZlcjsKLSAgICBidWZmZXIuYWRkKG1h
dGhWYXJpYW50R2x5cGguZ2x5cGgsICptYXRoVmFyaWFudEdseXBoLmZvbnQsIG1hdGhWYXJpYW50
R2x5cGguZm9udC0+d2lkdGhGb3JHbHlwaChtYXRoVmFyaWFudEdseXBoLmdseXBoKSk7CiAgICAg
TGF5b3V0VW5pdCBnbHlwaEFzY2VudCA9IHN0YXRpY19jYXN0PGludD4obHJvdW5kZigtbWF0aFZh
cmlhbnRHbHlwaC5mb250LT5ib3VuZHNGb3JHbHlwaChtYXRoVmFyaWFudEdseXBoLmdseXBoKS55
KCkpKTsKLSAgICBpbmZvLmNvbnRleHQoKS5kcmF3R2x5cGhzKCptYXRoVmFyaWFudEdseXBoLmZv
bnQsIGJ1ZmZlciwgMCwgMSwgcGFpbnRPZmZzZXQgKyBsb2NhdGlvbigpICsgTGF5b3V0UG9pbnQo
MF9sdSwgZ2x5cGhBc2NlbnQpLCBzdHlsZSgpLmZvbnRDYXNjYWRlKCkuZm9udERlc2NyaXB0aW9u
KCkuZm9udFNtb290aGluZygpKTsKKyAgICAvLyBGSVhNRTogSWYgd2UncmUganVzdCBkcmF3aW5n
IGEgc2luZ2xlIGdseXBoLCB3aHkgZG8gd2UgbmVlZCB0byBjb21wdXRlIGFuIGFkdmFuY2U/Cisg
ICAgYXV0byBhZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShtYXRoVmFyaWFudEdseXBo
LmZvbnQtPndpZHRoRm9yR2x5cGgobWF0aFZhcmlhbnRHbHlwaC5nbHlwaCkpOworICAgIGluZm8u
Y29udGV4dCgpLmRyYXdHbHlwaHMoKm1hdGhWYXJpYW50R2x5cGguZm9udCwgJm1hdGhWYXJpYW50
R2x5cGguZ2x5cGgsICZhZHZhbmNlLCAxLCBwYWludE9mZnNldCArIGxvY2F0aW9uKCkgKyBMYXlv
dXRQb2ludCgwX2x1LCBnbHlwaEFzY2VudCksIHN0eWxlKCkuZm9udENhc2NhZGUoKS5mb250RGVz
Y3JpcHRpb24oKS5mb250U21vb3RoaW5nKCkpOwogfQogCiB2b2lkIFJlbmRlck1hdGhNTFRva2Vu
OjpwYWludENoaWxkcmVuKFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYg
cGFpbnRPZmZzZXQsIFBhaW50SW5mbyYgcGFpbnRJbmZvRm9yQ2hpbGQsIGJvb2wgdXNlUHJpbnRS
ZWN0KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420036</attachid>
            <date>2021-02-11 13:37:56 -0800</date>
            <delta_ts>2021-02-12 08:19:46 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>9434</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAyZTNiYTJkOGJiYWEuLjQ2NzE2NGIzZmFiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNjIwLDYgKzYyMCw3IEBACiAJ
CTFDNjYyNjExMUM2RTdDQTYwMEFCNTI3QyAvKiBGb250RmFjZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM2NjI2MEYxQzZFN0NBNjAwQUI1MjdDIC8q
IEZvbnRGYWNlLmggKi87IH07CiAJCTFDNzNBNzEzMjE4NTc1N0UwMDRDQ0VBNSAvKiBUZXh0VW5k
ZXJsaW5lT2Zmc2V0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQ0I2QjRGQjIxN0I4Mzk0MDA5M0I5Q0QgLyogVGV4dFVuZGVybGluZU9mZnNldC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFDNzNBNzE1
MjE4NTc1ODcwMDRDQ0VBNSAvKiBUZXh0RGVjb3JhdGlvblRoaWNrbmVzcy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNCNkI0RjgyMTdCODM5MzAwOTNC
OUNEIC8qIFRleHREZWNvcmF0aW9uVGhpY2tuZXNzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUM3N0M4QUMyNUQ0NUE1MTAwNjM1RTBDIC8qIE9U
U1ZHLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDFDNzdDOEFBMjVENDVBNTEwMDYzNUUwQyAvKiBPVFNWRy5mcmFtZXdvcmsgKi87IH07
CiAJCTFDODFCOTVBMEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNwZWN0b3JDb250cm9sbGVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzgxQjk1NjBFOTcz
MzA4MDAyNjZFMDcgLyogSW5zcGVjdG9yQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFDODFCOTVDMEU5NzMzMDgwMDI2NkUwNyAv
KiBJbnNwZWN0b3JDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDODFCOTU4MEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNwZWN0b3JDbGllbnQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkxQ0FGMzQ4
MTBBNkM0MDUyMDBBQkUwNkUgLyogV2ViU2NyaXB0T2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0FGMzQ3RTBBNkM0MDUyMDBBQkUwNkUgLyog
V2ViU2NyaXB0T2JqZWN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKQEAgLTY4MzMsNiArNjgzNCw3IEBACiAJCTFDNkZEOEFFMjUwQTMxMTUwMEQ2RTky
MCAvKiBGb250Q2FzY2FkZUNvcmVUZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvbnRDYXNj
YWRlQ29yZVRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzZGRDhBRjI1
MEEzM0NGMDBENkU5MjAgLyogRm9udENvcmVUZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZv
bnRDb3JlVGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNkZEOEIwMjUw
QTM1RjEwMEQ2RTkyMCAvKiBGb250Q29jb2EuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENv
Y29hLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3N0M4QUEyNUQ0NUE1MTAw
NjM1RTBDIC8qIE9UU1ZHLmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gT1RTVkcuZnJhbWV3
b3JrOyBwYXRoID0gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL09UU1ZHLmZyYW1l
d29yazsgc291cmNlVHJlZSA9IFNES1JPT1Q7IH07CiAJCTFDODFCOTU2MEU5NzMzMDgwMDI2NkUw
NyAvKiBJbnNwZWN0b3JDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEluc3BlY3RvckNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUM4MUI5NTcwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNvbnRyb2xsZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yQ29udHJvbGxlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDODFCOTU4MEU5NzMzMDgwMDI2NkUwNyAv
KiBJbnNwZWN0b3JDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5z
cGVjdG9yQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNzEyOCw2ICsx
NzEzMCw3IEBACiAJCQkJMUMwOUQwNTkxRTMxQzZBOTAwNzI1RjE4IC8qIGxpYlBBTC5hIGluIEZy
YW1ld29ya3MgKi8sCiAJCQkJREQ3NjNCQjIwOTkyQzJDOTAwNzQwQjhFIC8qIGxpYnhtbDIuZHls
aWIgaW4gRnJhbWV3b3JrcyAqLywKIAkJCQkzNzk5MTlCMjEyMDBERTUwMDBFQTA0MUMgLyogbGli
ei5keWxpYiBpbiBGcmFtZXdvcmtzICovLAorCQkJCTFDNzdDOEFDMjVENDVBNTEwMDYzNUUwQyAv
KiBPVFNWRy5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKIAkJCQlBODhBRDUyRjA5NTI0Qjky
MDAxREQxOTYgLyogUXVhcnR6Q29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKIAkJCQk1
RkUxRDI5MjE3OEZEMUYzMDAxQUEzQzMgLyogU2VjdXJpdHkuZnJhbWV3b3JrIGluIEZyYW1ld29y
a3MgKi8sCiAJCQkpOwpAQCAtMTc3NjYsNiArMTc3NjksNyBAQAogCQkJCURENzYzQkIxMDk5MkMy
QzkwMDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGliICovLAogCQkJCTM3OTkxOUIxMTIwMERFNTAwMEVB
MDQxQyAvKiBsaWJ6LmR5bGliICovLAogCQkJCTU3NEY1NUUyMjA0RjNDQkYwMDI5NDhDNiAvKiBM
b2NhbEF1dGhlbnRpY2F0aW9uLmZyYW1ld29yayAqLywKKwkJCQkxQzc3QzhBQTI1RDQ1QTUxMDA2
MzVFMEMgLyogT1RTVkcuZnJhbWV3b3JrICovLAogCQkJCUE4NUQ3QTJGMDg3OUVCQTkwMDZBOTE3
MiAvKiBRdWFydHpDb3JlLmZyYW1ld29yayAqLywKIAkJCQk1RkUxRDI5MTE3OEZEMUYzMDAxQUEz
QzMgLyogU2VjdXJpdHkuZnJhbWV3b3JrICovLAogCQkJKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuaAppbmRleCBjN2IwNzJlNjZjNjMuLmFiMjkxN2RjMjIzYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAg
KiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4K
ICAqCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4K
ICAqCiAgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1
dGUgaXQgYW5kL29yCkBAIC00Miw2ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNp
bmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9z
cGkvY29jb2EvQ29yZVRleHRTUEkuaD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAjZW5k
aWYKIApAQCAtMjE0LDYgKzIxNSw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBCaXRWZWN0b3ImIGds
eXBoc1N1cHBvcnRlZEJ5QWxsU21hbGxDYXBzKCkgY29uc3Q7CiAgICAgY29uc3QgQml0VmVjdG9y
JiBnbHlwaHNTdXBwb3J0ZWRCeVBldGl0ZUNhcHMoKSBjb25zdDsKICAgICBjb25zdCBCaXRWZWN0
b3ImIGdseXBoc1N1cHBvcnRlZEJ5QWxsUGV0aXRlQ2FwcygpIGNvbnN0OworICAgIGJvb2wgZ2x5
cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKENHR2x5cGgpIGNvbnN0OwogI2VuZGlmCiAKICAgICBib29s
IGNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNvbnN0IFVDaGFyKiwgc2l6ZV90
KSBjb25zdDsKQEAgLTI5Myw2ICsyOTUsNyBAQCBwcml2YXRlOgogICAgIG11dGFibGUgT3B0aW9u
YWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5QWxsU21hbGxDYXBzOwogICAgIG11dGFi
bGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5UGV0aXRlQ2FwczsKICAg
ICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRCeUFsbFBldGl0
ZUNhcHM7CisgICAgbXV0YWJsZSBPcHRpb25hbDxPVFNWR1RhYmxlPiBtX290U1ZHVGFibGU7CiAj
ZW5kaWYKIAogI2lmIFBMQVRGT1JNKFdJTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCmluZGV4IDk3NTU1
YmUxMjkzMC4uYmFmZjE3ZmI1YjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKQEAgLTEsNSArMSw1
IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA2IEFsZXhleSBQcm9za3VyeWFrb3YK
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKQEAgLTc3NCw0ICs3NzQsMTUgQEAgYm9vbCBGb250Ojppc1Byb2Jh
Ymx5T25seVVzZWRUb1JlbmRlckljb25zKCkgY29uc3QKICAgICB9KTsKIH0KIAorYm9vbCBGb250
OjpnbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoQ0dHbHlwaCBnbHlwaCkgY29uc3QKK3sKKyAgICBp
ZiAoIW1fb3RTVkdUYWJsZSkgeworICAgICAgICBpZiAoYXV0byB0YWJsZURhdGEgPSBhZG9wdENG
KENURm9udENvcHlUYWJsZShwbGF0Zm9ybURhdGEoKS5jdEZvbnQoKSwga0NURm9udFRhYmxlU1ZH
LCBrQ1RGb250VGFibGVPcHRpb25Ob09wdGlvbnMpKSkKKyAgICAgICAgICAgIG1fb3RTVkdUYWJs
ZSA9IE9UU1ZHVGFibGUodGFibGVEYXRhLmdldCgpLCBmb250TWV0cmljcygpLnVuaXRzUGVyRW0o
KSwgcGxhdGZvcm1EYXRhKCkuc2l6ZSgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9v
dFNWR1RhYmxlID0gT1RTVkdUYWJsZSgpOworICAgIH0KKyAgICByZXR1cm4gbV9vdFNWR1RhYmxl
LnZhbHVlKCkudGFibGUgJiYgT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaChtX290
U1ZHVGFibGUudmFsdWUoKS50YWJsZSwgZ2x5cGgpICE9IGtDRk5vdEZvdW5kOworfQorCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlz
cGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKaW5kZXggMWVjYTUwM2I1ZTQw
Li4wZTRiZjNmZGE4YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlz
cGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2LDYgKzM2LDcgQEAK
ICNpbmNsdWRlICJHbHlwaEJ1ZmZlci5oIgogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHQu
aD4KKyNpbmNsdWRlIDxwYWwvc3BpL2NvY29hL0NvcmVUZXh0U1BJLmg+CiAjaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgogCiAjaWYgUExBVEZPUk0oV0lOKQpAQCAtMzYyLDYgKzM2MywzNyBAQCB2b2lk
IERyYXdHbHlwaHNSZWNvcmRlcjo6cmVjb3JkRHJhd0ltYWdlKENHUmVuZGVyaW5nU3RhdGVSZWYs
IENHR1N0YXRlUmVmIGdzdGF0ZQogICAgIG1fb3duZXIudHJhbnNsYXRlKDAsIC0ocmVjdC5zaXpl
LmhlaWdodCArIDIgKiByZWN0Lm9yaWdpbi55KSk7CiB9CiAKK3N0cnVjdCBHbHlwaHNBbmRBZHZh
bmNlcyB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBWZWN0b3I8
R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5p
dGlhbEFkdmFuY2U7Cit9Oworc3RhdGljIEdseXBoc0FuZEFkdmFuY2VzIGZpbHRlck91dE9UU1ZH
R2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywg
Y29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzKQor
eworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiByZXN1bHRHbHlwaHM7CisgICAgVmVjdG9y
PEdseXBoQnVmZmVyQWR2YW5jZT4gcmVzdWx0QWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJBZHZh
bmNlIGluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpOworCisgICAgcmVz
dWx0R2x5cGhzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKyAgICByZXN1bHRB
ZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBmb3IgKHVu
c2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKHJlc3Vs
dEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICAgICAgaWYgKGZv
bnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpIHsKKyAgICAgICAgICAgIGlm
IChyZXN1bHRHbHlwaHMuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGluaXRpYWxBZHZhbmNl
ID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKGluaXRpYWxBZHZhbmNlKSArIHNpemUoYWR2
YW5jZXNbaV0pKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHRBZHZh
bmNlcy5sYXN0KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0QWR2YW5jZXMu
bGFzdCgpKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIHJlc3VsdEdseXBocy51bmNoZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAgICAgICAg
IHJlc3VsdEFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChhZHZhbmNlc1tpXSk7CisgICAgICAgIH0K
KyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6
ZSgpKTsKKyAgICB9CisKKyAgICByZXR1cm4geyBXVEZNb3ZlKHJlc3VsdEdseXBocyksIFdURk1v
dmUocmVzdWx0QWR2YW5jZXMpLCBXVEZNb3ZlKGluaXRpYWxBZHZhbmNlKSB9OworfQorCiB2b2lk
IERyYXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBH
bHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5j
ZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2ludCwgRm9u
dFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5cGhzRGVj
b25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25zdHJ1Y3Qp
IHsKQEAgLTM3MSw4ICs0MDMsMTEgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlw
aHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAogICAgIEFT
U0VSVChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rp
b246OkRlY29uc3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1
NTI+IFJlY29yZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5k
QWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250LCBn
bHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4
dChmb250LCBzbW9vdGhpbmdNb2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2lu
dGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBv
aW50LCBzbW9vdGhpbmdNb2RlKTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVy
bmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5
cGhzLmRhdGEoKSwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMu
ZGF0YSgpLCBudW1HbHlwaHMsIHN0YXJ0UG9pbnQgKyBzaXplKGdseXBoc0FuZEFkdmFuY2VzV2l0
aG91dE9UU1ZHR2x5cGhzLmluaXRpYWxBZHZhbmNlKSwgc21vb3RoaW5nTW9kZSk7CiAgICAgY29u
Y2x1ZGVJbnRlcm5hbENvbnRleHQoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420126</attachid>
            <date>2021-02-12 08:19:47 -0800</date>
            <delta_ts>2021-02-12 08:56:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210212081946.patch</filename>
            <type>text/plain</type>
            <size>14735</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzRlNWY3YmZjZGMwNzky
NWQyZjJkZDA3ZTJlODM0MjQ0NmUyNjk4Mi4uM2U2NDI0NDlhYTRhNjFjYjM3YTQxODFkNjk1OTJi
MTNjMDUyMTEwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEyICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbnRvIGNhbnZh
cyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZH
IGZyYW1ld29yayB0byBkZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcg
dGhhdCBpbmZyYXN0cnVjdHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291
bGQgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nl
c3MsIGFuZCBSRUxFQVNFX0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0
IGl0IHdvbid0IGJlIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBp
cyBqdXN0IGEgdGVtcG9yYXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4g
cHJvcGVybHkgdHJhbnNjb2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBk
aXNwbGF5IGxpc3QgaW5mcmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3Mg
ZHJhd2luZyBPVC1TVkcgZ2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAg
ICAgIHJpZ2h0IG5vdywgb25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJh
d2luZywgc2luY2UgcmVndWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAg
ICAgIHByb2Nlc3MgeWV0LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24n
dCB3YW50IHRvIGFjdHVhbGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNh
bnZhcy4KKyAgICAgICAgV2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFr
ZSBzZW5zZSB0byBoYXZlIHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIFdlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250
Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3Jl
VGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2FkZTo6ZHJhd0dseXBocyk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyBjb25zdCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0ds
eXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6
OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpE
cmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIxLTAyLTEyICBaYWxhbiBCdWp0
YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ10gVXBkYXRlIHRoZSBibG9jayBi
b3gvY29udGFpbmVyIGxpc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IGU4ZWI5OWMyNGZlYmRmODhl
NjQ5NzU4NzNkNzBlMGQxZTQ5NDAzMjYuLjc4MmM2MzJkN2NhYjRjYzBiZTFkMWRlNzdlNzBmNWU5
MmUwNTE1ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAyLTEy
ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQ
VSBQcm9jZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbnRv
IGNhbnZhcyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhbiBSQUlJIGNsYXNzIHRv
IHdyYXAgT1RTVkcuZnJhbWV3b3JrJ3MgQyBBUEkuCisKKyAgICAgICAgKiBwYWwvc3BpL2NmL0Nv
cmVUZXh0U1BJLmg6CisgICAgICAgIChPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKToKKyAgICAgICAg
KE9UU1ZHVGFibGU6On5PVFNWR1RhYmxlKToKKwogMjAyMS0wMi0xMCAgTXlsZXMgQy4gTWF4Zmll
bGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgcGFsL3NwaS9jb2NvYS9D
b3JlVGV4dFNQSS5oIHRvIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaCBiL1NvdXJjZS9XZWJDb3Jl
L1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmgKaW5kZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0
ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNGI4MjEyNmE4OWExOGJlZTlhY2FmN2E4ODJkZTI5MTI0N2Zl
YzhhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRT
UEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBA
IC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKIAogI2luY2x1ZGUg
PENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgorI2luY2x1ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNl
bHNlCiAKQEAgLTIwMCw0ICsyMDEsMjYgQEAgQ1RGb250RGVzY3JpcHRvclJlZiBDVEZvbnRDcmVh
dGVQaHlzaWNhbEZvbnREZXNjcmlwdG9yRm9yQ2hhcmFjdGVyc1dpdGhMYW5ndWFnZSgKIGJvb2wg
Q1RGb250SXNBcHBsZUNvbG9yRW1vamkoQ1RGb250UmVmKTsKIENURm9udFJlZiBDVEZvbnRDcmVh
dGVGb3JDaGFyYWN0ZXJzKENURm9udFJlZiBjdXJyZW50Rm9udCwgY29uc3QgVVRGMTZDaGFyICpj
aGFyYWN0ZXJzLCBDRkluZGV4IGxlbmd0aCwgQ0ZJbmRleCAqY292ZXJlZExlbmd0aCk7CiAKK09U
U1ZHVGFibGVSZWYgT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKENGRGF0YVJlZiBzdmdUYWJsZSwg
dW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSk7CitDRkluZGV4IE9UU1ZHVGFi
bGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgoT1RTVkdUYWJsZVJlZiwgQ0dHbHlwaCk7Cit2b2lk
IE9UU1ZHVGFibGVSZWxlYXNlKE9UU1ZHVGFibGVSZWYpOworCitzdHJ1Y3QgT1RTVkdUYWJsZSB7
CisgICAgT1RTVkdUYWJsZSgpCisgICAgeworICAgIH0KKworICAgIE9UU1ZHVGFibGUoQ0ZEYXRh
UmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKQorICAg
ICAgICA6IHRhYmxlKE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YShzdmdUYWJsZSwgdW5pdHNQZXJF
bSwgZm9udFNpemUpKQorICAgIHsKKyAgICB9CisKKyAgICB+T1RTVkdUYWJsZSgpCisgICAgewor
ICAgICAgICBPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7CisgICAgfQorCisgICAgT1RTVkdUYWJs
ZVJlZiB0YWJsZSB7IG51bGxwdHIgfTsKK307CisKIFdURl9FWFRFUk5fQ19FTkQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA4YzE1
ZWI2NDgwMzczMDU4MDdiNzAzZDBiZGJhYjNmM2JmYTU3MTViLi5mZDlhZDJlNGNkNTM0ZjI0NmYw
YTFmYmMzNTcwNWNkZDI3OTliZDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC02MjAsNiArNjIwLDcgQEAKIAkJMUM2NjI2MTEx
QzZFN0NBNjAwQUI1MjdDIC8qIEZvbnRGYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQzY2MjYwRjFDNkU3Q0E2MDBBQjUyN0MgLyogRm9udEZhY2Uu
aCAqLzsgfTsKIAkJMUM3M0E3MTMyMTg1NzU3RTAwNENDRUE1IC8qIFRleHRVbmRlcmxpbmVPZmZz
ZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQjZC
NEZCMjE3QjgzOTQwMDkzQjlDRCAvKiBUZXh0VW5kZXJsaW5lT2Zmc2V0LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUM3M0E3MTUyMTg1NzU4NzAw
NENDRUE1IC8qIFRleHREZWNvcmF0aW9uVGhpY2tuZXNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0I2QjRGODIxN0I4MzkzMDA5M0I5Q0QgLyogVGV4
dERlY29yYXRpb25UaGlja25lc3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkxQzc3QzhBQzI1RDQ1QTUxMDA2MzVFMEMgLyogT1RTVkcuZnJhbWV3
b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM3
N0M4QUEyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZyYW1ld29yayAqLzsgfTsKIAkJMUM4MUI5
NUEwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDODFCOTU2MEU5NzMzMDgwMDI2NkUw
NyAvKiBJbnNwZWN0b3JDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUM4MUI5NUMwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3Rv
ckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUM4MUI5NTgwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNsaWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFDQUYzNDgxMEE2QzQwNTIw
MEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFDQUYzNDdFMEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRP
YmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpA
QCAtNjgzMSw2ICs2ODMyLDcgQEAKIAkJMUM2RkQ4QUUyNTBBMzExNTAwRDZFOTIwIC8qIEZvbnRD
YXNjYWRlQ29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENhc2NhZGVDb3JlVGV4
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNkZEOEFGMjUwQTMzQ0YwMEQ2
RTkyMCAvKiBGb250Q29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENvcmVUZXh0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM2RkQ4QjAyNTBBMzVGMTAwRDZF
OTIwIC8qIEZvbnRDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb250Q29jb2EuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhBQTI1RDQ1QTUxMDA2MzVFMEMgLyog
T1RTVkcuZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBPVFNWRy5mcmFtZXdvcms7IHBhdGgg
PSAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvT1RTVkcuZnJhbWV3b3JrOyBzb3Vy
Y2VUcmVlID0gU0RLUk9PVDsgfTsKIAkJMUM4MUI5NTYwRTk3MzMwODAwMjY2RTA3IC8qIEluc3Bl
Y3RvckNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVj
dG9yQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzgxQjk1NzBF
OTczMzA4MDAyNjZFMDcgLyogSW5zcGVjdG9yQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JDb250cm9sbGVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM4MUI5NTgwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3Rv
ckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JDbGll
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE3MTIxLDYgKzE3MTIzLDcgQEAK
IAkJCQkxQzA5RDA1OTFFMzFDNkE5MDA3MjVGMTggLyogbGliUEFMLmEgaW4gRnJhbWV3b3JrcyAq
LywKIAkJCQlERDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1sMi5keWxpYiBpbiBGcmFt
ZXdvcmtzICovLAogCQkJCTM3OTkxOUIyMTIwMERFNTAwMEVBMDQxQyAvKiBsaWJ6LmR5bGliIGlu
IEZyYW1ld29ya3MgKi8sCisJCQkJMUM3N0M4QUMyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZy
YW1ld29yayBpbiBGcmFtZXdvcmtzICovLAogCQkJCUE4OEFENTJGMDk1MjRCOTIwMDFERDE5NiAv
KiBRdWFydHpDb3JlLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAogCQkJCTVGRTFEMjkyMTc4
RkQxRjMwMDFBQTNDMyAvKiBTZWN1cml0eS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKIAkJ
CSk7CkBAIC0xNzc1OSw2ICsxNzc2Miw3IEBACiAJCQkJREQ3NjNCQjEwOTkyQzJDOTAwNzQwQjhF
IC8qIGxpYnhtbDIuZHlsaWIgKi8sCiAJCQkJMzc5OTE5QjExMjAwREU1MDAwRUEwNDFDIC8qIGxp
YnouZHlsaWIgKi8sCiAJCQkJNTc0RjU1RTIyMDRGM0NCRjAwMjk0OEM2IC8qIExvY2FsQXV0aGVu
dGljYXRpb24uZnJhbWV3b3JrICovLAorCQkJCTFDNzdDOEFBMjVENDVBNTEwMDYzNUUwQyAvKiBP
VFNWRy5mcmFtZXdvcmsgKi8sCiAJCQkJQTg1RDdBMkYwODc5RUJBOTAwNkE5MTcyIC8qIFF1YXJ0
ekNvcmUuZnJhbWV3b3JrICovLAogCQkJCTVGRTFEMjkxMTc4RkQxRjMwMDFBQTNDMyAvKiBTZWN1
cml0eS5mcmFtZXdvcmsgKi8sCiAJCQkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRm9udC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udC5oCmluZGV4IGM3YjA3MmU2NmM2MzE1ZDI2YThjOTI4OTljZTUwMmIwN2FlMDEwYmQuLjg3
NDAxMjAxNTUxM2U4ZTQzYzI5NThmNzE2OThkOGJjZjZiNDM4MmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKQEAgLTEsNyArMSw3IEBACiAvKgogICogVGhpcyBmaWxl
IGlzIHBhcnQgb2YgdGhlIGludGVybmFsIGZvbnQgaW1wbGVtZW50YXRpb24uCiAgKgotICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICogQ29weXJpZ2h0IChDKSAyMDA3LTIwMDggVG9yY2ggTW9iaWxlLCBJbmMuCiAgKgogICogVGhp
cyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v
cgpAQCAtNDIsNiArNDIsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSA8Q29y
ZUZvdW5kYXRpb24vQ29yZUZvdW5kYXRpb24uaD4KKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVU
ZXh0U1BJLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxNCw2
ICsyMTUsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRC
eUFsbFNtYWxsQ2FwcygpIGNvbnN0OwogICAgIGNvbnN0IEJpdFZlY3RvciYgZ2x5cGhzU3VwcG9y
dGVkQnlQZXRpdGVDYXBzKCkgY29uc3Q7CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBw
b3J0ZWRCeUFsbFBldGl0ZUNhcHMoKSBjb25zdDsKKyAgICBib29sIGdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyhDR0dseXBoKSBjb25zdDsKICNlbmRpZgogCiAgICAgYm9vbCBjYW5SZW5kZXJDb21i
aW5pbmdDaGFyYWN0ZXJTZXF1ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CkBAIC0y
OTMsNiArMjk1LDcgQEAgcHJpdmF0ZToKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4g
bV9nbHlwaHNTdXBwb3J0ZWRCeUFsbFNtYWxsQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJp
dFZlY3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRCeVBldGl0ZUNhcHM7CiAgICAgbXV0YWJsZSBPcHRp
b25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxQZXRpdGVDYXBzOworICAgIG11
dGFibGUgT3B0aW9uYWw8T1RTVkdUYWJsZT4gbV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQ
TEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3
M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgyODZhZTM5NDBhNjAuLmVkMDM4MWNjYzI0NTU4MWU3Yzkw
YWRlYmEyOTg2YzBjYTBmNWU2YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3Bw
CkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVk
ZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1l
QXBwbGljYXRpb25DaGVja3MuaCIKICNpbmNsdWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQ
SS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsMTEgQEAg
dm9pZCBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNv
bnN0IEZvbnQmIGZvbnQsIGNvbnN0IEcKIAogICAgIENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBj
b250ZXh0LnBsYXRmb3JtQ29udGV4dCgpOwogCisgICAgaWYgKGlzSW5HUFVQcm9jZXNzKCkpIHsK
KyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKQorICAgICAg
ICAgICAgUkVMRUFTRV9BU1NFUlQoIWZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBo
c1tpXSkpOworICAgIH0KKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0gdHJ1ZTsKICAgICBi
b29sIHNob3VsZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKaW5kZXgg
OTc1NTViZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uYmFmZjE3ZmI1YjkxYjdk
MWZmNDViZjUyYjk3NDlhMjNlNmFhMjM2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlh
a292CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC03NzQsNCArNzc0LDE1IEBAIGJvb2wgRm9udDo6aXNQ
cm9iYWJseU9ubHlVc2VkVG9SZW5kZXJJY29ucygpIGNvbnN0CiAgICAgfSk7CiB9CiAKK2Jvb2wg
Rm9udDo6Z2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKENHR2x5cGggZ2x5cGgpIGNvbnN0Cit7Cisg
ICAgaWYgKCFtX290U1ZHVGFibGUpIHsKKyAgICAgICAgaWYgKGF1dG8gdGFibGVEYXRhID0gYWRv
cHRDRihDVEZvbnRDb3B5VGFibGUocGxhdGZvcm1EYXRhKCkuY3RGb250KCksIGtDVEZvbnRUYWJs
ZVNWRywga0NURm9udFRhYmxlT3B0aW9uTm9PcHRpb25zKSkpCisgICAgICAgICAgICBtX290U1ZH
VGFibGUgPSBPVFNWR1RhYmxlKHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0c1Bl
ckVtKCksIHBsYXRmb3JtRGF0YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IG1fb3RTVkdUYWJsZSA9IE9UU1ZHVGFibGUoKTsKKyAgICB9CisgICAgcmV0dXJuIG1fb3RTVkdU
YWJsZS52YWx1ZSgpLnRhYmxlICYmIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgo
bV9vdFNWR1RhYmxlLnZhbHVlKCkudGFibGUsIGdseXBoKSAhPSBrQ0ZOb3RGb3VuZDsKK30KKwog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29y
ZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNi
NWU0MDhlZmY1Yzc1YWE0OTI2ZmJmY2JmMjlhZmVlM2QuLjk4NTBhMGQwNGY4ZDk3MDI2MGUwNmQx
MzAwM2U1YjM5MmZiYTEyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMv
RGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2LDYgKzM2LDcg
QEAKICNpbmNsdWRlICJHbHlwaEJ1ZmZlci5oIgogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRl
eHQuaD4KKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CiAjaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgogCiAjaWYgUExBVEZPUk0oV0lOKQpAQCAtMzYyLDYgKzM2MywzNyBAQCB2b2lk
IERyYXdHbHlwaHNSZWNvcmRlcjo6cmVjb3JkRHJhd0ltYWdlKENHUmVuZGVyaW5nU3RhdGVSZWYs
IENHR1N0YXRlUmVmIGdzdGF0ZQogICAgIG1fb3duZXIudHJhbnNsYXRlKDAsIC0ocmVjdC5zaXpl
LmhlaWdodCArIDIgKiByZWN0Lm9yaWdpbi55KSk7CiB9CiAKK3N0cnVjdCBHbHlwaHNBbmRBZHZh
bmNlcyB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBWZWN0b3I8
R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5p
dGlhbEFkdmFuY2U7Cit9Oworc3RhdGljIEdseXBoc0FuZEFkdmFuY2VzIGZpbHRlck91dE9UU1ZH
R2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywg
Y29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzKQor
eworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiByZXN1bHRHbHlwaHM7CisgICAgVmVjdG9y
PEdseXBoQnVmZmVyQWR2YW5jZT4gcmVzdWx0QWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJBZHZh
bmNlIGluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpOworCisgICAgcmVz
dWx0R2x5cGhzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKyAgICByZXN1bHRB
ZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBmb3IgKHVu
c2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKHJlc3Vs
dEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICAgICAgaWYgKGZv
bnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpIHsKKyAgICAgICAgICAgIGlm
IChyZXN1bHRHbHlwaHMuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGluaXRpYWxBZHZhbmNl
ID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKGluaXRpYWxBZHZhbmNlKSArIHNpemUoYWR2
YW5jZXNbaV0pKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHRBZHZh
bmNlcy5sYXN0KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0QWR2YW5jZXMu
bGFzdCgpKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIHJlc3VsdEdseXBocy51bmNoZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAgICAgICAg
IHJlc3VsdEFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChhZHZhbmNlc1tpXSk7CisgICAgICAgIH0K
KyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6
ZSgpKTsKKyAgICB9CisKKyAgICByZXR1cm4geyBXVEZNb3ZlKHJlc3VsdEdseXBocyksIFdURk1v
dmUocmVzdWx0QWR2YW5jZXMpLCBXVEZNb3ZlKGluaXRpYWxBZHZhbmNlKSB9OworfQorCiB2b2lk
IERyYXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBH
bHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5j
ZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2ludCwgRm9u
dFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5cGhzRGVj
b25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25zdHJ1Y3Qp
IHsKQEAgLTM3MSw4ICs0MDMsMTEgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlw
aHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAogICAgIEFT
U0VSVChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rp
b246OkRlY29uc3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1
NTI+IFJlY29yZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5k
QWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250LCBn
bHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4
dChmb250LCBzbW9vdGhpbmdNb2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2lu
dGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBv
aW50LCBzbW9vdGhpbmdNb2RlKTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVy
bmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5
cGhzLmRhdGEoKSwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMu
ZGF0YSgpLCBudW1HbHlwaHMsIHN0YXJ0UG9pbnQgKyBzaXplKGdseXBoc0FuZEFkdmFuY2VzV2l0
aG91dE9UU1ZHR2x5cGhzLmluaXRpYWxBZHZhbmNlKSwgc21vb3RoaW5nTW9kZSk7CiAgICAgY29u
Y2x1ZGVJbnRlcm5hbENvbnRleHQoKTsKIH0KIAo=
</data>
<flag name="commit-queue"
          id="438545"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420128</attachid>
            <date>2021-02-12 08:48:27 -0800</date>
            <delta_ts>2021-02-12 09:37:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210212084826.patch</filename>
            <type>text/plain</type>
            <size>14735</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzRlNWY3YmZjZGMwNzky
NWQyZjJkZDA3ZTJlODM0MjQ0NmUyNjk4Mi4uM2U2NDI0NDlhYTRhNjFjYjM3YTQxODFkNjk1OTJi
MTNjMDUyMTEwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEyICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbnRvIGNhbnZh
cyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZH
IGZyYW1ld29yayB0byBkZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcg
dGhhdCBpbmZyYXN0cnVjdHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291
bGQgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nl
c3MsIGFuZCBSRUxFQVNFX0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0
IGl0IHdvbid0IGJlIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBp
cyBqdXN0IGEgdGVtcG9yYXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4g
cHJvcGVybHkgdHJhbnNjb2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBk
aXNwbGF5IGxpc3QgaW5mcmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3Mg
ZHJhd2luZyBPVC1TVkcgZ2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAg
ICAgIHJpZ2h0IG5vdywgb25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJh
d2luZywgc2luY2UgcmVndWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAg
ICAgIHByb2Nlc3MgeWV0LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24n
dCB3YW50IHRvIGFjdHVhbGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNh
bnZhcy4KKyAgICAgICAgV2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFr
ZSBzZW5zZSB0byBoYXZlIHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIFdlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250
Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3Jl
VGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2FkZTo6ZHJhd0dseXBocyk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyBjb25zdCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0ds
eXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6
OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpE
cmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIxLTAyLTEyICBaYWxhbiBCdWp0
YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ10gVXBkYXRlIHRoZSBibG9jayBi
b3gvY29udGFpbmVyIGxpc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IGU4ZWI5OWMyNGZlYmRmODhl
NjQ5NzU4NzNkNzBlMGQxZTQ5NDAzMjYuLjc4MmM2MzJkN2NhYjRjYzBiZTFkMWRlNzdlNzBmNWU5
MmUwNTE1ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAyLTEy
ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQ
VSBQcm9jZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbnRv
IGNhbnZhcyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhbiBSQUlJIGNsYXNzIHRv
IHdyYXAgT1RTVkcuZnJhbWV3b3JrJ3MgQyBBUEkuCisKKyAgICAgICAgKiBwYWwvc3BpL2NmL0Nv
cmVUZXh0U1BJLmg6CisgICAgICAgIChPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKToKKyAgICAgICAg
KE9UU1ZHVGFibGU6On5PVFNWR1RhYmxlKToKKwogMjAyMS0wMi0xMCAgTXlsZXMgQy4gTWF4Zmll
bGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgcGFsL3NwaS9jb2NvYS9D
b3JlVGV4dFNQSS5oIHRvIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaCBiL1NvdXJjZS9XZWJDb3Jl
L1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmgKaW5kZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0
ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNGI4MjEyNmE4OWExOGJlZTlhY2FmN2E4ODJkZTI5MTI0N2Zl
YzhhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRT
UEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBA
IC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKIAogI2luY2x1ZGUg
PENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgorI2luY2x1ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNl
bHNlCiAKQEAgLTIwMCw0ICsyMDEsMjYgQEAgQ1RGb250RGVzY3JpcHRvclJlZiBDVEZvbnRDcmVh
dGVQaHlzaWNhbEZvbnREZXNjcmlwdG9yRm9yQ2hhcmFjdGVyc1dpdGhMYW5ndWFnZSgKIGJvb2wg
Q1RGb250SXNBcHBsZUNvbG9yRW1vamkoQ1RGb250UmVmKTsKIENURm9udFJlZiBDVEZvbnRDcmVh
dGVGb3JDaGFyYWN0ZXJzKENURm9udFJlZiBjdXJyZW50Rm9udCwgY29uc3QgVVRGMTZDaGFyICpj
aGFyYWN0ZXJzLCBDRkluZGV4IGxlbmd0aCwgQ0ZJbmRleCAqY292ZXJlZExlbmd0aCk7CiAKK09U
U1ZHVGFibGVSZWYgT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKENGRGF0YVJlZiBzdmdUYWJsZSwg
dW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSk7CitDRkluZGV4IE9UU1ZHVGFi
bGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgoT1RTVkdUYWJsZVJlZiwgQ0dHbHlwaCk7Cit2b2lk
IE9UU1ZHVGFibGVSZWxlYXNlKE9UU1ZHVGFibGVSZWYpOworCitzdHJ1Y3QgT1RTVkdUYWJsZSB7
CisgICAgT1RTVkdUYWJsZSgpCisgICAgeworICAgIH0KKworICAgIE9UU1ZHVGFibGUoQ0ZEYXRh
UmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKQorICAg
ICAgICA6IHRhYmxlKE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YShzdmdUYWJsZSwgdW5pdHNQZXJF
bSwgZm9udFNpemUpKQorICAgIHsKKyAgICB9CisKKyAgICB+T1RTVkdUYWJsZSgpCisgICAgewor
ICAgICAgICBPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7CisgICAgfQorCisgICAgT1RTVkdUYWJs
ZVJlZiB0YWJsZSB7IG51bGxwdHIgfTsKK307CisKIFdURl9FWFRFUk5fQ19FTkQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA4YzE1
ZWI2NDgwMzczMDU4MDdiNzAzZDBiZGJhYjNmM2JmYTU3MTViLi5mZDlhZDJlNGNkNTM0ZjI0NmYw
YTFmYmMzNTcwNWNkZDI3OTliZDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC02MjAsNiArNjIwLDcgQEAKIAkJMUM2NjI2MTEx
QzZFN0NBNjAwQUI1MjdDIC8qIEZvbnRGYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQzY2MjYwRjFDNkU3Q0E2MDBBQjUyN0MgLyogRm9udEZhY2Uu
aCAqLzsgfTsKIAkJMUM3M0E3MTMyMTg1NzU3RTAwNENDRUE1IC8qIFRleHRVbmRlcmxpbmVPZmZz
ZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQjZC
NEZCMjE3QjgzOTQwMDkzQjlDRCAvKiBUZXh0VW5kZXJsaW5lT2Zmc2V0LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUM3M0E3MTUyMTg1NzU4NzAw
NENDRUE1IC8qIFRleHREZWNvcmF0aW9uVGhpY2tuZXNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0I2QjRGODIxN0I4MzkzMDA5M0I5Q0QgLyogVGV4
dERlY29yYXRpb25UaGlja25lc3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkxQzc3QzhBQzI1RDQ1QTUxMDA2MzVFMEMgLyogT1RTVkcuZnJhbWV3
b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM3
N0M4QUEyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZyYW1ld29yayAqLzsgfTsKIAkJMUM4MUI5
NUEwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDODFCOTU2MEU5NzMzMDgwMDI2NkUw
NyAvKiBJbnNwZWN0b3JDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUM4MUI5NUMwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3Rv
ckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUM4MUI5NTgwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNsaWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFDQUYzNDgxMEE2QzQwNTIw
MEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFDQUYzNDdFMEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRP
YmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpA
QCAtNjgzMSw2ICs2ODMyLDcgQEAKIAkJMUM2RkQ4QUUyNTBBMzExNTAwRDZFOTIwIC8qIEZvbnRD
YXNjYWRlQ29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENhc2NhZGVDb3JlVGV4
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNkZEOEFGMjUwQTMzQ0YwMEQ2
RTkyMCAvKiBGb250Q29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENvcmVUZXh0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM2RkQ4QjAyNTBBMzVGMTAwRDZF
OTIwIC8qIEZvbnRDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb250Q29jb2EuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhBQTI1RDQ1QTUxMDA2MzVFMEMgLyog
T1RTVkcuZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBPVFNWRy5mcmFtZXdvcms7IHBhdGgg
PSAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvT1RTVkcuZnJhbWV3b3JrOyBzb3Vy
Y2VUcmVlID0gU0RLUk9PVDsgfTsKIAkJMUM4MUI5NTYwRTk3MzMwODAwMjY2RTA3IC8qIEluc3Bl
Y3RvckNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVj
dG9yQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzgxQjk1NzBF
OTczMzA4MDAyNjZFMDcgLyogSW5zcGVjdG9yQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JDb250cm9sbGVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM4MUI5NTgwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3Rv
ckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JDbGll
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE3MTIxLDYgKzE3MTIzLDcgQEAK
IAkJCQkxQzA5RDA1OTFFMzFDNkE5MDA3MjVGMTggLyogbGliUEFMLmEgaW4gRnJhbWV3b3JrcyAq
LywKIAkJCQlERDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1sMi5keWxpYiBpbiBGcmFt
ZXdvcmtzICovLAogCQkJCTM3OTkxOUIyMTIwMERFNTAwMEVBMDQxQyAvKiBsaWJ6LmR5bGliIGlu
IEZyYW1ld29ya3MgKi8sCisJCQkJMUM3N0M4QUMyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZy
YW1ld29yayBpbiBGcmFtZXdvcmtzICovLAogCQkJCUE4OEFENTJGMDk1MjRCOTIwMDFERDE5NiAv
KiBRdWFydHpDb3JlLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAogCQkJCTVGRTFEMjkyMTc4
RkQxRjMwMDFBQTNDMyAvKiBTZWN1cml0eS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKIAkJ
CSk7CkBAIC0xNzc1OSw2ICsxNzc2Miw3IEBACiAJCQkJREQ3NjNCQjEwOTkyQzJDOTAwNzQwQjhF
IC8qIGxpYnhtbDIuZHlsaWIgKi8sCiAJCQkJMzc5OTE5QjExMjAwREU1MDAwRUEwNDFDIC8qIGxp
YnouZHlsaWIgKi8sCiAJCQkJNTc0RjU1RTIyMDRGM0NCRjAwMjk0OEM2IC8qIExvY2FsQXV0aGVu
dGljYXRpb24uZnJhbWV3b3JrICovLAorCQkJCTFDNzdDOEFBMjVENDVBNTEwMDYzNUUwQyAvKiBP
VFNWRy5mcmFtZXdvcmsgKi8sCiAJCQkJQTg1RDdBMkYwODc5RUJBOTAwNkE5MTcyIC8qIFF1YXJ0
ekNvcmUuZnJhbWV3b3JrICovLAogCQkJCTVGRTFEMjkxMTc4RkQxRjMwMDFBQTNDMyAvKiBTZWN1
cml0eS5mcmFtZXdvcmsgKi8sCiAJCQkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRm9udC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udC5oCmluZGV4IGM3YjA3MmU2NmM2MzE1ZDI2YThjOTI4OTljZTUwMmIwN2FlMDEwYmQuLjg3
NDAxMjAxNTUxM2U4ZTQzYzI5NThmNzE2OThkOGJjZjZiNDM4MmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKQEAgLTEsNyArMSw3IEBACiAvKgogICogVGhpcyBmaWxl
IGlzIHBhcnQgb2YgdGhlIGludGVybmFsIGZvbnQgaW1wbGVtZW50YXRpb24uCiAgKgotICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICogQ29weXJpZ2h0IChDKSAyMDA3LTIwMDggVG9yY2ggTW9iaWxlLCBJbmMuCiAgKgogICogVGhp
cyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v
cgpAQCAtNDIsNiArNDIsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSA8Q29y
ZUZvdW5kYXRpb24vQ29yZUZvdW5kYXRpb24uaD4KKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVU
ZXh0U1BJLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxNCw2
ICsyMTUsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRC
eUFsbFNtYWxsQ2FwcygpIGNvbnN0OwogICAgIGNvbnN0IEJpdFZlY3RvciYgZ2x5cGhzU3VwcG9y
dGVkQnlQZXRpdGVDYXBzKCkgY29uc3Q7CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBw
b3J0ZWRCeUFsbFBldGl0ZUNhcHMoKSBjb25zdDsKKyAgICBib29sIGdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyhDR0dseXBoKSBjb25zdDsKICNlbmRpZgogCiAgICAgYm9vbCBjYW5SZW5kZXJDb21i
aW5pbmdDaGFyYWN0ZXJTZXF1ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CkBAIC0y
OTMsNiArMjk1LDcgQEAgcHJpdmF0ZToKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4g
bV9nbHlwaHNTdXBwb3J0ZWRCeUFsbFNtYWxsQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJp
dFZlY3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRCeVBldGl0ZUNhcHM7CiAgICAgbXV0YWJsZSBPcHRp
b25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxQZXRpdGVDYXBzOworICAgIG11
dGFibGUgT3B0aW9uYWw8T1RTVkdUYWJsZT4gbV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQ
TEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3
M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgyODZhZTM5NDBhNjAuLmVkMDM4MWNjYzI0NTU4MWU3Yzkw
YWRlYmEyOTg2YzBjYTBmNWU2YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3Bw
CkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVk
ZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1l
QXBwbGljYXRpb25DaGVja3MuaCIKICNpbmNsdWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQ
SS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsMTEgQEAg
dm9pZCBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNv
bnN0IEZvbnQmIGZvbnQsIGNvbnN0IEcKIAogICAgIENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBj
b250ZXh0LnBsYXRmb3JtQ29udGV4dCgpOwogCisgICAgaWYgKGlzSW5HUFVQcm9jZXNzKCkpIHsK
KyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKQorICAgICAg
ICAgICAgUkVMRUFTRV9BU1NFUlQoIWZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBo
c1tpXSkpOworICAgIH0KKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0gdHJ1ZTsKICAgICBi
b29sIHNob3VsZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKaW5kZXgg
OTc1NTViZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uYmFmZjE3ZmI1YjkxYjdk
MWZmNDViZjUyYjk3NDlhMjNlNmFhMjM2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlh
a292CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC03NzQsNCArNzc0LDE1IEBAIGJvb2wgRm9udDo6aXNQ
cm9iYWJseU9ubHlVc2VkVG9SZW5kZXJJY29ucygpIGNvbnN0CiAgICAgfSk7CiB9CiAKK2Jvb2wg
Rm9udDo6Z2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKENHR2x5cGggZ2x5cGgpIGNvbnN0Cit7Cisg
ICAgaWYgKCFtX290U1ZHVGFibGUpIHsKKyAgICAgICAgaWYgKGF1dG8gdGFibGVEYXRhID0gYWRv
cHRDRihDVEZvbnRDb3B5VGFibGUocGxhdGZvcm1EYXRhKCkuY3RGb250KCksIGtDVEZvbnRUYWJs
ZVNWRywga0NURm9udFRhYmxlT3B0aW9uTm9PcHRpb25zKSkpCisgICAgICAgICAgICBtX290U1ZH
VGFibGUgPSBPVFNWR1RhYmxlKHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0c1Bl
ckVtKCksIHBsYXRmb3JtRGF0YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IG1fb3RTVkdUYWJsZSA9IE9UU1ZHVGFibGUoKTsKKyAgICB9CisgICAgcmV0dXJuIG1fb3RTVkdU
YWJsZS52YWx1ZSgpLnRhYmxlICYmIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgo
bV9vdFNWR1RhYmxlLnZhbHVlKCkudGFibGUsIGdseXBoKSAhPSBrQ0ZOb3RGb3VuZDsKK30KKwog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29y
ZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNi
NWU0MDhlZmY1Yzc1YWE0OTI2ZmJmY2JmMjlhZmVlM2QuLjk4NTBhMGQwNGY4ZDk3MDI2MGUwNmQx
MzAwM2U1YjM5MmZiYTEyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMv
RGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2LDYgKzM2LDcg
QEAKICNpbmNsdWRlICJHbHlwaEJ1ZmZlci5oIgogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRl
eHQuaD4KKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CiAjaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgogCiAjaWYgUExBVEZPUk0oV0lOKQpAQCAtMzYyLDYgKzM2MywzNyBAQCB2b2lk
IERyYXdHbHlwaHNSZWNvcmRlcjo6cmVjb3JkRHJhd0ltYWdlKENHUmVuZGVyaW5nU3RhdGVSZWYs
IENHR1N0YXRlUmVmIGdzdGF0ZQogICAgIG1fb3duZXIudHJhbnNsYXRlKDAsIC0ocmVjdC5zaXpl
LmhlaWdodCArIDIgKiByZWN0Lm9yaWdpbi55KSk7CiB9CiAKK3N0cnVjdCBHbHlwaHNBbmRBZHZh
bmNlcyB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBWZWN0b3I8
R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5p
dGlhbEFkdmFuY2U7Cit9Oworc3RhdGljIEdseXBoc0FuZEFkdmFuY2VzIGZpbHRlck91dE9UU1ZH
R2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywg
Y29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzKQor
eworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiByZXN1bHRHbHlwaHM7CisgICAgVmVjdG9y
PEdseXBoQnVmZmVyQWR2YW5jZT4gcmVzdWx0QWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJBZHZh
bmNlIGluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpOworCisgICAgcmVz
dWx0R2x5cGhzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKyAgICByZXN1bHRB
ZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBmb3IgKHVu
c2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKHJlc3Vs
dEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICAgICAgaWYgKGZv
bnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpIHsKKyAgICAgICAgICAgIGlm
IChyZXN1bHRHbHlwaHMuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGluaXRpYWxBZHZhbmNl
ID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKGluaXRpYWxBZHZhbmNlKSArIHNpemUoYWR2
YW5jZXNbaV0pKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHRBZHZh
bmNlcy5sYXN0KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0QWR2YW5jZXMu
bGFzdCgpKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIHJlc3VsdEdseXBocy51bmNoZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAgICAgICAg
IHJlc3VsdEFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChhZHZhbmNlc1tpXSk7CisgICAgICAgIH0K
KyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6
ZSgpKTsKKyAgICB9CisKKyAgICByZXR1cm4geyBXVEZNb3ZlKHJlc3VsdEdseXBocyksIFdURk1v
dmUocmVzdWx0QWR2YW5jZXMpLCBXVEZNb3ZlKGluaXRpYWxBZHZhbmNlKSB9OworfQorCiB2b2lk
IERyYXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBH
bHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5j
ZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2ludCwgRm9u
dFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5cGhzRGVj
b25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25zdHJ1Y3Qp
IHsKQEAgLTM3MSw4ICs0MDMsMTEgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlw
aHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAogICAgIEFT
U0VSVChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rp
b246OkRlY29uc3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1
NTI+IFJlY29yZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5k
QWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250LCBn
bHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4
dChmb250LCBzbW9vdGhpbmdNb2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2lu
dGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBv
aW50LCBzbW9vdGhpbmdNb2RlKTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVy
bmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5
cGhzLmRhdGEoKSwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMu
ZGF0YSgpLCBudW1HbHlwaHMsIHN0YXJ0UG9pbnQgKyBzaXplKGdseXBoc0FuZEFkdmFuY2VzV2l0
aG91dE9UU1ZHR2x5cGhzLmluaXRpYWxBZHZhbmNlKSwgc21vb3RoaW5nTW9kZSk7CiAgICAgY29u
Y2x1ZGVJbnRlcm5hbENvbnRleHQoKTsKIH0KIAo=
</data>
<flag name="commit-queue"
          id="438551"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420137</attachid>
            <date>2021-02-12 09:36:57 -0800</date>
            <delta_ts>2021-02-12 16:42:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210212093656.patch</filename>
            <type>text/plain</type>
            <size>14897</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNzgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjcxY2Q3MWY0MTk0ZmVl
ZDM0NjQwMTZkZDFkOTMwMTY5MDBlNGIxNi4uZDg2ZDUzMGI4ZDQ0YTAwNWNhNjdlYjM5NWJlYmNk
MmI3OGJiOTAxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEyICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbnRvIGNhbnZh
cyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZH
IGZyYW1ld29yayB0byBkZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcg
dGhhdCBpbmZyYXN0cnVjdHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291
bGQgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nl
c3MsIGFuZCBSRUxFQVNFX0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0
IGl0IHdvbid0IGJlIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBp
cyBqdXN0IGEgdGVtcG9yYXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4g
cHJvcGVybHkgdHJhbnNjb2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBk
aXNwbGF5IGxpc3QgaW5mcmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3Mg
ZHJhd2luZyBPVC1TVkcgZ2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAg
ICAgIHJpZ2h0IG5vdywgb25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJh
d2luZywgc2luY2UgcmVndWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAg
ICAgIHByb2Nlc3MgeWV0LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24n
dCB3YW50IHRvIGFjdHVhbGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNh
bnZhcy4KKyAgICAgICAgV2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFr
ZSBzZW5zZSB0byBoYXZlIHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIFdlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250
Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3Jl
VGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2FkZTo6ZHJhd0dseXBocyk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyBjb25zdCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0ds
eXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6
OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpE
cmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIxLTAyLTEyICBNeWxlcyBDLiBN
YXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IFdpbmRvd3MgYnVp
bGQgYWZ0ZXIgcjI3Mjc3MgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggZThlYjk5YzI0ZmViZGY4OGU2
NDk3NTg3M2Q3MGUwZDFlNDk0MDMyNi4uNzgyYzYzMmQ3Y2FiNGNjMGJlMWQxZGU3N2U3MGY1ZTky
ZTA1MTVmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDItMTIg
IE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbR1BV
IFByb2Nlc3NdIFRlbXBvcmFyaWx5IGRpc2FibGUgZHJhd2luZyBPVC1TVkcgZ2x5cGhzIGludG8g
Y2FudmFzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGFuIFJBSUkgY2xhc3MgdG8g
d3JhcCBPVFNWRy5mcmFtZXdvcmsncyBDIEFQSS4KKworICAgICAgICAqIHBhbC9zcGkvY2YvQ29y
ZVRleHRTUEkuaDoKKyAgICAgICAgKE9UU1ZHVGFibGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAo
T1RTVkdUYWJsZTo6fk9UU1ZHVGFibGUpOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0Nv
cmVUZXh0U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oIGIvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0ODFkMWJmNWFmYzBhYjYwOTE1MjRk
MGVlY2E5YWM3MDc4Y2ExYzBhLi5mNDNlZmQyNGRkNWViYTZjMThkZWIyNWFjNWFiNTE2OWJlZjY2
Zjc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmgKQEAg
LTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQogCiAjaW5jbHVkZSA8
Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8T1RTVkcvT1RTVkcuaD4KIAogI2Vs
c2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBrQ1RGb250VHJhaXRFbXBoYXNpemVk
ID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYgY29uc3Qgc3RydWN0IF9fT1RTVkdU
YWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBXVEZfRVhURVJOX0NfQkVHSU4KQEAg
LTIwMCw0ICsyMDMsMjYgQEAgQ1RGb250RGVzY3JpcHRvclJlZiBDVEZvbnRDcmVhdGVQaHlzaWNh
bEZvbnREZXNjcmlwdG9yRm9yQ2hhcmFjdGVyc1dpdGhMYW5ndWFnZSgKIGJvb2wgQ1RGb250SXNB
cHBsZUNvbG9yRW1vamkoQ1RGb250UmVmKTsKIENURm9udFJlZiBDVEZvbnRDcmVhdGVGb3JDaGFy
YWN0ZXJzKENURm9udFJlZiBjdXJyZW50Rm9udCwgY29uc3QgVVRGMTZDaGFyICpjaGFyYWN0ZXJz
LCBDRkluZGV4IGxlbmd0aCwgQ0ZJbmRleCAqY292ZXJlZExlbmd0aCk7CiAKK09UU1ZHVGFibGVS
ZWYgT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQg
dW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSk7CitDRkluZGV4IE9UU1ZHVGFibGVHZXREb2N1
bWVudEluZGV4Rm9yR2x5cGgoT1RTVkdUYWJsZVJlZiwgQ0dHbHlwaCk7Cit2b2lkIE9UU1ZHVGFi
bGVSZWxlYXNlKE9UU1ZHVGFibGVSZWYpOworCitzdHJ1Y3QgT1RTVkdUYWJsZSB7CisgICAgT1RT
VkdUYWJsZSgpCisgICAgeworICAgIH0KKworICAgIE9UU1ZHVGFibGUoQ0ZEYXRhUmVmIHN2Z1Rh
YmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKQorICAgICAgICA6IHRh
YmxlKE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YShzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNp
emUpKQorICAgIHsKKyAgICB9CisKKyAgICB+T1RTVkdUYWJsZSgpCisgICAgeworICAgICAgICBP
VFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7CisgICAgfQorCisgICAgT1RTVkdUYWJsZVJlZiB0YWJs
ZSB7IG51bGxwdHIgfTsKK307CisKIFdURl9FWFRFUk5fQ19FTkQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA4YzE1ZWI2NDgwMzcz
MDU4MDdiNzAzZDBiZGJhYjNmM2JmYTU3MTViLi5mZDlhZDJlNGNkNTM0ZjI0NmYwYTFmYmMzNTcw
NWNkZDI3OTliZDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC02MjAsNiArNjIwLDcgQEAKIAkJMUM2NjI2MTExQzZFN0NBNjAw
QUI1MjdDIC8qIEZvbnRGYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQzY2MjYwRjFDNkU3Q0E2MDBBQjUyN0MgLyogRm9udEZhY2UuaCAqLzsgfTsK
IAkJMUM3M0E3MTMyMTg1NzU3RTAwNENDRUE1IC8qIFRleHRVbmRlcmxpbmVPZmZzZXQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQjZCNEZCMjE3Qjgz
OTQwMDkzQjlDRCAvKiBUZXh0VW5kZXJsaW5lT2Zmc2V0LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUM3M0E3MTUyMTg1NzU4NzAwNENDRUE1IC8q
IFRleHREZWNvcmF0aW9uVGhpY2tuZXNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQ0I2QjRGODIxN0I4MzkzMDA5M0I5Q0QgLyogVGV4dERlY29yYXRp
b25UaGlja25lc3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkxQzc3QzhBQzI1RDQ1QTUxMDA2MzVFMEMgLyogT1RTVkcuZnJhbWV3b3JrIGluIEZy
YW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM3N0M4QUEyNUQ0
NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZyYW1ld29yayAqLzsgfTsKIAkJMUM4MUI5NUEwRTk3MzMw
ODAwMjY2RTA3IC8qIEluc3BlY3RvckNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDODFCOTU2MEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNw
ZWN0b3JDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJMUM4MUI5NUMwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNsaWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM4MUI5NTgw
RTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFDQUYzNDgxMEE2QzQwNTIwMEFCRTA2RSAv
KiBXZWJTY3JpcHRPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDQUYzNDdFMEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3QuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNjgzMSw2
ICs2ODMyLDcgQEAKIAkJMUM2RkQ4QUUyNTBBMzExNTAwRDZFOTIwIC8qIEZvbnRDYXNjYWRlQ29y
ZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENhc2NhZGVDb3JlVGV4dC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNkZEOEFGMjUwQTMzQ0YwMEQ2RTkyMCAvKiBG
b250Q29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENvcmVUZXh0LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM2RkQ4QjAyNTBBMzVGMTAwRDZFOTIwIC8qIEZv
bnRDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb250Q29jb2EuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhBQTI1RDQ1QTUxMDA2MzVFMEMgLyogT1RTVkcuZnJh
bWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
d3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBPVFNWRy5mcmFtZXdvcms7IHBhdGggPSAvU3lzdGVt
L0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvT1RTVkcuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0g
U0RLUk9PVDsgfTsKIAkJMUM4MUI5NTYwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNvbnRy
b2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yQ29udHJv
bGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzgxQjk1NzBFOTczMzA4MDAy
NjZFMDcgLyogSW5zcGVjdG9yQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBJbnNwZWN0b3JDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMUM4MUI5NTgwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNsaWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JDbGllbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE3MTIxLDYgKzE3MTIzLDcgQEAKIAkJCQkxQzA5
RDA1OTFFMzFDNkE5MDA3MjVGMTggLyogbGliUEFMLmEgaW4gRnJhbWV3b3JrcyAqLywKIAkJCQlE
RDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1sMi5keWxpYiBpbiBGcmFtZXdvcmtzICov
LAogCQkJCTM3OTkxOUIyMTIwMERFNTAwMEVBMDQxQyAvKiBsaWJ6LmR5bGliIGluIEZyYW1ld29y
a3MgKi8sCisJCQkJMUM3N0M4QUMyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZyYW1ld29yayBp
biBGcmFtZXdvcmtzICovLAogCQkJCUE4OEFENTJGMDk1MjRCOTIwMDFERDE5NiAvKiBRdWFydHpD
b3JlLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAogCQkJCTVGRTFEMjkyMTc4RkQxRjMwMDFB
QTNDMyAvKiBTZWN1cml0eS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKIAkJCSk7CkBAIC0x
Nzc1OSw2ICsxNzc2Miw3IEBACiAJCQkJREQ3NjNCQjEwOTkyQzJDOTAwNzQwQjhFIC8qIGxpYnht
bDIuZHlsaWIgKi8sCiAJCQkJMzc5OTE5QjExMjAwREU1MDAwRUEwNDFDIC8qIGxpYnouZHlsaWIg
Ki8sCiAJCQkJNTc0RjU1RTIyMDRGM0NCRjAwMjk0OEM2IC8qIExvY2FsQXV0aGVudGljYXRpb24u
ZnJhbWV3b3JrICovLAorCQkJCTFDNzdDOEFBMjVENDVBNTEwMDYzNUUwQyAvKiBPVFNWRy5mcmFt
ZXdvcmsgKi8sCiAJCQkJQTg1RDdBMkYwODc5RUJBOTAwNkE5MTcyIC8qIFF1YXJ0ekNvcmUuZnJh
bWV3b3JrICovLAogCQkJCTVGRTFEMjkxMTc4RkQxRjMwMDFBQTNDMyAvKiBTZWN1cml0eS5mcmFt
ZXdvcmsgKi8sCiAJCQkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCmlu
ZGV4IGM3YjA3MmU2NmM2MzE1ZDI2YThjOTI4OTljZTUwMmIwN2FlMDEwYmQuLjg3NDAxMjAxNTUx
M2U4ZTQzYzI5NThmNzE2OThkOGJjZjZiNDM4MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9Gb250LmgKQEAgLTEsNyArMSw3IEBACiAvKgogICogVGhpcyBmaWxlIGlzIHBhcnQg
b2YgdGhlIGludGVybmFsIGZvbnQgaW1wbGVtZW50YXRpb24uCiAgKgotICogQ29weXJpZ2h0IChD
KSAyMDA2LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDA2LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJp
Z2h0IChDKSAyMDA3LTIwMDggVG9yY2ggTW9iaWxlLCBJbmMuCiAgKgogICogVGhpcyBsaWJyYXJ5
IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgpAQCAtNDIs
NiArNDIsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSA8Q29yZUZvdW5kYXRp
b24vQ29yZUZvdW5kYXRpb24uaD4KKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+
CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxNCw2ICsyMTUsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRCeUFsbFNtYWxs
Q2FwcygpIGNvbnN0OwogICAgIGNvbnN0IEJpdFZlY3RvciYgZ2x5cGhzU3VwcG9ydGVkQnlQZXRp
dGVDYXBzKCkgY29uc3Q7CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRCeUFs
bFBldGl0ZUNhcHMoKSBjb25zdDsKKyAgICBib29sIGdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhD
R0dseXBoKSBjb25zdDsKICNlbmRpZgogCiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdDaGFy
YWN0ZXJTZXF1ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CkBAIC0yOTMsNiArMjk1
LDcgQEAgcHJpdmF0ZToKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4gbV9nbHlwaHNT
dXBwb3J0ZWRCeUFsbFNtYWxsQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4g
bV9nbHlwaHNTdXBwb3J0ZWRCeVBldGl0ZUNhcHM7CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRW
ZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxQZXRpdGVDYXBzOworICAgIG11dGFibGUgT3B0
aW9uYWw8T1RTVkdUYWJsZT4gbV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShX
SU4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4
dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3M2I4NDE4ZjMw
Mzg5YTQ1YzhmMmMyMzgyODZhZTM5NDBhNjAuLmVkMDM4MWNjYzI0NTU4MWU3YzkwYWRlYmEyOTg2
YzBjYTBmNWU2YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCkBAIC0zMCw2
ICszMCw3IEBACiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiTGF5b3V0
UmVjdC5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1lQXBwbGljYXRp
b25DaGVja3MuaCIKICNpbmNsdWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgogI2lu
Y2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsMTEgQEAgdm9pZCBGb250
Q2FzY2FkZTo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZvbnQm
IGZvbnQsIGNvbnN0IEcKIAogICAgIENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBjb250ZXh0LnBs
YXRmb3JtQ29udGV4dCgpOwogCisgICAgaWYgKGlzSW5HUFVQcm9jZXNzKCkpIHsKKyAgICAgICAg
Zm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKQorICAgICAgICAgICAgUkVM
RUFTRV9BU1NFUlQoIWZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpOwor
ICAgIH0KKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0gdHJ1ZTsKICAgICBib29sIHNob3Vs
ZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKaW5kZXggOTc1NTViZTEy
OTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uYmFmZjE3ZmI1YjkxYjdkMWZmNDViZjUy
Yjk3NDlhMjNlNmFhMjM2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCkBAIC0xLDUgKzEsNSBAQAog
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292CiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CkBAIC03NzQsNCArNzc0LDE1IEBAIGJvb2wgRm9udDo6aXNQcm9iYWJseU9u
bHlVc2VkVG9SZW5kZXJJY29ucygpIGNvbnN0CiAgICAgfSk7CiB9CiAKK2Jvb2wgRm9udDo6Z2x5
cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKENHR2x5cGggZ2x5cGgpIGNvbnN0Cit7CisgICAgaWYgKCFt
X290U1ZHVGFibGUpIHsKKyAgICAgICAgaWYgKGF1dG8gdGFibGVEYXRhID0gYWRvcHRDRihDVEZv
bnRDb3B5VGFibGUocGxhdGZvcm1EYXRhKCkuY3RGb250KCksIGtDVEZvbnRUYWJsZVNWRywga0NU
Rm9udFRhYmxlT3B0aW9uTm9PcHRpb25zKSkpCisgICAgICAgICAgICBtX290U1ZHVGFibGUgPSBP
VFNWR1RhYmxlKHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0c1BlckVtKCksIHBs
YXRmb3JtRGF0YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fb3RTVkdU
YWJsZSA9IE9UU1ZHVGFibGUoKTsKKyAgICB9CisgICAgcmV0dXJuIG1fb3RTVkdUYWJsZS52YWx1
ZSgpLnRhYmxlICYmIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgobV9vdFNWR1Rh
YmxlLnZhbHVlKCkudGFibGUsIGdseXBoKSAhPSBrQ0ZOb3RGb3VuZDsKK30KKwogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlM
aXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNiNWU0MDhlZmY1
Yzc1YWE0OTI2ZmJmY2JmMjlhZmVlM2QuLjk4NTBhMGQwNGY4ZDk3MDI2MGUwNmQxMzAwM2U1YjM5
MmZiYTEyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rp
c3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxp
c3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNs
dWRlICJHbHlwaEJ1ZmZlci5oIgogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHQuaD4KKyNp
bmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgogCiAjaWYgUExBVEZPUk0oV0lOKQpAQCAtMzYyLDYgKzM2MywzNyBAQCB2b2lkIERyYXdHbHlw
aHNSZWNvcmRlcjo6cmVjb3JkRHJhd0ltYWdlKENHUmVuZGVyaW5nU3RhdGVSZWYsIENHR1N0YXRl
UmVmIGdzdGF0ZQogICAgIG1fb3duZXIudHJhbnNsYXRlKDAsIC0ocmVjdC5zaXplLmhlaWdodCAr
IDIgKiByZWN0Lm9yaWdpbi55KSk7CiB9CiAKK3N0cnVjdCBHbHlwaHNBbmRBZHZhbmNlcyB7Cisg
ICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBWZWN0b3I8R2x5cGhCdWZm
ZXJBZHZhbmNlPiBhZHZhbmNlczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5pdGlhbEFkdmFu
Y2U7Cit9Oworc3RhdGljIEdseXBoc0FuZEFkdmFuY2VzIGZpbHRlck91dE9UU1ZHR2x5cGhzKGNv
bnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3QgR2x5
cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzKQoreworICAgIFZl
Y3RvcjxHbHlwaEJ1ZmZlckdseXBoPiByZXN1bHRHbHlwaHM7CisgICAgVmVjdG9yPEdseXBoQnVm
ZmVyQWR2YW5jZT4gcmVzdWx0QWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJBZHZhbmNlIGluaXRp
YWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpOworCisgICAgcmVzdWx0R2x5cGhz
LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKyAgICByZXN1bHRBZHZhbmNlcy5y
ZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBmb3IgKHVuc2lnbmVkIGkg
PSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5z
aXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICAgICAgaWYgKGZvbnQuZ2x5cGhJ
c1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpIHsKKyAgICAgICAgICAgIGlmIChyZXN1bHRH
bHlwaHMuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGluaXRpYWxBZHZhbmNlID0gbWFrZUds
eXBoQnVmZmVyQWR2YW5jZShzaXplKGluaXRpYWxBZHZhbmNlKSArIHNpemUoYWR2YW5jZXNbaV0p
KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHRBZHZhbmNlcy5sYXN0
KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0QWR2YW5jZXMubGFzdCgpKSAr
IHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJlc3Vs
dEdseXBocy51bmNoZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAgICAgICAgIHJlc3VsdEFk
dmFuY2VzLnVuY2hlY2tlZEFwcGVuZChhZHZhbmNlc1tpXSk7CisgICAgICAgIH0KKyAgICAgICAg
QVNTRVJUKHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAg
ICB9CisKKyAgICByZXR1cm4geyBXVEZNb3ZlKHJlc3VsdEdseXBocyksIFdURk1vdmUocmVzdWx0
QWR2YW5jZXMpLCBXVEZNb3ZlKGluaXRpYWxBZHZhbmNlKSB9OworfQorCiB2b2lkIERyYXdHbHlw
aHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZl
ckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2ln
bmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2ludCwgRm9udFNtb290aGlu
Z01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rp
b24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25zdHJ1Y3QpIHsKQEAgLTM3
MSw4ICs0MDMsMTEgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3Qg
Rm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAogICAgIEFTU0VSVChtX2Ry
YXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRlY29u
c3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1NTI+IFJlY29y
ZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5kQWR2YW5jZXNX
aXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250LCBnbHlwaHMsIGFk
dmFuY2VzLCBudW1HbHlwaHMpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4dChmb250LCBz
bW9vdGhpbmdNb2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29u
dGV4dCwgZm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBvaW50LCBzbW9v
dGhpbmdNb2RlKTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4
dCwgZm9udCwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzLmRhdGEo
KSwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMuZGF0YSgpLCBu
dW1HbHlwaHMsIHN0YXJ0UG9pbnQgKyBzaXplKGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZH
R2x5cGhzLmluaXRpYWxBZHZhbmNlKSwgc21vb3RoaW5nTW9kZSk7CiAgICAgY29uY2x1ZGVJbnRl
cm5hbENvbnRleHQoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420193</attachid>
            <date>2021-02-12 16:42:47 -0800</date>
            <delta_ts>2021-02-12 22:29:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210212164246.patch</filename>
            <type>text/plain</type>
            <size>14909</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjNjMWJjYzIyYTUxYzFl
MjMxMmNhNzhhYzc2ZDA0ZDliYTFkMmE0OC4uMGJhMWNmN2JjZjQ0YTc0ODQ1MWIyMThkZjgzZmI0
MWRjNDVmNmE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEyICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbnRvIGNhbnZh
cyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZH
IGZyYW1ld29yayB0byBkZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcg
dGhhdCBpbmZyYXN0cnVjdHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291
bGQgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nl
c3MsIGFuZCBSRUxFQVNFX0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0
IGl0IHdvbid0IGJlIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBp
cyBqdXN0IGEgdGVtcG9yYXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4g
cHJvcGVybHkgdHJhbnNjb2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBk
aXNwbGF5IGxpc3QgaW5mcmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3Mg
ZHJhd2luZyBPVC1TVkcgZ2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAg
ICAgIHJpZ2h0IG5vdywgb25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJh
d2luZywgc2luY2UgcmVndWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAg
ICAgIHByb2Nlc3MgeWV0LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24n
dCB3YW50IHRvIGFjdHVhbGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNh
bnZhcy4KKyAgICAgICAgV2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFr
ZSBzZW5zZSB0byBoYXZlIHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIFdlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250
Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3Jl
VGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2FkZTo6ZHJhd0dseXBocyk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyBjb25zdCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0ds
eXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6
OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpE
cmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIxLTAyLTEyICBTdGVwaGFuIFN6
YWJvICA8c3RlcGhhbi5zemFib0Bzb255LmNvbT4KIAogICAgICAgICBbUGxheVN0YXRpb25dW0Rl
YnVnXSBCdWlsZCBmaXggYWZ0ZXIgcjI3Mjc3MgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggZThlYjk5
YzI0ZmViZGY4OGU2NDk3NTg3M2Q3MGUwZDFlNDk0MDMyNi4uNzgyYzYzMmQ3Y2FiNGNjMGJlMWQx
ZGU3N2U3MGY1ZTkyZTA1MTVmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAK
KzIwMjEtMDItMTIgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKwor
ICAgICAgICBbR1BVIFByb2Nlc3NdIFRlbXBvcmFyaWx5IGRpc2FibGUgZHJhd2luZyBPVC1TVkcg
Z2x5cGhzIGludG8gY2FudmFzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGFuIFJB
SUkgY2xhc3MgdG8gd3JhcCBPVFNWRy5mcmFtZXdvcmsncyBDIEFQSS4KKworICAgICAgICAqIHBh
bC9zcGkvY2YvQ29yZVRleHRTUEkuaDoKKyAgICAgICAgKE9UU1ZHVGFibGU6Ok9UU1ZHVGFibGUp
OgorICAgICAgICAoT1RTVkdUYWJsZTo6fk9UU1ZHVGFibGUpOgorCiAyMDIxLTAyLTEwICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwv
c3BpL2NvY29hL0NvcmVUZXh0U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oIGIvU291
cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0ODFkMWJmNWFm
YzBhYjYwOTE1MjRkMGVlY2E5YWM3MDc4Y2ExYzBhLi5mNDNlZmQyNGRkNWViYTZjMThkZWIyNWFj
NWFiNTE2OWJlZjY2Zjc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9j
Zi9Db3JlVGV4dFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVU
ZXh0U1BJLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQog
CiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8T1RTVkcvT1RT
VkcuaD4KIAogI2Vsc2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBrQ1RGb250VHJh
aXRFbXBoYXNpemVkID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYgY29uc3Qgc3Ry
dWN0IF9fT1RTVkdUYWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBXVEZfRVhURVJO
X0NfQkVHSU4KQEAgLTIwMCw0ICsyMDMsMjYgQEAgQ1RGb250RGVzY3JpcHRvclJlZiBDVEZvbnRD
cmVhdGVQaHlzaWNhbEZvbnREZXNjcmlwdG9yRm9yQ2hhcmFjdGVyc1dpdGhMYW5ndWFnZSgKIGJv
b2wgQ1RGb250SXNBcHBsZUNvbG9yRW1vamkoQ1RGb250UmVmKTsKIENURm9udFJlZiBDVEZvbnRD
cmVhdGVGb3JDaGFyYWN0ZXJzKENURm9udFJlZiBjdXJyZW50Rm9udCwgY29uc3QgVVRGMTZDaGFy
ICpjaGFyYWN0ZXJzLCBDRkluZGV4IGxlbmd0aCwgQ0ZJbmRleCAqY292ZXJlZExlbmd0aCk7CiAK
K09UU1ZHVGFibGVSZWYgT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKENGRGF0YVJlZiBzdmdUYWJs
ZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSk7CitDRkluZGV4IE9UU1ZH
VGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgoT1RTVkdUYWJsZVJlZiwgQ0dHbHlwaCk7Cit2
b2lkIE9UU1ZHVGFibGVSZWxlYXNlKE9UU1ZHVGFibGVSZWYpOworCitzdHJ1Y3QgT1RTVkdUYWJs
ZSB7CisgICAgT1RTVkdUYWJsZSgpCisgICAgeworICAgIH0KKworICAgIE9UU1ZHVGFibGUoQ0ZE
YXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKQor
ICAgICAgICA6IHRhYmxlKE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YShzdmdUYWJsZSwgdW5pdHNQ
ZXJFbSwgZm9udFNpemUpKQorICAgIHsKKyAgICB9CisKKyAgICB+T1RTVkdUYWJsZSgpCisgICAg
eworICAgICAgICBPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7CisgICAgfQorCisgICAgT1RTVkdU
YWJsZVJlZiB0YWJsZSB7IG51bGxwdHIgfTsKK307CisKIFdURl9FWFRFUk5fQ19FTkQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA4
YzE1ZWI2NDgwMzczMDU4MDdiNzAzZDBiZGJhYjNmM2JmYTU3MTViLi5mZDlhZDJlNGNkNTM0ZjI0
NmYwYTFmYmMzNTcwNWNkZDI3OTliZDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC02MjAsNiArNjIwLDcgQEAKIAkJMUM2NjI2
MTExQzZFN0NBNjAwQUI1MjdDIC8qIEZvbnRGYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzY2MjYwRjFDNkU3Q0E2MDBBQjUyN0MgLyogRm9udEZh
Y2UuaCAqLzsgfTsKIAkJMUM3M0E3MTMyMTg1NzU3RTAwNENDRUE1IC8qIFRleHRVbmRlcmxpbmVP
ZmZzZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFD
QjZCNEZCMjE3QjgzOTQwMDkzQjlDRCAvKiBUZXh0VW5kZXJsaW5lT2Zmc2V0LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUM3M0E3MTUyMTg1NzU4
NzAwNENDRUE1IC8qIFRleHREZWNvcmF0aW9uVGhpY2tuZXNzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0I2QjRGODIxN0I4MzkzMDA5M0I5Q0QgLyog
VGV4dERlY29yYXRpb25UaGlja25lc3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkxQzc3QzhBQzI1RDQ1QTUxMDA2MzVFMEMgLyogT1RTVkcuZnJh
bWV3b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUM3N0M4QUEyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZHLmZyYW1ld29yayAqLzsgfTsKIAkJMUM4
MUI5NUEwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNvbnRyb2xsZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDODFCOTU2MEU5NzMzMDgwMDI2
NkUwNyAvKiBJbnNwZWN0b3JDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUM4MUI5NUMwRTk3MzMwODAwMjY2RTA3IC8qIEluc3Bl
Y3RvckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUM4MUI5NTgwRTk3MzMwODAwMjY2RTA3IC8qIEluc3BlY3RvckNsaWVudC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFDQUYzNDgxMEE2QzQw
NTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQUYzNDdFMEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3Jp
cHRPYmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwpAQCAtNjgzMSw2ICs2ODMyLDcgQEAKIAkJMUM2RkQ4QUUyNTBBMzExNTAwRDZFOTIwIC8qIEZv
bnRDYXNjYWRlQ29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENhc2NhZGVDb3Jl
VGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNkZEOEFGMjUwQTMzQ0Yw
MEQ2RTkyMCAvKiBGb250Q29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENvcmVU
ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM2RkQ4QjAyNTBBMzVGMTAw
RDZFOTIwIC8qIEZvbnRDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb250Q29jb2EuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhBQTI1RDQ1QTUxMDA2MzVFMEMg
LyogT1RTVkcuZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBPVFNWRy5mcmFtZXdvcms7IHBh
dGggPSAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvT1RTVkcuZnJhbWV3b3JrOyBz
b3VyY2VUcmVlID0gU0RLUk9PVDsgfTsKIAkJMUM4MUI5NTYwRTk3MzMwODAwMjY2RTA3IC8qIElu
c3BlY3RvckNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5z
cGVjdG9yQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzgxQjk1
NzBFOTczMzA4MDAyNjZFMDcgLyogSW5zcGVjdG9yQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JDb250cm9sbGVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM4MUI5NTgwRTk3MzMwODAwMjY2RTA3IC8qIEluc3Bl
Y3RvckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JD
bGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE3MTIxLDYgKzE3MTIzLDcg
QEAKIAkJCQkxQzA5RDA1OTFFMzFDNkE5MDA3MjVGMTggLyogbGliUEFMLmEgaW4gRnJhbWV3b3Jr
cyAqLywKIAkJCQlERDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1sMi5keWxpYiBpbiBG
cmFtZXdvcmtzICovLAogCQkJCTM3OTkxOUIyMTIwMERFNTAwMEVBMDQxQyAvKiBsaWJ6LmR5bGli
IGluIEZyYW1ld29ya3MgKi8sCisJCQkJMUM3N0M4QUMyNUQ0NUE1MTAwNjM1RTBDIC8qIE9UU1ZH
LmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAogCQkJCUE4OEFENTJGMDk1MjRCOTIwMDFERDE5
NiAvKiBRdWFydHpDb3JlLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAogCQkJCTVGRTFEMjky
MTc4RkQxRjMwMDFBQTNDMyAvKiBTZWN1cml0eS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywK
IAkJCSk7CkBAIC0xNzc1OSw2ICsxNzc2Miw3IEBACiAJCQkJREQ3NjNCQjEwOTkyQzJDOTAwNzQw
QjhFIC8qIGxpYnhtbDIuZHlsaWIgKi8sCiAJCQkJMzc5OTE5QjExMjAwREU1MDAwRUEwNDFDIC8q
IGxpYnouZHlsaWIgKi8sCiAJCQkJNTc0RjU1RTIyMDRGM0NCRjAwMjk0OEM2IC8qIExvY2FsQXV0
aGVudGljYXRpb24uZnJhbWV3b3JrICovLAorCQkJCTFDNzdDOEFBMjVENDVBNTEwMDYzNUUwQyAv
KiBPVFNWRy5mcmFtZXdvcmsgKi8sCiAJCQkJQTg1RDdBMkYwODc5RUJBOTAwNkE5MTcyIC8qIFF1
YXJ0ekNvcmUuZnJhbWV3b3JrICovLAogCQkJCTVGRTFEMjkxMTc4RkQxRjMwMDFBQTNDMyAvKiBT
ZWN1cml0eS5mcmFtZXdvcmsgKi8sCiAJCQkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRm9udC5oCmluZGV4IGM3YjA3MmU2NmM2MzE1ZDI2YThjOTI4OTljZTUwMmIwN2FlMDEwYmQu
Ljg3NDAxMjAxNTUxM2U4ZTQzYzI5NThmNzE2OThkOGJjZjZiNDM4MmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKQEAgLTEsNyArMSw3IEBACiAvKgogICogVGhpcyBm
aWxlIGlzIHBhcnQgb2YgdGhlIGludGVybmFsIGZvbnQgaW1wbGVtZW50YXRpb24uCiAgKgotICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICogQ29weXJpZ2h0IChDKSAyMDA3LTIwMDggVG9yY2ggTW9iaWxlLCBJbmMuCiAgKgogICog
VGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu
ZC9vcgpAQCAtNDIsNiArNDIsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSA8
Q29yZUZvdW5kYXRpb24vQ29yZUZvdW5kYXRpb24uaD4KKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0Nv
cmVUZXh0U1BJLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIx
NCw2ICsyMTUsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0
ZWRCeUFsbFNtYWxsQ2FwcygpIGNvbnN0OwogICAgIGNvbnN0IEJpdFZlY3RvciYgZ2x5cGhzU3Vw
cG9ydGVkQnlQZXRpdGVDYXBzKCkgY29uc3Q7CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNT
dXBwb3J0ZWRCeUFsbFBldGl0ZUNhcHMoKSBjb25zdDsKKyAgICBib29sIGdseXBoSXNSZW5kZXJl
ZFdpdGhPVFNWRyhDR0dseXBoKSBjb25zdDsKICNlbmRpZgogCiAgICAgYm9vbCBjYW5SZW5kZXJD
b21iaW5pbmdDaGFyYWN0ZXJTZXF1ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CkBA
IC0yOTMsNiArMjk1LDcgQEAgcHJpdmF0ZToKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rv
cj4gbV9nbHlwaHNTdXBwb3J0ZWRCeUFsbFNtYWxsQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFs
PEJpdFZlY3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRCeVBldGl0ZUNhcHM7CiAgICAgbXV0YWJsZSBP
cHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxQZXRpdGVDYXBzOworICAg
IG11dGFibGUgT3B0aW9uYWw8T1RTVkdUYWJsZT4gbV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNp
ZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFm
ZTM3M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgyODZhZTM5NDBhNjAuLmVkMDM4MWNjYzI0NTU4MWU3
YzkwYWRlYmEyOTg2YzBjYTBmNWU2YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQu
Y3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5j
bHVkZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50
aW1lQXBwbGljYXRpb25DaGVja3MuaCIKICNpbmNsdWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGlj
c1NQSS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsMTEg
QEAgdm9pZCBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQs
IGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEcKIAogICAgIENHQ29udGV4dFJlZiBjZ0NvbnRleHQg
PSBjb250ZXh0LnBsYXRmb3JtQ29udGV4dCgpOwogCisgICAgaWYgKGlzSW5HUFVQcm9jZXNzKCkp
IHsKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKQorICAg
ICAgICAgICAgUkVMRUFTRV9BU1NFUlQoIWZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGds
eXBoc1tpXSkpOworICAgIH0KKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0gdHJ1ZTsKICAg
ICBib29sIHNob3VsZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKaW5k
ZXggOTc1NTViZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uYmFmZjE3ZmI1Yjkx
YjdkMWZmNDViZjUyYjk3NDlhMjNlNmFhMjM2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCkBAIC0x
LDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1
cnlha292CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC03NzQsNCArNzc0LDE1IEBAIGJvb2wgRm9udDo6
aXNQcm9iYWJseU9ubHlVc2VkVG9SZW5kZXJJY29ucygpIGNvbnN0CiAgICAgfSk7CiB9CiAKK2Jv
b2wgRm9udDo6Z2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKENHR2x5cGggZ2x5cGgpIGNvbnN0Cit7
CisgICAgaWYgKCFtX290U1ZHVGFibGUpIHsKKyAgICAgICAgaWYgKGF1dG8gdGFibGVEYXRhID0g
YWRvcHRDRihDVEZvbnRDb3B5VGFibGUocGxhdGZvcm1EYXRhKCkuY3RGb250KCksIGtDVEZvbnRU
YWJsZVNWRywga0NURm9udFRhYmxlT3B0aW9uTm9PcHRpb25zKSkpCisgICAgICAgICAgICBtX290
U1ZHVGFibGUgPSBPVFNWR1RhYmxlKHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0
c1BlckVtKCksIHBsYXRmb3JtRGF0YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIG1fb3RTVkdUYWJsZSA9IE9UU1ZHVGFibGUoKTsKKyAgICB9CisgICAgcmV0dXJuIG1fb3RT
VkdUYWJsZS52YWx1ZSgpLnRhYmxlICYmIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5
cGgobV9vdFNWR1RhYmxlLnZhbHVlKCkudGFibGUsIGdseXBoKSAhPSBrQ0ZOb3RGb3VuZDsKK30K
KwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVy
Q29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1
MDNiNWU0MDhlZmY1Yzc1YWE0OTI2ZmJmY2JmMjlhZmVlM2QuLjk4NTBhMGQwNGY4ZDk3MDI2MGUw
NmQxMzAwM2U1YjM5MmZiYTEyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVU
ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlz
dHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2LDYgKzM2
LDcgQEAKICNpbmNsdWRlICJHbHlwaEJ1ZmZlci5oIgogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29y
ZVRleHQuaD4KKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CiAjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgogCiAjaWYgUExBVEZPUk0oV0lOKQpAQCAtMzYyLDYgKzM2MywzNyBAQCB2
b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6cmVjb3JkRHJhd0ltYWdlKENHUmVuZGVyaW5nU3RhdGVS
ZWYsIENHR1N0YXRlUmVmIGdzdGF0ZQogICAgIG1fb3duZXIudHJhbnNsYXRlKDAsIC0ocmVjdC5z
aXplLmhlaWdodCArIDIgKiByZWN0Lm9yaWdpbi55KSk7CiB9CiAKK3N0cnVjdCBHbHlwaHNBbmRB
ZHZhbmNlcyB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBWZWN0
b3I8R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFuY2Ug
aW5pdGlhbEFkdmFuY2U7Cit9Oworc3RhdGljIEdseXBoc0FuZEFkdmFuY2VzIGZpbHRlck91dE9U
U1ZHR2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBo
cywgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhz
KQoreworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiByZXN1bHRHbHlwaHM7CisgICAgVmVj
dG9yPEdseXBoQnVmZmVyQWR2YW5jZT4gcmVzdWx0QWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJB
ZHZhbmNlIGluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpOworCisgICAg
cmVzdWx0R2x5cGhzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKyAgICByZXN1
bHRBZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKHJl
c3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICAgICAgaWYg
KGZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpIHsKKyAgICAgICAgICAg
IGlmIChyZXN1bHRHbHlwaHMuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGluaXRpYWxBZHZh
bmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKGluaXRpYWxBZHZhbmNlKSArIHNpemUo
YWR2YW5jZXNbaV0pKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHRB
ZHZhbmNlcy5sYXN0KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0QWR2YW5j
ZXMubGFzdCgpKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAg
ICAgICAgIHJlc3VsdEdseXBocy51bmNoZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAgICAg
ICAgIHJlc3VsdEFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChhZHZhbmNlc1tpXSk7CisgICAgICAg
IH0KKyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMu
c2l6ZSgpKTsKKyAgICB9CisKKyAgICByZXR1cm4geyBXVEZNb3ZlKHJlc3VsdEdseXBocyksIFdU
Rk1vdmUocmVzdWx0QWR2YW5jZXMpLCBXVEZNb3ZlKGluaXRpYWxBZHZhbmNlKSB9OworfQorCiB2
b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25z
dCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2
YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2ludCwg
Rm9udFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5cGhz
RGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25zdHJ1
Y3QpIHsKQEAgLTM3MSw4ICs0MDMsMTEgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdH
bHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAogICAg
IEFTU0VSVChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1
Y3Rpb246OkRlY29uc3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAx
NjY1NTI+IFJlY29yZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhz
QW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250
LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29u
dGV4dChmb250LCBzbW9vdGhpbmdNb2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyht
X2ludGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFy
dFBvaW50LCBzbW9vdGhpbmdNb2RlKTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2lu
dGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMu
Z2x5cGhzLmRhdGEoKSwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5j
ZXMuZGF0YSgpLCBudW1HbHlwaHMsIHN0YXJ0UG9pbnQgKyBzaXplKGdseXBoc0FuZEFkdmFuY2Vz
V2l0aG91dE9UU1ZHR2x5cGhzLmluaXRpYWxBZHZhbmNlKSwgc21vb3RoaW5nTW9kZSk7CiAgICAg
Y29uY2x1ZGVJbnRlcm5hbENvbnRleHQoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420211</attachid>
            <date>2021-02-12 22:29:34 -0800</date>
            <delta_ts>2021-02-12 22:53:22 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210212222933.patch</filename>
            <type>text/plain</type>
            <size>24021</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWRmZDJjZjM3ZjgzZDU5
ZjYyNzk4MzVhYjBkMmYyZWZjMWYxMDQ3NS4uMTE1YjIzNzc4ZWU0ZGJkNTI4OTA2MmNmYmM4OTg4
NzdiN2FlZGZiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTEyICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3Rl
bSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVk
IHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdo
aWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdl
YiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9BU1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nl
c3MgdGhhdCBpdCB3b24ndCBiZSB1c2luZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAg
IFRoaXMgaXMganVzdCBhIHRlbXBvcmFyeSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwg
d2UgY2FuIHByb3Blcmx5IHRyYW5zY29kZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAg
ICAgICAgZGlzcGxheSBsaXN0IGluZnJhc3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkg
YnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGdseXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNo
LAorICAgICAgICByaWdodCBub3csIG9ubHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2Fu
dmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3VsYXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQ
VQorICAgICAgICBwcm9jZXNzIHlldC4pCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ug
d2UgZG9uJ3Qgd2FudCB0byBhY3R1YWxseSByZXF1aXJlIHRoYXQgT1QtU1ZHIGRvZXNuJ3Qgd29y
ayBpbiBjYW52YXMuCisgICAgICAgIFdoZW4gd2UgbWFrZSBpdCB3b3JrIGFnYWluLCBpdCBkb2Vz
bid0IG1ha2Ugc2Vuc2UgdG8gaGF2ZSB0byBkZWxldGUgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRl
eHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNd
IFNvdW5kIGRvZXMgbm90IHBsYXkgb24gWW91VHViZSBhZnRlciBzd2l0Y2hpbmcgYmFjayB0byBm
b3JlZ3JvdW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0OTc1ODcz
ZDcwZTBkMWU0OTQwMzI2Li4yZmVmZmYwNzZkZTMxOTJmMTJjMzA5MmZiMTliMzA3ZWNkMWVmMDQy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wMi0xMiAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vz
c10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhlIEdQVSBw
cm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0LWxpbmtz
IHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdvcmsgdGhh
dCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHA6IEFk
ZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgorICAgICAg
ICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9UU1ZHVGFi
bGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdUYWJsZSk6
CisgICAgICAgICogcGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICogcGFsL3Nw
aS9jZi9Db3JlVGV4dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0NvcmVUZXh0
U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMyNWYwNGI1
ZmRhOWU5Yjg0M2QwNjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5NTQ4ZGEw
N2NlNzQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0UwMDcyNUYx
OCAvKiBjb25maWcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFDMDlEMDU3MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJMUM0ODc2
RDgxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dp
bmcuY3BwICovOyB9OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2luZy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDcxRjhE
N0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcyMDAwNjM1
RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29m
dExpbmsuY3BwICovOyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJs
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzc3
QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFDQzNBQ0U4
MjJCRDdFQzUwMEYzNjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1ldGFsU1BJ
LmggKi87IH07CiAJCTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0MjBEODcx
OTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQzRjAwNDdC
MDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQ
SS5oICovOyB9OwpAQCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRFMDBDQ0VF
QkQgLyogTG9nZ2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNyb3MuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTFDNjdDRUEyMUUzMkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dC54Y2NvbmZpZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5r
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRT
b2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNWR1RhYmxl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gT1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBN
ZXRhbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIwRDg3MTkz
MDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENvcmVVSVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNjIwRDg3
NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE5TQXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtNTk0LDYgKzYwMCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRp
b1Rvb2xib3hTb2Z0TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5MyAvKiBD
b3JlTWVkaWFTb2Z0TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VFNzkzIC8q
IENvcmVNZWRpYVNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8q
IENvcmVUZXh0U29mdExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYzNUUwQyAv
KiBDb3JlVGV4dFNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8q
IE9UU1ZHVGFibGUuY3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNW
R1RhYmxlLmggKi8sCiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVvVG9vbGJv
eFNvZnRMaW5rLmNwcCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyogVmlkZW9U
b29sYm94U29mdExpbmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAogCQkJCTA3
N0U4N0IxMjI2QTQ2MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBpbiBTb3Vy
Y2VzICovLAogCQkJCTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRpYVNvZnRM
aW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUwQyAvKiBD
b3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUzMUM0NjUw
MDcyNUYxOCAvKiBDcnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQTExNzVCNTgxRjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRlci5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmlsZVNpemVG
b3JtYXR0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAogCQkJCTBD
Rjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9vbGJveFNv
ZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEwRjhGQiAv
KiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4Q0UyNUQ3
QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0Q2MTIy
Q0QyNTU5QjZBQzAwRkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAqLywKIAkJ
CQlDRDYxMjJEMTI1NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTFGNjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSBp
biBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3Jl
VGV4dFNvZnRMaW5rLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0
TGluay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMGUzYWUyMDZkMjE3MGI5ZTRlMDM5OGRlNDkyMDcwMWFkNjY5
MDRjYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRl
eHRTb2Z0TGluay5jcHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAi
Y29uZmlnLmgiCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CisjaW5jbHVk
ZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFNRVdPUktfRk9SX1NPVVJDRShQ
QUwsIE9UU1ZHKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fTUFZX0ZBSUxfRk9SX1NPVVJDRShQQUws
IE9UU1ZHLCBPVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEsIE9UU1ZHVGFibGVSZWYsIChDRkRhdGFS
ZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpLCAoc3Zn
VGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSkKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJ
TF9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5
cGgsIENGSW5kZXgsIChPVFNWR1RhYmxlUmVmIHRhYmxlLCBDR0dseXBoIGdseXBoKSwgKHRhYmxl
LCBnbHlwaCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fTUFZX0ZBSUxfRk9SX1NPVVJDRShQQUwsIE9U
U1ZHLCBPVFNWR1RhYmxlUmVsZWFzZSwgdm9pZCwgKE9UU1ZHVGFibGVSZWYgdGFibGUpLCAodGFi
bGUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRM
aW5rLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jZjEzZDNjYzg1MGZlZmY0YTMwODI2NjFkZDg5ZGEzYTcyN2Q1YWQ5Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmgK
QEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUg
PHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtpbmcuaD4K
KworU09GVF9MSU5LX0ZSQU1FV09SS19GT1JfSEVBREVSKFBBTCwgT1RTVkcpCisKK1NPRlRfTElO
S19GVU5DVElPTl9NQVlfRkFJTF9GT1JfSEVBREVSKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVh
dGVGcm9tRGF0YSwgT1RTVkdUYWJsZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQg
dW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9u
dFNpemUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNW
RywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFi
bGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgpLCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19G
VU5DVElPTl9NQVlfRkFJTF9GT1JfSEVBREVSKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVSZWxlYXNl
LCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJsZSkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9jZi9PVFNWR1RhYmxlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lOWUzYjY5YTMxYWYwYzg4N2E2YmUy
ZDY5OTVhMGQ3MTFkNGEwOTA3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9jZi9PVFNWR1RhYmxlLmNwcApAQCAtMCwwICsxLDQzIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJPVFNWR1RhYmxlLmgiCisKKyNpbmNsdWRlICJD
b3JlVGV4dFNvZnRMaW5rLmgiCisKK25hbWVzcGFjZSBQQUwgeworCitPVFNWR1RhYmxlOjpPVFNW
R1RhYmxlKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBm
b250U2l6ZSkKKyAgICA6IHRhYmxlKGNhbkxvYWRfT1RTVkdfT1RTVkdUYWJsZUNyZWF0ZUZyb21E
YXRhKCkgPyBzb2Z0TGlua19PVFNWR19PVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEoc3ZnVGFibGUs
IHVuaXRzUGVyRW0sIGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9CisKK09UU1ZHVGFibGU6On5P
VFNWR1RhYmxlKCkKK3sKKyAgICBpZiAoY2FuTG9hZF9PVFNWR19PVFNWR1RhYmxlUmVsZWFzZSgp
KQorICAgICAgICBzb2Z0TGlua19PVFNWR19PVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7Cit9CisK
K30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGFlM2Rm
MGU4MTU4YzM5NjZiMzk4ZmZkZjMyNzYwNjU3ODExMTVjOQotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oCkBAIC0wLDAgKzEsMzkgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICog
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0
U1BJLmg+CisKK25hbWVzcGFjZSBQQUwgeworCitzdHJ1Y3QgT1RTVkdUYWJsZSB7CisgICAgT1RT
VkdUYWJsZSgpID0gZGVmYXVsdDsKKyAgICBPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJsZSwg
dW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSk7CisgICAgfk9UU1ZHVGFibGUo
KTsKKworICAgIE9UU1ZHVGFibGVSZWYgdGFibGUgeyBudWxscHRyIH07Cit9OworCit9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oIGIvU291
cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0ODFkMWJmNWFm
YzBhYjYwOTE1MjRkMGVlY2E5YWM3MDc4Y2ExYzBhLi42ZjU2YTFhYzE2NjY3ZDM4YTQ4OWZiMWZh
MTI4OGI5MTdjZGJmMGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9j
Zi9Db3JlVGV4dFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVU
ZXh0U1BJLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQog
CiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8T1RTVkcvT1RT
VkcuaD4KIAogI2Vsc2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBrQ1RGb250VHJh
aXRFbXBoYXNpemVkID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYgY29uc3Qgc3Ry
dWN0IF9fT1RTVkdUYWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBXVEZfRVhURVJO
X0NfQkVHSU4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zv
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAppbmRleCBjN2Iw
NzJlNjZjNjMxNWQyNmE4YzkyODk5Y2U1MDJiMDdhZTAxMGJkLi4zYTIwOTQ1ZjNhNzMxMTc3Nzkz
MDdkYjdiOTM3YTdhZjMwMWZjNDQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9Gb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udC5oCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBp
bnRlcm5hbCBmb250IGltcGxlbWVudGF0aW9uLgogICoKLSAqIENvcHlyaWdodCAoQykgMjAwNi0y
MDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAw
Ni0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykg
MjAwNy0yMDA4IFRvcmNoIE1vYmlsZSwgSW5jLgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVl
IHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTQyLDYgKzQyLDcg
QEAKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogI2luY2x1ZGUgPENvcmVGb3VuZGF0aW9uL0NvcmVG
b3VuZGF0aW9uLmg+CisjaW5jbHVkZSA8cGFsL2NmL09UU1ZHVGFibGUuaD4KICNpbmNsdWRlIDx3
dGYvUmV0YWluUHRyLmg+CiAjZW5kaWYKIApAQCAtMjE0LDYgKzIxNSw3IEBAIHB1YmxpYzoKICAg
ICBjb25zdCBCaXRWZWN0b3ImIGdseXBoc1N1cHBvcnRlZEJ5QWxsU21hbGxDYXBzKCkgY29uc3Q7
CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRCeVBldGl0ZUNhcHMoKSBjb25z
dDsKICAgICBjb25zdCBCaXRWZWN0b3ImIGdseXBoc1N1cHBvcnRlZEJ5QWxsUGV0aXRlQ2Fwcygp
IGNvbnN0OworICAgIGJvb2wgZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKENHR2x5cGgpIGNvbnN0
OwogI2VuZGlmCiAKICAgICBib29sIGNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNl
KGNvbnN0IFVDaGFyKiwgc2l6ZV90KSBjb25zdDsKQEAgLTI5Myw2ICsyOTUsNyBAQCBwcml2YXRl
OgogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5QWxs
U21hbGxDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBv
cnRlZEJ5UGV0aXRlQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4gbV9nbHlw
aHNTdXBwb3J0ZWRCeUFsbFBldGl0ZUNhcHM7CisgICAgbXV0YWJsZSBPcHRpb25hbDxQQUw6Ok9U
U1ZHVGFibGU+IG1fb3RTVkdUYWJsZTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oV0lOKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENh
c2NhZGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3Jl
dGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAppbmRleCBhZmUzNzNiODQxOGYzMDM4OWE0NWM4
ZjJjMjM4Mjg2YWUzOTQwYTYwLi5lZDAzODFjY2MyNDU1ODFlN2M5MGFkZWJhMjk4NmMwY2EwZjVl
NmM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4
dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcApAQCAtMzAsNiArMzAsNyBA
QAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkxheW91dFJlY3QuaCIK
ICNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tz
LmgiCiAjaW5jbHVkZSA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4KICNpbmNsdWRlIDx3
dGYvTWF0aEV4dHJhcy5oPgogCkBAIC0xOTEsNiArMTkyLDExIEBAIHZvaWQgRm9udENhc2NhZGU6
OmRyYXdHbHlwaHMoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGb250JiBmb250LCBj
b25zdCBHCiAKICAgICBDR0NvbnRleHRSZWYgY2dDb250ZXh0ID0gY29udGV4dC5wbGF0Zm9ybUNv
bnRleHQoKTsKIAorICAgIGlmIChpc0luR1BVUHJvY2VzcygpKSB7CisgICAgICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCBudW1HbHlwaHM7ICsraSkKKyAgICAgICAgICAgIFJFTEVBU0VfQVNT
RVJUKCFmb250LmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhnbHlwaHNbaV0pKTsKKyAgICB9CisK
ICAgICBib29sIHNob3VsZEFudGlhbGlhcyA9IHRydWU7CiAgICAgYm9vbCBzaG91bGRTbW9vdGhG
b250cyA9IHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCmluZGV4IDk3NTU1YmUxMjkzMDg4NWVk
MTcyNjFlMDBlM2E1OThkMDRkYTk4MDcuLjdiNzMyM2U0NThjMTZlNzZhYTdkMzFhMGVjNDJkZGJk
NGE5NzVlYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDUtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYgQWxleGV5IFByb3NrdXJ5YWtvdgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dApAQCAtNDQsNiArNDQsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSAi
TG9jYWxlQ29jb2EuaCIKKyNpbmNsdWRlIDxwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oPgogI2lu
Y2x1ZGUgPHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaD4KICNlbHNlCiAjaW5jbHVkZSA8cGFsL3Nw
aS93aW4vQ29yZVRleHRTUElXaW4uaD4KQEAgLTc3NCw0ICs3NzUsMTcgQEAgYm9vbCBGb250Ojpp
c1Byb2JhYmx5T25seVVzZWRUb1JlbmRlckljb25zKCkgY29uc3QKICAgICB9KTsKIH0KIAorYm9v
bCBGb250OjpnbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoQ0dHbHlwaCBnbHlwaCkgY29uc3QKK3sK
KyAgICBpZiAoIW1fb3RTVkdUYWJsZSkgeworICAgICAgICBpZiAoYXV0byB0YWJsZURhdGEgPSBh
ZG9wdENGKENURm9udENvcHlUYWJsZShwbGF0Zm9ybURhdGEoKS5jdEZvbnQoKSwga0NURm9udFRh
YmxlU1ZHLCBrQ1RGb250VGFibGVPcHRpb25Ob09wdGlvbnMpKSkKKyAgICAgICAgICAgIG1fb3RT
VkdUYWJsZSA9IE9UU1ZHVGFibGUodGFibGVEYXRhLmdldCgpLCBmb250TWV0cmljcygpLnVuaXRz
UGVyRW0oKSwgcGxhdGZvcm1EYXRhKCkuc2l6ZSgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgbV9vdFNWR1RhYmxlID0gT1RTVkdUYWJsZSgpOworICAgIH0KKyAgICByZXR1cm4gbV9vdFNW
R1RhYmxlLnZhbHVlKCkudGFibGUKKyAgICAgICAgJiYgUEFMOjpjYW5Mb2FkX09UU1ZHX09UU1ZH
VGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgoKQorICAgICAgICAmJiBQQUw6OnNvZnRMaW5r
X09UU1ZHX09UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgobV9vdFNWR1RhYmxlLnZh
bHVlKCkudGFibGUsIGdseXBoKSAhPSBrQ0ZOb3RGb3VuZDsKK30KKwogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlz
cGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJh
d0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNiNWU0MDhlZmY1Yzc1YWE0
OTI2ZmJmY2JmMjlhZmVlM2QuLjBjMWM1ZTMyYzg0OWM4NjczNWFhMzA3NzA0Njg0YWUwZGU2YWM5
MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXls
aXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3
R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2Miw2ICszNjIsMzcgQEAgdm9pZCBEcmF3
R2x5cGhzUmVjb3JkZXI6OnJlY29yZERyYXdJbWFnZShDR1JlbmRlcmluZ1N0YXRlUmVmLCBDR0dT
dGF0ZVJlZiBnc3RhdGUKICAgICBtX293bmVyLnRyYW5zbGF0ZSgwLCAtKHJlY3Quc2l6ZS5oZWln
aHQgKyAyICogcmVjdC5vcmlnaW4ueSkpOwogfQogCitzdHJ1Y3QgR2x5cGhzQW5kQWR2YW5jZXMg
eworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiBnbHlwaHM7CisgICAgVmVjdG9yPEdseXBo
QnVmZmVyQWR2YW5jZT4gYWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJBZHZhbmNlIGluaXRpYWxB
ZHZhbmNlOworfTsKK3N0YXRpYyBHbHlwaHNBbmRBZHZhbmNlcyBmaWx0ZXJPdXRPVFNWR0dseXBo
cyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0
IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocykKK3sKKyAg
ICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaD4gcmVzdWx0R2x5cGhzOworICAgIFZlY3RvcjxHbHlw
aEJ1ZmZlckFkdmFuY2U+IHJlc3VsdEFkdmFuY2VzOworICAgIEdseXBoQnVmZmVyQWR2YW5jZSBp
bml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2UoKTsKKworICAgIHJlc3VsdEds
eXBocy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisgICAgcmVzdWx0QWR2YW5j
ZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1HbHlwaHMpOworCisgICAgZm9yICh1bnNpZ25l
ZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKSB7CisgICAgICAgIEFTU0VSVChyZXN1bHRHbHlw
aHMuc2l6ZSgpID09IHJlc3VsdEFkdmFuY2VzLnNpemUoKSk7CisgICAgICAgIGlmIChmb250Lmds
eXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhnbHlwaHNbaV0pKSB7CisgICAgICAgICAgICBpZiAocmVz
dWx0R2x5cGhzLmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICBpbml0aWFsQWR2YW5jZSA9IG1h
a2VHbHlwaEJ1ZmZlckFkdmFuY2Uoc2l6ZShpbml0aWFsQWR2YW5jZSkgKyBzaXplKGFkdmFuY2Vz
W2ldKSk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmVzdWx0QWR2YW5jZXMu
bGFzdCgpID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKHJlc3VsdEFkdmFuY2VzLmxhc3Qo
KSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBy
ZXN1bHRHbHlwaHMudW5jaGVja2VkQXBwZW5kKGdseXBoc1tpXSk7CisgICAgICAgICAgICByZXN1
bHRBZHZhbmNlcy51bmNoZWNrZWRBcHBlbmQoYWR2YW5jZXNbaV0pOworICAgICAgICB9CisgICAg
ICAgIEFTU0VSVChyZXN1bHRHbHlwaHMuc2l6ZSgpID09IHJlc3VsdEFkdmFuY2VzLnNpemUoKSk7
CisgICAgfQorCisgICAgcmV0dXJuIHsgV1RGTW92ZShyZXN1bHRHbHlwaHMpLCBXVEZNb3ZlKHJl
c3VsdEFkdmFuY2VzKSwgV1RGTW92ZShpbml0aWFsQWR2YW5jZSkgfTsKK30KKwogdm9pZCBEcmF3
R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhC
dWZmZXJHbHlwaCogZ2x5cGhzLCBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1
bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0UG9pbnQmIHN0YXJ0UG9pbnQsIEZvbnRTbW9v
dGhpbmdNb2RlIHNtb290aGluZ01vZGUpCiB7CiAgICAgaWYgKG1fZHJhd0dseXBoc0RlY29uc3Ry
dWN0aW9uID09IERyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbjo6RG9udERlY29uc3RydWN0KSB7CkBA
IC0zNzEsOCArNDAyLDExIEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhzKGNv
bnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdsCiAKICAgICBBU1NFUlQo
bV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpE
ZWNvbnN0cnVjdCk7CiAKKyAgICAvLyBGSVhNRTogPHJkYXI6Ly9wcm9ibGVtLzcwMTY2NTUyPiBS
ZWNvcmQgT1RTVkcgZ2x5cGhzLgorICAgIEdseXBoc0FuZEFkdmFuY2VzIGdseXBoc0FuZEFkdmFu
Y2VzV2l0aG91dE9UU1ZHR2x5cGhzID0gZmlsdGVyT3V0T1RTVkdHbHlwaHMoZm9udCwgZ2x5cGhz
LCBhZHZhbmNlcywgbnVtR2x5cGhzKTsKKwogICAgIHByZXBhcmVJbnRlcm5hbENvbnRleHQoZm9u
dCwgc21vb3RoaW5nTW9kZSk7Ci0gICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5h
bENvbnRleHQsIGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywgc3RhcnRQb2ludCwg
c21vb3RoaW5nTW9kZSk7CisgICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENv
bnRleHQsIGZvbnQsIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocy5k
YXRhKCksIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmFkdmFuY2VzLmRhdGEo
KSwgbnVtR2x5cGhzLCBzdGFydFBvaW50ICsgc2l6ZShnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRP
VFNWR0dseXBocy5pbml0aWFsQWR2YW5jZSksIHNtb290aGluZ01vZGUpOwogICAgIGNvbmNsdWRl
SW50ZXJuYWxDb250ZXh0KCk7CiB9CiAK
</data>
<flag name="commit-queue"
          id="438656"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420213</attachid>
            <date>2021-02-12 22:51:46 -0800</date>
            <delta_ts>2021-02-13 20:59:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210212225145.patch</filename>
            <type>text/plain</type>
            <size>24146</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWRmZDJjZjM3ZjgzZDU5
ZjYyNzk4MzVhYjBkMmYyZWZjMWYxMDQ3NS4uMTE1YjIzNzc4ZWU0ZGJkNTI4OTA2MmNmYmM4OTg4
NzdiN2FlZGZiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTEyICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3Rl
bSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVk
IHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdo
aWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdl
YiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9BU1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nl
c3MgdGhhdCBpdCB3b24ndCBiZSB1c2luZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAg
IFRoaXMgaXMganVzdCBhIHRlbXBvcmFyeSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwg
d2UgY2FuIHByb3Blcmx5IHRyYW5zY29kZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAg
ICAgICAgZGlzcGxheSBsaXN0IGluZnJhc3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkg
YnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGdseXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNo
LAorICAgICAgICByaWdodCBub3csIG9ubHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2Fu
dmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3VsYXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQ
VQorICAgICAgICBwcm9jZXNzIHlldC4pCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ug
d2UgZG9uJ3Qgd2FudCB0byBhY3R1YWxseSByZXF1aXJlIHRoYXQgT1QtU1ZHIGRvZXNuJ3Qgd29y
ayBpbiBjYW52YXMuCisgICAgICAgIFdoZW4gd2UgbWFrZSBpdCB3b3JrIGFnYWluLCBpdCBkb2Vz
bid0IG1ha2Ugc2Vuc2UgdG8gaGF2ZSB0byBkZWxldGUgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRl
eHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNd
IFNvdW5kIGRvZXMgbm90IHBsYXkgb24gWW91VHViZSBhZnRlciBzd2l0Y2hpbmcgYmFjayB0byBm
b3JlZ3JvdW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0OTc1ODcz
ZDcwZTBkMWU0OTQwMzI2Li4yZmVmZmYwNzZkZTMxOTJmMTJjMzA5MmZiMTliMzA3ZWNkMWVmMDQy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wMi0xMiAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vz
c10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhlIEdQVSBw
cm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0LWxpbmtz
IHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdvcmsgdGhh
dCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHA6IEFk
ZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgorICAgICAg
ICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9UU1ZHVGFi
bGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdUYWJsZSk6
CisgICAgICAgICogcGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICogcGFsL3Nw
aS9jZi9Db3JlVGV4dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0NvcmVUZXh0
U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMyNWYwNGI1
ZmRhOWU5Yjg0M2QwNjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5NTQ4ZGEw
N2NlNzQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0UwMDcyNUYx
OCAvKiBjb25maWcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFDMDlEMDU3MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJMUM0ODc2
RDgxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dp
bmcuY3BwICovOyB9OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2luZy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDcxRjhE
N0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcyMDAwNjM1
RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29m
dExpbmsuY3BwICovOyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJs
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzc3
QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFDQzNBQ0U4
MjJCRDdFQzUwMEYzNjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1ldGFsU1BJ
LmggKi87IH07CiAJCTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0MjBEODcx
OTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQzRjAwNDdC
MDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQ
SS5oICovOyB9OwpAQCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRFMDBDQ0VF
QkQgLyogTG9nZ2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNyb3MuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTFDNjdDRUEyMUUzMkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dC54Y2NvbmZpZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5r
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRT
b2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNWR1RhYmxl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gT1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBN
ZXRhbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIwRDg3MTkz
MDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENvcmVVSVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNjIwRDg3
NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE5TQXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtNTk0LDYgKzYwMCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRp
b1Rvb2xib3hTb2Z0TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5MyAvKiBD
b3JlTWVkaWFTb2Z0TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VFNzkzIC8q
IENvcmVNZWRpYVNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8q
IENvcmVUZXh0U29mdExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYzNUUwQyAv
KiBDb3JlVGV4dFNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8q
IE9UU1ZHVGFibGUuY3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNW
R1RhYmxlLmggKi8sCiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVvVG9vbGJv
eFNvZnRMaW5rLmNwcCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyogVmlkZW9U
b29sYm94U29mdExpbmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAogCQkJCTA3
N0U4N0IxMjI2QTQ2MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBpbiBTb3Vy
Y2VzICovLAogCQkJCTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRpYVNvZnRM
aW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUwQyAvKiBD
b3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUzMUM0NjUw
MDcyNUYxOCAvKiBDcnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQTExNzVCNTgxRjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRlci5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmlsZVNpemVG
b3JtYXR0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAogCQkJCTBD
Rjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9vbGJveFNv
ZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEwRjhGQiAv
KiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4Q0UyNUQ3
QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0Q2MTIy
Q0QyNTU5QjZBQzAwRkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAqLywKIAkJ
CQlDRDYxMjJEMTI1NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTFGNjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSBp
biBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3Jl
VGV4dFNvZnRMaW5rLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0
TGluay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZTVkMDE1N2U4ZmZkOTViODg4MjBjZjdmMWZjZTFlMTY3MmUz
ZDIzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRl
eHRTb2Z0TGluay5jcHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAi
Y29uZmlnLmgiCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CisjaW5jbHVk
ZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09SS19GT1Jf
U09VUkNFKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJTF9GT1JfU09V
UkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdUYWJsZVJlZiwg
KENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6
ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5LX0ZVTkNUSU9O
X01BWV9GQUlMX0ZPUl9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5k
ZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgp
LCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJTF9GT1JfU09VUkNF
KFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJs
ZSksICh0YWJsZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVU
ZXh0U29mdExpbmsuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0TGlu
ay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmNmMTNkM2NjODUwZmVmZjRhMzA4MjY2MWRkODlkYTNhNzI3ZDVhZDkK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29m
dExpbmsuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICog
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlu
a2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoUEFMLCBPVFNWRykKKwor
U09GVF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdU
YWJsZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxlUmVmLCAoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1
bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKSwgKHN2Z1RhYmxlLCB1bml0c1Bl
ckVtLCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fTUFZX0ZBSUxfRk9SX0hFQURFUihQ
QUwsIE9UU1ZHLCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoLCBDRkluZGV4LCAo
T1RTVkdUYWJsZVJlZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0YWJsZSwgZ2x5cGgpKQorU09G
VF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJs
ZVJlbGVhc2UsIHZvaWQsIChPVFNWR1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjNTg3YjJiNDRkN2Yy
YWUzOGMyOGUxODRjMmYwMjYzNTIzNmZhYWMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
CisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk9UU1ZHVGFibGUuaCIKKworI2lu
Y2x1ZGUgIkNvcmVUZXh0U29mdExpbmsuaCIKKworbmFtZXNwYWNlIFBBTCB7CisKK09UU1ZHVGFi
bGU6Ok9UU1ZHVGFibGUoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBD
R0Zsb2F0IGZvbnRTaXplKQorICAgIDogdGFibGUoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgp
ICYmIGNhbkxvYWRfT1RTVkdfT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKCkgPyBzb2Z0TGlua19P
VFNWR19PVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRT
aXplKSA6IG51bGxwdHIpCit7Cit9CisKK09UU1ZHVGFibGU6On5PVFNWR1RhYmxlKCkKK3sKKyAg
ICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpICYmIGNhbkxvYWRfT1RTVkdfT1RTVkdU
YWJsZVJlbGVhc2UoKSkKKyAgICAgICAgc29mdExpbmtfT1RTVkdfT1RTVkdUYWJsZVJlbGVhc2Uo
dGFibGUpOworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09U
U1ZHVGFibGUuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjRhZTNkZjBlODE1OGMzOTY2YjM5OGZmZGYzMjc2MDY1NzgxMTE1YzkKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApAQCAtMCww
ICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICog
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8cGFsL3Nw
aS9jZi9Db3JlVGV4dFNQSS5oPgorCituYW1lc3BhY2UgUEFMIHsKKworc3RydWN0IE9UU1ZHVGFi
bGUgeworICAgIE9UU1ZHVGFibGUoKSA9IGRlZmF1bHQ7CisgICAgT1RTVkdUYWJsZShDRkRhdGFS
ZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpOworICAg
IH5PVFNWR1RhYmxlKCk7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRhYmxlIHsgbnVsbHB0ciB9Owor
fTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRl
eHRTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmgKaW5k
ZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNmY1NmExYWMxNjY2
N2QzOGE0ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQUExFX0lO
VEVSTkFMX1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgorI2luY2x1
ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYgKzgzLDggQEAgZW51bSB7CiAg
ICAga0NURm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFpdEJvbGQsCiB9OwogCit0eXBl
ZGVmIGNvbnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1RhYmxlUmVmOworCiAjZW5kaWYK
IAogV1RGX0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250
LmgKaW5kZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBiZC4uM2EyMDk0
NWYzYTczMTE3Nzc5MzA3ZGI3YjkzN2E3YWYzMDFmYzQ0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlzIGZpbGUgaXMg
cGFydCBvZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0gKiBDb3B5cmln
aHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBD
b3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAgKiBUaGlzIGxp
YnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCkBA
IC00Miw2ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDxDb3JlRm91
bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9jZi9PVFNWR1RhYmxlLmg+
CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxNCw2ICsyMTUsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRCeUFsbFNtYWxs
Q2FwcygpIGNvbnN0OwogICAgIGNvbnN0IEJpdFZlY3RvciYgZ2x5cGhzU3VwcG9ydGVkQnlQZXRp
dGVDYXBzKCkgY29uc3Q7CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRCeUFs
bFBldGl0ZUNhcHMoKSBjb25zdDsKKyAgICBib29sIGdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhD
R0dseXBoKSBjb25zdDsKICNlbmRpZgogCiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdDaGFy
YWN0ZXJTZXF1ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CkBAIC0yOTMsNiArMjk1
LDcgQEAgcHJpdmF0ZToKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4gbV9nbHlwaHNT
dXBwb3J0ZWRCeUFsbFNtYWxsQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4g
bV9nbHlwaHNTdXBwb3J0ZWRCeVBldGl0ZUNhcHM7CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRW
ZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxQZXRpdGVDYXBzOworICAgIG11dGFibGUgT3B0
aW9uYWw8UEFMOjpPVFNWR1RhYmxlPiBtX290U1ZHVGFibGU7CiAjZW5kaWYKIAogI2lmIFBMQVRG
T1JNKFdJTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKaW5kZXggYWZlMzczYjg0
MThmMzAzODlhNDVjOGYyYzIzODI4NmFlMzk0MGE2MC4uZWQwMzgxY2NjMjQ1NTgxZTdjOTBhZGVi
YTI5ODZjMGNhMGY1ZTZjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKQEAg
LTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQuaCIKICNpbmNsdWRlICJM
YXlvdXRSZWN0LmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIlJ1bnRpbWVBcHBs
aWNhdGlvbkNoZWNrcy5oIgogI2luY2x1ZGUgPHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+
CiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KIApAQCAtMTkxLDYgKzE5MiwxMSBAQCB2b2lk
IEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3Qg
Rm9udCYgZm9udCwgY29uc3QgRwogCiAgICAgQ0dDb250ZXh0UmVmIGNnQ29udGV4dCA9IGNvbnRl
eHQucGxhdGZvcm1Db250ZXh0KCk7CiAKKyAgICBpZiAoaXNJbkdQVVByb2Nlc3MoKSkgeworICAg
ICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpCisgICAgICAgICAg
ICBSRUxFQVNFX0FTU0VSVCghZm9udC5nbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoZ2x5cGhzW2ld
KSk7CisgICAgfQorCiAgICAgYm9vbCBzaG91bGRBbnRpYWxpYXMgPSB0cnVlOwogICAgIGJvb2wg
c2hvdWxkU21vb3RoRm9udHMgPSB0cnVlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAppbmRleCA5NzU1
NWJlMTI5MzA4ODVlZDE3MjYxZTAwZTNhNTk4ZDA0ZGE5ODA3Li5mZTYyNDJjYWZkZjM0ZDUzMTcy
ZTE3ZWQ3NWEyMjIxNjViZmUzZmNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKQEAgLTEsNSArMSw1
IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA2IEFsZXhleSBQcm9za3VyeWFrb3YK
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKQEAgLTQ0LDYgKzQ0LDcgQEAKIAogI2lmIFBMQVRGT1JNKENPQ09B
KQogI2luY2x1ZGUgIkxvY2FsZUNvY29hLmgiCisjaW5jbHVkZSA8cGFsL2NmL0NvcmVUZXh0U29m
dExpbmsuaD4KICNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CiAjZWxzZQogI2lu
Y2x1ZGUgPHBhbC9zcGkvd2luL0NvcmVUZXh0U1BJV2luLmg+CkBAIC03NzQsNCArNzc1LDE4IEBA
IGJvb2wgRm9udDo6aXNQcm9iYWJseU9ubHlVc2VkVG9SZW5kZXJJY29ucygpIGNvbnN0CiAgICAg
fSk7CiB9CiAKK2Jvb2wgRm9udDo6Z2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKENHR2x5cGggZ2x5
cGgpIGNvbnN0Cit7CisgICAgaWYgKCFtX290U1ZHVGFibGUpIHsKKyAgICAgICAgaWYgKGF1dG8g
dGFibGVEYXRhID0gYWRvcHRDRihDVEZvbnRDb3B5VGFibGUocGxhdGZvcm1EYXRhKCkuY3RGb250
KCksIGtDVEZvbnRUYWJsZVNWRywga0NURm9udFRhYmxlT3B0aW9uTm9PcHRpb25zKSkpCisgICAg
ICAgICAgICBtX290U1ZHVGFibGUgPSBQQUw6Ok9UU1ZHVGFibGUodGFibGVEYXRhLmdldCgpLCBm
b250TWV0cmljcygpLnVuaXRzUGVyRW0oKSwgcGxhdGZvcm1EYXRhKCkuc2l6ZSgpKTsKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpPVFNWR1RhYmxlKCk7Cisg
ICAgfQorICAgIHJldHVybiBtX290U1ZHVGFibGUudmFsdWUoKS50YWJsZQorICAgICAgICAmJiBQ
QUw6OmlzT1RTVkdGcmFtZXdvcmtBdmFpbGFibGUoKQorICAgICAgICAmJiBQQUw6OmNhbkxvYWRf
T1RTVkdfT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaCgpCisgICAgICAgICYmIFBB
TDo6c29mdExpbmtfT1RTVkdfT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaChtX290
U1ZHVGFibGUudmFsdWUoKS50YWJsZSwgZ2x5cGgpICE9IGtDRk5vdEZvdW5kOworfQorCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlz
cGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKaW5kZXggMWVjYTUwM2I1ZTQw
OGVmZjVjNzVhYTQ5MjZmYmZjYmYyOWFmZWUzZC4uMGMxYzVlMzJjODQ5Yzg2NzM1YWEzMDc3MDQ2
ODRhZTBkZTZhYzkxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNw
bGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcApAQCAtMzYyLDYgKzM2MiwzNyBA
QCB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6cmVjb3JkRHJhd0ltYWdlKENHUmVuZGVyaW5nU3Rh
dGVSZWYsIENHR1N0YXRlUmVmIGdzdGF0ZQogICAgIG1fb3duZXIudHJhbnNsYXRlKDAsIC0ocmVj
dC5zaXplLmhlaWdodCArIDIgKiByZWN0Lm9yaWdpbi55KSk7CiB9CiAKK3N0cnVjdCBHbHlwaHNB
bmRBZHZhbmNlcyB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBW
ZWN0b3I8R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFu
Y2UgaW5pdGlhbEFkdmFuY2U7Cit9Oworc3RhdGljIEdseXBoc0FuZEFkdmFuY2VzIGZpbHRlck91
dE9UU1ZHR2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGds
eXBocywgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5
cGhzKQoreworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiByZXN1bHRHbHlwaHM7CisgICAg
VmVjdG9yPEdseXBoQnVmZmVyQWR2YW5jZT4gcmVzdWx0QWR2YW5jZXM7CisgICAgR2x5cGhCdWZm
ZXJBZHZhbmNlIGluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpOworCisg
ICAgcmVzdWx0R2x5cGhzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKyAgICBy
ZXN1bHRBZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJU
KHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICAgICAg
aWYgKGZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpIHsKKyAgICAgICAg
ICAgIGlmIChyZXN1bHRHbHlwaHMuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGluaXRpYWxB
ZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKGluaXRpYWxBZHZhbmNlKSArIHNp
emUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1
bHRBZHZhbmNlcy5sYXN0KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0QWR2
YW5jZXMubGFzdCgpKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIHJlc3VsdEdseXBocy51bmNoZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAg
ICAgICAgIHJlc3VsdEFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChhZHZhbmNlc1tpXSk7CisgICAg
ICAgIH0KKyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5j
ZXMuc2l6ZSgpKTsKKyAgICB9CisKKyAgICByZXR1cm4geyBXVEZNb3ZlKHJlc3VsdEdseXBocyks
IFdURk1vdmUocmVzdWx0QWR2YW5jZXMpLCBXVEZNb3ZlKGluaXRpYWxBZHZhbmNlKSB9OworfQor
CiB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBj
b25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSog
YWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2lu
dCwgRm9udFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5
cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25z
dHJ1Y3QpIHsKQEAgLTM3MSw4ICs0MDIsMTEgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRy
YXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAog
ICAgIEFTU0VSVChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25z
dHJ1Y3Rpb246OkRlY29uc3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0v
NzAxNjY1NTI+IFJlY29yZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5
cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhm
b250LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMpOworCiAgICAgcHJlcGFyZUludGVybmFs
Q29udGV4dChmb250LCBzbW9vdGhpbmdNb2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBo
cyhtX2ludGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBz
dGFydFBvaW50LCBzbW9vdGhpbmdNb2RlKTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyht
X2ludGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlw
aHMuZ2x5cGhzLmRhdGEoKSwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2
YW5jZXMuZGF0YSgpLCBudW1HbHlwaHMsIHN0YXJ0UG9pbnQgKyBzaXplKGdseXBoc0FuZEFkdmFu
Y2VzV2l0aG91dE9UU1ZHR2x5cGhzLmluaXRpYWxBZHZhbmNlKSwgc21vb3RoaW5nTW9kZSk7CiAg
ICAgY29uY2x1ZGVJbnRlcm5hbENvbnRleHQoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420234</attachid>
            <date>2021-02-13 20:59:03 -0800</date>
            <delta_ts>2021-02-14 13:51:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210213205902.patch</filename>
            <type>text/plain</type>
            <size>24233</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uZWQxODdkN2Y5ZDQwZWViMjE5ZDRkZjAyODgwMTFm
YWNlZWI4NDc3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3Rl
bSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVk
IHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdo
aWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdl
YiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9BU1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nl
c3MgdGhhdCBpdCB3b24ndCBiZSB1c2luZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAg
IFRoaXMgaXMganVzdCBhIHRlbXBvcmFyeSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwg
d2UgY2FuIHByb3Blcmx5IHRyYW5zY29kZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAg
ICAgICAgZGlzcGxheSBsaXN0IGluZnJhc3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkg
YnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGdseXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNo
LAorICAgICAgICByaWdodCBub3csIG9ubHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2Fu
dmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3VsYXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQ
VQorICAgICAgICBwcm9jZXNzIHlldC4pCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ug
d2UgZG9uJ3Qgd2FudCB0byBhY3R1YWxseSByZXF1aXJlIHRoYXQgT1QtU1ZHIGRvZXNuJ3Qgd29y
ayBpbiBjYW52YXMuCisgICAgICAgIFdoZW4gd2UgbWFrZSBpdCB3b3JrIGFnYWluLCBpdCBkb2Vz
bid0IG1ha2Ugc2Vuc2UgdG8gaGF2ZSB0byBkZWxldGUgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRl
eHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEzICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWR1Y2Ug
cmVxdWlyZW1lbnRzIGZvciBjb2xvciB0eXBlcyB0byBvbmx5IGNvbnZlcnNpb24gdG8gdGhlaXIg
cmVmZXJlbmNlIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0
OTc1ODczZDcwZTBkMWU0OTQwMzI2Li40YTU0ZmVkN2ViOTAwODc5MWYyNjE0MTQ3MTU3ZGI3NjY5
ZjNhODE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wMi0xMyAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUg
UHJvY2Vzc10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhl
IEdQVSBwcm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0
LWxpbmtzIHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdv
cmsgdGhhdCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHA6IEFkZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgor
ICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdU
YWJsZSk6CisgICAgICAgICogcGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICog
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0Nv
cmVUZXh0U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMy
NWYwNGI1ZmRhOWU5Yjg0M2QwNjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5
NTQ4ZGEwN2NlNzQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0Uw
MDcyNUYxOCAvKiBjb25maWcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDMDlEMDU3MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJ
MUM0ODc2RDgxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8q
IExvZ2dpbmcuY3BwICovOyB9OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2lu
Zy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2
RDcxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcy
MDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVU
ZXh0U29mdExpbmsuY3BwICovOyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RT
VkdUYWJsZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQzc3QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFD
QzNBQ0U4MjJCRDdFQzUwMEYzNjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1l
dGFsU1BJLmggKi87IH07CiAJCTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0
MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQz
RjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFy
YW5jZVNQSS5oICovOyB9OwpAQCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRF
MDBDQ0VFQkQgLyogTG9nZ2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNy
b3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDNjdDRUEyMUUzMkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNv
ZnRMaW5rLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29y
ZVRleHRTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNW
R1RhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gT1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZXRhbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIw
RDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvcmVVSVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRG
NjIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE5TQXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtNTk0LDYgKzYwMCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAv
KiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5
MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VF
NzkzIC8qIENvcmVNZWRpYVNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1
RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYz
NUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1
RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAv
KiBPVFNWR1RhYmxlLmggKi8sCiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVv
VG9vbGJveFNvZnRMaW5rLmNwcCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyog
VmlkZW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAog
CQkJCTA3N0U4N0IxMjI2QTQ2MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBp
biBTb3VyY2VzICovLAogCQkJCTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRp
YVNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUw
QyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUz
MUM0NjUwMDcyNUYxOCAvKiBDcnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTExNzVCNTgxRjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRl
ci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmls
ZVNpemVGb3JtYXR0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAog
CQkJCTBDRjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9v
bGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEw
RjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4
Q0UyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
Q0Q2MTIyQ0QyNTU5QjZBQzAwRkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAq
LywKIAkJCQlDRDYxMjJEMTI1NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTFGNjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGlu
ay5tbSBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9j
Zi9Db3JlVGV4dFNvZnRMaW5rLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRl
eHRTb2Z0TGluay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTVkMDE1N2U4ZmZkOTViODg4MjBjZjdmMWZjZTFl
MTY3MmUzZDIzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2Yv
Q29yZVRleHRTb2Z0TGluay5jcHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+Cisj
aW5jbHVkZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09S
S19GT1JfU09VUkNFKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJTF9G
T1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdUYWJs
ZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBm
b250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX01BWV9GQUlMX0ZPUl9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3Vt
ZW50SW5kZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGgg
Z2x5cGgpLCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJTF9GT1Jf
U09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJl
ZiB0YWJsZSksICh0YWJsZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2Nm
L0NvcmVUZXh0U29mdExpbmsuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRT
b2Z0TGluay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNmMTNkM2NjODUwZmVmZjRhMzA4MjY2MWRkODlkYTNhNzI3
ZDVhZDkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVU
ZXh0U29mdExpbmsuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25j
ZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorI2luY2x1ZGUgPHd0Zi9T
b2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoUEFMLCBPVFNW
RykKKworU09GVF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywg
T1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxlUmVmLCAoQ0ZEYXRhUmVmIHN2Z1Rh
YmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKSwgKHN2Z1RhYmxlLCB1
bml0c1BlckVtLCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fTUFZX0ZBSUxfRk9SX0hF
QURFUihQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoLCBDRklu
ZGV4LCAoT1RTVkdUYWJsZVJlZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0YWJsZSwgZ2x5cGgp
KQorU09GVF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RT
VkdUYWJsZVJlbGVhc2UsIHZvaWQsIChPVFNWR1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjNTg3YjJi
NDRkN2YyYWUzOGMyOGUxODRjMmYwMjYzNTIzNmZhYWMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICog
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk9UU1ZHVGFibGUuaCIK
KworI2luY2x1ZGUgIkNvcmVUZXh0U29mdExpbmsuaCIKKworbmFtZXNwYWNlIFBBTCB7CisKK09U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1Bl
ckVtLCBDR0Zsb2F0IGZvbnRTaXplKQorICAgIDogdGFibGUoaXNPVFNWR0ZyYW1ld29ya0F2YWls
YWJsZSgpICYmIGNhbkxvYWRfT1RTVkdfT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKCkgPyBzb2Z0
TGlua19PVFNWR19PVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEoc3ZnVGFibGUsIHVuaXRzUGVyRW0s
IGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9CisKK09UU1ZHVGFibGU6On5PVFNWR1RhYmxlKCkK
K3sKKyAgICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpICYmIGNhbkxvYWRfT1RTVkdf
T1RTVkdUYWJsZVJlbGVhc2UoKSkKKyAgICAgICAgc29mdExpbmtfT1RTVkdfT1RTVkdUYWJsZVJl
bGVhc2UodGFibGUpOworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2NmL09UU1ZHVGFibGUuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjRhZTNkZjBlODE1OGMzOTY2YjM5OGZmZGYzMjc2MDY1NzgxMTE1YzkKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApA
QCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorCituYW1lc3BhY2UgUEFMIHsKKworc3RydWN0IE9U
U1ZHVGFibGUgeworICAgIE9UU1ZHVGFibGUoKSA9IGRlZmF1bHQ7CisgICAgT1RTVkdUYWJsZShD
RkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUp
OworICAgIH5PVFNWR1RhYmxlKCk7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRhYmxlIHsgbnVsbHB0
ciB9OworfTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2Yv
Q29yZVRleHRTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJ
LmgKaW5kZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNmY1NmEx
YWMxNjY2N2QzOGE0ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQ
UExFX0lOVEVSTkFMX1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgor
I2luY2x1ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYgKzgzLDggQEAgZW51
bSB7CiAgICAga0NURm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFpdEJvbGQsCiB9Owog
Cit0eXBlZGVmIGNvbnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1RhYmxlUmVmOworCiAj
ZW5kaWYKIAogV1RGX0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9Gb250LmgKaW5kZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBiZC4u
M2EyMDk0NWYzYTczMTE3Nzc5MzA3ZGI3YjkzN2E3YWYzMDFmYzQ0NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlzIGZp
bGUgaXMgcGFydCBvZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCkBAIC00Miw2ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDxD
b3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9jZi9PVFNWR1Rh
YmxlLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxNCw2ICsy
MTUsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0ZWRCeUFs
bFNtYWxsQ2FwcygpIGNvbnN0OwogICAgIGNvbnN0IEJpdFZlY3RvciYgZ2x5cGhzU3VwcG9ydGVk
QnlQZXRpdGVDYXBzKCkgY29uc3Q7CiAgICAgY29uc3QgQml0VmVjdG9yJiBnbHlwaHNTdXBwb3J0
ZWRCeUFsbFBldGl0ZUNhcHMoKSBjb25zdDsKKyAgICBib29sIGdseXBoSXNSZW5kZXJlZFdpdGhP
VFNWRyhDR0dseXBoKSBjb25zdDsKICNlbmRpZgogCiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5p
bmdDaGFyYWN0ZXJTZXF1ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CkBAIC0yOTMs
NiArMjk1LDcgQEAgcHJpdmF0ZToKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4gbV9n
bHlwaHNTdXBwb3J0ZWRCeUFsbFNtYWxsQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZl
Y3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRCeVBldGl0ZUNhcHM7CiAgICAgbXV0YWJsZSBPcHRpb25h
bDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxQZXRpdGVDYXBzOworICAgIG11dGFi
bGUgT3B0aW9uYWw8UEFMOjpPVFNWR1RhYmxlPiBtX290U1ZHVGFibGU7CiAjZW5kaWYKIAogI2lm
IFBMQVRGT1JNKFdJTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKaW5kZXggYWZl
MzczYjg0MThmMzAzODlhNDVjOGYyYzIzODI4NmFlMzk0MGE2MC4uZWQwMzgxY2NjMjQ1NTgxZTdj
OTBhZGViYTI5ODZjMGNhMGY1ZTZjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5j
cHAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQuaCIKICNpbmNs
dWRlICJMYXlvdXRSZWN0LmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIlJ1bnRp
bWVBcHBsaWNhdGlvbkNoZWNrcy5oIgogI2luY2x1ZGUgPHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNz
U1BJLmg+CiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KIApAQCAtMTkxLDYgKzE5MiwxMSBA
QCB2b2lkIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwg
Y29uc3QgRm9udCYgZm9udCwgY29uc3QgRwogCiAgICAgQ0dDb250ZXh0UmVmIGNnQ29udGV4dCA9
IGNvbnRleHQucGxhdGZvcm1Db250ZXh0KCk7CiAKKyAgICBpZiAoaXNJbkdQVVByb2Nlc3MoKSkg
eworICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpCisgICAg
ICAgICAgICBSRUxFQVNFX0FTU0VSVCghZm9udC5nbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoZ2x5
cGhzW2ldKSk7CisgICAgfQorCiAgICAgYm9vbCBzaG91bGRBbnRpYWxpYXMgPSB0cnVlOwogICAg
IGJvb2wgc2hvdWxkU21vb3RoRm9udHMgPSB0cnVlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAppbmRl
eCA5NzU1NWJlMTI5MzA4ODVlZDE3MjYxZTAwZTNhNTk4ZDA0ZGE5ODA3Li5iMmM0MDBkYzIzMmI4
YTdmNzA4MWVlYzlkNzcwNDQzZDZlYjUxYjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKQEAgLTEs
NSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjAgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjEgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA2IEFsZXhleSBQcm9za3Vy
eWFrb3YKICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTQ0LDYgKzQ0LDcgQEAKIAogI2lmIFBMQVRGT1JN
KENPQ09BKQogI2luY2x1ZGUgIkxvY2FsZUNvY29hLmgiCisjaW5jbHVkZSA8cGFsL2NmL0NvcmVU
ZXh0U29mdExpbmsuaD4KICNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CiAjZWxz
ZQogI2luY2x1ZGUgPHBhbC9zcGkvd2luL0NvcmVUZXh0U1BJV2luLmg+CkBAIC03NzQsNCArNzc1
LDIzIEBAIGJvb2wgRm9udDo6aXNQcm9iYWJseU9ubHlVc2VkVG9SZW5kZXJJY29ucygpIGNvbnN0
CiAgICAgfSk7CiB9CiAKK2Jvb2wgRm9udDo6Z2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKENHR2x5
cGggZ2x5cGgpIGNvbnN0Cit7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgaWYgKCFtX290U1ZH
VGFibGUpIHsKKyAgICAgICAgaWYgKGF1dG8gdGFibGVEYXRhID0gYWRvcHRDRihDVEZvbnRDb3B5
VGFibGUocGxhdGZvcm1EYXRhKCkuY3RGb250KCksIGtDVEZvbnRUYWJsZVNWRywga0NURm9udFRh
YmxlT3B0aW9uTm9PcHRpb25zKSkpCisgICAgICAgICAgICBtX290U1ZHVGFibGUgPSBQQUw6Ok9U
U1ZHVGFibGUodGFibGVEYXRhLmdldCgpLCBmb250TWV0cmljcygpLnVuaXRzUGVyRW0oKSwgcGxh
dGZvcm1EYXRhKCkuc2l6ZSgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9vdFNWR1Rh
YmxlID0gUEFMOjpPVFNWR1RhYmxlKCk7CisgICAgfQorICAgIHJldHVybiBtX290U1ZHVGFibGUu
dmFsdWUoKS50YWJsZQorICAgICAgICAmJiBQQUw6OmlzT1RTVkdGcmFtZXdvcmtBdmFpbGFibGUo
KQorICAgICAgICAmJiBQQUw6OmNhbkxvYWRfT1RTVkdfT1RTVkdUYWJsZUdldERvY3VtZW50SW5k
ZXhGb3JHbHlwaCgpCisgICAgICAgICYmIFBBTDo6c29mdExpbmtfT1RTVkdfT1RTVkdUYWJsZUdl
dERvY3VtZW50SW5kZXhGb3JHbHlwaChtX290U1ZHVGFibGUudmFsdWUoKS50YWJsZSwgZ2x5cGgp
ICE9IGtDRk5vdEZvdW5kOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZ2x5cGgpOworICAgIHJl
dHVybiBmYWxzZTsKKyNlbmRpZgorfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJD
b3JlVGV4dC5jcHAKaW5kZXggMWVjYTUwM2I1ZTQwOGVmZjVjNzVhYTQ5MjZmYmZjYmYyOWFmZWUz
ZC4uMGMxYzVlMzJjODQ5Yzg2NzM1YWEzMDc3MDQ2ODRhZTBkZTZhYzkxNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0
RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNv
cmVUZXh0LmNwcApAQCAtMzYyLDYgKzM2MiwzNyBAQCB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6
cmVjb3JkRHJhd0ltYWdlKENHUmVuZGVyaW5nU3RhdGVSZWYsIENHR1N0YXRlUmVmIGdzdGF0ZQog
ICAgIG1fb3duZXIudHJhbnNsYXRlKDAsIC0ocmVjdC5zaXplLmhlaWdodCArIDIgKiByZWN0Lm9y
aWdpbi55KSk7CiB9CiAKK3N0cnVjdCBHbHlwaHNBbmRBZHZhbmNlcyB7CisgICAgVmVjdG9yPEds
eXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJBZHZhbmNlPiBh
ZHZhbmNlczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5pdGlhbEFkdmFuY2U7Cit9Oworc3Rh
dGljIEdseXBoc0FuZEFkdmFuY2VzIGZpbHRlck91dE9UU1ZHR2x5cGhzKGNvbnN0IEZvbnQmIGZv
bnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3QgR2x5cGhCdWZmZXJBZHZh
bmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzKQoreworICAgIFZlY3RvcjxHbHlwaEJ1
ZmZlckdseXBoPiByZXN1bHRHbHlwaHM7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyQWR2YW5jZT4g
cmVzdWx0QWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJBZHZhbmNlIGluaXRpYWxBZHZhbmNlID0g
bWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpOworCisgICAgcmVzdWx0R2x5cGhzLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKyAgICByZXN1bHRBZHZhbmNlcy5yZXNlcnZlSW5pdGlh
bENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVt
R2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVz
dWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICAgICAgaWYgKGZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0
aE9UU1ZHKGdseXBoc1tpXSkpIHsKKyAgICAgICAgICAgIGlmIChyZXN1bHRHbHlwaHMuaXNFbXB0
eSgpKQorICAgICAgICAgICAgICAgIGluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2
YW5jZShzaXplKGluaXRpYWxBZHZhbmNlKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHRBZHZhbmNlcy5sYXN0KCkgPSBtYWtlR2x5
cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0QWR2YW5jZXMubGFzdCgpKSArIHNpemUoYWR2YW5j
ZXNbaV0pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJlc3VsdEdseXBocy51bmNo
ZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAgICAgICAgIHJlc3VsdEFkdmFuY2VzLnVuY2hl
Y2tlZEFwcGVuZChhZHZhbmNlc1tpXSk7CisgICAgICAgIH0KKyAgICAgICAgQVNTRVJUKHJlc3Vs
dEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICB9CisKKyAgICBy
ZXR1cm4geyBXVEZNb3ZlKHJlc3VsdEdseXBocyksIFdURk1vdmUocmVzdWx0QWR2YW5jZXMpLCBX
VEZNb3ZlKGluaXRpYWxBZHZhbmNlKSB9OworfQorCiB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6
ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlw
aHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBo
cywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2ludCwgRm9udFNtb290aGluZ01vZGUgc21vb3Ro
aW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0ds
eXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25zdHJ1Y3QpIHsKQEAgLTM3MSw4ICs0MDIsMTEg
QEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwg
Y29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAogICAgIEFTU0VSVChtX2RyYXdHbHlwaHNEZWNv
bnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRlY29uc3RydWN0KTsKIAor
ICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1NTI+IFJlY29yZCBPVFNWRyBnbHlw
aHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdH
bHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1H
bHlwaHMpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4dChmb250LCBzbW9vdGhpbmdNb2Rl
KTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9udCwg
Z2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBvaW50LCBzbW9vdGhpbmdNb2RlKTsK
KyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9udCwgZ2x5
cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzLmRhdGEoKSwgZ2x5cGhzQW5k
QWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMuZGF0YSgpLCBudW1HbHlwaHMsIHN0
YXJ0UG9pbnQgKyBzaXplKGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmluaXRp
YWxBZHZhbmNlKSwgc21vb3RoaW5nTW9kZSk7CiAgICAgY29uY2x1ZGVJbnRlcm5hbENvbnRleHQo
KTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420251</attachid>
            <date>2021-02-14 13:51:31 -0800</date>
            <delta_ts>2021-02-14 14:41:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210214135129.patch</filename>
            <type>text/plain</type>
            <size>24396</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uZWQxODdkN2Y5ZDQwZWViMjE5ZDRkZjAyODgwMTFm
YWNlZWI4NDc3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3Rl
bSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVk
IHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdo
aWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdl
YiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9BU1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nl
c3MgdGhhdCBpdCB3b24ndCBiZSB1c2luZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAg
IFRoaXMgaXMganVzdCBhIHRlbXBvcmFyeSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwg
d2UgY2FuIHByb3Blcmx5IHRyYW5zY29kZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAg
ICAgICAgZGlzcGxheSBsaXN0IGluZnJhc3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkg
YnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGdseXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNo
LAorICAgICAgICByaWdodCBub3csIG9ubHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2Fu
dmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3VsYXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQ
VQorICAgICAgICBwcm9jZXNzIHlldC4pCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ug
d2UgZG9uJ3Qgd2FudCB0byBhY3R1YWxseSByZXF1aXJlIHRoYXQgT1QtU1ZHIGRvZXNuJ3Qgd29y
ayBpbiBjYW52YXMuCisgICAgICAgIFdoZW4gd2UgbWFrZSBpdCB3b3JrIGFnYWluLCBpdCBkb2Vz
bid0IG1ha2Ugc2Vuc2UgdG8gaGF2ZSB0byBkZWxldGUgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRl
eHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEzICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWR1Y2Ug
cmVxdWlyZW1lbnRzIGZvciBjb2xvciB0eXBlcyB0byBvbmx5IGNvbnZlcnNpb24gdG8gdGhlaXIg
cmVmZXJlbmNlIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0
OTc1ODczZDcwZTBkMWU0OTQwMzI2Li40YTU0ZmVkN2ViOTAwODc5MWYyNjE0MTQ3MTU3ZGI3NjY5
ZjNhODE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wMi0xMyAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUg
UHJvY2Vzc10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhl
IEdQVSBwcm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0
LWxpbmtzIHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdv
cmsgdGhhdCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHA6IEFkZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgor
ICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdU
YWJsZSk6CisgICAgICAgICogcGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICog
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0Nv
cmVUZXh0U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMy
NWYwNGI1ZmRhOWU5Yjg0M2QwNjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5
NTQ4ZGEwN2NlNzQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0Uw
MDcyNUYxOCAvKiBjb25maWcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDMDlEMDU3MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJ
MUM0ODc2RDgxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8q
IExvZ2dpbmcuY3BwICovOyB9OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2lu
Zy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2
RDcxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcy
MDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVU
ZXh0U29mdExpbmsuY3BwICovOyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RT
VkdUYWJsZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQzc3QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFD
QzNBQ0U4MjJCRDdFQzUwMEYzNjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1l
dGFsU1BJLmggKi87IH07CiAJCTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0
MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQz
RjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFy
YW5jZVNQSS5oICovOyB9OwpAQCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRF
MDBDQ0VFQkQgLyogTG9nZ2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNy
b3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDNjdDRUEyMUUzMkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNv
ZnRMaW5rLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29y
ZVRleHRTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNW
R1RhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gT1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZXRhbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIw
RDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvcmVVSVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRG
NjIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE5TQXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtNTk0LDYgKzYwMCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAv
KiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5
MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VF
NzkzIC8qIENvcmVNZWRpYVNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1
RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYz
NUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1
RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAv
KiBPVFNWR1RhYmxlLmggKi8sCiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVv
VG9vbGJveFNvZnRMaW5rLmNwcCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyog
VmlkZW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAog
CQkJCTA3N0U4N0IxMjI2QTQ2MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBp
biBTb3VyY2VzICovLAogCQkJCTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRp
YVNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUw
QyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUz
MUM0NjUwMDcyNUYxOCAvKiBDcnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTExNzVCNTgxRjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRl
ci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmls
ZVNpemVGb3JtYXR0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAog
CQkJCTBDRjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9v
bGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEw
RjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4
Q0UyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
Q0Q2MTIyQ0QyNTU5QjZBQzAwRkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAq
LywKIAkJCQlDRDYxMjJEMTI1NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTFGNjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGlu
ay5tbSBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9j
Zi9Db3JlVGV4dFNvZnRMaW5rLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRl
eHRTb2Z0TGluay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTVkMDE1N2U4ZmZkOTViODg4MjBjZjdmMWZjZTFl
MTY3MmUzZDIzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2Yv
Q29yZVRleHRTb2Z0TGluay5jcHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+Cisj
aW5jbHVkZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09S
S19GT1JfU09VUkNFKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJTF9G
T1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdUYWJs
ZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBm
b250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX01BWV9GQUlMX0ZPUl9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3Vt
ZW50SW5kZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGgg
Z2x5cGgpLCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJTF9GT1Jf
U09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJl
ZiB0YWJsZSksICh0YWJsZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2Nm
L0NvcmVUZXh0U29mdExpbmsuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRT
b2Z0TGluay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNmMTNkM2NjODUwZmVmZjRhMzA4MjY2MWRkODlkYTNhNzI3
ZDVhZDkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVU
ZXh0U29mdExpbmsuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25j
ZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorI2luY2x1ZGUgPHd0Zi9T
b2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoUEFMLCBPVFNW
RykKKworU09GVF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywg
T1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxlUmVmLCAoQ0ZEYXRhUmVmIHN2Z1Rh
YmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKSwgKHN2Z1RhYmxlLCB1
bml0c1BlckVtLCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fTUFZX0ZBSUxfRk9SX0hF
QURFUihQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoLCBDRklu
ZGV4LCAoT1RTVkdUYWJsZVJlZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0YWJsZSwgZ2x5cGgp
KQorU09GVF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RT
VkdUYWJsZVJlbGVhc2UsIHZvaWQsIChPVFNWR1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjNTg3YjJi
NDRkN2YyYWUzOGMyOGUxODRjMmYwMjYzNTIzNmZhYWMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICog
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk9UU1ZHVGFibGUuaCIK
KworI2luY2x1ZGUgIkNvcmVUZXh0U29mdExpbmsuaCIKKworbmFtZXNwYWNlIFBBTCB7CisKK09U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1Bl
ckVtLCBDR0Zsb2F0IGZvbnRTaXplKQorICAgIDogdGFibGUoaXNPVFNWR0ZyYW1ld29ya0F2YWls
YWJsZSgpICYmIGNhbkxvYWRfT1RTVkdfT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKCkgPyBzb2Z0
TGlua19PVFNWR19PVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEoc3ZnVGFibGUsIHVuaXRzUGVyRW0s
IGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9CisKK09UU1ZHVGFibGU6On5PVFNWR1RhYmxlKCkK
K3sKKyAgICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpICYmIGNhbkxvYWRfT1RTVkdf
T1RTVkdUYWJsZVJlbGVhc2UoKSkKKyAgICAgICAgc29mdExpbmtfT1RTVkdfT1RTVkdUYWJsZVJl
bGVhc2UodGFibGUpOworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2NmL09UU1ZHVGFibGUuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjRhZTNkZjBlODE1OGMzOTY2YjM5OGZmZGYzMjc2MDY1NzgxMTE1YzkKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApA
QCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorCituYW1lc3BhY2UgUEFMIHsKKworc3RydWN0IE9U
U1ZHVGFibGUgeworICAgIE9UU1ZHVGFibGUoKSA9IGRlZmF1bHQ7CisgICAgT1RTVkdUYWJsZShD
RkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUp
OworICAgIH5PVFNWR1RhYmxlKCk7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRhYmxlIHsgbnVsbHB0
ciB9OworfTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2Yv
Q29yZVRleHRTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJ
LmgKaW5kZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNmY1NmEx
YWMxNjY2N2QzOGE0ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQ
UExFX0lOVEVSTkFMX1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgor
I2luY2x1ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYgKzgzLDggQEAgZW51
bSB7CiAgICAga0NURm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFpdEJvbGQsCiB9Owog
Cit0eXBlZGVmIGNvbnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1RhYmxlUmVmOworCiAj
ZW5kaWYKIAogV1RGX0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9Gb250LmgKaW5kZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBiZC4u
ZTc1YmRmNGZlYjg0MTEwNWYzNDY3MjA5ZWQ0NGQ4OGI4ZjFkMTA1MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlzIGZp
bGUgaXMgcGFydCBvZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCkBAIC00Miw2ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDxD
b3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9jZi9PVFNWR1Rh
YmxlLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxOSw2ICsy
MjAsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdDaGFyYWN0ZXJTZXF1
ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CiAgICAgdm9pZCBhcHBseVRyYW5zZm9y
bXMoR2x5cGhCdWZmZXImLCB1bnNpZ25lZCBiZWdpbm5pbmdHbHlwaEluZGV4LCB1bnNpZ25lZCBi
ZWdpbm5pbmdTdHJpbmdJbmRleCwgYm9vbCBlbmFibGVLZXJuaW5nLCBib29sIHJlcXVpcmVzU2hh
cGluZywgY29uc3QgQXRvbVN0cmluZyYgbG9jYWxlLCBTdHJpbmdWaWV3IHRleHQsIFRleHREaXJl
Y3Rpb24pIGNvbnN0OwogCisgICAgYm9vbCBnbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoQ0dHbHlw
aCkgY29uc3Q7CisKICNpZiBQTEFURk9STShXSU4pCiAgICAgU0NSSVBUX0ZPTlRQUk9QRVJUSUVT
KiBzY3JpcHRGb250UHJvcGVydGllcygpIGNvbnN0OwogICAgIFNDUklQVF9DQUNIRSogc2NyaXB0
Q2FjaGUoKSBjb25zdCB7IHJldHVybiAmbV9zY3JpcHRDYWNoZTsgfQpAQCAtMjkzLDYgKzI5Niw3
IEBAIHByaXZhdGU6CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3Vw
cG9ydGVkQnlBbGxTbWFsbENhcHM7CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1f
Z2x5cGhzU3VwcG9ydGVkQnlQZXRpdGVDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVj
dG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5QWxsUGV0aXRlQ2FwczsKKyAgICBtdXRhYmxlIE9wdGlv
bmFsPFBBTDo6T1RTVkdUYWJsZT4gbV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQTEFURk9S
TShXSU4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3Jl
dGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3M2I4NDE4
ZjMwMzg5YTQ1YzhmMmMyMzgyODZhZTM5NDBhNjAuLmVkMDM4MWNjYzI0NTU4MWU3YzkwYWRlYmEy
OTg2YzBjYTBmNWU2YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCkBAIC0z
MCw2ICszMCw3IEBACiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiTGF5
b3V0UmVjdC5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1lQXBwbGlj
YXRpb25DaGVja3MuaCIKICNpbmNsdWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgog
I2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsMTEgQEAgdm9pZCBG
b250Q2FzY2FkZTo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZv
bnQmIGZvbnQsIGNvbnN0IEcKIAogICAgIENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBjb250ZXh0
LnBsYXRmb3JtQ29udGV4dCgpOwogCisgICAgaWYgKGlzSW5HUFVQcm9jZXNzKCkpIHsKKyAgICAg
ICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKQorICAgICAgICAgICAg
UkVMRUFTRV9BU1NFUlQoIWZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkp
OworICAgIH0KKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0gdHJ1ZTsKICAgICBib29sIHNo
b3VsZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKaW5kZXggOTc1NTVi
ZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uYjJjNDAwZGMyMzJiOGE3ZjcwODFl
ZWM5ZDc3MDQ0M2Q2ZWI1MWI5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292CiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CkBAIC00NCw2ICs0NCw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkK
ICNpbmNsdWRlICJMb2NhbGVDb2NvYS5oIgorI2luY2x1ZGUgPHBhbC9jZi9Db3JlVGV4dFNvZnRM
aW5rLmg+CiAjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgogI2Vsc2UKICNpbmNs
dWRlIDxwYWwvc3BpL3dpbi9Db3JlVGV4dFNQSVdpbi5oPgpAQCAtNzc0LDQgKzc3NSwyMyBAQCBi
b29sIEZvbnQ6OmlzUHJvYmFibHlPbmx5VXNlZFRvUmVuZGVySWNvbnMoKSBjb25zdAogICAgIH0p
OwogfQogCitib29sIEZvbnQ6OmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhDR0dseXBoIGdseXBo
KSBjb25zdAoreworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGlmICghbV9vdFNWR1RhYmxlKSB7
CisgICAgICAgIGlmIChhdXRvIHRhYmxlRGF0YSA9IGFkb3B0Q0YoQ1RGb250Q29weVRhYmxlKHBs
YXRmb3JtRGF0YSgpLmN0Rm9udCgpLCBrQ1RGb250VGFibGVTVkcsIGtDVEZvbnRUYWJsZU9wdGlv
bk5vT3B0aW9ucykpKQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpPVFNWR1RhYmxl
KHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0c1BlckVtKCksIHBsYXRmb3JtRGF0
YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fb3RTVkdUYWJsZSA9IFBB
TDo6T1RTVkdUYWJsZSgpOworICAgIH0KKyAgICByZXR1cm4gbV9vdFNWR1RhYmxlLnZhbHVlKCku
dGFibGUKKyAgICAgICAgJiYgUEFMOjppc09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkKKyAgICAg
ICAgJiYgUEFMOjpjYW5Mb2FkX09UU1ZHX09UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5
cGgoKQorICAgICAgICAmJiBQQUw6OnNvZnRMaW5rX09UU1ZHX09UU1ZHVGFibGVHZXREb2N1bWVu
dEluZGV4Rm9yR2x5cGgobV9vdFNWR1RhYmxlLnZhbHVlKCkudGFibGUsIGdseXBoKSAhPSBrQ0ZO
b3RGb3VuZDsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGdseXBoKTsKKyAgICByZXR1cm4gZmFs
c2U7CisjZW5kaWYKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJh
d0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQu
Y3BwCmluZGV4IDFlY2E1MDNiNWU0MDhlZmY1Yzc1YWE0OTI2ZmJmY2JmMjlhZmVlM2QuLjBjMWM1
ZTMyYzg0OWM4NjczNWFhMzA3NzA0Njg0YWUwZGU2YWM5MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlw
aHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5j
cHAKQEAgLTM2Miw2ICszNjIsMzcgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OnJlY29yZERy
YXdJbWFnZShDR1JlbmRlcmluZ1N0YXRlUmVmLCBDR0dTdGF0ZVJlZiBnc3RhdGUKICAgICBtX293
bmVyLnRyYW5zbGF0ZSgwLCAtKHJlY3Quc2l6ZS5oZWlnaHQgKyAyICogcmVjdC5vcmlnaW4ueSkp
OwogfQogCitzdHJ1Y3QgR2x5cGhzQW5kQWR2YW5jZXMgeworICAgIFZlY3RvcjxHbHlwaEJ1ZmZl
ckdseXBoPiBnbHlwaHM7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyQWR2YW5jZT4gYWR2YW5jZXM7
CisgICAgR2x5cGhCdWZmZXJBZHZhbmNlIGluaXRpYWxBZHZhbmNlOworfTsKK3N0YXRpYyBHbHlw
aHNBbmRBZHZhbmNlcyBmaWx0ZXJPdXRPVFNWR0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25z
dCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2
YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocykKK3sKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlw
aD4gcmVzdWx0R2x5cGhzOworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckFkdmFuY2U+IHJlc3VsdEFk
dmFuY2VzOworICAgIEdseXBoQnVmZmVyQWR2YW5jZSBpbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlw
aEJ1ZmZlckFkdmFuY2UoKTsKKworICAgIHJlc3VsdEdseXBocy5yZXNlcnZlSW5pdGlhbENhcGFj
aXR5KG51bUdseXBocyk7CisgICAgcmVzdWx0QWR2YW5jZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0
eShudW1HbHlwaHMpOworCisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bUdseXBoczsg
KytpKSB7CisgICAgICAgIEFTU0VSVChyZXN1bHRHbHlwaHMuc2l6ZSgpID09IHJlc3VsdEFkdmFu
Y2VzLnNpemUoKSk7CisgICAgICAgIGlmIChmb250LmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhn
bHlwaHNbaV0pKSB7CisgICAgICAgICAgICBpZiAocmVzdWx0R2x5cGhzLmlzRW1wdHkoKSkKKyAg
ICAgICAgICAgICAgICBpbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2Uoc2l6
ZShpbml0aWFsQWR2YW5jZSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgcmVzdWx0QWR2YW5jZXMubGFzdCgpID0gbWFrZUdseXBoQnVmZmVy
QWR2YW5jZShzaXplKHJlc3VsdEFkdmFuY2VzLmxhc3QoKSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICByZXN1bHRHbHlwaHMudW5jaGVja2VkQXBw
ZW5kKGdseXBoc1tpXSk7CisgICAgICAgICAgICByZXN1bHRBZHZhbmNlcy51bmNoZWNrZWRBcHBl
bmQoYWR2YW5jZXNbaV0pOworICAgICAgICB9CisgICAgICAgIEFTU0VSVChyZXN1bHRHbHlwaHMu
c2l6ZSgpID09IHJlc3VsdEFkdmFuY2VzLnNpemUoKSk7CisgICAgfQorCisgICAgcmV0dXJuIHsg
V1RGTW92ZShyZXN1bHRHbHlwaHMpLCBXVEZNb3ZlKHJlc3VsdEFkdmFuY2VzKSwgV1RGTW92ZShp
bml0aWFsQWR2YW5jZSkgfTsKK30KKwogdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlw
aHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzLCBjb25z
dCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0
IEZsb2F0UG9pbnQmIHN0YXJ0UG9pbnQsIEZvbnRTbW9vdGhpbmdNb2RlIHNtb290aGluZ01vZGUp
CiB7CiAgICAgaWYgKG1fZHJhd0dseXBoc0RlY29uc3RydWN0aW9uID09IERyYXdHbHlwaHNEZWNv
bnN0cnVjdGlvbjo6RG9udERlY29uc3RydWN0KSB7CkBAIC0zNzEsOCArNDAyLDExIEBAIHZvaWQg
RHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEds
eXBoQnVmZmVyR2x5cGgqIGdsCiAKICAgICBBU1NFUlQobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rp
b24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEZWNvbnN0cnVjdCk7CiAKKyAgICAvLyBG
SVhNRTogPHJkYXI6Ly9wcm9ibGVtLzcwMTY2NTUyPiBSZWNvcmQgT1RTVkcgZ2x5cGhzLgorICAg
IEdseXBoc0FuZEFkdmFuY2VzIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzID0g
ZmlsdGVyT3V0T1RTVkdHbHlwaHMoZm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzKTsK
KwogICAgIHByZXBhcmVJbnRlcm5hbENvbnRleHQoZm9udCwgc21vb3RoaW5nTW9kZSk7Ci0gICAg
Rm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRleHQsIGZvbnQsIGdseXBocywg
YWR2YW5jZXMsIG51bUdseXBocywgc3RhcnRQb2ludCwgc21vb3RoaW5nTW9kZSk7CisgICAgRm9u
dENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRleHQsIGZvbnQsIGdseXBoc0FuZEFk
dmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocy5kYXRhKCksIGdseXBoc0FuZEFkdmFuY2Vz
V2l0aG91dE9UU1ZHR2x5cGhzLmFkdmFuY2VzLmRhdGEoKSwgbnVtR2x5cGhzLCBzdGFydFBvaW50
ICsgc2l6ZShnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5pbml0aWFsQWR2YW5j
ZSksIHNtb290aGluZ01vZGUpOwogICAgIGNvbmNsdWRlSW50ZXJuYWxDb250ZXh0KCk7CiB9CiAK
</data>
<flag name="commit-queue"
          id="438707"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420254</attachid>
            <date>2021-02-14 14:17:24 -0800</date>
            <delta_ts>2021-02-14 17:18:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210214141723.patch</filename>
            <type>text/plain</type>
            <size>24392</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uZWQxODdkN2Y5ZDQwZWViMjE5ZDRkZjAyODgwMTFm
YWNlZWI4NDc3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3Rl
bSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVk
IHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdo
aWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdl
YiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9BU1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nl
c3MgdGhhdCBpdCB3b24ndCBiZSB1c2luZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAg
IFRoaXMgaXMganVzdCBhIHRlbXBvcmFyeSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwg
d2UgY2FuIHByb3Blcmx5IHRyYW5zY29kZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAg
ICAgICAgZGlzcGxheSBsaXN0IGluZnJhc3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkg
YnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGdseXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNo
LAorICAgICAgICByaWdodCBub3csIG9ubHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2Fu
dmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3VsYXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQ
VQorICAgICAgICBwcm9jZXNzIHlldC4pCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ug
d2UgZG9uJ3Qgd2FudCB0byBhY3R1YWxseSByZXF1aXJlIHRoYXQgT1QtU1ZHIGRvZXNuJ3Qgd29y
ayBpbiBjYW52YXMuCisgICAgICAgIFdoZW4gd2UgbWFrZSBpdCB3b3JrIGFnYWluLCBpdCBkb2Vz
bid0IG1ha2Ugc2Vuc2UgdG8gaGF2ZSB0byBkZWxldGUgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRl
eHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEzICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWR1Y2Ug
cmVxdWlyZW1lbnRzIGZvciBjb2xvciB0eXBlcyB0byBvbmx5IGNvbnZlcnNpb24gdG8gdGhlaXIg
cmVmZXJlbmNlIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0
OTc1ODczZDcwZTBkMWU0OTQwMzI2Li40YTU0ZmVkN2ViOTAwODc5MWYyNjE0MTQ3MTU3ZGI3NjY5
ZjNhODE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wMi0xMyAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUg
UHJvY2Vzc10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhl
IEdQVSBwcm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0
LWxpbmtzIHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdv
cmsgdGhhdCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHA6IEFkZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgor
ICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdU
YWJsZSk6CisgICAgICAgICogcGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICog
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0Nv
cmVUZXh0U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMy
NWYwNGI1ZmRhOWU5Yjg0M2QwNjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5
NTQ4ZGEwN2NlNzQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0Uw
MDcyNUYxOCAvKiBjb25maWcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDMDlEMDU3MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJ
MUM0ODc2RDgxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8q
IExvZ2dpbmcuY3BwICovOyB9OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2lu
Zy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2
RDcxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcy
MDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVU
ZXh0U29mdExpbmsuY3BwICovOyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RT
VkdUYWJsZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQzc3QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFD
QzNBQ0U4MjJCRDdFQzUwMEYzNjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1l
dGFsU1BJLmggKi87IH07CiAJCTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0
MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQz
RjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFy
YW5jZVNQSS5oICovOyB9OwpAQCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRF
MDBDQ0VFQkQgLyogTG9nZ2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNy
b3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDNjdDRUEyMUUzMkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNv
ZnRMaW5rLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29y
ZVRleHRTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNW
R1RhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gT1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZXRhbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIw
RDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvcmVVSVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRG
NjIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE5TQXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtNTk0LDYgKzYwMCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAv
KiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5
MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VF
NzkzIC8qIENvcmVNZWRpYVNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1
RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYz
NUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1
RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAv
KiBPVFNWR1RhYmxlLmggKi8sCiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVv
VG9vbGJveFNvZnRMaW5rLmNwcCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyog
VmlkZW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAog
CQkJCTA3N0U4N0IxMjI2QTQ2MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBp
biBTb3VyY2VzICovLAogCQkJCTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRp
YVNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUw
QyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUz
MUM0NjUwMDcyNUYxOCAvKiBDcnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTExNzVCNTgxRjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRl
ci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmls
ZVNpemVGb3JtYXR0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAog
CQkJCTBDRjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9v
bGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEw
RjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4
Q0UyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
Q0Q2MTIyQ0QyNTU5QjZBQzAwRkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAq
LywKIAkJCQlDRDYxMjJEMTI1NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTFGNjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGlu
ay5tbSBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9j
Zi9Db3JlVGV4dFNvZnRMaW5rLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRl
eHRTb2Z0TGluay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTVkMDE1N2U4ZmZkOTViODg4MjBjZjdmMWZjZTFl
MTY3MmUzZDIzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2Yv
Q29yZVRleHRTb2Z0TGluay5jcHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+Cisj
aW5jbHVkZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09S
S19GT1JfU09VUkNFKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJTF9G
T1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdUYWJs
ZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBm
b250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX01BWV9GQUlMX0ZPUl9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3Vt
ZW50SW5kZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGgg
Z2x5cGgpLCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9NQVlfRkFJTF9GT1Jf
U09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJl
ZiB0YWJsZSksICh0YWJsZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2Nm
L0NvcmVUZXh0U29mdExpbmsuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRT
b2Z0TGluay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNmMTNkM2NjODUwZmVmZjRhMzA4MjY2MWRkODlkYTNhNzI3
ZDVhZDkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVU
ZXh0U29mdExpbmsuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25j
ZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorI2luY2x1ZGUgPHd0Zi9T
b2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoUEFMLCBPVFNW
RykKKworU09GVF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywg
T1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxlUmVmLCAoQ0ZEYXRhUmVmIHN2Z1Rh
YmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKSwgKHN2Z1RhYmxlLCB1
bml0c1BlckVtLCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fTUFZX0ZBSUxfRk9SX0hF
QURFUihQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoLCBDRklu
ZGV4LCAoT1RTVkdUYWJsZVJlZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0YWJsZSwgZ2x5cGgp
KQorU09GVF9MSU5LX0ZVTkNUSU9OX01BWV9GQUlMX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RT
VkdUYWJsZVJlbGVhc2UsIHZvaWQsIChPVFNWR1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjNTg3YjJi
NDRkN2YyYWUzOGMyOGUxODRjMmYwMjYzNTIzNmZhYWMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICog
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk9UU1ZHVGFibGUuaCIK
KworI2luY2x1ZGUgIkNvcmVUZXh0U29mdExpbmsuaCIKKworbmFtZXNwYWNlIFBBTCB7CisKK09U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1Bl
ckVtLCBDR0Zsb2F0IGZvbnRTaXplKQorICAgIDogdGFibGUoaXNPVFNWR0ZyYW1ld29ya0F2YWls
YWJsZSgpICYmIGNhbkxvYWRfT1RTVkdfT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKCkgPyBzb2Z0
TGlua19PVFNWR19PVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEoc3ZnVGFibGUsIHVuaXRzUGVyRW0s
IGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9CisKK09UU1ZHVGFibGU6On5PVFNWR1RhYmxlKCkK
K3sKKyAgICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpICYmIGNhbkxvYWRfT1RTVkdf
T1RTVkdUYWJsZVJlbGVhc2UoKSkKKyAgICAgICAgc29mdExpbmtfT1RTVkdfT1RTVkdUYWJsZVJl
bGVhc2UodGFibGUpOworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2NmL09UU1ZHVGFibGUuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjRhZTNkZjBlODE1OGMzOTY2YjM5OGZmZGYzMjc2MDY1NzgxMTE1YzkKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApA
QCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorCituYW1lc3BhY2UgUEFMIHsKKworc3RydWN0IE9U
U1ZHVGFibGUgeworICAgIE9UU1ZHVGFibGUoKSA9IGRlZmF1bHQ7CisgICAgT1RTVkdUYWJsZShD
RkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUp
OworICAgIH5PVFNWR1RhYmxlKCk7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRhYmxlIHsgbnVsbHB0
ciB9OworfTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2Yv
Q29yZVRleHRTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJ
LmgKaW5kZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNmY1NmEx
YWMxNjY2N2QzOGE0ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQ
UExFX0lOVEVSTkFMX1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgor
I2luY2x1ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYgKzgzLDggQEAgZW51
bSB7CiAgICAga0NURm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFpdEJvbGQsCiB9Owog
Cit0eXBlZGVmIGNvbnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1RhYmxlUmVmOworCiAj
ZW5kaWYKIAogV1RGX0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9Gb250LmgKaW5kZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBiZC4u
M2Q0Y2U2OTkyMDYyMmQ0Yzk0NzZjYTYxNmYzZDUwNjlhMmExZDUyMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlzIGZp
bGUgaXMgcGFydCBvZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCkBAIC00Miw2ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDxD
b3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9jZi9PVFNWR1Rh
YmxlLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxOSw2ICsy
MjAsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdDaGFyYWN0ZXJTZXF1
ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CiAgICAgdm9pZCBhcHBseVRyYW5zZm9y
bXMoR2x5cGhCdWZmZXImLCB1bnNpZ25lZCBiZWdpbm5pbmdHbHlwaEluZGV4LCB1bnNpZ25lZCBi
ZWdpbm5pbmdTdHJpbmdJbmRleCwgYm9vbCBlbmFibGVLZXJuaW5nLCBib29sIHJlcXVpcmVzU2hh
cGluZywgY29uc3QgQXRvbVN0cmluZyYgbG9jYWxlLCBTdHJpbmdWaWV3IHRleHQsIFRleHREaXJl
Y3Rpb24pIGNvbnN0OwogCisgICAgYm9vbCBnbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoR2x5cGgp
IGNvbnN0OworCiAjaWYgUExBVEZPUk0oV0lOKQogICAgIFNDUklQVF9GT05UUFJPUEVSVElFUyog
c2NyaXB0Rm9udFByb3BlcnRpZXMoKSBjb25zdDsKICAgICBTQ1JJUFRfQ0FDSEUqIHNjcmlwdENh
Y2hlKCkgY29uc3QgeyByZXR1cm4gJm1fc2NyaXB0Q2FjaGU7IH0KQEAgLTI5Myw2ICsyOTYsNyBA
QCBwcml2YXRlOgogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBv
cnRlZEJ5QWxsU21hbGxDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2ds
eXBoc1N1cHBvcnRlZEJ5UGV0aXRlQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rv
cj4gbV9nbHlwaHNTdXBwb3J0ZWRCeUFsbFBldGl0ZUNhcHM7CisgICAgbXV0YWJsZSBPcHRpb25h
bDxQQUw6Ok9UU1ZHVGFibGU+IG1fb3RTVkdUYWJsZTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0o
V0lOKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRl
eHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAppbmRleCBhZmUzNzNiODQxOGYz
MDM4OWE0NWM4ZjJjMjM4Mjg2YWUzOTQwYTYwLi5lZDAzODFjY2MyNDU1ODFlN2M5MGFkZWJhMjk4
NmMwY2EwZjVlNmM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcApAQCAtMzAs
NiArMzAsNyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkxheW91
dFJlY3QuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiUnVudGltZUFwcGxpY2F0
aW9uQ2hlY2tzLmgiCiAjaW5jbHVkZSA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4KICNp
bmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgogCkBAIC0xOTEsNiArMTkyLDExIEBAIHZvaWQgRm9u
dENhc2NhZGU6OmRyYXdHbHlwaHMoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGb250
JiBmb250LCBjb25zdCBHCiAKICAgICBDR0NvbnRleHRSZWYgY2dDb250ZXh0ID0gY29udGV4dC5w
bGF0Zm9ybUNvbnRleHQoKTsKIAorICAgIGlmIChpc0luR1BVUHJvY2VzcygpKSB7CisgICAgICAg
IGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1HbHlwaHM7ICsraSkKKyAgICAgICAgICAgIFJF
TEVBU0VfQVNTRVJUKCFmb250LmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhnbHlwaHNbaV0pKTsK
KyAgICB9CisKICAgICBib29sIHNob3VsZEFudGlhbGlhcyA9IHRydWU7CiAgICAgYm9vbCBzaG91
bGRTbW9vdGhGb250cyA9IHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCmluZGV4IDk3NTU1YmUx
MjkzMDg4NWVkMTcyNjFlMDBlM2E1OThkMDRkYTk4MDcuLjNiMmFlYTMwODIzOTg4ZTFiMjM0MWRi
M2EyNGM3NDBlOTZiMGZiNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcApAQCAtMSw1ICsxLDUgQEAK
IC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYgQWxleGV5IFByb3NrdXJ5YWtvdgogICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dApAQCAtNDQsNiArNDQsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAj
aW5jbHVkZSAiTG9jYWxlQ29jb2EuaCIKKyNpbmNsdWRlIDxwYWwvY2YvQ29yZVRleHRTb2Z0TGlu
ay5oPgogI2luY2x1ZGUgPHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaD4KICNlbHNlCiAjaW5jbHVk
ZSA8cGFsL3NwaS93aW4vQ29yZVRleHRTUElXaW4uaD4KQEAgLTc3NCw0ICs3NzUsMjMgQEAgYm9v
bCBGb250Ojppc1Byb2JhYmx5T25seVVzZWRUb1JlbmRlckljb25zKCkgY29uc3QKICAgICB9KTsK
IH0KIAorYm9vbCBGb250OjpnbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoR2x5cGggZ2x5cGgpIGNv
bnN0Cit7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgaWYgKCFtX290U1ZHVGFibGUpIHsKKyAg
ICAgICAgaWYgKGF1dG8gdGFibGVEYXRhID0gYWRvcHRDRihDVEZvbnRDb3B5VGFibGUocGxhdGZv
cm1EYXRhKCkuY3RGb250KCksIGtDVEZvbnRUYWJsZVNWRywga0NURm9udFRhYmxlT3B0aW9uTm9P
cHRpb25zKSkpCisgICAgICAgICAgICBtX290U1ZHVGFibGUgPSBQQUw6Ok9UU1ZHVGFibGUodGFi
bGVEYXRhLmdldCgpLCBmb250TWV0cmljcygpLnVuaXRzUGVyRW0oKSwgcGxhdGZvcm1EYXRhKCku
c2l6ZSgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpP
VFNWR1RhYmxlKCk7CisgICAgfQorICAgIHJldHVybiBtX290U1ZHVGFibGUudmFsdWUoKS50YWJs
ZQorICAgICAgICAmJiBQQUw6OmlzT1RTVkdGcmFtZXdvcmtBdmFpbGFibGUoKQorICAgICAgICAm
JiBQQUw6OmNhbkxvYWRfT1RTVkdfT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaCgp
CisgICAgICAgICYmIFBBTDo6c29mdExpbmtfT1RTVkdfT1RTVkdUYWJsZUdldERvY3VtZW50SW5k
ZXhGb3JHbHlwaChtX290U1ZHVGFibGUudmFsdWUoKS50YWJsZSwgZ2x5cGgpICE9IGtDRk5vdEZv
dW5kOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZ2x5cGgpOworICAgIHJldHVybiBmYWxzZTsK
KyNlbmRpZgorfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5
cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAK
aW5kZXggMWVjYTUwM2I1ZTQwOGVmZjVjNzVhYTQ5MjZmYmZjYmYyOWFmZWUzZC4uMGMxYzVlMzJj
ODQ5Yzg2NzM1YWEzMDc3MDQ2ODRhZTBkZTZhYzkxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1Jl
Y29yZGVyQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcApA
QCAtMzYyLDYgKzM2MiwzNyBAQCB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6cmVjb3JkRHJhd0lt
YWdlKENHUmVuZGVyaW5nU3RhdGVSZWYsIENHR1N0YXRlUmVmIGdzdGF0ZQogICAgIG1fb3duZXIu
dHJhbnNsYXRlKDAsIC0ocmVjdC5zaXplLmhlaWdodCArIDIgKiByZWN0Lm9yaWdpbi55KSk7CiB9
CiAKK3N0cnVjdCBHbHlwaHNBbmRBZHZhbmNlcyB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5
cGg+IGdseXBoczsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKKyAg
ICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5pdGlhbEFkdmFuY2U7Cit9Oworc3RhdGljIEdseXBoc0Fu
ZEFkdmFuY2VzIGZpbHRlck91dE9UU1ZHR2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEds
eXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNl
cywgdW5zaWduZWQgbnVtR2x5cGhzKQoreworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiBy
ZXN1bHRHbHlwaHM7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyQWR2YW5jZT4gcmVzdWx0QWR2YW5j
ZXM7CisgICAgR2x5cGhCdWZmZXJBZHZhbmNlIGluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVm
ZmVyQWR2YW5jZSgpOworCisgICAgcmVzdWx0R2x5cGhzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHko
bnVtR2x5cGhzKTsKKyAgICByZXN1bHRBZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51
bUdseXBocyk7CisKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kp
IHsKKyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5zaXplKCkgPT0gcmVzdWx0QWR2YW5jZXMu
c2l6ZSgpKTsKKyAgICAgICAgaWYgKGZvbnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBo
c1tpXSkpIHsKKyAgICAgICAgICAgIGlmIChyZXN1bHRHbHlwaHMuaXNFbXB0eSgpKQorICAgICAg
ICAgICAgICAgIGluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKGlu
aXRpYWxBZHZhbmNlKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICByZXN1bHRBZHZhbmNlcy5sYXN0KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZh
bmNlKHNpemUocmVzdWx0QWR2YW5jZXMubGFzdCgpKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJlc3VsdEdseXBocy51bmNoZWNrZWRBcHBlbmQo
Z2x5cGhzW2ldKTsKKyAgICAgICAgICAgIHJlc3VsdEFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChh
ZHZhbmNlc1tpXSk7CisgICAgICAgIH0KKyAgICAgICAgQVNTRVJUKHJlc3VsdEdseXBocy5zaXpl
KCkgPT0gcmVzdWx0QWR2YW5jZXMuc2l6ZSgpKTsKKyAgICB9CisKKyAgICByZXR1cm4geyBXVEZN
b3ZlKHJlc3VsdEdseXBocyksIFdURk1vdmUocmVzdWx0QWR2YW5jZXMpLCBXVEZNb3ZlKGluaXRp
YWxBZHZhbmNlKSB9OworfQorCiB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhj
b25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEds
eXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxv
YXRQb2ludCYgc3RhcnRQb2ludCwgRm9udFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKIHsK
ICAgICBpZiAobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3Ry
dWN0aW9uOjpEb250RGVjb25zdHJ1Y3QpIHsKQEAgLTM3MSw4ICs0MDIsMTEgQEAgdm9pZCBEcmF3
R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhC
dWZmZXJHbHlwaCogZ2wKIAogICAgIEFTU0VSVChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9
PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRlY29uc3RydWN0KTsKIAorICAgIC8vIEZJWE1F
OiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1NTI+IFJlY29yZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5
cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0
ZXJPdXRPVFNWR0dseXBocyhmb250LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMpOworCiAg
ICAgcHJlcGFyZUludGVybmFsQ29udGV4dChmb250LCBzbW9vdGhpbmdNb2RlKTsKLSAgICBGb250
Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzLCBhZHZh
bmNlcywgbnVtR2x5cGhzLCBzdGFydFBvaW50LCBzbW9vdGhpbmdNb2RlKTsKKyAgICBGb250Q2Fz
Y2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9udCwgZ2x5cGhzQW5kQWR2YW5j
ZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzLmRhdGEoKSwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRo
b3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMuZGF0YSgpLCBudW1HbHlwaHMsIHN0YXJ0UG9pbnQgKyBz
aXplKGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmluaXRpYWxBZHZhbmNlKSwg
c21vb3RoaW5nTW9kZSk7CiAgICAgY29uY2x1ZGVJbnRlcm5hbENvbnRleHQoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420262</attachid>
            <date>2021-02-14 17:18:43 -0800</date>
            <delta_ts>2021-02-14 17:20:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210214171842.patch</filename>
            <type>text/plain</type>
            <size>24984</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uZWQxODdkN2Y5ZDQwZWViMjE5ZDRkZjAyODgwMTFm
YWNlZWI4NDc3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3Rl
bSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVk
IHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdo
aWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdl
YiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9BU1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nl
c3MgdGhhdCBpdCB3b24ndCBiZSB1c2luZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAg
IFRoaXMgaXMganVzdCBhIHRlbXBvcmFyeSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwg
d2UgY2FuIHByb3Blcmx5IHRyYW5zY29kZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAg
ICAgICAgZGlzcGxheSBsaXN0IGluZnJhc3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkg
YnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGdseXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNo
LAorICAgICAgICByaWdodCBub3csIG9ubHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2Fu
dmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3VsYXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQ
VQorICAgICAgICBwcm9jZXNzIHlldC4pCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ug
d2UgZG9uJ3Qgd2FudCB0byBhY3R1YWxseSByZXF1aXJlIHRoYXQgT1QtU1ZHIGRvZXNuJ3Qgd29y
ayBpbiBjYW52YXMuCisgICAgICAgIFdoZW4gd2UgbWFrZSBpdCB3b3JrIGFnYWluLCBpdCBkb2Vz
bid0IG1ha2Ugc2Vuc2UgdG8gaGF2ZSB0byBkZWxldGUgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRl
eHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEzICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWR1Y2Ug
cmVxdWlyZW1lbnRzIGZvciBjb2xvciB0eXBlcyB0byBvbmx5IGNvbnZlcnNpb24gdG8gdGhlaXIg
cmVmZXJlbmNlIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0
OTc1ODczZDcwZTBkMWU0OTQwMzI2Li40YTU0ZmVkN2ViOTAwODc5MWYyNjE0MTQ3MTU3ZGI3NjY5
ZjNhODE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wMi0xMyAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUg
UHJvY2Vzc10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhl
IEdQVSBwcm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0
LWxpbmtzIHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdv
cmsgdGhhdCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHA6IEFkZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgor
ICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdU
YWJsZSk6CisgICAgICAgICogcGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICog
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0Nv
cmVUZXh0U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMy
NWYwNGI1ZmRhOWU5Yjg0M2QwNjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5
NTQ4ZGEwN2NlNzQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0Uw
MDcyNUYxOCAvKiBjb25maWcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDMDlEMDU3MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJ
MUM0ODc2RDgxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8q
IExvZ2dpbmcuY3BwICovOyB9OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2lu
Zy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2
RDcxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcy
MDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVU
ZXh0U29mdExpbmsuY3BwICovOyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RT
VkdUYWJsZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQzc3QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFD
QzNBQ0U4MjJCRDdFQzUwMEYzNjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1l
dGFsU1BJLmggKi87IH07CiAJCTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0
MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQz
RjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFy
YW5jZVNQSS5oICovOyB9OwpAQCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRF
MDBDQ0VFQkQgLyogTG9nZ2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNy
b3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDNjdDRUEyMUUzMkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNv
ZnRMaW5rLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29y
ZVRleHRTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNW
R1RhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gT1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZXRhbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIw
RDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvcmVVSVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRG
NjIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE5TQXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtNTk0LDYgKzYwMCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAv
KiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5
MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VF
NzkzIC8qIENvcmVNZWRpYVNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1
RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYz
NUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1
RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAv
KiBPVFNWR1RhYmxlLmggKi8sCiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVv
VG9vbGJveFNvZnRMaW5rLmNwcCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyog
VmlkZW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAog
CQkJCTA3N0U4N0IxMjI2QTQ2MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBp
biBTb3VyY2VzICovLAogCQkJCTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRp
YVNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUw
QyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUz
MUM0NjUwMDcyNUYxOCAvKiBDcnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTExNzVCNTgxRjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRl
ci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmls
ZVNpemVGb3JtYXR0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAog
CQkJCTBDRjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9v
bGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEw
RjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4
Q0UyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
Q0Q2MTIyQ0QyNTU5QjZBQzAwRkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAq
LywKIAkJCQlDRDYxMjJEMTI1NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTFGNjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGlu
ay5tbSBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9j
Zi9Db3JlVGV4dFNvZnRMaW5rLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRl
eHRTb2Z0TGluay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTUwODFhMDlhMDdhMGM2MGVlNzE1ZThmODBiNzdh
OWQ4OGIzMzdlMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2Yv
Q29yZVRleHRTb2Z0TGluay5jcHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+Cisj
aW5jbHVkZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09S
S19GT1JfU09VUkNFKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNF
KFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdUYWJsZVJlZiwgKENG
RGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSks
IChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZP
Ul9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaCwg
Q0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgpLCAodGFibGUsIGds
eXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFi
bGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJsZSkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaCBiL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkMGMw
MWQwZWIwMTk3NDM1ZjQ3ZTNmZjUyYWUxZjYxMTRjMGI4NmQKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApAQCAtMCwwICsxLDM0
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9D
b3JlVGV4dFNQSS5oPgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktf
RlJBTUVXT1JLX0ZPUl9IRUFERVIoUEFMLCBPVFNWRykKKworU09GVF9MSU5LX0ZVTkNUSU9OX0ZP
Ul9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxl
UmVmLCAoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZv
bnRTaXplKSwgKHN2Z1RhYmxlLCB1bml0c1BlckVtLCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVO
Q1RJT05fRk9SX0hFQURFUihQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZv
ckdseXBoLCBDRkluZGV4LCAoT1RTVkdUYWJsZVJlZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0
YWJsZSwgZ2x5cGgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywg
T1RTVkdUYWJsZVJlbGVhc2UsIHZvaWQsIChPVFNWR1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmMDFl
N2IyNDIwNDIxMjZjM2U1OTllOGM2OGE1NThmOGJiYWIwOWIKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCkBAIC0wLDAgKzEsNDMgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwor
ICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk9UU1ZHVGFibGUu
aCIKKworI2luY2x1ZGUgIkNvcmVUZXh0U29mdExpbmsuaCIKKworbmFtZXNwYWNlIFBBTCB7CisK
K09UU1ZHVGFibGU6Ok9UU1ZHVGFibGUoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0
c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKQorICAgIDogdGFibGUoaXNPVFNWR0ZyYW1ld29ya0F2
YWlsYWJsZSgpID8gc29mdExpbmtPVFNWR09UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YShzdmdUYWJs
ZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpIDogbnVsbHB0cikKK3sKK30KKworT1RTVkdUYWJsZTo6
fk9UU1ZHVGFibGUoKQoreworICAgIGlmIChpc09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgJiYg
dGFibGUpCisgICAgICAgIHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7Cit9
CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5o
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGFl
M2RmMGU4MTU4YzM5NjZiMzk4ZmZkZjMyNzYwNjU3ODExMTVjOQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oCkBAIC0wLDAgKzEsMzkgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwor
ICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVU
ZXh0U1BJLmg+CisKK25hbWVzcGFjZSBQQUwgeworCitzdHJ1Y3QgT1RTVkdUYWJsZSB7CisgICAg
T1RTVkdUYWJsZSgpID0gZGVmYXVsdDsKKyAgICBPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJs
ZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSk7CisgICAgfk9UU1ZHVGFi
bGUoKTsKKworICAgIE9UU1ZHVGFibGVSZWYgdGFibGUgeyBudWxscHRyIH07Cit9OworCit9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0ODFkMWJm
NWFmYzBhYjYwOTE1MjRkMGVlY2E5YWM3MDc4Y2ExYzBhLi42ZjU2YTFhYzE2NjY3ZDM4YTQ4OWZi
MWZhMTI4OGI5MTdjZGJmMGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9jZi9Db3JlVGV4dFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0Nv
cmVUZXh0U1BJLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RL
KQogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8T1RTVkcv
T1RTVkcuaD4KIAogI2Vsc2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBrQ1RGb250
VHJhaXRFbXBoYXNpemVkID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYgY29uc3Qg
c3RydWN0IF9fT1RTVkdUYWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBXVEZfRVhU
RVJOX0NfQkVHSU4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvV2ViQ29yZS54Y3NjaGVtZSBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvV2ViQ29yZS54Y3NjaGVt
ZQppbmRleCAxNTgyZTFhM2M1NmRmOWU3ODIwMGQ5OWE5OTg2ODA1OTFiNGNkZjBiLi42MWM3Y2Yw
ZWJjNTExNDBmN2M5YmIxZDgwZDkzYzk0ZmQ2ZDM5MzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL1dlYkNvcmUueGNz
Y2hlbWUKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2oveGNzaGFyZWRkYXRh
L3hjc2NoZW1lcy9XZWJDb3JlLnhjc2NoZW1lCkBAIC00MCw2ICs0MCwxMCBAQAogICAgICAgZGVi
dWdEb2N1bWVudFZlcnNpb25pbmcgPSAiWUVTIgogICAgICAgZGVidWdTZXJ2aWNlRXh0ZW5zaW9u
ID0gImludGVybmFsIgogICAgICAgYWxsb3dMb2NhdGlvblNpbXVsYXRpb24gPSAiWUVTIj4KKyAg
ICAgIDxQYXRoUnVubmFibGUKKyAgICAgICAgIHJ1bm5hYmxlRGVidWdnaW5nTW9kZSA9ICIwIgor
ICAgICAgICAgRmlsZVBhdGggPSAiL1VzZXJzL21tYXhmaWVsZC9CdWlsZC9Qcm9kdWN0cy9EZWJ1
Zy9NaW5pQnJvd3Nlci5hcHAiPgorICAgICAgPC9QYXRoUnVubmFibGU+CiAgICA8L0xhdW5jaEFj
dGlvbj4KICAgIDxQcm9maWxlQWN0aW9uCiAgICAgICBidWlsZENvbmZpZ3VyYXRpb24gPSAiUmVs
ZWFzZSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAppbmRleCBjN2IwNzJl
NjZjNjMxNWQyNmE4YzkyODk5Y2U1MDJiMDdhZTAxMGJkLi4zZDRjZTY5OTIwNjIyZDRjOTQ3NmNh
NjE2ZjNkNTA2OWEyYTFkNTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9Gb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9u
dC5oCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBpbnRl
cm5hbCBmb250IGltcGxlbWVudGF0aW9uLgogICoKLSAqIENvcHlyaWdodCAoQykgMjAwNi0yMDIw
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0y
MDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAw
Ny0yMDA4IFRvcmNoIE1vYmlsZSwgSW5jLgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTQyLDYgKzQyLDcgQEAK
IAogI2lmIFBMQVRGT1JNKENPQ09BKQogI2luY2x1ZGUgPENvcmVGb3VuZGF0aW9uL0NvcmVGb3Vu
ZGF0aW9uLmg+CisjaW5jbHVkZSA8cGFsL2NmL09UU1ZHVGFibGUuaD4KICNpbmNsdWRlIDx3dGYv
UmV0YWluUHRyLmg+CiAjZW5kaWYKIApAQCAtMjE5LDYgKzIyMCw4IEBAIHB1YmxpYzoKICAgICBi
b29sIGNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNvbnN0IFVDaGFyKiwgc2l6
ZV90KSBjb25zdDsKICAgICB2b2lkIGFwcGx5VHJhbnNmb3JtcyhHbHlwaEJ1ZmZlciYsIHVuc2ln
bmVkIGJlZ2lubmluZ0dseXBoSW5kZXgsIHVuc2lnbmVkIGJlZ2lubmluZ1N0cmluZ0luZGV4LCBi
b29sIGVuYWJsZUtlcm5pbmcsIGJvb2wgcmVxdWlyZXNTaGFwaW5nLCBjb25zdCBBdG9tU3RyaW5n
JiBsb2NhbGUsIFN0cmluZ1ZpZXcgdGV4dCwgVGV4dERpcmVjdGlvbikgY29uc3Q7CiAKKyAgICBi
b29sIGdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhHbHlwaCkgY29uc3Q7CisKICNpZiBQTEFURk9S
TShXSU4pCiAgICAgU0NSSVBUX0ZPTlRQUk9QRVJUSUVTKiBzY3JpcHRGb250UHJvcGVydGllcygp
IGNvbnN0OwogICAgIFNDUklQVF9DQUNIRSogc2NyaXB0Q2FjaGUoKSBjb25zdCB7IHJldHVybiAm
bV9zY3JpcHRDYWNoZTsgfQpAQCAtMjkzLDYgKzI5Niw3IEBAIHByaXZhdGU6CiAgICAgbXV0YWJs
ZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxTbWFsbENhcHM7CiAg
ICAgbXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlQZXRpdGVD
YXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5
QWxsUGV0aXRlQ2FwczsKKyAgICBtdXRhYmxlIE9wdGlvbmFsPFBBTDo6T1RTVkdUYWJsZT4gbV9v
dFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNj
YWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgyODZhZTM5
NDBhNjAuLmVkMDM4MWNjYzI0NTU4MWU3YzkwYWRlYmEyOTg2YzBjYTBmNWU2YzggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRl
Q29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0
ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAi
R3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUgIkxv
Z2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCIKICNpbmNsdWRl
IDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFz
Lmg+CiAKQEAgLTE5MSw2ICsxOTIsMTEgQEAgdm9pZCBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhH
cmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEcKIAogICAg
IENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBjb250ZXh0LnBsYXRmb3JtQ29udGV4dCgpOwogCisg
ICAgaWYgKGlzSW5HUFVQcm9jZXNzKCkpIHsKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsg
aSA8IG51bUdseXBoczsgKytpKQorICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlQoIWZvbnQuZ2x5
cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpOworICAgIH0KKwogICAgIGJvb2wgc2hv
dWxkQW50aWFsaWFzID0gdHJ1ZTsKICAgICBib29sIHNob3VsZFNtb290aEZvbnRzID0gdHJ1ZTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQv
Rm9udENvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0
ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKaW5kZXggOTc1NTViZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5
OGQwNGRhOTgwNy4uZWU0NmM5NmM4MGRmNjY5YjUyMzI1YTEwZjIyYjhlNDY5Y2VmMWI3ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENv
cmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4
dC9Gb250Q29yZVRleHQuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykg
MjAwNS0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAwNS0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdo
dCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC00NCw2
ICs0NCw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlICJMb2NhbGVDb2NvYS5o
IgorI2luY2x1ZGUgPHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg+CiAjaW5jbHVkZSA8cGFsL3Nw
aS9jZi9Db3JlVGV4dFNQSS5oPgogI2Vsc2UKICNpbmNsdWRlIDxwYWwvc3BpL3dpbi9Db3JlVGV4
dFNQSVdpbi5oPgpAQCAtNzc0LDQgKzc3NSwyMiBAQCBib29sIEZvbnQ6OmlzUHJvYmFibHlPbmx5
VXNlZFRvUmVuZGVySWNvbnMoKSBjb25zdAogICAgIH0pOwogfQogCitib29sIEZvbnQ6OmdseXBo
SXNSZW5kZXJlZFdpdGhPVFNWRyhHbHlwaCBnbHlwaCkgY29uc3QKK3sKKyNpZiBQTEFURk9STShD
T0NPQSkKKyAgICBpZiAoIW1fb3RTVkdUYWJsZSkgeworICAgICAgICBpZiAoYXV0byB0YWJsZURh
dGEgPSBhZG9wdENGKENURm9udENvcHlUYWJsZShwbGF0Zm9ybURhdGEoKS5jdEZvbnQoKSwga0NU
Rm9udFRhYmxlU1ZHLCBrQ1RGb250VGFibGVPcHRpb25Ob09wdGlvbnMpKSkKKyAgICAgICAgICAg
IG1fb3RTVkdUYWJsZSA9IFBBTDo6T1RTVkdUYWJsZSh0YWJsZURhdGEuZ2V0KCksIGZvbnRNZXRy
aWNzKCkudW5pdHNQZXJFbSgpLCBwbGF0Zm9ybURhdGEoKS5zaXplKCkpOworICAgICAgICBlbHNl
CisgICAgICAgICAgICBtX290U1ZHVGFibGUgPSBQQUw6Ok9UU1ZHVGFibGUoKTsKKyAgICB9Cisg
ICAgcmV0dXJuIFBBTDo6aXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpCisgICAgICAgICYmIG1f
b3RTVkdUYWJsZS52YWx1ZSgpLnRhYmxlCisgICAgICAgICYmIFBBTDo6c29mdExpbmtPVFNWR09U
U1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgobV9vdFNWR1RhYmxlLnZhbHVlKCkudGFi
bGUsIGdseXBoKSAhPSBrQ0ZOb3RGb3VuZDsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGdseXBo
KTsKKyAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBo
c1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNiNWU0MDhlZmY1Yzc1YWE0OTI2ZmJm
Y2JmMjlhZmVlM2QuLjBjMWM1ZTMyYzg0OWM4NjczNWFhMzA3NzA0Njg0YWUwZGU2YWM5MTYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9E
aXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhz
UmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2Miw2ICszNjIsMzcgQEAgdm9pZCBEcmF3R2x5cGhz
UmVjb3JkZXI6OnJlY29yZERyYXdJbWFnZShDR1JlbmRlcmluZ1N0YXRlUmVmLCBDR0dTdGF0ZVJl
ZiBnc3RhdGUKICAgICBtX293bmVyLnRyYW5zbGF0ZSgwLCAtKHJlY3Quc2l6ZS5oZWlnaHQgKyAy
ICogcmVjdC5vcmlnaW4ueSkpOwogfQogCitzdHJ1Y3QgR2x5cGhzQW5kQWR2YW5jZXMgeworICAg
IFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiBnbHlwaHM7CisgICAgVmVjdG9yPEdseXBoQnVmZmVy
QWR2YW5jZT4gYWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJBZHZhbmNlIGluaXRpYWxBZHZhbmNl
OworfTsKK3N0YXRpYyBHbHlwaHNBbmRBZHZhbmNlcyBmaWx0ZXJPdXRPVFNWR0dseXBocyhjb25z
dCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBo
QnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocykKK3sKKyAgICBWZWN0
b3I8R2x5cGhCdWZmZXJHbHlwaD4gcmVzdWx0R2x5cGhzOworICAgIFZlY3RvcjxHbHlwaEJ1ZmZl
ckFkdmFuY2U+IHJlc3VsdEFkdmFuY2VzOworICAgIEdseXBoQnVmZmVyQWR2YW5jZSBpbml0aWFs
QWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2UoKTsKKworICAgIHJlc3VsdEdseXBocy5y
ZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisgICAgcmVzdWx0QWR2YW5jZXMucmVz
ZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1HbHlwaHMpOworCisgICAgZm9yICh1bnNpZ25lZCBpID0g
MDsgaSA8IG51bUdseXBoczsgKytpKSB7CisgICAgICAgIEFTU0VSVChyZXN1bHRHbHlwaHMuc2l6
ZSgpID09IHJlc3VsdEFkdmFuY2VzLnNpemUoKSk7CisgICAgICAgIGlmIChmb250LmdseXBoSXNS
ZW5kZXJlZFdpdGhPVFNWRyhnbHlwaHNbaV0pKSB7CisgICAgICAgICAgICBpZiAocmVzdWx0R2x5
cGhzLmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICBpbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlw
aEJ1ZmZlckFkdmFuY2Uoc2l6ZShpbml0aWFsQWR2YW5jZSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7
CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmVzdWx0QWR2YW5jZXMubGFzdCgp
ID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKHJlc3VsdEFkdmFuY2VzLmxhc3QoKSkgKyBz
aXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICByZXN1bHRH
bHlwaHMudW5jaGVja2VkQXBwZW5kKGdseXBoc1tpXSk7CisgICAgICAgICAgICByZXN1bHRBZHZh
bmNlcy51bmNoZWNrZWRBcHBlbmQoYWR2YW5jZXNbaV0pOworICAgICAgICB9CisgICAgICAgIEFT
U0VSVChyZXN1bHRHbHlwaHMuc2l6ZSgpID09IHJlc3VsdEFkdmFuY2VzLnNpemUoKSk7CisgICAg
fQorCisgICAgcmV0dXJuIHsgV1RGTW92ZShyZXN1bHRHbHlwaHMpLCBXVEZNb3ZlKHJlc3VsdEFk
dmFuY2VzKSwgV1RGTW92ZShpbml0aWFsQWR2YW5jZSkgfTsKK30KKwogdm9pZCBEcmF3R2x5cGhz
UmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJH
bHlwaCogZ2x5cGhzLCBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1bnNpZ25l
ZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0UG9pbnQmIHN0YXJ0UG9pbnQsIEZvbnRTbW9vdGhpbmdN
b2RlIHNtb290aGluZ01vZGUpCiB7CiAgICAgaWYgKG1fZHJhd0dseXBoc0RlY29uc3RydWN0aW9u
ID09IERyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbjo6RG9udERlY29uc3RydWN0KSB7CkBAIC0zNzEs
OCArNDAyLDExIEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhzKGNvbnN0IEZv
bnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdsCiAKICAgICBBU1NFUlQobV9kcmF3
R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEZWNvbnN0
cnVjdCk7CiAKKyAgICAvLyBGSVhNRTogPHJkYXI6Ly9wcm9ibGVtLzcwMTY2NTUyPiBSZWNvcmQg
T1RTVkcgZ2x5cGhzLgorICAgIEdseXBoc0FuZEFkdmFuY2VzIGdseXBoc0FuZEFkdmFuY2VzV2l0
aG91dE9UU1ZHR2x5cGhzID0gZmlsdGVyT3V0T1RTVkdHbHlwaHMoZm9udCwgZ2x5cGhzLCBhZHZh
bmNlcywgbnVtR2x5cGhzKTsKKwogICAgIHByZXBhcmVJbnRlcm5hbENvbnRleHQoZm9udCwgc21v
b3RoaW5nTW9kZSk7Ci0gICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRl
eHQsIGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywgc3RhcnRQb2ludCwgc21vb3Ro
aW5nTW9kZSk7CisgICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRleHQs
IGZvbnQsIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocy5kYXRhKCks
IGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmFkdmFuY2VzLmRhdGEoKSwgbnVt
R2x5cGhzLCBzdGFydFBvaW50ICsgc2l6ZShnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0ds
eXBocy5pbml0aWFsQWR2YW5jZSksIHNtb290aGluZ01vZGUpOwogICAgIGNvbmNsdWRlSW50ZXJu
YWxDb250ZXh0KCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420263</attachid>
            <date>2021-02-14 17:20:11 -0800</date>
            <delta_ts>2021-02-14 17:21:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210214172011.patch</filename>
            <type>text/plain</type>
            <size>24192</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uZWQxODdkN2Y5ZDQwZWViMjE5ZDRkZjAyODgwMTFm
YWNlZWI4NDc3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3Rl
bSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVk
IHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdo
aWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdl
YiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9BU1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nl
c3MgdGhhdCBpdCB3b24ndCBiZSB1c2luZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAg
IFRoaXMgaXMganVzdCBhIHRlbXBvcmFyeSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwg
d2UgY2FuIHByb3Blcmx5IHRyYW5zY29kZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAg
ICAgICAgZGlzcGxheSBsaXN0IGluZnJhc3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkg
YnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGdseXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNo
LAorICAgICAgICByaWdodCBub3csIG9ubHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2Fu
dmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3VsYXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQ
VQorICAgICAgICBwcm9jZXNzIHlldC4pCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ug
d2UgZG9uJ3Qgd2FudCB0byBhY3R1YWxseSByZXF1aXJlIHRoYXQgT1QtU1ZHIGRvZXNuJ3Qgd29y
ayBpbiBjYW52YXMuCisgICAgICAgIFdoZW4gd2UgbWFrZSBpdCB3b3JrIGFnYWluLCBpdCBkb2Vz
bid0IG1ha2Ugc2Vuc2UgdG8gaGF2ZSB0byBkZWxldGUgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRl
eHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmdseXBoSXNSZW5kZXJlZFdp
dGhPVFNWRyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEzICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWR1Y2Ug
cmVxdWlyZW1lbnRzIGZvciBjb2xvciB0eXBlcyB0byBvbmx5IGNvbnZlcnNpb24gdG8gdGhlaXIg
cmVmZXJlbmNlIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0
OTc1ODczZDcwZTBkMWU0OTQwMzI2Li40YTU0ZmVkN2ViOTAwODc5MWYyNjE0MTQ3MTU3ZGI3NjY5
ZjNhODE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wMi0xMyAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUg
UHJvY2Vzc10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhl
IEdQVSBwcm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0
LWxpbmtzIHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdv
cmsgdGhhdCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHA6IEFkZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgor
ICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdU
YWJsZSk6CisgICAgICAgICogcGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICog
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0Nv
cmVUZXh0U1BJLmggdG8gcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMy
NWYwNGI1ZmRhOWU5Yjg0M2QwNjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5
NTQ4ZGEwN2NlNzQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0Uw
MDcyNUYxOCAvKiBjb25maWcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDMDlEMDU3MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJ
MUM0ODc2RDgxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8q
IExvZ2dpbmcuY3BwICovOyB9OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2lu
Zy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2
RDcxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcy
MDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVU
ZXh0U29mdExpbmsuY3BwICovOyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RT
VkdUYWJsZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQzc3QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFD
QzNBQ0U4MjJCRDdFQzUwMEYzNjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1l
dGFsU1BJLmggKi87IH07CiAJCTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0
MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQz
RjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFy
YW5jZVNQSS5oICovOyB9OwpAQCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRF
MDBDQ0VFQkQgLyogTG9nZ2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNy
b3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDNjdDRUEyMUUzMkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNv
ZnRMaW5rLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29y
ZVRleHRTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNW
R1RhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gT1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZXRhbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIw
RDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvcmVVSVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRG
NjIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE5TQXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtNTk0LDYgKzYwMCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAv
KiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5
MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VF
NzkzIC8qIENvcmVNZWRpYVNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1
RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYz
NUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1
RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAv
KiBPVFNWR1RhYmxlLmggKi8sCiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVv
VG9vbGJveFNvZnRMaW5rLmNwcCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyog
VmlkZW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAog
CQkJCTA3N0U4N0IxMjI2QTQ2MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBp
biBTb3VyY2VzICovLAogCQkJCTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRp
YVNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUw
QyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUz
MUM0NjUwMDcyNUYxOCAvKiBDcnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTExNzVCNTgxRjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRl
ci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmls
ZVNpemVGb3JtYXR0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAog
CQkJCTBDRjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9v
bGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEw
RjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4
Q0UyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
Q0Q2MTIyQ0QyNTU5QjZBQzAwRkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAq
LywKIAkJCQlDRDYxMjJEMTI1NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTFGNjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGlu
ay5tbSBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9j
Zi9Db3JlVGV4dFNvZnRMaW5rLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRl
eHRTb2Z0TGluay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTUwODFhMDlhMDdhMGM2MGVlNzE1ZThmODBiNzdh
OWQ4OGIzMzdlMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2Yv
Q29yZVRleHRTb2Z0TGluay5jcHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+Cisj
aW5jbHVkZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09S
S19GT1JfU09VUkNFKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNF
KFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdUYWJsZVJlZiwgKENG
RGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSks
IChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZP
Ul9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaCwg
Q0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgpLCAodGFibGUsIGds
eXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFi
bGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJsZSkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaCBiL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkMGMw
MWQwZWIwMTk3NDM1ZjQ3ZTNmZjUyYWUxZjYxMTRjMGI4NmQKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApAQCAtMCwwICsxLDM0
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9D
b3JlVGV4dFNQSS5oPgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktf
RlJBTUVXT1JLX0ZPUl9IRUFERVIoUEFMLCBPVFNWRykKKworU09GVF9MSU5LX0ZVTkNUSU9OX0ZP
Ul9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxl
UmVmLCAoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZv
bnRTaXplKSwgKHN2Z1RhYmxlLCB1bml0c1BlckVtLCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVO
Q1RJT05fRk9SX0hFQURFUihQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZv
ckdseXBoLCBDRkluZGV4LCAoT1RTVkdUYWJsZVJlZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0
YWJsZSwgZ2x5cGgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywg
T1RTVkdUYWJsZVJlbGVhc2UsIHZvaWQsIChPVFNWR1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmMDFl
N2IyNDIwNDIxMjZjM2U1OTllOGM2OGE1NThmOGJiYWIwOWIKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3BwCkBAIC0wLDAgKzEsNDMgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwor
ICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk9UU1ZHVGFibGUu
aCIKKworI2luY2x1ZGUgIkNvcmVUZXh0U29mdExpbmsuaCIKKworbmFtZXNwYWNlIFBBTCB7CisK
K09UU1ZHVGFibGU6Ok9UU1ZHVGFibGUoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0
c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKQorICAgIDogdGFibGUoaXNPVFNWR0ZyYW1ld29ya0F2
YWlsYWJsZSgpID8gc29mdExpbmtPVFNWR09UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YShzdmdUYWJs
ZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpIDogbnVsbHB0cikKK3sKK30KKworT1RTVkdUYWJsZTo6
fk9UU1ZHVGFibGUoKQoreworICAgIGlmIChpc09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgJiYg
dGFibGUpCisgICAgICAgIHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7Cit9
CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5o
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGFl
M2RmMGU4MTU4YzM5NjZiMzk4ZmZkZjMyNzYwNjU3ODExMTVjOQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oCkBAIC0wLDAgKzEsMzkgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwor
ICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVU
ZXh0U1BJLmg+CisKK25hbWVzcGFjZSBQQUwgeworCitzdHJ1Y3QgT1RTVkdUYWJsZSB7CisgICAg
T1RTVkdUYWJsZSgpID0gZGVmYXVsdDsKKyAgICBPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJs
ZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSk7CisgICAgfk9UU1ZHVGFi
bGUoKTsKKworICAgIE9UU1ZHVGFibGVSZWYgdGFibGUgeyBudWxscHRyIH07Cit9OworCit9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0ODFkMWJm
NWFmYzBhYjYwOTE1MjRkMGVlY2E5YWM3MDc4Y2ExYzBhLi42ZjU2YTFhYzE2NjY3ZDM4YTQ4OWZi
MWZhMTI4OGI5MTdjZGJmMGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9jZi9Db3JlVGV4dFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0Nv
cmVUZXh0U1BJLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RL
KQogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8T1RTVkcv
T1RTVkcuaD4KIAogI2Vsc2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBrQ1RGb250
VHJhaXRFbXBoYXNpemVkID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYgY29uc3Qg
c3RydWN0IF9fT1RTVkdUYWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBXVEZfRVhU
RVJOX0NfQkVHSU4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0ZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAppbmRleCBj
N2IwNzJlNjZjNjMxNWQyNmE4YzkyODk5Y2U1MDJiMDdhZTAxMGJkLi4zZDRjZTY5OTIwNjIyZDRj
OTQ3NmNhNjE2ZjNkNTA2OWEyYTFkNTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRm9udC5oCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRo
ZSBpbnRlcm5hbCBmb250IGltcGxlbWVudGF0aW9uLgogICoKLSAqIENvcHlyaWdodCAoQykgMjAw
Ni0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykg
MjAwNi0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAo
QykgMjAwNy0yMDA4IFRvcmNoIE1vYmlsZSwgSW5jLgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTQyLDYgKzQy
LDcgQEAKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogI2luY2x1ZGUgPENvcmVGb3VuZGF0aW9uL0Nv
cmVGb3VuZGF0aW9uLmg+CisjaW5jbHVkZSA8cGFsL2NmL09UU1ZHVGFibGUuaD4KICNpbmNsdWRl
IDx3dGYvUmV0YWluUHRyLmg+CiAjZW5kaWYKIApAQCAtMjE5LDYgKzIyMCw4IEBAIHB1YmxpYzoK
ICAgICBib29sIGNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNvbnN0IFVDaGFy
Kiwgc2l6ZV90KSBjb25zdDsKICAgICB2b2lkIGFwcGx5VHJhbnNmb3JtcyhHbHlwaEJ1ZmZlciYs
IHVuc2lnbmVkIGJlZ2lubmluZ0dseXBoSW5kZXgsIHVuc2lnbmVkIGJlZ2lubmluZ1N0cmluZ0lu
ZGV4LCBib29sIGVuYWJsZUtlcm5pbmcsIGJvb2wgcmVxdWlyZXNTaGFwaW5nLCBjb25zdCBBdG9t
U3RyaW5nJiBsb2NhbGUsIFN0cmluZ1ZpZXcgdGV4dCwgVGV4dERpcmVjdGlvbikgY29uc3Q7CiAK
KyAgICBib29sIGdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhHbHlwaCkgY29uc3Q7CisKICNpZiBQ
TEFURk9STShXSU4pCiAgICAgU0NSSVBUX0ZPTlRQUk9QRVJUSUVTKiBzY3JpcHRGb250UHJvcGVy
dGllcygpIGNvbnN0OwogICAgIFNDUklQVF9DQUNIRSogc2NyaXB0Q2FjaGUoKSBjb25zdCB7IHJl
dHVybiAmbV9zY3JpcHRDYWNoZTsgfQpAQCAtMjkzLDYgKzI5Niw3IEBAIHByaXZhdGU6CiAgICAg
bXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxTbWFsbENh
cHM7CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlQ
ZXRpdGVDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBv
cnRlZEJ5QWxsUGV0aXRlQ2FwczsKKyAgICBtdXRhYmxlIE9wdGlvbmFsPFBBTDo6T1RTVkdUYWJs
ZT4gbV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNv
cmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0Zv
bnRDYXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgy
ODZhZTM5NDBhNjAuLmVkMDM4MWNjYzI0NTU4MWU3YzkwYWRlYmEyOTg2YzBjYTBmNWU2YzggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRD
YXNjYWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5j
bHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1
ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCIKICNp
bmNsdWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRo
RXh0cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsMTEgQEAgdm9pZCBGb250Q2FzY2FkZTo6ZHJhd0ds
eXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEcK
IAogICAgIENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBjb250ZXh0LnBsYXRmb3JtQ29udGV4dCgp
OwogCisgICAgaWYgKGlzSW5HUFVQcm9jZXNzKCkpIHsKKyAgICAgICAgZm9yICh1bnNpZ25lZCBp
ID0gMDsgaSA8IG51bUdseXBoczsgKytpKQorICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlQoIWZv
bnQuZ2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHKGdseXBoc1tpXSkpOworICAgIH0KKwogICAgIGJv
b2wgc2hvdWxkQW50aWFsaWFzID0gdHJ1ZTsKICAgICBib29sIHNob3VsZFNtb290aEZvbnRzID0g
dHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29y
ZXRleHQvRm9udENvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKaW5kZXggOTc1NTViZTEyOTMwODg1ZWQxNzI2MWUw
MGUzYTU5OGQwNGRhOTgwNy4uZWU0NmM5NmM4MGRmNjY5YjUyMzI1YTEwZjIyYjhlNDY5Y2VmMWI3
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQv
Rm9udENvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
b3JldGV4dC9Gb250Q29yZVRleHQuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAwNS0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAwNS0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENv
cHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292CiAgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBA
IC00NCw2ICs0NCw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlICJMb2NhbGVD
b2NvYS5oIgorI2luY2x1ZGUgPHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg+CiAjaW5jbHVkZSA8
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgogI2Vsc2UKICNpbmNsdWRlIDxwYWwvc3BpL3dpbi9D
b3JlVGV4dFNQSVdpbi5oPgpAQCAtNzc0LDQgKzc3NSwyMiBAQCBib29sIEZvbnQ6OmlzUHJvYmFi
bHlPbmx5VXNlZFRvUmVuZGVySWNvbnMoKSBjb25zdAogICAgIH0pOwogfQogCitib29sIEZvbnQ6
OmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhHbHlwaCBnbHlwaCkgY29uc3QKK3sKKyNpZiBQTEFU
Rk9STShDT0NPQSkKKyAgICBpZiAoIW1fb3RTVkdUYWJsZSkgeworICAgICAgICBpZiAoYXV0byB0
YWJsZURhdGEgPSBhZG9wdENGKENURm9udENvcHlUYWJsZShwbGF0Zm9ybURhdGEoKS5jdEZvbnQo
KSwga0NURm9udFRhYmxlU1ZHLCBrQ1RGb250VGFibGVPcHRpb25Ob09wdGlvbnMpKSkKKyAgICAg
ICAgICAgIG1fb3RTVkdUYWJsZSA9IFBBTDo6T1RTVkdUYWJsZSh0YWJsZURhdGEuZ2V0KCksIGZv
bnRNZXRyaWNzKCkudW5pdHNQZXJFbSgpLCBwbGF0Zm9ybURhdGEoKS5zaXplKCkpOworICAgICAg
ICBlbHNlCisgICAgICAgICAgICBtX290U1ZHVGFibGUgPSBQQUw6Ok9UU1ZHVGFibGUoKTsKKyAg
ICB9CisgICAgcmV0dXJuIFBBTDo6aXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpCisgICAgICAg
ICYmIG1fb3RTVkdUYWJsZS52YWx1ZSgpLnRhYmxlCisgICAgICAgICYmIFBBTDo6c29mdExpbmtP
VFNWR09UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgobV9vdFNWR1RhYmxlLnZhbHVl
KCkudGFibGUsIGdseXBoKSAhPSBrQ0ZOb3RGb3VuZDsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFN
KGdseXBoKTsKKyAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKK30KKwogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlz
cGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJh
d0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNiNWU0MDhlZmY1Yzc1YWE0
OTI2ZmJmY2JmMjlhZmVlM2QuLjBjMWM1ZTMyYzg0OWM4NjczNWFhMzA3NzA0Njg0YWUwZGU2YWM5
MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXls
aXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3
R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2Miw2ICszNjIsMzcgQEAgdm9pZCBEcmF3
R2x5cGhzUmVjb3JkZXI6OnJlY29yZERyYXdJbWFnZShDR1JlbmRlcmluZ1N0YXRlUmVmLCBDR0dT
dGF0ZVJlZiBnc3RhdGUKICAgICBtX293bmVyLnRyYW5zbGF0ZSgwLCAtKHJlY3Quc2l6ZS5oZWln
aHQgKyAyICogcmVjdC5vcmlnaW4ueSkpOwogfQogCitzdHJ1Y3QgR2x5cGhzQW5kQWR2YW5jZXMg
eworICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckdseXBoPiBnbHlwaHM7CisgICAgVmVjdG9yPEdseXBo
QnVmZmVyQWR2YW5jZT4gYWR2YW5jZXM7CisgICAgR2x5cGhCdWZmZXJBZHZhbmNlIGluaXRpYWxB
ZHZhbmNlOworfTsKK3N0YXRpYyBHbHlwaHNBbmRBZHZhbmNlcyBmaWx0ZXJPdXRPVFNWR0dseXBo
cyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0
IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocykKK3sKKyAg
ICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaD4gcmVzdWx0R2x5cGhzOworICAgIFZlY3RvcjxHbHlw
aEJ1ZmZlckFkdmFuY2U+IHJlc3VsdEFkdmFuY2VzOworICAgIEdseXBoQnVmZmVyQWR2YW5jZSBp
bml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2UoKTsKKworICAgIHJlc3VsdEds
eXBocy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisgICAgcmVzdWx0QWR2YW5j
ZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1HbHlwaHMpOworCisgICAgZm9yICh1bnNpZ25l
ZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKSB7CisgICAgICAgIEFTU0VSVChyZXN1bHRHbHlw
aHMuc2l6ZSgpID09IHJlc3VsdEFkdmFuY2VzLnNpemUoKSk7CisgICAgICAgIGlmIChmb250Lmds
eXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhnbHlwaHNbaV0pKSB7CisgICAgICAgICAgICBpZiAocmVz
dWx0R2x5cGhzLmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICBpbml0aWFsQWR2YW5jZSA9IG1h
a2VHbHlwaEJ1ZmZlckFkdmFuY2Uoc2l6ZShpbml0aWFsQWR2YW5jZSkgKyBzaXplKGFkdmFuY2Vz
W2ldKSk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmVzdWx0QWR2YW5jZXMu
bGFzdCgpID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKHJlc3VsdEFkdmFuY2VzLmxhc3Qo
KSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBy
ZXN1bHRHbHlwaHMudW5jaGVja2VkQXBwZW5kKGdseXBoc1tpXSk7CisgICAgICAgICAgICByZXN1
bHRBZHZhbmNlcy51bmNoZWNrZWRBcHBlbmQoYWR2YW5jZXNbaV0pOworICAgICAgICB9CisgICAg
ICAgIEFTU0VSVChyZXN1bHRHbHlwaHMuc2l6ZSgpID09IHJlc3VsdEFkdmFuY2VzLnNpemUoKSk7
CisgICAgfQorCisgICAgcmV0dXJuIHsgV1RGTW92ZShyZXN1bHRHbHlwaHMpLCBXVEZNb3ZlKHJl
c3VsdEFkdmFuY2VzKSwgV1RGTW92ZShpbml0aWFsQWR2YW5jZSkgfTsKK30KKwogdm9pZCBEcmF3
R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhC
dWZmZXJHbHlwaCogZ2x5cGhzLCBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1
bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0UG9pbnQmIHN0YXJ0UG9pbnQsIEZvbnRTbW9v
dGhpbmdNb2RlIHNtb290aGluZ01vZGUpCiB7CiAgICAgaWYgKG1fZHJhd0dseXBoc0RlY29uc3Ry
dWN0aW9uID09IERyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbjo6RG9udERlY29uc3RydWN0KSB7CkBA
IC0zNzEsOCArNDAyLDExIEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhzKGNv
bnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdsCiAKICAgICBBU1NFUlQo
bV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpE
ZWNvbnN0cnVjdCk7CiAKKyAgICAvLyBGSVhNRTogPHJkYXI6Ly9wcm9ibGVtLzcwMTY2NTUyPiBS
ZWNvcmQgT1RTVkcgZ2x5cGhzLgorICAgIEdseXBoc0FuZEFkdmFuY2VzIGdseXBoc0FuZEFkdmFu
Y2VzV2l0aG91dE9UU1ZHR2x5cGhzID0gZmlsdGVyT3V0T1RTVkdHbHlwaHMoZm9udCwgZ2x5cGhz
LCBhZHZhbmNlcywgbnVtR2x5cGhzKTsKKwogICAgIHByZXBhcmVJbnRlcm5hbENvbnRleHQoZm9u
dCwgc21vb3RoaW5nTW9kZSk7Ci0gICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5h
bENvbnRleHQsIGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywgc3RhcnRQb2ludCwg
c21vb3RoaW5nTW9kZSk7CisgICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENv
bnRleHQsIGZvbnQsIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocy5k
YXRhKCksIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmFkdmFuY2VzLmRhdGEo
KSwgbnVtR2x5cGhzLCBzdGFydFBvaW50ICsgc2l6ZShnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRP
VFNWR0dseXBocy5pbml0aWFsQWR2YW5jZSksIHNtb290aGluZ01vZGUpOwogICAgIGNvbmNsdWRl
SW50ZXJuYWxDb250ZXh0KCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420264</attachid>
            <date>2021-02-14 17:21:30 -0800</date>
            <delta_ts>2021-02-15 12:32:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210214172129.patch</filename>
            <type>text/plain</type>
            <size>24262</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uNWI3NmI1NmI3MDY3MmIxYzQ5ZGUzNDA2NWRkYzlk
NzZhOWJiOTY4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZHIGZyYW1ld29yayB0byBk
ZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVj
dHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291bGQgYmUgcmVuZGVyZWQg
dXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nlc3MsIGFuZCBSRUxFQVNF
X0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0IGl0IHdvbid0IGJlIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBpcyBqdXN0IGEgdGVtcG9y
YXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4gcHJvcGVybHkgdHJhbnNj
b2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBkaXNwbGF5IGxpc3QgaW5m
cmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3MgZHJhd2luZyBPVC1TVkcg
Z2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAgICAgIHJpZ2h0IG5vdywg
b25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJhd2luZywgc2luY2UgcmVn
dWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAgICAgIHByb2Nlc3MgeWV0
LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24ndCB3YW50IHRvIGFjdHVh
bGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNhbnZhcy4KKyAgICAgICAg
V2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFrZSBzZW5zZSB0byBoYXZl
IHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6Z2x5cGhJc1JlbmRlcmVkV2l0aE9UU1ZHIGNvbnN0KToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhz
UmVjb3JkZXJDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Zmls
dGVyT3V0T1RTVkdHbHlwaHMpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRyYXdH
bHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyk6CisKIDIwMjEtMDItMTMgIFNhbSBXZWluaWcgIDx3
ZWluaWdAYXBwbGUuY29tPgogCiAgICAgICAgIFJlZHVjZSByZXF1aXJlbWVudHMgZm9yIGNvbG9y
IHR5cGVzIHRvIG9ubHkgY29udmVyc2lvbiB0byB0aGVpciByZWZlcmVuY2UgY29sb3IKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
Q2hhbmdlTG9nCmluZGV4IGU4ZWI5OWMyNGZlYmRmODhlNjQ5NzU4NzNkNzBlMGQxZTQ5NDAzMjYu
LjlmYmU2ZjcyNGRjYzRhZjc0MWE3YjIzM2M3ZTRjOTVjODk2NGFlZjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIxLTAyLTEzICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBUZW1wb3JhcmlseSBk
aXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BVIHByb2Nlc3MgdW50aWwgaXQg
Y2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0MjIy
MzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggc29mdC1saW5rcyB0aGUgT1RTVkcgZnJhbWV3b3JrIGJlY2F1c2UgaXQncyBhIHBy
aXZhdGUgZnJhbWV3b3JrIHRoYXQgZG9lc24ndCBleGlzdCBvbiB3YXRjaE9TLgorCisgICAgICAg
ICogUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL2NmL0NvcmVU
ZXh0U29mdExpbmsuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGlu
ay5oOiBBZGRlZC4KKyAgICAgICAgKiBwYWwvY2YvT1RTVkdUYWJsZS5jcHA6IEFkZGVkLgorICAg
ICAgICAoUEFMOjpPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKToKKyAgICAgICAgKFBBTDo6T1RTVkdU
YWJsZTo6fk9UU1ZHVGFibGUpOgorICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmg6IEFkZGVk
LgorICAgICAgICAqIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaDoKKwogMjAyMS0wMi0xMCAgTXls
ZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgcGFs
L3NwaS9jb2NvYS9Db3JlVGV4dFNQSS5oIHRvIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDk3MGU3ZTE4NGVjMjVmMDRiNWZkYTllOWI4NDNkMDYwODQ0Y2RmNzUuLjJlZGJjYzljMDM4ODc1
ZWFlNDAyY2E1ZDU3OTU0OGRhMDdjZTc0NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
UEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwOSw2ICsxMDksOCBAQAogCQkxQzA5
RDA1ODFFMzFDNTdFMDA3MjVGMTggLyogY29uZmlnLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzA5RDA1NzFFMzFDNTdFMDA3MjVGMTggLyogY29uZmln
LmggKi87IH07CiAJCTFDNDg3NkQ4MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNDg3NkQ2MUY4RDdG
NEUwMENDRUVCRCAvKiBMb2dnaW5nLmNwcCAqLzsgfTsKIAkJMUM0ODc2RDkxRjhEN0Y0RTAwQ0NF
RUJEIC8qIExvZ2dpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDFDNDg3NkQ3MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmggKi87IH07CisJCTFD
NzdDOEM5MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNzdDOEM3MjVENzk3MjAwMDYz
NUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCAqLzsgfTsKKwkJMUM3N0M4Q0UyNUQ3QTRBMzAw
NjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3Bw
ICovOyB9OwogCQkxQ0MzQUNFODIyQkQ3RUM1MDBGMzYwRjAgLyogTWV0YWxTUEkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQzNBQ0U3MjJCRDdFQjgw
MEYzNjBGMCAvKiBNZXRhbFNQSS5oICovOyB9OwogCQkxQ0NFRTRGNTIwRDg3MTkzMDA0N0IwOTcg
LyogQ29yZVVJU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQ0NFRTRGNDIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi87IH07CiAJCTFD
Q0VFNEY3MjBEODc0M0YwMDQ3QjA5NyAvKiBOU0FwcGVhcmFuY2VTUEkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY2MjBEODc0M0YwMDQ3QjA5
NyAvKiBOU0FwcGVhcmFuY2VTUEkuaCAqLzsgfTsKQEAgLTMwNiw2ICszMDgsMTAgQEAKIAkJMUM0
ODc2RDcxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nZ2lu
Zy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzQ4NzZEQzFGOEQ3RkM2MDBDQ0VF
QkQgLyogTG9nTWFjcm9zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvZ01hY3Jvcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkxQzY3Q0VBMjFFMzJFRTI2MDBGODBGMkUgLyogVmVyc2lvbi54
Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBWZXJzaW9uLnhjY29uZmln
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMg
LyogQ29yZVRleHRTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb3JlVGV4dFNvZnRM
aW5rLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3N0M4QzgyNUQ3OTcyMDAw
NjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29yZVRleHRTb2Z0
TGluay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDQjI1RDc5QjZDMDA2
MzVFMEMgLyogT1RTVkdUYWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPVFNWR1RhYmxlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDNzdDOENEMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNW
R1RhYmxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9UU1ZHVGFibGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkxQ0MzQUNFNzIyQkQ3RUI4MDBGMzYwRjAgLyogTWV0YWxTUEku
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTWV0YWxTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMUNDRUU0RjQyMEQ4NzE5MzAwNDdCMDk3IC8qIENvcmVVSVNQSS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlVUlTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOU0FwcGVhcmFuY2VTUEkuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTU5NCw2ICs2MDAsMTAgQEAKIAkJCQk0MTZFOTk1MjIzREFF
NkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCQkwQ0Y5OUNBNjFG
NzM4NDM2MDA3RUU3OTMgLyogQ29yZU1lZGlhU29mdExpbmsuY3BwICovLAogCQkJCTBDRjk5Q0E3
MUY3Mzg0MzcwMDdFRTc5MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOEM3
MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCAqLywKKwkJCQkxQzc3QzhD
ODI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOENE
MjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCAqLywKKwkJCQkxQzc3QzhDQjI1RDc5
QjZDMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5oICovLAogCQkJCTQxNkU5OTU1MjNEQUVGRjcwMEU4
NzFDQiAvKiBWaWRlb1Rvb2xib3hTb2Z0TGluay5jcHAgKi8sCiAJCQkJNDE2RTk5NTYyM0RBRUZG
NzAwRTg3MUNCIC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmggKi8sCiAJCQkpOwpAQCAtMTAyNSw2
ICsxMDM1LDcgQEAKIAkJCQkwNzdFODdCMTIyNkE0NjAyMDBBMkFGRjAgLyogQVZGb3VuZGF0aW9u
U29mdExpbmsubW0gaW4gU291cmNlcyAqLywKIAkJCQkwQzVGRkYwRjFGNzhEOURBMDA5RUZGMUEg
LyogQ2xvY2tDTS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTBDRjk5Q0E4MUY3Mzg0MzcwMDdFRTc5
MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQzc3QzhDOTI1
RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkxQzA5RDA1NjFFMzFDNDY1MDA3MjVGMTggLyogQ3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUExMTc1QjU4MUY2QjQ3MDUwMEM0QjlGMCAvKiBEZWZhdWx0
U2VhcmNoUHJvdmlkZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjQ0MjkxNjQxRkE1MjY3MDAw
MkNDOTNFIC8qIEZpbGVTaXplRm9ybWF0dGVyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMTAzOCw2
ICsxMDQ5LDcgQEAKIAkJCQkwQ0Y5OUNBNDFGNzM2Mzc1MDA3RUU3OTMgLyogTWVkaWFUaW1lQVZG
b3VuZGF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEQUNCMzYwMjM4NzQyNUIwMDE4RDdD
RSAvKiBNZWRpYVRvb2xib3hTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTY0N0ZC
MDI1MTc1OUREMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSBpbiBTb3VyY2VzICov
LAorCQkJCTFDNzdDOENFMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUNENjEyMkNEMjU1OUI2QUMwMEZDNjU3QSAvKiBPdXRwdXRDb250ZXh0Lm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0Q2MTIyRDEyNTU5QjhGMjAwRkM2NTdBIC8qIE91dHB1dERl
dmljZS5tbSBpbiBTb3VyY2VzICovLAogCQkJCUExRjYzQ0EwMjFBNERCRjcwMDZGQjQzQiAvKiBQ
YXNzS2l0U29mdExpbmsubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NmL0NvcmVUZXh0U29mdExpbmsuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1MDgxYTA5YTA3YTBjNjBl
ZTcxNWU4ZjgwYjc3YTlkODhiMzM3ZTAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuY3BwCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3Jl
VGV4dFNQSS5oPgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfUFJJ
VkFURV9GUkFNRVdPUktfRk9SX1NPVVJDRShQQUwsIE9UU1ZHKQorCitTT0ZUX0xJTktfRlVOQ1RJ
T05fRk9SX1NPVVJDRShQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEsIE9UU1ZH
VGFibGVSZWYsIChDRkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxv
YXQgZm9udFNpemUpLCAoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSkKK1NPRlRfTElO
S19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVHZXREb2N1bWVudElu
ZGV4Rm9yR2x5cGgsIENGSW5kZXgsIChPVFNWR1RhYmxlUmVmIHRhYmxlLCBDR0dseXBoIGdseXBo
KSwgKHRhYmxlLCBnbHlwaCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9U
U1ZHLCBPVFNWR1RhYmxlUmVsZWFzZSwgdm9pZCwgKE9UU1ZHVGFibGVSZWYgdGFibGUpLCAodGFi
bGUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRM
aW5rLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4xZDBjMDFkMGViMDE5NzQzNWY0N2UzZmY1MmFlMWY2MTE0YzBiODZkCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmgK
QEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUg
PHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtpbmcuaD4K
KworU09GVF9MSU5LX0ZSQU1FV09SS19GT1JfSEVBREVSKFBBTCwgT1RTVkcpCisKK1NPRlRfTElO
S19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0
YSwgT1RTVkdUYWJsZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJF
bSwgQ0dGbG9hdCBmb250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQor
U09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERv
Y3VtZW50SW5kZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5
cGggZ2x5cGgpLCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVS
KFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJs
ZSksICh0YWJsZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZH
VGFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hZjAxZTdiMjQyMDQyMTI2YzNlNTk5ZThjNjhhNTU4ZjhiYmFiMDliCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApAQCAt
MCwwICsxLDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwor
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJPVFNWR1RhYmxlLmgiCisKKyNpbmNsdWRlICJDb3JlVGV4dFNvZnRMaW5rLmgiCisKK25hbWVz
cGFjZSBQQUwgeworCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJsZSwg
dW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSkKKyAgICA6IHRhYmxlKGlzT1RT
VkdGcmFtZXdvcmtBdmFpbGFibGUoKSA/IHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlQ3JlYXRlRnJv
bURhdGEoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9CisK
K09UU1ZHVGFibGU6On5PVFNWR1RhYmxlKCkKK3sKKyAgICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2
YWlsYWJsZSgpICYmIHRhYmxlKQorICAgICAgICBzb2Z0TGlua09UU1ZHT1RTVkdUYWJsZVJlbGVh
c2UodGFibGUpOworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2Nm
L09UU1ZHVGFibGUuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjRhZTNkZjBlODE1OGMzOTY2YjM5OGZmZGYzMjc2MDY1NzgxMTE1YzkKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApAQCAt
MCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwor
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8cGFs
L3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorCituYW1lc3BhY2UgUEFMIHsKKworc3RydWN0IE9UU1ZH
VGFibGUgeworICAgIE9UU1ZHVGFibGUoKSA9IGRlZmF1bHQ7CisgICAgT1RTVkdUYWJsZShDRkRh
dGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpOwor
ICAgIH5PVFNWR1RhYmxlKCk7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRhYmxlIHsgbnVsbHB0ciB9
OworfTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29y
ZVRleHRTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmgK
aW5kZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNmY1NmExYWMx
NjY2N2QzOGE0ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQUExF
X0lOVEVSTkFMX1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgorI2lu
Y2x1ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYgKzgzLDggQEAgZW51bSB7
CiAgICAga0NURm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFpdEJvbGQsCiB9OwogCit0
eXBlZGVmIGNvbnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1RhYmxlUmVmOworCiAjZW5k
aWYKIAogV1RGX0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9G
b250LmgKaW5kZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBiZC4uM2Q0
Y2U2OTkyMDYyMmQ0Yzk0NzZjYTYxNmYzZDUwNjlhMmExZDUyMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlzIGZpbGUg
aXMgcGFydCBvZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAgKiBUaGlz
IGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
CkBAIC00Miw2ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDxDb3Jl
Rm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9jZi9PVFNWR1RhYmxl
Lmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxOSw2ICsyMjAs
OCBAQCBwdWJsaWM6CiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdDaGFyYWN0ZXJTZXF1ZW5j
ZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CiAgICAgdm9pZCBhcHBseVRyYW5zZm9ybXMo
R2x5cGhCdWZmZXImLCB1bnNpZ25lZCBiZWdpbm5pbmdHbHlwaEluZGV4LCB1bnNpZ25lZCBiZWdp
bm5pbmdTdHJpbmdJbmRleCwgYm9vbCBlbmFibGVLZXJuaW5nLCBib29sIHJlcXVpcmVzU2hhcGlu
ZywgY29uc3QgQXRvbVN0cmluZyYgbG9jYWxlLCBTdHJpbmdWaWV3IHRleHQsIFRleHREaXJlY3Rp
b24pIGNvbnN0OwogCisgICAgYm9vbCBnbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoR2x5cGgpIGNv
bnN0OworCiAjaWYgUExBVEZPUk0oV0lOKQogICAgIFNDUklQVF9GT05UUFJPUEVSVElFUyogc2Ny
aXB0Rm9udFByb3BlcnRpZXMoKSBjb25zdDsKICAgICBTQ1JJUFRfQ0FDSEUqIHNjcmlwdENhY2hl
KCkgY29uc3QgeyByZXR1cm4gJm1fc2NyaXB0Q2FjaGU7IH0KQEAgLTI5Myw2ICsyOTYsNyBAQCBw
cml2YXRlOgogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRl
ZEJ5QWxsU21hbGxDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBo
c1N1cHBvcnRlZEJ5UGV0aXRlQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4g
bV9nbHlwaHNTdXBwb3J0ZWRCeUFsbFBldGl0ZUNhcHM7CisgICAgbXV0YWJsZSBPcHRpb25hbDxQ
QUw6Ok9UU1ZHVGFibGU+IG1fb3RTVkdUYWJsZTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oV0lO
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQv
Rm9udENhc2NhZGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAppbmRleCBhZmUzNzNiODQxOGYzMDM4
OWE0NWM4ZjJjMjM4Mjg2YWUzOTQwYTYwLi5lZDAzODFjY2MyNDU1ODFlN2M5MGFkZWJhMjk4NmMw
Y2EwZjVlNmM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
b3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcApAQCAtMzAsNiAr
MzAsNyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkxheW91dFJl
Y3QuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiUnVudGltZUFwcGxpY2F0aW9u
Q2hlY2tzLmgiCiAjaW5jbHVkZSA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4KICNpbmNs
dWRlIDx3dGYvTWF0aEV4dHJhcy5oPgogCkBAIC0xOTEsNiArMTkyLDExIEBAIHZvaWQgRm9udENh
c2NhZGU6OmRyYXdHbHlwaHMoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGb250JiBm
b250LCBjb25zdCBHCiAKICAgICBDR0NvbnRleHRSZWYgY2dDb250ZXh0ID0gY29udGV4dC5wbGF0
Zm9ybUNvbnRleHQoKTsKIAorICAgIGlmIChpc0luR1BVUHJvY2VzcygpKSB7CisgICAgICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1HbHlwaHM7ICsraSkKKyAgICAgICAgICAgIFJFTEVB
U0VfQVNTRVJUKCFmb250LmdseXBoSXNSZW5kZXJlZFdpdGhPVFNWRyhnbHlwaHNbaV0pKTsKKyAg
ICB9CisKICAgICBib29sIHNob3VsZEFudGlhbGlhcyA9IHRydWU7CiAgICAgYm9vbCBzaG91bGRT
bW9vdGhGb250cyA9IHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCmluZGV4IDk3NTU1YmUxMjkz
MDg4NWVkMTcyNjFlMDBlM2E1OThkMDRkYTk4MDcuLmVlNDZjOTZjODBkZjY2OWI1MjMyNWExMGYy
MmI4ZTQ2OWNlZjFiN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYgQWxleGV5IFByb3NrdXJ5YWtvdgogICoKICAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dApAQCAtNDQsNiArNDQsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5j
bHVkZSAiTG9jYWxlQ29jb2EuaCIKKyNpbmNsdWRlIDxwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5o
PgogI2luY2x1ZGUgPHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaD4KICNlbHNlCiAjaW5jbHVkZSA8
cGFsL3NwaS93aW4vQ29yZVRleHRTUElXaW4uaD4KQEAgLTc3NCw0ICs3NzUsMjIgQEAgYm9vbCBG
b250Ojppc1Byb2JhYmx5T25seVVzZWRUb1JlbmRlckljb25zKCkgY29uc3QKICAgICB9KTsKIH0K
IAorYm9vbCBGb250OjpnbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoR2x5cGggZ2x5cGgpIGNvbnN0
Cit7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgaWYgKCFtX290U1ZHVGFibGUpIHsKKyAgICAg
ICAgaWYgKGF1dG8gdGFibGVEYXRhID0gYWRvcHRDRihDVEZvbnRDb3B5VGFibGUocGxhdGZvcm1E
YXRhKCkuY3RGb250KCksIGtDVEZvbnRUYWJsZVNWRywga0NURm9udFRhYmxlT3B0aW9uTm9PcHRp
b25zKSkpCisgICAgICAgICAgICBtX290U1ZHVGFibGUgPSBQQUw6Ok9UU1ZHVGFibGUodGFibGVE
YXRhLmdldCgpLCBmb250TWV0cmljcygpLnVuaXRzUGVyRW0oKSwgcGxhdGZvcm1EYXRhKCkuc2l6
ZSgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpPVFNW
R1RhYmxlKCk7CisgICAgfQorICAgIHJldHVybiBQQUw6OmlzT1RTVkdGcmFtZXdvcmtBdmFpbGFi
bGUoKQorICAgICAgICAmJiBtX290U1ZHVGFibGUudmFsdWUoKS50YWJsZQorICAgICAgICAmJiBQ
QUw6OnNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoKG1fb3RT
VkdUYWJsZS52YWx1ZSgpLnRhYmxlLCBnbHlwaCkgIT0ga0NGTm90Rm91bmQ7CisjZWxzZQorICAg
IFVOVVNFRF9QQVJBTShnbHlwaCk7CisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVU
ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9E
aXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAppbmRleCAxZWNhNTAzYjVl
NDA4ZWZmNWM3NWFhNDkyNmZiZmNiZjI5YWZlZTNkLi4wYzFjNWUzMmM4NDljODY3MzVhYTMwNzcw
NDY4NGFlMGRlNmFjOTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rp
c3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCkBAIC0zNjIsNiArMzYyLDM3
IEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3SW1hZ2UoQ0dSZW5kZXJpbmdT
dGF0ZVJlZiwgQ0dHU3RhdGVSZWYgZ3N0YXRlCiAgICAgbV9vd25lci50cmFuc2xhdGUoMCwgLShy
ZWN0LnNpemUuaGVpZ2h0ICsgMiAqIHJlY3Qub3JpZ2luLnkpKTsKIH0KIAorc3RydWN0IEdseXBo
c0FuZEFkdmFuY2VzIHsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaD4gZ2x5cGhzOworICAg
IFZlY3RvcjxHbHlwaEJ1ZmZlckFkdmFuY2U+IGFkdmFuY2VzOworICAgIEdseXBoQnVmZmVyQWR2
YW5jZSBpbml0aWFsQWR2YW5jZTsKK307CitzdGF0aWMgR2x5cGhzQW5kQWR2YW5jZXMgZmlsdGVy
T3V0T1RTVkdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCog
Z2x5cGhzLCBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1bnNpZ25lZCBudW1H
bHlwaHMpCit7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IHJlc3VsdEdseXBoczsKKyAg
ICBWZWN0b3I8R2x5cGhCdWZmZXJBZHZhbmNlPiByZXN1bHRBZHZhbmNlczsKKyAgICBHbHlwaEJ1
ZmZlckFkdmFuY2UgaW5pdGlhbEFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKCk7CisK
KyAgICByZXN1bHRHbHlwaHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1HbHlwaHMpOworICAg
IHJlc3VsdEFkdmFuY2VzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKworICAg
IGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1HbHlwaHM7ICsraSkgeworICAgICAgICBBU1NF
UlQocmVzdWx0R2x5cGhzLnNpemUoKSA9PSByZXN1bHRBZHZhbmNlcy5zaXplKCkpOworICAgICAg
ICBpZiAoZm9udC5nbHlwaElzUmVuZGVyZWRXaXRoT1RTVkcoZ2x5cGhzW2ldKSkgeworICAgICAg
ICAgICAgaWYgKHJlc3VsdEdseXBocy5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgaW5pdGlh
bEFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUoaW5pdGlhbEFkdmFuY2UpICsg
c2l6ZShhZHZhbmNlc1tpXSkpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJl
c3VsdEFkdmFuY2VzLmxhc3QoKSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2Uoc2l6ZShyZXN1bHRB
ZHZhbmNlcy5sYXN0KCkpICsgc2l6ZShhZHZhbmNlc1tpXSkpOworICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgcmVzdWx0R2x5cGhzLnVuY2hlY2tlZEFwcGVuZChnbHlwaHNbaV0pOworICAg
ICAgICAgICAgcmVzdWx0QWR2YW5jZXMudW5jaGVja2VkQXBwZW5kKGFkdmFuY2VzW2ldKTsKKyAg
ICAgICAgfQorICAgICAgICBBU1NFUlQocmVzdWx0R2x5cGhzLnNpemUoKSA9PSByZXN1bHRBZHZh
bmNlcy5zaXplKCkpOworICAgIH0KKworICAgIHJldHVybiB7IFdURk1vdmUocmVzdWx0R2x5cGhz
KSwgV1RGTW92ZShyZXN1bHRBZHZhbmNlcyksIFdURk1vdmUoaW5pdGlhbEFkdmFuY2UpIH07Cit9
CisKIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQs
IGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNl
KiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzLCBjb25zdCBGbG9hdFBvaW50JiBzdGFydFBv
aW50LCBGb250U21vb3RoaW5nTW9kZSBzbW9vdGhpbmdNb2RlKQogewogICAgIGlmIChtX2RyYXdH
bHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRvbnREZWNv
bnN0cnVjdCkgewpAQCAtMzcxLDggKzQwMiwxMSBAQCB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6
ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbAog
CiAgICAgQVNTRVJUKG1fZHJhd0dseXBoc0RlY29uc3RydWN0aW9uID09IERyYXdHbHlwaHNEZWNv
bnN0cnVjdGlvbjo6RGVjb25zdHJ1Y3QpOwogCisgICAgLy8gRklYTUU6IDxyZGFyOi8vcHJvYmxl
bS83MDE2NjU1Mj4gUmVjb3JkIE9UU1ZHIGdseXBocy4KKyAgICBHbHlwaHNBbmRBZHZhbmNlcyBn
bHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocyA9IGZpbHRlck91dE9UU1ZHR2x5cGhz
KGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocyk7CisKICAgICBwcmVwYXJlSW50ZXJu
YWxDb250ZXh0KGZvbnQsIHNtb290aGluZ01vZGUpOwotICAgIEZvbnRDYXNjYWRlOjpkcmF3R2x5
cGhzKG1faW50ZXJuYWxDb250ZXh0LCBmb250LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMs
IHN0YXJ0UG9pbnQsIHNtb290aGluZ01vZGUpOworICAgIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhz
KG1faW50ZXJuYWxDb250ZXh0LCBmb250LCBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0ds
eXBocy5nbHlwaHMuZGF0YSgpLCBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5h
ZHZhbmNlcy5kYXRhKCksIG51bUdseXBocywgc3RhcnRQb2ludCArIHNpemUoZ2x5cGhzQW5kQWR2
YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuaW5pdGlhbEFkdmFuY2UpLCBzbW9vdGhpbmdNb2RlKTsK
ICAgICBjb25jbHVkZUludGVybmFsQ29udGV4dCgpOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420348</attachid>
            <date>2021-02-15 12:32:31 -0800</date>
            <delta_ts>2021-02-15 13:31:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210215123230.patch</filename>
            <type>text/plain</type>
            <size>25567</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uNmFmZTI0ZmYxZjY3OGYzNWE5MTlkMWRiMDhhZjU2
ZDZiYTMwZDRlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZHIGZyYW1ld29yayB0byBk
ZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVj
dHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291bGQgYmUgcmVuZGVyZWQg
dXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nlc3MsIGFuZCBSRUxFQVNF
X0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0IGl0IHdvbid0IGJlIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBpcyBqdXN0IGEgdGVtcG9y
YXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4gcHJvcGVybHkgdHJhbnNj
b2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBkaXNwbGF5IGxpc3QgaW5m
cmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3MgZHJhd2luZyBPVC1TVkcg
Z2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAgICAgIHJpZ2h0IG5vdywg
b25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJhd2luZywgc2luY2UgcmVn
dWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAgICAgIHByb2Nlc3MgeWV0
LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24ndCB3YW50IHRvIGFjdHVh
bGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNhbnZhcy4KKyAgICAgICAg
V2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFrZSBzZW5zZSB0byBoYXZl
IHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6ZmluZE9UU1ZHR2x5cGhzIGNvbnN0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJD
b3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6ZmlsdGVyT3V0T1RT
VkdHbHlwaHMpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRyYXdHbHlwaHNSZWNv
cmRlcjo6ZHJhd0dseXBocyk6CisKIDIwMjEtMDItMTMgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlZHVjZSByZXF1aXJlbWVudHMgZm9yIGNvbG9yIHR5cGVzIHRv
IG9ubHkgY29udmVyc2lvbiB0byB0aGVpciByZWZlcmVuY2UgY29sb3IKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CmluZGV4IGU4ZWI5OWMyNGZlYmRmODhlNjQ5NzU4NzNkNzBlMGQxZTQ5NDAzMjYuLjlmYmU2Zjcy
NGRjYzRhZjc0MWE3YjIzM2M3ZTRjOTVjODk2NGFlZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIyIEBACisyMDIxLTAyLTEzICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBh
cHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRy
YXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BVIHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGlt
cGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2gg
c29mdC1saW5rcyB0aGUgT1RTVkcgZnJhbWV3b3JrIGJlY2F1c2UgaXQncyBhIHByaXZhdGUgZnJh
bWV3b3JrIHRoYXQgZG9lc24ndCBleGlzdCBvbiB3YXRjaE9TLgorCisgICAgICAgICogUEFMLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL2NmL0NvcmVUZXh0U29mdExp
bmsuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oOiBBZGRl
ZC4KKyAgICAgICAgKiBwYWwvY2YvT1RTVkdUYWJsZS5jcHA6IEFkZGVkLgorICAgICAgICAoUEFM
OjpPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKToKKyAgICAgICAgKFBBTDo6T1RTVkdUYWJsZTo6fk9U
U1ZHVGFibGUpOgorICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmg6IEFkZGVkLgorICAgICAg
ICAqIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaDoKKwogMjAyMS0wMi0xMCAgTXlsZXMgQy4gTWF4
ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgcGFsL3NwaS9jb2Nv
YS9Db3JlVGV4dFNQSS5oIHRvIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDk3MGU3ZTE4
NGVjMjVmMDRiNWZkYTllOWI4NDNkMDYwODQ0Y2RmNzUuLjJlZGJjYzljMDM4ODc1ZWFlNDAyY2E1
ZDU3OTU0OGRhMDdjZTc0NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwOSw2ICsxMDksOCBAQAogCQkxQzA5RDA1ODFFMzFD
NTdFMDA3MjVGMTggLyogY29uZmlnLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQzA5RDA1NzFFMzFDNTdFMDA3MjVGMTggLyogY29uZmlnLmggKi87IH07
CiAJCTFDNDg3NkQ4MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNDg3NkQ2MUY4RDdGNEUwMENDRUVC
RCAvKiBMb2dnaW5nLmNwcCAqLzsgfTsKIAkJMUM0ODc2RDkxRjhEN0Y0RTAwQ0NFRUJEIC8qIExv
Z2dpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFD
NDg3NkQ3MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmggKi87IH07CisJCTFDNzdDOEM5MjVE
Nzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBD
b3JlVGV4dFNvZnRMaW5rLmNwcCAqLzsgfTsKKwkJMUM3N0M4Q0UyNUQ3QTRBMzAwNjM1RTBDIC8q
IE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovOyB9Owog
CQkxQ0MzQUNFODIyQkQ3RUM1MDBGMzYwRjAgLyogTWV0YWxTUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAv
KiBNZXRhbFNQSS5oICovOyB9OwogCQkxQ0NFRTRGNTIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJ
U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0NF
RTRGNDIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi87IH07CiAJCTFDQ0VFNEY3MjBE
ODc0M0YwMDQ3QjA5NyAvKiBOU0FwcGVhcmFuY2VTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY2MjBEODc0M0YwMDQ3QjA5NyAvKiBOU0Fw
cGVhcmFuY2VTUEkuaCAqLzsgfTsKQEAgLTMwNiw2ICszMDgsMTAgQEAKIAkJMUM0ODc2RDcxRjhE
N0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nZ2luZy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzQ4NzZEQzFGOEQ3RkM2MDBDQ0VFQkQgLyogTG9n
TWFjcm9zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvZ01hY3Jvcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxQzY3Q0VBMjFFMzJFRTI2MDBGODBGMkUgLyogVmVyc2lvbi54Y2NvbmZpZyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBWZXJzaW9uLnhjY29uZmlnOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRl
eHRTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3N0M4QzgyNUQ3OTcyMDAwNjM1RTBDIC8q
IENvcmVUZXh0U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29yZVRleHRTb2Z0TGluay5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDQjI1RDc5QjZDMDA2MzVFMEMgLyog
T1RTVkdUYWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPVFNWR1RhYmxlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFDNzdDOENEMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9UU1ZHVGFibGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxQ0MzQUNFNzIyQkQ3RUI4MDBGMzYwRjAgLyogTWV0YWxTUEkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWV0YWxTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNDRUU0
RjQyMEQ4NzE5MzAwNDdCMDk3IC8qIENvcmVVSVNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDb3JlVUlTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUND
RUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBOU0FwcGVhcmFuY2VTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTU5NCw2ICs2MDAsMTAgQEAKIAkJCQk0MTZFOTk1MjIzREFFNkJFMDBFODcx
Q0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCQkwQ0Y5OUNBNjFGNzM4NDM2MDA3
RUU3OTMgLyogQ29yZU1lZGlhU29mdExpbmsuY3BwICovLAogCQkJCTBDRjk5Q0E3MUY3Mzg0Mzcw
MDdFRTc5MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOEM3MjVENzk3MjAw
MDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCAqLywKKwkJCQkxQzc3QzhDODI1RDc5NzIw
MDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOENEMjVEN0E0QTMw
MDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCAqLywKKwkJCQkxQzc3QzhDQjI1RDc5QjZDMDA2MzVF
MEMgLyogT1RTVkdUYWJsZS5oICovLAogCQkJCTQxNkU5OTU1MjNEQUVGRjcwMEU4NzFDQiAvKiBW
aWRlb1Rvb2xib3hTb2Z0TGluay5jcHAgKi8sCiAJCQkJNDE2RTk5NTYyM0RBRUZGNzAwRTg3MUNC
IC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmggKi8sCiAJCQkpOwpAQCAtMTAyNSw2ICsxMDM1LDcg
QEAKIAkJCQkwNzdFODdCMTIyNkE0NjAyMDBBMkFGRjAgLyogQVZGb3VuZGF0aW9uU29mdExpbmsu
bW0gaW4gU291cmNlcyAqLywKIAkJCQkwQzVGRkYwRjFGNzhEOURBMDA5RUZGMUEgLyogQ2xvY2tD
TS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTBDRjk5Q0E4MUY3Mzg0MzcwMDdFRTc5MyAvKiBDb3Jl
TWVkaWFTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQzc3QzhDOTI1RDc5NzIwMDA2
MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQzA5RDA1
NjFFMzFDNDY1MDA3MjVGMTggLyogQ3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUExMTc1QjU4MUY2QjQ3MDUwMEM0QjlGMCAvKiBEZWZhdWx0U2VhcmNoUHJv
dmlkZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjQ0MjkxNjQxRkE1MjY3MDAwMkNDOTNFIC8q
IEZpbGVTaXplRm9ybWF0dGVyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMTAzOCw2ICsxMDQ5LDcg
QEAKIAkJCQkwQ0Y5OUNBNDFGNzM2Mzc1MDA3RUU3OTMgLyogTWVkaWFUaW1lQVZGb3VuZGF0aW9u
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEQUNCMzYwMjM4NzQyNUIwMDE4RDdDRSAvKiBNZWRp
YVRvb2xib3hTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTY0N0ZCMDI1MTc1OURE
MDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSBpbiBTb3VyY2VzICovLAorCQkJCTFD
NzdDOENFMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUNENjEyMkNEMjU1OUI2QUMwMEZDNjU3QSAvKiBPdXRwdXRDb250ZXh0Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQ0Q2MTIyRDEyNTU5QjhGMjAwRkM2NTdBIC8qIE91dHB1dERldmljZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUExRjYzQ0EwMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29m
dExpbmsubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0Nv
cmVUZXh0U29mdExpbmsuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1MDgxYTA5YTA3YTBjNjBlZTcxNWU4Zjgw
Yjc3YTlkODhiMzM3ZTAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2NmL0NvcmVUZXh0U29mdExpbmsuY3BwCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAq
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5o
PgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfUFJJVkFURV9GUkFN
RVdPUktfRk9SX1NPVVJDRShQQUwsIE9UU1ZHKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NP
VVJDRShQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEsIE9UU1ZHVGFibGVSZWYs
IChDRkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNp
emUpLCAoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSkKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5
cGgsIENGSW5kZXgsIChPVFNWR1RhYmxlUmVmIHRhYmxlLCBDR0dseXBoIGdseXBoKSwgKHRhYmxl
LCBnbHlwaCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9UU1ZHLCBPVFNW
R1RhYmxlUmVsZWFzZSwgdm9pZCwgKE9UU1ZHVGFibGVSZWYgdGFibGUpLCAodGFibGUpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmggYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4x
ZDBjMDFkMGViMDE5NzQzNWY0N2UzZmY1MmFlMWY2MTE0YzBiODZkCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmgKQEAgLTAsMCAr
MSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHBhbC9zcGkv
Y2YvQ29yZVRleHRTUEkuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9M
SU5LX0ZSQU1FV09SS19GT1JfSEVBREVSKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfSEVBREVSKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdU
YWJsZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9h
dCBmb250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5L
X0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5k
ZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgp
LCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT1RT
VkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJs
ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
ZjAxZTdiMjQyMDQyMTI2YzNlNTk5ZThjNjhhNTU4ZjhiYmFiMDliCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApAQCAtMCwwICsxLDQz
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJPVFNWR1Rh
YmxlLmgiCisKKyNpbmNsdWRlICJDb3JlVGV4dFNvZnRMaW5rLmgiCisKK25hbWVzcGFjZSBQQUwg
eworCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQg
dW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSkKKyAgICA6IHRhYmxlKGlzT1RTVkdGcmFtZXdv
cmtBdmFpbGFibGUoKSA/IHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEoc3Zn
VGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9CisKK09UU1ZHVGFi
bGU6On5PVFNWR1RhYmxlKCkKK3sKKyAgICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgp
ICYmIHRhYmxlKQorICAgICAgICBzb2Z0TGlua09UU1ZHT1RTVkdUYWJsZVJlbGVhc2UodGFibGUp
OworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFi
bGUuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjRhZTNkZjBlODE1OGMzOTY2YjM5OGZmZGYzMjc2MDY1NzgxMTE1YzkKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApAQCAtMCwwICsxLDM5
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9D
b3JlVGV4dFNQSS5oPgorCituYW1lc3BhY2UgUEFMIHsKKworc3RydWN0IE9UU1ZHVGFibGUgewor
ICAgIE9UU1ZHVGFibGUoKSA9IGRlZmF1bHQ7CisgICAgT1RTVkdUYWJsZShDRkRhdGFSZWYgc3Zn
VGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpOworICAgIH5PVFNW
R1RhYmxlKCk7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRhYmxlIHsgbnVsbHB0ciB9OworfTsKKwor
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEku
aCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmgKaW5kZXggNDgx
ZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNmY1NmExYWMxNjY2N2QzOGE0
ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9j
Zi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQUExFX0lOVEVSTkFM
X1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgorI2luY2x1ZGUgPE9U
U1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYgKzgzLDggQEAgZW51bSB7CiAgICAga0NU
Rm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFpdEJvbGQsCiB9OwogCit0eXBlZGVmIGNv
bnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1RhYmxlUmVmOworCiAjZW5kaWYKIAogV1RG
X0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKaW5k
ZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBiZC4uYzdkYTU0OTNmYzE0
NjQwMThhNzFhYjIxODlmYTU1ZjZiNmJiMzJhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlzIGZpbGUgaXMgcGFydCBv
ZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmln
aHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAgKiBUaGlzIGxpYnJhcnkg
aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCkBAIC00Miw2
ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDxDb3JlRm91bmRhdGlv
bi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9jZi9PVFNWR1RhYmxlLmg+CiAjaW5j
bHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxOSw2ICsyMjAsOSBAQCBwdWJs
aWM6CiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdDaGFyYWN0ZXJTZXF1ZW5jZShjb25zdCBV
Q2hhciosIHNpemVfdCkgY29uc3Q7CiAgICAgdm9pZCBhcHBseVRyYW5zZm9ybXMoR2x5cGhCdWZm
ZXImLCB1bnNpZ25lZCBiZWdpbm5pbmdHbHlwaEluZGV4LCB1bnNpZ25lZCBiZWdpbm5pbmdTdHJp
bmdJbmRleCwgYm9vbCBlbmFibGVLZXJuaW5nLCBib29sIHJlcXVpcmVzU2hhcGluZywgY29uc3Qg
QXRvbVN0cmluZyYgbG9jYWxlLCBTdHJpbmdWaWV3IHRleHQsIFRleHREaXJlY3Rpb24pIGNvbnN0
OwogCisgICAgLy8gUmV0dXJucyBudWxsb3B0IGlmIG5vbmUgb2YgdGhlIGdseXBocyBhcmUgT1Qt
U1ZHIGdseXBocy4KKyAgICBPcHRpb25hbDxCaXRWZWN0b3I+IGZpbmRPVFNWR0dseXBocyhjb25z
dCBHbHlwaEJ1ZmZlckdseXBoKiwgdW5zaWduZWQgY291bnQpIGNvbnN0OworCiAjaWYgUExBVEZP
Uk0oV0lOKQogICAgIFNDUklQVF9GT05UUFJPUEVSVElFUyogc2NyaXB0Rm9udFByb3BlcnRpZXMo
KSBjb25zdDsKICAgICBTQ1JJUFRfQ0FDSEUqIHNjcmlwdENhY2hlKCkgY29uc3QgeyByZXR1cm4g
Jm1fc2NyaXB0Q2FjaGU7IH0KQEAgLTI5Myw2ICsyOTcsNyBAQCBwcml2YXRlOgogICAgIG11dGFi
bGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5QWxsU21hbGxDYXBzOwog
ICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5UGV0aXRl
Q2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRC
eUFsbFBldGl0ZUNhcHM7CisgICAgbXV0YWJsZSBPcHRpb25hbDxQQUw6Ok9UU1ZHVGFibGU+IG1f
b3RTVkdUYWJsZTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oV0lOKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2Fz
Y2FkZUNvcmVUZXh0LmNwcAppbmRleCBhZmUzNzNiODQxOGYzMDM4OWE0NWM4ZjJjMjM4Mjg2YWUz
OTQwYTYwLi43NWE2ZmI3OTE4OWY1YTk2ZTkyNGY2ZjIzODk2ZGRhNjU0ZmZiYjM0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2Fk
ZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3Jl
dGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUg
IkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkxheW91dFJlY3QuaCIKICNpbmNsdWRlICJM
b2dnaW5nLmgiCisjaW5jbHVkZSAiUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmgiCiAjaW5jbHVk
ZSA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJh
cy5oPgogCkBAIC0xOTEsNiArMTkyLDggQEAgdm9pZCBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhH
cmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEcKIAogICAg
IENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBjb250ZXh0LnBsYXRmb3JtQ29udGV4dCgpOwogCisg
ICAgUkVMRUFTRV9BU1NFUlQoIWlzSW5HUFVQcm9jZXNzIHx8ICFmb250LmZpbmRPVFNWR0dseXBo
cyhnbHlwaHMsIG51bUdseXBocykpOworCiAgICAgYm9vbCBzaG91bGRBbnRpYWxpYXMgPSB0cnVl
OwogICAgIGJvb2wgc2hvdWxkU21vb3RoRm9udHMgPSB0cnVlOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNw
cAppbmRleCA5NzU1NWJlMTI5MzA4ODVlZDE3MjYxZTAwZTNhNTk4ZDA0ZGE5ODA3Li45NDIyZjli
ZDYyMDkyY2U3MTgwNGUxZjM3ODBmZDU3Y2IyMGIyMTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAK
QEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjAgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMjEgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA2IEFsZXhleSBQ
cm9za3VyeWFrb3YKICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTQ0LDYgKzQ0LDcgQEAKIAogI2lmIFBM
QVRGT1JNKENPQ09BKQogI2luY2x1ZGUgIkxvY2FsZUNvY29hLmgiCisjaW5jbHVkZSA8cGFsL2Nm
L0NvcmVUZXh0U29mdExpbmsuaD4KICNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+
CiAjZWxzZQogI2luY2x1ZGUgPHBhbC9zcGkvd2luL0NvcmVUZXh0U1BJV2luLmg+CkBAIC03NzQs
NCArNzc1LDMzIEBAIGJvb2wgRm9udDo6aXNQcm9iYWJseU9ubHlVc2VkVG9SZW5kZXJJY29ucygp
IGNvbnN0CiAgICAgfSk7CiB9CiAKK09wdGlvbmFsPEJpdFZlY3Rvcj4gRm9udDo6ZmluZE9UU1ZH
R2x5cGhzKGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywgdW5zaWduZWQgY291bnQpIGNv
bnN0Cit7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgaWYgKCFtX290U1ZHVGFibGUpIHsKKyAg
ICAgICAgaWYgKGF1dG8gdGFibGVEYXRhID0gYWRvcHRDRihDVEZvbnRDb3B5VGFibGUocGxhdGZv
cm1EYXRhKCkuY3RGb250KCksIGtDVEZvbnRUYWJsZVNWRywga0NURm9udFRhYmxlT3B0aW9uTm9P
cHRpb25zKSkpCisgICAgICAgICAgICBtX290U1ZHVGFibGUgPSBQQUw6Ok9UU1ZHVGFibGUodGFi
bGVEYXRhLmdldCgpLCBmb250TWV0cmljcygpLnVuaXRzUGVyRW0oKSwgcGxhdGZvcm1EYXRhKCku
c2l6ZSgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpP
VFNWR1RhYmxlKCk7CisgICAgfQorCisgICAgaWYgKCFQQUw6OmlzT1RTVkdGcmFtZXdvcmtBdmFp
bGFibGUoKSB8fCBtX290U1ZHVGFibGUudmFsdWUoKS50YWJsZSkKKyAgICAgICAgcmV0dXJuIHsg
fTsKKworICAgIE9wdGlvbmFsPEJpdFZlY3Rvcj4gcmVzdWx0OworICAgIGZvciAodW5zaWduZWQg
aSA9IDA7IGkgPCBjb3VudDsgKytpKSB7CisgICAgICAgIGlmIChQQUw6OnNvZnRMaW5rT1RTVkdP
VFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoKG1fb3RTVkdUYWJsZS52YWx1ZSgpLnRh
YmxlLCBnbHlwaHNbaV0pICE9IGtDRk5vdEZvdW5kKSB7CisgICAgICAgICAgICBpZiAoIXJlc3Vs
dCkKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBCaXRWZWN0b3IoY291bnQpOworICAgICAgICAg
ICAgcmVzdWx0LnZhbHVlKCkucXVpY2tTZXQoaSk7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0
dXJuIHJlc3VsdDsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGdseXBocyk7CisgICAgVU5VU0VE
X1BBUkFNKGNvdW50KTsKKyAgICByZXR1cm4geyB9OworI2VuZGlmCit9CisKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlz
dERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAppbmRleCAxZWNhNTAzYjVlNDA4ZWZmNWM3
NWFhNDkyNmZiZmNiZjI5YWZlZTNkLi4zYzIwMThjZmViZjUyMzA2YWRhMTFmOWNkMGYzNTkyYmY4
ODhjZmIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNw
bGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0
RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCkBAIC0zNjIsNiArMzYyLDUzIEBAIHZvaWQg
RHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3SW1hZ2UoQ0dSZW5kZXJpbmdTdGF0ZVJlZiwg
Q0dHU3RhdGVSZWYgZ3N0YXRlCiAgICAgbV9vd25lci50cmFuc2xhdGUoMCwgLShyZWN0LnNpemUu
aGVpZ2h0ICsgMiAqIHJlY3Qub3JpZ2luLnkpKTsKIH0KIAorc3RydWN0IEdseXBoc0FuZEFkdmFu
Y2VzU3RvcmFnZSB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBW
ZWN0b3I8R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKK307CitzdHJ1Y3QgR2x5cGhzQW5k
QWR2YW5jZXMgeworICAgIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBoczsKKyAgICBjb25z
dCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzOworICAgIHVuc2lnbmVkIG51bUdseXBoczsK
KyAgICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5pdGlhbEFkdmFuY2U7CisgICAgT3B0aW9uYWw8R2x5
cGhzQW5kQWR2YW5jZXNTdG9yYWdlPiBzdG9yYWdlOworfTsKK3N0YXRpYyBHbHlwaHNBbmRBZHZh
bmNlcyBmaWx0ZXJPdXRPVFNWR0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1
ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVu
c2lnbmVkIG51bUdseXBocykKK3sKKyAgICBhdXRvIG90c3ZnR2x5cGhzID0gZm9udC5maW5kT1RT
VkdHbHlwaHMoZ2x5cGhzLCBudW1HbHlwaHMpOworICAgIGlmICghb3RzdmdHbHlwaHMpCisgICAg
ICAgIHJldHVybiB7IGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywgbWFrZUdseXBoQnVmZmVy
QWR2YW5jZSgpLCB7IH19OworCisgICAgQVNTRVJUKG90c3ZnR2x5cGhzLT5zaXplKCkgPT0gbnVt
R2x5cGhzKTsKKworICAgIEdseXBoc0FuZEFkdmFuY2VzIHJlc3VsdDsKKyAgICByZXN1bHQuaW5p
dGlhbEFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKCk7CisgICAgcmVzdWx0LnN0b3Jh
Z2UgPSBHbHlwaHNBbmRBZHZhbmNlc1N0b3JhZ2UoKTsKKworICAgIHJlc3VsdC5zdG9yYWdlLT5n
bHlwaHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1HbHlwaHMpOworICAgIHJlc3VsdC5zdG9y
YWdlLT5hZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJU
KHJlc3VsdC5zdG9yYWdlLT5nbHlwaHMuc2l6ZSgpID09IHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNl
cy5zaXplKCkpOworICAgICAgICBpZiAob3RzdmdHbHlwaHMtPnF1aWNrR2V0KGkpKSB7CisgICAg
ICAgICAgICBpZiAocmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLmlzRW1wdHkoKSkKKyAgICAgICAg
ICAgICAgICByZXN1bHQuaW5pdGlhbEFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNp
emUocmVzdWx0LmluaXRpYWxBZHZhbmNlKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMubGFzdCgp
ID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5s
YXN0KCkpICsgc2l6ZShhZHZhbmNlc1tpXSkpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgcmVzdWx0LnN0b3JhZ2UtPmdseXBocy51bmNoZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAg
ICAgICAgICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy51bmNoZWNrZWRBcHBlbmQoYWR2YW5j
ZXNbaV0pOworICAgICAgICB9CisgICAgICAgIEFTU0VSVChyZXN1bHQuc3RvcmFnZS0+Z2x5cGhz
LnNpemUoKSA9PSByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuc2l6ZSgpKTsKKyAgICB9CisKKyAg
ICByZXN1bHQuZ2x5cGhzID0gcmVzdWx0LnN0b3JhZ2UtPmdseXBocy5kYXRhKCk7CisgICAgcmVz
dWx0LmFkdmFuY2VzID0gcmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLmRhdGEoKTsKKyAgICByZXN1
bHQubnVtR2x5cGhzID0gcmVzdWx0LnN0b3JhZ2UtPmdseXBocy5zaXplKCk7CisKKyAgICByZXR1
cm4gcmVzdWx0OworfQorCiB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25z
dCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBo
QnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQ
b2ludCYgc3RhcnRQb2ludCwgRm9udFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAg
ICBpZiAobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0
aW9uOjpEb250RGVjb25zdHJ1Y3QpIHsKQEAgLTM3MSw4ICs0MTgsMTMgQEAgdm9pZCBEcmF3R2x5
cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZm
ZXJHbHlwaCogZ2wKIAogICAgIEFTU0VSVChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBE
cmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRlY29uc3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8
cmRhcjovL3Byb2JsZW0vNzAxNjY1NTI+IFJlY29yZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhz
QW5kQWR2YW5jZXMgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJP
dXRPVFNWR0dseXBocyhmb250LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMpOworICAgIEFT
U0VSVChnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5nbHlwaHMgPT0gZ2x5cGhz
IHx8IGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocyA9PSBnbHlwaHNB
bmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5zdG9yYWdlLT5nbHlwaHMuZGF0YSgpKTsKKyAg
ICBBU1NFUlQoZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMgPT0g
YWR2YW5jZXMgfHwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMg
PT0gZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuc3RvcmFnZS0+YWR2YW5jZXMu
ZGF0YSgpKTsKKwogICAgIHByZXBhcmVJbnRlcm5hbENvbnRleHQoZm9udCwgc21vb3RoaW5nTW9k
ZSk7Ci0gICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRleHQsIGZvbnQs
IGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywgc3RhcnRQb2ludCwgc21vb3RoaW5nTW9kZSk7
CisgICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRleHQsIGZvbnQsIGds
eXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocywgZ2x5cGhzQW5kQWR2YW5j
ZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMsIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9U
U1ZHR2x5cGhzLm51bUdseXBocywgc3RhcnRQb2ludCArIHNpemUoZ2x5cGhzQW5kQWR2YW5jZXNX
aXRob3V0T1RTVkdHbHlwaHMuaW5pdGlhbEFkdmFuY2UpLCBzbW9vdGhpbmdNb2RlKTsKICAgICBj
b25jbHVkZUludGVybmFsQ29udGV4dCgpOwogfQogCg==
</data>
<flag name="commit-queue"
          id="438846"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420359</attachid>
            <date>2021-02-15 13:27:17 -0800</date>
            <delta_ts>2021-02-15 17:21:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210215132716.patch</filename>
            <type>text/plain</type>
            <size>25569</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uNmFmZTI0ZmYxZjY3OGYzNWE5MTlkMWRiMDhhZjU2
ZDZiYTMwZDRlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZHIGZyYW1ld29yayB0byBk
ZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVj
dHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291bGQgYmUgcmVuZGVyZWQg
dXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nlc3MsIGFuZCBSRUxFQVNF
X0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0IGl0IHdvbid0IGJlIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBpcyBqdXN0IGEgdGVtcG9y
YXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4gcHJvcGVybHkgdHJhbnNj
b2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBkaXNwbGF5IGxpc3QgaW5m
cmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3MgZHJhd2luZyBPVC1TVkcg
Z2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAgICAgIHJpZ2h0IG5vdywg
b25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJhd2luZywgc2luY2UgcmVn
dWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAgICAgIHByb2Nlc3MgeWV0
LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24ndCB3YW50IHRvIGFjdHVh
bGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNhbnZhcy4KKyAgICAgICAg
V2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFrZSBzZW5zZSB0byBoYXZl
IHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6ZmluZE9UU1ZHR2x5cGhzIGNvbnN0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJD
b3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6ZmlsdGVyT3V0T1RT
VkdHbHlwaHMpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRyYXdHbHlwaHNSZWNv
cmRlcjo6ZHJhd0dseXBocyk6CisKIDIwMjEtMDItMTMgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlZHVjZSByZXF1aXJlbWVudHMgZm9yIGNvbG9yIHR5cGVzIHRv
IG9ubHkgY29udmVyc2lvbiB0byB0aGVpciByZWZlcmVuY2UgY29sb3IKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CmluZGV4IGU4ZWI5OWMyNGZlYmRmODhlNjQ5NzU4NzNkNzBlMGQxZTQ5NDAzMjYuLjlmYmU2Zjcy
NGRjYzRhZjc0MWE3YjIzM2M3ZTRjOTVjODk2NGFlZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIyIEBACisyMDIxLTAyLTEzICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBh
cHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRy
YXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BVIHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGlt
cGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2gg
c29mdC1saW5rcyB0aGUgT1RTVkcgZnJhbWV3b3JrIGJlY2F1c2UgaXQncyBhIHByaXZhdGUgZnJh
bWV3b3JrIHRoYXQgZG9lc24ndCBleGlzdCBvbiB3YXRjaE9TLgorCisgICAgICAgICogUEFMLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL2NmL0NvcmVUZXh0U29mdExp
bmsuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oOiBBZGRl
ZC4KKyAgICAgICAgKiBwYWwvY2YvT1RTVkdUYWJsZS5jcHA6IEFkZGVkLgorICAgICAgICAoUEFM
OjpPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKToKKyAgICAgICAgKFBBTDo6T1RTVkdUYWJsZTo6fk9U
U1ZHVGFibGUpOgorICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmg6IEFkZGVkLgorICAgICAg
ICAqIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaDoKKwogMjAyMS0wMi0xMCAgTXlsZXMgQy4gTWF4
ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgcGFsL3NwaS9jb2Nv
YS9Db3JlVGV4dFNQSS5oIHRvIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDk3MGU3ZTE4
NGVjMjVmMDRiNWZkYTllOWI4NDNkMDYwODQ0Y2RmNzUuLjJlZGJjYzljMDM4ODc1ZWFlNDAyY2E1
ZDU3OTU0OGRhMDdjZTc0NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwOSw2ICsxMDksOCBAQAogCQkxQzA5RDA1ODFFMzFD
NTdFMDA3MjVGMTggLyogY29uZmlnLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQzA5RDA1NzFFMzFDNTdFMDA3MjVGMTggLyogY29uZmlnLmggKi87IH07
CiAJCTFDNDg3NkQ4MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNDg3NkQ2MUY4RDdGNEUwMENDRUVC
RCAvKiBMb2dnaW5nLmNwcCAqLzsgfTsKIAkJMUM0ODc2RDkxRjhEN0Y0RTAwQ0NFRUJEIC8qIExv
Z2dpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFD
NDg3NkQ3MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmggKi87IH07CisJCTFDNzdDOEM5MjVE
Nzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBD
b3JlVGV4dFNvZnRMaW5rLmNwcCAqLzsgfTsKKwkJMUM3N0M4Q0UyNUQ3QTRBMzAwNjM1RTBDIC8q
IE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovOyB9Owog
CQkxQ0MzQUNFODIyQkQ3RUM1MDBGMzYwRjAgLyogTWV0YWxTUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAv
KiBNZXRhbFNQSS5oICovOyB9OwogCQkxQ0NFRTRGNTIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJ
U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0NF
RTRGNDIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi87IH07CiAJCTFDQ0VFNEY3MjBE
ODc0M0YwMDQ3QjA5NyAvKiBOU0FwcGVhcmFuY2VTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY2MjBEODc0M0YwMDQ3QjA5NyAvKiBOU0Fw
cGVhcmFuY2VTUEkuaCAqLzsgfTsKQEAgLTMwNiw2ICszMDgsMTAgQEAKIAkJMUM0ODc2RDcxRjhE
N0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nZ2luZy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzQ4NzZEQzFGOEQ3RkM2MDBDQ0VFQkQgLyogTG9n
TWFjcm9zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvZ01hY3Jvcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxQzY3Q0VBMjFFMzJFRTI2MDBGODBGMkUgLyogVmVyc2lvbi54Y2NvbmZpZyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBWZXJzaW9uLnhjY29uZmlnOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRl
eHRTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3N0M4QzgyNUQ3OTcyMDAwNjM1RTBDIC8q
IENvcmVUZXh0U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29yZVRleHRTb2Z0TGluay5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDQjI1RDc5QjZDMDA2MzVFMEMgLyog
T1RTVkdUYWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPVFNWR1RhYmxlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFDNzdDOENEMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9UU1ZHVGFibGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxQ0MzQUNFNzIyQkQ3RUI4MDBGMzYwRjAgLyogTWV0YWxTUEkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWV0YWxTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNDRUU0
RjQyMEQ4NzE5MzAwNDdCMDk3IC8qIENvcmVVSVNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDb3JlVUlTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUND
RUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBOU0FwcGVhcmFuY2VTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTU5NCw2ICs2MDAsMTAgQEAKIAkJCQk0MTZFOTk1MjIzREFFNkJFMDBFODcx
Q0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCQkwQ0Y5OUNBNjFGNzM4NDM2MDA3
RUU3OTMgLyogQ29yZU1lZGlhU29mdExpbmsuY3BwICovLAogCQkJCTBDRjk5Q0E3MUY3Mzg0Mzcw
MDdFRTc5MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOEM3MjVENzk3MjAw
MDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCAqLywKKwkJCQkxQzc3QzhDODI1RDc5NzIw
MDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOENEMjVEN0E0QTMw
MDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCAqLywKKwkJCQkxQzc3QzhDQjI1RDc5QjZDMDA2MzVF
MEMgLyogT1RTVkdUYWJsZS5oICovLAogCQkJCTQxNkU5OTU1MjNEQUVGRjcwMEU4NzFDQiAvKiBW
aWRlb1Rvb2xib3hTb2Z0TGluay5jcHAgKi8sCiAJCQkJNDE2RTk5NTYyM0RBRUZGNzAwRTg3MUNC
IC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmggKi8sCiAJCQkpOwpAQCAtMTAyNSw2ICsxMDM1LDcg
QEAKIAkJCQkwNzdFODdCMTIyNkE0NjAyMDBBMkFGRjAgLyogQVZGb3VuZGF0aW9uU29mdExpbmsu
bW0gaW4gU291cmNlcyAqLywKIAkJCQkwQzVGRkYwRjFGNzhEOURBMDA5RUZGMUEgLyogQ2xvY2tD
TS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTBDRjk5Q0E4MUY3Mzg0MzcwMDdFRTc5MyAvKiBDb3Jl
TWVkaWFTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQzc3QzhDOTI1RDc5NzIwMDA2
MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQzA5RDA1
NjFFMzFDNDY1MDA3MjVGMTggLyogQ3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUExMTc1QjU4MUY2QjQ3MDUwMEM0QjlGMCAvKiBEZWZhdWx0U2VhcmNoUHJv
dmlkZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjQ0MjkxNjQxRkE1MjY3MDAwMkNDOTNFIC8q
IEZpbGVTaXplRm9ybWF0dGVyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMTAzOCw2ICsxMDQ5LDcg
QEAKIAkJCQkwQ0Y5OUNBNDFGNzM2Mzc1MDA3RUU3OTMgLyogTWVkaWFUaW1lQVZGb3VuZGF0aW9u
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEQUNCMzYwMjM4NzQyNUIwMDE4RDdDRSAvKiBNZWRp
YVRvb2xib3hTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTY0N0ZCMDI1MTc1OURE
MDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSBpbiBTb3VyY2VzICovLAorCQkJCTFD
NzdDOENFMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUNENjEyMkNEMjU1OUI2QUMwMEZDNjU3QSAvKiBPdXRwdXRDb250ZXh0Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQ0Q2MTIyRDEyNTU5QjhGMjAwRkM2NTdBIC8qIE91dHB1dERldmljZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUExRjYzQ0EwMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29m
dExpbmsubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0Nv
cmVUZXh0U29mdExpbmsuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1MDgxYTA5YTA3YTBjNjBlZTcxNWU4Zjgw
Yjc3YTlkODhiMzM3ZTAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2NmL0NvcmVUZXh0U29mdExpbmsuY3BwCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAq
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5o
PgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfUFJJVkFURV9GUkFN
RVdPUktfRk9SX1NPVVJDRShQQUwsIE9UU1ZHKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NP
VVJDRShQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEsIE9UU1ZHVGFibGVSZWYs
IChDRkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNp
emUpLCAoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSkKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5
cGgsIENGSW5kZXgsIChPVFNWR1RhYmxlUmVmIHRhYmxlLCBDR0dseXBoIGdseXBoKSwgKHRhYmxl
LCBnbHlwaCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9UU1ZHLCBPVFNW
R1RhYmxlUmVsZWFzZSwgdm9pZCwgKE9UU1ZHVGFibGVSZWYgdGFibGUpLCAodGFibGUpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmggYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4x
ZDBjMDFkMGViMDE5NzQzNWY0N2UzZmY1MmFlMWY2MTE0YzBiODZkCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmgKQEAgLTAsMCAr
MSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHBhbC9zcGkv
Y2YvQ29yZVRleHRTUEkuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9M
SU5LX0ZSQU1FV09SS19GT1JfSEVBREVSKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfSEVBREVSKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdU
YWJsZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9h
dCBmb250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5L
X0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5k
ZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgp
LCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT1RT
VkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJs
ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
ZjAxZTdiMjQyMDQyMTI2YzNlNTk5ZThjNjhhNTU4ZjhiYmFiMDliCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApAQCAtMCwwICsxLDQz
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJPVFNWR1Rh
YmxlLmgiCisKKyNpbmNsdWRlICJDb3JlVGV4dFNvZnRMaW5rLmgiCisKK25hbWVzcGFjZSBQQUwg
eworCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQg
dW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSkKKyAgICA6IHRhYmxlKGlzT1RTVkdGcmFtZXdv
cmtBdmFpbGFibGUoKSA/IHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEoc3Zn
VGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9CisKK09UU1ZHVGFi
bGU6On5PVFNWR1RhYmxlKCkKK3sKKyAgICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgp
ICYmIHRhYmxlKQorICAgICAgICBzb2Z0TGlua09UU1ZHT1RTVkdUYWJsZVJlbGVhc2UodGFibGUp
OworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFi
bGUuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjRhZTNkZjBlODE1OGMzOTY2YjM5OGZmZGYzMjc2MDY1NzgxMTE1YzkKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApAQCAtMCwwICsxLDM5
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9D
b3JlVGV4dFNQSS5oPgorCituYW1lc3BhY2UgUEFMIHsKKworc3RydWN0IE9UU1ZHVGFibGUgewor
ICAgIE9UU1ZHVGFibGUoKSA9IGRlZmF1bHQ7CisgICAgT1RTVkdUYWJsZShDRkRhdGFSZWYgc3Zn
VGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpOworICAgIH5PVFNW
R1RhYmxlKCk7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRhYmxlIHsgbnVsbHB0ciB9OworfTsKKwor
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEku
aCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmgKaW5kZXggNDgx
ZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNhMWMwYS4uNmY1NmExYWMxNjY2N2QzOGE0
ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9j
Zi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaWYgVVNFKEFQUExFX0lOVEVSTkFM
X1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVUZXh0UHJpdi5oPgorI2luY2x1ZGUgPE9U
U1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYgKzgzLDggQEAgZW51bSB7CiAgICAga0NU
Rm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFpdEJvbGQsCiB9OwogCit0eXBlZGVmIGNv
bnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1RhYmxlUmVmOworCiAjZW5kaWYKIAogV1RG
X0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKaW5k
ZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBiZC4uYzdkYTU0OTNmYzE0
NjQwMThhNzFhYjIxODlmYTU1ZjZiNmJiMzJhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlzIGZpbGUgaXMgcGFydCBv
ZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmln
aHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAgKiBUaGlzIGxpYnJhcnkg
aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCkBAIC00Miw2
ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDxDb3JlRm91bmRhdGlv
bi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9jZi9PVFNWR1RhYmxlLmg+CiAjaW5j
bHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxOSw2ICsyMjAsOSBAQCBwdWJs
aWM6CiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdDaGFyYWN0ZXJTZXF1ZW5jZShjb25zdCBV
Q2hhciosIHNpemVfdCkgY29uc3Q7CiAgICAgdm9pZCBhcHBseVRyYW5zZm9ybXMoR2x5cGhCdWZm
ZXImLCB1bnNpZ25lZCBiZWdpbm5pbmdHbHlwaEluZGV4LCB1bnNpZ25lZCBiZWdpbm5pbmdTdHJp
bmdJbmRleCwgYm9vbCBlbmFibGVLZXJuaW5nLCBib29sIHJlcXVpcmVzU2hhcGluZywgY29uc3Qg
QXRvbVN0cmluZyYgbG9jYWxlLCBTdHJpbmdWaWV3IHRleHQsIFRleHREaXJlY3Rpb24pIGNvbnN0
OwogCisgICAgLy8gUmV0dXJucyBudWxsb3B0IGlmIG5vbmUgb2YgdGhlIGdseXBocyBhcmUgT1Qt
U1ZHIGdseXBocy4KKyAgICBPcHRpb25hbDxCaXRWZWN0b3I+IGZpbmRPVFNWR0dseXBocyhjb25z
dCBHbHlwaEJ1ZmZlckdseXBoKiwgdW5zaWduZWQgY291bnQpIGNvbnN0OworCiAjaWYgUExBVEZP
Uk0oV0lOKQogICAgIFNDUklQVF9GT05UUFJPUEVSVElFUyogc2NyaXB0Rm9udFByb3BlcnRpZXMo
KSBjb25zdDsKICAgICBTQ1JJUFRfQ0FDSEUqIHNjcmlwdENhY2hlKCkgY29uc3QgeyByZXR1cm4g
Jm1fc2NyaXB0Q2FjaGU7IH0KQEAgLTI5Myw2ICsyOTcsNyBAQCBwcml2YXRlOgogICAgIG11dGFi
bGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5QWxsU21hbGxDYXBzOwog
ICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5UGV0aXRl
Q2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRC
eUFsbFBldGl0ZUNhcHM7CisgICAgbXV0YWJsZSBPcHRpb25hbDxQQUw6Ok9UU1ZHVGFibGU+IG1f
b3RTVkdUYWJsZTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oV0lOKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2Fz
Y2FkZUNvcmVUZXh0LmNwcAppbmRleCBhZmUzNzNiODQxOGYzMDM4OWE0NWM4ZjJjMjM4Mjg2YWUz
OTQwYTYwLi42ZmYwMGJmYmQ1NGEyYjhhMThlZWMwNTg0OTA3OTM1NGMwMjEyZGIwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2Fk
ZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3Jl
dGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUg
IkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkxheW91dFJlY3QuaCIKICNpbmNsdWRlICJM
b2dnaW5nLmgiCisjaW5jbHVkZSAiUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmgiCiAjaW5jbHVk
ZSA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJh
cy5oPgogCkBAIC0xOTEsNiArMTkyLDggQEAgdm9pZCBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhH
cmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEcKIAogICAg
IENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBjb250ZXh0LnBsYXRmb3JtQ29udGV4dCgpOwogCisg
ICAgUkVMRUFTRV9BU1NFUlQoIWlzSW5HUFVQcm9jZXNzKCkgfHwgIWZvbnQuZmluZE9UU1ZHR2x5
cGhzKGdseXBocywgbnVtR2x5cGhzKSk7CisKICAgICBib29sIHNob3VsZEFudGlhbGlhcyA9IHRy
dWU7CiAgICAgYm9vbCBzaG91bGRTbW9vdGhGb250cyA9IHRydWU7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQu
Y3BwCmluZGV4IDk3NTU1YmUxMjkzMDg4NWVkMTcyNjFlMDBlM2E1OThkMDRkYTk4MDcuLjk0MjJm
OWJkNjIwOTJjZTcxODA0ZTFmMzc4MGZkNTdjYjIwYjIxNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNw
cApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAyMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAyMSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYgQWxleGV5
IFByb3NrdXJ5YWtvdgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dApAQCAtNDQsNiArNDQsNyBAQAogCiAjaWYg
UExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSAiTG9jYWxlQ29jb2EuaCIKKyNpbmNsdWRlIDxwYWwv
Y2YvQ29yZVRleHRTb2Z0TGluay5oPgogI2luY2x1ZGUgPHBhbC9zcGkvY2YvQ29yZVRleHRTUEku
aD4KICNlbHNlCiAjaW5jbHVkZSA8cGFsL3NwaS93aW4vQ29yZVRleHRTUElXaW4uaD4KQEAgLTc3
NCw0ICs3NzUsMzMgQEAgYm9vbCBGb250Ojppc1Byb2JhYmx5T25seVVzZWRUb1JlbmRlckljb25z
KCkgY29uc3QKICAgICB9KTsKIH0KIAorT3B0aW9uYWw8Qml0VmVjdG9yPiBGb250OjpmaW5kT1RT
VkdHbHlwaHMoY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzLCB1bnNpZ25lZCBjb3VudCkg
Y29uc3QKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBpZiAoIW1fb3RTVkdUYWJsZSkgewor
ICAgICAgICBpZiAoYXV0byB0YWJsZURhdGEgPSBhZG9wdENGKENURm9udENvcHlUYWJsZShwbGF0
Zm9ybURhdGEoKS5jdEZvbnQoKSwga0NURm9udFRhYmxlU1ZHLCBrQ1RGb250VGFibGVPcHRpb25O
b09wdGlvbnMpKSkKKyAgICAgICAgICAgIG1fb3RTVkdUYWJsZSA9IFBBTDo6T1RTVkdUYWJsZSh0
YWJsZURhdGEuZ2V0KCksIGZvbnRNZXRyaWNzKCkudW5pdHNQZXJFbSgpLCBwbGF0Zm9ybURhdGEo
KS5zaXplKCkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX290U1ZHVGFibGUgPSBQQUw6
Ok9UU1ZHVGFibGUoKTsKKyAgICB9CisKKyAgICBpZiAoIVBBTDo6aXNPVFNWR0ZyYW1ld29ya0F2
YWlsYWJsZSgpIHx8IG1fb3RTVkdUYWJsZS52YWx1ZSgpLnRhYmxlKQorICAgICAgICByZXR1cm4g
eyB9OworCisgICAgT3B0aW9uYWw8Qml0VmVjdG9yPiByZXN1bHQ7CisgICAgZm9yICh1bnNpZ25l
ZCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKKyAgICAgICAgaWYgKFBBTDo6c29mdExpbmtPVFNW
R09UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgobV9vdFNWR1RhYmxlLnZhbHVlKCku
dGFibGUsIGdseXBoc1tpXSkgIT0ga0NGTm90Rm91bmQpIHsKKyAgICAgICAgICAgIGlmICghcmVz
dWx0KQorICAgICAgICAgICAgICAgIHJlc3VsdCA9IEJpdFZlY3Rvcihjb3VudCk7CisgICAgICAg
ICAgICByZXN1bHQudmFsdWUoKS5xdWlja1NldChpKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBy
ZXR1cm4gcmVzdWx0OworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZ2x5cGhzKTsKKyAgICBVTlVT
RURfUEFSQU0oY291bnQpOworICAgIHJldHVybiB7IH07CisjZW5kaWYKK30KKwogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlM
aXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNiNWU0MDhlZmY1
Yzc1YWE0OTI2ZmJmY2JmMjlhZmVlM2QuLjNjMjAxOGNmZWJmNTIzMDZhZGExMWY5Y2QwZjM1OTJi
Zjg4OGNmYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rp
c3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxp
c3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2Miw2ICszNjIsNTMgQEAgdm9p
ZCBEcmF3R2x5cGhzUmVjb3JkZXI6OnJlY29yZERyYXdJbWFnZShDR1JlbmRlcmluZ1N0YXRlUmVm
LCBDR0dTdGF0ZVJlZiBnc3RhdGUKICAgICBtX293bmVyLnRyYW5zbGF0ZSgwLCAtKHJlY3Quc2l6
ZS5oZWlnaHQgKyAyICogcmVjdC5vcmlnaW4ueSkpOwogfQogCitzdHJ1Y3QgR2x5cGhzQW5kQWR2
YW5jZXNTdG9yYWdlIHsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaD4gZ2x5cGhzOworICAg
IFZlY3RvcjxHbHlwaEJ1ZmZlckFkdmFuY2U+IGFkdmFuY2VzOworfTsKK3N0cnVjdCBHbHlwaHNB
bmRBZHZhbmNlcyB7CisgICAgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzOworICAgIGNv
bnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXM7CisgICAgdW5zaWduZWQgbnVtR2x5cGhz
OworICAgIEdseXBoQnVmZmVyQWR2YW5jZSBpbml0aWFsQWR2YW5jZTsKKyAgICBPcHRpb25hbDxH
bHlwaHNBbmRBZHZhbmNlc1N0b3JhZ2U+IHN0b3JhZ2U7Cit9Oworc3RhdGljIEdseXBoc0FuZEFk
dmFuY2VzIGZpbHRlck91dE9UU1ZHR2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBo
QnVmZmVyR2x5cGgqIGdseXBocywgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywg
dW5zaWduZWQgbnVtR2x5cGhzKQoreworICAgIGF1dG8gb3RzdmdHbHlwaHMgPSBmb250LmZpbmRP
VFNWR0dseXBocyhnbHlwaHMsIG51bUdseXBocyk7CisgICAgaWYgKCFvdHN2Z0dseXBocykKKyAg
ICAgICAgcmV0dXJuIHsgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBtYWtlR2x5cGhCdWZm
ZXJBZHZhbmNlKCksIHsgfX07CisKKyAgICBBU1NFUlQob3RzdmdHbHlwaHMtPnNpemUoKSA9PSBu
dW1HbHlwaHMpOworCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgcmVzdWx0OworICAgIHJlc3VsdC5p
bml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2UoKTsKKyAgICByZXN1bHQuc3Rv
cmFnZSA9IEdseXBoc0FuZEFkdmFuY2VzU3RvcmFnZSgpOworCisgICAgcmVzdWx0LnN0b3JhZ2Ut
PmdseXBocy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisgICAgcmVzdWx0LnN0
b3JhZ2UtPmFkdmFuY2VzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKworICAg
IGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1HbHlwaHM7ICsraSkgeworICAgICAgICBBU1NF
UlQocmVzdWx0LnN0b3JhZ2UtPmdseXBocy5zaXplKCkgPT0gcmVzdWx0LnN0b3JhZ2UtPmFkdmFu
Y2VzLnNpemUoKSk7CisgICAgICAgIGlmIChvdHN2Z0dseXBocy0+cXVpY2tHZXQoaSkpIHsKKyAg
ICAgICAgICAgIGlmIChyZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuaXNFbXB0eSgpKQorICAgICAg
ICAgICAgICAgIHJlc3VsdC5pbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2Uo
c2l6ZShyZXN1bHQuaW5pdGlhbEFkdmFuY2UpICsgc2l6ZShhZHZhbmNlc1tpXSkpOworICAgICAg
ICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5sYXN0
KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2Vz
Lmxhc3QoKSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLnVuY2hlY2tlZEFwcGVuZChnbHlwaHNbaV0pOwor
ICAgICAgICAgICAgcmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChhZHZh
bmNlc1tpXSk7CisgICAgICAgIH0KKyAgICAgICAgQVNTRVJUKHJlc3VsdC5zdG9yYWdlLT5nbHlw
aHMuc2l6ZSgpID09IHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5zaXplKCkpOworICAgIH0KKwor
ICAgIHJlc3VsdC5nbHlwaHMgPSByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLmRhdGEoKTsKKyAgICBy
ZXN1bHQuYWR2YW5jZXMgPSByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuZGF0YSgpOworICAgIHJl
c3VsdC5udW1HbHlwaHMgPSByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLnNpemUoKTsKKworICAgIHJl
dHVybiByZXN1bHQ7Cit9CisKIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhzKGNv
bnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3QgR2x5
cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzLCBjb25zdCBGbG9h
dFBvaW50JiBzdGFydFBvaW50LCBGb250U21vb3RoaW5nTW9kZSBzbW9vdGhpbmdNb2RlKQogewog
ICAgIGlmIChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1
Y3Rpb246OkRvbnREZWNvbnN0cnVjdCkgewpAQCAtMzcxLDggKzQxOCwxMyBAQCB2b2lkIERyYXdH
bHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1
ZmZlckdseXBoKiBnbAogCiAgICAgQVNTRVJUKG1fZHJhd0dseXBoc0RlY29uc3RydWN0aW9uID09
IERyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbjo6RGVjb25zdHJ1Y3QpOwogCisgICAgLy8gRklYTUU6
IDxyZGFyOi8vcHJvYmxlbS83MDE2NjU1Mj4gUmVjb3JkIE9UU1ZHIGdseXBocy4KKyAgICBHbHlw
aHNBbmRBZHZhbmNlcyBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocyA9IGZpbHRl
ck91dE9UU1ZHR2x5cGhzKGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocyk7CisgICAg
QVNTRVJUKGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocyA9PSBnbHlw
aHMgfHwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzID09IGdseXBo
c0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLnN0b3JhZ2UtPmdseXBocy5kYXRhKCkpOwor
ICAgIEFTU0VSVChnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZhbmNlcyA9
PSBhZHZhbmNlcyB8fCBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZhbmNl
cyA9PSBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5zdG9yYWdlLT5hZHZhbmNl
cy5kYXRhKCkpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4dChmb250LCBzbW9vdGhpbmdN
b2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9u
dCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBvaW50LCBzbW9vdGhpbmdNb2Rl
KTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9udCwg
Z2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzLCBnbHlwaHNBbmRBZHZh
bmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZhbmNlcywgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0
T1RTVkdHbHlwaHMubnVtR2x5cGhzLCBzdGFydFBvaW50ICsgc2l6ZShnbHlwaHNBbmRBZHZhbmNl
c1dpdGhvdXRPVFNWR0dseXBocy5pbml0aWFsQWR2YW5jZSksIHNtb290aGluZ01vZGUpOwogICAg
IGNvbmNsdWRlSW50ZXJuYWxDb250ZXh0KCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420399</attachid>
            <date>2021-02-15 17:21:33 -0800</date>
            <delta_ts>2021-02-15 17:22:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210215172132.patch</filename>
            <type>text/plain</type>
            <size>26953</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uNmFmZTI0ZmYxZjY3OGYzNWE5MTlkMWRiMDhhZjU2
ZDZiYTMwZDRlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZHIGZyYW1ld29yayB0byBk
ZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVj
dHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291bGQgYmUgcmVuZGVyZWQg
dXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nlc3MsIGFuZCBSRUxFQVNF
X0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0IGl0IHdvbid0IGJlIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBpcyBqdXN0IGEgdGVtcG9y
YXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4gcHJvcGVybHkgdHJhbnNj
b2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBkaXNwbGF5IGxpc3QgaW5m
cmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3MgZHJhd2luZyBPVC1TVkcg
Z2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAgICAgIHJpZ2h0IG5vdywg
b25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJhd2luZywgc2luY2UgcmVn
dWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAgICAgIHByb2Nlc3MgeWV0
LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24ndCB3YW50IHRvIGFjdHVh
bGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNhbnZhcy4KKyAgICAgICAg
V2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFrZSBzZW5zZSB0byBoYXZl
IHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6ZmluZE9UU1ZHR2x5cGhzIGNvbnN0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJD
b3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6ZmlsdGVyT3V0T1RT
VkdHbHlwaHMpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRyYXdHbHlwaHNSZWNv
cmRlcjo6ZHJhd0dseXBocyk6CisKIDIwMjEtMDItMTMgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlZHVjZSByZXF1aXJlbWVudHMgZm9yIGNvbG9yIHR5cGVzIHRv
IG9ubHkgY29udmVyc2lvbiB0byB0aGVpciByZWZlcmVuY2UgY29sb3IKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CmluZGV4IGU4ZWI5OWMyNGZlYmRmODhlNjQ5NzU4NzNkNzBlMGQxZTQ5NDAzMjYuLjlmYmU2Zjcy
NGRjYzRhZjc0MWE3YjIzM2M3ZTRjOTVjODk2NGFlZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIyIEBACisyMDIxLTAyLTEzICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBh
cHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRy
YXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BVIHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGlt
cGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2gg
c29mdC1saW5rcyB0aGUgT1RTVkcgZnJhbWV3b3JrIGJlY2F1c2UgaXQncyBhIHByaXZhdGUgZnJh
bWV3b3JrIHRoYXQgZG9lc24ndCBleGlzdCBvbiB3YXRjaE9TLgorCisgICAgICAgICogUEFMLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL2NmL0NvcmVUZXh0U29mdExp
bmsuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oOiBBZGRl
ZC4KKyAgICAgICAgKiBwYWwvY2YvT1RTVkdUYWJsZS5jcHA6IEFkZGVkLgorICAgICAgICAoUEFM
OjpPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKToKKyAgICAgICAgKFBBTDo6T1RTVkdUYWJsZTo6fk9U
U1ZHVGFibGUpOgorICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmg6IEFkZGVkLgorICAgICAg
ICAqIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaDoKKwogMjAyMS0wMi0xMCAgTXlsZXMgQy4gTWF4
ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgcGFsL3NwaS9jb2Nv
YS9Db3JlVGV4dFNQSS5oIHRvIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDk3MGU3ZTE4
NGVjMjVmMDRiNWZkYTllOWI4NDNkMDYwODQ0Y2RmNzUuLjJlZGJjYzljMDM4ODc1ZWFlNDAyY2E1
ZDU3OTU0OGRhMDdjZTc0NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwOSw2ICsxMDksOCBAQAogCQkxQzA5RDA1ODFFMzFD
NTdFMDA3MjVGMTggLyogY29uZmlnLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQzA5RDA1NzFFMzFDNTdFMDA3MjVGMTggLyogY29uZmlnLmggKi87IH07
CiAJCTFDNDg3NkQ4MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNDg3NkQ2MUY4RDdGNEUwMENDRUVC
RCAvKiBMb2dnaW5nLmNwcCAqLzsgfTsKIAkJMUM0ODc2RDkxRjhEN0Y0RTAwQ0NFRUJEIC8qIExv
Z2dpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFD
NDg3NkQ3MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmggKi87IH07CisJCTFDNzdDOEM5MjVE
Nzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBD
b3JlVGV4dFNvZnRMaW5rLmNwcCAqLzsgfTsKKwkJMUM3N0M4Q0UyNUQ3QTRBMzAwNjM1RTBDIC8q
IE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovOyB9Owog
CQkxQ0MzQUNFODIyQkQ3RUM1MDBGMzYwRjAgLyogTWV0YWxTUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAv
KiBNZXRhbFNQSS5oICovOyB9OwogCQkxQ0NFRTRGNTIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJ
U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0NF
RTRGNDIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi87IH07CiAJCTFDQ0VFNEY3MjBE
ODc0M0YwMDQ3QjA5NyAvKiBOU0FwcGVhcmFuY2VTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY2MjBEODc0M0YwMDQ3QjA5NyAvKiBOU0Fw
cGVhcmFuY2VTUEkuaCAqLzsgfTsKQEAgLTMwNiw2ICszMDgsMTAgQEAKIAkJMUM0ODc2RDcxRjhE
N0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nZ2luZy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzQ4NzZEQzFGOEQ3RkM2MDBDQ0VFQkQgLyogTG9n
TWFjcm9zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvZ01hY3Jvcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxQzY3Q0VBMjFFMzJFRTI2MDBGODBGMkUgLyogVmVyc2lvbi54Y2NvbmZpZyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBWZXJzaW9uLnhjY29uZmlnOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRl
eHRTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3N0M4QzgyNUQ3OTcyMDAwNjM1RTBDIC8q
IENvcmVUZXh0U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29yZVRleHRTb2Z0TGluay5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDQjI1RDc5QjZDMDA2MzVFMEMgLyog
T1RTVkdUYWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPVFNWR1RhYmxlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFDNzdDOENEMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9UU1ZHVGFibGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxQ0MzQUNFNzIyQkQ3RUI4MDBGMzYwRjAgLyogTWV0YWxTUEkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWV0YWxTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNDRUU0
RjQyMEQ4NzE5MzAwNDdCMDk3IC8qIENvcmVVSVNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDb3JlVUlTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUND
RUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBOU0FwcGVhcmFuY2VTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTU5NCw2ICs2MDAsMTAgQEAKIAkJCQk0MTZFOTk1MjIzREFFNkJFMDBFODcx
Q0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCQkwQ0Y5OUNBNjFGNzM4NDM2MDA3
RUU3OTMgLyogQ29yZU1lZGlhU29mdExpbmsuY3BwICovLAogCQkJCTBDRjk5Q0E3MUY3Mzg0Mzcw
MDdFRTc5MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOEM3MjVENzk3MjAw
MDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCAqLywKKwkJCQkxQzc3QzhDODI1RDc5NzIw
MDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOENEMjVEN0E0QTMw
MDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCAqLywKKwkJCQkxQzc3QzhDQjI1RDc5QjZDMDA2MzVF
MEMgLyogT1RTVkdUYWJsZS5oICovLAogCQkJCTQxNkU5OTU1MjNEQUVGRjcwMEU4NzFDQiAvKiBW
aWRlb1Rvb2xib3hTb2Z0TGluay5jcHAgKi8sCiAJCQkJNDE2RTk5NTYyM0RBRUZGNzAwRTg3MUNC
IC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmggKi8sCiAJCQkpOwpAQCAtMTAyNSw2ICsxMDM1LDcg
QEAKIAkJCQkwNzdFODdCMTIyNkE0NjAyMDBBMkFGRjAgLyogQVZGb3VuZGF0aW9uU29mdExpbmsu
bW0gaW4gU291cmNlcyAqLywKIAkJCQkwQzVGRkYwRjFGNzhEOURBMDA5RUZGMUEgLyogQ2xvY2tD
TS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTBDRjk5Q0E4MUY3Mzg0MzcwMDdFRTc5MyAvKiBDb3Jl
TWVkaWFTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQzc3QzhDOTI1RDc5NzIwMDA2
MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQzA5RDA1
NjFFMzFDNDY1MDA3MjVGMTggLyogQ3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUExMTc1QjU4MUY2QjQ3MDUwMEM0QjlGMCAvKiBEZWZhdWx0U2VhcmNoUHJv
dmlkZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjQ0MjkxNjQxRkE1MjY3MDAwMkNDOTNFIC8q
IEZpbGVTaXplRm9ybWF0dGVyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMTAzOCw2ICsxMDQ5LDcg
QEAKIAkJCQkwQ0Y5OUNBNDFGNzM2Mzc1MDA3RUU3OTMgLyogTWVkaWFUaW1lQVZGb3VuZGF0aW9u
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEQUNCMzYwMjM4NzQyNUIwMDE4RDdDRSAvKiBNZWRp
YVRvb2xib3hTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTY0N0ZCMDI1MTc1OURE
MDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSBpbiBTb3VyY2VzICovLAorCQkJCTFD
NzdDOENFMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUNENjEyMkNEMjU1OUI2QUMwMEZDNjU3QSAvKiBPdXRwdXRDb250ZXh0Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQ0Q2MTIyRDEyNTU5QjhGMjAwRkM2NTdBIC8qIE91dHB1dERldmljZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUExRjYzQ0EwMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29m
dExpbmsubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0Nv
cmVUZXh0U29mdExpbmsuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1MDgxYTA5YTA3YTBjNjBlZTcxNWU4Zjgw
Yjc3YTlkODhiMzM3ZTAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2NmL0NvcmVUZXh0U29mdExpbmsuY3BwCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAq
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5o
PgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfUFJJVkFURV9GUkFN
RVdPUktfRk9SX1NPVVJDRShQQUwsIE9UU1ZHKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NP
VVJDRShQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEsIE9UU1ZHVGFibGVSZWYs
IChDRkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNp
emUpLCAoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSkKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5
cGgsIENGSW5kZXgsIChPVFNWR1RhYmxlUmVmIHRhYmxlLCBDR0dseXBoIGdseXBoKSwgKHRhYmxl
LCBnbHlwaCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9UU1ZHLCBPVFNW
R1RhYmxlUmVsZWFzZSwgdm9pZCwgKE9UU1ZHVGFibGVSZWYgdGFibGUpLCAodGFibGUpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmggYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4x
ZDBjMDFkMGViMDE5NzQzNWY0N2UzZmY1MmFlMWY2MTE0YzBiODZkCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmgKQEAgLTAsMCAr
MSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHBhbC9zcGkv
Y2YvQ29yZVRleHRTUEkuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9M
SU5LX0ZSQU1FV09SS19GT1JfSEVBREVSKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfSEVBREVSKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdU
YWJsZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9h
dCBmb250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5L
X0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5k
ZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgp
LCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT1RT
VkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJs
ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5i
NTI4Yzg4OWQwZTkzMmQxNTExZWE4YTkxNjEzMDM3NDI0MjcyZGVlCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApAQCAtMCwwICsxLDYy
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJPVFNWR1Rh
YmxlLmgiCisKKyNpbmNsdWRlICJDb3JlVGV4dFNvZnRMaW5rLmgiCisKK25hbWVzcGFjZSBQQUwg
eworCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKCkKK3sKK30KKworT1RTVkdUYWJsZTo6T1RTVkdU
YWJsZShDRkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9u
dFNpemUpCisgICAgOiB0YWJsZShpc09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgPyBzb2Z0TGlu
a09UU1ZHT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKHN2Z1RhYmxlLCB1bml0c1BlckVtLCBmb250
U2l6ZSkgOiBudWxscHRyKQoreworfQorCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKE9UU1ZHVGFi
bGUmJiBvdGhlcikKKyAgICA6IHRhYmxlKG90aGVyLnRhYmxlKQoreworICAgIG90aGVyLnRhYmxl
ID0gbnVsbHB0cjsKK30KKworT1RTVkdUYWJsZTo6fk9UU1ZHVGFibGUoKQoreworICAgIGlmIChp
c09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgJiYgdGFibGUpCisgICAgICAgIHNvZnRMaW5rT1RT
VkdPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7Cit9CisKK09UU1ZHVGFibGUmIE9UU1ZHVGFibGU6
Om9wZXJhdG9yPShPVFNWR1RhYmxlJiYgb3RoZXIpCit7CisgICAgaWYgKGlzT1RTVkdGcmFtZXdv
cmtBdmFpbGFibGUoKSAmJiB0YWJsZSkKKyAgICAgICAgc29mdExpbmtPVFNWR09UU1ZHVGFibGVS
ZWxlYXNlKHRhYmxlKTsKKyAgICB0YWJsZSA9IG90aGVyLnRhYmxlOworICAgIG90aGVyLnRhYmxl
ID0gbnVsbHB0cjsKKyAgICByZXR1cm4gKnRoaXM7Cit9CisKK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9jZi9PVFNWR1RhYmxlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGE0NmViNzA2ODFhOGM4MmZjNzBlZGY1MTM1
ZTdhZmUzYzEyYTUzNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvT1RTVkdUYWJsZS5oCkBAIC0wLDAgKzEsNDQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBv
bmNlCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CisKK25hbWVzcGFjZSBQ
QUwgeworCitzdHJ1Y3QgT1RTVkdUYWJsZSB7CisgICAgT1RTVkdUYWJsZSgpOworICAgIE9UU1ZH
VGFibGUoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZv
bnRTaXplKTsKKyAgICBPVFNWR1RhYmxlKGNvbnN0IE9UU1ZHVGFibGUmKSA9IGRlbGV0ZTsKKyAg
ICBPVFNWR1RhYmxlKE9UU1ZHVGFibGUmJik7CisgICAgfk9UU1ZHVGFibGUoKTsKKworICAgIE9U
U1ZHVGFibGUmIG9wZXJhdG9yPShjb25zdCBPVFNWR1RhYmxlJikgPSBkZWxldGU7CisgICAgT1RT
VkdUYWJsZSYgb3BlcmF0b3I9KE9UU1ZHVGFibGUmJik7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRh
YmxlIHsgbnVsbHB0ciB9OworfTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2Nm
L0NvcmVUZXh0U1BJLmgKaW5kZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNh
MWMwYS4uNmY1NmExYWMxNjY2N2QzOGE0ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBA
CiAjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVU
ZXh0UHJpdi5oPgorI2luY2x1ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYg
KzgzLDggQEAgZW51bSB7CiAgICAga0NURm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFp
dEJvbGQsCiB9OwogCit0eXBlZGVmIGNvbnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1Rh
YmxlUmVmOworCiAjZW5kaWYKIAogV1RGX0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL1dlYkNv
cmUueGNzY2hlbWUgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai94Y3NoYXJlZGRh
dGEveGNzY2hlbWVzL1dlYkNvcmUueGNzY2hlbWUKaW5kZXggMTU4MmUxYTNjNTZkZjllNzgyMDBk
OTlhOTk4NjgwNTkxYjRjZGYwYi4uMDdlOTQxOWY1ZjI2ZjcxZmU4YjRhYmQ3YWQzY2JkOWU5ZTZh
M2FlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2oveGNzaGFy
ZWRkYXRhL3hjc2NoZW1lcy9XZWJDb3JlLnhjc2NoZW1lCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvV2ViQ29yZS54Y3NjaGVtZQpA
QCAtNDAsNiArNDAsMTEgQEAKICAgICAgIGRlYnVnRG9jdW1lbnRWZXJzaW9uaW5nID0gIllFUyIK
ICAgICAgIGRlYnVnU2VydmljZUV4dGVuc2lvbiA9ICJpbnRlcm5hbCIKICAgICAgIGFsbG93TG9j
YXRpb25TaW11bGF0aW9uID0gIllFUyI+CisgICAgICA8UGF0aFJ1bm5hYmxlCisgICAgICAgICBy
dW5uYWJsZURlYnVnZ2luZ01vZGUgPSAiMCIKKyAgICAgICAgIEJ1bmRsZUlkZW50aWZpZXIgPSAi
b3JnLndlYmtpdC5NaW5pQnJvd3NlciIKKyAgICAgICAgIEZpbGVQYXRoID0gIi9Vc2Vycy9tbWF4
ZmllbGQvQnVpbGQvUHJvZHVjdHMvRGVidWcvTWluaUJyb3dzZXIuYXBwIj4KKyAgICAgIDwvUGF0
aFJ1bm5hYmxlPgogICAgPC9MYXVuY2hBY3Rpb24+CiAgICA8UHJvZmlsZUFjdGlvbgogICAgICAg
YnVpbGRDb25maWd1cmF0aW9uID0gIlJlbGVhc2UiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmgKaW5kZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAyYjA3YWUwMTBi
ZC4uYzdkYTU0OTNmYzE0NjQwMThhNzFhYjIxODlmYTU1ZjZiNmJiMzJhZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiBUaGlz
IGZpbGUgaXMgcGFydCBvZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlvbi4KICAqCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIEluYy4KICAqCiAg
KiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg
YW5kL29yCkBAIC00Miw2ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRl
IDxDb3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBhbC9jZi9PVFNW
R1RhYmxlLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAKQEAgLTIxOSw2
ICsyMjAsOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdDaGFyYWN0ZXJT
ZXF1ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CiAgICAgdm9pZCBhcHBseVRyYW5z
Zm9ybXMoR2x5cGhCdWZmZXImLCB1bnNpZ25lZCBiZWdpbm5pbmdHbHlwaEluZGV4LCB1bnNpZ25l
ZCBiZWdpbm5pbmdTdHJpbmdJbmRleCwgYm9vbCBlbmFibGVLZXJuaW5nLCBib29sIHJlcXVpcmVz
U2hhcGluZywgY29uc3QgQXRvbVN0cmluZyYgbG9jYWxlLCBTdHJpbmdWaWV3IHRleHQsIFRleHRE
aXJlY3Rpb24pIGNvbnN0OwogCisgICAgLy8gUmV0dXJucyBudWxsb3B0IGlmIG5vbmUgb2YgdGhl
IGdseXBocyBhcmUgT1QtU1ZHIGdseXBocy4KKyAgICBPcHRpb25hbDxCaXRWZWN0b3I+IGZpbmRP
VFNWR0dseXBocyhjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiwgdW5zaWduZWQgY291bnQpIGNvbnN0
OworCiAjaWYgUExBVEZPUk0oV0lOKQogICAgIFNDUklQVF9GT05UUFJPUEVSVElFUyogc2NyaXB0
Rm9udFByb3BlcnRpZXMoKSBjb25zdDsKICAgICBTQ1JJUFRfQ0FDSEUqIHNjcmlwdENhY2hlKCkg
Y29uc3QgeyByZXR1cm4gJm1fc2NyaXB0Q2FjaGU7IH0KQEAgLTI5Myw2ICsyOTcsNyBAQCBwcml2
YXRlOgogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRlZEJ5
QWxsU21hbGxDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1
cHBvcnRlZEJ5UGV0aXRlQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZlY3Rvcj4gbV9n
bHlwaHNTdXBwb3J0ZWRCeUFsbFBldGl0ZUNhcHM7CisgICAgbXV0YWJsZSBPcHRpb25hbDxQQUw6
Ok9UU1ZHVGFibGU+IG1fb3RTVkdUYWJsZTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oV0lOKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENhc2NhZGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
b3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAppbmRleCBhZmUzNzNiODQxOGYzMDM4OWE0
NWM4ZjJjMjM4Mjg2YWUzOTQwYTYwLi42ZmYwMGJmYmQ1NGEyYjhhMThlZWMwNTg0OTA3OTM1NGMw
MjEyZGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3Jl
dGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcApAQCAtMzAsNiArMzAs
NyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkxheW91dFJlY3Qu
aCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiUnVudGltZUFwcGxpY2F0aW9uQ2hl
Y2tzLmgiCiAjaW5jbHVkZSA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4KICNpbmNsdWRl
IDx3dGYvTWF0aEV4dHJhcy5oPgogCkBAIC0xOTEsNiArMTkyLDggQEAgdm9pZCBGb250Q2FzY2Fk
ZTo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZvbnQmIGZvbnQs
IGNvbnN0IEcKIAogICAgIENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBjb250ZXh0LnBsYXRmb3Jt
Q29udGV4dCgpOwogCisgICAgUkVMRUFTRV9BU1NFUlQoIWlzSW5HUFVQcm9jZXNzKCkgfHwgIWZv
bnQuZmluZE9UU1ZHR2x5cGhzKGdseXBocywgbnVtR2x5cGhzKSk7CisKICAgICBib29sIHNob3Vs
ZEFudGlhbGlhcyA9IHRydWU7CiAgICAgYm9vbCBzaG91bGRTbW9vdGhGb250cyA9IHRydWU7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0Zv
bnRDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4
dC9Gb250Q29yZVRleHQuY3BwCmluZGV4IDk3NTU1YmUxMjkzMDg4NWVkMTcyNjFlMDBlM2E1OThk
MDRkYTk4MDcuLmQ1MzFiOGYzZmY2ZDVjZDhiMTNiMzQyZmY2NzJkMzMzNDM1OTlmODYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3Jl
VGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQv
Rm9udENvcmVUZXh0LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDUtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDUtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQg
KEMpIDIwMDYgQWxleGV5IFByb3NrdXJ5YWtvdgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dApAQCAtNDQsNiAr
NDQsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSAiTG9jYWxlQ29jb2EuaCIK
KyNpbmNsdWRlIDxwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oPgogI2luY2x1ZGUgPHBhbC9zcGkv
Y2YvQ29yZVRleHRTUEkuaD4KICNlbHNlCiAjaW5jbHVkZSA8cGFsL3NwaS93aW4vQ29yZVRleHRT
UElXaW4uaD4KQEAgLTc3NCw0ICs3NzUsMzMgQEAgYm9vbCBGb250Ojppc1Byb2JhYmx5T25seVVz
ZWRUb1JlbmRlckljb25zKCkgY29uc3QKICAgICB9KTsKIH0KIAorT3B0aW9uYWw8Qml0VmVjdG9y
PiBGb250OjpmaW5kT1RTVkdHbHlwaHMoY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzLCB1
bnNpZ25lZCBjb3VudCkgY29uc3QKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBpZiAoIW1f
b3RTVkdUYWJsZSkgeworICAgICAgICBpZiAoYXV0byB0YWJsZURhdGEgPSBhZG9wdENGKENURm9u
dENvcHlUYWJsZShwbGF0Zm9ybURhdGEoKS5jdEZvbnQoKSwga0NURm9udFRhYmxlU1ZHLCBrQ1RG
b250VGFibGVPcHRpb25Ob09wdGlvbnMpKSkKKyAgICAgICAgICAgIG1fb3RTVkdUYWJsZSA9IFBB
TDo6T1RTVkdUYWJsZSh0YWJsZURhdGEuZ2V0KCksIGZvbnRNZXRyaWNzKCkudW5pdHNQZXJFbSgp
LCBwbGF0Zm9ybURhdGEoKS5zaXplKCkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX290
U1ZHVGFibGUgPSBQQUw6Ok9UU1ZHVGFibGUoKTsKKyAgICB9CisKKyAgICBpZiAoIVBBTDo6aXNP
VFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpIHx8ICFtX290U1ZHVGFibGUudmFsdWUoKS50YWJsZSkK
KyAgICAgICAgcmV0dXJuIHsgfTsKKworICAgIE9wdGlvbmFsPEJpdFZlY3Rvcj4gcmVzdWx0Owor
ICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7CisgICAgICAgIGlmIChQ
QUw6OnNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoKG1fb3RT
VkdUYWJsZS52YWx1ZSgpLnRhYmxlLCBnbHlwaHNbaV0pICE9IGtDRk5vdEZvdW5kKSB7CisgICAg
ICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBCaXRWZWN0b3Io
Y291bnQpOworICAgICAgICAgICAgcmVzdWx0LnZhbHVlKCkucXVpY2tTZXQoaSk7CisgICAgICAg
IH0KKyAgICB9CisgICAgcmV0dXJuIHJlc3VsdDsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGds
eXBocyk7CisgICAgVU5VU0VEX1BBUkFNKGNvdW50KTsKKyAgICByZXR1cm4geyB9OworI2VuZGlm
Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNv
cmRlckNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3Bs
YXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAppbmRleCAx
ZWNhNTAzYjVlNDA4ZWZmNWM3NWFhNDkyNmZiZmNiZjI5YWZlZTNkLi5iMWZlY2U2MzhkNTMyNjRi
YjNiZjRkOTBkMTkzZmE1MzYyMjZiNjE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJD
b3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCkBAIC0zNjIs
NiArMzYyLDUzIEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3SW1hZ2UoQ0dS
ZW5kZXJpbmdTdGF0ZVJlZiwgQ0dHU3RhdGVSZWYgZ3N0YXRlCiAgICAgbV9vd25lci50cmFuc2xh
dGUoMCwgLShyZWN0LnNpemUuaGVpZ2h0ICsgMiAqIHJlY3Qub3JpZ2luLnkpKTsKIH0KIAorc3Ry
dWN0IEdseXBoc0FuZEFkdmFuY2VzU3RvcmFnZSB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5
cGg+IGdseXBoczsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKK307
CitzdHJ1Y3QgR2x5cGhzQW5kQWR2YW5jZXMgeworICAgIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgq
IGdseXBoczsKKyAgICBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzOworICAgIHVu
c2lnbmVkIG51bUdseXBoczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5pdGlhbEFkdmFuY2U7
CisgICAgT3B0aW9uYWw8R2x5cGhzQW5kQWR2YW5jZXNTdG9yYWdlPiBzdG9yYWdlOworfTsKK3N0
YXRpYyBHbHlwaHNBbmRBZHZhbmNlcyBmaWx0ZXJPdXRPVFNWR0dseXBocyhjb25zdCBGb250JiBm
b250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2
YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocykKK3sKKyAgICBhdXRvIG90c3ZnR2x5
cGhzID0gZm9udC5maW5kT1RTVkdHbHlwaHMoZ2x5cGhzLCBudW1HbHlwaHMpOworICAgIGlmICgh
b3RzdmdHbHlwaHMpCisgICAgICAgIHJldHVybiB7IGdseXBocywgYWR2YW5jZXMsIG51bUdseXBo
cywgbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpLCB7IH19OworCisgICAgQVNTRVJUKG90c3ZnR2x5
cGhzLT5zaXplKCkgPj0gbnVtR2x5cGhzKTsKKworICAgIEdseXBoc0FuZEFkdmFuY2VzIHJlc3Vs
dDsKKyAgICByZXN1bHQuaW5pdGlhbEFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKCk7
CisgICAgcmVzdWx0LnN0b3JhZ2UgPSBHbHlwaHNBbmRBZHZhbmNlc1N0b3JhZ2UoKTsKKworICAg
IHJlc3VsdC5zdG9yYWdlLT5nbHlwaHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1HbHlwaHMp
OworICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51
bUdseXBocyk7CisKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kp
IHsKKyAgICAgICAgQVNTRVJUKHJlc3VsdC5zdG9yYWdlLT5nbHlwaHMuc2l6ZSgpID09IHJlc3Vs
dC5zdG9yYWdlLT5hZHZhbmNlcy5zaXplKCkpOworICAgICAgICBpZiAob3RzdmdHbHlwaHMtPnF1
aWNrR2V0KGkpKSB7CisgICAgICAgICAgICBpZiAocmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLmlz
RW1wdHkoKSkKKyAgICAgICAgICAgICAgICByZXN1bHQuaW5pdGlhbEFkdmFuY2UgPSBtYWtlR2x5
cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0LmluaXRpYWxBZHZhbmNlKSArIHNpemUoYWR2YW5j
ZXNbaV0pKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHQuc3RvcmFn
ZS0+YWR2YW5jZXMubGFzdCgpID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKHJlc3VsdC5z
dG9yYWdlLT5hZHZhbmNlcy5sYXN0KCkpICsgc2l6ZShhZHZhbmNlc1tpXSkpOworICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgcmVzdWx0LnN0b3JhZ2UtPmdseXBocy51bmNoZWNrZWRBcHBl
bmQoZ2x5cGhzW2ldKTsKKyAgICAgICAgICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy51bmNo
ZWNrZWRBcHBlbmQoYWR2YW5jZXNbaV0pOworICAgICAgICB9CisgICAgICAgIEFTU0VSVChyZXN1
bHQuc3RvcmFnZS0+Z2x5cGhzLnNpemUoKSA9PSByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuc2l6
ZSgpKTsKKyAgICB9CisKKyAgICByZXN1bHQuZ2x5cGhzID0gcmVzdWx0LnN0b3JhZ2UtPmdseXBo
cy5kYXRhKCk7CisgICAgcmVzdWx0LmFkdmFuY2VzID0gcmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2Vz
LmRhdGEoKTsKKyAgICByZXN1bHQubnVtR2x5cGhzID0gcmVzdWx0LnN0b3JhZ2UtPmdseXBocy5z
aXplKCk7CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiB2b2lkIERyYXdHbHlwaHNSZWNvcmRl
cjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBn
bHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUds
eXBocywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2ludCwgRm9udFNtb290aGluZ01vZGUgc21v
b3RoaW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJh
d0dseXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25zdHJ1Y3QpIHsKQEAgLTM3MSw4ICs0MTgs
MTMgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9u
dCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAogICAgIEFTU0VSVChtX2RyYXdHbHlwaHNE
ZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRlY29uc3RydWN0KTsK
IAorICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1NTI+IFJlY29yZCBPVFNWRyBn
bHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RT
VkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250LCBnbHlwaHMsIGFkdmFuY2VzLCBu
dW1HbHlwaHMpOworICAgIEFTU0VSVChnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBo
cy5nbHlwaHMgPT0gZ2x5cGhzIHx8IGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhz
LmdseXBocyA9PSBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5zdG9yYWdlLT5n
bHlwaHMuZGF0YSgpKTsKKyAgICBBU1NFUlQoZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdH
bHlwaHMuYWR2YW5jZXMgPT0gYWR2YW5jZXMgfHwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RT
VkdHbHlwaHMuYWR2YW5jZXMgPT0gZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMu
c3RvcmFnZS0+YWR2YW5jZXMuZGF0YSgpKTsKKwogICAgIHByZXBhcmVJbnRlcm5hbENvbnRleHQo
Zm9udCwgc21vb3RoaW5nTW9kZSk7Ci0gICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRl
cm5hbENvbnRleHQsIGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywgc3RhcnRQb2lu
dCwgc21vb3RoaW5nTW9kZSk7CisgICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5h
bENvbnRleHQsIGZvbnQsIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBo
cywgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMsIGdseXBoc0Fu
ZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLm51bUdseXBocywgc3RhcnRQb2ludCArIHNpemUo
Z2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuaW5pdGlhbEFkdmFuY2UpLCBzbW9v
dGhpbmdNb2RlKTsKICAgICBjb25jbHVkZUludGVybmFsQ29udGV4dCgpOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420401</attachid>
            <date>2021-02-15 17:22:57 -0800</date>
            <delta_ts>2021-02-15 20:23:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210215172257.patch</filename>
            <type>text/plain</type>
            <size>26107</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uNmFmZTI0ZmYxZjY3OGYzNWE5MTlkMWRiMDhhZjU2
ZDZiYTMwZDRlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTAyLTEzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZHIGZyYW1ld29yayB0byBk
ZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVj
dHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291bGQgYmUgcmVuZGVyZWQg
dXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nlc3MsIGFuZCBSRUxFQVNF
X0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0IGl0IHdvbid0IGJlIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBpcyBqdXN0IGEgdGVtcG9y
YXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4gcHJvcGVybHkgdHJhbnNj
b2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBkaXNwbGF5IGxpc3QgaW5m
cmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3MgZHJhd2luZyBPVC1TVkcg
Z2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAgICAgIHJpZ2h0IG5vdywg
b25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJhd2luZywgc2luY2UgcmVn
dWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAgICAgIHByb2Nlc3MgeWV0
LikKKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB3ZSBkb24ndCB3YW50IHRvIGFjdHVh
bGx5IHJlcXVpcmUgdGhhdCBPVC1TVkcgZG9lc24ndCB3b3JrIGluIGNhbnZhcy4KKyAgICAgICAg
V2hlbiB3ZSBtYWtlIGl0IHdvcmsgYWdhaW4sIGl0IGRvZXNuJ3QgbWFrZSBzZW5zZSB0byBoYXZl
IHRvIGRlbGV0ZSB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6ZmluZE9UU1ZHR2x5cGhzIGNvbnN0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJD
b3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6ZmlsdGVyT3V0T1RT
VkdHbHlwaHMpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRyYXdHbHlwaHNSZWNv
cmRlcjo6ZHJhd0dseXBocyk6CisKIDIwMjEtMDItMTMgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlZHVjZSByZXF1aXJlbWVudHMgZm9yIGNvbG9yIHR5cGVzIHRv
IG9ubHkgY29udmVyc2lvbiB0byB0aGVpciByZWZlcmVuY2UgY29sb3IKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CmluZGV4IGU4ZWI5OWMyNGZlYmRmODhlNjQ5NzU4NzNkNzBlMGQxZTQ5NDAzMjYuLjlmYmU2Zjcy
NGRjYzRhZjc0MWE3YjIzM2M3ZTRjOTVjODk2NGFlZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIyIEBACisyMDIxLTAyLTEzICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBh
cHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRy
YXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BVIHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGlt
cGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2gg
c29mdC1saW5rcyB0aGUgT1RTVkcgZnJhbWV3b3JrIGJlY2F1c2UgaXQncyBhIHByaXZhdGUgZnJh
bWV3b3JrIHRoYXQgZG9lc24ndCBleGlzdCBvbiB3YXRjaE9TLgorCisgICAgICAgICogUEFMLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL2NmL0NvcmVUZXh0U29mdExp
bmsuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oOiBBZGRl
ZC4KKyAgICAgICAgKiBwYWwvY2YvT1RTVkdUYWJsZS5jcHA6IEFkZGVkLgorICAgICAgICAoUEFM
OjpPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKToKKyAgICAgICAgKFBBTDo6T1RTVkdUYWJsZTo6fk9U
U1ZHVGFibGUpOgorICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmg6IEFkZGVkLgorICAgICAg
ICAqIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaDoKKwogMjAyMS0wMi0xMCAgTXlsZXMgQy4gTWF4
ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgcGFsL3NwaS9jb2Nv
YS9Db3JlVGV4dFNQSS5oIHRvIHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDk3MGU3ZTE4
NGVjMjVmMDRiNWZkYTllOWI4NDNkMDYwODQ0Y2RmNzUuLjJlZGJjYzljMDM4ODc1ZWFlNDAyY2E1
ZDU3OTU0OGRhMDdjZTc0NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwOSw2ICsxMDksOCBAQAogCQkxQzA5RDA1ODFFMzFD
NTdFMDA3MjVGMTggLyogY29uZmlnLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQzA5RDA1NzFFMzFDNTdFMDA3MjVGMTggLyogY29uZmlnLmggKi87IH07
CiAJCTFDNDg3NkQ4MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNDg3NkQ2MUY4RDdGNEUwMENDRUVC
RCAvKiBMb2dnaW5nLmNwcCAqLzsgfTsKIAkJMUM0ODc2RDkxRjhEN0Y0RTAwQ0NFRUJEIC8qIExv
Z2dpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFD
NDg3NkQ3MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmggKi87IH07CisJCTFDNzdDOEM5MjVE
Nzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBD
b3JlVGV4dFNvZnRMaW5rLmNwcCAqLzsgfTsKKwkJMUM3N0M4Q0UyNUQ3QTRBMzAwNjM1RTBDIC8q
IE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovOyB9Owog
CQkxQ0MzQUNFODIyQkQ3RUM1MDBGMzYwRjAgLyogTWV0YWxTUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQzNBQ0U3MjJCRDdFQjgwMEYzNjBGMCAv
KiBNZXRhbFNQSS5oICovOyB9OwogCQkxQ0NFRTRGNTIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJ
U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0NF
RTRGNDIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi87IH07CiAJCTFDQ0VFNEY3MjBE
ODc0M0YwMDQ3QjA5NyAvKiBOU0FwcGVhcmFuY2VTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY2MjBEODc0M0YwMDQ3QjA5NyAvKiBOU0Fw
cGVhcmFuY2VTUEkuaCAqLzsgfTsKQEAgLTMwNiw2ICszMDgsMTAgQEAKIAkJMUM0ODc2RDcxRjhE
N0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9nZ2luZy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQzQ4NzZEQzFGOEQ3RkM2MDBDQ0VFQkQgLyogTG9n
TWFjcm9zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvZ01hY3Jvcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxQzY3Q0VBMjFFMzJFRTI2MDBGODBGMkUgLyogVmVyc2lvbi54Y2NvbmZpZyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBWZXJzaW9uLnhjY29uZmlnOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRl
eHRTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3N0M4QzgyNUQ3OTcyMDAwNjM1RTBDIC8q
IENvcmVUZXh0U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29yZVRleHRTb2Z0TGluay5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDQjI1RDc5QjZDMDA2MzVFMEMgLyog
T1RTVkdUYWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPVFNWR1RhYmxlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFDNzdDOENEMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9UU1ZHVGFibGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxQ0MzQUNFNzIyQkQ3RUI4MDBGMzYwRjAgLyogTWV0YWxTUEkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWV0YWxTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNDRUU0
RjQyMEQ4NzE5MzAwNDdCMDk3IC8qIENvcmVVSVNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDb3JlVUlTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUND
RUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBOU0FwcGVhcmFuY2VTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTU5NCw2ICs2MDAsMTAgQEAKIAkJCQk0MTZFOTk1MjIzREFFNkJFMDBFODcx
Q0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCAqLywKIAkJCQkwQ0Y5OUNBNjFGNzM4NDM2MDA3
RUU3OTMgLyogQ29yZU1lZGlhU29mdExpbmsuY3BwICovLAogCQkJCTBDRjk5Q0E3MUY3Mzg0Mzcw
MDdFRTc5MyAvKiBDb3JlTWVkaWFTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOEM3MjVENzk3MjAw
MDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCAqLywKKwkJCQkxQzc3QzhDODI1RDc5NzIw
MDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5oICovLAorCQkJCTFDNzdDOENEMjVEN0E0QTMw
MDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCAqLywKKwkJCQkxQzc3QzhDQjI1RDc5QjZDMDA2MzVF
MEMgLyogT1RTVkdUYWJsZS5oICovLAogCQkJCTQxNkU5OTU1MjNEQUVGRjcwMEU4NzFDQiAvKiBW
aWRlb1Rvb2xib3hTb2Z0TGluay5jcHAgKi8sCiAJCQkJNDE2RTk5NTYyM0RBRUZGNzAwRTg3MUNC
IC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmggKi8sCiAJCQkpOwpAQCAtMTAyNSw2ICsxMDM1LDcg
QEAKIAkJCQkwNzdFODdCMTIyNkE0NjAyMDBBMkFGRjAgLyogQVZGb3VuZGF0aW9uU29mdExpbmsu
bW0gaW4gU291cmNlcyAqLywKIAkJCQkwQzVGRkYwRjFGNzhEOURBMDA5RUZGMUEgLyogQ2xvY2tD
TS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTBDRjk5Q0E4MUY3Mzg0MzcwMDdFRTc5MyAvKiBDb3Jl
TWVkaWFTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQzc3QzhDOTI1RDc5NzIwMDA2
MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQzA5RDA1
NjFFMzFDNDY1MDA3MjVGMTggLyogQ3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUExMTc1QjU4MUY2QjQ3MDUwMEM0QjlGMCAvKiBEZWZhdWx0U2VhcmNoUHJv
dmlkZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjQ0MjkxNjQxRkE1MjY3MDAwMkNDOTNFIC8q
IEZpbGVTaXplRm9ybWF0dGVyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMTAzOCw2ICsxMDQ5LDcg
QEAKIAkJCQkwQ0Y5OUNBNDFGNzM2Mzc1MDA3RUU3OTMgLyogTWVkaWFUaW1lQVZGb3VuZGF0aW9u
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEQUNCMzYwMjM4NzQyNUIwMDE4RDdDRSAvKiBNZWRp
YVRvb2xib3hTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTY0N0ZCMDI1MTc1OURE
MDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSBpbiBTb3VyY2VzICovLAorCQkJCTFD
NzdDOENFMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUNENjEyMkNEMjU1OUI2QUMwMEZDNjU3QSAvKiBPdXRwdXRDb250ZXh0Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQ0Q2MTIyRDEyNTU5QjhGMjAwRkM2NTdBIC8qIE91dHB1dERldmljZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUExRjYzQ0EwMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29m
dExpbmsubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0Nv
cmVUZXh0U29mdExpbmsuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1MDgxYTA5YTA3YTBjNjBlZTcxNWU4Zjgw
Yjc3YTlkODhiMzM3ZTAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2NmL0NvcmVUZXh0U29mdExpbmsuY3BwCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAq
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5o
PgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfUFJJVkFURV9GUkFN
RVdPUktfRk9SX1NPVVJDRShQQUwsIE9UU1ZHKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NP
VVJDRShQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEsIE9UU1ZHVGFibGVSZWYs
IChDRkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNp
emUpLCAoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSkKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5
cGgsIENGSW5kZXgsIChPVFNWR1RhYmxlUmVmIHRhYmxlLCBDR0dseXBoIGdseXBoKSwgKHRhYmxl
LCBnbHlwaCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9UU1ZHLCBPVFNW
R1RhYmxlUmVsZWFzZSwgdm9pZCwgKE9UU1ZHVGFibGVSZWYgdGFibGUpLCAodGFibGUpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmggYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4x
ZDBjMDFkMGViMDE5NzQzNWY0N2UzZmY1MmFlMWY2MTE0YzBiODZkCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmgKQEAgLTAsMCAr
MSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHBhbC9zcGkv
Y2YvQ29yZVRleHRTUEkuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9M
SU5LX0ZSQU1FV09SS19GT1JfSEVBREVSKFBBTCwgT1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfSEVBREVSKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdU
YWJsZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9h
dCBmb250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5L
X0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5k
ZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFibGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgp
LCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT1RT
VkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAoT1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJs
ZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5i
NTI4Yzg4OWQwZTkzMmQxNTExZWE4YTkxNjEzMDM3NDI0MjcyZGVlCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcApAQCAtMCwwICsxLDYy
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJPVFNWR1Rh
YmxlLmgiCisKKyNpbmNsdWRlICJDb3JlVGV4dFNvZnRMaW5rLmgiCisKK25hbWVzcGFjZSBQQUwg
eworCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKCkKK3sKK30KKworT1RTVkdUYWJsZTo6T1RTVkdU
YWJsZShDRkRhdGFSZWYgc3ZnVGFibGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9u
dFNpemUpCisgICAgOiB0YWJsZShpc09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgPyBzb2Z0TGlu
a09UU1ZHT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhKHN2Z1RhYmxlLCB1bml0c1BlckVtLCBmb250
U2l6ZSkgOiBudWxscHRyKQoreworfQorCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKE9UU1ZHVGFi
bGUmJiBvdGhlcikKKyAgICA6IHRhYmxlKG90aGVyLnRhYmxlKQoreworICAgIG90aGVyLnRhYmxl
ID0gbnVsbHB0cjsKK30KKworT1RTVkdUYWJsZTo6fk9UU1ZHVGFibGUoKQoreworICAgIGlmIChp
c09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgJiYgdGFibGUpCisgICAgICAgIHNvZnRMaW5rT1RT
VkdPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7Cit9CisKK09UU1ZHVGFibGUmIE9UU1ZHVGFibGU6
Om9wZXJhdG9yPShPVFNWR1RhYmxlJiYgb3RoZXIpCit7CisgICAgaWYgKGlzT1RTVkdGcmFtZXdv
cmtBdmFpbGFibGUoKSAmJiB0YWJsZSkKKyAgICAgICAgc29mdExpbmtPVFNWR09UU1ZHVGFibGVS
ZWxlYXNlKHRhYmxlKTsKKyAgICB0YWJsZSA9IG90aGVyLnRhYmxlOworICAgIG90aGVyLnRhYmxl
ID0gbnVsbHB0cjsKKyAgICByZXR1cm4gKnRoaXM7Cit9CisKK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9jZi9PVFNWR1RhYmxlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGE0NmViNzA2ODFhOGM4MmZjNzBlZGY1MTM1
ZTdhZmUzYzEyYTUzNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvT1RTVkdUYWJsZS5oCkBAIC0wLDAgKzEsNDQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBv
bmNlCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CisKK25hbWVzcGFjZSBQ
QUwgeworCitzdHJ1Y3QgT1RTVkdUYWJsZSB7CisgICAgT1RTVkdUYWJsZSgpOworICAgIE9UU1ZH
VGFibGUoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZv
bnRTaXplKTsKKyAgICBPVFNWR1RhYmxlKGNvbnN0IE9UU1ZHVGFibGUmKSA9IGRlbGV0ZTsKKyAg
ICBPVFNWR1RhYmxlKE9UU1ZHVGFibGUmJik7CisgICAgfk9UU1ZHVGFibGUoKTsKKworICAgIE9U
U1ZHVGFibGUmIG9wZXJhdG9yPShjb25zdCBPVFNWR1RhYmxlJikgPSBkZWxldGU7CisgICAgT1RT
VkdUYWJsZSYgb3BlcmF0b3I9KE9UU1ZHVGFibGUmJik7CisKKyAgICBPVFNWR1RhYmxlUmVmIHRh
YmxlIHsgbnVsbHB0ciB9OworfTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2Nm
L0NvcmVUZXh0U1BJLmgKaW5kZXggNDgxZDFiZjVhZmMwYWI2MDkxNTI0ZDBlZWNhOWFjNzA3OGNh
MWMwYS4uNmY1NmExYWMxNjY2N2QzOGE0ODlmYjFmYTEyODhiOTE3Y2RiZjBjMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCkBAIC0zMSw2ICszMSw3IEBA
CiAjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKIAogI2luY2x1ZGUgPENvcmVUZXh0L0NvcmVU
ZXh0UHJpdi5oPgorI2luY2x1ZGUgPE9UU1ZHL09UU1ZHLmg+CiAKICNlbHNlCiAKQEAgLTgyLDYg
KzgzLDggQEAgZW51bSB7CiAgICAga0NURm9udFRyYWl0RW1waGFzaXplZCA9IGtDVEZvbnRUcmFp
dEJvbGQsCiB9OwogCit0eXBlZGVmIGNvbnN0IHN0cnVjdCBfX09UU1ZHVGFibGUgKiBPVFNWR1Rh
YmxlUmVmOworCiAjZW5kaWYKIAogV1RGX0VYVEVSTl9DX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250LmgKaW5kZXggYzdiMDcyZTY2YzYzMTVkMjZhOGM5Mjg5OWNlNTAy
YjA3YWUwMTBiZC4uYzdkYTU0OTNmYzE0NjQwMThhNzFhYjIxODlmYTU1ZjZiNmJiMzJhZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtMSw3ICsxLDcgQEAKIC8q
CiAgKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgaW50ZXJuYWwgZm9udCBpbXBsZW1lbnRhdGlv
bi4KICAqCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBNb2JpbGUsIElu
Yy4KICAqCiAgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3Ry
aWJ1dGUgaXQgYW5kL29yCkBAIC00Miw2ICs0Miw3IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkK
ICNpbmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHBh
bC9jZi9PVFNWR1RhYmxlLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCiAK
QEAgLTIxOSw2ICsyMjAsOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBjYW5SZW5kZXJDb21iaW5pbmdD
aGFyYWN0ZXJTZXF1ZW5jZShjb25zdCBVQ2hhciosIHNpemVfdCkgY29uc3Q7CiAgICAgdm9pZCBh
cHBseVRyYW5zZm9ybXMoR2x5cGhCdWZmZXImLCB1bnNpZ25lZCBiZWdpbm5pbmdHbHlwaEluZGV4
LCB1bnNpZ25lZCBiZWdpbm5pbmdTdHJpbmdJbmRleCwgYm9vbCBlbmFibGVLZXJuaW5nLCBib29s
IHJlcXVpcmVzU2hhcGluZywgY29uc3QgQXRvbVN0cmluZyYgbG9jYWxlLCBTdHJpbmdWaWV3IHRl
eHQsIFRleHREaXJlY3Rpb24pIGNvbnN0OwogCisgICAgLy8gUmV0dXJucyBudWxsb3B0IGlmIG5v
bmUgb2YgdGhlIGdseXBocyBhcmUgT1QtU1ZHIGdseXBocy4KKyAgICBPcHRpb25hbDxCaXRWZWN0
b3I+IGZpbmRPVFNWR0dseXBocyhjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiwgdW5zaWduZWQgY291
bnQpIGNvbnN0OworCiAjaWYgUExBVEZPUk0oV0lOKQogICAgIFNDUklQVF9GT05UUFJPUEVSVElF
Uyogc2NyaXB0Rm9udFByb3BlcnRpZXMoKSBjb25zdDsKICAgICBTQ1JJUFRfQ0FDSEUqIHNjcmlw
dENhY2hlKCkgY29uc3QgeyByZXR1cm4gJm1fc2NyaXB0Q2FjaGU7IH0KQEAgLTI5Myw2ICsyOTcs
NyBAQCBwcml2YXRlOgogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1
cHBvcnRlZEJ5QWxsU21hbGxDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBt
X2dseXBoc1N1cHBvcnRlZEJ5UGV0aXRlQ2FwczsKICAgICBtdXRhYmxlIE9wdGlvbmFsPEJpdFZl
Y3Rvcj4gbV9nbHlwaHNTdXBwb3J0ZWRCeUFsbFBldGl0ZUNhcHM7CisgICAgbXV0YWJsZSBPcHRp
b25hbDxQQUw6Ok9UU1ZHVGFibGU+IG1fb3RTVkdUYWJsZTsKICNlbmRpZgogCiAjaWYgUExBVEZP
Uk0oV0lOKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29y
ZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAppbmRleCBhZmUzNzNiODQx
OGYzMDM4OWE0NWM4ZjJjMjM4Mjg2YWUzOTQwYTYwLi42ZmYwMGJmYmQ1NGEyYjhhMThlZWMwNTg0
OTA3OTM1NGMwMjEyZGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcApAQCAt
MzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkxh
eW91dFJlY3QuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiUnVudGltZUFwcGxp
Y2F0aW9uQ2hlY2tzLmgiCiAjaW5jbHVkZSA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4K
ICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgogCkBAIC0xOTEsNiArMTkyLDggQEAgdm9pZCBG
b250Q2FzY2FkZTo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZv
bnQmIGZvbnQsIGNvbnN0IEcKIAogICAgIENHQ29udGV4dFJlZiBjZ0NvbnRleHQgPSBjb250ZXh0
LnBsYXRmb3JtQ29udGV4dCgpOwogCisgICAgUkVMRUFTRV9BU1NFUlQoIWlzSW5HUFVQcm9jZXNz
KCkgfHwgIWZvbnQuZmluZE9UU1ZHR2x5cGhzKGdseXBocywgbnVtR2x5cGhzKSk7CisKICAgICBi
b29sIHNob3VsZEFudGlhbGlhcyA9IHRydWU7CiAgICAgYm9vbCBzaG91bGRTbW9vdGhGb250cyA9
IHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCmluZGV4IDk3NTU1YmUxMjkzMDg4NWVkMTcyNjFl
MDBlM2E1OThkMDRkYTk4MDcuLmQ1MzFiOGYzZmY2ZDVjZDhiMTNiMzQyZmY2NzJkMzMzNDM1OTlm
ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0
L0ZvbnRDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29yZXRleHQvRm9udENvcmVUZXh0LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMDUtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDUtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBD
b3B5cmlnaHQgKEMpIDIwMDYgQWxleGV5IFByb3NrdXJ5YWtvdgogICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dApA
QCAtNDQsNiArNDQsNyBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSAiTG9jYWxl
Q29jb2EuaCIKKyNpbmNsdWRlIDxwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oPgogI2luY2x1ZGUg
PHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaD4KICNlbHNlCiAjaW5jbHVkZSA8cGFsL3NwaS93aW4v
Q29yZVRleHRTUElXaW4uaD4KQEAgLTc3NCw0ICs3NzUsMzMgQEAgYm9vbCBGb250Ojppc1Byb2Jh
Ymx5T25seVVzZWRUb1JlbmRlckljb25zKCkgY29uc3QKICAgICB9KTsKIH0KIAorT3B0aW9uYWw8
Qml0VmVjdG9yPiBGb250OjpmaW5kT1RTVkdHbHlwaHMoY29uc3QgR2x5cGhCdWZmZXJHbHlwaCog
Z2x5cGhzLCB1bnNpZ25lZCBjb3VudCkgY29uc3QKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAg
ICBpZiAoIW1fb3RTVkdUYWJsZSkgeworICAgICAgICBpZiAoYXV0byB0YWJsZURhdGEgPSBhZG9w
dENGKENURm9udENvcHlUYWJsZShwbGF0Zm9ybURhdGEoKS5jdEZvbnQoKSwga0NURm9udFRhYmxl
U1ZHLCBrQ1RGb250VGFibGVPcHRpb25Ob09wdGlvbnMpKSkKKyAgICAgICAgICAgIG1fb3RTVkdU
YWJsZSA9IFBBTDo6T1RTVkdUYWJsZSh0YWJsZURhdGEuZ2V0KCksIGZvbnRNZXRyaWNzKCkudW5p
dHNQZXJFbSgpLCBwbGF0Zm9ybURhdGEoKS5zaXplKCkpOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICBtX290U1ZHVGFibGUgPSBQQUw6Ok9UU1ZHVGFibGUoKTsKKyAgICB9CisKKyAgICBpZiAo
IVBBTDo6aXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpIHx8ICFtX290U1ZHVGFibGUudmFsdWUo
KS50YWJsZSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKworICAgIE9wdGlvbmFsPEJpdFZlY3Rvcj4g
cmVzdWx0OworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7CisgICAg
ICAgIGlmIChQQUw6OnNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckds
eXBoKG1fb3RTVkdUYWJsZS52YWx1ZSgpLnRhYmxlLCBnbHlwaHNbaV0pICE9IGtDRk5vdEZvdW5k
KSB7CisgICAgICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBC
aXRWZWN0b3IoY291bnQpOworICAgICAgICAgICAgcmVzdWx0LnZhbHVlKCkucXVpY2tTZXQoaSk7
CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIHJlc3VsdDsKKyNlbHNlCisgICAgVU5VU0VE
X1BBUkFNKGdseXBocyk7CisgICAgVU5VU0VEX1BBUkFNKGNvdW50KTsKKyAgICByZXR1cm4geyB9
OworI2VuZGlmCit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdH
bHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNw
cAppbmRleCAxZWNhNTAzYjVlNDA4ZWZmNWM3NWFhNDkyNmZiZmNiZjI5YWZlZTNkLi5iMWZlY2U2
MzhkNTMyNjRiYjNiZjRkOTBkMTkzZmE1MzYyMjZiNjE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5cGhz
UmVjb3JkZXJDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3Bw
CkBAIC0zNjIsNiArMzYyLDUzIEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3
SW1hZ2UoQ0dSZW5kZXJpbmdTdGF0ZVJlZiwgQ0dHU3RhdGVSZWYgZ3N0YXRlCiAgICAgbV9vd25l
ci50cmFuc2xhdGUoMCwgLShyZWN0LnNpemUuaGVpZ2h0ICsgMiAqIHJlY3Qub3JpZ2luLnkpKTsK
IH0KIAorc3RydWN0IEdseXBoc0FuZEFkdmFuY2VzU3RvcmFnZSB7CisgICAgVmVjdG9yPEdseXBo
QnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJBZHZhbmNlPiBhZHZh
bmNlczsKK307CitzdHJ1Y3QgR2x5cGhzQW5kQWR2YW5jZXMgeworICAgIGNvbnN0IEdseXBoQnVm
ZmVyR2x5cGgqIGdseXBoczsKKyAgICBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2Vz
OworICAgIHVuc2lnbmVkIG51bUdseXBoczsKKyAgICBHbHlwaEJ1ZmZlckFkdmFuY2UgaW5pdGlh
bEFkdmFuY2U7CisgICAgT3B0aW9uYWw8R2x5cGhzQW5kQWR2YW5jZXNTdG9yYWdlPiBzdG9yYWdl
OworfTsKK3N0YXRpYyBHbHlwaHNBbmRBZHZhbmNlcyBmaWx0ZXJPdXRPVFNWR0dseXBocyhjb25z
dCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBo
QnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocykKK3sKKyAgICBhdXRv
IG90c3ZnR2x5cGhzID0gZm9udC5maW5kT1RTVkdHbHlwaHMoZ2x5cGhzLCBudW1HbHlwaHMpOwor
ICAgIGlmICghb3RzdmdHbHlwaHMpCisgICAgICAgIHJldHVybiB7IGdseXBocywgYWR2YW5jZXMs
IG51bUdseXBocywgbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpLCB7IH19OworCisgICAgQVNTRVJU
KG90c3ZnR2x5cGhzLT5zaXplKCkgPj0gbnVtR2x5cGhzKTsKKworICAgIEdseXBoc0FuZEFkdmFu
Y2VzIHJlc3VsdDsKKyAgICByZXN1bHQuaW5pdGlhbEFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJB
ZHZhbmNlKCk7CisgICAgcmVzdWx0LnN0b3JhZ2UgPSBHbHlwaHNBbmRBZHZhbmNlc1N0b3JhZ2Uo
KTsKKworICAgIHJlc3VsdC5zdG9yYWdlLT5nbHlwaHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShu
dW1HbHlwaHMpOworICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENh
cGFjaXR5KG51bUdseXBocyk7CisKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5
cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKHJlc3VsdC5zdG9yYWdlLT5nbHlwaHMuc2l6ZSgp
ID09IHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5zaXplKCkpOworICAgICAgICBpZiAob3RzdmdH
bHlwaHMtPnF1aWNrR2V0KGkpKSB7CisgICAgICAgICAgICBpZiAocmVzdWx0LnN0b3JhZ2UtPmFk
dmFuY2VzLmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICByZXN1bHQuaW5pdGlhbEFkdmFuY2Ug
PSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0LmluaXRpYWxBZHZhbmNlKSArIHNp
emUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1
bHQuc3RvcmFnZS0+YWR2YW5jZXMubGFzdCgpID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXpl
KHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5sYXN0KCkpICsgc2l6ZShhZHZhbmNlc1tpXSkpOwor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgcmVzdWx0LnN0b3JhZ2UtPmdseXBocy51bmNo
ZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAgICAgICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZh
bmNlcy51bmNoZWNrZWRBcHBlbmQoYWR2YW5jZXNbaV0pOworICAgICAgICB9CisgICAgICAgIEFT
U0VSVChyZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLnNpemUoKSA9PSByZXN1bHQuc3RvcmFnZS0+YWR2
YW5jZXMuc2l6ZSgpKTsKKyAgICB9CisKKyAgICByZXN1bHQuZ2x5cGhzID0gcmVzdWx0LnN0b3Jh
Z2UtPmdseXBocy5kYXRhKCk7CisgICAgcmVzdWx0LmFkdmFuY2VzID0gcmVzdWx0LnN0b3JhZ2Ut
PmFkdmFuY2VzLmRhdGEoKTsKKyAgICByZXN1bHQubnVtR2x5cGhzID0gcmVzdWx0LnN0b3JhZ2Ut
PmdseXBocy5zaXplKCk7CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiB2b2lkIERyYXdHbHlw
aHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZl
ckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2ln
bmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2ludCYgc3RhcnRQb2ludCwgRm9udFNtb290aGlu
Z01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAgICBpZiAobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rp
b24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9uOjpEb250RGVjb25zdHJ1Y3QpIHsKQEAgLTM3
MSw4ICs0MTgsMTMgQEAgdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3Qg
Rm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2wKIAogICAgIEFTU0VSVChtX2Ry
YXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRlY29u
c3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vNzAxNjY1NTI+IFJlY29y
ZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgZ2x5cGhzQW5kQWR2YW5jZXNX
aXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJPdXRPVFNWR0dseXBocyhmb250LCBnbHlwaHMsIGFk
dmFuY2VzLCBudW1HbHlwaHMpOworICAgIEFTU0VSVChnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRP
VFNWR0dseXBocy5nbHlwaHMgPT0gZ2x5cGhzIHx8IGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9U
U1ZHR2x5cGhzLmdseXBocyA9PSBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5z
dG9yYWdlLT5nbHlwaHMuZGF0YSgpKTsKKyAgICBBU1NFUlQoZ2x5cGhzQW5kQWR2YW5jZXNXaXRo
b3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMgPT0gYWR2YW5jZXMgfHwgZ2x5cGhzQW5kQWR2YW5jZXNX
aXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMgPT0gZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RT
VkdHbHlwaHMuc3RvcmFnZS0+YWR2YW5jZXMuZGF0YSgpKTsKKwogICAgIHByZXBhcmVJbnRlcm5h
bENvbnRleHQoZm9udCwgc21vb3RoaW5nTW9kZSk7Ci0gICAgRm9udENhc2NhZGU6OmRyYXdHbHlw
aHMobV9pbnRlcm5hbENvbnRleHQsIGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywg
c3RhcnRQb2ludCwgc21vb3RoaW5nTW9kZSk7CisgICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMo
bV9pbnRlcm5hbENvbnRleHQsIGZvbnQsIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5
cGhzLmdseXBocywgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMs
IGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLm51bUdseXBocywgc3RhcnRQb2lu
dCArIHNpemUoZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuaW5pdGlhbEFkdmFu
Y2UpLCBzbW9vdGhpbmdNb2RlKTsKICAgICBjb25jbHVkZUludGVybmFsQ29udGV4dCgpOwogfQog
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420421</attachid>
            <date>2021-02-15 20:23:29 -0800</date>
            <delta_ts>2021-02-15 23:20:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210215202329.patch</filename>
            <type>text/plain</type>
            <size>53895</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uMTUwNmUwZDY2Nzg5MmNmMzEzZDA4ODBmMGE1YzJm
ZWNmMjFkMTIwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTE1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZHIGZyYW1ld29yayB0byBk
ZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVj
dHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291bGQgYmUgcmVuZGVyZWQg
dXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nlc3MsIGFuZCBSRUxFQVNF
X0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0IGl0IHdvbid0IGJlIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBpcyBqdXN0IGEgdGVtcG9y
YXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4gcHJvcGVybHkgdHJhbnNj
b2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBkaXNwbGF5IGxpc3QgaW5m
cmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3MgZHJhd2luZyBPVC1TVkcg
Z2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAgICAgIHJpZ2h0IG5vdywg
b25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJhd2luZywgc2luY2UgcmVn
dWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAgICAgIHByb2Nlc3MgeWV0
LikKKworICAgICAgICBUZXN0OiBmYXN0L3RleHQvb3Rzdmctc3BhY2luZy5odG1sCisKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpG
b250Q2FzY2FkZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29y
ZXRleHQvRm9udENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmZpbmRPVFNW
R0dseXBocyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEzICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWR1Y2Ug
cmVxdWlyZW1lbnRzIGZvciBjb2xvciB0eXBlcyB0byBvbmx5IGNvbnZlcnNpb24gdG8gdGhlaXIg
cmVmZXJlbmNlIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0
OTc1ODczZDcwZTBkMWU0OTQwMzI2Li44ZDRhYjA0NWI5YTc1YzEwZjJhNGVjZmU2OGY2NzQ2MGUw
MTRjN2VkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMS0wMi0xNSAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUg
UHJvY2Vzc10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhl
IEdQVSBwcm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0
LWxpbmtzIHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdv
cmsgdGhhdCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHA6IEFkZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgor
ICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdU
YWJsZSk6CisgICAgICAgIChQQUw6Ok9UU1ZHVGFibGU6Om9wZXJhdG9yPSk6CisgICAgICAgICog
cGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICogcGFsL3NwaS9jZi9Db3JlVGV4
dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBs
ZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0NvcmVUZXh0U1BJLmggdG8gcGFs
L3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFM
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMyNWYwNGI1ZmRhOWU5Yjg0M2Qw
NjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5NTQ4ZGEwN2NlNzQ2ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDMDlEMDU3
MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJMUM0ODc2RDgxRjhEN0Y0RTAw
Q0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwICovOyB9
OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2luZy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDcxRjhEN0Y0RTAwQ0NFRUJE
IC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVU
ZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICov
OyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzc3QzhDRDI1RDdBNEEz
MDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFDQzNBQ0U4MjJCRDdFQzUwMEYz
NjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1ldGFsU1BJLmggKi87IH07CiAJ
CTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0MjBEODcxOTMwMDQ3QjA5NyAv
KiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBw
ZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oICovOyB9OwpA
QCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2lu
Zy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNyb3MuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNjdDRUEyMUUz
MkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZp
ZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3N0M4
Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
T1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDQzNBQ0U3MjJC
RDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZXRhbFNQSS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIwRDg3MTkzMDA0N0IwOTcgLyog
Q29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvcmVVSVNQSS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNjIwRDg3NDNGMDA0N0IwOTcg
LyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5T
QXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNTk0LDYgKzYw
MCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0
TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5MyAvKiBDb3JlTWVkaWFTb2Z0
TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRpYVNv
ZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29m
dExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNv
ZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUu
Y3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmggKi8s
CiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmNw
cCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyogVmlkZW9Ub29sYm94U29mdExp
bmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAogCQkJCTA3N0U4N0IxMjI2QTQ2
MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRpYVNvZnRMaW5rLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRM
aW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUzMUM0NjUwMDcyNUYxOCAvKiBD
cnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTExNzVCNTgx
RjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRlci5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmlsZVNpemVGb3JtYXR0ZXIuY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAogCQkJCTBDRjk5Q0E0MUY3MzYz
NzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9vbGJveFNvZnRMaW5rLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0
TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4Q0UyNUQ3QTRBMzAwNjM1RTBD
IC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0Q2MTIyQ0QyNTU5QjZBQzAw
RkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAqLywKIAkJCQlDRDYxMjJEMTI1
NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQTFG
NjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5r
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMTUwODFhMDlhMDdhMGM2MGVlNzE1ZThmODBiNzdhOWQ4OGIzMzdlMAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisK
KyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CisjaW5jbHVkZSA8d3RmL1NvZnRM
aW5raW5nLmg+CisKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09SS19GT1JfU09VUkNFKFBBTCwg
T1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZH
VGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdUYWJsZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwg
dW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQ
ZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPVFNW
RywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFi
bGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgpLCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19G
VU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAo
T1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJsZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvQ29yZVRleHRTb2Z0TGluay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkMGMwMWQwZWIwMTk3NDM1ZjQ3ZTNm
ZjUyYWUxZjYxMTRjMGI4NmQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICog
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisg
KiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorI2lu
Y2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFE
RVIoUEFMLCBPVFNWRykKKworU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNW
RywgT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxlUmVmLCAoQ0ZEYXRhUmVmIHN2
Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKSwgKHN2Z1RhYmxl
LCB1bml0c1BlckVtLCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQ
QUwsIE9UU1ZHLCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoLCBDRkluZGV4LCAo
T1RTVkdUYWJsZVJlZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0YWJsZSwgZ2x5cGgpKQorU09G
VF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZVJlbGVhc2Us
IHZvaWQsIChPVFNWR1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NmL09UU1ZHVGFibGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI1MjhjODg5ZDBlOTMyZDE1MTFlYThh
OTE2MTMwMzc0MjQyNzJkZWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NmL09UU1ZHVGFibGUuY3BwCkBAIC0wLDAgKzEsNjIgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk9UU1ZHVGFibGUuaCIKKworI2luY2x1ZGUgIkNv
cmVUZXh0U29mdExpbmsuaCIKKworbmFtZXNwYWNlIFBBTCB7CisKK09UU1ZHVGFibGU6Ok9UU1ZH
VGFibGUoKQoreworfQorCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJs
ZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSkKKyAgICA6IHRhYmxlKGlz
T1RTVkdGcmFtZXdvcmtBdmFpbGFibGUoKSA/IHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlQ3JlYXRl
RnJvbURhdGEoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9
CisKK09UU1ZHVGFibGU6Ok9UU1ZHVGFibGUoT1RTVkdUYWJsZSYmIG90aGVyKQorICAgIDogdGFi
bGUob3RoZXIudGFibGUpCit7CisgICAgb3RoZXIudGFibGUgPSBudWxscHRyOworfQorCitPVFNW
R1RhYmxlOjp+T1RTVkdUYWJsZSgpCit7CisgICAgaWYgKGlzT1RTVkdGcmFtZXdvcmtBdmFpbGFi
bGUoKSAmJiB0YWJsZSkKKyAgICAgICAgc29mdExpbmtPVFNWR09UU1ZHVGFibGVSZWxlYXNlKHRh
YmxlKTsKK30KKworT1RTVkdUYWJsZSYgT1RTVkdUYWJsZTo6b3BlcmF0b3I9KE9UU1ZHVGFibGUm
JiBvdGhlcikKK3sKKyAgICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpICYmIHRhYmxl
KQorICAgICAgICBzb2Z0TGlua09UU1ZHT1RTVkdUYWJsZVJlbGVhc2UodGFibGUpOworICAgIHRh
YmxlID0gb3RoZXIudGFibGU7CisgICAgb3RoZXIudGFibGUgPSBudWxscHRyOworICAgIHJldHVy
biAqdGhpczsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9P
VFNWR1RhYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wYTQ2ZWI3MDY4MWE4YzgyZmM3MGVkZjUxMzVlN2FmZTNjMTJhNTM3Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmgKQEAgLTAs
MCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHBhbC9z
cGkvY2YvQ29yZVRleHRTUEkuaD4KKworbmFtZXNwYWNlIFBBTCB7CisKK3N0cnVjdCBPVFNWR1Rh
YmxlIHsKKyAgICBPVFNWR1RhYmxlKCk7CisgICAgT1RTVkdUYWJsZShDRkRhdGFSZWYgc3ZnVGFi
bGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpOworICAgIE9UU1ZHVGFi
bGUoY29uc3QgT1RTVkdUYWJsZSYpID0gZGVsZXRlOworICAgIE9UU1ZHVGFibGUoT1RTVkdUYWJs
ZSYmKTsKKyAgICB+T1RTVkdUYWJsZSgpOworCisgICAgT1RTVkdUYWJsZSYgb3BlcmF0b3I9KGNv
bnN0IE9UU1ZHVGFibGUmKSA9IGRlbGV0ZTsKKyAgICBPVFNWR1RhYmxlJiBvcGVyYXRvcj0oT1RT
VkdUYWJsZSYmKTsKKworICAgIE9UU1ZHVGFibGVSZWYgdGFibGUgeyBudWxscHRyIH07Cit9Owor
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0
ODFkMWJmNWFmYzBhYjYwOTE1MjRkMGVlY2E5YWM3MDc4Y2ExYzBhLi42ZjU2YTFhYzE2NjY3ZDM4
YTQ4OWZiMWZhMTI4OGI5MTdjZGJmMGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3Bp
L2NmL0NvcmVUZXh0U1BJLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJO
QUxfU0RLKQogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8
T1RTVkcvT1RTVkcuaD4KIAogI2Vsc2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBr
Q1RGb250VHJhaXRFbXBoYXNpemVkID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYg
Y29uc3Qgc3RydWN0IF9fT1RTVkdUYWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBX
VEZfRVhURVJOX0NfQkVHSU4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApp
bmRleCBjN2IwNzJlNjZjNjMxNWQyNmE4YzkyODk5Y2U1MDJiMDdhZTAxMGJkLi5jN2RhNTQ5M2Zj
MTQ2NDAxOGE3MWFiMjE4OWZhNTVmNmI2YmIzMmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvRm9udC5oCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpcyBwYXJ0
IG9mIHRoZSBpbnRlcm5hbCBmb250IGltcGxlbWVudGF0aW9uLgogICoKLSAqIENvcHlyaWdodCAo
QykgMjAwNi0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAwNi0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHly
aWdodCAoQykgMjAwNy0yMDA4IFRvcmNoIE1vYmlsZSwgSW5jLgogICoKICAqIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTQy
LDYgKzQyLDcgQEAKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogI2luY2x1ZGUgPENvcmVGb3VuZGF0
aW9uL0NvcmVGb3VuZGF0aW9uLmg+CisjaW5jbHVkZSA8cGFsL2NmL09UU1ZHVGFibGUuaD4KICNp
bmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAjZW5kaWYKIApAQCAtMjE5LDYgKzIyMCw5IEBAIHB1
YmxpYzoKICAgICBib29sIGNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNvbnN0
IFVDaGFyKiwgc2l6ZV90KSBjb25zdDsKICAgICB2b2lkIGFwcGx5VHJhbnNmb3JtcyhHbHlwaEJ1
ZmZlciYsIHVuc2lnbmVkIGJlZ2lubmluZ0dseXBoSW5kZXgsIHVuc2lnbmVkIGJlZ2lubmluZ1N0
cmluZ0luZGV4LCBib29sIGVuYWJsZUtlcm5pbmcsIGJvb2wgcmVxdWlyZXNTaGFwaW5nLCBjb25z
dCBBdG9tU3RyaW5nJiBsb2NhbGUsIFN0cmluZ1ZpZXcgdGV4dCwgVGV4dERpcmVjdGlvbikgY29u
c3Q7CiAKKyAgICAvLyBSZXR1cm5zIG51bGxvcHQgaWYgbm9uZSBvZiB0aGUgZ2x5cGhzIGFyZSBP
VC1TVkcgZ2x5cGhzLgorICAgIE9wdGlvbmFsPEJpdFZlY3Rvcj4gZmluZE9UU1ZHR2x5cGhzKGNv
bnN0IEdseXBoQnVmZmVyR2x5cGgqLCB1bnNpZ25lZCBjb3VudCkgY29uc3Q7CisKICNpZiBQTEFU
Rk9STShXSU4pCiAgICAgU0NSSVBUX0ZPTlRQUk9QRVJUSUVTKiBzY3JpcHRGb250UHJvcGVydGll
cygpIGNvbnN0OwogICAgIFNDUklQVF9DQUNIRSogc2NyaXB0Q2FjaGUoKSBjb25zdCB7IHJldHVy
biAmbV9zY3JpcHRDYWNoZTsgfQpAQCAtMjkzLDYgKzI5Nyw3IEBAIHByaXZhdGU6CiAgICAgbXV0
YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxTbWFsbENhcHM7
CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlQZXRp
dGVDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRl
ZEJ5QWxsUGV0aXRlQ2FwczsKKyAgICBtdXRhYmxlIE9wdGlvbmFsPFBBTDo6T1RTVkdUYWJsZT4g
bV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVU
ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRD
YXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgyODZh
ZTM5NDBhNjAuLjZmZjAwYmZiZDU0YTJiOGExOGVlYzA1ODQ5MDc5MzU0YzAyMTJkYjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNj
YWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVk
ZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUg
IkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCIKICNpbmNs
dWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0
cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsOCBAQCB2b2lkIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhz
KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRm9udCYgZm9udCwgY29uc3QgRwogCiAg
ICAgQ0dDb250ZXh0UmVmIGNnQ29udGV4dCA9IGNvbnRleHQucGxhdGZvcm1Db250ZXh0KCk7CiAK
KyAgICBSRUxFQVNFX0FTU0VSVCghaXNJbkdQVVByb2Nlc3MoKSB8fCAhZm9udC5maW5kT1RTVkdH
bHlwaHMoZ2x5cGhzLCBudW1HbHlwaHMpKTsKKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0g
dHJ1ZTsKICAgICBib29sIHNob3VsZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4
dC5jcHAKaW5kZXggOTc1NTViZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uZDUz
MWI4ZjNmZjZkNWNkOGIxM2IzNDJmZjY3MmQzMzM0MzU5OWY4NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQu
Y3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4
ZXkgUHJvc2t1cnlha292CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC00NCw2ICs0NCw3IEBACiAKICNp
ZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlICJMb2NhbGVDb2NvYS5oIgorI2luY2x1ZGUgPHBh
bC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg+CiAjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oPgogI2Vsc2UKICNpbmNsdWRlIDxwYWwvc3BpL3dpbi9Db3JlVGV4dFNQSVdpbi5oPgpAQCAt
Nzc0LDQgKzc3NSwzMyBAQCBib29sIEZvbnQ6OmlzUHJvYmFibHlPbmx5VXNlZFRvUmVuZGVySWNv
bnMoKSBjb25zdAogICAgIH0pOwogfQogCitPcHRpb25hbDxCaXRWZWN0b3I+IEZvbnQ6OmZpbmRP
VFNWR0dseXBocyhjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIHVuc2lnbmVkIGNvdW50
KSBjb25zdAoreworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGlmICghbV9vdFNWR1RhYmxlKSB7
CisgICAgICAgIGlmIChhdXRvIHRhYmxlRGF0YSA9IGFkb3B0Q0YoQ1RGb250Q29weVRhYmxlKHBs
YXRmb3JtRGF0YSgpLmN0Rm9udCgpLCBrQ1RGb250VGFibGVTVkcsIGtDVEZvbnRUYWJsZU9wdGlv
bk5vT3B0aW9ucykpKQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpPVFNWR1RhYmxl
KHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0c1BlckVtKCksIHBsYXRmb3JtRGF0
YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fb3RTVkdUYWJsZSA9IFBB
TDo6T1RTVkdUYWJsZSgpOworICAgIH0KKworICAgIGlmICghUEFMOjppc09UU1ZHRnJhbWV3b3Jr
QXZhaWxhYmxlKCkgfHwgIW1fb3RTVkdUYWJsZS52YWx1ZSgpLnRhYmxlKQorICAgICAgICByZXR1
cm4geyB9OworCisgICAgT3B0aW9uYWw8Qml0VmVjdG9yPiByZXN1bHQ7CisgICAgZm9yICh1bnNp
Z25lZCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKKyAgICAgICAgaWYgKFBBTDo6c29mdExpbmtP
VFNWR09UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgobV9vdFNWR1RhYmxlLnZhbHVl
KCkudGFibGUsIGdseXBoc1tpXSkgIT0ga0NGTm90Rm91bmQpIHsKKyAgICAgICAgICAgIGlmICgh
cmVzdWx0KQorICAgICAgICAgICAgICAgIHJlc3VsdCA9IEJpdFZlY3Rvcihjb3VudCk7CisgICAg
ICAgICAgICByZXN1bHQudmFsdWUoKS5xdWlja1NldChpKTsKKyAgICAgICAgfQorICAgIH0KKyAg
ICByZXR1cm4gcmVzdWx0OworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZ2x5cGhzKTsKKyAgICBV
TlVTRURfUEFSQU0oY291bnQpOworICAgIHJldHVybiB7IH07CisjZW5kaWYKK30KKwogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3Bs
YXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNiNWU0MDhl
ZmY1Yzc1YWE0OTI2ZmJmY2JmMjlhZmVlM2QuLmIxZmVjZTYzOGQ1MzI2NGJiM2JmNGQ5MGQxOTNm
YTUzNjIyNmI2MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2Miw2ICszNjIsNTMgQEAg
dm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OnJlY29yZERyYXdJbWFnZShDR1JlbmRlcmluZ1N0YXRl
UmVmLCBDR0dTdGF0ZVJlZiBnc3RhdGUKICAgICBtX293bmVyLnRyYW5zbGF0ZSgwLCAtKHJlY3Qu
c2l6ZS5oZWlnaHQgKyAyICogcmVjdC5vcmlnaW4ueSkpOwogfQogCitzdHJ1Y3QgR2x5cGhzQW5k
QWR2YW5jZXNTdG9yYWdlIHsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaD4gZ2x5cGhzOwor
ICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckFkdmFuY2U+IGFkdmFuY2VzOworfTsKK3N0cnVjdCBHbHlw
aHNBbmRBZHZhbmNlcyB7CisgICAgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzOworICAg
IGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXM7CisgICAgdW5zaWduZWQgbnVtR2x5
cGhzOworICAgIEdseXBoQnVmZmVyQWR2YW5jZSBpbml0aWFsQWR2YW5jZTsKKyAgICBPcHRpb25h
bDxHbHlwaHNBbmRBZHZhbmNlc1N0b3JhZ2U+IHN0b3JhZ2U7Cit9Oworc3RhdGljIEdseXBoc0Fu
ZEFkdmFuY2VzIGZpbHRlck91dE9UU1ZHR2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEds
eXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNl
cywgdW5zaWduZWQgbnVtR2x5cGhzKQoreworICAgIGF1dG8gb3RzdmdHbHlwaHMgPSBmb250LmZp
bmRPVFNWR0dseXBocyhnbHlwaHMsIG51bUdseXBocyk7CisgICAgaWYgKCFvdHN2Z0dseXBocykK
KyAgICAgICAgcmV0dXJuIHsgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBtYWtlR2x5cGhC
dWZmZXJBZHZhbmNlKCksIHsgfX07CisKKyAgICBBU1NFUlQob3RzdmdHbHlwaHMtPnNpemUoKSA+
PSBudW1HbHlwaHMpOworCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgcmVzdWx0OworICAgIHJlc3Vs
dC5pbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2UoKTsKKyAgICByZXN1bHQu
c3RvcmFnZSA9IEdseXBoc0FuZEFkdmFuY2VzU3RvcmFnZSgpOworCisgICAgcmVzdWx0LnN0b3Jh
Z2UtPmdseXBocy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisgICAgcmVzdWx0
LnN0b3JhZ2UtPmFkdmFuY2VzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKwor
ICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1HbHlwaHM7ICsraSkgeworICAgICAgICBB
U1NFUlQocmVzdWx0LnN0b3JhZ2UtPmdseXBocy5zaXplKCkgPT0gcmVzdWx0LnN0b3JhZ2UtPmFk
dmFuY2VzLnNpemUoKSk7CisgICAgICAgIGlmIChvdHN2Z0dseXBocy0+cXVpY2tHZXQoaSkpIHsK
KyAgICAgICAgICAgIGlmIChyZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuaXNFbXB0eSgpKQorICAg
ICAgICAgICAgICAgIHJlc3VsdC5pbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFu
Y2Uoc2l6ZShyZXN1bHQuaW5pdGlhbEFkdmFuY2UpICsgc2l6ZShhZHZhbmNlc1tpXSkpOworICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5s
YXN0KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0LnN0b3JhZ2UtPmFkdmFu
Y2VzLmxhc3QoKSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLnVuY2hlY2tlZEFwcGVuZChnbHlwaHNbaV0p
OworICAgICAgICAgICAgcmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChh
ZHZhbmNlc1tpXSk7CisgICAgICAgIH0KKyAgICAgICAgQVNTRVJUKHJlc3VsdC5zdG9yYWdlLT5n
bHlwaHMuc2l6ZSgpID09IHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5zaXplKCkpOworICAgIH0K
KworICAgIHJlc3VsdC5nbHlwaHMgPSByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLmRhdGEoKTsKKyAg
ICByZXN1bHQuYWR2YW5jZXMgPSByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuZGF0YSgpOworICAg
IHJlc3VsdC5udW1HbHlwaHMgPSByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLnNpemUoKTsKKworICAg
IHJldHVybiByZXN1bHQ7Cit9CisKIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhz
KGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3Qg
R2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzLCBjb25zdCBG
bG9hdFBvaW50JiBzdGFydFBvaW50LCBGb250U21vb3RoaW5nTW9kZSBzbW9vdGhpbmdNb2RlKQog
ewogICAgIGlmIChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25z
dHJ1Y3Rpb246OkRvbnREZWNvbnN0cnVjdCkgewpAQCAtMzcxLDggKzQxOCwxMyBAQCB2b2lkIERy
YXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlw
aEJ1ZmZlckdseXBoKiBnbAogCiAgICAgQVNTRVJUKG1fZHJhd0dseXBoc0RlY29uc3RydWN0aW9u
ID09IERyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbjo6RGVjb25zdHJ1Y3QpOwogCisgICAgLy8gRklY
TUU6IDxyZGFyOi8vcHJvYmxlbS83MDE2NjU1Mj4gUmVjb3JkIE9UU1ZHIGdseXBocy4KKyAgICBH
bHlwaHNBbmRBZHZhbmNlcyBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocyA9IGZp
bHRlck91dE9UU1ZHR2x5cGhzKGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocyk7Cisg
ICAgQVNTRVJUKGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocyA9PSBn
bHlwaHMgfHwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzID09IGds
eXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLnN0b3JhZ2UtPmdseXBocy5kYXRhKCkp
OworICAgIEFTU0VSVChnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZhbmNl
cyA9PSBhZHZhbmNlcyB8fCBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZh
bmNlcyA9PSBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5zdG9yYWdlLT5hZHZh
bmNlcy5kYXRhKCkpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4dChmb250LCBzbW9vdGhp
bmdNb2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwg
Zm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBvaW50LCBzbW9vdGhpbmdN
b2RlKTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9u
dCwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzLCBnbHlwaHNBbmRB
ZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZhbmNlcywgZ2x5cGhzQW5kQWR2YW5jZXNXaXRo
b3V0T1RTVkdHbHlwaHMubnVtR2x5cGhzLCBzdGFydFBvaW50ICsgc2l6ZShnbHlwaHNBbmRBZHZh
bmNlc1dpdGhvdXRPVFNWR0dseXBocy5pbml0aWFsQWR2YW5jZSksIHNtb290aGluZ01vZGUpOwog
ICAgIGNvbmNsdWRlSW50ZXJuYWxDb250ZXh0KCk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2NmY0MTEzYzY4ZGU0
ZTg5MzdmNDc1N2JmMjRiZmYwNWMzZmJmZjgzLi5iOTI5NTEwMDg3ZDFhODJkNTdkNTI0Yzg0YmU0
ZDVjYjI1ZGVkNmE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjEtMDItMTUgIE15bGVzIEMu
IE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbR1BVIFByb2Nlc3Nd
IFRlbXBvcmFyaWx5IGRpc2FibGUgZHJhd2luZyBPVC1TVkcgZ2x5cGhzIGluIHRoZSBHUFUgcHJv
Y2VzcyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNzQyMjIzMzQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQ3JlYXRlIGFuIE9UU1ZHIGZvbnQgZm9yIHRlc3RpbmcuCisgICAgICAgIFRo
ZSBBIGdseXBoIGlzIGEgZ3JlZW4gcmVjdGFuZ2xlLgorICAgICAgICBUaGUgQiBnbHlwaCBpcyBh
biBpbWFnZS4KKyAgICAgICAgVGhlIEMgZ2x5cGggaXMgYW5vdGhlciBpbWFnZSwgd2l0aCBhIGRp
ZmZlcmVudCBFWElGIG9yaWVudGF0aW9uIHRoYW4gdGhlIEIgZ2x5cGguCisKKyAgICAgICAgVGhp
cyB0ZXN0IG1ha2VzIHN1cmUgdGhhdCB0d28gZ2x5cGhzIHdpdGggYW4gT1RTVkcgZ2x5cGggYmV0
d2VlbiB0aGVtIGRvbid0IGdldCBzbW9vc2hlZCB0b2dldGhlciBpbiBjYW52YXMuCisKKyAgICAg
ICAgSSdtIGV4cGxpY2l0bHkgbm90IHRlc3RpbmcgdGhlIGJlaGF2aW9yIG9mIE9UU1ZHIGl0c2Vs
ZiBpbiBjYW52YXMsIGJlY2F1c2UgdGhpcyB0ZXN0IGV4cGxpY2l0bHkgZGlzYWJsZXMKKyAgICAg
ICAgdGhhdCBiZWhhdmlvci4gSSB0aGluayBpdCdzIHdyb25nIHRvIGNyZWF0ZSB0ZXN0cyB0aGF0
IG1ha2Ugc3VyZSBzb21lIGZ1bmN0aW9uYWxpdHkgaXMgYnJva2VuLCBiZWNhdXNlIHRoZQorICAg
ICAgICBmdW5jdGlvbmFsaXR5LCBwaGlsb3NvcGhpY2FsbHksIHNob3VsZG4ndCBiZSBicm9rZW4u
IAorCisgICAgICAgICogZmFzdC90ZXh0L290c3ZnLXNwYWNpbmctZXhwZWN0ZWQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC90ZXh0L290c3ZnLXNwYWNpbmcuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC90ZXh0L3Jlc291cmNlcy9BaGVtLVNWRy50dGY6IEFkZGVkLgorCiAyMDIxLTAy
LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIFNv
dW5kIGRvZXMgbm90IHBsYXkgb24gWW91VHViZSBhZnRlciBzd2l0Y2hpbmcgYmFjayB0byBmb3Jl
Z3JvdW5kCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2luZy1l
eHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L290c3ZnLXNwYWNpbmctZXhwZWN0
ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45ZjNkOTNlZjYzNGNiMDI0MGFkMzUwZTVlYjQyOTEyNjI1ZDQw
ZTg4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L290c3ZnLXNwYWNp
bmctZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxjYW52YXMgaWQ9ImNhbnZhcyIgd2lkdGg9Ijgw
MCIgaGVpZ2h0PSI4MDAiPgorPHNjcmlwdD4KKyAgICB2YXIgY2FudmFzID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImNhbnZhcyIpOworICAgIHZhciBjb250ZXh0ID0gY2FudmFzLmdldENvbnRl
eHQoIjJkIik7CisgICAgY29udGV4dC5maWxsUmVjdCgxMDAsIDIwLCA1MDAsIDEwMCk7Cis8L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4
dC9vdHN2Zy1zcGFjaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2lu
Zy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmVmZTRlZTZjZTFhMGZhMDg2ZDNjM2NkZGM3ODMxY2RkZWU1YzBk
YTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2lu
Zy5odG1sCkBAIC0wLDAgKzEsMjMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4K
KzxzdHlsZT4KK0Bmb250LWZhY2UgeworICAgIGZvbnQtZmFtaWx5OiAiV2ViRm9udCI7CisgICAg
c3JjOiB1cmwoInJlc291cmNlcy9BaGVtLVNWRy50dGYiKSBmb3JtYXQoInRydWV0eXBlIik7Cit9
Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8Y2FudmFzIGlkPSJjYW52YXMiIHdpZHRoPSI4
MDAiIGhlaWdodD0iODAwIj4KKzxzY3JpcHQ+CisgICAgdmFyIGNhbnZhcyA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKKyAgICB2YXIgY29udGV4dCA9IGNhbnZhcy5nZXRDb250
ZXh0KCIyZCIpOworZG9jdW1lbnQuZm9udHMubG9hZCgiMTAwcHggJ1dlYkZvbnQnIikudGhlbihm
dW5jdGlvbigpIHsKKyAgICBjb250ZXh0LmZvbnQgPSAiMTAwcHggJ1dlYkZvbnQnIjsKKyAgICBj
b250ZXh0LmZpbGxUZXh0KCJhQUJDYSIsIDEwMCwgMTAwKTsKKyAgICBjb250ZXh0LmZpbGxSZWN0
KDIwMCwgMjAsIDMwMCwgMTAwKTsKK30pOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvcmVzb3VyY2VzL0FoZW0tU1ZHLnR0ZiBi
L0xheW91dFRlc3RzL2Zhc3QvdGV4dC9yZXNvdXJjZXMvQWhlbS1TVkcudHRmCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjI4ZDcxYjc3OTk1NDA1YzBiZGVlNmY5OThlMjgzN2U0YzExZmQ2MDgKR0lUIGJpbmFyeSBwYXRj
aApsaXRlcmFsIDQ1MTMyCnpjbWVGWk9VKDQjbUxCd1ZJdzg7c1FmODxie1c9TVYkVnB0aitmN2M/
Y0RjJXpEJk94OzJLWmooVGUpMHpgNjhybAp6REtpR1owNUohTlNyOE1ER0dHZUkwRVI/Sk5MKGJ3
ajJSJUJScXl9Kj1YfEZMdHRnM3IhU1NvQXgzPjU4X1YpNj0KenRvNXZDP1FnJkg/YzJBJV56RHpv
e3FEQ3ZHI25Jdm1IKyE2IUl9UkNLTDN7RU9GI1Y0QU8yN08+OT1wY15WaCQ5CnpgI1hQPmI7LWN9
aHU7Nzg/YzNrfGBgXkMoZ30rb0t1aUBMal42Zyp4X0FVN2JRMnNBaD9OPEplI3NCKkVBcEgtJgp6
ZWZ3QUFUYW8xZGdaYmI3N3ZIfTkra1h9RT1eTEUqaUAqMmg4QSQoS05kTUphSD82PF9GWntXRzhQ
YjNKP2MxTFoKeitlZW9De3FSNWVANGtLZTxOeUJLdz9GcWN5SlFgSD1sNEpMfEdqP14lS3krT1VH
V2U4K0pGN35rcDRIbWVmdyt3CnpAJGgmfSo/O3RSez5yeStlOz9aV3lNT2ZVY1lwVUV7bSNHdD9K
dk4hfEsqP2ljaUBWREA1bGVZXkl2XyNmOUg0TQp6PzYqRztDcUtzQGZCV3tJe3BEe3okWF5OZzNX
KHptLX5SQzE1QzcrJXtPJThiIWFgaj9lRVd4Z0B8WFhRenhlSWoKenBUSFNOIVFKOFdJZXpjIWAq
KituNzVNeDE/TyV0X3p4KGE0IXIhLVZ8TXxDWGZBfkx0YGA2Jl84fi0xQ2B9WF8pCnolaW5zdnN+
Xl5gP08odEEjY2k1fktTMHJDU15ubGl7TFJOJHE0P28mSyV2QWhldDYlRE1SPV5ne0tYRmtfYH40
Kgp6KlZpdzh4YVl0ODFxZ014NSE1Z0tfVjRgdyRLTSl+PkdsSmgpfVl2NWh0R3tZOU52RWV6SFhu
ZEgrKzhhTHdScG8KenhOdDBye3VrKXF7PUw4VHhlTlVKQ3Y0NEVnYTJTez98dCkrWWN8R2w5UXV7
fVB0PFZ3PVo0P0FxJCstWmhhfH5nCnp7SUxEPDdrYDZjcHtkSX5wS2liVzEmODZrX35CT0V0Sj8k
IzhaeTRfQENVY0NEMVo1akplaVV8X19gamdodzklPAp6bFVHNUxlO3dzJmw7bkJLWD0ycmBjITlU
ZzttVigwSlRJYzhXbTxONDh7JiVSVUdLbk87NktrLXtJTlFqSmc8QmIKej5nVmZMb3ZmZUlrNTlW
Y1BZJXkocFB2SEhwV3hwcTtkJD87R3wkaWNEZzhkWkBGJSRMPWtsTD1Qd1AraE51UF4wCnp7PFFz
K3s7Rmh1PE80TU1TTWB5UHN7Smw0eD9rLVNecHZwUVM7eEkxQ35CV28pQTgmYDV0VTdebHw+V3pI
U1hmaAp6NWMkdlZNUldiZWtqYEQ/M2JpSnh0dEtrPz1MV3A5e0NwcGYlalk8NCpJSm8xaXtDV3l2
PkcpfThNVDV6eV5CJDYKekBZe202QF9qV3RjO1R5d3BYYX1AKW99UE9lTGRaZUBTSTsmTHE0P2tl
JDBNTzNvPX5TeipXTG16T2B1My1zVTVwCnomdlNpTWRleGZHXlp6PHNIUC0zcEA8LW0lZ3ZMXzd6
dSUjJFBWbkJ+YG1ndEtXdC1+emVDXmEhK0lSVnkpPlBLXwp6WHxKaWdAOU5YQ3JpIzgjSCU7fWNf
SjZnanNvLVdtSj5SRXlHITtEMiZ1TTV5USsrUVY/YlNTPnpPVmRHN3QjKSYKej9fV0s/JVApXmx5
TU1hPV5YTCFnZjYlJCRfe2pHZEp3UUkrcktgdjdIYDxGbFpvaz5TMmh7YXJ7VWBCTCVWWVVqCnpl
eTZXJGhDZytgO25VeEx6Q1Y7N0tKVmk8KGxCdEtUfGMlKm14ZlAmfDAhUHVRNEQ8YXRNc1NUITJm
MUBoUkA2Vgp6anJ4OHF1T0d7VU0xQ1Y1NjVwamlXaj0+NGVDflVvS2ZsR1Zfd0ReWl9melB6bnRQ
JSh2N3hvdnRGKVNAd1l7TnIKekBvUXs8Q3JeUjwpYzFBdiV6bDE7KWh2R1F7fUtQcyRMSU9LJW00
QjhyK15JT25kanJ2KnxpU3MqUFFYPTladmFJCnpuSj5BMHtRfXVUYD1SVDdyNWMhLUsxYW8kenk1
I2pONU48TERaZDM3IVR9ZmtJLWpuMWRIRV4qc3JSZTdVJlZPIQp6U01UVFpHVD95cERnSy1rS0Vz
Vkt6TWtzcWZxdHdIdmMlK2IoO3hGY1cjQ3owVUw0aiR3aHgqM2N3Y2Q5empvJikKeiNudHhPPkY/
Q3gkU0NDQm5uTnp2Zz1iQ1R3blR3RyMtVVkzbyE9KGAkdGczIXlmPnZ2MCpoMUg0MEJ5VSZyVylx
CnpOVWMpellVPmUkO1kmSzU7MklTbDcxWEAqWSN8UDA4VlhZIStCWmVNT3txbGZNcWhFdFB4bSVE
Tk94RzlPUSpNVAp6N2Y3U09PX14rdXJsVXIjJnNQQENaTHp+KypWPngzcWs8Xm55MlZtTmR5T3Nx
eDwwanU+JTt3NSZxbX0jekVPbT4KelE4MTVZWl9SQmUhKGtXZyZUaVRyYCY+VXxMXzZvd25ZOyRu
dTU3PXEqT3ZTfUJHZHVlRnIrd0hXdTRzXy1UOXNwCnp7PXN5VmA+KmNfP0coU2U9YnQ0e2tYYSNO
dWU4X2JPdURedWlRNXkyVGlfV1Z4b2pgU29xYT56OTBtM30+YnlDXgp6eCM+eT5rRlJ3QXpyQ3t+
eUl5UGxPRm42XiZlPVhSKGYtfU4yPzVLeFdsam1UenY2YSUjcjs8dFV+U3NsYCpsQ2YKem4hfHB6
SX0tO24+LS16c2ZBYn5vb2tJSnlJfD1LOz19K2JScnpvXnJjOzJydWN5KVF8Pk1FSDMtQ0ZUXlM4
MiU4Cnpab29CMzVMMzJ2S0V5ODZTTSNncDkyVWJsWWBTbTNeXmVfZjl8IUhPUk5wX2woYiYpcXxF
S28mJjdYTyVueWdJOAp6dThtJkRxSGJzLSF1bk18dSkxQDktNjgrVGZsUCl5NTdjS0k9IVp8PXlB
cSMlRmBWTDF1ZH1YUWE7YmYlcFNxNkYKenIrKEB+S2JFVSNjdDEtVF89bV9QRTlKPWxfVlpnQXtJ
KERMd2gjUWE1QiM8ZHtJKERMd2gjUWE1QiM8ZHtRdDJKCnp7RHokdDJOZFloRHh1VVkha2cmQyVR
cCtgajYrSzNVYHowb3d2aGBqLWowclVfel40c3RJJTgqQSpncyErSSg2NQp6dlhzSFh5KTgjYDtV
Jj1KTDNnKHtJRkVvYWAoK0QmJkFzWE5hP31ASWBPQHtsSFVKd3U8TGlZTktLUnQkOUpHb2oKenQp
fHQ1QmlPe0JMbEVQT0QpaChtUyZ8d3NESFhuY2h8RytGamVEe3h6KGtHX3pudCExc29RYDcqP2Zy
dHNQUXA/CnpQaU5rT3JoWSFaSl9MQUBsVkM7aWsjODxYNnZ8I2J1eV8+Iyg2RlB4WWlHZCVQem1s
QFRCanF9K14zVn1JZntFMAp6Z3F2PGhSKDgqOVlwWWBFYzBCNkdTOWJFZk5uVFZAemhANmNKPkhe
RjV9SEpIcVcqR2hwMVNEYWBkKDIrcW5+VXEKem1ZcXwzQGk1IT4rZEs7VnBeaGNMaX1CbCNeIWd6
V1cxXjUteCswelA/TktRQT07PF8rPEZgVypiQEI4NXBxK01qCno3TFJCMCsrS2A+Tz1DZ00+M0Nk
Tl9xQEpKV3k/bkF6X35zKWxAWHFnSCp6KWBzemBnPD0kfndQLThuUEZJa2N2Ygp6X21fTT9DZmJq
KGBCNnFjT1h3ZGJBTnh4XzcwNnw9PFI5ZzhJX0Jgb0skZjxeZHBGSUI5THFuK1FGd0JkYFhVPyEK
emBgOUdYeD4heEVWYnxweHNOMkRNMWdoeFgpYmpNQmo2aC0rPVlmSEJNSD1vUCs5ek1LND4jM21i
PGcrWEZnVWtLCnpneGhXMDwmUHUpK2Y0VEhvVlpjTjwwOVVhSylSODReKiZ0T1J0PHVkeTJzdH5R
VipBKTh8ZUcrOTU0SEg0ZSpKJQp6UX1nUjh1MzlMcVleYHE3KXk0RU16Xz5jYj1XOShGVk1paExL
KS0pT0p9SDB0O0V3LXlPQWgrUypHJT4kZ1Q8MWQKekE0eCp4ITNYLTJSWX02cSRuYVleRXxxJCQ5
dkFwWE5CKlQ5bXhwJD1BcEolXmIlV2V+dFhyQCZRTHI5eFA0KzRLCnomLVF0dmZHWXVyXmhPZl5p
XlJ7KihgUCkwRVJURTApeFNweTZ7a24kP3V7PU5LaihESXZYeThnU1krUEUyWDZ4dQp6b31aYDM+
MW9RLU1TZDY7QnpSbUdHais2cF9YOG59QFdYP29XeENXNi1ObzYlYUpAKVF5c1gmYC14MVRlcHot
Qj4KeiF+Pl9pekRtQnRfcSUlOCZDdzlhSjBjQlhpYUphNFIyKCpZWkBvYURXT08tQjBkKiRGIXpI
X3ZqNUdEVGJodXdFCno3ekw8MGxJJUBYam9xMGZHR2tVdkIzKnBsY2lKQiRwQzlLdDU9ZkRHKTJO
LVBOO0RqSW5oOyowYGZOU0spbERZegp6RlBGRk1BIzA/XjJSZjVDaFFfWCFfaG5MeS1XfmVVQTk4
RTUwSHgzcmt2KjQmfEJ8T2gjNzEoezRfUGQ0Y2s0LVgKenJiMmtvR3RDKEBiYSNIN01TRktgVz9m
I3tvKShyUHBSKjhvYUsrJGV6Ml92Zlk+VzVmTyVKbDVqRih5MlBEPDxxCnpFKGN3OT4jPTl0YEVF
Nn1kLWMzPyFBUjBtYz94RDV5XjJxTCE2fFhsVVRZZm5oZG8kajVAJGhEbStyWn1DKnwwLQp6VnlW
K0kmZTQ+PUtwJGBMS148U295MXp4SWN8MGpEWStHUiZCKGdXbz0qPUE1JV5GTlcqcTVTWXhkaWMw
PFVBbE0KelFAQmEyPl9fWCF6T1hzI08qejZ3OCRJczxRPUROU05KTSs7dT4yVmNWa0dTRmRTWDwx
WWFeQDA+elE1LSMlOUUlCnoraFNjKXkzVlBvJVVOUVdGP35+PnUxYXF+YSFOQVQ+fFFRdWpBaWxu
ZGhoSkVhUDN+Ujh6dCpWWGRoPTNTbmB0Qgp6ey1DYCEyZ2l1aHd1eHhsMSVpeUImUCUyMkl5dDdm
OFBPemx0QT5Aczt+T2U+KjAkMjt3Q0NgOGU+b1p7QG8lMC0Kei1nPkR3KH5JSmRjUVhzTmZITXFx
NWxaJntjRl9BayhnJFg+JWYjdGcxR3lUOHdAPjxWJk4jazZYYGYxdjtnWVkqCnpxWT5+PDJRWlBp
cHVgaUl4MXsldyQ0WChUJENlc1NQaHNhQ2pEPFoxYDt9fUQtc3YzNmIxVjNvRU0+VXtaWTt8Iwp6
MD49XzJMd349a29KUComWkpJSDA5VXMrd0JBU0ZTSjQxflNxMms7Zlo3PmVFdVR5bGhAPEg5Qyli
eWFlN2JHRmEKelBgXks1VVlhKnA2e0NkaGcwc2kjbGUpWUdMU0ZfWjh0fXZHRDU+N1M7JW9VbjY+
c3Z1LWBMZz50SEArY0RhckVMCnp1SWhAUz0kPU5mQDxMRGp1K0V5dHBPQ2xyRU1kWkAlTFhNPmI0
UVdNaylNVGw+bFQtbUYmU3xrQnQmXiNrNCtaNgp6SW1zKUAxezZKKmArQ1BAcFYwKjNPfDg7KUgj
e2smXmFzdTZTd0ghTWN8enxPOyg4dF8rLSQ0NCFPZ34lPHpYdz0KemstSVEmUWJQRH5eJkh0ejdA
SiYoe2thOzlgRXVgYkdRJV9YXjVRRElkJWlUfHNveFJsRCN9KDNeOSZZYlFPQSooCnpabSNDM0k0
PWpUMnc5UG88VypwOGR+c3YtdGV5ci14XjZ8TkdHWl53QEI0SG9rVmBPallTYk5Re0J9UnAkS3Nl
Kwp6JSVJOENMfDljbi1RVkxLTEYwbG9afDRHZzJZMnNlMnZfO04qQkZRSFY+YGFOX0ZqMVIwPj5f
VE1EWGdac34xVHcKek9eLUNPYjhianZHZ3xNOUhAK1hQeDkhKVlOc1YoP29Ha1FndVd0P01QbG8q
cGowMGZ2Vz03SElFb2poJV9qOHpZCnpyZFpjekVGMF9ubHZhXnxqXlUkU2smUG5uY2w+Xk1EPz1i
ZWAjQ3NYPT5HQXhTUGBTS0o/REA7Z18pcz81M2YtaAp6Nn1AJldMZ3NtP0Z3aEFOPTVBZDVBaVBU
V05jWU8/ek1SNWh0ck1VMUk2PXxHUTlvYElUUlRmezZnUHE1VytURGgKeiRoa15SSEZaTF94N15r
VEJ7Wns9QkY4cEh0MUMoMFooVy1AQG05UDx3SDZ+T2l8S0o/cSZlPnBEWGFedWNKcWh5CnpJT256
R1Y+ZCUjI1dyQmp5U2FAK3lAcHx7OGJeUGMhV29lSzh2LWhobSFFY1FjVHJ3dzl+aD4yZlI9KSRx
JF9MVQp6Q1lgVm8zaXxlK0NDJmB+UXMyQElrOEpYRVc2OUxnYS1WS3JwdGdsME1SZT41UTU2IV4r
cnltJWd1OFA1K20jaWMKelpqOzUmK3d+IWhNfTN2a2E0QyN5TDhDQDVwZmZWJXhxRHhxPEwyRGJV
MkImRXEwaWIqTjlaSWVILTFgQShYRCF6CnpuaVQ5diRrTlUySnE5X3BncnwtWCF2MG0xRFVWRiRI
TjsoeV52TUZUaUpEaj9DLUVyV0Z6b0oqJkZ9TWhycTF0QAp6dUZPanZVNkBVI0psUFchd0JLRXIk
eGw+KDFkTlA2M0k4VCspY0UzN09lWlA1PSZHNzArU1dLUFN9fHduO243Y34KemhRRmtFQz8wcWdx
bDkmIyNLcFZmaHxaTkVPVShuTlZ4cT54N2haZz9QMFlQfitEV2E2RCU7KERpTVBOeHpoSSUtCnoq
Si0pWEZrJiRoSW49THhYWUk+cUthMEkjYVBUdmopZkNedWJ4OFlOQCptOTZZS0VTQU1XaikoKVd7
QFdqbkl+cwp6QG8ySHJKPDVmOHNmTFJgYnR2ZnNhcE9ENnEtRUx+bmpSfS09UTN5e3R9NjkzdWhP
ZEUmeF5UXkImPjkmWEo9O3AKeiFSRzgxPnU7RlMzWSM/PmBFMj8wT0dFZDgrNndEVEh6JVozS24y
UWxTUD47TkMxaCo+PChiS3ZoTTh8REAoJWFJCnpzQnpjUWF9N2Rfdz1BXj1ZQUhQZ3lIYzs3cVkw
R1omO15EXk1oZnkpUmdza004TVZfelljbkVLYTsoPXJrYCpebQp6UDlgPTN4bjxLbShlOFJCOClQ
T1V4d3tnWGM1N0BvRz5JVlAzYSU4fWlNKFVNXzA7SEdAaWdeYVJfQyYrciFDNzkKeiV3dG5UUDRq
TWpQNnhxUXEqeFZOd3tPXiooPWc9Yjh6KGxKaWgqcmolKXt9Q04xM1JOX29WUHphJWBJN1l7dExU
CnptcVNfdiFtQ3o8V0FUMHpFezMkRmF2b1hSSlU9NDRfb1NBdXF0fmxfJilaeFc5WiU1eStiVTFZ
ZFhfS0VFZkVVQAp6b2JnTGpVV0NJTW9SRCk/JUpCQjUrb2U5bG9ZaEFnYk1WLVJWMlg3OzQxT0l9
PFgrIXVUcS0mWkNZaWxZJWskZkIKelNsa0U+KEA7VmlGUG1tZXNWMSpeT2ZeQzE5YEJiJEpnZUg+
ZypOVXJsNHJXQnliZHE/NSRiWG0kY1o8WDdEdlJzCnpiWEBGPkpvWiE7MzNRRHJrS2xNIXFlcCR4
KypmU2I0TXRMREhrX2BBPWkoVUkpRlMyS3g5Vjd5ZFhrVDxrQlpIbgp6IyVmSDszWkQtVl9ZamRi
SkV3fTRBS1RHdyMteHUkaTN8cGoxWHE7bmp6YH5sTz5JSUUlc3gjUi1rWVN+aDMyaD4KemIoNV5r
ITU+dTA5VGZ8a0Q/KUMta0lBSVpeOyhoQGEqbX5veyVvOUUlKnpSPXNnZ31jcWlmZEoxJVk7UC1i
OV5wCnphWjJ8fVF0NkIqRGFqMG5QLUU0KUEydV9AUkVvWkktT3o8UHRDcz97ekVBaiMmZVRwVmNa
RlFwe1kwU31NPXY4bQp6PklGWD44cHZLUTlJPiFiNDl1Rm51R3VGaU9rOEB7dFpGRTUmX15aVU4t
KGN9U1Q1NT5hRjJzRzk8d0pzek43Vn0KelFPcjRgI3RVTTR2aGJpfHRWbz5LUDcydCpQKHlmb3Vo
KCh6PjElPzVudHI0JUhAX2lMT0syIXtIMG1Wfl8yJjZ6CnpgSkJtKk1yWUY0MyVNeykoPSpTfnZe
emtiQW9sdmBXUng2YytWTTRPPnZQJHZeM3RldFRHSkVfPm9lLUomem5pTgp6Vm5ANzZIUUd1OWNm
emk7YG8oZzAtTlQrPGpFeytPJVp1NkZZeDcqWGpaQEFXcWZ1TFM4REFSN0F4Mng4O2JQVGgKem57
MTlHR25oOyQrdmswKGhtayY4az5NVUZnZ0p+WE44WC0jVHdnU29jQ1h5IWU5dk91QVlhOVdLVn5H
cy15Q35sCnokTnsocj96fHEoaEZ8Zjh5SkBHUUVzanttaUN7KlBlMXVifmFMczhgbTYwN09RUzdQ
N2VVPypubyNFQ3lJfkFQNwp6cCR0PjlkP2BjYnNlKmFuTiotTFlyUEpvPEklIypSczNZQGsxKGtg
LVdGVFNuZEktV2F5cj15WT53QSRPXzFTb1AKeklnT195Kk54PU9heUJGIVh1QDswIz9AdWIpRk9H
UCY2SXNFVl40fih3dXdfNWZ5UUNBOFAjTUh4NVI1aChwN0Y/Cno8JmN8cVB6aT1qQUh5KDF7SSZe
MWlWT0JaRzRFJEdMLVU+cSl6ZyEtQEJUWE5LKSlHLT9PbUllZGJxQzFuNFopKwp6My07I0olWDtE
TDwqfGhNbj5aYkc+flRoaFRnJkg8c05gWS0zQygwcVhIJUdHYEAtND4jeWV5JG9vcnNYbCojPUIK
ekAyXzFnQFpJYDI1aU8re2h8Xyo/WkJEaW1aVUZHNGRYSSZ0NSEkO0tXdUJ2X2dgVSM0R31ePkBk
fVh+RiNGa3N2CnpyZTBxOEwrPmxgY3BKdW12O3RhYTFkcHdhdFNXazRZZn4+bVhOUn5iKiRMRnp2
X1IjZG48dil1cU5odmd3SnxMQwp6Pj5OfUFJIytPTj1+SkM7IyQjRjgpbkF1UkJrN25sR3B+QjxZ
bj5pbkBBaiRNK2IlZDM1Nil+YyskIVhtdSZQYnYKeit8JTdJQzc4MlBSMiMtb0x6eVc3b3QxQ0hg
PD5UUi1TNjBFbjhmRjlvbmhGfHMlYTIlRzgxQ3ZNTW96engrfV9gCnolaGZrRjdiTV9KJmAmeUok
XkNHe2FUcD9SeG4hU0pIJmJkWXNlSVlnTn1YdyQrT1RLRyNMeno2eVN7I30lMlBacQp6dncyMUhr
fllqdmtWVG9VQHF2NEBjNnFYM2JzYSQ7O3gjMHVWb0FYSG1EcktpVzRWblVmSHA5d3tUWXBvPXNA
cFQKekZwMEczZFROP2NQVTVRX3k7PEFvTURGKG9yNi10azIhY1ROeiRtNWFZKjd3dD59MFdebjVs
VSNndGFeKyRtUUk+CnpmVy1CPEkpam9tSE19Syt2OUdLe0FQWlA9eFcxflVCMndDTzZQZVhHI0Fh
Q2V5UHVWPHBJbl9PP19RYk1kMWE5cgp6K2JnfTdVZjtjJEV3S2xAUHhwSCo4bXY1MmZFKyFrIXNo
WXklcjIpRUJNbD5pKlBaIWY2NWskTiN8I3Nwek4wa1gKek1IUWgtVy1xdXJQUFhUMm93VHpsJHpp
UmMmZjVodURzaSY+RHFuOzg7P0NUbTQ4ejV9SWl7YEt0PFA7Q242bm8pCnppXiNQcGRlVWQrdnVx
ZnZxTkVSKEBreCVBOSE8cntpPWlDcWZ9SklLJU1HcXJ0QlgpeW09byNlZ2tDbTVoUk1OdAp6QWdD
VjAxKCYtPzJ6ZShMcGJiY3BRT3U+JnJAUktzIX4paXRieUIyNEpuWmtaNjdpPyltflh2WlFJV3Bi
I0pDWjIKeiZVTjdDPWl9K1lwaUtEWUUrczt0NnM7bkBqejRqeDtQSW9gRl5xYzwyMi02dDd3TWJK
KmQyRWhKKW4+OWRlTVlBCnphSWJTUW87Yzkmb19iciQ/WF94KWohRH1KPn45NkZXM3NPOUNWdDFK
WXhQMzdyUk4zaSVzcSpSU3F9eiNKaTdLRwp6VWUoVGo0N2NxO0tZXiFFMkpSTmglTlhWdHZANlop
SWRaYj1ZOyE4JjklWn1wKTlOV25UKVNfamckMmJyc25BPTIKeitSPzYzez9JTzVTPkU1RTlneiZK
allYS3paZlYoZnJRZXZgQjgpO3FvdkQrXzE5RGRMZGNKbkpPP0RUN0xgYmY1Cno8dV43O2ZrI2Vt
N1A/Smh1ZXlwfFJsPXNfM2B8X0hyRnxCKWIzT09WJVo+M2FkKVhMMGlRVTY7KzFRaE55MU5UOAp6
JW9OJXdlc1B4YitMdGlvZj52ODVaYUUtJmZOX211T0BZQj4yWlRWZnRRTENnXlpKfmNgI1BWRnh+
OUZIOypHZVcKemRLRz16PEAoSipOUDYlaSh7PkRkSG1pYDtoYjZ+dk1ld1FfOy11Wj1QVj84XjQ1
aUImcVZXcm52dGZKYitwe0BtCnpxdUxBJXBqJXVlLSVhUCpjR1o7OVNjfl5VOXQtVGxIMEFVQDg1
am1rN2pJcGltQWEkWWRrMHBoJC1LdkkmZmgxcwp6OzloJjZeJjVXUXNwbEspKk9wbzB0RkImIUJE
dGxuTHNGZUZRazBEbkBDRDM3d3ApQnQ0aWxIeGloWk5mJXw+O0MKekRNUmpwdFlVVHt3dXk0Skwo
TUNQWThtO1EmZUBxLUdVMncoWXIodE44WFRTbiU1bG5RY35LKlhkK2ZRXjM/Z2lnCno+Mzd0JFZS
Vlo/WE9xKGQlcktjcXdyS29kVUhVcS1TZ3w8KWhNZn59VSN+fn0yKXIlb1RuPFVSOTxBcikkVUtq
dgp6b3NwXytWYnNMPipYTTtgI1heWSh3WE8zfVUwfGBGMG9nWiQtZyl7ZXM3JEE+NHhXQDxGP3Iz
UmBJVnAyS3NxfHMKeiVxRkJpbFNXfGBnblNzWXM+IUx3X2kmcGpUTlB7dGdzVHN1TlozNXM/aGtA
d1VtUDkqKHNZMj9aNz9YWEQ3O3R3CnolLUZHTSRkTk4xRVA9VDs5bUgoJEVUQD5EM0c/bGV1fm9S
RmI9YjVFUEZzP3JofnM1ODs8RyUyIV5RIzlrQXhEfAp6Yz5xcSRJKHh6bzl3Pjs7aSZGTEdiYE52
eig4UD04PEJrOWJLaE1fJlJ5XzJ3P1hLbD9WVFU1LU5fJjFMdTQrXnkKemg0KHE0b0FUcXh1aGMk
TVFqIzFPPWBjPE4tLThpMElPaXx9eyV1N0hXLXY/WkEoVndJWkRWYEthRCo3MFI2Jl5zCnoqIXBQ
Z1h5fUVkOzx+MkZxRTcrUzZ5YHFDTVUtPFh1LWYwdyhCNnF+PmJDYWl6R2s2YDQza0IkPGFGa2U/
WC0/cgp6Sz5HSVZ6WVdRTmkkUTtIKEEoUHx0K3IwTDwpc1J6VF5seUtlPzJKNWVFV3srcmsjVExi
TFpHV0d8bi1ZTUs9cGYKemxmajFtKiV5eDQ1KHstK0Mmb2hobjx7R09KWFgqcXN8fUsqR2U4biF3
Nnp3ZXUjaDlSLTBQSGMlbl94fTtUezEhCnpqbWhsME05Klh1eDEhYCZDQDZCfGxoI1dOS05ENHI4
OG5nVil0JWliWW9XJHJwY3AzfjlEQ2NnYClqPDI9M2BLYwp6PWdwb1hPYHg3XkM2NXpIcXVZfnxH
OSpCTmNJQjY/b3ZBbF9wR14hYi02YEMkR3g9dCVoYkI+P0dHfmZVMnNUJlgKelctJXMrUylRQ0xt
RExORiEkKHRXcmg0Y0JVdU4xNDM5KDFRQWglWGxVJlMxJjM9JVU4X3cycFhrVTJgeComNHRNCnpW
KlUyRllta1QyMHlnQThTQTkkM01WT3o7ZnhFRCRzbDJRQ2c+VSF4U25tQnJpdzZCc2R6QEFiVy12
K1MzYj9mMAp6SUpvdzEwVnZTZXoySnxVVT59R1JkSjZeUC1GblklOFdIPXJiY3J7ZTRgI2BmREBO
V1lKaCl1X15yPmVKNkJtVkgKejxPSXFteEJeSE94bEdRekwrfHNjdTgmV3VSYFIyfTVyPWdSX3Jr
byghX3hSX2RnTjNkS3FseCZwPW55KWYqOTgkCnoqezlsVzQ9PXRaclYybmkod2BWcGN7WmMyJlk7
JT5AeHRMY0JWJVAhTzhjcyg9fGwobEdWcXNZPVdqTiNHcE9iNwp6WDNkYSRTaj5yXzQ+fVE5KSZ9
SXY4Pz5MdVNaWGx7WStNazZePU5HeUteTXltV1QobkU1M2tSOGpwMzlXYTFNQnYKejJ7dTJqX25m
TDx6V1JEUylfUGImYEZmPU1pJSRtTGU4YkI/aT5QYl9xZkhzZFl1d15SKWI5JDspYUp3YCMzVkoy
CnpjWm5ePSlicT5wWGptRWxHVWtMX0UramphXjRwYDFaPFU+YTU7P3htVzg9Qz5LT0Q1fHNyMn5a
KDlVe1dyPmkqaAp6eSpifEpgfS1ieW5IZVlqUlROcHc7VFZ9dDN6Xjl5e2NfbEBseGpgPT4xcD9y
N0YkXmI8Pk1RLT1LSG07cnY3T2IKenVoZ3xwQElZNSl5WWlJfT90elBXNyRmajhHRnxqczZfPVV+
QSo1UGVIeUZBPHcwZHlBO1poZ3tpP3p4SVFeXz5DCnpQelllbHRVWWEoYDdXQF9kOTd9UkNHMVhJ
Q0ltUEBIQHJhTXNuX0l7PTV+fFJ5UilhJEhudE1PbW4wVWsyYkFSYAp6YlZxYitaM0I1WD9vU3ZV
PU09ZFRYOXNiYTczSjdOWjI+WmEtNUZMWCZoYlh7Xm0pakp5cGtmRVcpMElsTTt5aDEKemUjXl53
OGd7SDZDPmRWQDgmZz9WZHxXbj44JHcmWmNjclVheDB7X2VGU05aKXlORnorZ2ZAMVJtK28pamZN
WFUkCnpnUUpTbGo2O18xakwlKTIjbkFuMEA1RUgqPmomKGpqbEhrNHFJbTxQYCsobkc5cXpUaHto
cENkcWlCRVVjNFRrSwp6YjA1YShTWHh2eD1nJGhAMm55Tn1wZkY3bmk8K2x3R0tvP345eWs0VlZf
NUVxciZxRXNQVUFiZEMrSSptQkdjUHgKem9sWlE1dj1MXkdTc1d6cztMaCkmRGVUWj5GNmVENUV7
VEMtR1h2Zz5ffXBmQ2E9WGd7PSU3eWpoR3U5bVgxN1JaCnorY2wrO0NMMUNvbC0xXkdsbWwzJHta
eVhrVFdJQFo+TjgrVmk3QCghP0YlJmJVbkBPRXVKSyY8I2dOUVJoPFVycAp6b3N4TVZsWTJkclBt
JUg7JCkmdHJKSi1EN0cjY0Mze1koXkJlPU5tWUUjWUFObz1LOEJ5NU1yIVVJZTMrd1EqNEwKemdF
ciZKPV8rV19hVytJKXc4XjNeQUJTczRsKzU4ITkxTEU2YnkpI1RqfihBJGNGRTkjU2VxMT9rbnlL
cVl0fHp5CnpoVVBpaCtkR0I2ZnRLWTlETk48OGZsQTtgezFDPExKSHc2REkyc3F+JkxBaGI0bHAw
PDQ7UmA/Z0c/OFh0Nl4hUgp6RVNIWjk4aktxYHR6eE1LUnVRdkFjbzVjWjs5c2hiO3I4cCpAZCU9
b1NLSklJIzZQYSowNXp9ZGt1cntsPX4+b3cKelIqTC1ebz5mODB1UVJ1d1V7dkZJYkNJUjhDeiV8
djE3OUUkU2paPjBtWXpYVzhQYTdsaDlsXzdkPG5xZmkleD8qCno0K0JSIVN8Kz5oKHREM04pQFAk
fkdLUFUwR0RIVGFfM040bF9nWjdgUzlhd1lgSjY9UTJ9fGJkeV9wfD1reFdqfQp6dD9XRXlae3hs
VyVVTHF9QE5vcEpWQzlnNmFtalE9Nlo5PElAbGp6JDtkd353Y3lrXk1fe19AU1pKczspezZkUlYK
enskU3RXKXIhaWg3M0gkZnhvZSRoK0NofFQybXlFJjF7OGozO0YlWGktRnl8Z0g1bGxsOU9DcTFw
QyNFa2I5VjtBCnpuZnh0VnI4OFh4MUBVXlNJIW5mXnV7P3RMbylBP3B4OEBCMVRBI1JqZD5mQTAk
K0UwYXBvQHR7c3FKe2NvQ2QlcAp6SWNzKmdHVTtDVVFLJHZIZGZNM1RyMENvT0lBc3RNQk5JYSpZ
PDQzekJFa2Q7ZkY0VENUeD9MYmIoKmk9RzwjckQKemxeemstNk1UZ2JNUHFNJG4lcEBOdHpHbW9v
Nk1fM2Q2fChCOVooYi0xK0JLYUJxcmNTeXo9X2M7S2pKPGQpOD5SCno8UW07PHVkdlhJKmMkPyg3
eEQxYVFLfEN3QElza0ZWdiRpKmhCNmdEYjNNY3cjTWVAVURpbWAlQzd9RExeMUdKTAp6PCllYEgz
LXwoJWR6aTV6ZVk9eHl1b2xZbyFyVTc2VTAjbXNAcmZAXzB9YTZtajN1IyQtYU5ucVhxY2EwOUg+
K0cKelNxPylrUkVjOTg5eEd1d1RwfCpBPjx3VE87Q1h2SG8kOTh9aUlTKzkkMz5kSVBaWUA8Rj85
e0NqNVpZNEFnQTEhCno4QmJCdl8/bE92QWwpMG9aZGkmKjZDeUl0XyF9PktVM21KR1hrUDFGWCV8
cFF5JEIkfT9MZjJSMyRCVS1KRVpDdwp6cGJNcyFxeHs3c2VhK2hUPXtCNiZycClobHhYY1dsJiEj
aHNXUE1Felh6PzxSWXM9eyhoVTE3RClgcHktdDEmTHQKemc5TytgeW49aHhsYyYoNU9CVjNrPjN6
VkNuaiZxdDx8YWdKQm96ZG1WV2okekEjYD1YO2EwbzctU1VUVnMzSG9pCnokaWNBXlZxb2peRyNm
I0stfTBIQE97K0lrJShSTTBLZEAoU0QzN0RtSSlRUW5BUHpJMVNHVUNQcnUxPyhSfiQweAp6eEg3
QlM+Yk01aDwySiVqO0QkYyVIO2Z2el51XnZeXmNxVVFOWFYqfmpBVVhZSWRyLVpkN3RROz1pZTxM
YnxgWEkKekdVbFViMTBPUkVkQTImMj9RKFB7JmM9fjk3PHt4NVpobShVISZUTk9DJUFEdHskYHhI
K212Q1IpYzQwWXhTYmslCnpjYHpBKjJKZ05rMG1JbDx3b0ltaCtsTkU7eWROZ0w+QVVNVCN4I3Qp
T1ohJmQ3bT1BWk8zWXY1KzYmYEpXNCN4NQp6UHpHZ2lVVF5UMGFiUn4/SDhEIVB3ZDRqVV47eFJE
WCtvVjdATG5GV0MxJG5kOGh0Y3szbl5uR0V1JTN4d0g9I1cKekZWOEp+RnomX0NoPmE5emEtQDNp
UiNYYTJyaWxqYTglM150aWhGckIyRikraE8qYVgmS3RoNCFuYUMoZEtaNG9uCnpIY1orIVNwQSs2
N0hTM08zfHpTQERUNWhfdVJnZmBsdklfZGM5VXw7dkZpYlNreCVLR0pnWFFqPFZ5OCR0WGBfQwp6
Kz1GY3l1MXc5V0kye1YxLXlNZigzeUA2MTM4X0ZgPlYwXnxtTD5MMk5rS3h1ZE9eeyF4d0dKMVIo
MClYR2MtdnwKej9Jb2YlT35WV3gmNkopQWFGflB1Q3QzeG4+K0d1cEhQekAqVUtDeTxzN3IzSTgt
KCs1MEpIcU5NcnE4Qjh5UTdJCnpAPmx8VnUlTWFAUE9VSlglK3RiRjFvJkgjUWM5P1RMMVJ4bTZW
djI2d25jUHo5Z25tM1ZGIWczLTxOZVd2V1BjOQp6P0U7OWFtYUBMTldzUUc4aTFtYHM7TFlzOzAl
YyFhKi11Nko4Vm1JaSU7eEolck12VTZ1TCFxMmpFbzw4Zm4wR08Kei1WKjtkQCNIUHQhSUEpPlBH
JC0tbHpMWTNWWntMQFpOUHQkTkBuKFE2bClGaEg8NEBRamQ7YyRgPkpFTUxqbUQ8CnpkLWE9M1hh
LVhjVCMhdUxGY051Q3dxXm03OzdZfSZWTCNaUlVkRCQ8WHViZzYyd287TFoxO0NvRWhXOF4+KHBX
cAp6M3lKMXNOP3luUGxwITskO3Zwa2dpQEZrI1dgeWdlVyEkcSNfUX4kdFEmdFBGVE5tYjQxN1Nx
WkhXO0peZ0xNfEwKenQ5UmctPiNiJFExV242JT9BPEZST0dvUGIjNCk/IzkwNjBnX2N8STR6I2lO
KjJoS0poaF5PXkw8TmFWfUZ8fkpaCnp5bE1gekxwQGtDIz5LUUpzUC1sPyVIR0tKIXp6UTxsVnMm
V3h7ZW5vSVkoTXhAWUljdGo3LUdHKFJWIU07dTkyKAp6JiR7Q2xjWE1zcG1yOGN9JT0rN0xTRVVi
ayNvX0lQS3VSI3hUUHZNcyVYMUBsMndYVz89XlV0WlpoLUNNeW01N1kKei0pIT51JmlCMkxJMU5B
YGJfZDAkQUY3QzMxM05EVFAtakF3OWRnbDsjT3pwS3N9cm8qOXZlenA1d0A2bzgzb0hoCnpTWDgr
dTdpTX5FJWY4eFYqMCRae2k0YzdII3Q7VTdyWiQjYkIpWjltPEZwJldLOElOP0tXKTBFIUphaT57
TGxyagp6VUs3VjM0Tz18KHlDe2tZajFaTE8lSEFhYmQpV1kyb0x1bWZ1VHpSMl9OJW1udz88ZWln
ZSZUYmIpX3RuPzM+cGYKei0pYFBVbzEpKExjc1Z9Tk9Le31lNipiLXlqRFBAX2g9OCtodTxFQnI9
YT9kTFFXI1N5Wmp2dCUpLTM/WWRkay1ACnolVjU/OWcjViFlI3ZfYUIheClLTXFQKV5aUmooNWcj
e3dvREZQZCQ1UGpgQiRWS3dgeWpHS1U1OyR8MFRhcmttfgp6fEU3XiVGNFFWY0F0P2MpaHI4Vkh7
PlhIT20lVmJMKVBvYn5OVHtmRXpMTkk5TmVYaTI/I35xX1l+ez49XkNTak8KejF4eDJtS09Pez1m
VnFMakJyd2AxPHFHSkJ7YE4jPHgqbzNhaDk1UTA1RENkM21uQHctdDNiLT1LeHFBI2VmJVd3Cno7
ZmxWfVIqS30hPnleJXtPRjR5RGBAQ3UqaWh8Pj5yVWwxJiY8OWZKUlElQFhjPWpPOXpJV3djNTB5
N25sX3QtRAp6QEZ0STc8ZXZBTFg/WDRpTTlrK255bnVUTSNLI3goK2srXylQblklK1QkQ3N0bW5H
PDM2Jmt8eTwyI0ckLT9OSzcKemlPUVFRMmZxIXxEJjVXJkRiS3Y9T3lvdSVYSlImWi1aITR9JSlj
Pyt3SkNuRE0hSWQ4ZiZmTj8xJlhuQVQ9ISlsCno7PkYhV0BQTDUmSyZwKXBLNGtoP3JsNVFKIUw0
JnMhI0cxVERrZ3dNNzM/a3pIP3JIbnVkQ3ZQalgwcSpJKG14QQp6T1Q2Y148Yn1oenE7KF5HUlUq
YFUwVWtWeSFQcFNlKCFYP2AmfkxJOGBHSFo0RioqYk16eHFCWXhqUT5FKWEjJjUKensldHo7SlFD
P1JfKjYzZGMpclJCdVRkIzVWOFF4VnVVPjBZVTBqVSZSVCFrOXRATX1QdHRFQ08wYnU5S3grUjxU
Cnp5Z3U+NGVPZl8rYzk7NiRiUyR9diMyU0pOOUheRkt4UXRKQkpfek9PXm9ZQXVATlEtRFVhfEtl
d2V1aShHdHMlewp6PyRqSEgpNWpwZk5JbWVuejkxPV5UUT5gcnVSeWolXzRoWEYyYUFGYyl8IWxk
ZXg+UFJyOGchTThVSn1iSW0lbXsKejEmJUM8QyNufTBfYlQjWCN5Z0xhOEVZXmp7R0wxfj17WVdW
VURmb3JuJW9ZNFU9SkQ/XyRjejYqbEA1OERqPW1lCnpWenxkflRmYGM7UUw1cEJSfXVKSkhRO0JK
amplUmRfPnY0V0tRQnZ1bnNXNEB1JnB9X3FMeEt3c3V2UjMtVG1mVAp6cnxyJj4pWH0makAwMmQ0
PmpwZjtoUGZTUnNWfXQqN0lNbkc8b2N4V2s0QGAmKVdlaXhSYjUtPjIlJnhxX0Z4YWwKei1BZ21E
aTckakFMbUl7bFVMSnNPNVg5bDdNc2UkeHp4LX17Z2E0MkFIKD50WCt+NDNzNEYlNWMqWnYwYkto
NkZJCnpfNDU3eDJBQCNrLWB3OXxUN0drWGdaSmBoP3tCYSFlYDxlJj11aG8kNWRHJTwySCtvcjxO
TiYkZ3A9MkJzKHI0Jgp6Zkt6Ymo7XjAoMCF8bnpWYEwod0o+fil8QVY4aklST19RYG0+cGEqfjs0
MXxCPVJGTlImajVRcXp+UkUpMjZ1QWgKenxFJDw+O0ZvbmokN0Z4bkc4Vl8pYFl6XnJMPSorTUBM
JTxQI2QwNE42JlVrQnJhdio/JEluJjM9PXhDRlZJUEdXCnoobSV5P2UrNkVAMDdIVThwWnVAJUd5
fFhncn1BST9iamtpek8hJWohOEYzKjBAK2xBaGRIIThFem1mbGp7Tj1tKwp6ckVzQUJVemNBSDJW
KGJzNzR5eG5rcEtQanQmc24jX0o3KDFPQylybHBZOHtvYTdiSWZOPCN9RXtyJllAO29LbEIKenta
c3lINH43bC1NNEpFbntIckZ5KjxXQShkR3JkfXt9cVYtXipxM2F7X3lYQXgqelBpYWxmQ3hafH5t
UyYlZkVlCnpgc2V4fjQmWmF3OHRWREZBSClFQih4MkBrZXMySGdlaHU5Mz1rJDtIenBuMnE0VFhM
IXBNJXRaeW5aZzxlWGErMgp6e2hhPT57STlTNyRnQkJJVVNJaiYkP00xVHBTbTZAYD5zQUhCM2VI
MV5tWEdhTSpuTUhmYiktVzZPUlNycUJxXzcKej84b3NfakNBIzk/IyUmfWVMQmdIK1omWGhwVX04
Wm44VzhBdnw+MHVGJSQ1X3pkQWxMYCMlM0c8NU5JaktpNW1QCno7Mm1gSllnflRTI2VlUEwwYn1a
YDtNZHBKYC0xZFdgJkMlaUtnWjh8YUQzajgwcV5JLXdmfiR+IV9XOEVNRF45dwp6dWwoezgla2s/
eUNKZj9KOy1BLV4yS1dMYWtxNiNCTTMpT3pCQDBXWTArMFUhcTxtZkVBI2d4dzk1OVZNKj95R3IK
ej9UfG5MeilRKHFJVnZ3QFU5eVhxNFh7cUd4QGFCYkV1JjFnK1JQKWw+KjV2dHNAck95ejZJKjNi
a1ZMaCNhP2JPCnpTSGFsLVhaYyhLSV5nWiZDKy1EIWcxaUg3Pyo9aDA+cSRXMiNsU3VnQVZUbHcq
cDgzNWVtWHchRVk9eUdSZUBOOQp6PiE8N2xxbk5LP0ZPV3JuKmJlVXU3cn1gJCQ2RUA+I2oqdWt4
b09APkkkPnVaSG1kN2N5Zytvek5sXn0kYitMV3QKelExWHEydEg4YF9GNlVib04lb152ZX5qeG09
eCMoOXUqWmdWdStNZ3JEfj5tfntARGphO1Q4di0tbyEhTiFgPV9pCnpqSWdvMSYldmc2eyZSfSFr
bmJlb3ckeGxjPXdlKml3fFVeb2x0OWQkeyF1PkFBRDVydmcxJXkze3coPT9gdEF3aAp6Zi1GKHN2
bWZQU3NuNz5PbWgwJnhJSHkmKHNlKShheDZJYj0rVCowMFBaI0A8JUVIbW5jSkl5bVFHY318RX53
RnMKelFfST80R1VgQkwhPT9WR2h6KXVlcigyWkJjY3JeRGdXPEp0NV9XMnJKZjIxfkJ1VzItdXp9
WlQ5S2dScGZOUCYjCnpVZ2x9ZFFXPXpfJVY5RC00Nz4lbi1ZMzVpOH16Kz14Q2VBN2gpPzslUW1y
VDZUKlJrI24wUm0/QjMpdSYwLXU5Mgp6Uj0qdUQ5X2xtZzZ+cTlxUnAlQDJESjxZZzZXa1k5O30z
fnZWRGVLcStOMktQMGw5YTQxPzBQIU9HMU9VbmU2MXsKek1xKzNqYllBM0NPZ3MmZ1BOKHNfcWo7
fS1CaGxESFN6RWpaX043PGUrfHpaJTgxTEI3LWFGfkUyJFcpbkdtPmJHCnpBTDBxVDNIIS1GK0gy
MyFYQDlUdGloUTxERW9WSGhpbjBvcylVRmNuR080XntKPDwxdWY3NkU/eHd6KEZfZ3g9Rgp6Wjsj
dzkxNTwyNWJ9RFl8WXdVM3tYenp3aEAqQk5XRUw/cWJndkpBUT0mfGYqUGFNMEJwVWRyRyU0UnYp
SkBNRmEKelFyRTEhY3ZGWFdkMmVXaHojZn4/N285K24tNE1ubUB7VkwwUV89S3tvX3JJcEdrZEt0
K2IlSyQxTjE/NWB6ZF42CnpPfGtBa0gxOCZ2dGwhd3FaWmRtJDRQLXNEKU1mNDIzeCg/JDVWWmxC
Qik1IXYpbn1Ldm9WaEJ1QUdBYGFAZUtvTgp6Z3k9bjMyVXRONWxrRGJqRHtpem1KSDkqLTFGfT5M
NUUxan1lUmx7JiltKDZjNEwpbEpTM1pzI20zeHhwWXkqIT8KejhBaHxwaSVVeDtCN2gxODgzdj5K
aXJTVXchSlhCKy1lfFdkd2dJcVQ2ejVKNTFYNVFISHdiUzdTVn4rcnJoUHV+CnpxOGFrI1d2Q3VX
cFJgTChaU3NSQTg1VjtgRz1TVVZORkUjTW1lUmZoLW8/bjJHXn1Ge2w1PCp2cThrVnkrJSlLQwp6
Y2B1Jn1Va3Q5WiR2Y0gjaUcmYFVTdHElSExKMk9FO0wrTX4ocTtnX2lpWmFRJmUzdGRuZGI/NDIq
NSpOVlQldG8KekNHSzRHej9YdE00JGhJSCZwayNUI0tZIXQzMkI/TUxNOCEwKFVHaE5IWmJuMWZt
cmxqUl4qXiVmVzVZPkBfNFVVCnpZQC1XcEdSczZfKkR8YWRLZjN8bkIyfUlmd01ab05ranNLeVp0
VjN8MF9CWENAbGdrU21ielp9e1RQe2hFZkwqfQp6RGNjbCp5U2U1WGtDKVlDdGk2dTlkWSQ5PXoj
SjdiQSR6X30+PE1fQylLVmJiJjM7S0MwbkU8cjw8flR7MEFMYTkKelh3TT54bDBKcnwzK3lvQmt0
fkI1e2ZrTU1fY2QzXkc0SmExRnptUWFvTXZldjdJMkZWcDxsPytHUz5fRUlJYD9HCno4TlF8OW5e
Qzs9PzJYK01hSUB1eE81Tkd2bUpRMDd6Qm55QUVKUHomTS1yN0ZEdk5Kc1JaPTlUJG1EWSp5Kyt7
Swp6VHhMbjJedF42P25iJD1fKmhYX3YpWUs4a0pCPipjMjYqbn0zV0MxbyspXjRoSjReMDcmZiZw
eTNCU1Qjb3kkYUgKemhyRmN6MXdNNSR1TWMhRDJNLShMX1g5YVhTVl88WipyWkMkZypuPlQqcEQz
KzcoI0R2a3wlZGxkIWVhWV9IPHdOCnolbnpJQjA/NztXOEdUNDBMX2p2ZmFTYW8zM0RgelVocGJr
Xj1IJjE1Qz9VaCswaTR4NEVJeEYtZ1ZSMUojUkp9Mgp6Y2MxZHBVSj9RY3J+R1J3RXw8NmNxJExz
O0l0OCRkKGM5SCkzZTBIeFBXcEJBKmxNIWBMSUxyKmNJMkh7KktAbUsKekpveWE5XjlBKVA7Kj5p
WEBaRnNpbEBaXmE7dkZJI1Q/IUBLSklxZ1h1THs2IU9MKXUjQXdNWipKeUtWellEalFzCnooJjg5
dUd+eVNHP1Ahc31WNjZvS1I8MmpodVFoKHBGOTRsclktMDspNzd4UHA2cjAlaXlwRzMhPjRERi1o
OHE1Pwp6OEUwNklJcEVSWjd7PlJZODZgc15WdFJkU2pERD5gY343LW81N0wlfWl3QG9hLT5lbUg5
NzxndEcmdDdoMk9EPzsKej5gTnQjSjJxWkRCNU5hWl84MkB1KkF0fkA9I3ZybSRDQU5oTyQ9dnpz
dWxCRDI2SysoRD52aE9iXiZzZ0BkUjxUCnoxSEIpTm8pcn1fY1RFJiVKfEVuI1RrTkhEeiYmPCtu
d0xKM1ZYI0FGI0dLXzk3UT5DMVQ4WD5rbVNxKUBLR2Q0TAp6ZHd6PD1yazAwKjheO3ZEcXtYcnhP
dWhxT3UlRGUxRH1zblZiQU92SDRPK2ZAUE8rd143RCh0XzUrTH1nU2soJSYKem5QPnNGcG83VGRm
O15YdGZTJHpkIWxqYTRFZ0lhSjFsRThCUmxnOy12YUYkSmMzPzxgQytDIzl7U1hGKU1yREx8Cnpr
cmhQJTJ5SlpReUNBdnZfXyZYaigjRWdIYjREeVNKTX5rNEV9cTNIQH15Y2hvKCtKeVY4PCUhKERT
TU15bF4/SQp6dEZNRUAqVVRWP2RiRDRHMHVacEdEN1ErUG8tS1h3SjQlWDlEPmBHVHRQRU5ISSpn
enNhPTxnRSFjY29aZ19SP0MKejtoY05tMWpIREJEK1cwKXc8ZlFIYENKIXwqYmtZWnJ0OFpWajgl
aiUxYjB+YC1JTEg4ekBMcihxUT9lTGIwTFR5CnombD92XllnM2w4MVZJMn5KOFhedWpOZ24pWmhV
YSZIOGh1bFg4e1E3YUNtJHwyPmlsQkZCJHxnaDJ6KyFDdmImbAp6NXJadVU7SEI5d1BJKnlAY1p3
dCs1WTghUFJtN2VmZ3IxKyg2O29pPXJ0UyFtZGE0YmVTMWx6UjN+NWo3QUo5PkEKemojVGUpZSRE
U2YrWEdhZUxzKHFBLShUVmFWSWxXUmZpbntePTYhYVI5SFRKV0F8anItS2VATnUmRUJRYyRXUSNU
Cno9KXEyJUFkdT1sIzxONWErVSlrJWg4b1k5MmVZN0Bubm5WVkZWQT90MX5HN2wqS35eUko0Y3Y5
XypDfDNVNGkkNQp6dms8aF9KJFlHe1RtfVA5MzhfJHVgRzc4d19USWp1WXBRX3t5KWY/NCtSYWg3
b2dmTm5FTGhpSnhUeFZZSnw2aXcKelBeemVnJE9PIUdETXdEYjMrdUUhOXxINU8hV2ktNDZ5Ync9
NFUraGg2N2FJIS1rcnJxK2NNJTtfa2JzMCRlPWxSCnpTS18zcjxEOE9RKVRtV3VjU3pJKU9gPzkz
JVJeT3FnZjQ3WXEhNmFtMzEjXzY3SnsyREM2VUdrYUhDfjZPNitAfgp6SFFpaGJfRkhgfEJYQl52
Pik0Pmt0LTJENWwqREE8MlV1fUI3aWEqQS1WcmN+OCUxUDVKQ1dAKDdnfGsoY24kZXsKemBCIzlX
UlU1KkVFSk1wUmFmMHBJN35uV1JEZTlXfUZQYDtwMzl8RG1GSVZVZ253Q28pZTZPZ0RxVHZtQFco
X1JzCno0VXV+X3JneiZ6ZStRMXpzcHMpLV9BZ1lnR1VxM2djfF4xPzIoYjBaJFcwI30+fHRqYnBq
T3kjWkFjeUNLPzdVTAp6anlRLVJUeGRCNEUjO3xnTnFNbSNTfFc/YTlVPz81SlRwKVRDaWMzUT5s
Mz9qN25PQmlpNGcpUVYrSDZaUnIwVj4KenZIfWQ3MTdEeko2ZGc9dDs5b2d7JVcxZ1Zidj1mS3h6
dTdXVUM0Y3IySn4/MldMNHI1PF9KPz01SjhNSF9eMz4+Cno5dW4rZVlJJDdkJnhUTUhxSEtkTzJU
c1lqO3dwcHk7X1N2WShSalBCZGwyVjZXcj4oVGB2LSNDRDVLWlIhPHV1ewp6c2lORTQ4b3RebUtn
fF98a2lzNHxNbTBjfTFDeHF7SEdzUjxHVnxgQUxVX1JzIU1aUi1eKn1BRCo+e00oSz1kPWoKelE7
PXlZRDgremQ+eUVhdHskbmtSPDlrRVZxTW1pUSN5Ml80bHkzbyQ/PilORiU5M1lrcilMPmpORWhy
YVR2Q1hpCnorWWhvVUoxO1c7RG9MbUR5JTYkfShTbntKKlpCSmFTZyQxNXo/Sk4jYjVQfVBmUzxy
WS0wTVpEWnhzKGFvNiQ3dgp6dT9hQl57KVNKUVRndkteaVRCc2I4MjIrUU9yNCU8e3pPUn00PDU5
V00yKXhlPEBWfkkzMmt+MW5NT0g5MFlsWlcKel5jKn4rWTleakBObGprJiV3KEBJTysqOGcqWmt+
TyVIPkllcVU9eHNNM1o5PW47KWZXR3RUR095ejNNMkNza2g1CnpHMm9aRUswYkRQXjIrV2pfWCpx
JWdyXnc0QT5KMkQqUmFqeEJTbnBVSSRwek9ASS1eRCZwRWA2JmZXUE9HJndgYwp6KS1+RV5Ya2FH
YEtzeXU0X3YtfitsZkVRZGN7fmFeYTNeTT43OyZKTmd1P19PRm52XjlTZFFNSDJWcUBWRCM1PDMK
emR3PSVFNXhgfD8jbT5ScTNlZXRuU2NONTBgV3BLQipsSExIZnBfTzxTSTNqTnVgJTZYNUd8QXk7
N1FYOztUMFJ0CnpePF9CXm09SEIjLXchKUopYFQ5O0NkbX5Mc2E2I09gQXtqZHNPJnpPKkkrNURR
KHFsdHBVQGwmVz5OQEg5KX49Twp6JTd7SUkoSTA1VmwrOFA7V252P34hJDsoK1IlJHA7Oyp+S15W
a2NJa2ZOZUJqQn08QjlibVEqJVI9ajBCdnh+a2cKejlnKE5PcERuJHVfd2lLZHN2ST5lPitqZVVZ
cVNEcGU5bVZQI0kpQj5yYmlCZzdMZn5kbl9LfmBUfG9SU2VBLXVuCnplTTwhT0BgRSM/P1BHYjJq
WnNHKlNDJjAtYnBUQUc3eEtqRSVWNiQyJCQ+VH55PTBVPm5YdkQmIzhaUUxxfGFQaAp6QGhOS3RC
a1VoNWluSTsoPXN4aSghWjNiU1R4NH5FMXl3dTB6LTF5KmcmNjlIaWhKZiFZYXFDREY1MHhTdi1p
ISYKeiU8WSpxe2U0YXdxQGR6Zy1AZnZxJkUqVE87MGhmOVVwS3hQdl87WWwoIVdETGQ+QHBAMSgr
dTh2Z3p+OXhAN0YzCnpQKnVJRl9ZNT89Rn1UfXxFPkVwVztuYTkjTG5xQ3poS05QXmc7Sml0IUZY
bVRYfGIhVSMtREgjKUNxUWNNSzl3OQp6U2RrbmRRO2FQb2NXSDxkRFotPlJKZD8tV2MtNW9IdnZH
bkpaVkRVNVFzY257bm9rOEdCX2JqYCpkbjJYTU9nYjAKelR3bUMtPHoyI3ZHZipHOGhMJn1SSzZk
VjhFbn5uQCY/MSQqIW42OyZPKThzYyplTGlARlB0bHVlM25CTE5mKkRoCnpJcCZNYmd7PmdwP3B4
SE5gY1J5IXRPZClAXkgoZyNfYVdIODZHVkQhT3cjXigjdTF1cUFffD1GPEAkSng/aCFyMwp6SzNB
V3gyQXZnfnA4Uj9OVnRlcXxEPjc3OTJzUUxyZV44IylKMihIWV9PMWp6c19OVy1fcytoczFWUkxn
Y29XJWAKeldIUU4yMEB+Nm4xY0RHRDMyVUYjRVImN05PcWpfNkNfYzV+U31Seno/ek9mUypONFVC
O283Pk9LPGkhPVN3ZDg1CnooSVEjfD5xNUJ3ZXxPMjtnYmR+UmU2UFJ1Y1Z+VnhfZERDU28kczlV
LVMzX2BRK2Frdjk9eTRWe0VGI2liKjFoMgp6NnxrPWlCWClqaUVIVz85bz5MamdpeGdxRVhVKktV
PUMtPXthX29kP3N8bjE/dDZnXjFTXmlsMntEbXtJamRAe1kKemQweT89Xj58S1BJeWJmbXplSCVC
PjkzZW82UFZ3PXFPaVB0KFg3Sk8zVCFmfll7RVg4eCR+QzlXO2Q3NFMtRSUkCnpnIVY3WFRVMWgr
KC12d3R0IVJQWUtmaGA1aWpgJGVXd2xGdWtSbHd5Rk5NbmVicnNFbEt5RkQlTmc/KDteP2ttaAp6
OUswPiFvTmIpc097d19pbGdtQGRZVylKfGxUU3MkS35yJWFfbDB4XntlcGY7em9OVjcqUi1EUXJo
RGpLeHt2T3MKejJrNV9PMTNnSDtwQChvKl9hcFF1e1dvbyokTE1pLWZ9VyhPPXhPPmJ7Zj9mWVhY
IWNHT2ZTJWp3MXV8UEh1Xm5JCnpMd3wpe3JQdF9uYFhqd2JaXyhTZG8hKzZIdzJPOUFDKyhwd2RZ
OWcjX2h+UXZpOVZufCg/MHI7e3pDaWRXQlA8WAp6ck43Y2FgaXVfSVZmdmlATXFrakVeYzVZVVph
UFlga1MkYVElWjJPMjdzTUNFdD5PLUdyP15ZcFpDUGl6JWQqfmIKemtMNXxyPzxCa0FrcEBWRXJC
ckV6RypUS1pXa308Mk5jZEUjSTZXaE1UIXhybyZsckBFa30pSj5NOD9SQihIVztACnolKjs0MUJi
MEcpPl4yfHk5QSM4eURSWSZiUX0qTXNiQFBfYVlweTYqQGItZTgzczAkXiZAP0hXK3BfZStON2xh
Zgp6c2QhWURXJDAzKDM1eEZTSmcpOUd7ektoOC0kIT5aWH1XdkVwdH5LJSkhaiNtP2hZaTstUGIr
M0Q+dndGZHEyN3AKekM3MHhkP3VKVWtwfVNFeUtiPl9xPCshQDV7VTdPJFNhPFVLQF9YYF5AKiVs
UD92XzhLbGpQazw/fnkte19zYnQ0CnpeJHl3UCpXX0leT255X3xBLV5MMzEocktOZXB9djYxOTle
SDAzfjs/e0kweFJ6RD9kTi0tPyNFcHgjYmdjZ2hGawp6YkBERng5cjtDaDRkOTFTPVN9JSkoQXo3
b20jPnNCbSNAJmk/Xm9jPGRjSSRnOEQ2YkAtd2xrYjxzWnFIJUZsenMKekZYVzVtMyo8JWV3Qzww
KTR8bmhIPyhGWEItcmx7dGArTUVkP3hvJDZqPWEmRytJNlZ3VkFwNFI8Z1JEQ1IoQ3pzCnpePD51
KlU3TlojYmdsMlllYXx5ezlfVzBwXkFEWUdiLXZsVHZHZEIjbXBacH5LSFlnJj1UKTdUQEJWdHtt
eypVIQp6V18/SV8kaHpeWGpyVlZDLT8oaFVaNXdXU1ZDJWhzZG5ldj1AVE5jQ0BacXswWXdvPHt5
eSYjU3A5cjVUQk4mRWYKenpQXnpMRWFXN1MyOXRvJVlYUChoUXt6KG5TQWhqSEE/MmlgcjtKVGNO
bmElJT0pUDdzYmt1OCtqJiFYTyRGYWBrCnplOUp6aTktJmdZVyM1dEVDPihCPG1edmAreiNJJGFk
fD1Mcj1ESS10KVVeQCowUGI/Syh9eVhtR3lZNztUKCRwJgp6e1MkUU52SG4oPCp7N3p6VyVec0R6
aChNY3JvVXpTVG1Ne3QlWiFIZjxEdld1ZHQ3Rk8lWiYxd3s8WX59b0JwLXcKelU7akolKlROZGhL
NS1HcGljKyojays/e1c3OX1tJkJJbCF3cEF5bH5vUm18eVl9dWo9NjNtdiNOfGZqbTJeWjFxCnoz
OFFXfmNoSCVLJHp8RWNQcGxxX3AxWVdAJitvbnV8OWBFbXhrfWBVYk1acGRPOFktO3I5TjZBJE1f
UGBrY2ExMQp6OTNlNDNyVmRPU187O2BZOT8heGR3SihKXk5QTENRZFZEWjdRN3R9cnY3R3dyVGI2
a1hARyslUz9WVjFVYk96MCYKemBCWTYmeGAze3Y4P1ptPExHMVkxaE1oY251fE1haTsxUHhrVitG
cjNPXyhoIzdWM24hYUZLQTBhST4mcGRwfDVaCnpCZktvXjYhcjsrTU51M2lqdUl6fEw5c31qRTFu
fVppNT1wbDsjJT1gQGpoe3J4TEpIJSsjfks2enFIc2JMb0plSgp6dlNxNGVoTmFSe1dyPGtNd19J
VmwtZzJqOTE5dFhvd1krNnstfH5zJmh9QzZIdnp9YDhTLSkkWVduRX5rd0p4KD4Kelh1YUJjcXhD
TjlNKGJ+X2YzVXR8e2xOTn1qY2Z5S0JXPmV0eHdabVpuZTdMKjIzd28kNjVGLTVUVyRCKTk8QERa
CnpkKTJudl9MMSN4Y0I/KGJLSDdlb0o+TmR2VVQjMHY5PTVOclV1T1RRe1NOeUJfUSZsbitXJTtP
Kk03a013WnJLYwp6PUUhaGxJbkgjSEl1PHg7OTQoR2pjd2dvQ25kNFdFLSNESWp7TkF6TUBoOFZZ
aHdTdF5NPnhraGJEWkNJJlQlZXIKeik7bjlCN2R3Q0F5djJGOV5BWUU+JlIza2ZvRjYocmNVZkc2
VF8/TEh4JDwxYXU2ZUU+eHxYX0B5SD5sZGJOJD9QCnp6dzBzQTMkOGFAVTlPS15VJTRJYlJDbF5O
KHx2fH1yaEM0LSs4dVJZO0oocypnWnIyNjJpO0coeDRHWVQ/eyl2eAp6ZWJuUmU0RUshbl8mdzcr
dnB0SkZiKUxCQUJGe0NSbj8zNzI0fHxeUnl6SlRPKzI9WHo2fV5NSnFtc1RTZFZ9NX4Kej9fQlJX
LVg/RXtfZnFkI0A5cDBFeXFtbjZ5e34pc2M9dm4xOUFGPFhiYnZIcUdPUHRGbGFRd0RzOT58fnZy
Y2dxCnpqUyhKSXVKe3JAKWdqYiRfTX03X0N9MjA1XjBIOGRYeENzWEltSFBZWUBefCNQbE41cXBR
KnZfITQyWUU0ZmZFTwp6QSk3UktBZTlmPCl4KnloTG8rcDRBWngwIW4qO1NrYS0+ZXVALTM4LW55
dFpCKUc1P3A4K2xWcEd9dzsoYXQrM3wKenkzXz80PzRjbiZASWFjRitNd2tSTSpYIUtvQn4/Y1l3
IUB7LXdJRGN1KTBfJHNkczJGYmR0NzRnUTFoTzgjTmRACnpOJkJAMUxubW9sRyNFTmJkc1R5Pmxl
QiNyNDR0SFhzPT82N2M9bUxkN0laVEgwdTNIYSZoYW02YTAoM158Q1I8MQp6TEg9SDxxeWBGK0w8
UCNWOEJpVk9mQyNrJHN6eW16TiEzI3Y9fmxxfXQrcl5QSHE7MUhCaD9fYzdHPSM7ZztXSHkKemlB
MUhpTzROaXBHMzNRaiZoPVhIJkRkM0o0WERwX3hVR2NUc0ZJMy1ZN085ZTxUVFBzZ31kYW1CLUhG
YyVARjlzCnohQzUxPDA5Tz1KPSR5dEM0MFJ8ODFCJW4+SnRlQkZWTVdGY2x0KH5RcTlSfWxEViNN
QHlWQUFAXz9xJDdJYlZYQAp6NypmblJeQlA5Jm5BVT5wTlB0YExYNUJFd3NtTik3WV59KGZOP0NZ
d2kpeGYpcUlHWC1FT34tZkNRPm5RI1Z1SFcKekF6KXtEOz5jbW1GYypee0trSj0mJjd5NEpeeEBq
MylNMUoxUTVzZT4lR35QeFQmfFJ+RFYpUzswYUMwI3dSYT4xCnpPOHxIaGNBPlhSUiNQdU9vO0Ar
Mi0xRSFfYklaMlhmQD59RXMlWnRqRTBJJkhxKVNrQDBYKFRhJU5tVStgRXlXRAp6P01MbkB3ek40
WVRhTnhfVTVBeEFzLTNjeGhKbH4kZkhsVUopJlkhLU59OHFaJVpZXkErIzk7QmF2dzNSMVAxT2cK
ej0yOUkyWlF6TnFGKCNISGhIRDdEQ24xO2Z2WXxuSzghZkkxKnhNQ3B4SHQ4aGA5MVk/SXJVTS14
ezdOKCZsMEdaCnp7WE87N2RkIyh8S159dWtRQUBSRDlnRTZVb1IrfloqakFaeDJ3Sk5HPTJwbmF4
O0teQHJMMCVWVE9jI2IjSXBtLQp6JClpRWxYJD93TGApNkZMOXFEfHNNS3diPUR1cFZ2Vi1JNkZ0
e3JIXzdUdXVXPGdwbzZASDVBJWpMRz1uNXlEeiYKeiFJa0F5XzBNd2lte1lBT0Y7bDZ5Pkw1MiQ9
cSk5NCFUclpQRm1IKWtlUzFtUW5YWFVQTGY/NlZYOF9pXktIfSVvCnpYfmd8QjhHYVEqTEIkU0tJ
QTY7UlFifHY0OV8mU31uQDdgb2F0bkdlNmo2UnBaVnw/QFREUWMyQSk5aTVnUlBDSgp6V0sjZkMp
bWpZYTcpdFVDeFV5KnE+Z2xjZzcqIz43Nn5sU0dOflJjNiNsV0c8UiFxZWBCe3smQ1llKkc8d3ZJ
Z3EKemQ/enErRHVGU0YzUENTWHZqfiN3RGJeIVByXzx3OWZgKGR9O0QkPkpgbWA8VClpJEFEWmZv
byVQOHFlcVg9QmclCnp6KHNHcVNsJEYqRVImSnorK0tXVV9yY0MtQlgqVVdNMC15NkVsKmVzYkRF
OH1QTXVSbS1aYEQlalo7UzZJQm5EZQp6Vj1GWjk/ZyFAeWl7c0tARlVkS2JZb0h4OF5mVDhrPkJV
T2BlVmRAcElga1BWQXMzd0pHYlApdW5vZH0obm9pZ1gKenJ2bkM/PDg7MmtkTl4mZyFUQDlxOGwr
UngzN2g1N2smOE9JPF4hbCpZflc4I0MkdGtsUystJjExKEVnfXY9c3l8CnpqOFZzejJrRElUcj1X
R1FmbkpGc3kqXml7RFN4bEVydkYqYklFKDZZUkRVeUo5UD9FKFcrcnVaUm80Ynk5YVl+Kgp6Wjwl
fntWLUZAbmAlS1gwR2FwUzxKZXhBJD1KaygjSWk1K1lHMXV9K20yNVVXTCY0TGM7OFN0MmMycnoq
ZCQ5MUQKeiFzYHdEQVBsTCM1OTIpK2ZBMkw/I2xPe256WC1OKUpwOEBlX2VhNlYwcG4reEJlNEJ5
V2kyKFh4TiRgaj5le1lLCnokMjBnaCpPY3lTdlh8RzBieCtrWGBecU91elhXNH1TQmRfNChFU1pu
JnFtKmI8KHYqR3lrPkltOGZEXm5pRCQ7Kwp6PEsjWEohdyRGeWtIeVM+UVptZHJOaVpNVl9zMyRj
Z2NZKWY2R0ghfVVmRT44JERAeztncXA0ISowdCZkdlRxV0QKekVkNURUZjxFRTlvZkQtUkk2PG5x
JiErbFR7Wlh5fVNJYllCWnR3KUB2aFRLQnYkeWBXJS0mYj5LR2VydC19I31oCnpSQHJsfU9HOy1a
WT0/RThvS0M/QiVFUzYmWiZDSTNgcjR5RCZRemFKQTd7enp2K3k2IzxuaF5HUG45YTNFOHA5KQp6
eDV6JVZkaVEpUjlkKDhMSGZFMEE2NnJIWDZGQjdsUX0wPzViR2k+SipZUVZuR1RIanFVfilSZS07
bUE+PSNFR0MKelFmUm5GKElXZnNKa3Y8e0BFV0kmbHA7bUh7SHMwb0RPQkg2bTV0e0opcHtHQzJm
aW08aTdRKSZpaWh1UElHNSlTCno/bm18Ql5TQ1FvKDxILSs2TkluaCRMSWZ3K0tLQzZLNGpwTHRq
Mk1TeTNwc0pnZjk0PUpPO194Q2NtKkJFX31xRwp6MmZtWGpnczBZNTVDMjxBbmRtPWJKZiNEeFYr
WmBENClrJmp1ND5lemNPNzJrK3FGNytqVnhHdTE+UlloZno8eHoKeiRPPWF1YypXcS12dVEzWk1s
YEY4V3t8dEdBdFYodmdxbyF+e0t1X1M5U1RQeV4+THsrRHomMVpyTDgqTFNSPlUmCnpvMndjbG5O
biMpWUhFdSQjJW1rI2YzNDk3c3g/JSNxRXcxUlRjdWQyQ1IhaDlULW0zVTZ6enpGVikySD83QWFj
Qwp6TmFHPT90fXpebnBSUTEtaS15Q3xqPmJzNlIyMEtNTWxgbUVxQHJrWkdiNntqeUhUayZSMT5h
PnAmJU5PcyNAQGAKek9yaUt4c2lDI0NXb2xNZHhULXB5UykoPHBRQ25xM1dBJDAhSWZUQ2xqJVRk
fGlwZD5Tej96a3Y+QzAtdnpvfkBrCnphUk9EZUhwRFdRaHc5c2FlRjZBbXtNbmZTcFB+eWNHaUd2
SHF1SjVYayU+UnhWS1Ewe2p1MW5STGJzQCpCOCR9Kwp6JiNGUjt0Zkk1JEUtbyNiO1dtKEJ1cVcx
eyRDdU95MWRta3EpNl5JZWA/S3NUQ2hxIXEpRnpKXmEmKTU8Vzc+PlEKem4oO31hSig9O3p6Q01j
eyQxfiVUV187MyZQbnoqYkdkYCl0KjQyMlY4SnxvJTNwMy1CWUlMRSQ9d2F7cHE4WHA7Cno5Wk5M
aGxWKkk8Nz1KUzNsWVBCI28tejg1dHtvZFVSM3IwZGVEY19jYl5qVlA8Q0UkZHtfUkZYJkc9O1Iq
eUkwRwp6ZD1lMzdIRjg7dyRYTEN5PVlebGA+YmJsUlFoQ1llVzlNJV9GQ2gpUDZoKjs7OWZEU31r
c2FxYEltdHlISzd8Yz8KejNKMmpWdHJRd1VMKHpIfHJPYDw9b0pQPHtgVk5odmxXOD1hZl9XKygo
Y2U+UDQye0p9Z1gwbC1wR2NEc2Rwe2pkCnpyIW87dzwoKE9SPDtnZmRRUmlKS1F9N0o9M182cChP
VyZodV5uTEtrY1VpXkNHc192K2xVeiEoPXEjRnpVMCE4TQp6RU9zODFCVkpwSGkyZWR2TlEpNGdU
fHomZ3xEYmN8aGpjRVRodUNkM0JFYWwlKWo8T3M8IXsyMWYtc2BGe01AMWkKekpEXzt5UzFXWVdq
JWV8Nj8waX5EPVZRPEZEeDhiPnBMN3ZqT2gyTWFYKkZGJlM3MENYUmRoOTdMcURONHczZEV+CnpV
Q30/SSt2cy1mM193MFhreHgkNCZyTVdNT01EIT1ybDBGfEdVN30wdlVXUCs4QCowUCt8bFFKTF9R
UG9Ca2ZlZwp6MUFXZyQ2cyY/eElocFlab1l7Q2N7aFYmMGpYMCg4ZEY4Q1omMiRPUVdWez9fSUtI
NXEoZkIwJm1+TnotPV9aYDsKemNwY3FKKlV+ej05e2JCNSF9KkxqemZySzBDXiFWQzsxYi19Klg8
UHMybV4mZCFlQWpxNyRPVzZRaVdrY25zNV5LCnpkeWYhQzNmfmIlMmAzQXFnO05BY05FYjRNUS12
fHUyUj0/MUZIRXFPJjdWRW5Tc3p9fSgle2R7KEV3a3I0Z3whUgp6bTZxYl52bUlAYiMqKm5KQzRC
WSFlMTdla3FnYHtnWWUyZ093ZClrXlRBKkRFYElfVk5gQ0xfWGpnNyhWVUArSWcKelA+d0h+T0xD
fENlQ2pwN05KfWRpYUlDUD5HSSNuRWc7RjNwU2dlJlI5M1pXZzJiQkNrUE9nRnZsPThTOStBRyZR
CnRwSVI/aWwld0RZPUsxcnZkYGZuKVFhX05GdHdgdzBETnlQTTM7WVZfTkdwPSVPKW1gNC12UXox
ZFJxVmgKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420426</attachid>
            <date>2021-02-15 23:20:43 -0800</date>
            <delta_ts>2021-02-16 19:48:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221744-20210215232042.patch</filename>
            <type>text/plain</type>
            <size>54006</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uMTUwNmUwZDY2Nzg5MmNmMzEzZDA4ODBmMGE1YzJm
ZWNmMjFkMTIwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTE1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIExpbmsgd2l0aCB0aGUgc3lzdGVtIE9UU1ZHIGZyYW1ld29yayB0byBk
ZXRlcm1pbmUgaWYgZ2x5cGhzIHdpbGwgYmUgcmVuZGVyZWQgdXNpbmcgdGhhdCBpbmZyYXN0cnVj
dHVyZS4KKyAgICAgICAgRmlsdGVyIG91dCBnbHlwaHMgd2hpY2ggd291bGQgYmUgcmVuZGVyZWQg
dXNpbmcgdGhhdCBpbmZyYXN0cnVjdHVyZSBpbiB0aGUgd2ViIHByb2Nlc3MsIGFuZCBSRUxFQVNF
X0FTU0VSVCgpCisgICAgICAgIGluIHRoZSBHUFUgcHJvY2VzcyB0aGF0IGl0IHdvbid0IGJlIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUuCisKKyAgICAgICAgVGhpcyBpcyBqdXN0IGEgdGVtcG9y
YXJ5IHBsdWcgb2YgYSBzZWN1cml0eSBob2xlLCB1bnRpbCB3ZSBjYW4gcHJvcGVybHkgdHJhbnNj
b2RlIE9ULVNWRyBnbHlwaHMgaW50byBXZWJLaXQncworICAgICAgICBkaXNwbGF5IGxpc3QgaW5m
cmFzdHJ1Y3R1cmUuIFRoaXMgcGF0Y2ggZXhwbGljaXRseSBicmVha3MgZHJhd2luZyBPVC1TVkcg
Z2x5cGhzIHVzaW5nIHRoZSBHUFUgcHJvY2VzcyAod2hpY2gsCisgICAgICAgIHJpZ2h0IG5vdywg
b25seSBtZWFucyBpdCB3aWxsIGJlIGJyb2tlbiBpbiBjYW52YXMgZHJhd2luZywgc2luY2UgcmVn
dWxhciBET00gZHJhd2luZyBkb2Vzbid0IHVzZSB0aGUgR1BVCisgICAgICAgIHByb2Nlc3MgeWV0
LikKKworICAgICAgICBUZXN0OiBmYXN0L3RleHQvb3Rzdmctc3BhY2luZy5odG1sCisKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpG
b250Q2FzY2FkZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29y
ZXRleHQvRm9udENvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmZpbmRPVFNW
R0dseXBocyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OmZpbHRlck91dE9UU1ZHR2x5cGhzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMpOgorCiAyMDIx
LTAyLTEzICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWR1Y2Ug
cmVxdWlyZW1lbnRzIGZvciBjb2xvciB0eXBlcyB0byBvbmx5IGNvbnZlcnNpb24gdG8gdGhlaXIg
cmVmZXJlbmNlIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBlOGViOTljMjRmZWJkZjg4ZTY0
OTc1ODczZDcwZTBkMWU0OTQwMzI2Li44ZDRhYjA0NWI5YTc1YzEwZjJhNGVjZmU2OGY2NzQ2MGUw
MTRjN2VkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMS0wMi0xNSAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUg
UHJvY2Vzc10gVGVtcG9yYXJpbHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhl
IEdQVSBwcm9jZXNzIHVudGlsIGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBzb2Z0
LWxpbmtzIHRoZSBPVFNWRyBmcmFtZXdvcmsgYmVjYXVzZSBpdCdzIGEgcHJpdmF0ZSBmcmFtZXdv
cmsgdGhhdCBkb2Vzbid0IGV4aXN0IG9uIHdhdGNoT1MuCisKKyAgICAgICAgKiBQQUwueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHA6IEFkZGVkLgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg6IEFkZGVkLgor
ICAgICAgICAqIHBhbC9jZi9PVFNWR1RhYmxlLmNwcDogQWRkZWQuCisgICAgICAgIChQQUw6Ok9U
U1ZHVGFibGU6Ok9UU1ZHVGFibGUpOgorICAgICAgICAoUEFMOjpPVFNWR1RhYmxlOjp+T1RTVkdU
YWJsZSk6CisgICAgICAgIChQQUw6Ok9UU1ZHVGFibGU6Om9wZXJhdG9yPSk6CisgICAgICAgICog
cGFsL2NmL09UU1ZHVGFibGUuaDogQWRkZWQuCisgICAgICAgICogcGFsL3NwaS9jZi9Db3JlVGV4
dFNQSS5oOgorCiAyMDIxLTAyLTEwICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBs
ZS5jb20+CiAKICAgICAgICAgTW92ZSBwYWwvc3BpL2NvY29hL0NvcmVUZXh0U1BJLmggdG8gcGFs
L3NwaS9jZi9Db3JlVGV4dFNQSS5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFM
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTcwZTdlMTg0ZWMyNWYwNGI1ZmRhOWU5Yjg0M2Qw
NjA4NDRjZGY3NS4uMmVkYmNjOWMwMzg4NzVlYWU0MDJjYTVkNTc5NTQ4ZGEwN2NlNzQ2ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMTA5LDYgKzEwOSw4IEBACiAJCTFDMDlEMDU4MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDMDlEMDU3
MUUzMUM1N0UwMDcyNUYxOCAvKiBjb25maWcuaCAqLzsgfTsKIAkJMUM0ODc2RDgxRjhEN0Y0RTAw
Q0NFRUJEIC8qIExvZ2dpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUM0ODc2RDYxRjhEN0Y0RTAwQ0NFRUJEIC8qIExvZ2dpbmcuY3BwICovOyB9
OwogCQkxQzQ4NzZEOTFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2luZy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUM0ODc2RDcxRjhEN0Y0RTAwQ0NFRUJE
IC8qIExvZ2dpbmcuaCAqLzsgfTsKKwkJMUM3N0M4QzkyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVU
ZXh0U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICov
OyB9OworCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzc3QzhDRDI1RDdBNEEz
MDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi87IH07CiAJCTFDQzNBQ0U4MjJCRDdFQzUwMEYz
NjBGMCAvKiBNZXRhbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUNDM0FDRTcyMkJEN0VCODAwRjM2MEYwIC8qIE1ldGFsU1BJLmggKi87IH07CiAJ
CTFDQ0VFNEY1MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3JlVUlTUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQ0VFNEY0MjBEODcxOTMwMDQ3QjA5NyAv
KiBDb3JlVUlTUEkuaCAqLzsgfTsKIAkJMUNDRUU0RjcyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBw
ZWFyYW5jZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUNDRUU0RjYyMEQ4NzQzRjAwNDdCMDk3IC8qIE5TQXBwZWFyYW5jZVNQSS5oICovOyB9OwpA
QCAtMzA2LDYgKzMwOCwxMCBAQAogCQkxQzQ4NzZENzFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2lu
Zy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBMb2dnaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTFDNDg3NkRDMUY4RDdGQzYwMENDRUVCRCAvKiBMb2dNYWNyb3MuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTG9nTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDNjdDRUEyMUUz
MkVFMjYwMEY4MEYyRSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZp
ZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTFDNzdDOEM3MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQzc3QzhDODI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDb3JlVGV4dFNvZnRMaW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE9UU1ZHVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3N0M4
Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
T1RTVkdUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDQzNBQ0U3MjJC
RDdFQjgwMEYzNjBGMCAvKiBNZXRhbFNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZXRhbFNQSS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNDIwRDg3MTkzMDA0N0IwOTcgLyog
Q29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvcmVVSVNQSS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQ0NFRTRGNjIwRDg3NDNGMDA0N0IwOTcg
LyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5T
QXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNTk0LDYgKzYw
MCwxMCBAQAogCQkJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0
TGluay5oICovLAogCQkJCTBDRjk5Q0E2MUY3Mzg0MzYwMDdFRTc5MyAvKiBDb3JlTWVkaWFTb2Z0
TGluay5jcHAgKi8sCiAJCQkJMENGOTlDQTcxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRpYVNv
ZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29m
dExpbmsuY3BwICovLAorCQkJCTFDNzdDOEM4MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNv
ZnRMaW5rLmggKi8sCisJCQkJMUM3N0M4Q0QyNUQ3QTRBMzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUu
Y3BwICovLAorCQkJCTFDNzdDOENCMjVENzlCNkMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmggKi8s
CiAJCQkJNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmNw
cCAqLywKIAkJCQk0MTZFOTk1NjIzREFFRkY3MDBFODcxQ0IgLyogVmlkZW9Ub29sYm94U29mdExp
bmsuaCAqLywKIAkJCSk7CkBAIC0xMDI1LDYgKzEwMzUsNyBAQAogCQkJCTA3N0U4N0IxMjI2QTQ2
MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRpYVNvZnRMaW5rLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTFDNzdDOEM5MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRM
aW5rLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMDlEMDU2MUUzMUM0NjUwMDcyNUYxOCAvKiBD
cnlwdG9EaWdlc3RDb21tb25DcnlwdG8uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTExNzVCNTgx
RjZCNDcwNTAwQzRCOUYwIC8qIERlZmF1bHRTZWFyY2hQcm92aWRlci5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlGNDQyOTE2NDFGQTUyNjcwMDAyQ0M5M0UgLyogRmlsZVNpemVGb3JtYXR0ZXIuY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0xMDM4LDYgKzEwNDksNyBAQAogCQkJCTBDRjk5Q0E0MUY3MzYz
NzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9vbGJveFNvZnRMaW5rLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0
TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUM3N0M4Q0UyNUQ3QTRBMzAwNjM1RTBD
IC8qIE9UU1ZHVGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0Q2MTIyQ0QyNTU5QjZBQzAw
RkM2NTdBIC8qIE91dHB1dENvbnRleHQubW0gaW4gU291cmNlcyAqLywKIAkJCQlDRDYxMjJEMTI1
NTlCOEYyMDBGQzY1N0EgLyogT3V0cHV0RGV2aWNlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQTFG
NjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5r
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMTUwODFhMDlhMDdhMGM2MGVlNzE1ZThmODBiNzdhOWQ4OGIzMzdlMAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5j
cHAKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisK
KyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CisjaW5jbHVkZSA8d3RmL1NvZnRM
aW5raW5nLmg+CisKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09SS19GT1JfU09VUkNFKFBBTCwg
T1RTVkcpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZH
VGFibGVDcmVhdGVGcm9tRGF0YSwgT1RTVkdUYWJsZVJlZiwgKENGRGF0YVJlZiBzdmdUYWJsZSwg
dW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSksIChzdmdUYWJsZSwgdW5pdHNQ
ZXJFbSwgZm9udFNpemUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPVFNW
RywgT1RTVkdUYWJsZUdldERvY3VtZW50SW5kZXhGb3JHbHlwaCwgQ0ZJbmRleCwgKE9UU1ZHVGFi
bGVSZWYgdGFibGUsIENHR2x5cGggZ2x5cGgpLCAodGFibGUsIGdseXBoKSkKK1NPRlRfTElOS19G
VU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT1RTVkcsIE9UU1ZHVGFibGVSZWxlYXNlLCB2b2lkLCAo
T1RTVkdUYWJsZVJlZiB0YWJsZSksICh0YWJsZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvQ29yZVRleHRTb2Z0TGluay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkMGMwMWQwZWIwMTk3NDM1ZjQ3ZTNm
ZjUyYWUxZjYxMTRjMGI4NmQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICog
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisg
KiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgorI2lu
Y2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFE
RVIoUEFMLCBPVFNWRykKKworU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNW
RywgT1RTVkdUYWJsZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxlUmVmLCAoQ0ZEYXRhUmVmIHN2
Z1RhYmxlLCB1bnNpZ25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKSwgKHN2Z1RhYmxl
LCB1bml0c1BlckVtLCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQ
QUwsIE9UU1ZHLCBPVFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoLCBDRkluZGV4LCAo
T1RTVkdUYWJsZVJlZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0YWJsZSwgZ2x5cGgpKQorU09G
VF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPVFNWRywgT1RTVkdUYWJsZVJlbGVhc2Us
IHZvaWQsIChPVFNWR1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvY2YvT1RTVkdUYWJsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NmL09UU1ZHVGFibGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI1MjhjODg5ZDBlOTMyZDE1MTFlYThh
OTE2MTMwMzc0MjQyNzJkZWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NmL09UU1ZHVGFibGUuY3BwCkBAIC0wLDAgKzEsNjIgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIk9UU1ZHVGFibGUuaCIKKworI2luY2x1ZGUgIkNv
cmVUZXh0U29mdExpbmsuaCIKKworbmFtZXNwYWNlIFBBTCB7CisKK09UU1ZHVGFibGU6Ok9UU1ZH
VGFibGUoKQoreworfQorCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKENGRGF0YVJlZiBzdmdUYWJs
ZSwgdW5zaWduZWQgdW5pdHNQZXJFbSwgQ0dGbG9hdCBmb250U2l6ZSkKKyAgICA6IHRhYmxlKGlz
T1RTVkdGcmFtZXdvcmtBdmFpbGFibGUoKSA/IHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlQ3JlYXRl
RnJvbURhdGEoc3ZnVGFibGUsIHVuaXRzUGVyRW0sIGZvbnRTaXplKSA6IG51bGxwdHIpCit7Cit9
CisKK09UU1ZHVGFibGU6Ok9UU1ZHVGFibGUoT1RTVkdUYWJsZSYmIG90aGVyKQorICAgIDogdGFi
bGUob3RoZXIudGFibGUpCit7CisgICAgb3RoZXIudGFibGUgPSBudWxscHRyOworfQorCitPVFNW
R1RhYmxlOjp+T1RTVkdUYWJsZSgpCit7CisgICAgaWYgKGlzT1RTVkdGcmFtZXdvcmtBdmFpbGFi
bGUoKSAmJiB0YWJsZSkKKyAgICAgICAgc29mdExpbmtPVFNWR09UU1ZHVGFibGVSZWxlYXNlKHRh
YmxlKTsKK30KKworT1RTVkdUYWJsZSYgT1RTVkdUYWJsZTo6b3BlcmF0b3I9KE9UU1ZHVGFibGUm
JiBvdGhlcikKK3sKKyAgICBpZiAoaXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpICYmIHRhYmxl
KQorICAgICAgICBzb2Z0TGlua09UU1ZHT1RTVkdUYWJsZVJlbGVhc2UodGFibGUpOworICAgIHRh
YmxlID0gb3RoZXIudGFibGU7CisgICAgb3RoZXIudGFibGUgPSBudWxscHRyOworICAgIHJldHVy
biAqdGhpczsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9P
VFNWR1RhYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wYTQ2ZWI3MDY4MWE4YzgyZmM3MGVkZjUxMzVlN2FmZTNjMTJhNTM3Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmgKQEAgLTAs
MCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHBhbC9z
cGkvY2YvQ29yZVRleHRTUEkuaD4KKworbmFtZXNwYWNlIFBBTCB7CisKK3N0cnVjdCBPVFNWR1Rh
YmxlIHsKKyAgICBPVFNWR1RhYmxlKCk7CisgICAgT1RTVkdUYWJsZShDRkRhdGFSZWYgc3ZnVGFi
bGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpOworICAgIE9UU1ZHVGFi
bGUoY29uc3QgT1RTVkdUYWJsZSYpID0gZGVsZXRlOworICAgIE9UU1ZHVGFibGUoT1RTVkdUYWJs
ZSYmKTsKKyAgICB+T1RTVkdUYWJsZSgpOworCisgICAgT1RTVkdUYWJsZSYgb3BlcmF0b3I9KGNv
bnN0IE9UU1ZHVGFibGUmKSA9IGRlbGV0ZTsKKyAgICBPVFNWR1RhYmxlJiBvcGVyYXRvcj0oT1RT
VkdUYWJsZSYmKTsKKworICAgIE9UU1ZHVGFibGVSZWYgdGFibGUgeyBudWxscHRyIH07Cit9Owor
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0
ODFkMWJmNWFmYzBhYjYwOTE1MjRkMGVlY2E5YWM3MDc4Y2ExYzBhLi42ZjU2YTFhYzE2NjY3ZDM4
YTQ4OWZiMWZhMTI4OGI5MTdjZGJmMGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3Bp
L2NmL0NvcmVUZXh0U1BJLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJO
QUxfU0RLKQogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8
T1RTVkcvT1RTVkcuaD4KIAogI2Vsc2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBr
Q1RGb250VHJhaXRFbXBoYXNpemVkID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYg
Y29uc3Qgc3RydWN0IF9fT1RTVkdUYWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBX
VEZfRVhURVJOX0NfQkVHSU4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApp
bmRleCBjN2IwNzJlNjZjNjMxNWQyNmE4YzkyODk5Y2U1MDJiMDdhZTAxMGJkLi5jN2RhNTQ5M2Zj
MTQ2NDAxOGE3MWFiMjE4OWZhNTVmNmI2YmIzMmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvRm9udC5oCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpcyBwYXJ0
IG9mIHRoZSBpbnRlcm5hbCBmb250IGltcGxlbWVudGF0aW9uLgogICoKLSAqIENvcHlyaWdodCAo
QykgMjAwNi0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAwNi0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHly
aWdodCAoQykgMjAwNy0yMDA4IFRvcmNoIE1vYmlsZSwgSW5jLgogICoKICAqIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTQy
LDYgKzQyLDcgQEAKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogI2luY2x1ZGUgPENvcmVGb3VuZGF0
aW9uL0NvcmVGb3VuZGF0aW9uLmg+CisjaW5jbHVkZSA8cGFsL2NmL09UU1ZHVGFibGUuaD4KICNp
bmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAjZW5kaWYKIApAQCAtMjE5LDYgKzIyMCw5IEBAIHB1
YmxpYzoKICAgICBib29sIGNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNvbnN0
IFVDaGFyKiwgc2l6ZV90KSBjb25zdDsKICAgICB2b2lkIGFwcGx5VHJhbnNmb3JtcyhHbHlwaEJ1
ZmZlciYsIHVuc2lnbmVkIGJlZ2lubmluZ0dseXBoSW5kZXgsIHVuc2lnbmVkIGJlZ2lubmluZ1N0
cmluZ0luZGV4LCBib29sIGVuYWJsZUtlcm5pbmcsIGJvb2wgcmVxdWlyZXNTaGFwaW5nLCBjb25z
dCBBdG9tU3RyaW5nJiBsb2NhbGUsIFN0cmluZ1ZpZXcgdGV4dCwgVGV4dERpcmVjdGlvbikgY29u
c3Q7CiAKKyAgICAvLyBSZXR1cm5zIG51bGxvcHQgaWYgbm9uZSBvZiB0aGUgZ2x5cGhzIGFyZSBP
VC1TVkcgZ2x5cGhzLgorICAgIE9wdGlvbmFsPEJpdFZlY3Rvcj4gZmluZE9UU1ZHR2x5cGhzKGNv
bnN0IEdseXBoQnVmZmVyR2x5cGgqLCB1bnNpZ25lZCBjb3VudCkgY29uc3Q7CisKICNpZiBQTEFU
Rk9STShXSU4pCiAgICAgU0NSSVBUX0ZPTlRQUk9QRVJUSUVTKiBzY3JpcHRGb250UHJvcGVydGll
cygpIGNvbnN0OwogICAgIFNDUklQVF9DQUNIRSogc2NyaXB0Q2FjaGUoKSBjb25zdCB7IHJldHVy
biAmbV9zY3JpcHRDYWNoZTsgfQpAQCAtMjkzLDYgKzI5Nyw3IEBAIHByaXZhdGU6CiAgICAgbXV0
YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxTbWFsbENhcHM7
CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlQZXRp
dGVDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRl
ZEJ5QWxsUGV0aXRlQ2FwczsKKyAgICBtdXRhYmxlIE9wdGlvbmFsPFBBTDo6T1RTVkdUYWJsZT4g
bV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVU
ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRD
YXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgyODZh
ZTM5NDBhNjAuLjZmZjAwYmZiZDU0YTJiOGExOGVlYzA1ODQ5MDc5MzU0YzAyMTJkYjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNj
YWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVk
ZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUg
IkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCIKICNpbmNs
dWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0
cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsOCBAQCB2b2lkIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhz
KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRm9udCYgZm9udCwgY29uc3QgRwogCiAg
ICAgQ0dDb250ZXh0UmVmIGNnQ29udGV4dCA9IGNvbnRleHQucGxhdGZvcm1Db250ZXh0KCk7CiAK
KyAgICBSRUxFQVNFX0FTU0VSVCghaXNJbkdQVVByb2Nlc3MoKSB8fCAhZm9udC5maW5kT1RTVkdH
bHlwaHMoZ2x5cGhzLCBudW1HbHlwaHMpKTsKKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0g
dHJ1ZTsKICAgICBib29sIHNob3VsZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4
dC5jcHAKaW5kZXggOTc1NTViZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uZDUz
MWI4ZjNmZjZkNWNkOGIxM2IzNDJmZjY3MmQzMzM0MzU5OWY4NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQu
Y3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4
ZXkgUHJvc2t1cnlha292CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC00NCw2ICs0NCw3IEBACiAKICNp
ZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlICJMb2NhbGVDb2NvYS5oIgorI2luY2x1ZGUgPHBh
bC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg+CiAjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oPgogI2Vsc2UKICNpbmNsdWRlIDxwYWwvc3BpL3dpbi9Db3JlVGV4dFNQSVdpbi5oPgpAQCAt
Nzc0LDQgKzc3NSwzMyBAQCBib29sIEZvbnQ6OmlzUHJvYmFibHlPbmx5VXNlZFRvUmVuZGVySWNv
bnMoKSBjb25zdAogICAgIH0pOwogfQogCitPcHRpb25hbDxCaXRWZWN0b3I+IEZvbnQ6OmZpbmRP
VFNWR0dseXBocyhjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIHVuc2lnbmVkIGNvdW50
KSBjb25zdAoreworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGlmICghbV9vdFNWR1RhYmxlKSB7
CisgICAgICAgIGlmIChhdXRvIHRhYmxlRGF0YSA9IGFkb3B0Q0YoQ1RGb250Q29weVRhYmxlKHBs
YXRmb3JtRGF0YSgpLmN0Rm9udCgpLCBrQ1RGb250VGFibGVTVkcsIGtDVEZvbnRUYWJsZU9wdGlv
bk5vT3B0aW9ucykpKQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpPVFNWR1RhYmxl
KHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0c1BlckVtKCksIHBsYXRmb3JtRGF0
YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fb3RTVkdUYWJsZSA9IFBB
TDo6T1RTVkdUYWJsZSgpOworICAgIH0KKworICAgIGlmICghUEFMOjppc09UU1ZHRnJhbWV3b3Jr
QXZhaWxhYmxlKCkgfHwgIW1fb3RTVkdUYWJsZS52YWx1ZSgpLnRhYmxlKQorICAgICAgICByZXR1
cm4geyB9OworCisgICAgT3B0aW9uYWw8Qml0VmVjdG9yPiByZXN1bHQ7CisgICAgZm9yICh1bnNp
Z25lZCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKKyAgICAgICAgaWYgKFBBTDo6c29mdExpbmtP
VFNWR09UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgobV9vdFNWR1RhYmxlLnZhbHVl
KCkudGFibGUsIGdseXBoc1tpXSkgIT0ga0NGTm90Rm91bmQpIHsKKyAgICAgICAgICAgIGlmICgh
cmVzdWx0KQorICAgICAgICAgICAgICAgIHJlc3VsdCA9IEJpdFZlY3Rvcihjb3VudCk7CisgICAg
ICAgICAgICByZXN1bHQudmFsdWUoKS5xdWlja1NldChpKTsKKyAgICAgICAgfQorICAgIH0KKyAg
ICByZXR1cm4gcmVzdWx0OworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZ2x5cGhzKTsKKyAgICBV
TlVTRURfUEFSQU0oY291bnQpOworICAgIHJldHVybiB7IH07CisjZW5kaWYKK30KKwogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3Bs
YXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNiNWU0MDhl
ZmY1Yzc1YWE0OTI2ZmJmY2JmMjlhZmVlM2QuLmIxZmVjZTYzOGQ1MzI2NGJiM2JmNGQ5MGQxOTNm
YTUzNjIyNmI2MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2Miw2ICszNjIsNTMgQEAg
dm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OnJlY29yZERyYXdJbWFnZShDR1JlbmRlcmluZ1N0YXRl
UmVmLCBDR0dTdGF0ZVJlZiBnc3RhdGUKICAgICBtX293bmVyLnRyYW5zbGF0ZSgwLCAtKHJlY3Qu
c2l6ZS5oZWlnaHQgKyAyICogcmVjdC5vcmlnaW4ueSkpOwogfQogCitzdHJ1Y3QgR2x5cGhzQW5k
QWR2YW5jZXNTdG9yYWdlIHsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaD4gZ2x5cGhzOwor
ICAgIFZlY3RvcjxHbHlwaEJ1ZmZlckFkdmFuY2U+IGFkdmFuY2VzOworfTsKK3N0cnVjdCBHbHlw
aHNBbmRBZHZhbmNlcyB7CisgICAgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzOworICAg
IGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXM7CisgICAgdW5zaWduZWQgbnVtR2x5
cGhzOworICAgIEdseXBoQnVmZmVyQWR2YW5jZSBpbml0aWFsQWR2YW5jZTsKKyAgICBPcHRpb25h
bDxHbHlwaHNBbmRBZHZhbmNlc1N0b3JhZ2U+IHN0b3JhZ2U7Cit9Oworc3RhdGljIEdseXBoc0Fu
ZEFkdmFuY2VzIGZpbHRlck91dE9UU1ZHR2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEds
eXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3QgR2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNl
cywgdW5zaWduZWQgbnVtR2x5cGhzKQoreworICAgIGF1dG8gb3RzdmdHbHlwaHMgPSBmb250LmZp
bmRPVFNWR0dseXBocyhnbHlwaHMsIG51bUdseXBocyk7CisgICAgaWYgKCFvdHN2Z0dseXBocykK
KyAgICAgICAgcmV0dXJuIHsgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBtYWtlR2x5cGhC
dWZmZXJBZHZhbmNlKCksIHsgfX07CisKKyAgICBBU1NFUlQob3RzdmdHbHlwaHMtPnNpemUoKSA+
PSBudW1HbHlwaHMpOworCisgICAgR2x5cGhzQW5kQWR2YW5jZXMgcmVzdWx0OworICAgIHJlc3Vs
dC5pbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFuY2UoKTsKKyAgICByZXN1bHQu
c3RvcmFnZSA9IEdseXBoc0FuZEFkdmFuY2VzU3RvcmFnZSgpOworCisgICAgcmVzdWx0LnN0b3Jh
Z2UtPmdseXBocy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisgICAgcmVzdWx0
LnN0b3JhZ2UtPmFkdmFuY2VzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKwor
ICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1HbHlwaHM7ICsraSkgeworICAgICAgICBB
U1NFUlQocmVzdWx0LnN0b3JhZ2UtPmdseXBocy5zaXplKCkgPT0gcmVzdWx0LnN0b3JhZ2UtPmFk
dmFuY2VzLnNpemUoKSk7CisgICAgICAgIGlmIChvdHN2Z0dseXBocy0+cXVpY2tHZXQoaSkpIHsK
KyAgICAgICAgICAgIGlmIChyZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuaXNFbXB0eSgpKQorICAg
ICAgICAgICAgICAgIHJlc3VsdC5pbml0aWFsQWR2YW5jZSA9IG1ha2VHbHlwaEJ1ZmZlckFkdmFu
Y2Uoc2l6ZShyZXN1bHQuaW5pdGlhbEFkdmFuY2UpICsgc2l6ZShhZHZhbmNlc1tpXSkpOworICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5s
YXN0KCkgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUocmVzdWx0LnN0b3JhZ2UtPmFkdmFu
Y2VzLmxhc3QoKSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLnVuY2hlY2tlZEFwcGVuZChnbHlwaHNbaV0p
OworICAgICAgICAgICAgcmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLnVuY2hlY2tlZEFwcGVuZChh
ZHZhbmNlc1tpXSk7CisgICAgICAgIH0KKyAgICAgICAgQVNTRVJUKHJlc3VsdC5zdG9yYWdlLT5n
bHlwaHMuc2l6ZSgpID09IHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5zaXplKCkpOworICAgIH0K
KworICAgIHJlc3VsdC5nbHlwaHMgPSByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLmRhdGEoKTsKKyAg
ICByZXN1bHQuYWR2YW5jZXMgPSByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuZGF0YSgpOworICAg
IHJlc3VsdC5udW1HbHlwaHMgPSByZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLnNpemUoKTsKKworICAg
IHJldHVybiByZXN1bHQ7Cit9CisKIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhz
KGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5cGgqIGdseXBocywgY29uc3Qg
R2x5cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlcywgdW5zaWduZWQgbnVtR2x5cGhzLCBjb25zdCBG
bG9hdFBvaW50JiBzdGFydFBvaW50LCBGb250U21vb3RoaW5nTW9kZSBzbW9vdGhpbmdNb2RlKQog
ewogICAgIGlmIChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3R2x5cGhzRGVjb25z
dHJ1Y3Rpb246OkRvbnREZWNvbnN0cnVjdCkgewpAQCAtMzcxLDggKzQxOCwxMyBAQCB2b2lkIERy
YXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlw
aEJ1ZmZlckdseXBoKiBnbAogCiAgICAgQVNTRVJUKG1fZHJhd0dseXBoc0RlY29uc3RydWN0aW9u
ID09IERyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbjo6RGVjb25zdHJ1Y3QpOwogCisgICAgLy8gRklY
TUU6IDxyZGFyOi8vcHJvYmxlbS83MDE2NjU1Mj4gUmVjb3JkIE9UU1ZHIGdseXBocy4KKyAgICBH
bHlwaHNBbmRBZHZhbmNlcyBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocyA9IGZp
bHRlck91dE9UU1ZHR2x5cGhzKGZvbnQsIGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocyk7Cisg
ICAgQVNTRVJUKGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocyA9PSBn
bHlwaHMgfHwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzID09IGds
eXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLnN0b3JhZ2UtPmdseXBocy5kYXRhKCkp
OworICAgIEFTU0VSVChnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZhbmNl
cyA9PSBhZHZhbmNlcyB8fCBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZh
bmNlcyA9PSBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5zdG9yYWdlLT5hZHZh
bmNlcy5kYXRhKCkpOworCiAgICAgcHJlcGFyZUludGVybmFsQ29udGV4dChmb250LCBzbW9vdGhp
bmdNb2RlKTsKLSAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwg
Zm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzLCBzdGFydFBvaW50LCBzbW9vdGhpbmdN
b2RlKTsKKyAgICBGb250Q2FzY2FkZTo6ZHJhd0dseXBocyhtX2ludGVybmFsQ29udGV4dCwgZm9u
dCwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzLCBnbHlwaHNBbmRB
ZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5hZHZhbmNlcywgZ2x5cGhzQW5kQWR2YW5jZXNXaXRo
b3V0T1RTVkdHbHlwaHMubnVtR2x5cGhzLCBzdGFydFBvaW50ICsgc2l6ZShnbHlwaHNBbmRBZHZh
bmNlc1dpdGhvdXRPVFNWR0dseXBocy5pbml0aWFsQWR2YW5jZSksIHNtb290aGluZ01vZGUpOwog
ICAgIGNvbmNsdWRlSW50ZXJuYWxDb250ZXh0KCk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2NmY0MTEzYzY4ZGU0
ZTg5MzdmNDc1N2JmMjRiZmYwNWMzZmJmZjgzLi5iOTI5NTEwMDg3ZDFhODJkNTdkNTI0Yzg0YmU0
ZDVjYjI1ZGVkNmE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjEtMDItMTUgIE15bGVzIEMu
IE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbR1BVIFByb2Nlc3Nd
IFRlbXBvcmFyaWx5IGRpc2FibGUgZHJhd2luZyBPVC1TVkcgZ2x5cGhzIGluIHRoZSBHUFUgcHJv
Y2VzcyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNzQyMjIzMzQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQ3JlYXRlIGFuIE9UU1ZHIGZvbnQgZm9yIHRlc3RpbmcuCisgICAgICAgIFRo
ZSBBIGdseXBoIGlzIGEgZ3JlZW4gcmVjdGFuZ2xlLgorICAgICAgICBUaGUgQiBnbHlwaCBpcyBh
biBpbWFnZS4KKyAgICAgICAgVGhlIEMgZ2x5cGggaXMgYW5vdGhlciBpbWFnZSwgd2l0aCBhIGRp
ZmZlcmVudCBFWElGIG9yaWVudGF0aW9uIHRoYW4gdGhlIEIgZ2x5cGguCisKKyAgICAgICAgVGhp
cyB0ZXN0IG1ha2VzIHN1cmUgdGhhdCB0d28gZ2x5cGhzIHdpdGggYW4gT1RTVkcgZ2x5cGggYmV0
d2VlbiB0aGVtIGRvbid0IGdldCBzbW9vc2hlZCB0b2dldGhlciBpbiBjYW52YXMuCisKKyAgICAg
ICAgSSdtIGV4cGxpY2l0bHkgbm90IHRlc3RpbmcgdGhlIGJlaGF2aW9yIG9mIE9UU1ZHIGl0c2Vs
ZiBpbiBjYW52YXMsIGJlY2F1c2UgdGhpcyB0ZXN0IGV4cGxpY2l0bHkgZGlzYWJsZXMKKyAgICAg
ICAgdGhhdCBiZWhhdmlvci4gSSB0aGluayBpdCdzIHdyb25nIHRvIGNyZWF0ZSB0ZXN0cyB0aGF0
IG1ha2Ugc3VyZSBzb21lIGZ1bmN0aW9uYWxpdHkgaXMgYnJva2VuLCBiZWNhdXNlIHRoZQorICAg
ICAgICBmdW5jdGlvbmFsaXR5LCBwaGlsb3NvcGhpY2FsbHksIHNob3VsZG4ndCBiZSBicm9rZW4u
IAorCisgICAgICAgICogZmFzdC90ZXh0L290c3ZnLXNwYWNpbmctZXhwZWN0ZWQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC90ZXh0L290c3ZnLXNwYWNpbmcuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC90ZXh0L3Jlc291cmNlcy9BaGVtLVNWRy50dGY6IEFkZGVkLgorCiAyMDIxLTAy
LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIFNv
dW5kIGRvZXMgbm90IHBsYXkgb24gWW91VHViZSBhZnRlciBzd2l0Y2hpbmcgYmFjayB0byBmb3Jl
Z3JvdW5kCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2luZy1l
eHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L290c3ZnLXNwYWNpbmctZXhwZWN0
ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45ZjNkOTNlZjYzNGNiMDI0MGFkMzUwZTVlYjQyOTEyNjI1ZDQw
ZTg4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L290c3ZnLXNwYWNp
bmctZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxjYW52YXMgaWQ9ImNhbnZhcyIgd2lkdGg9Ijgw
MCIgaGVpZ2h0PSI4MDAiPgorPHNjcmlwdD4KKyAgICB2YXIgY2FudmFzID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImNhbnZhcyIpOworICAgIHZhciBjb250ZXh0ID0gY2FudmFzLmdldENvbnRl
eHQoIjJkIik7CisgICAgY29udGV4dC5maWxsUmVjdCgxMDAsIDIwLCA1MDAsIDEwMCk7Cis8L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4
dC9vdHN2Zy1zcGFjaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2lu
Zy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmI3ZThlMWI5M2Q4MGY2YzQ2NDZlZjIxZjllODUxNTM0YjhhY2Y5
NmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2lu
Zy5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4K
KzxzdHlsZT4KK0Bmb250LWZhY2UgeworICAgIGZvbnQtZmFtaWx5OiAiV2ViRm9udCI7CisgICAg
c3JjOiB1cmwoInJlc291cmNlcy9BaGVtLVNWRy50dGYiKSBmb3JtYXQoInRydWV0eXBlIik7Cit9
Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8Y2FudmFzIGlkPSJjYW52YXMiIHdpZHRoPSI4
MDAiIGhlaWdodD0iODAwIj4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
dGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit2YXIgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImNhbnZhcyIpOwordmFyIGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgiMmQi
KTsKK2RvY3VtZW50LmZvbnRzLmxvYWQoIjEwMHB4ICdXZWJGb250JyIpLnRoZW4oZnVuY3Rpb24o
KSB7CisgICAgY29udGV4dC5mb250ID0gIjEwMHB4ICdXZWJGb250JyI7CisgICAgY29udGV4dC5m
aWxsVGV4dCgiYUFCQ2EiLCAxMDAsIDEwMCk7CisgICAgY29udGV4dC5maWxsUmVjdCgyMDAsIDIw
LCAzMDAsIDEwMCk7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvcmVzb3VyY2VzL0FoZW0tU1ZHLnR0ZiBiL0xh
eW91dFRlc3RzL2Zhc3QvdGV4dC9yZXNvdXJjZXMvQWhlbS1TVkcudHRmCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI4
ZDcxYjc3OTk1NDA1YzBiZGVlNmY5OThlMjgzN2U0YzExZmQ2MDgKR0lUIGJpbmFyeSBwYXRjaAps
aXRlcmFsIDQ1MTMyCnpjbWVGWk9VKDQjbUxCd1ZJdzg7c1FmODxie1c9TVYkVnB0aitmN2M/Y0Rj
JXpEJk94OzJLWmooVGUpMHpgNjhybAp6REtpR1owNUohTlNyOE1ER0dHZUkwRVI/Sk5MKGJ3ajJS
JUJScXl9Kj1YfEZMdHRnM3IhU1NvQXgzPjU4X1YpNj0KenRvNXZDP1FnJkg/YzJBJV56RHpve3FE
Q3ZHI25Jdm1IKyE2IUl9UkNLTDN7RU9GI1Y0QU8yN08+OT1wY15WaCQ5CnpgI1hQPmI7LWN9aHU7
Nzg/YzNrfGBgXkMoZ30rb0t1aUBMal42Zyp4X0FVN2JRMnNBaD9OPEplI3NCKkVBcEgtJgp6ZWZ3
QUFUYW8xZGdaYmI3N3ZIfTkra1h9RT1eTEUqaUAqMmg4QSQoS05kTUphSD82PF9GWntXRzhQYjNK
P2MxTFoKeitlZW9De3FSNWVANGtLZTxOeUJLdz9GcWN5SlFgSD1sNEpMfEdqP14lS3krT1VHV2U4
K0pGN35rcDRIbWVmdyt3CnpAJGgmfSo/O3RSez5yeStlOz9aV3lNT2ZVY1lwVUV7bSNHdD9Kdk4h
fEsqP2ljaUBWREA1bGVZXkl2XyNmOUg0TQp6PzYqRztDcUtzQGZCV3tJe3BEe3okWF5OZzNXKHpt
LX5SQzE1QzcrJXtPJThiIWFgaj9lRVd4Z0B8WFhRenhlSWoKenBUSFNOIVFKOFdJZXpjIWAqKitu
NzVNeDE/TyV0X3p4KGE0IXIhLVZ8TXxDWGZBfkx0YGA2Jl84fi0xQ2B9WF8pCnolaW5zdnN+Xl5g
P08odEEjY2k1fktTMHJDU15ubGl7TFJOJHE0P28mSyV2QWhldDYlRE1SPV5ne0tYRmtfYH40Kgp6
KlZpdzh4YVl0ODFxZ014NSE1Z0tfVjRgdyRLTSl+PkdsSmgpfVl2NWh0R3tZOU52RWV6SFhuZEgr
KzhhTHdScG8KenhOdDBye3VrKXF7PUw4VHhlTlVKQ3Y0NEVnYTJTez98dCkrWWN8R2w5UXV7fVB0
PFZ3PVo0P0FxJCstWmhhfH5nCnp7SUxEPDdrYDZjcHtkSX5wS2liVzEmODZrX35CT0V0Sj8kIzha
eTRfQENVY0NEMVo1akplaVV8X19gamdodzklPAp6bFVHNUxlO3dzJmw7bkJLWD0ycmBjITlUZztt
VigwSlRJYzhXbTxONDh7JiVSVUdLbk87NktrLXtJTlFqSmc8QmIKej5nVmZMb3ZmZUlrNTlWY1BZ
JXkocFB2SEhwV3hwcTtkJD87R3wkaWNEZzhkWkBGJSRMPWtsTD1Qd1AraE51UF4wCnp7PFFzK3s7
Rmh1PE80TU1TTWB5UHN7Smw0eD9rLVNecHZwUVM7eEkxQ35CV28pQTgmYDV0VTdebHw+V3pIU1hm
aAp6NWMkdlZNUldiZWtqYEQ/M2JpSnh0dEtrPz1MV3A5e0NwcGYlalk8NCpJSm8xaXtDV3l2Pkcp
fThNVDV6eV5CJDYKekBZe202QF9qV3RjO1R5d3BYYX1AKW99UE9lTGRaZUBTSTsmTHE0P2tlJDBN
TzNvPX5TeipXTG16T2B1My1zVTVwCnomdlNpTWRleGZHXlp6PHNIUC0zcEA8LW0lZ3ZMXzd6dSUj
JFBWbkJ+YG1ndEtXdC1+emVDXmEhK0lSVnkpPlBLXwp6WHxKaWdAOU5YQ3JpIzgjSCU7fWNfSjZn
anNvLVdtSj5SRXlHITtEMiZ1TTV5USsrUVY/YlNTPnpPVmRHN3QjKSYKej9fV0s/JVApXmx5TU1h
PV5YTCFnZjYlJCRfe2pHZEp3UUkrcktgdjdIYDxGbFpvaz5TMmh7YXJ7VWBCTCVWWVVqCnpleTZX
JGhDZytgO25VeEx6Q1Y7N0tKVmk8KGxCdEtUfGMlKm14ZlAmfDAhUHVRNEQ8YXRNc1NUITJmMUBo
UkA2Vgp6anJ4OHF1T0d7VU0xQ1Y1NjVwamlXaj0+NGVDflVvS2ZsR1Zfd0ReWl9melB6bnRQJSh2
N3hvdnRGKVNAd1l7TnIKekBvUXs8Q3JeUjwpYzFBdiV6bDE7KWh2R1F7fUtQcyRMSU9LJW00Qjhy
K15JT25kanJ2KnxpU3MqUFFYPTladmFJCnpuSj5BMHtRfXVUYD1SVDdyNWMhLUsxYW8kenk1I2pO
NU48TERaZDM3IVR9ZmtJLWpuMWRIRV4qc3JSZTdVJlZPIQp6U01UVFpHVD95cERnSy1rS0VzVkt6
TWtzcWZxdHdIdmMlK2IoO3hGY1cjQ3owVUw0aiR3aHgqM2N3Y2Q5empvJikKeiNudHhPPkY/Q3gk
U0NDQm5uTnp2Zz1iQ1R3blR3RyMtVVkzbyE9KGAkdGczIXlmPnZ2MCpoMUg0MEJ5VSZyVylxCnpO
VWMpellVPmUkO1kmSzU7MklTbDcxWEAqWSN8UDA4VlhZIStCWmVNT3txbGZNcWhFdFB4bSVETk94
RzlPUSpNVAp6N2Y3U09PX14rdXJsVXIjJnNQQENaTHp+KypWPngzcWs8Xm55MlZtTmR5T3NxeDww
anU+JTt3NSZxbX0jekVPbT4KelE4MTVZWl9SQmUhKGtXZyZUaVRyYCY+VXxMXzZvd25ZOyRudTU3
PXEqT3ZTfUJHZHVlRnIrd0hXdTRzXy1UOXNwCnp7PXN5VmA+KmNfP0coU2U9YnQ0e2tYYSNOdWU4
X2JPdURedWlRNXkyVGlfV1Z4b2pgU29xYT56OTBtM30+YnlDXgp6eCM+eT5rRlJ3QXpyQ3t+eUl5
UGxPRm42XiZlPVhSKGYtfU4yPzVLeFdsam1UenY2YSUjcjs8dFV+U3NsYCpsQ2YKem4hfHB6SX0t
O24+LS16c2ZBYn5vb2tJSnlJfD1LOz19K2JScnpvXnJjOzJydWN5KVF8Pk1FSDMtQ0ZUXlM4MiU4
Cnpab29CMzVMMzJ2S0V5ODZTTSNncDkyVWJsWWBTbTNeXmVfZjl8IUhPUk5wX2woYiYpcXxFS28m
JjdYTyVueWdJOAp6dThtJkRxSGJzLSF1bk18dSkxQDktNjgrVGZsUCl5NTdjS0k9IVp8PXlBcSMl
RmBWTDF1ZH1YUWE7YmYlcFNxNkYKenIrKEB+S2JFVSNjdDEtVF89bV9QRTlKPWxfVlpnQXtJKERM
d2gjUWE1QiM8ZHtJKERMd2gjUWE1QiM8ZHtRdDJKCnp7RHokdDJOZFloRHh1VVkha2cmQyVRcCtg
ajYrSzNVYHowb3d2aGBqLWowclVfel40c3RJJTgqQSpncyErSSg2NQp6dlhzSFh5KTgjYDtVJj1K
TDNnKHtJRkVvYWAoK0QmJkFzWE5hP31ASWBPQHtsSFVKd3U8TGlZTktLUnQkOUpHb2oKenQpfHQ1
QmlPe0JMbEVQT0QpaChtUyZ8d3NESFhuY2h8RytGamVEe3h6KGtHX3pudCExc29RYDcqP2ZydHNQ
UXA/CnpQaU5rT3JoWSFaSl9MQUBsVkM7aWsjODxYNnZ8I2J1eV8+Iyg2RlB4WWlHZCVQem1sQFRC
anF9K14zVn1JZntFMAp6Z3F2PGhSKDgqOVlwWWBFYzBCNkdTOWJFZk5uVFZAemhANmNKPkheRjV9
SEpIcVcqR2hwMVNEYWBkKDIrcW5+VXEKem1ZcXwzQGk1IT4rZEs7VnBeaGNMaX1CbCNeIWd6V1cx
XjUteCswelA/TktRQT07PF8rPEZgVypiQEI4NXBxK01qCno3TFJCMCsrS2A+Tz1DZ00+M0NkTl9x
QEpKV3k/bkF6X35zKWxAWHFnSCp6KWBzemBnPD0kfndQLThuUEZJa2N2Ygp6X21fTT9DZmJqKGBC
NnFjT1h3ZGJBTnh4XzcwNnw9PFI5ZzhJX0Jgb0skZjxeZHBGSUI5THFuK1FGd0JkYFhVPyEKemBg
OUdYeD4heEVWYnxweHNOMkRNMWdoeFgpYmpNQmo2aC0rPVlmSEJNSD1vUCs5ek1LND4jM21iPGcr
WEZnVWtLCnpneGhXMDwmUHUpK2Y0VEhvVlpjTjwwOVVhSylSODReKiZ0T1J0PHVkeTJzdH5RVipB
KTh8ZUcrOTU0SEg0ZSpKJQp6UX1nUjh1MzlMcVleYHE3KXk0RU16Xz5jYj1XOShGVk1paExLKS0p
T0p9SDB0O0V3LXlPQWgrUypHJT4kZ1Q8MWQKekE0eCp4ITNYLTJSWX02cSRuYVleRXxxJCQ5dkFw
WE5CKlQ5bXhwJD1BcEolXmIlV2V+dFhyQCZRTHI5eFA0KzRLCnomLVF0dmZHWXVyXmhPZl5pXlJ7
KihgUCkwRVJURTApeFNweTZ7a24kP3V7PU5LaihESXZYeThnU1krUEUyWDZ4dQp6b31aYDM+MW9R
LU1TZDY7QnpSbUdHais2cF9YOG59QFdYP29XeENXNi1ObzYlYUpAKVF5c1gmYC14MVRlcHotQj4K
eiF+Pl9pekRtQnRfcSUlOCZDdzlhSjBjQlhpYUphNFIyKCpZWkBvYURXT08tQjBkKiRGIXpIX3Zq
NUdEVGJodXdFCno3ekw8MGxJJUBYam9xMGZHR2tVdkIzKnBsY2lKQiRwQzlLdDU9ZkRHKTJOLVBO
O0RqSW5oOyowYGZOU0spbERZegp6RlBGRk1BIzA/XjJSZjVDaFFfWCFfaG5MeS1XfmVVQTk4RTUw
SHgzcmt2KjQmfEJ8T2gjNzEoezRfUGQ0Y2s0LVgKenJiMmtvR3RDKEBiYSNIN01TRktgVz9mI3tv
KShyUHBSKjhvYUsrJGV6Ml92Zlk+VzVmTyVKbDVqRih5MlBEPDxxCnpFKGN3OT4jPTl0YEVFNn1k
LWMzPyFBUjBtYz94RDV5XjJxTCE2fFhsVVRZZm5oZG8kajVAJGhEbStyWn1DKnwwLQp6VnlWK0km
ZTQ+PUtwJGBMS148U295MXp4SWN8MGpEWStHUiZCKGdXbz0qPUE1JV5GTlcqcTVTWXhkaWMwPFVB
bE0KelFAQmEyPl9fWCF6T1hzI08qejZ3OCRJczxRPUROU05KTSs7dT4yVmNWa0dTRmRTWDwxWWFe
QDA+elE1LSMlOUUlCnoraFNjKXkzVlBvJVVOUVdGP35+PnUxYXF+YSFOQVQ+fFFRdWpBaWxuZGho
SkVhUDN+Ujh6dCpWWGRoPTNTbmB0Qgp6ey1DYCEyZ2l1aHd1eHhsMSVpeUImUCUyMkl5dDdmOFBP
emx0QT5Aczt+T2U+KjAkMjt3Q0NgOGU+b1p7QG8lMC0Kei1nPkR3KH5JSmRjUVhzTmZITXFxNWxa
JntjRl9BayhnJFg+JWYjdGcxR3lUOHdAPjxWJk4jazZYYGYxdjtnWVkqCnpxWT5+PDJRWlBpcHVg
aUl4MXsldyQ0WChUJENlc1NQaHNhQ2pEPFoxYDt9fUQtc3YzNmIxVjNvRU0+VXtaWTt8Iwp6MD49
XzJMd349a29KUComWkpJSDA5VXMrd0JBU0ZTSjQxflNxMms7Zlo3PmVFdVR5bGhAPEg5QylieWFl
N2JHRmEKelBgXks1VVlhKnA2e0NkaGcwc2kjbGUpWUdMU0ZfWjh0fXZHRDU+N1M7JW9VbjY+c3Z1
LWBMZz50SEArY0RhckVMCnp1SWhAUz0kPU5mQDxMRGp1K0V5dHBPQ2xyRU1kWkAlTFhNPmI0UVdN
aylNVGw+bFQtbUYmU3xrQnQmXiNrNCtaNgp6SW1zKUAxezZKKmArQ1BAcFYwKjNPfDg7KUgje2sm
XmFzdTZTd0ghTWN8enxPOyg4dF8rLSQ0NCFPZ34lPHpYdz0KemstSVEmUWJQRH5eJkh0ejdASiYo
e2thOzlgRXVgYkdRJV9YXjVRRElkJWlUfHNveFJsRCN9KDNeOSZZYlFPQSooCnpabSNDM0k0PWpU
Mnc5UG88VypwOGR+c3YtdGV5ci14XjZ8TkdHWl53QEI0SG9rVmBPallTYk5Re0J9UnAkS3NlKwp6
JSVJOENMfDljbi1RVkxLTEYwbG9afDRHZzJZMnNlMnZfO04qQkZRSFY+YGFOX0ZqMVIwPj5fVE1E
WGdac34xVHcKek9eLUNPYjhianZHZ3xNOUhAK1hQeDkhKVlOc1YoP29Ha1FndVd0P01QbG8qcGow
MGZ2Vz03SElFb2poJV9qOHpZCnpyZFpjekVGMF9ubHZhXnxqXlUkU2smUG5uY2w+Xk1EPz1iZWAj
Q3NYPT5HQXhTUGBTS0o/REA7Z18pcz81M2YtaAp6Nn1AJldMZ3NtP0Z3aEFOPTVBZDVBaVBUV05j
WU8/ek1SNWh0ck1VMUk2PXxHUTlvYElUUlRmezZnUHE1VytURGgKeiRoa15SSEZaTF94N15rVEJ7
Wns9QkY4cEh0MUMoMFooVy1AQG05UDx3SDZ+T2l8S0o/cSZlPnBEWGFedWNKcWh5CnpJT256R1Y+
ZCUjI1dyQmp5U2FAK3lAcHx7OGJeUGMhV29lSzh2LWhobSFFY1FjVHJ3dzl+aD4yZlI9KSRxJF9M
VQp6Q1lgVm8zaXxlK0NDJmB+UXMyQElrOEpYRVc2OUxnYS1WS3JwdGdsME1SZT41UTU2IV4rcnlt
JWd1OFA1K20jaWMKelpqOzUmK3d+IWhNfTN2a2E0QyN5TDhDQDVwZmZWJXhxRHhxPEwyRGJVMkIm
RXEwaWIqTjlaSWVILTFgQShYRCF6CnpuaVQ5diRrTlUySnE5X3BncnwtWCF2MG0xRFVWRiRITjso
eV52TUZUaUpEaj9DLUVyV0Z6b0oqJkZ9TWhycTF0QAp6dUZPanZVNkBVI0psUFchd0JLRXIkeGw+
KDFkTlA2M0k4VCspY0UzN09lWlA1PSZHNzArU1dLUFN9fHduO243Y34KemhRRmtFQz8wcWdxbDkm
IyNLcFZmaHxaTkVPVShuTlZ4cT54N2haZz9QMFlQfitEV2E2RCU7KERpTVBOeHpoSSUtCnoqSi0p
WEZrJiRoSW49THhYWUk+cUthMEkjYVBUdmopZkNedWJ4OFlOQCptOTZZS0VTQU1XaikoKVd7QFdq
bkl+cwp6QG8ySHJKPDVmOHNmTFJgYnR2ZnNhcE9ENnEtRUx+bmpSfS09UTN5e3R9NjkzdWhPZEUm
eF5UXkImPjkmWEo9O3AKeiFSRzgxPnU7RlMzWSM/PmBFMj8wT0dFZDgrNndEVEh6JVozS24yUWxT
UD47TkMxaCo+PChiS3ZoTTh8REAoJWFJCnpzQnpjUWF9N2Rfdz1BXj1ZQUhQZ3lIYzs3cVkwR1om
O15EXk1oZnkpUmdza004TVZfelljbkVLYTsoPXJrYCpebQp6UDlgPTN4bjxLbShlOFJCOClQT1V4
d3tnWGM1N0BvRz5JVlAzYSU4fWlNKFVNXzA7SEdAaWdeYVJfQyYrciFDNzkKeiV3dG5UUDRqTWpQ
NnhxUXEqeFZOd3tPXiooPWc9Yjh6KGxKaWgqcmolKXt9Q04xM1JOX29WUHphJWBJN1l7dExUCnpt
cVNfdiFtQ3o8V0FUMHpFezMkRmF2b1hSSlU9NDRfb1NBdXF0fmxfJilaeFc5WiU1eStiVTFZZFhf
S0VFZkVVQAp6b2JnTGpVV0NJTW9SRCk/JUpCQjUrb2U5bG9ZaEFnYk1WLVJWMlg3OzQxT0l9PFgr
IXVUcS0mWkNZaWxZJWskZkIKelNsa0U+KEA7VmlGUG1tZXNWMSpeT2ZeQzE5YEJiJEpnZUg+ZypO
VXJsNHJXQnliZHE/NSRiWG0kY1o8WDdEdlJzCnpiWEBGPkpvWiE7MzNRRHJrS2xNIXFlcCR4Kypm
U2I0TXRMREhrX2BBPWkoVUkpRlMyS3g5Vjd5ZFhrVDxrQlpIbgp6IyVmSDszWkQtVl9ZamRiSkV3
fTRBS1RHdyMteHUkaTN8cGoxWHE7bmp6YH5sTz5JSUUlc3gjUi1rWVN+aDMyaD4KemIoNV5rITU+
dTA5VGZ8a0Q/KUMta0lBSVpeOyhoQGEqbX5veyVvOUUlKnpSPXNnZ31jcWlmZEoxJVk7UC1iOV5w
CnphWjJ8fVF0NkIqRGFqMG5QLUU0KUEydV9AUkVvWkktT3o8UHRDcz97ekVBaiMmZVRwVmNaRlFw
e1kwU31NPXY4bQp6PklGWD44cHZLUTlJPiFiNDl1Rm51R3VGaU9rOEB7dFpGRTUmX15aVU4tKGN9
U1Q1NT5hRjJzRzk8d0pzek43Vn0KelFPcjRgI3RVTTR2aGJpfHRWbz5LUDcydCpQKHlmb3VoKCh6
PjElPzVudHI0JUhAX2lMT0syIXtIMG1Wfl8yJjZ6CnpgSkJtKk1yWUY0MyVNeykoPSpTfnZeemti
QW9sdmBXUng2YytWTTRPPnZQJHZeM3RldFRHSkVfPm9lLUomem5pTgp6Vm5ANzZIUUd1OWNmemk7
YG8oZzAtTlQrPGpFeytPJVp1NkZZeDcqWGpaQEFXcWZ1TFM4REFSN0F4Mng4O2JQVGgKem57MTlH
R25oOyQrdmswKGhtayY4az5NVUZnZ0p+WE44WC0jVHdnU29jQ1h5IWU5dk91QVlhOVdLVn5Hcy15
Q35sCnokTnsocj96fHEoaEZ8Zjh5SkBHUUVzanttaUN7KlBlMXVifmFMczhgbTYwN09RUzdQN2VV
PypubyNFQ3lJfkFQNwp6cCR0PjlkP2BjYnNlKmFuTiotTFlyUEpvPEklIypSczNZQGsxKGtgLVdG
VFNuZEktV2F5cj15WT53QSRPXzFTb1AKeklnT195Kk54PU9heUJGIVh1QDswIz9AdWIpRk9HUCY2
SXNFVl40fih3dXdfNWZ5UUNBOFAjTUh4NVI1aChwN0Y/Cno8JmN8cVB6aT1qQUh5KDF7SSZeMWlW
T0JaRzRFJEdMLVU+cSl6ZyEtQEJUWE5LKSlHLT9PbUllZGJxQzFuNFopKwp6My07I0olWDtETDwq
fGhNbj5aYkc+flRoaFRnJkg8c05gWS0zQygwcVhIJUdHYEAtND4jeWV5JG9vcnNYbCojPUIKekAy
XzFnQFpJYDI1aU8re2h8Xyo/WkJEaW1aVUZHNGRYSSZ0NSEkO0tXdUJ2X2dgVSM0R31ePkBkfVh+
RiNGa3N2CnpyZTBxOEwrPmxgY3BKdW12O3RhYTFkcHdhdFNXazRZZn4+bVhOUn5iKiRMRnp2X1Ij
ZG48dil1cU5odmd3SnxMQwp6Pj5OfUFJIytPTj1+SkM7IyQjRjgpbkF1UkJrN25sR3B+QjxZbj5p
bkBBaiRNK2IlZDM1Nil+YyskIVhtdSZQYnYKeit8JTdJQzc4MlBSMiMtb0x6eVc3b3QxQ0hgPD5U
Ui1TNjBFbjhmRjlvbmhGfHMlYTIlRzgxQ3ZNTW96engrfV9gCnolaGZrRjdiTV9KJmAmeUokXkNH
e2FUcD9SeG4hU0pIJmJkWXNlSVlnTn1YdyQrT1RLRyNMeno2eVN7I30lMlBacQp6dncyMUhrfllq
dmtWVG9VQHF2NEBjNnFYM2JzYSQ7O3gjMHVWb0FYSG1EcktpVzRWblVmSHA5d3tUWXBvPXNAcFQK
ekZwMEczZFROP2NQVTVRX3k7PEFvTURGKG9yNi10azIhY1ROeiRtNWFZKjd3dD59MFdebjVsVSNn
dGFeKyRtUUk+CnpmVy1CPEkpam9tSE19Syt2OUdLe0FQWlA9eFcxflVCMndDTzZQZVhHI0FhQ2V5
UHVWPHBJbl9PP19RYk1kMWE5cgp6K2JnfTdVZjtjJEV3S2xAUHhwSCo4bXY1MmZFKyFrIXNoWXkl
cjIpRUJNbD5pKlBaIWY2NWskTiN8I3Nwek4wa1gKek1IUWgtVy1xdXJQUFhUMm93VHpsJHppUmMm
ZjVodURzaSY+RHFuOzg7P0NUbTQ4ejV9SWl7YEt0PFA7Q242bm8pCnppXiNQcGRlVWQrdnVxZnZx
TkVSKEBreCVBOSE8cntpPWlDcWZ9SklLJU1HcXJ0QlgpeW09byNlZ2tDbTVoUk1OdAp6QWdDVjAx
KCYtPzJ6ZShMcGJiY3BRT3U+JnJAUktzIX4paXRieUIyNEpuWmtaNjdpPyltflh2WlFJV3BiI0pD
WjIKeiZVTjdDPWl9K1lwaUtEWUUrczt0NnM7bkBqejRqeDtQSW9gRl5xYzwyMi02dDd3TWJKKmQy
RWhKKW4+OWRlTVlBCnphSWJTUW87Yzkmb19iciQ/WF94KWohRH1KPn45NkZXM3NPOUNWdDFKWXhQ
MzdyUk4zaSVzcSpSU3F9eiNKaTdLRwp6VWUoVGo0N2NxO0tZXiFFMkpSTmglTlhWdHZANlopSWRa
Yj1ZOyE4JjklWn1wKTlOV25UKVNfamckMmJyc25BPTIKeitSPzYzez9JTzVTPkU1RTlneiZKallY
S3paZlYoZnJRZXZgQjgpO3FvdkQrXzE5RGRMZGNKbkpPP0RUN0xgYmY1Cno8dV43O2ZrI2VtN1A/
Smh1ZXlwfFJsPXNfM2B8X0hyRnxCKWIzT09WJVo+M2FkKVhMMGlRVTY7KzFRaE55MU5UOAp6JW9O
JXdlc1B4YitMdGlvZj52ODVaYUUtJmZOX211T0BZQj4yWlRWZnRRTENnXlpKfmNgI1BWRnh+OUZI
OypHZVcKemRLRz16PEAoSipOUDYlaSh7PkRkSG1pYDtoYjZ+dk1ld1FfOy11Wj1QVj84XjQ1aUIm
cVZXcm52dGZKYitwe0BtCnpxdUxBJXBqJXVlLSVhUCpjR1o7OVNjfl5VOXQtVGxIMEFVQDg1am1r
N2pJcGltQWEkWWRrMHBoJC1LdkkmZmgxcwp6OzloJjZeJjVXUXNwbEspKk9wbzB0RkImIUJEdGxu
THNGZUZRazBEbkBDRDM3d3ApQnQ0aWxIeGloWk5mJXw+O0MKekRNUmpwdFlVVHt3dXk0SkwoTUNQ
WThtO1EmZUBxLUdVMncoWXIodE44WFRTbiU1bG5RY35LKlhkK2ZRXjM/Z2lnCno+Mzd0JFZSVlo/
WE9xKGQlcktjcXdyS29kVUhVcS1TZ3w8KWhNZn59VSN+fn0yKXIlb1RuPFVSOTxBcikkVUtqdgp6
b3NwXytWYnNMPipYTTtgI1heWSh3WE8zfVUwfGBGMG9nWiQtZyl7ZXM3JEE+NHhXQDxGP3IzUmBJ
VnAyS3NxfHMKeiVxRkJpbFNXfGBnblNzWXM+IUx3X2kmcGpUTlB7dGdzVHN1TlozNXM/aGtAd1Vt
UDkqKHNZMj9aNz9YWEQ3O3R3CnolLUZHTSRkTk4xRVA9VDs5bUgoJEVUQD5EM0c/bGV1fm9SRmI9
YjVFUEZzP3JofnM1ODs8RyUyIV5RIzlrQXhEfAp6Yz5xcSRJKHh6bzl3Pjs7aSZGTEdiYE52eig4
UD04PEJrOWJLaE1fJlJ5XzJ3P1hLbD9WVFU1LU5fJjFMdTQrXnkKemg0KHE0b0FUcXh1aGMkTVFq
IzFPPWBjPE4tLThpMElPaXx9eyV1N0hXLXY/WkEoVndJWkRWYEthRCo3MFI2Jl5zCnoqIXBQZ1h5
fUVkOzx+MkZxRTcrUzZ5YHFDTVUtPFh1LWYwdyhCNnF+PmJDYWl6R2s2YDQza0IkPGFGa2U/WC0/
cgp6Sz5HSVZ6WVdRTmkkUTtIKEEoUHx0K3IwTDwpc1J6VF5seUtlPzJKNWVFV3srcmsjVExiTFpH
V0d8bi1ZTUs9cGYKemxmajFtKiV5eDQ1KHstK0Mmb2hobjx7R09KWFgqcXN8fUsqR2U4biF3Nnp3
ZXUjaDlSLTBQSGMlbl94fTtUezEhCnpqbWhsME05Klh1eDEhYCZDQDZCfGxoI1dOS05ENHI4OG5n
Vil0JWliWW9XJHJwY3AzfjlEQ2NnYClqPDI9M2BLYwp6PWdwb1hPYHg3XkM2NXpIcXVZfnxHOSpC
TmNJQjY/b3ZBbF9wR14hYi02YEMkR3g9dCVoYkI+P0dHfmZVMnNUJlgKelctJXMrUylRQ0xtRExO
RiEkKHRXcmg0Y0JVdU4xNDM5KDFRQWglWGxVJlMxJjM9JVU4X3cycFhrVTJgeComNHRNCnpWKlUy
Rllta1QyMHlnQThTQTkkM01WT3o7ZnhFRCRzbDJRQ2c+VSF4U25tQnJpdzZCc2R6QEFiVy12K1Mz
Yj9mMAp6SUpvdzEwVnZTZXoySnxVVT59R1JkSjZeUC1GblklOFdIPXJiY3J7ZTRgI2BmREBOV1lK
aCl1X15yPmVKNkJtVkgKejxPSXFteEJeSE94bEdRekwrfHNjdTgmV3VSYFIyfTVyPWdSX3Jrbygh
X3hSX2RnTjNkS3FseCZwPW55KWYqOTgkCnoqezlsVzQ9PXRaclYybmkod2BWcGN7WmMyJlk7JT5A
eHRMY0JWJVAhTzhjcyg9fGwobEdWcXNZPVdqTiNHcE9iNwp6WDNkYSRTaj5yXzQ+fVE5KSZ9SXY4
Pz5MdVNaWGx7WStNazZePU5HeUteTXltV1QobkU1M2tSOGpwMzlXYTFNQnYKejJ7dTJqX25mTDx6
V1JEUylfUGImYEZmPU1pJSRtTGU4YkI/aT5QYl9xZkhzZFl1d15SKWI5JDspYUp3YCMzVkoyCnpj
Wm5ePSlicT5wWGptRWxHVWtMX0UramphXjRwYDFaPFU+YTU7P3htVzg9Qz5LT0Q1fHNyMn5aKDlV
e1dyPmkqaAp6eSpifEpgfS1ieW5IZVlqUlROcHc7VFZ9dDN6Xjl5e2NfbEBseGpgPT4xcD9yN0Yk
XmI8Pk1RLT1LSG07cnY3T2IKenVoZ3xwQElZNSl5WWlJfT90elBXNyRmajhHRnxqczZfPVV+QSo1
UGVIeUZBPHcwZHlBO1poZ3tpP3p4SVFeXz5DCnpQelllbHRVWWEoYDdXQF9kOTd9UkNHMVhJQ0lt
UEBIQHJhTXNuX0l7PTV+fFJ5UilhJEhudE1PbW4wVWsyYkFSYAp6YlZxYitaM0I1WD9vU3ZVPU09
ZFRYOXNiYTczSjdOWjI+WmEtNUZMWCZoYlh7Xm0pakp5cGtmRVcpMElsTTt5aDEKemUjXl53OGd7
SDZDPmRWQDgmZz9WZHxXbj44JHcmWmNjclVheDB7X2VGU05aKXlORnorZ2ZAMVJtK28pamZNWFUk
CnpnUUpTbGo2O18xakwlKTIjbkFuMEA1RUgqPmomKGpqbEhrNHFJbTxQYCsobkc5cXpUaHtocENk
cWlCRVVjNFRrSwp6YjA1YShTWHh2eD1nJGhAMm55Tn1wZkY3bmk8K2x3R0tvP345eWs0VlZfNUVx
ciZxRXNQVUFiZEMrSSptQkdjUHgKem9sWlE1dj1MXkdTc1d6cztMaCkmRGVUWj5GNmVENUV7VEMt
R1h2Zz5ffXBmQ2E9WGd7PSU3eWpoR3U5bVgxN1JaCnorY2wrO0NMMUNvbC0xXkdsbWwzJHtaeVhr
VFdJQFo+TjgrVmk3QCghP0YlJmJVbkBPRXVKSyY8I2dOUVJoPFVycAp6b3N4TVZsWTJkclBtJUg7
JCkmdHJKSi1EN0cjY0Mze1koXkJlPU5tWUUjWUFObz1LOEJ5NU1yIVVJZTMrd1EqNEwKemdFciZK
PV8rV19hVytJKXc4XjNeQUJTczRsKzU4ITkxTEU2YnkpI1RqfihBJGNGRTkjU2VxMT9rbnlLcVl0
fHp5CnpoVVBpaCtkR0I2ZnRLWTlETk48OGZsQTtgezFDPExKSHc2REkyc3F+JkxBaGI0bHAwPDQ7
UmA/Z0c/OFh0Nl4hUgp6RVNIWjk4aktxYHR6eE1LUnVRdkFjbzVjWjs5c2hiO3I4cCpAZCU9b1NL
SklJIzZQYSowNXp9ZGt1cntsPX4+b3cKelIqTC1ebz5mODB1UVJ1d1V7dkZJYkNJUjhDeiV8djE3
OUUkU2paPjBtWXpYVzhQYTdsaDlsXzdkPG5xZmkleD8qCno0K0JSIVN8Kz5oKHREM04pQFAkfkdL
UFUwR0RIVGFfM040bF9nWjdgUzlhd1lgSjY9UTJ9fGJkeV9wfD1reFdqfQp6dD9XRXlae3hsVyVV
THF9QE5vcEpWQzlnNmFtalE9Nlo5PElAbGp6JDtkd353Y3lrXk1fe19AU1pKczspezZkUlYKensk
U3RXKXIhaWg3M0gkZnhvZSRoK0NofFQybXlFJjF7OGozO0YlWGktRnl8Z0g1bGxsOU9DcTFwQyNF
a2I5VjtBCnpuZnh0VnI4OFh4MUBVXlNJIW5mXnV7P3RMbylBP3B4OEBCMVRBI1JqZD5mQTAkK0Uw
YXBvQHR7c3FKe2NvQ2QlcAp6SWNzKmdHVTtDVVFLJHZIZGZNM1RyMENvT0lBc3RNQk5JYSpZPDQz
ekJFa2Q7ZkY0VENUeD9MYmIoKmk9RzwjckQKemxeemstNk1UZ2JNUHFNJG4lcEBOdHpHbW9vNk1f
M2Q2fChCOVooYi0xK0JLYUJxcmNTeXo9X2M7S2pKPGQpOD5SCno8UW07PHVkdlhJKmMkPyg3eEQx
YVFLfEN3QElza0ZWdiRpKmhCNmdEYjNNY3cjTWVAVURpbWAlQzd9RExeMUdKTAp6PCllYEgzLXwo
JWR6aTV6ZVk9eHl1b2xZbyFyVTc2VTAjbXNAcmZAXzB9YTZtajN1IyQtYU5ucVhxY2EwOUg+K0cK
elNxPylrUkVjOTg5eEd1d1RwfCpBPjx3VE87Q1h2SG8kOTh9aUlTKzkkMz5kSVBaWUA8Rj85e0Nq
NVpZNEFnQTEhCno4QmJCdl8/bE92QWwpMG9aZGkmKjZDeUl0XyF9PktVM21KR1hrUDFGWCV8cFF5
JEIkfT9MZjJSMyRCVS1KRVpDdwp6cGJNcyFxeHs3c2VhK2hUPXtCNiZycClobHhYY1dsJiEjaHNX
UE1Felh6PzxSWXM9eyhoVTE3RClgcHktdDEmTHQKemc5TytgeW49aHhsYyYoNU9CVjNrPjN6VkNu
aiZxdDx8YWdKQm96ZG1WV2okekEjYD1YO2EwbzctU1VUVnMzSG9pCnokaWNBXlZxb2peRyNmI0st
fTBIQE97K0lrJShSTTBLZEAoU0QzN0RtSSlRUW5BUHpJMVNHVUNQcnUxPyhSfiQweAp6eEg3QlM+
Yk01aDwySiVqO0QkYyVIO2Z2el51XnZeXmNxVVFOWFYqfmpBVVhZSWRyLVpkN3RROz1pZTxMYnxg
WEkKekdVbFViMTBPUkVkQTImMj9RKFB7JmM9fjk3PHt4NVpobShVISZUTk9DJUFEdHskYHhIK212
Q1IpYzQwWXhTYmslCnpjYHpBKjJKZ05rMG1JbDx3b0ltaCtsTkU7eWROZ0w+QVVNVCN4I3QpT1oh
JmQ3bT1BWk8zWXY1KzYmYEpXNCN4NQp6UHpHZ2lVVF5UMGFiUn4/SDhEIVB3ZDRqVV47eFJEWCtv
VjdATG5GV0MxJG5kOGh0Y3szbl5uR0V1JTN4d0g9I1cKekZWOEp+RnomX0NoPmE5emEtQDNpUiNY
YTJyaWxqYTglM150aWhGckIyRikraE8qYVgmS3RoNCFuYUMoZEtaNG9uCnpIY1orIVNwQSs2N0hT
M08zfHpTQERUNWhfdVJnZmBsdklfZGM5VXw7dkZpYlNreCVLR0pnWFFqPFZ5OCR0WGBfQwp6Kz1G
Y3l1MXc5V0kye1YxLXlNZigzeUA2MTM4X0ZgPlYwXnxtTD5MMk5rS3h1ZE9eeyF4d0dKMVIoMClY
R2MtdnwKej9Jb2YlT35WV3gmNkopQWFGflB1Q3QzeG4+K0d1cEhQekAqVUtDeTxzN3IzSTgtKCs1
MEpIcU5NcnE4Qjh5UTdJCnpAPmx8VnUlTWFAUE9VSlglK3RiRjFvJkgjUWM5P1RMMVJ4bTZWdjI2
d25jUHo5Z25tM1ZGIWczLTxOZVd2V1BjOQp6P0U7OWFtYUBMTldzUUc4aTFtYHM7TFlzOzAlYyFh
Ki11Nko4Vm1JaSU7eEolck12VTZ1TCFxMmpFbzw4Zm4wR08Kei1WKjtkQCNIUHQhSUEpPlBHJC0t
bHpMWTNWWntMQFpOUHQkTkBuKFE2bClGaEg8NEBRamQ7YyRgPkpFTUxqbUQ8CnpkLWE9M1hhLVhj
VCMhdUxGY051Q3dxXm03OzdZfSZWTCNaUlVkRCQ8WHViZzYyd287TFoxO0NvRWhXOF4+KHBXcAp6
M3lKMXNOP3luUGxwITskO3Zwa2dpQEZrI1dgeWdlVyEkcSNfUX4kdFEmdFBGVE5tYjQxN1NxWkhX
O0peZ0xNfEwKenQ5UmctPiNiJFExV242JT9BPEZST0dvUGIjNCk/IzkwNjBnX2N8STR6I2lOKjJo
S0poaF5PXkw8TmFWfUZ8fkpaCnp5bE1gekxwQGtDIz5LUUpzUC1sPyVIR0tKIXp6UTxsVnMmV3h7
ZW5vSVkoTXhAWUljdGo3LUdHKFJWIU07dTkyKAp6JiR7Q2xjWE1zcG1yOGN9JT0rN0xTRVViayNv
X0lQS3VSI3hUUHZNcyVYMUBsMndYVz89XlV0WlpoLUNNeW01N1kKei0pIT51JmlCMkxJMU5BYGJf
ZDAkQUY3QzMxM05EVFAtakF3OWRnbDsjT3pwS3N9cm8qOXZlenA1d0A2bzgzb0hoCnpTWDgrdTdp
TX5FJWY4eFYqMCRae2k0YzdII3Q7VTdyWiQjYkIpWjltPEZwJldLOElOP0tXKTBFIUphaT57TGxy
agp6VUs3VjM0Tz18KHlDe2tZajFaTE8lSEFhYmQpV1kyb0x1bWZ1VHpSMl9OJW1udz88ZWlnZSZU
YmIpX3RuPzM+cGYKei0pYFBVbzEpKExjc1Z9Tk9Le31lNipiLXlqRFBAX2g9OCtodTxFQnI9YT9k
TFFXI1N5Wmp2dCUpLTM/WWRkay1ACnolVjU/OWcjViFlI3ZfYUIheClLTXFQKV5aUmooNWcje3dv
REZQZCQ1UGpgQiRWS3dgeWpHS1U1OyR8MFRhcmttfgp6fEU3XiVGNFFWY0F0P2MpaHI4Vkh7PlhI
T20lVmJMKVBvYn5OVHtmRXpMTkk5TmVYaTI/I35xX1l+ez49XkNTak8KejF4eDJtS09Pez1mVnFM
akJyd2AxPHFHSkJ7YE4jPHgqbzNhaDk1UTA1RENkM21uQHctdDNiLT1LeHFBI2VmJVd3Cno7ZmxW
fVIqS30hPnleJXtPRjR5RGBAQ3UqaWh8Pj5yVWwxJiY8OWZKUlElQFhjPWpPOXpJV3djNTB5N25s
X3QtRAp6QEZ0STc8ZXZBTFg/WDRpTTlrK255bnVUTSNLI3goK2srXylQblklK1QkQ3N0bW5HPDM2
Jmt8eTwyI0ckLT9OSzcKemlPUVFRMmZxIXxEJjVXJkRiS3Y9T3lvdSVYSlImWi1aITR9JSljPyt3
SkNuRE0hSWQ4ZiZmTj8xJlhuQVQ9ISlsCno7PkYhV0BQTDUmSyZwKXBLNGtoP3JsNVFKIUw0JnMh
I0cxVERrZ3dNNzM/a3pIP3JIbnVkQ3ZQalgwcSpJKG14QQp6T1Q2Y148Yn1oenE7KF5HUlUqYFUw
VWtWeSFQcFNlKCFYP2AmfkxJOGBHSFo0RioqYk16eHFCWXhqUT5FKWEjJjUKensldHo7SlFDP1Jf
KjYzZGMpclJCdVRkIzVWOFF4VnVVPjBZVTBqVSZSVCFrOXRATX1QdHRFQ08wYnU5S3grUjxUCnp5
Z3U+NGVPZl8rYzk7NiRiUyR9diMyU0pOOUheRkt4UXRKQkpfek9PXm9ZQXVATlEtRFVhfEtld2V1
aShHdHMlewp6PyRqSEgpNWpwZk5JbWVuejkxPV5UUT5gcnVSeWolXzRoWEYyYUFGYyl8IWxkZXg+
UFJyOGchTThVSn1iSW0lbXsKejEmJUM8QyNufTBfYlQjWCN5Z0xhOEVZXmp7R0wxfj17WVdWVURm
b3JuJW9ZNFU9SkQ/XyRjejYqbEA1OERqPW1lCnpWenxkflRmYGM7UUw1cEJSfXVKSkhRO0JKampl
UmRfPnY0V0tRQnZ1bnNXNEB1JnB9X3FMeEt3c3V2UjMtVG1mVAp6cnxyJj4pWH0makAwMmQ0Pmpw
ZjtoUGZTUnNWfXQqN0lNbkc8b2N4V2s0QGAmKVdlaXhSYjUtPjIlJnhxX0Z4YWwKei1BZ21EaTck
akFMbUl7bFVMSnNPNVg5bDdNc2UkeHp4LX17Z2E0MkFIKD50WCt+NDNzNEYlNWMqWnYwYktoNkZJ
CnpfNDU3eDJBQCNrLWB3OXxUN0drWGdaSmBoP3tCYSFlYDxlJj11aG8kNWRHJTwySCtvcjxOTiYk
Z3A9MkJzKHI0Jgp6Zkt6Ymo7XjAoMCF8bnpWYEwod0o+fil8QVY4aklST19RYG0+cGEqfjs0MXxC
PVJGTlImajVRcXp+UkUpMjZ1QWgKenxFJDw+O0ZvbmokN0Z4bkc4Vl8pYFl6XnJMPSorTUBMJTxQ
I2QwNE42JlVrQnJhdio/JEluJjM9PXhDRlZJUEdXCnoobSV5P2UrNkVAMDdIVThwWnVAJUd5fFhn
cn1BST9iamtpek8hJWohOEYzKjBAK2xBaGRIIThFem1mbGp7Tj1tKwp6ckVzQUJVemNBSDJWKGJz
NzR5eG5rcEtQanQmc24jX0o3KDFPQylybHBZOHtvYTdiSWZOPCN9RXtyJllAO29LbEIKentac3lI
NH43bC1NNEpFbntIckZ5KjxXQShkR3JkfXt9cVYtXipxM2F7X3lYQXgqelBpYWxmQ3hafH5tUyYl
ZkVlCnpgc2V4fjQmWmF3OHRWREZBSClFQih4MkBrZXMySGdlaHU5Mz1rJDtIenBuMnE0VFhMIXBN
JXRaeW5aZzxlWGErMgp6e2hhPT57STlTNyRnQkJJVVNJaiYkP00xVHBTbTZAYD5zQUhCM2VIMV5t
WEdhTSpuTUhmYiktVzZPUlNycUJxXzcKej84b3NfakNBIzk/IyUmfWVMQmdIK1omWGhwVX04Wm44
VzhBdnw+MHVGJSQ1X3pkQWxMYCMlM0c8NU5JaktpNW1QCno7Mm1gSllnflRTI2VlUEwwYn1aYDtN
ZHBKYC0xZFdgJkMlaUtnWjh8YUQzajgwcV5JLXdmfiR+IV9XOEVNRF45dwp6dWwoezgla2s/eUNK
Zj9KOy1BLV4yS1dMYWtxNiNCTTMpT3pCQDBXWTArMFUhcTxtZkVBI2d4dzk1OVZNKj95R3IKej9U
fG5MeilRKHFJVnZ3QFU5eVhxNFh7cUd4QGFCYkV1JjFnK1JQKWw+KjV2dHNAck95ejZJKjNia1ZM
aCNhP2JPCnpTSGFsLVhaYyhLSV5nWiZDKy1EIWcxaUg3Pyo9aDA+cSRXMiNsU3VnQVZUbHcqcDgz
NWVtWHchRVk9eUdSZUBOOQp6PiE8N2xxbk5LP0ZPV3JuKmJlVXU3cn1gJCQ2RUA+I2oqdWt4b09A
PkkkPnVaSG1kN2N5Zytvek5sXn0kYitMV3QKelExWHEydEg4YF9GNlVib04lb152ZX5qeG09eCMo
OXUqWmdWdStNZ3JEfj5tfntARGphO1Q4di0tbyEhTiFgPV9pCnpqSWdvMSYldmc2eyZSfSFrbmJl
b3ckeGxjPXdlKml3fFVeb2x0OWQkeyF1PkFBRDVydmcxJXkze3coPT9gdEF3aAp6Zi1GKHN2bWZQ
U3NuNz5PbWgwJnhJSHkmKHNlKShheDZJYj0rVCowMFBaI0A8JUVIbW5jSkl5bVFHY318RX53RnMK
elFfST80R1VgQkwhPT9WR2h6KXVlcigyWkJjY3JeRGdXPEp0NV9XMnJKZjIxfkJ1VzItdXp9WlQ5
S2dScGZOUCYjCnpVZ2x9ZFFXPXpfJVY5RC00Nz4lbi1ZMzVpOH16Kz14Q2VBN2gpPzslUW1yVDZU
KlJrI24wUm0/QjMpdSYwLXU5Mgp6Uj0qdUQ5X2xtZzZ+cTlxUnAlQDJESjxZZzZXa1k5O30zfnZW
RGVLcStOMktQMGw5YTQxPzBQIU9HMU9VbmU2MXsKek1xKzNqYllBM0NPZ3MmZ1BOKHNfcWo7fS1C
aGxESFN6RWpaX043PGUrfHpaJTgxTEI3LWFGfkUyJFcpbkdtPmJHCnpBTDBxVDNIIS1GK0gyMyFY
QDlUdGloUTxERW9WSGhpbjBvcylVRmNuR080XntKPDwxdWY3NkU/eHd6KEZfZ3g9Rgp6Wjsjdzkx
NTwyNWJ9RFl8WXdVM3tYenp3aEAqQk5XRUw/cWJndkpBUT0mfGYqUGFNMEJwVWRyRyU0UnYpSkBN
RmEKelFyRTEhY3ZGWFdkMmVXaHojZn4/N285K24tNE1ubUB7VkwwUV89S3tvX3JJcEdrZEt0K2Il
SyQxTjE/NWB6ZF42CnpPfGtBa0gxOCZ2dGwhd3FaWmRtJDRQLXNEKU1mNDIzeCg/JDVWWmxCQik1
IXYpbn1Ldm9WaEJ1QUdBYGFAZUtvTgp6Z3k9bjMyVXRONWxrRGJqRHtpem1KSDkqLTFGfT5MNUUx
an1lUmx7JiltKDZjNEwpbEpTM1pzI20zeHhwWXkqIT8KejhBaHxwaSVVeDtCN2gxODgzdj5KaXJT
VXchSlhCKy1lfFdkd2dJcVQ2ejVKNTFYNVFISHdiUzdTVn4rcnJoUHV+CnpxOGFrI1d2Q3VXcFJg
TChaU3NSQTg1VjtgRz1TVVZORkUjTW1lUmZoLW8/bjJHXn1Ge2w1PCp2cThrVnkrJSlLQwp6Y2B1
Jn1Va3Q5WiR2Y0gjaUcmYFVTdHElSExKMk9FO0wrTX4ocTtnX2lpWmFRJmUzdGRuZGI/NDIqNSpO
VlQldG8KekNHSzRHej9YdE00JGhJSCZwayNUI0tZIXQzMkI/TUxNOCEwKFVHaE5IWmJuMWZtcmxq
Ul4qXiVmVzVZPkBfNFVVCnpZQC1XcEdSczZfKkR8YWRLZjN8bkIyfUlmd01ab05ranNLeVp0VjN8
MF9CWENAbGdrU21ielp9e1RQe2hFZkwqfQp6RGNjbCp5U2U1WGtDKVlDdGk2dTlkWSQ5PXojSjdi
QSR6X30+PE1fQylLVmJiJjM7S0MwbkU8cjw8flR7MEFMYTkKelh3TT54bDBKcnwzK3lvQmt0fkI1
e2ZrTU1fY2QzXkc0SmExRnptUWFvTXZldjdJMkZWcDxsPytHUz5fRUlJYD9HCno4TlF8OW5eQzs9
PzJYK01hSUB1eE81Tkd2bUpRMDd6Qm55QUVKUHomTS1yN0ZEdk5Kc1JaPTlUJG1EWSp5Kyt7Swp6
VHhMbjJedF42P25iJD1fKmhYX3YpWUs4a0pCPipjMjYqbn0zV0MxbyspXjRoSjReMDcmZiZweTNC
U1Qjb3kkYUgKemhyRmN6MXdNNSR1TWMhRDJNLShMX1g5YVhTVl88WipyWkMkZypuPlQqcEQzKzco
I0R2a3wlZGxkIWVhWV9IPHdOCnolbnpJQjA/NztXOEdUNDBMX2p2ZmFTYW8zM0RgelVocGJrXj1I
JjE1Qz9VaCswaTR4NEVJeEYtZ1ZSMUojUkp9Mgp6Y2MxZHBVSj9RY3J+R1J3RXw8NmNxJExzO0l0
OCRkKGM5SCkzZTBIeFBXcEJBKmxNIWBMSUxyKmNJMkh7KktAbUsKekpveWE5XjlBKVA7Kj5pWEBa
RnNpbEBaXmE7dkZJI1Q/IUBLSklxZ1h1THs2IU9MKXUjQXdNWipKeUtWellEalFzCnooJjg5dUd+
eVNHP1Ahc31WNjZvS1I8MmpodVFoKHBGOTRsclktMDspNzd4UHA2cjAlaXlwRzMhPjRERi1oOHE1
Pwp6OEUwNklJcEVSWjd7PlJZODZgc15WdFJkU2pERD5gY343LW81N0wlfWl3QG9hLT5lbUg5Nzxn
dEcmdDdoMk9EPzsKej5gTnQjSjJxWkRCNU5hWl84MkB1KkF0fkA9I3ZybSRDQU5oTyQ9dnpzdWxC
RDI2SysoRD52aE9iXiZzZ0BkUjxUCnoxSEIpTm8pcn1fY1RFJiVKfEVuI1RrTkhEeiYmPCtud0xK
M1ZYI0FGI0dLXzk3UT5DMVQ4WD5rbVNxKUBLR2Q0TAp6ZHd6PD1yazAwKjheO3ZEcXtYcnhPdWhx
T3UlRGUxRH1zblZiQU92SDRPK2ZAUE8rd143RCh0XzUrTH1nU2soJSYKem5QPnNGcG83VGRmO15Y
dGZTJHpkIWxqYTRFZ0lhSjFsRThCUmxnOy12YUYkSmMzPzxgQytDIzl7U1hGKU1yREx8CnprcmhQ
JTJ5SlpReUNBdnZfXyZYaigjRWdIYjREeVNKTX5rNEV9cTNIQH15Y2hvKCtKeVY4PCUhKERTTU15
bF4/SQp6dEZNRUAqVVRWP2RiRDRHMHVacEdEN1ErUG8tS1h3SjQlWDlEPmBHVHRQRU5ISSpnenNh
PTxnRSFjY29aZ19SP0MKejtoY05tMWpIREJEK1cwKXc8ZlFIYENKIXwqYmtZWnJ0OFpWajglaiUx
YjB+YC1JTEg4ekBMcihxUT9lTGIwTFR5CnombD92XllnM2w4MVZJMn5KOFhedWpOZ24pWmhVYSZI
OGh1bFg4e1E3YUNtJHwyPmlsQkZCJHxnaDJ6KyFDdmImbAp6NXJadVU7SEI5d1BJKnlAY1p3dCs1
WTghUFJtN2VmZ3IxKyg2O29pPXJ0UyFtZGE0YmVTMWx6UjN+NWo3QUo5PkEKemojVGUpZSREU2Yr
WEdhZUxzKHFBLShUVmFWSWxXUmZpbntePTYhYVI5SFRKV0F8anItS2VATnUmRUJRYyRXUSNUCno9
KXEyJUFkdT1sIzxONWErVSlrJWg4b1k5MmVZN0Bubm5WVkZWQT90MX5HN2wqS35eUko0Y3Y5XypD
fDNVNGkkNQp6dms8aF9KJFlHe1RtfVA5MzhfJHVgRzc4d19USWp1WXBRX3t5KWY/NCtSYWg3b2dm
Tm5FTGhpSnhUeFZZSnw2aXcKelBeemVnJE9PIUdETXdEYjMrdUUhOXxINU8hV2ktNDZ5Ync9NFUr
aGg2N2FJIS1rcnJxK2NNJTtfa2JzMCRlPWxSCnpTS18zcjxEOE9RKVRtV3VjU3pJKU9gPzkzJVJe
T3FnZjQ3WXEhNmFtMzEjXzY3SnsyREM2VUdrYUhDfjZPNitAfgp6SFFpaGJfRkhgfEJYQl52Pik0
Pmt0LTJENWwqREE8MlV1fUI3aWEqQS1WcmN+OCUxUDVKQ1dAKDdnfGsoY24kZXsKemBCIzlXUlU1
KkVFSk1wUmFmMHBJN35uV1JEZTlXfUZQYDtwMzl8RG1GSVZVZ253Q28pZTZPZ0RxVHZtQFcoX1Jz
Cno0VXV+X3JneiZ6ZStRMXpzcHMpLV9BZ1lnR1VxM2djfF4xPzIoYjBaJFcwI30+fHRqYnBqT3kj
WkFjeUNLPzdVTAp6anlRLVJUeGRCNEUjO3xnTnFNbSNTfFc/YTlVPz81SlRwKVRDaWMzUT5sMz9q
N25PQmlpNGcpUVYrSDZaUnIwVj4KenZIfWQ3MTdEeko2ZGc9dDs5b2d7JVcxZ1Zidj1mS3h6dTdX
VUM0Y3IySn4/MldMNHI1PF9KPz01SjhNSF9eMz4+Cno5dW4rZVlJJDdkJnhUTUhxSEtkTzJUc1lq
O3dwcHk7X1N2WShSalBCZGwyVjZXcj4oVGB2LSNDRDVLWlIhPHV1ewp6c2lORTQ4b3RebUtnfF98
a2lzNHxNbTBjfTFDeHF7SEdzUjxHVnxgQUxVX1JzIU1aUi1eKn1BRCo+e00oSz1kPWoKelE7PXlZ
RDgremQ+eUVhdHskbmtSPDlrRVZxTW1pUSN5Ml80bHkzbyQ/PilORiU5M1lrcilMPmpORWhyYVR2
Q1hpCnorWWhvVUoxO1c7RG9MbUR5JTYkfShTbntKKlpCSmFTZyQxNXo/Sk4jYjVQfVBmUzxyWS0w
TVpEWnhzKGFvNiQ3dgp6dT9hQl57KVNKUVRndkteaVRCc2I4MjIrUU9yNCU8e3pPUn00PDU5V00y
KXhlPEBWfkkzMmt+MW5NT0g5MFlsWlcKel5jKn4rWTleakBObGprJiV3KEBJTysqOGcqWmt+TyVI
PkllcVU9eHNNM1o5PW47KWZXR3RUR095ejNNMkNza2g1CnpHMm9aRUswYkRQXjIrV2pfWCpxJWdy
Xnc0QT5KMkQqUmFqeEJTbnBVSSRwek9ASS1eRCZwRWA2JmZXUE9HJndgYwp6KS1+RV5Ya2FHYEtz
eXU0X3YtfitsZkVRZGN7fmFeYTNeTT43OyZKTmd1P19PRm52XjlTZFFNSDJWcUBWRCM1PDMKemR3
PSVFNXhgfD8jbT5ScTNlZXRuU2NONTBgV3BLQipsSExIZnBfTzxTSTNqTnVgJTZYNUd8QXk7N1FY
OztUMFJ0CnpePF9CXm09SEIjLXchKUopYFQ5O0NkbX5Mc2E2I09gQXtqZHNPJnpPKkkrNURRKHFs
dHBVQGwmVz5OQEg5KX49Twp6JTd7SUkoSTA1VmwrOFA7V252P34hJDsoK1IlJHA7Oyp+S15Wa2NJ
a2ZOZUJqQn08QjlibVEqJVI9ajBCdnh+a2cKejlnKE5PcERuJHVfd2lLZHN2ST5lPitqZVVZcVNE
cGU5bVZQI0kpQj5yYmlCZzdMZn5kbl9LfmBUfG9SU2VBLXVuCnplTTwhT0BgRSM/P1BHYjJqWnNH
KlNDJjAtYnBUQUc3eEtqRSVWNiQyJCQ+VH55PTBVPm5YdkQmIzhaUUxxfGFQaAp6QGhOS3RCa1Vo
NWluSTsoPXN4aSghWjNiU1R4NH5FMXl3dTB6LTF5KmcmNjlIaWhKZiFZYXFDREY1MHhTdi1pISYK
eiU8WSpxe2U0YXdxQGR6Zy1AZnZxJkUqVE87MGhmOVVwS3hQdl87WWwoIVdETGQ+QHBAMSgrdTh2
Z3p+OXhAN0YzCnpQKnVJRl9ZNT89Rn1UfXxFPkVwVztuYTkjTG5xQ3poS05QXmc7Sml0IUZYbVRY
fGIhVSMtREgjKUNxUWNNSzl3OQp6U2RrbmRRO2FQb2NXSDxkRFotPlJKZD8tV2MtNW9IdnZHbkpa
VkRVNVFzY257bm9rOEdCX2JqYCpkbjJYTU9nYjAKelR3bUMtPHoyI3ZHZipHOGhMJn1SSzZkVjhF
bn5uQCY/MSQqIW42OyZPKThzYyplTGlARlB0bHVlM25CTE5mKkRoCnpJcCZNYmd7PmdwP3B4SE5g
Y1J5IXRPZClAXkgoZyNfYVdIODZHVkQhT3cjXigjdTF1cUFffD1GPEAkSng/aCFyMwp6SzNBV3gy
QXZnfnA4Uj9OVnRlcXxEPjc3OTJzUUxyZV44IylKMihIWV9PMWp6c19OVy1fcytoczFWUkxnY29X
JWAKeldIUU4yMEB+Nm4xY0RHRDMyVUYjRVImN05PcWpfNkNfYzV+U31Seno/ek9mUypONFVCO283
Pk9LPGkhPVN3ZDg1CnooSVEjfD5xNUJ3ZXxPMjtnYmR+UmU2UFJ1Y1Z+VnhfZERDU28kczlVLVMz
X2BRK2Frdjk9eTRWe0VGI2liKjFoMgp6NnxrPWlCWClqaUVIVz85bz5MamdpeGdxRVhVKktVPUMt
PXthX29kP3N8bjE/dDZnXjFTXmlsMntEbXtJamRAe1kKemQweT89Xj58S1BJeWJmbXplSCVCPjkz
ZW82UFZ3PXFPaVB0KFg3Sk8zVCFmfll7RVg4eCR+QzlXO2Q3NFMtRSUkCnpnIVY3WFRVMWgrKC12
d3R0IVJQWUtmaGA1aWpgJGVXd2xGdWtSbHd5Rk5NbmVicnNFbEt5RkQlTmc/KDteP2ttaAp6OUsw
PiFvTmIpc097d19pbGdtQGRZVylKfGxUU3MkS35yJWFfbDB4XntlcGY7em9OVjcqUi1EUXJoRGpL
eHt2T3MKejJrNV9PMTNnSDtwQChvKl9hcFF1e1dvbyokTE1pLWZ9VyhPPXhPPmJ7Zj9mWVhYIWNH
T2ZTJWp3MXV8UEh1Xm5JCnpMd3wpe3JQdF9uYFhqd2JaXyhTZG8hKzZIdzJPOUFDKyhwd2RZOWcj
X2h+UXZpOVZufCg/MHI7e3pDaWRXQlA8WAp6ck43Y2FgaXVfSVZmdmlATXFrakVeYzVZVVphUFlg
a1MkYVElWjJPMjdzTUNFdD5PLUdyP15ZcFpDUGl6JWQqfmIKemtMNXxyPzxCa0FrcEBWRXJCckV6
RypUS1pXa308Mk5jZEUjSTZXaE1UIXhybyZsckBFa30pSj5NOD9SQihIVztACnolKjs0MUJiMEcp
Pl4yfHk5QSM4eURSWSZiUX0qTXNiQFBfYVlweTYqQGItZTgzczAkXiZAP0hXK3BfZStON2xhZgp6
c2QhWURXJDAzKDM1eEZTSmcpOUd7ektoOC0kIT5aWH1XdkVwdH5LJSkhaiNtP2hZaTstUGIrM0Q+
dndGZHEyN3AKekM3MHhkP3VKVWtwfVNFeUtiPl9xPCshQDV7VTdPJFNhPFVLQF9YYF5AKiVsUD92
XzhLbGpQazw/fnkte19zYnQ0CnpeJHl3UCpXX0leT255X3xBLV5MMzEocktOZXB9djYxOTleSDAz
fjs/e0kweFJ6RD9kTi0tPyNFcHgjYmdjZ2hGawp6YkBERng5cjtDaDRkOTFTPVN9JSkoQXo3b20j
PnNCbSNAJmk/Xm9jPGRjSSRnOEQ2YkAtd2xrYjxzWnFIJUZsenMKekZYVzVtMyo8JWV3QzwwKTR8
bmhIPyhGWEItcmx7dGArTUVkP3hvJDZqPWEmRytJNlZ3VkFwNFI8Z1JEQ1IoQ3pzCnpePD51KlU3
TlojYmdsMlllYXx5ezlfVzBwXkFEWUdiLXZsVHZHZEIjbXBacH5LSFlnJj1UKTdUQEJWdHtteypV
IQp6V18/SV8kaHpeWGpyVlZDLT8oaFVaNXdXU1ZDJWhzZG5ldj1AVE5jQ0BacXswWXdvPHt5eSYj
U3A5cjVUQk4mRWYKenpQXnpMRWFXN1MyOXRvJVlYUChoUXt6KG5TQWhqSEE/MmlgcjtKVGNObmEl
JT0pUDdzYmt1OCtqJiFYTyRGYWBrCnplOUp6aTktJmdZVyM1dEVDPihCPG1edmAreiNJJGFkfD1M
cj1ESS10KVVeQCowUGI/Syh9eVhtR3lZNztUKCRwJgp6e1MkUU52SG4oPCp7N3p6VyVec0R6aChN
Y3JvVXpTVG1Ne3QlWiFIZjxEdld1ZHQ3Rk8lWiYxd3s8WX59b0JwLXcKelU7akolKlROZGhLNS1H
cGljKyojays/e1c3OX1tJkJJbCF3cEF5bH5vUm18eVl9dWo9NjNtdiNOfGZqbTJeWjFxCnozOFFX
fmNoSCVLJHp8RWNQcGxxX3AxWVdAJitvbnV8OWBFbXhrfWBVYk1acGRPOFktO3I5TjZBJE1fUGBr
Y2ExMQp6OTNlNDNyVmRPU187O2BZOT8heGR3SihKXk5QTENRZFZEWjdRN3R9cnY3R3dyVGI2a1hA
RyslUz9WVjFVYk96MCYKemBCWTYmeGAze3Y4P1ptPExHMVkxaE1oY251fE1haTsxUHhrVitGcjNP
XyhoIzdWM24hYUZLQTBhST4mcGRwfDVaCnpCZktvXjYhcjsrTU51M2lqdUl6fEw5c31qRTFufVpp
NT1wbDsjJT1gQGpoe3J4TEpIJSsjfks2enFIc2JMb0plSgp6dlNxNGVoTmFSe1dyPGtNd19JVmwt
ZzJqOTE5dFhvd1krNnstfH5zJmh9QzZIdnp9YDhTLSkkWVduRX5rd0p4KD4Kelh1YUJjcXhDTjlN
KGJ+X2YzVXR8e2xOTn1qY2Z5S0JXPmV0eHdabVpuZTdMKjIzd28kNjVGLTVUVyRCKTk8QERaCnpk
KTJudl9MMSN4Y0I/KGJLSDdlb0o+TmR2VVQjMHY5PTVOclV1T1RRe1NOeUJfUSZsbitXJTtPKk03
a013WnJLYwp6PUUhaGxJbkgjSEl1PHg7OTQoR2pjd2dvQ25kNFdFLSNESWp7TkF6TUBoOFZZaHdT
dF5NPnhraGJEWkNJJlQlZXIKeik7bjlCN2R3Q0F5djJGOV5BWUU+JlIza2ZvRjYocmNVZkc2VF8/
TEh4JDwxYXU2ZUU+eHxYX0B5SD5sZGJOJD9QCnp6dzBzQTMkOGFAVTlPS15VJTRJYlJDbF5OKHx2
fH1yaEM0LSs4dVJZO0oocypnWnIyNjJpO0coeDRHWVQ/eyl2eAp6ZWJuUmU0RUshbl8mdzcrdnB0
SkZiKUxCQUJGe0NSbj8zNzI0fHxeUnl6SlRPKzI9WHo2fV5NSnFtc1RTZFZ9NX4Kej9fQlJXLVg/
RXtfZnFkI0A5cDBFeXFtbjZ5e34pc2M9dm4xOUFGPFhiYnZIcUdPUHRGbGFRd0RzOT58fnZyY2dx
CnpqUyhKSXVKe3JAKWdqYiRfTX03X0N9MjA1XjBIOGRYeENzWEltSFBZWUBefCNQbE41cXBRKnZf
ITQyWUU0ZmZFTwp6QSk3UktBZTlmPCl4KnloTG8rcDRBWngwIW4qO1NrYS0+ZXVALTM4LW55dFpC
KUc1P3A4K2xWcEd9dzsoYXQrM3wKenkzXz80PzRjbiZASWFjRitNd2tSTSpYIUtvQn4/Y1l3IUB7
LXdJRGN1KTBfJHNkczJGYmR0NzRnUTFoTzgjTmRACnpOJkJAMUxubW9sRyNFTmJkc1R5PmxlQiNy
NDR0SFhzPT82N2M9bUxkN0laVEgwdTNIYSZoYW02YTAoM158Q1I8MQp6TEg9SDxxeWBGK0w8UCNW
OEJpVk9mQyNrJHN6eW16TiEzI3Y9fmxxfXQrcl5QSHE7MUhCaD9fYzdHPSM7ZztXSHkKemlBMUhp
TzROaXBHMzNRaiZoPVhIJkRkM0o0WERwX3hVR2NUc0ZJMy1ZN085ZTxUVFBzZ31kYW1CLUhGYyVA
RjlzCnohQzUxPDA5Tz1KPSR5dEM0MFJ8ODFCJW4+SnRlQkZWTVdGY2x0KH5RcTlSfWxEViNNQHlW
QUFAXz9xJDdJYlZYQAp6NypmblJeQlA5Jm5BVT5wTlB0YExYNUJFd3NtTik3WV59KGZOP0NZd2kp
eGYpcUlHWC1FT34tZkNRPm5RI1Z1SFcKekF6KXtEOz5jbW1GYypee0trSj0mJjd5NEpeeEBqMylN
MUoxUTVzZT4lR35QeFQmfFJ+RFYpUzswYUMwI3dSYT4xCnpPOHxIaGNBPlhSUiNQdU9vO0ArMi0x
RSFfYklaMlhmQD59RXMlWnRqRTBJJkhxKVNrQDBYKFRhJU5tVStgRXlXRAp6P01MbkB3ek40WVRh
TnhfVTVBeEFzLTNjeGhKbH4kZkhsVUopJlkhLU59OHFaJVpZXkErIzk7QmF2dzNSMVAxT2cKej0y
OUkyWlF6TnFGKCNISGhIRDdEQ24xO2Z2WXxuSzghZkkxKnhNQ3B4SHQ4aGA5MVk/SXJVTS14ezdO
KCZsMEdaCnp7WE87N2RkIyh8S159dWtRQUBSRDlnRTZVb1IrfloqakFaeDJ3Sk5HPTJwbmF4O0te
QHJMMCVWVE9jI2IjSXBtLQp6JClpRWxYJD93TGApNkZMOXFEfHNNS3diPUR1cFZ2Vi1JNkZ0e3JI
XzdUdXVXPGdwbzZASDVBJWpMRz1uNXlEeiYKeiFJa0F5XzBNd2lte1lBT0Y7bDZ5Pkw1MiQ9cSk5
NCFUclpQRm1IKWtlUzFtUW5YWFVQTGY/NlZYOF9pXktIfSVvCnpYfmd8QjhHYVEqTEIkU0tJQTY7
UlFifHY0OV8mU31uQDdgb2F0bkdlNmo2UnBaVnw/QFREUWMyQSk5aTVnUlBDSgp6V0sjZkMpbWpZ
YTcpdFVDeFV5KnE+Z2xjZzcqIz43Nn5sU0dOflJjNiNsV0c8UiFxZWBCe3smQ1llKkc8d3ZJZ3EK
emQ/enErRHVGU0YzUENTWHZqfiN3RGJeIVByXzx3OWZgKGR9O0QkPkpgbWA8VClpJEFEWmZvbyVQ
OHFlcVg9QmclCnp6KHNHcVNsJEYqRVImSnorK0tXVV9yY0MtQlgqVVdNMC15NkVsKmVzYkRFOH1Q
TXVSbS1aYEQlalo7UzZJQm5EZQp6Vj1GWjk/ZyFAeWl7c0tARlVkS2JZb0h4OF5mVDhrPkJVT2Bl
VmRAcElga1BWQXMzd0pHYlApdW5vZH0obm9pZ1gKenJ2bkM/PDg7MmtkTl4mZyFUQDlxOGwrUngz
N2g1N2smOE9JPF4hbCpZflc4I0MkdGtsUystJjExKEVnfXY9c3l8CnpqOFZzejJrRElUcj1XR1Fm
bkpGc3kqXml7RFN4bEVydkYqYklFKDZZUkRVeUo5UD9FKFcrcnVaUm80Ynk5YVl+Kgp6WjwlfntW
LUZAbmAlS1gwR2FwUzxKZXhBJD1KaygjSWk1K1lHMXV9K20yNVVXTCY0TGM7OFN0MmMycnoqZCQ5
MUQKeiFzYHdEQVBsTCM1OTIpK2ZBMkw/I2xPe256WC1OKUpwOEBlX2VhNlYwcG4reEJlNEJ5V2ky
KFh4TiRgaj5le1lLCnokMjBnaCpPY3lTdlh8RzBieCtrWGBecU91elhXNH1TQmRfNChFU1puJnFt
KmI8KHYqR3lrPkltOGZEXm5pRCQ7Kwp6PEsjWEohdyRGeWtIeVM+UVptZHJOaVpNVl9zMyRjZ2NZ
KWY2R0ghfVVmRT44JERAeztncXA0ISowdCZkdlRxV0QKekVkNURUZjxFRTlvZkQtUkk2PG5xJiEr
bFR7Wlh5fVNJYllCWnR3KUB2aFRLQnYkeWBXJS0mYj5LR2VydC19I31oCnpSQHJsfU9HOy1aWT0/
RThvS0M/QiVFUzYmWiZDSTNgcjR5RCZRemFKQTd7enp2K3k2IzxuaF5HUG45YTNFOHA5KQp6eDV6
JVZkaVEpUjlkKDhMSGZFMEE2NnJIWDZGQjdsUX0wPzViR2k+SipZUVZuR1RIanFVfilSZS07bUE+
PSNFR0MKelFmUm5GKElXZnNKa3Y8e0BFV0kmbHA7bUh7SHMwb0RPQkg2bTV0e0opcHtHQzJmaW08
aTdRKSZpaWh1UElHNSlTCno/bm18Ql5TQ1FvKDxILSs2TkluaCRMSWZ3K0tLQzZLNGpwTHRqMk1T
eTNwc0pnZjk0PUpPO194Q2NtKkJFX31xRwp6MmZtWGpnczBZNTVDMjxBbmRtPWJKZiNEeFYrWmBE
NClrJmp1ND5lemNPNzJrK3FGNytqVnhHdTE+UlloZno8eHoKeiRPPWF1YypXcS12dVEzWk1sYEY4
V3t8dEdBdFYodmdxbyF+e0t1X1M5U1RQeV4+THsrRHomMVpyTDgqTFNSPlUmCnpvMndjbG5ObiMp
WUhFdSQjJW1rI2YzNDk3c3g/JSNxRXcxUlRjdWQyQ1IhaDlULW0zVTZ6enpGVikySD83QWFjQwp6
TmFHPT90fXpebnBSUTEtaS15Q3xqPmJzNlIyMEtNTWxgbUVxQHJrWkdiNntqeUhUayZSMT5hPnAm
JU5PcyNAQGAKek9yaUt4c2lDI0NXb2xNZHhULXB5UykoPHBRQ25xM1dBJDAhSWZUQ2xqJVRkfGlw
ZD5Tej96a3Y+QzAtdnpvfkBrCnphUk9EZUhwRFdRaHc5c2FlRjZBbXtNbmZTcFB+eWNHaUd2SHF1
SjVYayU+UnhWS1Ewe2p1MW5STGJzQCpCOCR9Kwp6JiNGUjt0Zkk1JEUtbyNiO1dtKEJ1cVcxeyRD
dU95MWRta3EpNl5JZWA/S3NUQ2hxIXEpRnpKXmEmKTU8Vzc+PlEKem4oO31hSig9O3p6Q01jeyQx
fiVUV187MyZQbnoqYkdkYCl0KjQyMlY4SnxvJTNwMy1CWUlMRSQ9d2F7cHE4WHA7Cno5Wk5MaGxW
Kkk8Nz1KUzNsWVBCI28tejg1dHtvZFVSM3IwZGVEY19jYl5qVlA8Q0UkZHtfUkZYJkc9O1IqeUkw
Rwp6ZD1lMzdIRjg7dyRYTEN5PVlebGA+YmJsUlFoQ1llVzlNJV9GQ2gpUDZoKjs7OWZEU31rc2Fx
YEltdHlISzd8Yz8KejNKMmpWdHJRd1VMKHpIfHJPYDw9b0pQPHtgVk5odmxXOD1hZl9XKygoY2U+
UDQye0p9Z1gwbC1wR2NEc2Rwe2pkCnpyIW87dzwoKE9SPDtnZmRRUmlKS1F9N0o9M182cChPVyZo
dV5uTEtrY1VpXkNHc192K2xVeiEoPXEjRnpVMCE4TQp6RU9zODFCVkpwSGkyZWR2TlEpNGdUfHom
Z3xEYmN8aGpjRVRodUNkM0JFYWwlKWo8T3M8IXsyMWYtc2BGe01AMWkKekpEXzt5UzFXWVdqJWV8
Nj8waX5EPVZRPEZEeDhiPnBMN3ZqT2gyTWFYKkZGJlM3MENYUmRoOTdMcURONHczZEV+CnpVQ30/
SSt2cy1mM193MFhreHgkNCZyTVdNT01EIT1ybDBGfEdVN30wdlVXUCs4QCowUCt8bFFKTF9RUG9C
a2ZlZwp6MUFXZyQ2cyY/eElocFlab1l7Q2N7aFYmMGpYMCg4ZEY4Q1omMiRPUVdWez9fSUtINXEo
ZkIwJm1+TnotPV9aYDsKemNwY3FKKlV+ej05e2JCNSF9KkxqemZySzBDXiFWQzsxYi19Klg8UHMy
bV4mZCFlQWpxNyRPVzZRaVdrY25zNV5LCnpkeWYhQzNmfmIlMmAzQXFnO05BY05FYjRNUS12fHUy
Uj0/MUZIRXFPJjdWRW5Tc3p9fSgle2R7KEV3a3I0Z3whUgp6bTZxYl52bUlAYiMqKm5KQzRCWSFl
MTdla3FnYHtnWWUyZ093ZClrXlRBKkRFYElfVk5gQ0xfWGpnNyhWVUArSWcKelA+d0h+T0xDfENl
Q2pwN05KfWRpYUlDUD5HSSNuRWc7RjNwU2dlJlI5M1pXZzJiQkNrUE9nRnZsPThTOStBRyZRCnRw
SVI/aWwld0RZPUsxcnZkYGZuKVFhX05GdHdgdzBETnlQTTM7WVZfTkdwPSVPKW1gNC12UXoxZFJx
VmgKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoK
</data>
<flag name="review"
          id="438949"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420588</attachid>
            <date>2021-02-16 20:13:53 -0800</date>
            <delta_ts>2021-02-17 18:04:08 -0800</delta_ts>
            <desc>Patch for committing</desc>
            <filename>bug-221744-20210216201352.patch</filename>
            <type>text/plain</type>
            <size>53994</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uNTQ5NTJiNTAxYjU1OTQ5OWU5ZWVmN2VlNGFiOTY1
OWQxMDIyNTUxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTE1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNl
ci4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3RlbSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0
ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1
cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdoaWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdlYiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9B
U1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nlc3MgdGhhdCBpdCB3b24ndCBiZSB1c2lu
ZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAgIFRoaXMgaXMganVzdCBhIHRlbXBvcmFy
eSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwgd2UgY2FuIHByb3Blcmx5IHRyYW5zY29k
ZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAgICAgICAgZGlzcGxheSBsaXN0IGluZnJh
c3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkgYnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGds
eXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNoLAorICAgICAgICByaWdodCBub3csIG9u
bHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2FudmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3Vs
YXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQVQorICAgICAgICBwcm9jZXNzIHlldC4p
CisKKyAgICAgICAgVGVzdDogZmFzdC90ZXh0L290c3ZnLXNwYWNpbmcuaHRtbAorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9u
dENhc2NhZGU6OmRyYXdHbHlwaHMpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvcmV0
ZXh0L0ZvbnRDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpmaW5kT1RTVkdH
bHlwaHMgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9E
aXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpmaWx0ZXJPdXRPVFNWR0dseXBocyk6CisgICAgICAgIChXZWJDb3Jl
OjpEaXNwbGF5TGlzdDo6RHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhzKToKKwogMjAyMS0w
Mi0xMyAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAKICAgICAgICAgUmVkdWNlIHJl
cXVpcmVtZW50cyBmb3IgY29sb3IgdHlwZXMgdG8gb25seSBjb252ZXJzaW9uIHRvIHRoZWlyIHJl
ZmVyZW5jZSBjb2xvcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggZThlYjk5YzI0ZmViZGY4OGU2NDk3
NTg3M2Q3MGUwZDFlNDk0MDMyNi4uNWU4NDgyYWU4ZjEzNzYzNzBlNjIzZWY0NTkxMThiNzdiZTNm
MGUzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDItMTUgIE15
bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbR1BVIFBy
b2Nlc3NdIFRlbXBvcmFyaWx5IGRpc2FibGUgZHJhd2luZyBPVC1TVkcgZ2x5cGhzIGluIHRoZSBH
UFUgcHJvY2VzcyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAg
IFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICBUaGlzIHBhdGNoIHNvZnQtbGlu
a3MgdGhlIE9UU1ZHIGZyYW1ld29yayBiZWNhdXNlIGl0J3MgYSBwcml2YXRlIGZyYW1ld29yayB0
aGF0IGRvZXNuJ3QgZXhpc3Qgb24gd2F0Y2hPUy4KKworICAgICAgICAqIFBBTC54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmNwcDog
QWRkZWQuCisgICAgICAgICogcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaDogQWRkZWQuCisgICAg
ICAgICogcGFsL2NmL09UU1ZHVGFibGUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFBBTDo6T1RTVkdU
YWJsZTo6T1RTVkdUYWJsZSk6CisgICAgICAgIChQQUw6Ok9UU1ZHVGFibGU6On5PVFNWR1RhYmxl
KToKKyAgICAgICAgKFBBTDo6T1RTVkdUYWJsZTo6b3BlcmF0b3I9KToKKyAgICAgICAgKiBwYWwv
Y2YvT1RTVkdUYWJsZS5oOiBBZGRlZC4KKyAgICAgICAgKiBwYWwvc3BpL2NmL0NvcmVUZXh0U1BJ
Lmg6CisKIDIwMjEtMDItMTAgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNv
bT4KIAogICAgICAgICBNb3ZlIHBhbC9zcGkvY29jb2EvQ29yZVRleHRTUEkuaCB0byBwYWwvc3Bp
L2NmL0NvcmVUZXh0U1BJLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCA5NzBlN2UxODRlYzI1ZjA0YjVmZGE5ZTliODQzZDA2MDg0
NGNkZjc1Li4yZWRiY2M5YzAzODg3NWVhZTQwMmNhNWQ1Nzk1NDhkYTA3Y2U3NDZlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0x
MDksNiArMTA5LDggQEAKIAkJMUMwOUQwNTgxRTMxQzU3RTAwNzI1RjE4IC8qIGNvbmZpZy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUMwOUQwNTcxRTMx
QzU3RTAwNzI1RjE4IC8qIGNvbmZpZy5oICovOyB9OwogCQkxQzQ4NzZEODFGOEQ3RjRFMDBDQ0VF
QkQgLyogTG9nZ2luZy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxQzQ4NzZENjFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2luZy5jcHAgKi87IH07CiAJ
CTFDNDg3NkQ5MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzQ4NzZENzFGOEQ3RjRFMDBDQ0VFQkQgLyog
TG9nZ2luZy5oICovOyB9OworCQkxQzc3QzhDOTI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRT
b2Z0TGluay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5jcHAgKi87IH07
CisJCTFDNzdDOENFMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNzdDOENEMjVEN0E0QTMwMDYz
NUUwQyAvKiBPVFNWR1RhYmxlLmNwcCAqLzsgfTsKIAkJMUNDM0FDRTgyMkJEN0VDNTAwRjM2MEYw
IC8qIE1ldGFsU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQ0MzQUNFNzIyQkQ3RUI4MDBGMzYwRjAgLyogTWV0YWxTUEkuaCAqLzsgfTsKIAkJMUND
RUU0RjUyMEQ4NzE5MzAwNDdCMDk3IC8qIENvcmVVSVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDRUU0RjQyMEQ4NzE5MzAwNDdCMDk3IC8qIENv
cmVVSVNQSS5oICovOyB9OwogCQkxQ0NFRTRGNzIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJh
bmNlU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
Q0NFRTRGNjIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi87IH07CkBAIC0z
MDYsNiArMzA4LDEwIEBACiAJCTFDNDg3NkQ3MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IExvZ2dpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUM0ODc2REMxRjhEN0ZDNjAwQ0NFRUJEIC8qIExvZ01hY3Jvcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBM
b2dNYWNyb3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM2N0NFQTIxRTMyRUUy
NjAwRjgwRjJFIC8qIFZlcnNpb24ueGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBw
YXRoID0gVmVyc2lvbi54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3
N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQ29yZVRleHRTb2Z0TGluay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTFDNzdDOEM4MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUM3N0M4Q0IyNUQ3OUI2QzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gT1RTVkdUYWJsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDRDI1
RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBPVFNW
R1RhYmxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNDM0FDRTcyMkJEN0VC
ODAwRjM2MEYwIC8qIE1ldGFsU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ldGFsU1BJLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDQ0VFNEY0MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3Jl
VUlTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29yZVVJU1BJLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDQ0VFNEY2MjBEODc0M0YwMDQ3QjA5NyAvKiBO
U0FwcGVhcmFuY2VTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTlNBcHBl
YXJhbmNlU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC01OTQsNiArNjAwLDEw
IEBACiAJCQkJNDE2RTk5NTIyM0RBRTZCRTAwRTg3MUNCIC8qIEF1ZGlvVG9vbGJveFNvZnRMaW5r
LmggKi8sCiAJCQkJMENGOTlDQTYxRjczODQzNjAwN0VFNzkzIC8qIENvcmVNZWRpYVNvZnRMaW5r
LmNwcCAqLywKIAkJCQkwQ0Y5OUNBNzFGNzM4NDM3MDA3RUU3OTMgLyogQ29yZU1lZGlhU29mdExp
bmsuaCAqLywKKwkJCQkxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGlu
ay5jcHAgKi8sCisJCQkJMUM3N0M4QzgyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExp
bmsuaCAqLywKKwkJCQkxQzc3QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAg
Ki8sCisJCQkJMUM3N0M4Q0IyNUQ3OUI2QzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuaCAqLywKIAkJ
CQk0MTZFOTk1NTIzREFFRkY3MDBFODcxQ0IgLyogVmlkZW9Ub29sYm94U29mdExpbmsuY3BwICov
LAogCQkJCTQxNkU5OTU2MjNEQUVGRjcwMEU4NzFDQiAvKiBWaWRlb1Rvb2xib3hTb2Z0TGluay5o
ICovLAogCQkJKTsKQEAgLTEwMjUsNiArMTAzNSw3IEBACiAJCQkJMDc3RTg3QjEyMjZBNDYwMjAw
QTJBRkYwIC8qIEFWRm91bmRhdGlvblNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEM1
RkZGMEYxRjc4RDlEQTAwOUVGRjFBIC8qIENsb2NrQ00ubW0gaW4gU291cmNlcyAqLywKIAkJCQkw
Q0Y5OUNBODFGNzM4NDM3MDA3RUU3OTMgLyogQ29yZU1lZGlhU29mdExpbmsuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJMUM3N0M4QzkyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUMwOUQwNTYxRTMxQzQ2NTAwNzI1RjE4IC8qIENyeXB0
b0RpZ2VzdENvbW1vbkNyeXB0by5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTE3NUI1ODFGNkI0
NzA1MDBDNEI5RjAgLyogRGVmYXVsdFNlYXJjaFByb3ZpZGVyLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUY0NDI5MTY0MUZBNTI2NzAwMDJDQzkzRSAvKiBGaWxlU2l6ZUZvcm1hdHRlci5jcHAgaW4g
U291cmNlcyAqLywKQEAgLTEwMzgsNiArMTA0OSw3IEBACiAJCQkJMENGOTlDQTQxRjczNjM3NTAw
N0VFNzkzIC8qIE1lZGlhVGltZUFWRm91bmRhdGlvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlD
REFDQjM2MDIzODc0MjVCMDAxOEQ3Q0UgLyogTWVkaWFUb29sYm94U29mdExpbmsuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMzE2NDdGQjAyNTE3NTlERDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5r
Q29jb2EubW0gaW4gU291cmNlcyAqLywKKwkJCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyog
T1RTVkdUYWJsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRDYxMjJDRDI1NTlCNkFDMDBGQzY1
N0EgLyogT3V0cHV0Q29udGV4dC5tbSBpbiBTb3VyY2VzICovLAogCQkJCUNENjEyMkQxMjU1OUI4
RjIwMEZDNjU3QSAvKiBPdXRwdXREZXZpY2UubW0gaW4gU291cmNlcyAqLywKIAkJCQlBMUY2M0NB
MDIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuY3Bw
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xNTA4MWEwOWEwN2EwYzYwZWU3MTVlOGY4MGI3N2E5ZDg4YjMzN2UwCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmNwcApA
QCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lu
Y2x1ZGUgPHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtp
bmcuaD4KKworU09GVF9MSU5LX1BSSVZBVEVfRlJBTUVXT1JLX0ZPUl9TT1VSQ0UoUEFMLCBPVFNW
RykKKworU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJs
ZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxlUmVmLCAoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNp
Z25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKSwgKHN2Z1RhYmxlLCB1bml0c1BlckVt
LCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9UU1ZHLCBP
VFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoLCBDRkluZGV4LCAoT1RTVkdUYWJsZVJl
ZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0YWJsZSwgZ2x5cGgpKQorU09GVF9MSU5LX0ZVTkNU
SU9OX0ZPUl9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJsZVJlbGVhc2UsIHZvaWQsIChPVFNW
R1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9D
b3JlVGV4dFNvZnRMaW5rLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQwYzAxZDBlYjAxOTc0MzVmNDdlM2ZmNTJh
ZTFmNjExNGMwYjg2ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvQ29yZVRleHRTb2Z0TGluay5oCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CisjaW5jbHVk
ZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFNRVdPUktfRk9SX0hFQURFUihQ
QUwsIE9UU1ZHKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9UU1ZHLCBP
VFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEsIE9UU1ZHVGFibGVSZWYsIChDRkRhdGFSZWYgc3ZnVGFi
bGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpLCAoc3ZnVGFibGUsIHVu
aXRzUGVyRW0sIGZvbnRTaXplKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwg
T1RTVkcsIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgsIENGSW5kZXgsIChPVFNW
R1RhYmxlUmVmIHRhYmxlLCBDR0dseXBoIGdseXBoKSwgKHRhYmxlLCBnbHlwaCkpCitTT0ZUX0xJ
TktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlUmVsZWFzZSwgdm9p
ZCwgKE9UU1ZHVGFibGVSZWYgdGFibGUpLCAodGFibGUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvT1RTVkdUYWJsZS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDUzYzA0ZjU0OGE3NTZhMWJmZDc3YjZiNzFl
YTFiMzE5NzcwY2I4NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvT1RTVkdUYWJsZS5jcHAKQEAgLTAsMCArMSw2MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiT1RTVkdUYWJsZS5oIgorCisjaW5jbHVkZSAiQ29yZVRl
eHRTb2Z0TGluay5oIgorCituYW1lc3BhY2UgUEFMIHsKKworT1RTVkdUYWJsZTo6T1RTVkdUYWJs
ZSgpID0gZGVmYXVsdDsKKworT1RTVkdUYWJsZTo6T1RTVkdUYWJsZShDRkRhdGFSZWYgc3ZnVGFi
bGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpCisgICAgOiB0YWJsZShp
c09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgPyBzb2Z0TGlua09UU1ZHT1RTVkdUYWJsZUNyZWF0
ZUZyb21EYXRhKHN2Z1RhYmxlLCB1bml0c1BlckVtLCBmb250U2l6ZSkgOiBudWxscHRyKQorewor
fQorCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKE9UU1ZHVGFibGUmJiBvdGhlcikKK3sKKyAgICBz
dGQ6OnN3YXAodGFibGUsIG90aGVyLnRhYmxlKTsKK30KKworT1RTVkdUYWJsZTo6fk9UU1ZHVGFi
bGUoKQoreworICAgIGlmIChpc09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgJiYgdGFibGUpCisg
ICAgICAgIHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7Cit9CisKK09UU1ZH
VGFibGUmIE9UU1ZHVGFibGU6Om9wZXJhdG9yPShPVFNWR1RhYmxlJiYgb3RoZXIpCit7CisgICAg
aWYgKGlzT1RTVkdGcmFtZXdvcmtBdmFpbGFibGUoKSAmJiB0YWJsZSkgeworICAgICAgICBzb2Z0
TGlua09UU1ZHT1RTVkdUYWJsZVJlbGVhc2UodGFibGUpOworICAgICAgICB0YWJsZSA9IG51bGxw
dHI7CisgICAgfQorICAgIHN0ZDo6c3dhcCh0YWJsZSwgb3RoZXIudGFibGUpOworICAgIHJldHVy
biAqdGhpczsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9P
VFNWR1RhYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wYTQ2ZWI3MDY4MWE4YzgyZmM3MGVkZjUxMzVlN2FmZTNjMTJhNTM3Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmgKQEAgLTAs
MCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHBhbC9z
cGkvY2YvQ29yZVRleHRTUEkuaD4KKworbmFtZXNwYWNlIFBBTCB7CisKK3N0cnVjdCBPVFNWR1Rh
YmxlIHsKKyAgICBPVFNWR1RhYmxlKCk7CisgICAgT1RTVkdUYWJsZShDRkRhdGFSZWYgc3ZnVGFi
bGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpOworICAgIE9UU1ZHVGFi
bGUoY29uc3QgT1RTVkdUYWJsZSYpID0gZGVsZXRlOworICAgIE9UU1ZHVGFibGUoT1RTVkdUYWJs
ZSYmKTsKKyAgICB+T1RTVkdUYWJsZSgpOworCisgICAgT1RTVkdUYWJsZSYgb3BlcmF0b3I9KGNv
bnN0IE9UU1ZHVGFibGUmKSA9IGRlbGV0ZTsKKyAgICBPVFNWR1RhYmxlJiBvcGVyYXRvcj0oT1RT
VkdUYWJsZSYmKTsKKworICAgIE9UU1ZHVGFibGVSZWYgdGFibGUgeyBudWxscHRyIH07Cit9Owor
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0
ODFkMWJmNWFmYzBhYjYwOTE1MjRkMGVlY2E5YWM3MDc4Y2ExYzBhLi42ZjU2YTFhYzE2NjY3ZDM4
YTQ4OWZiMWZhMTI4OGI5MTdjZGJmMGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3Bp
L2NmL0NvcmVUZXh0U1BJLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJO
QUxfU0RLKQogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8
T1RTVkcvT1RTVkcuaD4KIAogI2Vsc2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBr
Q1RGb250VHJhaXRFbXBoYXNpemVkID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYg
Y29uc3Qgc3RydWN0IF9fT1RTVkdUYWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBX
VEZfRVhURVJOX0NfQkVHSU4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApp
bmRleCBjN2IwNzJlNjZjNjMxNWQyNmE4YzkyODk5Y2U1MDJiMDdhZTAxMGJkLi5jN2RhNTQ5M2Zj
MTQ2NDAxOGE3MWFiMjE4OWZhNTVmNmI2YmIzMmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvRm9udC5oCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpcyBwYXJ0
IG9mIHRoZSBpbnRlcm5hbCBmb250IGltcGxlbWVudGF0aW9uLgogICoKLSAqIENvcHlyaWdodCAo
QykgMjAwNi0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAwNi0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHly
aWdodCAoQykgMjAwNy0yMDA4IFRvcmNoIE1vYmlsZSwgSW5jLgogICoKICAqIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTQy
LDYgKzQyLDcgQEAKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogI2luY2x1ZGUgPENvcmVGb3VuZGF0
aW9uL0NvcmVGb3VuZGF0aW9uLmg+CisjaW5jbHVkZSA8cGFsL2NmL09UU1ZHVGFibGUuaD4KICNp
bmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAjZW5kaWYKIApAQCAtMjE5LDYgKzIyMCw5IEBAIHB1
YmxpYzoKICAgICBib29sIGNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNvbnN0
IFVDaGFyKiwgc2l6ZV90KSBjb25zdDsKICAgICB2b2lkIGFwcGx5VHJhbnNmb3JtcyhHbHlwaEJ1
ZmZlciYsIHVuc2lnbmVkIGJlZ2lubmluZ0dseXBoSW5kZXgsIHVuc2lnbmVkIGJlZ2lubmluZ1N0
cmluZ0luZGV4LCBib29sIGVuYWJsZUtlcm5pbmcsIGJvb2wgcmVxdWlyZXNTaGFwaW5nLCBjb25z
dCBBdG9tU3RyaW5nJiBsb2NhbGUsIFN0cmluZ1ZpZXcgdGV4dCwgVGV4dERpcmVjdGlvbikgY29u
c3Q7CiAKKyAgICAvLyBSZXR1cm5zIG51bGxvcHQgaWYgbm9uZSBvZiB0aGUgZ2x5cGhzIGFyZSBP
VC1TVkcgZ2x5cGhzLgorICAgIE9wdGlvbmFsPEJpdFZlY3Rvcj4gZmluZE9UU1ZHR2x5cGhzKGNv
bnN0IEdseXBoQnVmZmVyR2x5cGgqLCB1bnNpZ25lZCBjb3VudCkgY29uc3Q7CisKICNpZiBQTEFU
Rk9STShXSU4pCiAgICAgU0NSSVBUX0ZPTlRQUk9QRVJUSUVTKiBzY3JpcHRGb250UHJvcGVydGll
cygpIGNvbnN0OwogICAgIFNDUklQVF9DQUNIRSogc2NyaXB0Q2FjaGUoKSBjb25zdCB7IHJldHVy
biAmbV9zY3JpcHRDYWNoZTsgfQpAQCAtMjkzLDYgKzI5Nyw3IEBAIHByaXZhdGU6CiAgICAgbXV0
YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxTbWFsbENhcHM7
CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlQZXRp
dGVDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRl
ZEJ5QWxsUGV0aXRlQ2FwczsKKyAgICBtdXRhYmxlIE9wdGlvbmFsPFBBTDo6T1RTVkdUYWJsZT4g
bV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVU
ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRD
YXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgyODZh
ZTM5NDBhNjAuLjZmZjAwYmZiZDU0YTJiOGExOGVlYzA1ODQ5MDc5MzU0YzAyMTJkYjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNj
YWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVk
ZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUg
IkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCIKICNpbmNs
dWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0
cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsOCBAQCB2b2lkIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhz
KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRm9udCYgZm9udCwgY29uc3QgRwogCiAg
ICAgQ0dDb250ZXh0UmVmIGNnQ29udGV4dCA9IGNvbnRleHQucGxhdGZvcm1Db250ZXh0KCk7CiAK
KyAgICBSRUxFQVNFX0FTU0VSVCghaXNJbkdQVVByb2Nlc3MoKSB8fCAhZm9udC5maW5kT1RTVkdH
bHlwaHMoZ2x5cGhzLCBudW1HbHlwaHMpKTsKKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0g
dHJ1ZTsKICAgICBib29sIHNob3VsZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4
dC5jcHAKaW5kZXggOTc1NTViZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uZjE1
MDBiNzlkOWM4ODYxNTUyOTJhNzY3MTRjODI5ODllMGQ2M2U5MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQu
Y3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4
ZXkgUHJvc2t1cnlha292CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC00NCw2ICs0NCw3IEBACiAKICNp
ZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlICJMb2NhbGVDb2NvYS5oIgorI2luY2x1ZGUgPHBh
bC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg+CiAjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oPgogI2Vsc2UKICNpbmNsdWRlIDxwYWwvc3BpL3dpbi9Db3JlVGV4dFNQSVdpbi5oPgpAQCAt
Nzc0LDQgKzc3NSwzMyBAQCBib29sIEZvbnQ6OmlzUHJvYmFibHlPbmx5VXNlZFRvUmVuZGVySWNv
bnMoKSBjb25zdAogICAgIH0pOwogfQogCitPcHRpb25hbDxCaXRWZWN0b3I+IEZvbnQ6OmZpbmRP
VFNWR0dseXBocyhjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIHVuc2lnbmVkIGNvdW50
KSBjb25zdAoreworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGlmICghbV9vdFNWR1RhYmxlKSB7
CisgICAgICAgIGlmIChhdXRvIHRhYmxlRGF0YSA9IGFkb3B0Q0YoQ1RGb250Q29weVRhYmxlKHBs
YXRmb3JtRGF0YSgpLmN0Rm9udCgpLCBrQ1RGb250VGFibGVTVkcsIGtDVEZvbnRUYWJsZU9wdGlv
bk5vT3B0aW9ucykpKQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpPVFNWR1RhYmxl
KHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0c1BlckVtKCksIHBsYXRmb3JtRGF0
YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fb3RTVkdUYWJsZSA9IHsg
fTsKKyAgICB9CisKKyAgICBpZiAoIVBBTDo6aXNPVFNWR0ZyYW1ld29ya0F2YWlsYWJsZSgpIHx8
ICFtX290U1ZHVGFibGUudmFsdWUoKS50YWJsZSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKworICAg
IE9wdGlvbmFsPEJpdFZlY3Rvcj4gcmVzdWx0OworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkg
PCBjb3VudDsgKytpKSB7CisgICAgICAgIGlmIChQQUw6OnNvZnRMaW5rT1RTVkdPVFNWR1RhYmxl
R2V0RG9jdW1lbnRJbmRleEZvckdseXBoKG1fb3RTVkdUYWJsZS52YWx1ZSgpLnRhYmxlLCBnbHlw
aHNbaV0pICE9IGtDRk5vdEZvdW5kKSB7CisgICAgICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAg
ICAgICAgICAgICByZXN1bHQgPSBCaXRWZWN0b3IoY291bnQpOworICAgICAgICAgICAgcmVzdWx0
LnZhbHVlKCkucXVpY2tTZXQoaSk7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIHJlc3Vs
dDsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGdseXBocyk7CisgICAgVU5VU0VEX1BBUkFNKGNv
dW50KTsKKyAgICByZXR1cm4geyB9OworI2VuZGlmCit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXls
aXN0cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdHbHlw
aHNSZWNvcmRlckNvcmVUZXh0LmNwcAppbmRleCAxZWNhNTAzYjVlNDA4ZWZmNWM3NWFhNDkyNmZi
ZmNiZjI5YWZlZTNkLi5kMTAzYjFiNzI5NzE4YTgxOTcxNmNkNTNhYWNlYjY0MGE2ZjU1ZGUwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMv
RGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBo
c1JlY29yZGVyQ29yZVRleHQuY3BwCkBAIC0zNjIsNiArMzYyLDU1IEBAIHZvaWQgRHJhd0dseXBo
c1JlY29yZGVyOjpyZWNvcmREcmF3SW1hZ2UoQ0dSZW5kZXJpbmdTdGF0ZVJlZiwgQ0dHU3RhdGVS
ZWYgZ3N0YXRlCiAgICAgbV9vd25lci50cmFuc2xhdGUoMCwgLShyZWN0LnNpemUuaGVpZ2h0ICsg
MiAqIHJlY3Qub3JpZ2luLnkpKTsKIH0KIAorc3RydWN0IEdseXBoc0FuZEFkdmFuY2VzU3RvcmFn
ZSB7CisgICAgVmVjdG9yPEdseXBoQnVmZmVyR2x5cGg+IGdseXBoczsKKyAgICBWZWN0b3I8R2x5
cGhCdWZmZXJBZHZhbmNlPiBhZHZhbmNlczsKK307CisKK3N0cnVjdCBHbHlwaHNBbmRBZHZhbmNl
cyB7CisgICAgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzOworICAgIGNvbnN0IEdseXBo
QnVmZmVyQWR2YW5jZSogYWR2YW5jZXM7CisgICAgdW5zaWduZWQgbnVtR2x5cGhzOworICAgIEds
eXBoQnVmZmVyQWR2YW5jZSBpbml0aWFsQWR2YW5jZTsKKyAgICBPcHRpb25hbDxHbHlwaHNBbmRB
ZHZhbmNlc1N0b3JhZ2U+IHN0b3JhZ2U7Cit9OworCitzdGF0aWMgR2x5cGhzQW5kQWR2YW5jZXMg
ZmlsdGVyT3V0T1RTVkdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJH
bHlwaCogZ2x5cGhzLCBjb25zdCBHbHlwaEJ1ZmZlckFkdmFuY2UqIGFkdmFuY2VzLCB1bnNpZ25l
ZCBudW1HbHlwaHMpCit7CisgICAgYXV0byBvdHN2Z0dseXBocyA9IGZvbnQuZmluZE9UU1ZHR2x5
cGhzKGdseXBocywgbnVtR2x5cGhzKTsKKyAgICBpZiAoIW90c3ZnR2x5cGhzKQorICAgICAgICBy
ZXR1cm4geyBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMsIG1ha2VHbHlwaEJ1ZmZlckFkdmFu
Y2UoKSwgeyB9fTsKKworICAgIEFTU0VSVChvdHN2Z0dseXBocy0+c2l6ZSgpID49IG51bUdseXBo
cyk7CisKKyAgICBHbHlwaHNBbmRBZHZhbmNlcyByZXN1bHQ7CisgICAgcmVzdWx0LmluaXRpYWxB
ZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZSgpOworICAgIHJlc3VsdC5zdG9yYWdlID0g
R2x5cGhzQW5kQWR2YW5jZXNTdG9yYWdlKCk7CisKKyAgICByZXN1bHQuc3RvcmFnZS0+Z2x5cGhz
LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtR2x5cGhzKTsKKyAgICByZXN1bHQuc3RvcmFnZS0+
YWR2YW5jZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1HbHlwaHMpOworCisgICAgZm9yICh1
bnNpZ25lZCBpID0gMDsgaSA8IG51bUdseXBoczsgKytpKSB7CisgICAgICAgIEFTU0VSVChyZXN1
bHQuc3RvcmFnZS0+Z2x5cGhzLnNpemUoKSA9PSByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuc2l6
ZSgpKTsKKyAgICAgICAgaWYgKG90c3ZnR2x5cGhzLT5xdWlja0dldChpKSkgeworICAgICAgICAg
ICAgaWYgKHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5pc0VtcHR5KCkpCisgICAgICAgICAgICAg
ICAgcmVzdWx0LmluaXRpYWxBZHZhbmNlID0gbWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKHJl
c3VsdC5pbml0aWFsQWR2YW5jZSkgKyBzaXplKGFkdmFuY2VzW2ldKSk7CisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgcmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLmxhc3QoKSA9IG1h
a2VHbHlwaEJ1ZmZlckFkdmFuY2Uoc2l6ZShyZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMubGFzdCgp
KSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJl
c3VsdC5zdG9yYWdlLT5nbHlwaHMudW5jaGVja2VkQXBwZW5kKGdseXBoc1tpXSk7CisgICAgICAg
ICAgICByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMudW5jaGVja2VkQXBwZW5kKGFkdmFuY2VzW2ld
KTsKKyAgICAgICAgfQorICAgICAgICBBU1NFUlQocmVzdWx0LnN0b3JhZ2UtPmdseXBocy5zaXpl
KCkgPT0gcmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLnNpemUoKSk7CisgICAgfQorCisgICAgcmVz
dWx0LmdseXBocyA9IHJlc3VsdC5zdG9yYWdlLT5nbHlwaHMuZGF0YSgpOworICAgIHJlc3VsdC5h
ZHZhbmNlcyA9IHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5kYXRhKCk7CisgICAgcmVzdWx0Lm51
bUdseXBocyA9IHJlc3VsdC5zdG9yYWdlLT5nbHlwaHMuc2l6ZSgpOworCisgICAgcmV0dXJuIHJl
c3VsdDsKK30KKwogdm9pZCBEcmF3R2x5cGhzUmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9u
dCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJHbHlwaCogZ2x5cGhzLCBjb25zdCBHbHlwaEJ1ZmZl
ckFkdmFuY2UqIGFkdmFuY2VzLCB1bnNpZ25lZCBudW1HbHlwaHMsIGNvbnN0IEZsb2F0UG9pbnQm
IHN0YXJ0UG9pbnQsIEZvbnRTbW9vdGhpbmdNb2RlIHNtb290aGluZ01vZGUpCiB7CiAgICAgaWYg
KG1fZHJhd0dseXBoc0RlY29uc3RydWN0aW9uID09IERyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbjo6
RG9udERlY29uc3RydWN0KSB7CkBAIC0zNzEsOCArNDIwLDEzIEBAIHZvaWQgRHJhd0dseXBoc1Jl
Y29yZGVyOjpkcmF3R2x5cGhzKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IEdseXBoQnVmZmVyR2x5
cGgqIGdsCiAKICAgICBBU1NFUlQobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0ds
eXBoc0RlY29uc3RydWN0aW9uOjpEZWNvbnN0cnVjdCk7CiAKKyAgICAvLyBGSVhNRTogPHJkYXI6
Ly9wcm9ibGVtLzcwMTY2NTUyPiBSZWNvcmQgT1RTVkcgZ2x5cGhzLgorICAgIEdseXBoc0FuZEFk
dmFuY2VzIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzID0gZmlsdGVyT3V0T1RT
VkdHbHlwaHMoZm9udCwgZ2x5cGhzLCBhZHZhbmNlcywgbnVtR2x5cGhzKTsKKyAgICBBU1NFUlQo
Z2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuZ2x5cGhzID09IGdseXBocyB8fCBn
bHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5nbHlwaHMgPT0gZ2x5cGhzQW5kQWR2
YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuc3RvcmFnZS0+Z2x5cGhzLmRhdGEoKSk7CisgICAgQVNT
RVJUKGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmFkdmFuY2VzID09IGFkdmFu
Y2VzIHx8IGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmFkdmFuY2VzID09IGds
eXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLnN0b3JhZ2UtPmFkdmFuY2VzLmRhdGEo
KSk7CisKICAgICBwcmVwYXJlSW50ZXJuYWxDb250ZXh0KGZvbnQsIHNtb290aGluZ01vZGUpOwot
ICAgIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKG1faW50ZXJuYWxDb250ZXh0LCBmb250LCBnbHlw
aHMsIGFkdmFuY2VzLCBudW1HbHlwaHMsIHN0YXJ0UG9pbnQsIHNtb290aGluZ01vZGUpOworICAg
IEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKG1faW50ZXJuYWxDb250ZXh0LCBmb250LCBnbHlwaHNB
bmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5nbHlwaHMsIGdseXBoc0FuZEFkdmFuY2VzV2l0
aG91dE9UU1ZHR2x5cGhzLmFkdmFuY2VzLCBnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0ds
eXBocy5udW1HbHlwaHMsIHN0YXJ0UG9pbnQgKyBzaXplKGdseXBoc0FuZEFkdmFuY2VzV2l0aG91
dE9UU1ZHR2x5cGhzLmluaXRpYWxBZHZhbmNlKSwgc21vb3RoaW5nTW9kZSk7CiAgICAgY29uY2x1
ZGVJbnRlcm5hbENvbnRleHQoKTsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDY2ZjQxMTNjNjhkZTRlODkzN2Y0NzU3
YmYyNGJmZjA1YzNmYmZmODMuLjA4MDQ0MDU1ZjRmNDRiODIzOTNmMWU2MDJkZjNkNWNmNWMxM2Ez
MmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAyMS0wMi0xNSAgTXlsZXMgQy4gTWF4ZmllbGQg
IDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vzc10gVGVtcG9yYXJp
bHkgZGlzYWJsZSBkcmF3aW5nIE9ULVNWRyBnbHlwaHMgaW4gdGhlIEdQVSBwcm9jZXNzIHVudGls
IGl0IGNhbiBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNzQ0CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NDIyMjMzND4KKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAg
Q3JlYXRlIGFuIE9UU1ZHIGZvbnQgZm9yIHRlc3RpbmcuCisgICAgICAgIFRoZSBBIGdseXBoIGlz
IGEgZ3JlZW4gcmVjdGFuZ2xlLgorICAgICAgICBUaGUgQiBnbHlwaCBpcyBhbiBpbWFnZS4KKyAg
ICAgICAgVGhlIEMgZ2x5cGggaXMgYW5vdGhlciBpbWFnZSwgd2l0aCBhIGRpZmZlcmVudCBFWElG
IG9yaWVudGF0aW9uIHRoYW4gdGhlIEIgZ2x5cGguCisKKyAgICAgICAgVGhpcyB0ZXN0IG1ha2Vz
IHN1cmUgdGhhdCB0d28gZ2x5cGhzIHdpdGggYW4gT1RTVkcgZ2x5cGggYmV0d2VlbiB0aGVtIGRv
bid0IGdldCBzbW9vc2hlZCB0b2dldGhlciBpbiBjYW52YXMuCisKKyAgICAgICAgSSdtIGV4cGxp
Y2l0bHkgbm90IHRlc3RpbmcgdGhlIGJlaGF2aW9yIG9mIE9UU1ZHIGl0c2VsZiBpbiBjYW52YXMs
IGJlY2F1c2UgdGhpcyB0ZXN0IGV4cGxpY2l0bHkgZGlzYWJsZXMKKyAgICAgICAgdGhhdCBiZWhh
dmlvci4gSSB0aGluayBpdCdzIHdyb25nIHRvIGNyZWF0ZSB0ZXN0cyB0aGF0IG1ha2Ugc3VyZSBz
b21lIGZ1bmN0aW9uYWxpdHkgaXMgYnJva2VuLCBiZWNhdXNlIHRoZQorICAgICAgICBmdW5jdGlv
bmFsaXR5LCBwaGlsb3NvcGhpY2FsbHksIHNob3VsZG4ndCBiZSBicm9rZW4uIAorCisgICAgICAg
ICogZmFzdC90ZXh0L290c3ZnLXNwYWNpbmctZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC90ZXh0L290c3ZnLXNwYWNpbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC90
ZXh0L3Jlc291cmNlcy9BaGVtLVNWRy50dGY6IEFkZGVkLgorCiAyMDIxLTAyLTEyICBKZXIgTm9i
bGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIFNvdW5kIGRvZXMgbm90
IHBsYXkgb24gWW91VHViZSBhZnRlciBzd2l0Y2hpbmcgYmFjayB0byBmb3JlZ3JvdW5kCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2luZy1leHBlY3RlZC5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L290c3ZnLXNwYWNpbmctZXhwZWN0ZWQuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45ZjNkOTNlZjYzNGNiMDI0MGFkMzUwZTVlYjQyOTEyNjI1ZDQwZTg4Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L290c3ZnLXNwYWNpbmctZXhwZWN0ZWQu
aHRtbApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxjYW52YXMgaWQ9ImNhbnZhcyIgd2lkdGg9IjgwMCIgaGVpZ2h0PSI4
MDAiPgorPHNjcmlwdD4KKyAgICB2YXIgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImNhbnZhcyIpOworICAgIHZhciBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoIjJkIik7Cisg
ICAgY29udGV4dC5maWxsUmVjdCgxMDAsIDIwLCA1MDAsIDEwMCk7Cis8L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9vdHN2Zy1zcGFj
aW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2luZy5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmI3ZThlMWI5M2Q4MGY2YzQ2NDZlZjIxZjllODUxNTM0YjhhY2Y5NmEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2luZy5odG1sCkBAIC0w
LDAgKzEsMjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KK0Bm
b250LWZhY2UgeworICAgIGZvbnQtZmFtaWx5OiAiV2ViRm9udCI7CisgICAgc3JjOiB1cmwoInJl
c291cmNlcy9BaGVtLVNWRy50dGYiKSBmb3JtYXQoInRydWV0eXBlIik7Cit9Cis8L3N0eWxlPgor
PC9oZWFkPgorPGJvZHk+Cis8Y2FudmFzIGlkPSJjYW52YXMiIHdpZHRoPSI4MDAiIGhlaWdodD0i
ODAwIj4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci53
YWl0VW50aWxEb25lKCk7Cit2YXIgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNh
bnZhcyIpOwordmFyIGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgiMmQiKTsKK2RvY3VtZW50
LmZvbnRzLmxvYWQoIjEwMHB4ICdXZWJGb250JyIpLnRoZW4oZnVuY3Rpb24oKSB7CisgICAgY29u
dGV4dC5mb250ID0gIjEwMHB4ICdXZWJGb250JyI7CisgICAgY29udGV4dC5maWxsVGV4dCgiYUFC
Q2EiLCAxMDAsIDEwMCk7CisgICAgY29udGV4dC5maWxsUmVjdCgyMDAsIDIwLCAzMDAsIDEwMCk7
CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURv
bmUoKTsKK30pOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3RleHQvcmVzb3VyY2VzL0FoZW0tU1ZHLnR0ZiBiL0xheW91dFRlc3RzL2Zh
c3QvdGV4dC9yZXNvdXJjZXMvQWhlbS1TVkcudHRmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI4ZDcxYjc3OTk1NDA1
YzBiZGVlNmY5OThlMjgzN2U0YzExZmQ2MDgKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDQ1MTMy
CnpjbWVGWk9VKDQjbUxCd1ZJdzg7c1FmODxie1c9TVYkVnB0aitmN2M/Y0RjJXpEJk94OzJLWmoo
VGUpMHpgNjhybAp6REtpR1owNUohTlNyOE1ER0dHZUkwRVI/Sk5MKGJ3ajJSJUJScXl9Kj1YfEZM
dHRnM3IhU1NvQXgzPjU4X1YpNj0KenRvNXZDP1FnJkg/YzJBJV56RHpve3FEQ3ZHI25Jdm1IKyE2
IUl9UkNLTDN7RU9GI1Y0QU8yN08+OT1wY15WaCQ5CnpgI1hQPmI7LWN9aHU7Nzg/YzNrfGBgXkMo
Z30rb0t1aUBMal42Zyp4X0FVN2JRMnNBaD9OPEplI3NCKkVBcEgtJgp6ZWZ3QUFUYW8xZGdaYmI3
N3ZIfTkra1h9RT1eTEUqaUAqMmg4QSQoS05kTUphSD82PF9GWntXRzhQYjNKP2MxTFoKeitlZW9D
e3FSNWVANGtLZTxOeUJLdz9GcWN5SlFgSD1sNEpMfEdqP14lS3krT1VHV2U4K0pGN35rcDRIbWVm
dyt3CnpAJGgmfSo/O3RSez5yeStlOz9aV3lNT2ZVY1lwVUV7bSNHdD9Kdk4hfEsqP2ljaUBWREA1
bGVZXkl2XyNmOUg0TQp6PzYqRztDcUtzQGZCV3tJe3BEe3okWF5OZzNXKHptLX5SQzE1QzcrJXtP
JThiIWFgaj9lRVd4Z0B8WFhRenhlSWoKenBUSFNOIVFKOFdJZXpjIWAqKituNzVNeDE/TyV0X3p4
KGE0IXIhLVZ8TXxDWGZBfkx0YGA2Jl84fi0xQ2B9WF8pCnolaW5zdnN+Xl5gP08odEEjY2k1fktT
MHJDU15ubGl7TFJOJHE0P28mSyV2QWhldDYlRE1SPV5ne0tYRmtfYH40Kgp6KlZpdzh4YVl0ODFx
Z014NSE1Z0tfVjRgdyRLTSl+PkdsSmgpfVl2NWh0R3tZOU52RWV6SFhuZEgrKzhhTHdScG8KenhO
dDBye3VrKXF7PUw4VHhlTlVKQ3Y0NEVnYTJTez98dCkrWWN8R2w5UXV7fVB0PFZ3PVo0P0FxJCst
WmhhfH5nCnp7SUxEPDdrYDZjcHtkSX5wS2liVzEmODZrX35CT0V0Sj8kIzhaeTRfQENVY0NEMVo1
akplaVV8X19gamdodzklPAp6bFVHNUxlO3dzJmw7bkJLWD0ycmBjITlUZzttVigwSlRJYzhXbTxO
NDh7JiVSVUdLbk87NktrLXtJTlFqSmc8QmIKej5nVmZMb3ZmZUlrNTlWY1BZJXkocFB2SEhwV3hw
cTtkJD87R3wkaWNEZzhkWkBGJSRMPWtsTD1Qd1AraE51UF4wCnp7PFFzK3s7Rmh1PE80TU1TTWB5
UHN7Smw0eD9rLVNecHZwUVM7eEkxQ35CV28pQTgmYDV0VTdebHw+V3pIU1hmaAp6NWMkdlZNUldi
ZWtqYEQ/M2JpSnh0dEtrPz1MV3A5e0NwcGYlalk8NCpJSm8xaXtDV3l2PkcpfThNVDV6eV5CJDYK
ekBZe202QF9qV3RjO1R5d3BYYX1AKW99UE9lTGRaZUBTSTsmTHE0P2tlJDBNTzNvPX5TeipXTG16
T2B1My1zVTVwCnomdlNpTWRleGZHXlp6PHNIUC0zcEA8LW0lZ3ZMXzd6dSUjJFBWbkJ+YG1ndEtX
dC1+emVDXmEhK0lSVnkpPlBLXwp6WHxKaWdAOU5YQ3JpIzgjSCU7fWNfSjZnanNvLVdtSj5SRXlH
ITtEMiZ1TTV5USsrUVY/YlNTPnpPVmRHN3QjKSYKej9fV0s/JVApXmx5TU1hPV5YTCFnZjYlJCRf
e2pHZEp3UUkrcktgdjdIYDxGbFpvaz5TMmh7YXJ7VWBCTCVWWVVqCnpleTZXJGhDZytgO25VeEx6
Q1Y7N0tKVmk8KGxCdEtUfGMlKm14ZlAmfDAhUHVRNEQ8YXRNc1NUITJmMUBoUkA2Vgp6anJ4OHF1
T0d7VU0xQ1Y1NjVwamlXaj0+NGVDflVvS2ZsR1Zfd0ReWl9melB6bnRQJSh2N3hvdnRGKVNAd1l7
TnIKekBvUXs8Q3JeUjwpYzFBdiV6bDE7KWh2R1F7fUtQcyRMSU9LJW00QjhyK15JT25kanJ2Knxp
U3MqUFFYPTladmFJCnpuSj5BMHtRfXVUYD1SVDdyNWMhLUsxYW8kenk1I2pONU48TERaZDM3IVR9
ZmtJLWpuMWRIRV4qc3JSZTdVJlZPIQp6U01UVFpHVD95cERnSy1rS0VzVkt6TWtzcWZxdHdIdmMl
K2IoO3hGY1cjQ3owVUw0aiR3aHgqM2N3Y2Q5empvJikKeiNudHhPPkY/Q3gkU0NDQm5uTnp2Zz1i
Q1R3blR3RyMtVVkzbyE9KGAkdGczIXlmPnZ2MCpoMUg0MEJ5VSZyVylxCnpOVWMpellVPmUkO1km
SzU7MklTbDcxWEAqWSN8UDA4VlhZIStCWmVNT3txbGZNcWhFdFB4bSVETk94RzlPUSpNVAp6N2Y3
U09PX14rdXJsVXIjJnNQQENaTHp+KypWPngzcWs8Xm55MlZtTmR5T3NxeDwwanU+JTt3NSZxbX0j
ekVPbT4KelE4MTVZWl9SQmUhKGtXZyZUaVRyYCY+VXxMXzZvd25ZOyRudTU3PXEqT3ZTfUJHZHVl
RnIrd0hXdTRzXy1UOXNwCnp7PXN5VmA+KmNfP0coU2U9YnQ0e2tYYSNOdWU4X2JPdURedWlRNXky
VGlfV1Z4b2pgU29xYT56OTBtM30+YnlDXgp6eCM+eT5rRlJ3QXpyQ3t+eUl5UGxPRm42XiZlPVhS
KGYtfU4yPzVLeFdsam1UenY2YSUjcjs8dFV+U3NsYCpsQ2YKem4hfHB6SX0tO24+LS16c2ZBYn5v
b2tJSnlJfD1LOz19K2JScnpvXnJjOzJydWN5KVF8Pk1FSDMtQ0ZUXlM4MiU4Cnpab29CMzVMMzJ2
S0V5ODZTTSNncDkyVWJsWWBTbTNeXmVfZjl8IUhPUk5wX2woYiYpcXxFS28mJjdYTyVueWdJOAp6
dThtJkRxSGJzLSF1bk18dSkxQDktNjgrVGZsUCl5NTdjS0k9IVp8PXlBcSMlRmBWTDF1ZH1YUWE7
YmYlcFNxNkYKenIrKEB+S2JFVSNjdDEtVF89bV9QRTlKPWxfVlpnQXtJKERMd2gjUWE1QiM8ZHtJ
KERMd2gjUWE1QiM8ZHtRdDJKCnp7RHokdDJOZFloRHh1VVkha2cmQyVRcCtgajYrSzNVYHowb3d2
aGBqLWowclVfel40c3RJJTgqQSpncyErSSg2NQp6dlhzSFh5KTgjYDtVJj1KTDNnKHtJRkVvYWAo
K0QmJkFzWE5hP31ASWBPQHtsSFVKd3U8TGlZTktLUnQkOUpHb2oKenQpfHQ1QmlPe0JMbEVQT0Qp
aChtUyZ8d3NESFhuY2h8RytGamVEe3h6KGtHX3pudCExc29RYDcqP2ZydHNQUXA/CnpQaU5rT3Jo
WSFaSl9MQUBsVkM7aWsjODxYNnZ8I2J1eV8+Iyg2RlB4WWlHZCVQem1sQFRCanF9K14zVn1JZntF
MAp6Z3F2PGhSKDgqOVlwWWBFYzBCNkdTOWJFZk5uVFZAemhANmNKPkheRjV9SEpIcVcqR2hwMVNE
YWBkKDIrcW5+VXEKem1ZcXwzQGk1IT4rZEs7VnBeaGNMaX1CbCNeIWd6V1cxXjUteCswelA/TktR
QT07PF8rPEZgVypiQEI4NXBxK01qCno3TFJCMCsrS2A+Tz1DZ00+M0NkTl9xQEpKV3k/bkF6X35z
KWxAWHFnSCp6KWBzemBnPD0kfndQLThuUEZJa2N2Ygp6X21fTT9DZmJqKGBCNnFjT1h3ZGJBTnh4
XzcwNnw9PFI5ZzhJX0Jgb0skZjxeZHBGSUI5THFuK1FGd0JkYFhVPyEKemBgOUdYeD4heEVWYnxw
eHNOMkRNMWdoeFgpYmpNQmo2aC0rPVlmSEJNSD1vUCs5ek1LND4jM21iPGcrWEZnVWtLCnpneGhX
MDwmUHUpK2Y0VEhvVlpjTjwwOVVhSylSODReKiZ0T1J0PHVkeTJzdH5RVipBKTh8ZUcrOTU0SEg0
ZSpKJQp6UX1nUjh1MzlMcVleYHE3KXk0RU16Xz5jYj1XOShGVk1paExLKS0pT0p9SDB0O0V3LXlP
QWgrUypHJT4kZ1Q8MWQKekE0eCp4ITNYLTJSWX02cSRuYVleRXxxJCQ5dkFwWE5CKlQ5bXhwJD1B
cEolXmIlV2V+dFhyQCZRTHI5eFA0KzRLCnomLVF0dmZHWXVyXmhPZl5pXlJ7KihgUCkwRVJURTAp
eFNweTZ7a24kP3V7PU5LaihESXZYeThnU1krUEUyWDZ4dQp6b31aYDM+MW9RLU1TZDY7QnpSbUdH
ais2cF9YOG59QFdYP29XeENXNi1ObzYlYUpAKVF5c1gmYC14MVRlcHotQj4KeiF+Pl9pekRtQnRf
cSUlOCZDdzlhSjBjQlhpYUphNFIyKCpZWkBvYURXT08tQjBkKiRGIXpIX3ZqNUdEVGJodXdFCno3
ekw8MGxJJUBYam9xMGZHR2tVdkIzKnBsY2lKQiRwQzlLdDU9ZkRHKTJOLVBOO0RqSW5oOyowYGZO
U0spbERZegp6RlBGRk1BIzA/XjJSZjVDaFFfWCFfaG5MeS1XfmVVQTk4RTUwSHgzcmt2KjQmfEJ8
T2gjNzEoezRfUGQ0Y2s0LVgKenJiMmtvR3RDKEBiYSNIN01TRktgVz9mI3tvKShyUHBSKjhvYUsr
JGV6Ml92Zlk+VzVmTyVKbDVqRih5MlBEPDxxCnpFKGN3OT4jPTl0YEVFNn1kLWMzPyFBUjBtYz94
RDV5XjJxTCE2fFhsVVRZZm5oZG8kajVAJGhEbStyWn1DKnwwLQp6VnlWK0kmZTQ+PUtwJGBMS148
U295MXp4SWN8MGpEWStHUiZCKGdXbz0qPUE1JV5GTlcqcTVTWXhkaWMwPFVBbE0KelFAQmEyPl9f
WCF6T1hzI08qejZ3OCRJczxRPUROU05KTSs7dT4yVmNWa0dTRmRTWDwxWWFeQDA+elE1LSMlOUUl
CnoraFNjKXkzVlBvJVVOUVdGP35+PnUxYXF+YSFOQVQ+fFFRdWpBaWxuZGhoSkVhUDN+Ujh6dCpW
WGRoPTNTbmB0Qgp6ey1DYCEyZ2l1aHd1eHhsMSVpeUImUCUyMkl5dDdmOFBPemx0QT5Aczt+T2U+
KjAkMjt3Q0NgOGU+b1p7QG8lMC0Kei1nPkR3KH5JSmRjUVhzTmZITXFxNWxaJntjRl9BayhnJFg+
JWYjdGcxR3lUOHdAPjxWJk4jazZYYGYxdjtnWVkqCnpxWT5+PDJRWlBpcHVgaUl4MXsldyQ0WChU
JENlc1NQaHNhQ2pEPFoxYDt9fUQtc3YzNmIxVjNvRU0+VXtaWTt8Iwp6MD49XzJMd349a29KUCom
WkpJSDA5VXMrd0JBU0ZTSjQxflNxMms7Zlo3PmVFdVR5bGhAPEg5QylieWFlN2JHRmEKelBgXks1
VVlhKnA2e0NkaGcwc2kjbGUpWUdMU0ZfWjh0fXZHRDU+N1M7JW9VbjY+c3Z1LWBMZz50SEArY0Rh
ckVMCnp1SWhAUz0kPU5mQDxMRGp1K0V5dHBPQ2xyRU1kWkAlTFhNPmI0UVdNaylNVGw+bFQtbUYm
U3xrQnQmXiNrNCtaNgp6SW1zKUAxezZKKmArQ1BAcFYwKjNPfDg7KUgje2smXmFzdTZTd0ghTWN8
enxPOyg4dF8rLSQ0NCFPZ34lPHpYdz0KemstSVEmUWJQRH5eJkh0ejdASiYoe2thOzlgRXVgYkdR
JV9YXjVRRElkJWlUfHNveFJsRCN9KDNeOSZZYlFPQSooCnpabSNDM0k0PWpUMnc5UG88VypwOGR+
c3YtdGV5ci14XjZ8TkdHWl53QEI0SG9rVmBPallTYk5Re0J9UnAkS3NlKwp6JSVJOENMfDljbi1R
VkxLTEYwbG9afDRHZzJZMnNlMnZfO04qQkZRSFY+YGFOX0ZqMVIwPj5fVE1EWGdac34xVHcKek9e
LUNPYjhianZHZ3xNOUhAK1hQeDkhKVlOc1YoP29Ha1FndVd0P01QbG8qcGowMGZ2Vz03SElFb2po
JV9qOHpZCnpyZFpjekVGMF9ubHZhXnxqXlUkU2smUG5uY2w+Xk1EPz1iZWAjQ3NYPT5HQXhTUGBT
S0o/REA7Z18pcz81M2YtaAp6Nn1AJldMZ3NtP0Z3aEFOPTVBZDVBaVBUV05jWU8/ek1SNWh0ck1V
MUk2PXxHUTlvYElUUlRmezZnUHE1VytURGgKeiRoa15SSEZaTF94N15rVEJ7Wns9QkY4cEh0MUMo
MFooVy1AQG05UDx3SDZ+T2l8S0o/cSZlPnBEWGFedWNKcWh5CnpJT256R1Y+ZCUjI1dyQmp5U2FA
K3lAcHx7OGJeUGMhV29lSzh2LWhobSFFY1FjVHJ3dzl+aD4yZlI9KSRxJF9MVQp6Q1lgVm8zaXxl
K0NDJmB+UXMyQElrOEpYRVc2OUxnYS1WS3JwdGdsME1SZT41UTU2IV4rcnltJWd1OFA1K20jaWMK
elpqOzUmK3d+IWhNfTN2a2E0QyN5TDhDQDVwZmZWJXhxRHhxPEwyRGJVMkImRXEwaWIqTjlaSWVI
LTFgQShYRCF6CnpuaVQ5diRrTlUySnE5X3BncnwtWCF2MG0xRFVWRiRITjsoeV52TUZUaUpEaj9D
LUVyV0Z6b0oqJkZ9TWhycTF0QAp6dUZPanZVNkBVI0psUFchd0JLRXIkeGw+KDFkTlA2M0k4VCsp
Y0UzN09lWlA1PSZHNzArU1dLUFN9fHduO243Y34KemhRRmtFQz8wcWdxbDkmIyNLcFZmaHxaTkVP
VShuTlZ4cT54N2haZz9QMFlQfitEV2E2RCU7KERpTVBOeHpoSSUtCnoqSi0pWEZrJiRoSW49THhY
WUk+cUthMEkjYVBUdmopZkNedWJ4OFlOQCptOTZZS0VTQU1XaikoKVd7QFdqbkl+cwp6QG8ySHJK
PDVmOHNmTFJgYnR2ZnNhcE9ENnEtRUx+bmpSfS09UTN5e3R9NjkzdWhPZEUmeF5UXkImPjkmWEo9
O3AKeiFSRzgxPnU7RlMzWSM/PmBFMj8wT0dFZDgrNndEVEh6JVozS24yUWxTUD47TkMxaCo+PChi
S3ZoTTh8REAoJWFJCnpzQnpjUWF9N2Rfdz1BXj1ZQUhQZ3lIYzs3cVkwR1omO15EXk1oZnkpUmdz
a004TVZfelljbkVLYTsoPXJrYCpebQp6UDlgPTN4bjxLbShlOFJCOClQT1V4d3tnWGM1N0BvRz5J
VlAzYSU4fWlNKFVNXzA7SEdAaWdeYVJfQyYrciFDNzkKeiV3dG5UUDRqTWpQNnhxUXEqeFZOd3tP
XiooPWc9Yjh6KGxKaWgqcmolKXt9Q04xM1JOX29WUHphJWBJN1l7dExUCnptcVNfdiFtQ3o8V0FU
MHpFezMkRmF2b1hSSlU9NDRfb1NBdXF0fmxfJilaeFc5WiU1eStiVTFZZFhfS0VFZkVVQAp6b2Jn
TGpVV0NJTW9SRCk/JUpCQjUrb2U5bG9ZaEFnYk1WLVJWMlg3OzQxT0l9PFgrIXVUcS0mWkNZaWxZ
JWskZkIKelNsa0U+KEA7VmlGUG1tZXNWMSpeT2ZeQzE5YEJiJEpnZUg+ZypOVXJsNHJXQnliZHE/
NSRiWG0kY1o8WDdEdlJzCnpiWEBGPkpvWiE7MzNRRHJrS2xNIXFlcCR4KypmU2I0TXRMREhrX2BB
PWkoVUkpRlMyS3g5Vjd5ZFhrVDxrQlpIbgp6IyVmSDszWkQtVl9ZamRiSkV3fTRBS1RHdyMteHUk
aTN8cGoxWHE7bmp6YH5sTz5JSUUlc3gjUi1rWVN+aDMyaD4KemIoNV5rITU+dTA5VGZ8a0Q/KUMt
a0lBSVpeOyhoQGEqbX5veyVvOUUlKnpSPXNnZ31jcWlmZEoxJVk7UC1iOV5wCnphWjJ8fVF0NkIq
RGFqMG5QLUU0KUEydV9AUkVvWkktT3o8UHRDcz97ekVBaiMmZVRwVmNaRlFwe1kwU31NPXY4bQp6
PklGWD44cHZLUTlJPiFiNDl1Rm51R3VGaU9rOEB7dFpGRTUmX15aVU4tKGN9U1Q1NT5hRjJzRzk8
d0pzek43Vn0KelFPcjRgI3RVTTR2aGJpfHRWbz5LUDcydCpQKHlmb3VoKCh6PjElPzVudHI0JUhA
X2lMT0syIXtIMG1Wfl8yJjZ6CnpgSkJtKk1yWUY0MyVNeykoPSpTfnZeemtiQW9sdmBXUng2YytW
TTRPPnZQJHZeM3RldFRHSkVfPm9lLUomem5pTgp6Vm5ANzZIUUd1OWNmemk7YG8oZzAtTlQrPGpF
eytPJVp1NkZZeDcqWGpaQEFXcWZ1TFM4REFSN0F4Mng4O2JQVGgKem57MTlHR25oOyQrdmswKGht
ayY4az5NVUZnZ0p+WE44WC0jVHdnU29jQ1h5IWU5dk91QVlhOVdLVn5Hcy15Q35sCnokTnsocj96
fHEoaEZ8Zjh5SkBHUUVzanttaUN7KlBlMXVifmFMczhgbTYwN09RUzdQN2VVPypubyNFQ3lJfkFQ
Nwp6cCR0PjlkP2BjYnNlKmFuTiotTFlyUEpvPEklIypSczNZQGsxKGtgLVdGVFNuZEktV2F5cj15
WT53QSRPXzFTb1AKeklnT195Kk54PU9heUJGIVh1QDswIz9AdWIpRk9HUCY2SXNFVl40fih3dXdf
NWZ5UUNBOFAjTUh4NVI1aChwN0Y/Cno8JmN8cVB6aT1qQUh5KDF7SSZeMWlWT0JaRzRFJEdMLVU+
cSl6ZyEtQEJUWE5LKSlHLT9PbUllZGJxQzFuNFopKwp6My07I0olWDtETDwqfGhNbj5aYkc+flRo
aFRnJkg8c05gWS0zQygwcVhIJUdHYEAtND4jeWV5JG9vcnNYbCojPUIKekAyXzFnQFpJYDI1aU8r
e2h8Xyo/WkJEaW1aVUZHNGRYSSZ0NSEkO0tXdUJ2X2dgVSM0R31ePkBkfVh+RiNGa3N2CnpyZTBx
OEwrPmxgY3BKdW12O3RhYTFkcHdhdFNXazRZZn4+bVhOUn5iKiRMRnp2X1IjZG48dil1cU5odmd3
SnxMQwp6Pj5OfUFJIytPTj1+SkM7IyQjRjgpbkF1UkJrN25sR3B+QjxZbj5pbkBBaiRNK2IlZDM1
Nil+YyskIVhtdSZQYnYKeit8JTdJQzc4MlBSMiMtb0x6eVc3b3QxQ0hgPD5UUi1TNjBFbjhmRjlv
bmhGfHMlYTIlRzgxQ3ZNTW96engrfV9gCnolaGZrRjdiTV9KJmAmeUokXkNHe2FUcD9SeG4hU0pI
JmJkWXNlSVlnTn1YdyQrT1RLRyNMeno2eVN7I30lMlBacQp6dncyMUhrfllqdmtWVG9VQHF2NEBj
NnFYM2JzYSQ7O3gjMHVWb0FYSG1EcktpVzRWblVmSHA5d3tUWXBvPXNAcFQKekZwMEczZFROP2NQ
VTVRX3k7PEFvTURGKG9yNi10azIhY1ROeiRtNWFZKjd3dD59MFdebjVsVSNndGFeKyRtUUk+Cnpm
Vy1CPEkpam9tSE19Syt2OUdLe0FQWlA9eFcxflVCMndDTzZQZVhHI0FhQ2V5UHVWPHBJbl9PP19R
Yk1kMWE5cgp6K2JnfTdVZjtjJEV3S2xAUHhwSCo4bXY1MmZFKyFrIXNoWXklcjIpRUJNbD5pKlBa
IWY2NWskTiN8I3Nwek4wa1gKek1IUWgtVy1xdXJQUFhUMm93VHpsJHppUmMmZjVodURzaSY+RHFu
Ozg7P0NUbTQ4ejV9SWl7YEt0PFA7Q242bm8pCnppXiNQcGRlVWQrdnVxZnZxTkVSKEBreCVBOSE8
cntpPWlDcWZ9SklLJU1HcXJ0QlgpeW09byNlZ2tDbTVoUk1OdAp6QWdDVjAxKCYtPzJ6ZShMcGJi
Y3BRT3U+JnJAUktzIX4paXRieUIyNEpuWmtaNjdpPyltflh2WlFJV3BiI0pDWjIKeiZVTjdDPWl9
K1lwaUtEWUUrczt0NnM7bkBqejRqeDtQSW9gRl5xYzwyMi02dDd3TWJKKmQyRWhKKW4+OWRlTVlB
CnphSWJTUW87Yzkmb19iciQ/WF94KWohRH1KPn45NkZXM3NPOUNWdDFKWXhQMzdyUk4zaSVzcSpS
U3F9eiNKaTdLRwp6VWUoVGo0N2NxO0tZXiFFMkpSTmglTlhWdHZANlopSWRaYj1ZOyE4JjklWn1w
KTlOV25UKVNfamckMmJyc25BPTIKeitSPzYzez9JTzVTPkU1RTlneiZKallYS3paZlYoZnJRZXZg
QjgpO3FvdkQrXzE5RGRMZGNKbkpPP0RUN0xgYmY1Cno8dV43O2ZrI2VtN1A/Smh1ZXlwfFJsPXNf
M2B8X0hyRnxCKWIzT09WJVo+M2FkKVhMMGlRVTY7KzFRaE55MU5UOAp6JW9OJXdlc1B4YitMdGlv
Zj52ODVaYUUtJmZOX211T0BZQj4yWlRWZnRRTENnXlpKfmNgI1BWRnh+OUZIOypHZVcKemRLRz16
PEAoSipOUDYlaSh7PkRkSG1pYDtoYjZ+dk1ld1FfOy11Wj1QVj84XjQ1aUImcVZXcm52dGZKYitw
e0BtCnpxdUxBJXBqJXVlLSVhUCpjR1o7OVNjfl5VOXQtVGxIMEFVQDg1am1rN2pJcGltQWEkWWRr
MHBoJC1LdkkmZmgxcwp6OzloJjZeJjVXUXNwbEspKk9wbzB0RkImIUJEdGxuTHNGZUZRazBEbkBD
RDM3d3ApQnQ0aWxIeGloWk5mJXw+O0MKekRNUmpwdFlVVHt3dXk0SkwoTUNQWThtO1EmZUBxLUdV
MncoWXIodE44WFRTbiU1bG5RY35LKlhkK2ZRXjM/Z2lnCno+Mzd0JFZSVlo/WE9xKGQlcktjcXdy
S29kVUhVcS1TZ3w8KWhNZn59VSN+fn0yKXIlb1RuPFVSOTxBcikkVUtqdgp6b3NwXytWYnNMPipY
TTtgI1heWSh3WE8zfVUwfGBGMG9nWiQtZyl7ZXM3JEE+NHhXQDxGP3IzUmBJVnAyS3NxfHMKeiVx
RkJpbFNXfGBnblNzWXM+IUx3X2kmcGpUTlB7dGdzVHN1TlozNXM/aGtAd1VtUDkqKHNZMj9aNz9Y
WEQ3O3R3CnolLUZHTSRkTk4xRVA9VDs5bUgoJEVUQD5EM0c/bGV1fm9SRmI9YjVFUEZzP3JofnM1
ODs8RyUyIV5RIzlrQXhEfAp6Yz5xcSRJKHh6bzl3Pjs7aSZGTEdiYE52eig4UD04PEJrOWJLaE1f
JlJ5XzJ3P1hLbD9WVFU1LU5fJjFMdTQrXnkKemg0KHE0b0FUcXh1aGMkTVFqIzFPPWBjPE4tLThp
MElPaXx9eyV1N0hXLXY/WkEoVndJWkRWYEthRCo3MFI2Jl5zCnoqIXBQZ1h5fUVkOzx+MkZxRTcr
UzZ5YHFDTVUtPFh1LWYwdyhCNnF+PmJDYWl6R2s2YDQza0IkPGFGa2U/WC0/cgp6Sz5HSVZ6WVdR
TmkkUTtIKEEoUHx0K3IwTDwpc1J6VF5seUtlPzJKNWVFV3srcmsjVExiTFpHV0d8bi1ZTUs9cGYK
emxmajFtKiV5eDQ1KHstK0Mmb2hobjx7R09KWFgqcXN8fUsqR2U4biF3Nnp3ZXUjaDlSLTBQSGMl
bl94fTtUezEhCnpqbWhsME05Klh1eDEhYCZDQDZCfGxoI1dOS05ENHI4OG5nVil0JWliWW9XJHJw
Y3AzfjlEQ2NnYClqPDI9M2BLYwp6PWdwb1hPYHg3XkM2NXpIcXVZfnxHOSpCTmNJQjY/b3ZBbF9w
R14hYi02YEMkR3g9dCVoYkI+P0dHfmZVMnNUJlgKelctJXMrUylRQ0xtRExORiEkKHRXcmg0Y0JV
dU4xNDM5KDFRQWglWGxVJlMxJjM9JVU4X3cycFhrVTJgeComNHRNCnpWKlUyRllta1QyMHlnQThT
QTkkM01WT3o7ZnhFRCRzbDJRQ2c+VSF4U25tQnJpdzZCc2R6QEFiVy12K1MzYj9mMAp6SUpvdzEw
VnZTZXoySnxVVT59R1JkSjZeUC1GblklOFdIPXJiY3J7ZTRgI2BmREBOV1lKaCl1X15yPmVKNkJt
VkgKejxPSXFteEJeSE94bEdRekwrfHNjdTgmV3VSYFIyfTVyPWdSX3JrbyghX3hSX2RnTjNkS3Fs
eCZwPW55KWYqOTgkCnoqezlsVzQ9PXRaclYybmkod2BWcGN7WmMyJlk7JT5AeHRMY0JWJVAhTzhj
cyg9fGwobEdWcXNZPVdqTiNHcE9iNwp6WDNkYSRTaj5yXzQ+fVE5KSZ9SXY4Pz5MdVNaWGx7WStN
azZePU5HeUteTXltV1QobkU1M2tSOGpwMzlXYTFNQnYKejJ7dTJqX25mTDx6V1JEUylfUGImYEZm
PU1pJSRtTGU4YkI/aT5QYl9xZkhzZFl1d15SKWI5JDspYUp3YCMzVkoyCnpjWm5ePSlicT5wWGpt
RWxHVWtMX0UramphXjRwYDFaPFU+YTU7P3htVzg9Qz5LT0Q1fHNyMn5aKDlVe1dyPmkqaAp6eSpi
fEpgfS1ieW5IZVlqUlROcHc7VFZ9dDN6Xjl5e2NfbEBseGpgPT4xcD9yN0YkXmI8Pk1RLT1LSG07
cnY3T2IKenVoZ3xwQElZNSl5WWlJfT90elBXNyRmajhHRnxqczZfPVV+QSo1UGVIeUZBPHcwZHlB
O1poZ3tpP3p4SVFeXz5DCnpQelllbHRVWWEoYDdXQF9kOTd9UkNHMVhJQ0ltUEBIQHJhTXNuX0l7
PTV+fFJ5UilhJEhudE1PbW4wVWsyYkFSYAp6YlZxYitaM0I1WD9vU3ZVPU09ZFRYOXNiYTczSjdO
WjI+WmEtNUZMWCZoYlh7Xm0pakp5cGtmRVcpMElsTTt5aDEKemUjXl53OGd7SDZDPmRWQDgmZz9W
ZHxXbj44JHcmWmNjclVheDB7X2VGU05aKXlORnorZ2ZAMVJtK28pamZNWFUkCnpnUUpTbGo2O18x
akwlKTIjbkFuMEA1RUgqPmomKGpqbEhrNHFJbTxQYCsobkc5cXpUaHtocENkcWlCRVVjNFRrSwp6
YjA1YShTWHh2eD1nJGhAMm55Tn1wZkY3bmk8K2x3R0tvP345eWs0VlZfNUVxciZxRXNQVUFiZEMr
SSptQkdjUHgKem9sWlE1dj1MXkdTc1d6cztMaCkmRGVUWj5GNmVENUV7VEMtR1h2Zz5ffXBmQ2E9
WGd7PSU3eWpoR3U5bVgxN1JaCnorY2wrO0NMMUNvbC0xXkdsbWwzJHtaeVhrVFdJQFo+TjgrVmk3
QCghP0YlJmJVbkBPRXVKSyY8I2dOUVJoPFVycAp6b3N4TVZsWTJkclBtJUg7JCkmdHJKSi1EN0cj
Y0Mze1koXkJlPU5tWUUjWUFObz1LOEJ5NU1yIVVJZTMrd1EqNEwKemdFciZKPV8rV19hVytJKXc4
XjNeQUJTczRsKzU4ITkxTEU2YnkpI1RqfihBJGNGRTkjU2VxMT9rbnlLcVl0fHp5CnpoVVBpaCtk
R0I2ZnRLWTlETk48OGZsQTtgezFDPExKSHc2REkyc3F+JkxBaGI0bHAwPDQ7UmA/Z0c/OFh0Nl4h
Ugp6RVNIWjk4aktxYHR6eE1LUnVRdkFjbzVjWjs5c2hiO3I4cCpAZCU9b1NLSklJIzZQYSowNXp9
ZGt1cntsPX4+b3cKelIqTC1ebz5mODB1UVJ1d1V7dkZJYkNJUjhDeiV8djE3OUUkU2paPjBtWXpY
VzhQYTdsaDlsXzdkPG5xZmkleD8qCno0K0JSIVN8Kz5oKHREM04pQFAkfkdLUFUwR0RIVGFfM040
bF9nWjdgUzlhd1lgSjY9UTJ9fGJkeV9wfD1reFdqfQp6dD9XRXlae3hsVyVVTHF9QE5vcEpWQzln
NmFtalE9Nlo5PElAbGp6JDtkd353Y3lrXk1fe19AU1pKczspezZkUlYKenskU3RXKXIhaWg3M0gk
ZnhvZSRoK0NofFQybXlFJjF7OGozO0YlWGktRnl8Z0g1bGxsOU9DcTFwQyNFa2I5VjtBCnpuZnh0
VnI4OFh4MUBVXlNJIW5mXnV7P3RMbylBP3B4OEBCMVRBI1JqZD5mQTAkK0UwYXBvQHR7c3FKe2Nv
Q2QlcAp6SWNzKmdHVTtDVVFLJHZIZGZNM1RyMENvT0lBc3RNQk5JYSpZPDQzekJFa2Q7ZkY0VENU
eD9MYmIoKmk9RzwjckQKemxeemstNk1UZ2JNUHFNJG4lcEBOdHpHbW9vNk1fM2Q2fChCOVooYi0x
K0JLYUJxcmNTeXo9X2M7S2pKPGQpOD5SCno8UW07PHVkdlhJKmMkPyg3eEQxYVFLfEN3QElza0ZW
diRpKmhCNmdEYjNNY3cjTWVAVURpbWAlQzd9RExeMUdKTAp6PCllYEgzLXwoJWR6aTV6ZVk9eHl1
b2xZbyFyVTc2VTAjbXNAcmZAXzB9YTZtajN1IyQtYU5ucVhxY2EwOUg+K0cKelNxPylrUkVjOTg5
eEd1d1RwfCpBPjx3VE87Q1h2SG8kOTh9aUlTKzkkMz5kSVBaWUA8Rj85e0NqNVpZNEFnQTEhCno4
QmJCdl8/bE92QWwpMG9aZGkmKjZDeUl0XyF9PktVM21KR1hrUDFGWCV8cFF5JEIkfT9MZjJSMyRC
VS1KRVpDdwp6cGJNcyFxeHs3c2VhK2hUPXtCNiZycClobHhYY1dsJiEjaHNXUE1Felh6PzxSWXM9
eyhoVTE3RClgcHktdDEmTHQKemc5TytgeW49aHhsYyYoNU9CVjNrPjN6VkNuaiZxdDx8YWdKQm96
ZG1WV2okekEjYD1YO2EwbzctU1VUVnMzSG9pCnokaWNBXlZxb2peRyNmI0stfTBIQE97K0lrJShS
TTBLZEAoU0QzN0RtSSlRUW5BUHpJMVNHVUNQcnUxPyhSfiQweAp6eEg3QlM+Yk01aDwySiVqO0Qk
YyVIO2Z2el51XnZeXmNxVVFOWFYqfmpBVVhZSWRyLVpkN3RROz1pZTxMYnxgWEkKekdVbFViMTBP
UkVkQTImMj9RKFB7JmM9fjk3PHt4NVpobShVISZUTk9DJUFEdHskYHhIK212Q1IpYzQwWXhTYmsl
CnpjYHpBKjJKZ05rMG1JbDx3b0ltaCtsTkU7eWROZ0w+QVVNVCN4I3QpT1ohJmQ3bT1BWk8zWXY1
KzYmYEpXNCN4NQp6UHpHZ2lVVF5UMGFiUn4/SDhEIVB3ZDRqVV47eFJEWCtvVjdATG5GV0MxJG5k
OGh0Y3szbl5uR0V1JTN4d0g9I1cKekZWOEp+RnomX0NoPmE5emEtQDNpUiNYYTJyaWxqYTglM150
aWhGckIyRikraE8qYVgmS3RoNCFuYUMoZEtaNG9uCnpIY1orIVNwQSs2N0hTM08zfHpTQERUNWhf
dVJnZmBsdklfZGM5VXw7dkZpYlNreCVLR0pnWFFqPFZ5OCR0WGBfQwp6Kz1GY3l1MXc5V0kye1Yx
LXlNZigzeUA2MTM4X0ZgPlYwXnxtTD5MMk5rS3h1ZE9eeyF4d0dKMVIoMClYR2MtdnwKej9Jb2Yl
T35WV3gmNkopQWFGflB1Q3QzeG4+K0d1cEhQekAqVUtDeTxzN3IzSTgtKCs1MEpIcU5NcnE4Qjh5
UTdJCnpAPmx8VnUlTWFAUE9VSlglK3RiRjFvJkgjUWM5P1RMMVJ4bTZWdjI2d25jUHo5Z25tM1ZG
IWczLTxOZVd2V1BjOQp6P0U7OWFtYUBMTldzUUc4aTFtYHM7TFlzOzAlYyFhKi11Nko4Vm1JaSU7
eEolck12VTZ1TCFxMmpFbzw4Zm4wR08Kei1WKjtkQCNIUHQhSUEpPlBHJC0tbHpMWTNWWntMQFpO
UHQkTkBuKFE2bClGaEg8NEBRamQ7YyRgPkpFTUxqbUQ8CnpkLWE9M1hhLVhjVCMhdUxGY051Q3dx
Xm03OzdZfSZWTCNaUlVkRCQ8WHViZzYyd287TFoxO0NvRWhXOF4+KHBXcAp6M3lKMXNOP3luUGxw
ITskO3Zwa2dpQEZrI1dgeWdlVyEkcSNfUX4kdFEmdFBGVE5tYjQxN1NxWkhXO0peZ0xNfEwKenQ5
UmctPiNiJFExV242JT9BPEZST0dvUGIjNCk/IzkwNjBnX2N8STR6I2lOKjJoS0poaF5PXkw8TmFW
fUZ8fkpaCnp5bE1gekxwQGtDIz5LUUpzUC1sPyVIR0tKIXp6UTxsVnMmV3h7ZW5vSVkoTXhAWUlj
dGo3LUdHKFJWIU07dTkyKAp6JiR7Q2xjWE1zcG1yOGN9JT0rN0xTRVViayNvX0lQS3VSI3hUUHZN
cyVYMUBsMndYVz89XlV0WlpoLUNNeW01N1kKei0pIT51JmlCMkxJMU5BYGJfZDAkQUY3QzMxM05E
VFAtakF3OWRnbDsjT3pwS3N9cm8qOXZlenA1d0A2bzgzb0hoCnpTWDgrdTdpTX5FJWY4eFYqMCRa
e2k0YzdII3Q7VTdyWiQjYkIpWjltPEZwJldLOElOP0tXKTBFIUphaT57TGxyagp6VUs3VjM0Tz18
KHlDe2tZajFaTE8lSEFhYmQpV1kyb0x1bWZ1VHpSMl9OJW1udz88ZWlnZSZUYmIpX3RuPzM+cGYK
ei0pYFBVbzEpKExjc1Z9Tk9Le31lNipiLXlqRFBAX2g9OCtodTxFQnI9YT9kTFFXI1N5Wmp2dCUp
LTM/WWRkay1ACnolVjU/OWcjViFlI3ZfYUIheClLTXFQKV5aUmooNWcje3dvREZQZCQ1UGpgQiRW
S3dgeWpHS1U1OyR8MFRhcmttfgp6fEU3XiVGNFFWY0F0P2MpaHI4Vkh7PlhIT20lVmJMKVBvYn5O
VHtmRXpMTkk5TmVYaTI/I35xX1l+ez49XkNTak8KejF4eDJtS09Pez1mVnFMakJyd2AxPHFHSkJ7
YE4jPHgqbzNhaDk1UTA1RENkM21uQHctdDNiLT1LeHFBI2VmJVd3Cno7ZmxWfVIqS30hPnleJXtP
RjR5RGBAQ3UqaWh8Pj5yVWwxJiY8OWZKUlElQFhjPWpPOXpJV3djNTB5N25sX3QtRAp6QEZ0STc8
ZXZBTFg/WDRpTTlrK255bnVUTSNLI3goK2srXylQblklK1QkQ3N0bW5HPDM2Jmt8eTwyI0ckLT9O
SzcKemlPUVFRMmZxIXxEJjVXJkRiS3Y9T3lvdSVYSlImWi1aITR9JSljPyt3SkNuRE0hSWQ4ZiZm
Tj8xJlhuQVQ9ISlsCno7PkYhV0BQTDUmSyZwKXBLNGtoP3JsNVFKIUw0JnMhI0cxVERrZ3dNNzM/
a3pIP3JIbnVkQ3ZQalgwcSpJKG14QQp6T1Q2Y148Yn1oenE7KF5HUlUqYFUwVWtWeSFQcFNlKCFY
P2AmfkxJOGBHSFo0RioqYk16eHFCWXhqUT5FKWEjJjUKensldHo7SlFDP1JfKjYzZGMpclJCdVRk
IzVWOFF4VnVVPjBZVTBqVSZSVCFrOXRATX1QdHRFQ08wYnU5S3grUjxUCnp5Z3U+NGVPZl8rYzk7
NiRiUyR9diMyU0pOOUheRkt4UXRKQkpfek9PXm9ZQXVATlEtRFVhfEtld2V1aShHdHMlewp6PyRq
SEgpNWpwZk5JbWVuejkxPV5UUT5gcnVSeWolXzRoWEYyYUFGYyl8IWxkZXg+UFJyOGchTThVSn1i
SW0lbXsKejEmJUM8QyNufTBfYlQjWCN5Z0xhOEVZXmp7R0wxfj17WVdWVURmb3JuJW9ZNFU9SkQ/
XyRjejYqbEA1OERqPW1lCnpWenxkflRmYGM7UUw1cEJSfXVKSkhRO0JKamplUmRfPnY0V0tRQnZ1
bnNXNEB1JnB9X3FMeEt3c3V2UjMtVG1mVAp6cnxyJj4pWH0makAwMmQ0PmpwZjtoUGZTUnNWfXQq
N0lNbkc8b2N4V2s0QGAmKVdlaXhSYjUtPjIlJnhxX0Z4YWwKei1BZ21EaTckakFMbUl7bFVMSnNP
NVg5bDdNc2UkeHp4LX17Z2E0MkFIKD50WCt+NDNzNEYlNWMqWnYwYktoNkZJCnpfNDU3eDJBQCNr
LWB3OXxUN0drWGdaSmBoP3tCYSFlYDxlJj11aG8kNWRHJTwySCtvcjxOTiYkZ3A9MkJzKHI0Jgp6
Zkt6Ymo7XjAoMCF8bnpWYEwod0o+fil8QVY4aklST19RYG0+cGEqfjs0MXxCPVJGTlImajVRcXp+
UkUpMjZ1QWgKenxFJDw+O0ZvbmokN0Z4bkc4Vl8pYFl6XnJMPSorTUBMJTxQI2QwNE42JlVrQnJh
dio/JEluJjM9PXhDRlZJUEdXCnoobSV5P2UrNkVAMDdIVThwWnVAJUd5fFhncn1BST9iamtpek8h
JWohOEYzKjBAK2xBaGRIIThFem1mbGp7Tj1tKwp6ckVzQUJVemNBSDJWKGJzNzR5eG5rcEtQanQm
c24jX0o3KDFPQylybHBZOHtvYTdiSWZOPCN9RXtyJllAO29LbEIKentac3lINH43bC1NNEpFbntI
ckZ5KjxXQShkR3JkfXt9cVYtXipxM2F7X3lYQXgqelBpYWxmQ3hafH5tUyYlZkVlCnpgc2V4fjQm
WmF3OHRWREZBSClFQih4MkBrZXMySGdlaHU5Mz1rJDtIenBuMnE0VFhMIXBNJXRaeW5aZzxlWGEr
Mgp6e2hhPT57STlTNyRnQkJJVVNJaiYkP00xVHBTbTZAYD5zQUhCM2VIMV5tWEdhTSpuTUhmYikt
VzZPUlNycUJxXzcKej84b3NfakNBIzk/IyUmfWVMQmdIK1omWGhwVX04Wm44VzhBdnw+MHVGJSQ1
X3pkQWxMYCMlM0c8NU5JaktpNW1QCno7Mm1gSllnflRTI2VlUEwwYn1aYDtNZHBKYC0xZFdgJkMl
aUtnWjh8YUQzajgwcV5JLXdmfiR+IV9XOEVNRF45dwp6dWwoezgla2s/eUNKZj9KOy1BLV4yS1dM
YWtxNiNCTTMpT3pCQDBXWTArMFUhcTxtZkVBI2d4dzk1OVZNKj95R3IKej9UfG5MeilRKHFJVnZ3
QFU5eVhxNFh7cUd4QGFCYkV1JjFnK1JQKWw+KjV2dHNAck95ejZJKjNia1ZMaCNhP2JPCnpTSGFs
LVhaYyhLSV5nWiZDKy1EIWcxaUg3Pyo9aDA+cSRXMiNsU3VnQVZUbHcqcDgzNWVtWHchRVk9eUdS
ZUBOOQp6PiE8N2xxbk5LP0ZPV3JuKmJlVXU3cn1gJCQ2RUA+I2oqdWt4b09APkkkPnVaSG1kN2N5
Zytvek5sXn0kYitMV3QKelExWHEydEg4YF9GNlVib04lb152ZX5qeG09eCMoOXUqWmdWdStNZ3JE
fj5tfntARGphO1Q4di0tbyEhTiFgPV9pCnpqSWdvMSYldmc2eyZSfSFrbmJlb3ckeGxjPXdlKml3
fFVeb2x0OWQkeyF1PkFBRDVydmcxJXkze3coPT9gdEF3aAp6Zi1GKHN2bWZQU3NuNz5PbWgwJnhJ
SHkmKHNlKShheDZJYj0rVCowMFBaI0A8JUVIbW5jSkl5bVFHY318RX53RnMKelFfST80R1VgQkwh
PT9WR2h6KXVlcigyWkJjY3JeRGdXPEp0NV9XMnJKZjIxfkJ1VzItdXp9WlQ5S2dScGZOUCYjCnpV
Z2x9ZFFXPXpfJVY5RC00Nz4lbi1ZMzVpOH16Kz14Q2VBN2gpPzslUW1yVDZUKlJrI24wUm0/QjMp
dSYwLXU5Mgp6Uj0qdUQ5X2xtZzZ+cTlxUnAlQDJESjxZZzZXa1k5O30zfnZWRGVLcStOMktQMGw5
YTQxPzBQIU9HMU9VbmU2MXsKek1xKzNqYllBM0NPZ3MmZ1BOKHNfcWo7fS1CaGxESFN6RWpaX043
PGUrfHpaJTgxTEI3LWFGfkUyJFcpbkdtPmJHCnpBTDBxVDNIIS1GK0gyMyFYQDlUdGloUTxERW9W
SGhpbjBvcylVRmNuR080XntKPDwxdWY3NkU/eHd6KEZfZ3g9Rgp6WjsjdzkxNTwyNWJ9RFl8WXdV
M3tYenp3aEAqQk5XRUw/cWJndkpBUT0mfGYqUGFNMEJwVWRyRyU0UnYpSkBNRmEKelFyRTEhY3ZG
WFdkMmVXaHojZn4/N285K24tNE1ubUB7VkwwUV89S3tvX3JJcEdrZEt0K2IlSyQxTjE/NWB6ZF42
CnpPfGtBa0gxOCZ2dGwhd3FaWmRtJDRQLXNEKU1mNDIzeCg/JDVWWmxCQik1IXYpbn1Ldm9WaEJ1
QUdBYGFAZUtvTgp6Z3k9bjMyVXRONWxrRGJqRHtpem1KSDkqLTFGfT5MNUUxan1lUmx7JiltKDZj
NEwpbEpTM1pzI20zeHhwWXkqIT8KejhBaHxwaSVVeDtCN2gxODgzdj5KaXJTVXchSlhCKy1lfFdk
d2dJcVQ2ejVKNTFYNVFISHdiUzdTVn4rcnJoUHV+CnpxOGFrI1d2Q3VXcFJgTChaU3NSQTg1Vjtg
Rz1TVVZORkUjTW1lUmZoLW8/bjJHXn1Ge2w1PCp2cThrVnkrJSlLQwp6Y2B1Jn1Va3Q5WiR2Y0gj
aUcmYFVTdHElSExKMk9FO0wrTX4ocTtnX2lpWmFRJmUzdGRuZGI/NDIqNSpOVlQldG8KekNHSzRH
ej9YdE00JGhJSCZwayNUI0tZIXQzMkI/TUxNOCEwKFVHaE5IWmJuMWZtcmxqUl4qXiVmVzVZPkBf
NFVVCnpZQC1XcEdSczZfKkR8YWRLZjN8bkIyfUlmd01ab05ranNLeVp0VjN8MF9CWENAbGdrU21i
elp9e1RQe2hFZkwqfQp6RGNjbCp5U2U1WGtDKVlDdGk2dTlkWSQ5PXojSjdiQSR6X30+PE1fQylL
VmJiJjM7S0MwbkU8cjw8flR7MEFMYTkKelh3TT54bDBKcnwzK3lvQmt0fkI1e2ZrTU1fY2QzXkc0
SmExRnptUWFvTXZldjdJMkZWcDxsPytHUz5fRUlJYD9HCno4TlF8OW5eQzs9PzJYK01hSUB1eE81
Tkd2bUpRMDd6Qm55QUVKUHomTS1yN0ZEdk5Kc1JaPTlUJG1EWSp5Kyt7Swp6VHhMbjJedF42P25i
JD1fKmhYX3YpWUs4a0pCPipjMjYqbn0zV0MxbyspXjRoSjReMDcmZiZweTNCU1Qjb3kkYUgKemhy
RmN6MXdNNSR1TWMhRDJNLShMX1g5YVhTVl88WipyWkMkZypuPlQqcEQzKzcoI0R2a3wlZGxkIWVh
WV9IPHdOCnolbnpJQjA/NztXOEdUNDBMX2p2ZmFTYW8zM0RgelVocGJrXj1IJjE1Qz9VaCswaTR4
NEVJeEYtZ1ZSMUojUkp9Mgp6Y2MxZHBVSj9RY3J+R1J3RXw8NmNxJExzO0l0OCRkKGM5SCkzZTBI
eFBXcEJBKmxNIWBMSUxyKmNJMkh7KktAbUsKekpveWE5XjlBKVA7Kj5pWEBaRnNpbEBaXmE7dkZJ
I1Q/IUBLSklxZ1h1THs2IU9MKXUjQXdNWipKeUtWellEalFzCnooJjg5dUd+eVNHP1Ahc31WNjZv
S1I8MmpodVFoKHBGOTRsclktMDspNzd4UHA2cjAlaXlwRzMhPjRERi1oOHE1Pwp6OEUwNklJcEVS
Wjd7PlJZODZgc15WdFJkU2pERD5gY343LW81N0wlfWl3QG9hLT5lbUg5NzxndEcmdDdoMk9EPzsK
ej5gTnQjSjJxWkRCNU5hWl84MkB1KkF0fkA9I3ZybSRDQU5oTyQ9dnpzdWxCRDI2SysoRD52aE9i
XiZzZ0BkUjxUCnoxSEIpTm8pcn1fY1RFJiVKfEVuI1RrTkhEeiYmPCtud0xKM1ZYI0FGI0dLXzk3
UT5DMVQ4WD5rbVNxKUBLR2Q0TAp6ZHd6PD1yazAwKjheO3ZEcXtYcnhPdWhxT3UlRGUxRH1zblZi
QU92SDRPK2ZAUE8rd143RCh0XzUrTH1nU2soJSYKem5QPnNGcG83VGRmO15YdGZTJHpkIWxqYTRF
Z0lhSjFsRThCUmxnOy12YUYkSmMzPzxgQytDIzl7U1hGKU1yREx8CnprcmhQJTJ5SlpReUNBdnZf
XyZYaigjRWdIYjREeVNKTX5rNEV9cTNIQH15Y2hvKCtKeVY4PCUhKERTTU15bF4/SQp6dEZNRUAq
VVRWP2RiRDRHMHVacEdEN1ErUG8tS1h3SjQlWDlEPmBHVHRQRU5ISSpnenNhPTxnRSFjY29aZ19S
P0MKejtoY05tMWpIREJEK1cwKXc8ZlFIYENKIXwqYmtZWnJ0OFpWajglaiUxYjB+YC1JTEg4ekBM
cihxUT9lTGIwTFR5CnombD92XllnM2w4MVZJMn5KOFhedWpOZ24pWmhVYSZIOGh1bFg4e1E3YUNt
JHwyPmlsQkZCJHxnaDJ6KyFDdmImbAp6NXJadVU7SEI5d1BJKnlAY1p3dCs1WTghUFJtN2VmZ3Ix
Kyg2O29pPXJ0UyFtZGE0YmVTMWx6UjN+NWo3QUo5PkEKemojVGUpZSREU2YrWEdhZUxzKHFBLShU
VmFWSWxXUmZpbntePTYhYVI5SFRKV0F8anItS2VATnUmRUJRYyRXUSNUCno9KXEyJUFkdT1sIzxO
NWErVSlrJWg4b1k5MmVZN0Bubm5WVkZWQT90MX5HN2wqS35eUko0Y3Y5XypDfDNVNGkkNQp6dms8
aF9KJFlHe1RtfVA5MzhfJHVgRzc4d19USWp1WXBRX3t5KWY/NCtSYWg3b2dmTm5FTGhpSnhUeFZZ
Snw2aXcKelBeemVnJE9PIUdETXdEYjMrdUUhOXxINU8hV2ktNDZ5Ync9NFUraGg2N2FJIS1rcnJx
K2NNJTtfa2JzMCRlPWxSCnpTS18zcjxEOE9RKVRtV3VjU3pJKU9gPzkzJVJeT3FnZjQ3WXEhNmFt
MzEjXzY3SnsyREM2VUdrYUhDfjZPNitAfgp6SFFpaGJfRkhgfEJYQl52Pik0Pmt0LTJENWwqREE8
MlV1fUI3aWEqQS1WcmN+OCUxUDVKQ1dAKDdnfGsoY24kZXsKemBCIzlXUlU1KkVFSk1wUmFmMHBJ
N35uV1JEZTlXfUZQYDtwMzl8RG1GSVZVZ253Q28pZTZPZ0RxVHZtQFcoX1JzCno0VXV+X3JneiZ6
ZStRMXpzcHMpLV9BZ1lnR1VxM2djfF4xPzIoYjBaJFcwI30+fHRqYnBqT3kjWkFjeUNLPzdVTAp6
anlRLVJUeGRCNEUjO3xnTnFNbSNTfFc/YTlVPz81SlRwKVRDaWMzUT5sMz9qN25PQmlpNGcpUVYr
SDZaUnIwVj4KenZIfWQ3MTdEeko2ZGc9dDs5b2d7JVcxZ1Zidj1mS3h6dTdXVUM0Y3IySn4/MldM
NHI1PF9KPz01SjhNSF9eMz4+Cno5dW4rZVlJJDdkJnhUTUhxSEtkTzJUc1lqO3dwcHk7X1N2WShS
alBCZGwyVjZXcj4oVGB2LSNDRDVLWlIhPHV1ewp6c2lORTQ4b3RebUtnfF98a2lzNHxNbTBjfTFD
eHF7SEdzUjxHVnxgQUxVX1JzIU1aUi1eKn1BRCo+e00oSz1kPWoKelE7PXlZRDgremQ+eUVhdHsk
bmtSPDlrRVZxTW1pUSN5Ml80bHkzbyQ/PilORiU5M1lrcilMPmpORWhyYVR2Q1hpCnorWWhvVUox
O1c7RG9MbUR5JTYkfShTbntKKlpCSmFTZyQxNXo/Sk4jYjVQfVBmUzxyWS0wTVpEWnhzKGFvNiQ3
dgp6dT9hQl57KVNKUVRndkteaVRCc2I4MjIrUU9yNCU8e3pPUn00PDU5V00yKXhlPEBWfkkzMmt+
MW5NT0g5MFlsWlcKel5jKn4rWTleakBObGprJiV3KEBJTysqOGcqWmt+TyVIPkllcVU9eHNNM1o5
PW47KWZXR3RUR095ejNNMkNza2g1CnpHMm9aRUswYkRQXjIrV2pfWCpxJWdyXnc0QT5KMkQqUmFq
eEJTbnBVSSRwek9ASS1eRCZwRWA2JmZXUE9HJndgYwp6KS1+RV5Ya2FHYEtzeXU0X3YtfitsZkVR
ZGN7fmFeYTNeTT43OyZKTmd1P19PRm52XjlTZFFNSDJWcUBWRCM1PDMKemR3PSVFNXhgfD8jbT5S
cTNlZXRuU2NONTBgV3BLQipsSExIZnBfTzxTSTNqTnVgJTZYNUd8QXk7N1FYOztUMFJ0CnpePF9C
Xm09SEIjLXchKUopYFQ5O0NkbX5Mc2E2I09gQXtqZHNPJnpPKkkrNURRKHFsdHBVQGwmVz5OQEg5
KX49Twp6JTd7SUkoSTA1VmwrOFA7V252P34hJDsoK1IlJHA7Oyp+S15Wa2NJa2ZOZUJqQn08Qjli
bVEqJVI9ajBCdnh+a2cKejlnKE5PcERuJHVfd2lLZHN2ST5lPitqZVVZcVNEcGU5bVZQI0kpQj5y
YmlCZzdMZn5kbl9LfmBUfG9SU2VBLXVuCnplTTwhT0BgRSM/P1BHYjJqWnNHKlNDJjAtYnBUQUc3
eEtqRSVWNiQyJCQ+VH55PTBVPm5YdkQmIzhaUUxxfGFQaAp6QGhOS3RCa1VoNWluSTsoPXN4aSgh
WjNiU1R4NH5FMXl3dTB6LTF5KmcmNjlIaWhKZiFZYXFDREY1MHhTdi1pISYKeiU8WSpxe2U0YXdx
QGR6Zy1AZnZxJkUqVE87MGhmOVVwS3hQdl87WWwoIVdETGQ+QHBAMSgrdTh2Z3p+OXhAN0YzCnpQ
KnVJRl9ZNT89Rn1UfXxFPkVwVztuYTkjTG5xQ3poS05QXmc7Sml0IUZYbVRYfGIhVSMtREgjKUNx
UWNNSzl3OQp6U2RrbmRRO2FQb2NXSDxkRFotPlJKZD8tV2MtNW9IdnZHbkpaVkRVNVFzY257bm9r
OEdCX2JqYCpkbjJYTU9nYjAKelR3bUMtPHoyI3ZHZipHOGhMJn1SSzZkVjhFbn5uQCY/MSQqIW42
OyZPKThzYyplTGlARlB0bHVlM25CTE5mKkRoCnpJcCZNYmd7PmdwP3B4SE5gY1J5IXRPZClAXkgo
ZyNfYVdIODZHVkQhT3cjXigjdTF1cUFffD1GPEAkSng/aCFyMwp6SzNBV3gyQXZnfnA4Uj9OVnRl
cXxEPjc3OTJzUUxyZV44IylKMihIWV9PMWp6c19OVy1fcytoczFWUkxnY29XJWAKeldIUU4yMEB+
Nm4xY0RHRDMyVUYjRVImN05PcWpfNkNfYzV+U31Seno/ek9mUypONFVCO283Pk9LPGkhPVN3ZDg1
CnooSVEjfD5xNUJ3ZXxPMjtnYmR+UmU2UFJ1Y1Z+VnhfZERDU28kczlVLVMzX2BRK2Frdjk9eTRW
e0VGI2liKjFoMgp6NnxrPWlCWClqaUVIVz85bz5MamdpeGdxRVhVKktVPUMtPXthX29kP3N8bjE/
dDZnXjFTXmlsMntEbXtJamRAe1kKemQweT89Xj58S1BJeWJmbXplSCVCPjkzZW82UFZ3PXFPaVB0
KFg3Sk8zVCFmfll7RVg4eCR+QzlXO2Q3NFMtRSUkCnpnIVY3WFRVMWgrKC12d3R0IVJQWUtmaGA1
aWpgJGVXd2xGdWtSbHd5Rk5NbmVicnNFbEt5RkQlTmc/KDteP2ttaAp6OUswPiFvTmIpc097d19p
bGdtQGRZVylKfGxUU3MkS35yJWFfbDB4XntlcGY7em9OVjcqUi1EUXJoRGpLeHt2T3MKejJrNV9P
MTNnSDtwQChvKl9hcFF1e1dvbyokTE1pLWZ9VyhPPXhPPmJ7Zj9mWVhYIWNHT2ZTJWp3MXV8UEh1
Xm5JCnpMd3wpe3JQdF9uYFhqd2JaXyhTZG8hKzZIdzJPOUFDKyhwd2RZOWcjX2h+UXZpOVZufCg/
MHI7e3pDaWRXQlA8WAp6ck43Y2FgaXVfSVZmdmlATXFrakVeYzVZVVphUFlga1MkYVElWjJPMjdz
TUNFdD5PLUdyP15ZcFpDUGl6JWQqfmIKemtMNXxyPzxCa0FrcEBWRXJCckV6RypUS1pXa308Mk5j
ZEUjSTZXaE1UIXhybyZsckBFa30pSj5NOD9SQihIVztACnolKjs0MUJiMEcpPl4yfHk5QSM4eURS
WSZiUX0qTXNiQFBfYVlweTYqQGItZTgzczAkXiZAP0hXK3BfZStON2xhZgp6c2QhWURXJDAzKDM1
eEZTSmcpOUd7ektoOC0kIT5aWH1XdkVwdH5LJSkhaiNtP2hZaTstUGIrM0Q+dndGZHEyN3AKekM3
MHhkP3VKVWtwfVNFeUtiPl9xPCshQDV7VTdPJFNhPFVLQF9YYF5AKiVsUD92XzhLbGpQazw/fnkt
e19zYnQ0CnpeJHl3UCpXX0leT255X3xBLV5MMzEocktOZXB9djYxOTleSDAzfjs/e0kweFJ6RD9k
Ti0tPyNFcHgjYmdjZ2hGawp6YkBERng5cjtDaDRkOTFTPVN9JSkoQXo3b20jPnNCbSNAJmk/Xm9j
PGRjSSRnOEQ2YkAtd2xrYjxzWnFIJUZsenMKekZYVzVtMyo8JWV3QzwwKTR8bmhIPyhGWEItcmx7
dGArTUVkP3hvJDZqPWEmRytJNlZ3VkFwNFI8Z1JEQ1IoQ3pzCnpePD51KlU3TlojYmdsMlllYXx5
ezlfVzBwXkFEWUdiLXZsVHZHZEIjbXBacH5LSFlnJj1UKTdUQEJWdHtteypVIQp6V18/SV8kaHpe
WGpyVlZDLT8oaFVaNXdXU1ZDJWhzZG5ldj1AVE5jQ0BacXswWXdvPHt5eSYjU3A5cjVUQk4mRWYK
enpQXnpMRWFXN1MyOXRvJVlYUChoUXt6KG5TQWhqSEE/MmlgcjtKVGNObmElJT0pUDdzYmt1OCtq
JiFYTyRGYWBrCnplOUp6aTktJmdZVyM1dEVDPihCPG1edmAreiNJJGFkfD1Mcj1ESS10KVVeQCow
UGI/Syh9eVhtR3lZNztUKCRwJgp6e1MkUU52SG4oPCp7N3p6VyVec0R6aChNY3JvVXpTVG1Ne3Ql
WiFIZjxEdld1ZHQ3Rk8lWiYxd3s8WX59b0JwLXcKelU7akolKlROZGhLNS1HcGljKyojays/e1c3
OX1tJkJJbCF3cEF5bH5vUm18eVl9dWo9NjNtdiNOfGZqbTJeWjFxCnozOFFXfmNoSCVLJHp8RWNQ
cGxxX3AxWVdAJitvbnV8OWBFbXhrfWBVYk1acGRPOFktO3I5TjZBJE1fUGBrY2ExMQp6OTNlNDNy
VmRPU187O2BZOT8heGR3SihKXk5QTENRZFZEWjdRN3R9cnY3R3dyVGI2a1hARyslUz9WVjFVYk96
MCYKemBCWTYmeGAze3Y4P1ptPExHMVkxaE1oY251fE1haTsxUHhrVitGcjNPXyhoIzdWM24hYUZL
QTBhST4mcGRwfDVaCnpCZktvXjYhcjsrTU51M2lqdUl6fEw5c31qRTFufVppNT1wbDsjJT1gQGpo
e3J4TEpIJSsjfks2enFIc2JMb0plSgp6dlNxNGVoTmFSe1dyPGtNd19JVmwtZzJqOTE5dFhvd1kr
NnstfH5zJmh9QzZIdnp9YDhTLSkkWVduRX5rd0p4KD4Kelh1YUJjcXhDTjlNKGJ+X2YzVXR8e2xO
Tn1qY2Z5S0JXPmV0eHdabVpuZTdMKjIzd28kNjVGLTVUVyRCKTk8QERaCnpkKTJudl9MMSN4Y0I/
KGJLSDdlb0o+TmR2VVQjMHY5PTVOclV1T1RRe1NOeUJfUSZsbitXJTtPKk03a013WnJLYwp6PUUh
aGxJbkgjSEl1PHg7OTQoR2pjd2dvQ25kNFdFLSNESWp7TkF6TUBoOFZZaHdTdF5NPnhraGJEWkNJ
JlQlZXIKeik7bjlCN2R3Q0F5djJGOV5BWUU+JlIza2ZvRjYocmNVZkc2VF8/TEh4JDwxYXU2ZUU+
eHxYX0B5SD5sZGJOJD9QCnp6dzBzQTMkOGFAVTlPS15VJTRJYlJDbF5OKHx2fH1yaEM0LSs4dVJZ
O0oocypnWnIyNjJpO0coeDRHWVQ/eyl2eAp6ZWJuUmU0RUshbl8mdzcrdnB0SkZiKUxCQUJGe0NS
bj8zNzI0fHxeUnl6SlRPKzI9WHo2fV5NSnFtc1RTZFZ9NX4Kej9fQlJXLVg/RXtfZnFkI0A5cDBF
eXFtbjZ5e34pc2M9dm4xOUFGPFhiYnZIcUdPUHRGbGFRd0RzOT58fnZyY2dxCnpqUyhKSXVKe3JA
KWdqYiRfTX03X0N9MjA1XjBIOGRYeENzWEltSFBZWUBefCNQbE41cXBRKnZfITQyWUU0ZmZFTwp6
QSk3UktBZTlmPCl4KnloTG8rcDRBWngwIW4qO1NrYS0+ZXVALTM4LW55dFpCKUc1P3A4K2xWcEd9
dzsoYXQrM3wKenkzXz80PzRjbiZASWFjRitNd2tSTSpYIUtvQn4/Y1l3IUB7LXdJRGN1KTBfJHNk
czJGYmR0NzRnUTFoTzgjTmRACnpOJkJAMUxubW9sRyNFTmJkc1R5PmxlQiNyNDR0SFhzPT82N2M9
bUxkN0laVEgwdTNIYSZoYW02YTAoM158Q1I8MQp6TEg9SDxxeWBGK0w8UCNWOEJpVk9mQyNrJHN6
eW16TiEzI3Y9fmxxfXQrcl5QSHE7MUhCaD9fYzdHPSM7ZztXSHkKemlBMUhpTzROaXBHMzNRaiZo
PVhIJkRkM0o0WERwX3hVR2NUc0ZJMy1ZN085ZTxUVFBzZ31kYW1CLUhGYyVARjlzCnohQzUxPDA5
Tz1KPSR5dEM0MFJ8ODFCJW4+SnRlQkZWTVdGY2x0KH5RcTlSfWxEViNNQHlWQUFAXz9xJDdJYlZY
QAp6NypmblJeQlA5Jm5BVT5wTlB0YExYNUJFd3NtTik3WV59KGZOP0NZd2kpeGYpcUlHWC1FT34t
ZkNRPm5RI1Z1SFcKekF6KXtEOz5jbW1GYypee0trSj0mJjd5NEpeeEBqMylNMUoxUTVzZT4lR35Q
eFQmfFJ+RFYpUzswYUMwI3dSYT4xCnpPOHxIaGNBPlhSUiNQdU9vO0ArMi0xRSFfYklaMlhmQD59
RXMlWnRqRTBJJkhxKVNrQDBYKFRhJU5tVStgRXlXRAp6P01MbkB3ek40WVRhTnhfVTVBeEFzLTNj
eGhKbH4kZkhsVUopJlkhLU59OHFaJVpZXkErIzk7QmF2dzNSMVAxT2cKej0yOUkyWlF6TnFGKCNI
SGhIRDdEQ24xO2Z2WXxuSzghZkkxKnhNQ3B4SHQ4aGA5MVk/SXJVTS14ezdOKCZsMEdaCnp7WE87
N2RkIyh8S159dWtRQUBSRDlnRTZVb1IrfloqakFaeDJ3Sk5HPTJwbmF4O0teQHJMMCVWVE9jI2Ij
SXBtLQp6JClpRWxYJD93TGApNkZMOXFEfHNNS3diPUR1cFZ2Vi1JNkZ0e3JIXzdUdXVXPGdwbzZA
SDVBJWpMRz1uNXlEeiYKeiFJa0F5XzBNd2lte1lBT0Y7bDZ5Pkw1MiQ9cSk5NCFUclpQRm1IKWtl
UzFtUW5YWFVQTGY/NlZYOF9pXktIfSVvCnpYfmd8QjhHYVEqTEIkU0tJQTY7UlFifHY0OV8mU31u
QDdgb2F0bkdlNmo2UnBaVnw/QFREUWMyQSk5aTVnUlBDSgp6V0sjZkMpbWpZYTcpdFVDeFV5KnE+
Z2xjZzcqIz43Nn5sU0dOflJjNiNsV0c8UiFxZWBCe3smQ1llKkc8d3ZJZ3EKemQ/enErRHVGU0Yz
UENTWHZqfiN3RGJeIVByXzx3OWZgKGR9O0QkPkpgbWA8VClpJEFEWmZvbyVQOHFlcVg9QmclCnp6
KHNHcVNsJEYqRVImSnorK0tXVV9yY0MtQlgqVVdNMC15NkVsKmVzYkRFOH1QTXVSbS1aYEQlalo7
UzZJQm5EZQp6Vj1GWjk/ZyFAeWl7c0tARlVkS2JZb0h4OF5mVDhrPkJVT2BlVmRAcElga1BWQXMz
d0pHYlApdW5vZH0obm9pZ1gKenJ2bkM/PDg7MmtkTl4mZyFUQDlxOGwrUngzN2g1N2smOE9JPF4h
bCpZflc4I0MkdGtsUystJjExKEVnfXY9c3l8CnpqOFZzejJrRElUcj1XR1FmbkpGc3kqXml7RFN4
bEVydkYqYklFKDZZUkRVeUo5UD9FKFcrcnVaUm80Ynk5YVl+Kgp6WjwlfntWLUZAbmAlS1gwR2Fw
UzxKZXhBJD1KaygjSWk1K1lHMXV9K20yNVVXTCY0TGM7OFN0MmMycnoqZCQ5MUQKeiFzYHdEQVBs
TCM1OTIpK2ZBMkw/I2xPe256WC1OKUpwOEBlX2VhNlYwcG4reEJlNEJ5V2kyKFh4TiRgaj5le1lL
CnokMjBnaCpPY3lTdlh8RzBieCtrWGBecU91elhXNH1TQmRfNChFU1puJnFtKmI8KHYqR3lrPklt
OGZEXm5pRCQ7Kwp6PEsjWEohdyRGeWtIeVM+UVptZHJOaVpNVl9zMyRjZ2NZKWY2R0ghfVVmRT44
JERAeztncXA0ISowdCZkdlRxV0QKekVkNURUZjxFRTlvZkQtUkk2PG5xJiErbFR7Wlh5fVNJYllC
WnR3KUB2aFRLQnYkeWBXJS0mYj5LR2VydC19I31oCnpSQHJsfU9HOy1aWT0/RThvS0M/QiVFUzYm
WiZDSTNgcjR5RCZRemFKQTd7enp2K3k2IzxuaF5HUG45YTNFOHA5KQp6eDV6JVZkaVEpUjlkKDhM
SGZFMEE2NnJIWDZGQjdsUX0wPzViR2k+SipZUVZuR1RIanFVfilSZS07bUE+PSNFR0MKelFmUm5G
KElXZnNKa3Y8e0BFV0kmbHA7bUh7SHMwb0RPQkg2bTV0e0opcHtHQzJmaW08aTdRKSZpaWh1UElH
NSlTCno/bm18Ql5TQ1FvKDxILSs2TkluaCRMSWZ3K0tLQzZLNGpwTHRqMk1TeTNwc0pnZjk0PUpP
O194Q2NtKkJFX31xRwp6MmZtWGpnczBZNTVDMjxBbmRtPWJKZiNEeFYrWmBENClrJmp1ND5lemNP
NzJrK3FGNytqVnhHdTE+UlloZno8eHoKeiRPPWF1YypXcS12dVEzWk1sYEY4V3t8dEdBdFYodmdx
byF+e0t1X1M5U1RQeV4+THsrRHomMVpyTDgqTFNSPlUmCnpvMndjbG5ObiMpWUhFdSQjJW1rI2Yz
NDk3c3g/JSNxRXcxUlRjdWQyQ1IhaDlULW0zVTZ6enpGVikySD83QWFjQwp6TmFHPT90fXpebnBS
UTEtaS15Q3xqPmJzNlIyMEtNTWxgbUVxQHJrWkdiNntqeUhUayZSMT5hPnAmJU5PcyNAQGAKek9y
aUt4c2lDI0NXb2xNZHhULXB5UykoPHBRQ25xM1dBJDAhSWZUQ2xqJVRkfGlwZD5Tej96a3Y+QzAt
dnpvfkBrCnphUk9EZUhwRFdRaHc5c2FlRjZBbXtNbmZTcFB+eWNHaUd2SHF1SjVYayU+UnhWS1Ew
e2p1MW5STGJzQCpCOCR9Kwp6JiNGUjt0Zkk1JEUtbyNiO1dtKEJ1cVcxeyRDdU95MWRta3EpNl5J
ZWA/S3NUQ2hxIXEpRnpKXmEmKTU8Vzc+PlEKem4oO31hSig9O3p6Q01jeyQxfiVUV187MyZQbnoq
YkdkYCl0KjQyMlY4SnxvJTNwMy1CWUlMRSQ9d2F7cHE4WHA7Cno5Wk5MaGxWKkk8Nz1KUzNsWVBC
I28tejg1dHtvZFVSM3IwZGVEY19jYl5qVlA8Q0UkZHtfUkZYJkc9O1IqeUkwRwp6ZD1lMzdIRjg7
dyRYTEN5PVlebGA+YmJsUlFoQ1llVzlNJV9GQ2gpUDZoKjs7OWZEU31rc2FxYEltdHlISzd8Yz8K
ejNKMmpWdHJRd1VMKHpIfHJPYDw9b0pQPHtgVk5odmxXOD1hZl9XKygoY2U+UDQye0p9Z1gwbC1w
R2NEc2Rwe2pkCnpyIW87dzwoKE9SPDtnZmRRUmlKS1F9N0o9M182cChPVyZodV5uTEtrY1VpXkNH
c192K2xVeiEoPXEjRnpVMCE4TQp6RU9zODFCVkpwSGkyZWR2TlEpNGdUfHomZ3xEYmN8aGpjRVRo
dUNkM0JFYWwlKWo8T3M8IXsyMWYtc2BGe01AMWkKekpEXzt5UzFXWVdqJWV8Nj8waX5EPVZRPEZE
eDhiPnBMN3ZqT2gyTWFYKkZGJlM3MENYUmRoOTdMcURONHczZEV+CnpVQ30/SSt2cy1mM193MFhr
eHgkNCZyTVdNT01EIT1ybDBGfEdVN30wdlVXUCs4QCowUCt8bFFKTF9RUG9Ca2ZlZwp6MUFXZyQ2
cyY/eElocFlab1l7Q2N7aFYmMGpYMCg4ZEY4Q1omMiRPUVdWez9fSUtINXEoZkIwJm1+TnotPV9a
YDsKemNwY3FKKlV+ej05e2JCNSF9KkxqemZySzBDXiFWQzsxYi19Klg8UHMybV4mZCFlQWpxNyRP
VzZRaVdrY25zNV5LCnpkeWYhQzNmfmIlMmAzQXFnO05BY05FYjRNUS12fHUyUj0/MUZIRXFPJjdW
RW5Tc3p9fSgle2R7KEV3a3I0Z3whUgp6bTZxYl52bUlAYiMqKm5KQzRCWSFlMTdla3FnYHtnWWUy
Z093ZClrXlRBKkRFYElfVk5gQ0xfWGpnNyhWVUArSWcKelA+d0h+T0xDfENlQ2pwN05KfWRpYUlD
UD5HSSNuRWc7RjNwU2dlJlI5M1pXZzJiQkNrUE9nRnZsPThTOStBRyZRCnRwSVI/aWwld0RZPUsx
cnZkYGZuKVFhX05GdHdgdzBETnlQTTM7WVZfTkdwPSVPKW1gNC12UXoxZFJxVmgKCmxpdGVyYWwg
MApIY21WP2QwMDAwMQoK
</data>
<flag name="commit-queue"
          id="439173"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420800</attachid>
            <date>2021-02-17 23:18:32 -0800</date>
            <delta_ts>2021-02-18 18:36:31 -0800</delta_ts>
            <desc>Patch for committing</desc>
            <filename>bug-221744-20210217231831.patch</filename>
            <type>text/plain</type>
            <size>53996</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzU1MTQyZmIyZWJlZTA4
YmJlMTFkYTUyZTExZTczMjExZGM3M2RkYi4uNTQ5NTJiNTAxYjU1OTQ5OWU5ZWVmN2VlNGFiOTY1
OWQxMDIyNTUxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAyLTE1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9j
ZXNzXSBUZW1wb3JhcmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BV
IHByb2Nlc3MgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNl
ci4KKworICAgICAgICBMaW5rIHdpdGggdGhlIHN5c3RlbSBPVFNWRyBmcmFtZXdvcmsgdG8gZGV0
ZXJtaW5lIGlmIGdseXBocyB3aWxsIGJlIHJlbmRlcmVkIHVzaW5nIHRoYXQgaW5mcmFzdHJ1Y3R1
cmUuCisgICAgICAgIEZpbHRlciBvdXQgZ2x5cGhzIHdoaWNoIHdvdWxkIGJlIHJlbmRlcmVkIHVz
aW5nIHRoYXQgaW5mcmFzdHJ1Y3R1cmUgaW4gdGhlIHdlYiBwcm9jZXNzLCBhbmQgUkVMRUFTRV9B
U1NFUlQoKQorICAgICAgICBpbiB0aGUgR1BVIHByb2Nlc3MgdGhhdCBpdCB3b24ndCBiZSB1c2lu
ZyB0aGF0IGluZnJhc3RydWN0dXJlLgorCisgICAgICAgIFRoaXMgaXMganVzdCBhIHRlbXBvcmFy
eSBwbHVnIG9mIGEgc2VjdXJpdHkgaG9sZSwgdW50aWwgd2UgY2FuIHByb3Blcmx5IHRyYW5zY29k
ZSBPVC1TVkcgZ2x5cGhzIGludG8gV2ViS2l0J3MKKyAgICAgICAgZGlzcGxheSBsaXN0IGluZnJh
c3RydWN0dXJlLiBUaGlzIHBhdGNoIGV4cGxpY2l0bHkgYnJlYWtzIGRyYXdpbmcgT1QtU1ZHIGds
eXBocyB1c2luZyB0aGUgR1BVIHByb2Nlc3MgKHdoaWNoLAorICAgICAgICByaWdodCBub3csIG9u
bHkgbWVhbnMgaXQgd2lsbCBiZSBicm9rZW4gaW4gY2FudmFzIGRyYXdpbmcsIHNpbmNlIHJlZ3Vs
YXIgRE9NIGRyYXdpbmcgZG9lc24ndCB1c2UgdGhlIEdQVQorICAgICAgICBwcm9jZXNzIHlldC4p
CisKKyAgICAgICAgVGVzdDogZmFzdC90ZXh0L290c3ZnLXNwYWNpbmcuaHRtbAorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9u
dENhc2NhZGU6OmRyYXdHbHlwaHMpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvcmV0
ZXh0L0ZvbnRDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpmaW5kT1RTVkdH
bHlwaHMgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9E
aXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpmaWx0ZXJPdXRPVFNWR0dseXBocyk6CisgICAgICAgIChXZWJDb3Jl
OjpEaXNwbGF5TGlzdDo6RHJhd0dseXBoc1JlY29yZGVyOjpkcmF3R2x5cGhzKToKKwogMjAyMS0w
Mi0xMyAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAKICAgICAgICAgUmVkdWNlIHJl
cXVpcmVtZW50cyBmb3IgY29sb3IgdHlwZXMgdG8gb25seSBjb252ZXJzaW9uIHRvIHRoZWlyIHJl
ZmVyZW5jZSBjb2xvcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggZThlYjk5YzI0ZmViZGY4OGU2NDk3
NTg3M2Q3MGUwZDFlNDk0MDMyNi4uNWU4NDgyYWU4ZjEzNzYzNzBlNjIzZWY0NTkxMThiNzdiZTNm
MGUzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDItMTUgIE15
bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbR1BVIFBy
b2Nlc3NdIFRlbXBvcmFyaWx5IGRpc2FibGUgZHJhd2luZyBPVC1TVkcgZ2x5cGhzIGluIHRoZSBH
UFUgcHJvY2VzcyB1bnRpbCBpdCBjYW4gYmUgaW1wbGVtZW50ZWQgcHJvcGVybHkKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTc0NAorCisgICAgICAg
IFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICBUaGlzIHBhdGNoIHNvZnQtbGlu
a3MgdGhlIE9UU1ZHIGZyYW1ld29yayBiZWNhdXNlIGl0J3MgYSBwcml2YXRlIGZyYW1ld29yayB0
aGF0IGRvZXNuJ3QgZXhpc3Qgb24gd2F0Y2hPUy4KKworICAgICAgICAqIFBBTC54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmNwcDog
QWRkZWQuCisgICAgICAgICogcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuaDogQWRkZWQuCisgICAg
ICAgICogcGFsL2NmL09UU1ZHVGFibGUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFBBTDo6T1RTVkdU
YWJsZTo6T1RTVkdUYWJsZSk6CisgICAgICAgIChQQUw6Ok9UU1ZHVGFibGU6On5PVFNWR1RhYmxl
KToKKyAgICAgICAgKFBBTDo6T1RTVkdUYWJsZTo6b3BlcmF0b3I9KToKKyAgICAgICAgKiBwYWwv
Y2YvT1RTVkdUYWJsZS5oOiBBZGRlZC4KKyAgICAgICAgKiBwYWwvc3BpL2NmL0NvcmVUZXh0U1BJ
Lmg6CisKIDIwMjEtMDItMTAgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNv
bT4KIAogICAgICAgICBNb3ZlIHBhbC9zcGkvY29jb2EvQ29yZVRleHRTUEkuaCB0byBwYWwvc3Bp
L2NmL0NvcmVUZXh0U1BJLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCA5NzBlN2UxODRlYzI1ZjA0YjVmZGE5ZTliODQzZDA2MDg0
NGNkZjc1Li4yZWRiY2M5YzAzODg3NWVhZTQwMmNhNWQ1Nzk1NDhkYTA3Y2U3NDZlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0x
MDksNiArMTA5LDggQEAKIAkJMUMwOUQwNTgxRTMxQzU3RTAwNzI1RjE4IC8qIGNvbmZpZy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUMwOUQwNTcxRTMx
QzU3RTAwNzI1RjE4IC8qIGNvbmZpZy5oICovOyB9OwogCQkxQzQ4NzZEODFGOEQ3RjRFMDBDQ0VF
QkQgLyogTG9nZ2luZy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxQzQ4NzZENjFGOEQ3RjRFMDBDQ0VFQkQgLyogTG9nZ2luZy5jcHAgKi87IH07CiAJ
CTFDNDg3NkQ5MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzQ4NzZENzFGOEQ3RjRFMDBDQ0VFQkQgLyog
TG9nZ2luZy5oICovOyB9OworCQkxQzc3QzhDOTI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRT
b2Z0TGluay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGluay5jcHAgKi87IH07
CisJCTFDNzdDOENFMjVEN0E0QTMwMDYzNUUwQyAvKiBPVFNWR1RhYmxlLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNzdDOENEMjVEN0E0QTMwMDYz
NUUwQyAvKiBPVFNWR1RhYmxlLmNwcCAqLzsgfTsKIAkJMUNDM0FDRTgyMkJEN0VDNTAwRjM2MEYw
IC8qIE1ldGFsU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQ0MzQUNFNzIyQkQ3RUI4MDBGMzYwRjAgLyogTWV0YWxTUEkuaCAqLzsgfTsKIAkJMUND
RUU0RjUyMEQ4NzE5MzAwNDdCMDk3IC8qIENvcmVVSVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNDRUU0RjQyMEQ4NzE5MzAwNDdCMDk3IC8qIENv
cmVVSVNQSS5oICovOyB9OwogCQkxQ0NFRTRGNzIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJh
bmNlU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
Q0NFRTRGNjIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi87IH07CkBAIC0z
MDYsNiArMzA4LDEwIEBACiAJCTFDNDg3NkQ3MUY4RDdGNEUwMENDRUVCRCAvKiBMb2dnaW5nLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IExvZ2dpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUM0ODc2REMxRjhEN0ZDNjAwQ0NFRUJEIC8qIExvZ01hY3Jvcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBM
b2dNYWNyb3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUM2N0NFQTIxRTMyRUUy
NjAwRjgwRjJFIC8qIFZlcnNpb24ueGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBw
YXRoID0gVmVyc2lvbi54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM3
N0M4QzcyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQ29yZVRleHRTb2Z0TGluay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTFDNzdDOEM4MjVENzk3MjAwMDYzNUUwQyAvKiBDb3JlVGV4dFNvZnRMaW5rLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IENvcmVUZXh0U29mdExpbmsuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUM3N0M4Q0IyNUQ3OUI2QzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gT1RTVkdUYWJsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzc3QzhDRDI1
RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBPVFNW
R1RhYmxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNDM0FDRTcyMkJEN0VC
ODAwRjM2MEYwIC8qIE1ldGFsU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ldGFsU1BJLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDQ0VFNEY0MjBEODcxOTMwMDQ3QjA5NyAvKiBDb3Jl
VUlTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29yZVVJU1BJLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDQ0VFNEY2MjBEODc0M0YwMDQ3QjA5NyAvKiBO
U0FwcGVhcmFuY2VTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTlNBcHBl
YXJhbmNlU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC01OTQsNiArNjAwLDEw
IEBACiAJCQkJNDE2RTk5NTIyM0RBRTZCRTAwRTg3MUNCIC8qIEF1ZGlvVG9vbGJveFNvZnRMaW5r
LmggKi8sCiAJCQkJMENGOTlDQTYxRjczODQzNjAwN0VFNzkzIC8qIENvcmVNZWRpYVNvZnRMaW5r
LmNwcCAqLywKIAkJCQkwQ0Y5OUNBNzFGNzM4NDM3MDA3RUU3OTMgLyogQ29yZU1lZGlhU29mdExp
bmsuaCAqLywKKwkJCQkxQzc3QzhDNzI1RDc5NzIwMDA2MzVFMEMgLyogQ29yZVRleHRTb2Z0TGlu
ay5jcHAgKi8sCisJCQkJMUM3N0M4QzgyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExp
bmsuaCAqLywKKwkJCQkxQzc3QzhDRDI1RDdBNEEzMDA2MzVFMEMgLyogT1RTVkdUYWJsZS5jcHAg
Ki8sCisJCQkJMUM3N0M4Q0IyNUQ3OUI2QzAwNjM1RTBDIC8qIE9UU1ZHVGFibGUuaCAqLywKIAkJ
CQk0MTZFOTk1NTIzREFFRkY3MDBFODcxQ0IgLyogVmlkZW9Ub29sYm94U29mdExpbmsuY3BwICov
LAogCQkJCTQxNkU5OTU2MjNEQUVGRjcwMEU4NzFDQiAvKiBWaWRlb1Rvb2xib3hTb2Z0TGluay5o
ICovLAogCQkJKTsKQEAgLTEwMjUsNiArMTAzNSw3IEBACiAJCQkJMDc3RTg3QjEyMjZBNDYwMjAw
QTJBRkYwIC8qIEFWRm91bmRhdGlvblNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEM1
RkZGMEYxRjc4RDlEQTAwOUVGRjFBIC8qIENsb2NrQ00ubW0gaW4gU291cmNlcyAqLywKIAkJCQkw
Q0Y5OUNBODFGNzM4NDM3MDA3RUU3OTMgLyogQ29yZU1lZGlhU29mdExpbmsuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJMUM3N0M4QzkyNUQ3OTcyMDAwNjM1RTBDIC8qIENvcmVUZXh0U29mdExpbmsu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUMwOUQwNTYxRTMxQzQ2NTAwNzI1RjE4IC8qIENyeXB0
b0RpZ2VzdENvbW1vbkNyeXB0by5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTE3NUI1ODFGNkI0
NzA1MDBDNEI5RjAgLyogRGVmYXVsdFNlYXJjaFByb3ZpZGVyLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUY0NDI5MTY0MUZBNTI2NzAwMDJDQzkzRSAvKiBGaWxlU2l6ZUZvcm1hdHRlci5jcHAgaW4g
U291cmNlcyAqLywKQEAgLTEwMzgsNiArMTA0OSw3IEBACiAJCQkJMENGOTlDQTQxRjczNjM3NTAw
N0VFNzkzIC8qIE1lZGlhVGltZUFWRm91bmRhdGlvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlD
REFDQjM2MDIzODc0MjVCMDAxOEQ3Q0UgLyogTWVkaWFUb29sYm94U29mdExpbmsuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMzE2NDdGQjAyNTE3NTlERDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5r
Q29jb2EubW0gaW4gU291cmNlcyAqLywKKwkJCQkxQzc3QzhDRTI1RDdBNEEzMDA2MzVFMEMgLyog
T1RTVkdUYWJsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRDYxMjJDRDI1NTlCNkFDMDBGQzY1
N0EgLyogT3V0cHV0Q29udGV4dC5tbSBpbiBTb3VyY2VzICovLAogCQkJCUNENjEyMkQxMjU1OUI4
RjIwMEZDNjU3QSAvKiBPdXRwdXREZXZpY2UubW0gaW4gU291cmNlcyAqLywKIAkJCQlBMUY2M0NB
MDIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL0NvcmVUZXh0U29mdExpbmsuY3Bw
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xNTA4MWEwOWEwN2EwYzYwZWU3MTVlOGY4MGI3N2E5ZDg4YjMzN2UwCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9Db3JlVGV4dFNvZnRMaW5rLmNwcApA
QCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lu
Y2x1ZGUgPHBhbC9zcGkvY2YvQ29yZVRleHRTUEkuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtp
bmcuaD4KKworU09GVF9MSU5LX1BSSVZBVEVfRlJBTUVXT1JLX0ZPUl9TT1VSQ0UoUEFMLCBPVFNW
RykKKworU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJs
ZUNyZWF0ZUZyb21EYXRhLCBPVFNWR1RhYmxlUmVmLCAoQ0ZEYXRhUmVmIHN2Z1RhYmxlLCB1bnNp
Z25lZCB1bml0c1BlckVtLCBDR0Zsb2F0IGZvbnRTaXplKSwgKHN2Z1RhYmxlLCB1bml0c1BlckVt
LCBmb250U2l6ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9UU1ZHLCBP
VFNWR1RhYmxlR2V0RG9jdW1lbnRJbmRleEZvckdseXBoLCBDRkluZGV4LCAoT1RTVkdUYWJsZVJl
ZiB0YWJsZSwgQ0dHbHlwaCBnbHlwaCksICh0YWJsZSwgZ2x5cGgpKQorU09GVF9MSU5LX0ZVTkNU
SU9OX0ZPUl9TT1VSQ0UoUEFMLCBPVFNWRywgT1RTVkdUYWJsZVJlbGVhc2UsIHZvaWQsIChPVFNW
R1RhYmxlUmVmIHRhYmxlKSwgKHRhYmxlKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvY2YvQ29yZVRleHRTb2Z0TGluay5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9D
b3JlVGV4dFNvZnRMaW5rLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQwYzAxZDBlYjAxOTc0MzVmNDdlM2ZmNTJh
ZTFmNjExNGMwYjg2ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvQ29yZVRleHRTb2Z0TGluay5oCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKKyNpbmNsdWRlIDxwYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmg+CisjaW5jbHVk
ZSA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFNRVdPUktfRk9SX0hFQURFUihQ
QUwsIE9UU1ZHKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9UU1ZHLCBP
VFNWR1RhYmxlQ3JlYXRlRnJvbURhdGEsIE9UU1ZHVGFibGVSZWYsIChDRkRhdGFSZWYgc3ZnVGFi
bGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpLCAoc3ZnVGFibGUsIHVu
aXRzUGVyRW0sIGZvbnRTaXplKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwg
T1RTVkcsIE9UU1ZHVGFibGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgsIENGSW5kZXgsIChPVFNW
R1RhYmxlUmVmIHRhYmxlLCBDR0dseXBoIGdseXBoKSwgKHRhYmxlLCBnbHlwaCkpCitTT0ZUX0xJ
TktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9UU1ZHLCBPVFNWR1RhYmxlUmVsZWFzZSwgdm9p
ZCwgKE9UU1ZHVGFibGVSZWYgdGFibGUpLCAodGFibGUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvT1RTVkdUYWJsZS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDUzYzA0ZjU0OGE3NTZhMWJmZDc3YjZiNzFl
YTFiMzE5NzcwY2I4NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
Y2YvT1RTVkdUYWJsZS5jcHAKQEAgLTAsMCArMSw2MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiT1RTVkdUYWJsZS5oIgorCisjaW5jbHVkZSAiQ29yZVRl
eHRTb2Z0TGluay5oIgorCituYW1lc3BhY2UgUEFMIHsKKworT1RTVkdUYWJsZTo6T1RTVkdUYWJs
ZSgpID0gZGVmYXVsdDsKKworT1RTVkdUYWJsZTo6T1RTVkdUYWJsZShDRkRhdGFSZWYgc3ZnVGFi
bGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpCisgICAgOiB0YWJsZShp
c09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgPyBzb2Z0TGlua09UU1ZHT1RTVkdUYWJsZUNyZWF0
ZUZyb21EYXRhKHN2Z1RhYmxlLCB1bml0c1BlckVtLCBmb250U2l6ZSkgOiBudWxscHRyKQorewor
fQorCitPVFNWR1RhYmxlOjpPVFNWR1RhYmxlKE9UU1ZHVGFibGUmJiBvdGhlcikKK3sKKyAgICBz
dGQ6OnN3YXAodGFibGUsIG90aGVyLnRhYmxlKTsKK30KKworT1RTVkdUYWJsZTo6fk9UU1ZHVGFi
bGUoKQoreworICAgIGlmIChpc09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkgJiYgdGFibGUpCisg
ICAgICAgIHNvZnRMaW5rT1RTVkdPVFNWR1RhYmxlUmVsZWFzZSh0YWJsZSk7Cit9CisKK09UU1ZH
VGFibGUmIE9UU1ZHVGFibGU6Om9wZXJhdG9yPShPVFNWR1RhYmxlJiYgb3RoZXIpCit7CisgICAg
aWYgKGlzT1RTVkdGcmFtZXdvcmtBdmFpbGFibGUoKSAmJiB0YWJsZSkgeworICAgICAgICBzb2Z0
TGlua09UU1ZHT1RTVkdUYWJsZVJlbGVhc2UodGFibGUpOworICAgICAgICB0YWJsZSA9IG51bGxw
dHI7CisgICAgfQorICAgIHN0ZDo6c3dhcCh0YWJsZSwgb3RoZXIudGFibGUpOworICAgIHJldHVy
biAqdGhpczsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9P
VFNWR1RhYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NmL09UU1ZHVGFibGUuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wYTQ2ZWI3MDY4MWE4YzgyZmM3MGVkZjUxMzVlN2FmZTNjMTJhNTM3Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jZi9PVFNWR1RhYmxlLmgKQEAgLTAs
MCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHBhbC9z
cGkvY2YvQ29yZVRleHRTUEkuaD4KKworbmFtZXNwYWNlIFBBTCB7CisKK3N0cnVjdCBPVFNWR1Rh
YmxlIHsKKyAgICBPVFNWR1RhYmxlKCk7CisgICAgT1RTVkdUYWJsZShDRkRhdGFSZWYgc3ZnVGFi
bGUsIHVuc2lnbmVkIHVuaXRzUGVyRW0sIENHRmxvYXQgZm9udFNpemUpOworICAgIE9UU1ZHVGFi
bGUoY29uc3QgT1RTVkdUYWJsZSYpID0gZGVsZXRlOworICAgIE9UU1ZHVGFibGUoT1RTVkdUYWJs
ZSYmKTsKKyAgICB+T1RTVkdUYWJsZSgpOworCisgICAgT1RTVkdUYWJsZSYgb3BlcmF0b3I9KGNv
bnN0IE9UU1ZHVGFibGUmKSA9IGRlbGV0ZTsKKyAgICBPVFNWR1RhYmxlJiBvcGVyYXRvcj0oT1RT
VkdUYWJsZSYmKTsKKworICAgIE9UU1ZHVGFibGVSZWYgdGFibGUgeyBudWxscHRyIH07Cit9Owor
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaAppbmRleCA0
ODFkMWJmNWFmYzBhYjYwOTE1MjRkMGVlY2E5YWM3MDc4Y2ExYzBhLi42ZjU2YTFhYzE2NjY3ZDM4
YTQ4OWZiMWZhMTI4OGI5MTdjZGJmMGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3Bp
L2NmL0NvcmVUZXh0U1BJLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZiBVU0UoQVBQTEVfSU5URVJO
QUxfU0RLKQogCiAjaW5jbHVkZSA8Q29yZVRleHQvQ29yZVRleHRQcml2Lmg+CisjaW5jbHVkZSA8
T1RTVkcvT1RTVkcuaD4KIAogI2Vsc2UKIApAQCAtODIsNiArODMsOCBAQCBlbnVtIHsKICAgICBr
Q1RGb250VHJhaXRFbXBoYXNpemVkID0ga0NURm9udFRyYWl0Qm9sZCwKIH07CiAKK3R5cGVkZWYg
Y29uc3Qgc3RydWN0IF9fT1RTVkdUYWJsZSAqIE9UU1ZHVGFibGVSZWY7CisKICNlbmRpZgogCiBX
VEZfRVhURVJOX0NfQkVHSU4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApp
bmRleCBjN2IwNzJlNjZjNjMxNWQyNmE4YzkyODk5Y2U1MDJiMDdhZTAxMGJkLi5jN2RhNTQ5M2Zj
MTQ2NDAxOGE3MWFiMjE4OWZhNTVmNmI2YmIzMmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvRm9udC5oCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpcyBwYXJ0
IG9mIHRoZSBpbnRlcm5hbCBmb250IGltcGxlbWVudGF0aW9uLgogICoKLSAqIENvcHlyaWdodCAo
QykgMjAwNi0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAwNi0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHly
aWdodCAoQykgMjAwNy0yMDA4IFRvcmNoIE1vYmlsZSwgSW5jLgogICoKICAqIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTQy
LDYgKzQyLDcgQEAKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogI2luY2x1ZGUgPENvcmVGb3VuZGF0
aW9uL0NvcmVGb3VuZGF0aW9uLmg+CisjaW5jbHVkZSA8cGFsL2NmL09UU1ZHVGFibGUuaD4KICNp
bmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAjZW5kaWYKIApAQCAtMjE5LDYgKzIyMCw5IEBAIHB1
YmxpYzoKICAgICBib29sIGNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNvbnN0
IFVDaGFyKiwgc2l6ZV90KSBjb25zdDsKICAgICB2b2lkIGFwcGx5VHJhbnNmb3JtcyhHbHlwaEJ1
ZmZlciYsIHVuc2lnbmVkIGJlZ2lubmluZ0dseXBoSW5kZXgsIHVuc2lnbmVkIGJlZ2lubmluZ1N0
cmluZ0luZGV4LCBib29sIGVuYWJsZUtlcm5pbmcsIGJvb2wgcmVxdWlyZXNTaGFwaW5nLCBjb25z
dCBBdG9tU3RyaW5nJiBsb2NhbGUsIFN0cmluZ1ZpZXcgdGV4dCwgVGV4dERpcmVjdGlvbikgY29u
c3Q7CiAKKyAgICAvLyBSZXR1cm5zIG51bGxvcHQgaWYgbm9uZSBvZiB0aGUgZ2x5cGhzIGFyZSBP
VC1TVkcgZ2x5cGhzLgorICAgIE9wdGlvbmFsPEJpdFZlY3Rvcj4gZmluZE9UU1ZHR2x5cGhzKGNv
bnN0IEdseXBoQnVmZmVyR2x5cGgqLCB1bnNpZ25lZCBjb3VudCkgY29uc3Q7CisKICNpZiBQTEFU
Rk9STShXSU4pCiAgICAgU0NSSVBUX0ZPTlRQUk9QRVJUSUVTKiBzY3JpcHRGb250UHJvcGVydGll
cygpIGNvbnN0OwogICAgIFNDUklQVF9DQUNIRSogc2NyaXB0Q2FjaGUoKSBjb25zdCB7IHJldHVy
biAmbV9zY3JpcHRDYWNoZTsgfQpAQCAtMjkzLDYgKzI5Nyw3IEBAIHByaXZhdGU6CiAgICAgbXV0
YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlBbGxTbWFsbENhcHM7
CiAgICAgbXV0YWJsZSBPcHRpb25hbDxCaXRWZWN0b3I+IG1fZ2x5cGhzU3VwcG9ydGVkQnlQZXRp
dGVDYXBzOwogICAgIG11dGFibGUgT3B0aW9uYWw8Qml0VmVjdG9yPiBtX2dseXBoc1N1cHBvcnRl
ZEJ5QWxsUGV0aXRlQ2FwczsKKyAgICBtdXRhYmxlIE9wdGlvbmFsPFBBTDo6T1RTVkdUYWJsZT4g
bV9vdFNWR1RhYmxlOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVU
ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRD
YXNjYWRlQ29yZVRleHQuY3BwCmluZGV4IGFmZTM3M2I4NDE4ZjMwMzg5YTQ1YzhmMmMyMzgyODZh
ZTM5NDBhNjAuLjZmZjAwYmZiZDU0YTJiOGExOGVlYzA1ODQ5MDc5MzU0YzAyMTJkYjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNj
YWRlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVk
ZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUg
IkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCIKICNpbmNs
dWRlIDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0
cmFzLmg+CiAKQEAgLTE5MSw2ICsxOTIsOCBAQCB2b2lkIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhz
KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRm9udCYgZm9udCwgY29uc3QgRwogCiAg
ICAgQ0dDb250ZXh0UmVmIGNnQ29udGV4dCA9IGNvbnRleHQucGxhdGZvcm1Db250ZXh0KCk7CiAK
KyAgICBSRUxFQVNFX0FTU0VSVCghaXNJbkdQVVByb2Nlc3MoKSB8fCAhZm9udC5maW5kT1RTVkdH
bHlwaHMoZ2x5cGhzLCBudW1HbHlwaHMpKTsKKwogICAgIGJvb2wgc2hvdWxkQW50aWFsaWFzID0g
dHJ1ZTsKICAgICBib29sIHNob3VsZFNtb290aEZvbnRzID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4
dC5jcHAKaW5kZXggOTc1NTViZTEyOTMwODg1ZWQxNzI2MWUwMGUzYTU5OGQwNGRhOTgwNy4uZWY4
NmU0YzNjMmJiYmE4NzQ2ZTI0MWU0MzUxZTc4MGU3NDMzZDMxNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQu
Y3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIwIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDIxIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4
ZXkgUHJvc2t1cnlha292CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC00NCw2ICs0NCw3IEBACiAKICNp
ZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlICJMb2NhbGVDb2NvYS5oIgorI2luY2x1ZGUgPHBh
bC9jZi9Db3JlVGV4dFNvZnRMaW5rLmg+CiAjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oPgogI2Vsc2UKICNpbmNsdWRlIDxwYWwvc3BpL3dpbi9Db3JlVGV4dFNQSVdpbi5oPgpAQCAt
Nzc0LDQgKzc3NSwzMyBAQCBib29sIEZvbnQ6OmlzUHJvYmFibHlPbmx5VXNlZFRvUmVuZGVySWNv
bnMoKSBjb25zdAogICAgIH0pOwogfQogCitPcHRpb25hbDxCaXRWZWN0b3I+IEZvbnQ6OmZpbmRP
VFNWR0dseXBocyhjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIHVuc2lnbmVkIGNvdW50
KSBjb25zdAoreworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGlmICghbV9vdFNWR1RhYmxlKSB7
CisgICAgICAgIGlmIChhdXRvIHRhYmxlRGF0YSA9IGFkb3B0Q0YoQ1RGb250Q29weVRhYmxlKHBs
YXRmb3JtRGF0YSgpLmN0Rm9udCgpLCBrQ1RGb250VGFibGVTVkcsIGtDVEZvbnRUYWJsZU9wdGlv
bk5vT3B0aW9ucykpKQorICAgICAgICAgICAgbV9vdFNWR1RhYmxlID0gUEFMOjpPVFNWR1RhYmxl
KHRhYmxlRGF0YS5nZXQoKSwgZm9udE1ldHJpY3MoKS51bml0c1BlckVtKCksIHBsYXRmb3JtRGF0
YSgpLnNpemUoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fb3RTVkdUYWJsZSA9IHt7
IH19OworICAgIH0KKworICAgIGlmICghUEFMOjppc09UU1ZHRnJhbWV3b3JrQXZhaWxhYmxlKCkg
fHwgIW1fb3RTVkdUYWJsZS52YWx1ZSgpLnRhYmxlKQorICAgICAgICByZXR1cm4geyB9OworCisg
ICAgT3B0aW9uYWw8Qml0VmVjdG9yPiByZXN1bHQ7CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsg
aSA8IGNvdW50OyArK2kpIHsKKyAgICAgICAgaWYgKFBBTDo6c29mdExpbmtPVFNWR09UU1ZHVGFi
bGVHZXREb2N1bWVudEluZGV4Rm9yR2x5cGgobV9vdFNWR1RhYmxlLnZhbHVlKCkudGFibGUsIGds
eXBoc1tpXSkgIT0ga0NGTm90Rm91bmQpIHsKKyAgICAgICAgICAgIGlmICghcmVzdWx0KQorICAg
ICAgICAgICAgICAgIHJlc3VsdCA9IEJpdFZlY3Rvcihjb3VudCk7CisgICAgICAgICAgICByZXN1
bHQudmFsdWUoKS5xdWlja1NldChpKTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gcmVz
dWx0OworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZ2x5cGhzKTsKKyAgICBVTlVTRURfUEFSQU0o
Y291bnQpOworICAgIHJldHVybiB7IH07CisjZW5kaWYKK30KKwogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd0ds
eXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IDFlY2E1MDNiNWU0MDhlZmY1Yzc1YWE0OTI2
ZmJmY2JmMjlhZmVlM2QuLmQxMDNiMWI3Mjk3MThhODE5NzE2Y2Q1M2FhY2ViNjQwYTZmNTVkZTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0
cy9EaXNwbGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3REcmF3R2x5
cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTM2Miw2ICszNjIsNTUgQEAgdm9pZCBEcmF3R2x5
cGhzUmVjb3JkZXI6OnJlY29yZERyYXdJbWFnZShDR1JlbmRlcmluZ1N0YXRlUmVmLCBDR0dTdGF0
ZVJlZiBnc3RhdGUKICAgICBtX293bmVyLnRyYW5zbGF0ZSgwLCAtKHJlY3Quc2l6ZS5oZWlnaHQg
KyAyICogcmVjdC5vcmlnaW4ueSkpOwogfQogCitzdHJ1Y3QgR2x5cGhzQW5kQWR2YW5jZXNTdG9y
YWdlIHsKKyAgICBWZWN0b3I8R2x5cGhCdWZmZXJHbHlwaD4gZ2x5cGhzOworICAgIFZlY3RvcjxH
bHlwaEJ1ZmZlckFkdmFuY2U+IGFkdmFuY2VzOworfTsKKworc3RydWN0IEdseXBoc0FuZEFkdmFu
Y2VzIHsKKyAgICBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHM7CisgICAgY29uc3QgR2x5
cGhCdWZmZXJBZHZhbmNlKiBhZHZhbmNlczsKKyAgICB1bnNpZ25lZCBudW1HbHlwaHM7CisgICAg
R2x5cGhCdWZmZXJBZHZhbmNlIGluaXRpYWxBZHZhbmNlOworICAgIE9wdGlvbmFsPEdseXBoc0Fu
ZEFkdmFuY2VzU3RvcmFnZT4gc3RvcmFnZTsKK307CisKK3N0YXRpYyBHbHlwaHNBbmRBZHZhbmNl
cyBmaWx0ZXJPdXRPVFNWR0dseXBocyhjb25zdCBGb250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZl
ckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVmZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2ln
bmVkIG51bUdseXBocykKK3sKKyAgICBhdXRvIG90c3ZnR2x5cGhzID0gZm9udC5maW5kT1RTVkdH
bHlwaHMoZ2x5cGhzLCBudW1HbHlwaHMpOworICAgIGlmICghb3RzdmdHbHlwaHMpCisgICAgICAg
IHJldHVybiB7IGdseXBocywgYWR2YW5jZXMsIG51bUdseXBocywgbWFrZUdseXBoQnVmZmVyQWR2
YW5jZSgpLCB7IH19OworCisgICAgQVNTRVJUKG90c3ZnR2x5cGhzLT5zaXplKCkgPj0gbnVtR2x5
cGhzKTsKKworICAgIEdseXBoc0FuZEFkdmFuY2VzIHJlc3VsdDsKKyAgICByZXN1bHQuaW5pdGlh
bEFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKCk7CisgICAgcmVzdWx0LnN0b3JhZ2Ug
PSBHbHlwaHNBbmRBZHZhbmNlc1N0b3JhZ2UoKTsKKworICAgIHJlc3VsdC5zdG9yYWdlLT5nbHlw
aHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShudW1HbHlwaHMpOworICAgIHJlc3VsdC5zdG9yYWdl
LT5hZHZhbmNlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG51bUdseXBocyk7CisKKyAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtR2x5cGhzOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKHJl
c3VsdC5zdG9yYWdlLT5nbHlwaHMuc2l6ZSgpID09IHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5z
aXplKCkpOworICAgICAgICBpZiAob3RzdmdHbHlwaHMtPnF1aWNrR2V0KGkpKSB7CisgICAgICAg
ICAgICBpZiAocmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLmlzRW1wdHkoKSkKKyAgICAgICAgICAg
ICAgICByZXN1bHQuaW5pdGlhbEFkdmFuY2UgPSBtYWtlR2x5cGhCdWZmZXJBZHZhbmNlKHNpemUo
cmVzdWx0LmluaXRpYWxBZHZhbmNlKSArIHNpemUoYWR2YW5jZXNbaV0pKTsKKyAgICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMubGFzdCgpID0g
bWFrZUdseXBoQnVmZmVyQWR2YW5jZShzaXplKHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy5sYXN0
KCkpICsgc2l6ZShhZHZhbmNlc1tpXSkpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
cmVzdWx0LnN0b3JhZ2UtPmdseXBocy51bmNoZWNrZWRBcHBlbmQoZ2x5cGhzW2ldKTsKKyAgICAg
ICAgICAgIHJlc3VsdC5zdG9yYWdlLT5hZHZhbmNlcy51bmNoZWNrZWRBcHBlbmQoYWR2YW5jZXNb
aV0pOworICAgICAgICB9CisgICAgICAgIEFTU0VSVChyZXN1bHQuc3RvcmFnZS0+Z2x5cGhzLnNp
emUoKSA9PSByZXN1bHQuc3RvcmFnZS0+YWR2YW5jZXMuc2l6ZSgpKTsKKyAgICB9CisKKyAgICBy
ZXN1bHQuZ2x5cGhzID0gcmVzdWx0LnN0b3JhZ2UtPmdseXBocy5kYXRhKCk7CisgICAgcmVzdWx0
LmFkdmFuY2VzID0gcmVzdWx0LnN0b3JhZ2UtPmFkdmFuY2VzLmRhdGEoKTsKKyAgICByZXN1bHQu
bnVtR2x5cGhzID0gcmVzdWx0LnN0b3JhZ2UtPmdseXBocy5zaXplKCk7CisKKyAgICByZXR1cm4g
cmVzdWx0OworfQorCiB2b2lkIERyYXdHbHlwaHNSZWNvcmRlcjo6ZHJhd0dseXBocyhjb25zdCBG
b250JiBmb250LCBjb25zdCBHbHlwaEJ1ZmZlckdseXBoKiBnbHlwaHMsIGNvbnN0IEdseXBoQnVm
ZmVyQWR2YW5jZSogYWR2YW5jZXMsIHVuc2lnbmVkIG51bUdseXBocywgY29uc3QgRmxvYXRQb2lu
dCYgc3RhcnRQb2ludCwgRm9udFNtb290aGluZ01vZGUgc21vb3RoaW5nTW9kZSkKIHsKICAgICBp
ZiAobV9kcmF3R2x5cGhzRGVjb25zdHJ1Y3Rpb24gPT0gRHJhd0dseXBoc0RlY29uc3RydWN0aW9u
OjpEb250RGVjb25zdHJ1Y3QpIHsKQEAgLTM3MSw4ICs0MjAsMTMgQEAgdm9pZCBEcmF3R2x5cGhz
UmVjb3JkZXI6OmRyYXdHbHlwaHMoY29uc3QgRm9udCYgZm9udCwgY29uc3QgR2x5cGhCdWZmZXJH
bHlwaCogZ2wKIAogICAgIEFTU0VSVChtX2RyYXdHbHlwaHNEZWNvbnN0cnVjdGlvbiA9PSBEcmF3
R2x5cGhzRGVjb25zdHJ1Y3Rpb246OkRlY29uc3RydWN0KTsKIAorICAgIC8vIEZJWE1FOiA8cmRh
cjovL3Byb2JsZW0vNzAxNjY1NTI+IFJlY29yZCBPVFNWRyBnbHlwaHMuCisgICAgR2x5cGhzQW5k
QWR2YW5jZXMgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMgPSBmaWx0ZXJPdXRP
VFNWR0dseXBocyhmb250LCBnbHlwaHMsIGFkdmFuY2VzLCBudW1HbHlwaHMpOworICAgIEFTU0VS
VChnbHlwaHNBbmRBZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5nbHlwaHMgPT0gZ2x5cGhzIHx8
IGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocyA9PSBnbHlwaHNBbmRB
ZHZhbmNlc1dpdGhvdXRPVFNWR0dseXBocy5zdG9yYWdlLT5nbHlwaHMuZGF0YSgpKTsKKyAgICBB
U1NFUlQoZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMgPT0gYWR2
YW5jZXMgfHwgZ2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMgPT0g
Z2x5cGhzQW5kQWR2YW5jZXNXaXRob3V0T1RTVkdHbHlwaHMuc3RvcmFnZS0+YWR2YW5jZXMuZGF0
YSgpKTsKKwogICAgIHByZXBhcmVJbnRlcm5hbENvbnRleHQoZm9udCwgc21vb3RoaW5nTW9kZSk7
Ci0gICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRleHQsIGZvbnQsIGds
eXBocywgYWR2YW5jZXMsIG51bUdseXBocywgc3RhcnRQb2ludCwgc21vb3RoaW5nTW9kZSk7Cisg
ICAgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMobV9pbnRlcm5hbENvbnRleHQsIGZvbnQsIGdseXBo
c0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZHR2x5cGhzLmdseXBocywgZ2x5cGhzQW5kQWR2YW5jZXNX
aXRob3V0T1RTVkdHbHlwaHMuYWR2YW5jZXMsIGdseXBoc0FuZEFkdmFuY2VzV2l0aG91dE9UU1ZH
R2x5cGhzLm51bUdseXBocywgc3RhcnRQb2ludCArIHNpemUoZ2x5cGhzQW5kQWR2YW5jZXNXaXRo
b3V0T1RTVkdHbHlwaHMuaW5pdGlhbEFkdmFuY2UpLCBzbW9vdGhpbmdNb2RlKTsKICAgICBjb25j
bHVkZUludGVybmFsQ29udGV4dCgpOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNjZmNDExM2M2OGRlNGU4OTM3ZjQ3
NTdiZjI0YmZmMDVjM2ZiZmY4My4uMDgwNDQwNTVmNGY0NGI4MjM5M2YxZTYwMmRmM2Q1Y2Y1YzEz
YTMyYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIxLTAyLTE1ICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBUZW1wb3Jh
cmlseSBkaXNhYmxlIGRyYXdpbmcgT1QtU1ZHIGdseXBocyBpbiB0aGUgR1BVIHByb2Nlc3MgdW50
aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIHByb3Blcmx5CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE3NDQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
Lzc0MjIyMzM0PgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAg
ICBDcmVhdGUgYW4gT1RTVkcgZm9udCBmb3IgdGVzdGluZy4KKyAgICAgICAgVGhlIEEgZ2x5cGgg
aXMgYSBncmVlbiByZWN0YW5nbGUuCisgICAgICAgIFRoZSBCIGdseXBoIGlzIGFuIGltYWdlLgor
ICAgICAgICBUaGUgQyBnbHlwaCBpcyBhbm90aGVyIGltYWdlLCB3aXRoIGEgZGlmZmVyZW50IEVY
SUYgb3JpZW50YXRpb24gdGhhbiB0aGUgQiBnbHlwaC4KKworICAgICAgICBUaGlzIHRlc3QgbWFr
ZXMgc3VyZSB0aGF0IHR3byBnbHlwaHMgd2l0aCBhbiBPVFNWRyBnbHlwaCBiZXR3ZWVuIHRoZW0g
ZG9uJ3QgZ2V0IHNtb29zaGVkIHRvZ2V0aGVyIGluIGNhbnZhcy4KKworICAgICAgICBJJ20gZXhw
bGljaXRseSBub3QgdGVzdGluZyB0aGUgYmVoYXZpb3Igb2YgT1RTVkcgaXRzZWxmIGluIGNhbnZh
cywgYmVjYXVzZSB0aGlzIHRlc3QgZXhwbGljaXRseSBkaXNhYmxlcworICAgICAgICB0aGF0IGJl
aGF2aW9yLiBJIHRoaW5rIGl0J3Mgd3JvbmcgdG8gY3JlYXRlIHRlc3RzIHRoYXQgbWFrZSBzdXJl
IHNvbWUgZnVuY3Rpb25hbGl0eSBpcyBicm9rZW4sIGJlY2F1c2UgdGhlCisgICAgICAgIGZ1bmN0
aW9uYWxpdHksIHBoaWxvc29waGljYWxseSwgc2hvdWxkbid0IGJlIGJyb2tlbi4gCisKKyAgICAg
ICAgKiBmYXN0L3RleHQvb3Rzdmctc3BhY2luZy1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L3RleHQvb3Rzdmctc3BhY2luZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L3RleHQvcmVzb3VyY2VzL0FoZW0tU1ZHLnR0ZjogQWRkZWQuCisKIDIwMjEtMDItMTIgIEplciBO
b2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10gU291bmQgZG9lcyBu
b3QgcGxheSBvbiBZb3VUdWJlIGFmdGVyIHN3aXRjaGluZyBiYWNrIHRvIGZvcmVncm91bmQKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9vdHN2Zy1zcGFjaW5nLWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2luZy1leHBlY3RlZC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjlmM2Q5M2VmNjM0Y2IwMjQwYWQzNTBlNWViNDI5MTI2MjVkNDBlODgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvb3Rzdmctc3BhY2luZy1leHBlY3Rl
ZC5odG1sCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4K
KzwvaGVhZD4KKzxib2R5PgorPGNhbnZhcyBpZD0iY2FudmFzIiB3aWR0aD0iODAwIiBoZWlnaHQ9
IjgwMCI+Cis8c2NyaXB0PgorICAgIHZhciBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY2FudmFzIik7CisgICAgdmFyIGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgiMmQiKTsK
KyAgICBjb250ZXh0LmZpbGxSZWN0KDEwMCwgMjAsIDUwMCwgMTAwKTsKKzwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L290c3ZnLXNw
YWNpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9vdHN2Zy1zcGFjaW5nLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYjdlOGUxYjkzZDgwZjZjNDY0NmVmMjFmOWU4NTE1MzRiOGFjZjk2YQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9vdHN2Zy1zcGFjaW5nLmh0bWwKQEAg
LTAsMCArMSwyNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgor
QGZvbnQtZmFjZSB7CisgICAgZm9udC1mYW1pbHk6ICJXZWJGb250IjsKKyAgICBzcmM6IHVybCgi
cmVzb3VyY2VzL0FoZW0tU1ZHLnR0ZiIpIGZvcm1hdCgidHJ1ZXR5cGUiKTsKK30KKzwvc3R5bGU+
Cis8L2hlYWQ+Cis8Ym9keT4KKzxjYW52YXMgaWQ9ImNhbnZhcyIgd2lkdGg9IjgwMCIgaGVpZ2h0
PSI4MDAiPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKTsKK3ZhciBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
Y2FudmFzIik7Cit2YXIgY29udGV4dCA9IGNhbnZhcy5nZXRDb250ZXh0KCIyZCIpOworZG9jdW1l
bnQuZm9udHMubG9hZCgiMTAwcHggJ1dlYkZvbnQnIikudGhlbihmdW5jdGlvbigpIHsKKyAgICBj
b250ZXh0LmZvbnQgPSAiMTAwcHggJ1dlYkZvbnQnIjsKKyAgICBjb250ZXh0LmZpbGxUZXh0KCJh
QUJDYSIsIDEwMCwgMTAwKTsKKyAgICBjb250ZXh0LmZpbGxSZWN0KDIwMCwgMjAsIDMwMCwgMTAw
KTsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5
RG9uZSgpOworfSk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvdGV4dC9yZXNvdXJjZXMvQWhlbS1TVkcudHRmIGIvTGF5b3V0VGVzdHMv
ZmFzdC90ZXh0L3Jlc291cmNlcy9BaGVtLVNWRy50dGYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjhkNzFiNzc5OTU0
MDVjMGJkZWU2Zjk5OGUyODM3ZTRjMTFmZDYwOApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNDUx
MzIKemNtZUZaT1UoNCNtTEJ3Vkl3ODtzUWY4PGJ7Vz1NViRWcHRqK2Y3Yz9jRGMlekQmT3g7Mkta
aihUZSkwemA2OHJsCnpES2lHWjA1SiFOU3I4TURHR0dlSTBFUj9KTkwoYndqMlIlQlJxeX0qPVh8
Rkx0dGczciFTU29BeDM+NThfVik2PQp6dG81dkM/UWcmSD9jMkElXnpEem97cURDdkcjbkl2bUgr
ITYhSX1SQ0tMM3tFT0YjVjRBTzI3Tz45PXBjXlZoJDkKemAjWFA+YjstY31odTs3OD9jM2t8YGBe
QyhnfStvS3VpQExqXjZnKnhfQVU3YlEyc0FoP048SmUjc0IqRUFwSC0mCnplZndBQVRhbzFkZ1pi
Yjc3dkh9OStrWH1FPV5MRSppQCoyaDhBJChLTmRNSmFIPzY8X0Zae1dHOFBiM0o/YzFMWgp6K2Vl
b0N7cVI1ZUA0a0tlPE55Qkt3P0ZxY3lKUWBIPWw0Skx8R2o/XiVLeStPVUdXZTgrSkY3fmtwNEht
ZWZ3K3cKekAkaCZ9Kj87dFJ7PnJ5K2U7P1pXeU1PZlVjWXBVRXttI0d0P0p2TiF8Syo/aWNpQFZE
QDVsZVleSXZfI2Y5SDRNCno/NipHO0NxS3NAZkJXe0l7cER7eiRYXk5nM1coem0tflJDMTVDNysl
e08lOGIhYWBqP2VFV3hnQHxYWFF6eGVJagp6cFRIU04hUUo4V0llemMhYCoqK243NU14MT9PJXRf
engoYTQhciEtVnxNfENYZkF+THRgYDYmXzh+LTFDYH1YXykKeiVpbnN2c35eXmA/Tyh0QSNjaTV+
S1MwckNTXm5saXtMUk4kcTQ/byZLJXZBaGV0NiVETVI9Xmd7S1hGa19gfjQqCnoqVml3OHhhWXQ4
MXFnTXg1ITVnS19WNGB3JEtNKX4+R2xKaCl9WXY1aHRHe1k5TnZFZXpIWG5kSCsrOGFMd1Jwbwp6
eE50MHJ7dWspcXs9TDhUeGVOVUpDdjQ0RWdhMlN7P3x0KStZY3xHbDlRdXt9UHQ8Vnc9WjQ/QXEk
Ky1aaGF8fmcKentJTEQ8N2tgNmNwe2RJfnBLaWJXMSY4NmtffkJPRXRKPyQjOFp5NF9AQ1VjQ0Qx
WjVqSmVpVXxfX2BqZ2h3OSU8CnpsVUc1TGU7d3MmbDtuQktYPTJyYGMhOVRnO21WKDBKVEljOFdt
PE40OHsmJVJVR0tuTzs2S2ste0lOUWpKZzxCYgp6PmdWZkxvdmZlSWs1OVZjUFkleShwUHZISHBX
eHBxO2QkPztHfCRpY0RnOGRaQEYlJEw9a2xMPVB3UCtoTnVQXjAKens8UXMreztGaHU8TzRNTVNN
YHlQc3tKbDR4P2stU15wdnBRUzt4STFDfkJXbylBOCZgNXRVN15sfD5XekhTWGZoCno1YyR2Vk1S
V2Jla2pgRD8zYmlKeHR0S2s/PUxXcDl7Q3BwZiVqWTw0KklKbzFpe0NXeXY+Ryl9OE1UNXp5XkIk
Ngp6QFl7bTZAX2pXdGM7VHl3cFhhfUApb31QT2VMZFplQFNJOyZMcTQ/a2UkME1PM289flN6KldM
bXpPYHUzLXNVNXAKeiZ2U2lNZGV4ZkdeWno8c0hQLTNwQDwtbSVndkxfN3p1JSMkUFZuQn5gbWd0
S1d0LX56ZUNeYSErSVJWeSk+UEtfCnpYfEppZ0A5TlhDcmkjOCNIJTt9Y19KNmdqc28tV21KPlJF
eUchO0QyJnVNNXlRKytRVj9iU1M+ek9WZEc3dCMpJgp6P19XSz8lUClebHlNTWE9XlhMIWdmNiUk
JF97akdkSndRSStyS2B2N0hgPEZsWm9rPlMyaHthcntVYEJMJVZZVWoKemV5NlckaENnK2A7blV4
THpDVjs3S0pWaTwobEJ0S1R8YyUqbXhmUCZ8MCFQdVE0RDxhdE1zU1QhMmYxQGhSQDZWCnpqcng4
cXVPR3tVTTFDVjU2NXBqaVdqPT40ZUN+VW9LZmxHVl93RF5aX2Z6UHpudFAlKHY3eG92dEYpU0B3
WXtOcgp6QG9RezxDcl5SPCljMUF2JXpsMTspaHZHUXt9S1BzJExJT0slbTRCOHIrXklPbmRqcnYq
fGlTcypQUVg9OVp2YUkKem5KPkEwe1F9dVRgPVJUN3I1YyEtSzFhbyR6eTUjak41TjxMRFpkMzch
VH1ma0ktam4xZEhFXipzclJlN1UmVk8hCnpTTVRUWkdUP3lwRGdLLWtLRXNWS3pNa3NxZnF0d0h2
YyUrYig7eEZjVyNDejBVTDRqJHdoeCozY3djZDl6am8mKQp6I250eE8+Rj9DeCRTQ0NCbm5OenZn
PWJDVHduVHdHIy1VWTNvIT0oYCR0ZzMheWY+dnYwKmgxSDQwQnlVJnJXKXEKek5VYyl6WVU+ZSQ7
WSZLNTsySVNsNzFYQCpZI3xQMDhWWFkhK0JaZU1Pe3FsZk1xaEV0UHhtJUROT3hHOU9RKk1UCno3
ZjdTT09fXit1cmxVciMmc1BAQ1pMen4rKlY+eDNxazxebnkyVm1OZHlPc3F4PDBqdT4lO3c1JnFt
fSN6RU9tPgp6UTgxNVlaX1JCZSEoa1dnJlRpVHJgJj5VfExfNm93blk7JG51NTc9cSpPdlN9Qkdk
dWVGcit3SFd1NHNfLVQ5c3AKens9c3lWYD4qY18/RyhTZT1idDR7a1hhI051ZThfYk91RF51aVE1
eTJUaV9XVnhvamBTb3FhPno5MG0zfT5ieUNeCnp4Iz55PmtGUndBenJDe355SXlQbE9GbjZeJmU9
WFIoZi19TjI/NUt4V2xqbVR6djZhJSNyOzx0VX5Tc2xgKmxDZgp6biF8cHpJfS07bj4tLXpzZkFi
fm9va0lKeUl8PUs7PX0rYlJyem9ecmM7MnJ1Y3kpUXw+TUVIMy1DRlReUzgyJTgKelpvb0IzNUwz
MnZLRXk4NlNNI2dwOTJVYmxZYFNtM15eZV9mOXwhSE9STnBfbChiJilxfEVLbyYmN1hPJW55Z0k4
Cnp1OG0mRHFIYnMtIXVuTXx1KTFAOS02OCtUZmxQKXk1N2NLST0hWnw9eUFxIyVGYFZMMXVkfVhR
YTtiZiVwU3E2Rgp6cisoQH5LYkVVI2N0MS1UXz1tX1BFOUo9bF9WWmdBe0koREx3aCNRYTVCIzxk
e0koREx3aCNRYTVCIzxke1F0MkoKentEeiR0Mk5kWWhEeHVVWSFrZyZDJVFwK2BqNitLM1VgejBv
d3ZoYGotajByVV96XjRzdEklOCpBKmdzIStJKDY1Cnp2WHNIWHkpOCNgO1UmPUpMM2coe0lGRW9h
YCgrRCYmQXNYTmE/fUBJYE9Ae2xIVUp3dTxMaVlOS0tSdCQ5Skdvagp6dCl8dDVCaU97QkxsRVBP
RCloKG1TJnx3c0RIWG5jaHxHK0ZqZUR7eHooa0dfem50ITFzb1FgNyo/ZnJ0c1BRcD8KelBpTmtP
cmhZIVpKX0xBQGxWQztpayM4PFg2dnwjYnV5Xz4jKDZGUHhZaUdkJVB6bWxAVEJqcX0rXjNWfUlm
e0UwCnpncXY8aFIoOCo5WXBZYEVjMEI2R1M5YkVmTm5UVkB6aEA2Y0o+SF5GNX1ISkhxVypHaHAx
U0RhYGQoMitxbn5VcQp6bVlxfDNAaTUhPitkSztWcF5oY0xpfUJsI14hZ3pXVzFeNS14KzB6UD9O
S1FBPTs8Xys8RmBXKmJAQjg1cHErTWoKejdMUkIwKytLYD5PPUNnTT4zQ2ROX3FASkpXeT9uQXpf
fnMpbEBYcWdIKnopYHN6YGc8PSR+d1AtOG5QRklrY3ZiCnpfbV9NP0NmYmooYEI2cWNPWHdkYkFO
eHhfNzA2fD08UjlnOElfQmBvSyRmPF5kcEZJQjlMcW4rUUZ3QmRgWFU/IQp6YGA5R1h4PiF4RVZi
fHB4c04yRE0xZ2h4WCliak1CajZoLSs9WWZIQk1IPW9QKzl6TUs0PiMzbWI8ZytYRmdVa0sKemd4
aFcwPCZQdSkrZjRUSG9WWmNOPDA5VWFLKVI4NF4qJnRPUnQ8dWR5MnN0flFWKkEpOHxlRys5NTRI
SDRlKkolCnpRfWdSOHUzOUxxWV5gcTcpeTRFTXpfPmNiPVc5KEZWTWloTEspLSlPSn1IMHQ7RXct
eU9BaCtTKkclPiRnVDwxZAp6QTR4KnghM1gtMlJZfTZxJG5hWV5FfHEkJDl2QXBYTkIqVDlteHAk
PUFwSiVeYiVXZX50WHJAJlFMcjl4UDQrNEsKeiYtUXR2ZkdZdXJeaE9mXmleUnsqKGBQKTBFUlRF
MCl4U3B5NntrbiQ/dXs9TktqKERJdlh5OGdTWStQRTJYNnh1CnpvfVpgMz4xb1EtTVNkNjtCelJt
R0dqKzZwX1g4bn1AV1g/b1d4Q1c2LU5vNiVhSkApUXlzWCZgLXgxVGVwei1CPgp6IX4+X2l6RG1C
dF9xJSU4JkN3OWFKMGNCWGlhSmE0UjIoKllaQG9hRFdPTy1CMGQqJEYhekhfdmo1R0RUYmh1d0UK
ejd6TDwwbEklQFhqb3EwZkdHa1V2QjMqcGxjaUpCJHBDOUt0NT1mREcpMk4tUE47RGpJbmg7KjBg
Zk5TSylsRFl6CnpGUEZGTUEjMD9eMlJmNUNoUV9YIV9obkx5LVd+ZVVBOThFNTBIeDNya3YqNCZ8
QnxPaCM3MSh7NF9QZDRjazQtWAp6cmIya29HdEMoQGJhI0g3TVNGS2BXP2Yje28pKHJQcFIqOG9h
SyskZXoyX3ZmWT5XNWZPJUpsNWpGKHkyUEQ8PHEKekUoY3c5PiM9OXRgRUU2fWQtYzM/IUFSMG1j
P3hENXleMnFMITZ8WGxVVFlmbmhkbyRqNUAkaERtK3JafUMqfDAtCnpWeVYrSSZlND49S3AkYExL
XjxTb3kxenhJY3wwakRZK0dSJkIoZ1dvPSo9QTUlXkZOVypxNVNZeGRpYzA8VUFsTQp6UUBCYTI+
X19YIXpPWHMjTyp6Nnc4JElzPFE9RE5TTkpNKzt1PjJWY1ZrR1NGZFNYPDFZYV5AMD56UTUtIyU5
RSUKeitoU2MpeTNWUG8lVU5RV0Y/fn4+dTFhcX5hIU5BVD58UVF1akFpbG5kaGhKRWFQM35SOHp0
KlZYZGg9M1NuYHRCCnp7LUNgITJnaXVod3V4eGwxJWl5QiZQJTIySXl0N2Y4UE96bHRBPkBzO35P
ZT4qMCQyO3dDQ2A4ZT5vWntAbyUwLQp6LWc+RHcofklKZGNRWHNOZkhNcXE1bFome2NGX0FrKGck
WD4lZiN0ZzFHeVQ4d0A+PFYmTiNrNlhgZjF2O2dZWSoKenFZPn48MlFaUGlwdWBpSXgxeyV3JDRY
KFQkQ2VzU1Boc2FDakQ8WjFgO319RC1zdjM2YjFWM29FTT5Ve1pZO3wjCnowPj1fMkx3fj1rb0pQ
KiZaSklIMDlVcyt3QkFTRlNKNDF+U3EyaztmWjc+ZUV1VHlsaEA8SDlDKWJ5YWU3YkdGYQp6UGBe
SzVVWWEqcDZ7Q2RoZzBzaSNsZSlZR0xTRl9aOHR9dkdENT43Uzslb1VuNj5zdnUtYExnPnRIQCtj
RGFyRUwKenVJaEBTPSQ9TmZAPExEanUrRXl0cE9DbHJFTWRaQCVMWE0+YjRRV01rKU1UbD5sVC1t
RiZTfGtCdCZeI2s0K1o2CnpJbXMpQDF7NkoqYCtDUEBwVjAqM098ODspSCN7ayZeYXN1NlN3SCFN
Y3x6fE87KDh0XystJDQ0IU9nfiU8elh3PQp6ay1JUSZRYlBEfl4mSHR6N0BKJih7a2E7OWBFdWBi
R1ElX1heNVFESWQlaVR8c294UmxEI30oM145JlliUU9BKigKelptI0MzSTQ9alQydzlQbzxXKnA4
ZH5zdi10ZXlyLXheNnxOR0daXndAQjRIb2tWYE9qWVNiTlF7Qn1ScCRLc2UrCnolJUk4Q0x8OWNu
LVFWTEtMRjBsb1p8NEdnMlkyc2Uydl87TipCRlFIVj5gYU5fRmoxUjA+Pl9UTURYZ1pzfjFUdwp6
T14tQ09iOGJqdkdnfE05SEArWFB4OSEpWU5zVig/b0drUWd1V3Q/TVBsbypwajAwZnZXPTdISUVv
amglX2o4elkKenJkWmN6RUYwX25sdmFefGpeVSRTayZQbm5jbD5eTUQ/PWJlYCNDc1g9PkdBeFNQ
YFNLSj9EQDtnXylzPzUzZi1oCno2fUAmV0xnc20/RndoQU49NUFkNUFpUFRXTmNZTz96TVI1aHRy
TVUxSTY9fEdROW9gSVRSVGZ7NmdQcTVXK1REaAp6JGhrXlJIRlpMX3g3XmtUQntaez1CRjhwSHQx
QygwWihXLUBAbTlQPHdINn5PaXxLSj9xJmU+cERYYV51Y0pxaHkKeklPbnpHVj5kJSMjV3JCanlT
YUAreUBwfHs4Yl5QYyFXb2VLOHYtaGhtIUVjUWNUcnd3OX5oPjJmUj0pJHEkX0xVCnpDWWBWbzNp
fGUrQ0MmYH5RczJASWs4SlhFVzY5TGdhLVZLcnB0Z2wwTVJlPjVRNTYhXityeW0lZ3U4UDUrbSNp
Ywp6Wmo7NSYrd34haE19M3ZrYTRDI3lMOENANXBmZlYleHFEeHE8TDJEYlUyQiZFcTBpYipOOVpJ
ZUgtMWBBKFhEIXoKem5pVDl2JGtOVTJKcTlfcGdyfC1YIXYwbTFEVVZGJEhOOyh5XnZNRlRpSkRq
P0MtRXJXRnpvSiomRn1NaHJxMXRACnp1Rk9qdlU2QFUjSmxQVyF3QktFciR4bD4oMWROUDYzSThU
KyljRTM3T2VaUDU9Jkc3MCtTV0tQU318d247bjdjfgp6aFFGa0VDPzBxZ3FsOSYjI0twVmZofFpO
RU9VKG5OVnhxPng3aFpnP1AwWVB+K0RXYTZEJTsoRGlNUE54emhJJS0KeipKLSlYRmsmJGhJbj1M
eFhZST5xS2EwSSNhUFR2ailmQ151Yng4WU5AKm05NllLRVNBTVdqKSgpV3tAV2puSX5zCnpAbzJI
cko8NWY4c2ZMUmBidHZmc2FwT0Q2cS1FTH5ualJ9LT1RM3l7dH02OTN1aE9kRSZ4XlReQiY+OSZY
Sj07cAp6IVJHODE+dTtGUzNZIz8+YEUyPzBPR0VkOCs2d0RUSHolWjNLbjJRbFNQPjtOQzFoKj48
KGJLdmhNOHxEQCglYUkKenNCemNRYX03ZF93PUFePVlBSFBneUhjOzdxWTBHWiY7XkReTWhmeSlS
Z3NrTThNVl96WWNuRUthOyg9cmtgKl5tCnpQOWA9M3huPEttKGU4UkI4KVBPVXh3e2dYYzU3QG9H
PklWUDNhJTh9aU0oVU1fMDtIR0BpZ15hUl9DJityIUM3OQp6JXd0blRQNGpNalA2eHFRcSp4Vk53
e09eKig9Zz1iOHoobEppaCpyaiUpe31DTjEzUk5fb1ZQemElYEk3WXt0TFQKem1xU192IW1DejxX
QVQwekV7MyRGYXZvWFJKVT00NF9vU0F1cXR+bF8mKVp4VzlaJTV5K2JVMVlkWF9LRUVmRVVACnpv
YmdMalVXQ0lNb1JEKT8lSkJCNStvZTlsb1loQWdiTVYtUlYyWDc7NDFPSX08WCshdVRxLSZaQ1lp
bFklayRmQgp6U2xrRT4oQDtWaUZQbW1lc1YxKl5PZl5DMTlgQmIkSmdlSD5nKk5Vcmw0cldCeWJk
cT81JGJYbSRjWjxYN0R2UnMKemJYQEY+Sm9aITszM1FEcmtLbE0hcWVwJHgrKmZTYjRNdExESGtf
YEE9aShVSSlGUzJLeDlWN3lkWGtUPGtCWkhuCnojJWZIOzNaRC1WX1lqZGJKRXd9NEFLVEd3Iy14
dSRpM3xwajFYcTtuanpgfmxPPklJRSVzeCNSLWtZU35oMzJoPgp6Yig1XmshNT51MDlUZnxrRD8p
Qy1rSUFJWl47KGhAYSptfm97JW85RSUqelI9c2dnfWNxaWZkSjElWTtQLWI5XnAKemFaMnx9UXQ2
QipEYWowblAtRTQpQTJ1X0BSRW9aSS1PejxQdENzP3t6RUFqIyZlVHBWY1pGUXB7WTBTfU09djht
Cno+SUZYPjhwdktROUk+IWI0OXVGbnVHdUZpT2s4QHt0WkZFNSZfXlpVTi0oY31TVDU1PmFGMnNH
OTx3SnN6TjdWfQp6UU9yNGAjdFVNNHZoYml8dFZvPktQNzJ0KlAoeWZvdWgoKHo+MSU/NW50cjQl
SEBfaUxPSzIhe0gwbVZ+XzImNnoKemBKQm0qTXJZRjQzJU17KSg9KlN+dl56a2JBb2x2YFdSeDZj
K1ZNNE8+dlAkdl4zdGV0VEdKRV8+b2UtSiZ6bmlOCnpWbkA3NkhRR3U5Y2Z6aTtgbyhnMC1OVCs8
akV7K08lWnU2Rll4NypYalpAQVdxZnVMUzhEQVI3QXgyeDg7YlBUaAp6bnsxOUdHbmg7JCt2azAo
aG1rJjhrPk1VRmdnSn5YTjhYLSNUd2dTb2NDWHkhZTl2T3VBWWE5V0tWfkdzLXlDfmwKeiROeyhy
P3p8cShoRnxmOHlKQEdRRXNqe21pQ3sqUGUxdWJ+YUxzOGBtNjA3T1FTN1A3ZVU/Km5vI0VDeUl+
QVA3CnpwJHQ+OWQ/YGNic2UqYW5OKi1MWXJQSm88SSUjKlJzM1lAazEoa2AtV0ZUU25kSS1XYXly
PXlZPndBJE9fMVNvUAp6SWdPX3kqTng9T2F5QkYhWHVAOzAjP0B1YilGT0dQJjZJc0VWXjR+KHd1
d181ZnlRQ0E4UCNNSHg1UjVoKHA3Rj8KejwmY3xxUHppPWpBSHkoMXtJJl4xaVZPQlpHNEUkR0wt
VT5xKXpnIS1AQlRYTkspKUctP09tSWVkYnFDMW40WikrCnozLTsjSiVYO0RMPCp8aE1uPlpiRz5+
VGhoVGcmSDxzTmBZLTNDKDBxWEglR0dgQC00PiN5ZXkkb29yc1hsKiM9Qgp6QDJfMWdAWklgMjVp
Tyt7aHxfKj9aQkRpbVpVRkc0ZFhJJnQ1ISQ7S1d1QnZfZ2BVIzRHfV4+QGR9WH5GI0Zrc3YKenJl
MHE4TCs+bGBjcEp1bXY7dGFhMWRwd2F0U1drNFlmfj5tWE5SfmIqJExGenZfUiNkbjx2KXVxTmh2
Z3dKfExDCno+Pk59QUkjK09OPX5KQzsjJCNGOCluQXVSQms3bmxHcH5CPFluPmluQEFqJE0rYiVk
MzU2KX5jKyQhWG11JlBidgp6K3wlN0lDNzgyUFIyIy1vTHp5VzdvdDFDSGA8PlRSLVM2MEVuOGZG
OW9uaEZ8cyVhMiVHODFDdk1Nb3p6eCt9X2AKeiVoZmtGN2JNX0omYCZ5SiReQ0d7YVRwP1J4biFT
SkgmYmRZc2VJWWdOfVh3JCtPVEtHI0x6ejZ5U3sjfSUyUFpxCnp2dzIxSGt+WWp2a1ZUb1VAcXY0
QGM2cVgzYnNhJDs7eCMwdVZvQVhIbURyS2lXNFZuVWZIcDl3e1RZcG89c0BwVAp6RnAwRzNkVE4/
Y1BVNVFfeTs8QW9NREYob3I2LXRrMiFjVE56JG01YVkqN3d0Pn0wV15uNWxVI2d0YV4rJG1RST4K
emZXLUI8SSlqb21ITX1LK3Y5R0t7QVBaUD14VzF+VUIyd0NPNlBlWEcjQWFDZXlQdVY8cEluX08/
X1FiTWQxYTlyCnorYmd9N1VmO2MkRXdLbEBQeHBIKjhtdjUyZkUrIWshc2hZeSVyMilFQk1sPmkq
UFohZjY1ayROI3wjc3B6TjBrWAp6TUhRaC1XLXF1clBQWFQyb3dUemwkemlSYyZmNWh1RHNpJj5E
cW47ODs/Q1RtNDh6NX1JaXtgS3Q8UDtDbjZubykKemleI1BwZGVVZCt2dXFmdnFORVIoQGt4JUE5
ITxye2k9aUNxZn1KSUslTUdxcnRCWCl5bT1vI2Vna0NtNWhSTU50CnpBZ0NWMDEoJi0/MnplKExw
YmJjcFFPdT4mckBSS3MhfilpdGJ5QjI0Sm5aa1o2N2k/KW1+WHZaUUlXcGIjSkNaMgp6JlVON0M9
aX0rWXBpS0RZRStzO3Q2cztuQGp6NGp4O1BJb2BGXnFjPDIyLTZ0N3dNYkoqZDJFaEopbj45ZGVN
WUEKemFJYlNRbztjOSZvX2JyJD9YX3gpaiFEfUo+fjk2Rlczc085Q1Z0MUpZeFAzN3JSTjNpJXNx
KlJTcX16I0ppN0tHCnpVZShUajQ3Y3E7S1leIUUySlJOaCVOWFZ0dkA2WilJZFpiPVk7ITgmOSVa
fXApOU5XblQpU19qZyQyYnJzbkE9Mgp6K1I/NjN7P0lPNVM+RTVFOWd6JkpqWVhLelpmVihmclFl
dmBCOCk7cW92RCtfMTlEZExkY0puSk8/RFQ3TGBiZjUKejx1Xjc7ZmsjZW03UD9KaHVleXB8Umw9
c18zYHxfSHJGfEIpYjNPT1YlWj4zYWQpWEwwaVFVNjsrMVFoTnkxTlQ4Cnolb04ld2VzUHhiK0x0
aW9mPnY4NVphRS0mZk5fbXVPQFlCPjJaVFZmdFFMQ2deWkp+Y2AjUFZGeH45Rkg7KkdlVwp6ZEtH
PXo8QChKKk5QNiVpKHs+RGRIbWlgO2hiNn52TWV3UV87LXVaPVBWPzheNDVpQiZxVldybnZ0Zkpi
K3B7QG0KenF1TEElcGoldWUtJWFQKmNHWjs5U2N+XlU5dC1UbEgwQVVAODVqbWs3aklwaW1BYSRZ
ZGswcGgkLUt2SSZmaDFzCno7OWgmNl4mNVdRc3BsSykqT3BvMHRGQiYhQkR0bG5Mc0ZlRlFrMERu
QENEMzd3cClCdDRpbEh4aWhaTmYlfD47Qwp6RE1SanB0WVVUe3d1eTRKTChNQ1BZOG07USZlQHEt
R1UydyhZcih0TjhYVFNuJTVsblFjfksqWGQrZlFeMz9naWcKej4zN3QkVlJWWj9YT3EoZCVyS2Nx
d3JLb2RVSFVxLVNnfDwpaE1mfn1VI35+fTIpciVvVG48VVI5PEFyKSRVS2p2Cnpvc3BfK1Zic0w+
KlhNO2AjWF5ZKHdYTzN9VTB8YEYwb2daJC1nKXtlczckQT40eFdAPEY/cjNSYElWcDJLc3F8cwp6
JXFGQmlsU1d8YGduU3NZcz4hTHdfaSZwalROUHt0Z3NUc3VOWjM1cz9oa0B3VW1QOSooc1kyP1o3
P1hYRDc7dHcKeiUtRkdNJGROTjFFUD1UOzltSCgkRVRAPkQzRz9sZXV+b1JGYj1iNUVQRnM/cmh+
czU4OzxHJTIhXlEjOWtBeER8CnpjPnFxJEkoeHpvOXc+OztpJkZMR2JgTnZ6KDhQPTg8Qms5Ykto
TV8mUnlfMnc/WEtsP1ZUVTUtTl8mMUx1NCteeQp6aDQocTRvQVRxeHVoYyRNUWojMU89YGM8Ti0t
OGkwSU9pfH17JXU3SFctdj9aQShWd0laRFZgS2FEKjcwUjYmXnMKeiohcFBnWHl9RWQ7PH4yRnFF
NytTNnlgcUNNVS08WHUtZjB3KEI2cX4+YkNhaXpHazZgNDNrQiQ8YUZrZT9YLT9yCnpLPkdJVnpZ
V1FOaSRRO0goQShQfHQrcjBMPClzUnpUXmx5S2U/Mko1ZUVXeytyayNUTGJMWkdXR3xuLVlNSz1w
Zgp6bGZqMW0qJXl4NDUoey0rQyZvaGhuPHtHT0pYWCpxc3x9SypHZThuIXc2endldSNoOVItMFBI
YyVuX3h9O1R7MSEKemptaGwwTTkqWHV4MSFgJkNANkJ8bGgjV05LTkQ0cjg4bmdWKXQlaWJZb1ck
cnBjcDN+OURDY2dgKWo8Mj0zYEtjCno9Z3BvWE9geDdeQzY1ekhxdVl+fEc5KkJOY0lCNj9vdkFs
X3BHXiFiLTZgQyRHeD10JWhiQj4/R0d+ZlUyc1QmWAp6Vy0lcytTKVFDTG1ETE5GISQodFdyaDRj
QlV1TjE0MzkoMVFBaCVYbFUmUzEmMz0lVThfdzJwWGtVMmB4KiY0dE0KelYqVTJGWW1rVDIweWdB
OFNBOSQzTVZPejtmeEVEJHNsMlFDZz5VIXhTbm1Ccml3NkJzZHpAQWJXLXYrUzNiP2YwCnpJSm93
MTBWdlNlejJKfFVVPn1HUmRKNl5QLUZuWSU4V0g9cmJjcntlNGAjYGZEQE5XWUpoKXVfXnI+ZUo2
Qm1WSAp6PE9JcW14Ql5IT3hsR1F6TCt8c2N1OCZXdVJgUjJ9NXI9Z1JfcmtvKCFfeFJfZGdOM2RL
cWx4JnA9bnkpZio5OCQKeip7OWxXND09dFpyVjJuaSh3YFZwY3taYzImWTslPkB4dExjQlYlUCFP
OGNzKD18bChsR1Zxc1k9V2pOI0dwT2I3CnpYM2RhJFNqPnJfND59UTkpJn1Jdjg/Pkx1U1pYbHtZ
K01rNl49Tkd5S15NeW1XVChuRTUza1I4anAzOVdhMU1Cdgp6Mnt1MmpfbmZMPHpXUkRTKV9QYiZg
RmY9TWklJG1MZThiQj9pPlBiX3FmSHNkWXV3XlIpYjkkOylhSndgIzNWSjIKemNabl49KWJxPnBY
am1FbEdVa0xfRStqamFeNHBgMVo8VT5hNTs/eG1XOD1DPktPRDV8c3IyflooOVV7V3I+aSpoCnp5
KmJ8SmB9LWJ5bkhlWWpSVE5wdztUVn10M3peOXl7Y19sQGx4amA9PjFwP3I3RiReYjw+TVEtPUtI
bTtydjdPYgp6dWhnfHBASVk1KXlZaUl9P3R6UFc3JGZqOEdGfGpzNl89VX5BKjVQZUh5RkE8dzBk
eUE7Wmhne2k/enhJUV5fPkMKelB6WWVsdFVZYShgN1dAX2Q5N31SQ0cxWElDSW1QQEhAcmFNc25f
SXs9NX58UnlSKWEkSG50TU9tbjBVazJiQVJgCnpiVnFiK1ozQjVYP29TdlU9TT1kVFg5c2JhNzNK
N05aMj5aYS01RkxYJmhiWHtebSlqSnlwa2ZFVykwSWxNO3loMQp6ZSNeXnc4Z3tINkM+ZFZAOCZn
P1ZkfFduPjgkdyZaY2NyVWF4MHtfZUZTTlopeU5GeitnZkAxUm0rbylqZk1YVSQKemdRSlNsajY7
XzFqTCUpMiNuQW4wQDVFSCo+aiYoampsSGs0cUltPFBgKyhuRzlxelRoe2hwQ2RxaUJFVWM0VGtL
CnpiMDVhKFNYeHZ4PWckaEAybnlOfXBmRjduaTwrbHdHS28/fjl5azRWVl81RXFyJnFFc1BVQWJk
QytJKm1CR2NQeAp6b2xaUTV2PUxeR1NzV3pzO0xoKSZEZVRaPkY2ZUQ1RXtUQy1HWHZnPl99cGZD
YT1YZ3s9JTd5amhHdTltWDE3UloKeitjbCs7Q0wxQ29sLTFeR2xtbDMke1p5WGtUV0lAWj5OOCtW
aTdAKCE/RiUmYlVuQE9FdUpLJjwjZ05RUmg8VXJwCnpvc3hNVmxZMmRyUG0lSDskKSZ0ckpKLUQ3
RyNjQzN7WSheQmU9Tm1ZRSNZQU5vPUs4Qnk1TXIhVUllMyt3USo0TAp6Z0VyJko9XytXX2FXK0kp
dzheM15BQlNzNGwrNTghOTFMRTZieSkjVGp+KEEkY0ZFOSNTZXExP2tueUtxWXR8enkKemhVUGlo
K2RHQjZmdEtZOUROTjw4ZmxBO2B7MUM8TEpIdzZESTJzcX4mTEFoYjRscDA8NDtSYD9nRz84WHQ2
XiFSCnpFU0haOThqS3FgdHp4TUtSdVF2QWNvNWNaOzlzaGI7cjhwKkBkJT1vU0tKSUkjNlBhKjA1
en1ka3Vye2w9fj5vdwp6UipMLV5vPmY4MHVRUnV3VXt2RkliQ0lSOEN6JXx2MTc5RSRTalo+MG1Z
elhXOFBhN2xoOWxfN2Q8bnFmaSV4PyoKejQrQlIhU3wrPmgodEQzTilAUCR+R0tQVTBHREhUYV8z
TjRsX2daN2BTOWF3WWBKNj1RMn18YmR5X3B8PWt4V2p9Cnp0P1dFeVp7eGxXJVVMcX1ATm9wSlZD
OWc2YW1qUT02Wjk8SUBsanokO2R3fndjeWteTV97X0BTWkpzOyl7NmRSVgp6eyRTdFcpciFpaDcz
SCRmeG9lJGgrQ2h8VDJteUUmMXs4ajM7RiVYaS1GeXxnSDVsbGw5T0NxMXBDI0VrYjlWO0EKem5m
eHRWcjg4WHgxQFVeU0khbmZedXs/dExvKUE/cHg4QEIxVEEjUmpkPmZBMCQrRTBhcG9AdHtzcUp7
Y29DZCVwCnpJY3MqZ0dVO0NVUUskdkhkZk0zVHIwQ29PSUFzdE1CTklhKlk8NDN6QkVrZDtmRjRU
Q1R4P0xiYigqaT1HPCNyRAp6bF56ay02TVRnYk1QcU0kbiVwQE50ekdtb282TV8zZDZ8KEI5Wihi
LTErQkthQnFyY1N5ej1fYztLako8ZCk4PlIKejxRbTs8dWR2WEkqYyQ/KDd4RDFhUUt8Q3dASXNr
RlZ2JGkqaEI2Z0RiM01jdyNNZUBVRGltYCVDN31ETF4xR0pMCno8KWVgSDMtfCglZHppNXplWT14
eXVvbFlvIXJVNzZVMCNtc0ByZkBfMH1hNm1qM3UjJC1hTm5xWHFjYTA5SD4rRwp6U3E/KWtSRWM5
ODl4R3V3VHB8KkE+PHdUTztDWHZIbyQ5OH1pSVMrOSQzPmRJUFpZQDxGPzl7Q2o1Wlk0QWdBMSEK
ejhCYkJ2Xz9sT3ZBbCkwb1pkaSYqNkN5SXRfIX0+S1UzbUpHWGtQMUZYJXxwUXkkQiR9P0xmMlIz
JEJVLUpFWkN3CnpwYk1zIXF4ezdzZWEraFQ9e0I2JnJwKWhseFhjV2wmISNoc1dQTUV6WHo/PFJZ
cz17KGhVMTdEKWBweS10MSZMdAp6ZzlPK2B5bj1oeGxjJig1T0JWM2s+M3pWQ25qJnF0PHxhZ0pC
b3pkbVZXaiR6QSNgPVg7YTBvNy1TVVRWczNIb2kKeiRpY0FeVnFval5HI2YjSy19MEhAT3srSWsl
KFJNMEtkQChTRDM3RG1JKVFRbkFQekkxU0dVQ1BydTE/KFJ+JDB4Cnp4SDdCUz5iTTVoPDJKJWo7
RCRjJUg7ZnZ6XnVedl5eY3FVUU5YVip+akFVWFlJZHItWmQ3dFE7PWllPExifGBYSQp6R1VsVWIx
ME9SRWRBMiYyP1EoUHsmYz1+OTc8e3g1WmhtKFUhJlROT0MlQUR0eyRgeEgrbXZDUiljNDBZeFNi
ayUKemNgekEqMkpnTmswbUlsPHdvSW1oK2xORTt5ZE5nTD5BVU1UI3gjdClPWiEmZDdtPUFaTzNZ
djUrNiZgSlc0I3g1CnpQekdnaVVUXlQwYWJSfj9IOEQhUHdkNGpVXjt4UkRYK29WN0BMbkZXQzEk
bmQ4aHRjezNuXm5HRXUlM3h3SD0jVwp6RlY4Sn5GeiZfQ2g+YTl6YS1AM2lSI1hhMnJpbGphOCUz
XnRpaEZyQjJGKStoTyphWCZLdGg0IW5hQyhkS1o0b24KekhjWishU3BBKzY3SFMzTzN8elNARFQ1
aF91UmdmYGx2SV9kYzlVfDt2RmliU2t4JUtHSmdYUWo8Vnk4JHRYYF9DCnorPUZjeXUxdzlXSTJ7
VjEteU1mKDN5QDYxMzhfRmA+VjBefG1MPkwyTmtLeHVkT157IXh3R0oxUigwKVhHYy12fAp6P0lv
ZiVPflZXeCY2SilBYUZ+UHVDdDN4bj4rR3VwSFB6QCpVS0N5PHM3cjNJOC0oKzUwSkhxTk1ycThC
OHlRN0kKekA+bHxWdSVNYUBQT1VKWCUrdGJGMW8mSCNRYzk/VEwxUnhtNlZ2MjZ3bmNQejlnbm0z
VkYhZzMtPE5lV3ZXUGM5Cno/RTs5YW1hQExOV3NRRzhpMW1gcztMWXM7MCVjIWEqLXU2SjhWbUlp
JTt4SiVyTXZVNnVMIXEyakVvPDhmbjBHTwp6LVYqO2RAI0hQdCFJQSk+UEckLS1sekxZM1Zae0xA
Wk5QdCROQG4oUTZsKUZoSDw0QFFqZDtjJGA+SkVNTGptRDwKemQtYT0zWGEtWGNUIyF1TEZjTnVD
d3FebTc7N1l9JlZMI1pSVWREJDxYdWJnNjJ3bztMWjE7Q29FaFc4Xj4ocFdwCnozeUoxc04/eW5Q
bHAhOyQ7dnBrZ2lARmsjV2B5Z2VXISRxI19RfiR0USZ0UEZUTm1iNDE3U3FaSFc7Sl5nTE18TAp6
dDlSZy0+I2IkUTFXbjYlP0E8RlJPR29QYiM0KT8jOTA2MGdfY3xJNHojaU4qMmhLSmhoXk9eTDxO
YVZ9Rnx+SloKenlsTWB6THBAa0MjPktRSnNQLWw/JUhHS0ohenpRPGxWcyZXeHtlbm9JWShNeEBZ
SWN0ajctR0coUlYhTTt1OTIoCnomJHtDbGNYTXNwbXI4Y30lPSs3TFNFVWJrI29fSVBLdVIjeFRQ
dk1zJVgxQGwyd1hXPz1eVXRaWmgtQ015bTU3WQp6LSkhPnUmaUIyTEkxTkFgYl9kMCRBRjdDMzEz
TkRUUC1qQXc5ZGdsOyNPenBLc31ybyo5dmV6cDV3QDZvODNvSGgKelNYOCt1N2lNfkUlZjh4Viow
JFp7aTRjN0gjdDtVN3JaJCNiQilaOW08RnAmV0s4SU4/S1cpMEUhSmFpPntMbHJqCnpVSzdWMzRP
PXwoeUN7a1lqMVpMTyVIQWFiZClXWTJvTHVtZnVUelIyX04lbW53PzxlaWdlJlRiYilfdG4/Mz5w
Zgp6LSlgUFVvMSkoTGNzVn1OT0t7fWU2KmIteWpEUEBfaD04K2h1PEVCcj1hP2RMUVcjU3laanZ0
JSktMz9ZZGRrLUAKeiVWNT85ZyNWIWUjdl9hQiF4KUtNcVApXlpSaig1ZyN7d29ERlBkJDVQamBC
JFZLd2B5akdLVTU7JHwwVGFya21+Cnp8RTdeJUY0UVZjQXQ/YylocjhWSHs+WEhPbSVWYkwpUG9i
fk5Ue2ZFekxOSTlOZVhpMj8jfnFfWX57Pj1eQ1NqTwp6MXh4Mm1LT097PWZWcUxqQnJ3YDE8cUdK
QntgTiM8eCpvM2FoOTVRMDVEQ2QzbW5Ady10M2ItPUt4cUEjZWYlV3cKejtmbFZ9UipLfSE+eV4l
e09GNHlEYEBDdSppaHw+PnJVbDEmJjw5ZkpSUSVAWGM9ak85eklXd2M1MHk3bmxfdC1ECnpARnRJ
NzxldkFMWD9YNGlNOWsrbnludVRNI0sjeCgraytfKVBuWSUrVCRDc3Rtbkc8MzYma3x5PDIjRyQt
P05LNwp6aU9RUVEyZnEhfEQmNVcmRGJLdj1PeW91JVhKUiZaLVohNH0lKWM/K3dKQ25ETSFJZDhm
JmZOPzEmWG5BVD0hKWwKejs+RiFXQFBMNSZLJnApcEs0a2g/cmw1UUohTDQmcyEjRzFURGtnd003
Mz9rekg/ckhudWRDdlBqWDBxKkkobXhBCnpPVDZjXjxifWh6cTsoXkdSVSpgVTBVa1Z5IVBwU2Uo
IVg/YCZ+TEk4YEdIWjRGKipiTXp4cUJZeGpRPkUpYSMmNQp6eyV0ejtKUUM/Ul8qNjNkYylyUkJ1
VGQjNVY4UXhWdVU+MFlVMGpVJlJUIWs5dEBNfVB0dEVDTzBidTlLeCtSPFQKenlndT40ZU9mXytj
OTs2JGJTJH12IzJTSk45SF5GS3hRdEpCSl96T09eb1lBdUBOUS1EVWF8S2V3ZXVpKEd0cyV7Cno/
JGpISCk1anBmTkltZW56OTE9XlRRPmBydVJ5aiVfNGhYRjJhQUZjKXwhbGRleD5QUnI4ZyFNOFVK
fWJJbSVtewp6MSYlQzxDI259MF9iVCNYI3lnTGE4RVleantHTDF+PXtZV1ZVRGZvcm4lb1k0VT1K
RD9fJGN6NipsQDU4RGo9bWUKelZ6fGR+VGZgYztRTDVwQlJ9dUpKSFE7QkpqamVSZF8+djRXS1FC
dnVuc1c0QHUmcH1fcUx4S3dzdXZSMy1UbWZUCnpyfHImPilYfSZqQDAyZDQ+anBmO2hQZlNSc1Z9
dCo3SU1uRzxvY3hXazRAYCYpV2VpeFJiNS0+MiUmeHFfRnhhbAp6LUFnbURpNyRqQUxtSXtsVUxK
c081WDlsN01zZSR4engtfXtnYTQyQUgoPnRYK340M3M0RiU1YypadjBiS2g2RkkKel80NTd4MkFA
I2stYHc5fFQ3R2tYZ1pKYGg/e0JhIWVgPGUmPXVobyQ1ZEclPDJIK29yPE5OJiRncD0yQnMocjQm
CnpmS3piajteMCgwIXxuelZgTCh3Sj5+KXxBVjhqSVJPX1FgbT5wYSp+OzQxfEI9UkZOUiZqNVFx
en5SRSkyNnVBaAp6fEUkPD47Rm9uaiQ3RnhuRzhWXylgWXpeckw9KitNQEwlPFAjZDA0TjYmVWtC
cmF2Kj8kSW4mMz09eENGVklQR1cKeihtJXk/ZSs2RUAwN0hVOHBadUAlR3l8WGdyfUFJP2Jqa2l6
TyElaiE4RjMqMEArbEFoZEghOEV6bWZsantOPW0rCnpyRXNBQlV6Y0FIMlYoYnM3NHl4bmtwS1Bq
dCZzbiNfSjcoMU9DKXJscFk4e29hN2JJZk48I31Fe3ImWUA7b0tsQgp6e1pzeUg0fjdsLU00SkVu
e0hyRnkqPFdBKGRHcmR9e31xVi1eKnEzYXtfeVhBeCp6UGlhbGZDeFp8fm1TJiVmRWUKemBzZXh+
NCZaYXc4dFZERkFIKUVCKHgyQGtlczJIZ2VodTkzPWskO0h6cG4ycTRUWEwhcE0ldFp5blpnPGVY
YSsyCnp7aGE9PntJOVM3JGdCQklVU0lqJiQ/TTFUcFNtNkBgPnNBSEIzZUgxXm1YR2FNKm5NSGZi
KS1XNk9SU3JxQnFfNwp6Pzhvc19qQ0EjOT8jJSZ9ZUxCZ0grWiZYaHBVfThabjhXOEF2fD4wdUYl
JDVfemRBbExgIyUzRzw1TklqS2k1bVAKejsybWBKWWd+VFMjZWVQTDBifVpgO01kcEpgLTFkV2Am
QyVpS2daOHxhRDNqODBxXkktd2Z+JH4hX1c4RU1EXjl3Cnp1bCh7OCVraz95Q0pmP0o7LUEtXjJL
V0xha3E2I0JNMylPekJAMFdZMCswVSFxPG1mRUEjZ3h3OTU5Vk0qP3lHcgp6P1R8bkx6KVEocUlW
dndAVTl5WHE0WHtxR3hAYUJiRXUmMWcrUlApbD4qNXZ0c0ByT3l6NkkqM2JrVkxoI2E/Yk8KelNI
YWwtWFpjKEtJXmdaJkMrLUQhZzFpSDc/Kj1oMD5xJFcyI2xTdWdBVlRsdypwODM1ZW1YdyFFWT15
R1JlQE45Cno+ITw3bHFuTks/Rk9Xcm4qYmVVdTdyfWAkJDZFQD4jaip1a3hvT0A+SSQ+dVpIbWQ3
Y3lnK296TmxefSRiK0xXdAp6UTFYcTJ0SDhgX0Y2VWJvTiVvXnZlfmp4bT14Iyg5dSpaZ1Z1K01n
ckR+Pm1+e0BEamE7VDh2LS1vISFOIWA9X2kKempJZ28xJiV2ZzZ7JlJ9IWtuYmVvdyR4bGM9d2Uq
aXd8VV5vbHQ5ZCR7IXU+QUFENXJ2ZzEleTN7dyg9P2B0QXdoCnpmLUYoc3ZtZlBTc243Pk9taDAm
eElIeSYoc2UpKGF4NkliPStUKjAwUFojQDwlRUhtbmNKSXltUUdjfXxFfndGcwp6UV9JPzRHVWBC
TCE9P1ZHaHopdWVyKDJaQmNjcl5EZ1c8SnQ1X1cyckpmMjF+QnVXMi11en1aVDlLZ1JwZk5QJiMK
elVnbH1kUVc9el8lVjlELTQ3PiVuLVkzNWk4fXorPXhDZUE3aCk/OyVRbXJUNlQqUmsjbjBSbT9C
Myl1JjAtdTkyCnpSPSp1RDlfbG1nNn5xOXFScCVAMkRKPFlnNldrWTk7fTN+dlZEZUtxK04yS1Aw
bDlhNDE/MFAhT0cxT1VuZTYxewp6TXErM2piWUEzQ09ncyZnUE4oc19xajt9LUJobERIU3pFalpf
Tjc8ZSt8elolODFMQjctYUZ+RTIkVyluR20+YkcKekFMMHFUM0ghLUYrSDIzIVhAOVR0aWhRPERF
b1ZIaGluMG9zKVVGY25HTzRee0o8PDF1Zjc2RT94d3ooRl9neD1GCnpaOyN3OTE1PDI1Yn1EWXxZ
d1Uze1h6endoQCpCTldFTD9xYmd2SkFRPSZ8ZipQYU0wQnBVZHJHJTRSdilKQE1GYQp6UXJFMSFj
dkZYV2QyZVdoeiNmfj83bzkrbi00TW5tQHtWTDBRXz1Le29fcklwR2tkS3QrYiVLJDFOMT81YHpk
XjYKek98a0FrSDE4JnZ0bCF3cVpaZG0kNFAtc0QpTWY0MjN4KD8kNVZabEJCKTUhdilufUt2b1Zo
QnVBR0FgYUBlS29OCnpneT1uMzJVdE41bGtEYmpEe2l6bUpIOSotMUZ9Pkw1RTFqfWVSbHsmKW0o
NmM0TClsSlMzWnMjbTN4eHBZeSohPwp6OEFofHBpJVV4O0I3aDE4ODN2PkppclNVdyFKWEIrLWV8
V2R3Z0lxVDZ6NUo1MVg1UUhId2JTN1NWfitycmhQdX4KenE4YWsjV3ZDdVdwUmBMKFpTc1JBODVW
O2BHPVNVVk5GRSNNbWVSZmgtbz9uMkdefUZ7bDU8KnZxOGtWeSslKUtDCnpjYHUmfVVrdDlaJHZj
SCNpRyZgVVN0cSVITEoyT0U7TCtNfihxO2dfaWlaYVEmZTN0ZG5kYj80Mio1Kk5WVCV0bwp6Q0dL
NEd6P1h0TTQkaElIJnBrI1QjS1khdDMyQj9NTE04ITAoVUdoTkhaYm4xZm1ybGpSXipeJWZXNVk+
QF80VVUKellALVdwR1JzNl8qRHxhZEtmM3xuQjJ9SWZ3TVpvTmtqc0t5WnRWM3wwX0JYQ0BsZ2tT
bWJ6Wn17VFB7aEVmTCp9CnpEY2NsKnlTZTVYa0MpWUN0aTZ1OWRZJDk9eiNKN2JBJHpffT48TV9D
KUtWYmImMztLQzBuRTxyPDx+VHswQUxhOQp6WHdNPnhsMEpyfDMreW9Ca3R+QjV7ZmtNTV9jZDNe
RzRKYTFGem1RYW9NdmV2N0kyRlZwPGw/K0dTPl9FSUlgP0cKejhOUXw5bl5DOz0/MlgrTWFJQHV4
TzVOR3ZtSlEwN3pCbnlBRUpQeiZNLXI3RkR2TkpzUlo9OVQkbURZKnkrK3tLCnpUeExuMl50XjY/
bmIkPV8qaFhfdilZSzhrSkI+KmMyNipufTNXQzFvKyleNGhKNF4wNyZmJnB5M0JTVCNveSRhSAp6
aHJGY3oxd001JHVNYyFEMk0tKExfWDlhWFNWXzxaKnJaQyRnKm4+VCpwRDMrNygjRHZrfCVkbGQh
ZWFZX0g8d04KeiVueklCMD83O1c4R1Q0MExfanZmYVNhbzMzRGB6VWhwYmtePUgmMTVDP1VoKzBp
NHg0RUl4Ri1nVlIxSiNSSn0yCnpjYzFkcFVKP1Fjcn5HUndFfDw2Y3EkTHM7SXQ4JGQoYzlIKTNl
MEh4UFdwQkEqbE0hYExJTHIqY0kySHsqS0BtSwp6Sm95YTleOUEpUDsqPmlYQFpGc2lsQFpeYTt2
RkkjVD8hQEtKSXFnWHVMezYhT0wpdSNBd01aKkp5S1Z6WURqUXMKeigmODl1R355U0c/UCFzfVY2
Nm9LUjwyamh1UWgocEY5NGxyWS0wOyk3N3hQcDZyMCVpeXBHMyE+NERGLWg4cTU/Cno4RTA2SUlw
RVJaN3s+Ulk4NmBzXlZ0UmRTakREPmBjfjctbzU3TCV9aXdAb2EtPmVtSDk3PGd0RyZ0N2gyT0Q/
Owp6PmBOdCNKMnFaREI1TmFaXzgyQHUqQXR+QD0jdnJtJENBTmhPJD12enN1bEJEMjZLKyhEPnZo
T2JeJnNnQGRSPFQKejFIQilObylyfV9jVEUmJUp8RW4jVGtOSER6JiY8K253TEozVlgjQUYjR0tf
OTdRPkMxVDhYPmttU3EpQEtHZDRMCnpkd3o8PXJrMDAqOF47dkRxe1hyeE91aHFPdSVEZTFEfXNu
VmJBT3ZINE8rZkBQTyt3XjdEKHRfNStMfWdTayglJgp6blA+c0ZwbzdUZGY7Xlh0ZlMkemQhbGph
NEVnSWFKMWxFOEJSbGc7LXZhRiRKYzM/PGBDK0MjOXtTWEYpTXJETHwKemtyaFAlMnlKWlF5Q0F2
dl9fJlhqKCNFZ0hiNER5U0pNfms0RX1xM0hAfXljaG8oK0p5Vjg8JSEoRFNNTXlsXj9JCnp0Rk1F
QCpVVFY/ZGJENEcwdVpwR0Q3UStQby1LWHdKNCVYOUQ+YEdUdFBFTkhJKmd6c2E9PGdFIWNjb1pn
X1I/Qwp6O2hjTm0xakhEQkQrVzApdzxmUUhgQ0ohfCpia1lacnQ4WlZqOCVqJTFiMH5gLUlMSDh6
QExyKHFRP2VMYjBMVHkKeiZsP3ZeWWczbDgxVkkyfko4WF51ak5nbilaaFVhJkg4aHVsWDh7UTdh
Q20kfDI+aWxCRkIkfGdoMnorIUN2YiZsCno1clp1VTtIQjl3UEkqeUBjWnd0KzVZOCFQUm03ZWZn
cjErKDY7b2k9cnRTIW1kYTRiZVMxbHpSM341ajdBSjk+QQp6aiNUZSllJERTZitYR2FlTHMocUEt
KFRWYVZJbFdSZmlue149NiFhUjlIVEpXQXxqci1LZUBOdSZFQlFjJFdRI1QKej0pcTIlQWR1PWwj
PE41YStVKWslaDhvWTkyZVk3QG5ublZWRlZBP3Qxfkc3bCpLfl5SSjRjdjlfKkN8M1U0aSQ1Cnp2
azxoX0okWUd7VG19UDkzOF8kdWBHNzh3X1RJanVZcFFfe3kpZj80K1JhaDdvZ2ZObkVMaGlKeFR4
VllKfDZpdwp6UF56ZWckT08hR0RNd0RiMyt1RSE5fEg1TyFXaS00Nnlidz00VStoaDY3YUkhLWty
cnErY00lO19rYnMwJGU9bFIKelNLXzNyPEQ4T1EpVG1XdWNTekkpT2A/OTMlUl5PcWdmNDdZcSE2
YW0zMSNfNjdKezJEQzZVR2thSEN+Nk82K0B+CnpIUWloYl9GSGB8QlhCXnY+KTQ+a3QtMkQ1bCpE
QTwyVXV9QjdpYSpBLVZyY344JTFQNUpDV0AoN2d8ayhjbiRlewp6YEIjOVdSVTUqRUVKTXBSYWYw
cEk3fm5XUkRlOVd9RlBgO3AzOXxEbUZJVlVnbndDbyllNk9nRHFUdm1AVyhfUnMKejRVdX5fcmd6
JnplK1ExenNwcyktX0FnWWdHVXEzZ2N8XjE/MihiMFokVzAjfT58dGpicGpPeSNaQWN5Q0s/N1VM
CnpqeVEtUlR4ZEI0RSM7fGdOcU1tI1N8Vz9hOVU/PzVKVHApVENpYzNRPmwzP2o3bk9CaWk0ZylR
VitINlpScjBWPgp6dkh9ZDcxN0R6SjZkZz10OzlvZ3slVzFnVmJ2PWZLeHp1N1dVQzRjcjJKfj8y
V0w0cjU8X0o/PTVKOE1IX14zPj4Kejl1bitlWUkkN2QmeFRNSHFIS2RPMlRzWWo7d3BweTtfU3ZZ
KFJqUEJkbDJWNldyPihUYHYtI0NENUtaUiE8dXV7CnpzaU5FNDhvdF5tS2d8X3xraXM0fE1tMGN9
MUN4cXtIR3NSPEdWfGBBTFVfUnMhTVpSLV4qfUFEKj57TShLPWQ9agp6UTs9eVlEOCt6ZD55RWF0
eyRua1I8OWtFVnFNbWlRI3kyXzRseTNvJD8+KU5GJTkzWWtyKUw+ak5FaHJhVHZDWGkKeitZaG9V
SjE7VztEb0xtRHklNiR9KFNue0oqWkJKYVNnJDE1ej9KTiNiNVB9UGZTPHJZLTBNWkRaeHMoYW82
JDd2Cnp1P2FCXnspU0pRVGd2S15pVEJzYjgyMitRT3I0JTx7ek9SfTQ8NTlXTTIpeGU8QFZ+STMy
a34xbk1PSDkwWWxaVwp6XmMqfitZOV5qQE5samsmJXcoQElPKyo4Zypaa35PJUg+SWVxVT14c00z
Wjk9bjspZldHdFRHT3l6M00yQ3NraDUKekcyb1pFSzBiRFBeMitXal9YKnElZ3JedzRBPkoyRCpS
YWp4QlNucFVJJHB6T0BJLV5EJnBFYDYmZldQT0cmd2BjCnopLX5FXlhrYUdgS3N5dTRfdi1+K2xm
RVFkY3t+YV5hM15NPjc7JkpOZ3U/X09GbnZeOVNkUU1IMlZxQFZEIzU8Mwp6ZHc9JUU1eGB8PyNt
PlJxM2VldG5TY041MGBXcEtCKmxITEhmcF9PPFNJM2pOdWAlNlg1R3xBeTs3UVg7O1QwUnQKel48
X0JebT1IQiMtdyEpSilgVDk7Q2RtfkxzYTYjT2BBe2pkc08mek8qSSs1RFEocWx0cFVAbCZXPk5A
SDkpfj1PCnolN3tJSShJMDVWbCs4UDtXbnY/fiEkOygrUiUkcDs7Kn5LXlZrY0lrZk5lQmpCfTxC
OWJtUSolUj1qMEJ2eH5rZwp6OWcoTk9wRG4kdV93aUtkc3ZJPmU+K2plVVlxU0RwZTltVlAjSSlC
PnJiaUJnN0xmfmRuX0t+YFR8b1JTZUEtdW4KemVNPCFPQGBFIz8/UEdiMmpac0cqU0MmMC1icFRB
Rzd4S2pFJVY2JDIkJD5Ufnk9MFU+blh2RCYjOFpRTHF8YVBoCnpAaE5LdEJrVWg1aW5JOyg9c3hp
KCFaM2JTVHg0fkUxeXd1MHotMXkqZyY2OUhpaEpmIVlhcUNERjUweFN2LWkhJgp6JTxZKnF7ZTRh
d3FAZHpnLUBmdnEmRSpUTzswaGY5VXBLeFB2XztZbCghV0RMZD5AcEAxKCt1OHZnen45eEA3RjMK
elAqdUlGX1k1Pz1GfVR9fEU+RXBXO25hOSNMbnFDemhLTlBeZztKaXQhRlhtVFh8YiFVIy1ESCMp
Q3FRY01LOXc5CnpTZGtuZFE7YVBvY1dIPGREWi0+UkpkPy1XYy01b0h2dkduSlpWRFU1UXNjbntu
b2s4R0JfYmpgKmRuMlhNT2diMAp6VHdtQy08ejIjdkdmKkc4aEwmfVJLNmRWOEVufm5AJj8xJCoh
bjY7Jk8pOHNjKmVMaUBGUHRsdWUzbkJMTmYqRGgKeklwJk1iZ3s+Z3A/cHhITmBjUnkhdE9kKUBe
SChnI19hV0g4NkdWRCFPdyNeKCN1MXVxQV98PUY8QCRKeD9oIXIzCnpLM0FXeDJBdmd+cDhSP05W
dGVxfEQ+Nzc5MnNRTHJlXjgjKUoyKEhZX08xanpzX05XLV9zK2hzMVZSTGdjb1clYAp6V0hRTjIw
QH42bjFjREdEMzJVRiNFUiY3Tk9xal82Q19jNX5TfVJ6ej96T2ZTKk40VUI7bzc+T0s8aSE9U3dk
ODUKeihJUSN8PnE1QndlfE8yO2diZH5SZTZQUnVjVn5WeF9kRENTbyRzOVUtUzNfYFErYWt2OT15
NFZ7RUYjaWIqMWgyCno2fGs9aUJYKWppRUhXPzlvPkxqZ2l4Z3FFWFUqS1U9Qy09e2Ffb2Q/c3xu
MT90NmdeMVNeaWwye0Rte0lqZEB7WQp6ZDB5Pz1ePnxLUEl5YmZtemVIJUI+OTNlbzZQVnc9cU9p
UHQoWDdKTzNUIWZ+WXtFWDh4JH5DOVc7ZDc0Uy1FJSQKemchVjdYVFUxaCsoLXZ3dHQhUlBZS2Zo
YDVpamAkZVd3bEZ1a1Jsd3lGTk1uZWJyc0VsS3lGRCVOZz8oO14/a21oCno5SzA+IW9OYilzT3t3
X2lsZ21AZFlXKUp8bFRTcyRLfnIlYV9sMHhee2VwZjt6b05WNypSLURRcmhEakt4e3ZPcwp6Mms1
X08xM2dIO3BAKG8qX2FwUXV7V29vKiRMTWktZn1XKE89eE8+YntmP2ZZWFghY0dPZlMlancxdXxQ
SHVebkkKekx3fCl7clB0X25gWGp3YlpfKFNkbyErNkh3Mk85QUMrKHB3ZFk5ZyNfaH5Rdmk5Vm58
KD8wcjt7ekNpZFdCUDxYCnpyTjdjYWBpdV9JVmZ2aUBNcWtqRV5jNVlVWmFQWWBrUyRhUSVaMk8y
N3NNQ0V0Pk8tR3I/XllwWkNQaXolZCp+Ygp6a0w1fHI/PEJrQWtwQFZFckJyRXpHKlRLWldrfTwy
TmNkRSNJNldoTVQheHJvJmxyQEVrfSlKPk04P1JCKEhXO0AKeiUqOzQxQmIwRyk+XjJ8eTlBIzh5
RFJZJmJRfSpNc2JAUF9hWXB5NipAYi1lODNzMCReJkA/SFcrcF9lK043bGFmCnpzZCFZRFckMDMo
MzV4RlNKZyk5R3t6S2g4LSQhPlpYfVd2RXB0fkslKSFqI20/aFlpOy1QYiszRD52d0ZkcTI3cAp6
QzcweGQ/dUpVa3B9U0V5S2I+X3E8KyFANXtVN08kU2E8VUtAX1hgXkAqJWxQP3ZfOEtsalBrPD9+
eS17X3NidDQKel4keXdQKldfSV5PbnlffEEtXkwzMShyS05lcH12NjE5OV5IMDN+Oz97STB4UnpE
P2ROLS0/I0VweCNiZ2NnaEZrCnpiQERGeDlyO0NoNGQ5MVM9U30lKShBejdvbSM+c0JtI0AmaT9e
b2M8ZGNJJGc4RDZiQC13bGtiPHNacUglRmx6cwp6RlhXNW0zKjwlZXdDPDApNHxuaEg/KEZYQi1y
bHt0YCtNRWQ/eG8kNmo9YSZHK0k2VndWQXA0UjxnUkRDUihDenMKel48PnUqVTdOWiNiZ2wyWWVh
fHl7OV9XMHBeQURZR2ItdmxUdkdkQiNtcFpwfktIWWcmPVQpN1RAQlZ0e217KlUhCnpXXz9JXyRo
el5YanJWVkMtPyhoVVo1d1dTVkMlaHNkbmV2PUBUTmNDQFpxezBZd288e3l5JiNTcDlyNVRCTiZF
Zgp6elBeekxFYVc3UzI5dG8lWVhQKGhRe3ooblNBaGpIQT8yaWByO0pUY05uYSUlPSlQN3Nia3U4
K2omIVhPJEZhYGsKemU5SnppOS0mZ1lXIzV0RUM+KEI8bV52YCt6I0kkYWR8PUxyPURJLXQpVV5A
KjBQYj9LKH15WG1HeVk3O1QoJHAmCnp7UyRRTnZIbig8Kns3enpXJV5zRHpoKE1jcm9VelNUbU17
dCVaIUhmPER2V3VkdDdGTyVaJjF3ezxZfn1vQnAtdwp6VTtqSiUqVE5kaEs1LUdwaWMrKiNrKz97
Vzc5fW0mQklsIXdwQXlsfm9SbXx5WX11aj02M212I058ZmptMl5aMXEKejM4UVd+Y2hIJUskenxF
Y1BwbHFfcDFZV0AmK29udXw5YEVteGt9YFViTVpwZE84WS07cjlONkEkTV9QYGtjYTExCno5M2U0
M3JWZE9TXzs7YFk5PyF4ZHdKKEpeTlBMQ1FkVkRaN1E3dH1ydjdHd3JUYjZrWEBHKyVTP1ZWMVVi
T3owJgp6YEJZNiZ4YDN7djg/Wm08TEcxWTFoTWhjbnV8TWFpOzFQeGtWK0ZyM09fKGgjN1YzbiFh
RktBMGFJPiZwZHB8NVoKekJmS29eNiFyOytNTnUzaWp1SXp8TDlzfWpFMW59Wmk1PXBsOyMlPWBA
amh7cnhMSkglKyN+SzZ6cUhzYkxvSmVKCnp2U3E0ZWhOYVJ7V3I8a013X0lWbC1nMmo5MTl0WG93
WSs2ey18fnMmaH1DNkh2en1gOFMtKSRZV25Ffmt3SngoPgp6WHVhQmNxeENOOU0oYn5fZjNVdHx7
bE5OfWpjZnlLQlc+ZXR4d1ptWm5lN0wqMjN3byQ2NUYtNVRXJEIpOTxARFoKemQpMm52X0wxI3hj
Qj8oYktIN2VvSj5OZHZVVCMwdjk9NU5yVXVPVFF7U055Ql9RJmxuK1clO08qTTdrTXdacktjCno9
RSFobEluSCNISXU8eDs5NChHamN3Z29DbmQ0V0UtI0RJantOQXpNQGg4Vllod1N0Xk0+eGtoYkRa
Q0kmVCVlcgp6KTtuOUI3ZHdDQXl2MkY5XkFZRT4mUjNrZm9GNihyY1VmRzZUXz9MSHgkPDFhdTZl
RT54fFhfQHlIPmxkYk4kP1AKenp3MHNBMyQ4YUBVOU9LXlUlNEliUkNsXk4ofHZ8fXJoQzQtKzh1
Ulk7SihzKmdacjI2Mmk7Ryh4NEdZVD97KXZ4CnplYm5SZTRFSyFuXyZ3Nyt2cHRKRmIpTEJBQkZ7
Q1JuPzM3MjR8fF5SeXpKVE8rMj1YejZ9Xk1KcW1zVFNkVn01fgp6P19CUlctWD9Fe19mcWQjQDlw
MEV5cW1uNnl7filzYz12bjE5QUY8WGJidkhxR09QdEZsYVF3RHM5Pnx+dnJjZ3EKempTKEpJdUp7
ckApZ2piJF9NfTdfQ30yMDVeMEg4ZFh4Q3NYSW1IUFlZQF58I1BsTjVxcFEqdl8hNDJZRTRmZkVP
CnpBKTdSS0FlOWY8KXgqeWhMbytwNEFaeDAhbio7U2thLT5ldUAtMzgtbnl0WkIpRzU/cDgrbFZw
R313OyhhdCszfAp6eTNfPzQ/NGNuJkBJYWNGK013a1JNKlghS29Cfj9jWXchQHstd0lEY3UpMF8k
c2RzMkZiZHQ3NGdRMWhPOCNOZEAKek4mQkAxTG5tb2xHI0VOYmRzVHk+bGVCI3I0NHRIWHM9PzY3
Yz1tTGQ3SVpUSDB1M0hhJmhhbTZhMCgzXnxDUjwxCnpMSD1IPHF5YEYrTDxQI1Y4QmlWT2ZDI2sk
c3p5bXpOITMjdj1+bHF9dCtyXlBIcTsxSEJoP19jN0c9IztnO1dIeQp6aUExSGlPNE5pcEczM1Fq
Jmg9WEgmRGQzSjRYRHBfeFVHY1RzRkkzLVk3TzllPFRUUHNnfWRhbUItSEZjJUBGOXMKeiFDNTE8
MDlPPUo9JHl0QzQwUnw4MUIlbj5KdGVCRlZNV0ZjbHQoflFxOVJ9bERWI01AeVZBQUBfP3EkN0li
VlhACno3KmZuUl5CUDkmbkFVPnBOUHRgTFg1QkV3c21OKTdZXn0oZk4/Q1l3aSl4ZilxSUdYLUVP
fi1mQ1E+blEjVnVIVwp6QXope0Q7PmNtbUZjKl57S2tKPSYmN3k0Sl54QGozKU0xSjFRNXNlPiVH
flB4VCZ8Un5EVilTOzBhQzAjd1JhPjEKek84fEhoY0E+WFJSI1B1T287QCsyLTFFIV9iSVoyWGZA
Pn1FcyVadGpFMEkmSHEpU2tAMFgoVGElTm1VK2BFeVdECno/TUxuQHd6TjRZVGFOeF9VNUF4QXMt
M2N4aEpsfiRmSGxVSikmWSEtTn04cVolWlleQSsjOTtCYXZ3M1IxUDFPZwp6PTI5STJaUXpOcUYo
I0hIaEhEN0RDbjE7ZnZZfG5LOCFmSTEqeE1DcHhIdDhoYDkxWT9JclVNLXh7N04oJmwwR1oKentY
Tzs3ZGQjKHxLXn11a1FBQFJEOWdFNlVvUit+WipqQVp4MndKTkc9MnBuYXg7S15AckwwJVZUT2Mj
YiNJcG0tCnokKWlFbFgkP3dMYCk2Rkw5cUR8c01Ld2I9RHVwVnZWLUk2RnR7ckhfN1R1dVc8Z3Bv
NkBINUElakxHPW41eUR6Jgp6IUlrQXlfME13aW17WUFPRjtsNnk+TDUyJD1xKTk0IVRyWlBGbUgp
a2VTMW1RblhYVVBMZj82Vlg4X2leS0h9JW8Kelh+Z3xCOEdhUSpMQiRTS0lBNjtSUWJ8djQ5XyZT
fW5AN2BvYXRuR2U2ajZScFpWfD9AVERRYzJBKTlpNWdSUENKCnpXSyNmQyltallhNyl0VUN4VXkq
cT5nbGNnNyojPjc2fmxTR05+UmM2I2xXRzxSIXFlYEJ7eyZDWWUqRzx3dklncQp6ZD96cStEdUZT
RjNQQ1NYdmp+I3dEYl4hUHJfPHc5ZmAoZH07RCQ+SmBtYDxUKWkkQURaZm9vJVA4cWVxWD1CZyUK
enooc0dxU2wkRipFUiZKeisrS1dVX3JjQy1CWCpVV00wLXk2RWwqZXNiREU4fVBNdVJtLVpgRCVq
WjtTNklCbkRlCnpWPUZaOT9nIUB5aXtzS0BGVWRLYllvSHg4XmZUOGs+QlVPYGVWZEBwSWBrUFZB
czN3SkdiUCl1bm9kfShub2lnWAp6cnZuQz88ODsya2ROXiZnIVRAOXE4bCtSeDM3aDU3ayY4T0k8
XiFsKll+VzgjQyR0a2xTKy0mMTEoRWd9dj1zeXwKemo4VnN6MmtESVRyPVdHUWZuSkZzeSpeaXtE
U3hsRXJ2RipiSUUoNllSRFV5SjlQP0UoVytydVpSbzRieTlhWX4qCnpaPCV+e1YtRkBuYCVLWDBH
YXBTPEpleEEkPUprKCNJaTUrWUcxdX0rbTI1VVdMJjRMYzs4U3QyYzJyeipkJDkxRAp6IXNgd0RB
UGxMIzU5MikrZkEyTD8jbE97bnpYLU4pSnA4QGVfZWE2VjBwbit4QmU0QnlXaTIoWHhOJGBqPmV7
WUsKeiQyMGdoKk9jeVN2WHxHMGJ4K2tYYF5xT3V6WFc0fVNCZF80KEVTWm4mcW0qYjwodipHeWs+
SW04ZkRebmlEJDsrCno8SyNYSiF3JEZ5a0h5Uz5RWm1kck5pWk1WX3MzJGNnY1kpZjZHSCF9VWZF
PjgkREB7O2dxcDQhKjB0JmR2VHFXRAp6RWQ1RFRmPEVFOW9mRC1SSTY8bnEmIStsVHtaWHl9U0li
WUJadHcpQHZoVEtCdiR5YFclLSZiPktHZXJ0LX0jfWgKelJAcmx9T0c7LVpZPT9FOG9LQz9CJUVT
NiZaJkNJM2ByNHlEJlF6YUpBN3t6enYreTYjPG5oXkdQbjlhM0U4cDkpCnp4NXolVmRpUSlSOWQo
OExIZkUwQTY2ckhYNkZCN2xRfTA/NWJHaT5KKllRVm5HVEhqcVV+KVJlLTttQT49I0VHQwp6UWZS
bkYoSVdmc0prdjx7QEVXSSZscDttSHtIczBvRE9CSDZtNXR7Silwe0dDMmZpbTxpN1EpJmlpaHVQ
SUc1KVMKej9ubXxCXlNDUW8oPEgtKzZOSW5oJExJZncrS0tDNks0anBMdGoyTVN5M3BzSmdmOTQ9
Sk87X3hDY20qQkVffXFHCnoyZm1YamdzMFk1NUMyPEFuZG09YkpmI0R4VitaYEQ0KWsmanU0PmV6
Y083MmsrcUY3K2pWeEd1MT5SWWhmejx4egp6JE89YXVjKldxLXZ1UTNaTWxgRjhXe3x0R0F0Vih2
Z3FvIX57S3VfUzlTVFB5Xj5MeytEeiYxWnJMOCpMU1I+VSYKem8yd2Nsbk5uIylZSEV1JCMlbWsj
ZjM0OTdzeD8lI3FFdzFSVGN1ZDJDUiFoOVQtbTNVNnp6ekZWKTJIPzdBYWNDCnpOYUc9P3R9el5u
cFJRMS1pLXlDfGo+YnM2UjIwS01NbGBtRXFAcmtaR2I2e2p5SFRrJlIxPmE+cCYlTk9zI0BAYAp6
T3JpS3hzaUMjQ1dvbE1keFQtcHlTKSg8cFFDbnEzV0EkMCFJZlRDbGolVGR8aXBkPlN6P3prdj5D
MC12em9+QGsKemFST0RlSHBEV1FodzlzYWVGNkFte01uZlNwUH55Y0dpR3ZIcXVKNVhrJT5SeFZL
UTB7anUxblJMYnNAKkI4JH0rCnomI0ZSO3RmSTUkRS1vI2I7V20oQnVxVzF7JEN1T3kxZG1rcSk2
XkllYD9Lc1RDaHEhcSlGekpeYSYpNTxXNz4+UQp6big7fWFKKD07enpDTWN7JDF+JVRXXzszJlBu
eipiR2RgKXQqNDIyVjhKfG8lM3AzLUJZSUxFJD13YXtwcThYcDsKejlaTkxobFYqSTw3PUpTM2xZ
UEIjby16ODV0e29kVVIzcjBkZURjX2NiXmpWUDxDRSRke19SRlgmRz07Uip5STBHCnpkPWUzN0hG
ODt3JFhMQ3k9WV5sYD5iYmxSUWhDWWVXOU0lX0ZDaClQNmgqOzs5ZkRTfWtzYXFgSW10eUhLN3xj
Pwp6M0oyalZ0clF3VUwoekh8ck9gPD1vSlA8e2BWTmh2bFc4PWFmX1crKChjZT5QNDJ7Sn1nWDBs
LXBHY0RzZHB7amQKenIhbzt3PCgoT1I8O2dmZFFSaUpLUX03Sj0zXzZwKE9XJmh1Xm5MS2tjVWle
Q0dzX3YrbFV6ISg9cSNGelUwIThNCnpFT3M4MUJWSnBIaTJlZHZOUSk0Z1R8eiZnfERiY3xoamNF
VGh1Q2QzQkVhbCUpajxPczwhezIxZi1zYEZ7TUAxaQp6SkRfO3lTMVdZV2olZXw2PzBpfkQ9VlE8
RkR4OGI+cEw3dmpPaDJNYVgqRkYmUzcwQ1hSZGg5N0xxRE40dzNkRX4KelVDfT9JK3ZzLWYzX3cw
WGt4eCQ0JnJNV01PTUQhPXJsMEZ8R1U3fTB2VVdQKzhAKjBQK3xsUUpMX1FQb0JrZmVnCnoxQVdn
JDZzJj94SWhwWVpvWXtDY3toViYwalgwKDhkRjhDWiYyJE9RV1Z7P19JS0g1cShmQjAmbX5Oei09
X1pgOwp6Y3BjcUoqVX56PTl7YkI1IX0qTGp6ZnJLMENeIVZDOzFiLX0qWDxQczJtXiZkIWVBanE3
JE9XNlFpV2tjbnM1XksKemR5ZiFDM2Z+YiUyYDNBcWc7TkFjTkViNE1RLXZ8dTJSPT8xRkhFcU8m
N1ZFblNzen19KCV7ZHsoRXdrcjRnfCFSCnptNnFiXnZtSUBiIyoqbkpDNEJZIWUxN2VrcWdge2dZ
ZTJnT3dkKWteVEEqREVgSV9WTmBDTF9Yamc3KFZVQCtJZwp6UD53SH5PTEN8Q2VDanA3Tkp9ZGlh
SUNQPkdJI25FZztGM3BTZ2UmUjkzWldnMmJCQ2tQT2dGdmw9OFM5K0FHJlEKdHBJUj9pbCV3RFk9
SzFydmRgZm4pUWFfTkZ0d2B3MEROeVBNMztZVl9OR3A9JU8pbWA0LXZRejFkUnFWaAoKbGl0ZXJh
bCAwCkhjbVY/ZDAwMDAxCgo=
</data>
<flag name="commit-queue"
          id="439581"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>