<?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>224178</bug_id>
          
          <creation_ts>2021-04-05 01:37:29 -0700</creation_ts>
          <short_desc>Implement FontFace in Workers for OffscreenCanvas</short_desc>
          <delta_ts>2021-04-22 11:45:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>224277</dependson>
    
    <dependson>224426</dependson>
    
    <dependson>224749</dependson>
    
    <dependson>224865</dependson>
          <blocked>183720</blocked>
    
    <blocked>186759</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Lord">clord</reporter>
          <assigned_to name="Chris Lord">clord</assigned_to>
          <cc>annulen</cc>
    
    <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>japhet</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>mkwst</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1746914</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-05 01:37:29 -0700</bug_when>
    <thetext>The FontFace object is provided by the Document and uses CachedResourceLoader via CSSFontSelector to load fonts. This will need an equivalent implementation on WorkerGlobalScope, likely using ThreadableLoader. I think this is the last major bug for a feature-complete implementation of OffscreenCanvas.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747357</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-06 04:15:49 -0700</bug_when>
    <thetext>The bulk of this patch I think will be providing an alternative to CachedFont/CachedResourceLoader that can work with Worker and ThreadableLoader. It might be nice to abstract CachedFont and provide interfaces on ScriptExecutionLoader to minimise changes and multiple code-paths in the CSS* classes, so that we have something along the lines of:

&gt; CSSFontFaceSrcValue:
&gt;     fontRequest = ScriptExecutionContext.requestFont(...);
&gt; 
&gt; CSSFontSelector:
&gt;     ScriptExecutionContext.beginLoadingFontSoon(fontRequest);
&gt; 
&gt; WorkerGlobalScope:
&gt;     ::beginLoadingFontSoon(fontRequest) { /* TBD; Use threadable loader to start fetching font */ }
&gt; 
&gt; Document:
&gt;     :: beginLoadingFontSoon(fontRequest) {
&gt;         auto&amp; font = downcast&lt;CachedFont&gt;(fontRequest);
&gt;         // Code that is currently in CSSFontSelector to deal with CachedResourceLoader
&gt;     }
&gt; 
&gt;     :: fontLoadingTimerFired { /* Moved from CSSFontSelector */ }

The FontRequest object would need a fontLoaded client interface to replace CachedFontClient and equivalents for errorOccurred, ensureCustomFontData and createFont and I think that would be about it...

There&apos;s currently some complication with font loading that is mainly to do with page-load optimisation that doesn&apos;t really apply in the Worker case, so it&apos;s nice that this abstraction would move that to be contained in Document and not CSSFontSelector.

I think this abstraction could be a separate patch from the Worker implementation of it, so that&apos;s how I&apos;ll start.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749158</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-12 01:38:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/76529024&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750570</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-15 04:18:25 -0700</bug_when>
    <thetext>I was hoping that bug 224277, bug 224426 and some loading code were the main blockers for this, but of course it turns out to be a bit less simple than that...

I&apos;m currently working through what else needs to happen to enable FontFace in Workers, there may be more bugs before the final &quot;loader code + enable&quot; patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750642</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-15 09:29:20 -0700</bug_when>
    <thetext>Not as bad as I thought actually, hopefully have a patch for this tomorrow - some weird behaviour with an isLoading check in CSSFontFaceSource that seems reversed at a glance but breaks if changed (and breaks for Workers if not changed)...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750652</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-15 09:57:46 -0700</bug_when>
    <thetext>Ok, I have this all working at this point, the issue was some assumed behaviour that was resolved by just adding a FontLoadRequest::isPending implementation.

The last issue is that there&apos;s still some access of FontCache::singleton in the graphics code and it looks like we&apos;ll need to plumb through a FontCache reference parameter for some functions. Otherwise looking pretty good!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751004</commentid>
    <comment_count>6</comment_count>
      <attachid>426202</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-16 03:04:14 -0700</bug_when>
    <thetext>Created attachment 426202
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751006</commentid>
    <comment_count>7</comment_count>
      <attachid>426204</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-16 03:11:34 -0700</bug_when>
    <thetext>Created attachment 426204
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751013</commentid>
    <comment_count>8</comment_count>
      <attachid>426206</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-16 03:57:38 -0700</bug_when>
    <thetext>Created attachment 426206
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751022</commentid>
    <comment_count>9</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-16 04:44:51 -0700</bug_when>
    <thetext>Damn, I resolved Font using FontCache::singleton incorrectly by having it keep a reference to a FontCache on creation, but it looks like that isn&apos;t compatible with how Mac uses fonts judging by the test results... So looks like specific functions will need changing instead. That&apos;s a shame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751036</commentid>
    <comment_count>10</comment_count>
      <attachid>426212</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-16 06:02:07 -0700</bug_when>
    <thetext>Created attachment 426212
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751049</commentid>
    <comment_count>11</comment_count>
      <attachid>426217</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-16 06:30:19 -0700</bug_when>
    <thetext>Created attachment 426217
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751116</commentid>
    <comment_count>12</comment_count>
      <attachid>426217</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-16 09:57:07 -0700</bug_when>
    <thetext>Comment on attachment 426217
Patch

Removing review request, I&apos;d left out FontFaceSet, which is reasonably straight-forward to fix and it&apos;s nice to know there&apos;s actually a test for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752820</commentid>
    <comment_count>13</comment_count>
      <attachid>426712</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-21 10:49:14 -0700</bug_when>
    <thetext>Created attachment 426712
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752837</commentid>
    <comment_count>14</comment_count>
      <attachid>426718</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-21 11:33:26 -0700</bug_when>
    <thetext>Created attachment 426718
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752936</commentid>
    <comment_count>15</comment_count>
      <attachid>426718</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-21 14:29:30 -0700</bug_when>
    <thetext>Comment on attachment 426718
Patch

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

&gt; Source/WebCore/ChangeLog:38
&gt; +          Use FontLoadRequest::isPending instead of making assumptions about
&gt; +          its state on construction. Also pass the FontCache singleton where
&gt; +          appropriate in font creation.

Does using isPending have any observable effect? Your comment makes this change sound sensible, but it’s oblique enough that I can’t tell if you did this to solve a problem, avoid what would be a new OffscreenCanvas-only problem, or just did it to make the code more logical with no observable effect.

&gt; Source/WebCore/css/CSSFontFace.h:176
&gt; +    FontCache&amp; fontCacheFallbackToSingleton();

I think in this function name &quot;fall back&quot; is the two word verb, not the single word noun, so should be spelled &quot;FallBack&quot;. But also maybe &quot;FallingBack&quot;.

Apparently we have used this name elsewhere, same comment applies there.

&gt; Source/WebCore/css/FontFace.cpp:67
&gt; +    auto result = adoptRef(*new FontFace(*context.cssFontSelector()));

What guarantees cssFontSelector is non-null?

&gt; Source/WebCore/css/FontFace.cpp:80
&gt; +            auto value = CSSPropertyParserWorkerSafe::parseFontFaceSrc(string, is&lt;Document&gt;(context) ? CSSParserContext(downcast&lt;Document&gt;(context)) : HTMLStandardMode);

Can we make a helper so we don’t need to write it with ?: here? Or is this a unique situation?

&gt; Source/WebCore/platform/graphics/Font.h:97
&gt;      static Ref&lt;Font&gt; create(const FontPlatformData&amp; platformData, Origin origin = Origin::Local, Interstitial interstitial = Interstitial::No,
&gt;          Visibility visibility = Visibility::Visible, OrientationFallback orientationFallback = OrientationFallback::No, Optional&lt;RenderingResourceIdentifier&gt; identifier = WTF::nullopt)

These create functions shouldn’t be inlined in the header. We should inline constructors into create functions rather than inlining create functions into call sites, and keep the create functions out of header files.

&gt; Source/WebCore/platform/graphics/Font.h:101
&gt; +    static Ref&lt;Font&gt; create(const FontPlatformData&amp; platformData, Origin origin, FontCache* fontCacheForVerticalData, Interstitial interstitial = Interstitial::No,

Ditto.

&gt; Source/WebCore/workers/WorkerFontLoadRequest.cpp:44
&gt; +    : m_url(url)

Missing WTFMove here.

&gt; Source/WebCore/workers/WorkerFontLoadRequest.cpp:52
&gt; +    ASSERT(is&lt;WorkerGlobalScope&gt;(context));
&gt; +    auto&amp; workerGlobalScope = downcast&lt;WorkerGlobalScope&gt;(context);

Why doesn’t this take a WorkerGlobalScope&amp; instead of a ScriptExecutionContext&amp;?

&gt; Source/WebCore/workers/WorkerFontLoadRequest.cpp:79
&gt; +bool WorkerFontLoadRequest::ensureCustomFontData(const AtomString&amp;)

Why does this ignore the remote URI?

&gt; Source/WebCore/workers/WorkerFontLoadRequest.cpp:89
&gt; +#if !PLATFORM(COCOA)
&gt; +    if (!m_fontCustomPlatformData &amp;&amp; !m_errorOccurred &amp;&amp; !m_isLoading &amp;&amp; m_data &amp;&amp; isWOFF(*m_data)) {
&gt; +        Vector&lt;char&gt; convertedFont;
&gt; +        if (convertWOFFToSfnt(*m_data, convertedFont))
&gt; +            m_data = SharedBuffer::create(WTFMove(convertedFont));
&gt; +        else
&gt; +            m_errorOccurred = true;
&gt; +    }
&gt; +#endif

Can this be in shared code? How is this worker-specific?

&gt; Source/WebCore/workers/WorkerFontLoadRequest.cpp:121
&gt; +        return;

I don’t think we need this return statement..

&gt; Source/WebCore/workers/WorkerFontLoadRequest.h:29
&gt; +#include &quot;ResourceLoaderOptions.h&quot;

I don’t see the use of this header; maybe it’s LoadedFromOpaqueSource?

&gt; Source/WebCore/workers/WorkerFontLoadRequest.h:31
&gt; +#include &lt;wtf/RefPtr.h&gt;

URL.h includes RefPtr.h, so you don’t need to include this here.

&gt; Source/WebCore/workers/WorkerFontLoadRequest.h:39
&gt; +class WorkerGlobalScope;

Don’t need this; it’s not used. Although maybe it would be used if you changed the type of the argument to load as I suggest.

&gt; Source/WebCore/workers/WorkerFontLoadRequest.h:40
&gt; +struct FontCustomPlatformData;

Should leave a blank line before this.

&gt; Source/WebCore/workers/WorkerGlobalScope.cpp:528
&gt; +    return cssFontSelector()-&gt;fontFaceSet();

What guarantees cssFontSelector() is non-null?

&gt; Source/WebCore/workers/WorkerGlobalScope.h:55
&gt; +class FontLoadRequest;

This should not be needed. We are overriding a function that takes a parameter of this type, so if we were able to compile the base class declaration of the function, we should be able to compile the override without additional forward declarations.

&gt; Source/WebCore/workers/WorkerGlobalScope.h:130
&gt; +    std::unique_ptr&lt;FontLoadRequest&gt; fontLoadRequest(String&amp;, bool, bool, LoadedFromOpaqueSource) final;

Why does this take a String&amp;? Even though this is just an override, I think it should mention the argument names when the type does not make clear what they are. Debatable, I suppose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753087</commentid>
    <comment_count>16</comment_count>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-22 02:05:58 -0700</bug_when>
    <thetext>Anything not mentioned will be addressed, comments in-line.

(In reply to Darin Adler from comment #15)
&gt; Comment on attachment 426718 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=426718&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:38
&gt; &gt; +          Use FontLoadRequest::isPending instead of making assumptions about
&gt; &gt; +          its state on construction. Also pass the FontCache singleton where
&gt; &gt; +          appropriate in font creation.
&gt; 
&gt; Does using isPending have any observable effect? Your comment makes this
&gt; change sound sensible, but it’s oblique enough that I can’t tell if you did
&gt; this to solve a problem, avoid what would be a new OffscreenCanvas-only
&gt; problem, or just did it to make the code more logical with no observable
&gt; effect.

The previous code assumed that if isLoading() is false then the load request has finished, which is an odd implementation detail of how font loading currently works on a Document. With the Worker path, the font load hasn&apos;t begun at this point, so that assumption doesn&apos;t hold. Without this change, it meant that Worker-path custom fonts would never load as this code would set the the status to success and the load would then never be triggered.

This change alone without the worker path has no observable effect, but I do believe this could also be a source of future confusion (at least, it took me a while to figure out what was happening here).

&gt; &gt; Source/WebCore/css/FontFace.cpp:67
&gt; &gt; +    auto result = adoptRef(*new FontFace(*context.cssFontSelector()));
&gt; 
&gt; What guarantees cssFontSelector is non-null?

cssFontSelector is guaranteed non-null for WorkerGlobalScope and Document at the moment, but this should be guarded. I&apos;ve added an assert (and I&apos;ve done the same for the one in WorkerGlobalScope, which I think is perhaps debatable as the implementation is in the same file, but it doesn&apos;t hurt).

&gt; &gt; Source/WebCore/css/FontFace.cpp:80
&gt; &gt; +            auto value = CSSPropertyParserWorkerSafe::parseFontFaceSrc(string, is&lt;Document&gt;(context) ? CSSParserContext(downcast&lt;Document&gt;(context)) : HTMLStandardMode);
&gt; 
&gt; Can we make a helper so we don’t need to write it with ?: here? Or is this a
&gt; unique situation?

This is a pretty unique situation. I tried a few ways of writing a helper for this, but I just ended up with more convoluted code than this. Maybe we can re-examine this down the line.

&gt; &gt; Source/WebCore/workers/WorkerFontLoadRequest.cpp:79
&gt; &gt; +bool WorkerFontLoadRequest::ensureCustomFontData(const AtomString&amp;)
&gt; 
&gt; Why does this ignore the remote URI?

The same thing happens in CachedFont. The URI is only used for SVG fonts (it gets used in CachedSVGFont), which aren&apos;t really possible in workers for the moment.

&gt; &gt; Source/WebCore/workers/WorkerFontLoadRequest.cpp:89
&gt; &gt; +#if !PLATFORM(COCOA)
&gt; &gt; +    if (!m_fontCustomPlatformData &amp;&amp; !m_errorOccurred &amp;&amp; !m_isLoading &amp;&amp; m_data &amp;&amp; isWOFF(*m_data)) {
&gt; &gt; +        Vector&lt;char&gt; convertedFont;
&gt; &gt; +        if (convertWOFFToSfnt(*m_data, convertedFont))
&gt; &gt; +            m_data = SharedBuffer::create(WTFMove(convertedFont));
&gt; &gt; +        else
&gt; &gt; +            m_errorOccurred = true;
&gt; &gt; +    }
&gt; &gt; +#endif
&gt; 
&gt; Can this be in shared code? How is this worker-specific?

This isn&apos;t worker-specific, I&apos;ll have to find a good place to put this...

&gt; &gt; Source/WebCore/workers/WorkerFontLoadRequest.h:29
&gt; &gt; +#include &quot;ResourceLoaderOptions.h&quot;
&gt; 
&gt; I don’t see the use of this header; maybe it’s LoadedFromOpaqueSource?

Right.

&gt; &gt; Source/WebCore/workers/WorkerGlobalScope.h:130
&gt; &gt; +    std::unique_ptr&lt;FontLoadRequest&gt; fontLoadRequest(String&amp;, bool, bool, LoadedFromOpaqueSource) final;
&gt; 
&gt; Why does this take a String&amp;? Even though this is just an override, I think
&gt; it should mention the argument names when the type does not make clear what
&gt; they are. Debatable, I suppose.

I didn&apos;t really like this either, so I&apos;ve included the arguments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753101</commentid>
    <comment_count>17</comment_count>
      <attachid>426796</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-22 03:51:17 -0700</bug_when>
    <thetext>Created attachment 426796
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753104</commentid>
    <comment_count>18</comment_count>
      <attachid>426797</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-22 04:17:35 -0700</bug_when>
    <thetext>Created attachment 426797
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753106</commentid>
    <comment_count>19</comment_count>
      <attachid>426799</attachid>
    <who name="Chris Lord">clord</who>
    <bug_when>2021-04-22 04:31:57 -0700</bug_when>
    <thetext>Created attachment 426799
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753237</commentid>
    <comment_count>20</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-22 11:45:00 -0700</bug_when>
    <thetext>Committed r276450 (236910@main): &lt;https://commits.webkit.org/236910@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 426799.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426202</attachid>
            <date>2021-04-16 03:04:14 -0700</date>
            <delta_ts>2021-04-16 03:11:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210416110412.patch</filename>
            <type>text/plain</type>
            <size>91193</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NDUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTVmZTFhYThlZDBkYjg1
NjQ4OThmZjFiYzUwOTc0MmZjNWNhNjlmNC4uZTI0ODE2MzgxM2VmYTg2NTg0NTM4ZjU4YmY1ZWFi
ODBjNjA5NDhhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyMCBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUbyBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGlt
cGxlbWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJs
ZSBvbiBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFp
bGFibGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAg
ICBtYWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBy
ZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFj
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgUGFzcyBhIEZvbnRDYWNoZSB3aGVu
IGNhbGxpbmcgRm9udDo6Y3JlYXRlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU2V0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjplbnN1cmVMb2NhbEZvbnRGYWNl
c0ZvckZhbWlseVJlZ2lzdGVyZWQpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1
ZVBvb2wgYW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9y
RmFtaWx5UmVnaXN0ZXJlZC4KKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJjZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZVNvdXJjZTo6Q1NTRm9udEZhY2VTb3VyY2Up
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTRm9udEZhY2VTb3VyY2U6OmZvbnQpOgorICAgICAgICAg
IFVzZSBGb250TG9hZFJlcXVlc3Q6OmlzUGVuZGluZyBpbnN0ZWFkIG9mIG1ha2luZyBhc3N1bXB0
aW9ucyBhYm91dAorICAgICAgICAgIGl0cyBzdGF0ZSBvbiBjb25zdHJ1Y3Rpb24uIEFsc28gcGFz
cyB0aGUgRm9udENhY2hlIHNpbmdsZXRvbiB3aGVyZQorICAgICAgICAgIGFwcHJvcHJpYXRlIGlu
IGZvbnQgY3JlYXRpb24uCisKKyAgICAgICAgKiBjc3MvRm9udEZhY2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Rm9udEZhY2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpGb250RmFjZTo6
ZGlzcGxheSBjb25zdCk6CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmg6CisgICAgICAgICogY3Nz
L0ZvbnRGYWNlLmlkbDoKKyAgICAgICAgICBDb25zdHJ1Y3Qgd2l0aCBhIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQgaW5zdGVhZCBvZiBhIERvY3VtZW50IGFuZAorICAgICAgICAgIG1ha2UgYXZhaWxh
YmxlIGZvciBXb3JrZXJzLgorCisgICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udExvYWRSZXF1ZXN0Ojppc1dvcmtlckZvbnRMb2FkUmVxdWVz
dCBjb25zdCk6CisgICAgICAgICAgQWRkIGlzUGVuZGluZyBmdW5jdGlvbiBhbmQgbmV3IHR5cGUg
V29ya2VyRm9udExvYWRSZXF1ZXN0LgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkRm9udDo6Y3JlYXRlRm9udCk6CisgICAg
ICAgICAgUGFzcyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgICAg
SW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Rm9udCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Ojp2
ZXJ0aWNhbFJpZ2h0T3JpZW50YXRpb25Gb250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZv
bnQ6OnVwcmlnaHRPcmllbnRhdGlvbkZvbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9u
dDo6aW52aXNpYmxlRm9udCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpzbWFsbENh
cHNGb250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6Om5vU3ludGhlc2l6YWJsZUZl
YXR1cmVzRm9udCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250OjplbXBoYXNpc01hcmtG
b250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmJyb2tlbklkZW9ncmFwaEZvbnQg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Y3JlYXRlU2NhbGVkRm9udCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpGb250OjpzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIg
Y29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAgICAgICAgQWRkIGEgRm9udENhY2hlIHBhcmFtZXRl
ciB0byBjb25zdHJ1Y3RvcnMgYW5kIHN0b3JlIGEgcmVmZXJlbmNlIHRvCisgICAgICAgICAgdXNl
IGluc3RlYWQgb2YgYXNzdW1pbmcgdGhlIEZvbnRDYWNoZSBzaW5nbGV0b24gaXMgb2sgdG8gdXNl
LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDYWNoZTo6Zm9udEZvclBsYXRmb3JtRGF0YSk6CisgICAgICAgICAgUGFz
cyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkZvbnRDYXNjYWRlRm9udHM6OnJlYWxpemVGYWxsYmFja1Jhbmdlc0F0KToKKyAgICAgICAgICBV
c2UgZmFtaWx5TmFtZXNEYXRhIGluc3RlYWQgb2YgZmFtaWx5TmFtZXMgdG8gbWFrZSB0aGlzIHNh
ZmUgdG8gdXNlCisgICAgICAgICAgaW4gYSBXb3JrZXIuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3Jl
YXRlRGVyaXZhdGl2ZUZvbnQpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Y3JlYXRlRm9udFdp
dGhvdXRTeW50aGVzaXphYmxlRmVhdHVyZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9u
dDo6cGxhdGZvcm1DcmVhdGVTY2FsZWRGb250IGNvbnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9mcmVldHlwZS9TaW1wbGVGb250RGF0YUZyZWVUeXBlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udCBjb25zdCk6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1NpbXBsZUZvbnREYXRhV2luLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udCBjb25zdCk6CisgICAgICAgICAg
VXBkYXRlIHRvIGFjY2VwdCBhbmQgcGFzcyBvbiB0aGUgRm9udENhY2hlIHBhcmFtZXRlciBpbiBm
b250CisgICAgICAgICAgY3JlYXRpb24gZnVuY3Rpb25zLgorCisgICAgICAgICogd29ya2Vycy9X
b3JrZXJGb250TG9hZFJlcXVlc3QuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6V29ya2VyRm9udExvYWRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNv
cmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmVuc3VyZUN1c3RvbUZvbnREYXRhKToKKyAgICAgICAgKFdlYkNv
cmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6Y3JlYXRlRm9udCk6CisgICAgICAgIChXZWJDb3Jl
OjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OnNldENsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpX
b3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJD
b3JlOjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdl
YkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZhaWwpOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0Lmg6IEFkZGVkLgorICAgICAgICAgIEltcGxlbWVu
dCBGb250TG9hZFJlcXVlc3QgZm9yIFdvcmtlcnMuCisKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtl
ckdsb2JhbFNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpm
b250cyk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1
ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdG
b250U29vbik6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAg
ICAgIEltcGxlbWVudCBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGZvbnQtbG9hZGluZyByZWxhdGVk
IGZ1bmN0aW9ucy4KKworICAgICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsOgor
ICAgICAgICAgIEluY2x1ZGUgRm9udEZhY2VTb3VyY2UuCisKIDIwMjEtMDQtMTQgIENocmlzIExv
cmQgIDxjbG9yZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIE1ha2UgRm9udEZhY2UgcGFyc2luZyB3
b3JrZXItc2FmZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwppbmRleCBmNWQ2NzUxN2ZmMjBjNzVjODcwZTYyZTAxODlhYTJiOWQ5
ZTRiNTgxLi45MjE1ZDBlN2NmZWNhYmMwY2U0NWRmZjM2NDdlYjNiMGE3ZmZmYmUxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA0LTE2ICBDaHJpcyBMb3JkICA8Y2xvcmRAaWdhbGlh
LmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgRm9udEZhY2UgaW4gV29ya2VycyBmb3IgT2Zmc2Ny
ZWVuQ2FudmFzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjQxNzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc2NTI5MDI0PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZvbnQ6OmNyZWF0ZSBub3cgcmVx
dWlyZXMgYSBGb250Q2FjaGUgcGFyYW1ldGVyLCB1cGRhdGUgYWNjb3JkaW5nbHkuCisKKyAgICAg
ICAgKiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcDoKKyAgICAgICAgKElQQzo6QXJn
dW1lbnRDb2RlcjxSZWY8Rm9udD4+OjpkZWNvZGUpOgorCiAyMDIxLTA0LTAyICBKZXIgTm9ibGUg
IDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtHUFVQXSBQb3dlciByZWdyZXNzaW9u
OiBhdWRpbyBoYXJkd2FyZSBpcyBjb25maWd1cmVkIGZvciAxMjggZnJhbWUgcHJlZmVycmVkIGJ1
ZmZlciBzaXplIGR1cmluZyBWaWRlb0F1ZGlvIHBsYXliYWNrCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQppbmRl
eCAxMmZkYmE4YWMyMjc5MGI1MzlkM2ExNDZiNDg5M2E4YjIzYjE4Njc3Li44OGZmNDExZWEyZmU3
ODJjNGY0YjFjYTdlNWFkZDA4N2UwNmJlNzgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9I
ZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKQEAgLTE2NTEs
NiArMTY1MSw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICB3
b3JrZXJzL1NjcmlwdEJ1ZmZlci5oCiAgICAgd29ya2Vycy9Xb3JrZXJBbmltYXRpb25Db250cm9s
bGVyLmgKICAgICB3b3JrZXJzL1dvcmtlckRlYnVnZ2VyUHJveHkuaAorICAgIHdvcmtlcnMvV29y
a2VyRm9udExvYWRSZXF1ZXN0LmgKICAgICB3b3JrZXJzL1dvcmtlckxvYWRlclByb3h5LmgKICAg
ICB3b3JrZXJzL1dvcmtlck9yV29ya2xldFRocmVhZC5oCiAgICAgd29ya2Vycy9Xb3JrZXJSdW5M
b29wLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dl
YkNvcmUvU291cmNlcy50eHQKaW5kZXggZGJjNTA4OWNhOGE0Yjg1ZWE3M2IwMTFhOGYyZTZjOWY0
OGNkNmMzZS4uZTU0ODBlYTU2OGY3ODRhOWMxYzg1NTUyYzM2NWRlODg5ZWY5MGEwMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291
cmNlcy50eHQKQEAgLTI2NDksNiArMjY0OSw3IEBAIHdvcmtlcnMvV29ya2VyLmNwcAogd29ya2Vy
cy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmNwcAogd29ya2Vycy9Xb3JrZXJDb25zb2xlQ2xp
ZW50LmNwcAogd29ya2Vycy9Xb3JrZXJFdmVudExvb3AuY3BwCit3b3JrZXJzL1dvcmtlckZvbnRM
b2FkUmVxdWVzdC5jcHAKIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCiB3b3JrZXJzL1dv
cmtlckluc3BlY3RvclByb3h5LmNwcAogd29ya2Vycy9Xb3JrZXJMb2NhdGlvbi5jcHAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA0
ZjNlYzE0NjBiOGE2YjEzNWJjZDk1ZGY4YmE5Y2I0MWNhZWZmZDdlLi40MDVhMDIwZTNjNDE1ZjAy
OTg0MjA3OWNjYTYwMzNkYTcyMzA4OTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNDI4LDYgKzM0MjgsNyBAQAogCQlBN0NG
QjNEMjBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0NGQjNEMDBCN0VEMTBBMDA3MEMzMkQgLyogRHJh
Z0ltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJQTdEMjBGNjMxMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0QyMEY2MTEwN0Y0MDY5
MDBBODAzOTIgLyogSlNXZWJHTEFjdGl2ZUluZm8uaCAqLzsgfTsKIAkJQTdEMjBGNkQxMDdGNDM4
QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNkIxMDdGNDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0
aXZlSW5mby5oICovOyB9OworCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9u
dExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBN0Q2QjM0NzBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTdENkIz
NDkwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdENkIzNDcwRjYxMTA0NTAwQjc5RkQx
IC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUE3REJGOERFMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tp
bmdIZWxwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE3REJGOERDMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIuaCAqLzsgfTsK
IAkJQTgwRDY3MDgwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJp
dmF0ZUNHLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
ODBENjcwNzBFOUU5REVCMDBFNDIwRjAgLyogR3JhcGhpY3NDb250ZXh0UGxhdGZvcm1Qcml2YXRl
Q0cuaCAqLzsgfTsKQEAgLTEyODM1LDYgKzEyODM2LDggQEAKIAkJQTdEMjBGNjAxMDdGNDA2OTAw
QTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQTdEMjBGNjExMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJbmZvLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDIwRjZCMTA3RjQzOEIwMEE4MDM5MiAvKiBX
ZWJHTEFjdGl2ZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xB
Y3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZCMzQ3MEY2MTEw
NDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE3RDZCMzQ4MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJl
cXVlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyRm9u
dExvYWRSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDcw
RjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQTdENkIzNDgwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRl
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3JrZXJTY3JpcHRM
b2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0RCRjhEQjEyNzY5MTlD
MDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFRleHRDaGVja2luZ0hlbHBlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0xOTM5NSw2ICsxOTM5OCw4IEBACiAJCQkJQTUyQjM0OUMxRkE0MTZGODAw
OEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCAqLywKIAkJCQk5QjBBQkNBMzIzNjc5QUNG
MDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmNwcCAqLywKIAkJCQk5QjBBQkNBNDIzNjc5QUNG
MDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmggKi8sCisJCQkJQTdENkIzNDgwRjYxMTA0NTAw
RkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgKi8sCisJCQkJQTdENkIzNDcwRjYx
MTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oICovLAogCQkJCTJFNDM0NjM2
MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5jcHAgKi8sCiAJCQkJMkU0MzQ2
MzcwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmggKi8sCiAJCQkJMkU0MzQ2
MzgwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmlkbCAqLywKQEAgLTM1Nzk3
LDYgKzM1ODAyLDcgQEAKIAkJCQlBNUI4MUNDRTFGQUE0NERFMDAzN0QxRTYgLyogV29ya2VyRGVi
dWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTUyQjM0OUUxRkE0MTcwMzAwOEI2MjQ2
IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkxRTBEREM0MjMw
QjQxRjEwMDE5RTFFMyAvKiBXb3JrZXJET01EZWJ1Z2dlckFnZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0Lmgg
aW4gSGVhZGVycyAqLywKIAkJCQkyRTQzNDY0OTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyR2xv
YmFsU2NvcGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRDEyOUNFMUYzRDBFRjYwMEQxNUU0NyAv
KiBXb3JrZXJHbG9iYWxTY29wZUNhY2hlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkU0MzQ2NEIw
RjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlUHJveHkuaCBpbiBIZWFkZXJzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAKaW5kZXggZmE0YzcyOTRiNTY4ZDE5ZmM4YmI5
MTliY2EyN2JiMmMzMjhjNjc1Yi4uZWNlMjVhZGI4MmEyNWViOGUxYjJmZmY1ZDNjNjM5MmE2NTFm
MDY4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuY3BwCkBAIC0zOTMsNiArMzkzLDEzIEBA
IERvY3VtZW50KiBDU1NGb250RmFjZTo6ZG9jdW1lbnQoKQogICAgIHJldHVybiBudWxscHRyOwog
fQogCitGb250Q2FjaGUmIENTU0ZvbnRGYWNlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9u
KCkKK3sKKyAgICBpZiAobV93cmFwcGVyICYmIG1fd3JhcHBlci0+c2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpKQorICAgICAgICByZXR1cm4gbV93cmFwcGVyLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0
KCktPmZvbnRDYWNoZSgpOworICAgIHJldHVybiBGb250Q2FjaGU6OnNpbmdsZXRvbigpOworfQor
CiBib29sIENTU0ZvbnRGYWNlOjpjb21wdXRlRmFpbHVyZVN0YXRlKCkgY29uc3QKIHsKICAgICBp
ZiAoc3RhdHVzKCkgPT0gU3RhdHVzOjpGYWlsdXJlKQpAQCAtNjY2LDggKzY3Myw5IEBAIFJlZlB0
cjxGb250PiBDU1NGb250RmFjZTo6Zm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZvbnREZXNj
cmlwdGlvbiwgYm9vbCBzeW50CiAgICAgICAgIHN3aXRjaCAoc291cmNlLT5zdGF0dXMoKSkgewog
ICAgICAgICBjYXNlIENTU0ZvbnRGYWNlU291cmNlOjpTdGF0dXM6OlBlbmRpbmc6CiAgICAgICAg
IGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6TG9hZGluZzogeworICAgICAgICAgICAg
YXV0byYgZm9udENhY2hlID0gZm9udENhY2hlRmFsbGJhY2tUb1NpbmdsZXRvbigpOwogICAgICAg
ICAgICAgRm9udDo6VmlzaWJpbGl0eSB2aXNpYmlsaXR5ID0gV2ViQ29yZTo6dmlzaWJpbGl0eShz
dGF0dXMoKSwgZm9udExvYWRUaW1pbmcoKSk7Ci0gICAgICAgICAgICByZXR1cm4gRm9udDo6Y3Jl
YXRlKEZvbnRDYWNoZTo6c2luZ2xldG9uKCkubGFzdFJlc29ydEZhbGxiYWNrRm9udChmb250RGVz
Y3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpMb2NhbCwgRm9udDo6SW50
ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOworICAgICAgICAgICAgcmV0dXJuIEZvbnQ6OmNy
ZWF0ZShmb250Q2FjaGUubGFzdFJlc29ydEZhbGxiYWNrRm9udChmb250RGVzY3JpcHRpb24pLT5w
bGF0Zm9ybURhdGEoKSwgZm9udENhY2hlLCBGb250OjpPcmlnaW46OkxvY2FsLCBGb250OjpJbnRl
cnN0aXRpYWw6OlllcywgdmlzaWJpbGl0eSk7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBDU1NG
b250RmFjZVNvdXJjZTo6U3RhdHVzOjpTdWNjZXNzOgogICAgICAgICAgICAgaWYgKGF1dG8gcmVz
dWx0ID0gc291cmNlLT5mb250KGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhl
dGljSXRhbGljLCBtX2ZlYXR1cmVTZXR0aW5ncywgbV9mb250U2VsZWN0aW9uQ2FwYWJpbGl0aWVz
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKaW5kZXggYjVlNDk3NWQxZDU5MjA5ZDg2MmJkODQ2
MmRkN2NkZmZmNmY1OWRiZC4uNWU4MmQyZWI3NzJiNGVhYjU1MTJhMjFmM2JjZDk4ZThjNTIxOWEx
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKQEAgLTQ4LDYgKzQ4LDcgQEAgY2xhc3MgQ1NT
VmFsdWU7CiBjbGFzcyBDU1NWYWx1ZUxpc3Q7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFz
cyBGb250OworY2xhc3MgRm9udENhY2hlOwogY2xhc3MgRm9udEZhY2U7CiBjbGFzcyBTY3JpcHRF
eGVjdXRpb25Db250ZXh0OwogZW51bSBjbGFzcyBFeHRlcm5hbFJlc291cmNlRG93bmxvYWRQb2xp
Y3k7CkBAIC0xNzIsNiArMTczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHRpbWVvdXRGaXJlZCgp
OwogCiAgICAgRG9jdW1lbnQqIGRvY3VtZW50KCk7CisgICAgRm9udENhY2hlJiBmb250Q2FjaGVG
YWxsYmFja1RvU2luZ2xldG9uKCk7CiAKICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtX2ZhbWls
aWVzOwogICAgIFZlY3RvcjxVbmljb2RlUmFuZ2U+IG1fcmFuZ2VzOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NGb250RmFjZVNldC5jcHAKaW5kZXggNjE2MzJiODUwNGYzZjdkYjQ4ZTNkMGVlZjZjNzJjNTYw
N2M2MGNmNS4uZTJlMDJkNDA5MTc0ZDYyYjA4ZGNiZTM2M2M1Mjc4OTcyZmVmNGFkZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTZXQuY3BwCkBAIC0xMTAsNyArMTEwLDcgQEAgdm9pZCBD
U1NGb250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNv
bnN0IFN0cmluZyYgZmFtaWwKICAgICBBbGxvd1VzZXJJbnN0YWxsZWRGb250cyBhbGxvd1VzZXJJ
bnN0YWxsZWRGb250cyA9IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXM7CiAgICAgaWYgKG1f
b3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCiAgICAgICAgIGFs
bG93VXNlckluc3RhbGxlZEZvbnRzID0gbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQoKS0+c2V0dGluZ3NWYWx1ZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRG
b250cyA/IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXMgOiBBbGxvd1VzZXJJbnN0YWxsZWRG
b250czo6Tm87Ci0gICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXM+IGNhcGFiaWxp
dGllcyA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuZ2V0Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGll
c0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKKyAgICBWZWN0
b3I8Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllcz4gY2FwYWJpbGl0aWVzID0gbV9vd25pbmdGb250
U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+Zm9udENhY2hlKCkuZ2V0Rm9udFNl
bGVjdGlvbkNhcGFiaWxpdGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxl
ZEZvbnRzKTsKICAgICBpZiAoY2FwYWJpbGl0aWVzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJu
OwogCkBAIC0xMTksNyArMTE5LDcgQEAgdm9pZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9jYWxG
b250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICAgICAg
UmVmPENTU0ZvbnRGYWNlPiBmYWNlID0gQ1NTRm9udEZhY2U6OmNyZWF0ZShtX293bmluZ0ZvbnRT
ZWxlY3Rvci5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0ciwgdHJ1ZSk7CiAgICAgICAgIAogICAgICAg
ICBSZWY8Q1NTVmFsdWVMaXN0PiBmYW1pbHlMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21t
YVNlcGFyYXRlZCgpOwotICAgICAgICBmYW1pbHlMaXN0LT5hcHBlbmQoQ1NTVmFsdWVQb29sOjpz
aW5nbGV0b24oKS5jcmVhdGVGb250RmFtaWx5VmFsdWUoZmFtaWx5TmFtZSkpOworICAgICAgICBm
YW1pbHlMaXN0LT5hcHBlbmQobV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKS0+Y3NzVmFsdWVQb29sKCkuY3JlYXRlRm9udEZhbWlseVZhbHVlKGZhbWlseU5hbWUp
KTsKICAgICAgICAgZmFjZS0+c2V0RmFtaWxpZXMoZmFtaWx5TGlzdC5nZXQoKSk7CiAgICAgICAg
IGZhY2UtPnNldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMoaXRlbSk7CiAgICAgICAgIGZhY2Ut
PmFkb3B0U291cmNlKG1ha2VVbmlxdWU8Q1NTRm9udEZhY2VTb3VyY2U+KGZhY2UuZ2V0KCksIGZh
bWlseU5hbWUpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNv
dXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwCmluZGV4
IGI2N2U4ZTY2NmNmOWJjYTk1OGEyM2VkMzcwNjJjODY0NGM2ZmQyMWUuLmFhMGEwN2ZjMGRhZjMy
MjFiZGNmNDE0NmYwYjBjOTNiMTE3YzkyN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NGb250RmFjZVNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRG
YWNlU291cmNlLmNwcApAQCAtODEsNyArODEsNyBAQCBDU1NGb250RmFjZVNvdXJjZTo6Q1NTRm9u
dEZhY2VTb3VyY2UoQ1NTRm9udEZhY2UmIG93bmVyLCBjb25zdCBTdHJpbmcmIGZhbWlseU5hbQog
ICAgIC8vIFRoaXMgbWF5IHN5bmNocm9ub3VzbHkgY2FsbCBmb250TG9hZGVkKCkuCiAgICAgbV9m
b250UmVxdWVzdC0+c2V0Q2xpZW50KHRoaXMpOwogCi0gICAgaWYgKHN0YXR1cygpID09IFN0YXR1
czo6UGVuZGluZyAmJiAhbV9mb250UmVxdWVzdC0+aXNMb2FkaW5nKCkpIHsKKyAgICBpZiAoc3Rh
dHVzKCkgPT0gU3RhdHVzOjpQZW5kaW5nICYmICFtX2ZvbnRSZXF1ZXN0LT5pc1BlbmRpbmcoKSkg
ewogICAgICAgICBzZXRTdGF0dXMoU3RhdHVzOjpMb2FkaW5nKTsKICAgICAgICAgaWYgKCFzaG91
bGRJZ25vcmVGb250TG9hZENvbXBsZXRpb25zKCkpIHsKICAgICAgICAgICAgIGlmIChtX2ZvbnRS
ZXF1ZXN0LT5lcnJvck9jY3VycmVkKCkpCkBAIC0yMDMsNyArMjAzLDcgQEAgUmVmUHRyPEZvbnQ+
IENTU0ZvbnRGYWNlU291cmNlOjpmb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2Ny
aXB0aW9uLCBib28KICAgICAgICAgaWYgKG1faW1tZWRpYXRlU291cmNlKSB7CiAgICAgICAgICAg
ICBpZiAoIW1faW1tZWRpYXRlRm9udEN1c3RvbVBsYXRmb3JtRGF0YSkKICAgICAgICAgICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVk
Rm9udDo6cGxhdGZvcm1EYXRhRnJvbUN1c3RvbURhdGEoKm1faW1tZWRpYXRlRm9udEN1c3RvbVBs
YXRmb3JtRGF0YSwgZm9udERlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNJdGFs
aWMsIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKSwgRm9udDo6T3JpZ2lu
OjpSZW1vdGUpOworICAgICAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShDYWNoZWRGb250Ojpw
bGF0Zm9ybURhdGFGcm9tQ3VzdG9tRGF0YSgqbV9pbW1lZGlhdGVGb250Q3VzdG9tUGxhdGZvcm1E
YXRhLCBmb250RGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgZm9u
dEZhY2VGZWF0dXJlcywgZm9udEZhY2VDYXBhYmlsaXRpZXMpLCBGb250Q2FjaGU6OnNpbmdsZXRv
bigpLCBGb250OjpPcmlnaW46OlJlbW90ZSk7CiAgICAgICAgIH0KIAogICAgICAgICAvLyBXZSdy
ZSBsb2NhbC4gSnVzdCByZXR1cm4gYSBGb250IGZyb20gdGhlIG5vcm1hbCBjYWNoZS4KQEAgLTIy
OCw3ICsyMjgsNyBAQCBSZWZQdHI8Rm9udD4gQ1NTRm9udEZhY2VTb3VyY2U6OmZvbnQoY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGJvbwogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICBpZiAoIW1faW5Eb2N1bWVudEN1c3RvbVBsYXRmb3JtRGF0YSkKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7Ci0gICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShtX2luRG9jdW1lbnRDdXN0
b21QbGF0Zm9ybURhdGEtPmZvbnRQbGF0Zm9ybURhdGEoZm9udERlc2NyaXB0aW9uLCBzeW50aGV0
aWNCb2xkLCBzeW50aGV0aWNJdGFsaWMsIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNlQ2FwYWJp
bGl0aWVzKSwgRm9udDo6T3JpZ2luOjpSZW1vdGUpOworICAgIHJldHVybiBGb250OjpjcmVhdGUo
bV9pbkRvY3VtZW50Q3VzdG9tUGxhdGZvcm1EYXRhLT5mb250UGxhdGZvcm1EYXRhKGZvbnREZXNj
cmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVz
LCBmb250RmFjZUNhcGFiaWxpdGllcyksIEZvbnRDYWNoZTo6c2luZ2xldG9uKCksIEZvbnQ6Ok9y
aWdpbjo6UmVtb3RlKTsKIH0KIAogYm9vbCBDU1NGb250RmFjZVNvdXJjZTo6aXNTVkdGb250RmFj
ZVNvdXJjZSgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAppbmRleCAxOWQ5YjQ0YWNkNDg1
YjMyMzE5Y2U5NTlmNGFkMmQ2NzExNTg0ZjhlLi5lYmU5MWIyYzhlZjJkMzg5NmQzOWVkNTZjMWYy
MWUyYjU2NTU0NTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAKQEAgLTYyLDE0ICs2MiwxNCBA
QCB2b2lkIEZvbnRGYWNlOjpzZXRFcnJvclN0YXRlKCkKICAgICBtX2JhY2tpbmctPnNldEVycm9y
U3RhdGUoKTsKIH0KIAotUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRlKERvY3VtZW50JiBk
b2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmIHNvdXJjZSwgY29uc3QgRGVz
Y3JpcHRvcnMmIGRlc2NyaXB0b3JzKQorUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRlKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3Vy
Y2UmJiBzb3VyY2UsIGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlwdG9ycykKIHsKLSAgICBhdXRv
IHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9udEZhY2UoZG9jdW1lbnQuZm9udFNlbGVjdG9yKCkp
KTsKKyAgICBhdXRvIHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9udEZhY2UoKmNvbnRleHQuY3Nz
Rm9udFNlbGVjdG9yKCkpKTsKICAgICByZXN1bHQtPnN1c3BlbmRJZk5lZWRlZCgpOwogCiAgICAg
Ym9vbCBkYXRhUmVxdWlyZXNBc3luY2hyb25vdXNMb2FkaW5nID0gdHJ1ZTsKIAotICAgIGF1dG8g
c2V0RmFtaWx5UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoZG9jdW1lbnQsIGZhbWlseSk7Cisg
ICAgYXV0byBzZXRGYW1pbHlSZXN1bHQgPSByZXN1bHQtPnNldEZhbWlseShjb250ZXh0LCBmYW1p
bHkpOwogICAgIGlmIChzZXRGYW1pbHlSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAg
cmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CkBAIC03Nywx
MCArNzcsMTAgQEAgUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRlKERvY3VtZW50JiBkb2N1
bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYKIAogICAgIGF1dG8gc291cmNlQ29u
dmVyc2lvblJlc3VsdCA9IFdURjo6c3dpdGNoT24oc291cmNlLAogICAgICAgICBbJl0gKFN0cmlu
ZyYgc3RyaW5nKSAtPiBFeGNlcHRpb25Pcjx2b2lkPiB7Ci0gICAgICAgICAgICBhdXRvIHZhbHVl
ID0gQ1NTUHJvcGVydHlQYXJzZXJXb3JrZXJTYWZlOjpwYXJzZUZvbnRGYWNlU3JjKHN0cmluZywg
Q1NTUGFyc2VyQ29udGV4dChkb2N1bWVudCkpOworICAgICAgICAgICAgYXV0byB2YWx1ZSA9IENT
U1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFjZVNyYyhzdHJpbmcsIGlzPERv
Y3VtZW50Pihjb250ZXh0KSA/IENTU1BhcnNlckNvbnRleHQoZG93bmNhc3Q8RG9jdW1lbnQ+KGNv
bnRleHQpKSA6IEhUTUxTdGFuZGFyZE1vZGUpOwogICAgICAgICAgICAgaWYgKCF2YWx1ZSkKICAg
ICAgICAgICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgU3ludGF4RXJyb3IgfTsKLSAgICAgICAg
ICAgIENTU0ZvbnRGYWNlOjphcHBlbmRTb3VyY2VzKHJlc3VsdC0+YmFja2luZygpLCAqdmFsdWUs
ICZkb2N1bWVudCwgZmFsc2UpOworICAgICAgICAgICAgQ1NTRm9udEZhY2U6OmFwcGVuZFNvdXJj
ZXMocmVzdWx0LT5iYWNraW5nKCksICp2YWx1ZSwgJmNvbnRleHQsIGZhbHNlKTsKICAgICAgICAg
ICAgIHJldHVybiB7IH07CiAgICAgICAgIH0sCiAgICAgICAgIFsmXSAoUmVmUHRyPEFycmF5QnVm
ZmVyVmlldz4mIGFycmF5QnVmZmVyVmlldykgLT4gRXhjZXB0aW9uT3I8dm9pZD4gewpAQCAtMTAx
LDMyICsxMDEsMzIgQEAgUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRlKERvY3VtZW50JiBk
b2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYKICAgICB9CiAKICAgICAvLyBU
aGVzZSB0ZXJuYXJpZXMgbWF0Y2ggdGhlIGRlZmF1bHQgc3RyaW5ncyBpbnNpZGUgdGhlIEZvbnRG
YWNlRGVzY3JpcHRvcnMgZGljdGlvbmFyeSBpbnNpZGUgRm9udEZhY2UuaWRsLgotICAgIGF1dG8g
c2V0U3R5bGVSZXN1bHQgPSByZXN1bHQtPnNldFN0eWxlKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5z
dHlsZS5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3R5bGUpOworICAgIGF1
dG8gc2V0U3R5bGVSZXN1bHQgPSByZXN1bHQtPnNldFN0eWxlKGNvbnRleHQsIGRlc2NyaXB0b3Jz
LnN0eWxlLmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy5zdHlsZSk7CiAgICAg
aWYgKHNldFN0eWxlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0
RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNl
dFdlaWdodFJlc3VsdCA9IHJlc3VsdC0+c2V0V2VpZ2h0KGRvY3VtZW50LCBkZXNjcmlwdG9ycy53
ZWlnaHQuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLndlaWdodCk7CisgICAg
YXV0byBzZXRXZWlnaHRSZXN1bHQgPSByZXN1bHQtPnNldFdlaWdodChjb250ZXh0LCBkZXNjcmlw
dG9ycy53ZWlnaHQuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLndlaWdodCk7
CiAgICAgaWYgKHNldFdlaWdodFJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1
bHQtPnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAg
YXV0byBzZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJldGNoKGRvY3VtZW50LCBkZXNj
cmlwdG9ycy5zdHJldGNoLmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy5zdHJl
dGNoKTsKKyAgICBhdXRvIHNldFN0cmV0Y2hSZXN1bHQgPSByZXN1bHQtPnNldFN0cmV0Y2goY29u
dGV4dCwgZGVzY3JpcHRvcnMuc3RyZXRjaC5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3Jp
cHRvcnMuc3RyZXRjaCk7CiAgICAgaWYgKHNldFN0cmV0Y2hSZXN1bHQuaGFzRXhjZXB0aW9uKCkp
IHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1
bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0VW5pY29kZVJhbmdlUmVzdWx0ID0gcmVzdWx0LT5zZXRV
bmljb2RlUmFuZ2UoZG9jdW1lbnQsIGRlc2NyaXB0b3JzLnVuaWNvZGVSYW5nZS5pc0VtcHR5KCkg
PyAiVSswLTEwRkZGRiJfcyA6IGRlc2NyaXB0b3JzLnVuaWNvZGVSYW5nZSk7CisgICAgYXV0byBz
ZXRVbmljb2RlUmFuZ2VSZXN1bHQgPSByZXN1bHQtPnNldFVuaWNvZGVSYW5nZShjb250ZXh0LCBk
ZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUrMC0xMEZGRkYiX3MgOiBkZXNj
cmlwdG9ycy51bmljb2RlUmFuZ2UpOwogICAgIGlmIChzZXRVbmljb2RlUmFuZ2VSZXN1bHQuaGFz
RXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAgICAgICAg
IHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0RmVhdHVyZVNldHRpbmdzUmVzdWx0
ID0gcmVzdWx0LT5zZXRGZWF0dXJlU2V0dGluZ3MoZG9jdW1lbnQsIGRlc2NyaXB0b3JzLmZlYXR1
cmVTZXR0aW5ncy5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuZmVhdHVyZVNl
dHRpbmdzKTsKKyAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jlc3VsdCA9IHJlc3VsdC0+c2V0
RmVhdHVyZVNldHRpbmdzKGNvbnRleHQsIGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncy5pc0Vt
cHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuZmVhdHVyZVNldHRpbmdzKTsKICAgICBp
ZiAoc2V0RmVhdHVyZVNldHRpbmdzUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJl
c3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KLSAg
ICBhdXRvIHNldERpc3BsYXlSZXN1bHQgPSByZXN1bHQtPnNldERpc3BsYXkoZG9jdW1lbnQsIGRl
c2NyaXB0b3JzLmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3MgOiBkZXNjcmlwdG9ycy5kaXNw
bGF5KTsKKyAgICBhdXRvIHNldERpc3BsYXlSZXN1bHQgPSByZXN1bHQtPnNldERpc3BsYXkoY29u
dGV4dCwgZGVzY3JpcHRvcnMuZGlzcGxheS5pc0VtcHR5KCkgPyAiYXV0byJfcyA6IGRlc2NyaXB0
b3JzLmRpc3BsYXkpOwogICAgIGlmIChzZXREaXNwbGF5UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7
CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0
OwpAQCAtMzk5LDEzICszOTksMTMgQEAgU3RyaW5nIEZvbnRGYWNlOjpmZWF0dXJlU2V0dGluZ3Mo
KSBjb25zdAogICAgIHJldHVybiBsaXN0LT5jc3NUZXh0KCk7CiB9CiAKLVN0cmluZyBGb250RmFj
ZTo6ZGlzcGxheSgpIGNvbnN0CitTdHJpbmcgRm9udEZhY2U6OmRpc3BsYXkoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYgY29udGV4dCkgY29uc3QKIHsKICAgICBtX2JhY2tpbmctPnVwZGF0ZVN0eWxl
SWZOZWVkZWQoKTsKICAgICBjb25zdCBhdXRvJiBsb2FkaW5nQmVoYXZpb3JXcmFwcGVkID0gbV9i
YWNraW5nLT5sb2FkaW5nQmVoYXZpb3IoKTsKICAgICBpZiAoIWxvYWRpbmdCZWhhdmlvcldyYXBw
ZWQuaGFzVmFsdWUoKSkKICAgICAgICAgcmV0dXJuICJhdXRvIl9zOwotICAgIHJldHVybiBDU1NW
YWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKGxvYWRpbmdCZWhhdmlvcldyYXBwZWQu
dmFsdWUoKSktPmNzc1RleHQoKTsKKyAgICByZXR1cm4gY29udGV4dC5jc3NWYWx1ZVBvb2woKS5j
cmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVlKCkpLT5jc3NUZXh0KCk7CiB9
CiAKIGF1dG8gRm9udEZhY2U6OnN0YXR1cygpIGNvbnN0IC0+IExvYWRTdGF0dXMKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0Zv
bnRGYWNlLmgKaW5kZXggZjFiNTVhODExMmI4MDQxYzEwNDY0MmM0MGU2NmJkMzZkYTAzYzcyYS4u
OTc3ZjNhOTlhYzRhMTc2YzA2NjMwZTdjN2QwYWFkZDk1MDFiNWQ1OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRG
YWNlLmgKQEAgLTU0LDcgKzU0LDcgQEAgcHVibGljOgogICAgIH07CiAgICAgCiAgICAgdXNpbmcg
U291cmNlID0gVmFyaWFudDxTdHJpbmcsIFJlZlB0cjxKU0M6OkFycmF5QnVmZmVyPiwgUmVmUHRy
PEpTQzo6QXJyYXlCdWZmZXJWaWV3Pj47Ci0gICAgc3RhdGljIFJlZjxGb250RmFjZT4gY3JlYXRl
KERvY3VtZW50JiwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmLCBjb25zdCBEZXNjcmlw
dG9ycyYpOworICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25D
b250ZXh0JiwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmLCBjb25zdCBEZXNjcmlwdG9y
cyYpOwogICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiwgQ1NTRm9udEZhY2UmKTsKICAgICB2aXJ0dWFsIH5Gb250RmFjZSgpOwogCkBAIC03Miw3
ICs3Miw3IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgc3RyZXRjaCgpIGNvbnN0OwogICAgIFN0cmlu
ZyB1bmljb2RlUmFuZ2UoKSBjb25zdDsKICAgICBTdHJpbmcgZmVhdHVyZVNldHRpbmdzKCkgY29u
c3Q7Ci0gICAgU3RyaW5nIGRpc3BsYXkoKSBjb25zdDsKKyAgICBTdHJpbmcgZGlzcGxheShTY3Jp
cHRFeGVjdXRpb25Db250ZXh0JikgY29uc3Q7CiAKICAgICBlbnVtIGNsYXNzIExvYWRTdGF0dXMg
eyBVbmxvYWRlZCwgTG9hZGluZywgTG9hZGVkLCBFcnJvciB9OwogICAgIExvYWRTdGF0dXMgc3Rh
dHVzKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRs
IGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAppbmRleCAzMzQ2N2FmYjNiMTg0NDM1
OTlmMWM2YWRiOWJkNGU2Y2E0NzU3MzkyLi40MWYzNTcyMzAxZmEzNGFmMTk3MTE2NTk5OTlkYmNl
N2VhNTA3MzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKQEAgLTQzLDkgKzQzLDkgQEAgZGlj
dGlvbmFyeSBGb250RmFjZURlc2NyaXB0b3JzIHsKIAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwK
LSAgICBFeHBvc2VkPVdpbmRvdworICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpCiBdIGludGVy
ZmFjZSBGb250RmFjZSB7Ci0gICAgW0NhbGxXaXRoPURvY3VtZW50XSBjb25zdHJ1Y3RvcihET01T
dHJpbmcgZmFtaWx5LCAoRE9NU3RyaW5nIG9yIEJpbmFyeURhdGEpIHNvdXJjZSwgb3B0aW9uYWwg
Rm9udEZhY2VEZXNjcmlwdG9ycyBkZXNjcmlwdG9ycyk7CisgICAgW0NhbGxXaXRoPVNjcmlwdEV4
ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9yKERPTVN0cmluZyBmYW1pbHksIChET01TdHJpbmcg
b3IgQmluYXJ5RGF0YSkgc291cmNlLCBvcHRpb25hbCBGb250RmFjZURlc2NyaXB0b3JzIGRlc2Ny
aXB0b3JzKTsKIAogICAgIFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBh
dHRyaWJ1dGUgRE9NU3RyaW5nIGZhbWlseTsKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBzdHlsZTsKQEAgLTUzLDcgKzUzLDcg
QEAgZGljdGlvbmFyeSBGb250RmFjZURlc2NyaXB0b3JzIHsKICAgICBbU2V0dGVyQ2FsbFdpdGg9
U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBzdHJldGNoOwogICAg
IFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3Ry
aW5nIHVuaWNvZGVSYW5nZTsKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBmZWF0dXJlU2V0dGluZ3M7Ci0gICAgW1NldHRlckNh
bGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgZGlzcGxh
eTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0
cmluZyBkaXNwbGF5OwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEZvbnRGYWNlTG9hZFN0YXR1
cyBzdGF0dXM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJl
cXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaAppbmRleCBl
MzM0NWE4MmU0NjI4NWExOWI1NGNkZGFmZjYyMjE4YzA2NWVlMjFmLi43ZDY0NmViZDY5YmI3ZjIz
YjA2ZjU2NDg3YjJhNzQ5NzZkODg5ODBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRm9udExvYWRSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2Fk
UmVxdWVzdC5oCkBAIC00OSw2ICs0OSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Gb250TG9h
ZFJlcXVlc3QoKSA9IGRlZmF1bHQ7CiAKICAgICB2aXJ0dWFsIGNvbnN0IFVSTCYgdXJsKCkgY29u
c3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCA9IDA7CiAgICAgdmly
dHVhbCBib29sIGlzTG9hZGluZygpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZXJyb3JP
Y2N1cnJlZCgpIGNvbnN0ID0gMDsKIApAQCAtNTgsNiArNTksNyBAQCBwdWJsaWM6CiAgICAgdmly
dHVhbCB2b2lkIHNldENsaWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqKSA9IDA7CiAKICAgICB2
aXJ0dWFsIGJvb2wgaXNDYWNoZWRGb250TG9hZFJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQorICAgIHZpcnR1YWwgYm9vbCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpIGNvbnN0IHsg
cmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHAKaW5kZXggOTc0MTllZWU3NDE5ZjgwYWFk
YWZlODI0NTU5MGRmZWQ2NGU5NzcyZS4uNjFiZmNjMmZmODYyZTM3MzVlY2M3ZThlNTlmOGUzMTgw
M2VkMjc4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcApA
QCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkNhY2hlZEZvbnRDbGllbnQuaCIKICNpbmNsdWRl
ICJDYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNl
TG9hZGVyLmgiCisjaW5jbHVkZSAiRm9udENhY2hlLmgiCiAjaW5jbHVkZSAiRm9udEN1c3RvbVBs
YXRmb3JtRGF0YS5oIgogI2luY2x1ZGUgIkZvbnREZXNjcmlwdGlvbi5oIgogI2luY2x1ZGUgIkZv
bnRQbGF0Zm9ybURhdGEuaCIKQEAgLTEyMyw3ICsxMjQsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Rm9u
dEN1c3RvbVBsYXRmb3JtRGF0YT4gQ2FjaGVkRm9udDo6Y3JlYXRlQ3VzdG9tRm9udERhdGEoU2hh
cmVkQgogCiBSZWZQdHI8Rm9udD4gQ2FjaGVkRm9udDo6Y3JlYXRlRm9udChjb25zdCBGb250RGVz
Y3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwgY29uc3QgQXRvbVN0cmluZyYsIGJvb2wgc3ludGhl
dGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3Mm
IGZvbnRGYWNlRmVhdHVyZXMsIEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMgZm9u
dEZhY2VDYXBhYmlsaXRpZXMpCiB7Ci0gICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURh
dGFGcm9tQ3VzdG9tRGF0YShmb250RGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRp
Y0l0YWxpYywgZm9udEZhY2VGZWF0dXJlcywgZm9udEZhY2VDYXBhYmlsaXRpZXMpLCBGb250OjpP
cmlnaW46OlJlbW90ZSk7CisgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGFGcm9t
Q3VzdG9tRGF0YShmb250RGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxp
YywgZm9udEZhY2VGZWF0dXJlcywgZm9udEZhY2VDYXBhYmlsaXRpZXMpLCBGb250Q2FjaGU6OnNp
bmdsZXRvbigpLCBGb250OjpPcmlnaW46OlJlbW90ZSk7CiB9CiAKIEZvbnRQbGF0Zm9ybURhdGEg
Q2FjaGVkRm9udDo6cGxhdGZvcm1EYXRhRnJvbUN1c3RvbURhdGEoY29uc3QgRm9udERlc2NyaXB0
aW9uJiBmb250RGVzY3JpcHRpb24sIGJvb2wgYm9sZCwgYm9vbCBpdGFsaWMsIGNvbnN0IEZvbnRG
ZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMsIEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRD
YXBhYmlsaXRpZXMgZm9udEZhY2VDYXBhYmlsaXRpZXMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggNDA1MzU3YThlNWQw
YjdmMGI2YTFhZGU0ZGNhMDg4YTFiMjc5ZjE3MC4uNzM3NmM1ODhmODA4MWMwYWVhMDAzZjMwNmYy
N2I0MGEwZTA4NjcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZEZvbnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRGb250TG9hZFJlcXVlc3QuaApAQCAtNTAsNiArNTAsNyBAQCBwdWJsaWM6CiAKIHByaXZh
dGU6CiAgICAgY29uc3QgVVJMJiB1cmwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPnVy
bCgpOyB9CisgICAgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQt
PnN0YXR1cygpID09IENhY2hlZFJlc291cmNlOjpTdGF0dXM6OlBlbmRpbmc7IH0KICAgICBib29s
IGlzTG9hZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZm9udC0+aXNMb2FkaW5nKCk7IH0K
ICAgICBib29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPmVy
cm9yT2NjdXJyZWQoKTsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9Gb250LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQu
Y3BwCmluZGV4IDA4NzAyZDRjNzkwY2I5NjNhYmExNGE3Mjk3MTgyNWY0YzA0MmZkNzkuLjI3Nzhm
Njk3NjQ3OTZkNjUzZTI1ZDdhZTg4ZmE1OTIzODdmYjBmNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCkBAIC01OCwxNyArNTgsMTggQEAgY29uc3QgZmxvYXQg
ZW1waGFzaXNNYXJrRm9udFNpemVNdWx0aXBsaWVyID0gMC41ZjsKIAogREVGSU5FX0FMTE9DQVRP
Ul9XSVRIX0hFQVBfSURFTlRJRklFUihGb250KTsKIAotUmVmPEZvbnQ+IEZvbnQ6OmNyZWF0ZShS
ZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udDo6T3JpZ2luIG9yaWdpbiwgZmxv
YXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMpCitS
ZWY8Rm9udD4gRm9udDo6Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZhY2VEYXRhLCBG
b250Q2FjaGUmIGZvbnRDYWNoZSwgRm9udDo6T3JpZ2luIG9yaWdpbiwgZmxvYXQgZm9udFNpemUs
IGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMpCiB7CiAgICAgYm9vbCB3
cmFwcGluZzsKICAgICBhdXRvIGN1c3RvbUZvbnREYXRhID0gQ2FjaGVkRm9udDo6Y3JlYXRlQ3Vz
dG9tRm9udERhdGEoZm9udEZhY2VEYXRhLmdldCgpLCB7IH0sIHdyYXBwaW5nKTsKICAgICBGb250
RGVzY3JpcHRpb24gZGVzY3JpcHRpb247CiAgICAgZGVzY3JpcHRpb24uc2V0Q29tcHV0ZWRTaXpl
KGZvbnRTaXplKTsKLSAgICByZXR1cm4gRm9udDo6Y3JlYXRlKENhY2hlZEZvbnQ6OnBsYXRmb3Jt
RGF0YUZyb21DdXN0b21EYXRhKCpjdXN0b21Gb250RGF0YSwgZGVzY3JpcHRpb24sIHN5bnRoZXRp
Y0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgeyB9LCB7IH0pLCBvcmlnaW4pOworICAgIHJldHVybiBG
b250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxhdGZvcm1EYXRhRnJvbUN1c3RvbURhdGEoKmN1c3Rv
bUZvbnREYXRhLCBkZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCB7
IH0sIHsgfSksIGZvbnRDYWNoZSwgb3JpZ2luKTsKIH0KIAotRm9udDo6Rm9udChjb25zdCBGb250
UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBp
bnRlcnN0aXRpYWwsIFZpc2liaWxpdHkgdmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBv
cmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+
IHJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcikKK0ZvbnQ6OkZvbnQoY29uc3QgRm9udFBsYXRm
b3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBGb250Q2FjaGUmIGZvbnRDYWNoZSwgT3JpZ2luIG9yaWdp
biwgSW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSB2aXNpYmlsaXR5LCBPcmll
bnRhdGlvbkZhbGxiYWNrIG9yaWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcj4gcmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKQogICAgIDogbV9w
bGF0Zm9ybURhdGEocGxhdGZvcm1EYXRhKQorICAgICwgbV9mb250Q2FjaGUobWFrZVJlZihmb250
Q2FjaGUpKQogICAgICwgbV9yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIocmVuZGVyaW5nUmVz
b3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9vcmlnaW4ob3JpZ2luKQogICAgICwgbV92aXNpYmls
aXR5KHZpc2liaWxpdHkpCkBAIC04OCw3ICs4OSw3IEBAIEZvbnQ6OkZvbnQoY29uc3QgRm9udFBs
YXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBJbnRlcnN0aXRpYWwgaW50
CiAgICAgcGxhdGZvcm1DaGFyV2lkdGhJbml0KCk7CiAjaWYgRU5BQkxFKE9QRU5UWVBFX1ZFUlRJ
Q0FMKQogICAgIGlmIChwbGF0Zm9ybURhdGEub3JpZW50YXRpb24oKSA9PSBGb250T3JpZW50YXRp
b246OlZlcnRpY2FsICYmIG9yaWVudGF0aW9uRmFsbGJhY2sgPT0gT3JpZW50YXRpb25GYWxsYmFj
azo6Tm8pIHsKLSAgICAgICAgbV92ZXJ0aWNhbERhdGEgPSBGb250Q2FjaGU6OnNpbmdsZXRvbigp
LnZlcnRpY2FsRGF0YShwbGF0Zm9ybURhdGEpOworICAgICAgICBtX3ZlcnRpY2FsRGF0YSA9IG1f
Zm9udENhY2hlLT52ZXJ0aWNhbERhdGEocGxhdGZvcm1EYXRhKTsKICAgICAgICAgbV9oYXNWZXJ0
aWNhbEdseXBocyA9IG1fdmVydGljYWxEYXRhLmdldCgpICYmIG1fdmVydGljYWxEYXRhLT5oYXNW
ZXJ0aWNhbE1ldHJpY3MoKTsKICAgICB9CiAjZW5kaWYKQEAgLTQyNiw3ICs0MjcsNyBAQCBjb25z
dCBGb250JiBGb250Ojp2ZXJ0aWNhbFJpZ2h0T3JpZW50YXRpb25Gb250KCkgY29uc3QKICAgICBE
ZXJpdmVkRm9udHMmIGRlcml2ZWRGb250RGF0YSA9IGVuc3VyZURlcml2ZWRGb250RGF0YSgpOwog
ICAgIGlmICghZGVyaXZlZEZvbnREYXRhLnZlcnRpY2FsUmlnaHRPcmllbnRhdGlvbkZvbnQpIHsK
ICAgICAgICAgYXV0byB2ZXJ0aWNhbFJpZ2h0UGxhdGZvcm1EYXRhID0gRm9udFBsYXRmb3JtRGF0
YTo6Y2xvbmVXaXRoT3JpZW50YXRpb24obV9wbGF0Zm9ybURhdGEsIEZvbnRPcmllbnRhdGlvbjo6
SG9yaXpvbnRhbCk7Ci0gICAgICAgIGRlcml2ZWRGb250RGF0YS52ZXJ0aWNhbFJpZ2h0T3JpZW50
YXRpb25Gb250ID0gY3JlYXRlKHZlcnRpY2FsUmlnaHRQbGF0Zm9ybURhdGEsIG9yaWdpbigpLCBJ
bnRlcnN0aXRpYWw6Ok5vLCBWaXNpYmlsaXR5OjpWaXNpYmxlLCBPcmllbnRhdGlvbkZhbGxiYWNr
OjpZZXMpOworICAgICAgICBkZXJpdmVkRm9udERhdGEudmVydGljYWxSaWdodE9yaWVudGF0aW9u
Rm9udCA9IGNyZWF0ZSh2ZXJ0aWNhbFJpZ2h0UGxhdGZvcm1EYXRhLCBtX2ZvbnRDYWNoZS5nZXQo
KSwgb3JpZ2luKCksIEludGVyc3RpdGlhbDo6Tm8sIFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVu
dGF0aW9uRmFsbGJhY2s6Olllcyk7CiAgICAgfQogICAgIEFTU0VSVChkZXJpdmVkRm9udERhdGEu
dmVydGljYWxSaWdodE9yaWVudGF0aW9uRm9udCAhPSB0aGlzKTsKICAgICByZXR1cm4gKmRlcml2
ZWRGb250RGF0YS52ZXJ0aWNhbFJpZ2h0T3JpZW50YXRpb25Gb250OwpAQCAtNDM2LDcgKzQzNyw3
IEBAIGNvbnN0IEZvbnQmIEZvbnQ6OnVwcmlnaHRPcmllbnRhdGlvbkZvbnQoKSBjb25zdAogewog
ICAgIERlcml2ZWRGb250cyYgZGVyaXZlZEZvbnREYXRhID0gZW5zdXJlRGVyaXZlZEZvbnREYXRh
KCk7CiAgICAgaWYgKCFkZXJpdmVkRm9udERhdGEudXByaWdodE9yaWVudGF0aW9uRm9udCkKLSAg
ICAgICAgZGVyaXZlZEZvbnREYXRhLnVwcmlnaHRPcmllbnRhdGlvbkZvbnQgPSBjcmVhdGUobV9w
bGF0Zm9ybURhdGEsIG9yaWdpbigpLCBJbnRlcnN0aXRpYWw6Ok5vLCBWaXNpYmlsaXR5OjpWaXNp
YmxlLCBPcmllbnRhdGlvbkZhbGxiYWNrOjpZZXMpOworICAgICAgICBkZXJpdmVkRm9udERhdGEu
dXByaWdodE9yaWVudGF0aW9uRm9udCA9IGNyZWF0ZShtX3BsYXRmb3JtRGF0YSwgbV9mb250Q2Fj
aGUuZ2V0KCksIG9yaWdpbigpLCBJbnRlcnN0aXRpYWw6Ok5vLCBWaXNpYmlsaXR5OjpWaXNpYmxl
LCBPcmllbnRhdGlvbkZhbGxiYWNrOjpZZXMpOwogICAgIEFTU0VSVChkZXJpdmVkRm9udERhdGEu
dXByaWdodE9yaWVudGF0aW9uRm9udCAhPSB0aGlzKTsKICAgICByZXR1cm4gKmRlcml2ZWRGb250
RGF0YS51cHJpZ2h0T3JpZW50YXRpb25Gb250OwogfQpAQCAtNDQ1LDcgKzQ0Niw3IEBAIGNvbnN0
IEZvbnQmIEZvbnQ6OmludmlzaWJsZUZvbnQoKSBjb25zdAogewogICAgIERlcml2ZWRGb250cyYg
ZGVyaXZlZEZvbnREYXRhID0gZW5zdXJlRGVyaXZlZEZvbnREYXRhKCk7CiAgICAgaWYgKCFkZXJp
dmVkRm9udERhdGEuaW52aXNpYmxlRm9udCkKLSAgICAgICAgZGVyaXZlZEZvbnREYXRhLmludmlz
aWJsZUZvbnQgPSBjcmVhdGUobV9wbGF0Zm9ybURhdGEsIG9yaWdpbigpLCBJbnRlcnN0aXRpYWw6
OlllcywgVmlzaWJpbGl0eTo6SW52aXNpYmxlKTsKKyAgICAgICAgZGVyaXZlZEZvbnREYXRhLmlu
dmlzaWJsZUZvbnQgPSBjcmVhdGUobV9wbGF0Zm9ybURhdGEsIG1fZm9udENhY2hlLmdldCgpLCBv
cmlnaW4oKSwgSW50ZXJzdGl0aWFsOjpZZXMsIFZpc2liaWxpdHk6OkludmlzaWJsZSk7CiAgICAg
QVNTRVJUKGRlcml2ZWRGb250RGF0YS5pbnZpc2libGVGb250ICE9IHRoaXMpOwogICAgIHJldHVy
biAqZGVyaXZlZEZvbnREYXRhLmludmlzaWJsZUZvbnQ7CiB9CkBAIC00NTQsNyArNDU1LDcgQEAg
Y29uc3QgRm9udCogRm9udDo6c21hbGxDYXBzRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZv
bnREZXNjcmlwdGlvbikgY29uc3QKIHsKICAgICBEZXJpdmVkRm9udHMmIGRlcml2ZWRGb250RGF0
YSA9IGVuc3VyZURlcml2ZWRGb250RGF0YSgpOwogICAgIGlmICghZGVyaXZlZEZvbnREYXRhLnNt
YWxsQ2Fwc0ZvbnQpCi0gICAgICAgIGRlcml2ZWRGb250RGF0YS5zbWFsbENhcHNGb250ID0gY3Jl
YXRlU2NhbGVkRm9udChmb250RGVzY3JpcHRpb24sIHNtYWxsQ2Fwc0ZvbnRTaXplTXVsdGlwbGll
cik7CisgICAgICAgIGRlcml2ZWRGb250RGF0YS5zbWFsbENhcHNGb250ID0gY3JlYXRlU2NhbGVk
Rm9udChmb250RGVzY3JpcHRpb24sIHNtYWxsQ2Fwc0ZvbnRTaXplTXVsdGlwbGllciwgbV9mb250
Q2FjaGUuZ2V0KCkpOwogICAgIEFTU0VSVChkZXJpdmVkRm9udERhdGEuc21hbGxDYXBzRm9udCAh
PSB0aGlzKTsKICAgICByZXR1cm4gZGVyaXZlZEZvbnREYXRhLnNtYWxsQ2Fwc0ZvbnQuZ2V0KCk7
CiB9CkBAIC00NjQsNyArNDY1LDcgQEAgY29uc3QgRm9udCYgRm9udDo6bm9TeW50aGVzaXphYmxl
RmVhdHVyZXNGb250KCkgY29uc3QKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBEZXJpdmVkRm9u
dHMmIGRlcml2ZWRGb250RGF0YSA9IGVuc3VyZURlcml2ZWRGb250RGF0YSgpOwogICAgIGlmICgh
ZGVyaXZlZEZvbnREYXRhLm5vU3ludGhlc2l6YWJsZUZlYXR1cmVzRm9udCkKLSAgICAgICAgZGVy
aXZlZEZvbnREYXRhLm5vU3ludGhlc2l6YWJsZUZlYXR1cmVzRm9udCA9IGNyZWF0ZUZvbnRXaXRo
b3V0U3ludGhlc2l6YWJsZUZlYXR1cmVzKCk7CisgICAgICAgIGRlcml2ZWRGb250RGF0YS5ub1N5
bnRoZXNpemFibGVGZWF0dXJlc0ZvbnQgPSBjcmVhdGVGb250V2l0aG91dFN5bnRoZXNpemFibGVG
ZWF0dXJlcyhtX2ZvbnRDYWNoZS5nZXQoKSk7CiAgICAgQVNTRVJUKGRlcml2ZWRGb250RGF0YS5u
b1N5bnRoZXNpemFibGVGZWF0dXJlc0ZvbnQgIT0gdGhpcyk7CiAgICAgcmV0dXJuICpkZXJpdmVk
Rm9udERhdGEubm9TeW50aGVzaXphYmxlRmVhdHVyZXNGb250OwogI2Vsc2UKQEAgLTQ3Niw3ICs0
NzcsNyBAQCBjb25zdCBGb250KiBGb250OjplbXBoYXNpc01hcmtGb250KGNvbnN0IEZvbnREZXNj
cmlwdGlvbiYgZm9udERlc2NyaXB0aW9uKSBjb25zdAogewogICAgIERlcml2ZWRGb250cyYgZGVy
aXZlZEZvbnREYXRhID0gZW5zdXJlRGVyaXZlZEZvbnREYXRhKCk7CiAgICAgaWYgKCFkZXJpdmVk
Rm9udERhdGEuZW1waGFzaXNNYXJrRm9udCkKLSAgICAgICAgZGVyaXZlZEZvbnREYXRhLmVtcGhh
c2lzTWFya0ZvbnQgPSBjcmVhdGVTY2FsZWRGb250KGZvbnREZXNjcmlwdGlvbiwgZW1waGFzaXNN
YXJrRm9udFNpemVNdWx0aXBsaWVyKTsKKyAgICAgICAgZGVyaXZlZEZvbnREYXRhLmVtcGhhc2lz
TWFya0ZvbnQgPSBjcmVhdGVTY2FsZWRGb250KGZvbnREZXNjcmlwdGlvbiwgZW1waGFzaXNNYXJr
Rm9udFNpemVNdWx0aXBsaWVyLCBtX2ZvbnRDYWNoZS5nZXQoKSk7CiAgICAgQVNTRVJUKGRlcml2
ZWRGb250RGF0YS5lbXBoYXNpc01hcmtGb250ICE9IHRoaXMpOwogICAgIHJldHVybiBkZXJpdmVk
Rm9udERhdGEuZW1waGFzaXNNYXJrRm9udC5nZXQoKTsKIH0KQEAgLTQ4NSw3ICs0ODYsNyBAQCBj
b25zdCBGb250JiBGb250Ojpicm9rZW5JZGVvZ3JhcGhGb250KCkgY29uc3QKIHsKICAgICBEZXJp
dmVkRm9udHMmIGRlcml2ZWRGb250RGF0YSA9IGVuc3VyZURlcml2ZWRGb250RGF0YSgpOwogICAg
IGlmICghZGVyaXZlZEZvbnREYXRhLmJyb2tlbklkZW9ncmFwaEZvbnQpIHsKLSAgICAgICAgZGVy
aXZlZEZvbnREYXRhLmJyb2tlbklkZW9ncmFwaEZvbnQgPSBjcmVhdGUobV9wbGF0Zm9ybURhdGEs
IG9yaWdpbigpLCBJbnRlcnN0aXRpYWw6Ok5vKTsKKyAgICAgICAgZGVyaXZlZEZvbnREYXRhLmJy
b2tlbklkZW9ncmFwaEZvbnQgPSBjcmVhdGUobV9wbGF0Zm9ybURhdGEsIG1fZm9udENhY2hlLmdl
dCgpLCBvcmlnaW4oKSwgSW50ZXJzdGl0aWFsOjpObyk7CiAgICAgICAgIGRlcml2ZWRGb250RGF0
YS5icm9rZW5JZGVvZ3JhcGhGb250LT5tX2lzQnJva2VuSWRlb2dyYXBoRmFsbGJhY2sgPSB0cnVl
OwogICAgIH0KICAgICBBU1NFUlQoZGVyaXZlZEZvbnREYXRhLmJyb2tlbklkZW9ncmFwaEZvbnQg
IT0gdGhpcyk7CkBAIC01MjQsOSArNTI1LDkgQEAgY29uc3QgT3BlblR5cGVNYXRoRGF0YSogRm9u
dDo6bWF0aERhdGEoKSBjb25zdAogICAgIHJldHVybiBtX21hdGhEYXRhLmdldCgpOwogfQogCi1S
ZWZQdHI8Rm9udD4gRm9udDo6Y3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24m
IGZvbnREZXNjcmlwdGlvbiwgZmxvYXQgc2NhbGVGYWN0b3IpIGNvbnN0CitSZWZQdHI8Rm9udD4g
Rm9udDo6Y3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZvbnREZXNjcmlw
dGlvbiwgZmxvYXQgc2NhbGVGYWN0b3IsIEZvbnRDYWNoZSYgZm9udENhY2hlKSBjb25zdAogewot
ICAgIHJldHVybiBwbGF0Zm9ybUNyZWF0ZVNjYWxlZEZvbnQoZm9udERlc2NyaXB0aW9uLCBzY2Fs
ZUZhY3Rvcik7CisgICAgcmV0dXJuIHBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udChmb250RGVzY3Jp
cHRpb24sIHNjYWxlRmFjdG9yLCBmb250Q2FjaGUpOwogfQogCiAjaWYgIVVTRShDT1JFX1RFWFQp
CkBAIC02MDUsNyArNjA2LDcgQEAgUmVmUHRyPEZvbnQ+IEZvbnQ6OnN5c3RlbUZhbGxiYWNrRm9u
dEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3QgRm9udEQKIAogICAgIGlmICgh
Y2hhcmFjdGVyKSB7CiAgICAgICAgIFVDaGFyIGNvZGVVbml0ID0gMDsKLSAgICAgICAgcmV0dXJu
IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2Ny
aXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVk
Rm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CisgICAgICAgIHJldHVybiBtX2ZvbnRDYWNoZS0+c3lz
dGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3Jt
Rm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CiAg
ICAgfQogCiAgICAgYXV0byBrZXkgPSBDaGFyYWN0ZXJGYWxsYmFja01hcEtleShkZXNjcmlwdGlv
bi5jb21wdXRlZExvY2FsZSgpLCBjaGFyYWN0ZXIsIGlzRm9yUGxhdGZvcm1Gb250KTsKQEAgLTYy
NSw3ICs2MjYsNyBAQCBSZWZQdHI8Rm9udD4gRm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hh
cmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdCBGb250RAogICAgICAgICAgICAgY29kZVVu
aXRzTGVuZ3RoID0gMjsKICAgICAgICAgfQogCi0gICAgICAgIGZhbGxiYWNrRm9udCA9IEZvbnRD
YWNoZTo6c2luZ2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9u
LCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6
Tm8sIGNvZGVVbml0cywgY29kZVVuaXRzTGVuZ3RoKS5nZXQoKTsKKyAgICAgICAgZmFsbGJhY2tG
b250ID0gbV9mb250Q2FjaGUtPnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVycyhkZXNjcmlwdGlv
biwgdGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVyQ29sb3JlZEZvbnQ6
Ok5vLCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0KCk7CiAgICAgICAgIGlmIChmYWxs
YmFja0ZvbnQpCiAgICAgICAgICAgICBmYWxsYmFja0ZvbnQtPm1faXNVc2VkSW5TeXN0ZW1GYWxs
YmFja0NhY2hlID0gdHJ1ZTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9G
b250LmgKaW5kZXggYzdkYTU0OTNmYzE0NjQwMThhNzFhYjIxODlmYTU1ZjZiNmJiMzJhZi4uYmY2
MDdlMWU5MWI0OTNjNjRjNWM1OGQ5YjhkN2RjNjYzNGQ5OGVmNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtNTcsNiArNTcsNyBAQCBpbnRlcmZhY2UgSURXcml0
ZUdkaUludGVyb3A7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRm9udENhY2hlOwog
Y2xhc3MgR2x5cGhQYWdlOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgU2hhcmVkQnVm
ZmVyOwpAQCAtOTIsMTIgKzkzLDEyIEBAIHB1YmxpYzoKICAgICAgICAgWWVzLAogICAgICAgICBO
bwogICAgIH07Ci0gICAgc3RhdGljIFJlZjxGb250PiBjcmVhdGUoY29uc3QgRm9udFBsYXRmb3Jt
RGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luID0gT3JpZ2luOjpMb2NhbCwgSW50ZXJz
dGl0aWFsIGludGVyc3RpdGlhbCA9IEludGVyc3RpdGlhbDo6Tm8sCisgICAgc3RhdGljIFJlZjxG
b250PiBjcmVhdGUoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBGb250Q2Fj
aGUmIGZvbnRDYWNoZSwgT3JpZ2luIG9yaWdpbiA9IE9yaWdpbjo6TG9jYWwsIEludGVyc3RpdGlh
bCBpbnRlcnN0aXRpYWwgPSBJbnRlcnN0aXRpYWw6Ok5vLAogICAgICAgICBWaXNpYmlsaXR5IHZp
c2liaWxpdHkgPSBWaXNpYmlsaXR5OjpWaXNpYmxlLCBPcmllbnRhdGlvbkZhbGxiYWNrIG9yaWVu
dGF0aW9uRmFsbGJhY2sgPSBPcmllbnRhdGlvbkZhbGxiYWNrOjpObywgT3B0aW9uYWw8UmVuZGVy
aW5nUmVzb3VyY2VJZGVudGlmaWVyPiBpZGVudGlmaWVyID0gV1RGOjpudWxsb3B0KQogICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9udChwbGF0Zm9ybURhdGEsIG9yaWdpbiwg
aW50ZXJzdGl0aWFsLCB2aXNpYmlsaXR5LCBvcmllbnRhdGlvbkZhbGxiYWNrLCBpZGVudGlmaWVy
KSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvbnQocGxhdGZvcm1EYXRhLCBmb250
Q2FjaGUsIG9yaWdpbiwgaW50ZXJzdGl0aWFsLCB2aXNpYmlsaXR5LCBvcmllbnRhdGlvbkZhbGxi
YWNrLCBpZGVudGlmaWVyKSk7CiAgICAgfQotICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWY8
Rm9udD4gY3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZhY2VEYXRhLCBGb250OjpPcmln
aW4sIGZsb2F0IGZvbnRTaXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRh
bGljKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0ZShSZWY8U2hh
cmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udENhY2hlJiwgRm9udDo6T3JpZ2luLCBmbG9h
dCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYyk7CiAK
ICAgICBXRUJDT1JFX0VYUE9SVCB+Rm9udCgpOwogCkBAIC0yMzIsNyArMjMzLDcgQEAgcHVibGlj
OgogI2VuZGlmCiAKIHByaXZhdGU6Ci0gICAgV0VCQ09SRV9FWFBPUlQgRm9udChjb25zdCBGb250
UGxhdGZvcm1EYXRhJiwgT3JpZ2luLCBJbnRlcnN0aXRpYWwsIFZpc2liaWxpdHksIE9yaWVudGF0
aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcj4pOworICAg
IFdFQkNPUkVfRVhQT1JUIEZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYsIEZvbnRDYWNoZSYs
IE9yaWdpbiwgSW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5LCBPcmllbnRhdGlvbkZhbGxiYWNrLCBP
cHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+KTsKIAogICAgIHZvaWQgcGxhdGZv
cm1Jbml0KCk7CiAgICAgdm9pZCBwbGF0Zm9ybUdseXBoSW5pdCgpOwpAQCAtMjQxLDkgKzI0Miw5
IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGluaXRDaGFyV2lkdGhzKCk7CiAKLSAgICBSZWZQdHI8
Rm9udD4gY3JlYXRlRm9udFdpdGhvdXRTeW50aGVzaXphYmxlRmVhdHVyZXMoKSBjb25zdDsKLSAg
ICBSZWZQdHI8Rm9udD4gY3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mLCBm
bG9hdCBzY2FsZUZhY3RvcikgY29uc3Q7Ci0gICAgUmVmUHRyPEZvbnQ+IHBsYXRmb3JtQ3JlYXRl
U2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mLCBmbG9hdCBzY2FsZUZhY3RvcikgY29u
c3Q7CisgICAgUmVmUHRyPEZvbnQ+IGNyZWF0ZUZvbnRXaXRob3V0U3ludGhlc2l6YWJsZUZlYXR1
cmVzKEZvbnRDYWNoZSYpIGNvbnN0OworICAgIFJlZlB0cjxGb250PiBjcmVhdGVTY2FsZWRGb250
KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGZsb2F0IHNjYWxlRmFjdG9yLCBGb250Q2FjaGUmKSBj
b25zdDsKKyAgICBSZWZQdHI8Rm9udD4gcGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGNvbnN0IEZv
bnREZXNjcmlwdGlvbiYsIGZsb2F0IHNjYWxlRmFjdG9yLCBGb250Q2FjaGUmKSBjb25zdDsKIAog
ICAgIHZvaWQgcmVtb3ZlRnJvbVN5c3RlbUZhbGxiYWNrQ2FjaGUoKTsKICAgICAKQEAgLTI2Miw2
ICsyNjMsNyBAQCBwcml2YXRlOgogICAgIGZsb2F0IG1fYXZnQ2hhcldpZHRoIHsgLTEgfTsKIAog
ICAgIGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEgbV9wbGF0Zm9ybURhdGE7CisgICAgUmVmPEZvbnRD
YWNoZT4gbV9mb250Q2FjaGU7CiAKICAgICBtdXRhYmxlIFJlZlB0cjxHbHlwaFBhZ2U+IG1fZ2x5
cGhQYWdlWmVybzsKICAgICBtdXRhYmxlIEhhc2hNYXA8dW5zaWduZWQsIFJlZlB0cjxHbHlwaFBh
Z2U+PiBtX2dseXBoUGFnZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9Gb250Q2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udENhY2hlLmNwcAppbmRleCBlZGYyZmUwNDczYWYzYTg2MDYxNTMxNzQzODMyMWJkOWNhOWUw
Mjg2Li4xYzVkY2UyNzI3NDU4MDU1YzVmZThiYzc0MWIzZmE2NTE3NmEzOGQ5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAKQEAgLTMwMCw3ICsz
MDAsNyBAQCBSZWY8Rm9udD4gRm9udENhY2hlOjpmb250Rm9yUGxhdGZvcm1EYXRhKGNvbnN0IEZv
bnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSkKICNlbmRpZgogCiAgICAgYXV0byBhZGRSZXN1
bHQgPSBtX2ZvbnREYXRhQ2FjaGVzLT5kYXRhLmVuc3VyZShwbGF0Zm9ybURhdGEsIFsmXSB7Ci0g
ICAgICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRhKTsKKyAgICAgICAgcmV0dXJu
IEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGEsICp0aGlzKTsKICAgICB9KTsKIAogICAgIEFTU0VS
VChhZGRSZXN1bHQuaXRlcmF0b3ItPnZhbHVlLT5wbGF0Zm9ybURhdGEoKSA9PSBwbGF0Zm9ybURh
dGEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
c2NhZGVGb250cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2Fz
Y2FkZUZvbnRzLmNwcAppbmRleCA5ZjY1ZDI5OThmOTQ4Njk3M2Q0YmJmMThkZTI2ZjgyYjA0NDM5
ZmNhLi4wMmZkZTNkNTNkOGQ1NTdlNDAxZTNhOWY2ZjM1MGYxOTZlYmE5NDRkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNw
cApAQCAtMTg5LDcgKzE4OSw3IEBAIGNvbnN0IEZvbnRSYW5nZXMmIEZvbnRDYXNjYWRlRm9udHM6
OnJlYWxpemVGYWxsYmFja1Jhbmdlc0F0KGNvbnN0IEZvbnRDYXNjYWRlRGVzCiAgICAgaWYgKCFp
bmRleCkgewogICAgICAgICBmb250UmFuZ2VzID0gcmVhbGl6ZU5leHRGYWxsYmFjayhkZXNjcmlw
dGlvbiwgbV9sYXN0UmVhbGl6ZWRGYWxsYmFja0luZGV4LCBtX2ZvbnRTZWxlY3Rvci5nZXQoKSk7
CiAgICAgICAgIGlmIChmb250UmFuZ2VzLmlzTnVsbCgpICYmIG1fZm9udFNlbGVjdG9yKQotICAg
ICAgICAgICAgZm9udFJhbmdlcyA9IG1fZm9udFNlbGVjdG9yLT5mb250UmFuZ2VzRm9yRmFtaWx5
KGRlc2NyaXB0aW9uLCBzdGFuZGFyZEZhbWlseSk7CisgICAgICAgICAgICBmb250UmFuZ2VzID0g
bV9mb250U2VsZWN0b3ItPmZvbnRSYW5nZXNGb3JGYW1pbHkoZGVzY3JpcHRpb24sIGZhbWlseU5h
bWVzRGF0YS0+YXQoRmFtaWx5TmFtZXNJbmRleDo6U3RhbmRhcmRGYW1pbHkpKTsKICAgICAgICAg
aWYgKGZvbnRSYW5nZXMuaXNOdWxsKCkpCiAgICAgICAgICAgICBmb250UmFuZ2VzID0gRm9udFJh
bmdlcyhGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxiYWNrVG9TaW5nbGV0b24obV9mb250U2VsZWN0
b3IpLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZGVzY3JpcHRpb24pKTsKICAgICAgICAgcmV0dXJu
IGZvbnRSYW5nZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAppbmRleCBlZjg2ZTRjM2MyYmJiYTg3NDZl
MjQxZTQzNTFlNzgwZTc0MzNkMzE2Li5kYjk3MzcxMmVjNzM5Y2E4ZDI1YzExZWYzY2ViMzQyMmFh
MTFlYjRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3Jl
dGV4dC9Gb250Q29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKQEAgLTM5NSw3ICszOTUsNyBAQCBjb25zdCBC
aXRWZWN0b3ImIEZvbnQ6OmdseXBoc1N1cHBvcnRlZEJ5QWxsUGV0aXRlQ2FwcygpIGNvbnN0CiB9
CiAjZW5kaWYKIAotc3RhdGljIFJlZlB0cjxGb250PiBjcmVhdGVEZXJpdmF0aXZlRm9udChDVEZv
bnRSZWYgZm9udCwgZmxvYXQgc2l6ZSwgRm9udE9yaWVudGF0aW9uIG9yaWVudGF0aW9uLCBDVEZv
bnRTeW1ib2xpY1RyYWl0cyBmb250VHJhaXRzLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3lu
dGhldGljSXRhbGljKQorc3RhdGljIFJlZlB0cjxGb250PiBjcmVhdGVEZXJpdmF0aXZlRm9udChD
VEZvbnRSZWYgZm9udCwgZmxvYXQgc2l6ZSwgRm9udE9yaWVudGF0aW9uIG9yaWVudGF0aW9uLCBD
VEZvbnRTeW1ib2xpY1RyYWl0cyBmb250VHJhaXRzLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wg
c3ludGhldGljSXRhbGljLCBGb250Q2FjaGUmIGZvbnRDYWNoZSkKIHsKICAgICBpZiAoIWZvbnQp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtNDExLDcgKzQxMSw3IEBAIHN0YXRpYyBSZWZQ
dHI8Rm9udD4gY3JlYXRlRGVyaXZhdGl2ZUZvbnQoQ1RGb250UmVmIGZvbnQsIGZsb2F0IHNpemUs
IEZvbnRPcmllbnRhCiAgICAgYm9vbCB1c2VkU3ludGhldGljT2JsaXF1ZSA9IChmb250VHJhaXRz
ICYga0NURm9udEl0YWxpY1RyYWl0KSAmJiAhKHNjYWxlZEZvbnRUcmFpdHMgJiBrQ1RGb250VHJh
aXRJdGFsaWMpOwogICAgIEZvbnRQbGF0Zm9ybURhdGEgc2NhbGVkRm9udERhdGEoZm9udCwgc2l6
ZSwgdXNlZFN5bnRoZXRpY0JvbGQsIHVzZWRTeW50aGV0aWNPYmxpcXVlLCBvcmllbnRhdGlvbik7
CiAKLSAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHNjYWxlZEZvbnREYXRhKTsKKyAgICByZXR1cm4g
Rm9udDo6Y3JlYXRlKHNjYWxlZEZvbnREYXRhLCBmb250Q2FjaGUpOwogfQogCiBzdGF0aWMgaW5s
aW5lIGJvb2wgaXNPcGVuVHlwZUZlYXR1cmUoQ0ZEaWN0aW9uYXJ5UmVmIGZlYXR1cmUpCkBAIC01
NDQsMjIgKzU0NCwyMiBAQCBzdGF0aWMgUmV0YWluUHRyPENURm9udFJlZj4gY3JlYXRlQ1RGb250
V2l0aG91dFN5bnRoZXNpemFibGVGZWF0dXJlcyhDVEZvbnRSZWYgZgogICAgIHJldHVybiBhZG9w
dENGKENURm9udENyZWF0ZUNvcHlXaXRoQXR0cmlidXRlcyhmb250LCBDVEZvbnRHZXRTaXplKGZv
bnQpLCBudWxscHRyLCBuZXdEZXNjcmlwdG9yLmdldCgpKSk7CiB9CiAKLVJlZlB0cjxGb250PiBG
b250OjpjcmVhdGVGb250V2l0aG91dFN5bnRoZXNpemFibGVGZWF0dXJlcygpIGNvbnN0CitSZWZQ
dHI8Rm9udD4gRm9udDo6Y3JlYXRlRm9udFdpdGhvdXRTeW50aGVzaXphYmxlRmVhdHVyZXMoRm9u
dENhY2hlJiBmb250Q2FjaGUpIGNvbnN0CiB7CiAgICAgZmxvYXQgc2l6ZSA9IG1fcGxhdGZvcm1E
YXRhLnNpemUoKTsKICAgICBDVEZvbnRTeW1ib2xpY1RyYWl0cyBmb250VHJhaXRzID0gQ1RGb250
R2V0U3ltYm9saWNUcmFpdHMobV9wbGF0Zm9ybURhdGEuZm9udCgpKTsKICAgICBSZXRhaW5QdHI8
Q1RGb250UmVmPiBjdEZvbnQgPSBjcmVhdGVDVEZvbnRXaXRob3V0U3ludGhlc2l6YWJsZUZlYXR1
cmVzKG1fcGxhdGZvcm1EYXRhLmZvbnQoKSk7Ci0gICAgcmV0dXJuIGNyZWF0ZURlcml2YXRpdmVG
b250KGN0Rm9udC5nZXQoKSwgc2l6ZSwgbV9wbGF0Zm9ybURhdGEub3JpZW50YXRpb24oKSwgZm9u
dFRyYWl0cywgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljQm9sZCgpLCBtX3BsYXRmb3JtRGF0YS5z
eW50aGV0aWNPYmxpcXVlKCkpOworICAgIHJldHVybiBjcmVhdGVEZXJpdmF0aXZlRm9udChjdEZv
bnQuZ2V0KCksIHNpemUsIG1fcGxhdGZvcm1EYXRhLm9yaWVudGF0aW9uKCksIGZvbnRUcmFpdHMs
IG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY0JvbGQoKSwgbV9wbGF0Zm9ybURhdGEuc3ludGhldGlj
T2JsaXF1ZSgpLCBmb250Q2FjaGUpOwogfQogCi1SZWZQdHI8Rm9udD4gRm9udDo6cGxhdGZvcm1D
cmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGZsb2F0IHNjYWxlRmFjdG9y
KSBjb25zdAorUmVmUHRyPEZvbnQ+IEZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udChjb25z
dCBGb250RGVzY3JpcHRpb24mLCBmbG9hdCBzY2FsZUZhY3RvciwgRm9udENhY2hlJiBmb250Q2Fj
aGUpIGNvbnN0CiB7CiAgICAgZmxvYXQgc2l6ZSA9IG1fcGxhdGZvcm1EYXRhLnNpemUoKSAqIHNj
YWxlRmFjdG9yOwogICAgIENURm9udFN5bWJvbGljVHJhaXRzIGZvbnRUcmFpdHMgPSBDVEZvbnRH
ZXRTeW1ib2xpY1RyYWl0cyhtX3BsYXRmb3JtRGF0YS5mb250KCkpOwogICAgIFJldGFpblB0cjxD
VEZvbnREZXNjcmlwdG9yUmVmPiBmb250RGVzY3JpcHRvciA9IGFkb3B0Q0YoQ1RGb250Q29weUZv
bnREZXNjcmlwdG9yKG1fcGxhdGZvcm1EYXRhLmZvbnQoKSkpOwogICAgIFJldGFpblB0cjxDVEZv
bnRSZWY+IHNjYWxlZEZvbnQgPSBhZG9wdENGKENURm9udENyZWF0ZVdpdGhGb250RGVzY3JpcHRv
cihmb250RGVzY3JpcHRvci5nZXQoKSwgc2l6ZSwgbnVsbHB0cikpOwogCi0gICAgcmV0dXJuIGNy
ZWF0ZURlcml2YXRpdmVGb250KHNjYWxlZEZvbnQuZ2V0KCksIHNpemUsIG1fcGxhdGZvcm1EYXRh
Lm9yaWVudGF0aW9uKCksIGZvbnRUcmFpdHMsIG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY0JvbGQo
KSwgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljT2JsaXF1ZSgpKTsKKyAgICByZXR1cm4gY3JlYXRl
RGVyaXZhdGl2ZUZvbnQoc2NhbGVkRm9udC5nZXQoKSwgc2l6ZSwgbV9wbGF0Zm9ybURhdGEub3Jp
ZW50YXRpb24oKSwgZm9udFRyYWl0cywgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljQm9sZCgpLCBt
X3BsYXRmb3JtRGF0YS5zeW50aGV0aWNPYmxpcXVlKCksIGZvbnRDYWNoZSk7CiB9CiAKIGZsb2F0
IEZvbnQ6OnBsYXRmb3JtV2lkdGhGb3JHbHlwaChHbHlwaCBnbHlwaCkgY29uc3QKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL1NpbXBsZUZvbnRE
YXRhRnJlZVR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5
cGUvU2ltcGxlRm9udERhdGFGcmVlVHlwZS5jcHAKaW5kZXggYjk2NzI3YWIzOWU3Njk3YzM3Zjc2
M2NhMjM3ZDFjZDljMzU1ZjFhOC4uMzBmODI2YWFlZDRhODNhNTM2ZGM5YWEzMzM1NTMzMTYwNjQ4
MzhmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5
cGUvU2ltcGxlRm9udERhdGFGcmVlVHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZnJlZXR5cGUvU2ltcGxlRm9udERhdGFGcmVlVHlwZS5jcHAKQEAgLTE4OCw3
ICsxODgsNyBAQCB2b2lkIEZvbnQ6OnBsYXRmb3JtQ2hhcldpZHRoSW5pdCgpCiAgICAgaW5pdENo
YXJXaWR0aHMoKTsKIH0KIAotUmVmUHRyPEZvbnQ+IEZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVk
Rm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwgZmxvYXQgc2NhbGVG
YWN0b3IpIGNvbnN0CitSZWZQdHI8Rm9udD4gRm9udDo6cGxhdGZvcm1DcmVhdGVTY2FsZWRGb250
KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBmbG9hdCBzY2FsZUZhY3Rv
ciwgRm9udENhY2hlJiBmb250Q2FjaGUpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1fcGxhdGZvcm1E
YXRhLnNjYWxlZEZvbnQoKSk7CiAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShGb250UGxhdGZvcm1E
YXRhKGNhaXJvX3NjYWxlZF9mb250X2dldF9mb250X2ZhY2UobV9wbGF0Zm9ybURhdGEuc2NhbGVk
Rm9udCgpKSwKQEAgLTE5OCw3ICsxOTgsNyBAQCBSZWZQdHI8Rm9udD4gRm9udDo6cGxhdGZvcm1D
cmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aQogICAg
ICAgICBtX3BsYXRmb3JtRGF0YS5zeW50aGV0aWNCb2xkKCksCiAgICAgICAgIG1fcGxhdGZvcm1E
YXRhLnN5bnRoZXRpY09ibGlxdWUoKSwKICAgICAgICAgZm9udERlc2NyaXB0aW9uLm9yaWVudGF0
aW9uKCkpLAotICAgICAgICBvcmlnaW4oKSwgSW50ZXJzdGl0aWFsOjpObyk7CisgICAgICAgIGZv
bnRDYWNoZSwgb3JpZ2luKCksIEludGVyc3RpdGlhbDo6Tm8pOwogfQogCiB2b2lkIEZvbnQ6OmRl
dGVybWluZVBpdGNoKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3dpbi9TaW1wbGVGb250RGF0YVdpbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy93aW4vU2ltcGxlRm9udERhdGFXaW4uY3BwCmluZGV4IDZkNjg1ZDgwMTc0NmMzNGQ5
NzJlMjkzY2U0YTA0NDJlNGFjOWE3MGIuLmE4NjFkNjY1OGU5NjJlNmY1NzA4MWU4NWQwOTIxMWIz
MjEzMjM0YzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dp
bi9TaW1wbGVGb250RGF0YVdpbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvd2luL1NpbXBsZUZvbnREYXRhV2luLmNwcApAQCAtMTIyLDE3ICsxMjIsMTcgQEAgdm9p
ZCBGb250OjpwbGF0Zm9ybURlc3Ryb3koKQogICAgIGRlbGV0ZSBtX3NjcmlwdEZvbnRQcm9wZXJ0
aWVzOwogfQogCi1SZWZQdHI8Rm9udD4gRm9udDo6cGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGNv
bnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBmbG9hdCBzY2FsZUZhY3Rvcikg
Y29uc3QKK1JlZlB0cjxGb250PiBGb250OjpwbGF0Zm9ybUNyZWF0ZVNjYWxlZEZvbnQoY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGZsb2F0IHNjYWxlRmFjdG9yLCBGb250
Q2FjaGUmIGZvbnRDYWNoZSkgY29uc3QKIHsKICAgICBmbG9hdCBzY2FsZWRTaXplID0gc2NhbGVG
YWN0b3IgKiBtX3BsYXRmb3JtRGF0YS5zaXplKCk7CiAgICAgaWYgKG9yaWdpbigpID09IE9yaWdp
bjo6UmVtb3RlKQotICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRQbGF0Zm9ybURhdGE6
OmNsb25lV2l0aFNpemUobV9wbGF0Zm9ybURhdGEsIHNjYWxlZFNpemUpLCBGb250OjpPcmlnaW46
OlJlbW90ZSk7CisgICAgICAgIHJldHVybiBGb250OjpjcmVhdGUoRm9udFBsYXRmb3JtRGF0YTo6
Y2xvbmVXaXRoU2l6ZShtX3BsYXRmb3JtRGF0YSwgc2NhbGVkU2l6ZSksIGZvbnRDYWNoZSwgRm9u
dDo6T3JpZ2luOjpSZW1vdGUpOwogCiAgICAgTE9HRk9OVCB3aW5mb250OwogICAgIEdldE9iamVj
dChtX3BsYXRmb3JtRGF0YS5oZm9udCgpLCBzaXplb2YoTE9HRk9OVCksICZ3aW5mb250KTsKICAg
ICB3aW5mb250LmxmSGVpZ2h0ID0gLWxyb3VuZGYoc2NhbGVkU2l6ZSAqIChtX3BsYXRmb3JtRGF0
YS51c2VHREkoKSA/IDEgOiAzMikpOwogICAgIGF1dG8gaGZvbnQgPSBhZG9wdEdESU9iamVjdCg6
OkNyZWF0ZUZvbnRJbmRpcmVjdCgmd2luZm9udCkpOwotICAgIHJldHVybiBGb250OjpjcmVhdGUo
Rm9udFBsYXRmb3JtRGF0YShXVEZNb3ZlKGhmb250KSwgc2NhbGVkU2l6ZSwgbV9wbGF0Zm9ybURh
dGEuc3ludGhldGljQm9sZCgpLCBtX3BsYXRmb3JtRGF0YS5zeW50aGV0aWNPYmxpcXVlKCksIG1f
cGxhdGZvcm1EYXRhLnVzZUdESSgpKSwgb3JpZ2luKCkpOworICAgIHJldHVybiBGb250OjpjcmVh
dGUoRm9udFBsYXRmb3JtRGF0YShXVEZNb3ZlKGhmb250KSwgc2NhbGVkU2l6ZSwgbV9wbGF0Zm9y
bURhdGEuc3ludGhldGljQm9sZCgpLCBtX3BsYXRmb3JtRGF0YS5zeW50aGV0aWNPYmxpcXVlKCks
IG1fcGxhdGZvcm1EYXRhLnVzZUdESSgpKSwgZm9udENhY2hlLCBvcmlnaW4oKSk7CiB9CiAKIEZs
b2F0UmVjdCBGb250Ojpib3VuZHNGb3JHRElHbHlwaChHbHlwaCBnbHlwaCkgY29uc3QKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi40MmRhZGYzZjAzMTM0NjJmZWQ2OTA4OTNjZWMzNTU1NjQ0MzYxYmZlCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3Bw
CkBAIC0wLDAgKzEsMTUzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOSBU
b3JjaCBNb2JpbGUsIEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBNZXRyb2xvZ2ljYWwgR3Jv
dXAgQi5WLgorICogQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICog
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV29ya2VyRm9udExvYWRSZXF1ZXN0LmgiCisK
KyNpbmNsdWRlICJGb250LmgiCisjaW5jbHVkZSAiRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIgor
I2luY2x1ZGUgIkZvbnRTZWxlY3Rpb25BbGdvcml0aG0uaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxv
YWRlck9wdGlvbnMuaCIKKyNpbmNsdWRlICJTZXJ2aWNlV29ya2VyLmgiCisjaW5jbHVkZSAiU2hh
cmVkQnVmZmVyLmgiCisjaW5jbHVkZSAiV09GRkZpbGVGb3JtYXQuaCIKKyNpbmNsdWRlICJXb3Jr
ZXJHbG9iYWxTY29wZS5oIgorI2luY2x1ZGUgIldvcmtlclRocmVhZGFibGVMb2FkZXIuaCIKKwor
bmFtZXNwYWNlIFdlYkNvcmUgeworCitXb3JrZXJGb250TG9hZFJlcXVlc3Q6OldvcmtlckZvbnRM
b2FkUmVxdWVzdChVUkwmJiB1cmwsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbG9hZGVkRnJvbU9w
YXF1ZVNvdXJjZSkKKyAgICA6IG1fdXJsKHVybCkKKyAgICAsIG1fbG9hZGVkRnJvbU9wYXF1ZVNv
dXJjZShsb2FkZWRGcm9tT3BhcXVlU291cmNlKQoreworfQorCit2b2lkIFdvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6bG9hZChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQoreworICAgIEFT
U0VSVChpczxXb3JrZXJHbG9iYWxTY29wZT4oY29udGV4dCkpOworICAgIGF1dG8mIHdvcmtlckds
b2JhbFNjb3BlID0gZG93bmNhc3Q8V29ya2VyR2xvYmFsU2NvcGU+KGNvbnRleHQpOworICAgIG1f
Y29udGV4dCA9IG1ha2VXZWFrUHRyKGNvbnRleHQpOworCisgICAgUmVzb3VyY2VSZXF1ZXN0IHJl
cXVlc3QgeyBtX3VybCB9OworICAgIEFTU0VSVChyZXF1ZXN0Lmh0dHBNZXRob2QoKSA9PSAiR0VU
Iik7CisKKyAgICBGZXRjaE9wdGlvbnMgZmV0Y2hPcHRpb25zOworICAgIGZldGNoT3B0aW9ucy5t
b2RlID0gRmV0Y2hPcHRpb25zOjpNb2RlOjpTYW1lT3JpZ2luOworICAgIGZldGNoT3B0aW9ucy5j
cmVkZW50aWFscyA9IHdvcmtlckdsb2JhbFNjb3BlLmNyZWRlbnRpYWxzKCk7CisgICAgZmV0Y2hP
cHRpb25zLmNhY2hlID0gRmV0Y2hPcHRpb25zOjpDYWNoZTo6RGVmYXVsdDsKKyAgICBmZXRjaE9w
dGlvbnMucmVkaXJlY3QgPSBGZXRjaE9wdGlvbnM6OlJlZGlyZWN0OjpGb2xsb3c7CisgICAgZmV0
Y2hPcHRpb25zLmRlc3RpbmF0aW9uID0gRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6V29ya2Vy
OworCisgICAgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMgb3B0aW9ucyB7IFdURk1vdmUoZmV0Y2hP
cHRpb25zKSB9OworICAgIG9wdGlvbnMuc2VuZExvYWRDYWxsYmFja3MgPSBTZW5kQ2FsbGJhY2tQ
b2xpY3k6OlNlbmRDYWxsYmFja3M7CisgICAgb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lF
bmZvcmNlbWVudCA9IGNvbnRleHQuc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5
UG9saWN5KCkgPyBDb250ZW50U2VjdXJpdHlQb2xpY3lFbmZvcmNlbWVudDo6RG9Ob3RFbmZvcmNl
IDogQ29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1lbnQ6OkVuZm9yY2VDaGlsZFNyY0RpcmVj
dGl2ZTsKKyAgICBvcHRpb25zLmxvYWRlZEZyb21PcGFxdWVTb3VyY2UgPSBtX2xvYWRlZEZyb21P
cGFxdWVTb3VyY2U7CisKKyAgICBvcHRpb25zLnNlcnZpY2VXb3JrZXJzTW9kZSA9IFNlcnZpY2VX
b3JrZXJzTW9kZTo6QWxsOworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBpZiAoYXV0
byogYWN0aXZlU2VydmljZVdvcmtlciA9IGNvbnRleHQuYWN0aXZlU2VydmljZVdvcmtlcigpKQor
ICAgICAgICBvcHRpb25zLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyID0gYWN0
aXZlU2VydmljZVdvcmtlci0+cmVnaXN0cmF0aW9uSWRlbnRpZmllcigpOworI2VuZGlmCisKKyAg
ICBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHdvcmtl
ckdsb2JhbFNjb3BlLCBXVEZNb3ZlKHJlcXVlc3QpLCAqdGhpcywgb3B0aW9ucyk7Cit9CisKK2Jv
b2wgV29ya2VyRm9udExvYWRSZXF1ZXN0OjplbnN1cmVDdXN0b21Gb250RGF0YShjb25zdCBBdG9t
U3RyaW5nJikKK3sKKyNpZiAhUExBVEZPUk0oQ09DT0EpCisgICAgaWYgKCFtX2ZvbnRDdXN0b21Q
bGF0Zm9ybURhdGEgJiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9pc0xvYWRpbmcgJiYgbV9kYXRh
ICYmIGlzV09GRigqbV9kYXRhKSkgeworICAgICAgICBWZWN0b3I8Y2hhcj4gY29udmVydGVkRm9u
dDsKKyAgICAgICAgaWYgKGNvbnZlcnRXT0ZGVG9TZm50KCptX2RhdGEsIGNvbnZlcnRlZEZvbnQp
KQorICAgICAgICAgICAgbV9kYXRhID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoV1RGTW92ZShjb252
ZXJ0ZWRGb250KSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fZXJyb3JPY2N1cnJlZCA9
IHRydWU7CisgICAgfQorI2VuZGlmCisKKyAgICBpZiAoIW1fZm9udEN1c3RvbVBsYXRmb3JtRGF0
YSAmJiAhbV9lcnJvck9jY3VycmVkICYmICFtX2lzTG9hZGluZyAmJiBtX2RhdGEpIHsKKyAgICAg
ICAgbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhID0gY3JlYXRlRm9udEN1c3RvbVBsYXRmb3JtRGF0
YSgqbV9kYXRhLCBtX3VybC5mcmFnbWVudElkZW50aWZpZXIoKS50b1N0cmluZygpKTsKKyAgICAg
ICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEpCisgICAgICAgICAgICBtX2Vycm9yT2Nj
dXJyZWQgPSB0cnVlOworICAgIH0KKworICAgIHJldHVybiBtX2ZvbnRDdXN0b21QbGF0Zm9ybURh
dGEuZ2V0KCk7Cit9CisKK1JlZlB0cjxGb250PiBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmNyZWF0
ZUZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0IEF0b21T
dHJpbmcmLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBG
b250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lm
aWVkQ2FwYWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQoreworICAgIEFTU0VSVChtX2Zv
bnRDdXN0b21QbGF0Zm9ybURhdGEpOworICAgIEFTU0VSVChtX2NvbnRleHQpOworICAgIHJldHVy
biBGb250OjpjcmVhdGUobV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhLT5mb250UGxhdGZvcm1EYXRh
KGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCBmb250RmFj
ZUZlYXR1cmVzLCBmb250RmFjZUNhcGFiaWxpdGllcyksIG1fY29udGV4dC0+Zm9udENhY2hlKCks
IEZvbnQ6Ok9yaWdpbjo6UmVtb3RlKTsKK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6
OnNldENsaWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqIGNsaWVudCkKK3sKKyAgICBtX2ZvbnRM
b2FkUmVxdWVzdENsaWVudCA9IGNsaWVudDsKKworICAgIGlmIChtX25vdGlmeU9uQ2xpZW50U2V0
KSB7CisgICAgICAgIG1fbm90aWZ5T25DbGllbnRTZXQgPSBmYWxzZTsKKyAgICAgICAgbV9mb250
TG9hZFJlcXVlc3RDbGllbnQtPmZvbnRMb2FkZWQoKnRoaXMpOworICAgIH0KK30KKwordm9pZCBX
b3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3sKKyAgICBpZiAocmVzcG9uc2UuaHR0
cFN0YXR1c0NvZGUoKSAvIDEwMCAhPSAyICYmIHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkpIHsK
KyAgICAgICAgbV9lcnJvck9jY3VycmVkID0gdHJ1ZTsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
K30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVEYXRhKGNvbnN0IGNo
YXIqIGRhdGEsIGludCBkYXRhTGVuZ3RoKQoreworICAgIGlmIChtX2Vycm9yT2NjdXJyZWQpCisg
ICAgICAgIHJldHVybjsKKworICAgIGlmICghbV9kYXRhKQorICAgICAgICBtX2RhdGEgPSBTaGFy
ZWRCdWZmZXI6OmNyZWF0ZSgpOworCisgICAgbV9kYXRhLT5hcHBlbmQoZGF0YSwgZGF0YUxlbmd0
aCk7Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKHVu
c2lnbmVkIGxvbmcpCit7CisgICAgbV9pc0xvYWRpbmcgPSBmYWxzZTsKKworICAgIGlmICghbV9l
cnJvck9jY3VycmVkKSB7CisgICAgICAgIGlmIChtX2ZvbnRMb2FkUmVxdWVzdENsaWVudCkKKyAg
ICAgICAgICAgIG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50LT5mb250TG9hZGVkKCp0aGlzKTsKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgbV9ub3RpZnlPbkNsaWVudFNldCA9IHRydWU7CisgICAg
fQorfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmFpbChjb25zdCBSZXNvdXJj
ZUVycm9yJikKK3sKKyAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOworfQorCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZv
bnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJl
cXVlc3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi44OGNlN2M1ZDE5ODU1NjE2NTA4MTI4MWY1YWNjNmEwY2YxNWQw
ZGMxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250
TG9hZFJlcXVlc3QuaApAQCAtMCwwICsxLDgzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IE1ldHJvbG9naWNhbCBHcm91cCBCLlYuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMu
TC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisg
KiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMK
KyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRm9udExvYWRSZXF1ZXN0
LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCisjaW5jbHVkZSAiVGhyZWFk
YWJsZUxvYWRlckNsaWVudC5oIgorI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKyNpbmNsdWRlIDx3
dGYvVVJMLmg+CisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitjbGFzcyBGb250Q3VzdG9tUGxhdGZvcm1EYXRhOworY2xhc3MgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dDsKK2NsYXNzIFNoYXJlZEJ1ZmZlcjsKK2NsYXNzIFdvcmtlckdsb2JhbFNjb3BlOwor
CitjbGFzcyBXb3JrZXJGb250TG9hZFJlcXVlc3QgOiBwdWJsaWMgRm9udExvYWRSZXF1ZXN0LCBw
dWJsaWMgVGhyZWFkYWJsZUxvYWRlckNsaWVudCB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FU
RUQ7CitwdWJsaWM6CisgICAgV29ya2VyRm9udExvYWRSZXF1ZXN0KFVSTCYmLCBMb2FkZWRGcm9t
T3BhcXVlU291cmNlKTsKKyAgICB+V29ya2VyRm9udExvYWRSZXF1ZXN0KCkgPSBkZWZhdWx0Owor
CisgICAgdm9pZCBsb2FkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKTsKKworcHJpdmF0ZToKKyAg
ICBjb25zdCBVUkwmIHVybCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdXJsOyB9CisgICAgYm9v
bCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiAhbV9pc0xvYWRpbmcgJiYgIW1fZXJy
b3JPY2N1cnJlZCAmJiAhbV9kYXRhOyB9CisgICAgYm9vbCBpc0xvYWRpbmcoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBtX2lzTG9hZGluZzsgfQorICAgIGJvb2wgZXJyb3JPY2N1cnJlZCgpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIG1fZXJyb3JPY2N1cnJlZDsgfQorCisgICAgYm9vbCBlbnN1cmVDdXN0
b21Gb250RGF0YShjb25zdCBBdG9tU3RyaW5nJiByZW1vdGVVUkkpIGZpbmFsOworICAgIFJlZlB0
cjxGb250PiBjcmVhdGVGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGNvbnN0IEF0b21TdHJp
bmcmIHJlbW90ZVVSSSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywg
Y29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYsIEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmls
aXRpZXMpIGZpbmFsOworCisgICAgdm9pZCBzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50
KikgZmluYWw7CisKKyAgICBib29sIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkgY29uc3QgZmlu
YWwgeyByZXR1cm4gdHJ1ZTsgfQorCisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAg
dm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkgZmlu
YWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikg
ZmluYWw7CisgICAgdm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKKwor
ICAgIFVSTCBtX3VybDsKKyAgICBMb2FkZWRGcm9tT3BhcXVlU291cmNlIG1fbG9hZGVkRnJvbU9w
YXF1ZVNvdXJjZTsKKworICAgIGJvb2wgbV9pc0xvYWRpbmcgeyBmYWxzZSB9OworICAgIGJvb2wg
bV9ub3RpZnlPbkNsaWVudFNldCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2Vycm9yT2NjdXJyZWQg
eyBmYWxzZSB9OworICAgIEZvbnRMb2FkUmVxdWVzdENsaWVudCogbV9mb250TG9hZFJlcXVlc3RD
bGllbnQgeyBudWxscHRyIH07CisKKyAgICBXZWFrUHRyPFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ+
IG1fY29udGV4dDsKKyAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBtX2RhdGE7CisgICAgc3RkOjp1
bmlxdWVfcHRyPEZvbnRDdXN0b21QbGF0Zm9ybURhdGE+IG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0
YTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19GT05UTE9BRFJFUVVFU1QoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0LCBpc1dvcmtl
ckZvbnRMb2FkUmVxdWVzdCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2Jh
bFNjb3BlLmNwcAppbmRleCA3NzUyYWY5NTUyYjU3NDM0NmQ2MjhkNGY3ZmE4Zjc2YzM2MGQ0OGM4
Li40ZWU3Y2FkMzY0YzE4ODJjZWRiNGM1NDZmNzI0N2NlMmNlOTU4M2RmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtMzQsNiArMzQsNyBAQAog
I2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkNyeXB0by5oIgog
I2luY2x1ZGUgIkZvbnRDYWNoZS5oIgorI2luY2x1ZGUgIkZvbnRGYWNlU2V0LmgiCiAjaW5jbHVk
ZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiSW1hZ2VCaXRtYXBPcHRpb25zLmgi
CiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCkBAIC00NSw2ICs0Niw3IEBA
CiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW5Qb2xpY3kuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGUuaCIKICNpbmNsdWRlICJTb2NrZXRQcm92aWRlci5oIgorI2luY2x1ZGUg
IldvcmtlckZvbnRMb2FkUmVxdWVzdC5oIgogI2luY2x1ZGUgIldvcmtlckxvYWRlclByb3h5Lmgi
CiAjaW5jbHVkZSAiV29ya2VyTG9jYXRpb24uaCIKICNpbmNsdWRlICJXb3JrZXJNZXNzYWdpbmdQ
cm94eS5oIgpAQCAtNTE0LDYgKzUxNiwyMiBAQCBGb250Q2FjaGUmIFdvcmtlckdsb2JhbFNjb3Bl
Ojpmb250Q2FjaGUoKQogICAgIHJldHVybiAqbV9mb250Q2FjaGU7CiB9CiAKK1JlZjxGb250RmFj
ZVNldD4gV29ya2VyR2xvYmFsU2NvcGU6OmZvbnRzKCkKK3sKKyAgICByZXR1cm4gY3NzRm9udFNl
bGVjdG9yKCktPmZvbnRGYWNlU2V0KCk7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjxGb250TG9hZFJl
cXVlc3Q+IFdvcmtlckdsb2JhbFNjb3BlOjpmb250TG9hZFJlcXVlc3QoU3RyaW5nJiB1cmwsIGJv
b2wsIGJvb2wsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkK
K3sKKyAgICByZXR1cm4gbWFrZVVuaXF1ZTxXb3JrZXJGb250TG9hZFJlcXVlc3Q+KGNvbXBsZXRl
VVJMKHVybCksIGxvYWRlZEZyb21PcGFxdWVTb3VyY2UpOworfQorCit2b2lkIFdvcmtlckdsb2Jh
bFNjb3BlOjpiZWdpbkxvYWRpbmdGb250U29vbihGb250TG9hZFJlcXVlc3QmIHJlcXVlc3QpCit7
CisgICAgQVNTRVJUKGlzPFdvcmtlckZvbnRMb2FkUmVxdWVzdD4ocmVxdWVzdCkpOworICAgIGRv
d25jYXN0PFdvcmtlckZvbnRMb2FkUmVxdWVzdD4ocmVxdWVzdCkubG9hZCgqdGhpcyk7Cit9CisK
IFJlZmVycmVyUG9saWN5IFdvcmtlckdsb2JhbFNjb3BlOjpyZWZlcnJlclBvbGljeSgpIGNvbnN0
CiB7CiAgICAgcmV0dXJuIG1fcmVmZXJyZXJQb2xpY3k7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggNjJkYTMxODM1MzYxZDQwYzMwNjU4OWVmYWMwOGRm
MTQzNDFmY2UwNi4uOTU5ODcwNTNmOTQ3YTMzMzczZjkxMDU0ZTZhODMyNWFkYzk3NDAwMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtNDcsNiArNDcs
OCBAQCBjbGFzcyBDU1NGb250U2VsZWN0b3I7CiBjbGFzcyBDU1NWYWx1ZVBvb2w7CiBjbGFzcyBD
b250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnM7CiBjbGFzcyBDcnlwdG87CitjbGFz
cyBGb250RmFjZVNldDsKK2NsYXNzIEZvbnRMb2FkUmVxdWVzdDsKIGNsYXNzIFBlcmZvcm1hbmNl
OwogY2xhc3MgU2NoZWR1bGVkQWN0aW9uOwogY2xhc3MgV29ya2VyTG9jYXRpb247CkBAIC0xMjAs
NiArMTIyLDkgQEAgcHVibGljOgogICAgIENTU1ZhbHVlUG9vbCYgY3NzVmFsdWVQb29sKCkgZmlu
YWw7CiAgICAgQ1NTRm9udFNlbGVjdG9yKiBjc3NGb250U2VsZWN0b3IoKSBmaW5hbDsKICAgICBG
b250Q2FjaGUmIGZvbnRDYWNoZSgpIGZpbmFsOworICAgIFJlZjxGb250RmFjZVNldD4gZm9udHMo
KTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8Rm9udExvYWRSZXF1ZXN0PiBmb250TG9hZFJlcXVlc3Qo
U3RyaW5nJiwgYm9vbCwgYm9vbCwgTG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkgZmluYWw7CisgICAg
dm9pZCBiZWdpbkxvYWRpbmdGb250U29vbihGb250TG9hZFJlcXVlc3QmKSBmaW5hbDsKIAogICAg
IFJlZmVycmVyUG9saWN5IHJlZmVycmVyUG9saWN5KCkgY29uc3QgZmluYWw7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXggZjg1NzhhNDcxZjQ4
YjQ4NThiYmZiYmZiYzhhMDVjY2RkOWI2OWIyNi4uZTI4ZTg5ZWZmNGNiMDJmNzRkZjBiZDFhMjkw
MWE3NTcxNDVjZWNmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJH
bG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxT
Y29wZS5pZGwKQEAgLTQ4LDMgKzQ4LDQgQEAKIH07CiAKIFdvcmtlckdsb2JhbFNjb3BlIGluY2x1
ZGVzIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGU7CitXb3JrZXJHbG9iYWxTY29wZSBpbmNsdWRl
cyBGb250RmFjZVNvdXJjZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNv
cmVBcmd1bWVudENvZGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1l
bnRDb2RlcnMuY3BwCmluZGV4IDI1NWEyY2JjNmM3N2NlZjFlNjA3MGVhNDIwZjZiZGU5MGIyNDBh
NzEuLjY2Njc4NTY5OWMwNGM1YzI1MDU5MzU5MWVmZjhkYWVkOTllNzMxMjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcApAQCAtNTUsNiArNTUs
NyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvRmlsdGVyT3BlcmF0aW9ucy5oPgogI2luY2x1ZGUgPFdl
YkNvcmUvRm9udC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRm9udEF0dHJpYnV0ZXMuaD4KKyNpbmNs
dWRlIDxXZWJDb3JlL0ZvbnRDYWNoZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250
ZXh0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc0xheWVyLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9JREJHZXRSZXN1bHQuaD4KQEAgLTExNDQsNyArMTE0NSw3IEBAIE9wdGlvbmFsPFJlZjxG
b250Pj4gQXJndW1lbnRDb2RlcjxSZWY8Rm9udD4+OjpkZWNvZGUoRGVjb2RlciYgZGVjb2RlcikK
ICAgICBpZiAoIXBsYXRmb3JtRGF0YS5oYXNWYWx1ZSgpKQogICAgICAgICByZXR1cm4gV1RGOjpu
dWxsb3B0OwogCi0gICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGEudmFsdWUoKSwg
b3JpZ2luLnZhbHVlKCksIGlzSW50ZXJzdGl0aWFsLnZhbHVlKCksIHZpc2liaWxpdHkudmFsdWUo
KSwgaXNUZXh0T3JpZW50YXRpb25GYWxsYmFjay52YWx1ZSgpLCByZW5kZXJpbmdSZXJzb3VjZUlk
ZW50aWZpZXIpOworICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRhLnZhbHVlKCks
IEZvbnRDYWNoZTo6c2luZ2xldG9uKCksIG9yaWdpbi52YWx1ZSgpLCBpc0ludGVyc3RpdGlhbC52
YWx1ZSgpLCB2aXNpYmlsaXR5LnZhbHVlKCksIGlzVGV4dE9yaWVudGF0aW9uRmFsbGJhY2sudmFs
dWUoKSwgcmVuZGVyaW5nUmVyc291Y2VJZGVudGlmaWVyKTsKIH0KIAogdm9pZCBBcmd1bWVudENv
ZGVyPEN1cnNvcj46OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBDdXJzb3ImIGN1cnNv
cikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGVkYjVlOWExMTRmYmU1NzQ5ZWRk
NDQwNmNhNWUyZTZiMjRlYzc0Y2UuLjhjMmQ5MjNiYzY1NjFmNjFkZTRlYTNlMjQxOWNkNmMyNjcw
NDg3OWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisy
MDIxLTA0LTE2ICBDaHJpcyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KKworICAgICAgICBJbXBs
ZW1lbnQgRm9udEZhY2UgaW4gV29ya2VycyBmb3IgT2Zmc2NyZWVuQ2FudmFzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQxNzgKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzc2NTI5MDI0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZvbnRGYWNlIGlzIG5vdyBhdmFpbGFibGUgZm9yIFdvcmtlcnMsIHJl
YmFzZWxpbmUgcmVsYXRlZCB0ZXN0cy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtl
ci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5h
bGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQu
bHRyLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29y
a2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29ya2Vy
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxs
Lm1heFdpZHRoLmJvdW5kLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1h
eFdpZHRoLmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFj
ZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJl
cGVhdC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUuYWR2YW5jZXMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2Vs
aW5lcy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtl
ci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKwogMjAyMS0wNC0w
MiAgQWxleGV5IFNodmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CiAKICAgICAgICAgUmVt
b3ZlIFtSZXBsYWNlYWJsZV0gZXh0ZW5kZWQgYXR0cmlidXRlIGZyb20gYGRvY3VtZW50LmFsbGAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3Jr
ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVy
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZTlkN2Y1NzRmNDU1MGNkNWYyZjM0YzNhMGM2Yjg5
ZGQzZGE4ZmRkMy4uMTFkZGNmY2U2NzBiNWVmYWI0MTc2MjM1ODBiMjhiNzRkMmExMDYzNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVy
Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIGNl
bnRlciBpcyB0aGUgY2VudGVyIG9mIHRoZSBlbSBzcXVhcmVzIChub3QgdGhlIGJvdW5kaW5nIGJv
eCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGNlbnRlciBp
cyB0aGUgY2VudGVyIG9mIHRoZSBlbSBzcXVhcmVzIChub3QgdGhlIGJvdW5kaW5nIGJveCkKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3Jr
ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0
ci53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDM4ZGQ3OGJlZWJlYmY5MmVkMDJiMTU0OTYyYTBh
MDk1MDBkOTZjMWMuLmUwOTJlMWY4YmM2ZGY3NWQxYzkxNWE0YjRmYjlhZWRiZTFmOGM3OWIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQu
bHRyLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWdu
IGVuZCB3aXRoIGx0ciBpcyB0aGUgcmlnaHQgZWRnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250
RmFjZQorUEFTUyB0ZXh0QWxpZ24gZW5kIHdpdGggbHRyIGlzIHRoZSByaWdodCBlZGdlCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwu
d29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAwNThiYjk5ZGUzMzVhNGJmZDAzZmI1MTY3MzQxZWQ0
MGJhYmNiOTEyLi40YjZkZTI3ZTI0ODhiZWViOWRjZWM5ZGRlYjFlYjQ0MjBiZTNmNWMyIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0
bC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBl
bmQgd2l0aCBydGwgaXMgdGhlIGxlZnQgZWRnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFj
ZQorUEFTUyB0ZXh0QWxpZ24gZW5kIHdpdGggcnRsIGlzIHRoZSBsZWZ0IGVkZ2UKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhw
ZWN0ZWQudHh0CmluZGV4IGYyOTJmOTQ0MTI3OWRjYTk1NzRjMmJmMDMxNjZiMTM5NTE5MmM1NjMu
LmIyM2Y3NzhjZmUwMWM1NDUzOTIwMDIzYTFhMzNkNDk2ZDVmMmZhYTMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIGxlZnQgaXMgdGhlIGxlZnQg
b2YgdGhlIGZpcnN0IGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQg
dmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBsZWZ0IGlzIHRoZSBsZWZ0IG9mIHRo
ZSBmaXJzdCBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KQogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVk
LnR4dAppbmRleCBmZjVhNDAyMGJkYWIwYTYxMTlmZDY0YWU0NzcyZmMxNWIxMWVhNTY1Li5hMTA4
MmQ1YjhjNTg1NDQ5M2RhMDg5NTAxNjBlZmRjYTY5YjNlYjBkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50
eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIHJpZ2h0IGlzIHRoZSByaWdodCBv
ZiB0aGUgbGFzdCBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24gcmlnaHQgaXMgdGhlIHJpZ2h0IG9mIHRo
ZSBsYXN0IGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggNmZkOTY1NTQ1MmNmMDE2N2I0YWQwOWMxMmU5MzY3YzBjYzhiMTJh
OS4uMTlmMDJiZjNkMDg1ZjQxYWFlOTY5Y2FiZjlkNDliMmNmN2EwZjI5NiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndv
cmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIHN0YXJ0
IHdpdGggbHRyIGlzIHRoZSBsZWZ0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UK
K1BBU1MgdGV4dEFsaWduIHN0YXJ0IHdpdGggbHRyIGlzIHRoZSBsZWZ0IGVkZ2UKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwu
d29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBiZDVhNTlkNzllNmUwNWFkYzM4NDM5Y2FkNWRiZjVi
MjFkOWM4NjljLi40MWMzZjI0YWYwYmRiNDYzNjI1MWM0OTRmZGM2NDllM2Q5ZTY5MWJkIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFy
dC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxp
Z24gc3RhcnQgd2l0aCBydGwgaXMgdGhlIHJpZ2h0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTog
Rm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIHN0YXJ0IHdpdGggcnRsIGlzIHRoZSByaWdodCBlZGdl
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhh
YmV0aWMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJh
c2VsaW5lLmFscGhhYmV0aWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBkMzg5OTQwYWY2NWY0
N2RhM2FiZjJlZWM0ZDdhOWI5NjE1MWQzZmVkLi5hMTdlZWY1MDkyYjdkMDM4MjdhY2Q2NWI3OTc4
ZWU0YjliZTIwZGMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNl
bGluZS5hbHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsMyBAQAogCi1GQUlMIDJkIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNT
IDJkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJv
dHRvbS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFz
ZWxpbmUuYm90dG9tLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNmExNTQ5YzE3YjIyNmE5ZTU1
NjU3NWNlOTJmNzI5Njg4OWNkYTI5Mi4uZmYyODM2MDk4NTM4NTQyZDcyZWRjMjkxMDBmNTgwNmE4
MjNiMDc0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUu
Ym90dG9tLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYmFzZWxpbmUuYm90dG9tLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAK
LUZBSUwgdGV4dEJhc2VsaW5lIGJvdHRvbSBpcyB0aGUgYm90dG9tIG9mIHRoZSBlbSBzcXVhcmUg
KG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJ
TCB0ZXh0QmFzZWxpbmUgYm90dG9tIGlzIHRoZSBib3R0b20gb2YgdGhlIGVtIHNxdWFyZSAobm90
IHRoZSBib3VuZGluZyBib3gpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0
aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5n
aW5nLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYyZWVjNGQ3
YTliOTYxNTFkM2ZlZC4uY2JlZjI3NmEzNDc4ZmFiYzExYWI1ZjRmMWI1ZDI1OTI1NTc2OThkZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2Vs
aW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAy
ZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCAyZCBhc3NlcnRfYXBwcm94X2Vx
dWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1LCA1KSBleHBlY3RlZCAwICsvLSAy
IGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJh
c2VsaW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4
IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmNiZWYyNzZhMzQ3OGZh
YmMxMWFiNWY0ZjFiNWQyNTkyNTU3Njk4ZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmJhc2VsaW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2VyLWV4
cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBGb250RmFjZQorRkFJTCAyZCBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2Yg
dGhlIHBpeGVsIGF0ICg1LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxl
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMzAwNjczOGE5YzZkOGY5MjBlZDljMGM4Y2U2NmVj
OTMyMzkzZWJhYS4uYWQ2NDk0OWUxNTEyYTViODcwYjA2ZDEyMDQ4ZjJiOGYyODY4MzE5NiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndvcmtl
ci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUu
bWlkZGxlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEJh
c2VsaW5lIG1pZGRsZSBpcyB0aGUgbWlkZGxlIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91
bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCB0ZXh0QmFzZWxp
bmUgbWlkZGxlIGlzIHRoZSBtaWRkbGUgb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGlu
ZyBib3gpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQg
KDUsIDUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCBlMjZmMWI2ZjhhMzQzYjBkYTUzNTlhZWU0ODE2OWI0N2ZiNjI3MGFhLi44MGU5OGZi
MjViNjk0M2IzYzgyOTRkYzIyZTNiYmI3YTcwMmEzNjQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4
dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QmFzZWxpbmUgdG9wIGlzIHRoZSB0b3Agb2Yg
dGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6
IEZvbnRGYWNlCitGQUlMIHRleHRCYXNlbGluZSB0b3AgaXMgdGhlIHRvcCBvZiB0aGUgZW0gc3F1
YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFu
bmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJv
dW5kLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxs
Lm1heFdpZHRoLmJvdW5kLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOWMzZjg1ZTQ5MGEyMTM2
ZDNmNDUwNWJiMzkzYmEzOWNiNDkwMmJiYS4uZWU0MjkxZDJiZTgzNTg0NDUwMjhmN2IyZTUzOTBh
NGI5ZmE0ZTAwZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5t
YXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwz
ICsxLDMgQEAKIAotRkFJTCBmaWxsVGV4dCBoYW5kbGVzIG1heFdpZHRoIGJhc2VkIG9uIGxpbmUg
c2l6ZSwgbm90IGJvdW5kaW5nIGJveCBzaXplIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNl
CitQQVNTIGZpbGxUZXh0IGhhbmRsZXMgbWF4V2lkdGggYmFzZWQgb24gbGluZSBzaXplLCBub3Qg
Ym91bmRpbmcgYm94IHNpemUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQu
dHh0CmluZGV4IDZiOTJjMzhmMzIyMjI5OGNhOGFhOGVlMjE5NmMzOGUxNGE3YjljNzguLmIyY2Uy
NzFiZjEwMWUzYzliNjJiNThiZDE4OTI5NzU5MWQ3OWE3NmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRm
YWNlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgZmlsbFRleHQg
d29ya3Mgb24gQGZvbnQtZmFjZSBmb250cyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQor
UEFTUyBmaWxsVGV4dCB3b3JrcyBvbiBAZm9udC1mYWNlIGZvbnRzCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndv
cmtlci1leHBlY3RlZC50eHQKaW5kZXggZTc5MzU3YWFiMjVmNjE4ZWY1YTdlMDRiZmJhNDg1NzBl
OTRmMmVjYi4uMWFiOTkxZjIyZWVkZTViMjhmMzExOWM5ZjUyZmE3ZDgxZDgzYzMyMiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtl
ci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uu
bm90aW5wYWdlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgQGZv
bnQtZmFjZSBmb250cyBzaG91bGQgd29yayBldmVuIGlmIHRoZXkgYXJlIG5vdCB1c2VkIGluIHRo
ZSBwYWdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIEBmb250LWZhY2UgZm9u
dHMgc2hvdWxkIHdvcmsgZXZlbiBpZiB0aGV5IGFyZSBub3QgdXNlZCBpbiB0aGUgcGFnZQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29y
a2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJl
cGVhdC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDBmNzVlYTkyMTI5ZGQ0ZjJhZjlkMmY1M2Yx
ZWZiNjRmMTk5MTE2NDUuLjM5ZWRhNGRjMmZmNjYzZTFmMjgzNmU1NjdjZTc2Mzg2NTU2OTFkOTUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRm
YWNlLnJlcGVhdC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIERy
YXcgd2l0aCB0aGUgZm9udCBpbW1lZGlhdGVseSwgdGhlbiB3YWl0IGEgYml0IHVudGlsIGFuZCBk
cmF3IGFnYWluLiAoVGhpcyBjcmFzaGVzIHNvbWUgdmVyc2lvbiBvZiBXZWJLaXQuKSBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBEcmF3IHdpdGggdGhlIGZvbnQgaW1tZWRpYXRl
bHksIHRoZW4gd2FpdCBhIGJpdCB1bnRpbCBhbmQgZHJhdyBhZ2Fpbi4gKFRoaXMgY3Jhc2hlcyBz
b21lIHZlcnNpb24gb2YgV2ViS2l0LikKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVm
NDdkYTNhYmYyZWVjNGQ3YTliOTYxNTFkM2ZlZC4uYTE3ZWVmNTA5MmI3ZDAzODI3YWNkNjViNzk3
OGVlNGI5YmUyMGRjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9u
dGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIDJk
IENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIDJkCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQu
dHh0CmluZGV4IDlhMzI0MDI3NWVkMzg3ZGJkZmQ1ZDI1YzFmNWEyN2E5ZGU2OWM3NWEuLjFlZDQ0
ZjhmN2RiY2IxNjM0YmY0OWE3M2JmOTU5NWI5NzkyMDk4Y2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4
dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBVKzAwMjAgaXMgcmVuZGVyZWQgdGhlIGNvcnJlY3Qg
c2l6ZSAoMWVtIHdpZGUpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFUrMDAy
MCBpcyByZW5kZXJlZCB0aGUgY29ycmVjdCBzaXplICgxZW0gd2lkZSkKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQu
d29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA2ZTVmODMyZDE0MmUwZTc1NTI0OTI4ZTUyNzRlYjkw
YTBhMzJjYjZhLi40MmY1NzBmMGI5ZTc4ZDk0N2MwZTBiYzY0YWI2ODE2OGMzNjY1NTJjIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQud29y
a2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5j
b2xsYXBzZS5lbmQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBT
cGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBlbmQgb2YgYSBsaW5lIGFyZSBjb2xsYXBzZWQgKHBlciBD
U1MpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMg
YXQgdGhlIGVuZCBvZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJv
eF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoNzUsIDI1KSBleHBlY3RlZCAw
ICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0
ZWQudHh0CmluZGV4IGFlNDYxNWRlNGNjNDAyOTc2MGQxNzVjOTA3NDI5NzllZTU1MzAzNWMuLjll
NWQ0NzA0NDk1MjkzOTE3Y2Q1ZWU1NjQ2ZjQ4YzhjOThkYTZiZDggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uu
bm9uc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBOb24t
c3BhY2UgY2hhcmFjdGVycyBhcmUgbm90IGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNl
ZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBOb24tc3BhY2UgY2hhcmFjdGVy
cyBhcmUgbm90IGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZAogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uu
b3RoZXIud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA5NGEwMDQzYTBhMzM3OWUxMjhlYjE2NDBi
NGY2NDI4YjJkNzEzOWRhLi42ODJjZmI5MzliMGY4NTAxMGI3ZDMzZTU4NDIxMDU2YTUxYjQ4MDE0
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5v
dGhlci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNv
bGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgU3Bh
Y2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVy
IENTUykgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAo
MjUsIDI1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53
b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDk0YTAwNDNhMGEzMzc5ZTEyOGViMTY0MGI0ZjY0Mjhi
MmQ3MTM5ZGEuLjY4MmNmYjkzOWIwZjg1MDEwYjdkMzNlNTg0MjEwNTZhNTFiNDgwMTQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndv
cmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2Uu
Y29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJ
TCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwLCBhbmQgY29sbGFwc2Vk
IChwZXIgQ1NTKSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFy
YWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwLCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBh
c3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUp
IGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggNTA4NjhmZTkxOTgwY2E3MGI0MDlmNzYzNzM5ZTg0MGVmOTZmM2Q1
ZC4uN2JjYjUxY2NjN2I5YzBhMTYwOWQ1ZWFjZDNkMzRkYzI4MTgxMjg0YyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBz
ZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNl
IGNoYXJhY3RlcnMgYXQgdGhlIHN0YXJ0IG9mIGEgbGluZSBhcmUgY29sbGFwc2VkIChwZXIgQ1NT
KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0
IHRoZSBzdGFydCBvZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJv
eF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBleHBlY3RlZCAw
ICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5t
ZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0
CmluZGV4IDMxMjBmY2I4ZmFkZGQ5ZTU0MjY3NDVkZDU1NmY5ZDQzNzliZmU3YjcuLjgyNTRjZTY3
NDI0ODYyMmVlMDdiNDRjN2Q5ZjhiNmNkZjc2MWNmNjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gud29y
a2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGFjdHVhbEJv
dW5kaW5nQm94IGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZh
Y2UKK0ZBSUwgVGVzdGluZyBhY3R1YWxCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIGFz
c2VydF9lcXVhbHM6IE1hdGguYWJzKGN0eC5tZWFzdXJlVGV4dCgnQScpLmFjdHVhbEJvdW5kaW5n
Qm94RGVzY2VudCkgPT09IDAgKGdvdCAxW251bWJlcl0sIGV4cGVjdGVkIDBbbnVtYmVyXSkgZXhw
ZWN0ZWQgMCBidXQgZ290IDEKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUuYWR2YW5jZXMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZjRhMDg0MDNjMWVi
OGI0MWFjNGJhNTgwNjJhNDM1Mjg1NzU1NTVhYi4uOTM4Yzc5OTExZDA2ZWY1MTRkN2IxYzljNmE0
NTQxNTFhMWJmNTdiNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUu
YWR2YW5jZXMud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1G
QUlMIFRlc3Rpbmcgd2lkdGggYWR2YW5jZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIHdpZHRoIGFkdmFuY2VzIGZvciBPZmZz
Y3JlZW5DYW52YXMgdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2N0eC5t
ZWFzdXJlVGV4dCgnSGVsbG8nKS5hZHZhbmNlc1swXScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQK
aW5kZXggM2QyOTkwYzExZTk2ZTE3MTg1Nzg5MzRjZjMyY2FiNjM0NDc5NmM3MS4uZTFkMjI5Mzg0
ZDFhNzA2NTAyZTUxODQyOTJmNTdkODM0NGM0OTI3YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBiYXNlbGluZXMgZm9yIE9mZnNjcmVlbkNh
bnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIGJhc2VsaW5l
cyBmb3IgT2Zmc2NyZWVuQ2FudmFzIGN0eC5tZWFzdXJlVGV4dCgnQScpLmdldEJhc2VsaW5lcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdjdHgubWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMo
KScsICdjdHgubWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMnIGlzIHVuZGVmaW5lZCkKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMu
d29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA4NWE3MmNlYTE3MTkzZmJmMTA4ZWJmNGI0NjEzZmU5
ZTkyNTlkMGQwLi5hY2FmYWRmODYxYzA3ZmE3ZmZmNTFmMzAxZmE3ZTE5ZmRlYmFmMWZhIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMu
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGVtSGVp
Z2h0cyBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitG
QUlMIFRlc3RpbmcgZW1IZWlnaHRzIGZvciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0X2VxdWFsczog
Y3R4Lm1lYXN1cmVUZXh0KCdBJykuZW1IZWlnaHRBc2NlbnQgPT09IDM3LjUgKGdvdCA4NVtudW1i
ZXJdLCBleHBlY3RlZCAzNy41W251bWJlcl0pIGV4cGVjdGVkIDM3LjUgYnV0IGdvdCA4NQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gu
d29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZvbnRC
b3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDE0YzdkYTQ0YmQwZWRjZjY4MWFm
N2FmM2RjNmI2ZTdmYTE1YTQ2NTAuLjI1YmFjZTNlZmNmMTdmZmUyN2IwNTMxNzlmZGRkMGZlOTMx
MjAzY2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3Vu
ZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5t
ZWFzdXJlLmZvbnRCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBA
QAogCi1GQUlMIFRlc3RpbmcgZm9udEJvdW5kaW5nQm94IGZvciBPZmZzY3JlZW5DYW52YXMgQ2Fu
J3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgVGVzdGluZyBmb250Qm91bmRpbmdCb3gg
Zm9yIE9mZnNjcmVlbkNhbnZhcwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS53aWR0aC5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1Yzc4
MGM5ZTRlNTE4NjFiMDFkYTMwY2YxNGQ3Mzg1MjM0MzlhMjkzLi45NDJmOTE0MTA1NTU5Mjc3OWI4
NDNhYjY2YTUxNTZjOWIyZjA3ZDA1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS53aWR0aC5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEs
MyArMSwzIEBACiAKLUZBSUwgVGhlIHdpZHRoIG9mIGNoYXJhY3RlciBpcyBzYW1lIGFzIGZvbnQg
dXNlZCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQ
QVNTIFRoZSB3aWR0aCBvZiBjaGFyYWN0ZXIgaXMgc2FtZSBhcyBmb250IHVzZWQgZm9yIE9mZnNj
cmVlbkNhbnZhcwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53
aWR0aC5lbXB0eS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1MDBkNzI3ZDNiNjdk
Yzk4NmFmZWY0YjlkMmYyYTc0Njk5ZTFkM2VlLi42ODdiYzRmMzVmY2Y0Y2NkNzQ3NzQxMWE3NjIz
MzQzYjMwYmRlOTM4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53
aWR0aC5lbXB0eS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgVGhlIGVtcHR5IHN0cmluZyBoYXMgemVybyB3aWR0aCBmb3IgT2Zmc2NyZWVuQ2Fu
dmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFRoZSBlbXB0eSBzdHJpbmcg
aGFzIHplcm8gd2lkdGggZm9yIE9mZnNjcmVlbkNhbnZhcwogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVk
LnR4dAppbmRleCA5M2Q3MTFjNGJiOTQ3MjIwNGM3ZjE0MzVjOGJlMDBmZGM3YjI2YjJhLi4wNTM3
MjkwMGQ1NjZmNzliNDU1YzNlYTU1MjUyMDY1MjVmZDIwMWNhIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29u
dmVydGVkIHRvIFUrMDAyMCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBmb3IgT2Zmc2NyZWVuQ2Fu
dmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMg
YXJlIGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgZm9yIE9mZnNj
cmVlbkNhbnZhcyBhc3NlcnRfZXF1YWxzOiBjdHgubWVhc3VyZVRleHQoJ0EgXHgwOVx4MGFceDBj
XHgwZCAgXHgwOVx4MGFceDBjXHgwZEInKS53aWR0aCA9PT0gMTUwIChnb3QgNjUwW251bWJlcl0s
IGV4cGVjdGVkIDE1MFtudW1iZXJdKSBleHBlY3RlZCAxNTAgYnV0IGdvdCA2NTAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426204</attachid>
            <date>2021-04-16 03:11:34 -0700</date>
            <delta_ts>2021-04-16 03:59:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210416111132.patch</filename>
            <type>text/plain</type>
            <size>91257</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzY4OTY4YmM3NWQ4NzVj
YWYyMDMwM2Q0Y2IzMzQ1ZGJhYTA2NmRjZC4uNmU4Y2JhMjM0NDAwNjRlOWVmYjZkOWZlNjU4OGU2
YmFmYjEwN2JmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyMCBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUbyBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGlt
cGxlbWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJs
ZSBvbiBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFp
bGFibGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAg
ICBtYWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBy
ZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFj
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgUGFzcyBhIEZvbnRDYWNoZSB3aGVu
IGNhbGxpbmcgRm9udDo6Y3JlYXRlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU2V0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjplbnN1cmVMb2NhbEZvbnRGYWNl
c0ZvckZhbWlseVJlZ2lzdGVyZWQpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1
ZVBvb2wgYW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9y
RmFtaWx5UmVnaXN0ZXJlZC4KKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJjZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZVNvdXJjZTo6Q1NTRm9udEZhY2VTb3VyY2Up
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTRm9udEZhY2VTb3VyY2U6OmZvbnQpOgorICAgICAgICAg
IFVzZSBGb250TG9hZFJlcXVlc3Q6OmlzUGVuZGluZyBpbnN0ZWFkIG9mIG1ha2luZyBhc3N1bXB0
aW9ucyBhYm91dAorICAgICAgICAgIGl0cyBzdGF0ZSBvbiBjb25zdHJ1Y3Rpb24uIEFsc28gcGFz
cyB0aGUgRm9udENhY2hlIHNpbmdsZXRvbiB3aGVyZQorICAgICAgICAgIGFwcHJvcHJpYXRlIGlu
IGZvbnQgY3JlYXRpb24uCisKKyAgICAgICAgKiBjc3MvRm9udEZhY2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Rm9udEZhY2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpGb250RmFjZTo6
ZGlzcGxheSBjb25zdCk6CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmg6CisgICAgICAgICogY3Nz
L0ZvbnRGYWNlLmlkbDoKKyAgICAgICAgICBDb25zdHJ1Y3Qgd2l0aCBhIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQgaW5zdGVhZCBvZiBhIERvY3VtZW50IGFuZAorICAgICAgICAgIG1ha2UgYXZhaWxh
YmxlIGZvciBXb3JrZXJzLgorCisgICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udExvYWRSZXF1ZXN0Ojppc1dvcmtlckZvbnRMb2FkUmVxdWVz
dCBjb25zdCk6CisgICAgICAgICAgQWRkIGlzUGVuZGluZyBmdW5jdGlvbiBhbmQgbmV3IHR5cGUg
V29ya2VyRm9udExvYWRSZXF1ZXN0LgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkRm9udDo6Y3JlYXRlRm9udCk6CisgICAg
ICAgICAgUGFzcyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgICAg
SW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Rm9udCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Ojp2
ZXJ0aWNhbFJpZ2h0T3JpZW50YXRpb25Gb250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZv
bnQ6OnVwcmlnaHRPcmllbnRhdGlvbkZvbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9u
dDo6aW52aXNpYmxlRm9udCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpzbWFsbENh
cHNGb250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6Om5vU3ludGhlc2l6YWJsZUZl
YXR1cmVzRm9udCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250OjplbXBoYXNpc01hcmtG
b250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmJyb2tlbklkZW9ncmFwaEZvbnQg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Y3JlYXRlU2NhbGVkRm9udCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpGb250OjpzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIg
Y29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAgICAgICAgQWRkIGEgRm9udENhY2hlIHBhcmFtZXRl
ciB0byBjb25zdHJ1Y3RvcnMgYW5kIHN0b3JlIGEgcmVmZXJlbmNlIHRvCisgICAgICAgICAgdXNl
IGluc3RlYWQgb2YgYXNzdW1pbmcgdGhlIEZvbnRDYWNoZSBzaW5nbGV0b24gaXMgb2sgdG8gdXNl
LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDYWNoZTo6Zm9udEZvclBsYXRmb3JtRGF0YSk6CisgICAgICAgICAgUGFz
cyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkZvbnRDYXNjYWRlRm9udHM6OnJlYWxpemVGYWxsYmFja1Jhbmdlc0F0KToKKyAgICAgICAgICBV
c2UgZmFtaWx5TmFtZXNEYXRhIGluc3RlYWQgb2YgZmFtaWx5TmFtZXMgdG8gbWFrZSB0aGlzIHNh
ZmUgdG8gdXNlCisgICAgICAgICAgaW4gYSBXb3JrZXIuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3Jl
YXRlRGVyaXZhdGl2ZUZvbnQpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Y3JlYXRlRm9udFdp
dGhvdXRTeW50aGVzaXphYmxlRmVhdHVyZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9u
dDo6cGxhdGZvcm1DcmVhdGVTY2FsZWRGb250IGNvbnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9mcmVldHlwZS9TaW1wbGVGb250RGF0YUZyZWVUeXBlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udCBjb25zdCk6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1NpbXBsZUZvbnREYXRhV2luLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udCBjb25zdCk6CisgICAgICAgICAg
VXBkYXRlIHRvIGFjY2VwdCBhbmQgcGFzcyBvbiB0aGUgRm9udENhY2hlIHBhcmFtZXRlciBpbiBm
b250CisgICAgICAgICAgY3JlYXRpb24gZnVuY3Rpb25zLgorCisgICAgICAgICogd29ya2Vycy9X
b3JrZXJGb250TG9hZFJlcXVlc3QuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6V29ya2VyRm9udExvYWRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNv
cmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmVuc3VyZUN1c3RvbUZvbnREYXRhKToKKyAgICAgICAgKFdlYkNv
cmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6Y3JlYXRlRm9udCk6CisgICAgICAgIChXZWJDb3Jl
OjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OnNldENsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpX
b3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJD
b3JlOjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdl
YkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZhaWwpOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0Lmg6IEFkZGVkLgorICAgICAgICAgIEltcGxlbWVu
dCBGb250TG9hZFJlcXVlc3QgZm9yIFdvcmtlcnMuCisKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtl
ckdsb2JhbFNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpm
b250cyk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1
ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdG
b250U29vbik6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAg
ICAgIEltcGxlbWVudCBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGZvbnQtbG9hZGluZyByZWxhdGVk
IGZ1bmN0aW9ucy4KKworICAgICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsOgor
ICAgICAgICAgIEluY2x1ZGUgRm9udEZhY2VTb3VyY2UuCisKIDIwMjEtMDQtMTYgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBhIG5vIGxvbmdlciBu
ZWNlc3NhcnkgY2FsbE9uTWFpblRocmVhZCBpbiBXb3JrZXI6OmNyZWF0ZVJUQ1J0cFNjcmlwdFRy
YW5zZm9ybWVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGE3ZjczZDEyZTkzOTE5Zjc4MTMyNmRiNTRkZjI3YWRjZWY1
NDJkOWQuLjI1ZjdjZTJhZTM1NjhhYzkwZTFiZDkzYjZmZjYzNzg1NDhhMjU4MjcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDQtMTYgIENocmlzIExvcmQgIDxjbG9yZEBpZ2FsaWEu
Y29tPgorCisgICAgICAgIEltcGxlbWVudCBGb250RmFjZSBpbiBXb3JrZXJzIGZvciBPZmZzY3Jl
ZW5DYW52YXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNDE3OAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzY1MjkwMjQ+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9udDo6Y3JlYXRlIG5vdyByZXF1
aXJlcyBhIEZvbnRDYWNoZSBwYXJhbWV0ZXIsIHVwZGF0ZSBhY2NvcmRpbmdseS4KKworICAgICAg
ICAqIFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOgorICAgICAgICAoSVBDOjpBcmd1
bWVudENvZGVyPFJlZjxGb250Pj46OmRlY29kZSk6CisKIDIwMjEtMDQtMTYgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFByb21vdGUgV0tXZWJWaWV3IGRldmlj
ZSBvcmllbnRhdGlvbiBwZXJtaXNzaW9uIGRlbGVnYXRlIHRvIEFQSQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UK
aW5kZXggZTExNTA1Y2RkMGY4ZTQzYjI4NzNkYjdhMWQ1ODFmOGRmOTg0ZmViMy4uNGM4YWJiZDU4
ZmIzZDIyMjE4NzM2NDA0MzRjNzlmNGQyYWU2YzdkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC0x
NjU1LDYgKzE2NTUsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAg
ICAgd29ya2Vycy9TY3JpcHRCdWZmZXIuaAogICAgIHdvcmtlcnMvV29ya2VyQW5pbWF0aW9uQ29u
dHJvbGxlci5oCiAgICAgd29ya2Vycy9Xb3JrZXJEZWJ1Z2dlclByb3h5LmgKKyAgICB3b3JrZXJz
L1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCiAgICAgd29ya2Vycy9Xb3JrZXJMb2FkZXJQcm94eS5o
CiAgICAgd29ya2Vycy9Xb3JrZXJPcldvcmtsZXRUaHJlYWQuaAogICAgIHdvcmtlcnMvV29ya2Vy
UnVuTG9vcC5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGVjYWNkZWJjMTM1OWE5Y2VkNDJmZGRkYzVhMGI1
YjVlY2ZkYzI5NWIuLmY5ZTg1MjQ5Y2M3OWM0NDI3ZDBlMTQ2ZTdlMmU5YTVhYmJmODY1OGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0CkBAIC0yNjUzLDYgKzI2NTMsNyBAQCB3b3JrZXJzL1dvcmtlci5jcHAKIHdv
cmtlcnMvV29ya2VyQW5pbWF0aW9uQ29udHJvbGxlci5jcHAKIHdvcmtlcnMvV29ya2VyQ29uc29s
ZUNsaWVudC5jcHAKIHdvcmtlcnMvV29ya2VyRXZlbnRMb29wLmNwcAord29ya2Vycy9Xb3JrZXJG
b250TG9hZFJlcXVlc3QuY3BwCiB3b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcAogd29ya2Vy
cy9Xb3JrZXJJbnNwZWN0b3JQcm94eS5jcHAKIHdvcmtlcnMvV29ya2VyTG9jYXRpb24uY3BwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggMmQ2YTQ2MTA5YmQ1NGNiM2JjOWI5ZWEyNzE5NDEwZjJhM2E1YTRjOS4uMzQ5NjFiYjFjNmM1
MTJmZjgyYWJkYzgyZGVlM2ZlNmIxMzg3NWJjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzQzMiw2ICszNDMyLDcgQEAKIAkJ
QTdDRkIzRDIwQjdFRDEwQTAwNzBDMzJEIC8qIERyYWdJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdDRkIzRDAwQjdFRDEwQTAwNzBDMzJEIC8q
IERyYWdJbWFnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCUE3RDIwRjYzMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNjExMDdG
NDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggKi87IH07CiAJCUE3RDIwRjZEMTA3
RjQzOEIwMEE4MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3RDIwRjZCMTA3RjQzOEIwMEE4MDM5MiAvKiBXZWJH
TEFjdGl2ZUluZm8uaCAqLzsgfTsKKwkJQTdENkIzNDkwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtl
ckZvbnRMb2FkUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTdENkIzNDcwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVz
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3
RDZCMzQ5MEY2MTEwNDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3RDZCMzQ3MEY2MTEwNDUwMEI3
OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlBN0RCRjhERTEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENo
ZWNraW5nSGVscGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBN0RCRjhEQzEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmggKi87
IH07CiAJCUE4MEQ2NzA4MEU5RTlERUIwMEU0MjBGMCAvKiBHcmFwaGljc0NvbnRleHRQbGF0Zm9y
bVByaXZhdGVDRy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTgwRDY3MDcwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJp
dmF0ZUNHLmggKi87IH07CkBAIC0xMjg0NCw2ICsxMjg0NSw4IEBACiAJCUE3RDIwRjYwMTA3RjQw
NjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMQWN0aXZlSW5mby5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUE3RDIwRjYxMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5m
by5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdMQWN0aXZlSW5mby5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0QyMEY2QjEwN0Y0MzhCMDBBODAzOTIg
LyogV2ViR0xBY3RpdmVJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YkdMQWN0aXZlSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0Q2QjM0NzBG
NjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBN0Q2QjM0ODBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExv
YWRSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtl
ckZvbnRMb2FkUmVxdWVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDZC
MzQ3MEY2MTEwNDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyU2NyaXB0TG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUE3RDZCMzQ4MEY2MTEwNDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRM
b2FkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyU2Ny
aXB0TG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdEQkY4REIxMjc2
OTE5QzAwNkI2MDA4IC8qIFRleHRDaGVja2luZ0hlbHBlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0Q2hlY2tpbmdIZWxwZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMTk0MTUsNiArMTk0MTgsOCBAQAogCQkJCUE1MkIzNDlDMUZBNDE2
RjgwMDhCNjI0NiAvKiBXb3JrZXJEZWJ1Z2dlclByb3h5LmggKi8sCiAJCQkJOUIwQUJDQTMyMzY3
OUFDRjAwQjQ1MDg1IC8qIFdvcmtlckV2ZW50TG9vcC5jcHAgKi8sCiAJCQkJOUIwQUJDQTQyMzY3
OUFDRjAwQjQ1MDg1IC8qIFdvcmtlckV2ZW50TG9vcC5oICovLAorCQkJCUE3RDZCMzQ4MEY2MTEw
NDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwICovLAorCQkJCUE3RDZCMzQ3
MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLywKIAkJCQkyRTQz
NDYzNjBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUuY3BwICovLAogCQkJCTJF
NDM0NjM3MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5oICovLAogCQkJCTJF
NDM0NjM4MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5pZGwgKi8sCkBAIC0z
NTgyMiw2ICszNTgyNyw3IEBACiAJCQkJQTVCODFDQ0UxRkFBNDRERTAwMzdEMUU2IC8qIFdvcmtl
ckRlYnVnZ2VyQWdlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE1MkIzNDlFMUZBNDE3MDMwMDhC
NjI0NiAvKiBXb3JrZXJEZWJ1Z2dlclByb3h5LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MUUwRERD
NDIzMEI0MUYxMDAxOUUxRTMgLyogV29ya2VyRE9NRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQTdENkIzNDkwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVz
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkU0MzQ2NDkwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtl
ckdsb2JhbFNjb3BlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUQxMjlDRTFGM0QwRUY2MDBEMTVF
NDcgLyogV29ya2VyR2xvYmFsU2NvcGVDYWNoZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJFNDM0
NjRCMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZVByb3h5LmggaW4gSGVhZGVy
cyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuY3BwCmluZGV4IDFhZDgwNDc3YWJhMGQzNjY3
ZDBkZTU2M2M5MmRjZWJlOGE5ZWMzOWEuLjM1NGYzMDcwOGYxYWQ2MDg2MWIzMGQyMDA2ZjQzZjFk
NTVjOTkzZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNwcApAQCAtMzk2LDYgKzM5Niwx
MyBAQCBEb2N1bWVudCogQ1NTRm9udEZhY2U6OmRvY3VtZW50KCkKICAgICByZXR1cm4gbnVsbHB0
cjsKIH0KIAorRm9udENhY2hlJiBDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tUb1Npbmds
ZXRvbigpCit7CisgICAgaWYgKG1fd3JhcHBlciAmJiBtX3dyYXBwZXItPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKSkKKyAgICAgICAgcmV0dXJuIG1fd3JhcHBlci0+c2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpLT5mb250Q2FjaGUoKTsKKyAgICByZXR1cm4gRm9udENhY2hlOjpzaW5nbGV0b24oKTsK
K30KKwogYm9vbCBDU1NGb250RmFjZTo6Y29tcHV0ZUZhaWx1cmVTdGF0ZSgpIGNvbnN0CiB7CiAg
ICAgaWYgKHN0YXR1cygpID09IFN0YXR1czo6RmFpbHVyZSkKQEAgLTY2OSw4ICs2NzYsOSBAQCBS
ZWZQdHI8Rm9udD4gQ1NTRm9udEZhY2U6OmZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250
RGVzY3JpcHRpb24sIGJvb2wgc3ludAogICAgICAgICBzd2l0Y2ggKHNvdXJjZS0+c3RhdHVzKCkp
IHsKICAgICAgICAgY2FzZSBDU1NGb250RmFjZVNvdXJjZTo6U3RhdHVzOjpQZW5kaW5nOgogICAg
ICAgICBjYXNlIENTU0ZvbnRGYWNlU291cmNlOjpTdGF0dXM6OkxvYWRpbmc6IHsKKyAgICAgICAg
ICAgIGF1dG8mIGZvbnRDYWNoZSA9IGZvbnRDYWNoZUZhbGxiYWNrVG9TaW5nbGV0b24oKTsKICAg
ICAgICAgICAgIEZvbnQ6OlZpc2liaWxpdHkgdmlzaWJpbGl0eSA9IFdlYkNvcmU6OnZpc2liaWxp
dHkoc3RhdHVzKCksIGZvbnRMb2FkVGltaW5nKCkpOwotICAgICAgICAgICAgcmV0dXJuIEZvbnQ6
OmNyZWF0ZShGb250Q2FjaGU6OnNpbmdsZXRvbigpLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZm9u
dERlc2NyaXB0aW9uKS0+cGxhdGZvcm1EYXRhKCksIEZvbnQ6Ok9yaWdpbjo6TG9jYWwsIEZvbnQ6
OkludGVyc3RpdGlhbDo6WWVzLCB2aXNpYmlsaXR5KTsKKyAgICAgICAgICAgIHJldHVybiBGb250
OjpjcmVhdGUoZm9udENhY2hlLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZm9udERlc2NyaXB0aW9u
KS0+cGxhdGZvcm1EYXRhKCksIGZvbnRDYWNoZSwgRm9udDo6T3JpZ2luOjpMb2NhbCwgRm9udDo6
SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOwogICAgICAgICB9CiAgICAgICAgIGNhc2Ug
Q1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6U3VjY2VzczoKICAgICAgICAgICAgIGlmIChhdXRv
IHJlc3VsdCA9IHNvdXJjZS0+Zm9udChmb250RGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5
bnRoZXRpY0l0YWxpYywgbV9mZWF0dXJlU2V0dGluZ3MsIG1fZm9udFNlbGVjdGlvbkNhcGFiaWxp
dGllcykpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCmluZGV4IGI1ZTQ5NzVkMWQ1OTIwOWQ4NjJi
ZDg0NjJkZDdjZGZmZjZmNTlkYmQuLjVlODJkMmViNzcyYjRlYWI1NTEyYTIxZjNiY2Q5OGU4YzUy
MTlhMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCkBAIC00OCw2ICs0OCw3IEBAIGNsYXNz
IENTU1ZhbHVlOwogY2xhc3MgQ1NTVmFsdWVMaXN0OwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwog
Y2xhc3MgRm9udDsKK2NsYXNzIEZvbnRDYWNoZTsKIGNsYXNzIEZvbnRGYWNlOwogY2xhc3MgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDsKIGVudW0gY2xhc3MgRXh0ZXJuYWxSZXNvdXJjZURvd25sb2Fk
UG9saWN5OwpAQCAtMTcyLDYgKzE3Myw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCB0aW1lb3V0Rmly
ZWQoKTsKIAogICAgIERvY3VtZW50KiBkb2N1bWVudCgpOworICAgIEZvbnRDYWNoZSYgZm9udENh
Y2hlRmFsbGJhY2tUb1NpbmdsZXRvbigpOwogCiAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbV9m
YW1pbGllczsKICAgICBWZWN0b3I8VW5pY29kZVJhbmdlPiBtX3JhbmdlczsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTRm9udEZhY2VTZXQuY3BwCmluZGV4IGVmODM5OGYyZWQ0MWNmNGQ4YjY1NmU2ZjAxOTU2
N2RkZGQ2YmU2NTMuLjI2MTBiOGJlMGQxMGFiOGNhYWMzN2Q4NmE0ZWNiZDNjOGY0YTNjMzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNldC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcApAQCAtMTEwLDcgKzExMCw3IEBAIHZv
aWQgQ1NTRm9udEZhY2VTZXQ6OmVuc3VyZUxvY2FsRm9udEZhY2VzRm9yRmFtaWx5UmVnaXN0ZXJl
ZChjb25zdCBTdHJpbmcmIGZhbWlsCiAgICAgQWxsb3dVc2VySW5zdGFsbGVkRm9udHMgYWxsb3dV
c2VySW5zdGFsbGVkRm9udHMgPSBBbGxvd1VzZXJJbnN0YWxsZWRGb250czo6WWVzOwogICAgIGlm
IChtX293bmluZ0ZvbnRTZWxlY3Rvci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQogICAgICAg
ICBhbGxvd1VzZXJJbnN0YWxsZWRGb250cyA9IG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRF
eGVjdXRpb25Db250ZXh0KCktPnNldHRpbmdzVmFsdWVzKCkuc2hvdWxkQWxsb3dVc2VySW5zdGFs
bGVkRm9udHMgPyBBbGxvd1VzZXJJbnN0YWxsZWRGb250czo6WWVzIDogQWxsb3dVc2VySW5zdGFs
bGVkRm9udHM6Ok5vOwotICAgIFZlY3RvcjxGb250U2VsZWN0aW9uQ2FwYWJpbGl0aWVzPiBjYXBh
YmlsaXRpZXMgPSBGb250Q2FjaGU6OnNpbmdsZXRvbigpLmdldEZvbnRTZWxlY3Rpb25DYXBhYmls
aXRpZXNJbkZhbWlseShmYW1pbHlOYW1lLCBhbGxvd1VzZXJJbnN0YWxsZWRGb250cyk7CisgICAg
VmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXM+IGNhcGFiaWxpdGllcyA9IG1fb3duaW5n
Rm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmZvbnRDYWNoZSgpLmdldEZv
bnRTZWxlY3Rpb25DYXBhYmlsaXRpZXNJbkZhbWlseShmYW1pbHlOYW1lLCBhbGxvd1VzZXJJbnN0
YWxsZWRGb250cyk7CiAgICAgaWYgKGNhcGFiaWxpdGllcy5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybjsKIApAQCAtMTE5LDcgKzExOSw3IEBAIHZvaWQgQ1NTRm9udEZhY2VTZXQ6OmVuc3VyZUxv
Y2FsRm9udEZhY2VzRm9yRmFtaWx5UmVnaXN0ZXJlZChjb25zdCBTdHJpbmcmIGZhbWlsCiAgICAg
ICAgIFJlZjxDU1NGb250RmFjZT4gZmFjZSA9IENTU0ZvbnRGYWNlOjpjcmVhdGUobV9vd25pbmdG
b250U2VsZWN0b3IuZ2V0KCksIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwogICAgICAgICAKICAg
ICAgICAgUmVmPENTU1ZhbHVlTGlzdD4gZmFtaWx5TGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRl
Q29tbWFTZXBhcmF0ZWQoKTsKLSAgICAgICAgZmFtaWx5TGlzdC0+YXBwZW5kKENTU1ZhbHVlUG9v
bDo6c2luZ2xldG9uKCkuY3JlYXRlRm9udEZhbWlseVZhbHVlKGZhbWlseU5hbWUpKTsKKyAgICAg
ICAgZmFtaWx5TGlzdC0+YXBwZW5kKG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRp
b25Db250ZXh0KCktPmNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUZvbnRGYW1pbHlWYWx1ZShmYW1pbHlO
YW1lKSk7CiAgICAgICAgIGZhY2UtPnNldEZhbWlsaWVzKGZhbWlseUxpc3QuZ2V0KCkpOwogICAg
ICAgICBmYWNlLT5zZXRGb250U2VsZWN0aW9uQ2FwYWJpbGl0aWVzKGl0ZW0pOwogICAgICAgICBm
YWNlLT5hZG9wdFNvdXJjZShtYWtlVW5pcXVlPENTU0ZvbnRGYWNlU291cmNlPihmYWNlLmdldCgp
LCBmYW1pbHlOYW1lKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZh
Y2VTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcApp
bmRleCBiNjdlOGU2NjZjZjliY2E5NThhMjNlZDM3MDYyYzg2NDRjNmZkMjFlLi5hYTBhMDdmYzBk
YWYzMjIxYmRjZjQxNDZmMGIwYzkzYjExN2M5MjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NG
b250RmFjZVNvdXJjZS5jcHAKQEAgLTgxLDcgKzgxLDcgQEAgQ1NTRm9udEZhY2VTb3VyY2U6OkNT
U0ZvbnRGYWNlU291cmNlKENTU0ZvbnRGYWNlJiBvd25lciwgY29uc3QgU3RyaW5nJiBmYW1pbHlO
YW0KICAgICAvLyBUaGlzIG1heSBzeW5jaHJvbm91c2x5IGNhbGwgZm9udExvYWRlZCgpLgogICAg
IG1fZm9udFJlcXVlc3QtPnNldENsaWVudCh0aGlzKTsKIAotICAgIGlmIChzdGF0dXMoKSA9PSBT
dGF0dXM6OlBlbmRpbmcgJiYgIW1fZm9udFJlcXVlc3QtPmlzTG9hZGluZygpKSB7CisgICAgaWYg
KHN0YXR1cygpID09IFN0YXR1czo6UGVuZGluZyAmJiAhbV9mb250UmVxdWVzdC0+aXNQZW5kaW5n
KCkpIHsKICAgICAgICAgc2V0U3RhdHVzKFN0YXR1czo6TG9hZGluZyk7CiAgICAgICAgIGlmICgh
c2hvdWxkSWdub3JlRm9udExvYWRDb21wbGV0aW9ucygpKSB7CiAgICAgICAgICAgICBpZiAobV9m
b250UmVxdWVzdC0+ZXJyb3JPY2N1cnJlZCgpKQpAQCAtMjAzLDcgKzIwMyw3IEBAIFJlZlB0cjxG
b250PiBDU1NGb250RmFjZVNvdXJjZTo6Zm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZvbnRE
ZXNjcmlwdGlvbiwgYm9vCiAgICAgICAgIGlmIChtX2ltbWVkaWF0ZVNvdXJjZSkgewogICAgICAg
ICAgICAgaWYgKCFtX2ltbWVkaWF0ZUZvbnRDdXN0b21QbGF0Zm9ybURhdGEpCiAgICAgICAgICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKENh
Y2hlZEZvbnQ6OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCptX2ltbWVkaWF0ZUZvbnRDdXN0
b21QbGF0Zm9ybURhdGEsIGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhldGlj
SXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNhcGFiaWxpdGllcyksIEZvbnQ6Ok9y
aWdpbjo6UmVtb3RlKTsKKyAgICAgICAgICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9u
dDo6cGxhdGZvcm1EYXRhRnJvbUN1c3RvbURhdGEoKm1faW1tZWRpYXRlRm9udEN1c3RvbVBsYXRm
b3JtRGF0YSwgZm9udERlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNJdGFsaWMs
IGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKSwgRm9udENhY2hlOjpzaW5n
bGV0b24oKSwgRm9udDo6T3JpZ2luOjpSZW1vdGUpOwogICAgICAgICB9CiAKICAgICAgICAgLy8g
V2UncmUgbG9jYWwuIEp1c3QgcmV0dXJuIGEgRm9udCBmcm9tIHRoZSBub3JtYWwgY2FjaGUuCkBA
IC0yMjgsNyArMjI4LDcgQEAgUmVmUHRyPEZvbnQ+IENTU0ZvbnRGYWNlU291cmNlOjpmb250KGNv
bnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBib28KICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAgICAgaWYgKCFtX2luRG9jdW1lbnRDdXN0b21QbGF0Zm9ybURhdGEpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBGb250OjpjcmVhdGUobV9pbkRvY3VtZW50
Q3VzdG9tUGxhdGZvcm1EYXRhLT5mb250UGxhdGZvcm1EYXRhKGZvbnREZXNjcmlwdGlvbiwgc3lu
dGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNh
cGFiaWxpdGllcyksIEZvbnQ6Ok9yaWdpbjo6UmVtb3RlKTsKKyAgICByZXR1cm4gRm9udDo6Y3Jl
YXRlKG1faW5Eb2N1bWVudEN1c3RvbVBsYXRmb3JtRGF0YS0+Zm9udFBsYXRmb3JtRGF0YShmb250
RGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgZm9udEZhY2VGZWF0
dXJlcywgZm9udEZhY2VDYXBhYmlsaXRpZXMpLCBGb250Q2FjaGU6OnNpbmdsZXRvbigpLCBGb250
OjpPcmlnaW46OlJlbW90ZSk7CiB9CiAKIGJvb2wgQ1NTRm9udEZhY2VTb3VyY2U6OmlzU1ZHRm9u
dEZhY2VTb3VyY2UoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRG
YWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAKaW5kZXggMTlkOWI0NGFj
ZDQ4NWIzMjMxOWNlOTU5ZjRhZDJkNjcxMTU4NGY4ZS4uZWJlOTFiMmM4ZWYyZDM4OTZkMzllZDU2
YzFmMjFlMmI1NjU1NDU1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuY3BwCkBAIC02MiwxNCArNjIs
MTQgQEAgdm9pZCBGb250RmFjZTo6c2V0RXJyb3JTdGF0ZSgpCiAgICAgbV9iYWNraW5nLT5zZXRF
cnJvclN0YXRlKCk7CiB9CiAKLVJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVu
dCYgZG9jdW1lbnQsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2UsIGNvbnN0
IERlc2NyaXB0b3JzJiBkZXNjcmlwdG9ycykKK1JlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0
ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIGZhbWlseSwg
U291cmNlJiYgc291cmNlLCBjb25zdCBEZXNjcmlwdG9ycyYgZGVzY3JpcHRvcnMpCiB7Ci0gICAg
YXV0byByZXN1bHQgPSBhZG9wdFJlZigqbmV3IEZvbnRGYWNlKGRvY3VtZW50LmZvbnRTZWxlY3Rv
cigpKSk7CisgICAgYXV0byByZXN1bHQgPSBhZG9wdFJlZigqbmV3IEZvbnRGYWNlKCpjb250ZXh0
LmNzc0ZvbnRTZWxlY3RvcigpKSk7CiAgICAgcmVzdWx0LT5zdXNwZW5kSWZOZWVkZWQoKTsKIAog
ICAgIGJvb2wgZGF0YVJlcXVpcmVzQXN5bmNocm9ub3VzTG9hZGluZyA9IHRydWU7CiAKLSAgICBh
dXRvIHNldEZhbWlseVJlc3VsdCA9IHJlc3VsdC0+c2V0RmFtaWx5KGRvY3VtZW50LCBmYW1pbHkp
OworICAgIGF1dG8gc2V0RmFtaWx5UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoY29udGV4dCwg
ZmFtaWx5KTsKICAgICBpZiAoc2V0RmFtaWx5UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAg
ICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAt
NzcsMTAgKzc3LDEwIEBAIFJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYg
ZG9jdW1lbnQsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAKICAgICBhdXRvIHNvdXJj
ZUNvbnZlcnNpb25SZXN1bHQgPSBXVEY6OnN3aXRjaE9uKHNvdXJjZSwKICAgICAgICAgWyZdIChT
dHJpbmcmIHN0cmluZykgLT4gRXhjZXB0aW9uT3I8dm9pZD4gewotICAgICAgICAgICAgYXV0byB2
YWx1ZSA9IENTU1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFjZVNyYyhzdHJp
bmcsIENTU1BhcnNlckNvbnRleHQoZG9jdW1lbnQpKTsKKyAgICAgICAgICAgIGF1dG8gdmFsdWUg
PSBDU1NQcm9wZXJ0eVBhcnNlcldvcmtlclNhZmU6OnBhcnNlRm9udEZhY2VTcmMoc3RyaW5nLCBp
czxEb2N1bWVudD4oY29udGV4dCkgPyBDU1NQYXJzZXJDb250ZXh0KGRvd25jYXN0PERvY3VtZW50
Pihjb250ZXh0KSkgOiBIVE1MU3RhbmRhcmRNb2RlKTsKICAgICAgICAgICAgIGlmICghdmFsdWUp
CiAgICAgICAgICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFN5bnRheEVycm9yIH07Ci0gICAg
ICAgICAgICBDU1NGb250RmFjZTo6YXBwZW5kU291cmNlcyhyZXN1bHQtPmJhY2tpbmcoKSwgKnZh
bHVlLCAmZG9jdW1lbnQsIGZhbHNlKTsKKyAgICAgICAgICAgIENTU0ZvbnRGYWNlOjphcHBlbmRT
b3VyY2VzKHJlc3VsdC0+YmFja2luZygpLCAqdmFsdWUsICZjb250ZXh0LCBmYWxzZSk7CiAgICAg
ICAgICAgICByZXR1cm4geyB9OwogICAgICAgICB9LAogICAgICAgICBbJl0gKFJlZlB0cjxBcnJh
eUJ1ZmZlclZpZXc+JiBhcnJheUJ1ZmZlclZpZXcpIC0+IEV4Y2VwdGlvbk9yPHZvaWQ+IHsKQEAg
LTEwMSwzMiArMTAxLDMyIEBAIFJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVu
dCYgZG9jdW1lbnQsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAgICAgfQogCiAgICAg
Ly8gVGhlc2UgdGVybmFyaWVzIG1hdGNoIHRoZSBkZWZhdWx0IHN0cmluZ3MgaW5zaWRlIHRoZSBG
b250RmFjZURlc2NyaXB0b3JzIGRpY3Rpb25hcnkgaW5zaWRlIEZvbnRGYWNlLmlkbC4KLSAgICBh
dXRvIHNldFN0eWxlUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHlsZShkb2N1bWVudCwgZGVzY3JpcHRv
cnMuc3R5bGUuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLnN0eWxlKTsKKyAg
ICBhdXRvIHNldFN0eWxlUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHlsZShjb250ZXh0LCBkZXNjcmlw
dG9ycy5zdHlsZS5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3R5bGUpOwog
ICAgIGlmIChzZXRTdHlsZVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQt
PnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0
byBzZXRXZWlnaHRSZXN1bHQgPSByZXN1bHQtPnNldFdlaWdodChkb2N1bWVudCwgZGVzY3JpcHRv
cnMud2VpZ2h0LmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOwor
ICAgIGF1dG8gc2V0V2VpZ2h0UmVzdWx0ID0gcmVzdWx0LT5zZXRXZWlnaHQoY29udGV4dCwgZGVz
Y3JpcHRvcnMud2VpZ2h0LmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWln
aHQpOwogICAgIGlmIChzZXRXZWlnaHRSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAg
cmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQot
ICAgIGF1dG8gc2V0U3RyZXRjaFJlc3VsdCA9IHJlc3VsdC0+c2V0U3RyZXRjaChkb2N1bWVudCwg
ZGVzY3JpcHRvcnMuc3RyZXRjaC5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMu
c3RyZXRjaCk7CisgICAgYXV0byBzZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJldGNo
KGNvbnRleHQsIGRlc2NyaXB0b3JzLnN0cmV0Y2guaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRl
c2NyaXB0b3JzLnN0cmV0Y2gpOwogICAgIGlmIChzZXRTdHJldGNoUmVzdWx0Lmhhc0V4Y2VwdGlv
bigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4g
cmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldFVuaWNvZGVSYW5nZVJlc3VsdCA9IHJlc3VsdC0+
c2V0VW5pY29kZVJhbmdlKGRvY3VtZW50LCBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0
eSgpID8gIlUrMC0xMEZGRkYiX3MgOiBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UpOworICAgIGF1
dG8gc2V0VW5pY29kZVJhbmdlUmVzdWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2UoY29udGV4
dCwgZGVzY3JpcHRvcnMudW5pY29kZVJhbmdlLmlzRW1wdHkoKSA/ICJVKzAtMTBGRkZGIl9zIDog
ZGVzY3JpcHRvcnMudW5pY29kZVJhbmdlKTsKICAgICBpZiAoc2V0VW5pY29kZVJhbmdlUmVzdWx0
Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAg
ICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jl
c3VsdCA9IHJlc3VsdC0+c2V0RmVhdHVyZVNldHRpbmdzKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5m
ZWF0dXJlU2V0dGluZ3MuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1
cmVTZXR0aW5ncyk7CisgICAgYXV0byBzZXRGZWF0dXJlU2V0dGluZ3NSZXN1bHQgPSByZXN1bHQt
PnNldEZlYXR1cmVTZXR0aW5ncyhjb250ZXh0LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0dGluZ3Mu
aXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncyk7CiAg
ICAgaWYgKHNldEZlYXR1cmVTZXR0aW5nc1Jlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAg
ICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9
Ci0gICAgYXV0byBzZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGRvY3VtZW50
LCBkZXNjcmlwdG9ycy5kaXNwbGF5LmlzRW1wdHkoKSA/ICJhdXRvIl9zIDogZGVzY3JpcHRvcnMu
ZGlzcGxheSk7CisgICAgYXV0byBzZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5
KGNvbnRleHQsIGRlc2NyaXB0b3JzLmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3MgOiBkZXNj
cmlwdG9ycy5kaXNwbGF5KTsKICAgICBpZiAoc2V0RGlzcGxheVJlc3VsdC5oYXNFeGNlcHRpb24o
KSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJl
c3VsdDsKQEAgLTM5OSwxMyArMzk5LDEzIEBAIFN0cmluZyBGb250RmFjZTo6ZmVhdHVyZVNldHRp
bmdzKCkgY29uc3QKICAgICByZXR1cm4gbGlzdC0+Y3NzVGV4dCgpOwogfQogCi1TdHJpbmcgRm9u
dEZhY2U6OmRpc3BsYXkoKSBjb25zdAorU3RyaW5nIEZvbnRGYWNlOjpkaXNwbGF5KFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQpIGNvbnN0CiB7CiAgICAgbV9iYWNraW5nLT51cGRhdGVT
dHlsZUlmTmVlZGVkKCk7CiAgICAgY29uc3QgYXV0byYgbG9hZGluZ0JlaGF2aW9yV3JhcHBlZCA9
IG1fYmFja2luZy0+bG9hZGluZ0JlaGF2aW9yKCk7CiAgICAgaWYgKCFsb2FkaW5nQmVoYXZpb3JX
cmFwcGVkLmhhc1ZhbHVlKCkpCiAgICAgICAgIHJldHVybiAiYXV0byJfczsKLSAgICByZXR1cm4g
Q1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFw
cGVkLnZhbHVlKCkpLT5jc3NUZXh0KCk7CisgICAgcmV0dXJuIGNvbnRleHQuY3NzVmFsdWVQb29s
KCkuY3JlYXRlVmFsdWUobG9hZGluZ0JlaGF2aW9yV3JhcHBlZC52YWx1ZSgpKS0+Y3NzVGV4dCgp
OwogfQogCiBhdXRvIEZvbnRGYWNlOjpzdGF0dXMoKSBjb25zdCAtPiBMb2FkU3RhdHVzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9Gb250RmFjZS5oCmluZGV4IGYxYjU1YTgxMTJiODA0MWMxMDQ2NDJjNDBlNjZiZDM2ZGEwM2M3
MmEuLjk3N2YzYTk5YWM0YTE3NmMwNjYzMGU3YzdkMGFhZGQ5NTAxYjVkNTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9G
b250RmFjZS5oCkBAIC01NCw3ICs1NCw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIAogICAgIHVz
aW5nIFNvdXJjZSA9IFZhcmlhbnQ8U3RyaW5nLCBSZWZQdHI8SlNDOjpBcnJheUJ1ZmZlcj4sIFJl
ZlB0cjxKU0M6OkFycmF5QnVmZmVyVmlldz4+OwotICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNy
ZWF0ZShEb2N1bWVudCYsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVz
Y3JpcHRvcnMmKTsKKyAgICBzdGF0aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3Jp
cHRvcnMmKTsKICAgICBzdGF0aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCosIENTU0ZvbnRGYWNlJik7CiAgICAgdmlydHVhbCB+Rm9udEZhY2UoKTsKIApAQCAt
NzIsNyArNzIsNyBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIHN0cmV0Y2goKSBjb25zdDsKICAgICBT
dHJpbmcgdW5pY29kZVJhbmdlKCkgY29uc3Q7CiAgICAgU3RyaW5nIGZlYXR1cmVTZXR0aW5ncygp
IGNvbnN0OwotICAgIFN0cmluZyBkaXNwbGF5KCkgY29uc3Q7CisgICAgU3RyaW5nIGRpc3BsYXko
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIGNvbnN0OwogCiAgICAgZW51bSBjbGFzcyBMb2FkU3Rh
dHVzIHsgVW5sb2FkZWQsIExvYWRpbmcsIExvYWRlZCwgRXJyb3IgfTsKICAgICBMb2FkU3RhdHVz
IHN0YXR1cygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNl
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKaW5kZXggMzM0NjdhZmIzYjE4
NDQzNTk5ZjFjNmFkYjliZDRlNmNhNDc1NzM5Mi4uNDFmMzU3MjMwMWZhMzRhZjE5NzExNjU5OTk5
ZGJjZTdlYTUwNzM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRsCkBAIC00Myw5ICs0Myw5IEBA
IGRpY3Rpb25hcnkgRm9udEZhY2VEZXNjcmlwdG9ycyB7CiAKIFsKICAgICBBY3RpdmVET01PYmpl
Y3QsCi0gICAgRXhwb3NlZD1XaW5kb3cKKyAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBp
bnRlcmZhY2UgRm9udEZhY2UgewotICAgIFtDYWxsV2l0aD1Eb2N1bWVudF0gY29uc3RydWN0b3Io
RE9NU3RyaW5nIGZhbWlseSwgKERPTVN0cmluZyBvciBCaW5hcnlEYXRhKSBzb3VyY2UsIG9wdGlv
bmFsIEZvbnRGYWNlRGVzY3JpcHRvcnMgZGVzY3JpcHRvcnMpOworICAgIFtDYWxsV2l0aD1TY3Jp
cHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCAoRE9NU3Ry
aW5nIG9yIEJpbmFyeURhdGEpIHNvdXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNjcmlwdG9ycyBk
ZXNjcmlwdG9ycyk7CiAKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dF0gYXR0cmlidXRlIERPTVN0cmluZyBmYW1pbHk7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlw
dEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3R5bGU7CkBAIC01Myw3ICs1
Myw3IEBAIGRpY3Rpb25hcnkgRm9udEZhY2VEZXNjcmlwdG9ycyB7CiAgICAgW1NldHRlckNhbGxX
aXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyZXRjaDsK
ICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERP
TVN0cmluZyB1bmljb2RlUmFuZ2U7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlv
bkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgZmVhdHVyZVNldHRpbmdzOwotICAgIFtTZXR0
ZXJDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRp
c3BsYXk7CisgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBE
T01TdHJpbmcgZGlzcGxheTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGb250RmFjZUxvYWRT
dGF0dXMgc3RhdHVzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExv
YWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmgKaW5k
ZXggZTMzNDVhODJlNDYyODVhMTliNTRjZGRhZmY2MjIxOGMwNjVlZTIxZi4uN2Q2NDZlYmQ2OWJi
N2YyM2IwNmY1NjQ4N2IyYTc0OTc2ZDg4OTgwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250
TG9hZFJlcXVlc3QuaApAQCAtNDksNiArNDksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+Rm9u
dExvYWRSZXF1ZXN0KCkgPSBkZWZhdWx0OwogCiAgICAgdmlydHVhbCBjb25zdCBVUkwmIHVybCgp
IGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgaXNQZW5kaW5nKCkgY29uc3QgPSAwOwogICAg
IHZpcnR1YWwgYm9vbCBpc0xvYWRpbmcoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBib29sIGVy
cm9yT2NjdXJyZWQoKSBjb25zdCA9IDA7CiAKQEAgLTU4LDYgKzU5LDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCBzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50KikgPSAwOwogCiAg
ICAgdmlydHVhbCBib29sIGlzQ2FjaGVkRm9udExvYWRSZXF1ZXN0KCkgY29uc3QgeyByZXR1cm4g
ZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaXNXb3JrZXJGb250TG9hZFJlcXVlc3QoKSBjb25z
dCB7IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwCmluZGV4IDk3NDE5ZWVlNzQxOWY4
MGFhZGFmZTgyNDU1OTBkZmVkNjRlOTc3MmUuLjYxYmZjYzJmZjg2MmUzNzM1ZWNjN2U4ZTU5Zjhl
MzE4MDNlZDI3OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRGb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5j
cHAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJDYWNoZWRGb250Q2xpZW50LmgiCiAjaW5j
bHVkZSAiQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIuaCIKICNpbmNsdWRlICJDYWNoZWRSZXNv
dXJjZUxvYWRlci5oIgorI2luY2x1ZGUgIkZvbnRDYWNoZS5oIgogI2luY2x1ZGUgIkZvbnRDdXN0
b21QbGF0Zm9ybURhdGEuaCIKICNpbmNsdWRlICJGb250RGVzY3JpcHRpb24uaCIKICNpbmNsdWRl
ICJGb250UGxhdGZvcm1EYXRhLmgiCkBAIC0xMjMsNyArMTI0LDcgQEAgc3RkOjp1bmlxdWVfcHRy
PEZvbnRDdXN0b21QbGF0Zm9ybURhdGE+IENhY2hlZEZvbnQ6OmNyZWF0ZUN1c3RvbUZvbnREYXRh
KFNoYXJlZEIKIAogUmVmUHRyPEZvbnQ+IENhY2hlZEZvbnQ6OmNyZWF0ZUZvbnQoY29uc3QgRm9u
dERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcmLCBib29sIHN5
bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVhdHVyZVNldHRp
bmdzJiBmb250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVz
IGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQogewotICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZv
cm1EYXRhRnJvbUN1c3RvbURhdGEoZm9udERlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50
aGV0aWNJdGFsaWMsIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKSwgRm9u
dDo6T3JpZ2luOjpSZW1vdGUpOworICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRh
RnJvbUN1c3RvbURhdGEoZm9udERlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNJ
dGFsaWMsIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKSwgRm9udENhY2hl
OjpzaW5nbGV0b24oKSwgRm9udDo6T3JpZ2luOjpSZW1vdGUpOwogfQogCiBGb250UGxhdGZvcm1E
YXRhIENhY2hlZEZvbnQ6OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKGNvbnN0IEZvbnREZXNj
cmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBib29sIGJvbGQsIGJvb2wgaXRhbGljLCBjb25zdCBG
b250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lm
aWVkQ2FwYWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IDQwNTM1N2E4
ZTVkMGI3ZjBiNmExYWRlNGRjYTA4OGExYjI3OWYxNzAuLjczNzZjNTg4ZjgwODFjMGFlYTAwM2Yz
MDZmMjdiNDBhMGUwODY3MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKQEAgLTUwLDYgKzUwLDcgQEAgcHVibGljOgogCiBw
cml2YXRlOgogICAgIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250
LT51cmwoKTsgfQorICAgIGJvb2wgaXNQZW5kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9m
b250LT5zdGF0dXMoKSA9PSBDYWNoZWRSZXNvdXJjZTo6U3RhdHVzOjpQZW5kaW5nOyB9CiAgICAg
Ym9vbCBpc0xvYWRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPmlzTG9hZGluZygp
OyB9CiAgICAgYm9vbCBlcnJvck9jY3VycmVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250
LT5lcnJvck9jY3VycmVkKCk7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9G
b250LmNwcAppbmRleCBiMTFhODc2OWU4NjBiOTNiMDlkNzMyNDFlNWJlYmQ1ODA4YjYyYjhmLi45
MjI4MmIwMDE1NzQ4MTdiZDZmNTQ5OGMwNmY4Zjc3NGVkYjE1OTMzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcApAQCAtNTgsMTcgKzU4LDE4IEBAIGNvbnN0IGZs
b2F0IGVtcGhhc2lzTWFya0ZvbnRTaXplTXVsdGlwbGllciA9IDAuNWY7CiAKIERFRklORV9BTExP
Q0FUT1JfV0lUSF9IRUFQX0lERU5USUZJRVIoRm9udCk7CiAKLVJlZjxGb250PiBGb250OjpjcmVh
dGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiBvcmlnaW4s
IGZsb2F0IGZvbnRTaXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGlj
KQorUmVmPEZvbnQ+IEZvbnQ6OmNyZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0
YSwgRm9udENhY2hlJiBmb250Q2FjaGUsIEZvbnQ6Ok9yaWdpbiBvcmlnaW4sIGZsb2F0IGZvbnRT
aXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljKQogewogICAgIGJv
b2wgd3JhcHBpbmc7CiAgICAgYXV0byBjdXN0b21Gb250RGF0YSA9IENhY2hlZEZvbnQ6OmNyZWF0
ZUN1c3RvbUZvbnREYXRhKGZvbnRGYWNlRGF0YS5nZXQoKSwgeyB9LCB3cmFwcGluZyk7CiAgICAg
Rm9udERlc2NyaXB0aW9uIGRlc2NyaXB0aW9uOwogICAgIGRlc2NyaXB0aW9uLnNldENvbXB1dGVk
U2l6ZShmb250U2l6ZSk7Ci0gICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShDYWNoZWRGb250OjpwbGF0
Zm9ybURhdGFGcm9tQ3VzdG9tRGF0YSgqY3VzdG9tRm9udERhdGEsIGRlc2NyaXB0aW9uLCBzeW50
aGV0aWNCb2xkLCBzeW50aGV0aWNJdGFsaWMsIHsgfSwgeyB9KSwgb3JpZ2luKTsKKyAgICByZXR1
cm4gRm9udDo6Y3JlYXRlKENhY2hlZEZvbnQ6OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCpj
dXN0b21Gb250RGF0YSwgZGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxp
YywgeyB9LCB7IH0pLCBmb250Q2FjaGUsIG9yaWdpbik7CiB9CiAKLUZvbnQ6OkZvbnQoY29uc3Qg
Rm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBJbnRlcnN0aXRp
YWwgaW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5IHZpc2liaWxpdHksIE9yaWVudGF0aW9uRmFsbGJh
Y2sgb3JpZW50YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlm
aWVyPiByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIpCitGb250OjpGb250KGNvbnN0IEZvbnRQ
bGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSwgRm9udENhY2hlJiBmb250Q2FjaGUsIE9yaWdpbiBv
cmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2liaWxpdHkgdmlzaWJpbGl0eSwg
T3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25hbDxSZW5kZXJp
bmdSZXNvdXJjZUlkZW50aWZpZXI+IHJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcikKICAgICA6
IG1fcGxhdGZvcm1EYXRhKHBsYXRmb3JtRGF0YSkKKyAgICAsIG1fZm9udENhY2hlKG1ha2VSZWYo
Zm9udENhY2hlKSkKICAgICAsIG1fcmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKHJlbmRlcmlu
Z1Jlc291cmNlSWRlbnRpZmllcikKICAgICAsIG1fb3JpZ2luKG9yaWdpbikKICAgICAsIG1fdmlz
aWJpbGl0eSh2aXNpYmlsaXR5KQpAQCAtODgsNyArODksNyBAQCBGb250OjpGb250KGNvbnN0IEZv
bnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSwgT3JpZ2luIG9yaWdpbiwgSW50ZXJzdGl0aWFs
IGludAogICAgIHBsYXRmb3JtQ2hhcldpZHRoSW5pdCgpOwogI2lmIEVOQUJMRShPUEVOVFlQRV9W
RVJUSUNBTCkKICAgICBpZiAocGxhdGZvcm1EYXRhLm9yaWVudGF0aW9uKCkgPT0gRm9udE9yaWVu
dGF0aW9uOjpWZXJ0aWNhbCAmJiBvcmllbnRhdGlvbkZhbGxiYWNrID09IE9yaWVudGF0aW9uRmFs
bGJhY2s6Ok5vKSB7Ci0gICAgICAgIG1fdmVydGljYWxEYXRhID0gRm9udENhY2hlOjpzaW5nbGV0
b24oKS52ZXJ0aWNhbERhdGEocGxhdGZvcm1EYXRhKTsKKyAgICAgICAgbV92ZXJ0aWNhbERhdGEg
PSBtX2ZvbnRDYWNoZS0+dmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7CiAgICAgICAgIG1faGFz
VmVydGljYWxHbHlwaHMgPSBtX3ZlcnRpY2FsRGF0YS5nZXQoKSAmJiBtX3ZlcnRpY2FsRGF0YS0+
aGFzVmVydGljYWxNZXRyaWNzKCk7CiAgICAgfQogI2VuZGlmCkBAIC00MjYsNyArNDI3LDcgQEAg
Y29uc3QgRm9udCYgRm9udDo6dmVydGljYWxSaWdodE9yaWVudGF0aW9uRm9udCgpIGNvbnN0CiAg
ICAgRGVyaXZlZEZvbnRzJiBkZXJpdmVkRm9udERhdGEgPSBlbnN1cmVEZXJpdmVkRm9udERhdGEo
KTsKICAgICBpZiAoIWRlcml2ZWRGb250RGF0YS52ZXJ0aWNhbFJpZ2h0T3JpZW50YXRpb25Gb250
KSB7CiAgICAgICAgIGF1dG8gdmVydGljYWxSaWdodFBsYXRmb3JtRGF0YSA9IEZvbnRQbGF0Zm9y
bURhdGE6OmNsb25lV2l0aE9yaWVudGF0aW9uKG1fcGxhdGZvcm1EYXRhLCBGb250T3JpZW50YXRp
b246Okhvcml6b250YWwpOwotICAgICAgICBkZXJpdmVkRm9udERhdGEudmVydGljYWxSaWdodE9y
aWVudGF0aW9uRm9udCA9IGNyZWF0ZSh2ZXJ0aWNhbFJpZ2h0UGxhdGZvcm1EYXRhLCBvcmlnaW4o
KSwgSW50ZXJzdGl0aWFsOjpObywgVmlzaWJpbGl0eTo6VmlzaWJsZSwgT3JpZW50YXRpb25GYWxs
YmFjazo6WWVzKTsKKyAgICAgICAgZGVyaXZlZEZvbnREYXRhLnZlcnRpY2FsUmlnaHRPcmllbnRh
dGlvbkZvbnQgPSBjcmVhdGUodmVydGljYWxSaWdodFBsYXRmb3JtRGF0YSwgbV9mb250Q2FjaGUu
Z2V0KCksIG9yaWdpbigpLCBJbnRlcnN0aXRpYWw6Ok5vLCBWaXNpYmlsaXR5OjpWaXNpYmxlLCBP
cmllbnRhdGlvbkZhbGxiYWNrOjpZZXMpOwogICAgIH0KICAgICBBU1NFUlQoZGVyaXZlZEZvbnRE
YXRhLnZlcnRpY2FsUmlnaHRPcmllbnRhdGlvbkZvbnQgIT0gdGhpcyk7CiAgICAgcmV0dXJuICpk
ZXJpdmVkRm9udERhdGEudmVydGljYWxSaWdodE9yaWVudGF0aW9uRm9udDsKQEAgLTQzNiw3ICs0
MzcsNyBAQCBjb25zdCBGb250JiBGb250Ojp1cHJpZ2h0T3JpZW50YXRpb25Gb250KCkgY29uc3QK
IHsKICAgICBEZXJpdmVkRm9udHMmIGRlcml2ZWRGb250RGF0YSA9IGVuc3VyZURlcml2ZWRGb250
RGF0YSgpOwogICAgIGlmICghZGVyaXZlZEZvbnREYXRhLnVwcmlnaHRPcmllbnRhdGlvbkZvbnQp
Ci0gICAgICAgIGRlcml2ZWRGb250RGF0YS51cHJpZ2h0T3JpZW50YXRpb25Gb250ID0gY3JlYXRl
KG1fcGxhdGZvcm1EYXRhLCBvcmlnaW4oKSwgSW50ZXJzdGl0aWFsOjpObywgVmlzaWJpbGl0eTo6
VmlzaWJsZSwgT3JpZW50YXRpb25GYWxsYmFjazo6WWVzKTsKKyAgICAgICAgZGVyaXZlZEZvbnRE
YXRhLnVwcmlnaHRPcmllbnRhdGlvbkZvbnQgPSBjcmVhdGUobV9wbGF0Zm9ybURhdGEsIG1fZm9u
dENhY2hlLmdldCgpLCBvcmlnaW4oKSwgSW50ZXJzdGl0aWFsOjpObywgVmlzaWJpbGl0eTo6Vmlz
aWJsZSwgT3JpZW50YXRpb25GYWxsYmFjazo6WWVzKTsKICAgICBBU1NFUlQoZGVyaXZlZEZvbnRE
YXRhLnVwcmlnaHRPcmllbnRhdGlvbkZvbnQgIT0gdGhpcyk7CiAgICAgcmV0dXJuICpkZXJpdmVk
Rm9udERhdGEudXByaWdodE9yaWVudGF0aW9uRm9udDsKIH0KQEAgLTQ0NSw3ICs0NDYsNyBAQCBj
b25zdCBGb250JiBGb250OjppbnZpc2libGVGb250KCkgY29uc3QKIHsKICAgICBEZXJpdmVkRm9u
dHMmIGRlcml2ZWRGb250RGF0YSA9IGVuc3VyZURlcml2ZWRGb250RGF0YSgpOwogICAgIGlmICgh
ZGVyaXZlZEZvbnREYXRhLmludmlzaWJsZUZvbnQpCi0gICAgICAgIGRlcml2ZWRGb250RGF0YS5p
bnZpc2libGVGb250ID0gY3JlYXRlKG1fcGxhdGZvcm1EYXRhLCBvcmlnaW4oKSwgSW50ZXJzdGl0
aWFsOjpZZXMsIFZpc2liaWxpdHk6OkludmlzaWJsZSk7CisgICAgICAgIGRlcml2ZWRGb250RGF0
YS5pbnZpc2libGVGb250ID0gY3JlYXRlKG1fcGxhdGZvcm1EYXRhLCBtX2ZvbnRDYWNoZS5nZXQo
KSwgb3JpZ2luKCksIEludGVyc3RpdGlhbDo6WWVzLCBWaXNpYmlsaXR5OjpJbnZpc2libGUpOwog
ICAgIEFTU0VSVChkZXJpdmVkRm9udERhdGEuaW52aXNpYmxlRm9udCAhPSB0aGlzKTsKICAgICBy
ZXR1cm4gKmRlcml2ZWRGb250RGF0YS5pbnZpc2libGVGb250OwogfQpAQCAtNDU0LDcgKzQ1NSw3
IEBAIGNvbnN0IEZvbnQqIEZvbnQ6OnNtYWxsQ2Fwc0ZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9u
JiBmb250RGVzY3JpcHRpb24pIGNvbnN0CiB7CiAgICAgRGVyaXZlZEZvbnRzJiBkZXJpdmVkRm9u
dERhdGEgPSBlbnN1cmVEZXJpdmVkRm9udERhdGEoKTsKICAgICBpZiAoIWRlcml2ZWRGb250RGF0
YS5zbWFsbENhcHNGb250KQotICAgICAgICBkZXJpdmVkRm9udERhdGEuc21hbGxDYXBzRm9udCA9
IGNyZWF0ZVNjYWxlZEZvbnQoZm9udERlc2NyaXB0aW9uLCBzbWFsbENhcHNGb250U2l6ZU11bHRp
cGxpZXIpOworICAgICAgICBkZXJpdmVkRm9udERhdGEuc21hbGxDYXBzRm9udCA9IGNyZWF0ZVNj
YWxlZEZvbnQoZm9udERlc2NyaXB0aW9uLCBzbWFsbENhcHNGb250U2l6ZU11bHRpcGxpZXIsIG1f
Zm9udENhY2hlLmdldCgpKTsKICAgICBBU1NFUlQoZGVyaXZlZEZvbnREYXRhLnNtYWxsQ2Fwc0Zv
bnQgIT0gdGhpcyk7CiAgICAgcmV0dXJuIGRlcml2ZWRGb250RGF0YS5zbWFsbENhcHNGb250Lmdl
dCgpOwogfQpAQCAtNDY0LDcgKzQ2NSw3IEBAIGNvbnN0IEZvbnQmIEZvbnQ6Om5vU3ludGhlc2l6
YWJsZUZlYXR1cmVzRm9udCgpIGNvbnN0CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgRGVyaXZl
ZEZvbnRzJiBkZXJpdmVkRm9udERhdGEgPSBlbnN1cmVEZXJpdmVkRm9udERhdGEoKTsKICAgICBp
ZiAoIWRlcml2ZWRGb250RGF0YS5ub1N5bnRoZXNpemFibGVGZWF0dXJlc0ZvbnQpCi0gICAgICAg
IGRlcml2ZWRGb250RGF0YS5ub1N5bnRoZXNpemFibGVGZWF0dXJlc0ZvbnQgPSBjcmVhdGVGb250
V2l0aG91dFN5bnRoZXNpemFibGVGZWF0dXJlcygpOworICAgICAgICBkZXJpdmVkRm9udERhdGEu
bm9TeW50aGVzaXphYmxlRmVhdHVyZXNGb250ID0gY3JlYXRlRm9udFdpdGhvdXRTeW50aGVzaXph
YmxlRmVhdHVyZXMobV9mb250Q2FjaGUuZ2V0KCkpOwogICAgIEFTU0VSVChkZXJpdmVkRm9udERh
dGEubm9TeW50aGVzaXphYmxlRmVhdHVyZXNGb250ICE9IHRoaXMpOwogICAgIHJldHVybiAqZGVy
aXZlZEZvbnREYXRhLm5vU3ludGhlc2l6YWJsZUZlYXR1cmVzRm9udDsKICNlbHNlCkBAIC00NzYs
NyArNDc3LDcgQEAgY29uc3QgRm9udCogRm9udDo6ZW1waGFzaXNNYXJrRm9udChjb25zdCBGb250
RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbikgY29uc3QKIHsKICAgICBEZXJpdmVkRm9udHMm
IGRlcml2ZWRGb250RGF0YSA9IGVuc3VyZURlcml2ZWRGb250RGF0YSgpOwogICAgIGlmICghZGVy
aXZlZEZvbnREYXRhLmVtcGhhc2lzTWFya0ZvbnQpCi0gICAgICAgIGRlcml2ZWRGb250RGF0YS5l
bXBoYXNpc01hcmtGb250ID0gY3JlYXRlU2NhbGVkRm9udChmb250RGVzY3JpcHRpb24sIGVtcGhh
c2lzTWFya0ZvbnRTaXplTXVsdGlwbGllcik7CisgICAgICAgIGRlcml2ZWRGb250RGF0YS5lbXBo
YXNpc01hcmtGb250ID0gY3JlYXRlU2NhbGVkRm9udChmb250RGVzY3JpcHRpb24sIGVtcGhhc2lz
TWFya0ZvbnRTaXplTXVsdGlwbGllciwgbV9mb250Q2FjaGUuZ2V0KCkpOwogICAgIEFTU0VSVChk
ZXJpdmVkRm9udERhdGEuZW1waGFzaXNNYXJrRm9udCAhPSB0aGlzKTsKICAgICByZXR1cm4gZGVy
aXZlZEZvbnREYXRhLmVtcGhhc2lzTWFya0ZvbnQuZ2V0KCk7CiB9CkBAIC00ODUsNyArNDg2LDcg
QEAgY29uc3QgRm9udCYgRm9udDo6YnJva2VuSWRlb2dyYXBoRm9udCgpIGNvbnN0CiB7CiAgICAg
RGVyaXZlZEZvbnRzJiBkZXJpdmVkRm9udERhdGEgPSBlbnN1cmVEZXJpdmVkRm9udERhdGEoKTsK
ICAgICBpZiAoIWRlcml2ZWRGb250RGF0YS5icm9rZW5JZGVvZ3JhcGhGb250KSB7Ci0gICAgICAg
IGRlcml2ZWRGb250RGF0YS5icm9rZW5JZGVvZ3JhcGhGb250ID0gY3JlYXRlKG1fcGxhdGZvcm1E
YXRhLCBvcmlnaW4oKSwgSW50ZXJzdGl0aWFsOjpObyk7CisgICAgICAgIGRlcml2ZWRGb250RGF0
YS5icm9rZW5JZGVvZ3JhcGhGb250ID0gY3JlYXRlKG1fcGxhdGZvcm1EYXRhLCBtX2ZvbnRDYWNo
ZS5nZXQoKSwgb3JpZ2luKCksIEludGVyc3RpdGlhbDo6Tm8pOwogICAgICAgICBkZXJpdmVkRm9u
dERhdGEuYnJva2VuSWRlb2dyYXBoRm9udC0+bV9pc0Jyb2tlbklkZW9ncmFwaEZhbGxiYWNrID0g
dHJ1ZTsKICAgICB9CiAgICAgQVNTRVJUKGRlcml2ZWRGb250RGF0YS5icm9rZW5JZGVvZ3JhcGhG
b250ICE9IHRoaXMpOwpAQCAtNTI0LDkgKzUyNSw5IEBAIGNvbnN0IE9wZW5UeXBlTWF0aERhdGEq
IEZvbnQ6Om1hdGhEYXRhKCkgY29uc3QKICAgICByZXR1cm4gbV9tYXRoRGF0YS5nZXQoKTsKIH0K
IAotUmVmUHRyPEZvbnQ+IEZvbnQ6OmNyZWF0ZVNjYWxlZEZvbnQoY29uc3QgRm9udERlc2NyaXB0
aW9uJiBmb250RGVzY3JpcHRpb24sIGZsb2F0IHNjYWxlRmFjdG9yKSBjb25zdAorUmVmUHRyPEZv
bnQ+IEZvbnQ6OmNyZWF0ZVNjYWxlZEZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVz
Y3JpcHRpb24sIGZsb2F0IHNjYWxlRmFjdG9yLCBGb250Q2FjaGUmIGZvbnRDYWNoZSkgY29uc3QK
IHsKLSAgICByZXR1cm4gcGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGZvbnREZXNjcmlwdGlvbiwg
c2NhbGVGYWN0b3IpOworICAgIHJldHVybiBwbGF0Zm9ybUNyZWF0ZVNjYWxlZEZvbnQoZm9udERl
c2NyaXB0aW9uLCBzY2FsZUZhY3RvciwgZm9udENhY2hlKTsKIH0KIAogI2lmICFVU0UoQ09SRV9U
RVhUKQpAQCAtNTc0LDcgKzU3NSw3IEBAIFJlZlB0cjxGb250PiBGb250OjpzeXN0ZW1GYWxsYmFj
a0ZvbnRGb3JDaGFyYWN0ZXIoVUNoYXIzMiBjaGFyYWN0ZXIsIGNvbnN0IEZvbnRECiAKICAgICBp
ZiAoIWNoYXJhY3RlcikgewogICAgICAgICBVQ2hhciBjb2RlVW5pdCA9IDA7Ci0gICAgICAgIHJl
dHVybiBGb250Q2FjaGU6OnNpbmdsZXRvbigpLnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVycyhk
ZXNjcmlwdGlvbiwgdGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVyQ29s
b3JlZEZvbnQ6Ok5vLCAmY29kZVVuaXQsIDEpOworICAgICAgICByZXR1cm4gbV9mb250Q2FjaGUt
PnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVycyhkZXNjcmlwdGlvbiwgdGhpcywgaXNGb3JQbGF0
Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVyQ29sb3JlZEZvbnQ6Ok5vLCAmY29kZVVuaXQsIDEp
OwogICAgIH0KIAogICAgIGF1dG8ga2V5ID0gQ2hhcmFjdGVyRmFsbGJhY2tNYXBLZXkgeyBkZXNj
cmlwdGlvbi5jb21wdXRlZExvY2FsZSgpLCBjaGFyYWN0ZXIsIGlzRm9yUGxhdGZvcm1Gb250ICE9
IElzRm9yUGxhdGZvcm1Gb250OjpObyB9OwpAQCAtNTg5LDcgKzU5MCw3IEBAIFJlZlB0cjxGb250
PiBGb250OjpzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIoVUNoYXIzMiBjaGFyYWN0ZXIs
IGNvbnN0IEZvbnRECiAgICAgICAgICAgICBjb2RlVW5pdHNbMV0gPSBVMTZfVFJBSUwoY2hhcmFj
dGVyKTsKICAgICAgICAgICAgIGNvZGVVbml0c0xlbmd0aCA9IDI7CiAgICAgICAgIH0KLSAgICAg
ICAgYXV0byBmb250ID0gRm9udENhY2hlOjpzaW5nbGV0b24oKS5zeXN0ZW1GYWxsYmFja0ZvckNo
YXJhY3RlcnMoZGVzY3JpcHRpb24sIHRoaXMsIGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6
OlByZWZlckNvbG9yZWRGb250OjpObywgY29kZVVuaXRzLCBjb2RlVW5pdHNMZW5ndGgpLmdldCgp
OworICAgICAgICBhdXRvIGZvbnQgPSBtX2ZvbnRDYWNoZS0+c3lzdGVtRmFsbGJhY2tGb3JDaGFy
YWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQ
cmVmZXJDb2xvcmVkRm9udDo6Tm8sIGNvZGVVbml0cywgY29kZVVuaXRzTGVuZ3RoKS5nZXQoKTsK
ICAgICAgICAgaWYgKGZvbnQpCiAgICAgICAgICAgICBmb250LT5tX2lzVXNlZEluU3lzdGVtRmFs
bGJhY2tDYWNoZSA9IHRydWU7CiAgICAgICAgIHJldHVybiBmb250OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRm9udC5oCmluZGV4IDY1M2IzMzhiN2MzNDI1NjI3MjI0OTYxMWUyNzAx
YWM1ZDI2M2U5NjUuLjAzNjU4ZjMzNDY2NjUxY2Y2YzhlMWQ4MGM5OGQxMDc5ODk1ZmYyOTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKQEAgLTU3LDYgKzU3LDcgQEAg
aW50ZXJmYWNlIElEV3JpdGVHZGlJbnRlcm9wOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2Ns
YXNzIEZvbnRDYWNoZTsKIGNsYXNzIEdseXBoUGFnZTsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsK
IGNsYXNzIFNoYXJlZEJ1ZmZlcjsKQEAgLTkyLDEyICs5MywxMiBAQCBwdWJsaWM6CiAgICAgICAg
IFllcywKICAgICAgICAgTm8KICAgICB9OwotICAgIHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKGNv
bnN0IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSwgT3JpZ2luIG9yaWdpbiA9IE9yaWdp
bjo6TG9jYWwsIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwgPSBJbnRlcnN0aXRpYWw6Ok5vLAor
ICAgIHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRm
b3JtRGF0YSwgRm9udENhY2hlJiBmb250Q2FjaGUsIE9yaWdpbiBvcmlnaW4gPSBPcmlnaW46Okxv
Y2FsLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsID0gSW50ZXJzdGl0aWFsOjpObywKICAgICAg
ICAgVmlzaWJpbGl0eSB2aXNpYmlsaXR5ID0gVmlzaWJpbGl0eTo6VmlzaWJsZSwgT3JpZW50YXRp
b25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNrID0gT3JpZW50YXRpb25GYWxsYmFjazo6Tm8s
IE9wdGlvbmFsPFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcj4gaWRlbnRpZmllciA9IFdURjo6
bnVsbG9wdCkKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvbnQocGxhdGZv
cm1EYXRhLCBvcmlnaW4sIGludGVyc3RpdGlhbCwgdmlzaWJpbGl0eSwgb3JpZW50YXRpb25GYWxs
YmFjaywgaWRlbnRpZmllcikpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb250KHBs
YXRmb3JtRGF0YSwgZm9udENhY2hlLCBvcmlnaW4sIGludGVyc3RpdGlhbCwgdmlzaWJpbGl0eSwg
b3JpZW50YXRpb25GYWxsYmFjaywgaWRlbnRpZmllcikpOwogICAgIH0KLSAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNl
RGF0YSwgRm9udDo6T3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBi
b29sIHN5bnRoZXRpY0l0YWxpYyk7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGb250
PiBjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnRDYWNoZSYsIEZv
bnQ6Ok9yaWdpbiwgZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50
aGV0aWNJdGFsaWMpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgfkZvbnQoKTsKIApAQCAtMjMyLDcg
KzIzMyw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIFdFQkNPUkVfRVhQT1JU
IEZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYsIE9yaWdpbiwgSW50ZXJzdGl0aWFsLCBWaXNp
YmlsaXR5LCBPcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlk
ZW50aWZpZXI+KTsKKyAgICBXRUJDT1JFX0VYUE9SVCBGb250KGNvbnN0IEZvbnRQbGF0Zm9ybURh
dGEmLCBGb250Q2FjaGUmLCBPcmlnaW4sIEludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSwgT3JpZW50
YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPik7CiAK
ICAgICB2b2lkIHBsYXRmb3JtSW5pdCgpOwogICAgIHZvaWQgcGxhdGZvcm1HbHlwaEluaXQoKTsK
QEAgLTI0MSw5ICsyNDIsOSBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBpbml0Q2hhcldpZHRocygp
OwogCi0gICAgUmVmUHRyPEZvbnQ+IGNyZWF0ZUZvbnRXaXRob3V0U3ludGhlc2l6YWJsZUZlYXR1
cmVzKCkgY29uc3Q7Ci0gICAgUmVmUHRyPEZvbnQ+IGNyZWF0ZVNjYWxlZEZvbnQoY29uc3QgRm9u
dERlc2NyaXB0aW9uJiwgZmxvYXQgc2NhbGVGYWN0b3IpIGNvbnN0OwotICAgIFJlZlB0cjxGb250
PiBwbGF0Zm9ybUNyZWF0ZVNjYWxlZEZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiwgZmxvYXQg
c2NhbGVGYWN0b3IpIGNvbnN0OworICAgIFJlZlB0cjxGb250PiBjcmVhdGVGb250V2l0aG91dFN5
bnRoZXNpemFibGVGZWF0dXJlcyhGb250Q2FjaGUmKSBjb25zdDsKKyAgICBSZWZQdHI8Rm9udD4g
Y3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mLCBmbG9hdCBzY2FsZUZhY3Rv
ciwgRm9udENhY2hlJikgY29uc3Q7CisgICAgUmVmUHRyPEZvbnQ+IHBsYXRmb3JtQ3JlYXRlU2Nh
bGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mLCBmbG9hdCBzY2FsZUZhY3RvciwgRm9udENh
Y2hlJikgY29uc3Q7CiAKICAgICB2b2lkIHJlbW92ZUZyb21TeXN0ZW1GYWxsYmFja0NhY2hlKCk7
CiAgICAgCkBAIC0yNjIsNiArMjYzLDcgQEAgcHJpdmF0ZToKICAgICBmbG9hdCBtX2F2Z0NoYXJX
aWR0aCB7IC0xIH07CiAKICAgICBjb25zdCBGb250UGxhdGZvcm1EYXRhIG1fcGxhdGZvcm1EYXRh
OworICAgIFJlZjxGb250Q2FjaGU+IG1fZm9udENhY2hlOwogCiAgICAgbXV0YWJsZSBSZWZQdHI8
R2x5cGhQYWdlPiBtX2dseXBoUGFnZVplcm87CiAgICAgbXV0YWJsZSBIYXNoTWFwPHVuc2lnbmVk
LCBSZWZQdHI8R2x5cGhQYWdlPj4gbV9nbHlwaFBhZ2VzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAKaW5kZXggOGJiMzNlZDU3YWU4NDJjZjEwOTQ2
YWQyNzQ3Yjk1OTZjYjA0YTU4Ni4uMjBjYmIwNzI0YTQ1OGQ4MTYyYjk2YmY3YjM3MTBmYTY4MjVi
ZjA3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
Y2hlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUu
Y3BwCkBAIC0yODAsNyArMjgwLDcgQEAgUmVmPEZvbnQ+IEZvbnRDYWNoZTo6Zm9udEZvclBsYXRm
b3JtRGF0YShjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEpCiAjZW5kaWYKIAog
ICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9mb250RGF0YUNhY2hlcy0+ZGF0YS5lbnN1cmUocGxhdGZv
cm1EYXRhLCBbJl0gewotICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHBsYXRmb3JtRGF0YSk7
CisgICAgICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRhLCAqdGhpcyk7CiAgICAg
fSk7CiAKICAgICBBU1NFUlQoYWRkUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+cGxhdGZvcm1EYXRh
KCkgPT0gcGxhdGZvcm1EYXRhKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnRDYXNjYWRlRm9udHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKaW5kZXggOWY2NWQyOTk4Zjk0ODY5NzNkNGJi
ZjE4ZGUyNmY4MmIwNDQzOWZjYS4uMDJmZGUzZDUzZDhkNTU3ZTQwMWUzYTlmNmYzNTBmMTk2ZWJh
OTQ0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
c2NhZGVGb250cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9u
dENhc2NhZGVGb250cy5jcHAKQEAgLTE4OSw3ICsxODksNyBAQCBjb25zdCBGb250UmFuZ2VzJiBG
b250Q2FzY2FkZUZvbnRzOjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250Q2FzY2Fk
ZURlcwogICAgIGlmICghaW5kZXgpIHsKICAgICAgICAgZm9udFJhbmdlcyA9IHJlYWxpemVOZXh0
RmFsbGJhY2soZGVzY3JpcHRpb24sIG1fbGFzdFJlYWxpemVkRmFsbGJhY2tJbmRleCwgbV9mb250
U2VsZWN0b3IuZ2V0KCkpOwogICAgICAgICBpZiAoZm9udFJhbmdlcy5pc051bGwoKSAmJiBtX2Zv
bnRTZWxlY3RvcikKLSAgICAgICAgICAgIGZvbnRSYW5nZXMgPSBtX2ZvbnRTZWxlY3Rvci0+Zm9u
dFJhbmdlc0ZvckZhbWlseShkZXNjcmlwdGlvbiwgc3RhbmRhcmRGYW1pbHkpOworICAgICAgICAg
ICAgZm9udFJhbmdlcyA9IG1fZm9udFNlbGVjdG9yLT5mb250UmFuZ2VzRm9yRmFtaWx5KGRlc2Ny
aXB0aW9uLCBmYW1pbHlOYW1lc0RhdGEtPmF0KEZhbWlseU5hbWVzSW5kZXg6OlN0YW5kYXJkRmFt
aWx5KSk7CiAgICAgICAgIGlmIChmb250UmFuZ2VzLmlzTnVsbCgpKQogICAgICAgICAgICAgZm9u
dFJhbmdlcyA9IEZvbnRSYW5nZXMoRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xl
dG9uKG1fZm9udFNlbGVjdG9yKS5sYXN0UmVzb3J0RmFsbGJhY2tGb250KGRlc2NyaXB0aW9uKSk7
CiAgICAgICAgIHJldHVybiBmb250UmFuZ2VzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3JlVGV4dC5jcHAKaW5kZXggZWY4
NmU0YzNjMmJiYmE4NzQ2ZTI0MWU0MzUxZTc4MGU3NDMzZDMxNi4uZGI5NzM3MTJlYzczOWNhOGQy
NWMxMWVmM2NlYjM0MjJhYTExZWI0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQuY3BwCkBAIC0zOTUsNyAr
Mzk1LDcgQEAgY29uc3QgQml0VmVjdG9yJiBGb250OjpnbHlwaHNTdXBwb3J0ZWRCeUFsbFBldGl0
ZUNhcHMoKSBjb25zdAogfQogI2VuZGlmCiAKLXN0YXRpYyBSZWZQdHI8Rm9udD4gY3JlYXRlRGVy
aXZhdGl2ZUZvbnQoQ1RGb250UmVmIGZvbnQsIGZsb2F0IHNpemUsIEZvbnRPcmllbnRhdGlvbiBv
cmllbnRhdGlvbiwgQ1RGb250U3ltYm9saWNUcmFpdHMgZm9udFRyYWl0cywgYm9vbCBzeW50aGV0
aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYykKK3N0YXRpYyBSZWZQdHI8Rm9udD4gY3JlYXRl
RGVyaXZhdGl2ZUZvbnQoQ1RGb250UmVmIGZvbnQsIGZsb2F0IHNpemUsIEZvbnRPcmllbnRhdGlv
biBvcmllbnRhdGlvbiwgQ1RGb250U3ltYm9saWNUcmFpdHMgZm9udFRyYWl0cywgYm9vbCBzeW50
aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgRm9udENhY2hlJiBmb250Q2FjaGUpCiB7
CiAgICAgaWYgKCFmb250KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKQEAgLTQxMSw3ICs0MTEs
NyBAQCBzdGF0aWMgUmVmUHRyPEZvbnQ+IGNyZWF0ZURlcml2YXRpdmVGb250KENURm9udFJlZiBm
b250LCBmbG9hdCBzaXplLCBGb250T3JpZW50YQogICAgIGJvb2wgdXNlZFN5bnRoZXRpY09ibGlx
dWUgPSAoZm9udFRyYWl0cyAmIGtDVEZvbnRJdGFsaWNUcmFpdCkgJiYgIShzY2FsZWRGb250VHJh
aXRzICYga0NURm9udFRyYWl0SXRhbGljKTsKICAgICBGb250UGxhdGZvcm1EYXRhIHNjYWxlZEZv
bnREYXRhKGZvbnQsIHNpemUsIHVzZWRTeW50aGV0aWNCb2xkLCB1c2VkU3ludGhldGljT2JsaXF1
ZSwgb3JpZW50YXRpb24pOwogCi0gICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShzY2FsZWRGb250RGF0
YSk7CisgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShzY2FsZWRGb250RGF0YSwgZm9udENhY2hlKTsK
IH0KIAogc3RhdGljIGlubGluZSBib29sIGlzT3BlblR5cGVGZWF0dXJlKENGRGljdGlvbmFyeVJl
ZiBmZWF0dXJlKQpAQCAtNTQ0LDIyICs1NDQsMjIgQEAgc3RhdGljIFJldGFpblB0cjxDVEZvbnRS
ZWY+IGNyZWF0ZUNURm9udFdpdGhvdXRTeW50aGVzaXphYmxlRmVhdHVyZXMoQ1RGb250UmVmIGYK
ICAgICByZXR1cm4gYWRvcHRDRihDVEZvbnRDcmVhdGVDb3B5V2l0aEF0dHJpYnV0ZXMoZm9udCwg
Q1RGb250R2V0U2l6ZShmb250KSwgbnVsbHB0ciwgbmV3RGVzY3JpcHRvci5nZXQoKSkpOwogfQog
Ci1SZWZQdHI8Rm9udD4gRm9udDo6Y3JlYXRlRm9udFdpdGhvdXRTeW50aGVzaXphYmxlRmVhdHVy
ZXMoKSBjb25zdAorUmVmUHRyPEZvbnQ+IEZvbnQ6OmNyZWF0ZUZvbnRXaXRob3V0U3ludGhlc2l6
YWJsZUZlYXR1cmVzKEZvbnRDYWNoZSYgZm9udENhY2hlKSBjb25zdAogewogICAgIGZsb2F0IHNp
emUgPSBtX3BsYXRmb3JtRGF0YS5zaXplKCk7CiAgICAgQ1RGb250U3ltYm9saWNUcmFpdHMgZm9u
dFRyYWl0cyA9IENURm9udEdldFN5bWJvbGljVHJhaXRzKG1fcGxhdGZvcm1EYXRhLmZvbnQoKSk7
CiAgICAgUmV0YWluUHRyPENURm9udFJlZj4gY3RGb250ID0gY3JlYXRlQ1RGb250V2l0aG91dFN5
bnRoZXNpemFibGVGZWF0dXJlcyhtX3BsYXRmb3JtRGF0YS5mb250KCkpOwotICAgIHJldHVybiBj
cmVhdGVEZXJpdmF0aXZlRm9udChjdEZvbnQuZ2V0KCksIHNpemUsIG1fcGxhdGZvcm1EYXRhLm9y
aWVudGF0aW9uKCksIGZvbnRUcmFpdHMsIG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY0JvbGQoKSwg
bV9wbGF0Zm9ybURhdGEuc3ludGhldGljT2JsaXF1ZSgpKTsKKyAgICByZXR1cm4gY3JlYXRlRGVy
aXZhdGl2ZUZvbnQoY3RGb250LmdldCgpLCBzaXplLCBtX3BsYXRmb3JtRGF0YS5vcmllbnRhdGlv
bigpLCBmb250VHJhaXRzLCBtX3BsYXRmb3JtRGF0YS5zeW50aGV0aWNCb2xkKCksIG1fcGxhdGZv
cm1EYXRhLnN5bnRoZXRpY09ibGlxdWUoKSwgZm9udENhY2hlKTsKIH0KIAotUmVmUHRyPEZvbnQ+
IEZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mLCBm
bG9hdCBzY2FsZUZhY3RvcikgY29uc3QKK1JlZlB0cjxGb250PiBGb250OjpwbGF0Zm9ybUNyZWF0
ZVNjYWxlZEZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiwgZmxvYXQgc2NhbGVGYWN0b3IsIEZv
bnRDYWNoZSYgZm9udENhY2hlKSBjb25zdAogewogICAgIGZsb2F0IHNpemUgPSBtX3BsYXRmb3Jt
RGF0YS5zaXplKCkgKiBzY2FsZUZhY3RvcjsKICAgICBDVEZvbnRTeW1ib2xpY1RyYWl0cyBmb250
VHJhaXRzID0gQ1RGb250R2V0U3ltYm9saWNUcmFpdHMobV9wbGF0Zm9ybURhdGEuZm9udCgpKTsK
ICAgICBSZXRhaW5QdHI8Q1RGb250RGVzY3JpcHRvclJlZj4gZm9udERlc2NyaXB0b3IgPSBhZG9w
dENGKENURm9udENvcHlGb250RGVzY3JpcHRvcihtX3BsYXRmb3JtRGF0YS5mb250KCkpKTsKICAg
ICBSZXRhaW5QdHI8Q1RGb250UmVmPiBzY2FsZWRGb250ID0gYWRvcHRDRihDVEZvbnRDcmVhdGVX
aXRoRm9udERlc2NyaXB0b3IoZm9udERlc2NyaXB0b3IuZ2V0KCksIHNpemUsIG51bGxwdHIpKTsK
IAotICAgIHJldHVybiBjcmVhdGVEZXJpdmF0aXZlRm9udChzY2FsZWRGb250LmdldCgpLCBzaXpl
LCBtX3BsYXRmb3JtRGF0YS5vcmllbnRhdGlvbigpLCBmb250VHJhaXRzLCBtX3BsYXRmb3JtRGF0
YS5zeW50aGV0aWNCb2xkKCksIG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY09ibGlxdWUoKSk7Cisg
ICAgcmV0dXJuIGNyZWF0ZURlcml2YXRpdmVGb250KHNjYWxlZEZvbnQuZ2V0KCksIHNpemUsIG1f
cGxhdGZvcm1EYXRhLm9yaWVudGF0aW9uKCksIGZvbnRUcmFpdHMsIG1fcGxhdGZvcm1EYXRhLnN5
bnRoZXRpY0JvbGQoKSwgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljT2JsaXF1ZSgpLCBmb250Q2Fj
aGUpOwogfQogCiBmbG9hdCBGb250OjpwbGF0Zm9ybVdpZHRoRm9yR2x5cGgoR2x5cGggZ2x5cGgp
IGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVl
dHlwZS9TaW1wbGVGb250RGF0YUZyZWVUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZyZWV0eXBlL1NpbXBsZUZvbnREYXRhRnJlZVR5cGUuY3BwCmluZGV4IGI5Njcy
N2FiMzllNzY5N2MzN2Y3NjNjYTIzN2QxY2Q5YzM1NWYxYTguLjMwZjgyNmFhZWQ0YTgzYTUzNmRj
OWFhMzMzNTUzMzE2MDY0ODM4ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZyZWV0eXBlL1NpbXBsZUZvbnREYXRhRnJlZVR5cGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL1NpbXBsZUZvbnREYXRhRnJlZVR5
cGUuY3BwCkBAIC0xODgsNyArMTg4LDcgQEAgdm9pZCBGb250OjpwbGF0Zm9ybUNoYXJXaWR0aElu
aXQoKQogICAgIGluaXRDaGFyV2lkdGhzKCk7CiB9CiAKLVJlZlB0cjxGb250PiBGb250OjpwbGF0
Zm9ybUNyZWF0ZVNjYWxlZEZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRp
b24sIGZsb2F0IHNjYWxlRmFjdG9yKSBjb25zdAorUmVmUHRyPEZvbnQ+IEZvbnQ6OnBsYXRmb3Jt
Q3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwg
ZmxvYXQgc2NhbGVGYWN0b3IsIEZvbnRDYWNoZSYgZm9udENhY2hlKSBjb25zdAogewogICAgIEFT
U0VSVChtX3BsYXRmb3JtRGF0YS5zY2FsZWRGb250KCkpOwogICAgIHJldHVybiBGb250OjpjcmVh
dGUoRm9udFBsYXRmb3JtRGF0YShjYWlyb19zY2FsZWRfZm9udF9nZXRfZm9udF9mYWNlKG1fcGxh
dGZvcm1EYXRhLnNjYWxlZEZvbnQoKSksCkBAIC0xOTgsNyArMTk4LDcgQEAgUmVmUHRyPEZvbnQ+
IEZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZv
bnREZXNjcmlwdGkKICAgICAgICAgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljQm9sZCgpLAogICAg
ICAgICBtX3BsYXRmb3JtRGF0YS5zeW50aGV0aWNPYmxpcXVlKCksCiAgICAgICAgIGZvbnREZXNj
cmlwdGlvbi5vcmllbnRhdGlvbigpKSwKLSAgICAgICAgb3JpZ2luKCksIEludGVyc3RpdGlhbDo6
Tm8pOworICAgICAgICBmb250Q2FjaGUsIG9yaWdpbigpLCBJbnRlcnN0aXRpYWw6Ok5vKTsKIH0K
IAogdm9pZCBGb250OjpkZXRlcm1pbmVQaXRjaCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vU2ltcGxlRm9udERhdGFXaW4uY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1NpbXBsZUZvbnREYXRhV2luLmNwcAppbmRleCA2
ZDY4NWQ4MDE3NDZjMzRkOTcyZTI5M2NlNGEwNDQyZTRhYzlhNzBiLi5hODYxZDY2NThlOTYyZTZm
NTcwODFlODVkMDkyMTFiMzIxMzIzNGMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy93aW4vU2ltcGxlRm9udERhdGFXaW4uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9TaW1wbGVGb250RGF0YVdpbi5jcHAKQEAgLTEyMiwx
NyArMTIyLDE3IEBAIHZvaWQgRm9udDo6cGxhdGZvcm1EZXN0cm95KCkKICAgICBkZWxldGUgbV9z
Y3JpcHRGb250UHJvcGVydGllczsKIH0KIAotUmVmUHRyPEZvbnQ+IEZvbnQ6OnBsYXRmb3JtQ3Jl
YXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwgZmxv
YXQgc2NhbGVGYWN0b3IpIGNvbnN0CitSZWZQdHI8Rm9udD4gRm9udDo6cGxhdGZvcm1DcmVhdGVT
Y2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBmbG9hdCBz
Y2FsZUZhY3RvciwgRm9udENhY2hlJiBmb250Q2FjaGUpIGNvbnN0CiB7CiAgICAgZmxvYXQgc2Nh
bGVkU2l6ZSA9IHNjYWxlRmFjdG9yICogbV9wbGF0Zm9ybURhdGEuc2l6ZSgpOwogICAgIGlmIChv
cmlnaW4oKSA9PSBPcmlnaW46OlJlbW90ZSkKLSAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShG
b250UGxhdGZvcm1EYXRhOjpjbG9uZVdpdGhTaXplKG1fcGxhdGZvcm1EYXRhLCBzY2FsZWRTaXpl
KSwgRm9udDo6T3JpZ2luOjpSZW1vdGUpOworICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKEZv
bnRQbGF0Zm9ybURhdGE6OmNsb25lV2l0aFNpemUobV9wbGF0Zm9ybURhdGEsIHNjYWxlZFNpemUp
LCBmb250Q2FjaGUsIEZvbnQ6Ok9yaWdpbjo6UmVtb3RlKTsKIAogICAgIExPR0ZPTlQgd2luZm9u
dDsKICAgICBHZXRPYmplY3QobV9wbGF0Zm9ybURhdGEuaGZvbnQoKSwgc2l6ZW9mKExPR0ZPTlQp
LCAmd2luZm9udCk7CiAgICAgd2luZm9udC5sZkhlaWdodCA9IC1scm91bmRmKHNjYWxlZFNpemUg
KiAobV9wbGF0Zm9ybURhdGEudXNlR0RJKCkgPyAxIDogMzIpKTsKICAgICBhdXRvIGhmb250ID0g
YWRvcHRHRElPYmplY3QoOjpDcmVhdGVGb250SW5kaXJlY3QoJndpbmZvbnQpKTsKLSAgICByZXR1
cm4gRm9udDo6Y3JlYXRlKEZvbnRQbGF0Zm9ybURhdGEoV1RGTW92ZShoZm9udCksIHNjYWxlZFNp
emUsIG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY0JvbGQoKSwgbV9wbGF0Zm9ybURhdGEuc3ludGhl
dGljT2JsaXF1ZSgpLCBtX3BsYXRmb3JtRGF0YS51c2VHREkoKSksIG9yaWdpbigpKTsKKyAgICBy
ZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRQbGF0Zm9ybURhdGEoV1RGTW92ZShoZm9udCksIHNjYWxl
ZFNpemUsIG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY0JvbGQoKSwgbV9wbGF0Zm9ybURhdGEuc3lu
dGhldGljT2JsaXF1ZSgpLCBtX3BsYXRmb3JtRGF0YS51c2VHREkoKSksIGZvbnRDYWNoZSwgb3Jp
Z2luKCkpOwogfQogCiBGbG9hdFJlY3QgRm9udDo6Ym91bmRzRm9yR0RJR2x5cGgoR2x5cGggZ2x5
cGgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRM
b2FkUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVx
dWVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDJkYWRmM2YwMzEzNDYyZmVkNjkwODkzY2VjMzU1NTY0NDM2
MWJmZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9u
dExvYWRSZXF1ZXN0LmNwcApAQCAtMCwwICsxLDE1MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAwNiwgMjAwNywgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDkgVG9yY2ggTW9iaWxlLCBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEg
TWV0cm9sb2dpY2FsIEdyb3VwIEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5M
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwor
ICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldvcmtlckZvbnRM
b2FkUmVxdWVzdC5oIgorCisjaW5jbHVkZSAiRm9udC5oIgorI2luY2x1ZGUgIkZvbnRDdXN0b21Q
bGF0Zm9ybURhdGEuaCIKKyNpbmNsdWRlICJGb250U2VsZWN0aW9uQWxnb3JpdGhtLmgiCisjaW5j
bHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCisjaW5jbHVkZSAiU2VydmljZVdvcmtlci5o
IgorI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorI2luY2x1ZGUgIldPRkZGaWxlRm9ybWF0Lmgi
CisjaW5jbHVkZSAiV29ya2VyR2xvYmFsU2NvcGUuaCIKKyNpbmNsdWRlICJXb3JrZXJUaHJlYWRh
YmxlTG9hZGVyLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV29ya2VyRm9udExvYWRSZXF1
ZXN0OjpXb3JrZXJGb250TG9hZFJlcXVlc3QoVVJMJiYgdXJsLCBMb2FkZWRGcm9tT3BhcXVlU291
cmNlIGxvYWRlZEZyb21PcGFxdWVTb3VyY2UpCisgICAgOiBtX3VybCh1cmwpCisgICAgLCBtX2xv
YWRlZEZyb21PcGFxdWVTb3VyY2UobG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkKK3sKK30KKwordm9p
ZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmxvYWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29u
dGV4dCkKK3sKKyAgICBBU1NFUlQoaXM8V29ya2VyR2xvYmFsU2NvcGU+KGNvbnRleHQpKTsKKyAg
ICBhdXRvJiB3b3JrZXJHbG9iYWxTY29wZSA9IGRvd25jYXN0PFdvcmtlckdsb2JhbFNjb3BlPihj
b250ZXh0KTsKKyAgICBtX2NvbnRleHQgPSBtYWtlV2Vha1B0cihjb250ZXh0KTsKKworICAgIFJl
c291cmNlUmVxdWVzdCByZXF1ZXN0IHsgbV91cmwgfTsKKyAgICBBU1NFUlQocmVxdWVzdC5odHRw
TWV0aG9kKCkgPT0gIkdFVCIpOworCisgICAgRmV0Y2hPcHRpb25zIGZldGNoT3B0aW9uczsKKyAg
ICBmZXRjaE9wdGlvbnMubW9kZSA9IEZldGNoT3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsKKyAg
ICBmZXRjaE9wdGlvbnMuY3JlZGVudGlhbHMgPSB3b3JrZXJHbG9iYWxTY29wZS5jcmVkZW50aWFs
cygpOworICAgIGZldGNoT3B0aW9ucy5jYWNoZSA9IEZldGNoT3B0aW9uczo6Q2FjaGU6OkRlZmF1
bHQ7CisgICAgZmV0Y2hPcHRpb25zLnJlZGlyZWN0ID0gRmV0Y2hPcHRpb25zOjpSZWRpcmVjdDo6
Rm9sbG93OworICAgIGZldGNoT3B0aW9ucy5kZXN0aW5hdGlvbiA9IEZldGNoT3B0aW9uczo6RGVz
dGluYXRpb246OldvcmtlcjsKKworICAgIFRocmVhZGFibGVMb2FkZXJPcHRpb25zIG9wdGlvbnMg
eyBXVEZNb3ZlKGZldGNoT3B0aW9ucykgfTsKKyAgICBvcHRpb25zLnNlbmRMb2FkQ2FsbGJhY2tz
ID0gU2VuZENhbGxiYWNrUG9saWN5OjpTZW5kQ2FsbGJhY2tzOworICAgIG9wdGlvbnMuY29udGVu
dFNlY3VyaXR5UG9saWN5RW5mb3JjZW1lbnQgPSBjb250ZXh0LnNob3VsZEJ5cGFzc01haW5Xb3Js
ZENvbnRlbnRTZWN1cml0eVBvbGljeSgpID8gQ29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1l
bnQ6OkRvTm90RW5mb3JjZSA6IENvbnRlbnRTZWN1cml0eVBvbGljeUVuZm9yY2VtZW50OjpFbmZv
cmNlQ2hpbGRTcmNEaXJlY3RpdmU7CisgICAgb3B0aW9ucy5sb2FkZWRGcm9tT3BhcXVlU291cmNl
ID0gbV9sb2FkZWRGcm9tT3BhcXVlU291cmNlOworCisgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2Vy
c01vZGUgPSBTZXJ2aWNlV29ya2Vyc01vZGU6OkFsbDsKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JL
RVIpCisgICAgaWYgKGF1dG8qIGFjdGl2ZVNlcnZpY2VXb3JrZXIgPSBjb250ZXh0LmFjdGl2ZVNl
cnZpY2VXb3JrZXIoKSkKKyAgICAgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
SWRlbnRpZmllciA9IGFjdGl2ZVNlcnZpY2VXb3JrZXItPnJlZ2lzdHJhdGlvbklkZW50aWZpZXIo
KTsKKyNlbmRpZgorCisgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseSh3b3JrZXJHbG9iYWxTY29wZSwgV1RGTW92ZShyZXF1ZXN0KSwgKnRoaXMsIG9w
dGlvbnMpOworfQorCitib29sIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3VzdG9tRm9u
dERhdGEoY29uc3QgQXRvbVN0cmluZyYpCit7CisjaWYgIVBMQVRGT1JNKENPQ09BKQorICAgIGlm
ICghbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhICYmICFtX2Vycm9yT2NjdXJyZWQgJiYgIW1faXNM
b2FkaW5nICYmIG1fZGF0YSAmJiBpc1dPRkYoKm1fZGF0YSkpIHsKKyAgICAgICAgVmVjdG9yPGNo
YXI+IGNvbnZlcnRlZEZvbnQ7CisgICAgICAgIGlmIChjb252ZXJ0V09GRlRvU2ZudCgqbV9kYXRh
LCBjb252ZXJ0ZWRGb250KSkKKyAgICAgICAgICAgIG1fZGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3Jl
YXRlKFdURk1vdmUoY29udmVydGVkRm9udCkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBt
X2Vycm9yT2NjdXJyZWQgPSB0cnVlOworICAgIH0KKyNlbmRpZgorCisgICAgaWYgKCFtX2ZvbnRD
dXN0b21QbGF0Zm9ybURhdGEgJiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9pc0xvYWRpbmcgJiYg
bV9kYXRhKSB7CisgICAgICAgIG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YSA9IGNyZWF0ZUZvbnRD
dXN0b21QbGF0Zm9ybURhdGEoKm1fZGF0YSwgbV91cmwuZnJhZ21lbnRJZGVudGlmaWVyKCkudG9T
dHJpbmcoKSk7CisgICAgICAgIGlmICghbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhKQorICAgICAg
ICAgICAgbV9lcnJvck9jY3VycmVkID0gdHJ1ZTsKKyAgICB9CisKKyAgICByZXR1cm4gbV9mb250
Q3VzdG9tUGxhdGZvcm1EYXRhLmdldCgpOworfQorCitSZWZQdHI8Rm9udD4gV29ya2VyRm9udExv
YWRSZXF1ZXN0OjpjcmVhdGVGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0
aW9uLCBjb25zdCBBdG9tU3RyaW5nJiwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRp
Y0l0YWxpYywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywgRm9u
dFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcyBmb250RmFjZUNhcGFiaWxpdGllcykKK3sK
KyAgICBBU1NFUlQobV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhKTsKKyAgICBBU1NFUlQobV9jb250
ZXh0KTsKKyAgICByZXR1cm4gRm9udDo6Y3JlYXRlKG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YS0+
Zm9udFBsYXRmb3JtRGF0YShmb250RGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRp
Y0l0YWxpYywgZm9udEZhY2VGZWF0dXJlcywgZm9udEZhY2VDYXBhYmlsaXRpZXMpLCBtX2NvbnRl
eHQtPmZvbnRDYWNoZSgpLCBGb250OjpPcmlnaW46OlJlbW90ZSk7Cit9CisKK3ZvaWQgV29ya2Vy
Rm9udExvYWRSZXF1ZXN0OjpzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50KiBjbGllbnQp
Cit7CisgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQgPSBjbGllbnQ7CisKKyAgICBpZiAobV9u
b3RpZnlPbkNsaWVudFNldCkgeworICAgICAgICBtX25vdGlmeU9uQ2xpZW50U2V0ID0gZmFsc2U7
CisgICAgICAgIG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50LT5mb250TG9hZGVkKCp0aGlzKTsKKyAg
ICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2Uo
dW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit7CisgICAg
aWYgKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgIT0gMiAmJiByZXNwb25zZS5odHRw
U3RhdHVzQ29kZSgpKSB7CisgICAgICAgIG1fZXJyb3JPY2N1cnJlZCA9IHRydWU7CisgICAgICAg
IHJldHVybjsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNl
aXZlRGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKK3sKKyAgICBpZiAobV9l
cnJvck9jY3VycmVkKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoIW1fZGF0YSkKKyAgICAg
ICAgbV9kYXRhID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoKTsKKworICAgIG1fZGF0YS0+YXBwZW5k
KGRhdGEsIGRhdGFMZW5ndGgpOworfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlk
RmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKQoreworICAgIG1faXNMb2FkaW5nID0gZmFsc2U7
CisKKyAgICBpZiAoIW1fZXJyb3JPY2N1cnJlZCkgeworICAgICAgICBpZiAobV9mb250TG9hZFJl
cXVlc3RDbGllbnQpCisgICAgICAgICAgICBtX2ZvbnRMb2FkUmVxdWVzdENsaWVudC0+Zm9udExv
YWRlZCgqdGhpcyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fbm90aWZ5T25DbGllbnRT
ZXQgPSB0cnVlOworICAgIH0KK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZh
aWwoY29uc3QgUmVzb3VyY2VFcnJvciYpCit7CisgICAgbV9lcnJvck9jY3VycmVkID0gdHJ1ZTsK
K30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyRm9udExvYWRSZXF1ZXN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODhjZTdjNWQxOTg1NTYxNjUwODEy
ODFmNWFjYzZhMGNmMTVkMGRjMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKQEAgLTAsMCArMSw4MyBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBNZXRyb2xvZ2ljYWwgR3JvdXAgQi5WLgorICogQ29weXJpZ2h0IChD
KSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUg
IkZvbnRMb2FkUmVxdWVzdC5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVyT3B0aW9ucy5oIgor
I2luY2x1ZGUgIlRocmVhZGFibGVMb2FkZXJDbGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUmVmUHRy
Lmg+CisjaW5jbHVkZSA8d3RmL1VSTC5oPgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTsKK2NsYXNz
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFzcyBTaGFyZWRCdWZmZXI7CitjbGFzcyBXb3Jr
ZXJHbG9iYWxTY29wZTsKKworY2xhc3MgV29ya2VyRm9udExvYWRSZXF1ZXN0IDogcHVibGljIEZv
bnRMb2FkUmVxdWVzdCwgcHVibGljIFRocmVhZGFibGVMb2FkZXJDbGllbnQgeworICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIFdvcmtlckZvbnRMb2FkUmVxdWVzdChV
UkwmJiwgTG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSk7CisgICAgfldvcmtlckZvbnRMb2FkUmVxdWVz
dCgpID0gZGVmYXVsdDsKKworICAgIHZvaWQgbG9hZChTY3JpcHRFeGVjdXRpb25Db250ZXh0Jik7
CisKK3ByaXZhdGU6CisgICAgY29uc3QgVVJMJiB1cmwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBt
X3VybDsgfQorICAgIGJvb2wgaXNQZW5kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIW1faXNM
b2FkaW5nICYmICFtX2Vycm9yT2NjdXJyZWQgJiYgIW1fZGF0YTsgfQorICAgIGJvb2wgaXNMb2Fk
aW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9pc0xvYWRpbmc7IH0KKyAgICBib29sIGVycm9y
T2NjdXJyZWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2Vycm9yT2NjdXJyZWQ7IH0KKworICAg
IGJvb2wgZW5zdXJlQ3VzdG9tRm9udERhdGEoY29uc3QgQXRvbVN0cmluZyYgcmVtb3RlVVJJKSBm
aW5hbDsKKyAgICBSZWZQdHI8Rm9udD4gY3JlYXRlRm9udChjb25zdCBGb250RGVzY3JpcHRpb24m
LCBjb25zdCBBdG9tU3RyaW5nJiByZW1vdGVVUkksIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBz
eW50aGV0aWNJdGFsaWMsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmLCBGb250U2VsZWN0aW9u
U3BlY2lmaWVkQ2FwYWJpbGl0aWVzKSBmaW5hbDsKKworICAgIHZvaWQgc2V0Q2xpZW50KEZvbnRM
b2FkUmVxdWVzdENsaWVudCopIGZpbmFsOworCisgICAgYm9vbCBpc1dvcmtlckZvbnRMb2FkUmVx
dWVzdCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKworICAgIHZvaWQgZGlkUmVjZWl2
ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpIGZpbmFsOworICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29uc3QgY2hhciogZGF0YSwgaW50
IGRhdGFMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlkRmFpbChjb25zdCBSZXNvdXJjZUVy
cm9yJikgZmluYWw7CisKKyAgICBVUkwgbV91cmw7CisgICAgTG9hZGVkRnJvbU9wYXF1ZVNvdXJj
ZSBtX2xvYWRlZEZyb21PcGFxdWVTb3VyY2U7CisKKyAgICBib29sIG1faXNMb2FkaW5nIHsgZmFs
c2UgfTsKKyAgICBib29sIG1fbm90aWZ5T25DbGllbnRTZXQgeyBmYWxzZSB9OworICAgIGJvb2wg
bV9lcnJvck9jY3VycmVkIHsgZmFsc2UgfTsKKyAgICBGb250TG9hZFJlcXVlc3RDbGllbnQqIG1f
Zm9udExvYWRSZXF1ZXN0Q2xpZW50IHsgbnVsbHB0ciB9OworCisgICAgV2Vha1B0cjxTY3JpcHRF
eGVjdXRpb25Db250ZXh0PiBtX2NvbnRleHQ7CisgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gbV9k
YXRhOworICAgIHN0ZDo6dW5pcXVlX3B0cjxGb250Q3VzdG9tUGxhdGZvcm1EYXRhPiBtX2ZvbnRD
dXN0b21QbGF0Zm9ybURhdGE7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJ
QUxJWkVfVFlQRV9UUkFJVFNfRk9OVExPQURSRVFVRVNUKFdlYkNvcmU6OldvcmtlckZvbnRMb2Fk
UmVxdWVzdCwgaXNXb3JrZXJGb250TG9hZFJlcXVlc3QoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggZDBmYmQ3MmQzMmI1NTA0NjllYTA4YTkw
ZjBmZDZiZjg0ZmE2MTg4Ni4uNWE5N2YwZmM0MmQwOGY0OWI2YTY2ZWUwNTkzM2E5ODgxMDQ3Y2Uw
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAKQEAg
LTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJDb250ZW50U2VjdXJpdHlQb2xpY3kuaCIKICNpbmNs
dWRlICJDcnlwdG8uaCIKICNpbmNsdWRlICJGb250Q2FjaGUuaCIKKyNpbmNsdWRlICJGb250RmFj
ZVNldC5oIgogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Qcm94eS5oIgogI2luY2x1ZGUgIkltYWdl
Qml0bWFwT3B0aW9ucy5oIgogI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgpA
QCAtNDUsNiArNDYsNyBAQAogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luUG9saWN5LmgiCiAjaW5j
bHVkZSAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmgiCiAjaW5jbHVkZSAiU29ja2V0UHJvdmlk
ZXIuaCIKKyNpbmNsdWRlICJXb3JrZXJGb250TG9hZFJlcXVlc3QuaCIKICNpbmNsdWRlICJXb3Jr
ZXJMb2FkZXJQcm94eS5oIgogI2luY2x1ZGUgIldvcmtlckxvY2F0aW9uLmgiCiAjaW5jbHVkZSAi
V29ya2VyTWVzc2FnaW5nUHJveHkuaCIKQEAgLTUyMSw2ICs1MjMsMjIgQEAgRm9udENhY2hlJiBX
b3JrZXJHbG9iYWxTY29wZTo6Zm9udENhY2hlKCkKICAgICByZXR1cm4gKm1fZm9udENhY2hlOwog
fQogCitSZWY8Rm9udEZhY2VTZXQ+IFdvcmtlckdsb2JhbFNjb3BlOjpmb250cygpCit7CisgICAg
cmV0dXJuIGNzc0ZvbnRTZWxlY3RvcigpLT5mb250RmFjZVNldCgpOworfQorCitzdGQ6OnVuaXF1
ZV9wdHI8Rm9udExvYWRSZXF1ZXN0PiBXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0
KFN0cmluZyYgdXJsLCBib29sLCBib29sLCBMb2FkZWRGcm9tT3BhcXVlU291cmNlIGxvYWRlZEZy
b21PcGFxdWVTb3VyY2UpCit7CisgICAgcmV0dXJuIG1ha2VVbmlxdWU8V29ya2VyRm9udExvYWRS
ZXF1ZXN0Pihjb21wbGV0ZVVSTCh1cmwpLCBsb2FkZWRGcm9tT3BhcXVlU291cmNlKTsKK30KKwor
dm9pZCBXb3JrZXJHbG9iYWxTY29wZTo6YmVnaW5Mb2FkaW5nRm9udFNvb24oRm9udExvYWRSZXF1
ZXN0JiByZXF1ZXN0KQoreworICAgIEFTU0VSVChpczxXb3JrZXJGb250TG9hZFJlcXVlc3Q+KHJl
cXVlc3QpKTsKKyAgICBkb3duY2FzdDxXb3JrZXJGb250TG9hZFJlcXVlc3Q+KHJlcXVlc3QpLmxv
YWQoKnRoaXMpOworfQorCiBSZWZlcnJlclBvbGljeSBXb3JrZXJHbG9iYWxTY29wZTo6cmVmZXJy
ZXJQb2xpY3koKSBjb25zdAogewogICAgIHJldHVybiBtX3JlZmVycmVyUG9saWN5OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCmluZGV4IDZlYmU0NjUxMWZiYTIx
YzJmODUxNmRlNDUyNjgwMTRjYzI3ZjE2OGUuLjJhMzEzZDRlNjg2NTEyYmQwMTNiYWFmYjI0ZjI5
MjcwNDNkOWI1NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xv
YmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3Bl
LmgKQEAgLTUxLDYgKzUxLDggQEAgY2xhc3MgQ1NTRm9udFNlbGVjdG9yOwogY2xhc3MgQ1NTVmFs
dWVQb29sOwogY2xhc3MgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzOwogY2xh
c3MgQ3J5cHRvOworY2xhc3MgRm9udEZhY2VTZXQ7CitjbGFzcyBGb250TG9hZFJlcXVlc3Q7CiBj
bGFzcyBQZXJmb3JtYW5jZTsKIGNsYXNzIFNjaGVkdWxlZEFjdGlvbjsKIGNsYXNzIFdvcmtlckxv
Y2F0aW9uOwpAQCAtMTI0LDYgKzEyNiw5IEBAIHB1YmxpYzoKICAgICBDU1NWYWx1ZVBvb2wmIGNz
c1ZhbHVlUG9vbCgpIGZpbmFsOwogICAgIENTU0ZvbnRTZWxlY3RvciogY3NzRm9udFNlbGVjdG9y
KCkgZmluYWw7CiAgICAgRm9udENhY2hlJiBmb250Q2FjaGUoKSBmaW5hbDsKKyAgICBSZWY8Rm9u
dEZhY2VTZXQ+IGZvbnRzKCk7CisgICAgc3RkOjp1bmlxdWVfcHRyPEZvbnRMb2FkUmVxdWVzdD4g
Zm9udExvYWRSZXF1ZXN0KFN0cmluZyYsIGJvb2wsIGJvb2wsIExvYWRlZEZyb21PcGFxdWVTb3Vy
Y2UpIGZpbmFsOworICAgIHZvaWQgYmVnaW5Mb2FkaW5nRm9udFNvb24oRm9udExvYWRSZXF1ZXN0
JikgZmluYWw7CiAKICAgICBSZWZlcnJlclBvbGljeSByZWZlcnJlclBvbGljeSgpIGNvbnN0IGZp
bmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNj
b3BlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCmlu
ZGV4IGY4NTc4YTQ3MWY0OGI0ODU4YmJmYmJmYmM4YTA1Y2NkZDliNjliMjYuLmUyOGU4OWVmZjRj
YjAyZjc0ZGYwYmQxYTI5MDFhNzU3MTQ1Y2VjZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC00OCwzICs0OCw0IEBACiB9OwogCiBXb3JrZXJH
bG9iYWxTY29wZSBpbmNsdWRlcyBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlOworV29ya2VyR2xv
YmFsU2NvcGUgaW5jbHVkZXMgRm9udEZhY2VTb3VyY2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAppbmRleCAyNTVhMmNiYzZjNzdjZWYxZTYwNzBl
YTQyMGY2YmRlOTBiMjQwYTcxLi42NjY3ODU2OTljMDRjNWMyNTA1OTM1OTFlZmY4ZGFlZDk5ZTcz
MTI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2Rl
cnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5j
cHAKQEAgLTU1LDYgKzU1LDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0ZpbHRlck9wZXJhdGlvbnMu
aD4KICNpbmNsdWRlIDxXZWJDb3JlL0ZvbnQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ZvbnRBdHRy
aWJ1dGVzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Gb250Q2FjaGUuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL0dyYXBoaWNzQ29udGV4dC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NMYXllci5o
PgogI2luY2x1ZGUgPFdlYkNvcmUvSURCR2V0UmVzdWx0Lmg+CkBAIC0xMTQ0LDcgKzExNDUsNyBA
QCBPcHRpb25hbDxSZWY8Rm9udD4+IEFyZ3VtZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZGVjb2RlKERl
Y29kZXImIGRlY29kZXIpCiAgICAgaWYgKCFwbGF0Zm9ybURhdGEuaGFzVmFsdWUoKSkKICAgICAg
ICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAotICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZv
cm1EYXRhLnZhbHVlKCksIG9yaWdpbi52YWx1ZSgpLCBpc0ludGVyc3RpdGlhbC52YWx1ZSgpLCB2
aXNpYmlsaXR5LnZhbHVlKCksIGlzVGV4dE9yaWVudGF0aW9uRmFsbGJhY2sudmFsdWUoKSwgcmVu
ZGVyaW5nUmVyc291Y2VJZGVudGlmaWVyKTsKKyAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHBsYXRm
b3JtRGF0YS52YWx1ZSgpLCBGb250Q2FjaGU6OnNpbmdsZXRvbigpLCBvcmlnaW4udmFsdWUoKSwg
aXNJbnRlcnN0aXRpYWwudmFsdWUoKSwgdmlzaWJpbGl0eS52YWx1ZSgpLCBpc1RleHRPcmllbnRh
dGlvbkZhbGxiYWNrLnZhbHVlKCksIHJlbmRlcmluZ1JlcnNvdWNlSWRlbnRpZmllcik7CiB9CiAK
IHZvaWQgQXJndW1lbnRDb2RlcjxDdXJzb3I+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29u
c3QgQ3Vyc29yJiBjdXJzb3IpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBmZmZi
NGQ0Njc2ZWFhMDc1OGY0NGY2NmQ0YTEzM2IyNWZjNmY4MTZiLi40ZDFkZDcwZGQzNDU3ZTU2ZGE2
Njg3NWEzMTI2MjU1ZTRiMzczNWY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSw0NiBAQAorMjAyMS0wNC0xNiAgQ2hyaXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+
CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNlIGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNh
bnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0
MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjUyOTAyND4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb250RmFjZSBpcyBub3cgYXZhaWxhYmxl
IGZvciBXb3JrZXJzLCByZWJhc2VsaW5lIHJlbGF0ZWQgdGVzdHMuCisKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFs
aWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0
ci53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxp
Z24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5h
bHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0
b20ud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29y
a2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlkZW9ncmFwaGljLndvcmtl
ci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRvcC53b3JrZXItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZv
bnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53b3Jr
ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53b3JrZXItZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQubWVhc3VyZS5iYXNlbGluZXMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5k
aW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5iYXNpYy53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50
eHQ6CisKIDIwMjEtMDQtMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gVXBkYXRlIDpmb2N1cy12aXNpYmxlIHRlc3RzIGZy
b20gV1BUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50
ZXIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWdu
LmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGU5ZDdmNTc0ZjQ1NTBjZDVmMmYzNGMz
YTBjNmI4OWRkM2RhOGZkZDMuLjExZGRjZmNlNjcwYjVlZmFiNDE3NjIzNTgwYjI4Yjc0ZDJhMTA2
MzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWdu
LmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRB
bGlnbiBjZW50ZXIgaXMgdGhlIGNlbnRlciBvZiB0aGUgZW0gc3F1YXJlcyAobm90IHRoZSBib3Vu
ZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBj
ZW50ZXIgaXMgdGhlIGNlbnRlciBvZiB0aGUgZW0gc3F1YXJlcyAobm90IHRoZSBib3VuZGluZyBi
b3gpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5s
dHIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWdu
LmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzOGRkNzhiZWViZWJmOTJlZDAyYjE1
NDk2MmEwYTA5NTAwZDk2YzFjLi5lMDkyZTFmOGJjNmRmNzVkMWM5MTVhNGI0ZmI5YWVkYmUxZjhj
NzliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRy
Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxp
Z24uZW5kLmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRl
eHRBbGlnbiBlbmQgd2l0aCBsdHIgaXMgdGhlIHJpZ2h0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJs
ZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGVuZCB3aXRoIGx0ciBpcyB0aGUgcmlnaHQgZWRn
ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRs
Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5l
bmQucnRsLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMDU4YmI5OWRlMzM1YTRiZmQwM2ZiNTE2
NzM0MWVkNDBiYWJjYjkxMi4uNGI2ZGUyN2UyNDg4YmVlYjlkY2VjOWRkZWIxZWI0NDIwYmUzZjVj
MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWdu
LmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0
QWxpZ24gZW5kIHdpdGggcnRsIGlzIHRoZSBsZWZ0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTog
Rm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGVuZCB3aXRoIHJ0bCBpcyB0aGUgbGVmdCBlZGdlCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29y
a2VyLWV4cGVjdGVkLnR4dAppbmRleCBmMjkyZjk0NDEyNzlkY2E5NTc0YzJiZjAzMTY2YjEzOTUx
OTJjNTYzLi5iMjNmNzc4Y2ZlMDFjNTQ1MzkyMDAyM2ExYTMzZDQ5NmQ1ZjJmYWEzIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBsZWZ0IGlzIHRo
ZSBsZWZ0IG9mIHRoZSBmaXJzdCBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24gbGVmdCBpcyB0aGUgbGVm
dCBvZiB0aGUgZmlyc3QgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggZmY1YTQwMjBiZGFiMGE2MTE5ZmQ2NGFlNDc3MmZjMTViMTFlYTU2
NS4uYTEwODJkNWI4YzU4NTQ0OTNkYTA4OTUwMTYwZWZkY2E2OWIzZWIwZCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiByaWdodCBpcyB0aGUg
cmlnaHQgb2YgdGhlIGxhc3QgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIHJpZ2h0IGlzIHRoZSByaWdo
dCBvZiB0aGUgbGFzdCBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KQogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53
b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDZmZDk2NTU0NTJjZjAxNjdiNGFkMDljMTJlOTM2N2Mw
Y2M4YjEyYTkuLjE5ZjAyYmYzZDA4NWY0MWFhZTk2OWNhYmY5ZDQ5YjJjZjdhMGYyOTYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0
Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGln
biBzdGFydCB3aXRoIGx0ciBpcyB0aGUgbGVmdCBlZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZv
bnRGYWNlCitQQVNTIHRleHRBbGlnbiBzdGFydCB3aXRoIGx0ciBpcyB0aGUgbGVmdCBlZGdlCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53
b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3Rh
cnQucnRsLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggYmQ1YTU5ZDc5ZTZlMDVhZGMzODQzOWNh
ZDVkYmY1YjIxZDljODY5Yy4uNDFjM2YyNGFmMGJkYjQ2MzYyNTFjNDk0ZmRjNjQ5ZTNkOWU2OTFi
ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRs
Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxp
Z24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwg
dGV4dEFsaWduIHN0YXJ0IHdpdGggcnRsIGlzIHRoZSByaWdodCBlZGdlIENhbid0IGZpbmQgdmFy
aWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBzdGFydCB3aXRoIHJ0bCBpcyB0aGUgcmln
aHQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGlu
ZS5hbHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0
MGFmNjVmNDdkYTNhYmYyZWVjNGQ3YTliOTYxNTFkM2ZlZC4uYTE3ZWVmNTA5MmI3ZDAzODI3YWNk
NjViNzk3OGVlNGI5YmUyMGRjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29ya2VyLWV4cGVjdGVkLnR4
dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFj
ZQorUEFTUyAyZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNl
bGluZS5ib3R0b20ud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDZhMTU0OWMxN2Iy
MjZhOWU1NTY1NzVjZTkyZjcyOTY4ODljZGEyOTIuLmZmMjgzNjA5ODUzODU0MmQ3MmVkYzI5MTAw
ZjU4MDZhODIzYjA3NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJh
c2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MyBAQAogCi1GQUlMIHRleHRCYXNlbGluZSBib3R0b20gaXMgdGhlIGJvdHRvbSBvZiB0aGUgZW0g
c3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZh
Y2UKK0ZBSUwgdGV4dEJhc2VsaW5lIGJvdHRvbSBpcyB0aGUgYm90dG9tIG9mIHRoZSBlbSBzcXVh
cmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5u
ZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2lu
Zy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxp
bmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJm
MmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmNiZWYyNzZhMzQ3OGZhYmMxMWFiNWY0ZjFiNWQyNTkyNTU3
Njk4ZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmhh
bmdpbmcud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAK
LUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgMmQgYXNzZXJ0X2Fw
cHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQg
MCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCBkMzg5OTQwYWY2NWY0N2RhM2FiZjJlZWM0ZDdhOWI5NjE1MWQzZmVkLi5jYmVmMjc2
YTM0NzhmYWJjMTFhYjVmNGYxYjVkMjU5MjU1NzY5OGRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlkZW9ncmFwaGljLndv
cmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2
YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgMmQgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFu
bmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUu
d29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5l
Lm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDMwMDY3MzhhOWM2ZDhmOTIwZWQ5YzBj
OGNlNjZlYzkzMjM5M2ViYWEuLmFkNjQ5NDllMTUxMmE1Yjg3MGIwNmQxMjA0OGYyYjhmMjg2ODMx
OTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRs
ZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJh
c2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlM
IHRleHRCYXNlbGluZSBtaWRkbGUgaXMgdGhlIG1pZGRsZSBvZiB0aGUgZW0gc3F1YXJlIChub3Qg
dGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4
dEJhc2VsaW5lIG1pZGRsZSBpcyB0aGUgbWlkZGxlIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUg
Ym91bmRpbmcgYm94KSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBp
eGVsIGF0ICg1LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRvcC53b3JrZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBl
Y3RlZC50eHQKaW5kZXggZTI2ZjFiNmY4YTM0M2IwZGE1MzU5YWVlNDgxNjliNDdmYjYyNzBhYS4u
ODBlOThmYjI1YjY5NDNiM2M4Mjk0ZGMyMmUzYmJiN2E3MDJhMzY0NCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEJhc2VsaW5lIHRvcCBpcyB0aGUg
dG9wIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBGb250RmFjZQorRkFJTCB0ZXh0QmFzZWxpbmUgdG9wIGlzIHRoZSB0b3Agb2YgdGhl
IGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBS
ZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDUsIDUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdv
dCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhX
aWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDljM2Y4NWU0
OTBhMjEzNmQzZjQ1MDViYjM5M2JhMzljYjQ5MDJiYmEuLmVlNDI5MWQyYmU4MzU4NDQ1MDI4Zjdi
MmU1MzkwYTRiOWZhNGUwMGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgZmlsbFRleHQgaGFuZGxlcyBtYXhXaWR0aCBiYXNlZCBv
biBsaW5lIHNpemUsIG5vdCBib3VuZGluZyBib3ggc2l6ZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBG
b250RmFjZQorUEFTUyBmaWxsVGV4dCBoYW5kbGVzIG1heFdpZHRoIGJhc2VkIG9uIGxpbmUgc2l6
ZSwgbm90IGJvdW5kaW5nIGJveCBzaXplCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4
cGVjdGVkLnR4dAppbmRleCA2YjkyYzM4ZjMyMjIyOThjYThhYThlZTIxOTZjMzhlMTRhN2I5Yzc4
Li5iMmNlMjcxYmYxMDFlM2M5YjYyYjU4YmQxODkyOTc1OTFkNzlhNzZkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRmYWNlLndvcmtlci1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0
aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIGZp
bGxUZXh0IHdvcmtzIG9uIEBmb250LWZhY2UgZm9udHMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9u
dEZhY2UKK1BBU1MgZmlsbFRleHQgd29ya3Mgb24gQGZvbnQtZmFjZSBmb250cwogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlu
cGFnZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGU3OTM1N2FhYjI1ZjYxOGVmNWE3ZTA0YmZi
YTQ4NTcwZTk0ZjJlY2IuLjFhYjk5MWYyMmVlZGU1YjI4ZjMxMTljOWY1MmZhN2Q4MWQ4M2MzMjIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFn
ZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZv
bnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1G
QUlMIEBmb250LWZhY2UgZm9udHMgc2hvdWxkIHdvcmsgZXZlbiBpZiB0aGV5IGFyZSBub3QgdXNl
ZCBpbiB0aGUgcGFnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBAZm9udC1m
YWNlIGZvbnRzIHNob3VsZCB3b3JrIGV2ZW4gaWYgdGhleSBhcmUgbm90IHVzZWQgaW4gdGhlIHBh
Z2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVw
ZWF0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250
ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAwZjc1ZWE5MjEyOWRkNGYyYWY5
ZDJmNTNmMWVmYjY0ZjE5OTExNjQ1Li4zOWVkYTRkYzJmZjY2M2UxZjI4MzZlNTY3Y2U3NjM4NjU1
NjkxZDk1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5y
ZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAot
RkFJTCBEcmF3IHdpdGggdGhlIGZvbnQgaW1tZWRpYXRlbHksIHRoZW4gd2FpdCBhIGJpdCB1bnRp
bCBhbmQgZHJhdyBhZ2Fpbi4gKFRoaXMgY3Jhc2hlcyBzb21lIHZlcnNpb24gb2YgV2ViS2l0Likg
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgRHJhdyB3aXRoIHRoZSBmb250IGlt
bWVkaWF0ZWx5LCB0aGVuIHdhaXQgYSBiaXQgdW50aWwgYW5kIGRyYXcgYWdhaW4uIChUaGlzIGNy
YXNoZXMgc29tZSB2ZXJzaW9uIG9mIFdlYktpdC4pCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5
NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmExN2VlZjUwOTJiN2QwMzgyN2Fj
ZDY1Yjc5NzhlZTRiOWJlMjBkYzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAot
RkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyAyZAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4
cGVjdGVkLnR4dAppbmRleCA5YTMyNDAyNzVlZDM4N2RiZGZkNWQyNWMxZjVhMjdhOWRlNjljNzVh
Li4xZWQ0NGY4ZjdkYmNiMTYzNGJmNDlhNzNiZjk1OTViOTc5MjA5OGNjIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVSswMDIwIGlzIHJlbmRlcmVkIHRoZSBj
b3JyZWN0IHNpemUgKDFlbSB3aWRlKSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFT
UyBVKzAwMjAgaXMgcmVuZGVyZWQgdGhlIGNvcnJlY3Qgc2l6ZSAoMWVtIHdpZGUpCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVuZC53b3Jr
ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFw
c2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNmU1ZjgzMmQxNDJlMGU3NTUyNDkyOGU1
Mjc0ZWI5MGEwYTMyY2I2YS4uNDJmNTcwZjBiOWU3OGQ5NDdjMGUwYmM2NGFiNjgxNjhjMzY2NTUy
YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uu
ZW5kLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
c3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAK
LUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgZW5kIG9mIGEgbGluZSBhcmUgY29sbGFwc2Vk
IChwZXIgQ1NTKSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFy
YWN0ZXJzIGF0IHRoZSBlbmQgb2YgYSBsaW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2Vy
dF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDc1LCAyNSkgZXhw
ZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uubm9uc3BhY2Uud29ya2Vy
LWV4cGVjdGVkLnR4dAppbmRleCBhZTQ2MTVkZTRjYzQwMjk3NjBkMTc1YzkwNzQyOTc5ZWU1NTMw
MzVjLi45ZTVkNDcwNDQ5NTI5MzkxN2NkNWVlNTY0NmY0OGM4Yzk4ZGE2YmQ4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3Jr
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNv
bGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZB
SUwgTm9uLXNwYWNlIGNoYXJhY3RlcnMgYXJlIG5vdCBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBj
b2xsYXBzZWQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgTm9uLXNwYWNlIGNo
YXJhY3RlcnMgYXJlIG5vdCBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIu
d29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNv
bGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOTRhMDA0M2EwYTMzNzllMTI4
ZWIxNjQwYjRmNjQyOGIyZDcxMzlkYS4uNjgyY2ZiOTM5YjBmODUwMTBiN2QzM2U1ODQyMTA1NmE1
MWI0ODAxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29s
bGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAs
IGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitG
QUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAsIGFuZCBjb2xsYXBz
ZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4
ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uu
c3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA5NGEwMDQzYTBhMzM3OWUxMjhlYjE2NDBi
NGY2NDI4YjJkNzEzOWRhLi42ODJjZmI5MzliMGY4NTAxMGI3ZDMzZTU4NDIxMDU2YTUxYjQ4MDE0
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5z
cGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNv
bGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgU3Bh
Y2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVy
IENTUykgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAo
MjUsIDI1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53
b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDUwODY4ZmU5MTk4MGNhNzBiNDA5Zjc2MzczOWU4NDBl
Zjk2ZjNkNWQuLjdiY2I1MWNjYzdiOWMwYTE2MDlkNWVhY2QzZDM0ZGMyODE4MTI4NGMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndv
cmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2Uu
Y29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJ
TCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBzdGFydCBvZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAo
cGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFj
dGVycyBhdCB0aGUgc3RhcnQgb2YgYSBsaW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2Vy
dF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhw
ZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVj
dGVkLnR4dAppbmRleCAzMTIwZmNiOGZhZGRkOWU1NDI2NzQ1ZGQ1NTZmOWQ0Mzc5YmZlN2I3Li44
MjU0Y2U2NzQyNDg2MjJlZTA3YjQ0YzdkOWY4YjZjZGY3NjFjZjYyIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5n
Qm94Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBh
Y3R1YWxCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6
IEZvbnRGYWNlCitGQUlMIFRlc3RpbmcgYWN0dWFsQm91bmRpbmdCb3ggZm9yIE9mZnNjcmVlbkNh
bnZhcyBhc3NlcnRfZXF1YWxzOiBNYXRoLmFicyhjdHgubWVhc3VyZVRleHQoJ0EnKS5hY3R1YWxC
b3VuZGluZ0JveERlc2NlbnQpID09PSAwIChnb3QgMVtudW1iZXJdLCBleHBlY3RlZCAwW251bWJl
cl0pIGV4cGVjdGVkIDAgYnV0IGdvdCAxCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGY0YTA4
NDAzYzFlYjhiNDFhYzRiYTU4MDYyYTQzNTI4NTc1NTU1YWIuLjkzOGM3OTkxMWQwNmVmNTE0ZDdi
MWM5YzZhNDU0MTUxYTFiZjU3YjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5t
ZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMg
QEAKIAotRkFJTCBUZXN0aW5nIHdpZHRoIGFkdmFuY2VzIGZvciBPZmZzY3JlZW5DYW52YXMgQ2Fu
J3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGluZyB3aWR0aCBhZHZhbmNlcyBm
b3IgT2Zmc2NyZWVuQ2FudmFzIHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdjdHgubWVhc3VyZVRleHQoJ0hlbGxvJykuYWR2YW5jZXNbMF0nKQogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNlbGluZXMud29ya2VyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0
ZWQudHh0CmluZGV4IDNkMjk5MGMxMWU5NmUxNzE4NTc4OTM0Y2YzMmNhYjYzNDQ3OTZjNzEuLmUx
ZDIyOTM4NGQxYTcwNjUwMmU1MTg0MjkyZjU3ZDgzNDRjNDkyN2MgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRlc3RpbmcgYmFzZWxpbmVzIGZvciBPZmZz
Y3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGluZyBi
YXNlbGluZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyBjdHgubWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNl
bGluZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY3R4Lm1lYXN1cmVUZXh0KCdBJykuZ2V0QmFz
ZWxpbmVzKCknLCAnY3R4Lm1lYXN1cmVUZXh0KCdBJykuZ2V0QmFzZWxpbmVzJyBpcyB1bmRlZmlu
ZWQpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmVtSGVpZ2h0
cy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1I
ZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggODVhNzJjZWExNzE5M2ZiZjEwOGViZjRi
NDYxM2ZlOWU5MjU5ZDBkMC4uYWNhZmFkZjg2MWMwN2ZhN2ZmZjUxZjMwMWZhN2UxOWZkZWJhZjFm
YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndv
cmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1I
ZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGlu
ZyBlbUhlaWdodHMgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250
RmFjZQorRkFJTCBUZXN0aW5nIGVtSGVpZ2h0cyBmb3IgT2Zmc2NyZWVuQ2FudmFzIGFzc2VydF9l
cXVhbHM6IGN0eC5tZWFzdXJlVGV4dCgnQScpLmVtSGVpZ2h0QXNjZW50ID09PSAzNy41IChnb3Qg
ODVbbnVtYmVyXSwgZXhwZWN0ZWQgMzcuNVtudW1iZXJdKSBleHBlY3RlZCAzNy41IGJ1dCBnb3Qg
ODUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5k
aW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3Vy
ZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAxNGM3ZGE0NGJkMGVk
Y2Y2ODFhZjdhZjNkYzZiNmU3ZmExNWE0NjUwLi4yNWJhY2UzZWZjZjE3ZmZlMjdiMDUzMTc5ZmRk
ZDBmZTkzMTIwM2NkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5m
b250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwz
ICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGZvbnRCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2Fu
dmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFRlc3RpbmcgZm9udEJvdW5k
aW5nQm94IGZvciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKaW5k
ZXggNWM3ODBjOWU0ZTUxODYxYjAxZGEzMGNmMTRkNzM4NTIzNDM5YTI5My4uOTQyZjkxNDEwNTU1
OTI3NzliODQzYWI2NmE1MTU2YzliMmYwN2QwNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0
CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRoZSB3aWR0aCBvZiBjaGFyYWN0ZXIgaXMgc2FtZSBh
cyBmb250IHVzZWQgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250
RmFjZQorUEFTUyBUaGUgd2lkdGggb2YgY2hhcmFjdGVyIGlzIHNhbWUgYXMgZm9udCB1c2VkIGZv
ciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNTAwZDcy
N2QzYjY3ZGM5ODZhZmVmNGI5ZDJmMmE3NDY5OWUxZDNlZS4uNjg3YmM0ZjM1ZmNmNGNjZDc0Nzc0
MTFhNzYyMzM0M2IzMGJkZTkzOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsMyBAQAogCi1GQUlMIFRoZSBlbXB0eSBzdHJpbmcgaGFzIHplcm8gd2lkdGggZm9yIE9mZnNj
cmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBUaGUgZW1wdHkg
c3RyaW5nIGhhcyB6ZXJvIHdpZHRoIGZvciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggOTNkNzExYzRiYjk0NzIyMDRjN2YxNDM1YzhiZTAwZmRjN2IyNmIy
YS4uMDUzNzI5MDBkNTY2Zjc5YjQ1NWMzZWE1NTI1MjA2NTI1ZmQyMDFjYSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3Jr
ZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMg
YXJlIGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgZm9yIE9mZnNj
cmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFy
YWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIGZv
ciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0X2VxdWFsczogY3R4Lm1lYXN1cmVUZXh0KCdBIFx4MDlc
eDBhXHgwY1x4MGQgIFx4MDlceDBhXHgwY1x4MGRCJykud2lkdGggPT09IDE1MCAoZ290IDY1MFtu
dW1iZXJdLCBleHBlY3RlZCAxNTBbbnVtYmVyXSkgZXhwZWN0ZWQgMTUwIGJ1dCBnb3QgNjUwCiAK
</data>
<flag name="commit-queue"
          id="446438"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426206</attachid>
            <date>2021-04-16 03:57:38 -0700</date>
            <delta_ts>2021-04-16 06:02:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210416115736.patch</filename>
            <type>text/plain</type>
            <size>92136</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzY4OTY4YmM3NWQ4NzVj
YWYyMDMwM2Q0Y2IzMzQ1ZGJhYTA2NmRjZC4uYTM3ZmUzYTA2ODgxMThjYTc0Zjk2MTkxYmJhNWQz
ZTgxNGNhNjc2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyMyBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUbyBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGlt
cGxlbWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJs
ZSBvbiBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFp
bGFibGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAg
ICBtYWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBy
ZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFj
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgUGFzcyBhIEZvbnRDYWNoZSB3aGVu
IGNhbGxpbmcgRm9udDo6Y3JlYXRlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU2V0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjplbnN1cmVMb2NhbEZvbnRGYWNl
c0ZvckZhbWlseVJlZ2lzdGVyZWQpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1
ZVBvb2wgYW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9y
RmFtaWx5UmVnaXN0ZXJlZC4KKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJjZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZVNvdXJjZTo6Q1NTRm9udEZhY2VTb3VyY2Up
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTRm9udEZhY2VTb3VyY2U6OmZvbnQpOgorICAgICAgICAg
IFVzZSBGb250TG9hZFJlcXVlc3Q6OmlzUGVuZGluZyBpbnN0ZWFkIG9mIG1ha2luZyBhc3N1bXB0
aW9ucyBhYm91dAorICAgICAgICAgIGl0cyBzdGF0ZSBvbiBjb25zdHJ1Y3Rpb24uIEFsc28gcGFz
cyB0aGUgRm9udENhY2hlIHNpbmdsZXRvbiB3aGVyZQorICAgICAgICAgIGFwcHJvcHJpYXRlIGlu
IGZvbnQgY3JlYXRpb24uCisKKyAgICAgICAgKiBjc3MvRm9udEZhY2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Rm9udEZhY2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpGb250RmFjZTo6
ZGlzcGxheSBjb25zdCk6CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmg6CisgICAgICAgICogY3Nz
L0ZvbnRGYWNlLmlkbDoKKyAgICAgICAgICBDb25zdHJ1Y3Qgd2l0aCBhIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQgaW5zdGVhZCBvZiBhIERvY3VtZW50IGFuZAorICAgICAgICAgIG1ha2UgYXZhaWxh
YmxlIGZvciBXb3JrZXJzLgorCisgICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udExvYWRSZXF1ZXN0Ojppc1dvcmtlckZvbnRMb2FkUmVxdWVz
dCBjb25zdCk6CisgICAgICAgICAgQWRkIGlzUGVuZGluZyBmdW5jdGlvbiBhbmQgbmV3IHR5cGUg
V29ya2VyRm9udExvYWRSZXF1ZXN0LgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkRm9udDo6Y3JlYXRlRm9udCk6CisgICAg
ICAgICAgUGFzcyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgICAg
SW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Rm9udCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Ojp2
ZXJ0aWNhbFJpZ2h0T3JpZW50YXRpb25Gb250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZv
bnQ6OnVwcmlnaHRPcmllbnRhdGlvbkZvbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9u
dDo6aW52aXNpYmxlRm9udCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpzbWFsbENh
cHNGb250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6Om5vU3ludGhlc2l6YWJsZUZl
YXR1cmVzRm9udCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250OjplbXBoYXNpc01hcmtG
b250IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmJyb2tlbklkZW9ncmFwaEZvbnQg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Y3JlYXRlU2NhbGVkRm9udCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpGb250OjpzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIg
Y29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAgICAgICAgQWRkIGEgRm9udENhY2hlIHBhcmFtZXRl
ciB0byBjb25zdHJ1Y3RvcnMgYW5kIHN0b3JlIGEgcmVmZXJlbmNlIHRvCisgICAgICAgICAgdXNl
IGluc3RlYWQgb2YgYXNzdW1pbmcgdGhlIEZvbnRDYWNoZSBzaW5nbGV0b24gaXMgb2sgdG8gdXNl
LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDYWNoZTo6Zm9udEZvclBsYXRmb3JtRGF0YSk6CisgICAgICAgICAgUGFz
cyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkZvbnRDYXNjYWRlRm9udHM6OnJlYWxpemVGYWxsYmFja1Jhbmdlc0F0KToKKyAgICAgICAgICBV
c2UgZmFtaWx5TmFtZXNEYXRhIGluc3RlYWQgb2YgZmFtaWx5TmFtZXMgdG8gbWFrZSB0aGlzIHNh
ZmUgdG8gdXNlCisgICAgICAgICAgaW4gYSBXb3JrZXIuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9Gb250VGFnZ2VkU2V0dGluZ3MuaDoKKyAgICAgICAgICBBZGQgbWlzc2luZyB3dGYv
SGFzaGVyLmggaW5jbHVkZS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0
L0ZvbnRDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVEZXJpdmF0aXZlRm9u
dCk6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpjcmVhdGVGb250V2l0aG91dFN5bnRoZXNpemFi
bGVGZWF0dXJlcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpwbGF0Zm9ybUNyZWF0
ZVNjYWxlZEZvbnQgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBl
L1NpbXBsZUZvbnREYXRhRnJlZVR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6cGxh
dGZvcm1DcmVhdGVTY2FsZWRGb250IGNvbnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy93aW4vU2ltcGxlRm9udERhdGFXaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6cGxh
dGZvcm1DcmVhdGVTY2FsZWRGb250IGNvbnN0KToKKyAgICAgICAgICBVcGRhdGUgdG8gYWNjZXB0
IGFuZCBwYXNzIG9uIHRoZSBGb250Q2FjaGUgcGFyYW1ldGVyIGluIGZvbnQKKyAgICAgICAgICBj
cmVhdGlvbiBmdW5jdGlvbnMuCisKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVx
dWVzdC5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0
OjpXb3JrZXJGb250TG9hZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExv
YWRSZXF1ZXN0Ojpsb2FkKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVz
dDo6ZW5zdXJlQ3VzdG9tRm9udERhdGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExv
YWRSZXF1ZXN0OjpjcmVhdGVGb250KToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6c2V0Q2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVx
dWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRM
b2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9u
dExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmFpbCk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250
TG9hZFJlcXVlc3QuaDogQWRkZWQuCisgICAgICAgICAgSW1wbGVtZW50IEZvbnRMb2FkUmVxdWVz
dCBmb3IgV29ya2Vycy4KKworICAgICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyR2xvYmFsU2NvcGU6OmZvbnRzKToKKyAgICAgICAg
KFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpmb250TG9hZFJlcXVlc3QpOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyR2xvYmFsU2NvcGU6OmJlZ2luTG9hZGluZ0ZvbnRTb29uKToKKyAgICAg
ICAgKiB3b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmg6CisgICAgICAgICAgSW1wbGVtZW50IFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQgZm9udC1sb2FkaW5nIHJlbGF0ZWQgZnVuY3Rpb25zLgorCisg
ICAgICAgICogd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGw6CisgICAgICAgICAgSW5jbHVk
ZSBGb250RmFjZVNvdXJjZS4KKwogMjAyMS0wNC0xNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBh
cHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIGEgbm8gbG9uZ2VyIG5lY2Vzc2FyeSBjYWxsT25N
YWluVGhyZWFkIGluIFdvcmtlcjo6Y3JlYXRlUlRDUnRwU2NyaXB0VHJhbnNmb3JtZXIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
aW5kZXggYTdmNzNkMTJlOTM5MTlmNzgxMzI2ZGI1NGRmMjdhZGNlZjU0MmQ5ZC4uMjVmN2NlMmFl
MzU2OGFjOTBlMWJkOTNiNmZmNjM3ODU0OGEyNTgyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBA
QAorMjAyMS0wNC0xNiAgQ2hyaXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAg
SW1wbGVtZW50IEZvbnRGYWNlIGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS83NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBGb250OjpjcmVhdGUgbm93IHJlcXVpcmVzIGEgRm9udENhY2hl
IHBhcmFtZXRlciwgdXBkYXRlIGFjY29yZGluZ2x5LgorCisgICAgICAgICogU2hhcmVkL1dlYkNv
cmVBcmd1bWVudENvZGVycy5jcHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8UmVmPEZv
bnQ+Pjo6ZGVjb2RlKToKKwogMjAyMS0wNC0xNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBs
ZS5jb20+CiAKICAgICAgICAgUHJvbW90ZSBXS1dlYlZpZXcgZGV2aWNlIG9yaWVudGF0aW9uIHBl
cm1pc3Npb24gZGVsZWdhdGUgdG8gQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFk
ZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQppbmRleCBlMTE1MDVjZGQw
ZjhlNDNiMjg3M2RiN2ExZDU4MWY4ZGY5ODRmZWIzLi40YzhhYmJkNThmYjNkMjIyMTg3MzY0MDQz
NGM3OWY0ZDJhZTZjN2QwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKQEAgLTE2NTUsNiArMTY1NSw3IEBA
IHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICB3b3JrZXJzL1Njcmlw
dEJ1ZmZlci5oCiAgICAgd29ya2Vycy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmgKICAgICB3
b3JrZXJzL1dvcmtlckRlYnVnZ2VyUHJveHkuaAorICAgIHdvcmtlcnMvV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmgKICAgICB3b3JrZXJzL1dvcmtlckxvYWRlclByb3h5LmgKICAgICB3b3JrZXJzL1dv
cmtlck9yV29ya2xldFRocmVhZC5oCiAgICAgd29ya2Vycy9Xb3JrZXJSdW5Mb29wLmgKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNl
cy50eHQKaW5kZXggZWNhY2RlYmMxMzU5YTljZWQ0MmZkZGRjNWEwYjViNWVjZmRjMjk1Yi4uZjll
ODUyNDljYzc5YzQ0MjdkMGUxNDZlN2UyZTlhNWFiYmY4NjU4YyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAg
LTI2NTMsNiArMjY1Myw3IEBAIHdvcmtlcnMvV29ya2VyLmNwcAogd29ya2Vycy9Xb3JrZXJBbmlt
YXRpb25Db250cm9sbGVyLmNwcAogd29ya2Vycy9Xb3JrZXJDb25zb2xlQ2xpZW50LmNwcAogd29y
a2Vycy9Xb3JrZXJFdmVudExvb3AuY3BwCit3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5j
cHAKIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCiB3b3JrZXJzL1dvcmtlckluc3BlY3Rv
clByb3h5LmNwcAogd29ya2Vycy9Xb3JrZXJMb2NhdGlvbi5jcHAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAyZDZhNDYxMDliZDU0
Y2IzYmM5YjllYTI3MTk0MTBmMmEzYTVhNGM5Li4zNDk2MWJiMWM2YzUxMmZmODJhYmRjODJkZWUz
ZmU2YjEzODc1YmM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC0zNDMyLDYgKzM0MzIsNyBAQAogCQlBN0NGQjNEMjBCN0VEMTBB
MDA3MEMzMkQgLyogRHJhZ0ltYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBN0NGQjNEMDBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTdEMjBGNjMx
MDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0QyMEY2MTEwN0Y0MDY5MDBBODAzOTIgLyog
SlNXZWJHTEFjdGl2ZUluZm8uaCAqLzsgfTsKIAkJQTdEMjBGNkQxMDdGNDM4QjAwQTgwMzkyIC8q
IFdlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTdEMjBGNkIxMDdGNDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oICov
OyB9OworCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0Q2QjM0
NzBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTdENkIzNDkwRjYxMTA0NTAw
Qjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNj
cmlwdExvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCUE3REJGOERFMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3REJGOERDMTI3
NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIuaCAqLzsgfTsKIAkJQTgwRDY3MDgw
RTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZUNHLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBENjcwNzBFOUU5
REVCMDBFNDIwRjAgLyogR3JhcGhpY3NDb250ZXh0UGxhdGZvcm1Qcml2YXRlQ0cuaCAqLzsgfTsK
QEAgLTEyODQ0LDYgKzEyODQ1LDggQEAKIAkJQTdEMjBGNjAxMDdGNDA2OTAwQTgwMzkyIC8qIEpT
V2ViR0xBY3RpdmVJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTV2ViR0xBY3RpdmVJbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdE
MjBGNjExMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUE3RDIwRjZCMTA3RjQzOEIwMEE4MDM5MiAvKiBXZWJHTEFjdGl2ZUlu
Zm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xBY3RpdmVJbmZvLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZCMzQ3MEY2MTEwNDUwMEZGOUZEMSAv
KiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV29ya2VyRm9udExvYWRSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE3RDZCMzQ4MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDcwRjYxMTA0NTAwQjc5
RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXb3JrZXJTY3JpcHRMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTdENkIzNDgwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2FkZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0RCRjhEQjEyNzY5MTlDMDA2QjYwMDggLyog
VGV4dENoZWNraW5nSGVscGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFRleHRDaGVja2luZ0hlbHBlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC0xOTQxNSw2ICsxOTQxOCw4IEBACiAJCQkJQTUyQjM0OUMxRkE0MTZGODAwOEI2MjQ2IC8qIFdv
cmtlckRlYnVnZ2VyUHJveHkuaCAqLywKIAkJCQk5QjBBQkNBMzIzNjc5QUNGMDBCNDUwODUgLyog
V29ya2VyRXZlbnRMb29wLmNwcCAqLywKIAkJCQk5QjBBQkNBNDIzNjc5QUNGMDBCNDUwODUgLyog
V29ya2VyRXZlbnRMb29wLmggKi8sCisJCQkJQTdENkIzNDgwRjYxMTA0NTAwRkY5RkQxIC8qIFdv
cmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgKi8sCisJCQkJQTdENkIzNDcwRjYxMTA0NTAwRkY5RkQx
IC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oICovLAogCQkJCTJFNDM0NjM2MEY1NDZBODIwMEIw
RjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5jcHAgKi8sCiAJCQkJMkU0MzQ2MzcwRjU0NkE4MjAw
QjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmggKi8sCiAJCQkJMkU0MzQ2MzgwRjU0NkE4MjAw
QjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmlkbCAqLywKQEAgLTM1ODIyLDYgKzM1ODI3LDcg
QEAKIAkJCQlBNUI4MUNDRTFGQUE0NERFMDAzN0QxRTYgLyogV29ya2VyRGVidWdnZXJBZ2VudC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTUyQjM0OUUxRkE0MTcwMzAwOEI2MjQ2IC8qIFdvcmtlckRl
YnVnZ2VyUHJveHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkxRTBEREM0MjMwQjQxRjEwMDE5RTFF
MyAvKiBXb3JrZXJET01EZWJ1Z2dlckFnZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBN0Q2QjM0
OTBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAq
LywKIAkJCQkyRTQzNDY0OTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUuaCBp
biBIZWFkZXJzICovLAogCQkJCTQxRDEyOUNFMUYzRDBFRjYwMEQxNUU0NyAvKiBXb3JrZXJHbG9i
YWxTY29wZUNhY2hlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkU0MzQ2NEIwRjU0NkE4MjAwQjBG
MUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlUHJveHkuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NGb250RmFjZS5jcHAKaW5kZXggMWFkODA0NzdhYmEwZDM2NjdkMGRlNTYzYzkyZGNlYmU4
YTllYzM5YS4uMzU0ZjMwNzA4ZjFhZDYwODYxYjMwZDIwMDZmNDNmMWQ1NWM5OTNkZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2UuY3BwCkBAIC0zOTYsNiArMzk2LDEzIEBAIERvY3VtZW50KiBD
U1NGb250RmFjZTo6ZG9jdW1lbnQoKQogICAgIHJldHVybiBudWxscHRyOwogfQogCitGb250Q2Fj
aGUmIENTU0ZvbnRGYWNlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKCkKK3sKKyAgICBp
ZiAobV93cmFwcGVyICYmIG1fd3JhcHBlci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAg
ICAgICByZXR1cm4gbV93cmFwcGVyLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmZvbnRDYWNo
ZSgpOworICAgIHJldHVybiBGb250Q2FjaGU6OnNpbmdsZXRvbigpOworfQorCiBib29sIENTU0Zv
bnRGYWNlOjpjb21wdXRlRmFpbHVyZVN0YXRlKCkgY29uc3QKIHsKICAgICBpZiAoc3RhdHVzKCkg
PT0gU3RhdHVzOjpGYWlsdXJlKQpAQCAtNjY5LDggKzY3Niw5IEBAIFJlZlB0cjxGb250PiBDU1NG
b250RmFjZTo6Zm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwgYm9v
bCBzeW50CiAgICAgICAgIHN3aXRjaCAoc291cmNlLT5zdGF0dXMoKSkgewogICAgICAgICBjYXNl
IENTU0ZvbnRGYWNlU291cmNlOjpTdGF0dXM6OlBlbmRpbmc6CiAgICAgICAgIGNhc2UgQ1NTRm9u
dEZhY2VTb3VyY2U6OlN0YXR1czo6TG9hZGluZzogeworICAgICAgICAgICAgYXV0byYgZm9udENh
Y2hlID0gZm9udENhY2hlRmFsbGJhY2tUb1NpbmdsZXRvbigpOwogICAgICAgICAgICAgRm9udDo6
VmlzaWJpbGl0eSB2aXNpYmlsaXR5ID0gV2ViQ29yZTo6dmlzaWJpbGl0eShzdGF0dXMoKSwgZm9u
dExvYWRUaW1pbmcoKSk7Ci0gICAgICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRDYWNo
ZTo6c2luZ2xldG9uKCkubGFzdFJlc29ydEZhbGxiYWNrRm9udChmb250RGVzY3JpcHRpb24pLT5w
bGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpMb2NhbCwgRm9udDo6SW50ZXJzdGl0aWFsOjpZ
ZXMsIHZpc2liaWxpdHkpOworICAgICAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShmb250Q2Fj
aGUubGFzdFJlc29ydEZhbGxiYWNrRm9udChmb250RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEo
KSwgZm9udENhY2hlLCBGb250OjpPcmlnaW46OkxvY2FsLCBGb250OjpJbnRlcnN0aXRpYWw6Olll
cywgdmlzaWJpbGl0eSk7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBDU1NGb250RmFjZVNvdXJj
ZTo6U3RhdHVzOjpTdWNjZXNzOgogICAgICAgICAgICAgaWYgKGF1dG8gcmVzdWx0ID0gc291cmNl
LT5mb250KGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCBt
X2ZlYXR1cmVTZXR0aW5ncywgbV9mb250U2VsZWN0aW9uQ2FwYWJpbGl0aWVzKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ZvbnRGYWNlLmgKaW5kZXggYjVlNDk3NWQxZDU5MjA5ZDg2MmJkODQ2MmRkN2NkZmZmNmY1
OWRiZC4uNWU4MmQyZWI3NzJiNGVhYjU1MTJhMjFmM2JjZDk4ZThjNTIxOWExNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlLmgKQEAgLTQ4LDYgKzQ4LDcgQEAgY2xhc3MgQ1NTVmFsdWU7CiBjbGFz
cyBDU1NWYWx1ZUxpc3Q7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250OworY2xh
c3MgRm9udENhY2hlOwogY2xhc3MgRm9udEZhY2U7CiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250
ZXh0OwogZW51bSBjbGFzcyBFeHRlcm5hbFJlc291cmNlRG93bmxvYWRQb2xpY3k7CkBAIC0xNzIs
NiArMTczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHRpbWVvdXRGaXJlZCgpOwogCiAgICAgRG9j
dW1lbnQqIGRvY3VtZW50KCk7CisgICAgRm9udENhY2hlJiBmb250Q2FjaGVGYWxsYmFja1RvU2lu
Z2xldG9uKCk7CiAKICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtX2ZhbWlsaWVzOwogICAgIFZl
Y3RvcjxVbmljb2RlUmFuZ2U+IG1fcmFuZ2VzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNl
dC5jcHAKaW5kZXggZWY4Mzk4ZjJlZDQxY2Y0ZDhiNjU2ZTZmMDE5NTY3ZGRkZDZiZTY1My4uMjYx
MGI4YmUwZDEwYWI4Y2FhYzM3ZDg2YTRlY2JkM2M4ZjRhM2MzMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTRm9udEZhY2VTZXQuY3BwCkBAIC0xMTAsNyArMTEwLDcgQEAgdm9pZCBDU1NGb250RmFjZVNl
dDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0IFN0cmluZyYg
ZmFtaWwKICAgICBBbGxvd1VzZXJJbnN0YWxsZWRGb250cyBhbGxvd1VzZXJJbnN0YWxsZWRGb250
cyA9IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXM7CiAgICAgaWYgKG1fb3duaW5nRm9udFNl
bGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCiAgICAgICAgIGFsbG93VXNlckluc3Rh
bGxlZEZvbnRzID0gbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KS0+c2V0dGluZ3NWYWx1ZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250cyA/IEFsbG93
VXNlckluc3RhbGxlZEZvbnRzOjpZZXMgOiBBbGxvd1VzZXJJbnN0YWxsZWRGb250czo6Tm87Ci0g
ICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXM+IGNhcGFiaWxpdGllcyA9IEZvbnRD
YWNoZTo6c2luZ2xldG9uKCkuZ2V0Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllc0luRmFtaWx5KGZh
bWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKKyAgICBWZWN0b3I8Rm9udFNlbGVj
dGlvbkNhcGFiaWxpdGllcz4gY2FwYWJpbGl0aWVzID0gbV9vd25pbmdGb250U2VsZWN0b3ItPnNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+Zm9udENhY2hlKCkuZ2V0Rm9udFNlbGVjdGlvbkNhcGFi
aWxpdGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKICAg
ICBpZiAoY2FwYWJpbGl0aWVzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xMTks
NyArMTE5LDcgQEAgdm9pZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JG
YW1pbHlSZWdpc3RlcmVkKGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICAgICAgUmVmPENTU0ZvbnRG
YWNlPiBmYWNlID0gQ1NTRm9udEZhY2U6OmNyZWF0ZShtX293bmluZ0ZvbnRTZWxlY3Rvci5nZXQo
KSwgbnVsbHB0ciwgbnVsbHB0ciwgdHJ1ZSk7CiAgICAgICAgIAogICAgICAgICBSZWY8Q1NTVmFs
dWVMaXN0PiBmYW1pbHlMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNlcGFyYXRlZCgp
OwotICAgICAgICBmYW1pbHlMaXN0LT5hcHBlbmQoQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5j
cmVhdGVGb250RmFtaWx5VmFsdWUoZmFtaWx5TmFtZSkpOworICAgICAgICBmYW1pbHlMaXN0LT5h
cHBlbmQobV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+Y3Nz
VmFsdWVQb29sKCkuY3JlYXRlRm9udEZhbWlseVZhbHVlKGZhbWlseU5hbWUpKTsKICAgICAgICAg
ZmFjZS0+c2V0RmFtaWxpZXMoZmFtaWx5TGlzdC5nZXQoKSk7CiAgICAgICAgIGZhY2UtPnNldEZv
bnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMoaXRlbSk7CiAgICAgICAgIGZhY2UtPmFkb3B0U291cmNl
KG1ha2VVbmlxdWU8Q1NTRm9udEZhY2VTb3VyY2U+KGZhY2UuZ2V0KCksIGZhbWlseU5hbWUpKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwCmluZGV4IGI2N2U4ZTY2NmNm
OWJjYTk1OGEyM2VkMzcwNjJjODY0NGM2ZmQyMWUuLmFhMGEwN2ZjMGRhZjMyMjFiZGNmNDE0NmYw
YjBjOTNiMTE3YzkyN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFj
ZVNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNw
cApAQCAtODEsNyArODEsNyBAQCBDU1NGb250RmFjZVNvdXJjZTo6Q1NTRm9udEZhY2VTb3VyY2Uo
Q1NTRm9udEZhY2UmIG93bmVyLCBjb25zdCBTdHJpbmcmIGZhbWlseU5hbQogICAgIC8vIFRoaXMg
bWF5IHN5bmNocm9ub3VzbHkgY2FsbCBmb250TG9hZGVkKCkuCiAgICAgbV9mb250UmVxdWVzdC0+
c2V0Q2xpZW50KHRoaXMpOwogCi0gICAgaWYgKHN0YXR1cygpID09IFN0YXR1czo6UGVuZGluZyAm
JiAhbV9mb250UmVxdWVzdC0+aXNMb2FkaW5nKCkpIHsKKyAgICBpZiAoc3RhdHVzKCkgPT0gU3Rh
dHVzOjpQZW5kaW5nICYmICFtX2ZvbnRSZXF1ZXN0LT5pc1BlbmRpbmcoKSkgewogICAgICAgICBz
ZXRTdGF0dXMoU3RhdHVzOjpMb2FkaW5nKTsKICAgICAgICAgaWYgKCFzaG91bGRJZ25vcmVGb250
TG9hZENvbXBsZXRpb25zKCkpIHsKICAgICAgICAgICAgIGlmIChtX2ZvbnRSZXF1ZXN0LT5lcnJv
ck9jY3VycmVkKCkpCkBAIC0yMDMsNyArMjAzLDcgQEAgUmVmUHRyPEZvbnQ+IENTU0ZvbnRGYWNl
U291cmNlOjpmb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBib28K
ICAgICAgICAgaWYgKG1faW1tZWRpYXRlU291cmNlKSB7CiAgICAgICAgICAgICBpZiAoIW1faW1t
ZWRpYXRlRm9udEN1c3RvbVBsYXRmb3JtRGF0YSkKICAgICAgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLSAgICAgICAgICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxhdGZv
cm1EYXRhRnJvbUN1c3RvbURhdGEoKm1faW1tZWRpYXRlRm9udEN1c3RvbVBsYXRmb3JtRGF0YSwg
Zm9udERlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNJdGFsaWMsIGZvbnRGYWNl
RmVhdHVyZXMsIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKSwgRm9udDo6T3JpZ2luOjpSZW1vdGUpOwor
ICAgICAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShDYWNoZWRGb250OjpwbGF0Zm9ybURhdGFG
cm9tQ3VzdG9tRGF0YSgqbV9pbW1lZGlhdGVGb250Q3VzdG9tUGxhdGZvcm1EYXRhLCBmb250RGVz
Y3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgZm9udEZhY2VGZWF0dXJl
cywgZm9udEZhY2VDYXBhYmlsaXRpZXMpLCBGb250Q2FjaGU6OnNpbmdsZXRvbigpLCBGb250OjpP
cmlnaW46OlJlbW90ZSk7CiAgICAgICAgIH0KIAogICAgICAgICAvLyBXZSdyZSBsb2NhbC4gSnVz
dCByZXR1cm4gYSBGb250IGZyb20gdGhlIG5vcm1hbCBjYWNoZS4KQEAgLTIyOCw3ICsyMjgsNyBA
QCBSZWZQdHI8Rm9udD4gQ1NTRm9udEZhY2VTb3VyY2U6OmZvbnQoY29uc3QgRm9udERlc2NyaXB0
aW9uJiBmb250RGVzY3JpcHRpb24sIGJvbwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBp
ZiAoIW1faW5Eb2N1bWVudEN1c3RvbVBsYXRmb3JtRGF0YSkKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7Ci0gICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShtX2luRG9jdW1lbnRDdXN0b21QbGF0Zm9ybURh
dGEtPmZvbnRQbGF0Zm9ybURhdGEoZm9udERlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50
aGV0aWNJdGFsaWMsIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKSwgRm9u
dDo6T3JpZ2luOjpSZW1vdGUpOworICAgIHJldHVybiBGb250OjpjcmVhdGUobV9pbkRvY3VtZW50
Q3VzdG9tUGxhdGZvcm1EYXRhLT5mb250UGxhdGZvcm1EYXRhKGZvbnREZXNjcmlwdGlvbiwgc3lu
dGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNh
cGFiaWxpdGllcyksIEZvbnRDYWNoZTo6c2luZ2xldG9uKCksIEZvbnQ6Ok9yaWdpbjo6UmVtb3Rl
KTsKIH0KIAogYm9vbCBDU1NGb250RmFjZVNvdXJjZTo6aXNTVkdGb250RmFjZVNvdXJjZSgpIGNv
bnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAppbmRleCAxOWQ5YjQ0YWNkNDg1YjMyMzE5Y2U5NTlm
NGFkMmQ2NzExNTg0ZjhlLi5lYmU5MWIyYzhlZjJkMzg5NmQzOWVkNTZjMWYyMWUyYjU2NTU0NTVl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAKQEAgLTYyLDE0ICs2MiwxNCBAQCB2b2lkIEZvbnRG
YWNlOjpzZXRFcnJvclN0YXRlKCkKICAgICBtX2JhY2tpbmctPnNldEVycm9yU3RhdGUoKTsKIH0K
IAotUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29u
c3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmIHNvdXJjZSwgY29uc3QgRGVzY3JpcHRvcnMmIGRl
c2NyaXB0b3JzKQorUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2Us
IGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlwdG9ycykKIHsKLSAgICBhdXRvIHJlc3VsdCA9IGFk
b3B0UmVmKCpuZXcgRm9udEZhY2UoZG9jdW1lbnQuZm9udFNlbGVjdG9yKCkpKTsKKyAgICBhdXRv
IHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9udEZhY2UoKmNvbnRleHQuY3NzRm9udFNlbGVjdG9y
KCkpKTsKICAgICByZXN1bHQtPnN1c3BlbmRJZk5lZWRlZCgpOwogCiAgICAgYm9vbCBkYXRhUmVx
dWlyZXNBc3luY2hyb25vdXNMb2FkaW5nID0gdHJ1ZTsKIAotICAgIGF1dG8gc2V0RmFtaWx5UmVz
dWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoZG9jdW1lbnQsIGZhbWlseSk7CisgICAgYXV0byBzZXRG
YW1pbHlSZXN1bHQgPSByZXN1bHQtPnNldEZhbWlseShjb250ZXh0LCBmYW1pbHkpOwogICAgIGlm
IChzZXRGYW1pbHlSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRF
cnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CkBAIC03NywxMCArNzcsMTAgQEAg
UmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29uc3Qg
U3RyaW5nJiBmYW1pbHksIFNvdXJjZSYKIAogICAgIGF1dG8gc291cmNlQ29udmVyc2lvblJlc3Vs
dCA9IFdURjo6c3dpdGNoT24oc291cmNlLAogICAgICAgICBbJl0gKFN0cmluZyYgc3RyaW5nKSAt
PiBFeGNlcHRpb25Pcjx2b2lkPiB7Ci0gICAgICAgICAgICBhdXRvIHZhbHVlID0gQ1NTUHJvcGVy
dHlQYXJzZXJXb3JrZXJTYWZlOjpwYXJzZUZvbnRGYWNlU3JjKHN0cmluZywgQ1NTUGFyc2VyQ29u
dGV4dChkb2N1bWVudCkpOworICAgICAgICAgICAgYXV0byB2YWx1ZSA9IENTU1Byb3BlcnR5UGFy
c2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFjZVNyYyhzdHJpbmcsIGlzPERvY3VtZW50Pihjb250
ZXh0KSA/IENTU1BhcnNlckNvbnRleHQoZG93bmNhc3Q8RG9jdW1lbnQ+KGNvbnRleHQpKSA6IEhU
TUxTdGFuZGFyZE1vZGUpOwogICAgICAgICAgICAgaWYgKCF2YWx1ZSkKICAgICAgICAgICAgICAg
ICByZXR1cm4gRXhjZXB0aW9uIHsgU3ludGF4RXJyb3IgfTsKLSAgICAgICAgICAgIENTU0ZvbnRG
YWNlOjphcHBlbmRTb3VyY2VzKHJlc3VsdC0+YmFja2luZygpLCAqdmFsdWUsICZkb2N1bWVudCwg
ZmFsc2UpOworICAgICAgICAgICAgQ1NTRm9udEZhY2U6OmFwcGVuZFNvdXJjZXMocmVzdWx0LT5i
YWNraW5nKCksICp2YWx1ZSwgJmNvbnRleHQsIGZhbHNlKTsKICAgICAgICAgICAgIHJldHVybiB7
IH07CiAgICAgICAgIH0sCiAgICAgICAgIFsmXSAoUmVmUHRyPEFycmF5QnVmZmVyVmlldz4mIGFy
cmF5QnVmZmVyVmlldykgLT4gRXhjZXB0aW9uT3I8dm9pZD4gewpAQCAtMTAxLDMyICsxMDEsMzIg
QEAgUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29u
c3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYKICAgICB9CiAKICAgICAvLyBUaGVzZSB0ZXJuYXJp
ZXMgbWF0Y2ggdGhlIGRlZmF1bHQgc3RyaW5ncyBpbnNpZGUgdGhlIEZvbnRGYWNlRGVzY3JpcHRv
cnMgZGljdGlvbmFyeSBpbnNpZGUgRm9udEZhY2UuaWRsLgotICAgIGF1dG8gc2V0U3R5bGVSZXN1
bHQgPSByZXN1bHQtPnNldFN0eWxlKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5zdHlsZS5pc0VtcHR5
KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3R5bGUpOworICAgIGF1dG8gc2V0U3R5bGVS
ZXN1bHQgPSByZXN1bHQtPnNldFN0eWxlKGNvbnRleHQsIGRlc2NyaXB0b3JzLnN0eWxlLmlzRW1w
dHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy5zdHlsZSk7CiAgICAgaWYgKHNldFN0eWxl
UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgp
OwogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldFdlaWdodFJlc3Vs
dCA9IHJlc3VsdC0+c2V0V2VpZ2h0KGRvY3VtZW50LCBkZXNjcmlwdG9ycy53ZWlnaHQuaXNFbXB0
eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLndlaWdodCk7CisgICAgYXV0byBzZXRXZWln
aHRSZXN1bHQgPSByZXN1bHQtPnNldFdlaWdodChjb250ZXh0LCBkZXNjcmlwdG9ycy53ZWlnaHQu
aXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLndlaWdodCk7CiAgICAgaWYgKHNl
dFdlaWdodFJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9y
U3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXRTdHJl
dGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJldGNoKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5zdHJl
dGNoLmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy5zdHJldGNoKTsKKyAgICBh
dXRvIHNldFN0cmV0Y2hSZXN1bHQgPSByZXN1bHQtPnNldFN0cmV0Y2goY29udGV4dCwgZGVzY3Jp
cHRvcnMuc3RyZXRjaC5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3RyZXRj
aCk7CiAgICAgaWYgKHNldFN0cmV0Y2hSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAg
cmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQot
ICAgIGF1dG8gc2V0VW5pY29kZVJhbmdlUmVzdWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2Uo
ZG9jdW1lbnQsIGRlc2NyaXB0b3JzLnVuaWNvZGVSYW5nZS5pc0VtcHR5KCkgPyAiVSswLTEwRkZG
RiJfcyA6IGRlc2NyaXB0b3JzLnVuaWNvZGVSYW5nZSk7CisgICAgYXV0byBzZXRVbmljb2RlUmFu
Z2VSZXN1bHQgPSByZXN1bHQtPnNldFVuaWNvZGVSYW5nZShjb250ZXh0LCBkZXNjcmlwdG9ycy51
bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUrMC0xMEZGRkYiX3MgOiBkZXNjcmlwdG9ycy51bmlj
b2RlUmFuZ2UpOwogICAgIGlmIChzZXRVbmljb2RlUmFuZ2VSZXN1bHQuaGFzRXhjZXB0aW9uKCkp
IHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1
bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0RmVhdHVyZVNldHRpbmdzUmVzdWx0ID0gcmVzdWx0LT5z
ZXRGZWF0dXJlU2V0dGluZ3MoZG9jdW1lbnQsIGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncy5p
c0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuZmVhdHVyZVNldHRpbmdzKTsKKyAg
ICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jlc3VsdCA9IHJlc3VsdC0+c2V0RmVhdHVyZVNldHRp
bmdzKGNvbnRleHQsIGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncy5pc0VtcHR5KCkgPyAibm9y
bWFsIl9zIDogZGVzY3JpcHRvcnMuZmVhdHVyZVNldHRpbmdzKTsKICAgICBpZiAoc2V0RmVhdHVy
ZVNldHRpbmdzUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJy
b3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldERp
c3BsYXlSZXN1bHQgPSByZXN1bHQtPnNldERpc3BsYXkoZG9jdW1lbnQsIGRlc2NyaXB0b3JzLmRp
c3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3MgOiBkZXNjcmlwdG9ycy5kaXNwbGF5KTsKKyAgICBh
dXRvIHNldERpc3BsYXlSZXN1bHQgPSByZXN1bHQtPnNldERpc3BsYXkoY29udGV4dCwgZGVzY3Jp
cHRvcnMuZGlzcGxheS5pc0VtcHR5KCkgPyAiYXV0byJfcyA6IGRlc2NyaXB0b3JzLmRpc3BsYXkp
OwogICAgIGlmIChzZXREaXNwbGF5UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJl
c3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMzk5LDEz
ICszOTksMTMgQEAgU3RyaW5nIEZvbnRGYWNlOjpmZWF0dXJlU2V0dGluZ3MoKSBjb25zdAogICAg
IHJldHVybiBsaXN0LT5jc3NUZXh0KCk7CiB9CiAKLVN0cmluZyBGb250RmFjZTo6ZGlzcGxheSgp
IGNvbnN0CitTdHJpbmcgRm9udEZhY2U6OmRpc3BsYXkoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYg
Y29udGV4dCkgY29uc3QKIHsKICAgICBtX2JhY2tpbmctPnVwZGF0ZVN0eWxlSWZOZWVkZWQoKTsK
ICAgICBjb25zdCBhdXRvJiBsb2FkaW5nQmVoYXZpb3JXcmFwcGVkID0gbV9iYWNraW5nLT5sb2Fk
aW5nQmVoYXZpb3IoKTsKICAgICBpZiAoIWxvYWRpbmdCZWhhdmlvcldyYXBwZWQuaGFzVmFsdWUo
KSkKICAgICAgICAgcmV0dXJuICJhdXRvIl9zOwotICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNp
bmdsZXRvbigpLmNyZWF0ZVZhbHVlKGxvYWRpbmdCZWhhdmlvcldyYXBwZWQudmFsdWUoKSktPmNz
c1RleHQoKTsKKyAgICByZXR1cm4gY29udGV4dC5jc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShs
b2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVlKCkpLT5jc3NUZXh0KCk7CiB9CiAKIGF1dG8gRm9u
dEZhY2U6OnN0YXR1cygpIGNvbnN0IC0+IExvYWRTdGF0dXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Gb250RmFjZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKaW5k
ZXggZjFiNTVhODExMmI4MDQxYzEwNDY0MmM0MGU2NmJkMzZkYTAzYzcyYS4uOTc3ZjNhOTlhYzRh
MTc2YzA2NjMwZTdjN2QwYWFkZDk1MDFiNWQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0ZvbnRGYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKQEAgLTU0
LDcgKzU0LDcgQEAgcHVibGljOgogICAgIH07CiAgICAgCiAgICAgdXNpbmcgU291cmNlID0gVmFy
aWFudDxTdHJpbmcsIFJlZlB0cjxKU0M6OkFycmF5QnVmZmVyPiwgUmVmUHRyPEpTQzo6QXJyYXlC
dWZmZXJWaWV3Pj47Ci0gICAgc3RhdGljIFJlZjxGb250RmFjZT4gY3JlYXRlKERvY3VtZW50Jiwg
Y29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmLCBjb25zdCBEZXNjcmlwdG9ycyYpOworICAg
IHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgY29u
c3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmLCBjb25zdCBEZXNjcmlwdG9ycyYpOwogICAgIHN0
YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ1NTRm9u
dEZhY2UmKTsKICAgICB2aXJ0dWFsIH5Gb250RmFjZSgpOwogCkBAIC03Miw3ICs3Miw3IEBAIHB1
YmxpYzoKICAgICBTdHJpbmcgc3RyZXRjaCgpIGNvbnN0OwogICAgIFN0cmluZyB1bmljb2RlUmFu
Z2UoKSBjb25zdDsKICAgICBTdHJpbmcgZmVhdHVyZVNldHRpbmdzKCkgY29uc3Q7Ci0gICAgU3Ry
aW5nIGRpc3BsYXkoKSBjb25zdDsKKyAgICBTdHJpbmcgZGlzcGxheShTY3JpcHRFeGVjdXRpb25D
b250ZXh0JikgY29uc3Q7CiAKICAgICBlbnVtIGNsYXNzIExvYWRTdGF0dXMgeyBVbmxvYWRlZCwg
TG9hZGluZywgTG9hZGVkLCBFcnJvciB9OwogICAgIExvYWRTdGF0dXMgc3RhdHVzKCkgY29uc3Q7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRsIGIvU291cmNlL1dl
YkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAppbmRleCAzMzQ2N2FmYjNiMTg0NDM1OTlmMWM2YWRiOWJk
NGU2Y2E0NzU3MzkyLi40MWYzNTcyMzAxZmEzNGFmMTk3MTE2NTk5OTlkYmNlN2VhNTA3MzkxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKQEAgLTQzLDkgKzQzLDkgQEAgZGljdGlvbmFyeSBGb250
RmFjZURlc2NyaXB0b3JzIHsKIAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwKLSAgICBFeHBvc2Vk
PVdpbmRvdworICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpCiBdIGludGVyZmFjZSBGb250RmFj
ZSB7Ci0gICAgW0NhbGxXaXRoPURvY3VtZW50XSBjb25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5
LCAoRE9NU3RyaW5nIG9yIEJpbmFyeURhdGEpIHNvdXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNj
cmlwdG9ycyBkZXNjcmlwdG9ycyk7CisgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHRdIGNvbnN0cnVjdG9yKERPTVN0cmluZyBmYW1pbHksIChET01TdHJpbmcgb3IgQmluYXJ5RGF0
YSkgc291cmNlLCBvcHRpb25hbCBGb250RmFjZURlc2NyaXB0b3JzIGRlc2NyaXB0b3JzKTsKIAog
ICAgIFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9N
U3RyaW5nIGZhbWlseTsKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dF0gYXR0cmlidXRlIERPTVN0cmluZyBzdHlsZTsKQEAgLTUzLDcgKzUzLDcgQEAgZGljdGlvbmFy
eSBGb250RmFjZURlc2NyaXB0b3JzIHsKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0
aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBzdHJldGNoOwogICAgIFtTZXR0ZXJDYWxs
V2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHVuaWNvZGVS
YW5nZTsKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmli
dXRlIERPTVN0cmluZyBmZWF0dXJlU2V0dGluZ3M7Ci0gICAgW1NldHRlckNhbGxXaXRoPVNjcmlw
dEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgZGlzcGxheTsKKyAgICBbQ2Fs
bFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBkaXNwbGF5
OwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEZvbnRGYWNlTG9hZFN0YXR1cyBzdGF0dXM7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaAppbmRleCBlMzM0NWE4MmU0NjI4
NWExOWI1NGNkZGFmZjYyMjE4YzA2NWVlMjFmLi41ZGZhYzgyY2I1N2RhNzdmM2IyMDg3MGJlNjBj
M2M0OWIzNDYxZjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRS
ZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCkBA
IC0zNSw5ICszNSw2IEBAIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnRMb2FkUmVx
dWVzdDsKIHN0cnVjdCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzOwogCi10ZW1w
bGF0ZSA8dHlwZW5hbWUgVD4gY2xhc3MgRm9udFRhZ2dlZFNldHRpbmdzOwotdXNpbmcgRm9udEZl
YXR1cmVTZXR0aW5ncyA9IEZvbnRUYWdnZWRTZXR0aW5nczxpbnQ+OwotCiBjbGFzcyBGb250TG9h
ZFJlcXVlc3RDbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgfkZvbnRMb2FkUmVxdWVzdENs
aWVudCgpID0gZGVmYXVsdDsKQEAgLTQ5LDYgKzQ2LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
fkZvbnRMb2FkUmVxdWVzdCgpID0gZGVmYXVsdDsKIAogICAgIHZpcnR1YWwgY29uc3QgVVJMJiB1
cmwoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBib29sIGlzUGVuZGluZygpIGNvbnN0ID0gMDsK
ICAgICB2aXJ0dWFsIGJvb2wgaXNMb2FkaW5nKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgYm9v
bCBlcnJvck9jY3VycmVkKCkgY29uc3QgPSAwOwogCkBAIC01OCw2ICs1Niw3IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2xpZW50KEZvbnRMb2FkUmVxdWVzdENsaWVudCopID0gMDsK
IAogICAgIHZpcnR1YWwgYm9vbCBpc0NhY2hlZEZvbnRMb2FkUmVxdWVzdCgpIGNvbnN0IHsgcmV0
dXJuIGZhbHNlOyB9CisgICAgdmlydHVhbCBib29sIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkg
Y29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcAppbmRleCA5NzQxOWVlZTc0
MTlmODBhYWRhZmU4MjQ1NTkwZGZlZDY0ZTk3NzJlLi42MWJmY2MyZmY4NjJlMzczNWVjYzdlOGU1
OWY4ZTMxODAzZWQyNzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkRm9udC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiQ2FjaGVkRm9udENsaWVudC5oIgog
I2luY2x1ZGUgIkNhY2hlZFJlc291cmNlQ2xpZW50V2Fsa2VyLmgiCiAjaW5jbHVkZSAiQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuaCIKKyNpbmNsdWRlICJGb250Q2FjaGUuaCIKICNpbmNsdWRlICJGb250
Q3VzdG9tUGxhdGZvcm1EYXRhLmgiCiAjaW5jbHVkZSAiRm9udERlc2NyaXB0aW9uLmgiCiAjaW5j
bHVkZSAiRm9udFBsYXRmb3JtRGF0YS5oIgpAQCAtMTIzLDcgKzEyNCw3IEBAIHN0ZDo6dW5pcXVl
X3B0cjxGb250Q3VzdG9tUGxhdGZvcm1EYXRhPiBDYWNoZWRGb250OjpjcmVhdGVDdXN0b21Gb250
RGF0YShTaGFyZWRCCiAKIFJlZlB0cjxGb250PiBDYWNoZWRGb250OjpjcmVhdGVGb250KGNvbnN0
IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBjb25zdCBBdG9tU3RyaW5nJiwgYm9v
bCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgY29uc3QgRm9udEZlYXR1cmVT
ZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxp
dGllcyBmb250RmFjZUNhcGFiaWxpdGllcykKIHsKLSAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHBs
YXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwg
c3ludGhldGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNhcGFiaWxpdGllcyks
IEZvbnQ6Ok9yaWdpbjo6UmVtb3RlKTsKKyAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHBsYXRmb3Jt
RGF0YUZyb21DdXN0b21EYXRhKGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhl
dGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNhcGFiaWxpdGllcyksIEZvbnRD
YWNoZTo6c2luZ2xldG9uKCksIEZvbnQ6Ok9yaWdpbjo6UmVtb3RlKTsKIH0KIAogRm9udFBsYXRm
b3JtRGF0YSBDYWNoZWRGb250OjpwbGF0Zm9ybURhdGFGcm9tQ3VzdG9tRGF0YShjb25zdCBGb250
RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwgYm9vbCBib2xkLCBib29sIGl0YWxpYywgY29u
c3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywgRm9udFNlbGVjdGlvblNw
ZWNpZmllZENhcGFiaWxpdGllcyBmb250RmFjZUNhcGFiaWxpdGllcykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaAppbmRleCA0MDUz
NTdhOGU1ZDBiN2YwYjZhMWFkZTRkY2EwODhhMWIyNzlmMTcwLi43Mzc2YzU4OGY4MDgxYzBhZWEw
MDNmMzA2ZjI3YjQwYTBlMDg2NzA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oCkBAIC01MCw2ICs1MCw3IEBAIHB1YmxpYzoK
IAogcHJpdmF0ZToKICAgICBjb25zdCBVUkwmIHVybCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1f
Zm9udC0+dXJsKCk7IH0KKyAgICBib29sIGlzUGVuZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IG1fZm9udC0+c3RhdHVzKCkgPT0gQ2FjaGVkUmVzb3VyY2U6OlN0YXR1czo6UGVuZGluZzsgfQog
ICAgIGJvb2wgaXNMb2FkaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT5pc0xvYWRp
bmcoKTsgfQogICAgIGJvb2wgZXJyb3JPY2N1cnJlZCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1f
Zm9udC0+ZXJyb3JPY2N1cnJlZCgpOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRm9udC5jcHAKaW5kZXggYjExYTg3NjllODYwYjkzYjA5ZDczMjQxZTViZWJkNTgwOGI2MmI4
Zi4uOTIyODJiMDAxNTc0ODE3YmQ2ZjU0OThjMDZmOGY3NzRlZGIxNTkzMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5jcHAKQEAgLTU4LDE3ICs1OCwxOCBAQCBjb25z
dCBmbG9hdCBlbXBoYXNpc01hcmtGb250U2l6ZU11bHRpcGxpZXIgPSAwLjVmOwogCiBERUZJTkVf
QUxMT0NBVE9SX1dJVEhfSEVBUF9JREVOVElGSUVSKEZvbnQpOwogCi1SZWY8Rm9udD4gRm9udDo6
Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZhY2VEYXRhLCBGb250OjpPcmlnaW4gb3Jp
Z2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0
YWxpYykKK1JlZjxGb250PiBGb250OjpjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFj
ZURhdGEsIEZvbnRDYWNoZSYgZm9udENhY2hlLCBGb250OjpPcmlnaW4gb3JpZ2luLCBmbG9hdCBm
b250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYykKIHsKICAg
ICBib29sIHdyYXBwaW5nOwogICAgIGF1dG8gY3VzdG9tRm9udERhdGEgPSBDYWNoZWRGb250Ojpj
cmVhdGVDdXN0b21Gb250RGF0YShmb250RmFjZURhdGEuZ2V0KCksIHsgfSwgd3JhcHBpbmcpOwog
ICAgIEZvbnREZXNjcmlwdGlvbiBkZXNjcmlwdGlvbjsKICAgICBkZXNjcmlwdGlvbi5zZXRDb21w
dXRlZFNpemUoZm9udFNpemUpOwotICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6
cGxhdGZvcm1EYXRhRnJvbUN1c3RvbURhdGEoKmN1c3RvbUZvbnREYXRhLCBkZXNjcmlwdGlvbiwg
c3ludGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCB7IH0sIHsgfSksIG9yaWdpbik7CisgICAg
cmV0dXJuIEZvbnQ6OmNyZWF0ZShDYWNoZWRGb250OjpwbGF0Zm9ybURhdGFGcm9tQ3VzdG9tRGF0
YSgqY3VzdG9tRm9udERhdGEsIGRlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNJ
dGFsaWMsIHsgfSwgeyB9KSwgZm9udENhY2hlLCBvcmlnaW4pOwogfQogCi1Gb250OjpGb250KGNv
bnN0IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSwgT3JpZ2luIG9yaWdpbiwgSW50ZXJz
dGl0aWFsIGludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSB2aXNpYmlsaXR5LCBPcmllbnRhdGlvbkZh
bGxiYWNrIG9yaWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jlc291cmNlSWRl
bnRpZmllcj4gcmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKQorRm9udDo6Rm9udChjb25zdCBG
b250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIEZvbnRDYWNoZSYgZm9udENhY2hlLCBPcmln
aW4gb3JpZ2luLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5IHZpc2liaWxp
dHksIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVu
ZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIpCiAg
ICAgOiBtX3BsYXRmb3JtRGF0YShwbGF0Zm9ybURhdGEpCisgICAgLCBtX2ZvbnRDYWNoZShtYWtl
UmVmKGZvbnRDYWNoZSkpCiAgICAgLCBtX3JlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcihyZW5k
ZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIpCiAgICAgLCBtX29yaWdpbihvcmlnaW4pCiAgICAgLCBt
X3Zpc2liaWxpdHkodmlzaWJpbGl0eSkKQEAgLTg4LDcgKzg5LDcgQEAgRm9udDo6Rm9udChjb25z
dCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3Rp
dGlhbCBpbnQKICAgICBwbGF0Zm9ybUNoYXJXaWR0aEluaXQoKTsKICNpZiBFTkFCTEUoT1BFTlRZ
UEVfVkVSVElDQUwpCiAgICAgaWYgKHBsYXRmb3JtRGF0YS5vcmllbnRhdGlvbigpID09IEZvbnRP
cmllbnRhdGlvbjo6VmVydGljYWwgJiYgb3JpZW50YXRpb25GYWxsYmFjayA9PSBPcmllbnRhdGlv
bkZhbGxiYWNrOjpObykgewotICAgICAgICBtX3ZlcnRpY2FsRGF0YSA9IEZvbnRDYWNoZTo6c2lu
Z2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7CisgICAgICAgIG1fdmVydGljYWxE
YXRhID0gbV9mb250Q2FjaGUtPnZlcnRpY2FsRGF0YShwbGF0Zm9ybURhdGEpOwogICAgICAgICBt
X2hhc1ZlcnRpY2FsR2x5cGhzID0gbV92ZXJ0aWNhbERhdGEuZ2V0KCkgJiYgbV92ZXJ0aWNhbERh
dGEtPmhhc1ZlcnRpY2FsTWV0cmljcygpOwogICAgIH0KICNlbmRpZgpAQCAtNDI2LDcgKzQyNyw3
IEBAIGNvbnN0IEZvbnQmIEZvbnQ6OnZlcnRpY2FsUmlnaHRPcmllbnRhdGlvbkZvbnQoKSBjb25z
dAogICAgIERlcml2ZWRGb250cyYgZGVyaXZlZEZvbnREYXRhID0gZW5zdXJlRGVyaXZlZEZvbnRE
YXRhKCk7CiAgICAgaWYgKCFkZXJpdmVkRm9udERhdGEudmVydGljYWxSaWdodE9yaWVudGF0aW9u
Rm9udCkgewogICAgICAgICBhdXRvIHZlcnRpY2FsUmlnaHRQbGF0Zm9ybURhdGEgPSBGb250UGxh
dGZvcm1EYXRhOjpjbG9uZVdpdGhPcmllbnRhdGlvbihtX3BsYXRmb3JtRGF0YSwgRm9udE9yaWVu
dGF0aW9uOjpIb3Jpem9udGFsKTsKLSAgICAgICAgZGVyaXZlZEZvbnREYXRhLnZlcnRpY2FsUmln
aHRPcmllbnRhdGlvbkZvbnQgPSBjcmVhdGUodmVydGljYWxSaWdodFBsYXRmb3JtRGF0YSwgb3Jp
Z2luKCksIEludGVyc3RpdGlhbDo6Tm8sIFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVudGF0aW9u
RmFsbGJhY2s6Olllcyk7CisgICAgICAgIGRlcml2ZWRGb250RGF0YS52ZXJ0aWNhbFJpZ2h0T3Jp
ZW50YXRpb25Gb250ID0gY3JlYXRlKHZlcnRpY2FsUmlnaHRQbGF0Zm9ybURhdGEsIG1fZm9udENh
Y2hlLmdldCgpLCBvcmlnaW4oKSwgSW50ZXJzdGl0aWFsOjpObywgVmlzaWJpbGl0eTo6VmlzaWJs
ZSwgT3JpZW50YXRpb25GYWxsYmFjazo6WWVzKTsKICAgICB9CiAgICAgQVNTRVJUKGRlcml2ZWRG
b250RGF0YS52ZXJ0aWNhbFJpZ2h0T3JpZW50YXRpb25Gb250ICE9IHRoaXMpOwogICAgIHJldHVy
biAqZGVyaXZlZEZvbnREYXRhLnZlcnRpY2FsUmlnaHRPcmllbnRhdGlvbkZvbnQ7CkBAIC00MzYs
NyArNDM3LDcgQEAgY29uc3QgRm9udCYgRm9udDo6dXByaWdodE9yaWVudGF0aW9uRm9udCgpIGNv
bnN0CiB7CiAgICAgRGVyaXZlZEZvbnRzJiBkZXJpdmVkRm9udERhdGEgPSBlbnN1cmVEZXJpdmVk
Rm9udERhdGEoKTsKICAgICBpZiAoIWRlcml2ZWRGb250RGF0YS51cHJpZ2h0T3JpZW50YXRpb25G
b250KQotICAgICAgICBkZXJpdmVkRm9udERhdGEudXByaWdodE9yaWVudGF0aW9uRm9udCA9IGNy
ZWF0ZShtX3BsYXRmb3JtRGF0YSwgb3JpZ2luKCksIEludGVyc3RpdGlhbDo6Tm8sIFZpc2liaWxp
dHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFsbGJhY2s6Olllcyk7CisgICAgICAgIGRlcml2ZWRG
b250RGF0YS51cHJpZ2h0T3JpZW50YXRpb25Gb250ID0gY3JlYXRlKG1fcGxhdGZvcm1EYXRhLCBt
X2ZvbnRDYWNoZS5nZXQoKSwgb3JpZ2luKCksIEludGVyc3RpdGlhbDo6Tm8sIFZpc2liaWxpdHk6
OlZpc2libGUsIE9yaWVudGF0aW9uRmFsbGJhY2s6Olllcyk7CiAgICAgQVNTRVJUKGRlcml2ZWRG
b250RGF0YS51cHJpZ2h0T3JpZW50YXRpb25Gb250ICE9IHRoaXMpOwogICAgIHJldHVybiAqZGVy
aXZlZEZvbnREYXRhLnVwcmlnaHRPcmllbnRhdGlvbkZvbnQ7CiB9CkBAIC00NDUsNyArNDQ2LDcg
QEAgY29uc3QgRm9udCYgRm9udDo6aW52aXNpYmxlRm9udCgpIGNvbnN0CiB7CiAgICAgRGVyaXZl
ZEZvbnRzJiBkZXJpdmVkRm9udERhdGEgPSBlbnN1cmVEZXJpdmVkRm9udERhdGEoKTsKICAgICBp
ZiAoIWRlcml2ZWRGb250RGF0YS5pbnZpc2libGVGb250KQotICAgICAgICBkZXJpdmVkRm9udERh
dGEuaW52aXNpYmxlRm9udCA9IGNyZWF0ZShtX3BsYXRmb3JtRGF0YSwgb3JpZ2luKCksIEludGVy
c3RpdGlhbDo6WWVzLCBWaXNpYmlsaXR5OjpJbnZpc2libGUpOworICAgICAgICBkZXJpdmVkRm9u
dERhdGEuaW52aXNpYmxlRm9udCA9IGNyZWF0ZShtX3BsYXRmb3JtRGF0YSwgbV9mb250Q2FjaGUu
Z2V0KCksIG9yaWdpbigpLCBJbnRlcnN0aXRpYWw6OlllcywgVmlzaWJpbGl0eTo6SW52aXNpYmxl
KTsKICAgICBBU1NFUlQoZGVyaXZlZEZvbnREYXRhLmludmlzaWJsZUZvbnQgIT0gdGhpcyk7CiAg
ICAgcmV0dXJuICpkZXJpdmVkRm9udERhdGEuaW52aXNpYmxlRm9udDsKIH0KQEAgLTQ1NCw3ICs0
NTUsNyBAQCBjb25zdCBGb250KiBGb250OjpzbWFsbENhcHNGb250KGNvbnN0IEZvbnREZXNjcmlw
dGlvbiYgZm9udERlc2NyaXB0aW9uKSBjb25zdAogewogICAgIERlcml2ZWRGb250cyYgZGVyaXZl
ZEZvbnREYXRhID0gZW5zdXJlRGVyaXZlZEZvbnREYXRhKCk7CiAgICAgaWYgKCFkZXJpdmVkRm9u
dERhdGEuc21hbGxDYXBzRm9udCkKLSAgICAgICAgZGVyaXZlZEZvbnREYXRhLnNtYWxsQ2Fwc0Zv
bnQgPSBjcmVhdGVTY2FsZWRGb250KGZvbnREZXNjcmlwdGlvbiwgc21hbGxDYXBzRm9udFNpemVN
dWx0aXBsaWVyKTsKKyAgICAgICAgZGVyaXZlZEZvbnREYXRhLnNtYWxsQ2Fwc0ZvbnQgPSBjcmVh
dGVTY2FsZWRGb250KGZvbnREZXNjcmlwdGlvbiwgc21hbGxDYXBzRm9udFNpemVNdWx0aXBsaWVy
LCBtX2ZvbnRDYWNoZS5nZXQoKSk7CiAgICAgQVNTRVJUKGRlcml2ZWRGb250RGF0YS5zbWFsbENh
cHNGb250ICE9IHRoaXMpOwogICAgIHJldHVybiBkZXJpdmVkRm9udERhdGEuc21hbGxDYXBzRm9u
dC5nZXQoKTsKIH0KQEAgLTQ2NCw3ICs0NjUsNyBAQCBjb25zdCBGb250JiBGb250Ojpub1N5bnRo
ZXNpemFibGVGZWF0dXJlc0ZvbnQoKSBjb25zdAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIERl
cml2ZWRGb250cyYgZGVyaXZlZEZvbnREYXRhID0gZW5zdXJlRGVyaXZlZEZvbnREYXRhKCk7CiAg
ICAgaWYgKCFkZXJpdmVkRm9udERhdGEubm9TeW50aGVzaXphYmxlRmVhdHVyZXNGb250KQotICAg
ICAgICBkZXJpdmVkRm9udERhdGEubm9TeW50aGVzaXphYmxlRmVhdHVyZXNGb250ID0gY3JlYXRl
Rm9udFdpdGhvdXRTeW50aGVzaXphYmxlRmVhdHVyZXMoKTsKKyAgICAgICAgZGVyaXZlZEZvbnRE
YXRhLm5vU3ludGhlc2l6YWJsZUZlYXR1cmVzRm9udCA9IGNyZWF0ZUZvbnRXaXRob3V0U3ludGhl
c2l6YWJsZUZlYXR1cmVzKG1fZm9udENhY2hlLmdldCgpKTsKICAgICBBU1NFUlQoZGVyaXZlZEZv
bnREYXRhLm5vU3ludGhlc2l6YWJsZUZlYXR1cmVzRm9udCAhPSB0aGlzKTsKICAgICByZXR1cm4g
KmRlcml2ZWRGb250RGF0YS5ub1N5bnRoZXNpemFibGVGZWF0dXJlc0ZvbnQ7CiAjZWxzZQpAQCAt
NDc2LDcgKzQ3Nyw3IEBAIGNvbnN0IEZvbnQqIEZvbnQ6OmVtcGhhc2lzTWFya0ZvbnQoY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24pIGNvbnN0CiB7CiAgICAgRGVyaXZlZEZv
bnRzJiBkZXJpdmVkRm9udERhdGEgPSBlbnN1cmVEZXJpdmVkRm9udERhdGEoKTsKICAgICBpZiAo
IWRlcml2ZWRGb250RGF0YS5lbXBoYXNpc01hcmtGb250KQotICAgICAgICBkZXJpdmVkRm9udERh
dGEuZW1waGFzaXNNYXJrRm9udCA9IGNyZWF0ZVNjYWxlZEZvbnQoZm9udERlc2NyaXB0aW9uLCBl
bXBoYXNpc01hcmtGb250U2l6ZU11bHRpcGxpZXIpOworICAgICAgICBkZXJpdmVkRm9udERhdGEu
ZW1waGFzaXNNYXJrRm9udCA9IGNyZWF0ZVNjYWxlZEZvbnQoZm9udERlc2NyaXB0aW9uLCBlbXBo
YXNpc01hcmtGb250U2l6ZU11bHRpcGxpZXIsIG1fZm9udENhY2hlLmdldCgpKTsKICAgICBBU1NF
UlQoZGVyaXZlZEZvbnREYXRhLmVtcGhhc2lzTWFya0ZvbnQgIT0gdGhpcyk7CiAgICAgcmV0dXJu
IGRlcml2ZWRGb250RGF0YS5lbXBoYXNpc01hcmtGb250LmdldCgpOwogfQpAQCAtNDg1LDcgKzQ4
Niw3IEBAIGNvbnN0IEZvbnQmIEZvbnQ6OmJyb2tlbklkZW9ncmFwaEZvbnQoKSBjb25zdAogewog
ICAgIERlcml2ZWRGb250cyYgZGVyaXZlZEZvbnREYXRhID0gZW5zdXJlRGVyaXZlZEZvbnREYXRh
KCk7CiAgICAgaWYgKCFkZXJpdmVkRm9udERhdGEuYnJva2VuSWRlb2dyYXBoRm9udCkgewotICAg
ICAgICBkZXJpdmVkRm9udERhdGEuYnJva2VuSWRlb2dyYXBoRm9udCA9IGNyZWF0ZShtX3BsYXRm
b3JtRGF0YSwgb3JpZ2luKCksIEludGVyc3RpdGlhbDo6Tm8pOworICAgICAgICBkZXJpdmVkRm9u
dERhdGEuYnJva2VuSWRlb2dyYXBoRm9udCA9IGNyZWF0ZShtX3BsYXRmb3JtRGF0YSwgbV9mb250
Q2FjaGUuZ2V0KCksIG9yaWdpbigpLCBJbnRlcnN0aXRpYWw6Ok5vKTsKICAgICAgICAgZGVyaXZl
ZEZvbnREYXRhLmJyb2tlbklkZW9ncmFwaEZvbnQtPm1faXNCcm9rZW5JZGVvZ3JhcGhGYWxsYmFj
ayA9IHRydWU7CiAgICAgfQogICAgIEFTU0VSVChkZXJpdmVkRm9udERhdGEuYnJva2VuSWRlb2dy
YXBoRm9udCAhPSB0aGlzKTsKQEAgLTUyNCw5ICs1MjUsOSBAQCBjb25zdCBPcGVuVHlwZU1hdGhE
YXRhKiBGb250OjptYXRoRGF0YSgpIGNvbnN0CiAgICAgcmV0dXJuIG1fbWF0aERhdGEuZ2V0KCk7
CiB9CiAKLVJlZlB0cjxGb250PiBGb250OjpjcmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNj
cmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBmbG9hdCBzY2FsZUZhY3RvcikgY29uc3QKK1JlZlB0
cjxGb250PiBGb250OjpjcmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9u
dERlc2NyaXB0aW9uLCBmbG9hdCBzY2FsZUZhY3RvciwgRm9udENhY2hlJiBmb250Q2FjaGUpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIHBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udChmb250RGVzY3JpcHRp
b24sIHNjYWxlRmFjdG9yKTsKKyAgICByZXR1cm4gcGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGZv
bnREZXNjcmlwdGlvbiwgc2NhbGVGYWN0b3IsIGZvbnRDYWNoZSk7CiB9CiAKICNpZiAhVVNFKENP
UkVfVEVYVCkKQEAgLTU3NCw3ICs1NzUsNyBAQCBSZWZQdHI8Rm9udD4gRm9udDo6c3lzdGVtRmFs
bGJhY2tGb250Rm9yQ2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdCBGb250RAogCiAg
ICAgaWYgKCFjaGFyYWN0ZXIpIHsKICAgICAgICAgVUNoYXIgY29kZVVuaXQgPSAwOwotICAgICAg
ICByZXR1cm4gRm9udENhY2hlOjpzaW5nbGV0b24oKS5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3Rl
cnMoZGVzY3JpcHRpb24sIHRoaXMsIGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZl
ckNvbG9yZWRGb250OjpObywgJmNvZGVVbml0LCAxKTsKKyAgICAgICAgcmV0dXJuIG1fZm9udENh
Y2hlLT5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMoZGVzY3JpcHRpb24sIHRoaXMsIGlzRm9y
UGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZlckNvbG9yZWRGb250OjpObywgJmNvZGVVbml0
LCAxKTsKICAgICB9CiAKICAgICBhdXRvIGtleSA9IENoYXJhY3RlckZhbGxiYWNrTWFwS2V5IHsg
ZGVzY3JpcHRpb24uY29tcHV0ZWRMb2NhbGUoKSwgY2hhcmFjdGVyLCBpc0ZvclBsYXRmb3JtRm9u
dCAhPSBJc0ZvclBsYXRmb3JtRm9udDo6Tm8gfTsKQEAgLTU4OSw3ICs1OTAsNyBAQCBSZWZQdHI8
Rm9udD4gRm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFj
dGVyLCBjb25zdCBGb250RAogICAgICAgICAgICAgY29kZVVuaXRzWzFdID0gVTE2X1RSQUlMKGNo
YXJhY3Rlcik7CiAgICAgICAgICAgICBjb2RlVW5pdHNMZW5ndGggPSAyOwogICAgICAgICB9Ci0g
ICAgICAgIGF1dG8gZm9udCA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuc3lzdGVtRmFsbGJhY2tG
b3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENh
Y2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6Tm8sIGNvZGVVbml0cywgY29kZVVuaXRzTGVuZ3RoKS5n
ZXQoKTsKKyAgICAgICAgYXV0byBmb250ID0gbV9mb250Q2FjaGUtPnN5c3RlbUZhbGxiYWNrRm9y
Q2hhcmFjdGVycyhkZXNjcmlwdGlvbiwgdGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNo
ZTo6UHJlZmVyQ29sb3JlZEZvbnQ6Ok5vLCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0
KCk7CiAgICAgICAgIGlmIChmb250KQogICAgICAgICAgICAgZm9udC0+bV9pc1VzZWRJblN5c3Rl
bUZhbGxiYWNrQ2FjaGUgPSB0cnVlOwogICAgICAgICByZXR1cm4gZm9udDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAppbmRleCA2NTNiMzM4YjdjMzQyNTYyNzIyNDk2MTFl
MjcwMWFjNWQyNjNlOTY1Li4wMzY1OGYzMzQ2NjY1MWNmNmM4ZTFkODBjOThkMTA3OTg5NWZmMjk3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCkBAIC01Nyw2ICs1Nyw3
IEBAIGludGVyZmFjZSBJRFdyaXRlR2RpSW50ZXJvcDsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CitjbGFzcyBGb250Q2FjaGU7CiBjbGFzcyBHbHlwaFBhZ2U7CiBjbGFzcyBGb250RGVzY3JpcHRp
b247CiBjbGFzcyBTaGFyZWRCdWZmZXI7CkBAIC05MiwxMiArOTMsMTIgQEAgcHVibGljOgogICAg
ICAgICBZZXMsCiAgICAgICAgIE5vCiAgICAgfTsKLSAgICBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0
ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4gPSBP
cmlnaW46OkxvY2FsLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsID0gSW50ZXJzdGl0aWFsOjpO
bywKKyAgICBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiBw
bGF0Zm9ybURhdGEsIEZvbnRDYWNoZSYgZm9udENhY2hlLCBPcmlnaW4gb3JpZ2luID0gT3JpZ2lu
OjpMb2NhbCwgSW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCA9IEludGVyc3RpdGlhbDo6Tm8sCiAg
ICAgICAgIFZpc2liaWxpdHkgdmlzaWJpbGl0eSA9IFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVu
dGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjayA9IE9yaWVudGF0aW9uRmFsbGJhY2s6
Ok5vLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IGlkZW50aWZpZXIgPSBX
VEY6Om51bGxvcHQpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb250KHBs
YXRmb3JtRGF0YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2liaWxpdHksIG9yaWVudGF0aW9u
RmFsbGJhY2ssIGlkZW50aWZpZXIpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9u
dChwbGF0Zm9ybURhdGEsIGZvbnRDYWNoZSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2liaWxp
dHksIG9yaWVudGF0aW9uRmFsbGJhY2ssIGlkZW50aWZpZXIpKTsKICAgICB9Ci0gICAgV0VCQ09S
RV9FWFBPUlQgc3RhdGljIFJlZjxGb250PiBjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250
RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiwgZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9s
ZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWY8
Rm9udD4gY3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZhY2VEYXRhLCBGb250Q2FjaGUm
LCBGb250OjpPcmlnaW4sIGZsb2F0IGZvbnRTaXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wg
c3ludGhldGljSXRhbGljKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIH5Gb250KCk7CiAKQEAgLTIz
Miw3ICsyMzMsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogcHJpdmF0ZToKLSAgICBXRUJDT1JFX0VY
UE9SVCBGb250KGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmLCBPcmlnaW4sIEludGVyc3RpdGlhbCwg
VmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3Vy
Y2VJZGVudGlmaWVyPik7CisgICAgV0VCQ09SRV9FWFBPUlQgRm9udChjb25zdCBGb250UGxhdGZv
cm1EYXRhJiwgRm9udENhY2hlJiwgT3JpZ2luLCBJbnRlcnN0aXRpYWwsIFZpc2liaWxpdHksIE9y
aWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcj4p
OwogCiAgICAgdm9pZCBwbGF0Zm9ybUluaXQoKTsKICAgICB2b2lkIHBsYXRmb3JtR2x5cGhJbml0
KCk7CkBAIC0yNDEsOSArMjQyLDkgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgaW5pdENoYXJXaWR0
aHMoKTsKIAotICAgIFJlZlB0cjxGb250PiBjcmVhdGVGb250V2l0aG91dFN5bnRoZXNpemFibGVG
ZWF0dXJlcygpIGNvbnN0OwotICAgIFJlZlB0cjxGb250PiBjcmVhdGVTY2FsZWRGb250KGNvbnN0
IEZvbnREZXNjcmlwdGlvbiYsIGZsb2F0IHNjYWxlRmFjdG9yKSBjb25zdDsKLSAgICBSZWZQdHI8
Rm9udD4gcGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGZs
b2F0IHNjYWxlRmFjdG9yKSBjb25zdDsKKyAgICBSZWZQdHI8Rm9udD4gY3JlYXRlRm9udFdpdGhv
dXRTeW50aGVzaXphYmxlRmVhdHVyZXMoRm9udENhY2hlJikgY29uc3Q7CisgICAgUmVmUHRyPEZv
bnQ+IGNyZWF0ZVNjYWxlZEZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiwgZmxvYXQgc2NhbGVG
YWN0b3IsIEZvbnRDYWNoZSYpIGNvbnN0OworICAgIFJlZlB0cjxGb250PiBwbGF0Zm9ybUNyZWF0
ZVNjYWxlZEZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiwgZmxvYXQgc2NhbGVGYWN0b3IsIEZv
bnRDYWNoZSYpIGNvbnN0OwogCiAgICAgdm9pZCByZW1vdmVGcm9tU3lzdGVtRmFsbGJhY2tDYWNo
ZSgpOwogICAgIApAQCAtMjYyLDYgKzI2Myw3IEBAIHByaXZhdGU6CiAgICAgZmxvYXQgbV9hdmdD
aGFyV2lkdGggeyAtMSB9OwogCiAgICAgY29uc3QgRm9udFBsYXRmb3JtRGF0YSBtX3BsYXRmb3Jt
RGF0YTsKKyAgICBSZWY8Rm9udENhY2hlPiBtX2ZvbnRDYWNoZTsKIAogICAgIG11dGFibGUgUmVm
UHRyPEdseXBoUGFnZT4gbV9nbHlwaFBhZ2VaZXJvOwogICAgIG11dGFibGUgSGFzaE1hcDx1bnNp
Z25lZCwgUmVmUHRyPEdseXBoUGFnZT4+IG1fZ2x5cGhQYWdlczsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuY3BwCmluZGV4IDhiYjMzZWQ1N2FlODQyY2Yx
MDk0NmFkMjc0N2I5NTk2Y2IwNGE1ODYuLjIwY2JiMDcyNGE0NThkODE2MmI5NmJmN2IzNzEwZmE2
ODI1YmYwN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zv
bnRDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
Y2hlLmNwcApAQCAtMjgwLDcgKzI4MCw3IEBAIFJlZjxGb250PiBGb250Q2FjaGU6OmZvbnRGb3JQ
bGF0Zm9ybURhdGEoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhKQogI2VuZGlm
CiAKICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fZm9udERhdGFDYWNoZXMtPmRhdGEuZW5zdXJlKHBs
YXRmb3JtRGF0YSwgWyZdIHsKLSAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURh
dGEpOworICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHBsYXRmb3JtRGF0YSwgKnRoaXMpOwog
ICAgIH0pOwogCiAgICAgQVNTRVJUKGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPnBsYXRmb3Jt
RGF0YSgpID09IHBsYXRmb3JtRGF0YSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlRm9udHMuY3BwCmluZGV4IDlmNjVkMjk5OGY5NDg2OTcz
ZDRiYmYxOGRlMjZmODJiMDQ0MzlmY2EuLjAyZmRlM2Q1M2Q4ZDU1N2U0MDFlM2E5ZjZmMzUwZjE5
NmViYTk0NGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zv
bnRDYXNjYWRlRm9udHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0ZvbnRDYXNjYWRlRm9udHMuY3BwCkBAIC0xODksNyArMTg5LDcgQEAgY29uc3QgRm9udFJhbmdl
cyYgRm9udENhc2NhZGVGb250czo6cmVhbGl6ZUZhbGxiYWNrUmFuZ2VzQXQoY29uc3QgRm9udENh
c2NhZGVEZXMKICAgICBpZiAoIWluZGV4KSB7CiAgICAgICAgIGZvbnRSYW5nZXMgPSByZWFsaXpl
TmV4dEZhbGxiYWNrKGRlc2NyaXB0aW9uLCBtX2xhc3RSZWFsaXplZEZhbGxiYWNrSW5kZXgsIG1f
Zm9udFNlbGVjdG9yLmdldCgpKTsKICAgICAgICAgaWYgKGZvbnRSYW5nZXMuaXNOdWxsKCkgJiYg
bV9mb250U2VsZWN0b3IpCi0gICAgICAgICAgICBmb250UmFuZ2VzID0gbV9mb250U2VsZWN0b3It
PmZvbnRSYW5nZXNGb3JGYW1pbHkoZGVzY3JpcHRpb24sIHN0YW5kYXJkRmFtaWx5KTsKKyAgICAg
ICAgICAgIGZvbnRSYW5nZXMgPSBtX2ZvbnRTZWxlY3Rvci0+Zm9udFJhbmdlc0ZvckZhbWlseShk
ZXNjcmlwdGlvbiwgZmFtaWx5TmFtZXNEYXRhLT5hdChGYW1pbHlOYW1lc0luZGV4OjpTdGFuZGFy
ZEZhbWlseSkpOwogICAgICAgICBpZiAoZm9udFJhbmdlcy5pc051bGwoKSkKICAgICAgICAgICAg
IGZvbnRSYW5nZXMgPSBGb250UmFuZ2VzKEZvbnRDYWNoZTo6Zm9udENhY2hlRmFsbGJhY2tUb1Np
bmdsZXRvbihtX2ZvbnRTZWxlY3RvcikubGFzdFJlc29ydEZhbGxiYWNrRm9udChkZXNjcmlwdGlv
bikpOwogICAgICAgICByZXR1cm4gZm9udFJhbmdlczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRUYWdnZWRTZXR0aW5ncy5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKaW5kZXggMTI4ZGFmN2U2
M2JjNzNkYTlmZWQxY2MzYTllNDJhY2Y1Njg5Mzk4OC4uMDc4M2M1MmIxYzM0M2UxZGQ1ZTc4N2Zh
NDc0MDRjZTRlZjY1YWQ0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1
ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9IYXNoVHJhaXRzLmg+CisjaW5jbHVkZSA8d3RmL0hh
c2hlci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdURiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29y
ZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9u
dENvcmVUZXh0LmNwcAppbmRleCBlZjg2ZTRjM2MyYmJiYTg3NDZlMjQxZTQzNTFlNzgwZTc0MzNk
MzE2Li5kYjk3MzcxMmVjNzM5Y2E4ZDI1YzExZWYzY2ViMzQyMmFhMTFlYjRjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRleHQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRD
b3JlVGV4dC5jcHAKQEAgLTM5NSw3ICszOTUsNyBAQCBjb25zdCBCaXRWZWN0b3ImIEZvbnQ6Omds
eXBoc1N1cHBvcnRlZEJ5QWxsUGV0aXRlQ2FwcygpIGNvbnN0CiB9CiAjZW5kaWYKIAotc3RhdGlj
IFJlZlB0cjxGb250PiBjcmVhdGVEZXJpdmF0aXZlRm9udChDVEZvbnRSZWYgZm9udCwgZmxvYXQg
c2l6ZSwgRm9udE9yaWVudGF0aW9uIG9yaWVudGF0aW9uLCBDVEZvbnRTeW1ib2xpY1RyYWl0cyBm
b250VHJhaXRzLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljKQorc3Rh
dGljIFJlZlB0cjxGb250PiBjcmVhdGVEZXJpdmF0aXZlRm9udChDVEZvbnRSZWYgZm9udCwgZmxv
YXQgc2l6ZSwgRm9udE9yaWVudGF0aW9uIG9yaWVudGF0aW9uLCBDVEZvbnRTeW1ib2xpY1RyYWl0
cyBmb250VHJhaXRzLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBG
b250Q2FjaGUmIGZvbnRDYWNoZSkKIHsKICAgICBpZiAoIWZvbnQpCiAgICAgICAgIHJldHVybiBu
dWxscHRyOwpAQCAtNDExLDcgKzQxMSw3IEBAIHN0YXRpYyBSZWZQdHI8Rm9udD4gY3JlYXRlRGVy
aXZhdGl2ZUZvbnQoQ1RGb250UmVmIGZvbnQsIGZsb2F0IHNpemUsIEZvbnRPcmllbnRhCiAgICAg
Ym9vbCB1c2VkU3ludGhldGljT2JsaXF1ZSA9IChmb250VHJhaXRzICYga0NURm9udEl0YWxpY1Ry
YWl0KSAmJiAhKHNjYWxlZEZvbnRUcmFpdHMgJiBrQ1RGb250VHJhaXRJdGFsaWMpOwogICAgIEZv
bnRQbGF0Zm9ybURhdGEgc2NhbGVkRm9udERhdGEoZm9udCwgc2l6ZSwgdXNlZFN5bnRoZXRpY0Jv
bGQsIHVzZWRTeW50aGV0aWNPYmxpcXVlLCBvcmllbnRhdGlvbik7CiAKLSAgICByZXR1cm4gRm9u
dDo6Y3JlYXRlKHNjYWxlZEZvbnREYXRhKTsKKyAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHNjYWxl
ZEZvbnREYXRhLCBmb250Q2FjaGUpOwogfQogCiBzdGF0aWMgaW5saW5lIGJvb2wgaXNPcGVuVHlw
ZUZlYXR1cmUoQ0ZEaWN0aW9uYXJ5UmVmIGZlYXR1cmUpCkBAIC01NDQsMjIgKzU0NCwyMiBAQCBz
dGF0aWMgUmV0YWluUHRyPENURm9udFJlZj4gY3JlYXRlQ1RGb250V2l0aG91dFN5bnRoZXNpemFi
bGVGZWF0dXJlcyhDVEZvbnRSZWYgZgogICAgIHJldHVybiBhZG9wdENGKENURm9udENyZWF0ZUNv
cHlXaXRoQXR0cmlidXRlcyhmb250LCBDVEZvbnRHZXRTaXplKGZvbnQpLCBudWxscHRyLCBuZXdE
ZXNjcmlwdG9yLmdldCgpKSk7CiB9CiAKLVJlZlB0cjxGb250PiBGb250OjpjcmVhdGVGb250V2l0
aG91dFN5bnRoZXNpemFibGVGZWF0dXJlcygpIGNvbnN0CitSZWZQdHI8Rm9udD4gRm9udDo6Y3Jl
YXRlRm9udFdpdGhvdXRTeW50aGVzaXphYmxlRmVhdHVyZXMoRm9udENhY2hlJiBmb250Q2FjaGUp
IGNvbnN0CiB7CiAgICAgZmxvYXQgc2l6ZSA9IG1fcGxhdGZvcm1EYXRhLnNpemUoKTsKICAgICBD
VEZvbnRTeW1ib2xpY1RyYWl0cyBmb250VHJhaXRzID0gQ1RGb250R2V0U3ltYm9saWNUcmFpdHMo
bV9wbGF0Zm9ybURhdGEuZm9udCgpKTsKICAgICBSZXRhaW5QdHI8Q1RGb250UmVmPiBjdEZvbnQg
PSBjcmVhdGVDVEZvbnRXaXRob3V0U3ludGhlc2l6YWJsZUZlYXR1cmVzKG1fcGxhdGZvcm1EYXRh
LmZvbnQoKSk7Ci0gICAgcmV0dXJuIGNyZWF0ZURlcml2YXRpdmVGb250KGN0Rm9udC5nZXQoKSwg
c2l6ZSwgbV9wbGF0Zm9ybURhdGEub3JpZW50YXRpb24oKSwgZm9udFRyYWl0cywgbV9wbGF0Zm9y
bURhdGEuc3ludGhldGljQm9sZCgpLCBtX3BsYXRmb3JtRGF0YS5zeW50aGV0aWNPYmxpcXVlKCkp
OworICAgIHJldHVybiBjcmVhdGVEZXJpdmF0aXZlRm9udChjdEZvbnQuZ2V0KCksIHNpemUsIG1f
cGxhdGZvcm1EYXRhLm9yaWVudGF0aW9uKCksIGZvbnRUcmFpdHMsIG1fcGxhdGZvcm1EYXRhLnN5
bnRoZXRpY0JvbGQoKSwgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljT2JsaXF1ZSgpLCBmb250Q2Fj
aGUpOwogfQogCi1SZWZQdHI8Rm9udD4gRm9udDo6cGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGNv
bnN0IEZvbnREZXNjcmlwdGlvbiYsIGZsb2F0IHNjYWxlRmFjdG9yKSBjb25zdAorUmVmUHRyPEZv
bnQ+IEZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24m
LCBmbG9hdCBzY2FsZUZhY3RvciwgRm9udENhY2hlJiBmb250Q2FjaGUpIGNvbnN0CiB7CiAgICAg
ZmxvYXQgc2l6ZSA9IG1fcGxhdGZvcm1EYXRhLnNpemUoKSAqIHNjYWxlRmFjdG9yOwogICAgIENU
Rm9udFN5bWJvbGljVHJhaXRzIGZvbnRUcmFpdHMgPSBDVEZvbnRHZXRTeW1ib2xpY1RyYWl0cyht
X3BsYXRmb3JtRGF0YS5mb250KCkpOwogICAgIFJldGFpblB0cjxDVEZvbnREZXNjcmlwdG9yUmVm
PiBmb250RGVzY3JpcHRvciA9IGFkb3B0Q0YoQ1RGb250Q29weUZvbnREZXNjcmlwdG9yKG1fcGxh
dGZvcm1EYXRhLmZvbnQoKSkpOwogICAgIFJldGFpblB0cjxDVEZvbnRSZWY+IHNjYWxlZEZvbnQg
PSBhZG9wdENGKENURm9udENyZWF0ZVdpdGhGb250RGVzY3JpcHRvcihmb250RGVzY3JpcHRvci5n
ZXQoKSwgc2l6ZSwgbnVsbHB0cikpOwogCi0gICAgcmV0dXJuIGNyZWF0ZURlcml2YXRpdmVGb250
KHNjYWxlZEZvbnQuZ2V0KCksIHNpemUsIG1fcGxhdGZvcm1EYXRhLm9yaWVudGF0aW9uKCksIGZv
bnRUcmFpdHMsIG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY0JvbGQoKSwgbV9wbGF0Zm9ybURhdGEu
c3ludGhldGljT2JsaXF1ZSgpKTsKKyAgICByZXR1cm4gY3JlYXRlRGVyaXZhdGl2ZUZvbnQoc2Nh
bGVkRm9udC5nZXQoKSwgc2l6ZSwgbV9wbGF0Zm9ybURhdGEub3JpZW50YXRpb24oKSwgZm9udFRy
YWl0cywgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljQm9sZCgpLCBtX3BsYXRmb3JtRGF0YS5zeW50
aGV0aWNPYmxpcXVlKCksIGZvbnRDYWNoZSk7CiB9CiAKIGZsb2F0IEZvbnQ6OnBsYXRmb3JtV2lk
dGhGb3JHbHlwaChHbHlwaCBnbHlwaCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL1NpbXBsZUZvbnREYXRhRnJlZVR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvU2ltcGxlRm9udERhdGFG
cmVlVHlwZS5jcHAKaW5kZXggYjk2NzI3YWIzOWU3Njk3YzM3Zjc2M2NhMjM3ZDFjZDljMzU1ZjFh
OC4uMzBmODI2YWFlZDRhODNhNTM2ZGM5YWEzMzM1NTMzMTYwNjQ4MzhmMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvU2ltcGxlRm9udERhdGFG
cmVlVHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5
cGUvU2ltcGxlRm9udERhdGFGcmVlVHlwZS5jcHAKQEAgLTE4OCw3ICsxODgsNyBAQCB2b2lkIEZv
bnQ6OnBsYXRmb3JtQ2hhcldpZHRoSW5pdCgpCiAgICAgaW5pdENoYXJXaWR0aHMoKTsKIH0KIAot
UmVmUHRyPEZvbnQ+IEZvbnQ6OnBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVz
Y3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwgZmxvYXQgc2NhbGVGYWN0b3IpIGNvbnN0CitSZWZQ
dHI8Rm9udD4gRm9udDo6cGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlw
dGlvbiYgZm9udERlc2NyaXB0aW9uLCBmbG9hdCBzY2FsZUZhY3RvciwgRm9udENhY2hlJiBmb250
Q2FjaGUpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1fcGxhdGZvcm1EYXRhLnNjYWxlZEZvbnQoKSk7
CiAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShGb250UGxhdGZvcm1EYXRhKGNhaXJvX3NjYWxlZF9m
b250X2dldF9mb250X2ZhY2UobV9wbGF0Zm9ybURhdGEuc2NhbGVkRm9udCgpKSwKQEAgLTE5OCw3
ICsxOTgsNyBAQCBSZWZQdHI8Rm9udD4gRm9udDo6cGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGNv
bnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aQogICAgICAgICBtX3BsYXRmb3JtRGF0
YS5zeW50aGV0aWNCb2xkKCksCiAgICAgICAgIG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY09ibGlx
dWUoKSwKICAgICAgICAgZm9udERlc2NyaXB0aW9uLm9yaWVudGF0aW9uKCkpLAotICAgICAgICBv
cmlnaW4oKSwgSW50ZXJzdGl0aWFsOjpObyk7CisgICAgICAgIGZvbnRDYWNoZSwgb3JpZ2luKCks
IEludGVyc3RpdGlhbDo6Tm8pOwogfQogCiB2b2lkIEZvbnQ6OmRldGVybWluZVBpdGNoKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9TaW1wbGVGb250
RGF0YVdpbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vU2ltcGxl
Rm9udERhdGFXaW4uY3BwCmluZGV4IDZkNjg1ZDgwMTc0NmMzNGQ5NzJlMjkzY2U0YTA0NDJlNGFj
OWE3MGIuLmE4NjFkNjY1OGU5NjJlNmY1NzA4MWU4NWQwOTIxMWIzMjEzMjM0YzAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9TaW1wbGVGb250RGF0YVdp
bi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1NpbXBsZUZv
bnREYXRhV2luLmNwcApAQCAtMTIyLDE3ICsxMjIsMTcgQEAgdm9pZCBGb250OjpwbGF0Zm9ybURl
c3Ryb3koKQogICAgIGRlbGV0ZSBtX3NjcmlwdEZvbnRQcm9wZXJ0aWVzOwogfQogCi1SZWZQdHI8
Rm9udD4gRm9udDo6cGxhdGZvcm1DcmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlwdGlv
biYgZm9udERlc2NyaXB0aW9uLCBmbG9hdCBzY2FsZUZhY3RvcikgY29uc3QKK1JlZlB0cjxGb250
PiBGb250OjpwbGF0Zm9ybUNyZWF0ZVNjYWxlZEZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBm
b250RGVzY3JpcHRpb24sIGZsb2F0IHNjYWxlRmFjdG9yLCBGb250Q2FjaGUmIGZvbnRDYWNoZSkg
Y29uc3QKIHsKICAgICBmbG9hdCBzY2FsZWRTaXplID0gc2NhbGVGYWN0b3IgKiBtX3BsYXRmb3Jt
RGF0YS5zaXplKCk7CiAgICAgaWYgKG9yaWdpbigpID09IE9yaWdpbjo6UmVtb3RlKQotICAgICAg
ICByZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRQbGF0Zm9ybURhdGE6OmNsb25lV2l0aFNpemUobV9w
bGF0Zm9ybURhdGEsIHNjYWxlZFNpemUpLCBGb250OjpPcmlnaW46OlJlbW90ZSk7CisgICAgICAg
IHJldHVybiBGb250OjpjcmVhdGUoRm9udFBsYXRmb3JtRGF0YTo6Y2xvbmVXaXRoU2l6ZShtX3Bs
YXRmb3JtRGF0YSwgc2NhbGVkU2l6ZSksIGZvbnRDYWNoZSwgRm9udDo6T3JpZ2luOjpSZW1vdGUp
OwogCiAgICAgTE9HRk9OVCB3aW5mb250OwogICAgIEdldE9iamVjdChtX3BsYXRmb3JtRGF0YS5o
Zm9udCgpLCBzaXplb2YoTE9HRk9OVCksICZ3aW5mb250KTsKICAgICB3aW5mb250LmxmSGVpZ2h0
ID0gLWxyb3VuZGYoc2NhbGVkU2l6ZSAqIChtX3BsYXRmb3JtRGF0YS51c2VHREkoKSA/IDEgOiAz
MikpOwogICAgIGF1dG8gaGZvbnQgPSBhZG9wdEdESU9iamVjdCg6OkNyZWF0ZUZvbnRJbmRpcmVj
dCgmd2luZm9udCkpOwotICAgIHJldHVybiBGb250OjpjcmVhdGUoRm9udFBsYXRmb3JtRGF0YShX
VEZNb3ZlKGhmb250KSwgc2NhbGVkU2l6ZSwgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljQm9sZCgp
LCBtX3BsYXRmb3JtRGF0YS5zeW50aGV0aWNPYmxpcXVlKCksIG1fcGxhdGZvcm1EYXRhLnVzZUdE
SSgpKSwgb3JpZ2luKCkpOworICAgIHJldHVybiBGb250OjpjcmVhdGUoRm9udFBsYXRmb3JtRGF0
YShXVEZNb3ZlKGhmb250KSwgc2NhbGVkU2l6ZSwgbV9wbGF0Zm9ybURhdGEuc3ludGhldGljQm9s
ZCgpLCBtX3BsYXRmb3JtRGF0YS5zeW50aGV0aWNPYmxpcXVlKCksIG1fcGxhdGZvcm1EYXRhLnVz
ZUdESSgpKSwgZm9udENhY2hlLCBvcmlnaW4oKSk7CiB9CiAKIEZsb2F0UmVjdCBGb250Ojpib3Vu
ZHNGb3JHRElHbHlwaChHbHlwaCBnbHlwaCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MmRhZGYzZjAzMTM0
NjJmZWQ2OTA4OTNjZWMzNTU1NjQ0MzYxYmZlCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwCkBAIC0wLDAgKzEsMTUzIEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOSBUb3JjaCBNb2JpbGUsIEluYy4K
KyAqIENvcHlyaWdodCAoQykgMjAyMSBNZXRyb2xvZ2ljYWwgR3JvdXAgQi5WLgorICogQ29weXJp
Z2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgi
CisjaW5jbHVkZSAiV29ya2VyRm9udExvYWRSZXF1ZXN0LmgiCisKKyNpbmNsdWRlICJGb250Lmgi
CisjaW5jbHVkZSAiRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIgorI2luY2x1ZGUgIkZvbnRTZWxl
Y3Rpb25BbGdvcml0aG0uaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKKyNp
bmNsdWRlICJTZXJ2aWNlV29ya2VyLmgiCisjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisjaW5j
bHVkZSAiV09GRkZpbGVGb3JtYXQuaCIKKyNpbmNsdWRlICJXb3JrZXJHbG9iYWxTY29wZS5oIgor
I2luY2x1ZGUgIldvcmtlclRocmVhZGFibGVMb2FkZXIuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitXb3JrZXJGb250TG9hZFJlcXVlc3Q6OldvcmtlckZvbnRMb2FkUmVxdWVzdChVUkwmJiB1
cmwsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkKKyAgICA6
IG1fdXJsKHVybCkKKyAgICAsIG1fbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZShsb2FkZWRGcm9tT3Bh
cXVlU291cmNlKQoreworfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6bG9hZChTY3Jp
cHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQoreworICAgIEFTU0VSVChpczxXb3JrZXJHbG9i
YWxTY29wZT4oY29udGV4dCkpOworICAgIGF1dG8mIHdvcmtlckdsb2JhbFNjb3BlID0gZG93bmNh
c3Q8V29ya2VyR2xvYmFsU2NvcGU+KGNvbnRleHQpOworICAgIG1fY29udGV4dCA9IG1ha2VXZWFr
UHRyKGNvbnRleHQpOworCisgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgeyBtX3VybCB9Owor
ICAgIEFTU0VSVChyZXF1ZXN0Lmh0dHBNZXRob2QoKSA9PSAiR0VUIik7CisKKyAgICBGZXRjaE9w
dGlvbnMgZmV0Y2hPcHRpb25zOworICAgIGZldGNoT3B0aW9ucy5tb2RlID0gRmV0Y2hPcHRpb25z
OjpNb2RlOjpTYW1lT3JpZ2luOworICAgIGZldGNoT3B0aW9ucy5jcmVkZW50aWFscyA9IHdvcmtl
ckdsb2JhbFNjb3BlLmNyZWRlbnRpYWxzKCk7CisgICAgZmV0Y2hPcHRpb25zLmNhY2hlID0gRmV0
Y2hPcHRpb25zOjpDYWNoZTo6RGVmYXVsdDsKKyAgICBmZXRjaE9wdGlvbnMucmVkaXJlY3QgPSBG
ZXRjaE9wdGlvbnM6OlJlZGlyZWN0OjpGb2xsb3c7CisgICAgZmV0Y2hPcHRpb25zLmRlc3RpbmF0
aW9uID0gRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6V29ya2VyOworCisgICAgVGhyZWFkYWJs
ZUxvYWRlck9wdGlvbnMgb3B0aW9ucyB7IFdURk1vdmUoZmV0Y2hPcHRpb25zKSB9OworICAgIG9w
dGlvbnMuc2VuZExvYWRDYWxsYmFja3MgPSBTZW5kQ2FsbGJhY2tQb2xpY3k6OlNlbmRDYWxsYmFj
a3M7CisgICAgb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lFbmZvcmNlbWVudCA9IGNvbnRl
eHQuc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5KCkgPyBDb250ZW50
U2VjdXJpdHlQb2xpY3lFbmZvcmNlbWVudDo6RG9Ob3RFbmZvcmNlIDogQ29udGVudFNlY3VyaXR5
UG9saWN5RW5mb3JjZW1lbnQ6OkVuZm9yY2VDaGlsZFNyY0RpcmVjdGl2ZTsKKyAgICBvcHRpb25z
LmxvYWRlZEZyb21PcGFxdWVTb3VyY2UgPSBtX2xvYWRlZEZyb21PcGFxdWVTb3VyY2U7CisKKyAg
ICBvcHRpb25zLnNlcnZpY2VXb3JrZXJzTW9kZSA9IFNlcnZpY2VXb3JrZXJzTW9kZTo6QWxsOwor
I2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBpZiAoYXV0byogYWN0aXZlU2VydmljZVdv
cmtlciA9IGNvbnRleHQuYWN0aXZlU2VydmljZVdvcmtlcigpKQorICAgICAgICBvcHRpb25zLnNl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyID0gYWN0aXZlU2VydmljZVdvcmtlci0+
cmVnaXN0cmF0aW9uSWRlbnRpZmllcigpOworI2VuZGlmCisKKyAgICBXb3JrZXJUaHJlYWRhYmxl
TG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHdvcmtlckdsb2JhbFNjb3BlLCBXVEZN
b3ZlKHJlcXVlc3QpLCAqdGhpcywgb3B0aW9ucyk7Cit9CisKK2Jvb2wgV29ya2VyRm9udExvYWRS
ZXF1ZXN0OjplbnN1cmVDdXN0b21Gb250RGF0YShjb25zdCBBdG9tU3RyaW5nJikKK3sKKyNpZiAh
UExBVEZPUk0oQ09DT0EpCisgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEgJiYgIW1f
ZXJyb3JPY2N1cnJlZCAmJiAhbV9pc0xvYWRpbmcgJiYgbV9kYXRhICYmIGlzV09GRigqbV9kYXRh
KSkgeworICAgICAgICBWZWN0b3I8Y2hhcj4gY29udmVydGVkRm9udDsKKyAgICAgICAgaWYgKGNv
bnZlcnRXT0ZGVG9TZm50KCptX2RhdGEsIGNvbnZlcnRlZEZvbnQpKQorICAgICAgICAgICAgbV9k
YXRhID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoV1RGTW92ZShjb252ZXJ0ZWRGb250KSk7CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIG1fZXJyb3JPY2N1cnJlZCA9IHRydWU7CisgICAgfQorI2Vu
ZGlmCisKKyAgICBpZiAoIW1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YSAmJiAhbV9lcnJvck9jY3Vy
cmVkICYmICFtX2lzTG9hZGluZyAmJiBtX2RhdGEpIHsKKyAgICAgICAgbV9mb250Q3VzdG9tUGxh
dGZvcm1EYXRhID0gY3JlYXRlRm9udEN1c3RvbVBsYXRmb3JtRGF0YSgqbV9kYXRhLCBtX3VybC5m
cmFnbWVudElkZW50aWZpZXIoKS50b1N0cmluZygpKTsKKyAgICAgICAgaWYgKCFtX2ZvbnRDdXN0
b21QbGF0Zm9ybURhdGEpCisgICAgICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOworICAg
IH0KKworICAgIHJldHVybiBtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuZ2V0KCk7Cit9CisKK1Jl
ZlB0cjxGb250PiBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmNyZWF0ZUZvbnQoY29uc3QgRm9udERl
c2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcmLCBib29sIHN5bnRo
ZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdz
JiBmb250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzIGZv
bnRGYWNlQ2FwYWJpbGl0aWVzKQoreworICAgIEFTU0VSVChtX2ZvbnRDdXN0b21QbGF0Zm9ybURh
dGEpOworICAgIEFTU0VSVChtX2NvbnRleHQpOworICAgIHJldHVybiBGb250OjpjcmVhdGUobV9m
b250Q3VzdG9tUGxhdGZvcm1EYXRhLT5mb250UGxhdGZvcm1EYXRhKGZvbnREZXNjcmlwdGlvbiwg
c3ludGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFj
ZUNhcGFiaWxpdGllcyksIG1fY29udGV4dC0+Zm9udENhY2hlKCksIEZvbnQ6Ok9yaWdpbjo6UmVt
b3RlKTsKK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OnNldENsaWVudChGb250TG9h
ZFJlcXVlc3RDbGllbnQqIGNsaWVudCkKK3sKKyAgICBtX2ZvbnRMb2FkUmVxdWVzdENsaWVudCA9
IGNsaWVudDsKKworICAgIGlmIChtX25vdGlmeU9uQ2xpZW50U2V0KSB7CisgICAgICAgIG1fbm90
aWZ5T25DbGllbnRTZXQgPSBmYWxzZTsKKyAgICAgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQt
PmZvbnRMb2FkZWQoKnRoaXMpOworICAgIH0KK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVl
c3Q6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSkKK3sKKyAgICBpZiAocmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEw
MCAhPSAyICYmIHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkpIHsKKyAgICAgICAgbV9lcnJvck9j
Y3VycmVkID0gdHJ1ZTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30KKwordm9pZCBXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVEYXRhKGNvbnN0IGNoYXIqIGRhdGEsIGludCBkYXRh
TGVuZ3RoKQoreworICAgIGlmIChtX2Vycm9yT2NjdXJyZWQpCisgICAgICAgIHJldHVybjsKKwor
ICAgIGlmICghbV9kYXRhKQorICAgICAgICBtX2RhdGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgp
OworCisgICAgbV9kYXRhLT5hcHBlbmQoZGF0YSwgZGF0YUxlbmd0aCk7Cit9CisKK3ZvaWQgV29y
a2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcpCit7Cisg
ICAgbV9pc0xvYWRpbmcgPSBmYWxzZTsKKworICAgIGlmICghbV9lcnJvck9jY3VycmVkKSB7Cisg
ICAgICAgIGlmIChtX2ZvbnRMb2FkUmVxdWVzdENsaWVudCkKKyAgICAgICAgICAgIG1fZm9udExv
YWRSZXF1ZXN0Q2xpZW50LT5mb250TG9hZGVkKCp0aGlzKTsKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgbV9ub3RpZnlPbkNsaWVudFNldCA9IHRydWU7CisgICAgfQorfQorCit2b2lkIFdvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJikKK3sKKyAgICBt
X2Vycm9yT2NjdXJyZWQgPSB0cnVlOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5jZTBiMjBhODliMzY4ZmI1YWIyMzdhZmQwZWZkNDQyYTg0NjQwNDI5Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaApAQCAt
MCwwICsxLDgzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIE1ldHJvbG9naWNhbCBHcm91
cCBCLlYuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNw
cmFnbWEgb25jZQorCisjaW5jbHVkZSAiRm9udExvYWRSZXF1ZXN0LmgiCisjaW5jbHVkZSAiUmVz
b3VyY2VMb2FkZXJPcHRpb25zLmgiCisjaW5jbHVkZSAiVGhyZWFkYWJsZUxvYWRlckNsaWVudC5o
IgorI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvVVJMLmg+CisjaW5jbHVk
ZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBTY3JpcHRF
eGVjdXRpb25Db250ZXh0OworY2xhc3MgU2hhcmVkQnVmZmVyOworY2xhc3MgV29ya2VyR2xvYmFs
U2NvcGU7CitzdHJ1Y3QgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTsKKworY2xhc3MgV29ya2VyRm9u
dExvYWRSZXF1ZXN0IDogcHVibGljIEZvbnRMb2FkUmVxdWVzdCwgcHVibGljIFRocmVhZGFibGVM
b2FkZXJDbGllbnQgeworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAg
IFdvcmtlckZvbnRMb2FkUmVxdWVzdChVUkwmJiwgTG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSk7Cisg
ICAgfldvcmtlckZvbnRMb2FkUmVxdWVzdCgpID0gZGVmYXVsdDsKKworICAgIHZvaWQgbG9hZChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0Jik7CisKK3ByaXZhdGU6CisgICAgY29uc3QgVVJMJiB1cmwo
KSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3VybDsgfQorICAgIGJvb2wgaXNQZW5kaW5nKCkgY29u
c3QgZmluYWwgeyByZXR1cm4gIW1faXNMb2FkaW5nICYmICFtX2Vycm9yT2NjdXJyZWQgJiYgIW1f
ZGF0YTsgfQorICAgIGJvb2wgaXNMb2FkaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9pc0xv
YWRpbmc7IH0KKyAgICBib29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBt
X2Vycm9yT2NjdXJyZWQ7IH0KKworICAgIGJvb2wgZW5zdXJlQ3VzdG9tRm9udERhdGEoY29uc3Qg
QXRvbVN0cmluZyYgcmVtb3RlVVJJKSBmaW5hbDsKKyAgICBSZWZQdHI8Rm9udD4gY3JlYXRlRm9u
dChjb25zdCBGb250RGVzY3JpcHRpb24mLCBjb25zdCBBdG9tU3RyaW5nJiByZW1vdGVVUkksIGJv
b2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMsIGNvbnN0IEZvbnRGZWF0dXJl
U2V0dGluZ3MmLCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzKSBmaW5hbDsKKwor
ICAgIHZvaWQgc2V0Q2xpZW50KEZvbnRMb2FkUmVxdWVzdENsaWVudCopIGZpbmFsOworCisgICAg
Ym9vbCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7
IH0KKworICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlkUmVjZWl2ZURh
dGEoY29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgZGlk
RmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQg
ZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJikgZmluYWw7CisKKyAgICBVUkwgbV91cmw7Cisg
ICAgTG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSBtX2xvYWRlZEZyb21PcGFxdWVTb3VyY2U7CisKKyAg
ICBib29sIG1faXNMb2FkaW5nIHsgZmFsc2UgfTsKKyAgICBib29sIG1fbm90aWZ5T25DbGllbnRT
ZXQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9lcnJvck9jY3VycmVkIHsgZmFsc2UgfTsKKyAgICBG
b250TG9hZFJlcXVlc3RDbGllbnQqIG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50IHsgbnVsbHB0ciB9
OworCisgICAgV2Vha1B0cjxTY3JpcHRFeGVjdXRpb25Db250ZXh0PiBtX2NvbnRleHQ7CisgICAg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gbV9kYXRhOworICAgIHN0ZDo6dW5pcXVlX3B0cjxGb250Q3Vz
dG9tUGxhdGZvcm1EYXRhPiBtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGE7Cit9OworCit9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRk9OVExPQURSRVFVRVNU
KFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdCwgaXNXb3JrZXJGb250TG9hZFJlcXVlc3Qo
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXgg
ZDBmYmQ3MmQzMmI1NTA0NjllYTA4YTkwZjBmZDZiZjg0ZmE2MTg4Ni4uNWE5N2YwZmM0MmQwOGY0
OWI2YTY2ZWUwNTkzM2E5ODgxMDQ3Y2UwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXJHbG9iYWxTY29wZS5jcHAKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJDb250ZW50
U2VjdXJpdHlQb2xpY3kuaCIKICNpbmNsdWRlICJDcnlwdG8uaCIKICNpbmNsdWRlICJGb250Q2Fj
aGUuaCIKKyNpbmNsdWRlICJGb250RmFjZVNldC5oIgogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Q
cm94eS5oIgogI2luY2x1ZGUgIkltYWdlQml0bWFwT3B0aW9ucy5oIgogI2luY2x1ZGUgIkluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbi5oIgpAQCAtNDUsNiArNDYsNyBAQAogI2luY2x1ZGUgIlNlY3Vy
aXR5T3JpZ2luUG9saWN5LmgiCiAjaW5jbHVkZSAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmgi
CiAjaW5jbHVkZSAiU29ja2V0UHJvdmlkZXIuaCIKKyNpbmNsdWRlICJXb3JrZXJGb250TG9hZFJl
cXVlc3QuaCIKICNpbmNsdWRlICJXb3JrZXJMb2FkZXJQcm94eS5oIgogI2luY2x1ZGUgIldvcmtl
ckxvY2F0aW9uLmgiCiAjaW5jbHVkZSAiV29ya2VyTWVzc2FnaW5nUHJveHkuaCIKQEAgLTUyMSw2
ICs1MjMsMjIgQEAgRm9udENhY2hlJiBXb3JrZXJHbG9iYWxTY29wZTo6Zm9udENhY2hlKCkKICAg
ICByZXR1cm4gKm1fZm9udENhY2hlOwogfQogCitSZWY8Rm9udEZhY2VTZXQ+IFdvcmtlckdsb2Jh
bFNjb3BlOjpmb250cygpCit7CisgICAgcmV0dXJuIGNzc0ZvbnRTZWxlY3RvcigpLT5mb250RmFj
ZVNldCgpOworfQorCitzdGQ6OnVuaXF1ZV9wdHI8Rm9udExvYWRSZXF1ZXN0PiBXb3JrZXJHbG9i
YWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0KFN0cmluZyYgdXJsLCBib29sLCBib29sLCBMb2FkZWRG
cm9tT3BhcXVlU291cmNlIGxvYWRlZEZyb21PcGFxdWVTb3VyY2UpCit7CisgICAgcmV0dXJuIG1h
a2VVbmlxdWU8V29ya2VyRm9udExvYWRSZXF1ZXN0Pihjb21wbGV0ZVVSTCh1cmwpLCBsb2FkZWRG
cm9tT3BhcXVlU291cmNlKTsKK30KKwordm9pZCBXb3JrZXJHbG9iYWxTY29wZTo6YmVnaW5Mb2Fk
aW5nRm9udFNvb24oRm9udExvYWRSZXF1ZXN0JiByZXF1ZXN0KQoreworICAgIEFTU0VSVChpczxX
b3JrZXJGb250TG9hZFJlcXVlc3Q+KHJlcXVlc3QpKTsKKyAgICBkb3duY2FzdDxXb3JrZXJGb250
TG9hZFJlcXVlc3Q+KHJlcXVlc3QpLmxvYWQoKnRoaXMpOworfQorCiBSZWZlcnJlclBvbGljeSBX
b3JrZXJHbG9iYWxTY29wZTo6cmVmZXJyZXJQb2xpY3koKSBjb25zdAogewogICAgIHJldHVybiBt
X3JlZmVycmVyUG9saWN5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJHbG9iYWxTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29w
ZS5oCmluZGV4IDZlYmU0NjUxMWZiYTIxYzJmODUxNmRlNDUyNjgwMTRjYzI3ZjE2OGUuLjJhMzEz
ZDRlNjg2NTEyYmQwMTNiYWFmYjI0ZjI5MjcwNDNkOWI1NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmgKQEAgLTUxLDYgKzUxLDggQEAgY2xhc3MgQ1NTRm9u
dFNlbGVjdG9yOwogY2xhc3MgQ1NTVmFsdWVQb29sOwogY2xhc3MgQ29udGVudFNlY3VyaXR5UG9s
aWN5UmVzcG9uc2VIZWFkZXJzOwogY2xhc3MgQ3J5cHRvOworY2xhc3MgRm9udEZhY2VTZXQ7Citj
bGFzcyBGb250TG9hZFJlcXVlc3Q7CiBjbGFzcyBQZXJmb3JtYW5jZTsKIGNsYXNzIFNjaGVkdWxl
ZEFjdGlvbjsKIGNsYXNzIFdvcmtlckxvY2F0aW9uOwpAQCAtMTI0LDYgKzEyNiw5IEBAIHB1Ymxp
YzoKICAgICBDU1NWYWx1ZVBvb2wmIGNzc1ZhbHVlUG9vbCgpIGZpbmFsOwogICAgIENTU0ZvbnRT
ZWxlY3RvciogY3NzRm9udFNlbGVjdG9yKCkgZmluYWw7CiAgICAgRm9udENhY2hlJiBmb250Q2Fj
aGUoKSBmaW5hbDsKKyAgICBSZWY8Rm9udEZhY2VTZXQ+IGZvbnRzKCk7CisgICAgc3RkOjp1bmlx
dWVfcHRyPEZvbnRMb2FkUmVxdWVzdD4gZm9udExvYWRSZXF1ZXN0KFN0cmluZyYsIGJvb2wsIGJv
b2wsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UpIGZpbmFsOworICAgIHZvaWQgYmVnaW5Mb2FkaW5n
Rm9udFNvb24oRm9udExvYWRSZXF1ZXN0JikgZmluYWw7CiAKICAgICBSZWZlcnJlclBvbGljeSBy
ZWZlcnJlclBvbGljeSgpIGNvbnN0IGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyR2xvYmFsU2NvcGUuaWRsCmluZGV4IGY4NTc4YTQ3MWY0OGI0ODU4YmJmYmJmYmM4YTA1
Y2NkZDliNjliMjYuLmUyOGU4OWVmZjRjYjAyZjc0ZGYwYmQxYTI5MDFhNzU3MTQ1Y2VjZmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC00OCwz
ICs0OCw0IEBACiB9OwogCiBXb3JrZXJHbG9iYWxTY29wZSBpbmNsdWRlcyBXaW5kb3dPcldvcmtl
ckdsb2JhbFNjb3BlOworV29ya2VyR2xvYmFsU2NvcGUgaW5jbHVkZXMgRm9udEZhY2VTb3VyY2U7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMu
Y3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAppbmRl
eCAyNTVhMmNiYzZjNzdjZWYxZTYwNzBlYTQyMGY2YmRlOTBiMjQwYTcxLi42NjY3ODU2OTljMDRj
NWMyNTA1OTM1OTFlZmY4ZGFlZDk5ZTczMTI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKQEAgLTU1LDYgKzU1LDcgQEAKICNpbmNsdWRlIDxX
ZWJDb3JlL0ZpbHRlck9wZXJhdGlvbnMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ZvbnQuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL0ZvbnRBdHRyaWJ1dGVzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Gb250
Q2FjaGUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dC5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvR3JhcGhpY3NMYXllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvSURCR2V0UmVzdWx0
Lmg+CkBAIC0xMTQ0LDcgKzExNDUsNyBAQCBPcHRpb25hbDxSZWY8Rm9udD4+IEFyZ3VtZW50Q29k
ZXI8UmVmPEZvbnQ+Pjo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCiAgICAgaWYgKCFwbGF0Zm9y
bURhdGEuaGFzVmFsdWUoKSkKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAotICAgIHJl
dHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRhLnZhbHVlKCksIG9yaWdpbi52YWx1ZSgpLCBp
c0ludGVyc3RpdGlhbC52YWx1ZSgpLCB2aXNpYmlsaXR5LnZhbHVlKCksIGlzVGV4dE9yaWVudGF0
aW9uRmFsbGJhY2sudmFsdWUoKSwgcmVuZGVyaW5nUmVyc291Y2VJZGVudGlmaWVyKTsKKyAgICBy
ZXR1cm4gRm9udDo6Y3JlYXRlKHBsYXRmb3JtRGF0YS52YWx1ZSgpLCBGb250Q2FjaGU6OnNpbmds
ZXRvbigpLCBvcmlnaW4udmFsdWUoKSwgaXNJbnRlcnN0aXRpYWwudmFsdWUoKSwgdmlzaWJpbGl0
eS52YWx1ZSgpLCBpc1RleHRPcmllbnRhdGlvbkZhbGxiYWNrLnZhbHVlKCksIHJlbmRlcmluZ1Jl
cnNvdWNlSWRlbnRpZmllcik7CiB9CiAKIHZvaWQgQXJndW1lbnRDb2RlcjxDdXJzb3I+OjplbmNv
ZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgQ3Vyc29yJiBjdXJzb3IpCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwppbmRleCBmZmZiNGQ0Njc2ZWFhMDc1OGY0NGY2NmQ0YTEzM2IyNWZjNmY4
MTZiLi40ZDFkZDcwZGQzNDU3ZTU2ZGE2Njg3NWEzMTI2MjU1ZTRiMzczNWY4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NiBAQAorMjAyMS0wNC0xNiAgQ2hyaXMg
TG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNlIGlu
IFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjUy
OTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBG
b250RmFjZSBpcyBub3cgYXZhaWxhYmxlIGZvciBXb3JrZXJzLCByZWJhc2VsaW5lIHJlbGF0ZWQg
dGVzdHMuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24u
bGVmdC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2Vy
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJh
c2VsaW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNl
bGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRv
cC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtl
ci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3Bh
Y2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5j
b2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2Uu
Y29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNv
bGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xs
YXBzZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91
bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndv
cmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNlbGluZXMud29ya2VyLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQubWVhc3VyZS53aWR0aC5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1
cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRo
LnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQ6CisKIDIwMjEtMDQtMTYgIE1hbnVlbCBSZWdvIENh
c2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gVXBkYXRl
IDpmb2N1cy12aXNpYmxlIHRlc3RzIGZyb20gV1BUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4
IGU5ZDdmNTc0ZjQ1NTBjZDVmMmYzNGMzYTBjNmI4OWRkM2RhOGZkZDMuLjExZGRjZmNlNjcwYjVl
ZmFiNDE3NjIzNTgwYjI4Yjc0ZDJhMTA2MzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBjZW50ZXIgaXMgdGhlIGNlbnRlciBvZiB0aGUg
ZW0gc3F1YXJlcyAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZv
bnRGYWNlCitQQVNTIHRleHRBbGlnbiBjZW50ZXIgaXMgdGhlIGNlbnRlciBvZiB0aGUgZW0gc3F1
YXJlcyAobm90IHRoZSBib3VuZGluZyBib3gpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dAppbmRl
eCAzOGRkNzhiZWViZWJmOTJlZDAyYjE1NDk2MmEwYTA5NTAwZDk2YzFjLi5lMDkyZTFmOGJjNmRm
NzVkMWM5MTVhNGI0ZmI5YWVkYmUxZjhjNzliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBlbmQgd2l0aCBsdHIgaXMgdGhlIHJpZ2h0
IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGVuZCB3
aXRoIGx0ciBpcyB0aGUgcmlnaHQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXgg
MDU4YmI5OWRlMzM1YTRiZmQwM2ZiNTE2NzM0MWVkNDBiYWJjYjkxMi4uNGI2ZGUyN2UyNDg4YmVl
YjlkY2VjOWRkZWIxZWI0NDIwYmUzZjVjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gZW5kIHdpdGggcnRsIGlzIHRoZSBsZWZ0IGVk
Z2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGVuZCB3aXRo
IHJ0bCBpcyB0aGUgbGVmdCBlZGdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBmMjkyZjk0NDEy
NzlkY2E5NTc0YzJiZjAzMTY2YjEzOTUxOTJjNTYzLi5iMjNmNzc4Y2ZlMDFjNTQ1MzkyMDAyM2Ex
YTMzZDQ5NmQ1ZjJmYWEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5h
bGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1G
QUlMIHRleHRBbGlnbiBsZWZ0IGlzIHRoZSBsZWZ0IG9mIHRoZSBmaXJzdCBlbSBzcXVhcmUgKG5v
dCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0
ZXh0QWxpZ24gbGVmdCBpcyB0aGUgbGVmdCBvZiB0aGUgZmlyc3QgZW0gc3F1YXJlIChub3QgdGhl
IGJvdW5kaW5nIGJveCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZmY1YTQwMjBiZGFiMGE2
MTE5ZmQ2NGFlNDc3MmZjMTViMTFlYTU2NS4uYTEwODJkNWI4YzU4NTQ0OTNkYTA4OTUwMTYwZWZk
Y2E2OWIzZWIwZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24u
cmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlM
IHRleHRBbGlnbiByaWdodCBpcyB0aGUgcmlnaHQgb2YgdGhlIGxhc3QgZW0gc3F1YXJlIChub3Qg
dGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4
dEFsaWduIHJpZ2h0IGlzIHRoZSByaWdodCBvZiB0aGUgbGFzdCBlbSBzcXVhcmUgKG5vdCB0aGUg
Ym91bmRpbmcgYm94KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5h
bGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDZmZDk2NTU0
NTJjZjAxNjdiNGFkMDljMTJlOTM2N2MwY2M4YjEyYTkuLjE5ZjAyYmYzZDA4NWY0MWFhZTk2OWNh
YmY5ZDQ5YjJjZjdhMGYyOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBzdGFydCB3aXRoIGx0ciBpcyB0aGUgbGVmdCBlZGdl
IENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBzdGFydCB3aXRo
IGx0ciBpcyB0aGUgbGVmdCBlZGdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXgg
YmQ1YTU5ZDc5ZTZlMDVhZGMzODQzOWNhZDVkYmY1YjIxZDljODY5Yy4uNDFjM2YyNGFmMGJkYjQ2
MzYyNTFjNDk0ZmRjNjQ5ZTNkOWU2OTFiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIHN0YXJ0IHdpdGggcnRsIGlzIHRoZSBy
aWdodCBlZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBz
dGFydCB3aXRoIHJ0bCBpcyB0aGUgcmlnaHQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYyZWVjNGQ3YTliOTYxNTFkM2Zl
ZC4uYTE3ZWVmNTA5MmI3ZDAzODI3YWNkNjViNzk3OGVlNGI5YmUyMGRjMiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhh
YmV0aWMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyAyZAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0
ZWQudHh0CmluZGV4IDZhMTU0OWMxN2IyMjZhOWU1NTY1NzVjZTkyZjcyOTY4ODljZGEyOTIuLmZm
MjgzNjA5ODUzODU0MmQ3MmVkYzI5MTAwZjU4MDZhODIzYjA3NGUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRCYXNlbGluZSBib3R0b20g
aXMgdGhlIGJvdHRvbSBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2Fu
J3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4dEJhc2VsaW5lIGJvdHRvbSBpcyB0
aGUgYm90dG9tIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBhc3NlcnRf
YXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVj
dGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmNiZWYyNzZhMzQ3
OGZhYmMxMWFiNWY0ZjFiNWQyNTkyNTU3Njk4ZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9u
dEZhY2UKK0ZBSUwgMmQgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBw
aXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dy
YXBoaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBkMzg5OTQwYWY2NWY0N2RhM2FiZjJlZWM0
ZDdhOWI5NjE1MWQzZmVkLi5jYmVmMjc2YTM0NzhmYWJjMTFhYjVmNGYxYjVkMjU5MjU1NzY5OGRl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3Jh
cGhpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmJhc2VsaW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgMmQgYXNzZXJ0
X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0
ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4
IDMwMDY3MzhhOWM2ZDhmOTIwZWQ5YzBjOGNlNjZlYzkzMjM5M2ViYWEuLmFkNjQ5NDllMTUxMmE1
Yjg3MGIwNmQxMjA0OGYyYjhmMjg2ODMxOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0
CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRCYXNlbGluZSBtaWRkbGUgaXMgdGhlIG1pZGRs
ZSBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJp
YWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4dEJhc2VsaW5lIG1pZGRsZSBpcyB0aGUgbWlkZGxlIG9m
IHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBhc3NlcnRfYXBwcm94X2VxdWFs
czogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1
dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2Vs
aW5lLnRvcC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZTI2ZjFiNmY4YTM0M2IwZGE1
MzU5YWVlNDgxNjliNDdmYjYyNzBhYS4uODBlOThmYjI1YjY5NDNiM2M4Mjk0ZGMyMmUzYmJiN2E3
MDJhMzY0NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUu
dG9wLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwg
dGV4dEJhc2VsaW5lIHRvcCBpcyB0aGUgdG9wIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91
bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCB0ZXh0QmFzZWxp
bmUgdG9wIGlzIHRoZSB0b3Agb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gp
IGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDUsIDUp
IGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXItZXhw
ZWN0ZWQudHh0CmluZGV4IDljM2Y4NWU0OTBhMjEzNmQzZjQ1MDViYjM5M2JhMzljYjQ5MDJiYmEu
LmVlNDI5MWQyYmU4MzU4NDQ1MDI4ZjdiMmU1MzkwYTRiOWZhNGUwMGYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJv
dW5kLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgZmlsbFRleHQg
aGFuZGxlcyBtYXhXaWR0aCBiYXNlZCBvbiBsaW5lIHNpemUsIG5vdCBib3VuZGluZyBib3ggc2l6
ZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBmaWxsVGV4dCBoYW5kbGVzIG1h
eFdpZHRoIGJhc2VkIG9uIGxpbmUgc2l6ZSwgbm90IGJvdW5kaW5nIGJveCBzaXplCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uu
d29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4
V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA2YjkyYzM4ZjMyMjIyOThj
YThhYThlZTIxOTZjMzhlMTRhN2I5Yzc4Li5iMmNlMjcxYmYxMDFlM2M5YjYyYjU4YmQxODkyOTc1
OTFkNzlhNzZkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1h
eFdpZHRoLmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIGZpbGxUZXh0IHdvcmtzIG9uIEBmb250LWZhY2UgZm9udHMg
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgZmlsbFRleHQgd29ya3Mgb24gQGZv
bnQtZmFjZSBmb250cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5m
b250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGU3
OTM1N2FhYjI1ZjYxOGVmNWE3ZTA0YmZiYTQ4NTcwZTk0ZjJlY2IuLjFhYjk5MWYyMmVlZGU1YjI4
ZjMxMTljOWY1MmZhN2Q4MWQ4M2MzMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQu
dHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEBmb250LWZhY2UgZm9udHMgc2hvdWxkIHdvcmsg
ZXZlbiBpZiB0aGV5IGFyZSBub3QgdXNlZCBpbiB0aGUgcGFnZSBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBGb250RmFjZQorUEFTUyBAZm9udC1mYWNlIGZvbnRzIHNob3VsZCB3b3JrIGV2ZW4gaWYgdGhl
eSBhcmUgbm90IHVzZWQgaW4gdGhlIHBhZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCAwZjc1ZWE5MjEyOWRkNGYyYWY5ZDJmNTNmMWVmYjY0ZjE5OTExNjQ1Li4zOWVkYTRkYzJm
ZjY2M2UxZjI4MzZlNTY3Y2U3NjM4NjU1NjkxZDk1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBEcmF3IHdpdGggdGhlIGZvbnQgaW1tZWRpYXRl
bHksIHRoZW4gd2FpdCBhIGJpdCB1bnRpbCBhbmQgZHJhdyBhZ2Fpbi4gKFRoaXMgY3Jhc2hlcyBz
b21lIHZlcnNpb24gb2YgV2ViS2l0LikgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BB
U1MgRHJhdyB3aXRoIHRoZSBmb250IGltbWVkaWF0ZWx5LCB0aGVuIHdhaXQgYSBiaXQgdW50aWwg
YW5kIGRyYXcgYWdhaW4uIChUaGlzIGNyYXNoZXMgc29tZSB2ZXJzaW9uIG9mIFdlYktpdC4pCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNm
ZWQuLmExN2VlZjUwOTJiN2QwMzgyN2FjZDY1Yjc5NzhlZTRiOWJlMjBkYzIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250
RmFjZQorUEFTUyAyZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5z
cGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA5YTMyNDAyNzVlZDM4N2Ri
ZGZkNWQyNWMxZjVhMjdhOWRlNjljNzVhLi4xZWQ0NGY4ZjdkYmNiMTYzNGJmNDlhNzNiZjk1OTVi
OTc5MjA5OGNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5i
YXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwg
VSswMDIwIGlzIHJlbmRlcmVkIHRoZSBjb3JyZWN0IHNpemUgKDFlbSB3aWRlKSBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBVKzAwMjAgaXMgcmVuZGVyZWQgdGhlIGNvcnJlY3Qg
c2l6ZSAoMWVtIHdpZGUpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXgg
NmU1ZjgzMmQxNDJlMGU3NTUyNDkyOGU1Mjc0ZWI5MGEwYTMyY2I2YS4uNDJmNTcwZjBiOWU3OGQ5
NDdjMGUwYmM2NGFiNjgxNjhjMzY2NTUyYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgZW5k
IG9mIGEgbGluZSBhcmUgY29sbGFwc2VkIChwZXIgQ1NTKSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBG
b250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBlbmQgb2YgYSBsaW5lIGFyZSBj
b2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0
aGUgcGl4ZWwgYXQgKDc1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFj
ZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2Uu
Y29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBhZTQ2MTVkZTRjYzQw
Mjk3NjBkMTc1YzkwNzQyOTc5ZWU1NTMwMzVjLi45ZTVkNDcwNDQ5NTI5MzkxN2NkNWVlNTY0NmY0
OGM4Yzk4ZGE2YmQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFj
ZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50
eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgTm9uLXNwYWNlIGNoYXJhY3RlcnMgYXJlIG5vdCBj
b252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9u
dEZhY2UKK1BBU1MgTm9uLXNwYWNlIGNoYXJhY3RlcnMgYXJlIG5vdCBjb252ZXJ0ZWQgdG8gVSsw
MDIwIGFuZCBjb2xsYXBzZWQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQK
aW5kZXggOTRhMDA0M2EwYTMzNzllMTI4ZWIxNjQwYjRmNjQyOGIyZDcxMzlkYS4uNjgyY2ZiOTM5
YjBmODUwMTBiN2QzM2U1ODQyMTA1NmE1MWI0ODAxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3Jr
ZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMg
YXJlIGNvbnZlcnRlZCB0byBVKzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0IGZp
bmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRl
ZCB0byBVKzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxz
OiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBi
dXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFj
ZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA5
NGEwMDQzYTBhMzM3OWUxMjhlYjE2NDBiNGY2NDI4YjJkNzEzOWRhLi42ODJjZmI5MzliMGY4NTAx
MGI3ZDMzZTU4NDIxMDU2YTUxYjQ4MDE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29u
dmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJp
YWJsZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUr
MDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBj
aGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3Qg
MjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxh
cHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5zcGFjZS5jb2xsYXBzZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDUwODY4ZmU5
MTk4MGNhNzBiNDA5Zjc2MzczOWU4NDBlZjk2ZjNkNWQuLjdiY2I1MWNjYzdiOWMwYTE2MDlkNWVh
Y2QzZDM0ZGMyODE4MTI4NGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4
dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBzdGFydCBv
ZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9u
dEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgc3RhcnQgb2YgYSBsaW5lIGFyZSBj
b2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0
aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53
b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFs
Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzMTIwZmNiOGZhZGRkOWU1NDI2
NzQ1ZGQ1NTZmOWQ0Mzc5YmZlN2I3Li44MjU0Y2U2NzQyNDg2MjJlZTA3YjQ0YzdkOWY4YjZjZGY3
NjFjZjYyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1YWxC
b3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyAr
MSwzIEBACiAKLUZBSUwgVGVzdGluZyBhY3R1YWxCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2Fu
dmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFRlc3RpbmcgYWN0dWFsQm91
bmRpbmdCb3ggZm9yIE9mZnNjcmVlbkNhbnZhcyBhc3NlcnRfZXF1YWxzOiBNYXRoLmFicyhjdHgu
bWVhc3VyZVRleHQoJ0EnKS5hY3R1YWxCb3VuZGluZ0JveERlc2NlbnQpID09PSAwIChnb3QgMVtu
dW1iZXJdLCBleHBlY3RlZCAwW251bWJlcl0pIGV4cGVjdGVkIDAgYnV0IGdvdCAxCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IGY0YTA4NDAzYzFlYjhiNDFhYzRiYTU4MDYyYTQzNTI4NTc1NTU1
YWIuLjkzOGM3OTkxMWQwNmVmNTE0ZDdiMWM5YzZhNDU0MTUxYTFiZjU3YjUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMud29ya2VyLWV4
cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIHdpZHRoIGFkdmFuY2Vz
IGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwg
VGVzdGluZyB3aWR0aCBhZHZhbmNlcyBmb3IgT2Zmc2NyZWVuQ2FudmFzIHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdjdHgubWVhc3VyZVRleHQoJ0hlbGxvJykuYWR2YW5j
ZXNbMF0nKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNl
bGluZXMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDNkMjk5MGMxMWU5NmUxNzE4NTc4
OTM0Y2YzMmNhYjYzNDQ3OTZjNzEuLmUxZDIyOTM4NGQxYTcwNjUwMmU1MTg0MjkyZjU3ZDgzNDRj
NDkyN2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5l
cy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRl
c3RpbmcgYmFzZWxpbmVzIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTog
Rm9udEZhY2UKK0ZBSUwgVGVzdGluZyBiYXNlbGluZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyBjdHgu
bWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY3R4
Lm1lYXN1cmVUZXh0KCdBJykuZ2V0QmFzZWxpbmVzKCknLCAnY3R4Lm1lYXN1cmVUZXh0KCdBJyku
Z2V0QmFzZWxpbmVzJyBpcyB1bmRlZmluZWQpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXgg
ODVhNzJjZWExNzE5M2ZiZjEwOGViZjRiNDYxM2ZlOWU5MjU5ZDBkMC4uYWNhZmFkZjg2MWMwN2Zh
N2ZmZjUxZjMwMWZhN2UxOWZkZWJhZjFmYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEs
MyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBlbUhlaWdodHMgZm9yIE9mZnNjcmVlbkNhbnZhcyBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIGVtSGVpZ2h0cyBmb3Ig
T2Zmc2NyZWVuQ2FudmFzIGFzc2VydF9lcXVhbHM6IGN0eC5tZWFzdXJlVGV4dCgnQScpLmVtSGVp
Z2h0QXNjZW50ID09PSAzNy41IChnb3QgODVbbnVtYmVyXSwgZXhwZWN0ZWQgMzcuNVtudW1iZXJd
KSBleHBlY3RlZCAzNy41IGJ1dCBnb3QgODUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVk
LnR4dAppbmRleCAxNGM3ZGE0NGJkMGVkY2Y2ODFhZjdhZjNkYzZiNmU3ZmExNWE0NjUwLi4yNWJh
Y2UzZWZjZjE3ZmZlMjdiMDUzMTc5ZmRkZDBmZTkzMTIwM2NkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29y
a2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGZvbnRCb3Vu
ZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNl
CitQQVNTIFRlc3RpbmcgZm9udEJvdW5kaW5nQm94IGZvciBPZmZzY3JlZW5DYW52YXMKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2lj
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNWM3ODBjOWU0ZTUxODYxYjAxZGEzMGNmMTRkNzM4
NTIzNDM5YTI5My4uOTQyZjkxNDEwNTU1OTI3NzliODQzYWI2NmE1MTU2YzliMmYwN2QwNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5i
YXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRoZSB3aWR0
aCBvZiBjaGFyYWN0ZXIgaXMgc2FtZSBhcyBmb250IHVzZWQgZm9yIE9mZnNjcmVlbkNhbnZhcyBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBUaGUgd2lkdGggb2YgY2hhcmFjdGVy
IGlzIHNhbWUgYXMgZm9udCB1c2VkIGZvciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggNTAwZDcyN2QzYjY3ZGM5ODZhZmVmNGI5ZDJmMmE3NDY5OWUxZDNl
ZS4uNjg3YmM0ZjM1ZmNmNGNjZDc0Nzc0MTFhNzYyMzM0M2IzMGJkZTkzOCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53b3Jr
ZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRoZSBlbXB0eSBzdHJpbmcg
aGFzIHplcm8gd2lkdGggZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBG
b250RmFjZQorUEFTUyBUaGUgZW1wdHkgc3RyaW5nIGhhcyB6ZXJvIHdpZHRoIGZvciBPZmZzY3Jl
ZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lk
dGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFz
dXJlLndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOTNkNzExYzRiYjk0NzIy
MDRjN2YxNDM1YzhiZTAwZmRjN2IyNmIyYS4uMDUzNzI5MDBkNTY2Zjc5YjQ1NWMzZWE1NTI1MjA2
NTI1ZmQyMDFjYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lk
dGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAog
Ci1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxh
cHNlZCAocGVyIENTUykgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBG
b250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwIGFu
ZCBjb2xsYXBzZWQgKHBlciBDU1MpIGZvciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0X2VxdWFsczog
Y3R4Lm1lYXN1cmVUZXh0KCdBIFx4MDlceDBhXHgwY1x4MGQgIFx4MDlceDBhXHgwY1x4MGRCJyku
d2lkdGggPT09IDE1MCAoZ290IDY1MFtudW1iZXJdLCBleHBlY3RlZCAxNTBbbnVtYmVyXSkgZXhw
ZWN0ZWQgMTUwIGJ1dCBnb3QgNjUwCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426212</attachid>
            <date>2021-04-16 06:02:07 -0700</date>
            <delta_ts>2021-04-16 06:46:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210416140206.patch</filename>
            <type>text/plain</type>
            <size>77434</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzY4OTY4YmM3NWQ4NzVj
YWYyMDMwM2Q0Y2IzMzQ1ZGJhYTA2NmRjZC4uNGNkMDdhYjcwZjk3ZDVhYzg1NTFjMTk4MDA3Njc0
NzBiMDI1OWUzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwNyBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUbyBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGlt
cGxlbWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJs
ZSBvbiBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFp
bGFibGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAg
ICBtYWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBy
ZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFj
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgUGFzcyBhIEZvbnRDYWNoZSB3aGVu
IGNhbGxpbmcgRm9udDo6Y3JlYXRlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU2V0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjplbnN1cmVMb2NhbEZvbnRGYWNl
c0ZvckZhbWlseVJlZ2lzdGVyZWQpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1
ZVBvb2wgYW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9y
RmFtaWx5UmVnaXN0ZXJlZC4KKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJjZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZVNvdXJjZTo6Q1NTRm9udEZhY2VTb3VyY2Up
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTRm9udEZhY2VTb3VyY2U6OmZvbnQpOgorICAgICAgICAg
IFVzZSBGb250TG9hZFJlcXVlc3Q6OmlzUGVuZGluZyBpbnN0ZWFkIG9mIG1ha2luZyBhc3N1bXB0
aW9ucyBhYm91dAorICAgICAgICAgIGl0cyBzdGF0ZSBvbiBjb25zdHJ1Y3Rpb24uIEFsc28gcGFz
cyB0aGUgRm9udENhY2hlIHNpbmdsZXRvbiB3aGVyZQorICAgICAgICAgIGFwcHJvcHJpYXRlIGlu
IGZvbnQgY3JlYXRpb24uCisKKyAgICAgICAgKiBjc3MvRm9udEZhY2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Rm9udEZhY2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpGb250RmFjZTo6
ZGlzcGxheSBjb25zdCk6CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmg6CisgICAgICAgICogY3Nz
L0ZvbnRGYWNlLmlkbDoKKyAgICAgICAgICBDb25zdHJ1Y3Qgd2l0aCBhIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQgaW5zdGVhZCBvZiBhIERvY3VtZW50IGFuZAorICAgICAgICAgIG1ha2UgYXZhaWxh
YmxlIGZvciBXb3JrZXJzLgorCisgICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udExvYWRSZXF1ZXN0Ojppc1dvcmtlckZvbnRMb2FkUmVxdWVz
dCBjb25zdCk6CisgICAgICAgICAgQWRkIGlzUGVuZGluZyBmdW5jdGlvbiBhbmQgbmV3IHR5cGUg
V29ya2VyRm9udExvYWRSZXF1ZXN0LgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkRm9udDo6Y3JlYXRlRm9udCk6CisgICAg
ICAgICAgUGFzcyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgICAg
SW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Rm9udCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Ojpz
eXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAg
ICAgICAgQWRkIGFuIG9wdGlvbmFsIEZvbnRDYWNoZSBwYXJhbWV0ZXIgZm9yIHVzZSB3aXRoIHZl
cnRpY2FsIGZvbnQgZGF0YQorICAgICAgICAgIHJldHJpZXZhbCBhbmQgYWRkIGEgRm9udENhY2hl
IHBhcmFtZXRlciB0bworICAgICAgICAgIHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlciBp
bnN0ZWFkIG9mIHVzaW5nIHRoZSBzaW5nbGV0b24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9Gb250Q2FjaGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhY2hlOjpmb250Rm9y
UGxhdGZvcm1EYXRhKToKKyAgICAgICAgICBQYXNzIEZvbnRDYWNoZSBwYXJhbWV0ZXIgd2hlbiBj
cmVhdGluZyBmb250cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRl
Rm9udHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVGb250czo6cmVhbGl6ZUZh
bGxiYWNrUmFuZ2VzQXQpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVGb250czo6Z2x5
cGhEYXRhRm9yU3lzdGVtRmFsbGJhY2spOgorICAgICAgICAgIFVzZSBmYW1pbHlOYW1lc0RhdGEg
aW5zdGVhZCBvZiBmYW1pbHlOYW1lcyBhbmQgcGFzcyB0aGUgRm9udENhY2hlCisgICAgICAgICAg
cGFyYW1ldGVyIHdoZW4gY2FsbGluZyBnbHlwaERhdGFGb3JTeXN0ZW1GYWxsYmFjayB0byBtYWtl
IHRoaXMgc2FmZQorICAgICAgICAgIHRvIHVzZSBpbiBhIFdvcmtlci4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRUYWdnZWRTZXR0aW5ncy5oOgorICAgICAgICAgIEFkZCBtaXNz
aW5nIHd0Zi9IYXNoZXIuaCBpbmNsdWRlLgorCisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250
TG9hZFJlcXVlc3QuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6V29ya2VyRm9udExvYWRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJGb250TG9h
ZFJlcXVlc3Q6OmVuc3VyZUN1c3RvbUZvbnREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6Y3JlYXRlRm9udCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OnNldENsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJGb250
TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZhaWwpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyRm9udExvYWRSZXF1ZXN0Lmg6IEFkZGVkLgorICAgICAgICAgIEltcGxlbWVudCBGb250TG9h
ZFJlcXVlc3QgZm9yIFdvcmtlcnMuCisKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckdsb2JhbFNj
b3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpmb250cyk6Cisg
ICAgICAgIChXZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0KToKKyAg
ICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdGb250U29vbik6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAgIEltcGxl
bWVudCBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGZvbnQtbG9hZGluZyByZWxhdGVkIGZ1bmN0aW9u
cy4KKworICAgICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAg
IEluY2x1ZGUgRm9udEZhY2VTb3VyY2UuCisKIDIwMjEtMDQtMTYgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBhIG5vIGxvbmdlciBuZWNlc3Nhcnkg
Y2FsbE9uTWFpblRocmVhZCBpbiBXb3JrZXI6OmNyZWF0ZVJUQ1J0cFNjcmlwdFRyYW5zZm9ybWVy
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCmluZGV4IGE3ZjczZDEyZTkzOTE5Zjc4MTMyNmRiNTRkZjI3YWRjZWY1NDJkOWQuLjI1
ZjdjZTJhZTM1NjhhYzkwZTFiZDkzYjZmZjYzNzg1NDhhMjU4MjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTYgQEAKKzIwMjEtMDQtMTYgIENocmlzIExvcmQgIDxjbG9yZEBpZ2FsaWEuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCBGb250RmFjZSBpbiBXb3JrZXJzIGZvciBPZmZzY3JlZW5DYW52YXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDE3OAor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzY1MjkwMjQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9udDo6Y3JlYXRlIG5vdyByZXF1aXJlcyBhIEZv
bnRDYWNoZSBwYXJhbWV0ZXIsIHVwZGF0ZSBhY2NvcmRpbmdseS4KKworICAgICAgICAqIFNoYXJl
ZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVy
PFJlZjxGb250Pj46OmRlY29kZSk6CisKIDIwMjEtMDQtMTYgIFlvdWVubiBGYWJsZXQgIDx5b3Vl
bm5AYXBwbGUuY29tPgogCiAgICAgICAgIFByb21vdGUgV0tXZWJWaWV3IGRldmljZSBvcmllbnRh
dGlvbiBwZXJtaXNzaW9uIGRlbGVnYXRlIHRvIEFQSQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggZTEx
NTA1Y2RkMGY4ZTQzYjI4NzNkYjdhMWQ1ODFmOGRmOTg0ZmViMy4uNGM4YWJiZDU4ZmIzZDIyMjE4
NzM2NDA0MzRjNzlmNGQyYWU2YzdkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVy
cy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC0xNjU1LDYgKzE2
NTUsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgd29ya2Vy
cy9TY3JpcHRCdWZmZXIuaAogICAgIHdvcmtlcnMvV29ya2VyQW5pbWF0aW9uQ29udHJvbGxlci5o
CiAgICAgd29ya2Vycy9Xb3JrZXJEZWJ1Z2dlclByb3h5LmgKKyAgICB3b3JrZXJzL1dvcmtlckZv
bnRMb2FkUmVxdWVzdC5oCiAgICAgd29ya2Vycy9Xb3JrZXJMb2FkZXJQcm94eS5oCiAgICAgd29y
a2Vycy9Xb3JrZXJPcldvcmtsZXRUaHJlYWQuaAogICAgIHdvcmtlcnMvV29ya2VyUnVuTG9vcC5o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0CmluZGV4IGVjYWNkZWJjMTM1OWE5Y2VkNDJmZGRkYzVhMGI1YjVlY2ZkYzI5
NWIuLmY5ZTg1MjQ5Y2M3OWM0NDI3ZDBlMTQ2ZTdlMmU5YTVhYmJmODY1OGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMu
dHh0CkBAIC0yNjUzLDYgKzI2NTMsNyBAQCB3b3JrZXJzL1dvcmtlci5jcHAKIHdvcmtlcnMvV29y
a2VyQW5pbWF0aW9uQ29udHJvbGxlci5jcHAKIHdvcmtlcnMvV29ya2VyQ29uc29sZUNsaWVudC5j
cHAKIHdvcmtlcnMvV29ya2VyRXZlbnRMb29wLmNwcAord29ya2Vycy9Xb3JrZXJGb250TG9hZFJl
cXVlc3QuY3BwCiB3b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcAogd29ya2Vycy9Xb3JrZXJJ
bnNwZWN0b3JQcm94eS5jcHAKIHdvcmtlcnMvV29ya2VyTG9jYXRpb24uY3BwCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMmQ2YTQ2
MTA5YmQ1NGNiM2JjOWI5ZWEyNzE5NDEwZjJhM2E1YTRjOS4uMzQ5NjFiYjFjNmM1MTJmZjgyYWJk
YzgyZGVlM2ZlNmIxMzg3NWJjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzQzMiw2ICszNDMyLDcgQEAKIAkJQTdDRkIzRDIw
QjdFRDEwQTAwNzBDMzJEIC8qIERyYWdJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTdDRkIzRDAwQjdFRDEwQTAwNzBDMzJEIC8qIERyYWdJbWFn
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3
RDIwRjYzMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNjExMDdGNDA2OTAwQTgw
MzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggKi87IH07CiAJCUE3RDIwRjZEMTA3RjQzOEIwMEE4
MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE3RDIwRjZCMTA3RjQzOEIwMEE4MDM5MiAvKiBXZWJHTEFjdGl2ZUlu
Zm8uaCAqLzsgfTsKKwkJQTdENkIzNDkwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2Fk
UmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTdENkIzNDcwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3RDZCMzQ5MEY2
MTEwNDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3RDZCMzQ3MEY2MTEwNDUwMEI3OUZEMSAvKiBX
b3JrZXJTY3JpcHRMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQlBN0RCRjhERTEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVs
cGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0RC
RjhEQzEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmggKi87IH07CiAJCUE4
MEQ2NzA4MEU5RTlERUIwMEU0MjBGMCAvKiBHcmFwaGljc0NvbnRleHRQbGF0Zm9ybVByaXZhdGVD
Ry5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgwRDY3
MDcwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZUNHLmgg
Ki87IH07CkBAIC0xMjg0NCw2ICsxMjg0NSw4IEBACiAJCUE3RDIwRjYwMTA3RjQwNjkwMEE4MDM5
MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1dlYkdMQWN0aXZlSW5mby5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUE3RDIwRjYxMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdMQWN0aXZlSW5mby5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlBN0QyMEY2QjEwN0Y0MzhCMDBBODAzOTIgLyogV2ViR0xB
Y3RpdmVJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQWN0aXZl
SW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0Q2QjM0NzBGNjExMDQ1MDBG
RjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBN0Q2QjM0ODBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlckZvbnRMb2Fk
UmVxdWVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDZCMzQ3MEY2MTEw
NDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV29ya2VyU2NyaXB0TG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUE3RDZCMzQ4MEY2MTEwNDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyU2NyaXB0TG9hZGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdEQkY4REIxMjc2OTE5QzAwNkI2
MDA4IC8qIFRleHRDaGVja2luZ0hlbHBlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBUZXh0Q2hlY2tpbmdIZWxwZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTk0MTUsNiArMTk0MTgsOCBAQAogCQkJCUE1MkIzNDlDMUZBNDE2RjgwMDhCNjI0
NiAvKiBXb3JrZXJEZWJ1Z2dlclByb3h5LmggKi8sCiAJCQkJOUIwQUJDQTMyMzY3OUFDRjAwQjQ1
MDg1IC8qIFdvcmtlckV2ZW50TG9vcC5jcHAgKi8sCiAJCQkJOUIwQUJDQTQyMzY3OUFDRjAwQjQ1
MDg1IC8qIFdvcmtlckV2ZW50TG9vcC5oICovLAorCQkJCUE3RDZCMzQ4MEY2MTEwNDUwMEZGOUZE
MSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwICovLAorCQkJCUE3RDZCMzQ3MEY2MTEwNDUw
MEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLywKIAkJCQkyRTQzNDYzNjBGNTQ2
QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUuY3BwICovLAogCQkJCTJFNDM0NjM3MEY1
NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5oICovLAogCQkJCTJFNDM0NjM4MEY1
NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5pZGwgKi8sCkBAIC0zNTgyMiw2ICsz
NTgyNyw3IEBACiAJCQkJQTVCODFDQ0UxRkFBNDRERTAwMzdEMUU2IC8qIFdvcmtlckRlYnVnZ2Vy
QWdlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE1MkIzNDlFMUZBNDE3MDMwMDhCNjI0NiAvKiBX
b3JrZXJEZWJ1Z2dlclByb3h5LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MUUwRERDNDIzMEI0MUYx
MDAxOUUxRTMgLyogV29ya2VyRE9NRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTdENkIzNDkwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMkU0MzQ2NDkwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNj
b3BlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUQxMjlDRTFGM0QwRUY2MDBEMTVFNDcgLyogV29y
a2VyR2xvYmFsU2NvcGVDYWNoZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJFNDM0NjRCMEY1NDZB
ODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZVByb3h5LmggaW4gSGVhZGVycyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2UuY3BwCmluZGV4IDFhZDgwNDc3YWJhMGQzNjY3ZDBkZTU2M2M5
MmRjZWJlOGE5ZWMzOWEuLjc4M2YzNGU2ZDBiYWNkY2RmNzliNjg3NDliZWM2YjZhZTc2MjZiNWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNwcApAQCAtMzk2LDYgKzM5NiwxMyBAQCBEb2N1
bWVudCogQ1NTRm9udEZhY2U6OmRvY3VtZW50KCkKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAor
Rm9udENhY2hlJiBDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tUb1NpbmdsZXRvbigpCit7
CisgICAgaWYgKG1fd3JhcHBlciAmJiBtX3dyYXBwZXItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSkKKyAgICAgICAgcmV0dXJuIG1fd3JhcHBlci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5m
b250Q2FjaGUoKTsKKyAgICByZXR1cm4gRm9udENhY2hlOjpzaW5nbGV0b24oKTsKK30KKwogYm9v
bCBDU1NGb250RmFjZTo6Y29tcHV0ZUZhaWx1cmVTdGF0ZSgpIGNvbnN0CiB7CiAgICAgaWYgKHN0
YXR1cygpID09IFN0YXR1czo6RmFpbHVyZSkKQEAgLTY2OSw4ICs2NzYsOSBAQCBSZWZQdHI8Rm9u
dD4gQ1NTRm9udEZhY2U6OmZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRp
b24sIGJvb2wgc3ludAogICAgICAgICBzd2l0Y2ggKHNvdXJjZS0+c3RhdHVzKCkpIHsKICAgICAg
ICAgY2FzZSBDU1NGb250RmFjZVNvdXJjZTo6U3RhdHVzOjpQZW5kaW5nOgogICAgICAgICBjYXNl
IENTU0ZvbnRGYWNlU291cmNlOjpTdGF0dXM6OkxvYWRpbmc6IHsKKyAgICAgICAgICAgIGF1dG8m
IGZvbnRDYWNoZSA9IGZvbnRDYWNoZUZhbGxiYWNrVG9TaW5nbGV0b24oKTsKICAgICAgICAgICAg
IEZvbnQ6OlZpc2liaWxpdHkgdmlzaWJpbGl0eSA9IFdlYkNvcmU6OnZpc2liaWxpdHkoc3RhdHVz
KCksIGZvbnRMb2FkVGltaW5nKCkpOwotICAgICAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShG
b250Q2FjaGU6OnNpbmdsZXRvbigpLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZm9udERlc2NyaXB0
aW9uKS0+cGxhdGZvcm1EYXRhKCksIEZvbnQ6Ok9yaWdpbjo6TG9jYWwsIEZvbnQ6OkludGVyc3Rp
dGlhbDo6WWVzLCB2aXNpYmlsaXR5KTsKKyAgICAgICAgICAgIHJldHVybiBGb250OjpjcmVhdGUo
Zm9udENhY2hlLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZm9udERlc2NyaXB0aW9uKS0+cGxhdGZv
cm1EYXRhKCksIEZvbnQ6Ok9yaWdpbjo6TG9jYWwsICZmb250Q2FjaGUsIEZvbnQ6OkludGVyc3Rp
dGlhbDo6WWVzLCB2aXNpYmlsaXR5KTsKICAgICAgICAgfQogICAgICAgICBjYXNlIENTU0ZvbnRG
YWNlU291cmNlOjpTdGF0dXM6OlN1Y2Nlc3M6CiAgICAgICAgICAgICBpZiAoYXV0byByZXN1bHQg
PSBzb3VyY2UtPmZvbnQoZm9udERlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNJ
dGFsaWMsIG1fZmVhdHVyZVNldHRpbmdzLCBtX2ZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2UuaAppbmRleCBiNWU0OTc1ZDFkNTkyMDlkODYyYmQ4NDYyZGQ3
Y2RmZmY2ZjU5ZGJkLi43MGJkM2Q0NTRkYjRhZjM4MmVlMmUyMWEyZmQ0OGMyZGYxYTBlMWZlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaApAQCAtNDYsNiArNDYsNyBAQCBjbGFzcyBDU1NGb250
U2VsZWN0b3I7CiBjbGFzcyBDU1NTZWdtZW50ZWRGb250RmFjZTsKIGNsYXNzIENTU1ZhbHVlOwog
Y2xhc3MgQ1NTVmFsdWVMaXN0OworY2xhc3MgRm9udENhY2hlOwogY2xhc3MgRm9udERlc2NyaXB0
aW9uOwogY2xhc3MgRm9udDsKIGNsYXNzIEZvbnRGYWNlOwpAQCAtMTcyLDYgKzE3Myw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCB0aW1lb3V0RmlyZWQoKTsKIAogICAgIERvY3VtZW50KiBkb2N1bWVu
dCgpOworICAgIEZvbnRDYWNoZSYgZm9udENhY2hlRmFsbGJhY2tUb1NpbmdsZXRvbigpOwogCiAg
ICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbV9mYW1pbGllczsKICAgICBWZWN0b3I8VW5pY29kZVJh
bmdlPiBtX3JhbmdlczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFj
ZVNldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTZXQuY3BwCmluZGV4IGVm
ODM5OGYyZWQ0MWNmNGQ4YjY1NmU2ZjAxOTU2N2RkZGQ2YmU2NTMuLjI2MTBiOGJlMGQxMGFiOGNh
YWMzN2Q4NmE0ZWNiZDNjOGY0YTNjMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NGb250RmFjZVNldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0
LmNwcApAQCAtMTEwLDcgKzExMCw3IEBAIHZvaWQgQ1NTRm9udEZhY2VTZXQ6OmVuc3VyZUxvY2Fs
Rm9udEZhY2VzRm9yRmFtaWx5UmVnaXN0ZXJlZChjb25zdCBTdHJpbmcmIGZhbWlsCiAgICAgQWxs
b3dVc2VySW5zdGFsbGVkRm9udHMgYWxsb3dVc2VySW5zdGFsbGVkRm9udHMgPSBBbGxvd1VzZXJJ
bnN0YWxsZWRGb250czo6WWVzOwogICAgIGlmIChtX293bmluZ0ZvbnRTZWxlY3Rvci0+c2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpKQogICAgICAgICBhbGxvd1VzZXJJbnN0YWxsZWRGb250cyA9IG1f
b3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnNldHRpbmdzVmFs
dWVzKCkuc2hvdWxkQWxsb3dVc2VySW5zdGFsbGVkRm9udHMgPyBBbGxvd1VzZXJJbnN0YWxsZWRG
b250czo6WWVzIDogQWxsb3dVc2VySW5zdGFsbGVkRm9udHM6Ok5vOwotICAgIFZlY3RvcjxGb250
U2VsZWN0aW9uQ2FwYWJpbGl0aWVzPiBjYXBhYmlsaXRpZXMgPSBGb250Q2FjaGU6OnNpbmdsZXRv
bigpLmdldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXNJbkZhbWlseShmYW1pbHlOYW1lLCBhbGxv
d1VzZXJJbnN0YWxsZWRGb250cyk7CisgICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRp
ZXM+IGNhcGFiaWxpdGllcyA9IG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25D
b250ZXh0KCktPmZvbnRDYWNoZSgpLmdldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXNJbkZhbWls
eShmYW1pbHlOYW1lLCBhbGxvd1VzZXJJbnN0YWxsZWRGb250cyk7CiAgICAgaWYgKGNhcGFiaWxp
dGllcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtMTE5LDcgKzExOSw3IEBAIHZv
aWQgQ1NTRm9udEZhY2VTZXQ6OmVuc3VyZUxvY2FsRm9udEZhY2VzRm9yRmFtaWx5UmVnaXN0ZXJl
ZChjb25zdCBTdHJpbmcmIGZhbWlsCiAgICAgICAgIFJlZjxDU1NGb250RmFjZT4gZmFjZSA9IENT
U0ZvbnRGYWNlOjpjcmVhdGUobV9vd25pbmdGb250U2VsZWN0b3IuZ2V0KCksIG51bGxwdHIsIG51
bGxwdHIsIHRydWUpOwogICAgICAgICAKICAgICAgICAgUmVmPENTU1ZhbHVlTGlzdD4gZmFtaWx5
TGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQoKTsKLSAgICAgICAgZmFt
aWx5TGlzdC0+YXBwZW5kKENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlRm9udEZhbWls
eVZhbHVlKGZhbWlseU5hbWUpKTsKKyAgICAgICAgZmFtaWx5TGlzdC0+YXBwZW5kKG1fb3duaW5n
Rm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmNzc1ZhbHVlUG9vbCgpLmNy
ZWF0ZUZvbnRGYW1pbHlWYWx1ZShmYW1pbHlOYW1lKSk7CiAgICAgICAgIGZhY2UtPnNldEZhbWls
aWVzKGZhbWlseUxpc3QuZ2V0KCkpOwogICAgICAgICBmYWNlLT5zZXRGb250U2VsZWN0aW9uQ2Fw
YWJpbGl0aWVzKGl0ZW0pOwogICAgICAgICBmYWNlLT5hZG9wdFNvdXJjZShtYWtlVW5pcXVlPENT
U0ZvbnRGYWNlU291cmNlPihmYWNlLmdldCgpLCBmYW1pbHlOYW1lKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcAppbmRleCBiNjdlOGU2NjZjZjliY2E5NThhMjNlZDM3
MDYyYzg2NDRjNmZkMjFlLi5kM2EzYjAwNjY0ZDZkZmU4NWFlMmI5MDI2ZmVlZTJjOTc2NDA2YTI5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAKQEAgLTgxLDcgKzgx
LDcgQEAgQ1NTRm9udEZhY2VTb3VyY2U6OkNTU0ZvbnRGYWNlU291cmNlKENTU0ZvbnRGYWNlJiBv
d25lciwgY29uc3QgU3RyaW5nJiBmYW1pbHlOYW0KICAgICAvLyBUaGlzIG1heSBzeW5jaHJvbm91
c2x5IGNhbGwgZm9udExvYWRlZCgpLgogICAgIG1fZm9udFJlcXVlc3QtPnNldENsaWVudCh0aGlz
KTsKIAotICAgIGlmIChzdGF0dXMoKSA9PSBTdGF0dXM6OlBlbmRpbmcgJiYgIW1fZm9udFJlcXVl
c3QtPmlzTG9hZGluZygpKSB7CisgICAgaWYgKHN0YXR1cygpID09IFN0YXR1czo6UGVuZGluZyAm
JiAhbV9mb250UmVxdWVzdC0+aXNQZW5kaW5nKCkpIHsKICAgICAgICAgc2V0U3RhdHVzKFN0YXR1
czo6TG9hZGluZyk7CiAgICAgICAgIGlmICghc2hvdWxkSWdub3JlRm9udExvYWRDb21wbGV0aW9u
cygpKSB7CiAgICAgICAgICAgICBpZiAobV9mb250UmVxdWVzdC0+ZXJyb3JPY2N1cnJlZCgpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9Gb250RmFjZS5jcHAKaW5kZXggMTlkOWI0NGFjZDQ4NWIzMjMxOWNlOTU5ZjRhZDJk
NjcxMTU4NGY4ZS4uZWJlOTFiMmM4ZWYyZDM4OTZkMzllZDU2YzFmMjFlMmI1NjU1NDU1ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvRm9udEZhY2UuY3BwCkBAIC02MiwxNCArNjIsMTQgQEAgdm9pZCBGb250RmFjZTo6
c2V0RXJyb3JTdGF0ZSgpCiAgICAgbV9iYWNraW5nLT5zZXRFcnJvclN0YXRlKCk7CiB9CiAKLVJl
ZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2UsIGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlw
dG9ycykKK1JlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250
ZXh0JiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIGZhbWlseSwgU291cmNlJiYgc291cmNlLCBjb25z
dCBEZXNjcmlwdG9ycyYgZGVzY3JpcHRvcnMpCiB7Ci0gICAgYXV0byByZXN1bHQgPSBhZG9wdFJl
ZigqbmV3IEZvbnRGYWNlKGRvY3VtZW50LmZvbnRTZWxlY3RvcigpKSk7CisgICAgYXV0byByZXN1
bHQgPSBhZG9wdFJlZigqbmV3IEZvbnRGYWNlKCpjb250ZXh0LmNzc0ZvbnRTZWxlY3RvcigpKSk7
CiAgICAgcmVzdWx0LT5zdXNwZW5kSWZOZWVkZWQoKTsKIAogICAgIGJvb2wgZGF0YVJlcXVpcmVz
QXN5bmNocm9ub3VzTG9hZGluZyA9IHRydWU7CiAKLSAgICBhdXRvIHNldEZhbWlseVJlc3VsdCA9
IHJlc3VsdC0+c2V0RmFtaWx5KGRvY3VtZW50LCBmYW1pbHkpOworICAgIGF1dG8gc2V0RmFtaWx5
UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoY29udGV4dCwgZmFtaWx5KTsKICAgICBpZiAoc2V0
RmFtaWx5UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JT
dGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNzcsMTAgKzc3LDEwIEBAIFJlZjxG
b250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFN0cmlu
ZyYgZmFtaWx5LCBTb3VyY2UmCiAKICAgICBhdXRvIHNvdXJjZUNvbnZlcnNpb25SZXN1bHQgPSBX
VEY6OnN3aXRjaE9uKHNvdXJjZSwKICAgICAgICAgWyZdIChTdHJpbmcmIHN0cmluZykgLT4gRXhj
ZXB0aW9uT3I8dm9pZD4gewotICAgICAgICAgICAgYXV0byB2YWx1ZSA9IENTU1Byb3BlcnR5UGFy
c2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFjZVNyYyhzdHJpbmcsIENTU1BhcnNlckNvbnRleHQo
ZG9jdW1lbnQpKTsKKyAgICAgICAgICAgIGF1dG8gdmFsdWUgPSBDU1NQcm9wZXJ0eVBhcnNlcldv
cmtlclNhZmU6OnBhcnNlRm9udEZhY2VTcmMoc3RyaW5nLCBpczxEb2N1bWVudD4oY29udGV4dCkg
PyBDU1NQYXJzZXJDb250ZXh0KGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0KSkgOiBIVE1MU3Rh
bmRhcmRNb2RlKTsKICAgICAgICAgICAgIGlmICghdmFsdWUpCiAgICAgICAgICAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IFN5bnRheEVycm9yIH07Ci0gICAgICAgICAgICBDU1NGb250RmFjZTo6
YXBwZW5kU291cmNlcyhyZXN1bHQtPmJhY2tpbmcoKSwgKnZhbHVlLCAmZG9jdW1lbnQsIGZhbHNl
KTsKKyAgICAgICAgICAgIENTU0ZvbnRGYWNlOjphcHBlbmRTb3VyY2VzKHJlc3VsdC0+YmFja2lu
ZygpLCAqdmFsdWUsICZjb250ZXh0LCBmYWxzZSk7CiAgICAgICAgICAgICByZXR1cm4geyB9Owog
ICAgICAgICB9LAogICAgICAgICBbJl0gKFJlZlB0cjxBcnJheUJ1ZmZlclZpZXc+JiBhcnJheUJ1
ZmZlclZpZXcpIC0+IEV4Y2VwdGlvbk9yPHZvaWQ+IHsKQEAgLTEwMSwzMiArMTAxLDMyIEBAIFJl
ZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAgICAgfQogCiAgICAgLy8gVGhlc2UgdGVybmFyaWVzIG1h
dGNoIHRoZSBkZWZhdWx0IHN0cmluZ3MgaW5zaWRlIHRoZSBGb250RmFjZURlc2NyaXB0b3JzIGRp
Y3Rpb25hcnkgaW5zaWRlIEZvbnRGYWNlLmlkbC4KLSAgICBhdXRvIHNldFN0eWxlUmVzdWx0ID0g
cmVzdWx0LT5zZXRTdHlsZShkb2N1bWVudCwgZGVzY3JpcHRvcnMuc3R5bGUuaXNFbXB0eSgpID8g
Im5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLnN0eWxlKTsKKyAgICBhdXRvIHNldFN0eWxlUmVzdWx0
ID0gcmVzdWx0LT5zZXRTdHlsZShjb250ZXh0LCBkZXNjcmlwdG9ycy5zdHlsZS5pc0VtcHR5KCkg
PyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3R5bGUpOwogICAgIGlmIChzZXRTdHlsZVJlc3Vs
dC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXRXZWlnaHRSZXN1bHQgPSBy
ZXN1bHQtPnNldFdlaWdodChkb2N1bWVudCwgZGVzY3JpcHRvcnMud2VpZ2h0LmlzRW1wdHkoKSA/
ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOworICAgIGF1dG8gc2V0V2VpZ2h0UmVz
dWx0ID0gcmVzdWx0LT5zZXRXZWlnaHQoY29udGV4dCwgZGVzY3JpcHRvcnMud2VpZ2h0LmlzRW1w
dHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOwogICAgIGlmIChzZXRXZWln
aHRSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRl
KCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0U3RyZXRjaFJl
c3VsdCA9IHJlc3VsdC0+c2V0U3RyZXRjaChkb2N1bWVudCwgZGVzY3JpcHRvcnMuc3RyZXRjaC5p
c0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3RyZXRjaCk7CisgICAgYXV0byBz
ZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJldGNoKGNvbnRleHQsIGRlc2NyaXB0b3Jz
LnN0cmV0Y2guaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLnN0cmV0Y2gpOwog
ICAgIGlmIChzZXRTdHJldGNoUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3Vs
dC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KLSAgICBh
dXRvIHNldFVuaWNvZGVSYW5nZVJlc3VsdCA9IHJlc3VsdC0+c2V0VW5pY29kZVJhbmdlKGRvY3Vt
ZW50LCBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUrMC0xMEZGRkYiX3Mg
OiBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UpOworICAgIGF1dG8gc2V0VW5pY29kZVJhbmdlUmVz
dWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2UoY29udGV4dCwgZGVzY3JpcHRvcnMudW5pY29k
ZVJhbmdlLmlzRW1wdHkoKSA/ICJVKzAtMTBGRkZGIl9zIDogZGVzY3JpcHRvcnMudW5pY29kZVJh
bmdlKTsKICAgICBpZiAoc2V0VW5pY29kZVJhbmdlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAg
ICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0Owog
ICAgIH0KLSAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jlc3VsdCA9IHJlc3VsdC0+c2V0RmVh
dHVyZVNldHRpbmdzKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0dGluZ3MuaXNFbXB0
eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncyk7CisgICAgYXV0
byBzZXRGZWF0dXJlU2V0dGluZ3NSZXN1bHQgPSByZXN1bHQtPnNldEZlYXR1cmVTZXR0aW5ncyhj
b250ZXh0LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0dGluZ3MuaXNFbXB0eSgpID8gIm5vcm1hbCJf
cyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncyk7CiAgICAgaWYgKHNldEZlYXR1cmVTZXR0
aW5nc1Jlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9yU3Rh
dGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXREaXNwbGF5
UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGRvY3VtZW50LCBkZXNjcmlwdG9ycy5kaXNwbGF5
LmlzRW1wdHkoKSA/ICJhdXRvIl9zIDogZGVzY3JpcHRvcnMuZGlzcGxheSk7CisgICAgYXV0byBz
ZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGNvbnRleHQsIGRlc2NyaXB0b3Jz
LmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3MgOiBkZXNjcmlwdG9ycy5kaXNwbGF5KTsKICAg
ICBpZiAoc2V0RGlzcGxheVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQt
PnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTM5OSwxMyArMzk5
LDEzIEBAIFN0cmluZyBGb250RmFjZTo6ZmVhdHVyZVNldHRpbmdzKCkgY29uc3QKICAgICByZXR1
cm4gbGlzdC0+Y3NzVGV4dCgpOwogfQogCi1TdHJpbmcgRm9udEZhY2U6OmRpc3BsYXkoKSBjb25z
dAorU3RyaW5nIEZvbnRGYWNlOjpkaXNwbGF5KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRl
eHQpIGNvbnN0CiB7CiAgICAgbV9iYWNraW5nLT51cGRhdGVTdHlsZUlmTmVlZGVkKCk7CiAgICAg
Y29uc3QgYXV0byYgbG9hZGluZ0JlaGF2aW9yV3JhcHBlZCA9IG1fYmFja2luZy0+bG9hZGluZ0Jl
aGF2aW9yKCk7CiAgICAgaWYgKCFsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLmhhc1ZhbHVlKCkpCiAg
ICAgICAgIHJldHVybiAiYXV0byJfczsKLSAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0
b24oKS5jcmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVlKCkpLT5jc3NUZXh0
KCk7CisgICAgcmV0dXJuIGNvbnRleHQuY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUobG9hZGlu
Z0JlaGF2aW9yV3JhcHBlZC52YWx1ZSgpKS0+Y3NzVGV4dCgpOwogfQogCiBhdXRvIEZvbnRGYWNl
OjpzdGF0dXMoKSBjb25zdCAtPiBMb2FkU3RhdHVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5oCmluZGV4IGYx
YjU1YTgxMTJiODA0MWMxMDQ2NDJjNDBlNjZiZDM2ZGEwM2M3MmEuLjk3N2YzYTk5YWM0YTE3NmMw
NjYzMGU3YzdkMGFhZGQ5NTAxYjVkNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9G
b250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5oCkBAIC01NCw3ICs1
NCw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIAogICAgIHVzaW5nIFNvdXJjZSA9IFZhcmlhbnQ8
U3RyaW5nLCBSZWZQdHI8SlNDOjpBcnJheUJ1ZmZlcj4sIFJlZlB0cjxKU0M6OkFycmF5QnVmZmVy
Vmlldz4+OwotICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShEb2N1bWVudCYsIGNvbnN0
IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMmKTsKKyAgICBzdGF0
aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMmKTsKICAgICBzdGF0aWMg
UmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIENTU0ZvbnRGYWNl
Jik7CiAgICAgdmlydHVhbCB+Rm9udEZhY2UoKTsKIApAQCAtNzIsNyArNzIsNyBAQCBwdWJsaWM6
CiAgICAgU3RyaW5nIHN0cmV0Y2goKSBjb25zdDsKICAgICBTdHJpbmcgdW5pY29kZVJhbmdlKCkg
Y29uc3Q7CiAgICAgU3RyaW5nIGZlYXR1cmVTZXR0aW5ncygpIGNvbnN0OwotICAgIFN0cmluZyBk
aXNwbGF5KCkgY29uc3Q7CisgICAgU3RyaW5nIGRpc3BsYXkoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYpIGNvbnN0OwogCiAgICAgZW51bSBjbGFzcyBMb2FkU3RhdHVzIHsgVW5sb2FkZWQsIExvYWRp
bmcsIExvYWRlZCwgRXJyb3IgfTsKICAgICBMb2FkU3RhdHVzIHN0YXR1cygpIGNvbnN0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9Gb250RmFjZS5pZGwKaW5kZXggMzM0NjdhZmIzYjE4NDQzNTk5ZjFjNmFkYjliZDRlNmNh
NDc1NzM5Mi4uNDFmMzU3MjMwMWZhMzRhZjE5NzExNjU5OTk5ZGJjZTdlYTUwNzM5MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRm9udEZhY2UuaWRsCkBAIC00Myw5ICs0Myw5IEBAIGRpY3Rpb25hcnkgRm9udEZhY2VE
ZXNjcmlwdG9ycyB7CiAKIFsKICAgICBBY3RpdmVET01PYmplY3QsCi0gICAgRXhwb3NlZD1XaW5k
b3cKKyAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2UgRm9udEZhY2Ugewot
ICAgIFtDYWxsV2l0aD1Eb2N1bWVudF0gY29uc3RydWN0b3IoRE9NU3RyaW5nIGZhbWlseSwgKERP
TVN0cmluZyBvciBCaW5hcnlEYXRhKSBzb3VyY2UsIG9wdGlvbmFsIEZvbnRGYWNlRGVzY3JpcHRv
cnMgZGVzY3JpcHRvcnMpOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBj
b25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCAoRE9NU3RyaW5nIG9yIEJpbmFyeURhdGEpIHNv
dXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNjcmlwdG9ycyBkZXNjcmlwdG9ycyk7CiAKICAgICBb
U2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmlu
ZyBmYW1pbHk7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0
dHJpYnV0ZSBET01TdHJpbmcgc3R5bGU7CkBAIC01Myw3ICs1Myw3IEBAIGRpY3Rpb25hcnkgRm9u
dEZhY2VEZXNjcmlwdG9ycyB7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNv
bnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyZXRjaDsKICAgICBbU2V0dGVyQ2FsbFdpdGg9
U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyB1bmljb2RlUmFuZ2U7
CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBE
T01TdHJpbmcgZmVhdHVyZVNldHRpbmdzOwotICAgIFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRFeGVj
dXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRpc3BsYXk7CisgICAgW0NhbGxXaXRo
PVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgZGlzcGxheTsKIAog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGb250RmFjZUxvYWRTdGF0dXMgc3RhdHVzOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggZTMzNDVhODJlNDYyODVhMTli
NTRjZGRhZmY2MjIxOGMwNjVlZTIxZi4uNWRmYWM4MmNiNTdkYTc3ZjNiMjA4NzBiZTYwYzNjNDli
MzQ2MWYyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVz
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaApAQCAtMzUs
OSArMzUsNiBAQCBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250TG9hZFJlcXVlc3Q7
CiBzdHJ1Y3QgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllczsKIAotdGVtcGxhdGUg
PHR5cGVuYW1lIFQ+IGNsYXNzIEZvbnRUYWdnZWRTZXR0aW5nczsKLXVzaW5nIEZvbnRGZWF0dXJl
U2V0dGluZ3MgPSBGb250VGFnZ2VkU2V0dGluZ3M8aW50PjsKLQogY2xhc3MgRm9udExvYWRSZXF1
ZXN0Q2xpZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Gb250TG9hZFJlcXVlc3RDbGllbnQo
KSA9IGRlZmF1bHQ7CkBAIC00OSw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Gb250
TG9hZFJlcXVlc3QoKSA9IGRlZmF1bHQ7CiAKICAgICB2aXJ0dWFsIGNvbnN0IFVSTCYgdXJsKCkg
Y29uc3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCA9IDA7CiAgICAg
dmlydHVhbCBib29sIGlzTG9hZGluZygpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZXJy
b3JPY2N1cnJlZCgpIGNvbnN0ID0gMDsKIApAQCAtNTgsNiArNTYsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIHNldENsaWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqKSA9IDA7CiAKICAg
ICB2aXJ0dWFsIGJvb2wgaXNDYWNoZWRGb250TG9hZFJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBm
YWxzZTsgfQorICAgIHZpcnR1YWwgYm9vbCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpIGNvbnN0
IHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKaW5k
ZXggNDA1MzU3YThlNWQwYjdmMGI2YTFhZGU0ZGNhMDg4YTFiMjc5ZjE3MC4uNzM3NmM1ODhmODA4
MWMwYWVhMDAzZjMwNmYyN2I0MGEwZTA4NjcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaApAQCAtNTAsNiArNTAsNyBAQCBw
dWJsaWM6CiAKIHByaXZhdGU6CiAgICAgY29uc3QgVVJMJiB1cmwoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBtX2ZvbnQtPnVybCgpOyB9CisgICAgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7
IHJldHVybiBtX2ZvbnQtPnN0YXR1cygpID09IENhY2hlZFJlc291cmNlOjpTdGF0dXM6OlBlbmRp
bmc7IH0KICAgICBib29sIGlzTG9hZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZm9udC0+
aXNMb2FkaW5nKCk7IH0KICAgICBib29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBtX2ZvbnQtPmVycm9yT2NjdXJyZWQoKTsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuY3BwCmluZGV4IGIxMWE4NzY5ZTg2MGI5M2IwOWQ3MzI0MWU1YmViZDU4
MDhiNjJiOGYuLmM1MzkwY2I2MTEyOGE2YjAzZTMxNTNlNzY4NjExYjA5NmMxOThhYjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCkBAIC01OCwxNiArNTgsMTYg
QEAgY29uc3QgZmxvYXQgZW1waGFzaXNNYXJrRm9udFNpemVNdWx0aXBsaWVyID0gMC41ZjsKIAog
REVGSU5FX0FMTE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihGb250KTsKIAotUmVmPEZvbnQ+
IEZvbnQ6OmNyZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udDo6T3Jp
Z2luIG9yaWdpbiwgZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50
aGV0aWNJdGFsaWMpCitSZWY8Rm9udD4gRm9udDo6Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYg
Zm9udEZhY2VEYXRhLCBGb250OjpPcmlnaW4gb3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBz
eW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgRm9udENhY2hlKiBmb250Q2FjaGVG
b3JWZXJ0aWNhbERhdGEpCiB7CiAgICAgYm9vbCB3cmFwcGluZzsKICAgICBhdXRvIGN1c3RvbUZv
bnREYXRhID0gQ2FjaGVkRm9udDo6Y3JlYXRlQ3VzdG9tRm9udERhdGEoZm9udEZhY2VEYXRhLmdl
dCgpLCB7IH0sIHdyYXBwaW5nKTsKICAgICBGb250RGVzY3JpcHRpb24gZGVzY3JpcHRpb247CiAg
ICAgZGVzY3JpcHRpb24uc2V0Q29tcHV0ZWRTaXplKGZvbnRTaXplKTsKLSAgICByZXR1cm4gRm9u
dDo6Y3JlYXRlKENhY2hlZEZvbnQ6OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCpjdXN0b21G
b250RGF0YSwgZGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgeyB9
LCB7IH0pLCBvcmlnaW4pOworICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxh
dGZvcm1EYXRhRnJvbUN1c3RvbURhdGEoKmN1c3RvbUZvbnREYXRhLCBkZXNjcmlwdGlvbiwgc3lu
dGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCB7IH0sIHsgfSksIG9yaWdpbiwgZm9udENhY2hl
Rm9yVmVydGljYWxEYXRhKTsKIH0KIAotRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRh
JiBwbGF0Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWws
IFZpc2liaWxpdHkgdmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZh
bGxiYWNrLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IHJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcikKK0ZvbnQ6OkZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxh
dGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsLCBWaXNp
YmlsaXR5IHZpc2liaWxpdHksIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFj
aywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiByZW5kZXJpbmdSZXNvdXJj
ZUlkZW50aWZpZXIsIEZvbnRDYWNoZSogZm9udENhY2hlRm9yVmVydGljYWxEYXRhKQogICAgIDog
bV9wbGF0Zm9ybURhdGEocGxhdGZvcm1EYXRhKQogICAgICwgbV9yZW5kZXJpbmdSZXNvdXJjZUlk
ZW50aWZpZXIocmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9vcmlnaW4ob3Jp
Z2luKQpAQCAtODgsNyArODgsNyBAQCBGb250OjpGb250KGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEm
IHBsYXRmb3JtRGF0YSwgT3JpZ2luIG9yaWdpbiwgSW50ZXJzdGl0aWFsIGludAogICAgIHBsYXRm
b3JtQ2hhcldpZHRoSW5pdCgpOwogI2lmIEVOQUJMRShPUEVOVFlQRV9WRVJUSUNBTCkKICAgICBp
ZiAocGxhdGZvcm1EYXRhLm9yaWVudGF0aW9uKCkgPT0gRm9udE9yaWVudGF0aW9uOjpWZXJ0aWNh
bCAmJiBvcmllbnRhdGlvbkZhbGxiYWNrID09IE9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vKSB7Ci0g
ICAgICAgIG1fdmVydGljYWxEYXRhID0gRm9udENhY2hlOjpzaW5nbGV0b24oKS52ZXJ0aWNhbERh
dGEocGxhdGZvcm1EYXRhKTsKKyAgICAgICAgbV92ZXJ0aWNhbERhdGEgPSBmb250Q2FjaGVGb3JW
ZXJ0aWNhbERhdGEgPyBmb250Q2FjaGVGb3JWZXJ0aWNhbERhdGEtPnZlcnRpY2FsRGF0YShwbGF0
Zm9ybURhdGEpIDogRm9udENhY2hlOjpzaW5nbGV0b24oKS52ZXJ0aWNhbERhdGEocGxhdGZvcm1E
YXRhKTsKICAgICAgICAgbV9oYXNWZXJ0aWNhbEdseXBocyA9IG1fdmVydGljYWxEYXRhLmdldCgp
ICYmIG1fdmVydGljYWxEYXRhLT5oYXNWZXJ0aWNhbE1ldHJpY3MoKTsKICAgICB9CiAjZW5kaWYK
QEAgLTU2OCwxMyArNTY4LDEzIEBAIHN0YXRpYyBTeXN0ZW1GYWxsYmFja0NhY2hlJiBzeXN0ZW1G
YWxsYmFja0NhY2hlKCkKICAgICByZXR1cm4gbWFwLmdldCgpOwogfQogCi1SZWZQdHI8Rm9udD4g
Rm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyLCBj
b25zdCBGb250RGVzY3JpcHRpb24mIGRlc2NyaXB0aW9uLCBJc0ZvclBsYXRmb3JtRm9udCBpc0Zv
clBsYXRmb3JtRm9udCkgY29uc3QKK1JlZlB0cjxGb250PiBGb250OjpzeXN0ZW1GYWxsYmFja0Zv
bnRGb3JDaGFyYWN0ZXIoVUNoYXIzMiBjaGFyYWN0ZXIsIGNvbnN0IEZvbnREZXNjcmlwdGlvbiYg
ZGVzY3JpcHRpb24sIElzRm9yUGxhdGZvcm1Gb250IGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2Fj
aGUmIGZvbnRDYWNoZSkgY29uc3QKIHsKICAgICBhdXRvIGZvbnRBZGRSZXN1bHQgPSBzeXN0ZW1G
YWxsYmFja0NhY2hlKCkuYWRkKHRoaXMsIENoYXJhY3RlckZhbGxiYWNrTWFwKCkpOwogCiAgICAg
aWYgKCFjaGFyYWN0ZXIpIHsKICAgICAgICAgVUNoYXIgY29kZVVuaXQgPSAwOwotICAgICAgICBy
ZXR1cm4gRm9udENhY2hlOjpzaW5nbGV0b24oKS5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMo
ZGVzY3JpcHRpb24sIHRoaXMsIGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZlckNv
bG9yZWRGb250OjpObywgJmNvZGVVbml0LCAxKTsKKyAgICAgICAgcmV0dXJuIGZvbnRDYWNoZS5z
eXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMoZGVzY3JpcHRpb24sIHRoaXMsIGlzRm9yUGxhdGZv
cm1Gb250LCBGb250Q2FjaGU6OlByZWZlckNvbG9yZWRGb250OjpObywgJmNvZGVVbml0LCAxKTsK
ICAgICB9CiAKICAgICBhdXRvIGtleSA9IENoYXJhY3RlckZhbGxiYWNrTWFwS2V5IHsgZGVzY3Jp
cHRpb24uY29tcHV0ZWRMb2NhbGUoKSwgY2hhcmFjdGVyLCBpc0ZvclBsYXRmb3JtRm9udCAhPSBJ
c0ZvclBsYXRmb3JtRm9udDo6Tm8gfTsKQEAgLTU4OSw3ICs1ODksNyBAQCBSZWZQdHI8Rm9udD4g
Rm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyLCBj
b25zdCBGb250RAogICAgICAgICAgICAgY29kZVVuaXRzWzFdID0gVTE2X1RSQUlMKGNoYXJhY3Rl
cik7CiAgICAgICAgICAgICBjb2RlVW5pdHNMZW5ndGggPSAyOwogICAgICAgICB9Ci0gICAgICAg
IGF1dG8gZm9udCA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFy
YWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQ
cmVmZXJDb2xvcmVkRm9udDo6Tm8sIGNvZGVVbml0cywgY29kZVVuaXRzTGVuZ3RoKS5nZXQoKTsK
KyAgICAgICAgYXV0byBmb250ID0gZm9udENhY2hlLnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVy
cyhkZXNjcmlwdGlvbiwgdGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVy
Q29sb3JlZEZvbnQ6Ok5vLCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0KCk7CiAgICAg
ICAgIGlmIChmb250KQogICAgICAgICAgICAgZm9udC0+bV9pc1VzZWRJblN5c3RlbUZhbGxiYWNr
Q2FjaGUgPSB0cnVlOwogICAgICAgICByZXR1cm4gZm9udDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuaAppbmRleCA2NTNiMzM4YjdjMzQyNTYyNzIyNDk2MTFlMjcwMWFjNWQy
NjNlOTY1Li44NTI1NDJjMzc2MjM0M2UzMzAyMjg3ODg1NmI0YTk4OGI1YjU1YzVhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCkBAIC01Nyw2ICs1Nyw3IEBAIGludGVy
ZmFjZSBJRFdyaXRlR2RpSW50ZXJvcDsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBG
b250Q2FjaGU7CiBjbGFzcyBHbHlwaFBhZ2U7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFz
cyBTaGFyZWRCdWZmZXI7CkBAIC05NSw5ICs5NiwxNCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFJl
ZjxGb250PiBjcmVhdGUoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmln
aW4gb3JpZ2luID0gT3JpZ2luOjpMb2NhbCwgSW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCA9IElu
dGVyc3RpdGlhbDo6Tm8sCiAgICAgICAgIFZpc2liaWxpdHkgdmlzaWJpbGl0eSA9IFZpc2liaWxp
dHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjayA9IE9y
aWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZp
ZXI+IGlkZW50aWZpZXIgPSBXVEY6Om51bGxvcHQpCiAgICAgewotICAgICAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBGb250KHBsYXRmb3JtRGF0YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2li
aWxpdHksIG9yaWVudGF0aW9uRmFsbGJhY2ssIGlkZW50aWZpZXIpKTsKKyAgICAgICAgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgRm9udChwbGF0Zm9ybURhdGEsIG9yaWdpbiwgaW50ZXJzdGl0aWFsLCB2
aXNpYmlsaXR5LCBvcmllbnRhdGlvbkZhbGxiYWNrLCBpZGVudGlmaWVyLCBudWxscHRyKSk7CiAg
ICAgfQotICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKFJlZjxTaGFy
ZWRCdWZmZXI+JiYgZm9udEZhY2VEYXRhLCBGb250OjpPcmlnaW4sIGZsb2F0IGZvbnRTaXplLCBi
b29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljKTsKKyAgICBzdGF0aWMgUmVm
PEZvbnQ+IGNyZWF0ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIE9yaWdp
biBvcmlnaW4sIEZvbnRDYWNoZSogZm9udENhY2hlRm9yVmVydGljYWxEYXRhLCBJbnRlcnN0aXRp
YWwgaW50ZXJzdGl0aWFsID0gSW50ZXJzdGl0aWFsOjpObywKKyAgICAgICAgVmlzaWJpbGl0eSB2
aXNpYmlsaXR5ID0gVmlzaWJpbGl0eTo6VmlzaWJsZSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmll
bnRhdGlvbkZhbGxiYWNrID0gT3JpZW50YXRpb25GYWxsYmFjazo6Tm8sIE9wdGlvbmFsPFJlbmRl
cmluZ1Jlc291cmNlSWRlbnRpZmllcj4gaWRlbnRpZmllciA9IFdURjo6bnVsbG9wdCkKKyAgICB7
CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvbnQocGxhdGZvcm1EYXRhLCBvcmlnaW4s
IGludGVyc3RpdGlhbCwgdmlzaWJpbGl0eSwgb3JpZW50YXRpb25GYWxsYmFjaywgaWRlbnRpZmll
ciwgZm9udENhY2hlRm9yVmVydGljYWxEYXRhKSk7CisgICAgfQorICAgIFdFQkNPUkVfRVhQT1JU
IHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZhY2VEYXRh
LCBGb250OjpPcmlnaW4sIGZsb2F0IGZvbnRTaXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wg
c3ludGhldGljSXRhbGljLCBGb250Q2FjaGUqID0gbnVsbHB0cik7CiAKICAgICBXRUJDT1JFX0VY
UE9SVCB+Rm9udCgpOwogCkBAIC0xODksNyArMTk1LDcgQEAgcHVibGljOgogICAgIGJvb2wgc3Vw
cG9ydHNDb2RlUG9pbnQoVUNoYXIzMikgY29uc3Q7CiAgICAgYm9vbCBwbGF0Zm9ybVN1cHBvcnRz
Q29kZVBvaW50KFVDaGFyMzIsIE9wdGlvbmFsPFVDaGFyMzI+IHZhcmlhdGlvbiA9IFdURjo6bnVs
bG9wdCkgY29uc3Q7CiAKLSAgICBSZWZQdHI8Rm9udD4gc3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hh
cmFjdGVyKFVDaGFyMzIsIGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIElzRm9yUGxhdGZvcm1Gb250
KSBjb25zdDsKKyAgICBSZWZQdHI8Rm9udD4gc3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVy
KFVDaGFyMzIsIGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIElzRm9yUGxhdGZvcm1Gb250LCBGb250
Q2FjaGUmKSBjb25zdDsKIAogICAgIGNvbnN0IEdseXBoUGFnZSogZ2x5cGhQYWdlKHVuc2lnbmVk
IHBhZ2VOdW1iZXIpIGNvbnN0OwogCkBAIC0yMzIsNyArMjM4LDcgQEAgcHVibGljOgogI2VuZGlm
CiAKIHByaXZhdGU6Ci0gICAgV0VCQ09SRV9FWFBPUlQgRm9udChjb25zdCBGb250UGxhdGZvcm1E
YXRhJiwgT3JpZ2luLCBJbnRlcnN0aXRpYWwsIFZpc2liaWxpdHksIE9yaWVudGF0aW9uRmFsbGJh
Y2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcj4pOworICAgIFdFQkNPUkVf
RVhQT1JUIEZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYsIE9yaWdpbiwgSW50ZXJzdGl0aWFs
LCBWaXNpYmlsaXR5LCBPcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNv
dXJjZUlkZW50aWZpZXI+LCBGb250Q2FjaGUqKTsKIAogICAgIHZvaWQgcGxhdGZvcm1Jbml0KCk7
CiAgICAgdm9pZCBwbGF0Zm9ybUdseXBoSW5pdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAKaW5kZXggOGJiMzNlZDU3YWU4NDJjZjEwOTQ2YWQy
NzQ3Yjk1OTZjYjA0YTU4Ni4uMDJiNTVkMTIwZDM4M2EzNmU4MGU4NGQxNzY1YjE3NTQ5YzA3MTNi
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuY3Bw
CkBAIC0yODAsNyArMjgwLDcgQEAgUmVmPEZvbnQ+IEZvbnRDYWNoZTo6Zm9udEZvclBsYXRmb3Jt
RGF0YShjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEpCiAjZW5kaWYKIAogICAg
IGF1dG8gYWRkUmVzdWx0ID0gbV9mb250RGF0YUNhY2hlcy0+ZGF0YS5lbnN1cmUocGxhdGZvcm1E
YXRhLCBbJl0gewotICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHBsYXRmb3JtRGF0YSk7Cisg
ICAgICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRhLCBGb250OjpPcmlnaW46Okxv
Y2FsLCB0aGlzKTsKICAgICB9KTsKIAogICAgIEFTU0VSVChhZGRSZXN1bHQuaXRlcmF0b3ItPnZh
bHVlLT5wbGF0Zm9ybURhdGEoKSA9PSBwbGF0Zm9ybURhdGEpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcAppbmRleCA5ZjY1
ZDI5OThmOTQ4Njk3M2Q0YmJmMThkZTI2ZjgyYjA0NDM5ZmNhLi5lZDk0MWQxZWQwZmVhNGE0MmMy
ZTk1N2FiNzYwODNlNDRlMTMyNjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcApAQCAtMTg5LDcgKzE4OSw3IEBAIGNv
bnN0IEZvbnRSYW5nZXMmIEZvbnRDYXNjYWRlRm9udHM6OnJlYWxpemVGYWxsYmFja1Jhbmdlc0F0
KGNvbnN0IEZvbnRDYXNjYWRlRGVzCiAgICAgaWYgKCFpbmRleCkgewogICAgICAgICBmb250UmFu
Z2VzID0gcmVhbGl6ZU5leHRGYWxsYmFjayhkZXNjcmlwdGlvbiwgbV9sYXN0UmVhbGl6ZWRGYWxs
YmFja0luZGV4LCBtX2ZvbnRTZWxlY3Rvci5nZXQoKSk7CiAgICAgICAgIGlmIChmb250UmFuZ2Vz
LmlzTnVsbCgpICYmIG1fZm9udFNlbGVjdG9yKQotICAgICAgICAgICAgZm9udFJhbmdlcyA9IG1f
Zm9udFNlbGVjdG9yLT5mb250UmFuZ2VzRm9yRmFtaWx5KGRlc2NyaXB0aW9uLCBzdGFuZGFyZEZh
bWlseSk7CisgICAgICAgICAgICBmb250UmFuZ2VzID0gbV9mb250U2VsZWN0b3ItPmZvbnRSYW5n
ZXNGb3JGYW1pbHkoZGVzY3JpcHRpb24sIGZhbWlseU5hbWVzRGF0YS0+YXQoRmFtaWx5TmFtZXNJ
bmRleDo6U3RhbmRhcmRGYW1pbHkpKTsKICAgICAgICAgaWYgKGZvbnRSYW5nZXMuaXNOdWxsKCkp
CiAgICAgICAgICAgICBmb250UmFuZ2VzID0gRm9udFJhbmdlcyhGb250Q2FjaGU6OmZvbnRDYWNo
ZUZhbGxiYWNrVG9TaW5nbGV0b24obV9mb250U2VsZWN0b3IpLmxhc3RSZXNvcnRGYWxsYmFja0Zv
bnQoZGVzY3JpcHRpb24pKTsKICAgICAgICAgcmV0dXJuIGZvbnRSYW5nZXM7CkBAIC0zNTEsNyAr
MzUxLDcgQEAgR2x5cGhEYXRhIEZvbnRDYXNjYWRlRm9udHM6OmdseXBoRGF0YUZvclN5c3RlbUZh
bGxiYWNrKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdAogICAgIGlmICghZm9udCkKICAgICAgICAg
Zm9udCA9ICZyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChkZXNjcmlwdGlvbiwgMCkuZm9udEZvckZp
cnN0UmFuZ2UoKTsKIAotICAgIGF1dG8gc3lzdGVtRmFsbGJhY2tGb250ID0gZm9udC0+c3lzdGVt
RmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKGNoYXJhY3RlciwgZGVzY3JpcHRpb24sIG1faXNGb3JQ
bGF0Zm9ybUZvbnQgPyBJc0ZvclBsYXRmb3JtRm9udDo6WWVzIDogSXNGb3JQbGF0Zm9ybUZvbnQ6
Ok5vKTsKKyAgICBhdXRvIHN5c3RlbUZhbGxiYWNrRm9udCA9IGZvbnQtPnN5c3RlbUZhbGxiYWNr
Rm9udEZvckNoYXJhY3RlcihjaGFyYWN0ZXIsIGRlc2NyaXB0aW9uLCBtX2lzRm9yUGxhdGZvcm1G
b250ID8gSXNGb3JQbGF0Zm9ybUZvbnQ6OlllcyA6IElzRm9yUGxhdGZvcm1Gb250OjpObywgRm9u
dENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKSk7CiAg
ICAgaWYgKCFzeXN0ZW1GYWxsYmFja0ZvbnQpCiAgICAgICAgIHJldHVybiBHbHlwaERhdGEoKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dl
ZFNldHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250VGFnZ2Vk
U2V0dGluZ3MuaAppbmRleCAxMjhkYWY3ZTYzYmM3M2RhOWZlZDFjYzNhOWU0MmFjZjU2ODkzOTg4
Li4wNzgzYzUyYjFjMzQzZTFkZDVlNzg3ZmE0NzQwNGNlNGVmNjVhZDQ3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250VGFnZ2VkU2V0dGluZ3MuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250VGFnZ2VkU2V0dGluZ3MuaApA
QCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSA8YXJyYXk+CiAjaW5jbHVkZSA8d3RmL0hhc2hU
cmFpdHMuaD4KKyNpbmNsdWRlIDx3dGYvSGFzaGVyLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgogCiBuYW1lc3BhY2UgV1RGIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2Vy
Rm9udExvYWRSZXF1ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MDFkZGI5ZjNhMzczNzgxY2Y5NWYzZDBi
YzU2MWM2ODk3Y2U4Mjc0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwCkBAIC0wLDAgKzEsMTUzIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOSBUb3JjaCBNb2JpbGUsIEluYy4KKyAqIENvcHlyaWdo
dCAoQykgMjAyMSBNZXRyb2xvZ2ljYWwgR3JvdXAgQi5WLgorICogQ29weXJpZ2h0IChDKSAyMDIx
IElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
V29ya2VyRm9udExvYWRSZXF1ZXN0LmgiCisKKyNpbmNsdWRlICJGb250LmgiCisjaW5jbHVkZSAi
Rm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIgorI2luY2x1ZGUgIkZvbnRTZWxlY3Rpb25BbGdvcml0
aG0uaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKKyNpbmNsdWRlICJTZXJ2
aWNlV29ya2VyLmgiCisjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisjaW5jbHVkZSAiV09GRkZp
bGVGb3JtYXQuaCIKKyNpbmNsdWRlICJXb3JrZXJHbG9iYWxTY29wZS5oIgorI2luY2x1ZGUgIldv
cmtlclRocmVhZGFibGVMb2FkZXIuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OldvcmtlckZvbnRMb2FkUmVxdWVzdChVUkwmJiB1cmwsIExvYWRlZEZy
b21PcGFxdWVTb3VyY2UgbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkKKyAgICA6IG1fdXJsKHVybCkK
KyAgICAsIG1fbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZShsb2FkZWRGcm9tT3BhcXVlU291cmNlKQor
eworfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6bG9hZChTY3JpcHRFeGVjdXRpb25D
b250ZXh0JiBjb250ZXh0KQoreworICAgIEFTU0VSVChpczxXb3JrZXJHbG9iYWxTY29wZT4oY29u
dGV4dCkpOworICAgIGF1dG8mIHdvcmtlckdsb2JhbFNjb3BlID0gZG93bmNhc3Q8V29ya2VyR2xv
YmFsU2NvcGU+KGNvbnRleHQpOworICAgIG1fY29udGV4dCA9IG1ha2VXZWFrUHRyKGNvbnRleHQp
OworCisgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgeyBtX3VybCB9OworICAgIEFTU0VSVChy
ZXF1ZXN0Lmh0dHBNZXRob2QoKSA9PSAiR0VUIik7CisKKyAgICBGZXRjaE9wdGlvbnMgZmV0Y2hP
cHRpb25zOworICAgIGZldGNoT3B0aW9ucy5tb2RlID0gRmV0Y2hPcHRpb25zOjpNb2RlOjpTYW1l
T3JpZ2luOworICAgIGZldGNoT3B0aW9ucy5jcmVkZW50aWFscyA9IHdvcmtlckdsb2JhbFNjb3Bl
LmNyZWRlbnRpYWxzKCk7CisgICAgZmV0Y2hPcHRpb25zLmNhY2hlID0gRmV0Y2hPcHRpb25zOjpD
YWNoZTo6RGVmYXVsdDsKKyAgICBmZXRjaE9wdGlvbnMucmVkaXJlY3QgPSBGZXRjaE9wdGlvbnM6
OlJlZGlyZWN0OjpGb2xsb3c7CisgICAgZmV0Y2hPcHRpb25zLmRlc3RpbmF0aW9uID0gRmV0Y2hP
cHRpb25zOjpEZXN0aW5hdGlvbjo6V29ya2VyOworCisgICAgVGhyZWFkYWJsZUxvYWRlck9wdGlv
bnMgb3B0aW9ucyB7IFdURk1vdmUoZmV0Y2hPcHRpb25zKSB9OworICAgIG9wdGlvbnMuc2VuZExv
YWRDYWxsYmFja3MgPSBTZW5kQ2FsbGJhY2tQb2xpY3k6OlNlbmRDYWxsYmFja3M7CisgICAgb3B0
aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lFbmZvcmNlbWVudCA9IGNvbnRleHQuc2hvdWxkQnlw
YXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5KCkgPyBDb250ZW50U2VjdXJpdHlQb2xp
Y3lFbmZvcmNlbWVudDo6RG9Ob3RFbmZvcmNlIDogQ29udGVudFNlY3VyaXR5UG9saWN5RW5mb3Jj
ZW1lbnQ6OkVuZm9yY2VDaGlsZFNyY0RpcmVjdGl2ZTsKKyAgICBvcHRpb25zLmxvYWRlZEZyb21P
cGFxdWVTb3VyY2UgPSBtX2xvYWRlZEZyb21PcGFxdWVTb3VyY2U7CisKKyAgICBvcHRpb25zLnNl
cnZpY2VXb3JrZXJzTW9kZSA9IFNlcnZpY2VXb3JrZXJzTW9kZTo6QWxsOworI2lmIEVOQUJMRShT
RVJWSUNFX1dPUktFUikKKyAgICBpZiAoYXV0byogYWN0aXZlU2VydmljZVdvcmtlciA9IGNvbnRl
eHQuYWN0aXZlU2VydmljZVdvcmtlcigpKQorICAgICAgICBvcHRpb25zLnNlcnZpY2VXb3JrZXJS
ZWdpc3RyYXRpb25JZGVudGlmaWVyID0gYWN0aXZlU2VydmljZVdvcmtlci0+cmVnaXN0cmF0aW9u
SWRlbnRpZmllcigpOworI2VuZGlmCisKKyAgICBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpsb2Fk
UmVzb3VyY2VTeW5jaHJvbm91c2x5KHdvcmtlckdsb2JhbFNjb3BlLCBXVEZNb3ZlKHJlcXVlc3Qp
LCAqdGhpcywgb3B0aW9ucyk7Cit9CisKK2Jvb2wgV29ya2VyRm9udExvYWRSZXF1ZXN0OjplbnN1
cmVDdXN0b21Gb250RGF0YShjb25zdCBBdG9tU3RyaW5nJikKK3sKKyNpZiAhUExBVEZPUk0oQ09D
T0EpCisgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEgJiYgIW1fZXJyb3JPY2N1cnJl
ZCAmJiAhbV9pc0xvYWRpbmcgJiYgbV9kYXRhICYmIGlzV09GRigqbV9kYXRhKSkgeworICAgICAg
ICBWZWN0b3I8Y2hhcj4gY29udmVydGVkRm9udDsKKyAgICAgICAgaWYgKGNvbnZlcnRXT0ZGVG9T
Zm50KCptX2RhdGEsIGNvbnZlcnRlZEZvbnQpKQorICAgICAgICAgICAgbV9kYXRhID0gU2hhcmVk
QnVmZmVyOjpjcmVhdGUoV1RGTW92ZShjb252ZXJ0ZWRGb250KSk7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIG1fZXJyb3JPY2N1cnJlZCA9IHRydWU7CisgICAgfQorI2VuZGlmCisKKyAgICBp
ZiAoIW1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YSAmJiAhbV9lcnJvck9jY3VycmVkICYmICFtX2lz
TG9hZGluZyAmJiBtX2RhdGEpIHsKKyAgICAgICAgbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhID0g
Y3JlYXRlRm9udEN1c3RvbVBsYXRmb3JtRGF0YSgqbV9kYXRhLCBtX3VybC5mcmFnbWVudElkZW50
aWZpZXIoKS50b1N0cmluZygpKTsKKyAgICAgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURh
dGEpCisgICAgICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOworICAgIH0KKworICAgIHJl
dHVybiBtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuZ2V0KCk7Cit9CisKK1JlZlB0cjxGb250PiBX
b3JrZXJGb250TG9hZFJlcXVlc3Q6OmNyZWF0ZUZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBm
b250RGVzY3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcmLCBib29sIHN5bnRoZXRpY0JvbGQsIGJv
b2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZl
YXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJp
bGl0aWVzKQoreworICAgIEFTU0VSVChtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEpOworICAgIEFT
U0VSVChtX2NvbnRleHQpOworICAgIHJldHVybiBGb250OjpjcmVhdGUobV9mb250Q3VzdG9tUGxh
dGZvcm1EYXRhLT5mb250UGxhdGZvcm1EYXRhKGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9s
ZCwgc3ludGhldGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNhcGFiaWxpdGll
cyksIEZvbnQ6Ok9yaWdpbjo6UmVtb3RlLCAmbV9jb250ZXh0LT5mb250Q2FjaGUoKSk7Cit9CisK
K3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xp
ZW50KiBjbGllbnQpCit7CisgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQgPSBjbGllbnQ7CisK
KyAgICBpZiAobV9ub3RpZnlPbkNsaWVudFNldCkgeworICAgICAgICBtX25vdGlmeU9uQ2xpZW50
U2V0ID0gZmFsc2U7CisgICAgICAgIG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50LT5mb250TG9hZGVk
KCp0aGlzKTsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNl
aXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCit7CisgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgIT0gMiAmJiBy
ZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKSB7CisgICAgICAgIG1fZXJyb3JPY2N1cnJlZCA9IHRy
dWU7CisgICAgICAgIHJldHVybjsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1
ZXN0OjpkaWRSZWNlaXZlRGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKK3sK
KyAgICBpZiAobV9lcnJvck9jY3VycmVkKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoIW1f
ZGF0YSkKKyAgICAgICAgbV9kYXRhID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoKTsKKworICAgIG1f
ZGF0YS0+YXBwZW5kKGRhdGEsIGRhdGFMZW5ndGgpOworfQorCit2b2lkIFdvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKQoreworICAgIG1faXNMb2Fk
aW5nID0gZmFsc2U7CisKKyAgICBpZiAoIW1fZXJyb3JPY2N1cnJlZCkgeworICAgICAgICBpZiAo
bV9mb250TG9hZFJlcXVlc3RDbGllbnQpCisgICAgICAgICAgICBtX2ZvbnRMb2FkUmVxdWVzdENs
aWVudC0+Zm9udExvYWRlZCgqdGhpcyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fbm90
aWZ5T25DbGllbnRTZXQgPSB0cnVlOworICAgIH0KK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJl
cXVlc3Q6OmRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpCit7CisgICAgbV9lcnJvck9jY3Vy
cmVkID0gdHJ1ZTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2UwYjIwYTg5
YjM2OGZiNWFiMjM3YWZkMGVmZDQ0MmE4NDY0MDQyOQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKQEAgLTAsMCArMSw4MyBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBNZXRyb2xvZ2ljYWwgR3JvdXAgQi5WLgorICog
Q29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUK
KyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UK
KworI2luY2x1ZGUgIkZvbnRMb2FkUmVxdWVzdC5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVy
T3B0aW9ucy5oIgorI2luY2x1ZGUgIlRocmVhZGFibGVMb2FkZXJDbGllbnQuaCIKKyNpbmNsdWRl
IDx3dGYvUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1VSTC5oPgorI2luY2x1ZGUgPHd0Zi9XZWFr
UHRyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dDsKK2NsYXNzIFNoYXJlZEJ1ZmZlcjsKK2NsYXNzIFdvcmtlckdsb2JhbFNjb3BlOworc3Ry
dWN0IEZvbnRDdXN0b21QbGF0Zm9ybURhdGE7CisKK2NsYXNzIFdvcmtlckZvbnRMb2FkUmVxdWVz
dCA6IHB1YmxpYyBGb250TG9hZFJlcXVlc3QsIHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBXb3JrZXJGb250
TG9hZFJlcXVlc3QoVVJMJiYsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UpOworICAgIH5Xb3JrZXJG
b250TG9hZFJlcXVlc3QoKSA9IGRlZmF1bHQ7CisKKyAgICB2b2lkIGxvYWQoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYpOworCitwcml2YXRlOgorICAgIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgZmlu
YWwgeyByZXR1cm4gbV91cmw7IH0KKyAgICBib29sIGlzUGVuZGluZygpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuICFtX2lzTG9hZGluZyAmJiAhbV9lcnJvck9jY3VycmVkICYmICFtX2RhdGE7IH0KKyAg
ICBib29sIGlzTG9hZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1faXNMb2FkaW5nOyB9Cisg
ICAgYm9vbCBlcnJvck9jY3VycmVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9lcnJvck9jY3Vy
cmVkOyB9CisKKyAgICBib29sIGVuc3VyZUN1c3RvbUZvbnREYXRhKGNvbnN0IEF0b21TdHJpbmcm
IHJlbW90ZVVSSSkgZmluYWw7CisgICAgUmVmUHRyPEZvbnQ+IGNyZWF0ZUZvbnQoY29uc3QgRm9u
dERlc2NyaXB0aW9uJiwgY29uc3QgQXRvbVN0cmluZyYgcmVtb3RlVVJJLCBib29sIHN5bnRoZXRp
Y0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiwg
Rm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcykgZmluYWw7CisKKyAgICB2b2lkIHNl
dENsaWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqKSBmaW5hbDsKKworICAgIGJvb2wgaXNXb3Jr
ZXJGb250TG9hZFJlcXVlc3QoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CisKKyAgICB2
b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IGNo
YXIqIGRhdGEsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRp
bmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZhaWwoY29u
c3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOworCisgICAgVVJMIG1fdXJsOworICAgIExvYWRlZEZy
b21PcGFxdWVTb3VyY2UgbV9sb2FkZWRGcm9tT3BhcXVlU291cmNlOworCisgICAgYm9vbCBtX2lz
TG9hZGluZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX25vdGlmeU9uQ2xpZW50U2V0IHsgZmFsc2Ug
fTsKKyAgICBib29sIG1fZXJyb3JPY2N1cnJlZCB7IGZhbHNlIH07CisgICAgRm9udExvYWRSZXF1
ZXN0Q2xpZW50KiBtX2ZvbnRMb2FkUmVxdWVzdENsaWVudCB7IG51bGxwdHIgfTsKKworICAgIFdl
YWtQdHI8U2NyaXB0RXhlY3V0aW9uQ29udGV4dD4gbV9jb250ZXh0OworICAgIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+IG1fZGF0YTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8Rm9udEN1c3RvbVBsYXRmb3Jt
RGF0YT4gbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQorCitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0ZPTlRMT0FEUkVRVUVTVChXZWJDb3JlOjpX
b3JrZXJGb250TG9hZFJlcXVlc3QsIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCmluZGV4IGQwZmJkNzJkMzJi
NTUwNDY5ZWEwOGE5MGYwZmQ2YmY4NGZhNjE4ODYuLjVhOTdmMGZjNDJkMDhmNDliNmE2NmVlMDU5
MzNhOTg4MTA0N2NlMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2Vy
R2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFs
U2NvcGUuY3BwCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5UG9s
aWN5LmgiCiAjaW5jbHVkZSAiQ3J5cHRvLmgiCiAjaW5jbHVkZSAiRm9udENhY2hlLmgiCisjaW5j
bHVkZSAiRm9udEZhY2VTZXQuaCIKICNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIKICNp
bmNsdWRlICJJbWFnZUJpdG1hcE9wdGlvbnMuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb24uaCIKQEAgLTQ1LDYgKzQ2LDcgQEAKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpblBv
bGljeS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oIgogI2luY2x1ZGUg
IlNvY2tldFByb3ZpZGVyLmgiCisjaW5jbHVkZSAiV29ya2VyRm9udExvYWRSZXF1ZXN0LmgiCiAj
aW5jbHVkZSAiV29ya2VyTG9hZGVyUHJveHkuaCIKICNpbmNsdWRlICJXb3JrZXJMb2NhdGlvbi5o
IgogI2luY2x1ZGUgIldvcmtlck1lc3NhZ2luZ1Byb3h5LmgiCkBAIC01MjEsNiArNTIzLDIyIEBA
IEZvbnRDYWNoZSYgV29ya2VyR2xvYmFsU2NvcGU6OmZvbnRDYWNoZSgpCiAgICAgcmV0dXJuICpt
X2ZvbnRDYWNoZTsKIH0KIAorUmVmPEZvbnRGYWNlU2V0PiBXb3JrZXJHbG9iYWxTY29wZTo6Zm9u
dHMoKQoreworICAgIHJldHVybiBjc3NGb250U2VsZWN0b3IoKS0+Zm9udEZhY2VTZXQoKTsKK30K
Kworc3RkOjp1bmlxdWVfcHRyPEZvbnRMb2FkUmVxdWVzdD4gV29ya2VyR2xvYmFsU2NvcGU6OmZv
bnRMb2FkUmVxdWVzdChTdHJpbmcmIHVybCwgYm9vbCwgYm9vbCwgTG9hZGVkRnJvbU9wYXF1ZVNv
dXJjZSBsb2FkZWRGcm9tT3BhcXVlU291cmNlKQoreworICAgIHJldHVybiBtYWtlVW5pcXVlPFdv
cmtlckZvbnRMb2FkUmVxdWVzdD4oY29tcGxldGVVUkwodXJsKSwgbG9hZGVkRnJvbU9wYXF1ZVNv
dXJjZSk7Cit9CisKK3ZvaWQgV29ya2VyR2xvYmFsU2NvcGU6OmJlZ2luTG9hZGluZ0ZvbnRTb29u
KEZvbnRMb2FkUmVxdWVzdCYgcmVxdWVzdCkKK3sKKyAgICBBU1NFUlQoaXM8V29ya2VyRm9udExv
YWRSZXF1ZXN0PihyZXF1ZXN0KSk7CisgICAgZG93bmNhc3Q8V29ya2VyRm9udExvYWRSZXF1ZXN0
PihyZXF1ZXN0KS5sb2FkKCp0aGlzKTsKK30KKwogUmVmZXJyZXJQb2xpY3kgV29ya2VyR2xvYmFs
U2NvcGU6OnJlZmVycmVyUG9saWN5KCkgY29uc3QKIHsKICAgICByZXR1cm4gbV9yZWZlcnJlclBv
bGljeTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2Nv
cGUuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaAppbmRleCA2
ZWJlNDY1MTFmYmEyMWMyZjg1MTZkZTQ1MjY4MDE0Y2MyN2YxNjhlLi4yYTMxM2Q0ZTY4NjUxMmJk
MDEzYmFhZmIyNGYyOTI3MDQzZDliNTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL1dvcmtlckdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJHbG9iYWxTY29wZS5oCkBAIC01MSw2ICs1MSw4IEBAIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsK
IGNsYXNzIENTU1ZhbHVlUG9vbDsKIGNsYXNzIENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNl
SGVhZGVyczsKIGNsYXNzIENyeXB0bzsKK2NsYXNzIEZvbnRGYWNlU2V0OworY2xhc3MgRm9udExv
YWRSZXF1ZXN0OwogY2xhc3MgUGVyZm9ybWFuY2U7CiBjbGFzcyBTY2hlZHVsZWRBY3Rpb247CiBj
bGFzcyBXb3JrZXJMb2NhdGlvbjsKQEAgLTEyNCw2ICsxMjYsOSBAQCBwdWJsaWM6CiAgICAgQ1NT
VmFsdWVQb29sJiBjc3NWYWx1ZVBvb2woKSBmaW5hbDsKICAgICBDU1NGb250U2VsZWN0b3IqIGNz
c0ZvbnRTZWxlY3RvcigpIGZpbmFsOwogICAgIEZvbnRDYWNoZSYgZm9udENhY2hlKCkgZmluYWw7
CisgICAgUmVmPEZvbnRGYWNlU2V0PiBmb250cygpOworICAgIHN0ZDo6dW5pcXVlX3B0cjxGb250
TG9hZFJlcXVlc3Q+IGZvbnRMb2FkUmVxdWVzdChTdHJpbmcmLCBib29sLCBib29sLCBMb2FkZWRG
cm9tT3BhcXVlU291cmNlKSBmaW5hbDsKKyAgICB2b2lkIGJlZ2luTG9hZGluZ0ZvbnRTb29uKEZv
bnRMb2FkUmVxdWVzdCYpIGZpbmFsOwogCiAgICAgUmVmZXJyZXJQb2xpY3kgcmVmZXJyZXJQb2xp
Y3koKSBjb25zdCBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXJHbG9iYWxTY29wZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2Jh
bFNjb3BlLmlkbAppbmRleCBmODU3OGE0NzFmNDhiNDg1OGJiZmJiZmJjOGEwNWNjZGQ5YjY5YjI2
Li5lMjhlODllZmY0Y2IwMmY3NGRmMGJkMWEyOTAxYTc1NzE0NWNlY2ZjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmlkbApAQCAtNDgsMyArNDgsNCBAQAog
fTsKIAogV29ya2VyR2xvYmFsU2NvcGUgaW5jbHVkZXMgV2luZG93T3JXb3JrZXJHbG9iYWxTY29w
ZTsKK1dvcmtlckdsb2JhbFNjb3BlIGluY2x1ZGVzIEZvbnRGYWNlU291cmNlOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggZmZmYjRkNDY3NmVhYTA3NThmNDRmNjZkNGExMzNiMjVm
YzZmODE2Yi4uNGQxZGQ3MGRkMzQ1N2U1NmRhNjY4NzVhMzEyNjI1NWU0YjM3MzVmOCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDYgQEAKKzIwMjEtMDQtMTYgIENo
cmlzIExvcmQgIDxjbG9yZEBpZ2FsaWEuY29tPgorCisgICAgICAgIEltcGxlbWVudCBGb250RmFj
ZSBpbiBXb3JrZXJzIGZvciBPZmZzY3JlZW5DYW52YXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDE3OAorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NzY1MjkwMjQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRm9udEZhY2UgaXMgbm93IGF2YWlsYWJsZSBmb3IgV29ya2VycywgcmViYXNlbGluZSByZWxh
dGVkIHRlc3RzLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFs
aWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndv
cmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YmFzZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGlu
ZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91
bmQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZh
Y2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3Bh
Y2UuY29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNw
YWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFj
ZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2Uu
Y29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFjdHVh
bEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNl
cy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5t
ZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53
aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA0LTE2ICBNYW51ZWwgUmVn
byBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtzZWxlY3RvcnNdIFVw
ZGF0ZSA6Zm9jdXMtdmlzaWJsZSB0ZXN0cyBmcm9tIFdQVApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCBlOWQ3ZjU3NGY0NTUwY2Q1ZjJmMzRjM2EwYzZiODlkZDNkYThmZGQzLi4xMWRkY2ZjZTY3
MGI1ZWZhYjQxNzYyMzU4MGIyOGI3NGQyYTEwNjM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gY2VudGVyIGlzIHRoZSBjZW50ZXIgb2Yg
dGhlIGVtIHNxdWFyZXMgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24gY2VudGVyIGlzIHRoZSBjZW50ZXIgb2YgdGhlIGVt
IHNxdWFyZXMgKG5vdCB0aGUgYm91bmRpbmcgYm94KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQK
aW5kZXggMzhkZDc4YmVlYmViZjkyZWQwMmIxNTQ5NjJhMGEwOTUwMGQ5NmMxYy4uZTA5MmUxZjhi
YzZkZjc1ZDFjOTE1YTRiNGZiOWFlZGJlMWY4Yzc5YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4
dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gZW5kIHdpdGggbHRyIGlzIHRoZSBy
aWdodCBlZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBl
bmQgd2l0aCBsdHIgaXMgdGhlIHJpZ2h0IGVkZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDA1OGJiOTlkZTMzNWE0YmZkMDNmYjUxNjczNDFlZDQwYmFiY2I5MTIuLjRiNmRlMjdlMjQ4
OGJlZWI5ZGNlYzlkZGViMWViNDQyMGJlM2Y1YzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIGVuZCB3aXRoIHJ0bCBpcyB0aGUgbGVm
dCBlZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBlbmQg
d2l0aCBydGwgaXMgdGhlIGxlZnQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZjI5MmY5
NDQxMjc5ZGNhOTU3NGMyYmYwMzE2NmIxMzk1MTkyYzU2My4uYjIzZjc3OGNmZTAxYzU0NTM5MjAw
MjNhMWEzM2Q0OTZkNWYyZmFhMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAK
IAotRkFJTCB0ZXh0QWxpZ24gbGVmdCBpcyB0aGUgbGVmdCBvZiB0aGUgZmlyc3QgZW0gc3F1YXJl
IChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BB
U1MgdGV4dEFsaWduIGxlZnQgaXMgdGhlIGxlZnQgb2YgdGhlIGZpcnN0IGVtIHNxdWFyZSAobm90
IHRoZSBib3VuZGluZyBib3gpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGZmNWE0MDIwYmRh
YjBhNjExOWZkNjRhZTQ3NzJmYzE1YjExZWE1NjUuLmExMDgyZDViOGM1ODU0NDkzZGEwODk1MDE2
MGVmZGNhNjliM2ViMGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFs
aWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAot
RkFJTCB0ZXh0QWxpZ24gcmlnaHQgaXMgdGhlIHJpZ2h0IG9mIHRoZSBsYXN0IGVtIHNxdWFyZSAo
bm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNT
IHRleHRBbGlnbiByaWdodCBpcyB0aGUgcmlnaHQgb2YgdGhlIGxhc3QgZW0gc3F1YXJlIChub3Qg
dGhlIGJvdW5kaW5nIGJveCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA2ZmQ5
NjU1NDUyY2YwMTY3YjRhZDA5YzEyZTkzNjdjMGNjOGIxMmE5Li4xOWYwMmJmM2QwODVmNDFhYWU5
NjljYWJmOWQ0OWIyY2Y3YTBmMjk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gc3RhcnQgd2l0aCBsdHIgaXMgdGhlIGxlZnQg
ZWRnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24gc3RhcnQg
d2l0aCBsdHIgaXMgdGhlIGxlZnQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IGJkNWE1OWQ3OWU2ZTA1YWRjMzg0MzljYWQ1ZGJmNWIyMWQ5Yzg2OWMuLjQxYzNmMjRhZjBi
ZGI0NjM2MjUxYzQ5NGZkYzY0OWUzZDllNjkxYmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQu
dHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBzdGFydCB3aXRoIHJ0bCBpcyB0
aGUgcmlnaHQgZWRnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxp
Z24gc3RhcnQgd2l0aCBydGwgaXMgdGhlIHJpZ2h0IGVkZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3Jr
ZXItZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUx
ZDNmZWQuLmExN2VlZjUwOTJiN2QwMzgyN2FjZDY1Yjc5NzhlZTRiOWJlMjBkYzIgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5h
bHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQg
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgMmQKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndvcmtlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4
cGVjdGVkLnR4dAppbmRleCA2YTE1NDljMTdiMjI2YTllNTU2NTc1Y2U5MmY3Mjk2ODg5Y2RhMjky
Li5mZjI4MzYwOTg1Mzg1NDJkNzJlZGMyOTEwMGY1ODA2YTgyM2IwNzRlIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29y
a2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QmFzZWxpbmUgYm90
dG9tIGlzIHRoZSBib3R0b20gb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gp
IENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIHRleHRCYXNlbGluZSBib3R0b20g
aXMgdGhlIGJvdHRvbSBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgYXNz
ZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBl
eHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCBkMzg5OTQwYWY2NWY0N2RhM2FiZjJlZWM0ZDdhOWI5NjE1MWQzZmVkLi5jYmVmMjc2
YTM0NzhmYWJjMTFhYjVmNGYxYjVkMjU5MjU1NzY5OGRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIDJkIENhbid0IGZpbmQgdmFyaWFibGU6
IEZvbnRGYWNlCitGQUlMIDJkIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0
aGUgcGl4ZWwgYXQgKDUsIDUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29y
a2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlk
ZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYy
ZWVjNGQ3YTliOTYxNTFkM2ZlZC4uY2JlZjI3NmEzNDc4ZmFiYzExYWI1ZjRmMWI1ZDI1OTI1NTc2
OThkZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRl
b2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MyBAQAogCi1GQUlMIDJkIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIDJkIGFz
c2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDUsIDUpIGV4
cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCAzMDA2NzM4YTljNmQ4ZjkyMGVkOWMwYzhjZTY2ZWM5MzIzOTNlYmFhLi5hZDY0OTQ5ZTE1
MTJhNWI4NzBiMDZkMTIwNDhmMmI4ZjI4NjgzMTk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QmFzZWxpbmUgbWlkZGxlIGlzIHRoZSBt
aWRkbGUgb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQg
dmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIHRleHRCYXNlbGluZSBtaWRkbGUgaXMgdGhlIG1pZGRs
ZSBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgYXNzZXJ0X2FwcHJveF9l
cXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0g
MiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5i
YXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmJhc2VsaW5lLnRvcC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGUyNmYxYjZmOGEzNDNi
MGRhNTM1OWFlZTQ4MTY5YjQ3ZmI2MjcwYWEuLjgwZTk4ZmIyNWI2OTQzYjNjODI5NGRjMjJlM2Ji
YjdhNzAyYTM2NDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2Vs
aW5lLnRvcC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmJhc2VsaW5lLnRvcC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1G
QUlMIHRleHRCYXNlbGluZSB0b3AgaXMgdGhlIHRvcCBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhl
IGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4dEJh
c2VsaW5lIHRvcCBpcyB0aGUgdG9wIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcg
Ym94KSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1
LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2Vy
LWV4cGVjdGVkLnR4dAppbmRleCA5YzNmODVlNDkwYTIxMzZkM2Y0NTA1YmIzOTNiYTM5Y2I0OTAy
YmJhLi5lZTQyOTFkMmJlODM1ODQ0NTAyOGY3YjJlNTM5MGE0YjlmYTRlMDBmIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndvcmtlci1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0
aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIGZpbGxU
ZXh0IGhhbmRsZXMgbWF4V2lkdGggYmFzZWQgb24gbGluZSBzaXplLCBub3QgYm91bmRpbmcgYm94
IHNpemUgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgZmlsbFRleHQgaGFuZGxl
cyBtYXhXaWR0aCBiYXNlZCBvbiBsaW5lIHNpemUsIG5vdCBib3VuZGluZyBib3ggc2l6ZQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRm
YWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxs
Lm1heFdpZHRoLmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNmI5MmMzOGYzMjIy
Mjk4Y2E4YWE4ZWUyMTk2YzM4ZTE0YTdiOWM3OC4uYjJjZTI3MWJmMTAxZTNjOWI2MmI1OGJkMTg5
Mjk3NTkxZDc5YTc2ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmls
bC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4
dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBmaWxsVGV4dCB3b3JrcyBvbiBAZm9udC1mYWNlIGZv
bnRzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIGZpbGxUZXh0IHdvcmtzIG9u
IEBmb250LWZhY2UgZm9udHMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRl
eCBlNzkzNTdhYWIyNWY2MThlZjVhN2UwNGJmYmE0ODU3MGU5NGYyZWNiLi4xYWI5OTFmMjJlZWRl
NWIyOGYzMTE5YzlmNTJmYTdkODFkODNjMzIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVj
dGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBAZm9udC1mYWNlIGZvbnRzIHNob3VsZCB3
b3JrIGV2ZW4gaWYgdGhleSBhcmUgbm90IHVzZWQgaW4gdGhlIHBhZ2UgQ2FuJ3QgZmluZCB2YXJp
YWJsZTogRm9udEZhY2UKK1BBU1MgQGZvbnQtZmFjZSBmb250cyBzaG91bGQgd29yayBldmVuIGlm
IHRoZXkgYXJlIG5vdCB1c2VkIGluIHRoZSBwYWdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggMGY3NWVhOTIxMjlkZDRmMmFmOWQyZjUzZjFlZmI2NGYxOTkxMTY0NS4uMzllZGE0
ZGMyZmY2NjNlMWYyODM2ZTU2N2NlNzYzODY1NTY5MWQ5NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgRHJhdyB3aXRoIHRoZSBmb250IGltbWVk
aWF0ZWx5LCB0aGVuIHdhaXQgYSBiaXQgdW50aWwgYW5kIGRyYXcgYWdhaW4uIChUaGlzIGNyYXNo
ZXMgc29tZSB2ZXJzaW9uIG9mIFdlYktpdC4pIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNl
CitQQVNTIERyYXcgd2l0aCB0aGUgZm9udCBpbW1lZGlhdGVseSwgdGhlbiB3YWl0IGEgYml0IHVu
dGlsIGFuZCBkcmF3IGFnYWluLiAoVGhpcyBjcmFzaGVzIHNvbWUgdmVyc2lvbiBvZiBXZWJLaXQu
KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3Jr
ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29y
a2VyLWV4cGVjdGVkLnR4dAppbmRleCBkMzg5OTQwYWY2NWY0N2RhM2FiZjJlZWM0ZDdhOWI5NjE1
MWQzZmVkLi5hMTdlZWY1MDkyYjdkMDM4MjdhY2Q2NWI3OTc4ZWU0YjliZTIwZGMyIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTog
Rm9udEZhY2UKK1BBU1MgMmQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOWEzMjQwMjc1ZWQz
ODdkYmRmZDVkMjVjMWY1YTI3YTlkZTY5Yzc1YS4uMWVkNDRmOGY3ZGJjYjE2MzRiZjQ5YTczYmY5
NTk1Yjk3OTIwOThjYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3Bh
Y2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1G
QUlMIFUrMDAyMCBpcyByZW5kZXJlZCB0aGUgY29ycmVjdCBzaXplICgxZW0gd2lkZSkgQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgVSswMDIwIGlzIHJlbmRlcmVkIHRoZSBjb3Jy
ZWN0IHNpemUgKDFlbSB3aWRlKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDZlNWY4MzJkMTQyZTBlNzU1MjQ5MjhlNTI3NGViOTBhMGEzMmNiNmEuLjQyZjU3MGYwYjll
NzhkOTQ3YzBlMGJjNjRhYjY4MTY4YzM2NjU1MmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXQgdGhl
IGVuZCBvZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJs
ZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgZW5kIG9mIGEgbGluZSBh
cmUgY29sbGFwc2VkIChwZXIgQ1NTKSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwg
b2YgdGhlIHBpeGVsIGF0ICg3NSwgMjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uubm9u
c3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNw
YWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggYWU0NjE1ZGU0
Y2M0MDI5NzYwZDE3NWM5MDc0Mjk3OWVlNTUzMDM1Yy4uOWU1ZDQ3MDQ0OTUyOTM5MTdjZDVlZTU2
NDZmNDhjOGM5OGRhNmJkOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
c3BhY2UuY29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIE5vbi1zcGFjZSBjaGFyYWN0ZXJzIGFyZSBu
b3QgY29udmVydGVkIHRvIFUrMDAyMCBhbmQgY29sbGFwc2VkIENhbid0IGZpbmQgdmFyaWFibGU6
IEZvbnRGYWNlCitQQVNTIE5vbi1zcGFjZSBjaGFyYWN0ZXJzIGFyZSBub3QgY29udmVydGVkIHRv
IFUrMDAyMCBhbmQgY29sbGFwc2VkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQu
dHh0CmluZGV4IDk0YTAwNDNhMGEzMzc5ZTEyOGViMTY0MGI0ZjY0MjhiMmQ3MTM5ZGEuLjY4MmNm
YjkzOWIwZjg1MDEwYjdkMzNlNTg0MjEwNTZhNTFiNDgwMTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIu
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBjaGFyYWN0
ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwLCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252
ZXJ0ZWQgdG8gVSswMDIwLCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBhc3NlcnRfYXBwcm94X2Vx
dWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVjdGVkIDAgKy8t
IDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
c3BhY2UuY29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5k
ZXggOTRhMDA0M2EwYTMzNzllMTI4ZWIxNjQwYjRmNjQyOGIyZDcxMzlkYS4uNjgyY2ZiOTM5YjBm
ODUwMTBiN2QzM2U1ODQyMTA1NmE1MWI0ODAxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJl
IGNvbnZlcnRlZCB0byBVKzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0IGZpbmQg
dmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0
byBVKzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBS
ZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQg
Z290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5j
b2xsYXBzZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1MDg2
OGZlOTE5ODBjYTcwYjQwOWY3NjM3MzllODQwZWY5NmYzZDVkLi43YmNiNTFjY2M3YjljMGExNjA5
ZDVlYWNkM2QzNGRjMjgxODEyODRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgc3Rh
cnQgb2YgYSBsaW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0IGZpbmQgdmFyaWFibGU6
IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXQgdGhlIHN0YXJ0IG9mIGEgbGluZSBh
cmUgY29sbGFwc2VkIChwZXIgQ1NTKSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwg
b2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdC
b3gud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFj
dHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMzEyMGZjYjhmYWRkZDll
NTQyNjc0NWRkNTU2ZjlkNDM3OWJmZTdiNy4uODI1NGNlNjc0MjQ4NjIyZWUwN2I0NGM3ZDlmOGI2
Y2RmNzYxY2Y2MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0
dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsMyBAQAogCi1GQUlMIFRlc3RpbmcgYWN0dWFsQm91bmRpbmdCb3ggZm9yIE9mZnNjcmVl
bkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIGFjdHVh
bEJvdW5kaW5nQm94IGZvciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0X2VxdWFsczogTWF0aC5hYnMo
Y3R4Lm1lYXN1cmVUZXh0KCdBJykuYWN0dWFsQm91bmRpbmdCb3hEZXNjZW50KSA9PT0gMCAoZ290
IDFbbnVtYmVyXSwgZXhwZWN0ZWQgMFtudW1iZXJdKSBleHBlY3RlZCAwIGJ1dCBnb3QgMQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMud29y
a2VyLWV4cGVjdGVkLnR4dAppbmRleCBmNGEwODQwM2MxZWI4YjQxYWM0YmE1ODA2MmE0MzUyODU3
NTU1NWFiLi45MzhjNzk5MTFkMDZlZjUxNGQ3YjFjOWM2YTQ1NDE1MWExYmY1N2I1IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtl
ci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyB3aWR0aCBhZHZh
bmNlcyBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitG
QUlMIFRlc3Rpbmcgd2lkdGggYWR2YW5jZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnY3R4Lm1lYXN1cmVUZXh0KCdIZWxsbycpLmFk
dmFuY2VzWzBdJykKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUu
YmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVh
c3VyZS5iYXNlbGluZXMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzZDI5OTBjMTFlOTZlMTcx
ODU3ODkzNGNmMzJjYWI2MzQ0Nzk2YzcxLi5lMWQyMjkzODRkMWE3MDY1MDJlNTE4NDI5MmY1N2Q4
MzQ0YzQ5MjdjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNl
bGluZXMud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVh
c3VyZS5iYXNlbGluZXMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJ
TCBUZXN0aW5nIGJhc2VsaW5lcyBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFi
bGU6IEZvbnRGYWNlCitGQUlMIFRlc3RpbmcgYmFzZWxpbmVzIGZvciBPZmZzY3JlZW5DYW52YXMg
Y3R4Lm1lYXN1cmVUZXh0KCdBJykuZ2V0QmFzZWxpbmVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2N0eC5tZWFzdXJlVGV4dCgnQScpLmdldEJhc2VsaW5lcygpJywgJ2N0eC5tZWFzdXJlVGV4dCgn
QScpLmdldEJhc2VsaW5lcycgaXMgdW5kZWZpbmVkKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDg1YTcyY2VhMTcxOTNmYmYxMDhlYmY0YjQ2MTNmZTllOTI1OWQwZDAuLmFjYWZhZGY4NjFj
MDdmYTdmZmY1MWYzMDFmYTdlMTlmZGViYWYxZmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIFRlc3RpbmcgZW1IZWlnaHRzIGZvciBPZmZzY3JlZW5DYW52
YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGluZyBlbUhlaWdodHMg
Zm9yIE9mZnNjcmVlbkNhbnZhcyBhc3NlcnRfZXF1YWxzOiBjdHgubWVhc3VyZVRleHQoJ0EnKS5l
bUhlaWdodEFzY2VudCA9PT0gMzcuNSAoZ290IDg1W251bWJlcl0sIGV4cGVjdGVkIDM3LjVbbnVt
YmVyXSkgZXhwZWN0ZWQgMzcuNSBidXQgZ290IDg1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBl
Y3RlZC50eHQKaW5kZXggMTRjN2RhNDRiZDBlZGNmNjgxYWY3YWYzZGM2YjZlN2ZhMTVhNDY1MC4u
MjViYWNlM2VmY2YxN2ZmZTI3YjA1MzE3OWZkZGQwZmU5MzEyMDNjZCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94
Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBmb250
Qm91bmRpbmdCb3ggZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250
RmFjZQorUEFTUyBUZXN0aW5nIGZvbnRCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5i
YXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDVjNzgwYzllNGU1MTg2MWIwMWRhMzBjZjE0
ZDczODUyMzQzOWEyOTMuLjk0MmY5MTQxMDU1NTkyNzc5Yjg0M2FiNjZhNTE1NmM5YjJmMDdkMDUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndv
cmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lk
dGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUaGUg
d2lkdGggb2YgY2hhcmFjdGVyIGlzIHNhbWUgYXMgZm9udCB1c2VkIGZvciBPZmZzY3JlZW5DYW52
YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgVGhlIHdpZHRoIG9mIGNoYXJh
Y3RlciBpcyBzYW1lIGFzIGZvbnQgdXNlZCBmb3IgT2Zmc2NyZWVuQ2FudmFzCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53b3Jr
ZXItZXhwZWN0ZWQudHh0CmluZGV4IDUwMGQ3MjdkM2I2N2RjOTg2YWZlZjRiOWQyZjJhNzQ2OTll
MWQzZWUuLjY4N2JjNGYzNWZjZjRjY2Q3NDc3NDExYTc2MjMzNDNiMzBiZGU5MzggMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHku
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUaGUgZW1wdHkgc3Ry
aW5nIGhhcyB6ZXJvIHdpZHRoIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJs
ZTogRm9udEZhY2UKK1BBU1MgVGhlIGVtcHR5IHN0cmluZyBoYXMgemVybyB3aWR0aCBmb3IgT2Zm
c2NyZWVuQ2FudmFzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDkzZDcxMWM0YmI5
NDcyMjA0YzdmMTQzNWM4YmUwMGZkYzdiMjZiMmEuLjA1MzcyOTAwZDU2NmY3OWI0NTVjM2VhNTUy
NTIwNjUyNWZkMjAxY2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMg
QEAKIAotRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBj
b2xsYXBzZWQgKHBlciBDU1MpIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJs
ZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAy
MCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBmb3IgT2Zmc2NyZWVuQ2FudmFzIGFzc2VydF9lcXVh
bHM6IGN0eC5tZWFzdXJlVGV4dCgnQSBceDA5XHgwYVx4MGNceDBkICBceDA5XHgwYVx4MGNceDBk
QicpLndpZHRoID09PSAxNTAgKGdvdCA2NTBbbnVtYmVyXSwgZXhwZWN0ZWQgMTUwW251bWJlcl0p
IGV4cGVjdGVkIDE1MCBidXQgZ290IDY1MAogCg==
</data>
<flag name="commit-queue"
          id="446452"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426217</attachid>
            <date>2021-04-16 06:30:19 -0700</date>
            <delta_ts>2021-04-21 10:49:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210416143017.patch</filename>
            <type>text/plain</type>
            <size>77492</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzY4OTY4YmM3NWQ4NzVj
YWYyMDMwM2Q0Y2IzMzQ1ZGJhYTA2NmRjZC4uNGNkMDdhYjcwZjk3ZDVhYzg1NTFjMTk4MDA3Njc0
NzBiMDI1OWUzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwNyBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUbyBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGlt
cGxlbWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJs
ZSBvbiBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFp
bGFibGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAg
ICBtYWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBy
ZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFj
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgUGFzcyBhIEZvbnRDYWNoZSB3aGVu
IGNhbGxpbmcgRm9udDo6Y3JlYXRlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU2V0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjplbnN1cmVMb2NhbEZvbnRGYWNl
c0ZvckZhbWlseVJlZ2lzdGVyZWQpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1
ZVBvb2wgYW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9y
RmFtaWx5UmVnaXN0ZXJlZC4KKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJjZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZVNvdXJjZTo6Q1NTRm9udEZhY2VTb3VyY2Up
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTRm9udEZhY2VTb3VyY2U6OmZvbnQpOgorICAgICAgICAg
IFVzZSBGb250TG9hZFJlcXVlc3Q6OmlzUGVuZGluZyBpbnN0ZWFkIG9mIG1ha2luZyBhc3N1bXB0
aW9ucyBhYm91dAorICAgICAgICAgIGl0cyBzdGF0ZSBvbiBjb25zdHJ1Y3Rpb24uIEFsc28gcGFz
cyB0aGUgRm9udENhY2hlIHNpbmdsZXRvbiB3aGVyZQorICAgICAgICAgIGFwcHJvcHJpYXRlIGlu
IGZvbnQgY3JlYXRpb24uCisKKyAgICAgICAgKiBjc3MvRm9udEZhY2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Rm9udEZhY2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpGb250RmFjZTo6
ZGlzcGxheSBjb25zdCk6CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmg6CisgICAgICAgICogY3Nz
L0ZvbnRGYWNlLmlkbDoKKyAgICAgICAgICBDb25zdHJ1Y3Qgd2l0aCBhIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQgaW5zdGVhZCBvZiBhIERvY3VtZW50IGFuZAorICAgICAgICAgIG1ha2UgYXZhaWxh
YmxlIGZvciBXb3JrZXJzLgorCisgICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udExvYWRSZXF1ZXN0Ojppc1dvcmtlckZvbnRMb2FkUmVxdWVz
dCBjb25zdCk6CisgICAgICAgICAgQWRkIGlzUGVuZGluZyBmdW5jdGlvbiBhbmQgbmV3IHR5cGUg
V29ya2VyRm9udExvYWRSZXF1ZXN0LgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkRm9udDo6Y3JlYXRlRm9udCk6CisgICAg
ICAgICAgUGFzcyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgICAg
SW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Rm9udCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Ojpz
eXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAg
ICAgICAgQWRkIGFuIG9wdGlvbmFsIEZvbnRDYWNoZSBwYXJhbWV0ZXIgZm9yIHVzZSB3aXRoIHZl
cnRpY2FsIGZvbnQgZGF0YQorICAgICAgICAgIHJldHJpZXZhbCBhbmQgYWRkIGEgRm9udENhY2hl
IHBhcmFtZXRlciB0bworICAgICAgICAgIHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlciBp
bnN0ZWFkIG9mIHVzaW5nIHRoZSBzaW5nbGV0b24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9Gb250Q2FjaGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhY2hlOjpmb250Rm9y
UGxhdGZvcm1EYXRhKToKKyAgICAgICAgICBQYXNzIEZvbnRDYWNoZSBwYXJhbWV0ZXIgd2hlbiBj
cmVhdGluZyBmb250cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRl
Rm9udHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVGb250czo6cmVhbGl6ZUZh
bGxiYWNrUmFuZ2VzQXQpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVGb250czo6Z2x5
cGhEYXRhRm9yU3lzdGVtRmFsbGJhY2spOgorICAgICAgICAgIFVzZSBmYW1pbHlOYW1lc0RhdGEg
aW5zdGVhZCBvZiBmYW1pbHlOYW1lcyBhbmQgcGFzcyB0aGUgRm9udENhY2hlCisgICAgICAgICAg
cGFyYW1ldGVyIHdoZW4gY2FsbGluZyBnbHlwaERhdGFGb3JTeXN0ZW1GYWxsYmFjayB0byBtYWtl
IHRoaXMgc2FmZQorICAgICAgICAgIHRvIHVzZSBpbiBhIFdvcmtlci4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRUYWdnZWRTZXR0aW5ncy5oOgorICAgICAgICAgIEFkZCBtaXNz
aW5nIHd0Zi9IYXNoZXIuaCBpbmNsdWRlLgorCisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250
TG9hZFJlcXVlc3QuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6V29ya2VyRm9udExvYWRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJGb250TG9h
ZFJlcXVlc3Q6OmVuc3VyZUN1c3RvbUZvbnREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6Y3JlYXRlRm9udCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OnNldENsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJGb250
TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZhaWwpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyRm9udExvYWRSZXF1ZXN0Lmg6IEFkZGVkLgorICAgICAgICAgIEltcGxlbWVudCBGb250TG9h
ZFJlcXVlc3QgZm9yIFdvcmtlcnMuCisKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckdsb2JhbFNj
b3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpmb250cyk6Cisg
ICAgICAgIChXZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0KToKKyAg
ICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdGb250U29vbik6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAgIEltcGxl
bWVudCBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGZvbnQtbG9hZGluZyByZWxhdGVkIGZ1bmN0aW9u
cy4KKworICAgICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAg
IEluY2x1ZGUgRm9udEZhY2VTb3VyY2UuCisKIDIwMjEtMDQtMTYgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBhIG5vIGxvbmdlciBuZWNlc3Nhcnkg
Y2FsbE9uTWFpblRocmVhZCBpbiBXb3JrZXI6OmNyZWF0ZVJUQ1J0cFNjcmlwdFRyYW5zZm9ybWVy
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCmluZGV4IGE3ZjczZDEyZTkzOTE5Zjc4MTMyNmRiNTRkZjI3YWRjZWY1NDJkOWQuLjI1
ZjdjZTJhZTM1NjhhYzkwZTFiZDkzYjZmZjYzNzg1NDhhMjU4MjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTYgQEAKKzIwMjEtMDQtMTYgIENocmlzIExvcmQgIDxjbG9yZEBpZ2FsaWEuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCBGb250RmFjZSBpbiBXb3JrZXJzIGZvciBPZmZzY3JlZW5DYW52YXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDE3OAor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzY1MjkwMjQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9udDo6Y3JlYXRlIG5vdyByZXF1aXJlcyBhIEZv
bnRDYWNoZSBwYXJhbWV0ZXIsIHVwZGF0ZSBhY2NvcmRpbmdseS4KKworICAgICAgICAqIFNoYXJl
ZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVy
PFJlZjxGb250Pj46OmRlY29kZSk6CisKIDIwMjEtMDQtMTYgIFlvdWVubiBGYWJsZXQgIDx5b3Vl
bm5AYXBwbGUuY29tPgogCiAgICAgICAgIFByb21vdGUgV0tXZWJWaWV3IGRldmljZSBvcmllbnRh
dGlvbiBwZXJtaXNzaW9uIGRlbGVnYXRlIHRvIEFQSQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggZTEx
NTA1Y2RkMGY4ZTQzYjI4NzNkYjdhMWQ1ODFmOGRmOTg0ZmViMy4uNGM4YWJiZDU4ZmIzZDIyMjE4
NzM2NDA0MzRjNzlmNGQyYWU2YzdkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVy
cy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC0xNjU1LDYgKzE2
NTUsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgd29ya2Vy
cy9TY3JpcHRCdWZmZXIuaAogICAgIHdvcmtlcnMvV29ya2VyQW5pbWF0aW9uQ29udHJvbGxlci5o
CiAgICAgd29ya2Vycy9Xb3JrZXJEZWJ1Z2dlclByb3h5LmgKKyAgICB3b3JrZXJzL1dvcmtlckZv
bnRMb2FkUmVxdWVzdC5oCiAgICAgd29ya2Vycy9Xb3JrZXJMb2FkZXJQcm94eS5oCiAgICAgd29y
a2Vycy9Xb3JrZXJPcldvcmtsZXRUaHJlYWQuaAogICAgIHdvcmtlcnMvV29ya2VyUnVuTG9vcC5o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0CmluZGV4IGVjYWNkZWJjMTM1OWE5Y2VkNDJmZGRkYzVhMGI1YjVlY2ZkYzI5
NWIuLmY5ZTg1MjQ5Y2M3OWM0NDI3ZDBlMTQ2ZTdlMmU5YTVhYmJmODY1OGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMu
dHh0CkBAIC0yNjUzLDYgKzI2NTMsNyBAQCB3b3JrZXJzL1dvcmtlci5jcHAKIHdvcmtlcnMvV29y
a2VyQW5pbWF0aW9uQ29udHJvbGxlci5jcHAKIHdvcmtlcnMvV29ya2VyQ29uc29sZUNsaWVudC5j
cHAKIHdvcmtlcnMvV29ya2VyRXZlbnRMb29wLmNwcAord29ya2Vycy9Xb3JrZXJGb250TG9hZFJl
cXVlc3QuY3BwCiB3b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcAogd29ya2Vycy9Xb3JrZXJJ
bnNwZWN0b3JQcm94eS5jcHAKIHdvcmtlcnMvV29ya2VyTG9jYXRpb24uY3BwCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMmQ2YTQ2
MTA5YmQ1NGNiM2JjOWI5ZWEyNzE5NDEwZjJhM2E1YTRjOS4uMzQ5NjFiYjFjNmM1MTJmZjgyYWJk
YzgyZGVlM2ZlNmIxMzg3NWJjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzQzMiw2ICszNDMyLDcgQEAKIAkJQTdDRkIzRDIw
QjdFRDEwQTAwNzBDMzJEIC8qIERyYWdJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTdDRkIzRDAwQjdFRDEwQTAwNzBDMzJEIC8qIERyYWdJbWFn
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3
RDIwRjYzMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNjExMDdGNDA2OTAwQTgw
MzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggKi87IH07CiAJCUE3RDIwRjZEMTA3RjQzOEIwMEE4
MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE3RDIwRjZCMTA3RjQzOEIwMEE4MDM5MiAvKiBXZWJHTEFjdGl2ZUlu
Zm8uaCAqLzsgfTsKKwkJQTdENkIzNDkwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2Fk
UmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTdENkIzNDcwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3RDZCMzQ5MEY2
MTEwNDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3RDZCMzQ3MEY2MTEwNDUwMEI3OUZEMSAvKiBX
b3JrZXJTY3JpcHRMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQlBN0RCRjhERTEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVs
cGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0RC
RjhEQzEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmggKi87IH07CiAJCUE4
MEQ2NzA4MEU5RTlERUIwMEU0MjBGMCAvKiBHcmFwaGljc0NvbnRleHRQbGF0Zm9ybVByaXZhdGVD
Ry5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgwRDY3
MDcwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZUNHLmgg
Ki87IH07CkBAIC0xMjg0NCw2ICsxMjg0NSw4IEBACiAJCUE3RDIwRjYwMTA3RjQwNjkwMEE4MDM5
MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1dlYkdMQWN0aXZlSW5mby5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUE3RDIwRjYxMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdMQWN0aXZlSW5mby5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlBN0QyMEY2QjEwN0Y0MzhCMDBBODAzOTIgLyogV2ViR0xB
Y3RpdmVJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQWN0aXZl
SW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0Q2QjM0NzBGNjExMDQ1MDBG
RjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBN0Q2QjM0ODBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlckZvbnRMb2Fk
UmVxdWVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDZCMzQ3MEY2MTEw
NDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV29ya2VyU2NyaXB0TG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUE3RDZCMzQ4MEY2MTEwNDUwMEI3OUZEMSAvKiBXb3JrZXJTY3JpcHRMb2FkZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyU2NyaXB0TG9hZGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdEQkY4REIxMjc2OTE5QzAwNkI2
MDA4IC8qIFRleHRDaGVja2luZ0hlbHBlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBUZXh0Q2hlY2tpbmdIZWxwZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTk0MTUsNiArMTk0MTgsOCBAQAogCQkJCUE1MkIzNDlDMUZBNDE2RjgwMDhCNjI0
NiAvKiBXb3JrZXJEZWJ1Z2dlclByb3h5LmggKi8sCiAJCQkJOUIwQUJDQTMyMzY3OUFDRjAwQjQ1
MDg1IC8qIFdvcmtlckV2ZW50TG9vcC5jcHAgKi8sCiAJCQkJOUIwQUJDQTQyMzY3OUFDRjAwQjQ1
MDg1IC8qIFdvcmtlckV2ZW50TG9vcC5oICovLAorCQkJCUE3RDZCMzQ4MEY2MTEwNDUwMEZGOUZE
MSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwICovLAorCQkJCUE3RDZCMzQ3MEY2MTEwNDUw
MEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLywKIAkJCQkyRTQzNDYzNjBGNTQ2
QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUuY3BwICovLAogCQkJCTJFNDM0NjM3MEY1
NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5oICovLAogCQkJCTJFNDM0NjM4MEY1
NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5pZGwgKi8sCkBAIC0zNTgyMiw2ICsz
NTgyNyw3IEBACiAJCQkJQTVCODFDQ0UxRkFBNDRERTAwMzdEMUU2IC8qIFdvcmtlckRlYnVnZ2Vy
QWdlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE1MkIzNDlFMUZBNDE3MDMwMDhCNjI0NiAvKiBX
b3JrZXJEZWJ1Z2dlclByb3h5LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MUUwRERDNDIzMEI0MUYx
MDAxOUUxRTMgLyogV29ya2VyRE9NRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTdENkIzNDkwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMkU0MzQ2NDkwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNj
b3BlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUQxMjlDRTFGM0QwRUY2MDBEMTVFNDcgLyogV29y
a2VyR2xvYmFsU2NvcGVDYWNoZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJFNDM0NjRCMEY1NDZB
ODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZVByb3h5LmggaW4gSGVhZGVycyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2UuY3BwCmluZGV4IDFhZDgwNDc3YWJhMGQzNjY3ZDBkZTU2M2M5
MmRjZWJlOGE5ZWMzOWEuLjc4M2YzNGU2ZDBiYWNkY2RmNzliNjg3NDliZWM2YjZhZTc2MjZiNWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNwcApAQCAtMzk2LDYgKzM5NiwxMyBAQCBEb2N1
bWVudCogQ1NTRm9udEZhY2U6OmRvY3VtZW50KCkKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAor
Rm9udENhY2hlJiBDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tUb1NpbmdsZXRvbigpCit7
CisgICAgaWYgKG1fd3JhcHBlciAmJiBtX3dyYXBwZXItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSkKKyAgICAgICAgcmV0dXJuIG1fd3JhcHBlci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5m
b250Q2FjaGUoKTsKKyAgICByZXR1cm4gRm9udENhY2hlOjpzaW5nbGV0b24oKTsKK30KKwogYm9v
bCBDU1NGb250RmFjZTo6Y29tcHV0ZUZhaWx1cmVTdGF0ZSgpIGNvbnN0CiB7CiAgICAgaWYgKHN0
YXR1cygpID09IFN0YXR1czo6RmFpbHVyZSkKQEAgLTY2OSw4ICs2NzYsOSBAQCBSZWZQdHI8Rm9u
dD4gQ1NTRm9udEZhY2U6OmZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRp
b24sIGJvb2wgc3ludAogICAgICAgICBzd2l0Y2ggKHNvdXJjZS0+c3RhdHVzKCkpIHsKICAgICAg
ICAgY2FzZSBDU1NGb250RmFjZVNvdXJjZTo6U3RhdHVzOjpQZW5kaW5nOgogICAgICAgICBjYXNl
IENTU0ZvbnRGYWNlU291cmNlOjpTdGF0dXM6OkxvYWRpbmc6IHsKKyAgICAgICAgICAgIGF1dG8m
IGZvbnRDYWNoZSA9IGZvbnRDYWNoZUZhbGxiYWNrVG9TaW5nbGV0b24oKTsKICAgICAgICAgICAg
IEZvbnQ6OlZpc2liaWxpdHkgdmlzaWJpbGl0eSA9IFdlYkNvcmU6OnZpc2liaWxpdHkoc3RhdHVz
KCksIGZvbnRMb2FkVGltaW5nKCkpOwotICAgICAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShG
b250Q2FjaGU6OnNpbmdsZXRvbigpLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZm9udERlc2NyaXB0
aW9uKS0+cGxhdGZvcm1EYXRhKCksIEZvbnQ6Ok9yaWdpbjo6TG9jYWwsIEZvbnQ6OkludGVyc3Rp
dGlhbDo6WWVzLCB2aXNpYmlsaXR5KTsKKyAgICAgICAgICAgIHJldHVybiBGb250OjpjcmVhdGUo
Zm9udENhY2hlLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZm9udERlc2NyaXB0aW9uKS0+cGxhdGZv
cm1EYXRhKCksIEZvbnQ6Ok9yaWdpbjo6TG9jYWwsICZmb250Q2FjaGUsIEZvbnQ6OkludGVyc3Rp
dGlhbDo6WWVzLCB2aXNpYmlsaXR5KTsKICAgICAgICAgfQogICAgICAgICBjYXNlIENTU0ZvbnRG
YWNlU291cmNlOjpTdGF0dXM6OlN1Y2Nlc3M6CiAgICAgICAgICAgICBpZiAoYXV0byByZXN1bHQg
PSBzb3VyY2UtPmZvbnQoZm9udERlc2NyaXB0aW9uLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNJ
dGFsaWMsIG1fZmVhdHVyZVNldHRpbmdzLCBtX2ZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2UuaAppbmRleCBiNWU0OTc1ZDFkNTkyMDlkODYyYmQ4NDYyZGQ3
Y2RmZmY2ZjU5ZGJkLi43MGJkM2Q0NTRkYjRhZjM4MmVlMmUyMWEyZmQ0OGMyZGYxYTBlMWZlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaApAQCAtNDYsNiArNDYsNyBAQCBjbGFzcyBDU1NGb250
U2VsZWN0b3I7CiBjbGFzcyBDU1NTZWdtZW50ZWRGb250RmFjZTsKIGNsYXNzIENTU1ZhbHVlOwog
Y2xhc3MgQ1NTVmFsdWVMaXN0OworY2xhc3MgRm9udENhY2hlOwogY2xhc3MgRm9udERlc2NyaXB0
aW9uOwogY2xhc3MgRm9udDsKIGNsYXNzIEZvbnRGYWNlOwpAQCAtMTcyLDYgKzE3Myw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCB0aW1lb3V0RmlyZWQoKTsKIAogICAgIERvY3VtZW50KiBkb2N1bWVu
dCgpOworICAgIEZvbnRDYWNoZSYgZm9udENhY2hlRmFsbGJhY2tUb1NpbmdsZXRvbigpOwogCiAg
ICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbV9mYW1pbGllczsKICAgICBWZWN0b3I8VW5pY29kZVJh
bmdlPiBtX3JhbmdlczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFj
ZVNldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTZXQuY3BwCmluZGV4IGVm
ODM5OGYyZWQ0MWNmNGQ4YjY1NmU2ZjAxOTU2N2RkZGQ2YmU2NTMuLjI2MTBiOGJlMGQxMGFiOGNh
YWMzN2Q4NmE0ZWNiZDNjOGY0YTNjMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NGb250RmFjZVNldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0
LmNwcApAQCAtMTEwLDcgKzExMCw3IEBAIHZvaWQgQ1NTRm9udEZhY2VTZXQ6OmVuc3VyZUxvY2Fs
Rm9udEZhY2VzRm9yRmFtaWx5UmVnaXN0ZXJlZChjb25zdCBTdHJpbmcmIGZhbWlsCiAgICAgQWxs
b3dVc2VySW5zdGFsbGVkRm9udHMgYWxsb3dVc2VySW5zdGFsbGVkRm9udHMgPSBBbGxvd1VzZXJJ
bnN0YWxsZWRGb250czo6WWVzOwogICAgIGlmIChtX293bmluZ0ZvbnRTZWxlY3Rvci0+c2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpKQogICAgICAgICBhbGxvd1VzZXJJbnN0YWxsZWRGb250cyA9IG1f
b3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPnNldHRpbmdzVmFs
dWVzKCkuc2hvdWxkQWxsb3dVc2VySW5zdGFsbGVkRm9udHMgPyBBbGxvd1VzZXJJbnN0YWxsZWRG
b250czo6WWVzIDogQWxsb3dVc2VySW5zdGFsbGVkRm9udHM6Ok5vOwotICAgIFZlY3RvcjxGb250
U2VsZWN0aW9uQ2FwYWJpbGl0aWVzPiBjYXBhYmlsaXRpZXMgPSBGb250Q2FjaGU6OnNpbmdsZXRv
bigpLmdldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXNJbkZhbWlseShmYW1pbHlOYW1lLCBhbGxv
d1VzZXJJbnN0YWxsZWRGb250cyk7CisgICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRp
ZXM+IGNhcGFiaWxpdGllcyA9IG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25D
b250ZXh0KCktPmZvbnRDYWNoZSgpLmdldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXNJbkZhbWls
eShmYW1pbHlOYW1lLCBhbGxvd1VzZXJJbnN0YWxsZWRGb250cyk7CiAgICAgaWYgKGNhcGFiaWxp
dGllcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtMTE5LDcgKzExOSw3IEBAIHZv
aWQgQ1NTRm9udEZhY2VTZXQ6OmVuc3VyZUxvY2FsRm9udEZhY2VzRm9yRmFtaWx5UmVnaXN0ZXJl
ZChjb25zdCBTdHJpbmcmIGZhbWlsCiAgICAgICAgIFJlZjxDU1NGb250RmFjZT4gZmFjZSA9IENT
U0ZvbnRGYWNlOjpjcmVhdGUobV9vd25pbmdGb250U2VsZWN0b3IuZ2V0KCksIG51bGxwdHIsIG51
bGxwdHIsIHRydWUpOwogICAgICAgICAKICAgICAgICAgUmVmPENTU1ZhbHVlTGlzdD4gZmFtaWx5
TGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQoKTsKLSAgICAgICAgZmFt
aWx5TGlzdC0+YXBwZW5kKENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlRm9udEZhbWls
eVZhbHVlKGZhbWlseU5hbWUpKTsKKyAgICAgICAgZmFtaWx5TGlzdC0+YXBwZW5kKG1fb3duaW5n
Rm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmNzc1ZhbHVlUG9vbCgpLmNy
ZWF0ZUZvbnRGYW1pbHlWYWx1ZShmYW1pbHlOYW1lKSk7CiAgICAgICAgIGZhY2UtPnNldEZhbWls
aWVzKGZhbWlseUxpc3QuZ2V0KCkpOwogICAgICAgICBmYWNlLT5zZXRGb250U2VsZWN0aW9uQ2Fw
YWJpbGl0aWVzKGl0ZW0pOwogICAgICAgICBmYWNlLT5hZG9wdFNvdXJjZShtYWtlVW5pcXVlPENT
U0ZvbnRGYWNlU291cmNlPihmYWNlLmdldCgpLCBmYW1pbHlOYW1lKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcAppbmRleCBiNjdlOGU2NjZjZjliY2E5NThhMjNlZDM3
MDYyYzg2NDRjNmZkMjFlLi5kM2EzYjAwNjY0ZDZkZmU4NWFlMmI5MDI2ZmVlZTJjOTc2NDA2YTI5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAKQEAgLTgxLDcgKzgx
LDcgQEAgQ1NTRm9udEZhY2VTb3VyY2U6OkNTU0ZvbnRGYWNlU291cmNlKENTU0ZvbnRGYWNlJiBv
d25lciwgY29uc3QgU3RyaW5nJiBmYW1pbHlOYW0KICAgICAvLyBUaGlzIG1heSBzeW5jaHJvbm91
c2x5IGNhbGwgZm9udExvYWRlZCgpLgogICAgIG1fZm9udFJlcXVlc3QtPnNldENsaWVudCh0aGlz
KTsKIAotICAgIGlmIChzdGF0dXMoKSA9PSBTdGF0dXM6OlBlbmRpbmcgJiYgIW1fZm9udFJlcXVl
c3QtPmlzTG9hZGluZygpKSB7CisgICAgaWYgKHN0YXR1cygpID09IFN0YXR1czo6UGVuZGluZyAm
JiAhbV9mb250UmVxdWVzdC0+aXNQZW5kaW5nKCkpIHsKICAgICAgICAgc2V0U3RhdHVzKFN0YXR1
czo6TG9hZGluZyk7CiAgICAgICAgIGlmICghc2hvdWxkSWdub3JlRm9udExvYWRDb21wbGV0aW9u
cygpKSB7CiAgICAgICAgICAgICBpZiAobV9mb250UmVxdWVzdC0+ZXJyb3JPY2N1cnJlZCgpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9Gb250RmFjZS5jcHAKaW5kZXggMTlkOWI0NGFjZDQ4NWIzMjMxOWNlOTU5ZjRhZDJk
NjcxMTU4NGY4ZS4uZWJlOTFiMmM4ZWYyZDM4OTZkMzllZDU2YzFmMjFlMmI1NjU1NDU1ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvRm9udEZhY2UuY3BwCkBAIC02MiwxNCArNjIsMTQgQEAgdm9pZCBGb250RmFjZTo6
c2V0RXJyb3JTdGF0ZSgpCiAgICAgbV9iYWNraW5nLT5zZXRFcnJvclN0YXRlKCk7CiB9CiAKLVJl
ZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2UsIGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlw
dG9ycykKK1JlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250
ZXh0JiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIGZhbWlseSwgU291cmNlJiYgc291cmNlLCBjb25z
dCBEZXNjcmlwdG9ycyYgZGVzY3JpcHRvcnMpCiB7Ci0gICAgYXV0byByZXN1bHQgPSBhZG9wdFJl
ZigqbmV3IEZvbnRGYWNlKGRvY3VtZW50LmZvbnRTZWxlY3RvcigpKSk7CisgICAgYXV0byByZXN1
bHQgPSBhZG9wdFJlZigqbmV3IEZvbnRGYWNlKCpjb250ZXh0LmNzc0ZvbnRTZWxlY3RvcigpKSk7
CiAgICAgcmVzdWx0LT5zdXNwZW5kSWZOZWVkZWQoKTsKIAogICAgIGJvb2wgZGF0YVJlcXVpcmVz
QXN5bmNocm9ub3VzTG9hZGluZyA9IHRydWU7CiAKLSAgICBhdXRvIHNldEZhbWlseVJlc3VsdCA9
IHJlc3VsdC0+c2V0RmFtaWx5KGRvY3VtZW50LCBmYW1pbHkpOworICAgIGF1dG8gc2V0RmFtaWx5
UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoY29udGV4dCwgZmFtaWx5KTsKICAgICBpZiAoc2V0
RmFtaWx5UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JT
dGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNzcsMTAgKzc3LDEwIEBAIFJlZjxG
b250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFN0cmlu
ZyYgZmFtaWx5LCBTb3VyY2UmCiAKICAgICBhdXRvIHNvdXJjZUNvbnZlcnNpb25SZXN1bHQgPSBX
VEY6OnN3aXRjaE9uKHNvdXJjZSwKICAgICAgICAgWyZdIChTdHJpbmcmIHN0cmluZykgLT4gRXhj
ZXB0aW9uT3I8dm9pZD4gewotICAgICAgICAgICAgYXV0byB2YWx1ZSA9IENTU1Byb3BlcnR5UGFy
c2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFjZVNyYyhzdHJpbmcsIENTU1BhcnNlckNvbnRleHQo
ZG9jdW1lbnQpKTsKKyAgICAgICAgICAgIGF1dG8gdmFsdWUgPSBDU1NQcm9wZXJ0eVBhcnNlcldv
cmtlclNhZmU6OnBhcnNlRm9udEZhY2VTcmMoc3RyaW5nLCBpczxEb2N1bWVudD4oY29udGV4dCkg
PyBDU1NQYXJzZXJDb250ZXh0KGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0KSkgOiBIVE1MU3Rh
bmRhcmRNb2RlKTsKICAgICAgICAgICAgIGlmICghdmFsdWUpCiAgICAgICAgICAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IFN5bnRheEVycm9yIH07Ci0gICAgICAgICAgICBDU1NGb250RmFjZTo6
YXBwZW5kU291cmNlcyhyZXN1bHQtPmJhY2tpbmcoKSwgKnZhbHVlLCAmZG9jdW1lbnQsIGZhbHNl
KTsKKyAgICAgICAgICAgIENTU0ZvbnRGYWNlOjphcHBlbmRTb3VyY2VzKHJlc3VsdC0+YmFja2lu
ZygpLCAqdmFsdWUsICZjb250ZXh0LCBmYWxzZSk7CiAgICAgICAgICAgICByZXR1cm4geyB9Owog
ICAgICAgICB9LAogICAgICAgICBbJl0gKFJlZlB0cjxBcnJheUJ1ZmZlclZpZXc+JiBhcnJheUJ1
ZmZlclZpZXcpIC0+IEV4Y2VwdGlvbk9yPHZvaWQ+IHsKQEAgLTEwMSwzMiArMTAxLDMyIEBAIFJl
ZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAgICAgfQogCiAgICAgLy8gVGhlc2UgdGVybmFyaWVzIG1h
dGNoIHRoZSBkZWZhdWx0IHN0cmluZ3MgaW5zaWRlIHRoZSBGb250RmFjZURlc2NyaXB0b3JzIGRp
Y3Rpb25hcnkgaW5zaWRlIEZvbnRGYWNlLmlkbC4KLSAgICBhdXRvIHNldFN0eWxlUmVzdWx0ID0g
cmVzdWx0LT5zZXRTdHlsZShkb2N1bWVudCwgZGVzY3JpcHRvcnMuc3R5bGUuaXNFbXB0eSgpID8g
Im5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLnN0eWxlKTsKKyAgICBhdXRvIHNldFN0eWxlUmVzdWx0
ID0gcmVzdWx0LT5zZXRTdHlsZShjb250ZXh0LCBkZXNjcmlwdG9ycy5zdHlsZS5pc0VtcHR5KCkg
PyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3R5bGUpOwogICAgIGlmIChzZXRTdHlsZVJlc3Vs
dC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXRXZWlnaHRSZXN1bHQgPSBy
ZXN1bHQtPnNldFdlaWdodChkb2N1bWVudCwgZGVzY3JpcHRvcnMud2VpZ2h0LmlzRW1wdHkoKSA/
ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOworICAgIGF1dG8gc2V0V2VpZ2h0UmVz
dWx0ID0gcmVzdWx0LT5zZXRXZWlnaHQoY29udGV4dCwgZGVzY3JpcHRvcnMud2VpZ2h0LmlzRW1w
dHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOwogICAgIGlmIChzZXRXZWln
aHRSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRl
KCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0U3RyZXRjaFJl
c3VsdCA9IHJlc3VsdC0+c2V0U3RyZXRjaChkb2N1bWVudCwgZGVzY3JpcHRvcnMuc3RyZXRjaC5p
c0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3RyZXRjaCk7CisgICAgYXV0byBz
ZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJldGNoKGNvbnRleHQsIGRlc2NyaXB0b3Jz
LnN0cmV0Y2guaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLnN0cmV0Y2gpOwog
ICAgIGlmIChzZXRTdHJldGNoUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3Vs
dC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KLSAgICBh
dXRvIHNldFVuaWNvZGVSYW5nZVJlc3VsdCA9IHJlc3VsdC0+c2V0VW5pY29kZVJhbmdlKGRvY3Vt
ZW50LCBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUrMC0xMEZGRkYiX3Mg
OiBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UpOworICAgIGF1dG8gc2V0VW5pY29kZVJhbmdlUmVz
dWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2UoY29udGV4dCwgZGVzY3JpcHRvcnMudW5pY29k
ZVJhbmdlLmlzRW1wdHkoKSA/ICJVKzAtMTBGRkZGIl9zIDogZGVzY3JpcHRvcnMudW5pY29kZVJh
bmdlKTsKICAgICBpZiAoc2V0VW5pY29kZVJhbmdlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAg
ICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0Owog
ICAgIH0KLSAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jlc3VsdCA9IHJlc3VsdC0+c2V0RmVh
dHVyZVNldHRpbmdzKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0dGluZ3MuaXNFbXB0
eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncyk7CisgICAgYXV0
byBzZXRGZWF0dXJlU2V0dGluZ3NSZXN1bHQgPSByZXN1bHQtPnNldEZlYXR1cmVTZXR0aW5ncyhj
b250ZXh0LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0dGluZ3MuaXNFbXB0eSgpID8gIm5vcm1hbCJf
cyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncyk7CiAgICAgaWYgKHNldEZlYXR1cmVTZXR0
aW5nc1Jlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9yU3Rh
dGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXREaXNwbGF5
UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGRvY3VtZW50LCBkZXNjcmlwdG9ycy5kaXNwbGF5
LmlzRW1wdHkoKSA/ICJhdXRvIl9zIDogZGVzY3JpcHRvcnMuZGlzcGxheSk7CisgICAgYXV0byBz
ZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGNvbnRleHQsIGRlc2NyaXB0b3Jz
LmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3MgOiBkZXNjcmlwdG9ycy5kaXNwbGF5KTsKICAg
ICBpZiAoc2V0RGlzcGxheVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQt
PnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTM5OSwxMyArMzk5
LDEzIEBAIFN0cmluZyBGb250RmFjZTo6ZmVhdHVyZVNldHRpbmdzKCkgY29uc3QKICAgICByZXR1
cm4gbGlzdC0+Y3NzVGV4dCgpOwogfQogCi1TdHJpbmcgRm9udEZhY2U6OmRpc3BsYXkoKSBjb25z
dAorU3RyaW5nIEZvbnRGYWNlOjpkaXNwbGF5KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRl
eHQpIGNvbnN0CiB7CiAgICAgbV9iYWNraW5nLT51cGRhdGVTdHlsZUlmTmVlZGVkKCk7CiAgICAg
Y29uc3QgYXV0byYgbG9hZGluZ0JlaGF2aW9yV3JhcHBlZCA9IG1fYmFja2luZy0+bG9hZGluZ0Jl
aGF2aW9yKCk7CiAgICAgaWYgKCFsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLmhhc1ZhbHVlKCkpCiAg
ICAgICAgIHJldHVybiAiYXV0byJfczsKLSAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0
b24oKS5jcmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVlKCkpLT5jc3NUZXh0
KCk7CisgICAgcmV0dXJuIGNvbnRleHQuY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUobG9hZGlu
Z0JlaGF2aW9yV3JhcHBlZC52YWx1ZSgpKS0+Y3NzVGV4dCgpOwogfQogCiBhdXRvIEZvbnRGYWNl
OjpzdGF0dXMoKSBjb25zdCAtPiBMb2FkU3RhdHVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5oCmluZGV4IGYx
YjU1YTgxMTJiODA0MWMxMDQ2NDJjNDBlNjZiZDM2ZGEwM2M3MmEuLjk3N2YzYTk5YWM0YTE3NmMw
NjYzMGU3YzdkMGFhZGQ5NTAxYjVkNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9G
b250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5oCkBAIC01NCw3ICs1
NCw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIAogICAgIHVzaW5nIFNvdXJjZSA9IFZhcmlhbnQ8
U3RyaW5nLCBSZWZQdHI8SlNDOjpBcnJheUJ1ZmZlcj4sIFJlZlB0cjxKU0M6OkFycmF5QnVmZmVy
Vmlldz4+OwotICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShEb2N1bWVudCYsIGNvbnN0
IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMmKTsKKyAgICBzdGF0
aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMmKTsKICAgICBzdGF0aWMg
UmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIENTU0ZvbnRGYWNl
Jik7CiAgICAgdmlydHVhbCB+Rm9udEZhY2UoKTsKIApAQCAtNzIsNyArNzIsNyBAQCBwdWJsaWM6
CiAgICAgU3RyaW5nIHN0cmV0Y2goKSBjb25zdDsKICAgICBTdHJpbmcgdW5pY29kZVJhbmdlKCkg
Y29uc3Q7CiAgICAgU3RyaW5nIGZlYXR1cmVTZXR0aW5ncygpIGNvbnN0OwotICAgIFN0cmluZyBk
aXNwbGF5KCkgY29uc3Q7CisgICAgU3RyaW5nIGRpc3BsYXkoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYpIGNvbnN0OwogCiAgICAgZW51bSBjbGFzcyBMb2FkU3RhdHVzIHsgVW5sb2FkZWQsIExvYWRp
bmcsIExvYWRlZCwgRXJyb3IgfTsKICAgICBMb2FkU3RhdHVzIHN0YXR1cygpIGNvbnN0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9Gb250RmFjZS5pZGwKaW5kZXggMzM0NjdhZmIzYjE4NDQzNTk5ZjFjNmFkYjliZDRlNmNh
NDc1NzM5Mi4uNDFmMzU3MjMwMWZhMzRhZjE5NzExNjU5OTk5ZGJjZTdlYTUwNzM5MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRm9udEZhY2UuaWRsCkBAIC00Myw5ICs0Myw5IEBAIGRpY3Rpb25hcnkgRm9udEZhY2VE
ZXNjcmlwdG9ycyB7CiAKIFsKICAgICBBY3RpdmVET01PYmplY3QsCi0gICAgRXhwb3NlZD1XaW5k
b3cKKyAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2UgRm9udEZhY2Ugewot
ICAgIFtDYWxsV2l0aD1Eb2N1bWVudF0gY29uc3RydWN0b3IoRE9NU3RyaW5nIGZhbWlseSwgKERP
TVN0cmluZyBvciBCaW5hcnlEYXRhKSBzb3VyY2UsIG9wdGlvbmFsIEZvbnRGYWNlRGVzY3JpcHRv
cnMgZGVzY3JpcHRvcnMpOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBj
b25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCAoRE9NU3RyaW5nIG9yIEJpbmFyeURhdGEpIHNv
dXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNjcmlwdG9ycyBkZXNjcmlwdG9ycyk7CiAKICAgICBb
U2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmlu
ZyBmYW1pbHk7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0
dHJpYnV0ZSBET01TdHJpbmcgc3R5bGU7CkBAIC01Myw3ICs1Myw3IEBAIGRpY3Rpb25hcnkgRm9u
dEZhY2VEZXNjcmlwdG9ycyB7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNv
bnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyZXRjaDsKICAgICBbU2V0dGVyQ2FsbFdpdGg9
U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyB1bmljb2RlUmFuZ2U7
CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBE
T01TdHJpbmcgZmVhdHVyZVNldHRpbmdzOwotICAgIFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRFeGVj
dXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRpc3BsYXk7CisgICAgW0NhbGxXaXRo
PVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgZGlzcGxheTsKIAog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGb250RmFjZUxvYWRTdGF0dXMgc3RhdHVzOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggZTMzNDVhODJlNDYyODVhMTli
NTRjZGRhZmY2MjIxOGMwNjVlZTIxZi4uNWRmYWM4MmNiNTdkYTc3ZjNiMjA4NzBiZTYwYzNjNDli
MzQ2MWYyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVz
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaApAQCAtMzUs
OSArMzUsNiBAQCBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250TG9hZFJlcXVlc3Q7
CiBzdHJ1Y3QgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllczsKIAotdGVtcGxhdGUg
PHR5cGVuYW1lIFQ+IGNsYXNzIEZvbnRUYWdnZWRTZXR0aW5nczsKLXVzaW5nIEZvbnRGZWF0dXJl
U2V0dGluZ3MgPSBGb250VGFnZ2VkU2V0dGluZ3M8aW50PjsKLQogY2xhc3MgRm9udExvYWRSZXF1
ZXN0Q2xpZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Gb250TG9hZFJlcXVlc3RDbGllbnQo
KSA9IGRlZmF1bHQ7CkBAIC00OSw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Gb250
TG9hZFJlcXVlc3QoKSA9IGRlZmF1bHQ7CiAKICAgICB2aXJ0dWFsIGNvbnN0IFVSTCYgdXJsKCkg
Y29uc3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCA9IDA7CiAgICAg
dmlydHVhbCBib29sIGlzTG9hZGluZygpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZXJy
b3JPY2N1cnJlZCgpIGNvbnN0ID0gMDsKIApAQCAtNTgsNiArNTYsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIHNldENsaWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqKSA9IDA7CiAKICAg
ICB2aXJ0dWFsIGJvb2wgaXNDYWNoZWRGb250TG9hZFJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBm
YWxzZTsgfQorICAgIHZpcnR1YWwgYm9vbCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpIGNvbnN0
IHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKaW5k
ZXggNDA1MzU3YThlNWQwYjdmMGI2YTFhZGU0ZGNhMDg4YTFiMjc5ZjE3MC4uNzM3NmM1ODhmODA4
MWMwYWVhMDAzZjMwNmYyN2I0MGEwZTA4NjcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaApAQCAtNTAsNiArNTAsNyBAQCBw
dWJsaWM6CiAKIHByaXZhdGU6CiAgICAgY29uc3QgVVJMJiB1cmwoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBtX2ZvbnQtPnVybCgpOyB9CisgICAgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7
IHJldHVybiBtX2ZvbnQtPnN0YXR1cygpID09IENhY2hlZFJlc291cmNlOjpTdGF0dXM6OlBlbmRp
bmc7IH0KICAgICBib29sIGlzTG9hZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZm9udC0+
aXNMb2FkaW5nKCk7IH0KICAgICBib29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBtX2ZvbnQtPmVycm9yT2NjdXJyZWQoKTsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuY3BwCmluZGV4IGIxMWE4NzY5ZTg2MGI5M2IwOWQ3MzI0MWU1YmViZDU4
MDhiNjJiOGYuLmZkOGM3MDEwMGM3Y2EyNmM1NTRkZDY4MDcxOTQ5MGNhY2E3MGExMTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCkBAIC01OCwxNiArNTgsMTYg
QEAgY29uc3QgZmxvYXQgZW1waGFzaXNNYXJrRm9udFNpemVNdWx0aXBsaWVyID0gMC41ZjsKIAog
REVGSU5FX0FMTE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihGb250KTsKIAotUmVmPEZvbnQ+
IEZvbnQ6OmNyZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udDo6T3Jp
Z2luIG9yaWdpbiwgZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50
aGV0aWNJdGFsaWMpCitSZWY8Rm9udD4gRm9udDo6Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYg
Zm9udEZhY2VEYXRhLCBGb250OjpPcmlnaW4gb3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBz
eW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgRm9udENhY2hlKiBmb250Q2FjaGVG
b3JWZXJ0aWNhbERhdGEpCiB7CiAgICAgYm9vbCB3cmFwcGluZzsKICAgICBhdXRvIGN1c3RvbUZv
bnREYXRhID0gQ2FjaGVkRm9udDo6Y3JlYXRlQ3VzdG9tRm9udERhdGEoZm9udEZhY2VEYXRhLmdl
dCgpLCB7IH0sIHdyYXBwaW5nKTsKICAgICBGb250RGVzY3JpcHRpb24gZGVzY3JpcHRpb247CiAg
ICAgZGVzY3JpcHRpb24uc2V0Q29tcHV0ZWRTaXplKGZvbnRTaXplKTsKLSAgICByZXR1cm4gRm9u
dDo6Y3JlYXRlKENhY2hlZEZvbnQ6OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCpjdXN0b21G
b250RGF0YSwgZGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgeyB9
LCB7IH0pLCBvcmlnaW4pOworICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxh
dGZvcm1EYXRhRnJvbUN1c3RvbURhdGEoKmN1c3RvbUZvbnREYXRhLCBkZXNjcmlwdGlvbiwgc3lu
dGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCB7IH0sIHsgfSksIG9yaWdpbiwgZm9udENhY2hl
Rm9yVmVydGljYWxEYXRhKTsKIH0KIAotRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRh
JiBwbGF0Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWws
IFZpc2liaWxpdHkgdmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZh
bGxiYWNrLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IHJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcikKK0ZvbnQ6OkZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxh
dGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsLCBWaXNp
YmlsaXR5IHZpc2liaWxpdHksIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFj
aywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiByZW5kZXJpbmdSZXNvdXJj
ZUlkZW50aWZpZXIsIEZvbnRDYWNoZSogZm9udENhY2hlRm9yVmVydGljYWxEYXRhKQogICAgIDog
bV9wbGF0Zm9ybURhdGEocGxhdGZvcm1EYXRhKQogICAgICwgbV9yZW5kZXJpbmdSZXNvdXJjZUlk
ZW50aWZpZXIocmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9vcmlnaW4ob3Jp
Z2luKQpAQCAtODgsOSArODgsMTEgQEAgRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRh
JiBwbGF0Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnQKICAgICBwbGF0
Zm9ybUNoYXJXaWR0aEluaXQoKTsKICNpZiBFTkFCTEUoT1BFTlRZUEVfVkVSVElDQUwpCiAgICAg
aWYgKHBsYXRmb3JtRGF0YS5vcmllbnRhdGlvbigpID09IEZvbnRPcmllbnRhdGlvbjo6VmVydGlj
YWwgJiYgb3JpZW50YXRpb25GYWxsYmFjayA9PSBPcmllbnRhdGlvbkZhbGxiYWNrOjpObykgewot
ICAgICAgICBtX3ZlcnRpY2FsRGF0YSA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxE
YXRhKHBsYXRmb3JtRGF0YSk7CisgICAgICAgIG1fdmVydGljYWxEYXRhID0gZm9udENhY2hlRm9y
VmVydGljYWxEYXRhID8gZm9udENhY2hlRm9yVmVydGljYWxEYXRhLT52ZXJ0aWNhbERhdGEocGxh
dGZvcm1EYXRhKSA6IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3Jt
RGF0YSk7CiAgICAgICAgIG1faGFzVmVydGljYWxHbHlwaHMgPSBtX3ZlcnRpY2FsRGF0YS5nZXQo
KSAmJiBtX3ZlcnRpY2FsRGF0YS0+aGFzVmVydGljYWxNZXRyaWNzKCk7CiAgICAgfQorI2Vsc2UK
KyAgICBVTlVTRURfUEFSQU0oZm9udENhY2hlRm9yVmVydGljYWxEYXRhKTsKICNlbmRpZgogfQog
CkBAIC01NjgsMTMgKzU3MCwxMyBAQCBzdGF0aWMgU3lzdGVtRmFsbGJhY2tDYWNoZSYgc3lzdGVt
RmFsbGJhY2tDYWNoZSgpCiAgICAgcmV0dXJuIG1hcC5nZXQoKTsKIH0KIAotUmVmUHRyPEZvbnQ+
IEZvbnQ6OnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3Rlciwg
Y29uc3QgRm9udERlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbiwgSXNGb3JQbGF0Zm9ybUZvbnQgaXNG
b3JQbGF0Zm9ybUZvbnQpIGNvbnN0CitSZWZQdHI8Rm9udD4gRm9udDo6c3lzdGVtRmFsbGJhY2tG
b250Rm9yQ2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdCBGb250RGVzY3JpcHRpb24m
IGRlc2NyaXB0aW9uLCBJc0ZvclBsYXRmb3JtRm9udCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENh
Y2hlJiBmb250Q2FjaGUpIGNvbnN0CiB7CiAgICAgYXV0byBmb250QWRkUmVzdWx0ID0gc3lzdGVt
RmFsbGJhY2tDYWNoZSgpLmFkZCh0aGlzLCBDaGFyYWN0ZXJGYWxsYmFja01hcCgpKTsKIAogICAg
IGlmICghY2hhcmFjdGVyKSB7CiAgICAgICAgIFVDaGFyIGNvZGVVbml0ID0gMDsKLSAgICAgICAg
cmV0dXJuIEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJz
KGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJD
b2xvcmVkRm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CisgICAgICAgIHJldHVybiBmb250Q2FjaGUu
c3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRm
b3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7
CiAgICAgfQogCiAgICAgYXV0byBrZXkgPSBDaGFyYWN0ZXJGYWxsYmFja01hcEtleSB7IGRlc2Ny
aXB0aW9uLmNvbXB1dGVkTG9jYWxlKCksIGNoYXJhY3RlciwgaXNGb3JQbGF0Zm9ybUZvbnQgIT0g
SXNGb3JQbGF0Zm9ybUZvbnQ6Ok5vIH07CkBAIC01ODksNyArNTkxLDcgQEAgUmVmUHRyPEZvbnQ+
IEZvbnQ6OnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3Rlciwg
Y29uc3QgRm9udEQKICAgICAgICAgICAgIGNvZGVVbml0c1sxXSA9IFUxNl9UUkFJTChjaGFyYWN0
ZXIpOwogICAgICAgICAgICAgY29kZVVuaXRzTGVuZ3RoID0gMjsKICAgICAgICAgfQotICAgICAg
ICBhdXRvIGZvbnQgPSBGb250Q2FjaGU6OnNpbmdsZXRvbigpLnN5c3RlbUZhbGxiYWNrRm9yQ2hh
cmFjdGVycyhkZXNjcmlwdGlvbiwgdGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6
UHJlZmVyQ29sb3JlZEZvbnQ6Ok5vLCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0KCk7
CisgICAgICAgIGF1dG8gZm9udCA9IGZvbnRDYWNoZS5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3Rl
cnMoZGVzY3JpcHRpb24sIHRoaXMsIGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZl
ckNvbG9yZWRGb250OjpObywgY29kZVVuaXRzLCBjb2RlVW5pdHNMZW5ndGgpLmdldCgpOwogICAg
ICAgICBpZiAoZm9udCkKICAgICAgICAgICAgIGZvbnQtPm1faXNVc2VkSW5TeXN0ZW1GYWxsYmFj
a0NhY2hlID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuIGZvbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9Gb250LmgKaW5kZXggNjUzYjMzOGI3YzM0MjU2MjcyMjQ5NjExZTI3MDFhYzVk
MjYzZTk2NS4uODUyNTQyYzM3NjIzNDNlMzMwMjI4Nzg4NTZiNGE5ODhiNWI1NWM1YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtNTcsNiArNTcsNyBAQCBpbnRl
cmZhY2UgSURXcml0ZUdkaUludGVyb3A7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3Mg
Rm9udENhY2hlOwogY2xhc3MgR2x5cGhQYWdlOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xh
c3MgU2hhcmVkQnVmZmVyOwpAQCAtOTUsOSArOTYsMTQgQEAgcHVibGljOgogICAgIHN0YXRpYyBS
ZWY8Rm9udD4gY3JlYXRlKGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSwgT3Jp
Z2luIG9yaWdpbiA9IE9yaWdpbjo6TG9jYWwsIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwgPSBJ
bnRlcnN0aXRpYWw6Ok5vLAogICAgICAgICBWaXNpYmlsaXR5IHZpc2liaWxpdHkgPSBWaXNpYmls
aXR5OjpWaXNpYmxlLCBPcmllbnRhdGlvbkZhbGxiYWNrIG9yaWVudGF0aW9uRmFsbGJhY2sgPSBP
cmllbnRhdGlvbkZhbGxiYWNrOjpObywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlm
aWVyPiBpZGVudGlmaWVyID0gV1RGOjpudWxsb3B0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgRm9udChwbGF0Zm9ybURhdGEsIG9yaWdpbiwgaW50ZXJzdGl0aWFsLCB2aXNp
YmlsaXR5LCBvcmllbnRhdGlvbkZhbGxiYWNrLCBpZGVudGlmaWVyKSk7CisgICAgICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IEZvbnQocGxhdGZvcm1EYXRhLCBvcmlnaW4sIGludGVyc3RpdGlhbCwg
dmlzaWJpbGl0eSwgb3JpZW50YXRpb25GYWxsYmFjaywgaWRlbnRpZmllciwgbnVsbHB0cikpOwog
ICAgIH0KLSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0ZShSZWY8U2hh
cmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udDo6T3JpZ2luLCBmbG9hdCBmb250U2l6ZSwg
Ym9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYyk7CisgICAgc3RhdGljIFJl
ZjxGb250PiBjcmVhdGUoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmln
aW4gb3JpZ2luLCBGb250Q2FjaGUqIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0YSwgSW50ZXJzdGl0
aWFsIGludGVyc3RpdGlhbCA9IEludGVyc3RpdGlhbDo6Tm8sCisgICAgICAgIFZpc2liaWxpdHkg
dmlzaWJpbGl0eSA9IFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFsbGJhY2sgb3Jp
ZW50YXRpb25GYWxsYmFjayA9IE9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRpb25hbDxSZW5k
ZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IGlkZW50aWZpZXIgPSBXVEY6Om51bGxvcHQpCisgICAg
eworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb250KHBsYXRmb3JtRGF0YSwgb3JpZ2lu
LCBpbnRlcnN0aXRpYWwsIHZpc2liaWxpdHksIG9yaWVudGF0aW9uRmFsbGJhY2ssIGlkZW50aWZp
ZXIsIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0YSkpOworICAgIH0KKyAgICBXRUJDT1JFX0VYUE9S
VCBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0
YSwgRm9udDo6T3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29s
IHN5bnRoZXRpY0l0YWxpYywgRm9udENhY2hlKiA9IG51bGxwdHIpOwogCiAgICAgV0VCQ09SRV9F
WFBPUlQgfkZvbnQoKTsKIApAQCAtMTg5LDcgKzE5NSw3IEBAIHB1YmxpYzoKICAgICBib29sIHN1
cHBvcnRzQ29kZVBvaW50KFVDaGFyMzIpIGNvbnN0OwogICAgIGJvb2wgcGxhdGZvcm1TdXBwb3J0
c0NvZGVQb2ludChVQ2hhcjMyLCBPcHRpb25hbDxVQ2hhcjMyPiB2YXJpYXRpb24gPSBXVEY6Om51
bGxvcHQpIGNvbnN0OwogCi0gICAgUmVmUHRyPEZvbnQ+IHN5c3RlbUZhbGxiYWNrRm9udEZvckNo
YXJhY3RlcihVQ2hhcjMyLCBjb25zdCBGb250RGVzY3JpcHRpb24mLCBJc0ZvclBsYXRmb3JtRm9u
dCkgY29uc3Q7CisgICAgUmVmUHRyPEZvbnQ+IHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3Rl
cihVQ2hhcjMyLCBjb25zdCBGb250RGVzY3JpcHRpb24mLCBJc0ZvclBsYXRmb3JtRm9udCwgRm9u
dENhY2hlJikgY29uc3Q7CiAKICAgICBjb25zdCBHbHlwaFBhZ2UqIGdseXBoUGFnZSh1bnNpZ25l
ZCBwYWdlTnVtYmVyKSBjb25zdDsKIApAQCAtMjMyLDcgKzIzOCw3IEBAIHB1YmxpYzoKICNlbmRp
ZgogCiBwcml2YXRlOgotICAgIFdFQkNPUkVfRVhQT1JUIEZvbnQoY29uc3QgRm9udFBsYXRmb3Jt
RGF0YSYsIE9yaWdpbiwgSW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5LCBPcmllbnRhdGlvbkZhbGxi
YWNrLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+KTsKKyAgICBXRUJDT1JF
X0VYUE9SVCBGb250KGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmLCBPcmlnaW4sIEludGVyc3RpdGlh
bCwgVmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVuZGVyaW5nUmVz
b3VyY2VJZGVudGlmaWVyPiwgRm9udENhY2hlKik7CiAKICAgICB2b2lkIHBsYXRmb3JtSW5pdCgp
OwogICAgIHZvaWQgcGxhdGZvcm1HbHlwaEluaXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuY3BwCmluZGV4IDhiYjMzZWQ1N2FlODQyY2YxMDk0NmFk
Mjc0N2I5NTk2Y2IwNGE1ODYuLjAyYjU1ZDEyMGQzODNhMzZlODBlODRkMTc2NWIxNzU0OWMwNzEz
YmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNo
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNw
cApAQCAtMjgwLDcgKzI4MCw3IEBAIFJlZjxGb250PiBGb250Q2FjaGU6OmZvbnRGb3JQbGF0Zm9y
bURhdGEoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhKQogI2VuZGlmCiAKICAg
ICBhdXRvIGFkZFJlc3VsdCA9IG1fZm9udERhdGFDYWNoZXMtPmRhdGEuZW5zdXJlKHBsYXRmb3Jt
RGF0YSwgWyZdIHsKLSAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGEpOwor
ICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKHBsYXRmb3JtRGF0YSwgRm9udDo6T3JpZ2luOjpM
b2NhbCwgdGhpcyk7CiAgICAgfSk7CiAKICAgICBBU1NFUlQoYWRkUmVzdWx0Lml0ZXJhdG9yLT52
YWx1ZS0+cGxhdGZvcm1EYXRhKCkgPT0gcGxhdGZvcm1EYXRhKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlRm9udHMuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKaW5kZXggOWY2
NWQyOTk4Zjk0ODY5NzNkNGJiZjE4ZGUyNmY4MmIwNDQzOWZjYS4uZWQ5NDFkMWVkMGZlYTRhNDJj
MmU5NTdhYjc2MDgzZTQ0ZTEzMjYzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKQEAgLTE4OSw3ICsxODksNyBAQCBj
b25zdCBGb250UmFuZ2VzJiBGb250Q2FzY2FkZUZvbnRzOjpyZWFsaXplRmFsbGJhY2tSYW5nZXNB
dChjb25zdCBGb250Q2FzY2FkZURlcwogICAgIGlmICghaW5kZXgpIHsKICAgICAgICAgZm9udFJh
bmdlcyA9IHJlYWxpemVOZXh0RmFsbGJhY2soZGVzY3JpcHRpb24sIG1fbGFzdFJlYWxpemVkRmFs
bGJhY2tJbmRleCwgbV9mb250U2VsZWN0b3IuZ2V0KCkpOwogICAgICAgICBpZiAoZm9udFJhbmdl
cy5pc051bGwoKSAmJiBtX2ZvbnRTZWxlY3RvcikKLSAgICAgICAgICAgIGZvbnRSYW5nZXMgPSBt
X2ZvbnRTZWxlY3Rvci0+Zm9udFJhbmdlc0ZvckZhbWlseShkZXNjcmlwdGlvbiwgc3RhbmRhcmRG
YW1pbHkpOworICAgICAgICAgICAgZm9udFJhbmdlcyA9IG1fZm9udFNlbGVjdG9yLT5mb250UmFu
Z2VzRm9yRmFtaWx5KGRlc2NyaXB0aW9uLCBmYW1pbHlOYW1lc0RhdGEtPmF0KEZhbWlseU5hbWVz
SW5kZXg6OlN0YW5kYXJkRmFtaWx5KSk7CiAgICAgICAgIGlmIChmb250UmFuZ2VzLmlzTnVsbCgp
KQogICAgICAgICAgICAgZm9udFJhbmdlcyA9IEZvbnRSYW5nZXMoRm9udENhY2hlOjpmb250Q2Fj
aGVGYWxsYmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5sYXN0UmVzb3J0RmFsbGJhY2tG
b250KGRlc2NyaXB0aW9uKSk7CiAgICAgICAgIHJldHVybiBmb250UmFuZ2VzOwpAQCAtMzUxLDcg
KzM1MSw3IEBAIEdseXBoRGF0YSBGb250Q2FzY2FkZUZvbnRzOjpnbHlwaERhdGFGb3JTeXN0ZW1G
YWxsYmFjayhVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3QKICAgICBpZiAoIWZvbnQpCiAgICAgICAg
IGZvbnQgPSAmcmVhbGl6ZUZhbGxiYWNrUmFuZ2VzQXQoZGVzY3JpcHRpb24sIDApLmZvbnRGb3JG
aXJzdFJhbmdlKCk7CiAKLSAgICBhdXRvIHN5c3RlbUZhbGxiYWNrRm9udCA9IGZvbnQtPnN5c3Rl
bUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihjaGFyYWN0ZXIsIGRlc2NyaXB0aW9uLCBtX2lzRm9y
UGxhdGZvcm1Gb250ID8gSXNGb3JQbGF0Zm9ybUZvbnQ6OlllcyA6IElzRm9yUGxhdGZvcm1Gb250
OjpObyk7CisgICAgYXV0byBzeXN0ZW1GYWxsYmFja0ZvbnQgPSBmb250LT5zeXN0ZW1GYWxsYmFj
a0ZvbnRGb3JDaGFyYWN0ZXIoY2hhcmFjdGVyLCBkZXNjcmlwdGlvbiwgbV9pc0ZvclBsYXRmb3Jt
Rm9udCA/IElzRm9yUGxhdGZvcm1Gb250OjpZZXMgOiBJc0ZvclBsYXRmb3JtRm9udDo6Tm8sIEZv
bnRDYWNoZTo6Zm9udENhY2hlRmFsbGJhY2tUb1NpbmdsZXRvbihtX2ZvbnRTZWxlY3RvcikpOwog
ICAgIGlmICghc3lzdGVtRmFsbGJhY2tGb250KQogICAgICAgICByZXR1cm4gR2x5cGhEYXRhKCk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRUYWdn
ZWRTZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dl
ZFNldHRpbmdzLmgKaW5kZXggMTI4ZGFmN2U2M2JjNzNkYTlmZWQxY2MzYTllNDJhY2Y1Njg5Mzk4
OC4uMDc4M2M1MmIxYzM0M2UxZGQ1ZTc4N2ZhNDc0MDRjZTRlZjY1YWQ0NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgK
QEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9IYXNo
VHJhaXRzLmg+CisjaW5jbHVkZSA8d3RmL0hhc2hlci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KIAogbmFtZXNwYWNlIFdURiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtl
ckZvbnRMb2FkUmVxdWVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDAxZGRiOWYzYTM3Mzc4MWNmOTVmM2Qw
YmM1NjFjNjg5N2NlODI3NAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcApAQCAtMCwwICsxLDE1MyBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAwNiwgMjAwNywgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDkgVG9yY2ggTW9iaWxlLCBJbmMuCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgTWV0cm9sb2dpY2FsIEdyb3VwIEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAy
MSBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5Z
CisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Cisg
KiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IldvcmtlckZvbnRMb2FkUmVxdWVzdC5oIgorCisjaW5jbHVkZSAiRm9udC5oIgorI2luY2x1ZGUg
IkZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaCIKKyNpbmNsdWRlICJGb250U2VsZWN0aW9uQWxnb3Jp
dGhtLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCisjaW5jbHVkZSAiU2Vy
dmljZVdvcmtlci5oIgorI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorI2luY2x1ZGUgIldPRkZG
aWxlRm9ybWF0LmgiCisjaW5jbHVkZSAiV29ya2VyR2xvYmFsU2NvcGUuaCIKKyNpbmNsdWRlICJX
b3JrZXJUaHJlYWRhYmxlTG9hZGVyLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV29ya2Vy
Rm9udExvYWRSZXF1ZXN0OjpXb3JrZXJGb250TG9hZFJlcXVlc3QoVVJMJiYgdXJsLCBMb2FkZWRG
cm9tT3BhcXVlU291cmNlIGxvYWRlZEZyb21PcGFxdWVTb3VyY2UpCisgICAgOiBtX3VybCh1cmwp
CisgICAgLCBtX2xvYWRlZEZyb21PcGFxdWVTb3VyY2UobG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkK
K3sKK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmxvYWQoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCYgY29udGV4dCkKK3sKKyAgICBBU1NFUlQoaXM8V29ya2VyR2xvYmFsU2NvcGU+KGNv
bnRleHQpKTsKKyAgICBhdXRvJiB3b3JrZXJHbG9iYWxTY29wZSA9IGRvd25jYXN0PFdvcmtlckds
b2JhbFNjb3BlPihjb250ZXh0KTsKKyAgICBtX2NvbnRleHQgPSBtYWtlV2Vha1B0cihjb250ZXh0
KTsKKworICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0IHsgbV91cmwgfTsKKyAgICBBU1NFUlQo
cmVxdWVzdC5odHRwTWV0aG9kKCkgPT0gIkdFVCIpOworCisgICAgRmV0Y2hPcHRpb25zIGZldGNo
T3B0aW9uczsKKyAgICBmZXRjaE9wdGlvbnMubW9kZSA9IEZldGNoT3B0aW9uczo6TW9kZTo6U2Ft
ZU9yaWdpbjsKKyAgICBmZXRjaE9wdGlvbnMuY3JlZGVudGlhbHMgPSB3b3JrZXJHbG9iYWxTY29w
ZS5jcmVkZW50aWFscygpOworICAgIGZldGNoT3B0aW9ucy5jYWNoZSA9IEZldGNoT3B0aW9uczo6
Q2FjaGU6OkRlZmF1bHQ7CisgICAgZmV0Y2hPcHRpb25zLnJlZGlyZWN0ID0gRmV0Y2hPcHRpb25z
OjpSZWRpcmVjdDo6Rm9sbG93OworICAgIGZldGNoT3B0aW9ucy5kZXN0aW5hdGlvbiA9IEZldGNo
T3B0aW9uczo6RGVzdGluYXRpb246OldvcmtlcjsKKworICAgIFRocmVhZGFibGVMb2FkZXJPcHRp
b25zIG9wdGlvbnMgeyBXVEZNb3ZlKGZldGNoT3B0aW9ucykgfTsKKyAgICBvcHRpb25zLnNlbmRM
b2FkQ2FsbGJhY2tzID0gU2VuZENhbGxiYWNrUG9saWN5OjpTZW5kQ2FsbGJhY2tzOworICAgIG9w
dGlvbnMuY29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1lbnQgPSBjb250ZXh0LnNob3VsZEJ5
cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSgpID8gQ29udGVudFNlY3VyaXR5UG9s
aWN5RW5mb3JjZW1lbnQ6OkRvTm90RW5mb3JjZSA6IENvbnRlbnRTZWN1cml0eVBvbGljeUVuZm9y
Y2VtZW50OjpFbmZvcmNlQ2hpbGRTcmNEaXJlY3RpdmU7CisgICAgb3B0aW9ucy5sb2FkZWRGcm9t
T3BhcXVlU291cmNlID0gbV9sb2FkZWRGcm9tT3BhcXVlU291cmNlOworCisgICAgb3B0aW9ucy5z
ZXJ2aWNlV29ya2Vyc01vZGUgPSBTZXJ2aWNlV29ya2Vyc01vZGU6OkFsbDsKKyNpZiBFTkFCTEUo
U0VSVklDRV9XT1JLRVIpCisgICAgaWYgKGF1dG8qIGFjdGl2ZVNlcnZpY2VXb3JrZXIgPSBjb250
ZXh0LmFjdGl2ZVNlcnZpY2VXb3JrZXIoKSkKKyAgICAgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uSWRlbnRpZmllciA9IGFjdGl2ZVNlcnZpY2VXb3JrZXItPnJlZ2lzdHJhdGlv
bklkZW50aWZpZXIoKTsKKyNlbmRpZgorCisgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6bG9h
ZFJlc291cmNlU3luY2hyb25vdXNseSh3b3JrZXJHbG9iYWxTY29wZSwgV1RGTW92ZShyZXF1ZXN0
KSwgKnRoaXMsIG9wdGlvbnMpOworfQorCitib29sIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5z
dXJlQ3VzdG9tRm9udERhdGEoY29uc3QgQXRvbVN0cmluZyYpCit7CisjaWYgIVBMQVRGT1JNKENP
Q09BKQorICAgIGlmICghbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhICYmICFtX2Vycm9yT2NjdXJy
ZWQgJiYgIW1faXNMb2FkaW5nICYmIG1fZGF0YSAmJiBpc1dPRkYoKm1fZGF0YSkpIHsKKyAgICAg
ICAgVmVjdG9yPGNoYXI+IGNvbnZlcnRlZEZvbnQ7CisgICAgICAgIGlmIChjb252ZXJ0V09GRlRv
U2ZudCgqbV9kYXRhLCBjb252ZXJ0ZWRGb250KSkKKyAgICAgICAgICAgIG1fZGF0YSA9IFNoYXJl
ZEJ1ZmZlcjo6Y3JlYXRlKFdURk1vdmUoY29udmVydGVkRm9udCkpOworICAgICAgICBlbHNlCisg
ICAgICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOworICAgIH0KKyNlbmRpZgorCisgICAg
aWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEgJiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9p
c0xvYWRpbmcgJiYgbV9kYXRhKSB7CisgICAgICAgIG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YSA9
IGNyZWF0ZUZvbnRDdXN0b21QbGF0Zm9ybURhdGEoKm1fZGF0YSwgbV91cmwuZnJhZ21lbnRJZGVu
dGlmaWVyKCkudG9TdHJpbmcoKSk7CisgICAgICAgIGlmICghbV9mb250Q3VzdG9tUGxhdGZvcm1E
YXRhKQorICAgICAgICAgICAgbV9lcnJvck9jY3VycmVkID0gdHJ1ZTsKKyAgICB9CisKKyAgICBy
ZXR1cm4gbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhLmdldCgpOworfQorCitSZWZQdHI8Rm9udD4g
V29ya2VyRm9udExvYWRSZXF1ZXN0OjpjcmVhdGVGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYg
Zm9udERlc2NyaXB0aW9uLCBjb25zdCBBdG9tU3RyaW5nJiwgYm9vbCBzeW50aGV0aWNCb2xkLCBi
b29sIHN5bnRoZXRpY0l0YWxpYywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VG
ZWF0dXJlcywgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcyBmb250RmFjZUNhcGFi
aWxpdGllcykKK3sKKyAgICBBU1NFUlQobV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhKTsKKyAgICBB
U1NFUlQobV9jb250ZXh0KTsKKyAgICByZXR1cm4gRm9udDo6Y3JlYXRlKG1fZm9udEN1c3RvbVBs
YXRmb3JtRGF0YS0+Zm9udFBsYXRmb3JtRGF0YShmb250RGVzY3JpcHRpb24sIHN5bnRoZXRpY0Jv
bGQsIHN5bnRoZXRpY0l0YWxpYywgZm9udEZhY2VGZWF0dXJlcywgZm9udEZhY2VDYXBhYmlsaXRp
ZXMpLCBGb250OjpPcmlnaW46OlJlbW90ZSwgJm1fY29udGV4dC0+Zm9udENhY2hlKCkpOworfQor
Cit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6c2V0Q2xpZW50KEZvbnRMb2FkUmVxdWVzdENs
aWVudCogY2xpZW50KQoreworICAgIG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50ID0gY2xpZW50Owor
CisgICAgaWYgKG1fbm90aWZ5T25DbGllbnRTZXQpIHsKKyAgICAgICAgbV9ub3RpZnlPbkNsaWVu
dFNldCA9IGZhbHNlOworICAgICAgICBtX2ZvbnRMb2FkUmVxdWVzdENsaWVudC0+Zm9udExvYWRl
ZCgqdGhpcyk7CisgICAgfQorfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlKQoreworICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwICE9IDIgJiYg
cmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSkgeworICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0
cnVlOworICAgICAgICByZXR1cm47CisgICAgfQorfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVx
dWVzdDo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFMZW5ndGgpCit7
CisgICAgaWYgKG1fZXJyb3JPY2N1cnJlZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFt
X2RhdGEpCisgICAgICAgIG1fZGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CisKKyAgICBt
X2RhdGEtPmFwcGVuZChkYXRhLCBkYXRhTGVuZ3RoKTsKK30KKwordm9pZCBXb3JrZXJGb250TG9h
ZFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3sKKyAgICBtX2lzTG9h
ZGluZyA9IGZhbHNlOworCisgICAgaWYgKCFtX2Vycm9yT2NjdXJyZWQpIHsKKyAgICAgICAgaWYg
KG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50KQorICAgICAgICAgICAgbV9mb250TG9hZFJlcXVlc3RD
bGllbnQtPmZvbnRMb2FkZWQoKnRoaXMpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX25v
dGlmeU9uQ2xpZW50U2V0ID0gdHJ1ZTsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRS
ZXF1ZXN0OjpkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKQoreworICAgIG1fZXJyb3JPY2N1
cnJlZCA9IHRydWU7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNlMGIyMGE4
OWIzNjhmYjVhYjIzN2FmZDBlZmQ0NDJhODQ2NDA0MjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC0wLDAgKzEsODMg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgTWV0cm9sb2dpY2FsIEdyb3VwIEIuVi4KKyAq
IENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlICJGb250TG9hZFJlcXVlc3QuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRl
ck9wdGlvbnMuaCIKKyNpbmNsdWRlICJUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgiCisjaW5jbHVk
ZSA8d3RmL1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9VUkwuaD4KKyNpbmNsdWRlIDx3dGYvV2Vh
a1B0ci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQ7CitjbGFzcyBTaGFyZWRCdWZmZXI7CitjbGFzcyBXb3JrZXJHbG9iYWxTY29wZTsKK3N0
cnVjdCBGb250Q3VzdG9tUGxhdGZvcm1EYXRhOworCitjbGFzcyBXb3JrZXJGb250TG9hZFJlcXVl
c3QgOiBwdWJsaWMgRm9udExvYWRSZXF1ZXN0LCBwdWJsaWMgVGhyZWFkYWJsZUxvYWRlckNsaWVu
dCB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgV29ya2VyRm9u
dExvYWRSZXF1ZXN0KFVSTCYmLCBMb2FkZWRGcm9tT3BhcXVlU291cmNlKTsKKyAgICB+V29ya2Vy
Rm9udExvYWRSZXF1ZXN0KCkgPSBkZWZhdWx0OworCisgICAgdm9pZCBsb2FkKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQmKTsKKworcHJpdmF0ZToKKyAgICBjb25zdCBVUkwmIHVybCgpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIG1fdXJsOyB9CisgICAgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7
IHJldHVybiAhbV9pc0xvYWRpbmcgJiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9kYXRhOyB9Cisg
ICAgYm9vbCBpc0xvYWRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2lzTG9hZGluZzsgfQor
ICAgIGJvb2wgZXJyb3JPY2N1cnJlZCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZXJyb3JPY2N1
cnJlZDsgfQorCisgICAgYm9vbCBlbnN1cmVDdXN0b21Gb250RGF0YShjb25zdCBBdG9tU3RyaW5n
JiByZW1vdGVVUkkpIGZpbmFsOworICAgIFJlZlB0cjxGb250PiBjcmVhdGVGb250KGNvbnN0IEZv
bnREZXNjcmlwdGlvbiYsIGNvbnN0IEF0b21TdHJpbmcmIHJlbW90ZVVSSSwgYm9vbCBzeW50aGV0
aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYs
IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMpIGZpbmFsOworCisgICAgdm9pZCBz
ZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50KikgZmluYWw7CisKKyAgICBib29sIGlzV29y
a2VyRm9udExvYWRSZXF1ZXN0KCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorCisgICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCBj
aGFyKiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2Fk
aW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaWRGYWlsKGNv
bnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKKworICAgIFVSTCBtX3VybDsKKyAgICBMb2FkZWRG
cm9tT3BhcXVlU291cmNlIG1fbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZTsKKworICAgIGJvb2wgbV9p
c0xvYWRpbmcgeyBmYWxzZSB9OworICAgIGJvb2wgbV9ub3RpZnlPbkNsaWVudFNldCB7IGZhbHNl
IH07CisgICAgYm9vbCBtX2Vycm9yT2NjdXJyZWQgeyBmYWxzZSB9OworICAgIEZvbnRMb2FkUmVx
dWVzdENsaWVudCogbV9mb250TG9hZFJlcXVlc3RDbGllbnQgeyBudWxscHRyIH07CisKKyAgICBX
ZWFrUHRyPFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ+IG1fY29udGV4dDsKKyAgICBSZWZQdHI8U2hh
cmVkQnVmZmVyPiBtX2RhdGE7CisgICAgc3RkOjp1bmlxdWVfcHRyPEZvbnRDdXN0b21QbGF0Zm9y
bURhdGE+IG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19GT05UTE9BRFJFUVVFU1QoV2ViQ29yZTo6
V29ya2VyRm9udExvYWRSZXF1ZXN0LCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCBkMGZiZDcyZDMy
YjU1MDQ2OWVhMDhhOTBmMGZkNmJmODRmYTYxODg2Li41YTk3ZjBmYzQyZDA4ZjQ5YjZhNjZlZTA1
OTMzYTk4ODEwNDdjZTA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtl
ckdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2Jh
bFNjb3BlLmNwcApAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBv
bGljeS5oIgogI2luY2x1ZGUgIkNyeXB0by5oIgogI2luY2x1ZGUgIkZvbnRDYWNoZS5oIgorI2lu
Y2x1ZGUgIkZvbnRGYWNlU2V0LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCiAj
aW5jbHVkZSAiSW1hZ2VCaXRtYXBPcHRpb25zLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmgiCkBAIC00NSw2ICs0Niw3IEBACiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW5Q
b2xpY3kuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaCIKICNpbmNsdWRl
ICJTb2NrZXRQcm92aWRlci5oIgorI2luY2x1ZGUgIldvcmtlckZvbnRMb2FkUmVxdWVzdC5oIgog
I2luY2x1ZGUgIldvcmtlckxvYWRlclByb3h5LmgiCiAjaW5jbHVkZSAiV29ya2VyTG9jYXRpb24u
aCIKICNpbmNsdWRlICJXb3JrZXJNZXNzYWdpbmdQcm94eS5oIgpAQCAtNTIxLDYgKzUyMywyMiBA
QCBGb250Q2FjaGUmIFdvcmtlckdsb2JhbFNjb3BlOjpmb250Q2FjaGUoKQogICAgIHJldHVybiAq
bV9mb250Q2FjaGU7CiB9CiAKK1JlZjxGb250RmFjZVNldD4gV29ya2VyR2xvYmFsU2NvcGU6OmZv
bnRzKCkKK3sKKyAgICByZXR1cm4gY3NzRm9udFNlbGVjdG9yKCktPmZvbnRGYWNlU2V0KCk7Cit9
CisKK3N0ZDo6dW5pcXVlX3B0cjxGb250TG9hZFJlcXVlc3Q+IFdvcmtlckdsb2JhbFNjb3BlOjpm
b250TG9hZFJlcXVlc3QoU3RyaW5nJiB1cmwsIGJvb2wsIGJvb2wsIExvYWRlZEZyb21PcGFxdWVT
b3VyY2UgbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkKK3sKKyAgICByZXR1cm4gbWFrZVVuaXF1ZTxX
b3JrZXJGb250TG9hZFJlcXVlc3Q+KGNvbXBsZXRlVVJMKHVybCksIGxvYWRlZEZyb21PcGFxdWVT
b3VyY2UpOworfQorCit2b2lkIFdvcmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdGb250U29v
bihGb250TG9hZFJlcXVlc3QmIHJlcXVlc3QpCit7CisgICAgQVNTRVJUKGlzPFdvcmtlckZvbnRM
b2FkUmVxdWVzdD4ocmVxdWVzdCkpOworICAgIGRvd25jYXN0PFdvcmtlckZvbnRMb2FkUmVxdWVz
dD4ocmVxdWVzdCkubG9hZCgqdGhpcyk7Cit9CisKIFJlZmVycmVyUG9saWN5IFdvcmtlckdsb2Jh
bFNjb3BlOjpyZWZlcnJlclBvbGljeSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fcmVmZXJyZXJQ
b2xpY3k7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNj
b3BlLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXgg
NmViZTQ2NTExZmJhMjFjMmY4NTE2ZGU0NTI2ODAxNGNjMjdmMTY4ZS4uMmEzMTNkNGU2ODY1MTJi
ZDAxM2JhYWZiMjRmMjkyNzA0M2Q5YjU0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29y
a2VyR2xvYmFsU2NvcGUuaApAQCAtNTEsNiArNTEsOCBAQCBjbGFzcyBDU1NGb250U2VsZWN0b3I7
CiBjbGFzcyBDU1NWYWx1ZVBvb2w7CiBjbGFzcyBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25z
ZUhlYWRlcnM7CiBjbGFzcyBDcnlwdG87CitjbGFzcyBGb250RmFjZVNldDsKK2NsYXNzIEZvbnRM
b2FkUmVxdWVzdDsKIGNsYXNzIFBlcmZvcm1hbmNlOwogY2xhc3MgU2NoZWR1bGVkQWN0aW9uOwog
Y2xhc3MgV29ya2VyTG9jYXRpb247CkBAIC0xMjQsNiArMTI2LDkgQEAgcHVibGljOgogICAgIENT
U1ZhbHVlUG9vbCYgY3NzVmFsdWVQb29sKCkgZmluYWw7CiAgICAgQ1NTRm9udFNlbGVjdG9yKiBj
c3NGb250U2VsZWN0b3IoKSBmaW5hbDsKICAgICBGb250Q2FjaGUmIGZvbnRDYWNoZSgpIGZpbmFs
OworICAgIFJlZjxGb250RmFjZVNldD4gZm9udHMoKTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8Rm9u
dExvYWRSZXF1ZXN0PiBmb250TG9hZFJlcXVlc3QoU3RyaW5nJiwgYm9vbCwgYm9vbCwgTG9hZGVk
RnJvbU9wYXF1ZVNvdXJjZSkgZmluYWw7CisgICAgdm9pZCBiZWdpbkxvYWRpbmdGb250U29vbihG
b250TG9hZFJlcXVlc3QmKSBmaW5hbDsKIAogICAgIFJlZmVycmVyUG9saWN5IHJlZmVycmVyUG9s
aWN5KCkgY29uc3QgZmluYWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9i
YWxTY29wZS5pZGwKaW5kZXggZjg1NzhhNDcxZjQ4YjQ4NThiYmZiYmZiYzhhMDVjY2RkOWI2OWIy
Ni4uZTI4ZTg5ZWZmNGNiMDJmNzRkZjBiZDFhMjkwMWE3NTcxNDVjZWNmYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTQ4LDMgKzQ4LDQgQEAK
IH07CiAKIFdvcmtlckdsb2JhbFNjb3BlIGluY2x1ZGVzIFdpbmRvd09yV29ya2VyR2xvYmFsU2Nv
cGU7CitXb3JrZXJHbG9iYWxTY29wZSBpbmNsdWRlcyBGb250RmFjZVNvdXJjZTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGZmZmI0ZDQ2NzZlYWEwNzU4ZjQ0ZjY2ZDRhMTMzYjI1
ZmM2ZjgxNmIuLjRkMWRkNzBkZDM0NTdlNTZkYTY2ODc1YTMxMjYyNTVlNGIzNzM1ZjggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTA0LTE2ICBD
aHJpcyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgRm9udEZh
Y2UgaW4gV29ya2VycyBmb3IgT2Zmc2NyZWVuQ2FudmFzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQxNzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
Lzc2NTI5MDI0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEZvbnRGYWNlIGlzIG5vdyBhdmFpbGFibGUgZm9yIFdvcmtlcnMsIHJlYmFzZWxpbmUgcmVs
YXRlZCB0ZXN0cy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5h
bGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5yaWdodC53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2VyLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29ya2VyLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxp
bmUudG9wLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJv
dW5kLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRm
YWNlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uu
d29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5zcGFjZS5jb2xsYXBzZS5lbmQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNw
YWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5z
cGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3Bh
Y2UuY29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNl
LmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1
YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5j
ZXMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS53aWR0aC5lbXB0eS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUu
d2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKwogMjAyMS0wNC0xNiAgTWFudWVsIFJl
Z28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KIAogICAgICAgICBbc2VsZWN0b3JzXSBV
cGRhdGUgOmZvY3VzLXZpc2libGUgdGVzdHMgZnJvbSBXUFQKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1leHBlY3RlZC50eHQK
aW5kZXggZTlkN2Y1NzRmNDU1MGNkNWYyZjM0YzNhMGM2Yjg5ZGQzZGE4ZmRkMy4uMTFkZGNmY2U2
NzBiNWVmYWI0MTc2MjM1ODBiMjhiNzRkMmExMDYzNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIGNlbnRlciBpcyB0aGUgY2VudGVyIG9m
IHRoZSBlbSBzcXVhcmVzIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJs
ZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGNlbnRlciBpcyB0aGUgY2VudGVyIG9mIHRoZSBl
bSBzcXVhcmVzIChub3QgdGhlIGJvdW5kaW5nIGJveCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0ZWQudHh0
CmluZGV4IDM4ZGQ3OGJlZWJlYmY5MmVkMDJiMTU0OTYyYTBhMDk1MDBkOTZjMWMuLmUwOTJlMWY4
YmM2ZGY3NWQxYzkxNWE0YjRmYjlhZWRiZTFmOGM3OWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50
eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIGVuZCB3aXRoIGx0ciBpcyB0aGUg
cmlnaHQgZWRnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24g
ZW5kIHdpdGggbHRyIGlzIHRoZSByaWdodCBlZGdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCAwNThiYjk5ZGUzMzVhNGJmZDAzZmI1MTY3MzQxZWQ0MGJhYmNiOTEyLi40YjZkZTI3ZTI0
ODhiZWViOWRjZWM5ZGRlYjFlYjQ0MjBiZTNmNWMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0
CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBlbmQgd2l0aCBydGwgaXMgdGhlIGxl
ZnQgZWRnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24gZW5k
IHdpdGggcnRsIGlzIHRoZSBsZWZ0IGVkZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGYyOTJm
OTQ0MTI3OWRjYTk1NzRjMmJmMDMxNjZiMTM5NTE5MmM1NjMuLmIyM2Y3NzhjZmUwMWM1NDUzOTIw
MDIzYTFhMzNkNDk2ZDVmMmZhYTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgdGV4dEFsaWduIGxlZnQgaXMgdGhlIGxlZnQgb2YgdGhlIGZpcnN0IGVtIHNxdWFy
ZSAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQ
QVNTIHRleHRBbGlnbiBsZWZ0IGlzIHRoZSBsZWZ0IG9mIHRoZSBmaXJzdCBlbSBzcXVhcmUgKG5v
dCB0aGUgYm91bmRpbmcgYm94KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBmZjVhNDAyMGJk
YWIwYTYxMTlmZDY0YWU0NzcyZmMxNWIxMWVhNTY1Li5hMTA4MmQ1YjhjNTg1NDQ5M2RhMDg5NTAx
NjBlZmRjYTY5YjNlYjBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5h
bGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAK
LUZBSUwgdGV4dEFsaWduIHJpZ2h0IGlzIHRoZSByaWdodCBvZiB0aGUgbGFzdCBlbSBzcXVhcmUg
KG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFT
UyB0ZXh0QWxpZ24gcmlnaHQgaXMgdGhlIHJpZ2h0IG9mIHRoZSBsYXN0IGVtIHNxdWFyZSAobm90
IHRoZSBib3VuZGluZyBib3gpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNmZk
OTY1NTQ1MmNmMDE2N2I0YWQwOWMxMmU5MzY3YzBjYzhiMTJhOS4uMTlmMDJiZjNkMDg1ZjQxYWFl
OTY5Y2FiZjlkNDliMmNmN2EwZjI5NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBlY3RlZC50eHQKQEAg
LTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIHN0YXJ0IHdpdGggbHRyIGlzIHRoZSBsZWZ0
IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIHN0YXJ0
IHdpdGggbHRyIGlzIHRoZSBsZWZ0IGVkZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCBiZDVhNTlkNzllNmUwNWFkYzM4NDM5Y2FkNWRiZjViMjFkOWM4NjljLi40MWMzZjI0YWYw
YmRiNDYzNjI1MWM0OTRmZGM2NDllM2Q5ZTY5MWJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gc3RhcnQgd2l0aCBydGwgaXMg
dGhlIHJpZ2h0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFs
aWduIHN0YXJ0IHdpdGggcnRsIGlzIHRoZSByaWdodCBlZGdlCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29ya2VyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29y
a2VyLWV4cGVjdGVkLnR4dAppbmRleCBkMzg5OTQwYWY2NWY0N2RhM2FiZjJlZWM0ZDdhOWI5NjE1
MWQzZmVkLi5hMTdlZWY1MDkyYjdkMDM4MjdhY2Q2NWI3OTc4ZWU0YjliZTIwZGMyIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtl
ci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUu
YWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIDJk
IENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIDJkCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggNmExNTQ5YzE3YjIyNmE5ZTU1NjU3NWNlOTJmNzI5Njg4OWNkYTI5
Mi4uZmYyODM2MDk4NTM4NTQyZDcyZWRjMjkxMDBmNTgwNmE4MjNiMDc0ZSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndvcmtlci1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndv
cmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEJhc2VsaW5lIGJv
dHRvbSBpcyB0aGUgYm90dG9tIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94
KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCB0ZXh0QmFzZWxpbmUgYm90dG9t
IGlzIHRoZSBib3R0b20gb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIGFz
c2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1LCAyNSkg
ZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYyZWVjNGQ3YTliOTYxNTFkM2ZlZC4uY2JlZjI3
NmEzNDc4ZmFiYzExYWI1ZjRmMWI1ZDI1OTI1NTc2OThkZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4
cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBGb250RmFjZQorRkFJTCAyZCBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2Yg
dGhlIHBpeGVsIGF0ICg1LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlkZW9ncmFwaGljLndv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5p
ZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJm
MmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmNiZWYyNzZhMzQ3OGZhYmMxMWFiNWY0ZjFiNWQyNTkyNTU3
Njk4ZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlk
ZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsx
LDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCAyZCBh
c3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1LCA1KSBl
eHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3RlZC50eHQK
aW5kZXggMzAwNjczOGE5YzZkOGY5MjBlZDljMGM4Y2U2NmVjOTMyMzkzZWJhYS4uYWQ2NDk0OWUx
NTEyYTViODcwYjA2ZDEyMDQ4ZjJiOGYyODY4MzE5NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEJhc2VsaW5lIG1pZGRsZSBpcyB0aGUg
bWlkZGxlIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCB0ZXh0QmFzZWxpbmUgbWlkZGxlIGlzIHRoZSBtaWRk
bGUgb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIGFzc2VydF9hcHByb3hf
ZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDUsIDUpIGV4cGVjdGVkIDAgKy8t
IDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBlMjZmMWI2ZjhhMzQz
YjBkYTUzNTlhZWU0ODE2OWI0N2ZiNjI3MGFhLi44MGU5OGZiMjViNjk0M2IzYzgyOTRkYzIyZTNi
YmI3YTcwMmEzNjQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNl
bGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAot
RkFJTCB0ZXh0QmFzZWxpbmUgdG9wIGlzIHRoZSB0b3Agb2YgdGhlIGVtIHNxdWFyZSAobm90IHRo
ZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIHRleHRC
YXNlbGluZSB0b3AgaXMgdGhlIHRvcCBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5n
IGJveCkgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAo
NSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndvcmtlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndvcmtl
ci1leHBlY3RlZC50eHQKaW5kZXggOWMzZjg1ZTQ5MGEyMTM2ZDNmNDUwNWJiMzkzYmEzOWNiNDkw
MmJiYS4uZWU0MjkxZDJiZTgzNTg0NDUwMjhmN2IyZTUzOTBhNGI5ZmE0ZTAwZiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lk
dGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBmaWxs
VGV4dCBoYW5kbGVzIG1heFdpZHRoIGJhc2VkIG9uIGxpbmUgc2l6ZSwgbm90IGJvdW5kaW5nIGJv
eCBzaXplIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIGZpbGxUZXh0IGhhbmRs
ZXMgbWF4V2lkdGggYmFzZWQgb24gbGluZSBzaXplLCBub3QgYm91bmRpbmcgYm94IHNpemUKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250
ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmls
bC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDZiOTJjMzhmMzIy
MjI5OGNhOGFhOGVlMjE5NmMzOGUxNGE3YjljNzguLmIyY2UyNzFiZjEwMWUzYzliNjJiNThiZDE4
OTI5NzU5MWQ3OWE3NmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZp
bGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50
eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgZmlsbFRleHQgd29ya3Mgb24gQGZvbnQtZmFjZSBm
b250cyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBmaWxsVGV4dCB3b3JrcyBv
biBAZm9udC1mYWNlIGZvbnRzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtlci1leHBlY3RlZC50eHQKaW5k
ZXggZTc5MzU3YWFiMjVmNjE4ZWY1YTdlMDRiZmJhNDg1NzBlOTRmMmVjYi4uMWFiOTkxZjIyZWVk
ZTViMjhmMzExOWM5ZjUyZmE3ZDgxZDgzYzMyMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgQGZvbnQtZmFjZSBmb250cyBzaG91bGQg
d29yayBldmVuIGlmIHRoZXkgYXJlIG5vdCB1c2VkIGluIHRoZSBwYWdlIENhbid0IGZpbmQgdmFy
aWFibGU6IEZvbnRGYWNlCitQQVNTIEBmb250LWZhY2UgZm9udHMgc2hvdWxkIHdvcmsgZXZlbiBp
ZiB0aGV5IGFyZSBub3QgdXNlZCBpbiB0aGUgcGFnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53b3JrZXItZXhwZWN0ZWQu
dHh0CmluZGV4IDBmNzVlYTkyMTI5ZGQ0ZjJhZjlkMmY1M2YxZWZiNjRmMTk5MTE2NDUuLjM5ZWRh
NGRjMmZmNjYzZTFmMjgzNmU1NjdjZTc2Mzg2NTU2OTFkOTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53b3JrZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIERyYXcgd2l0aCB0aGUgZm9udCBpbW1l
ZGlhdGVseSwgdGhlbiB3YWl0IGEgYml0IHVudGlsIGFuZCBkcmF3IGFnYWluLiAoVGhpcyBjcmFz
aGVzIHNvbWUgdmVyc2lvbiBvZiBXZWJLaXQuKSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFj
ZQorUEFTUyBEcmF3IHdpdGggdGhlIGZvbnQgaW1tZWRpYXRlbHksIHRoZW4gd2FpdCBhIGJpdCB1
bnRpbCBhbmQgZHJhdyBhZ2Fpbi4gKFRoaXMgY3Jhc2hlcyBzb21lIHZlcnNpb24gb2YgV2ViS2l0
LikKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29y
a2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndv
cmtlci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYyZWVjNGQ3YTliOTYx
NTFkM2ZlZC4uYTE3ZWVmNTA5MmI3ZDAzODI3YWNkNjViNzk3OGVlNGI5YmUyMGRjMiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIDJkIENhbid0IGZpbmQgdmFyaWFibGU6
IEZvbnRGYWNlCitQQVNTIDJkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDlhMzI0MDI3NWVk
Mzg3ZGJkZmQ1ZDI1YzFmNWEyN2E5ZGU2OWM3NWEuLjFlZDQ0ZjhmN2RiY2IxNjM0YmY0OWE3M2Jm
OTU5NWI5NzkyMDk4Y2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNw
YWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAot
RkFJTCBVKzAwMjAgaXMgcmVuZGVyZWQgdGhlIGNvcnJlY3Qgc2l6ZSAoMWVtIHdpZGUpIENhbid0
IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFUrMDAyMCBpcyByZW5kZXJlZCB0aGUgY29y
cmVjdCBzaXplICgxZW0gd2lkZSkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCA2ZTVmODMyZDE0MmUwZTc1NTI0OTI4ZTUyNzRlYjkwYTBhMzJjYjZhLi40MmY1NzBmMGI5
ZTc4ZDk0N2MwZTBiYzY0YWI2ODE2OGMzNjY1NTJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQud29ya2VyLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQud29ya2VyLWV4
cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRo
ZSBlbmQgb2YgYSBsaW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0IGZpbmQgdmFyaWFi
bGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXQgdGhlIGVuZCBvZiBhIGxpbmUg
YXJlIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVs
IG9mIHRoZSBwaXhlbCBhdCAoNzUsIDI1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5v
bnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5z
cGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGFlNDYxNWRl
NGNjNDAyOTc2MGQxNzVjOTA3NDI5NzllZTU1MzAzNWMuLjllNWQ0NzA0NDk1MjkzOTE3Y2Q1ZWU1
NjQ2ZjQ4YzhjOThkYTZiZDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4cGVj
dGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBOb24tc3BhY2UgY2hhcmFjdGVycyBhcmUg
bm90IGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZCBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBGb250RmFjZQorUEFTUyBOb24tc3BhY2UgY2hhcmFjdGVycyBhcmUgbm90IGNvbnZlcnRlZCB0
byBVKzAwMjAgYW5kIGNvbGxhcHNlZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVk
LnR4dAppbmRleCA5NGEwMDQzYTBhMzM3OWUxMjhlYjE2NDBiNGY2NDI4YjJkNzEzOWRhLi42ODJj
ZmI5MzliMGY4NTAxMGI3ZDMzZTU4NDIxMDU2YTUxYjQ4MDE0IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90aGVy
Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFj
dGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgQ2Fu
J3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29u
dmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJveF9l
cXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBleHBlY3RlZCAwICsv
LSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDk0YTAwNDNhMGEzMzc5ZTEyOGViMTY0MGI0ZjY0MjhiMmQ3MTM5ZGEuLjY4MmNmYjkzOWIw
Zjg1MDEwYjdkMzNlNTg0MjEwNTZhNTFiNDgwMTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3BhY2Uud29ya2Vy
LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFy
ZSBjb252ZXJ0ZWQgdG8gVSswMDIwLCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQg
dG8gVSswMDIwLCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBhc3NlcnRfYXBwcm94X2VxdWFsczog
UmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0
IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2Uu
Y29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNTA4
NjhmZTkxOTgwY2E3MGI0MDlmNzYzNzM5ZTg0MGVmOTZmM2Q1ZC4uN2JjYjUxY2NjN2I5YzBhMTYw
OWQ1ZWFjZDNkMzRkYzI4MTgxMjg0YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53b3JrZXItZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXQgdGhlIHN0
YXJ0IG9mIGEgbGluZSBhcmUgY29sbGFwc2VkIChwZXIgQ1NTKSBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBzdGFydCBvZiBhIGxpbmUg
YXJlIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVs
IG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5n
Qm94Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5h
Y3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDMxMjBmY2I4ZmFkZGQ5
ZTU0MjY3NDVkZDU1NmY5ZDQzNzliZmU3YjcuLjgyNTRjZTY3NDI0ODYyMmVlMDdiNDRjN2Q5Zjhi
NmNkZjc2MWNmNjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFj
dHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGFjdHVhbEJvdW5kaW5nQm94IGZvciBPZmZzY3Jl
ZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGluZyBhY3R1
YWxCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIGFzc2VydF9lcXVhbHM6IE1hdGguYWJz
KGN0eC5tZWFzdXJlVGV4dCgnQScpLmFjdHVhbEJvdW5kaW5nQm94RGVzY2VudCkgPT09IDAgKGdv
dCAxW251bWJlcl0sIGV4cGVjdGVkIDBbbnVtYmVyXSkgZXhwZWN0ZWQgMCBidXQgZ290IDEKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndv
cmtlci1leHBlY3RlZC50eHQKaW5kZXggZjRhMDg0MDNjMWViOGI0MWFjNGJhNTgwNjJhNDM1Mjg1
NzU1NTVhYi4uOTM4Yzc5OTExZDA2ZWY1MTRkN2IxYzljNmE0NTQxNTFhMWJmNTdiNSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMud29ya2VyLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3Jr
ZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRlc3Rpbmcgd2lkdGggYWR2
YW5jZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQor
RkFJTCBUZXN0aW5nIHdpZHRoIGFkdmFuY2VzIGZvciBPZmZzY3JlZW5DYW52YXMgdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2N0eC5tZWFzdXJlVGV4dCgnSGVsbG8nKS5h
ZHZhbmNlc1swXScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggM2QyOTkwYzExZTk2ZTE3
MTg1Nzg5MzRjZjMyY2FiNjM0NDc5NmM3MS4uZTFkMjI5Mzg0ZDFhNzA2NTAyZTUxODQyOTJmNTdk
ODM0NGM0OTI3YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYmFz
ZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZB
SUwgVGVzdGluZyBiYXNlbGluZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlh
YmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIGJhc2VsaW5lcyBmb3IgT2Zmc2NyZWVuQ2FudmFz
IGN0eC5tZWFzdXJlVGV4dCgnQScpLmdldEJhc2VsaW5lcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdjdHgubWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMoKScsICdjdHgubWVhc3VyZVRleHQo
J0EnKS5nZXRCYXNlbGluZXMnIGlzIHVuZGVmaW5lZCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCA4NWE3MmNlYTE3MTkzZmJmMTA4ZWJmNGI0NjEzZmU5ZTkyNTlkMGQwLi5hY2FmYWRmODYx
YzA3ZmE3ZmZmNTFmMzAxZmE3ZTE5ZmRlYmFmMWZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGVtSGVpZ2h0cyBmb3IgT2Zmc2NyZWVuQ2Fu
dmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFRlc3RpbmcgZW1IZWlnaHRz
IGZvciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0X2VxdWFsczogY3R4Lm1lYXN1cmVUZXh0KCdBJyku
ZW1IZWlnaHRBc2NlbnQgPT09IDM3LjUgKGdvdCA4NVtudW1iZXJdLCBleHBlY3RlZCAzNy41W251
bWJlcl0pIGV4cGVjdGVkIDM3LjUgYnV0IGdvdCA4NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0JveC53b3JrZXItZXhw
ZWN0ZWQudHh0CmluZGV4IDE0YzdkYTQ0YmQwZWRjZjY4MWFmN2FmM2RjNmI2ZTdmYTE1YTQ2NTAu
LjI1YmFjZTNlZmNmMTdmZmUyN2IwNTMxNzlmZGRkMGZlOTMxMjAzY2QgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0Jv
eC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRlc3RpbmcgZm9u
dEJvdW5kaW5nQm94IGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9u
dEZhY2UKK1BBU1MgVGVzdGluZyBmb250Qm91bmRpbmdCb3ggZm9yIE9mZnNjcmVlbkNhbnZhcwog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5iYXNpYy53
b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGgu
YmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1Yzc4MGM5ZTRlNTE4NjFiMDFkYTMwY2Yx
NGQ3Mzg1MjM0MzlhMjkzLi45NDJmOTE0MTA1NTU5Mjc3OWI4NDNhYjY2YTUxNTZjOWIyZjA3ZDA1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5iYXNpYy53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndp
ZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGhl
IHdpZHRoIG9mIGNoYXJhY3RlciBpcyBzYW1lIGFzIGZvbnQgdXNlZCBmb3IgT2Zmc2NyZWVuQ2Fu
dmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFRoZSB3aWR0aCBvZiBjaGFy
YWN0ZXIgaXMgc2FtZSBhcyBmb250IHVzZWQgZm9yIE9mZnNjcmVlbkNhbnZhcwogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53b3JrZXItZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29y
a2VyLWV4cGVjdGVkLnR4dAppbmRleCA1MDBkNzI3ZDNiNjdkYzk4NmFmZWY0YjlkMmYyYTc0Njk5
ZTFkM2VlLi42ODdiYzRmMzVmY2Y0Y2NkNzQ3NzQxMWE3NjIzMzQzYjMwYmRlOTM4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53b3JrZXItZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5
Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGhlIGVtcHR5IHN0
cmluZyBoYXMgemVybyB3aWR0aCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFi
bGU6IEZvbnRGYWNlCitQQVNTIFRoZSBlbXB0eSBzdHJpbmcgaGFzIHplcm8gd2lkdGggZm9yIE9m
ZnNjcmVlbkNhbnZhcwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3Vy
ZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA5M2Q3MTFjNGJi
OTQ3MjIwNGM3ZjE0MzVjOGJlMDBmZGM3YjI2YjJhLi4wNTM3MjkwMGQ1NjZmNzliNDU1YzNlYTU1
MjUyMDY1MjVmZDIwMWNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3Vy
ZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwz
IEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCBhbmQg
Y29sbGFwc2VkIChwZXIgQ1NTKSBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFi
bGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAw
MjAgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgZm9yIE9mZnNjcmVlbkNhbnZhcyBhc3NlcnRfZXF1
YWxzOiBjdHgubWVhc3VyZVRleHQoJ0EgXHgwOVx4MGFceDBjXHgwZCAgXHgwOVx4MGFceDBjXHgw
ZEInKS53aWR0aCA9PT0gMTUwIChnb3QgNjUwW251bWJlcl0sIGV4cGVjdGVkIDE1MFtudW1iZXJd
KSBleHBlY3RlZCAxNTAgYnV0IGdvdCA2NTAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426712</attachid>
            <date>2021-04-21 10:49:14 -0700</date>
            <delta_ts>2021-04-21 11:33:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210421184912.patch</filename>
            <type>text/plain</type>
            <size>78188</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzViZWE0OGZiMjlkZjYx
ZTczNGY0OWU5NDhjNDg5ZTZiMzZiZGFiNi4uM2E1YzQ0NDRhMjEwMDU4MGE2MTVkNTIxMDk3OGY1
YTk3OWM5NDBiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDExMSBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUbyBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGlt
cGxlbWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJs
ZSBvbiBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFp
bGFibGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAg
ICBtYWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBy
ZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFj
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgUGFzcyBhIEZvbnRDYWNoZSB3aGVu
IGNhbGxpbmcgRm9udDo6Y3JlYXRlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU2V0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjplbnN1cmVMb2NhbEZvbnRGYWNl
c0ZvckZhbWlseVJlZ2lzdGVyZWQpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1
ZVBvb2wgYW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9y
RmFtaWx5UmVnaXN0ZXJlZC4gQWxzbyBjbGFyaWZ5IGEgdmFndWVseS1uYW1lZAorICAgICAgICAg
IHZhcmlhYmxlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU291cmNlOjpDU1NGb250RmFjZVNvdXJjZSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NGb250RmFjZVNvdXJjZTo6Zm9udCk6CisgICAgICAgICAgVXNlIEZv
bnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nIGluc3RlYWQgb2YgbWFraW5nIGFzc3VtcHRpb25zIGFi
b3V0CisgICAgICAgICAgaXRzIHN0YXRlIG9uIGNvbnN0cnVjdGlvbi4gQWxzbyBwYXNzIHRoZSBG
b250Q2FjaGUgc2luZ2xldG9uIHdoZXJlCisgICAgICAgICAgYXBwcm9wcmlhdGUgaW4gZm9udCBj
cmVhdGlvbi4KKworICAgICAgICAqIGNzcy9Gb250RmFjZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGb250RmFjZTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRGYWNlOjpkaXNwbGF5
IGNvbnN0KToKKyAgICAgICAgKiBjc3MvRm9udEZhY2UuaDoKKyAgICAgICAgKiBjc3MvRm9udEZh
Y2UuaWRsOgorICAgICAgICAgIENvbnN0cnVjdCB3aXRoIGEgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCBpbnN0ZWFkIG9mIGEgRG9jdW1lbnQgYW5kCisgICAgICAgICAgbWFrZSBhdmFpbGFibGUgZm9y
IFdvcmtlcnMuCisKKyAgICAgICAgKiBjc3MvRm9udEZhY2VTZXQuaWRsOgorICAgICAgICAgIEV4
cG9zZSB0byBXb3JrZXJzLgorCisgICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udExvYWRSZXF1ZXN0Ojppc1dvcmtlckZvbnRMb2FkUmVxdWVz
dCBjb25zdCk6CisgICAgICAgICAgQWRkIGlzUGVuZGluZyBmdW5jdGlvbiBhbmQgbmV3IHR5cGUg
V29ya2VyRm9udExvYWRSZXF1ZXN0LgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkRm9udDo6Y3JlYXRlRm9udCk6CisgICAg
ICAgICAgUGFzcyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgICAg
SW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Rm9udCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Ojpz
eXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAg
ICAgICAgQWRkIGFuIG9wdGlvbmFsIEZvbnRDYWNoZSBwYXJhbWV0ZXIgZm9yIHVzZSB3aXRoIHZl
cnRpY2FsIGZvbnQgZGF0YQorICAgICAgICAgIHJldHJpZXZhbCBhbmQgYWRkIGEgRm9udENhY2hl
IHBhcmFtZXRlciB0bworICAgICAgICAgIHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlciBp
bnN0ZWFkIG9mIHVzaW5nIHRoZSBzaW5nbGV0b24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9Gb250Q2FjaGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhY2hlOjpmb250Rm9y
UGxhdGZvcm1EYXRhKToKKyAgICAgICAgICBQYXNzIEZvbnRDYWNoZSBwYXJhbWV0ZXIgd2hlbiBj
cmVhdGluZyBmb250cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRl
Rm9udHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVGb250czo6cmVhbGl6ZUZh
bGxiYWNrUmFuZ2VzQXQpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVGb250czo6Z2x5
cGhEYXRhRm9yU3lzdGVtRmFsbGJhY2spOgorICAgICAgICAgIFVzZSBmYW1pbHlOYW1lc0RhdGEg
aW5zdGVhZCBvZiBmYW1pbHlOYW1lcyBhbmQgcGFzcyB0aGUgRm9udENhY2hlCisgICAgICAgICAg
cGFyYW1ldGVyIHdoZW4gY2FsbGluZyBnbHlwaERhdGFGb3JTeXN0ZW1GYWxsYmFjayB0byBtYWtl
IHRoaXMgc2FmZQorICAgICAgICAgIHRvIHVzZSBpbiBhIFdvcmtlci4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRUYWdnZWRTZXR0aW5ncy5oOgorICAgICAgICAgIEFkZCBtaXNz
aW5nIHd0Zi9IYXNoZXIuaCBpbmNsdWRlLgorCisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250
TG9hZFJlcXVlc3QuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6V29ya2VyRm9udExvYWRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJGb250TG9h
ZFJlcXVlc3Q6OmVuc3VyZUN1c3RvbUZvbnREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6Y3JlYXRlRm9udCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OnNldENsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJGb250
TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZhaWwpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyRm9udExvYWRSZXF1ZXN0Lmg6IEFkZGVkLgorICAgICAgICAgIEltcGxlbWVudCBGb250TG9h
ZFJlcXVlc3QgZm9yIFdvcmtlcnMuCisKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckdsb2JhbFNj
b3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpmb250cyk6Cisg
ICAgICAgIChXZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0KToKKyAg
ICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdGb250U29vbik6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAgIEltcGxl
bWVudCBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGZvbnQtbG9hZGluZyByZWxhdGVkIGZ1bmN0aW9u
cy4KKworICAgICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAg
IEluY2x1ZGUgRm9udEZhY2VTb3VyY2UuCisKIDIwMjEtMDQtMjEgIENocmlzIExvcmQgIDxjbG9y
ZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIERPTUV4Y2VwdGlvbiBzaG91bGQgYmUgU2VyaWFsaXph
YmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQppbmRleCBlMTE1MDVjZGQwZjhlNDNiMjg3M2RiN2ExZDU4MWY4
ZGY5ODRmZWIzLi40YzhhYmJkNThmYjNkMjIyMTg3MzY0MDQzNGM3OWY0ZDJhZTZjN2QwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0hlYWRlcnMuY21ha2UKQEAgLTE2NTUsNiArMTY1NSw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVf
RlJBTUVXT1JLX0hFQURFUlMKICAgICB3b3JrZXJzL1NjcmlwdEJ1ZmZlci5oCiAgICAgd29ya2Vy
cy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmgKICAgICB3b3JrZXJzL1dvcmtlckRlYnVnZ2Vy
UHJveHkuaAorICAgIHdvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKICAgICB3b3JrZXJz
L1dvcmtlckxvYWRlclByb3h5LmgKICAgICB3b3JrZXJzL1dvcmtlck9yV29ya2xldFRocmVhZC5o
CiAgICAgd29ya2Vycy9Xb3JrZXJSdW5Mb29wLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggZWNhY2RlYmMx
MzU5YTljZWQ0MmZkZGRjNWEwYjViNWVjZmRjMjk1Yi4uZjllODUyNDljYzc5YzQ0MjdkMGUxNDZl
N2UyZTlhNWFiYmY4NjU4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQK
KysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTI2NTMsNiArMjY1Myw3IEBAIHdv
cmtlcnMvV29ya2VyLmNwcAogd29ya2Vycy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmNwcAog
d29ya2Vycy9Xb3JrZXJDb25zb2xlQ2xpZW50LmNwcAogd29ya2Vycy9Xb3JrZXJFdmVudExvb3Au
Y3BwCit3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKIHdvcmtlcnMvV29ya2VyR2xv
YmFsU2NvcGUuY3BwCiB3b3JrZXJzL1dvcmtlckluc3BlY3RvclByb3h5LmNwcAogd29ya2Vycy9X
b3JrZXJMb2NhdGlvbi5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCAyZDZhNDYxMDliZDU0Y2IzYmM5YjllYTI3MTk0MTBmMmEz
YTVhNGM5Li4zNDk2MWJiMWM2YzUxMmZmODJhYmRjODJkZWUzZmU2YjEzODc1YmM3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0z
NDMyLDYgKzM0MzIsNyBAQAogCQlBN0NGQjNEMjBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0NGQjNE
MDBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTdEMjBGNjMxMDdGNDA2OTAwQTgwMzkyIC8qIEpT
V2ViR0xBY3RpdmVJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBN0QyMEY2MTEwN0Y0MDY5MDBBODAzOTIgLyogSlNXZWJHTEFjdGl2ZUluZm8uaCAq
LzsgfTsKIAkJQTdEMjBGNkQxMDdGNDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNkIxMDdG
NDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oICovOyB9OworCQlBN0Q2QjM0OTBGNjEx
MDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0Q2QjM0NzBGNjExMDQ1MDBGRjlGRDEgLyog
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJQTdENkIzNDkwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlw
dExvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3REJGOERFMTI3Njkx
OUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3REJGOERDMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0
Q2hlY2tpbmdIZWxwZXIuaCAqLzsgfTsKIAkJQTgwRDY3MDgwRTlFOURFQjAwRTQyMEYwIC8qIEdy
YXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZUNHLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBENjcwNzBFOUU5REVCMDBFNDIwRjAgLyogR3JhcGhp
Y3NDb250ZXh0UGxhdGZvcm1Qcml2YXRlQ0cuaCAqLzsgfTsKQEAgLTEyODQ0LDYgKzEyODQ1LDgg
QEAKIAkJQTdEMjBGNjAxMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJbmZvLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdEMjBGNjExMDdGNDA2OTAwQTgwMzky
IC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTV2ViR0xBY3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDIw
RjZCMTA3RjQzOEIwMEE4MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xBY3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE3RDZCMzQ3MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVl
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1
ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZCMzQ4MEY2MTEwNDUwMEZG
OUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExv
YWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2Fk
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDgwRjYxMTA0NTAwQjc5
RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlBN0RCRjhEQjEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRDaGVja2luZ0hlbHBl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xOTQxNSw2ICsxOTQxOCw4IEBA
CiAJCQkJQTUyQjM0OUMxRkE0MTZGODAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCAq
LywKIAkJCQk5QjBBQkNBMzIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmNwcCAq
LywKIAkJCQk5QjBBQkNBNDIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmggKi8s
CisJCQkJQTdENkIzNDgwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5j
cHAgKi8sCisJCQkJQTdENkIzNDcwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVx
dWVzdC5oICovLAogCQkJCTJFNDM0NjM2MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxT
Y29wZS5jcHAgKi8sCiAJCQkJMkU0MzQ2MzcwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2Jh
bFNjb3BlLmggKi8sCiAJCQkJMkU0MzQ2MzgwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2Jh
bFNjb3BlLmlkbCAqLywKQEAgLTM1ODIyLDYgKzM1ODI3LDcgQEAKIAkJCQlBNUI4MUNDRTFGQUE0
NERFMDAzN0QxRTYgLyogV29ya2VyRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QTUyQjM0OUUxRkE0MTcwMzAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTkxRTBEREM0MjMwQjQxRjEwMDE5RTFFMyAvKiBXb3JrZXJET01EZWJ1Z2dl
ckFnZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyog
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQkyRTQzNDY0OTBGNTQ2
QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTQx
RDEyOUNFMUYzRDBFRjYwMEQxNUU0NyAvKiBXb3JrZXJHbG9iYWxTY29wZUNhY2hlcy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMkU0MzQ2NEIwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNj
b3BlUHJveHkuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ZvbnRGYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAKaW5k
ZXggMWFkODA0NzdhYmEwZDM2NjdkMGRlNTYzYzkyZGNlYmU4YTllYzM5YS4uNzgzZjM0ZTZkMGJh
Y2RjZGY3OWI2ODc0OWJlYzZiNmFlNzYyNmI1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2Uu
Y3BwCkBAIC0zOTYsNiArMzk2LDEzIEBAIERvY3VtZW50KiBDU1NGb250RmFjZTo6ZG9jdW1lbnQo
KQogICAgIHJldHVybiBudWxscHRyOwogfQogCitGb250Q2FjaGUmIENTU0ZvbnRGYWNlOjpmb250
Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKCkKK3sKKyAgICBpZiAobV93cmFwcGVyICYmIG1fd3Jh
cHBlci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm4gbV93cmFwcGVy
LT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmZvbnRDYWNoZSgpOworICAgIHJldHVybiBGb250
Q2FjaGU6OnNpbmdsZXRvbigpOworfQorCiBib29sIENTU0ZvbnRGYWNlOjpjb21wdXRlRmFpbHVy
ZVN0YXRlKCkgY29uc3QKIHsKICAgICBpZiAoc3RhdHVzKCkgPT0gU3RhdHVzOjpGYWlsdXJlKQpA
QCAtNjY5LDggKzY3Niw5IEBAIFJlZlB0cjxGb250PiBDU1NGb250RmFjZTo6Zm9udChjb25zdCBG
b250RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwgYm9vbCBzeW50CiAgICAgICAgIHN3aXRj
aCAoc291cmNlLT5zdGF0dXMoKSkgewogICAgICAgICBjYXNlIENTU0ZvbnRGYWNlU291cmNlOjpT
dGF0dXM6OlBlbmRpbmc6CiAgICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6
TG9hZGluZzogeworICAgICAgICAgICAgYXV0byYgZm9udENhY2hlID0gZm9udENhY2hlRmFsbGJh
Y2tUb1NpbmdsZXRvbigpOwogICAgICAgICAgICAgRm9udDo6VmlzaWJpbGl0eSB2aXNpYmlsaXR5
ID0gV2ViQ29yZTo6dmlzaWJpbGl0eShzdGF0dXMoKSwgZm9udExvYWRUaW1pbmcoKSk7Ci0gICAg
ICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRDYWNoZTo6c2luZ2xldG9uKCkubGFzdFJl
c29ydEZhbGxiYWNrRm9udChmb250RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6
T3JpZ2luOjpMb2NhbCwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOworICAg
ICAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShmb250Q2FjaGUubGFzdFJlc29ydEZhbGxiYWNr
Rm9udChmb250RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpMb2Nh
bCwgJmZvbnRDYWNoZSwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOwogICAg
ICAgICB9CiAgICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6U3VjY2VzczoK
ICAgICAgICAgICAgIGlmIChhdXRvIHJlc3VsdCA9IHNvdXJjZS0+Zm9udChmb250RGVzY3JpcHRp
b24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgbV9mZWF0dXJlU2V0dGluZ3MsIG1f
Zm9udFNlbGVjdGlvbkNhcGFiaWxpdGllcykpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCmluZGV4
IGI1ZTQ5NzVkMWQ1OTIwOWQ4NjJiZDg0NjJkZDdjZGZmZjZmNTlkYmQuLjcwYmQzZDQ1NGRiNGFm
MzgyZWUyZTIxYTJmZDQ4YzJkZjFhMGUxZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NGb250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCkBA
IC00Niw2ICs0Niw3IEBAIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKIGNsYXNzIENTU1NlZ21lbnRl
ZEZvbnRGYWNlOwogY2xhc3MgQ1NTVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZUxpc3Q7CitjbGFzcyBG
b250Q2FjaGU7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250OwogY2xhc3MgRm9u
dEZhY2U7CkBAIC0xNzIsNiArMTczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHRpbWVvdXRGaXJl
ZCgpOwogCiAgICAgRG9jdW1lbnQqIGRvY3VtZW50KCk7CisgICAgRm9udENhY2hlJiBmb250Q2Fj
aGVGYWxsYmFja1RvU2luZ2xldG9uKCk7CiAKICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtX2Zh
bWlsaWVzOwogICAgIFZlY3RvcjxVbmljb2RlUmFuZ2U+IG1fcmFuZ2VzOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NGb250RmFjZVNldC5jcHAKaW5kZXggZjBjYWY0OGVmY2NlYmM1ZDEyMzAwMjE4NGMzNmRm
M2VhMzA1MjdjMy4uM2ZhYTg2ZjljMDFkODBhNWI1YmQ1YzEzYjY5ODNjNTdlODI2YTg1OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTZXQuY3BwCkBAIC0xMTIsNyArMTEyLDcgQEAgdm9p
ZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVk
KGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICBBbGxvd1VzZXJJbnN0YWxsZWRGb250cyBhbGxvd1Vz
ZXJJbnN0YWxsZWRGb250cyA9IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXM7CiAgICAgaWYg
KG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCiAgICAgICAg
IGFsbG93VXNlckluc3RhbGxlZEZvbnRzID0gbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoKS0+c2V0dGluZ3NWYWx1ZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxs
ZWRGb250cyA/IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXMgOiBBbGxvd1VzZXJJbnN0YWxs
ZWRGb250czo6Tm87Ci0gICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXM+IGNhcGFi
aWxpdGllcyA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuZ2V0Rm9udFNlbGVjdGlvbkNhcGFiaWxp
dGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKKyAgICBW
ZWN0b3I8Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllcz4gY2FwYWJpbGl0aWVzID0gbV9vd25pbmdG
b250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+Zm9udENhY2hlKCkuZ2V0Rm9u
dFNlbGVjdGlvbkNhcGFiaWxpdGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3Rh
bGxlZEZvbnRzKTsKICAgICBpZiAoY2FwYWJpbGl0aWVzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0
dXJuOwogCkBAIC0xMjEsNyArMTIxLDcgQEAgdm9pZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9j
YWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICAg
ICAgUmVmPENTU0ZvbnRGYWNlPiBmYWNlID0gQ1NTRm9udEZhY2U6OmNyZWF0ZShtX293bmluZ0Zv
bnRTZWxlY3Rvci5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0ciwgdHJ1ZSk7CiAgICAgICAgIAogICAg
ICAgICBSZWY8Q1NTVmFsdWVMaXN0PiBmYW1pbHlMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVD
b21tYVNlcGFyYXRlZCgpOwotICAgICAgICBmYW1pbHlMaXN0LT5hcHBlbmQoQ1NTVmFsdWVQb29s
OjpzaW5nbGV0b24oKS5jcmVhdGVGb250RmFtaWx5VmFsdWUoZmFtaWx5TmFtZSkpOworICAgICAg
ICBmYW1pbHlMaXN0LT5hcHBlbmQobV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKS0+Y3NzVmFsdWVQb29sKCkuY3JlYXRlRm9udEZhbWlseVZhbHVlKGZhbWlseU5h
bWUpKTsKICAgICAgICAgZmFjZS0+c2V0RmFtaWxpZXMoZmFtaWx5TGlzdC5nZXQoKSk7CiAgICAg
ICAgIGZhY2UtPnNldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMoaXRlbSk7CiAgICAgICAgIGZh
Y2UtPmFkb3B0U291cmNlKG1ha2VVbmlxdWU8Q1NTRm9udEZhY2VTb3VyY2U+KGZhY2UuZ2V0KCks
IGZhbWlseU5hbWUpKTsKQEAgLTM3Niw5ICszNzYsOSBAQCBFeGNlcHRpb25PcjxWZWN0b3I8c3Rk
OjpyZWZlcmVuY2Vfd3JhcHBlcjxDU1NGb250RmFjZT4+PiBDU1NGb250RmFjZVNldDo6bWF0Y2hp
bgogICAgIFZlY3RvcjxBdG9tU3RyaW5nPiBmYW1pbHlPcmRlcjsKICAgICBmb3IgKGF1dG8mIGZh
bWlseVJhdyA6IGZvbnQtPmZhbWlseSkgewogICAgICAgICBBdG9tU3RyaW5nIGZhbWlseUF0b207
Ci0gICAgICAgIFdURjo6c3dpdGNoT24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgaWRlbnQp
IHsKLSAgICAgICAgICAgIGlmIChpZGVudCAhPSBDU1NWYWx1ZVdlYmtpdEJvZHkpCi0gICAgICAg
ICAgICAgICAgZmFtaWx5QXRvbSA9IGZhbWlseU5hbWVzRGF0YS0+YXQoQ1NTUHJvcGVydHlQYXJz
ZXJIZWxwZXJzOjpnZW5lcmljRm9udEZhbWlseUluZGV4KGlkZW50KSk7CisgICAgICAgIFdURjo6
c3dpdGNoT24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgZmFtaWx5S2V5d29yZCkgeworICAg
ICAgICAgICAgaWYgKGZhbWlseUtleXdvcmQgIT0gQ1NTVmFsdWVXZWJraXRCb2R5KQorICAgICAg
ICAgICAgICAgIGZhbWlseUF0b20gPSBmYW1pbHlOYW1lc0RhdGEtPmF0KENTU1Byb3BlcnR5UGFy
c2VySGVscGVyczo6Z2VuZXJpY0ZvbnRGYW1pbHlJbmRleChmYW1pbHlLZXl3b3JkKSk7CiAgICAg
ICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICBBU1NFUlQobV9vd25pbmdGb250U2VsZWN0
b3IgJiYgbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAg
ICAgICAgICAgICAgICAgZmFtaWx5QXRvbSA9IG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRF
eGVjdXRpb25Db250ZXh0KCktPnNldHRpbmdzVmFsdWVzKCkuZm9udEdlbmVyaWNGYW1pbGllcy5z
dGFuZGFyZEZvbnRGYW1pbHkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NG
b250RmFjZVNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2Uu
Y3BwCmluZGV4IGI2N2U4ZTY2NmNmOWJjYTk1OGEyM2VkMzcwNjJjODY0NGM2ZmQyMWUuLmQzYTNi
MDA2NjRkNmRmZTg1YWUyYjkwMjZmZWVlMmM5NzY0MDZhMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ZvbnRGYWNlU291cmNlLmNwcApAQCAtODEsNyArODEsNyBAQCBDU1NGb250RmFjZVNvdXJj
ZTo6Q1NTRm9udEZhY2VTb3VyY2UoQ1NTRm9udEZhY2UmIG93bmVyLCBjb25zdCBTdHJpbmcmIGZh
bWlseU5hbQogICAgIC8vIFRoaXMgbWF5IHN5bmNocm9ub3VzbHkgY2FsbCBmb250TG9hZGVkKCku
CiAgICAgbV9mb250UmVxdWVzdC0+c2V0Q2xpZW50KHRoaXMpOwogCi0gICAgaWYgKHN0YXR1cygp
ID09IFN0YXR1czo6UGVuZGluZyAmJiAhbV9mb250UmVxdWVzdC0+aXNMb2FkaW5nKCkpIHsKKyAg
ICBpZiAoc3RhdHVzKCkgPT0gU3RhdHVzOjpQZW5kaW5nICYmICFtX2ZvbnRSZXF1ZXN0LT5pc1Bl
bmRpbmcoKSkgewogICAgICAgICBzZXRTdGF0dXMoU3RhdHVzOjpMb2FkaW5nKTsKICAgICAgICAg
aWYgKCFzaG91bGRJZ25vcmVGb250TG9hZENvbXBsZXRpb25zKCkpIHsKICAgICAgICAgICAgIGlm
IChtX2ZvbnRSZXF1ZXN0LT5lcnJvck9jY3VycmVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvRm9udEZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcApp
bmRleCAxOWQ5YjQ0YWNkNDg1YjMyMzE5Y2U5NTlmNGFkMmQ2NzExNTg0ZjhlLi5lYmU5MWIyYzhl
ZjJkMzg5NmQzOWVkNTZjMWYyMWUyYjU2NTU0NTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRm9udEZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAK
QEAgLTYyLDE0ICs2MiwxNCBAQCB2b2lkIEZvbnRGYWNlOjpzZXRFcnJvclN0YXRlKCkKICAgICBt
X2JhY2tpbmctPnNldEVycm9yU3RhdGUoKTsKIH0KIAotUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6
Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYm
IHNvdXJjZSwgY29uc3QgRGVzY3JpcHRvcnMmIGRlc2NyaXB0b3JzKQorUmVmPEZvbnRGYWNlPiBG
b250RmFjZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2UsIGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlw
dG9ycykKIHsKLSAgICBhdXRvIHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9udEZhY2UoZG9jdW1l
bnQuZm9udFNlbGVjdG9yKCkpKTsKKyAgICBhdXRvIHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9u
dEZhY2UoKmNvbnRleHQuY3NzRm9udFNlbGVjdG9yKCkpKTsKICAgICByZXN1bHQtPnN1c3BlbmRJ
Zk5lZWRlZCgpOwogCiAgICAgYm9vbCBkYXRhUmVxdWlyZXNBc3luY2hyb25vdXNMb2FkaW5nID0g
dHJ1ZTsKIAotICAgIGF1dG8gc2V0RmFtaWx5UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoZG9j
dW1lbnQsIGZhbWlseSk7CisgICAgYXV0byBzZXRGYW1pbHlSZXN1bHQgPSByZXN1bHQtPnNldEZh
bWlseShjb250ZXh0LCBmYW1pbHkpOwogICAgIGlmIChzZXRGYW1pbHlSZXN1bHQuaGFzRXhjZXB0
aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVy
biByZXN1bHQ7CkBAIC03NywxMCArNzcsMTAgQEAgUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3Jl
YXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYKIAog
ICAgIGF1dG8gc291cmNlQ29udmVyc2lvblJlc3VsdCA9IFdURjo6c3dpdGNoT24oc291cmNlLAog
ICAgICAgICBbJl0gKFN0cmluZyYgc3RyaW5nKSAtPiBFeGNlcHRpb25Pcjx2b2lkPiB7Ci0gICAg
ICAgICAgICBhdXRvIHZhbHVlID0gQ1NTUHJvcGVydHlQYXJzZXJXb3JrZXJTYWZlOjpwYXJzZUZv
bnRGYWNlU3JjKHN0cmluZywgQ1NTUGFyc2VyQ29udGV4dChkb2N1bWVudCkpOworICAgICAgICAg
ICAgYXV0byB2YWx1ZSA9IENTU1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFj
ZVNyYyhzdHJpbmcsIGlzPERvY3VtZW50Pihjb250ZXh0KSA/IENTU1BhcnNlckNvbnRleHQoZG93
bmNhc3Q8RG9jdW1lbnQ+KGNvbnRleHQpKSA6IEhUTUxTdGFuZGFyZE1vZGUpOwogICAgICAgICAg
ICAgaWYgKCF2YWx1ZSkKICAgICAgICAgICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgU3ludGF4
RXJyb3IgfTsKLSAgICAgICAgICAgIENTU0ZvbnRGYWNlOjphcHBlbmRTb3VyY2VzKHJlc3VsdC0+
YmFja2luZygpLCAqdmFsdWUsICZkb2N1bWVudCwgZmFsc2UpOworICAgICAgICAgICAgQ1NTRm9u
dEZhY2U6OmFwcGVuZFNvdXJjZXMocmVzdWx0LT5iYWNraW5nKCksICp2YWx1ZSwgJmNvbnRleHQs
IGZhbHNlKTsKICAgICAgICAgICAgIHJldHVybiB7IH07CiAgICAgICAgIH0sCiAgICAgICAgIFsm
XSAoUmVmUHRyPEFycmF5QnVmZmVyVmlldz4mIGFycmF5QnVmZmVyVmlldykgLT4gRXhjZXB0aW9u
T3I8dm9pZD4gewpAQCAtMTAxLDMyICsxMDEsMzIgQEAgUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6
Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYK
ICAgICB9CiAKICAgICAvLyBUaGVzZSB0ZXJuYXJpZXMgbWF0Y2ggdGhlIGRlZmF1bHQgc3RyaW5n
cyBpbnNpZGUgdGhlIEZvbnRGYWNlRGVzY3JpcHRvcnMgZGljdGlvbmFyeSBpbnNpZGUgRm9udEZh
Y2UuaWRsLgotICAgIGF1dG8gc2V0U3R5bGVSZXN1bHQgPSByZXN1bHQtPnNldFN0eWxlKGRvY3Vt
ZW50LCBkZXNjcmlwdG9ycy5zdHlsZS5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRv
cnMuc3R5bGUpOworICAgIGF1dG8gc2V0U3R5bGVSZXN1bHQgPSByZXN1bHQtPnNldFN0eWxlKGNv
bnRleHQsIGRlc2NyaXB0b3JzLnN0eWxlLmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlw
dG9ycy5zdHlsZSk7CiAgICAgaWYgKHNldFN0eWxlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAg
ICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0Owog
ICAgIH0KLSAgICBhdXRvIHNldFdlaWdodFJlc3VsdCA9IHJlc3VsdC0+c2V0V2VpZ2h0KGRvY3Vt
ZW50LCBkZXNjcmlwdG9ycy53ZWlnaHQuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0
b3JzLndlaWdodCk7CisgICAgYXV0byBzZXRXZWlnaHRSZXN1bHQgPSByZXN1bHQtPnNldFdlaWdo
dChjb250ZXh0LCBkZXNjcmlwdG9ycy53ZWlnaHQuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRl
c2NyaXB0b3JzLndlaWdodCk7CiAgICAgaWYgKHNldFdlaWdodFJlc3VsdC5oYXNFeGNlcHRpb24o
KSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJl
c3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJl
dGNoKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5zdHJldGNoLmlzRW1wdHkoKSA/ICJub3JtYWwiX3Mg
OiBkZXNjcmlwdG9ycy5zdHJldGNoKTsKKyAgICBhdXRvIHNldFN0cmV0Y2hSZXN1bHQgPSByZXN1
bHQtPnNldFN0cmV0Y2goY29udGV4dCwgZGVzY3JpcHRvcnMuc3RyZXRjaC5pc0VtcHR5KCkgPyAi
bm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3RyZXRjaCk7CiAgICAgaWYgKHNldFN0cmV0Y2hSZXN1
bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAg
ICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0VW5pY29kZVJhbmdlUmVz
dWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2UoZG9jdW1lbnQsIGRlc2NyaXB0b3JzLnVuaWNv
ZGVSYW5nZS5pc0VtcHR5KCkgPyAiVSswLTEwRkZGRiJfcyA6IGRlc2NyaXB0b3JzLnVuaWNvZGVS
YW5nZSk7CisgICAgYXV0byBzZXRVbmljb2RlUmFuZ2VSZXN1bHQgPSByZXN1bHQtPnNldFVuaWNv
ZGVSYW5nZShjb250ZXh0LCBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUr
MC0xMEZGRkYiX3MgOiBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UpOwogICAgIGlmIChzZXRVbmlj
b2RlUmFuZ2VSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJv
clN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0RmVh
dHVyZVNldHRpbmdzUmVzdWx0ID0gcmVzdWx0LT5zZXRGZWF0dXJlU2V0dGluZ3MoZG9jdW1lbnQs
IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncy5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVz
Y3JpcHRvcnMuZmVhdHVyZVNldHRpbmdzKTsKKyAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jl
c3VsdCA9IHJlc3VsdC0+c2V0RmVhdHVyZVNldHRpbmdzKGNvbnRleHQsIGRlc2NyaXB0b3JzLmZl
YXR1cmVTZXR0aW5ncy5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuZmVhdHVy
ZVNldHRpbmdzKTsKICAgICBpZiAoc2V0RmVhdHVyZVNldHRpbmdzUmVzdWx0Lmhhc0V4Y2VwdGlv
bigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4g
cmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldERpc3BsYXlSZXN1bHQgPSByZXN1bHQtPnNldERp
c3BsYXkoZG9jdW1lbnQsIGRlc2NyaXB0b3JzLmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3Mg
OiBkZXNjcmlwdG9ycy5kaXNwbGF5KTsKKyAgICBhdXRvIHNldERpc3BsYXlSZXN1bHQgPSByZXN1
bHQtPnNldERpc3BsYXkoY29udGV4dCwgZGVzY3JpcHRvcnMuZGlzcGxheS5pc0VtcHR5KCkgPyAi
YXV0byJfcyA6IGRlc2NyaXB0b3JzLmRpc3BsYXkpOwogICAgIGlmIChzZXREaXNwbGF5UmVzdWx0
Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAg
ICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMzk5LDEzICszOTksMTMgQEAgU3RyaW5nIEZvbnRGYWNl
OjpmZWF0dXJlU2V0dGluZ3MoKSBjb25zdAogICAgIHJldHVybiBsaXN0LT5jc3NUZXh0KCk7CiB9
CiAKLVN0cmluZyBGb250RmFjZTo6ZGlzcGxheSgpIGNvbnN0CitTdHJpbmcgRm9udEZhY2U6OmRp
c3BsYXkoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgY29uc3QKIHsKICAgICBtX2Jh
Y2tpbmctPnVwZGF0ZVN0eWxlSWZOZWVkZWQoKTsKICAgICBjb25zdCBhdXRvJiBsb2FkaW5nQmVo
YXZpb3JXcmFwcGVkID0gbV9iYWNraW5nLT5sb2FkaW5nQmVoYXZpb3IoKTsKICAgICBpZiAoIWxv
YWRpbmdCZWhhdmlvcldyYXBwZWQuaGFzVmFsdWUoKSkKICAgICAgICAgcmV0dXJuICJhdXRvIl9z
OwotICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKGxvYWRp
bmdCZWhhdmlvcldyYXBwZWQudmFsdWUoKSktPmNzc1RleHQoKTsKKyAgICByZXR1cm4gY29udGV4
dC5jc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVl
KCkpLT5jc3NUZXh0KCk7CiB9CiAKIGF1dG8gRm9udEZhY2U6OnN0YXR1cygpIGNvbnN0IC0+IExv
YWRTdGF0dXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5oIGIvU291
cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKaW5kZXggZjFiNTVhODExMmI4MDQxYzEwNDY0MmM0
MGU2NmJkMzZkYTAzYzcyYS4uOTc3ZjNhOTlhYzRhMTc2YzA2NjMwZTdjN2QwYWFkZDk1MDFiNWQ1
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKQEAgLTU0LDcgKzU0LDcgQEAgcHVibGljOgogICAgIH07
CiAgICAgCiAgICAgdXNpbmcgU291cmNlID0gVmFyaWFudDxTdHJpbmcsIFJlZlB0cjxKU0M6OkFy
cmF5QnVmZmVyPiwgUmVmUHRyPEpTQzo6QXJyYXlCdWZmZXJWaWV3Pj47Ci0gICAgc3RhdGljIFJl
ZjxGb250RmFjZT4gY3JlYXRlKERvY3VtZW50JiwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJj
ZSYmLCBjb25zdCBEZXNjcmlwdG9ycyYpOworICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0
ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYm
LCBjb25zdCBEZXNjcmlwdG9ycyYpOwogICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ1NTRm9udEZhY2UmKTsKICAgICB2aXJ0dWFsIH5Gb250
RmFjZSgpOwogCkBAIC03Miw3ICs3Miw3IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgc3RyZXRjaCgp
IGNvbnN0OwogICAgIFN0cmluZyB1bmljb2RlUmFuZ2UoKSBjb25zdDsKICAgICBTdHJpbmcgZmVh
dHVyZVNldHRpbmdzKCkgY29uc3Q7Ci0gICAgU3RyaW5nIGRpc3BsYXkoKSBjb25zdDsKKyAgICBT
dHJpbmcgZGlzcGxheShTY3JpcHRFeGVjdXRpb25Db250ZXh0JikgY29uc3Q7CiAKICAgICBlbnVt
IGNsYXNzIExvYWRTdGF0dXMgeyBVbmxvYWRlZCwgTG9hZGluZywgTG9hZGVkLCBFcnJvciB9Owog
ICAgIExvYWRTdGF0dXMgc3RhdHVzKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRm9udEZhY2UuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAppbmRl
eCAzMzQ2N2FmYjNiMTg0NDM1OTlmMWM2YWRiOWJkNGU2Y2E0NzU3MzkyLi40MWYzNTcyMzAxZmEz
NGFmMTk3MTE2NTk5OTlkYmNlN2VhNTA3MzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvRm9udEZhY2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKQEAg
LTQzLDkgKzQzLDkgQEAgZGljdGlvbmFyeSBGb250RmFjZURlc2NyaXB0b3JzIHsKIAogWwogICAg
IEFjdGl2ZURPTU9iamVjdCwKLSAgICBFeHBvc2VkPVdpbmRvdworICAgIEV4cG9zZWQ9KFdpbmRv
dyxXb3JrZXIpCiBdIGludGVyZmFjZSBGb250RmFjZSB7Ci0gICAgW0NhbGxXaXRoPURvY3VtZW50
XSBjb25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCAoRE9NU3RyaW5nIG9yIEJpbmFyeURhdGEp
IHNvdXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNjcmlwdG9ycyBkZXNjcmlwdG9ycyk7CisgICAg
W0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9yKERPTVN0cmluZyBm
YW1pbHksIChET01TdHJpbmcgb3IgQmluYXJ5RGF0YSkgc291cmNlLCBvcHRpb25hbCBGb250RmFj
ZURlc2NyaXB0b3JzIGRlc2NyaXB0b3JzKTsKIAogICAgIFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRF
eGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGZhbWlseTsKICAgICBbU2V0dGVy
Q2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBzdHls
ZTsKQEAgLTUzLDcgKzUzLDcgQEAgZGljdGlvbmFyeSBGb250RmFjZURlc2NyaXB0b3JzIHsKICAg
ICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0
cmluZyBzdHJldGNoOwogICAgIFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0
XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHVuaWNvZGVSYW5nZTsKICAgICBbU2V0dGVyQ2FsbFdpdGg9
U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBmZWF0dXJlU2V0dGlu
Z3M7Ci0gICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0
ZSBET01TdHJpbmcgZGlzcGxheTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dF0gYXR0cmlidXRlIERPTVN0cmluZyBkaXNwbGF5OwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IEZvbnRGYWNlTG9hZFN0YXR1cyBzdGF0dXM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9Gb250RmFjZVNldC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuaWRs
CmluZGV4IDA0MmEwYjZlZjA5MDNlNjBjYTc3M2Q0MTJhYmE5ZTA4MGY4OTgwYTUuLmY3MzhiNDc3
MTY3YTIxODBhMzEwYmM2NzIyNTRkZDFmMWIxYmQ0YmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9Gb250RmFjZVNldC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNl
U2V0LmlkbApAQCAtMzAsNyArMzAsNyBAQCBlbnVtIEZvbnRGYWNlU2V0TG9hZFN0YXR1cyB7CiAK
IFsKICAgICBBY3RpdmVET01PYmplY3QsCi0gICAgRXhwb3NlZD1XaW5kb3cKKyAgICBFeHBvc2Vk
PShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2UgRm9udEZhY2VTZXQgOiBFdmVudFRhcmdldCB7
CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9yKHNlcXVl
bmNlPEZvbnRGYWNlPiBpbml0aWFsRmFjZXMpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExv
YWRSZXF1ZXN0LmgKaW5kZXggZTMzNDVhODJlNDYyODVhMTliNTRjZGRhZmY2MjIxOGMwNjVlZTIx
Zi4uNWRmYWM4MmNiNTdkYTc3ZjNiMjA4NzBiZTYwYzNjNDliMzQ2MWYyZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaApAQCAtMzUsOSArMzUsNiBAQCBjbGFzcyBGb250
RGVzY3JpcHRpb247CiBjbGFzcyBGb250TG9hZFJlcXVlc3Q7CiBzdHJ1Y3QgRm9udFNlbGVjdGlv
blNwZWNpZmllZENhcGFiaWxpdGllczsKIAotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IGNsYXNzIEZv
bnRUYWdnZWRTZXR0aW5nczsKLXVzaW5nIEZvbnRGZWF0dXJlU2V0dGluZ3MgPSBGb250VGFnZ2Vk
U2V0dGluZ3M8aW50PjsKLQogY2xhc3MgRm9udExvYWRSZXF1ZXN0Q2xpZW50IHsKIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIH5Gb250TG9hZFJlcXVlc3RDbGllbnQoKSA9IGRlZmF1bHQ7CkBAIC00OSw2
ICs0Niw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Gb250TG9hZFJlcXVlc3QoKSA9IGRlZmF1
bHQ7CiAKICAgICB2aXJ0dWFsIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgPSAwOworICAgIHZpcnR1
YWwgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBib29sIGlzTG9hZGlu
ZygpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZXJyb3JPY2N1cnJlZCgpIGNvbnN0ID0g
MDsKIApAQCAtNTgsNiArNTYsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENsaWVu
dChGb250TG9hZFJlcXVlc3RDbGllbnQqKSA9IDA7CiAKICAgICB2aXJ0dWFsIGJvb2wgaXNDYWNo
ZWRGb250TG9hZFJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwg
Ym9vbCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggNDA1MzU3YThlNWQwYjdmMGI2
YTFhZGU0ZGNhMDg4YTFiMjc5ZjE3MC4uNzM3NmM1ODhmODA4MWMwYWVhMDAzZjMwNmYyN2I0MGEw
ZTA4NjcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRG
b250TG9hZFJlcXVlc3QuaApAQCAtNTAsNiArNTAsNyBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAg
ICAgY29uc3QgVVJMJiB1cmwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPnVybCgpOyB9
CisgICAgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPnN0YXR1
cygpID09IENhY2hlZFJlc291cmNlOjpTdGF0dXM6OlBlbmRpbmc7IH0KICAgICBib29sIGlzTG9h
ZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZm9udC0+aXNMb2FkaW5nKCk7IH0KICAgICBi
b29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPmVycm9yT2Nj
dXJyZWQoKTsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9Gb250LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCmlu
ZGV4IGIxMWE4NzY5ZTg2MGI5M2IwOWQ3MzI0MWU1YmViZDU4MDhiNjJiOGYuLmZkOGM3MDEwMGM3
Y2EyNmM1NTRkZDY4MDcxOTQ5MGNhY2E3MGExMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuY3BwCkBAIC01OCwxNiArNTgsMTYgQEAgY29uc3QgZmxvYXQgZW1waGFz
aXNNYXJrRm9udFNpemVNdWx0aXBsaWVyID0gMC41ZjsKIAogREVGSU5FX0FMTE9DQVRPUl9XSVRI
X0hFQVBfSURFTlRJRklFUihGb250KTsKIAotUmVmPEZvbnQ+IEZvbnQ6OmNyZWF0ZShSZWY8U2hh
cmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udDo6T3JpZ2luIG9yaWdpbiwgZmxvYXQgZm9u
dFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMpCitSZWY8Rm9u
dD4gRm9udDo6Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZhY2VEYXRhLCBGb250OjpP
cmlnaW4gb3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5
bnRoZXRpY0l0YWxpYywgRm9udENhY2hlKiBmb250Q2FjaGVGb3JWZXJ0aWNhbERhdGEpCiB7CiAg
ICAgYm9vbCB3cmFwcGluZzsKICAgICBhdXRvIGN1c3RvbUZvbnREYXRhID0gQ2FjaGVkRm9udDo6
Y3JlYXRlQ3VzdG9tRm9udERhdGEoZm9udEZhY2VEYXRhLmdldCgpLCB7IH0sIHdyYXBwaW5nKTsK
ICAgICBGb250RGVzY3JpcHRpb24gZGVzY3JpcHRpb247CiAgICAgZGVzY3JpcHRpb24uc2V0Q29t
cHV0ZWRTaXplKGZvbnRTaXplKTsKLSAgICByZXR1cm4gRm9udDo6Y3JlYXRlKENhY2hlZEZvbnQ6
OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCpjdXN0b21Gb250RGF0YSwgZGVzY3JpcHRpb24s
IHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgeyB9LCB7IH0pLCBvcmlnaW4pOworICAg
IHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxhdGZvcm1EYXRhRnJvbUN1c3RvbURh
dGEoKmN1c3RvbUZvbnREYXRhLCBkZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhldGlj
SXRhbGljLCB7IH0sIHsgfSksIG9yaWdpbiwgZm9udENhY2hlRm9yVmVydGljYWxEYXRhKTsKIH0K
IAotRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIE9yaWdp
biBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2liaWxpdHkgdmlzaWJpbGl0
eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25hbDxSZW5k
ZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IHJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcikKK0Zv
bnQ6OkZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3Jp
Z2luLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5IHZpc2liaWxpdHksIE9y
aWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVuZGVyaW5n
UmVzb3VyY2VJZGVudGlmaWVyPiByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIEZvbnRDYWNo
ZSogZm9udENhY2hlRm9yVmVydGljYWxEYXRhKQogICAgIDogbV9wbGF0Zm9ybURhdGEocGxhdGZv
cm1EYXRhKQogICAgICwgbV9yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIocmVuZGVyaW5nUmVz
b3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9vcmlnaW4ob3JpZ2luKQpAQCAtODgsOSArODgsMTEg
QEAgRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIE9yaWdp
biBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnQKICAgICBwbGF0Zm9ybUNoYXJXaWR0aEluaXQoKTsK
ICNpZiBFTkFCTEUoT1BFTlRZUEVfVkVSVElDQUwpCiAgICAgaWYgKHBsYXRmb3JtRGF0YS5vcmll
bnRhdGlvbigpID09IEZvbnRPcmllbnRhdGlvbjo6VmVydGljYWwgJiYgb3JpZW50YXRpb25GYWxs
YmFjayA9PSBPcmllbnRhdGlvbkZhbGxiYWNrOjpObykgewotICAgICAgICBtX3ZlcnRpY2FsRGF0
YSA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7Cisg
ICAgICAgIG1fdmVydGljYWxEYXRhID0gZm9udENhY2hlRm9yVmVydGljYWxEYXRhID8gZm9udENh
Y2hlRm9yVmVydGljYWxEYXRhLT52ZXJ0aWNhbERhdGEocGxhdGZvcm1EYXRhKSA6IEZvbnRDYWNo
ZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7CiAgICAgICAgIG1faGFz
VmVydGljYWxHbHlwaHMgPSBtX3ZlcnRpY2FsRGF0YS5nZXQoKSAmJiBtX3ZlcnRpY2FsRGF0YS0+
aGFzVmVydGljYWxNZXRyaWNzKCk7CiAgICAgfQorI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZm9u
dENhY2hlRm9yVmVydGljYWxEYXRhKTsKICNlbmRpZgogfQogCkBAIC01NjgsMTMgKzU3MCwxMyBA
QCBzdGF0aWMgU3lzdGVtRmFsbGJhY2tDYWNoZSYgc3lzdGVtRmFsbGJhY2tDYWNoZSgpCiAgICAg
cmV0dXJuIG1hcC5nZXQoKTsKIH0KIAotUmVmUHRyPEZvbnQ+IEZvbnQ6OnN5c3RlbUZhbGxiYWNr
Rm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3QgRm9udERlc2NyaXB0aW9u
JiBkZXNjcmlwdGlvbiwgSXNGb3JQbGF0Zm9ybUZvbnQgaXNGb3JQbGF0Zm9ybUZvbnQpIGNvbnN0
CitSZWZQdHI8Rm9udD4gRm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKFVDaGFy
MzIgY2hhcmFjdGVyLCBjb25zdCBGb250RGVzY3JpcHRpb24mIGRlc2NyaXB0aW9uLCBJc0ZvclBs
YXRmb3JtRm9udCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlJiBmb250Q2FjaGUpIGNvbnN0
CiB7CiAgICAgYXV0byBmb250QWRkUmVzdWx0ID0gc3lzdGVtRmFsbGJhY2tDYWNoZSgpLmFkZCh0
aGlzLCBDaGFyYWN0ZXJGYWxsYmFja01hcCgpKTsKIAogICAgIGlmICghY2hhcmFjdGVyKSB7CiAg
ICAgICAgIFVDaGFyIGNvZGVVbml0ID0gMDsKLSAgICAgICAgcmV0dXJuIEZvbnRDYWNoZTo6c2lu
Z2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBp
c0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2Rl
VW5pdCwgMSk7CisgICAgICAgIHJldHVybiBmb250Q2FjaGUuc3lzdGVtRmFsbGJhY2tGb3JDaGFy
YWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQ
cmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CiAgICAgfQogCiAgICAgYXV0byBr
ZXkgPSBDaGFyYWN0ZXJGYWxsYmFja01hcEtleSB7IGRlc2NyaXB0aW9uLmNvbXB1dGVkTG9jYWxl
KCksIGNoYXJhY3RlciwgaXNGb3JQbGF0Zm9ybUZvbnQgIT0gSXNGb3JQbGF0Zm9ybUZvbnQ6Ok5v
IH07CkBAIC01ODksNyArNTkxLDcgQEAgUmVmUHRyPEZvbnQ+IEZvbnQ6OnN5c3RlbUZhbGxiYWNr
Rm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3QgRm9udEQKICAgICAgICAg
ICAgIGNvZGVVbml0c1sxXSA9IFUxNl9UUkFJTChjaGFyYWN0ZXIpOwogICAgICAgICAgICAgY29k
ZVVuaXRzTGVuZ3RoID0gMjsKICAgICAgICAgfQotICAgICAgICBhdXRvIGZvbnQgPSBGb250Q2Fj
aGU6OnNpbmdsZXRvbigpLnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVycyhkZXNjcmlwdGlvbiwg
dGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVyQ29sb3JlZEZvbnQ6Ok5v
LCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0KCk7CisgICAgICAgIGF1dG8gZm9udCA9
IGZvbnRDYWNoZS5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMoZGVzY3JpcHRpb24sIHRoaXMs
IGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZlckNvbG9yZWRGb250OjpObywgY29k
ZVVuaXRzLCBjb2RlVW5pdHNMZW5ndGgpLmdldCgpOwogICAgICAgICBpZiAoZm9udCkKICAgICAg
ICAgICAgIGZvbnQtPm1faXNVc2VkSW5TeXN0ZW1GYWxsYmFja0NhY2hlID0gdHJ1ZTsKICAgICAg
ICAgcmV0dXJuIGZvbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKaW5k
ZXggNjUzYjMzOGI3YzM0MjU2MjcyMjQ5NjExZTI3MDFhYzVkMjYzZTk2NS4uODUyNTQyYzM3NjIz
NDNlMzMwMjI4Nzg4NTZiNGE5ODhiNWI1NWM1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaApAQCAtNTcsNiArNTcsNyBAQCBpbnRlcmZhY2UgSURXcml0ZUdkaUludGVy
b3A7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRm9udENhY2hlOwogY2xhc3MgR2x5
cGhQYWdlOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgU2hhcmVkQnVmZmVyOwpAQCAt
OTUsOSArOTYsMTQgQEAgcHVibGljOgogICAgIHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKGNvbnN0
IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSwgT3JpZ2luIG9yaWdpbiA9IE9yaWdpbjo6
TG9jYWwsIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwgPSBJbnRlcnN0aXRpYWw6Ok5vLAogICAg
ICAgICBWaXNpYmlsaXR5IHZpc2liaWxpdHkgPSBWaXNpYmlsaXR5OjpWaXNpYmxlLCBPcmllbnRh
dGlvbkZhbGxiYWNrIG9yaWVudGF0aW9uRmFsbGJhY2sgPSBPcmllbnRhdGlvbkZhbGxiYWNrOjpO
bywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiBpZGVudGlmaWVyID0gV1RG
OjpudWxsb3B0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9udChwbGF0
Zm9ybURhdGEsIG9yaWdpbiwgaW50ZXJzdGl0aWFsLCB2aXNpYmlsaXR5LCBvcmllbnRhdGlvbkZh
bGxiYWNrLCBpZGVudGlmaWVyKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvbnQo
cGxhdGZvcm1EYXRhLCBvcmlnaW4sIGludGVyc3RpdGlhbCwgdmlzaWJpbGl0eSwgb3JpZW50YXRp
b25GYWxsYmFjaywgaWRlbnRpZmllciwgbnVsbHB0cikpOwogICAgIH0KLSAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNl
RGF0YSwgRm9udDo6T3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBi
b29sIHN5bnRoZXRpY0l0YWxpYyk7CisgICAgc3RhdGljIFJlZjxGb250PiBjcmVhdGUoY29uc3Qg
Rm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBGb250Q2FjaGUq
IGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0YSwgSW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCA9IElu
dGVyc3RpdGlhbDo6Tm8sCisgICAgICAgIFZpc2liaWxpdHkgdmlzaWJpbGl0eSA9IFZpc2liaWxp
dHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjayA9IE9y
aWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZp
ZXI+IGlkZW50aWZpZXIgPSBXVEY6Om51bGxvcHQpCisgICAgeworICAgICAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBGb250KHBsYXRmb3JtRGF0YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2li
aWxpdHksIG9yaWVudGF0aW9uRmFsbGJhY2ssIGlkZW50aWZpZXIsIGZvbnRDYWNoZUZvclZlcnRp
Y2FsRGF0YSkpOworICAgIH0KKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZvbnQ+IGNy
ZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udDo6T3JpZ2luLCBmbG9h
dCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgRm9u
dENhY2hlKiA9IG51bGxwdHIpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgfkZvbnQoKTsKIApAQCAt
MTg5LDcgKzE5NSw3IEBAIHB1YmxpYzoKICAgICBib29sIHN1cHBvcnRzQ29kZVBvaW50KFVDaGFy
MzIpIGNvbnN0OwogICAgIGJvb2wgcGxhdGZvcm1TdXBwb3J0c0NvZGVQb2ludChVQ2hhcjMyLCBP
cHRpb25hbDxVQ2hhcjMyPiB2YXJpYXRpb24gPSBXVEY6Om51bGxvcHQpIGNvbnN0OwogCi0gICAg
UmVmUHRyPEZvbnQ+IHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyLCBjb25z
dCBGb250RGVzY3JpcHRpb24mLCBJc0ZvclBsYXRmb3JtRm9udCkgY29uc3Q7CisgICAgUmVmUHRy
PEZvbnQ+IHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyLCBjb25zdCBGb250
RGVzY3JpcHRpb24mLCBJc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlJikgY29uc3Q7CiAKICAg
ICBjb25zdCBHbHlwaFBhZ2UqIGdseXBoUGFnZSh1bnNpZ25lZCBwYWdlTnVtYmVyKSBjb25zdDsK
IApAQCAtMjMyLDcgKzIzOCw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIFdF
QkNPUkVfRVhQT1JUIEZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYsIE9yaWdpbiwgSW50ZXJz
dGl0aWFsLCBWaXNpYmlsaXR5LCBPcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25hbDxSZW5kZXJp
bmdSZXNvdXJjZUlkZW50aWZpZXI+KTsKKyAgICBXRUJDT1JFX0VYUE9SVCBGb250KGNvbnN0IEZv
bnRQbGF0Zm9ybURhdGEmLCBPcmlnaW4sIEludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSwgT3JpZW50
YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiwgRm9u
dENhY2hlKik7CiAKICAgICB2b2lkIHBsYXRmb3JtSW5pdCgpOwogICAgIHZvaWQgcGxhdGZvcm1H
bHlwaEluaXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0ZvbnRDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2Fj
aGUuY3BwCmluZGV4IDhiYjMzZWQ1N2FlODQyY2YxMDk0NmFkMjc0N2I5NTk2Y2IwNGE1ODYuLjAy
YjU1ZDEyMGQzODNhMzZlODBlODRkMTc2NWIxNzU0OWMwNzEzYmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcApAQCAtMjgwLDcgKzI4MCw3IEBA
IFJlZjxGb250PiBGb250Q2FjaGU6OmZvbnRGb3JQbGF0Zm9ybURhdGEoY29uc3QgRm9udFBsYXRm
b3JtRGF0YSYgcGxhdGZvcm1EYXRhKQogI2VuZGlmCiAKICAgICBhdXRvIGFkZFJlc3VsdCA9IG1f
Zm9udERhdGFDYWNoZXMtPmRhdGEuZW5zdXJlKHBsYXRmb3JtRGF0YSwgWyZdIHsKLSAgICAgICAg
cmV0dXJuIEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGEpOworICAgICAgICByZXR1cm4gRm9udDo6
Y3JlYXRlKHBsYXRmb3JtRGF0YSwgRm9udDo6T3JpZ2luOjpMb2NhbCwgdGhpcyk7CiAgICAgfSk7
CiAKICAgICBBU1NFUlQoYWRkUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+cGxhdGZvcm1EYXRhKCkg
PT0gcGxhdGZvcm1EYXRhKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnRDYXNjYWRlRm9udHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKaW5kZXggOWY2NWQyOTk4Zjk0ODY5NzNkNGJiZjE4
ZGUyNmY4MmIwNDQzOWZjYS4uZWQ5NDFkMWVkMGZlYTRhNDJjMmU5NTdhYjc2MDgzZTQ0ZTEzMjYz
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2Nh
ZGVGb250cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
c2NhZGVGb250cy5jcHAKQEAgLTE4OSw3ICsxODksNyBAQCBjb25zdCBGb250UmFuZ2VzJiBGb250
Q2FzY2FkZUZvbnRzOjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250Q2FzY2FkZURl
cwogICAgIGlmICghaW5kZXgpIHsKICAgICAgICAgZm9udFJhbmdlcyA9IHJlYWxpemVOZXh0RmFs
bGJhY2soZGVzY3JpcHRpb24sIG1fbGFzdFJlYWxpemVkRmFsbGJhY2tJbmRleCwgbV9mb250U2Vs
ZWN0b3IuZ2V0KCkpOwogICAgICAgICBpZiAoZm9udFJhbmdlcy5pc051bGwoKSAmJiBtX2ZvbnRT
ZWxlY3RvcikKLSAgICAgICAgICAgIGZvbnRSYW5nZXMgPSBtX2ZvbnRTZWxlY3Rvci0+Zm9udFJh
bmdlc0ZvckZhbWlseShkZXNjcmlwdGlvbiwgc3RhbmRhcmRGYW1pbHkpOworICAgICAgICAgICAg
Zm9udFJhbmdlcyA9IG1fZm9udFNlbGVjdG9yLT5mb250UmFuZ2VzRm9yRmFtaWx5KGRlc2NyaXB0
aW9uLCBmYW1pbHlOYW1lc0RhdGEtPmF0KEZhbWlseU5hbWVzSW5kZXg6OlN0YW5kYXJkRmFtaWx5
KSk7CiAgICAgICAgIGlmIChmb250UmFuZ2VzLmlzTnVsbCgpKQogICAgICAgICAgICAgZm9udFJh
bmdlcyA9IEZvbnRSYW5nZXMoRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9u
KG1fZm9udFNlbGVjdG9yKS5sYXN0UmVzb3J0RmFsbGJhY2tGb250KGRlc2NyaXB0aW9uKSk7CiAg
ICAgICAgIHJldHVybiBmb250UmFuZ2VzOwpAQCAtMzUxLDcgKzM1MSw3IEBAIEdseXBoRGF0YSBG
b250Q2FzY2FkZUZvbnRzOjpnbHlwaERhdGFGb3JTeXN0ZW1GYWxsYmFjayhVQ2hhcjMyIGNoYXJh
Y3RlciwgY29uc3QKICAgICBpZiAoIWZvbnQpCiAgICAgICAgIGZvbnQgPSAmcmVhbGl6ZUZhbGxi
YWNrUmFuZ2VzQXQoZGVzY3JpcHRpb24sIDApLmZvbnRGb3JGaXJzdFJhbmdlKCk7CiAKLSAgICBh
dXRvIHN5c3RlbUZhbGxiYWNrRm9udCA9IGZvbnQtPnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJh
Y3RlcihjaGFyYWN0ZXIsIGRlc2NyaXB0aW9uLCBtX2lzRm9yUGxhdGZvcm1Gb250ID8gSXNGb3JQ
bGF0Zm9ybUZvbnQ6OlllcyA6IElzRm9yUGxhdGZvcm1Gb250OjpObyk7CisgICAgYXV0byBzeXN0
ZW1GYWxsYmFja0ZvbnQgPSBmb250LT5zeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIoY2hh
cmFjdGVyLCBkZXNjcmlwdGlvbiwgbV9pc0ZvclBsYXRmb3JtRm9udCA/IElzRm9yUGxhdGZvcm1G
b250OjpZZXMgOiBJc0ZvclBsYXRmb3JtRm9udDo6Tm8sIEZvbnRDYWNoZTo6Zm9udENhY2hlRmFs
bGJhY2tUb1NpbmdsZXRvbihtX2ZvbnRTZWxlY3RvcikpOwogICAgIGlmICghc3lzdGVtRmFsbGJh
Y2tGb250KQogICAgICAgICByZXR1cm4gR2x5cGhEYXRhKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRUYWdnZWRTZXR0aW5ncy5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKaW5kZXggMTI4
ZGFmN2U2M2JjNzNkYTlmZWQxY2MzYTllNDJhY2Y1Njg5Mzk4OC4uMDc4M2M1MmIxYzM0M2UxZGQ1
ZTc4N2ZhNDc0MDRjZTRlZjY1YWQ0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAog
I2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9IYXNoVHJhaXRzLmg+CisjaW5jbHVkZSA8
d3RmL0hhc2hlci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdURiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVz
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNDAxZGRiOWYzYTM3Mzc4MWNmOTVmM2QwYmM1NjFjNjg5N2NlODI3NAotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1
ZXN0LmNwcApAQCAtMCwwICsxLDE1MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAw
NywgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDkgVG9yY2ggTW9iaWxlLCBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgTWV0cm9sb2dp
Y2FsIEdyb3VwIEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
CisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldvcmtlckZvbnRMb2FkUmVxdWVz
dC5oIgorCisjaW5jbHVkZSAiRm9udC5oIgorI2luY2x1ZGUgIkZvbnRDdXN0b21QbGF0Zm9ybURh
dGEuaCIKKyNpbmNsdWRlICJGb250U2VsZWN0aW9uQWxnb3JpdGhtLmgiCisjaW5jbHVkZSAiUmVz
b3VyY2VMb2FkZXJPcHRpb25zLmgiCisjaW5jbHVkZSAiU2VydmljZVdvcmtlci5oIgorI2luY2x1
ZGUgIlNoYXJlZEJ1ZmZlci5oIgorI2luY2x1ZGUgIldPRkZGaWxlRm9ybWF0LmgiCisjaW5jbHVk
ZSAiV29ya2VyR2xvYmFsU2NvcGUuaCIKKyNpbmNsdWRlICJXb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV29ya2VyRm9udExvYWRSZXF1ZXN0OjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3QoVVJMJiYgdXJsLCBMb2FkZWRGcm9tT3BhcXVlU291cmNlIGxvYWRl
ZEZyb21PcGFxdWVTb3VyY2UpCisgICAgOiBtX3VybCh1cmwpCisgICAgLCBtX2xvYWRlZEZyb21P
cGFxdWVTb3VyY2UobG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkKK3sKK30KKwordm9pZCBXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OmxvYWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKK3sK
KyAgICBBU1NFUlQoaXM8V29ya2VyR2xvYmFsU2NvcGU+KGNvbnRleHQpKTsKKyAgICBhdXRvJiB3
b3JrZXJHbG9iYWxTY29wZSA9IGRvd25jYXN0PFdvcmtlckdsb2JhbFNjb3BlPihjb250ZXh0KTsK
KyAgICBtX2NvbnRleHQgPSBtYWtlV2Vha1B0cihjb250ZXh0KTsKKworICAgIFJlc291cmNlUmVx
dWVzdCByZXF1ZXN0IHsgbV91cmwgfTsKKyAgICBBU1NFUlQocmVxdWVzdC5odHRwTWV0aG9kKCkg
PT0gIkdFVCIpOworCisgICAgRmV0Y2hPcHRpb25zIGZldGNoT3B0aW9uczsKKyAgICBmZXRjaE9w
dGlvbnMubW9kZSA9IEZldGNoT3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsKKyAgICBmZXRjaE9w
dGlvbnMuY3JlZGVudGlhbHMgPSB3b3JrZXJHbG9iYWxTY29wZS5jcmVkZW50aWFscygpOworICAg
IGZldGNoT3B0aW9ucy5jYWNoZSA9IEZldGNoT3B0aW9uczo6Q2FjaGU6OkRlZmF1bHQ7CisgICAg
ZmV0Y2hPcHRpb25zLnJlZGlyZWN0ID0gRmV0Y2hPcHRpb25zOjpSZWRpcmVjdDo6Rm9sbG93Owor
ICAgIGZldGNoT3B0aW9ucy5kZXN0aW5hdGlvbiA9IEZldGNoT3B0aW9uczo6RGVzdGluYXRpb246
OldvcmtlcjsKKworICAgIFRocmVhZGFibGVMb2FkZXJPcHRpb25zIG9wdGlvbnMgeyBXVEZNb3Zl
KGZldGNoT3B0aW9ucykgfTsKKyAgICBvcHRpb25zLnNlbmRMb2FkQ2FsbGJhY2tzID0gU2VuZENh
bGxiYWNrUG9saWN5OjpTZW5kQ2FsbGJhY2tzOworICAgIG9wdGlvbnMuY29udGVudFNlY3VyaXR5
UG9saWN5RW5mb3JjZW1lbnQgPSBjb250ZXh0LnNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRT
ZWN1cml0eVBvbGljeSgpID8gQ29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1lbnQ6OkRvTm90
RW5mb3JjZSA6IENvbnRlbnRTZWN1cml0eVBvbGljeUVuZm9yY2VtZW50OjpFbmZvcmNlQ2hpbGRT
cmNEaXJlY3RpdmU7CisgICAgb3B0aW9ucy5sb2FkZWRGcm9tT3BhcXVlU291cmNlID0gbV9sb2Fk
ZWRGcm9tT3BhcXVlU291cmNlOworCisgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2Vyc01vZGUgPSBT
ZXJ2aWNlV29ya2Vyc01vZGU6OkFsbDsKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAg
aWYgKGF1dG8qIGFjdGl2ZVNlcnZpY2VXb3JrZXIgPSBjb250ZXh0LmFjdGl2ZVNlcnZpY2VXb3Jr
ZXIoKSkKKyAgICAgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSWRlbnRpZmll
ciA9IGFjdGl2ZVNlcnZpY2VXb3JrZXItPnJlZ2lzdHJhdGlvbklkZW50aWZpZXIoKTsKKyNlbmRp
ZgorCisgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNs
eSh3b3JrZXJHbG9iYWxTY29wZSwgV1RGTW92ZShyZXF1ZXN0KSwgKnRoaXMsIG9wdGlvbnMpOwor
fQorCitib29sIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3VzdG9tRm9udERhdGEoY29u
c3QgQXRvbVN0cmluZyYpCit7CisjaWYgIVBMQVRGT1JNKENPQ09BKQorICAgIGlmICghbV9mb250
Q3VzdG9tUGxhdGZvcm1EYXRhICYmICFtX2Vycm9yT2NjdXJyZWQgJiYgIW1faXNMb2FkaW5nICYm
IG1fZGF0YSAmJiBpc1dPRkYoKm1fZGF0YSkpIHsKKyAgICAgICAgVmVjdG9yPGNoYXI+IGNvbnZl
cnRlZEZvbnQ7CisgICAgICAgIGlmIChjb252ZXJ0V09GRlRvU2ZudCgqbV9kYXRhLCBjb252ZXJ0
ZWRGb250KSkKKyAgICAgICAgICAgIG1fZGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFdURk1v
dmUoY29udmVydGVkRm9udCkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX2Vycm9yT2Nj
dXJyZWQgPSB0cnVlOworICAgIH0KKyNlbmRpZgorCisgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0
Zm9ybURhdGEgJiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9pc0xvYWRpbmcgJiYgbV9kYXRhKSB7
CisgICAgICAgIG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YSA9IGNyZWF0ZUZvbnRDdXN0b21QbGF0
Zm9ybURhdGEoKm1fZGF0YSwgbV91cmwuZnJhZ21lbnRJZGVudGlmaWVyKCkudG9TdHJpbmcoKSk7
CisgICAgICAgIGlmICghbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhKQorICAgICAgICAgICAgbV9l
cnJvck9jY3VycmVkID0gdHJ1ZTsKKyAgICB9CisKKyAgICByZXR1cm4gbV9mb250Q3VzdG9tUGxh
dGZvcm1EYXRhLmdldCgpOworfQorCitSZWZQdHI8Rm9udD4gV29ya2VyRm9udExvYWRSZXF1ZXN0
OjpjcmVhdGVGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBjb25z
dCBBdG9tU3RyaW5nJiwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywg
Y29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywgRm9udFNlbGVjdGlv
blNwZWNpZmllZENhcGFiaWxpdGllcyBmb250RmFjZUNhcGFiaWxpdGllcykKK3sKKyAgICBBU1NF
UlQobV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhKTsKKyAgICBBU1NFUlQobV9jb250ZXh0KTsKKyAg
ICByZXR1cm4gRm9udDo6Y3JlYXRlKG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YS0+Zm9udFBsYXRm
b3JtRGF0YShmb250RGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywg
Zm9udEZhY2VGZWF0dXJlcywgZm9udEZhY2VDYXBhYmlsaXRpZXMpLCBGb250OjpPcmlnaW46OlJl
bW90ZSwgJm1fY29udGV4dC0+Zm9udENhY2hlKCkpOworfQorCit2b2lkIFdvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6c2V0Q2xpZW50KEZvbnRMb2FkUmVxdWVzdENsaWVudCogY2xpZW50KQoreworICAg
IG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50ID0gY2xpZW50OworCisgICAgaWYgKG1fbm90aWZ5T25D
bGllbnRTZXQpIHsKKyAgICAgICAgbV9ub3RpZnlPbkNsaWVudFNldCA9IGZhbHNlOworICAgICAg
ICBtX2ZvbnRMb2FkUmVxdWVzdENsaWVudC0+Zm9udExvYWRlZCgqdGhpcyk7CisgICAgfQorfQor
Cit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQoreworICAgIGlmIChyZXNw
b25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwICE9IDIgJiYgcmVzcG9uc2UuaHR0cFN0YXR1c0Nv
ZGUoKSkgeworICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOworICAgICAgICByZXR1cm47
CisgICAgfQorfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURhdGEo
Y29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFMZW5ndGgpCit7CisgICAgaWYgKG1fZXJyb3JPY2N1
cnJlZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFtX2RhdGEpCisgICAgICAgIG1fZGF0
YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CisKKyAgICBtX2RhdGEtPmFwcGVuZChkYXRhLCBk
YXRhTGVuZ3RoKTsKK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZpbmlzaExv
YWRpbmcodW5zaWduZWQgbG9uZykKK3sKKyAgICBtX2lzTG9hZGluZyA9IGZhbHNlOworCisgICAg
aWYgKCFtX2Vycm9yT2NjdXJyZWQpIHsKKyAgICAgICAgaWYgKG1fZm9udExvYWRSZXF1ZXN0Q2xp
ZW50KQorICAgICAgICAgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQtPmZvbnRMb2FkZWQoKnRo
aXMpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX25vdGlmeU9uQ2xpZW50U2V0ID0gdHJ1
ZTsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGYWlsKGNvbnN0
IFJlc291cmNlRXJyb3ImKQoreworICAgIG1fZXJyb3JPY2N1cnJlZCA9IHRydWU7Cit9CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZv
bnRMb2FkUmVxdWVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNlMGIyMGE4OWIzNjhmYjVhYjIzN2FmZDBlZmQ0
NDJhODQ2NDA0MjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC0wLDAgKzEsODMgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgTWV0cm9sb2dpY2FsIEdyb3VwIEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBJ
Z2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGb250TG9h
ZFJlcXVlc3QuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKKyNpbmNsdWRl
ICJUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgiCisjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorI2lu
Y2x1ZGUgPHd0Zi9VUkwuaD4KKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFzcyBTaGFyZWRC
dWZmZXI7CitjbGFzcyBXb3JrZXJHbG9iYWxTY29wZTsKK3N0cnVjdCBGb250Q3VzdG9tUGxhdGZv
cm1EYXRhOworCitjbGFzcyBXb3JrZXJGb250TG9hZFJlcXVlc3QgOiBwdWJsaWMgRm9udExvYWRS
ZXF1ZXN0LCBwdWJsaWMgVGhyZWFkYWJsZUxvYWRlckNsaWVudCB7CisgICAgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgV29ya2VyRm9udExvYWRSZXF1ZXN0KFVSTCYmLCBM
b2FkZWRGcm9tT3BhcXVlU291cmNlKTsKKyAgICB+V29ya2VyRm9udExvYWRSZXF1ZXN0KCkgPSBk
ZWZhdWx0OworCisgICAgdm9pZCBsb2FkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKTsKKworcHJp
dmF0ZToKKyAgICBjb25zdCBVUkwmIHVybCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdXJsOyB9
CisgICAgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiAhbV9pc0xvYWRpbmcg
JiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9kYXRhOyB9CisgICAgYm9vbCBpc0xvYWRpbmcoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBtX2lzTG9hZGluZzsgfQorICAgIGJvb2wgZXJyb3JPY2N1cnJl
ZCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZXJyb3JPY2N1cnJlZDsgfQorCisgICAgYm9vbCBl
bnN1cmVDdXN0b21Gb250RGF0YShjb25zdCBBdG9tU3RyaW5nJiByZW1vdGVVUkkpIGZpbmFsOwor
ICAgIFJlZlB0cjxGb250PiBjcmVhdGVGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGNvbnN0
IEF0b21TdHJpbmcmIHJlbW90ZVVSSSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRp
Y0l0YWxpYywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYsIEZvbnRTZWxlY3Rpb25TcGVjaWZp
ZWRDYXBhYmlsaXRpZXMpIGZpbmFsOworCisgICAgdm9pZCBzZXRDbGllbnQoRm9udExvYWRSZXF1
ZXN0Q2xpZW50KikgZmluYWw7CisKKyAgICBib29sIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorCisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9u
c2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmlu
YWw7CisgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgZGF0YUxl
bmd0aCkgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBm
aW5hbDsKKworICAgIFVSTCBtX3VybDsKKyAgICBMb2FkZWRGcm9tT3BhcXVlU291cmNlIG1fbG9h
ZGVkRnJvbU9wYXF1ZVNvdXJjZTsKKworICAgIGJvb2wgbV9pc0xvYWRpbmcgeyBmYWxzZSB9Owor
ICAgIGJvb2wgbV9ub3RpZnlPbkNsaWVudFNldCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2Vycm9y
T2NjdXJyZWQgeyBmYWxzZSB9OworICAgIEZvbnRMb2FkUmVxdWVzdENsaWVudCogbV9mb250TG9h
ZFJlcXVlc3RDbGllbnQgeyBudWxscHRyIH07CisKKyAgICBXZWFrUHRyPFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQ+IG1fY29udGV4dDsKKyAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBtX2RhdGE7Cisg
ICAgc3RkOjp1bmlxdWVfcHRyPEZvbnRDdXN0b21QbGF0Zm9ybURhdGE+IG1fZm9udEN1c3RvbVBs
YXRmb3JtRGF0YTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9U
WVBFX1RSQUlUU19GT05UTE9BRFJFUVVFU1QoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0
LCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCBkMGZiZDcyZDMyYjU1MDQ2OWVhMDhhOTBmMGZkNmJm
ODRmYTYxODg2Li41YTk3ZjBmYzQyZDA4ZjQ5YjZhNjZlZTA1OTMzYTk4ODEwNDdjZTA1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtMzQsNiAr
MzQsNyBAQAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkNy
eXB0by5oIgogI2luY2x1ZGUgIkZvbnRDYWNoZS5oIgorI2luY2x1ZGUgIkZvbnRGYWNlU2V0Lmgi
CiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiSW1hZ2VCaXRtYXBP
cHRpb25zLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCkBAIC00NSw2
ICs0Niw3IEBACiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW5Qb2xpY3kuaCIKICNpbmNsdWRlICJT
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaCIKICNpbmNsdWRlICJTb2NrZXRQcm92aWRlci5oIgor
I2luY2x1ZGUgIldvcmtlckZvbnRMb2FkUmVxdWVzdC5oIgogI2luY2x1ZGUgIldvcmtlckxvYWRl
clByb3h5LmgiCiAjaW5jbHVkZSAiV29ya2VyTG9jYXRpb24uaCIKICNpbmNsdWRlICJXb3JrZXJN
ZXNzYWdpbmdQcm94eS5oIgpAQCAtNTIxLDYgKzUyMywyMiBAQCBGb250Q2FjaGUmIFdvcmtlckds
b2JhbFNjb3BlOjpmb250Q2FjaGUoKQogICAgIHJldHVybiAqbV9mb250Q2FjaGU7CiB9CiAKK1Jl
ZjxGb250RmFjZVNldD4gV29ya2VyR2xvYmFsU2NvcGU6OmZvbnRzKCkKK3sKKyAgICByZXR1cm4g
Y3NzRm9udFNlbGVjdG9yKCktPmZvbnRGYWNlU2V0KCk7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjxG
b250TG9hZFJlcXVlc3Q+IFdvcmtlckdsb2JhbFNjb3BlOjpmb250TG9hZFJlcXVlc3QoU3RyaW5n
JiB1cmwsIGJvb2wsIGJvb2wsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbG9hZGVkRnJvbU9wYXF1
ZVNvdXJjZSkKK3sKKyAgICByZXR1cm4gbWFrZVVuaXF1ZTxXb3JrZXJGb250TG9hZFJlcXVlc3Q+
KGNvbXBsZXRlVVJMKHVybCksIGxvYWRlZEZyb21PcGFxdWVTb3VyY2UpOworfQorCit2b2lkIFdv
cmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdGb250U29vbihGb250TG9hZFJlcXVlc3QmIHJl
cXVlc3QpCit7CisgICAgQVNTRVJUKGlzPFdvcmtlckZvbnRMb2FkUmVxdWVzdD4ocmVxdWVzdCkp
OworICAgIGRvd25jYXN0PFdvcmtlckZvbnRMb2FkUmVxdWVzdD4ocmVxdWVzdCkubG9hZCgqdGhp
cyk7Cit9CisKIFJlZmVycmVyUG9saWN5IFdvcmtlckdsb2JhbFNjb3BlOjpyZWZlcnJlclBvbGlj
eSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fcmVmZXJyZXJQb2xpY3k7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggNmViZTQ2NTExZmJhMjFjMmY4NTE2
ZGU0NTI2ODAxNGNjMjdmMTY4ZS4uMmEzMTNkNGU2ODY1MTJiZDAxM2JhYWZiMjRmMjkyNzA0M2Q5
YjU0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29w
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaApAQCAt
NTEsNiArNTEsOCBAQCBjbGFzcyBDU1NGb250U2VsZWN0b3I7CiBjbGFzcyBDU1NWYWx1ZVBvb2w7
CiBjbGFzcyBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnM7CiBjbGFzcyBDcnlw
dG87CitjbGFzcyBGb250RmFjZVNldDsKK2NsYXNzIEZvbnRMb2FkUmVxdWVzdDsKIGNsYXNzIFBl
cmZvcm1hbmNlOwogY2xhc3MgU2NoZWR1bGVkQWN0aW9uOwogY2xhc3MgV29ya2VyTG9jYXRpb247
CkBAIC0xMjQsNiArMTI2LDkgQEAgcHVibGljOgogICAgIENTU1ZhbHVlUG9vbCYgY3NzVmFsdWVQ
b29sKCkgZmluYWw7CiAgICAgQ1NTRm9udFNlbGVjdG9yKiBjc3NGb250U2VsZWN0b3IoKSBmaW5h
bDsKICAgICBGb250Q2FjaGUmIGZvbnRDYWNoZSgpIGZpbmFsOworICAgIFJlZjxGb250RmFjZVNl
dD4gZm9udHMoKTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8Rm9udExvYWRSZXF1ZXN0PiBmb250TG9h
ZFJlcXVlc3QoU3RyaW5nJiwgYm9vbCwgYm9vbCwgTG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkgZmlu
YWw7CisgICAgdm9pZCBiZWdpbkxvYWRpbmdGb250U29vbihGb250TG9hZFJlcXVlc3QmKSBmaW5h
bDsKIAogICAgIFJlZmVycmVyUG9saWN5IHJlZmVycmVyUG9saWN5KCkgY29uc3QgZmluYWw7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRs
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXggZjg1
NzhhNDcxZjQ4YjQ4NThiYmZiYmZiYzhhMDVjY2RkOWI2OWIyNi4uZTI4ZTg5ZWZmNGNiMDJmNzRk
ZjBiZDFhMjkwMWE3NTcxNDVjZWNmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJHbG9iYWxTY29wZS5pZGwKQEAgLTQ4LDMgKzQ4LDQgQEAKIH07CiAKIFdvcmtlckdsb2JhbFNj
b3BlIGluY2x1ZGVzIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGU7CitXb3JrZXJHbG9iYWxTY29w
ZSBpbmNsdWRlcyBGb250RmFjZVNvdXJjZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmlu
ZGV4IDRiOWZiMDgyMzIzYzA0ZmM2ZTJjYmYzMDYwMmE5NTBjNzY5YjczYzguLjdiMTBkZTYwOTk0
N2M3YjJhYzg2NTE3NGUxNWY0NTI4ZGI2NjE0NTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTA0LTE2ICBDaHJpcyBMb3JkICA8Y2xvcmRAaWdh
bGlhLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgRm9udEZhY2UgaW4gV29ya2VycyBmb3IgT2Zm
c2NyZWVuQ2FudmFzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjQxNzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc2NTI5MDI0PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZvbnRGYWNlIGlzIG5vdyBh
dmFpbGFibGUgZm9yIFdvcmtlcnMsIHJlYmFzZWxpbmUgcmVsYXRlZCB0ZXN0cy4KKworICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGln
bi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRs
Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJh
c2VsaW5lLmFscGhhYmV0aWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2Vs
aW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFu
Z2luZy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBo
aWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3Jr
ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndvcmtlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmJh
c2ljLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQu
d29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNl
Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3BhY2Uud29y
a2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtl
ci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMud29ya2VyLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5m
b250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRo
LmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4
cGVjdGVkLnR4dDoKKwogMjAyMS0wNC0yMSAgQ2hyaXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+
CiAKICAgICAgICAgRE9NRXhjZXB0aW9uIHNob3VsZCBiZSBTZXJpYWxpemFibGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggZTlkN2Y1NzRmNDU1MGNkNWYyZjM0YzNhMGM2Yjg5ZGQzZGE4ZmRk
My4uMTFkZGNmY2U2NzBiNWVmYWI0MTc2MjM1ODBiMjhiNzRkMmExMDYzNSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uY2VudGVyLndvcmtlci1l
eHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIGNlbnRlciBpcyB0
aGUgY2VudGVyIG9mIHRoZSBlbSBzcXVhcmVzIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGNlbnRlciBpcyB0aGUgY2Vu
dGVyIG9mIHRoZSBlbSBzcXVhcmVzIChub3QgdGhlIGJvdW5kaW5nIGJveCkKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IDM4ZGQ3OGJlZWJlYmY5MmVkMDJiMTU0OTYyYTBhMDk1MDBkOTZj
MWMuLmUwOTJlMWY4YmM2ZGY3NWQxYzkxNWE0YjRmYjlhZWRiZTFmOGM3OWIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtl
ci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIGVuZCB3aXRo
IGx0ciBpcyB0aGUgcmlnaHQgZWRnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFT
UyB0ZXh0QWxpZ24gZW5kIHdpdGggbHRyIGlzIHRoZSByaWdodCBlZGdlCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4
cGVjdGVkLnR4dAppbmRleCAwNThiYjk5ZGUzMzVhNGJmZDAzZmI1MTY3MzQxZWQ0MGJhYmNiOTEy
Li40YjZkZTI3ZTI0ODhiZWViOWRjZWM5ZGRlYjFlYjQ0MjBiZTNmNWMyIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBlbmQgd2l0aCBy
dGwgaXMgdGhlIGxlZnQgZWRnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0
ZXh0QWxpZ24gZW5kIHdpdGggcnRsIGlzIHRoZSBsZWZ0IGVkZ2UKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0
CmluZGV4IGYyOTJmOTQ0MTI3OWRjYTk1NzRjMmJmMDMxNjZiMTM5NTE5MmM1NjMuLmIyM2Y3Nzhj
ZmUwMWM1NDUzOTIwMDIzYTFhMzNkNDk2ZDVmMmZhYTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQKQEAg
LTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIGxlZnQgaXMgdGhlIGxlZnQgb2YgdGhlIGZp
cnN0IGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6
IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBsZWZ0IGlzIHRoZSBsZWZ0IG9mIHRoZSBmaXJzdCBl
bSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRl
eCBmZjVhNDAyMGJkYWIwYTYxMTlmZDY0YWU0NzcyZmMxNWIxMWVhNTY1Li5hMTA4MmQ1YjhjNTg1
NDQ5M2RhMDg5NTAxNjBlZmRjYTY5YjNlYjBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEs
MyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIHJpZ2h0IGlzIHRoZSByaWdodCBvZiB0aGUgbGFz
dCBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBG
b250RmFjZQorUEFTUyB0ZXh0QWxpZ24gcmlnaHQgaXMgdGhlIHJpZ2h0IG9mIHRoZSBsYXN0IGVt
IHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggNmZkOTY1NTQ1MmNmMDE2N2I0YWQwOWMxMmU5MzY3YzBjYzhiMTJhOS4uMTlmMDJi
ZjNkMDg1ZjQxYWFlOTY5Y2FiZjlkNDliMmNmN2EwZjI5NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQubHRyLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIHN0YXJ0IHdpdGggbHRy
IGlzIHRoZSBsZWZ0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4
dEFsaWduIHN0YXJ0IHdpdGggbHRyIGlzIHRoZSBsZWZ0IGVkZ2UKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2VyLWV4
cGVjdGVkLnR4dAppbmRleCBiZDVhNTlkNzllNmUwNWFkYzM4NDM5Y2FkNWRiZjViMjFkOWM4Njlj
Li40MWMzZjI0YWYwYmRiNDYzNjI1MWM0OTRmZGM2NDllM2Q5ZTY5MWJkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29ya2VyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5ydGwud29y
a2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gc3RhcnQg
d2l0aCBydGwgaXMgdGhlIHJpZ2h0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UK
K1BBU1MgdGV4dEFsaWduIHN0YXJ0IHdpdGggcnRsIGlzIHRoZSByaWdodCBlZGdlCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29y
a2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFs
cGhhYmV0aWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBkMzg5OTQwYWY2NWY0N2RhM2FiZjJl
ZWM0ZDdhOWI5NjE1MWQzZmVkLi5hMTdlZWY1MDkyYjdkMDM4MjdhY2Q2NWI3OTc4ZWU0YjliZTIw
ZGMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBo
YWJldGljLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBA
QAogCi1GQUlMIDJkIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIDJkCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3Jr
ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90
dG9tLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNmExNTQ5YzE3YjIyNmE5ZTU1NjU3NWNlOTJm
NzI5Njg4OWNkYTI5Mi4uZmYyODM2MDk4NTM4NTQyZDcyZWRjMjkxMDBmNTgwNmE4MjNiMDc0ZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndv
cmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxp
bmUuYm90dG9tLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4
dEJhc2VsaW5lIGJvdHRvbSBpcyB0aGUgYm90dG9tIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUg
Ym91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCB0ZXh0QmFz
ZWxpbmUgYm90dG9tIGlzIHRoZSBib3R0b20gb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3Vu
ZGluZyBib3gpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwg
YXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtl
ci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYyZWVjNGQ3YTliOTYxNTFk
M2ZlZC4uY2JlZjI3NmEzNDc4ZmFiYzExYWI1ZjRmMWI1ZDI1OTI1NTc2OThkZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdp
bmcud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCAyZCBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVk
IGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3Qg
MjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlk
ZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5NDBh
ZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmNiZWYyNzZhMzQ3OGZhYmMxMWFiNWY0
ZjFiNWQyNTkyNTU3Njk4ZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmJhc2VsaW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4
dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFj
ZQorRkFJTCAyZCBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVs
IGF0ICg1LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndvcmtlci1l
eHBlY3RlZC50eHQKaW5kZXggMzAwNjczOGE5YzZkOGY5MjBlZDljMGM4Y2U2NmVjOTMyMzkzZWJh
YS4uYWQ2NDk0OWUxNTEyYTViODcwYjA2ZDEyMDQ4ZjJiOGYyODY4MzE5NiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndv
cmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEJhc2VsaW5lIG1p
ZGRsZSBpcyB0aGUgbWlkZGxlIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94
KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCB0ZXh0QmFzZWxpbmUgbWlkZGxl
IGlzIHRoZSBtaWRkbGUgb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIGFz
c2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDUsIDUpIGV4
cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBl
MjZmMWI2ZjhhMzQzYjBkYTUzNTlhZWU0ODE2OWI0N2ZiNjI3MGFhLi44MGU5OGZiMjViNjk0M2Iz
YzgyOTRkYzIyZTNiYmI3YTcwMmEzNjQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwz
ICsxLDMgQEAKIAotRkFJTCB0ZXh0QmFzZWxpbmUgdG9wIGlzIHRoZSB0b3Agb2YgdGhlIGVtIHNx
dWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNl
CitGQUlMIHRleHRCYXNlbGluZSB0b3AgaXMgdGhlIHRvcCBvZiB0aGUgZW0gc3F1YXJlIChub3Qg
dGhlIGJvdW5kaW5nIGJveCkgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRo
ZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndvcmtl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRo
LmJvdW5kLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOWMzZjg1ZTQ5MGEyMTM2ZDNmNDUwNWJi
MzkzYmEzOWNiNDkwMmJiYS4uZWU0MjkxZDJiZTgzNTg0NDUwMjhmN2IyZTUzOTBhNGI5ZmE0ZTAw
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5i
b3VuZC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAK
IAotRkFJTCBmaWxsVGV4dCBoYW5kbGVzIG1heFdpZHRoIGJhc2VkIG9uIGxpbmUgc2l6ZSwgbm90
IGJvdW5kaW5nIGJveCBzaXplIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIGZp
bGxUZXh0IGhhbmRsZXMgbWF4V2lkdGggYmFzZWQgb24gbGluZSBzaXplLCBub3QgYm91bmRpbmcg
Ym94IHNpemUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5t
YXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4
IDZiOTJjMzhmMzIyMjI5OGNhOGFhOGVlMjE5NmMzOGUxNGE3YjljNzguLmIyY2UyNzFiZjEwMWUz
YzliNjJiNThiZDE4OTI5NzU5MWQ3OWE3NmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRmYWNlLndvcmtl
ci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgZmlsbFRleHQgd29ya3Mgb24g
QGZvbnQtZmFjZSBmb250cyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBmaWxs
VGV4dCB3b3JrcyBvbiBAZm9udC1mYWNlIGZvbnRzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtlci1leHBl
Y3RlZC50eHQKaW5kZXggZTc5MzU3YWFiMjVmNjE4ZWY1YTdlMDRiZmJhNDg1NzBlOTRmMmVjYi4u
MWFiOTkxZjIyZWVkZTViMjhmMzExOWM5ZjUyZmE3ZDgxZDgzYzMyMiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtlci1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdl
Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgQGZvbnQtZmFjZSBm
b250cyBzaG91bGQgd29yayBldmVuIGlmIHRoZXkgYXJlIG5vdCB1c2VkIGluIHRoZSBwYWdlIENh
bid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIEBmb250LWZhY2UgZm9udHMgc2hvdWxk
IHdvcmsgZXZlbiBpZiB0aGV5IGFyZSBub3QgdXNlZCBpbiB0aGUgcGFnZQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53b3Jr
ZXItZXhwZWN0ZWQudHh0CmluZGV4IDBmNzVlYTkyMTI5ZGQ0ZjJhZjlkMmY1M2YxZWZiNjRmMTk5
MTE2NDUuLjM5ZWRhNGRjMmZmNjYzZTFmMjgzNmU1NjdjZTc2Mzg2NTU2OTFkOTUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVhdC53b3JrZXItZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLnJlcGVh
dC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIERyYXcgd2l0aCB0
aGUgZm9udCBpbW1lZGlhdGVseSwgdGhlbiB3YWl0IGEgYml0IHVudGlsIGFuZCBkcmF3IGFnYWlu
LiAoVGhpcyBjcmFzaGVzIHNvbWUgdmVyc2lvbiBvZiBXZWJLaXQuKSBDYW4ndCBmaW5kIHZhcmlh
YmxlOiBGb250RmFjZQorUEFTUyBEcmF3IHdpdGggdGhlIGZvbnQgaW1tZWRpYXRlbHksIHRoZW4g
d2FpdCBhIGJpdCB1bnRpbCBhbmQgZHJhdyBhZ2Fpbi4gKFRoaXMgY3Jhc2hlcyBzb21lIHZlcnNp
b24gb2YgV2ViS2l0LikKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
Zm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYy
ZWVjNGQ3YTliOTYxNTFkM2ZlZC4uYTE3ZWVmNTA5MmI3ZDAzODI3YWNkNjViNzk3OGVlNGI5YmUy
MGRjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29y
a2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFj
ZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIDJkIENhbid0IGZp
bmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIDJkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4
IDlhMzI0MDI3NWVkMzg3ZGJkZmQ1ZDI1YzFmNWEyN2E5ZGU2OWM3NWEuLjFlZDQ0ZjhmN2RiY2Ix
NjM0YmY0OWE3M2JmOTU5NWI5NzkyMDk4Y2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwz
ICsxLDMgQEAKIAotRkFJTCBVKzAwMjAgaXMgcmVuZGVyZWQgdGhlIGNvcnJlY3Qgc2l6ZSAoMWVt
IHdpZGUpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFUrMDAyMCBpcyByZW5k
ZXJlZCB0aGUgY29ycmVjdCBzaXplICgxZW0gd2lkZSkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQud29ya2VyLWV4
cGVjdGVkLnR4dAppbmRleCA2ZTVmODMyZDE0MmUwZTc1NTI0OTI4ZTUyNzRlYjkwYTBhMzJjYjZh
Li40MmY1NzBmMGI5ZTc4ZDk0N2MwZTBiYzY0YWI2ODE2OGMzNjY1NTJjIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5lbmQud29ya2VyLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5l
bmQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBjaGFy
YWN0ZXJzIGF0IHRoZSBlbmQgb2YgYSBsaW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0
IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXQgdGhlIGVu
ZCBvZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJveF9lcXVhbHM6
IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoNzUsIDI1KSBleHBlY3RlZCAwICsvLSAyIGJ1
dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNl
LmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IGFlNDYxNWRlNGNjNDAyOTc2MGQxNzVjOTA3NDI5NzllZTU1MzAzNWMuLjllNWQ0NzA0NDk1
MjkzOTE3Y2Q1ZWU1NjQ2ZjQ4YzhjOThkYTZiZDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uubm9uc3BhY2Uu
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBOb24tc3BhY2UgY2hh
cmFjdGVycyBhcmUgbm90IGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZCBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBOb24tc3BhY2UgY2hhcmFjdGVycyBhcmUgbm90
IGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29y
a2VyLWV4cGVjdGVkLnR4dAppbmRleCA5NGEwMDQzYTBhMzM3OWUxMjhlYjE2NDBiNGY2NDI4YjJk
NzEzOWRhLi42ODJjZmI5MzliMGY4NTAxMGI3ZDMzZTU4NDIxMDU2YTUxYjQ4MDE0IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3Jr
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNv
bGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwg
U3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAo
cGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFj
dGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgYXNz
ZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBl
eHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhw
ZWN0ZWQudHh0CmluZGV4IDk0YTAwNDNhMGEzMzc5ZTEyOGViMTY0MGI0ZjY0MjhiMmQ3MTM5ZGEu
LjY4MmNmYjkzOWIwZjg1MDEwYjdkMzNlNTg0MjEwNTZhNTFiNDgwMTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uu
c3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBj
aGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwLCBhbmQgY29sbGFwc2VkIChwZXIgQ1NT
KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFy
ZSBjb252ZXJ0ZWQgdG8gVSswMDIwLCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBhc3NlcnRfYXBw
cm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVjdGVk
IDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggNTA4NjhmZTkxOTgwY2E3MGI0MDlmNzYzNzM5ZTg0MGVmOTZmM2Q1ZC4uN2JjYjUx
Y2NjN2I5YzBhMTYwOWQ1ZWFjZDNkMzRkYzI4MTgxMjg0YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53
b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3Rl
cnMgYXQgdGhlIHN0YXJ0IG9mIGEgbGluZSBhcmUgY29sbGFwc2VkIChwZXIgQ1NTKSBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBzdGFy
dCBvZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJveF9lcXVhbHM6
IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBleHBlY3RlZCAwICsvLSAyIGJ1
dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFj
dHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDMx
MjBmY2I4ZmFkZGQ5ZTU0MjY3NDVkZDU1NmY5ZDQzNzliZmU3YjcuLjgyNTRjZTY3NDI0ODYyMmVl
MDdiNDRjN2Q5ZjhiNmNkZjc2MWNmNjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVj
dGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGFjdHVhbEJvdW5kaW5nQm94
IGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwg
VGVzdGluZyBhY3R1YWxCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIGFzc2VydF9lcXVh
bHM6IE1hdGguYWJzKGN0eC5tZWFzdXJlVGV4dCgnQScpLmFjdHVhbEJvdW5kaW5nQm94RGVzY2Vu
dCkgPT09IDAgKGdvdCAxW251bWJlcl0sIGV4cGVjdGVkIDBbbnVtYmVyXSkgZXhwZWN0ZWQgMCBi
dXQgZ290IDEKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2
YW5jZXMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZjRhMDg0MDNjMWViOGI0MWFjNGJh
NTgwNjJhNDM1Mjg1NzU1NTVhYi4uOTM4Yzc5OTExZDA2ZWY1MTRkN2IxYzljNmE0NTQxNTFhMWJm
NTdiNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMu
d29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5h
ZHZhbmNlcy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRlc3Rp
bmcgd2lkdGggYWR2YW5jZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBGb250RmFjZQorRkFJTCBUZXN0aW5nIHdpZHRoIGFkdmFuY2VzIGZvciBPZmZzY3JlZW5DYW52
YXMgdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2N0eC5tZWFzdXJlVGV4
dCgnSGVsbG8nKS5hZHZhbmNlc1swXScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggM2Qy
OTkwYzExZTk2ZTE3MTg1Nzg5MzRjZjMyY2FiNjM0NDc5NmM3MS4uZTFkMjI5Mzg0ZDFhNzA2NTAy
ZTUxODQyOTJmNTdkODM0NGM0OTI3YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyAr
MSwzIEBACiAKLUZBSUwgVGVzdGluZyBiYXNlbGluZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIGJhc2VsaW5lcyBmb3IgT2Zm
c2NyZWVuQ2FudmFzIGN0eC5tZWFzdXJlVGV4dCgnQScpLmdldEJhc2VsaW5lcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdjdHgubWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMoKScsICdjdHgu
bWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMnIGlzIHVuZGVmaW5lZCkKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4
cGVjdGVkLnR4dAppbmRleCA4NWE3MmNlYTE3MTkzZmJmMTA4ZWJmNGI0NjEzZmU5ZTkyNTlkMGQw
Li5hY2FmYWRmODYxYzA3ZmE3ZmZmNTFmMzAxZmE3ZTE5ZmRlYmFmMWZhIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4
cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGVtSGVpZ2h0cyBmb3Ig
T2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFRlc3Rp
bmcgZW1IZWlnaHRzIGZvciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0X2VxdWFsczogY3R4Lm1lYXN1
cmVUZXh0KCdBJykuZW1IZWlnaHRBc2NlbnQgPT09IDM3LjUgKGdvdCA4NVtudW1iZXJdLCBleHBl
Y3RlZCAzNy41W251bWJlcl0pIGV4cGVjdGVkIDM3LjUgYnV0IGdvdCA4NQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0Jv
eC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDE0YzdkYTQ0YmQwZWRjZjY4MWFmN2FmM2RjNmI2
ZTdmYTE1YTQ2NTAuLjI1YmFjZTNlZmNmMTdmZmUyN2IwNTMxNzlmZGRkMGZlOTMxMjAzY2QgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0JveC53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZv
bnRCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlM
IFRlc3RpbmcgZm9udEJvdW5kaW5nQm94IGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2
YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgVGVzdGluZyBmb250Qm91bmRpbmdCb3ggZm9yIE9mZnNj
cmVlbkNhbnZhcwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53
aWR0aC5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1Yzc4MGM5ZTRlNTE4
NjFiMDFkYTMwY2YxNGQ3Mzg1MjM0MzlhMjkzLi45NDJmOTE0MTA1NTU5Mjc3OWI4NDNhYjY2YTUx
NTZjOWIyZjA3ZDA1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53
aWR0aC5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgVGhlIHdpZHRoIG9mIGNoYXJhY3RlciBpcyBzYW1lIGFzIGZvbnQgdXNlZCBmb3Ig
T2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFRoZSB3
aWR0aCBvZiBjaGFyYWN0ZXIgaXMgc2FtZSBhcyBmb250IHVzZWQgZm9yIE9mZnNjcmVlbkNhbnZh
cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0
eS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lk
dGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1MDBkNzI3ZDNiNjdkYzk4NmFmZWY0
YjlkMmYyYTc0Njk5ZTFkM2VlLi42ODdiYzRmMzVmY2Y0Y2NkNzQ3NzQxMWE3NjIzMzQzYjMwYmRl
OTM4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0
eS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwg
VGhlIGVtcHR5IHN0cmluZyBoYXMgemVybyB3aWR0aCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0
IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFRoZSBlbXB0eSBzdHJpbmcgaGFzIHplcm8g
d2lkdGggZm9yIE9mZnNjcmVlbkNhbnZhcwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRl
eCA5M2Q3MTFjNGJiOTQ3MjIwNGM3ZjE0MzVjOGJlMDBmZGM3YjI2YjJhLi4wNTM3MjkwMGQ1NjZm
NzliNDU1YzNlYTU1MjUyMDY1MjVmZDIwMWNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRv
IFUrMDAyMCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0
IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZl
cnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgZm9yIE9mZnNjcmVlbkNhbnZh
cyBhc3NlcnRfZXF1YWxzOiBjdHgubWVhc3VyZVRleHQoJ0EgXHgwOVx4MGFceDBjXHgwZCAgXHgw
OVx4MGFceDBjXHgwZEInKS53aWR0aCA9PT0gMTUwIChnb3QgNjUwW251bWJlcl0sIGV4cGVjdGVk
IDE1MFtudW1iZXJdKSBleHBlY3RlZCAxNTAgYnV0IGdvdCA2NTAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426718</attachid>
            <date>2021-04-21 11:33:26 -0700</date>
            <delta_ts>2021-04-22 03:51:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210421193325.patch</filename>
            <type>text/plain</type>
            <size>79927</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzViZWE0OGZiMjlkZjYx
ZTczNGY0OWU5NDhjNDg5ZTZiMzZiZGFiNi4uM2E1YzQ0NDRhMjEwMDU4MGE2MTVkNTIxMDk3OGY1
YTk3OWM5NDBiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDExMSBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUbyBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGlt
cGxlbWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJs
ZSBvbiBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFp
bGFibGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAg
ICBtYWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBy
ZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0
LmNwcCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFj
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgUGFzcyBhIEZvbnRDYWNoZSB3aGVu
IGNhbGxpbmcgRm9udDo6Y3JlYXRlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU2V0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjplbnN1cmVMb2NhbEZvbnRGYWNl
c0ZvckZhbWlseVJlZ2lzdGVyZWQpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1
ZVBvb2wgYW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9y
RmFtaWx5UmVnaXN0ZXJlZC4gQWxzbyBjbGFyaWZ5IGEgdmFndWVseS1uYW1lZAorICAgICAgICAg
IHZhcmlhYmxlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU291cmNlOjpDU1NGb250RmFjZVNvdXJjZSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NGb250RmFjZVNvdXJjZTo6Zm9udCk6CisgICAgICAgICAgVXNlIEZv
bnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nIGluc3RlYWQgb2YgbWFraW5nIGFzc3VtcHRpb25zIGFi
b3V0CisgICAgICAgICAgaXRzIHN0YXRlIG9uIGNvbnN0cnVjdGlvbi4gQWxzbyBwYXNzIHRoZSBG
b250Q2FjaGUgc2luZ2xldG9uIHdoZXJlCisgICAgICAgICAgYXBwcm9wcmlhdGUgaW4gZm9udCBj
cmVhdGlvbi4KKworICAgICAgICAqIGNzcy9Gb250RmFjZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGb250RmFjZTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRGYWNlOjpkaXNwbGF5
IGNvbnN0KToKKyAgICAgICAgKiBjc3MvRm9udEZhY2UuaDoKKyAgICAgICAgKiBjc3MvRm9udEZh
Y2UuaWRsOgorICAgICAgICAgIENvbnN0cnVjdCB3aXRoIGEgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCBpbnN0ZWFkIG9mIGEgRG9jdW1lbnQgYW5kCisgICAgICAgICAgbWFrZSBhdmFpbGFibGUgZm9y
IFdvcmtlcnMuCisKKyAgICAgICAgKiBjc3MvRm9udEZhY2VTZXQuaWRsOgorICAgICAgICAgIEV4
cG9zZSB0byBXb3JrZXJzLgorCisgICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udExvYWRSZXF1ZXN0Ojppc1dvcmtlckZvbnRMb2FkUmVxdWVz
dCBjb25zdCk6CisgICAgICAgICAgQWRkIGlzUGVuZGluZyBmdW5jdGlvbiBhbmQgbmV3IHR5cGUg
V29ya2VyRm9udExvYWRSZXF1ZXN0LgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkRm9udDo6Y3JlYXRlRm9udCk6CisgICAg
ICAgICAgUGFzcyBGb250Q2FjaGUgcGFyYW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgICAg
SW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udDo6Rm9udCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Ojpz
eXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAg
ICAgICAgQWRkIGFuIG9wdGlvbmFsIEZvbnRDYWNoZSBwYXJhbWV0ZXIgZm9yIHVzZSB3aXRoIHZl
cnRpY2FsIGZvbnQgZGF0YQorICAgICAgICAgIHJldHJpZXZhbCBhbmQgYWRkIGEgRm9udENhY2hl
IHBhcmFtZXRlciB0bworICAgICAgICAgIHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlciBp
bnN0ZWFkIG9mIHVzaW5nIHRoZSBzaW5nbGV0b24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9Gb250Q2FjaGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhY2hlOjpmb250Rm9y
UGxhdGZvcm1EYXRhKToKKyAgICAgICAgICBQYXNzIEZvbnRDYWNoZSBwYXJhbWV0ZXIgd2hlbiBj
cmVhdGluZyBmb250cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRl
Rm9udHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVGb250czo6cmVhbGl6ZUZh
bGxiYWNrUmFuZ2VzQXQpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVGb250czo6Z2x5
cGhEYXRhRm9yU3lzdGVtRmFsbGJhY2spOgorICAgICAgICAgIFVzZSBmYW1pbHlOYW1lc0RhdGEg
aW5zdGVhZCBvZiBmYW1pbHlOYW1lcyBhbmQgcGFzcyB0aGUgRm9udENhY2hlCisgICAgICAgICAg
cGFyYW1ldGVyIHdoZW4gY2FsbGluZyBnbHlwaERhdGFGb3JTeXN0ZW1GYWxsYmFjayB0byBtYWtl
IHRoaXMgc2FmZQorICAgICAgICAgIHRvIHVzZSBpbiBhIFdvcmtlci4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRUYWdnZWRTZXR0aW5ncy5oOgorICAgICAgICAgIEFkZCBtaXNz
aW5nIHd0Zi9IYXNoZXIuaCBpbmNsdWRlLgorCisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250
TG9hZFJlcXVlc3QuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6V29ya2VyRm9udExvYWRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6bG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJGb250TG9h
ZFJlcXVlc3Q6OmVuc3VyZUN1c3RvbUZvbnREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6Y3JlYXRlRm9udCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OnNldENsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJGb250
TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZhaWwpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyRm9udExvYWRSZXF1ZXN0Lmg6IEFkZGVkLgorICAgICAgICAgIEltcGxlbWVudCBGb250TG9h
ZFJlcXVlc3QgZm9yIFdvcmtlcnMuCisKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckdsb2JhbFNj
b3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpmb250cyk6Cisg
ICAgICAgIChXZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0KToKKyAg
ICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdGb250U29vbik6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAgIEltcGxl
bWVudCBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGZvbnQtbG9hZGluZyByZWxhdGVkIGZ1bmN0aW9u
cy4KKworICAgICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAg
IEluY2x1ZGUgRm9udEZhY2VTb3VyY2UuCisKIDIwMjEtMDQtMjEgIENocmlzIExvcmQgIDxjbG9y
ZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIERPTUV4Y2VwdGlvbiBzaG91bGQgYmUgU2VyaWFsaXph
YmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQppbmRleCBlMTE1MDVjZGQwZjhlNDNiMjg3M2RiN2ExZDU4MWY4
ZGY5ODRmZWIzLi40YzhhYmJkNThmYjNkMjIyMTg3MzY0MDQzNGM3OWY0ZDJhZTZjN2QwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0hlYWRlcnMuY21ha2UKQEAgLTE2NTUsNiArMTY1NSw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVf
RlJBTUVXT1JLX0hFQURFUlMKICAgICB3b3JrZXJzL1NjcmlwdEJ1ZmZlci5oCiAgICAgd29ya2Vy
cy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmgKICAgICB3b3JrZXJzL1dvcmtlckRlYnVnZ2Vy
UHJveHkuaAorICAgIHdvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKICAgICB3b3JrZXJz
L1dvcmtlckxvYWRlclByb3h5LmgKICAgICB3b3JrZXJzL1dvcmtlck9yV29ya2xldFRocmVhZC5o
CiAgICAgd29ya2Vycy9Xb3JrZXJSdW5Mb29wLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggZWNhY2RlYmMx
MzU5YTljZWQ0MmZkZGRjNWEwYjViNWVjZmRjMjk1Yi4uZjllODUyNDljYzc5YzQ0MjdkMGUxNDZl
N2UyZTlhNWFiYmY4NjU4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQK
KysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTI2NTMsNiArMjY1Myw3IEBAIHdv
cmtlcnMvV29ya2VyLmNwcAogd29ya2Vycy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmNwcAog
d29ya2Vycy9Xb3JrZXJDb25zb2xlQ2xpZW50LmNwcAogd29ya2Vycy9Xb3JrZXJFdmVudExvb3Au
Y3BwCit3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKIHdvcmtlcnMvV29ya2VyR2xv
YmFsU2NvcGUuY3BwCiB3b3JrZXJzL1dvcmtlckluc3BlY3RvclByb3h5LmNwcAogd29ya2Vycy9X
b3JrZXJMb2NhdGlvbi5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCAyZDZhNDYxMDliZDU0Y2IzYmM5YjllYTI3MTk0MTBmMmEz
YTVhNGM5Li4zNDk2MWJiMWM2YzUxMmZmODJhYmRjODJkZWUzZmU2YjEzODc1YmM3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0z
NDMyLDYgKzM0MzIsNyBAQAogCQlBN0NGQjNEMjBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0NGQjNE
MDBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTdEMjBGNjMxMDdGNDA2OTAwQTgwMzkyIC8qIEpT
V2ViR0xBY3RpdmVJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBN0QyMEY2MTEwN0Y0MDY5MDBBODAzOTIgLyogSlNXZWJHTEFjdGl2ZUluZm8uaCAq
LzsgfTsKIAkJQTdEMjBGNkQxMDdGNDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNkIxMDdG
NDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oICovOyB9OworCQlBN0Q2QjM0OTBGNjEx
MDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0Q2QjM0NzBGNjExMDQ1MDBGRjlGRDEgLyog
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJQTdENkIzNDkwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlw
dExvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3REJGOERFMTI3Njkx
OUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3REJGOERDMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0
Q2hlY2tpbmdIZWxwZXIuaCAqLzsgfTsKIAkJQTgwRDY3MDgwRTlFOURFQjAwRTQyMEYwIC8qIEdy
YXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZUNHLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBENjcwNzBFOUU5REVCMDBFNDIwRjAgLyogR3JhcGhp
Y3NDb250ZXh0UGxhdGZvcm1Qcml2YXRlQ0cuaCAqLzsgfTsKQEAgLTEyODQ0LDYgKzEyODQ1LDgg
QEAKIAkJQTdEMjBGNjAxMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJbmZvLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdEMjBGNjExMDdGNDA2OTAwQTgwMzky
IC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTV2ViR0xBY3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDIw
RjZCMTA3RjQzOEIwMEE4MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xBY3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE3RDZCMzQ3MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVl
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1
ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZCMzQ4MEY2MTEwNDUwMEZG
OUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExv
YWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2Fk
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDgwRjYxMTA0NTAwQjc5
RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlBN0RCRjhEQjEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRDaGVja2luZ0hlbHBl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xOTQxNSw2ICsxOTQxOCw4IEBA
CiAJCQkJQTUyQjM0OUMxRkE0MTZGODAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCAq
LywKIAkJCQk5QjBBQkNBMzIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmNwcCAq
LywKIAkJCQk5QjBBQkNBNDIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmggKi8s
CisJCQkJQTdENkIzNDgwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5j
cHAgKi8sCisJCQkJQTdENkIzNDcwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVx
dWVzdC5oICovLAogCQkJCTJFNDM0NjM2MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxT
Y29wZS5jcHAgKi8sCiAJCQkJMkU0MzQ2MzcwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2Jh
bFNjb3BlLmggKi8sCiAJCQkJMkU0MzQ2MzgwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2Jh
bFNjb3BlLmlkbCAqLywKQEAgLTM1ODIyLDYgKzM1ODI3LDcgQEAKIAkJCQlBNUI4MUNDRTFGQUE0
NERFMDAzN0QxRTYgLyogV29ya2VyRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QTUyQjM0OUUxRkE0MTcwMzAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTkxRTBEREM0MjMwQjQxRjEwMDE5RTFFMyAvKiBXb3JrZXJET01EZWJ1Z2dl
ckFnZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyog
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQkyRTQzNDY0OTBGNTQ2
QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTQx
RDEyOUNFMUYzRDBFRjYwMEQxNUU0NyAvKiBXb3JrZXJHbG9iYWxTY29wZUNhY2hlcy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMkU0MzQ2NEIwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNj
b3BlUHJveHkuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ZvbnRGYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAKaW5k
ZXggMWFkODA0NzdhYmEwZDM2NjdkMGRlNTYzYzkyZGNlYmU4YTllYzM5YS4uNzgzZjM0ZTZkMGJh
Y2RjZGY3OWI2ODc0OWJlYzZiNmFlNzYyNmI1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2Uu
Y3BwCkBAIC0zOTYsNiArMzk2LDEzIEBAIERvY3VtZW50KiBDU1NGb250RmFjZTo6ZG9jdW1lbnQo
KQogICAgIHJldHVybiBudWxscHRyOwogfQogCitGb250Q2FjaGUmIENTU0ZvbnRGYWNlOjpmb250
Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKCkKK3sKKyAgICBpZiAobV93cmFwcGVyICYmIG1fd3Jh
cHBlci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm4gbV93cmFwcGVy
LT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmZvbnRDYWNoZSgpOworICAgIHJldHVybiBGb250
Q2FjaGU6OnNpbmdsZXRvbigpOworfQorCiBib29sIENTU0ZvbnRGYWNlOjpjb21wdXRlRmFpbHVy
ZVN0YXRlKCkgY29uc3QKIHsKICAgICBpZiAoc3RhdHVzKCkgPT0gU3RhdHVzOjpGYWlsdXJlKQpA
QCAtNjY5LDggKzY3Niw5IEBAIFJlZlB0cjxGb250PiBDU1NGb250RmFjZTo6Zm9udChjb25zdCBG
b250RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlvbiwgYm9vbCBzeW50CiAgICAgICAgIHN3aXRj
aCAoc291cmNlLT5zdGF0dXMoKSkgewogICAgICAgICBjYXNlIENTU0ZvbnRGYWNlU291cmNlOjpT
dGF0dXM6OlBlbmRpbmc6CiAgICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6
TG9hZGluZzogeworICAgICAgICAgICAgYXV0byYgZm9udENhY2hlID0gZm9udENhY2hlRmFsbGJh
Y2tUb1NpbmdsZXRvbigpOwogICAgICAgICAgICAgRm9udDo6VmlzaWJpbGl0eSB2aXNpYmlsaXR5
ID0gV2ViQ29yZTo6dmlzaWJpbGl0eShzdGF0dXMoKSwgZm9udExvYWRUaW1pbmcoKSk7Ci0gICAg
ICAgICAgICByZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRDYWNoZTo6c2luZ2xldG9uKCkubGFzdFJl
c29ydEZhbGxiYWNrRm9udChmb250RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6
T3JpZ2luOjpMb2NhbCwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOworICAg
ICAgICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShmb250Q2FjaGUubGFzdFJlc29ydEZhbGxiYWNr
Rm9udChmb250RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpMb2Nh
bCwgJmZvbnRDYWNoZSwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOwogICAg
ICAgICB9CiAgICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6U3VjY2VzczoK
ICAgICAgICAgICAgIGlmIChhdXRvIHJlc3VsdCA9IHNvdXJjZS0+Zm9udChmb250RGVzY3JpcHRp
b24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgbV9mZWF0dXJlU2V0dGluZ3MsIG1f
Zm9udFNlbGVjdGlvbkNhcGFiaWxpdGllcykpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCmluZGV4
IGI1ZTQ5NzVkMWQ1OTIwOWQ4NjJiZDg0NjJkZDdjZGZmZjZmNTlkYmQuLjcwYmQzZDQ1NGRiNGFm
MzgyZWUyZTIxYTJmZDQ4YzJkZjFhMGUxZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NGb250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCkBA
IC00Niw2ICs0Niw3IEBAIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKIGNsYXNzIENTU1NlZ21lbnRl
ZEZvbnRGYWNlOwogY2xhc3MgQ1NTVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZUxpc3Q7CitjbGFzcyBG
b250Q2FjaGU7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250OwogY2xhc3MgRm9u
dEZhY2U7CkBAIC0xNzIsNiArMTczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHRpbWVvdXRGaXJl
ZCgpOwogCiAgICAgRG9jdW1lbnQqIGRvY3VtZW50KCk7CisgICAgRm9udENhY2hlJiBmb250Q2Fj
aGVGYWxsYmFja1RvU2luZ2xldG9uKCk7CiAKICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtX2Zh
bWlsaWVzOwogICAgIFZlY3RvcjxVbmljb2RlUmFuZ2U+IG1fcmFuZ2VzOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NGb250RmFjZVNldC5jcHAKaW5kZXggZjBjYWY0OGVmY2NlYmM1ZDEyMzAwMjE4NGMzNmRm
M2VhMzA1MjdjMy4uM2ZhYTg2ZjljMDFkODBhNWI1YmQ1YzEzYjY5ODNjNTdlODI2YTg1OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTZXQuY3BwCkBAIC0xMTIsNyArMTEyLDcgQEAgdm9p
ZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVk
KGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICBBbGxvd1VzZXJJbnN0YWxsZWRGb250cyBhbGxvd1Vz
ZXJJbnN0YWxsZWRGb250cyA9IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXM7CiAgICAgaWYg
KG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCiAgICAgICAg
IGFsbG93VXNlckluc3RhbGxlZEZvbnRzID0gbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoKS0+c2V0dGluZ3NWYWx1ZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxs
ZWRGb250cyA/IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXMgOiBBbGxvd1VzZXJJbnN0YWxs
ZWRGb250czo6Tm87Ci0gICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXM+IGNhcGFi
aWxpdGllcyA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuZ2V0Rm9udFNlbGVjdGlvbkNhcGFiaWxp
dGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKKyAgICBW
ZWN0b3I8Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllcz4gY2FwYWJpbGl0aWVzID0gbV9vd25pbmdG
b250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+Zm9udENhY2hlKCkuZ2V0Rm9u
dFNlbGVjdGlvbkNhcGFiaWxpdGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3Rh
bGxlZEZvbnRzKTsKICAgICBpZiAoY2FwYWJpbGl0aWVzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0
dXJuOwogCkBAIC0xMjEsNyArMTIxLDcgQEAgdm9pZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9j
YWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICAg
ICAgUmVmPENTU0ZvbnRGYWNlPiBmYWNlID0gQ1NTRm9udEZhY2U6OmNyZWF0ZShtX293bmluZ0Zv
bnRTZWxlY3Rvci5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0ciwgdHJ1ZSk7CiAgICAgICAgIAogICAg
ICAgICBSZWY8Q1NTVmFsdWVMaXN0PiBmYW1pbHlMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVD
b21tYVNlcGFyYXRlZCgpOwotICAgICAgICBmYW1pbHlMaXN0LT5hcHBlbmQoQ1NTVmFsdWVQb29s
OjpzaW5nbGV0b24oKS5jcmVhdGVGb250RmFtaWx5VmFsdWUoZmFtaWx5TmFtZSkpOworICAgICAg
ICBmYW1pbHlMaXN0LT5hcHBlbmQobV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKS0+Y3NzVmFsdWVQb29sKCkuY3JlYXRlRm9udEZhbWlseVZhbHVlKGZhbWlseU5h
bWUpKTsKICAgICAgICAgZmFjZS0+c2V0RmFtaWxpZXMoZmFtaWx5TGlzdC5nZXQoKSk7CiAgICAg
ICAgIGZhY2UtPnNldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMoaXRlbSk7CiAgICAgICAgIGZh
Y2UtPmFkb3B0U291cmNlKG1ha2VVbmlxdWU8Q1NTRm9udEZhY2VTb3VyY2U+KGZhY2UuZ2V0KCks
IGZhbWlseU5hbWUpKTsKQEAgLTM3Niw5ICszNzYsOSBAQCBFeGNlcHRpb25PcjxWZWN0b3I8c3Rk
OjpyZWZlcmVuY2Vfd3JhcHBlcjxDU1NGb250RmFjZT4+PiBDU1NGb250RmFjZVNldDo6bWF0Y2hp
bgogICAgIFZlY3RvcjxBdG9tU3RyaW5nPiBmYW1pbHlPcmRlcjsKICAgICBmb3IgKGF1dG8mIGZh
bWlseVJhdyA6IGZvbnQtPmZhbWlseSkgewogICAgICAgICBBdG9tU3RyaW5nIGZhbWlseUF0b207
Ci0gICAgICAgIFdURjo6c3dpdGNoT24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgaWRlbnQp
IHsKLSAgICAgICAgICAgIGlmIChpZGVudCAhPSBDU1NWYWx1ZVdlYmtpdEJvZHkpCi0gICAgICAg
ICAgICAgICAgZmFtaWx5QXRvbSA9IGZhbWlseU5hbWVzRGF0YS0+YXQoQ1NTUHJvcGVydHlQYXJz
ZXJIZWxwZXJzOjpnZW5lcmljRm9udEZhbWlseUluZGV4KGlkZW50KSk7CisgICAgICAgIFdURjo6
c3dpdGNoT24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgZmFtaWx5S2V5d29yZCkgeworICAg
ICAgICAgICAgaWYgKGZhbWlseUtleXdvcmQgIT0gQ1NTVmFsdWVXZWJraXRCb2R5KQorICAgICAg
ICAgICAgICAgIGZhbWlseUF0b20gPSBmYW1pbHlOYW1lc0RhdGEtPmF0KENTU1Byb3BlcnR5UGFy
c2VySGVscGVyczo6Z2VuZXJpY0ZvbnRGYW1pbHlJbmRleChmYW1pbHlLZXl3b3JkKSk7CiAgICAg
ICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICBBU1NFUlQobV9vd25pbmdGb250U2VsZWN0
b3IgJiYgbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAg
ICAgICAgICAgICAgICAgZmFtaWx5QXRvbSA9IG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRF
eGVjdXRpb25Db250ZXh0KCktPnNldHRpbmdzVmFsdWVzKCkuZm9udEdlbmVyaWNGYW1pbGllcy5z
dGFuZGFyZEZvbnRGYW1pbHkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NG
b250RmFjZVNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2Uu
Y3BwCmluZGV4IGI2N2U4ZTY2NmNmOWJjYTk1OGEyM2VkMzcwNjJjODY0NGM2ZmQyMWUuLmQzYTNi
MDA2NjRkNmRmZTg1YWUyYjkwMjZmZWVlMmM5NzY0MDZhMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ZvbnRGYWNlU291cmNlLmNwcApAQCAtODEsNyArODEsNyBAQCBDU1NGb250RmFjZVNvdXJj
ZTo6Q1NTRm9udEZhY2VTb3VyY2UoQ1NTRm9udEZhY2UmIG93bmVyLCBjb25zdCBTdHJpbmcmIGZh
bWlseU5hbQogICAgIC8vIFRoaXMgbWF5IHN5bmNocm9ub3VzbHkgY2FsbCBmb250TG9hZGVkKCku
CiAgICAgbV9mb250UmVxdWVzdC0+c2V0Q2xpZW50KHRoaXMpOwogCi0gICAgaWYgKHN0YXR1cygp
ID09IFN0YXR1czo6UGVuZGluZyAmJiAhbV9mb250UmVxdWVzdC0+aXNMb2FkaW5nKCkpIHsKKyAg
ICBpZiAoc3RhdHVzKCkgPT0gU3RhdHVzOjpQZW5kaW5nICYmICFtX2ZvbnRSZXF1ZXN0LT5pc1Bl
bmRpbmcoKSkgewogICAgICAgICBzZXRTdGF0dXMoU3RhdHVzOjpMb2FkaW5nKTsKICAgICAgICAg
aWYgKCFzaG91bGRJZ25vcmVGb250TG9hZENvbXBsZXRpb25zKCkpIHsKICAgICAgICAgICAgIGlm
IChtX2ZvbnRSZXF1ZXN0LT5lcnJvck9jY3VycmVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvRm9udEZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcApp
bmRleCAxOWQ5YjQ0YWNkNDg1YjMyMzE5Y2U5NTlmNGFkMmQ2NzExNTg0ZjhlLi5lYmU5MWIyYzhl
ZjJkMzg5NmQzOWVkNTZjMWYyMWUyYjU2NTU0NTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRm9udEZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAK
QEAgLTYyLDE0ICs2MiwxNCBAQCB2b2lkIEZvbnRGYWNlOjpzZXRFcnJvclN0YXRlKCkKICAgICBt
X2JhY2tpbmctPnNldEVycm9yU3RhdGUoKTsKIH0KIAotUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6
Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYm
IHNvdXJjZSwgY29uc3QgRGVzY3JpcHRvcnMmIGRlc2NyaXB0b3JzKQorUmVmPEZvbnRGYWNlPiBG
b250RmFjZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2UsIGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlw
dG9ycykKIHsKLSAgICBhdXRvIHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9udEZhY2UoZG9jdW1l
bnQuZm9udFNlbGVjdG9yKCkpKTsKKyAgICBhdXRvIHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9u
dEZhY2UoKmNvbnRleHQuY3NzRm9udFNlbGVjdG9yKCkpKTsKICAgICByZXN1bHQtPnN1c3BlbmRJ
Zk5lZWRlZCgpOwogCiAgICAgYm9vbCBkYXRhUmVxdWlyZXNBc3luY2hyb25vdXNMb2FkaW5nID0g
dHJ1ZTsKIAotICAgIGF1dG8gc2V0RmFtaWx5UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoZG9j
dW1lbnQsIGZhbWlseSk7CisgICAgYXV0byBzZXRGYW1pbHlSZXN1bHQgPSByZXN1bHQtPnNldEZh
bWlseShjb250ZXh0LCBmYW1pbHkpOwogICAgIGlmIChzZXRGYW1pbHlSZXN1bHQuaGFzRXhjZXB0
aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVy
biByZXN1bHQ7CkBAIC03NywxMCArNzcsMTAgQEAgUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3Jl
YXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYKIAog
ICAgIGF1dG8gc291cmNlQ29udmVyc2lvblJlc3VsdCA9IFdURjo6c3dpdGNoT24oc291cmNlLAog
ICAgICAgICBbJl0gKFN0cmluZyYgc3RyaW5nKSAtPiBFeGNlcHRpb25Pcjx2b2lkPiB7Ci0gICAg
ICAgICAgICBhdXRvIHZhbHVlID0gQ1NTUHJvcGVydHlQYXJzZXJXb3JrZXJTYWZlOjpwYXJzZUZv
bnRGYWNlU3JjKHN0cmluZywgQ1NTUGFyc2VyQ29udGV4dChkb2N1bWVudCkpOworICAgICAgICAg
ICAgYXV0byB2YWx1ZSA9IENTU1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFj
ZVNyYyhzdHJpbmcsIGlzPERvY3VtZW50Pihjb250ZXh0KSA/IENTU1BhcnNlckNvbnRleHQoZG93
bmNhc3Q8RG9jdW1lbnQ+KGNvbnRleHQpKSA6IEhUTUxTdGFuZGFyZE1vZGUpOwogICAgICAgICAg
ICAgaWYgKCF2YWx1ZSkKICAgICAgICAgICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgU3ludGF4
RXJyb3IgfTsKLSAgICAgICAgICAgIENTU0ZvbnRGYWNlOjphcHBlbmRTb3VyY2VzKHJlc3VsdC0+
YmFja2luZygpLCAqdmFsdWUsICZkb2N1bWVudCwgZmFsc2UpOworICAgICAgICAgICAgQ1NTRm9u
dEZhY2U6OmFwcGVuZFNvdXJjZXMocmVzdWx0LT5iYWNraW5nKCksICp2YWx1ZSwgJmNvbnRleHQs
IGZhbHNlKTsKICAgICAgICAgICAgIHJldHVybiB7IH07CiAgICAgICAgIH0sCiAgICAgICAgIFsm
XSAoUmVmUHRyPEFycmF5QnVmZmVyVmlldz4mIGFycmF5QnVmZmVyVmlldykgLT4gRXhjZXB0aW9u
T3I8dm9pZD4gewpAQCAtMTAxLDMyICsxMDEsMzIgQEAgUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6
Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYK
ICAgICB9CiAKICAgICAvLyBUaGVzZSB0ZXJuYXJpZXMgbWF0Y2ggdGhlIGRlZmF1bHQgc3RyaW5n
cyBpbnNpZGUgdGhlIEZvbnRGYWNlRGVzY3JpcHRvcnMgZGljdGlvbmFyeSBpbnNpZGUgRm9udEZh
Y2UuaWRsLgotICAgIGF1dG8gc2V0U3R5bGVSZXN1bHQgPSByZXN1bHQtPnNldFN0eWxlKGRvY3Vt
ZW50LCBkZXNjcmlwdG9ycy5zdHlsZS5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRv
cnMuc3R5bGUpOworICAgIGF1dG8gc2V0U3R5bGVSZXN1bHQgPSByZXN1bHQtPnNldFN0eWxlKGNv
bnRleHQsIGRlc2NyaXB0b3JzLnN0eWxlLmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlw
dG9ycy5zdHlsZSk7CiAgICAgaWYgKHNldFN0eWxlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAg
ICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0Owog
ICAgIH0KLSAgICBhdXRvIHNldFdlaWdodFJlc3VsdCA9IHJlc3VsdC0+c2V0V2VpZ2h0KGRvY3Vt
ZW50LCBkZXNjcmlwdG9ycy53ZWlnaHQuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0
b3JzLndlaWdodCk7CisgICAgYXV0byBzZXRXZWlnaHRSZXN1bHQgPSByZXN1bHQtPnNldFdlaWdo
dChjb250ZXh0LCBkZXNjcmlwdG9ycy53ZWlnaHQuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRl
c2NyaXB0b3JzLndlaWdodCk7CiAgICAgaWYgKHNldFdlaWdodFJlc3VsdC5oYXNFeGNlcHRpb24o
KSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJl
c3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJl
dGNoKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5zdHJldGNoLmlzRW1wdHkoKSA/ICJub3JtYWwiX3Mg
OiBkZXNjcmlwdG9ycy5zdHJldGNoKTsKKyAgICBhdXRvIHNldFN0cmV0Y2hSZXN1bHQgPSByZXN1
bHQtPnNldFN0cmV0Y2goY29udGV4dCwgZGVzY3JpcHRvcnMuc3RyZXRjaC5pc0VtcHR5KCkgPyAi
bm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3RyZXRjaCk7CiAgICAgaWYgKHNldFN0cmV0Y2hSZXN1
bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJvclN0YXRlKCk7CiAg
ICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0VW5pY29kZVJhbmdlUmVz
dWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2UoZG9jdW1lbnQsIGRlc2NyaXB0b3JzLnVuaWNv
ZGVSYW5nZS5pc0VtcHR5KCkgPyAiVSswLTEwRkZGRiJfcyA6IGRlc2NyaXB0b3JzLnVuaWNvZGVS
YW5nZSk7CisgICAgYXV0byBzZXRVbmljb2RlUmFuZ2VSZXN1bHQgPSByZXN1bHQtPnNldFVuaWNv
ZGVSYW5nZShjb250ZXh0LCBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUr
MC0xMEZGRkYiX3MgOiBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UpOwogICAgIGlmIChzZXRVbmlj
b2RlUmFuZ2VSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5zZXRFcnJv
clN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8gc2V0RmVh
dHVyZVNldHRpbmdzUmVzdWx0ID0gcmVzdWx0LT5zZXRGZWF0dXJlU2V0dGluZ3MoZG9jdW1lbnQs
IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncy5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVz
Y3JpcHRvcnMuZmVhdHVyZVNldHRpbmdzKTsKKyAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jl
c3VsdCA9IHJlc3VsdC0+c2V0RmVhdHVyZVNldHRpbmdzKGNvbnRleHQsIGRlc2NyaXB0b3JzLmZl
YXR1cmVTZXR0aW5ncy5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuZmVhdHVy
ZVNldHRpbmdzKTsKICAgICBpZiAoc2V0RmVhdHVyZVNldHRpbmdzUmVzdWx0Lmhhc0V4Y2VwdGlv
bigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4g
cmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldERpc3BsYXlSZXN1bHQgPSByZXN1bHQtPnNldERp
c3BsYXkoZG9jdW1lbnQsIGRlc2NyaXB0b3JzLmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3Mg
OiBkZXNjcmlwdG9ycy5kaXNwbGF5KTsKKyAgICBhdXRvIHNldERpc3BsYXlSZXN1bHQgPSByZXN1
bHQtPnNldERpc3BsYXkoY29udGV4dCwgZGVzY3JpcHRvcnMuZGlzcGxheS5pc0VtcHR5KCkgPyAi
YXV0byJfcyA6IGRlc2NyaXB0b3JzLmRpc3BsYXkpOwogICAgIGlmIChzZXREaXNwbGF5UmVzdWx0
Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAg
ICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMzk5LDEzICszOTksMTMgQEAgU3RyaW5nIEZvbnRGYWNl
OjpmZWF0dXJlU2V0dGluZ3MoKSBjb25zdAogICAgIHJldHVybiBsaXN0LT5jc3NUZXh0KCk7CiB9
CiAKLVN0cmluZyBGb250RmFjZTo6ZGlzcGxheSgpIGNvbnN0CitTdHJpbmcgRm9udEZhY2U6OmRp
c3BsYXkoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgY29uc3QKIHsKICAgICBtX2Jh
Y2tpbmctPnVwZGF0ZVN0eWxlSWZOZWVkZWQoKTsKICAgICBjb25zdCBhdXRvJiBsb2FkaW5nQmVo
YXZpb3JXcmFwcGVkID0gbV9iYWNraW5nLT5sb2FkaW5nQmVoYXZpb3IoKTsKICAgICBpZiAoIWxv
YWRpbmdCZWhhdmlvcldyYXBwZWQuaGFzVmFsdWUoKSkKICAgICAgICAgcmV0dXJuICJhdXRvIl9z
OwotICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKGxvYWRp
bmdCZWhhdmlvcldyYXBwZWQudmFsdWUoKSktPmNzc1RleHQoKTsKKyAgICByZXR1cm4gY29udGV4
dC5jc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVl
KCkpLT5jc3NUZXh0KCk7CiB9CiAKIGF1dG8gRm9udEZhY2U6OnN0YXR1cygpIGNvbnN0IC0+IExv
YWRTdGF0dXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5oIGIvU291
cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKaW5kZXggZjFiNTVhODExMmI4MDQxYzEwNDY0MmM0
MGU2NmJkMzZkYTAzYzcyYS4uOTc3ZjNhOTlhYzRhMTc2YzA2NjMwZTdjN2QwYWFkZDk1MDFiNWQ1
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKQEAgLTU0LDcgKzU0LDcgQEAgcHVibGljOgogICAgIH07
CiAgICAgCiAgICAgdXNpbmcgU291cmNlID0gVmFyaWFudDxTdHJpbmcsIFJlZlB0cjxKU0M6OkFy
cmF5QnVmZmVyPiwgUmVmUHRyPEpTQzo6QXJyYXlCdWZmZXJWaWV3Pj47Ci0gICAgc3RhdGljIFJl
ZjxGb250RmFjZT4gY3JlYXRlKERvY3VtZW50JiwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJj
ZSYmLCBjb25zdCBEZXNjcmlwdG9ycyYpOworICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0
ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYm
LCBjb25zdCBEZXNjcmlwdG9ycyYpOwogICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ1NTRm9udEZhY2UmKTsKICAgICB2aXJ0dWFsIH5Gb250
RmFjZSgpOwogCkBAIC03Miw3ICs3Miw3IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgc3RyZXRjaCgp
IGNvbnN0OwogICAgIFN0cmluZyB1bmljb2RlUmFuZ2UoKSBjb25zdDsKICAgICBTdHJpbmcgZmVh
dHVyZVNldHRpbmdzKCkgY29uc3Q7Ci0gICAgU3RyaW5nIGRpc3BsYXkoKSBjb25zdDsKKyAgICBT
dHJpbmcgZGlzcGxheShTY3JpcHRFeGVjdXRpb25Db250ZXh0JikgY29uc3Q7CiAKICAgICBlbnVt
IGNsYXNzIExvYWRTdGF0dXMgeyBVbmxvYWRlZCwgTG9hZGluZywgTG9hZGVkLCBFcnJvciB9Owog
ICAgIExvYWRTdGF0dXMgc3RhdHVzKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRm9udEZhY2UuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAppbmRl
eCAzMzQ2N2FmYjNiMTg0NDM1OTlmMWM2YWRiOWJkNGU2Y2E0NzU3MzkyLi40MWYzNTcyMzAxZmEz
NGFmMTk3MTE2NTk5OTlkYmNlN2VhNTA3MzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvRm9udEZhY2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKQEAg
LTQzLDkgKzQzLDkgQEAgZGljdGlvbmFyeSBGb250RmFjZURlc2NyaXB0b3JzIHsKIAogWwogICAg
IEFjdGl2ZURPTU9iamVjdCwKLSAgICBFeHBvc2VkPVdpbmRvdworICAgIEV4cG9zZWQ9KFdpbmRv
dyxXb3JrZXIpCiBdIGludGVyZmFjZSBGb250RmFjZSB7Ci0gICAgW0NhbGxXaXRoPURvY3VtZW50
XSBjb25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCAoRE9NU3RyaW5nIG9yIEJpbmFyeURhdGEp
IHNvdXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNjcmlwdG9ycyBkZXNjcmlwdG9ycyk7CisgICAg
W0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9yKERPTVN0cmluZyBm
YW1pbHksIChET01TdHJpbmcgb3IgQmluYXJ5RGF0YSkgc291cmNlLCBvcHRpb25hbCBGb250RmFj
ZURlc2NyaXB0b3JzIGRlc2NyaXB0b3JzKTsKIAogICAgIFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRF
eGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGZhbWlseTsKICAgICBbU2V0dGVy
Q2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBzdHls
ZTsKQEAgLTUzLDcgKzUzLDcgQEAgZGljdGlvbmFyeSBGb250RmFjZURlc2NyaXB0b3JzIHsKICAg
ICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0
cmluZyBzdHJldGNoOwogICAgIFtTZXR0ZXJDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0
XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHVuaWNvZGVSYW5nZTsKICAgICBbU2V0dGVyQ2FsbFdpdGg9
U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyBmZWF0dXJlU2V0dGlu
Z3M7Ci0gICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0
ZSBET01TdHJpbmcgZGlzcGxheTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dF0gYXR0cmlidXRlIERPTVN0cmluZyBkaXNwbGF5OwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IEZvbnRGYWNlTG9hZFN0YXR1cyBzdGF0dXM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9Gb250RmFjZVNldC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuaWRs
CmluZGV4IDA0MmEwYjZlZjA5MDNlNjBjYTc3M2Q0MTJhYmE5ZTA4MGY4OTgwYTUuLmY3MzhiNDc3
MTY3YTIxODBhMzEwYmM2NzIyNTRkZDFmMWIxYmQ0YmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9Gb250RmFjZVNldC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNl
U2V0LmlkbApAQCAtMzAsNyArMzAsNyBAQCBlbnVtIEZvbnRGYWNlU2V0TG9hZFN0YXR1cyB7CiAK
IFsKICAgICBBY3RpdmVET01PYmplY3QsCi0gICAgRXhwb3NlZD1XaW5kb3cKKyAgICBFeHBvc2Vk
PShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2UgRm9udEZhY2VTZXQgOiBFdmVudFRhcmdldCB7
CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9yKHNlcXVl
bmNlPEZvbnRGYWNlPiBpbml0aWFsRmFjZXMpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExv
YWRSZXF1ZXN0LmgKaW5kZXggZTMzNDVhODJlNDYyODVhMTliNTRjZGRhZmY2MjIxOGMwNjVlZTIx
Zi4uNWRmYWM4MmNiNTdkYTc3ZjNiMjA4NzBiZTYwYzNjNDliMzQ2MWYyZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaApAQCAtMzUsOSArMzUsNiBAQCBjbGFzcyBGb250
RGVzY3JpcHRpb247CiBjbGFzcyBGb250TG9hZFJlcXVlc3Q7CiBzdHJ1Y3QgRm9udFNlbGVjdGlv
blNwZWNpZmllZENhcGFiaWxpdGllczsKIAotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IGNsYXNzIEZv
bnRUYWdnZWRTZXR0aW5nczsKLXVzaW5nIEZvbnRGZWF0dXJlU2V0dGluZ3MgPSBGb250VGFnZ2Vk
U2V0dGluZ3M8aW50PjsKLQogY2xhc3MgRm9udExvYWRSZXF1ZXN0Q2xpZW50IHsKIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIH5Gb250TG9hZFJlcXVlc3RDbGllbnQoKSA9IGRlZmF1bHQ7CkBAIC00OSw2
ICs0Niw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Gb250TG9hZFJlcXVlc3QoKSA9IGRlZmF1
bHQ7CiAKICAgICB2aXJ0dWFsIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgPSAwOworICAgIHZpcnR1
YWwgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBib29sIGlzTG9hZGlu
ZygpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZXJyb3JPY2N1cnJlZCgpIGNvbnN0ID0g
MDsKIApAQCAtNTgsNiArNTYsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENsaWVu
dChGb250TG9hZFJlcXVlc3RDbGllbnQqKSA9IDA7CiAKICAgICB2aXJ0dWFsIGJvb2wgaXNDYWNo
ZWRGb250TG9hZFJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwg
Ym9vbCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggNDA1MzU3YThlNWQwYjdmMGI2
YTFhZGU0ZGNhMDg4YTFiMjc5ZjE3MC4uNzM3NmM1ODhmODA4MWMwYWVhMDAzZjMwNmYyN2I0MGEw
ZTA4NjcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZv
bnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRG
b250TG9hZFJlcXVlc3QuaApAQCAtNTAsNiArNTAsNyBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAg
ICAgY29uc3QgVVJMJiB1cmwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPnVybCgpOyB9
CisgICAgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPnN0YXR1
cygpID09IENhY2hlZFJlc291cmNlOjpTdGF0dXM6OlBlbmRpbmc7IH0KICAgICBib29sIGlzTG9h
ZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZm9udC0+aXNMb2FkaW5nKCk7IH0KICAgICBi
b29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPmVycm9yT2Nj
dXJyZWQoKTsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9Gb250LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCmlu
ZGV4IGIxMWE4NzY5ZTg2MGI5M2IwOWQ3MzI0MWU1YmViZDU4MDhiNjJiOGYuLmZkOGM3MDEwMGM3
Y2EyNmM1NTRkZDY4MDcxOTQ5MGNhY2E3MGExMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ZvbnQuY3BwCkBAIC01OCwxNiArNTgsMTYgQEAgY29uc3QgZmxvYXQgZW1waGFz
aXNNYXJrRm9udFNpemVNdWx0aXBsaWVyID0gMC41ZjsKIAogREVGSU5FX0FMTE9DQVRPUl9XSVRI
X0hFQVBfSURFTlRJRklFUihGb250KTsKIAotUmVmPEZvbnQ+IEZvbnQ6OmNyZWF0ZShSZWY8U2hh
cmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udDo6T3JpZ2luIG9yaWdpbiwgZmxvYXQgZm9u
dFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMpCitSZWY8Rm9u
dD4gRm9udDo6Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZhY2VEYXRhLCBGb250OjpP
cmlnaW4gb3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5
bnRoZXRpY0l0YWxpYywgRm9udENhY2hlKiBmb250Q2FjaGVGb3JWZXJ0aWNhbERhdGEpCiB7CiAg
ICAgYm9vbCB3cmFwcGluZzsKICAgICBhdXRvIGN1c3RvbUZvbnREYXRhID0gQ2FjaGVkRm9udDo6
Y3JlYXRlQ3VzdG9tRm9udERhdGEoZm9udEZhY2VEYXRhLmdldCgpLCB7IH0sIHdyYXBwaW5nKTsK
ICAgICBGb250RGVzY3JpcHRpb24gZGVzY3JpcHRpb247CiAgICAgZGVzY3JpcHRpb24uc2V0Q29t
cHV0ZWRTaXplKGZvbnRTaXplKTsKLSAgICByZXR1cm4gRm9udDo6Y3JlYXRlKENhY2hlZEZvbnQ6
OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCpjdXN0b21Gb250RGF0YSwgZGVzY3JpcHRpb24s
IHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgeyB9LCB7IH0pLCBvcmlnaW4pOworICAg
IHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxhdGZvcm1EYXRhRnJvbUN1c3RvbURh
dGEoKmN1c3RvbUZvbnREYXRhLCBkZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhldGlj
SXRhbGljLCB7IH0sIHsgfSksIG9yaWdpbiwgZm9udENhY2hlRm9yVmVydGljYWxEYXRhKTsKIH0K
IAotRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIE9yaWdp
biBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2liaWxpdHkgdmlzaWJpbGl0
eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25hbDxSZW5k
ZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IHJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcikKK0Zv
bnQ6OkZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3Jp
Z2luLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5IHZpc2liaWxpdHksIE9y
aWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVuZGVyaW5n
UmVzb3VyY2VJZGVudGlmaWVyPiByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIEZvbnRDYWNo
ZSogZm9udENhY2hlRm9yVmVydGljYWxEYXRhKQogICAgIDogbV9wbGF0Zm9ybURhdGEocGxhdGZv
cm1EYXRhKQogICAgICwgbV9yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIocmVuZGVyaW5nUmVz
b3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9vcmlnaW4ob3JpZ2luKQpAQCAtODgsOSArODgsMTEg
QEAgRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIE9yaWdp
biBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnQKICAgICBwbGF0Zm9ybUNoYXJXaWR0aEluaXQoKTsK
ICNpZiBFTkFCTEUoT1BFTlRZUEVfVkVSVElDQUwpCiAgICAgaWYgKHBsYXRmb3JtRGF0YS5vcmll
bnRhdGlvbigpID09IEZvbnRPcmllbnRhdGlvbjo6VmVydGljYWwgJiYgb3JpZW50YXRpb25GYWxs
YmFjayA9PSBPcmllbnRhdGlvbkZhbGxiYWNrOjpObykgewotICAgICAgICBtX3ZlcnRpY2FsRGF0
YSA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7Cisg
ICAgICAgIG1fdmVydGljYWxEYXRhID0gZm9udENhY2hlRm9yVmVydGljYWxEYXRhID8gZm9udENh
Y2hlRm9yVmVydGljYWxEYXRhLT52ZXJ0aWNhbERhdGEocGxhdGZvcm1EYXRhKSA6IEZvbnRDYWNo
ZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7CiAgICAgICAgIG1faGFz
VmVydGljYWxHbHlwaHMgPSBtX3ZlcnRpY2FsRGF0YS5nZXQoKSAmJiBtX3ZlcnRpY2FsRGF0YS0+
aGFzVmVydGljYWxNZXRyaWNzKCk7CiAgICAgfQorI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZm9u
dENhY2hlRm9yVmVydGljYWxEYXRhKTsKICNlbmRpZgogfQogCkBAIC01NjgsMTMgKzU3MCwxMyBA
QCBzdGF0aWMgU3lzdGVtRmFsbGJhY2tDYWNoZSYgc3lzdGVtRmFsbGJhY2tDYWNoZSgpCiAgICAg
cmV0dXJuIG1hcC5nZXQoKTsKIH0KIAotUmVmUHRyPEZvbnQ+IEZvbnQ6OnN5c3RlbUZhbGxiYWNr
Rm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3QgRm9udERlc2NyaXB0aW9u
JiBkZXNjcmlwdGlvbiwgSXNGb3JQbGF0Zm9ybUZvbnQgaXNGb3JQbGF0Zm9ybUZvbnQpIGNvbnN0
CitSZWZQdHI8Rm9udD4gRm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKFVDaGFy
MzIgY2hhcmFjdGVyLCBjb25zdCBGb250RGVzY3JpcHRpb24mIGRlc2NyaXB0aW9uLCBJc0ZvclBs
YXRmb3JtRm9udCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlJiBmb250Q2FjaGUpIGNvbnN0
CiB7CiAgICAgYXV0byBmb250QWRkUmVzdWx0ID0gc3lzdGVtRmFsbGJhY2tDYWNoZSgpLmFkZCh0
aGlzLCBDaGFyYWN0ZXJGYWxsYmFja01hcCgpKTsKIAogICAgIGlmICghY2hhcmFjdGVyKSB7CiAg
ICAgICAgIFVDaGFyIGNvZGVVbml0ID0gMDsKLSAgICAgICAgcmV0dXJuIEZvbnRDYWNoZTo6c2lu
Z2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBp
c0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2Rl
VW5pdCwgMSk7CisgICAgICAgIHJldHVybiBmb250Q2FjaGUuc3lzdGVtRmFsbGJhY2tGb3JDaGFy
YWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQ
cmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CiAgICAgfQogCiAgICAgYXV0byBr
ZXkgPSBDaGFyYWN0ZXJGYWxsYmFja01hcEtleSB7IGRlc2NyaXB0aW9uLmNvbXB1dGVkTG9jYWxl
KCksIGNoYXJhY3RlciwgaXNGb3JQbGF0Zm9ybUZvbnQgIT0gSXNGb3JQbGF0Zm9ybUZvbnQ6Ok5v
IH07CkBAIC01ODksNyArNTkxLDcgQEAgUmVmUHRyPEZvbnQ+IEZvbnQ6OnN5c3RlbUZhbGxiYWNr
Rm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3QgRm9udEQKICAgICAgICAg
ICAgIGNvZGVVbml0c1sxXSA9IFUxNl9UUkFJTChjaGFyYWN0ZXIpOwogICAgICAgICAgICAgY29k
ZVVuaXRzTGVuZ3RoID0gMjsKICAgICAgICAgfQotICAgICAgICBhdXRvIGZvbnQgPSBGb250Q2Fj
aGU6OnNpbmdsZXRvbigpLnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVycyhkZXNjcmlwdGlvbiwg
dGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVyQ29sb3JlZEZvbnQ6Ok5v
LCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0KCk7CisgICAgICAgIGF1dG8gZm9udCA9
IGZvbnRDYWNoZS5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMoZGVzY3JpcHRpb24sIHRoaXMs
IGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZlckNvbG9yZWRGb250OjpObywgY29k
ZVVuaXRzLCBjb2RlVW5pdHNMZW5ndGgpLmdldCgpOwogICAgICAgICBpZiAoZm9udCkKICAgICAg
ICAgICAgIGZvbnQtPm1faXNVc2VkSW5TeXN0ZW1GYWxsYmFja0NhY2hlID0gdHJ1ZTsKICAgICAg
ICAgcmV0dXJuIGZvbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKaW5k
ZXggNjUzYjMzOGI3YzM0MjU2MjcyMjQ5NjExZTI3MDFhYzVkMjYzZTk2NS4uODUyNTQyYzM3NjIz
NDNlMzMwMjI4Nzg4NTZiNGE5ODhiNWI1NWM1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnQuaApAQCAtNTcsNiArNTcsNyBAQCBpbnRlcmZhY2UgSURXcml0ZUdkaUludGVy
b3A7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRm9udENhY2hlOwogY2xhc3MgR2x5
cGhQYWdlOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgU2hhcmVkQnVmZmVyOwpAQCAt
OTUsOSArOTYsMTQgQEAgcHVibGljOgogICAgIHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKGNvbnN0
IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSwgT3JpZ2luIG9yaWdpbiA9IE9yaWdpbjo6
TG9jYWwsIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwgPSBJbnRlcnN0aXRpYWw6Ok5vLAogICAg
ICAgICBWaXNpYmlsaXR5IHZpc2liaWxpdHkgPSBWaXNpYmlsaXR5OjpWaXNpYmxlLCBPcmllbnRh
dGlvbkZhbGxiYWNrIG9yaWVudGF0aW9uRmFsbGJhY2sgPSBPcmllbnRhdGlvbkZhbGxiYWNrOjpO
bywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiBpZGVudGlmaWVyID0gV1RG
OjpudWxsb3B0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9udChwbGF0
Zm9ybURhdGEsIG9yaWdpbiwgaW50ZXJzdGl0aWFsLCB2aXNpYmlsaXR5LCBvcmllbnRhdGlvbkZh
bGxiYWNrLCBpZGVudGlmaWVyKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvbnQo
cGxhdGZvcm1EYXRhLCBvcmlnaW4sIGludGVyc3RpdGlhbCwgdmlzaWJpbGl0eSwgb3JpZW50YXRp
b25GYWxsYmFjaywgaWRlbnRpZmllciwgbnVsbHB0cikpOwogICAgIH0KLSAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNl
RGF0YSwgRm9udDo6T3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBi
b29sIHN5bnRoZXRpY0l0YWxpYyk7CisgICAgc3RhdGljIFJlZjxGb250PiBjcmVhdGUoY29uc3Qg
Rm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBGb250Q2FjaGUq
IGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0YSwgSW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCA9IElu
dGVyc3RpdGlhbDo6Tm8sCisgICAgICAgIFZpc2liaWxpdHkgdmlzaWJpbGl0eSA9IFZpc2liaWxp
dHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjayA9IE9y
aWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZp
ZXI+IGlkZW50aWZpZXIgPSBXVEY6Om51bGxvcHQpCisgICAgeworICAgICAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBGb250KHBsYXRmb3JtRGF0YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2li
aWxpdHksIG9yaWVudGF0aW9uRmFsbGJhY2ssIGlkZW50aWZpZXIsIGZvbnRDYWNoZUZvclZlcnRp
Y2FsRGF0YSkpOworICAgIH0KKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZvbnQ+IGNy
ZWF0ZShSZWY8U2hhcmVkQnVmZmVyPiYmIGZvbnRGYWNlRGF0YSwgRm9udDo6T3JpZ2luLCBmbG9h
dCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgRm9u
dENhY2hlKiA9IG51bGxwdHIpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgfkZvbnQoKTsKIApAQCAt
MTg5LDcgKzE5NSw3IEBAIHB1YmxpYzoKICAgICBib29sIHN1cHBvcnRzQ29kZVBvaW50KFVDaGFy
MzIpIGNvbnN0OwogICAgIGJvb2wgcGxhdGZvcm1TdXBwb3J0c0NvZGVQb2ludChVQ2hhcjMyLCBP
cHRpb25hbDxVQ2hhcjMyPiB2YXJpYXRpb24gPSBXVEY6Om51bGxvcHQpIGNvbnN0OwogCi0gICAg
UmVmUHRyPEZvbnQ+IHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyLCBjb25z
dCBGb250RGVzY3JpcHRpb24mLCBJc0ZvclBsYXRmb3JtRm9udCkgY29uc3Q7CisgICAgUmVmUHRy
PEZvbnQ+IHN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyLCBjb25zdCBGb250
RGVzY3JpcHRpb24mLCBJc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlJikgY29uc3Q7CiAKICAg
ICBjb25zdCBHbHlwaFBhZ2UqIGdseXBoUGFnZSh1bnNpZ25lZCBwYWdlTnVtYmVyKSBjb25zdDsK
IApAQCAtMjMyLDcgKzIzOCw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIFdF
QkNPUkVfRVhQT1JUIEZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYsIE9yaWdpbiwgSW50ZXJz
dGl0aWFsLCBWaXNpYmlsaXR5LCBPcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25hbDxSZW5kZXJp
bmdSZXNvdXJjZUlkZW50aWZpZXI+KTsKKyAgICBXRUJDT1JFX0VYUE9SVCBGb250KGNvbnN0IEZv
bnRQbGF0Zm9ybURhdGEmLCBPcmlnaW4sIEludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSwgT3JpZW50
YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiwgRm9u
dENhY2hlKik7CiAKICAgICB2b2lkIHBsYXRmb3JtSW5pdCgpOwogICAgIHZvaWQgcGxhdGZvcm1H
bHlwaEluaXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0ZvbnRDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2Fj
aGUuY3BwCmluZGV4IDhiYjMzZWQ1N2FlODQyY2YxMDk0NmFkMjc0N2I5NTk2Y2IwNGE1ODYuLjAy
YjU1ZDEyMGQzODNhMzZlODBlODRkMTc2NWIxNzU0OWMwNzEzYmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcApAQCAtMjgwLDcgKzI4MCw3IEBA
IFJlZjxGb250PiBGb250Q2FjaGU6OmZvbnRGb3JQbGF0Zm9ybURhdGEoY29uc3QgRm9udFBsYXRm
b3JtRGF0YSYgcGxhdGZvcm1EYXRhKQogI2VuZGlmCiAKICAgICBhdXRvIGFkZFJlc3VsdCA9IG1f
Zm9udERhdGFDYWNoZXMtPmRhdGEuZW5zdXJlKHBsYXRmb3JtRGF0YSwgWyZdIHsKLSAgICAgICAg
cmV0dXJuIEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGEpOworICAgICAgICByZXR1cm4gRm9udDo6
Y3JlYXRlKHBsYXRmb3JtRGF0YSwgRm9udDo6T3JpZ2luOjpMb2NhbCwgdGhpcyk7CiAgICAgfSk7
CiAKICAgICBBU1NFUlQoYWRkUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+cGxhdGZvcm1EYXRhKCkg
PT0gcGxhdGZvcm1EYXRhKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ZvbnRDYXNjYWRlRm9udHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKaW5kZXggOWY2NWQyOTk4Zjk0ODY5NzNkNGJiZjE4
ZGUyNmY4MmIwNDQzOWZjYS4uZWQ5NDFkMWVkMGZlYTRhNDJjMmU5NTdhYjc2MDgzZTQ0ZTEzMjYz
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2Nh
ZGVGb250cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
c2NhZGVGb250cy5jcHAKQEAgLTE4OSw3ICsxODksNyBAQCBjb25zdCBGb250UmFuZ2VzJiBGb250
Q2FzY2FkZUZvbnRzOjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250Q2FzY2FkZURl
cwogICAgIGlmICghaW5kZXgpIHsKICAgICAgICAgZm9udFJhbmdlcyA9IHJlYWxpemVOZXh0RmFs
bGJhY2soZGVzY3JpcHRpb24sIG1fbGFzdFJlYWxpemVkRmFsbGJhY2tJbmRleCwgbV9mb250U2Vs
ZWN0b3IuZ2V0KCkpOwogICAgICAgICBpZiAoZm9udFJhbmdlcy5pc051bGwoKSAmJiBtX2ZvbnRT
ZWxlY3RvcikKLSAgICAgICAgICAgIGZvbnRSYW5nZXMgPSBtX2ZvbnRTZWxlY3Rvci0+Zm9udFJh
bmdlc0ZvckZhbWlseShkZXNjcmlwdGlvbiwgc3RhbmRhcmRGYW1pbHkpOworICAgICAgICAgICAg
Zm9udFJhbmdlcyA9IG1fZm9udFNlbGVjdG9yLT5mb250UmFuZ2VzRm9yRmFtaWx5KGRlc2NyaXB0
aW9uLCBmYW1pbHlOYW1lc0RhdGEtPmF0KEZhbWlseU5hbWVzSW5kZXg6OlN0YW5kYXJkRmFtaWx5
KSk7CiAgICAgICAgIGlmIChmb250UmFuZ2VzLmlzTnVsbCgpKQogICAgICAgICAgICAgZm9udFJh
bmdlcyA9IEZvbnRSYW5nZXMoRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9u
KG1fZm9udFNlbGVjdG9yKS5sYXN0UmVzb3J0RmFsbGJhY2tGb250KGRlc2NyaXB0aW9uKSk7CiAg
ICAgICAgIHJldHVybiBmb250UmFuZ2VzOwpAQCAtMzUxLDcgKzM1MSw3IEBAIEdseXBoRGF0YSBG
b250Q2FzY2FkZUZvbnRzOjpnbHlwaERhdGFGb3JTeXN0ZW1GYWxsYmFjayhVQ2hhcjMyIGNoYXJh
Y3RlciwgY29uc3QKICAgICBpZiAoIWZvbnQpCiAgICAgICAgIGZvbnQgPSAmcmVhbGl6ZUZhbGxi
YWNrUmFuZ2VzQXQoZGVzY3JpcHRpb24sIDApLmZvbnRGb3JGaXJzdFJhbmdlKCk7CiAKLSAgICBh
dXRvIHN5c3RlbUZhbGxiYWNrRm9udCA9IGZvbnQtPnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJh
Y3RlcihjaGFyYWN0ZXIsIGRlc2NyaXB0aW9uLCBtX2lzRm9yUGxhdGZvcm1Gb250ID8gSXNGb3JQ
bGF0Zm9ybUZvbnQ6OlllcyA6IElzRm9yUGxhdGZvcm1Gb250OjpObyk7CisgICAgYXV0byBzeXN0
ZW1GYWxsYmFja0ZvbnQgPSBmb250LT5zeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIoY2hh
cmFjdGVyLCBkZXNjcmlwdGlvbiwgbV9pc0ZvclBsYXRmb3JtRm9udCA/IElzRm9yUGxhdGZvcm1G
b250OjpZZXMgOiBJc0ZvclBsYXRmb3JtRm9udDo6Tm8sIEZvbnRDYWNoZTo6Zm9udENhY2hlRmFs
bGJhY2tUb1NpbmdsZXRvbihtX2ZvbnRTZWxlY3RvcikpOwogICAgIGlmICghc3lzdGVtRmFsbGJh
Y2tGb250KQogICAgICAgICByZXR1cm4gR2x5cGhEYXRhKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRUYWdnZWRTZXR0aW5ncy5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKaW5kZXggMTI4
ZGFmN2U2M2JjNzNkYTlmZWQxY2MzYTllNDJhY2Y1Njg5Mzk4OC4uMDc4M2M1MmIxYzM0M2UxZGQ1
ZTc4N2ZhNDc0MDRjZTRlZjY1YWQ0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRm9udFRhZ2dlZFNldHRpbmdzLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAog
I2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9IYXNoVHJhaXRzLmg+CisjaW5jbHVkZSA8
d3RmL0hhc2hlci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdURiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVz
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNDAxZGRiOWYzYTM3Mzc4MWNmOTVmM2QwYmM1NjFjNjg5N2NlODI3NAotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1
ZXN0LmNwcApAQCAtMCwwICsxLDE1MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAw
NywgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDkgVG9yY2ggTW9iaWxlLCBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgTWV0cm9sb2dp
Y2FsIEdyb3VwIEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
CisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldvcmtlckZvbnRMb2FkUmVxdWVz
dC5oIgorCisjaW5jbHVkZSAiRm9udC5oIgorI2luY2x1ZGUgIkZvbnRDdXN0b21QbGF0Zm9ybURh
dGEuaCIKKyNpbmNsdWRlICJGb250U2VsZWN0aW9uQWxnb3JpdGhtLmgiCisjaW5jbHVkZSAiUmVz
b3VyY2VMb2FkZXJPcHRpb25zLmgiCisjaW5jbHVkZSAiU2VydmljZVdvcmtlci5oIgorI2luY2x1
ZGUgIlNoYXJlZEJ1ZmZlci5oIgorI2luY2x1ZGUgIldPRkZGaWxlRm9ybWF0LmgiCisjaW5jbHVk
ZSAiV29ya2VyR2xvYmFsU2NvcGUuaCIKKyNpbmNsdWRlICJXb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV29ya2VyRm9udExvYWRSZXF1ZXN0OjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3QoVVJMJiYgdXJsLCBMb2FkZWRGcm9tT3BhcXVlU291cmNlIGxvYWRl
ZEZyb21PcGFxdWVTb3VyY2UpCisgICAgOiBtX3VybCh1cmwpCisgICAgLCBtX2xvYWRlZEZyb21P
cGFxdWVTb3VyY2UobG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkKK3sKK30KKwordm9pZCBXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OmxvYWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKK3sK
KyAgICBBU1NFUlQoaXM8V29ya2VyR2xvYmFsU2NvcGU+KGNvbnRleHQpKTsKKyAgICBhdXRvJiB3
b3JrZXJHbG9iYWxTY29wZSA9IGRvd25jYXN0PFdvcmtlckdsb2JhbFNjb3BlPihjb250ZXh0KTsK
KyAgICBtX2NvbnRleHQgPSBtYWtlV2Vha1B0cihjb250ZXh0KTsKKworICAgIFJlc291cmNlUmVx
dWVzdCByZXF1ZXN0IHsgbV91cmwgfTsKKyAgICBBU1NFUlQocmVxdWVzdC5odHRwTWV0aG9kKCkg
PT0gIkdFVCIpOworCisgICAgRmV0Y2hPcHRpb25zIGZldGNoT3B0aW9uczsKKyAgICBmZXRjaE9w
dGlvbnMubW9kZSA9IEZldGNoT3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsKKyAgICBmZXRjaE9w
dGlvbnMuY3JlZGVudGlhbHMgPSB3b3JrZXJHbG9iYWxTY29wZS5jcmVkZW50aWFscygpOworICAg
IGZldGNoT3B0aW9ucy5jYWNoZSA9IEZldGNoT3B0aW9uczo6Q2FjaGU6OkRlZmF1bHQ7CisgICAg
ZmV0Y2hPcHRpb25zLnJlZGlyZWN0ID0gRmV0Y2hPcHRpb25zOjpSZWRpcmVjdDo6Rm9sbG93Owor
ICAgIGZldGNoT3B0aW9ucy5kZXN0aW5hdGlvbiA9IEZldGNoT3B0aW9uczo6RGVzdGluYXRpb246
OldvcmtlcjsKKworICAgIFRocmVhZGFibGVMb2FkZXJPcHRpb25zIG9wdGlvbnMgeyBXVEZNb3Zl
KGZldGNoT3B0aW9ucykgfTsKKyAgICBvcHRpb25zLnNlbmRMb2FkQ2FsbGJhY2tzID0gU2VuZENh
bGxiYWNrUG9saWN5OjpTZW5kQ2FsbGJhY2tzOworICAgIG9wdGlvbnMuY29udGVudFNlY3VyaXR5
UG9saWN5RW5mb3JjZW1lbnQgPSBjb250ZXh0LnNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRT
ZWN1cml0eVBvbGljeSgpID8gQ29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1lbnQ6OkRvTm90
RW5mb3JjZSA6IENvbnRlbnRTZWN1cml0eVBvbGljeUVuZm9yY2VtZW50OjpFbmZvcmNlQ2hpbGRT
cmNEaXJlY3RpdmU7CisgICAgb3B0aW9ucy5sb2FkZWRGcm9tT3BhcXVlU291cmNlID0gbV9sb2Fk
ZWRGcm9tT3BhcXVlU291cmNlOworCisgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2Vyc01vZGUgPSBT
ZXJ2aWNlV29ya2Vyc01vZGU6OkFsbDsKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAg
aWYgKGF1dG8qIGFjdGl2ZVNlcnZpY2VXb3JrZXIgPSBjb250ZXh0LmFjdGl2ZVNlcnZpY2VXb3Jr
ZXIoKSkKKyAgICAgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSWRlbnRpZmll
ciA9IGFjdGl2ZVNlcnZpY2VXb3JrZXItPnJlZ2lzdHJhdGlvbklkZW50aWZpZXIoKTsKKyNlbmRp
ZgorCisgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNs
eSh3b3JrZXJHbG9iYWxTY29wZSwgV1RGTW92ZShyZXF1ZXN0KSwgKnRoaXMsIG9wdGlvbnMpOwor
fQorCitib29sIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3VzdG9tRm9udERhdGEoY29u
c3QgQXRvbVN0cmluZyYpCit7CisjaWYgIVBMQVRGT1JNKENPQ09BKQorICAgIGlmICghbV9mb250
Q3VzdG9tUGxhdGZvcm1EYXRhICYmICFtX2Vycm9yT2NjdXJyZWQgJiYgIW1faXNMb2FkaW5nICYm
IG1fZGF0YSAmJiBpc1dPRkYoKm1fZGF0YSkpIHsKKyAgICAgICAgVmVjdG9yPGNoYXI+IGNvbnZl
cnRlZEZvbnQ7CisgICAgICAgIGlmIChjb252ZXJ0V09GRlRvU2ZudCgqbV9kYXRhLCBjb252ZXJ0
ZWRGb250KSkKKyAgICAgICAgICAgIG1fZGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFdURk1v
dmUoY29udmVydGVkRm9udCkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX2Vycm9yT2Nj
dXJyZWQgPSB0cnVlOworICAgIH0KKyNlbmRpZgorCisgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0
Zm9ybURhdGEgJiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9pc0xvYWRpbmcgJiYgbV9kYXRhKSB7
CisgICAgICAgIG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YSA9IGNyZWF0ZUZvbnRDdXN0b21QbGF0
Zm9ybURhdGEoKm1fZGF0YSwgbV91cmwuZnJhZ21lbnRJZGVudGlmaWVyKCkudG9TdHJpbmcoKSk7
CisgICAgICAgIGlmICghbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhKQorICAgICAgICAgICAgbV9l
cnJvck9jY3VycmVkID0gdHJ1ZTsKKyAgICB9CisKKyAgICByZXR1cm4gbV9mb250Q3VzdG9tUGxh
dGZvcm1EYXRhLmdldCgpOworfQorCitSZWZQdHI8Rm9udD4gV29ya2VyRm9udExvYWRSZXF1ZXN0
OjpjcmVhdGVGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZm9udERlc2NyaXB0aW9uLCBjb25z
dCBBdG9tU3RyaW5nJiwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywg
Y29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywgRm9udFNlbGVjdGlv
blNwZWNpZmllZENhcGFiaWxpdGllcyBmb250RmFjZUNhcGFiaWxpdGllcykKK3sKKyAgICBBU1NF
UlQobV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhKTsKKyAgICBBU1NFUlQobV9jb250ZXh0KTsKKyAg
ICByZXR1cm4gRm9udDo6Y3JlYXRlKG1fZm9udEN1c3RvbVBsYXRmb3JtRGF0YS0+Zm9udFBsYXRm
b3JtRGF0YShmb250RGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywg
Zm9udEZhY2VGZWF0dXJlcywgZm9udEZhY2VDYXBhYmlsaXRpZXMpLCBGb250OjpPcmlnaW46OlJl
bW90ZSwgJm1fY29udGV4dC0+Zm9udENhY2hlKCkpOworfQorCit2b2lkIFdvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6c2V0Q2xpZW50KEZvbnRMb2FkUmVxdWVzdENsaWVudCogY2xpZW50KQoreworICAg
IG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50ID0gY2xpZW50OworCisgICAgaWYgKG1fbm90aWZ5T25D
bGllbnRTZXQpIHsKKyAgICAgICAgbV9ub3RpZnlPbkNsaWVudFNldCA9IGZhbHNlOworICAgICAg
ICBtX2ZvbnRMb2FkUmVxdWVzdENsaWVudC0+Zm9udExvYWRlZCgqdGhpcyk7CisgICAgfQorfQor
Cit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQoreworICAgIGlmIChyZXNw
b25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwICE9IDIgJiYgcmVzcG9uc2UuaHR0cFN0YXR1c0Nv
ZGUoKSkgeworICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOworICAgICAgICByZXR1cm47
CisgICAgfQorfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURhdGEo
Y29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFMZW5ndGgpCit7CisgICAgaWYgKG1fZXJyb3JPY2N1
cnJlZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFtX2RhdGEpCisgICAgICAgIG1fZGF0
YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CisKKyAgICBtX2RhdGEtPmFwcGVuZChkYXRhLCBk
YXRhTGVuZ3RoKTsKK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZpbmlzaExv
YWRpbmcodW5zaWduZWQgbG9uZykKK3sKKyAgICBtX2lzTG9hZGluZyA9IGZhbHNlOworCisgICAg
aWYgKCFtX2Vycm9yT2NjdXJyZWQpIHsKKyAgICAgICAgaWYgKG1fZm9udExvYWRSZXF1ZXN0Q2xp
ZW50KQorICAgICAgICAgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQtPmZvbnRMb2FkZWQoKnRo
aXMpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX25vdGlmeU9uQ2xpZW50U2V0ID0gdHJ1
ZTsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGYWlsKGNvbnN0
IFJlc291cmNlRXJyb3ImKQoreworICAgIG1fZXJyb3JPY2N1cnJlZCA9IHRydWU7Cit9CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZv
bnRMb2FkUmVxdWVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNlMGIyMGE4OWIzNjhmYjVhYjIzN2FmZDBlZmQ0
NDJhODQ2NDA0MjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC0wLDAgKzEsODMgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgTWV0cm9sb2dpY2FsIEdyb3VwIEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBJ
Z2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGb250TG9h
ZFJlcXVlc3QuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKKyNpbmNsdWRl
ICJUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgiCisjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorI2lu
Y2x1ZGUgPHd0Zi9VUkwuaD4KKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFzcyBTaGFyZWRC
dWZmZXI7CitjbGFzcyBXb3JrZXJHbG9iYWxTY29wZTsKK3N0cnVjdCBGb250Q3VzdG9tUGxhdGZv
cm1EYXRhOworCitjbGFzcyBXb3JrZXJGb250TG9hZFJlcXVlc3QgOiBwdWJsaWMgRm9udExvYWRS
ZXF1ZXN0LCBwdWJsaWMgVGhyZWFkYWJsZUxvYWRlckNsaWVudCB7CisgICAgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgV29ya2VyRm9udExvYWRSZXF1ZXN0KFVSTCYmLCBM
b2FkZWRGcm9tT3BhcXVlU291cmNlKTsKKyAgICB+V29ya2VyRm9udExvYWRSZXF1ZXN0KCkgPSBk
ZWZhdWx0OworCisgICAgdm9pZCBsb2FkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKTsKKworcHJp
dmF0ZToKKyAgICBjb25zdCBVUkwmIHVybCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdXJsOyB9
CisgICAgYm9vbCBpc1BlbmRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiAhbV9pc0xvYWRpbmcg
JiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9kYXRhOyB9CisgICAgYm9vbCBpc0xvYWRpbmcoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBtX2lzTG9hZGluZzsgfQorICAgIGJvb2wgZXJyb3JPY2N1cnJl
ZCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZXJyb3JPY2N1cnJlZDsgfQorCisgICAgYm9vbCBl
bnN1cmVDdXN0b21Gb250RGF0YShjb25zdCBBdG9tU3RyaW5nJiByZW1vdGVVUkkpIGZpbmFsOwor
ICAgIFJlZlB0cjxGb250PiBjcmVhdGVGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGNvbnN0
IEF0b21TdHJpbmcmIHJlbW90ZVVSSSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRp
Y0l0YWxpYywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYsIEZvbnRTZWxlY3Rpb25TcGVjaWZp
ZWRDYXBhYmlsaXRpZXMpIGZpbmFsOworCisgICAgdm9pZCBzZXRDbGllbnQoRm9udExvYWRSZXF1
ZXN0Q2xpZW50KikgZmluYWw7CisKKyAgICBib29sIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorCisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9u
c2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmlu
YWw7CisgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgZGF0YUxl
bmd0aCkgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBm
aW5hbDsKKworICAgIFVSTCBtX3VybDsKKyAgICBMb2FkZWRGcm9tT3BhcXVlU291cmNlIG1fbG9h
ZGVkRnJvbU9wYXF1ZVNvdXJjZTsKKworICAgIGJvb2wgbV9pc0xvYWRpbmcgeyBmYWxzZSB9Owor
ICAgIGJvb2wgbV9ub3RpZnlPbkNsaWVudFNldCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2Vycm9y
T2NjdXJyZWQgeyBmYWxzZSB9OworICAgIEZvbnRMb2FkUmVxdWVzdENsaWVudCogbV9mb250TG9h
ZFJlcXVlc3RDbGllbnQgeyBudWxscHRyIH07CisKKyAgICBXZWFrUHRyPFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQ+IG1fY29udGV4dDsKKyAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBtX2RhdGE7Cisg
ICAgc3RkOjp1bmlxdWVfcHRyPEZvbnRDdXN0b21QbGF0Zm9ybURhdGE+IG1fZm9udEN1c3RvbVBs
YXRmb3JtRGF0YTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9U
WVBFX1RSQUlUU19GT05UTE9BRFJFUVVFU1QoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0
LCBpc1dvcmtlckZvbnRMb2FkUmVxdWVzdCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCBkMGZiZDcyZDMyYjU1MDQ2OWVhMDhhOTBmMGZkNmJm
ODRmYTYxODg2Li41YTk3ZjBmYzQyZDA4ZjQ5YjZhNjZlZTA1OTMzYTk4ODEwNDdjZTA1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtMzQsNiAr
MzQsNyBAQAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkNy
eXB0by5oIgogI2luY2x1ZGUgIkZvbnRDYWNoZS5oIgorI2luY2x1ZGUgIkZvbnRGYWNlU2V0Lmgi
CiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiSW1hZ2VCaXRtYXBP
cHRpb25zLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCkBAIC00NSw2
ICs0Niw3IEBACiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW5Qb2xpY3kuaCIKICNpbmNsdWRlICJT
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaCIKICNpbmNsdWRlICJTb2NrZXRQcm92aWRlci5oIgor
I2luY2x1ZGUgIldvcmtlckZvbnRMb2FkUmVxdWVzdC5oIgogI2luY2x1ZGUgIldvcmtlckxvYWRl
clByb3h5LmgiCiAjaW5jbHVkZSAiV29ya2VyTG9jYXRpb24uaCIKICNpbmNsdWRlICJXb3JrZXJN
ZXNzYWdpbmdQcm94eS5oIgpAQCAtNTIxLDYgKzUyMywyMiBAQCBGb250Q2FjaGUmIFdvcmtlckds
b2JhbFNjb3BlOjpmb250Q2FjaGUoKQogICAgIHJldHVybiAqbV9mb250Q2FjaGU7CiB9CiAKK1Jl
ZjxGb250RmFjZVNldD4gV29ya2VyR2xvYmFsU2NvcGU6OmZvbnRzKCkKK3sKKyAgICByZXR1cm4g
Y3NzRm9udFNlbGVjdG9yKCktPmZvbnRGYWNlU2V0KCk7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjxG
b250TG9hZFJlcXVlc3Q+IFdvcmtlckdsb2JhbFNjb3BlOjpmb250TG9hZFJlcXVlc3QoU3RyaW5n
JiB1cmwsIGJvb2wsIGJvb2wsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbG9hZGVkRnJvbU9wYXF1
ZVNvdXJjZSkKK3sKKyAgICByZXR1cm4gbWFrZVVuaXF1ZTxXb3JrZXJGb250TG9hZFJlcXVlc3Q+
KGNvbXBsZXRlVVJMKHVybCksIGxvYWRlZEZyb21PcGFxdWVTb3VyY2UpOworfQorCit2b2lkIFdv
cmtlckdsb2JhbFNjb3BlOjpiZWdpbkxvYWRpbmdGb250U29vbihGb250TG9hZFJlcXVlc3QmIHJl
cXVlc3QpCit7CisgICAgQVNTRVJUKGlzPFdvcmtlckZvbnRMb2FkUmVxdWVzdD4ocmVxdWVzdCkp
OworICAgIGRvd25jYXN0PFdvcmtlckZvbnRMb2FkUmVxdWVzdD4ocmVxdWVzdCkubG9hZCgqdGhp
cyk7Cit9CisKIFJlZmVycmVyUG9saWN5IFdvcmtlckdsb2JhbFNjb3BlOjpyZWZlcnJlclBvbGlj
eSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fcmVmZXJyZXJQb2xpY3k7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggNmViZTQ2NTExZmJhMjFjMmY4NTE2
ZGU0NTI2ODAxNGNjMjdmMTY4ZS4uMmEzMTNkNGU2ODY1MTJiZDAxM2JhYWZiMjRmMjkyNzA0M2Q5
YjU0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29w
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaApAQCAt
NTEsNiArNTEsOCBAQCBjbGFzcyBDU1NGb250U2VsZWN0b3I7CiBjbGFzcyBDU1NWYWx1ZVBvb2w7
CiBjbGFzcyBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnM7CiBjbGFzcyBDcnlw
dG87CitjbGFzcyBGb250RmFjZVNldDsKK2NsYXNzIEZvbnRMb2FkUmVxdWVzdDsKIGNsYXNzIFBl
cmZvcm1hbmNlOwogY2xhc3MgU2NoZWR1bGVkQWN0aW9uOwogY2xhc3MgV29ya2VyTG9jYXRpb247
CkBAIC0xMjQsNiArMTI2LDkgQEAgcHVibGljOgogICAgIENTU1ZhbHVlUG9vbCYgY3NzVmFsdWVQ
b29sKCkgZmluYWw7CiAgICAgQ1NTRm9udFNlbGVjdG9yKiBjc3NGb250U2VsZWN0b3IoKSBmaW5h
bDsKICAgICBGb250Q2FjaGUmIGZvbnRDYWNoZSgpIGZpbmFsOworICAgIFJlZjxGb250RmFjZVNl
dD4gZm9udHMoKTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8Rm9udExvYWRSZXF1ZXN0PiBmb250TG9h
ZFJlcXVlc3QoU3RyaW5nJiwgYm9vbCwgYm9vbCwgTG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkgZmlu
YWw7CisgICAgdm9pZCBiZWdpbkxvYWRpbmdGb250U29vbihGb250TG9hZFJlcXVlc3QmKSBmaW5h
bDsKIAogICAgIFJlZmVycmVyUG9saWN5IHJlZmVycmVyUG9saWN5KCkgY29uc3QgZmluYWw7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRs
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXggZjg1
NzhhNDcxZjQ4YjQ4NThiYmZiYmZiYzhhMDVjY2RkOWI2OWIyNi4uZTI4ZTg5ZWZmNGNiMDJmNzRk
ZjBiZDFhMjkwMWE3NTcxNDVjZWNmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJHbG9iYWxTY29wZS5pZGwKQEAgLTQ4LDMgKzQ4LDQgQEAKIH07CiAKIFdvcmtlckdsb2JhbFNj
b3BlIGluY2x1ZGVzIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGU7CitXb3JrZXJHbG9iYWxTY29w
ZSBpbmNsdWRlcyBGb250RmFjZVNvdXJjZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmlu
ZGV4IDRiOWZiMDgyMzIzYzA0ZmM2ZTJjYmYzMDYwMmE5NTBjNzY5YjczYzguLjc4ZjdiNzUyZGI3
ZWVlNDI4NjFjZmM0Nzk5ZWM5YTdmZGE2MzBmODcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDIxLTA0LTE2ICBDaHJpcyBMb3JkICA8Y2xvcmRAaWdh
bGlhLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgRm9udEZhY2UgaW4gV29ya2VycyBmb3IgT2Zm
c2NyZWVuQ2FudmFzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjQxNzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc2NTI5MDI0PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZvbnRGYWNlIGlzIG5vdyBh
dmFpbGFibGUgZm9yIFdvcmtlcnMsIHJlYmFzZWxpbmUgcmVsYXRlZCB0ZXN0cy4KKworICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZvbnQtbG9hZGluZy9mb250ZmFjZXNldC1s
b2FkLWNzcy13aWRlLWtleXdvcmRzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNl
bnRlci53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3Jr
ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFs
aWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3Rh
cnQucnRsLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJl
dGljLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29y
a2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRvcC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuZm9udGZhY2Uubm90aW5wYWdlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5m
b250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNl
Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVh
c3VyZS5iYXNlbGluZXMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmVtSGVp
Z2h0cy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94
Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5iYXNpYy53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQ6CisK
IDIwMjEtMDQtMjEgIENocmlzIExvcmQgIDxjbG9yZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIERP
TUV4Y2VwdGlvbiBzaG91bGQgYmUgU2VyaWFsaXphYmxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZm9udC1sb2FkaW5nL2Zv
bnRmYWNlc2V0LWxvYWQtY3NzLXdpZGUta2V5d29yZHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZvbnQtbG9hZGluZy9m
b250ZmFjZXNldC1sb2FkLWNzcy13aWRlLWtleXdvcmRzLWV4cGVjdGVkLnR4dAppbmRleCBiODMx
ZTU4ZmU1M2NkYjhlZmFjYzAyM2QyM2U1OWFlMmIxOTY2Mjk1Li42Mjc1YjEzZTVjNzBmMWFmMzZl
ODhhYTA5MmQ5NTE1NmE0OTg4M2FjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZm9udC1sb2FkaW5nL2ZvbnRmYWNlc2V0LWxv
YWQtY3NzLXdpZGUta2V5d29yZHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mb250LWxvYWRpbmcvZm9udGZhY2Vz
ZXQtbG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTAgQEAK
LUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnc2VsZi5mb250cy5sb2FkJykKLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1l
c3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdzZWxmLmZvbnRzLmxvYWQnKQogCiBQQVNTIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAiaW5p
dGlhbCIgY2F1c2VzIFN5bnRheEVycm9yIChkb2N1bWVudCkKIFBBU1MgTG9hZGluZyBDU1Mtd2lk
ZSBrZXl3b3JkICJpbmhlcml0IiBjYXVzZXMgU3ludGF4RXJyb3IgKGRvY3VtZW50KQogUEFTUyBM
b2FkaW5nIENTUy13aWRlIGtleXdvcmQgInVuc2V0IiBjYXVzZXMgU3ludGF4RXJyb3IgKGRvY3Vt
ZW50KQogUEFTUyBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgInJldmVydCIgY2F1c2VzIFN5bnRh
eEVycm9yIChkb2N1bWVudCkKLVRJTUVPVVQgTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3JkICJpbml0
aWFsIiBjYXVzZXMgU3ludGF4RXJyb3IgKHdvcmtlcikgVGVzdCB0aW1lZCBvdXQKLU5PVFJVTiBM
b2FkaW5nIENTUy13aWRlIGtleXdvcmQgImluaGVyaXQiIGNhdXNlcyBTeW50YXhFcnJvciAod29y
a2VyKQotTk9UUlVOIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAidW5zZXQiIGNhdXNlcyBTeW50
YXhFcnJvciAod29ya2VyKQotTk9UUlVOIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAicmV2ZXJ0
IiBjYXVzZXMgU3ludGF4RXJyb3IgKHdvcmtlcikKK1BBU1MgTG9hZGluZyBDU1Mtd2lkZSBrZXl3
b3JkICJpbml0aWFsIiBjYXVzZXMgU3ludGF4RXJyb3IgKHdvcmtlcikKK1BBU1MgTG9hZGluZyBD
U1Mtd2lkZSBrZXl3b3JkICJpbmhlcml0IiBjYXVzZXMgU3ludGF4RXJyb3IgKHdvcmtlcikKK1BB
U1MgTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3JkICJ1bnNldCIgY2F1c2VzIFN5bnRheEVycm9yICh3
b3JrZXIpCitQQVNTIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAicmV2ZXJ0IiBjYXVzZXMgU3lu
dGF4RXJyb3IgKHdvcmtlcikKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYWxpZ24uY2VudGVyLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBlOWQ3ZjU3NGY0
NTUwY2Q1ZjJmMzRjM2EwYzZiODlkZDNkYThmZGQzLi4xMWRkY2ZjZTY3MGI1ZWZhYjQxNzYyMzU4
MGIyOGI3NGQyYTEwNjM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5h
bGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAK
IAotRkFJTCB0ZXh0QWxpZ24gY2VudGVyIGlzIHRoZSBjZW50ZXIgb2YgdGhlIGVtIHNxdWFyZXMg
KG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFT
UyB0ZXh0QWxpZ24gY2VudGVyIGlzIHRoZSBjZW50ZXIgb2YgdGhlIGVtIHNxdWFyZXMgKG5vdCB0
aGUgYm91bmRpbmcgYm94KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMzhkZDc4YmVl
YmViZjkyZWQwMmIxNTQ5NjJhMGEwOTUwMGQ5NmMxYy4uZTA5MmUxZjhiYzZkZjc1ZDFjOTE1YTRi
NGZiOWFlZGJlMWY4Yzc5YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMg
QEAKIAotRkFJTCB0ZXh0QWxpZ24gZW5kIHdpdGggbHRyIGlzIHRoZSByaWdodCBlZGdlIENhbid0
IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBlbmQgd2l0aCBsdHIgaXMg
dGhlIHJpZ2h0IGVkZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDA1OGJiOTlkZTMz
NWE0YmZkMDNmYjUxNjczNDFlZDQwYmFiY2I5MTIuLjRiNmRlMjdlMjQ4OGJlZWI5ZGNlYzlkZGVi
MWViNDQyMGJlM2Y1YzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFs
aWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgdGV4dEFsaWduIGVuZCB3aXRoIHJ0bCBpcyB0aGUgbGVmdCBlZGdlIENhbid0IGZp
bmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBlbmQgd2l0aCBydGwgaXMgdGhl
IGxlZnQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGln
bi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5h
bGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZjI5MmY5NDQxMjc5ZGNhOTU3NGMy
YmYwMzE2NmIxMzk1MTkyYzU2My4uYjIzZjc3OGNmZTAxYzU0NTM5MjAwMjNhMWEzM2Q0OTZkNWYy
ZmFhMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWdu
LmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxp
Z24gbGVmdCBpcyB0aGUgbGVmdCBvZiB0aGUgZmlyc3QgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5k
aW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGxl
ZnQgaXMgdGhlIGxlZnQgb2YgdGhlIGZpcnN0IGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBi
b3gpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0
Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5y
aWdodC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGZmNWE0MDIwYmRhYjBhNjExOWZkNjRhZTQ3
NzJmYzE1YjExZWE1NjUuLmExMDgyZDViOGM1ODU0NDkzZGEwODk1MDE2MGVmZGNhNjliM2ViMGQg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtl
ci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmln
aHQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24g
cmlnaHQgaXMgdGhlIHJpZ2h0IG9mIHRoZSBsYXN0IGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGlu
ZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiByaWdo
dCBpcyB0aGUgcmlnaHQgb2YgdGhlIGxhc3QgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJv
eCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQu
bHRyLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGln
bi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA2ZmQ5NjU1NDUyY2YwMTY3YjRh
ZDA5YzEyZTkzNjdjMGNjOGIxMmE5Li4xOWYwMmJmM2QwODVmNDFhYWU5NjljYWJmOWQ0OWIyY2Y3
YTBmMjk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFy
dC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAot
RkFJTCB0ZXh0QWxpZ24gc3RhcnQgd2l0aCBsdHIgaXMgdGhlIGxlZnQgZWRnZSBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24gc3RhcnQgd2l0aCBsdHIgaXMgdGhl
IGxlZnQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGln
bi5zdGFydC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGJkNWE1OWQ3OWU2
ZTA1YWRjMzg0MzljYWQ1ZGJmNWIyMWQ5Yzg2OWMuLjQxYzNmMjRhZjBiZGI0NjM2MjUxYzQ5NGZk
YzY0OWUzZDllNjkxYmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFs
aWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MyBAQAogCi1GQUlMIHRleHRBbGlnbiBzdGFydCB3aXRoIHJ0bCBpcyB0aGUgcmlnaHQgZWRnZSBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24gc3RhcnQgd2l0aCBy
dGwgaXMgdGhlIHJpZ2h0IGVkZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0
CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmExN2VlZjUw
OTJiN2QwMzgyN2FjZDY1Yjc5NzhlZTRiOWJlMjBkYzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29ya2VyLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtl
ci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJp
YWJsZTogRm9udEZhY2UKK1BBU1MgMmQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4cGVjdGVkLnR4dAppbmRl
eCA2YTE1NDljMTdiMjI2YTllNTU2NTc1Y2U5MmY3Mjk2ODg5Y2RhMjkyLi5mZjI4MzYwOTg1Mzg1
NDJkNzJlZGMyOTEwMGY1ODA2YTgyM2IwNzRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4cGVjdGVkLnR4
dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QmFzZWxpbmUgYm90dG9tIGlzIHRoZSBib3R0
b20gb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFy
aWFibGU6IEZvbnRGYWNlCitGQUlMIHRleHRCYXNlbGluZSBib3R0b20gaXMgdGhlIGJvdHRvbSBv
ZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgYXNzZXJ0X2FwcHJveF9lcXVh
bHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBleHBlY3RlZCAwICsvLSAy
IGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJh
c2VsaW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBkMzg5OTQw
YWY2NWY0N2RhM2FiZjJlZWM0ZDdhOWI5NjE1MWQzZmVkLi5jYmVmMjc2YTM0NzhmYWJjMTFhYjVm
NGYxYjVkMjU5MjU1NzY5OGRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsMyBAQAogCi1GQUlMIDJkIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlM
IDJkIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDUs
IDUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlkZW9ncmFwaGljLndvcmtl
ci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYyZWVjNGQ3YTliOTYxNTFk
M2ZlZC4uY2JlZjI3NmEzNDc4ZmFiYzExYWI1ZjRmMWI1ZDI1OTI1NTc2OThkZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5p
ZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIDJk
IENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIDJkIGFzc2VydF9hcHByb3hfZXF1
YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDUsIDUpIGV4cGVjdGVkIDAgKy8tIDIg
YnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFz
ZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzMDA2NzM4YTlj
NmQ4ZjkyMGVkOWMwYzhjZTY2ZWM5MzIzOTNlYmFhLi5hZDY0OTQ5ZTE1MTJhNWI4NzBiMDZkMTIw
NDhmMmI4ZjI4NjgzMTk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5i
YXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsx
LDMgQEAKIAotRkFJTCB0ZXh0QmFzZWxpbmUgbWlkZGxlIGlzIHRoZSBtaWRkbGUgb2YgdGhlIGVt
IHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRG
YWNlCitGQUlMIHRleHRCYXNlbGluZSBtaWRkbGUgaXMgdGhlIG1pZGRsZSBvZiB0aGUgZW0gc3F1
YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFu
bmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50b3Aud29y
a2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRv
cC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGUyNmYxYjZmOGEzNDNiMGRhNTM1OWFlZTQ4MTY5
YjQ3ZmI2MjcwYWEuLjgwZTk4ZmIyNWI2OTQzYjNjODI5NGRjMjJlM2JiYjdhNzAyYTM2NDQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRvcC53b3JrZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRv
cC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRCYXNlbGlu
ZSB0b3AgaXMgdGhlIHRvcCBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkg
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4dEJhc2VsaW5lIHRvcCBpcyB0
aGUgdG9wIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBhc3NlcnRfYXBw
cm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1LCA1KSBleHBlY3RlZCAw
ICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCA5YzNmODVlNDkwYTIxMzZkM2Y0NTA1YmIzOTNiYTM5Y2I0OTAyYmJhLi5lZTQyOTFkMmJl
ODM1ODQ0NTAyOGY3YjJlNTM5MGE0YjlmYTRlMDBmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIGZpbGxUZXh0IGhhbmRsZXMgbWF4
V2lkdGggYmFzZWQgb24gbGluZSBzaXplLCBub3QgYm91bmRpbmcgYm94IHNpemUgQ2FuJ3QgZmlu
ZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgZmlsbFRleHQgaGFuZGxlcyBtYXhXaWR0aCBiYXNl
ZCBvbiBsaW5lIHNpemUsIG5vdCBib3VuZGluZyBib3ggc2l6ZQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRmYWNlLndvcmtlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRm
YWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNmI5MmMzOGYzMjIyMjk4Y2E4YWE4ZWUyMTk2
YzM4ZTE0YTdiOWM3OC4uYjJjZTI3MWJmMTAxZTNjOWI2MmI1OGJkMTg5Mjk3NTkxZDc5YTc2ZCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250
ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMg
QEAKIAotRkFJTCBmaWxsVGV4dCB3b3JrcyBvbiBAZm9udC1mYWNlIGZvbnRzIENhbid0IGZpbmQg
dmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIGZpbGxUZXh0IHdvcmtzIG9uIEBmb250LWZhY2UgZm9u
dHMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90
aW5wYWdlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5m
b250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBlNzkzNTdhYWIyNWY2
MThlZjVhN2UwNGJmYmE0ODU3MGU5NGYyZWNiLi4xYWI5OTFmMjJlZWRlNWIyOGYzMTE5YzlmNTJm
YTdkODFkODNjMzIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250
ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwz
ICsxLDMgQEAKIAotRkFJTCBAZm9udC1mYWNlIGZvbnRzIHNob3VsZCB3b3JrIGV2ZW4gaWYgdGhl
eSBhcmUgbm90IHVzZWQgaW4gdGhlIHBhZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UK
K1BBU1MgQGZvbnQtZmFjZSBmb250cyBzaG91bGQgd29yayBldmVuIGlmIHRoZXkgYXJlIG5vdCB1
c2VkIGluIHRoZSBwYWdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmZvbnRmYWNlLnJlcGVhdC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMGY3NWVh
OTIxMjlkZDRmMmFmOWQyZjUzZjFlZmI2NGYxOTkxMTY0NS4uMzllZGE0ZGMyZmY2NjNlMWYyODM2
ZTU2N2NlNzYzODY1NTY5MWQ5NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEs
MyArMSwzIEBACiAKLUZBSUwgRHJhdyB3aXRoIHRoZSBmb250IGltbWVkaWF0ZWx5LCB0aGVuIHdh
aXQgYSBiaXQgdW50aWwgYW5kIGRyYXcgYWdhaW4uIChUaGlzIGNyYXNoZXMgc29tZSB2ZXJzaW9u
IG9mIFdlYktpdC4pIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIERyYXcgd2l0
aCB0aGUgZm9udCBpbW1lZGlhdGVseSwgdGhlbiB3YWl0IGEgYml0IHVudGlsIGFuZCBkcmF3IGFn
YWluLiAoVGhpcyBjcmFzaGVzIHNvbWUgdmVyc2lvbiBvZiBXZWJLaXQuKQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCBkMzg5OTQwYWY2NWY0N2RhM2FiZjJlZWM0ZDdhOWI5NjE1MWQzZmVkLi5hMTdlZWY1
MDkyYjdkMDM4MjdhY2Q2NWI3OTc4ZWU0YjliZTIwZGMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEs
MyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1Mg
MmQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMu
d29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmJh
c2ljLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOWEzMjQwMjc1ZWQzODdkYmRmZDVkMjVjMWY1
YTI3YTlkZTY5Yzc1YS4uMWVkNDRmOGY3ZGJjYjE2MzRiZjQ5YTczYmY5NTk1Yjk3OTIwOThjYyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNp
Yy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFUrMDAyMCBpcyBy
ZW5kZXJlZCB0aGUgY29ycmVjdCBzaXplICgxZW0gd2lkZSkgQ2FuJ3QgZmluZCB2YXJpYWJsZTog
Rm9udEZhY2UKK1BBU1MgVSswMDIwIGlzIHJlbmRlcmVkIHRoZSBjb3JyZWN0IHNpemUgKDFlbSB3
aWRlKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xs
YXBzZS5lbmQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDZlNWY4MzJkMTQy
ZTBlNzU1MjQ5MjhlNTI3NGViOTBhMGEzMmNiNmEuLjQyZjU3MGYwYjllNzhkOTQ3YzBlMGJjNjRh
YjY4MTY4YzM2NjU1MmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNw
YWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXQgdGhlIGVuZCBvZiBhIGxpbmUg
YXJlIGNvbGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZB
SUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgZW5kIG9mIGEgbGluZSBhcmUgY29sbGFwc2VkIChw
ZXIgQ1NTKSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0
ICg3NSwgMjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5v
bnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggYWU0NjE1ZGU0Y2M0MDI5NzYwZDE3NWM5
MDc0Mjk3OWVlNTUzMDM1Yy4uOWU1ZDQ3MDQ0OTUyOTM5MTdjZDVlZTU2NDZmNDhjOGM5OGRhNmJk
OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uu
bm9uc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsMyBAQAogCi1GQUlMIE5vbi1zcGFjZSBjaGFyYWN0ZXJzIGFyZSBub3QgY29udmVydGVkIHRv
IFUrMDAyMCBhbmQgY29sbGFwc2VkIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNT
IE5vbi1zcGFjZSBjaGFyYWN0ZXJzIGFyZSBub3QgY29udmVydGVkIHRvIFUrMDAyMCBhbmQgY29s
bGFwc2VkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNv
bGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDk0YTAw
NDNhMGEzMzc5ZTEyOGViMTY0MGI0ZjY0MjhiMmQ3MTM5ZGEuLjY4MmNmYjkzOWIwZjg1MDEwYjdk
MzNlNTg0MjEwNTZhNTFiNDgwMTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LnNwYWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0
ZWQgdG8gVSswMDIwLCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIw
LCBhbmQgY29sbGFwc2VkIChwZXIgQ1NTKSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5u
ZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uu
c3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNw
YWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOTRhMDA0M2EwYTMz
NzllMTI4ZWIxNjQwYjRmNjQyOGIyZDcxMzlkYS4uNjgyY2ZiOTM5YjBmODUwMTBiN2QzM2U1ODQy
MTA1NmE1MWI0ODAxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3Bh
Y2UuY29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBV
KzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRG
YWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAsIGFuZCBj
b2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0
aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53
b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29s
bGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1MDg2OGZlOTE5ODBjYTcwYjQw
OWY3NjM3MzllODQwZWY5NmYzZDVkLi43YmNiNTFjY2M3YjljMGExNjA5ZDVlYWNkM2QzNGRjMjgx
ODEyODRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xs
YXBzZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyAr
MSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgc3RhcnQgb2YgYSBsaW5lIGFy
ZSBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlM
IFNwYWNlIGNoYXJhY3RlcnMgYXQgdGhlIHN0YXJ0IG9mIGEgbGluZSBhcmUgY29sbGFwc2VkIChw
ZXIgQ1NTKSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0
ICgyNSwgMjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMzEyMGZjYjhmYWRkZDllNTQyNjc0NWRkNTU2Zjlk
NDM3OWJmZTdiNy4uODI1NGNlNjc0MjQ4NjIyZWUwN2I0NGM3ZDlmOGI2Y2RmNzYxY2Y2MiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gu
d29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5h
Y3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1G
QUlMIFRlc3RpbmcgYWN0dWFsQm91bmRpbmdCb3ggZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIGFjdHVhbEJvdW5kaW5nQm94IGZv
ciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0X2VxdWFsczogTWF0aC5hYnMoY3R4Lm1lYXN1cmVUZXh0
KCdBJykuYWN0dWFsQm91bmRpbmdCb3hEZXNjZW50KSA9PT0gMCAoZ290IDFbbnVtYmVyXSwgZXhw
ZWN0ZWQgMFtudW1iZXJdKSBleHBlY3RlZCAwIGJ1dCBnb3QgMQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCBmNGEwODQwM2MxZWI4YjQxYWM0YmE1ODA2MmE0MzUyODU3NTU1NWFiLi45MzhjNzk5
MTFkMDZlZjUxNGQ3YjFjOWM2YTQ1NDE1MWExYmY1N2I1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyB3aWR0aCBhZHZhbmNlcyBmb3IgT2Zmc2Ny
ZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFRlc3Rpbmcgd2lk
dGggYWR2YW5jZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAnY3R4Lm1lYXN1cmVUZXh0KCdIZWxsbycpLmFkdmFuY2VzWzBdJykKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNlbGluZXMu
d29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzZDI5OTBjMTFlOTZlMTcxODU3ODkzNGNmMzJjYWI2
MzQ0Nzk2YzcxLi5lMWQyMjkzODRkMWE3MDY1MDJlNTE4NDI5MmY1N2Q4MzQ0YzQ5MjdjIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNlbGluZXMud29ya2VyLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNlbGluZXMu
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGJhc2Vs
aW5lcyBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitG
QUlMIFRlc3RpbmcgYmFzZWxpbmVzIGZvciBPZmZzY3JlZW5DYW52YXMgY3R4Lm1lYXN1cmVUZXh0
KCdBJykuZ2V0QmFzZWxpbmVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2N0eC5tZWFzdXJlVGV4
dCgnQScpLmdldEJhc2VsaW5lcygpJywgJ2N0eC5tZWFzdXJlVGV4dCgnQScpLmdldEJhc2VsaW5l
cycgaXMgdW5kZWZpbmVkKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVh
c3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDg1YTcyY2VhMTcx
OTNmYmYxMDhlYmY0YjQ2MTNmZTllOTI1OWQwZDAuLmFjYWZhZGY4NjFjMDdmYTdmZmY1MWYzMDFm
YTdlMTlmZGViYWYxZmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAog
Ci1GQUlMIFRlc3RpbmcgZW1IZWlnaHRzIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2
YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGluZyBlbUhlaWdodHMgZm9yIE9mZnNjcmVlbkNh
bnZhcyBhc3NlcnRfZXF1YWxzOiBjdHgubWVhc3VyZVRleHQoJ0EnKS5lbUhlaWdodEFzY2VudCA9
PT0gMzcuNSAoZ290IDg1W251bWJlcl0sIGV4cGVjdGVkIDM3LjVbbnVtYmVyXSkgZXhwZWN0ZWQg
MzcuNSBidXQgZ290IDg1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFz
dXJlLmZvbnRCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXgg
MTRjN2RhNDRiZDBlZGNmNjgxYWY3YWYzZGM2YjZlN2ZhMTVhNDY1MC4uMjViYWNlM2VmY2YxN2Zm
ZTI3YjA1MzE3OWZkZGQwZmU5MzEyMDNjZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBmb250Qm91bmRpbmdCb3ggZm9y
IE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBUZXN0
aW5nIGZvbnRCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5iYXNpYy53b3JrZXItZXhw
ZWN0ZWQudHh0CmluZGV4IDVjNzgwYzllNGU1MTg2MWIwMWRhMzBjZjE0ZDczODUyMzQzOWEyOTMu
Ljk0MmY5MTQxMDU1NTkyNzc5Yjg0M2FiNjZhNTE1NmM5YjJmMDdkMDUgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2Vy
LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUaGUgd2lkdGggb2YgY2hhcmFj
dGVyIGlzIHNhbWUgYXMgZm9udCB1c2VkIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2
YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgVGhlIHdpZHRoIG9mIGNoYXJhY3RlciBpcyBzYW1lIGFz
IGZvbnQgdXNlZCBmb3IgT2Zmc2NyZWVuQ2FudmFzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53b3JrZXItZXhwZWN0ZWQudHh0
CmluZGV4IDUwMGQ3MjdkM2I2N2RjOTg2YWZlZjRiOWQyZjJhNzQ2OTllMWQzZWUuLjY4N2JjNGYz
NWZjZjRjY2Q3NDc3NDExYTc2MjMzNDNiMzBiZGU5MzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUaGUgZW1wdHkgc3RyaW5nIGhhcyB6ZXJvIHdp
ZHRoIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BB
U1MgVGhlIGVtcHR5IHN0cmluZyBoYXMgemVybyB3aWR0aCBmb3IgT2Zmc2NyZWVuQ2FudmFzCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5z
cGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDkzZDcxMWM0YmI5NDcyMjA0YzdmMTQzNWM4
YmUwMGZkYzdiMjZiMmEuLjA1MzcyOTAwZDU2NmY3OWI0NTVjM2VhNTUyNTIwNjUyNWZkMjAxY2Eg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndv
cmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lk
dGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFj
ZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQgKHBlciBD
U1MpIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZB
SUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCBhbmQgY29sbGFwc2Vk
IChwZXIgQ1NTKSBmb3IgT2Zmc2NyZWVuQ2FudmFzIGFzc2VydF9lcXVhbHM6IGN0eC5tZWFzdXJl
VGV4dCgnQSBceDA5XHgwYVx4MGNceDBkICBceDA5XHgwYVx4MGNceDBkQicpLndpZHRoID09PSAx
NTAgKGdvdCA2NTBbbnVtYmVyXSwgZXhwZWN0ZWQgMTUwW251bWJlcl0pIGV4cGVjdGVkIDE1MCBi
dXQgZ290IDY1MAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426796</attachid>
            <date>2021-04-22 03:51:17 -0700</date>
            <delta_ts>2021-04-22 04:17:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210422115115.patch</filename>
            <type>text/plain</type>
            <size>88569</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NDI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2M1M2NlZGNhOTg1YmRj
YTU2MjUwMGU4ODE1OTRjOTZiM2Q2ZGFmZi4uYzNhZTIxYjNhNDI3MWQ1OGM2MTZkYzNhZmU4OGU0
ZGY5ZTJkZDVhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyMiBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBU
byBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGltcGxl
bWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJsZSBv
biBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFpbGFi
bGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAgICBt
YWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCByZWJh
c2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6CisgICAg
ICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0LmNw
cCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGluZ0JhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgVXNlIHRoZSBTY3JpcHRFeGVjdXRp
b25Db250ZXh0J3MgRm9udENhY2hlIGlmIHBvc3NpYmxlIHdoZW4gbG9hZGluZyBmb250cy4KKwor
ICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NG
b250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjptYXRjaGluZ0ZhY2VzRXhjbHVkaW5nUHJl
aW5zdGFsbGVkRm9udHMpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1ZVBvb2wg
YW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9yRmFtaWx5
UmVnaXN0ZXJlZC4gQWxzbyBjbGFyaWZ5IGEgdmFndWVseS1uYW1lZAorICAgICAgICAgIHZhcmlh
YmxlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0ZvbnRGYWNlU291cmNlOjpDU1NGb250RmFjZVNvdXJjZSk6CisgICAgICAgICAg
VXNlIEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nIGluc3RlYWQgb2YgbWFraW5nIGFzc3VtcHRp
b25zIGFib3V0IHRoZQorICAgICAgICAgIHJlcXVlc3Qgc3RhdGUgb24gY29uc3RydWN0aW9uLgor
CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRGYWNl
OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udEZhY2U6OmRpc3BsYXkgY29uc3QpOgor
ICAgICAgICAqIGNzcy9Gb250RmFjZS5oOgorICAgICAgICAqIGNzcy9Gb250RmFjZS5pZGw6Cisg
ICAgICAgICAgQ29uc3RydWN0IHdpdGggYSBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGluc3RlYWQg
b2YgYSBEb2N1bWVudCBhbmQKKyAgICAgICAgICBtYWtlIGF2YWlsYWJsZSBmb3IgV29ya2Vycy4K
KworICAgICAgICAqIGNzcy9Gb250RmFjZVNldC5pZGw6CisgICAgICAgICAgRXhwb3NlIHRvIFdv
cmtlcnMuCisKKyAgICAgICAgKiBsb2FkZXIvRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpGb250TG9hZFJlcXVlc3Q6OmlzV29ya2VyRm9udExvYWRSZXF1ZXN0IGNvbnN0KToK
KyAgICAgICAgICBBZGQgaXNQZW5kaW5nIGZ1bmN0aW9uIGFuZCBuZXcgdHlwZSBXb3JrZXJGb250
TG9hZFJlcXVlc3QuCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRGb250OjpjcmVhdGVDdXN0b21Gb250RGF0YSk6CisgICAg
ICAgICAgVXNlIGNvbnZlcnRXT0ZGVG9TZm50SWZOZWNlc3NhcnkoKS4KKworICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaDoKKyAgICAgICAgICBJbXBsZW1lbnQg
Rm9udExvYWRSZXF1ZXN0Ojppc1BlbmRpbmcuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpGb250OjpGb250KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OnN5c3RlbUZhbGxi
YWNrRm9udEZvckNoYXJhY3RlciBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udC5oOgorICAgICAgICAgIEFkZCBhbiBvcHRpb25hbCBGb250Q2FjaGUgcGFyYW1ldGVyIGZv
ciB1c2Ugd2l0aCB2ZXJ0aWNhbCBmb250IGRhdGEKKyAgICAgICAgICByZXRyaWV2YWwgYW5kIGFk
ZCBhIEZvbnRDYWNoZSBwYXJhbWV0ZXIgdG8KKyAgICAgICAgICBzeXN0ZW1GYWxsYmFja0ZvbnRG
b3JDaGFyYWN0ZXIgaW5zdGVhZCBvZiB1c2luZyB0aGUgc2luZ2xldG9uLgorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRD
YWNoZTo6Zm9udEZvclBsYXRmb3JtRGF0YSk6CisgICAgICAgICAgUGFzcyBGb250Q2FjaGUgcGFy
YW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250Q2FjaGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYWNoZTo6Zm9udENhY2hlRmFs
bGluZ0JhY2tUb1NpbmdsZXRvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
c2NhZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGU6OnVwZGF0ZSBjb25zdCk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvSGFyZmJ1enpORy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2FkZTo6Zm9udEZvckNvbWJpbmluZ0NoYXJh
Y3RlclNlcXVlbmNlIGNvbnN0KToKKyAgICAgICAgICBSZW5hbWUgZm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbiAtPiBmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uCisKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRDYXNjYWRlRm9udHM6OnJlYWxpemVGYWxsYmFja1Jhbmdlc0F0KToKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDYXNjYWRlRm9udHM6OmdseXBoRGF0YUZvclN5c3RlbUZhbGxiYWNrKToK
KyAgICAgICAgICBVc2UgZmFtaWx5TmFtZXNEYXRhIGluc3RlYWQgb2YgZmFtaWx5TmFtZXMgYW5k
IHBhc3MgdGhlIEZvbnRDYWNoZQorICAgICAgICAgIHBhcmFtZXRlciB3aGVuIGNhbGxpbmcgZ2x5
cGhEYXRhRm9yU3lzdGVtRmFsbGJhY2sgdG8gbWFrZSB0aGlzIHNhZmUKKyAgICAgICAgICB0byB1
c2UgaW4gYSBXb3JrZXIuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250VGFnZ2Vk
U2V0dGluZ3MuaDoKKyAgICAgICAgICBBZGQgbWlzc2luZyB3dGYvSGFzaGVyLmggaW5jbHVkZS4K
KworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmNvbnZlcnRXT0ZGVG9TZm50SWZOZWNlc3NhcnkpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0Lmg6CisgICAgICAgICAgQWRkIHV0aWxpdHkg
ZnVuY3Rpb24gdG8gY29udmVydCBXT0ZGIGZvbnRzIG9uIG5vbi1Db2NvYSBwbGF0Zm9ybXMuCisK
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHA6IEFkZGVkLgorICAg
ICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpXb3JrZXJGb250TG9hZFJlcXVl
c3QpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0Ojpsb2FkKToKKyAg
ICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3VzdG9tRm9udERh
dGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpjcmVhdGVGb250
KToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6c2V0Q2xpZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2
ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5p
c2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlk
RmFpbCk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaDogQWRkZWQu
CisgICAgICAgICAgSW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdCBmb3IgV29ya2Vycy4KKworICAg
ICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyR2xvYmFsU2NvcGU6OmZvbnRzKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2Jh
bFNjb3BlOjpmb250TG9hZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyR2xvYmFs
U2NvcGU6OmJlZ2luTG9hZGluZ0ZvbnRTb29uKToKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckds
b2JhbFNjb3BlLmg6CisgICAgICAgICAgSW1wbGVtZW50IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQg
Zm9udC1sb2FkaW5nIHJlbGF0ZWQgZnVuY3Rpb25zLgorCisgICAgICAgICogd29ya2Vycy9Xb3Jr
ZXJHbG9iYWxTY29wZS5pZGw6CisgICAgICAgICAgSW5jbHVkZSBGb250RmFjZVNvdXJjZS4KKwog
MjAyMS0wNC0yMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtpT1NdIFdlYiBwcm9jZXNzZXMgcmVjcmVhdGVkIGFmdGVyIGNyYXNoaW5nIGFyZSBu
b3QgY3JlYXRlZCB3aXRoIHRoZSByaWdodCBjb250ZW50U2l6ZUNhdGVnb3J5CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5j
bWFrZQppbmRleCBjMDRmODA0ZWQ5MzdjNjcwYWRlZjdiM2I2ODlkODk1ZGZhN2U3YjAwLi40OTk5
YmVjYWM2NTdkZGJhZGZjZDdkNWVmMzEwYTczMGZiNWMzN2NhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UK
QEAgLTE2NTQsNiArMTY1NCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURF
UlMKICAgICB3b3JrZXJzL1NjcmlwdEJ1ZmZlci5oCiAgICAgd29ya2Vycy9Xb3JrZXJBbmltYXRp
b25Db250cm9sbGVyLmgKICAgICB3b3JrZXJzL1dvcmtlckRlYnVnZ2VyUHJveHkuaAorICAgIHdv
cmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKICAgICB3b3JrZXJzL1dvcmtlckxvYWRlclBy
b3h5LmgKICAgICB3b3JrZXJzL1dvcmtlck9yV29ya2xldFRocmVhZC5oCiAgICAgd29ya2Vycy9X
b3JrZXJSdW5Mb29wLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIv
U291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggYmRiMmU1NTFhMWE5MjFkMzkyMTI1ZDk4
ODFlYzBkNDM2OTg0YmQwYi4uMTE5YzY5N2UwMjE2NmE4NTczNTgwOGQ3ZDFlN2FhOWM0MGQ1YjU0
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dl
YkNvcmUvU291cmNlcy50eHQKQEAgLTI2NTQsNiArMjY1NCw3IEBAIHdvcmtlcnMvV29ya2VyLmNw
cAogd29ya2Vycy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmNwcAogd29ya2Vycy9Xb3JrZXJD
b25zb2xlQ2xpZW50LmNwcAogd29ya2Vycy9Xb3JrZXJFdmVudExvb3AuY3BwCit3b3JrZXJzL1dv
cmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCiB3
b3JrZXJzL1dvcmtlckluc3BlY3RvclByb3h5LmNwcAogd29ya2Vycy9Xb3JrZXJMb2NhdGlvbi5j
cHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agppbmRleCA0Y2E1ODkyN2M3ZWI0MTI3NWVlNzUyZDI0MmEwMTI0YzA2MWIyMDJiLi4yZWFhY2Zi
NzdmNTEwMDJjOGVhZTI5ODYzMGE5NjJiZWNiMjNiN2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNDMyLDYgKzM0MzIsNyBA
QAogCQlBN0NGQjNEMjBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0NGQjNEMDBCN0VEMTBBMDA3MEMz
MkQgLyogRHJhZ0ltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJQTdEMjBGNjMxMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZv
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0QyMEY2
MTEwN0Y0MDY5MDBBODAzOTIgLyogSlNXZWJHTEFjdGl2ZUluZm8uaCAqLzsgfTsKIAkJQTdEMjBG
NkQxMDdGNDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNkIxMDdGNDM4QjAwQTgwMzkyIC8q
IFdlYkdMQWN0aXZlSW5mby5oICovOyB9OworCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyog
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBN0Q2QjM0NzBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJQTdENkIzNDkwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdENkIzNDcwRjYxMTA0
NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3REJGOERFMTI3NjkxOUMwMDZCNjAwOCAvKiBU
ZXh0Q2hlY2tpbmdIZWxwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE3REJGOERDMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIu
aCAqLzsgfTsKIAkJQTgwRDY3MDgwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBs
YXRmb3JtUHJpdmF0ZUNHLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBODBENjcwNzBFOUU5REVCMDBFNDIwRjAgLyogR3JhcGhpY3NDb250ZXh0UGxhdGZv
cm1Qcml2YXRlQ0cuaCAqLzsgfTsKQEAgLTEyODQ4LDYgKzEyODQ5LDggQEAKIAkJQTdEMjBGNjAx
MDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJbmZvLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTdEMjBGNjExMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3Rp
dmVJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJ
bmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDIwRjZCMTA3RjQzOEIwMEE4
MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV2ViR0xBY3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZC
MzQ3MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1ZXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZCMzQ4MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJG
b250TG9hZFJlcXVlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
V29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2FkZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDgwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNj
cmlwdExvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3Jr
ZXJTY3JpcHRMb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0RCRjhE
QjEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRDaGVja2luZ0hlbHBlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xOTQxOSw2ICsxOTQyMiw4IEBACiAJCQkJQTUyQjM0OUMx
RkE0MTZGODAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCAqLywKIAkJCQk5QjBBQkNB
MzIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmNwcCAqLywKIAkJCQk5QjBBQkNB
NDIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmggKi8sCisJCQkJQTdENkIzNDgw
RjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgKi8sCisJCQkJQTdE
NkIzNDcwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oICovLAogCQkJ
CTJFNDM0NjM2MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5jcHAgKi8sCiAJ
CQkJMkU0MzQ2MzcwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmggKi8sCiAJ
CQkJMkU0MzQ2MzgwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmlkbCAqLywK
QEAgLTM1ODMxLDYgKzM1ODM2LDcgQEAKIAkJCQlBNUI4MUNDRTFGQUE0NERFMDAzN0QxRTYgLyog
V29ya2VyRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTUyQjM0OUUxRkE0MTcw
MzAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkx
RTBEREM0MjMwQjQxRjEwMDE5RTFFMyAvKiBXb3JrZXJET01EZWJ1Z2dlckFnZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQkyRTQzNDY0OTBGNTQ2QTgyMDBCMEYxQkEgLyog
V29ya2VyR2xvYmFsU2NvcGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRDEyOUNFMUYzRDBFRjYw
MEQxNUU0NyAvKiBXb3JrZXJHbG9iYWxTY29wZUNhY2hlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MkU0MzQ2NEIwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlUHJveHkuaCBpbiBI
ZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAKaW5kZXggMWFkODA0NzdhYmEw
ZDM2NjdkMGRlNTYzYzkyZGNlYmU4YTllYzM5YS4uYjc3ZDExZmM2NDVkOTE4YTc1NjhjN2RkMzFk
MjE3ZmUxOTZmYzg1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuY3BwCkBAIC0zOTYsNiAr
Mzk2LDEzIEBAIERvY3VtZW50KiBDU1NGb250RmFjZTo6ZG9jdW1lbnQoKQogICAgIHJldHVybiBu
dWxscHRyOwogfQogCitGb250Q2FjaGUmIENTU0ZvbnRGYWNlOjpmb250Q2FjaGVGYWxsaW5nQmFj
a1RvU2luZ2xldG9uKCkKK3sKKyAgICBpZiAobV93cmFwcGVyICYmIG1fd3JhcHBlci0+c2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm4gbV93cmFwcGVyLT5zY3JpcHRFeGVj
dXRpb25Db250ZXh0KCktPmZvbnRDYWNoZSgpOworICAgIHJldHVybiBGb250Q2FjaGU6OnNpbmds
ZXRvbigpOworfQorCiBib29sIENTU0ZvbnRGYWNlOjpjb21wdXRlRmFpbHVyZVN0YXRlKCkgY29u
c3QKIHsKICAgICBpZiAoc3RhdHVzKCkgPT0gU3RhdHVzOjpGYWlsdXJlKQpAQCAtNjY5LDggKzY3
Niw5IEBAIFJlZlB0cjxGb250PiBDU1NGb250RmFjZTo6Zm9udChjb25zdCBGb250RGVzY3JpcHRp
b24mIGZvbnREZXNjcmlwdGlvbiwgYm9vbCBzeW50CiAgICAgICAgIHN3aXRjaCAoc291cmNlLT5z
dGF0dXMoKSkgewogICAgICAgICBjYXNlIENTU0ZvbnRGYWNlU291cmNlOjpTdGF0dXM6OlBlbmRp
bmc6CiAgICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6TG9hZGluZzogewor
ICAgICAgICAgICAgYXV0byYgZm9udENhY2hlID0gZm9udENhY2hlRmFsbGluZ0JhY2tUb1Npbmds
ZXRvbigpOwogICAgICAgICAgICAgRm9udDo6VmlzaWJpbGl0eSB2aXNpYmlsaXR5ID0gV2ViQ29y
ZTo6dmlzaWJpbGl0eShzdGF0dXMoKSwgZm9udExvYWRUaW1pbmcoKSk7Ci0gICAgICAgICAgICBy
ZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRDYWNoZTo6c2luZ2xldG9uKCkubGFzdFJlc29ydEZhbGxi
YWNrRm9udChmb250RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpM
b2NhbCwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOworICAgICAgICAgICAg
cmV0dXJuIEZvbnQ6OmNyZWF0ZShmb250Q2FjaGUubGFzdFJlc29ydEZhbGxiYWNrRm9udChmb250
RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpMb2NhbCwgJmZvbnRD
YWNoZSwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOwogICAgICAgICB9CiAg
ICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6U3VjY2VzczoKICAgICAgICAg
ICAgIGlmIChhdXRvIHJlc3VsdCA9IHNvdXJjZS0+Zm9udChmb250RGVzY3JpcHRpb24sIHN5bnRo
ZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgbV9mZWF0dXJlU2V0dGluZ3MsIG1fZm9udFNlbGVj
dGlvbkNhcGFiaWxpdGllcykpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9u
dEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCmluZGV4IGI1ZTQ5NzVk
MWQ1OTIwOWQ4NjJiZDg0NjJkZDdjZGZmZjZmNTlkYmQuLmYzZjAxNTdkMTAyMjRiNmE2ZTA0ZGYy
YjM3NjUxZTY2YjY0MTAxOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250
RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCkBAIC00Niw2ICs0
Niw3IEBAIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKIGNsYXNzIENTU1NlZ21lbnRlZEZvbnRGYWNl
OwogY2xhc3MgQ1NTVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZUxpc3Q7CitjbGFzcyBGb250Q2FjaGU7
CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250OwogY2xhc3MgRm9udEZhY2U7CkBA
IC0xNzIsNiArMTczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHRpbWVvdXRGaXJlZCgpOwogCiAg
ICAgRG9jdW1lbnQqIGRvY3VtZW50KCk7CisgICAgRm9udENhY2hlJiBmb250Q2FjaGVGYWxsaW5n
QmFja1RvU2luZ2xldG9uKCk7CiAKICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtX2ZhbWlsaWVz
OwogICAgIFZlY3RvcjxVbmljb2RlUmFuZ2U+IG1fcmFuZ2VzOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NG
b250RmFjZVNldC5jcHAKaW5kZXggZjBjYWY0OGVmY2NlYmM1ZDEyMzAwMjE4NGMzNmRmM2VhMzA1
MjdjMy4uM2ZhYTg2ZjljMDFkODBhNWI1YmQ1YzEzYjY5ODNjNTdlODI2YTg1OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2VTZXQuY3BwCkBAIC0xMTIsNyArMTEyLDcgQEAgdm9pZCBDU1NG
b250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0
IFN0cmluZyYgZmFtaWwKICAgICBBbGxvd1VzZXJJbnN0YWxsZWRGb250cyBhbGxvd1VzZXJJbnN0
YWxsZWRGb250cyA9IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXM7CiAgICAgaWYgKG1fb3du
aW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCiAgICAgICAgIGFsbG93
VXNlckluc3RhbGxlZEZvbnRzID0gbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKS0+c2V0dGluZ3NWYWx1ZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250
cyA/IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXMgOiBBbGxvd1VzZXJJbnN0YWxsZWRGb250
czo6Tm87Ci0gICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXM+IGNhcGFiaWxpdGll
cyA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuZ2V0Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllc0lu
RmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKKyAgICBWZWN0b3I8
Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllcz4gY2FwYWJpbGl0aWVzID0gbV9vd25pbmdGb250U2Vs
ZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+Zm9udENhY2hlKCkuZ2V0Rm9udFNlbGVj
dGlvbkNhcGFiaWxpdGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZv
bnRzKTsKICAgICBpZiAoY2FwYWJpbGl0aWVzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwog
CkBAIC0xMjEsNyArMTIxLDcgQEAgdm9pZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250
RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICAgICAgUmVm
PENTU0ZvbnRGYWNlPiBmYWNlID0gQ1NTRm9udEZhY2U6OmNyZWF0ZShtX293bmluZ0ZvbnRTZWxl
Y3Rvci5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0ciwgdHJ1ZSk7CiAgICAgICAgIAogICAgICAgICBS
ZWY8Q1NTVmFsdWVMaXN0PiBmYW1pbHlMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNl
cGFyYXRlZCgpOwotICAgICAgICBmYW1pbHlMaXN0LT5hcHBlbmQoQ1NTVmFsdWVQb29sOjpzaW5n
bGV0b24oKS5jcmVhdGVGb250RmFtaWx5VmFsdWUoZmFtaWx5TmFtZSkpOworICAgICAgICBmYW1p
bHlMaXN0LT5hcHBlbmQobV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKS0+Y3NzVmFsdWVQb29sKCkuY3JlYXRlRm9udEZhbWlseVZhbHVlKGZhbWlseU5hbWUpKTsK
ICAgICAgICAgZmFjZS0+c2V0RmFtaWxpZXMoZmFtaWx5TGlzdC5nZXQoKSk7CiAgICAgICAgIGZh
Y2UtPnNldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMoaXRlbSk7CiAgICAgICAgIGZhY2UtPmFk
b3B0U291cmNlKG1ha2VVbmlxdWU8Q1NTRm9udEZhY2VTb3VyY2U+KGZhY2UuZ2V0KCksIGZhbWls
eU5hbWUpKTsKQEAgLTM3Niw5ICszNzYsOSBAQCBFeGNlcHRpb25PcjxWZWN0b3I8c3RkOjpyZWZl
cmVuY2Vfd3JhcHBlcjxDU1NGb250RmFjZT4+PiBDU1NGb250RmFjZVNldDo6bWF0Y2hpbgogICAg
IFZlY3RvcjxBdG9tU3RyaW5nPiBmYW1pbHlPcmRlcjsKICAgICBmb3IgKGF1dG8mIGZhbWlseVJh
dyA6IGZvbnQtPmZhbWlseSkgewogICAgICAgICBBdG9tU3RyaW5nIGZhbWlseUF0b207Ci0gICAg
ICAgIFdURjo6c3dpdGNoT24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgaWRlbnQpIHsKLSAg
ICAgICAgICAgIGlmIChpZGVudCAhPSBDU1NWYWx1ZVdlYmtpdEJvZHkpCi0gICAgICAgICAgICAg
ICAgZmFtaWx5QXRvbSA9IGZhbWlseU5hbWVzRGF0YS0+YXQoQ1NTUHJvcGVydHlQYXJzZXJIZWxw
ZXJzOjpnZW5lcmljRm9udEZhbWlseUluZGV4KGlkZW50KSk7CisgICAgICAgIFdURjo6c3dpdGNo
T24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgZmFtaWx5S2V5d29yZCkgeworICAgICAgICAg
ICAgaWYgKGZhbWlseUtleXdvcmQgIT0gQ1NTVmFsdWVXZWJraXRCb2R5KQorICAgICAgICAgICAg
ICAgIGZhbWlseUF0b20gPSBmYW1pbHlOYW1lc0RhdGEtPmF0KENTU1Byb3BlcnR5UGFyc2VySGVs
cGVyczo6Z2VuZXJpY0ZvbnRGYW1pbHlJbmRleChmYW1pbHlLZXl3b3JkKSk7CiAgICAgICAgICAg
ICBlbHNlIHsKICAgICAgICAgICAgICAgICBBU1NFUlQobV9vd25pbmdGb250U2VsZWN0b3IgJiYg
bV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAgICAgICAg
ICAgICAgICAgZmFtaWx5QXRvbSA9IG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRp
b25Db250ZXh0KCktPnNldHRpbmdzVmFsdWVzKCkuZm9udEdlbmVyaWNGYW1pbGllcy5zdGFuZGFy
ZEZvbnRGYW1pbHkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFj
ZVNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwCmlu
ZGV4IGI2N2U4ZTY2NmNmOWJjYTk1OGEyM2VkMzcwNjJjODY0NGM2ZmQyMWUuLmQzYTNiMDA2NjRk
NmRmZTg1YWUyYjkwMjZmZWVlMmM5NzY0MDZhMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Zv
bnRGYWNlU291cmNlLmNwcApAQCAtODEsNyArODEsNyBAQCBDU1NGb250RmFjZVNvdXJjZTo6Q1NT
Rm9udEZhY2VTb3VyY2UoQ1NTRm9udEZhY2UmIG93bmVyLCBjb25zdCBTdHJpbmcmIGZhbWlseU5h
bQogICAgIC8vIFRoaXMgbWF5IHN5bmNocm9ub3VzbHkgY2FsbCBmb250TG9hZGVkKCkuCiAgICAg
bV9mb250UmVxdWVzdC0+c2V0Q2xpZW50KHRoaXMpOwogCi0gICAgaWYgKHN0YXR1cygpID09IFN0
YXR1czo6UGVuZGluZyAmJiAhbV9mb250UmVxdWVzdC0+aXNMb2FkaW5nKCkpIHsKKyAgICBpZiAo
c3RhdHVzKCkgPT0gU3RhdHVzOjpQZW5kaW5nICYmICFtX2ZvbnRSZXF1ZXN0LT5pc1BlbmRpbmco
KSkgewogICAgICAgICBzZXRTdGF0dXMoU3RhdHVzOjpMb2FkaW5nKTsKICAgICAgICAgaWYgKCFz
aG91bGRJZ25vcmVGb250TG9hZENvbXBsZXRpb25zKCkpIHsKICAgICAgICAgICAgIGlmIChtX2Zv
bnRSZXF1ZXN0LT5lcnJvck9jY3VycmVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvRm9udEZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAppbmRleCAx
OWQ5YjQ0YWNkNDg1YjMyMzE5Y2U5NTlmNGFkMmQ2NzExNTg0ZjhlLi5hZjQ4MGQwMGIzMWY5Zjg0
ZDAzOWQzMTM1NzkxNmU4OTcxZDYyNWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Rm9udEZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAKQEAgLTYy
LDE0ICs2MiwxNSBAQCB2b2lkIEZvbnRGYWNlOjpzZXRFcnJvclN0YXRlKCkKICAgICBtX2JhY2tp
bmctPnNldEVycm9yU3RhdGUoKTsKIH0KIAotUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRl
KERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmIHNvdXJj
ZSwgY29uc3QgRGVzY3JpcHRvcnMmIGRlc2NyaXB0b3JzKQorUmVmPEZvbnRGYWNlPiBGb250RmFj
ZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0cmluZyYg
ZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2UsIGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlwdG9ycykK
IHsKLSAgICBhdXRvIHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9udEZhY2UoZG9jdW1lbnQuZm9u
dFNlbGVjdG9yKCkpKTsKKyAgICBBU1NFUlQoY29udGV4dC5jc3NGb250U2VsZWN0b3IoKSk7Cisg
ICAgYXV0byByZXN1bHQgPSBhZG9wdFJlZigqbmV3IEZvbnRGYWNlKCpjb250ZXh0LmNzc0ZvbnRT
ZWxlY3RvcigpKSk7CiAgICAgcmVzdWx0LT5zdXNwZW5kSWZOZWVkZWQoKTsKIAogICAgIGJvb2wg
ZGF0YVJlcXVpcmVzQXN5bmNocm9ub3VzTG9hZGluZyA9IHRydWU7CiAKLSAgICBhdXRvIHNldEZh
bWlseVJlc3VsdCA9IHJlc3VsdC0+c2V0RmFtaWx5KGRvY3VtZW50LCBmYW1pbHkpOworICAgIGF1
dG8gc2V0RmFtaWx5UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoY29udGV4dCwgZmFtaWx5KTsK
ICAgICBpZiAoc2V0RmFtaWx5UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3Vs
dC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNzcsMTAgKzc4
LDEwIEBAIFJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQs
IGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAKICAgICBhdXRvIHNvdXJjZUNvbnZlcnNp
b25SZXN1bHQgPSBXVEY6OnN3aXRjaE9uKHNvdXJjZSwKICAgICAgICAgWyZdIChTdHJpbmcmIHN0
cmluZykgLT4gRXhjZXB0aW9uT3I8dm9pZD4gewotICAgICAgICAgICAgYXV0byB2YWx1ZSA9IENT
U1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFjZVNyYyhzdHJpbmcsIENTU1Bh
cnNlckNvbnRleHQoZG9jdW1lbnQpKTsKKyAgICAgICAgICAgIGF1dG8gdmFsdWUgPSBDU1NQcm9w
ZXJ0eVBhcnNlcldvcmtlclNhZmU6OnBhcnNlRm9udEZhY2VTcmMoc3RyaW5nLCBpczxEb2N1bWVu
dD4oY29udGV4dCkgPyBDU1NQYXJzZXJDb250ZXh0KGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0
KSkgOiBIVE1MU3RhbmRhcmRNb2RlKTsKICAgICAgICAgICAgIGlmICghdmFsdWUpCiAgICAgICAg
ICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFN5bnRheEVycm9yIH07Ci0gICAgICAgICAgICBD
U1NGb250RmFjZTo6YXBwZW5kU291cmNlcyhyZXN1bHQtPmJhY2tpbmcoKSwgKnZhbHVlLCAmZG9j
dW1lbnQsIGZhbHNlKTsKKyAgICAgICAgICAgIENTU0ZvbnRGYWNlOjphcHBlbmRTb3VyY2VzKHJl
c3VsdC0+YmFja2luZygpLCAqdmFsdWUsICZjb250ZXh0LCBmYWxzZSk7CiAgICAgICAgICAgICBy
ZXR1cm4geyB9OwogICAgICAgICB9LAogICAgICAgICBbJl0gKFJlZlB0cjxBcnJheUJ1ZmZlclZp
ZXc+JiBhcnJheUJ1ZmZlclZpZXcpIC0+IEV4Y2VwdGlvbk9yPHZvaWQ+IHsKQEAgLTEwMSwzMiAr
MTAyLDMyIEBAIFJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1l
bnQsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAgICAgfQogCiAgICAgLy8gVGhlc2Ug
dGVybmFyaWVzIG1hdGNoIHRoZSBkZWZhdWx0IHN0cmluZ3MgaW5zaWRlIHRoZSBGb250RmFjZURl
c2NyaXB0b3JzIGRpY3Rpb25hcnkgaW5zaWRlIEZvbnRGYWNlLmlkbC4KLSAgICBhdXRvIHNldFN0
eWxlUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHlsZShkb2N1bWVudCwgZGVzY3JpcHRvcnMuc3R5bGUu
aXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLnN0eWxlKTsKKyAgICBhdXRvIHNl
dFN0eWxlUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHlsZShjb250ZXh0LCBkZXNjcmlwdG9ycy5zdHls
ZS5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3R5bGUpOwogICAgIGlmIChz
ZXRTdHlsZVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9y
U3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXRXZWln
aHRSZXN1bHQgPSByZXN1bHQtPnNldFdlaWdodChkb2N1bWVudCwgZGVzY3JpcHRvcnMud2VpZ2h0
LmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOworICAgIGF1dG8g
c2V0V2VpZ2h0UmVzdWx0ID0gcmVzdWx0LT5zZXRXZWlnaHQoY29udGV4dCwgZGVzY3JpcHRvcnMu
d2VpZ2h0LmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOwogICAg
IGlmIChzZXRXZWlnaHRSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5z
ZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8g
c2V0U3RyZXRjaFJlc3VsdCA9IHJlc3VsdC0+c2V0U3RyZXRjaChkb2N1bWVudCwgZGVzY3JpcHRv
cnMuc3RyZXRjaC5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3RyZXRjaCk7
CisgICAgYXV0byBzZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJldGNoKGNvbnRleHQs
IGRlc2NyaXB0b3JzLnN0cmV0Y2guaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3Jz
LnN0cmV0Y2gpOwogICAgIGlmIChzZXRTdHJldGNoUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAg
ICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0Owog
ICAgIH0KLSAgICBhdXRvIHNldFVuaWNvZGVSYW5nZVJlc3VsdCA9IHJlc3VsdC0+c2V0VW5pY29k
ZVJhbmdlKGRvY3VtZW50LCBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUr
MC0xMEZGRkYiX3MgOiBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UpOworICAgIGF1dG8gc2V0VW5p
Y29kZVJhbmdlUmVzdWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2UoY29udGV4dCwgZGVzY3Jp
cHRvcnMudW5pY29kZVJhbmdlLmlzRW1wdHkoKSA/ICJVKzAtMTBGRkZGIl9zIDogZGVzY3JpcHRv
cnMudW5pY29kZVJhbmdlKTsKICAgICBpZiAoc2V0VW5pY29kZVJhbmdlUmVzdWx0Lmhhc0V4Y2Vw
dGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1
cm4gcmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jlc3VsdCA9IHJl
c3VsdC0+c2V0RmVhdHVyZVNldHRpbmdzKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0
dGluZ3MuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5n
cyk7CisgICAgYXV0byBzZXRGZWF0dXJlU2V0dGluZ3NSZXN1bHQgPSByZXN1bHQtPnNldEZlYXR1
cmVTZXR0aW5ncyhjb250ZXh0LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0dGluZ3MuaXNFbXB0eSgp
ID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncyk7CiAgICAgaWYgKHNl
dEZlYXR1cmVTZXR0aW5nc1Jlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQt
PnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0
byBzZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGRvY3VtZW50LCBkZXNjcmlw
dG9ycy5kaXNwbGF5LmlzRW1wdHkoKSA/ICJhdXRvIl9zIDogZGVzY3JpcHRvcnMuZGlzcGxheSk7
CisgICAgYXV0byBzZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGNvbnRleHQs
IGRlc2NyaXB0b3JzLmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3MgOiBkZXNjcmlwdG9ycy5k
aXNwbGF5KTsKICAgICBpZiAoc2V0RGlzcGxheVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAg
ICAgICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAg
LTM5OSwxMyArNDAwLDEzIEBAIFN0cmluZyBGb250RmFjZTo6ZmVhdHVyZVNldHRpbmdzKCkgY29u
c3QKICAgICByZXR1cm4gbGlzdC0+Y3NzVGV4dCgpOwogfQogCi1TdHJpbmcgRm9udEZhY2U6OmRp
c3BsYXkoKSBjb25zdAorU3RyaW5nIEZvbnRGYWNlOjpkaXNwbGF5KFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpIGNvbnN0CiB7CiAgICAgbV9iYWNraW5nLT51cGRhdGVTdHlsZUlmTmVl
ZGVkKCk7CiAgICAgY29uc3QgYXV0byYgbG9hZGluZ0JlaGF2aW9yV3JhcHBlZCA9IG1fYmFja2lu
Zy0+bG9hZGluZ0JlaGF2aW9yKCk7CiAgICAgaWYgKCFsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLmhh
c1ZhbHVlKCkpCiAgICAgICAgIHJldHVybiAiYXV0byJfczsKLSAgICByZXR1cm4gQ1NTVmFsdWVQ
b29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVl
KCkpLT5jc3NUZXh0KCk7CisgICAgcmV0dXJuIGNvbnRleHQuY3NzVmFsdWVQb29sKCkuY3JlYXRl
VmFsdWUobG9hZGluZ0JlaGF2aW9yV3JhcHBlZC52YWx1ZSgpKS0+Y3NzVGV4dCgpOwogfQogCiBh
dXRvIEZvbnRGYWNlOjpzdGF0dXMoKSBjb25zdCAtPiBMb2FkU3RhdHVzCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFj
ZS5oCmluZGV4IGYxYjU1YTgxMTJiODA0MWMxMDQ2NDJjNDBlNjZiZDM2ZGEwM2M3MmEuLjk3N2Yz
YTk5YWM0YTE3NmMwNjYzMGU3YzdkMGFhZGQ5NTAxYjVkNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Gb250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5o
CkBAIC01NCw3ICs1NCw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIAogICAgIHVzaW5nIFNvdXJj
ZSA9IFZhcmlhbnQ8U3RyaW5nLCBSZWZQdHI8SlNDOjpBcnJheUJ1ZmZlcj4sIFJlZlB0cjxKU0M6
OkFycmF5QnVmZmVyVmlldz4+OwotICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShEb2N1
bWVudCYsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMm
KTsKKyAgICBzdGF0aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMmKTsK
ICAgICBzdGF0aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCos
IENTU0ZvbnRGYWNlJik7CiAgICAgdmlydHVhbCB+Rm9udEZhY2UoKTsKIApAQCAtNzIsNyArNzIs
NyBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIHN0cmV0Y2goKSBjb25zdDsKICAgICBTdHJpbmcgdW5p
Y29kZVJhbmdlKCkgY29uc3Q7CiAgICAgU3RyaW5nIGZlYXR1cmVTZXR0aW5ncygpIGNvbnN0Owot
ICAgIFN0cmluZyBkaXNwbGF5KCkgY29uc3Q7CisgICAgU3RyaW5nIGRpc3BsYXkoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCYpIGNvbnN0OwogCiAgICAgZW51bSBjbGFzcyBMb2FkU3RhdHVzIHsgVW5s
b2FkZWQsIExvYWRpbmcsIExvYWRlZCwgRXJyb3IgfTsKICAgICBMb2FkU3RhdHVzIHN0YXR1cygp
IGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKaW5kZXggMzM0NjdhZmIzYjE4NDQzNTk5ZjFj
NmFkYjliZDRlNmNhNDc1NzM5Mi4uNDFmMzU3MjMwMWZhMzRhZjE5NzExNjU5OTk5ZGJjZTdlYTUw
NzM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRsCkBAIC00Myw5ICs0Myw5IEBAIGRpY3Rpb25h
cnkgRm9udEZhY2VEZXNjcmlwdG9ycyB7CiAKIFsKICAgICBBY3RpdmVET01PYmplY3QsCi0gICAg
RXhwb3NlZD1XaW5kb3cKKyAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2Ug
Rm9udEZhY2UgewotICAgIFtDYWxsV2l0aD1Eb2N1bWVudF0gY29uc3RydWN0b3IoRE9NU3RyaW5n
IGZhbWlseSwgKERPTVN0cmluZyBvciBCaW5hcnlEYXRhKSBzb3VyY2UsIG9wdGlvbmFsIEZvbnRG
YWNlRGVzY3JpcHRvcnMgZGVzY3JpcHRvcnMpOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRp
b25Db250ZXh0XSBjb25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCAoRE9NU3RyaW5nIG9yIEJp
bmFyeURhdGEpIHNvdXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNjcmlwdG9ycyBkZXNjcmlwdG9y
cyk7CiAKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmli
dXRlIERPTVN0cmluZyBmYW1pbHk7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlv
bkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3R5bGU7CkBAIC01Myw3ICs1Myw3IEBAIGRp
Y3Rpb25hcnkgRm9udEZhY2VEZXNjcmlwdG9ycyB7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlw
dEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyZXRjaDsKICAgICBbU2V0
dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyB1
bmljb2RlUmFuZ2U7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRd
IGF0dHJpYnV0ZSBET01TdHJpbmcgZmVhdHVyZVNldHRpbmdzOwotICAgIFtTZXR0ZXJDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRpc3BsYXk7Cisg
ICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcg
ZGlzcGxheTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGb250RmFjZUxvYWRTdGF0dXMgc3Rh
dHVzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuaWRsIGIv
U291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlU2V0LmlkbAppbmRleCAwNDJhMGI2ZWYwOTAzZTYw
Y2E3NzNkNDEyYWJhOWUwODBmODk4MGE1Li5mNzM4YjQ3NzE2N2EyMTgwYTMxMGJjNjcyMjU0ZGQx
ZjFiMWJkNGJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZVNldC5pZGwKQEAgLTMwLDcgKzMwLDcg
QEAgZW51bSBGb250RmFjZVNldExvYWRTdGF0dXMgewogCiBbCiAgICAgQWN0aXZlRE9NT2JqZWN0
LAotICAgIEV4cG9zZWQ9V2luZG93CisgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKIF0gaW50
ZXJmYWNlIEZvbnRGYWNlU2V0IDogRXZlbnRUYXJnZXQgewogICAgIFtDYWxsV2l0aD1TY3JpcHRF
eGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihzZXF1ZW5jZTxGb250RmFjZT4gaW5pdGlhbEZh
Y2VzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVz
dC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IGUzMzQ1
YTgyZTQ2Mjg1YTE5YjU0Y2RkYWZmNjIyMThjMDY1ZWUyMWYuLjVkZmFjODJjYjU3ZGE3N2YzYjIw
ODcwYmU2MGMzYzQ5YjM0NjFmMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
b250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1
ZXN0LmgKQEAgLTM1LDkgKzM1LDYgQEAgY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgRm9u
dExvYWRSZXF1ZXN0Owogc3RydWN0IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7
CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBUPiBjbGFzcyBGb250VGFnZ2VkU2V0dGluZ3M7Ci11c2lu
ZyBGb250RmVhdHVyZVNldHRpbmdzID0gRm9udFRhZ2dlZFNldHRpbmdzPGludD47Ci0KIGNsYXNz
IEZvbnRMb2FkUmVxdWVzdENsaWVudCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+Rm9udExvYWRS
ZXF1ZXN0Q2xpZW50KCkgPSBkZWZhdWx0OwpAQCAtNDksNiArNDYsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB+Rm9udExvYWRSZXF1ZXN0KCkgPSBkZWZhdWx0OwogCiAgICAgdmlydHVhbCBjb25z
dCBVUkwmIHVybCgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgaXNQZW5kaW5nKCkgY29u
c3QgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBpc0xvYWRpbmcoKSBjb25zdCA9IDA7CiAgICAgdmly
dHVhbCBib29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCA9IDA7CiAKQEAgLTU4LDYgKzU2LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50
KikgPSAwOwogCiAgICAgdmlydHVhbCBib29sIGlzQ2FjaGVkRm9udExvYWRSZXF1ZXN0KCkgY29u
c3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaXNXb3JrZXJGb250TG9hZFJl
cXVlc3QoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwCmluZGV4IDk3
NDE5ZWVlNzQxOWY4MGFhZGFmZTgyNDU1OTBkZmVkNjRlOTc3MmUuLjViNzE5ZGFjNWRlMmE3OGJl
MDg4NzZhMDZkOWE1N2I4MTJmOWUwNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRGb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkRm9udC5jcHAKQEAgLTEwNCwyMSArMTA0LDkgQEAgYm9vbCBDYWNoZWRGb250OjplbnN1
cmVDdXN0b21Gb250RGF0YShTaGFyZWRCdWZmZXIqIGRhdGEpCiAKIHN0ZDo6dW5pcXVlX3B0cjxG
b250Q3VzdG9tUGxhdGZvcm1EYXRhPiBDYWNoZWRGb250OjpjcmVhdGVDdXN0b21Gb250RGF0YShT
aGFyZWRCdWZmZXImIGJ5dGVzLCBjb25zdCBTdHJpbmcmIGl0ZW1JbkNvbGxlY3Rpb24sIGJvb2wm
IHdyYXBwaW5nKQogewotICAgIHdyYXBwaW5nID0gdHJ1ZTsKLQotI2lmICFQTEFURk9STShDT0NP
QSkKLSAgICBpZiAoaXNXT0ZGKGJ5dGVzKSkgewotICAgICAgICB3cmFwcGluZyA9IGZhbHNlOwot
ICAgICAgICBWZWN0b3I8Y2hhcj4gY29udmVydGVkRm9udDsKLSAgICAgICAgaWYgKCFjb252ZXJ0
V09GRlRvU2ZudChieXRlcywgY29udmVydGVkRm9udCkpCi0gICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLQotICAgICAgICBhdXRvIGJ1ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFdURk1v
dmUoY29udmVydGVkRm9udCkpOwotICAgICAgICByZXR1cm4gY3JlYXRlRm9udEN1c3RvbVBsYXRm
b3JtRGF0YShidWZmZXIsIGl0ZW1JbkNvbGxlY3Rpb24pOwotICAgIH0KLSNlbmRpZgotCi0gICAg
cmV0dXJuIGNyZWF0ZUZvbnRDdXN0b21QbGF0Zm9ybURhdGEoYnl0ZXMsIGl0ZW1JbkNvbGxlY3Rp
b24pOworICAgIGF1dG8gYnVmZmVyID0gbWFrZVJlZlB0cihieXRlcyk7CisgICAgd3JhcHBpbmcg
PSAhY29udmVydFdPRkZUb1NmbnRJZk5lY2Vzc2FyeShidWZmZXIpOworICAgIHJldHVybiBidWZm
ZXIgPyBjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1EYXRhKCpidWZmZXIsIGl0ZW1JbkNvbGxlY3Rp
b24pIDogbnVsbHB0cjsKIH0KIAogUmVmUHRyPEZvbnQ+IENhY2hlZEZvbnQ6OmNyZWF0ZUZvbnQo
Y29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcm
LCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVh
dHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2Fw
YWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IDUzZDExZjNmNjI4Mzc0
Yjk2ZjFhMjJlNjlmYWZkYWFkZGVhZjljNTAuLmI5YjBjZjg2ZWE5YzEzYTU3ZDNhNTEwZGMxN2E5
Zjg4NWFhZDBiYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkRm9udExvYWRSZXF1ZXN0LmgKQEAgLTUxLDYgKzUxLDcgQEAgcHVibGljOgogCiBwcml2YXRl
OgogICAgIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT51cmwo
KTsgfQorICAgIGJvb2wgaXNQZW5kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT5z
dGF0dXMoKSA9PSBDYWNoZWRSZXNvdXJjZTo6U3RhdHVzOjpQZW5kaW5nOyB9CiAgICAgYm9vbCBp
c0xvYWRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPmlzTG9hZGluZygpOyB9CiAg
ICAgYm9vbCBlcnJvck9jY3VycmVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT5lcnJv
ck9jY3VycmVkKCk7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNw
cAppbmRleCBiMTFhODc2OWU4NjBiOTNiMDlkNzMyNDFlNWJlYmQ1ODA4YjYyYjhmLi5mOTkxODNk
N2NjYmI4NTRlNGU0ZmJjYzU1MDlhMzAzYWIzYjUyN2ZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250LmNwcApAQCAtNTgsMTYgKzU4LDI2IEBAIGNvbnN0IGZsb2F0IGVt
cGhhc2lzTWFya0ZvbnRTaXplTXVsdGlwbGllciA9IDAuNWY7CiAKIERFRklORV9BTExPQ0FUT1Jf
V0lUSF9IRUFQX0lERU5USUZJRVIoRm9udCk7CiAKLVJlZjxGb250PiBGb250OjpjcmVhdGUoUmVm
PFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiBvcmlnaW4sIGZsb2F0
IGZvbnRTaXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljKQorUmVm
PEZvbnQ+IEZvbnQ6OmNyZWF0ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEs
IE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2liaWxpdHkgdmlz
aWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25h
bDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IGlkZW50aWZpZXIpCit7CisgICAgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgRm9udChwbGF0Zm9ybURhdGEsIG9yaWdpbiwgaW50ZXJzdGl0aWFsLCB2
aXNpYmlsaXR5LCBvcmllbnRhdGlvbkZhbGxiYWNrLCBpZGVudGlmaWVyLCBudWxscHRyKSk7Cit9
CisKK1JlZjxGb250PiBGb250OjpjcmVhdGUoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZv
cm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBGb250Q2FjaGUqIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0
YSwgSW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSB2aXNpYmlsaXR5LCBPcmll
bnRhdGlvbkZhbGxiYWNrIG9yaWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcj4gaWRlbnRpZmllcikKK3sKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBGb250KHBsYXRmb3JtRGF0YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2liaWxpdHksIG9y
aWVudGF0aW9uRmFsbGJhY2ssIGlkZW50aWZpZXIsIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0YSkp
OworfQorCitSZWY8Rm9udD4gRm9udDo6Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZh
Y2VEYXRhLCBGb250OjpPcmlnaW4gb3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0
aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgRm9udENhY2hlKiBmb250Q2FjaGVGb3JWZXJ0
aWNhbERhdGEpCiB7CiAgICAgYm9vbCB3cmFwcGluZzsKICAgICBhdXRvIGN1c3RvbUZvbnREYXRh
ID0gQ2FjaGVkRm9udDo6Y3JlYXRlQ3VzdG9tRm9udERhdGEoZm9udEZhY2VEYXRhLmdldCgpLCB7
IH0sIHdyYXBwaW5nKTsKICAgICBGb250RGVzY3JpcHRpb24gZGVzY3JpcHRpb247CiAgICAgZGVz
Y3JpcHRpb24uc2V0Q29tcHV0ZWRTaXplKGZvbnRTaXplKTsKLSAgICByZXR1cm4gRm9udDo6Y3Jl
YXRlKENhY2hlZEZvbnQ6OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCpjdXN0b21Gb250RGF0
YSwgZGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgeyB9LCB7IH0p
LCBvcmlnaW4pOworICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxhdGZvcm1E
YXRhRnJvbUN1c3RvbURhdGEoKmN1c3RvbUZvbnREYXRhLCBkZXNjcmlwdGlvbiwgc3ludGhldGlj
Qm9sZCwgc3ludGhldGljSXRhbGljLCB7IH0sIHsgfSksIG9yaWdpbiwgZm9udENhY2hlRm9yVmVy
dGljYWxEYXRhKTsKIH0KIAotRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0
Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2li
aWxpdHkgdmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNr
LCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IHJlbmRlcmluZ1Jlc291cmNl
SWRlbnRpZmllcikKK0ZvbnQ6OkZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1E
YXRhLCBPcmlnaW4gb3JpZ2luLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5
IHZpc2liaWxpdHksIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjaywgT3B0
aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiByZW5kZXJpbmdSZXNvdXJjZUlkZW50
aWZpZXIsIEZvbnRDYWNoZSogZm9udENhY2hlRm9yVmVydGljYWxEYXRhKQogICAgIDogbV9wbGF0
Zm9ybURhdGEocGxhdGZvcm1EYXRhKQogICAgICwgbV9yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZp
ZXIocmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9vcmlnaW4ob3JpZ2luKQpA
QCAtODgsOSArOTgsMTEgQEAgRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0
Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnQKICAgICBwbGF0Zm9ybUNo
YXJXaWR0aEluaXQoKTsKICNpZiBFTkFCTEUoT1BFTlRZUEVfVkVSVElDQUwpCiAgICAgaWYgKHBs
YXRmb3JtRGF0YS5vcmllbnRhdGlvbigpID09IEZvbnRPcmllbnRhdGlvbjo6VmVydGljYWwgJiYg
b3JpZW50YXRpb25GYWxsYmFjayA9PSBPcmllbnRhdGlvbkZhbGxiYWNrOjpObykgewotICAgICAg
ICBtX3ZlcnRpY2FsRGF0YSA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBs
YXRmb3JtRGF0YSk7CisgICAgICAgIG1fdmVydGljYWxEYXRhID0gZm9udENhY2hlRm9yVmVydGlj
YWxEYXRhID8gZm9udENhY2hlRm9yVmVydGljYWxEYXRhLT52ZXJ0aWNhbERhdGEocGxhdGZvcm1E
YXRhKSA6IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7
CiAgICAgICAgIG1faGFzVmVydGljYWxHbHlwaHMgPSBtX3ZlcnRpY2FsRGF0YS5nZXQoKSAmJiBt
X3ZlcnRpY2FsRGF0YS0+aGFzVmVydGljYWxNZXRyaWNzKCk7CiAgICAgfQorI2Vsc2UKKyAgICBV
TlVTRURfUEFSQU0oZm9udENhY2hlRm9yVmVydGljYWxEYXRhKTsKICNlbmRpZgogfQogCkBAIC01
NjgsMTMgKzU4MCwxMyBAQCBzdGF0aWMgU3lzdGVtRmFsbGJhY2tDYWNoZSYgc3lzdGVtRmFsbGJh
Y2tDYWNoZSgpCiAgICAgcmV0dXJuIG1hcC5nZXQoKTsKIH0KIAotUmVmUHRyPEZvbnQ+IEZvbnQ6
OnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbiwgSXNGb3JQbGF0Zm9ybUZvbnQgaXNGb3JQbGF0
Zm9ybUZvbnQpIGNvbnN0CitSZWZQdHI8Rm9udD4gRm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9y
Q2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdCBGb250RGVzY3JpcHRpb24mIGRlc2Ny
aXB0aW9uLCBJc0ZvclBsYXRmb3JtRm9udCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlJiBm
b250Q2FjaGUpIGNvbnN0CiB7CiAgICAgYXV0byBmb250QWRkUmVzdWx0ID0gc3lzdGVtRmFsbGJh
Y2tDYWNoZSgpLmFkZCh0aGlzLCBDaGFyYWN0ZXJGYWxsYmFja01hcCgpKTsKIAogICAgIGlmICgh
Y2hhcmFjdGVyKSB7CiAgICAgICAgIFVDaGFyIGNvZGVVbml0ID0gMDsKLSAgICAgICAgcmV0dXJu
IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2Ny
aXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVk
Rm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CisgICAgICAgIHJldHVybiBmb250Q2FjaGUuc3lzdGVt
RmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9u
dCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CiAgICAg
fQogCiAgICAgYXV0byBrZXkgPSBDaGFyYWN0ZXJGYWxsYmFja01hcEtleSB7IGRlc2NyaXB0aW9u
LmNvbXB1dGVkTG9jYWxlKCksIGNoYXJhY3RlciwgaXNGb3JQbGF0Zm9ybUZvbnQgIT0gSXNGb3JQ
bGF0Zm9ybUZvbnQ6Ok5vIH07CkBAIC01ODksNyArNjAxLDcgQEAgUmVmUHRyPEZvbnQ+IEZvbnQ6
OnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3Qg
Rm9udEQKICAgICAgICAgICAgIGNvZGVVbml0c1sxXSA9IFUxNl9UUkFJTChjaGFyYWN0ZXIpOwog
ICAgICAgICAgICAgY29kZVVuaXRzTGVuZ3RoID0gMjsKICAgICAgICAgfQotICAgICAgICBhdXRv
IGZvbnQgPSBGb250Q2FjaGU6OnNpbmdsZXRvbigpLnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVy
cyhkZXNjcmlwdGlvbiwgdGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVy
Q29sb3JlZEZvbnQ6Ok5vLCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0KCk7CisgICAg
ICAgIGF1dG8gZm9udCA9IGZvbnRDYWNoZS5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMoZGVz
Y3JpcHRpb24sIHRoaXMsIGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZlckNvbG9y
ZWRGb250OjpObywgY29kZVVuaXRzLCBjb2RlVW5pdHNMZW5ndGgpLmdldCgpOwogICAgICAgICBp
ZiAoZm9udCkKICAgICAgICAgICAgIGZvbnQtPm1faXNVc2VkSW5TeXN0ZW1GYWxsYmFja0NhY2hl
ID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuIGZvbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmgKaW5kZXggNjUzYjMzOGI3YzM0MjU2MjcyMjQ5NjExZTI3MDFhYzVkMjYzZTk2
NS4uNzI0MTU5MWExODk1Yjc1NDhjNjIwMzBhZTRjMTk0Mzg4NTQ2YjQ4MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtNTcsNiArNTcsNyBAQCBpbnRlcmZhY2Ug
SURXcml0ZUdkaUludGVyb3A7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRm9udENh
Y2hlOwogY2xhc3MgR2x5cGhQYWdlOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgU2hh
cmVkQnVmZmVyOwpAQCAtOTIsMTIgKzkzLDExIEBAIHB1YmxpYzoKICAgICAgICAgWWVzLAogICAg
ICAgICBObwogICAgIH07Ci0gICAgc3RhdGljIFJlZjxGb250PiBjcmVhdGUoY29uc3QgRm9udFBs
YXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luID0gT3JpZ2luOjpMb2NhbCwg
SW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCA9IEludGVyc3RpdGlhbDo6Tm8sCi0gICAgICAgIFZp
c2liaWxpdHkgdmlzaWJpbGl0eSA9IFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFs
bGJhY2sgb3JpZW50YXRpb25GYWxsYmFjayA9IE9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRp
b25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IGlkZW50aWZpZXIgPSBXVEY6Om51bGxv
cHQpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb250KHBsYXRmb3JtRGF0
YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2liaWxpdHksIG9yaWVudGF0aW9uRmFsbGJhY2ss
IGlkZW50aWZpZXIpKTsKLSAgICB9Ci0gICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGb250
PiBjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiwg
ZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMp
OworICAgIHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmLCBP
cmlnaW4gPSBPcmlnaW46OkxvY2FsLCBJbnRlcnN0aXRpYWwgPSBJbnRlcnN0aXRpYWw6Ok5vLAor
ICAgICAgICBWaXNpYmlsaXR5ID0gVmlzaWJpbGl0eTo6VmlzaWJsZSwgT3JpZW50YXRpb25GYWxs
YmFjayA9IE9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJj
ZUlkZW50aWZpZXI+ID0gV1RGOjpudWxsb3B0KTsKKyAgICBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0
ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiwgT3JpZ2luLCBGb250Q2FjaGUqIGZvbnRDYWNoZUZv
clZlcnRpY2FsRGF0YSwgSW50ZXJzdGl0aWFsID0gSW50ZXJzdGl0aWFsOjpObywKKyAgICAgICAg
VmlzaWJpbGl0eSA9IFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFsbGJhY2sgPSBP
cmllbnRhdGlvbkZhbGxiYWNrOjpObywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlm
aWVyPiA9IFdURjo6bnVsbG9wdCk7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGb250
PiBjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiwg
ZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMs
IEZvbnRDYWNoZSogPSBudWxscHRyKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIH5Gb250KCk7CiAK
QEAgLTE4OSw3ICsxODksNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzdXBwb3J0c0NvZGVQb2ludChV
Q2hhcjMyKSBjb25zdDsKICAgICBib29sIHBsYXRmb3JtU3VwcG9ydHNDb2RlUG9pbnQoVUNoYXIz
MiwgT3B0aW9uYWw8VUNoYXIzMj4gdmFyaWF0aW9uID0gV1RGOjpudWxsb3B0KSBjb25zdDsKIAot
ICAgIFJlZlB0cjxGb250PiBzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIoVUNoYXIzMiwg
Y29uc3QgRm9udERlc2NyaXB0aW9uJiwgSXNGb3JQbGF0Zm9ybUZvbnQpIGNvbnN0OworICAgIFJl
ZlB0cjxGb250PiBzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIoVUNoYXIzMiwgY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiwgSXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZSYpIGNvbnN0Owog
CiAgICAgY29uc3QgR2x5cGhQYWdlKiBnbHlwaFBhZ2UodW5zaWduZWQgcGFnZU51bWJlcikgY29u
c3Q7CiAKQEAgLTIzMiw3ICsyMzIsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogcHJpdmF0ZToKLSAg
ICBXRUJDT1JFX0VYUE9SVCBGb250KGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmLCBPcmlnaW4sIElu
dGVyc3RpdGlhbCwgVmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVu
ZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPik7CisgICAgV0VCQ09SRV9FWFBPUlQgRm9udChjb25z
dCBGb250UGxhdGZvcm1EYXRhJiwgT3JpZ2luLCBJbnRlcnN0aXRpYWwsIFZpc2liaWxpdHksIE9y
aWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcj4s
IEZvbnRDYWNoZSopOwogCiAgICAgdm9pZCBwbGF0Zm9ybUluaXQoKTsKICAgICB2b2lkIHBsYXRm
b3JtR2x5cGhJbml0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250Q2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9u
dENhY2hlLmNwcAppbmRleCA4YmIzM2VkNTdhZTg0MmNmMTA5NDZhZDI3NDdiOTU5NmNiMDRhNTg2
Li4wMmI1NWQxMjBkMzgzYTM2ZTgwZTg0ZDE3NjViMTc1NDljMDcxM2JkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAKQEAgLTI4MCw3ICsyODAs
NyBAQCBSZWY8Rm9udD4gRm9udENhY2hlOjpmb250Rm9yUGxhdGZvcm1EYXRhKGNvbnN0IEZvbnRQ
bGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSkKICNlbmRpZgogCiAgICAgYXV0byBhZGRSZXN1bHQg
PSBtX2ZvbnREYXRhQ2FjaGVzLT5kYXRhLmVuc3VyZShwbGF0Zm9ybURhdGEsIFsmXSB7Ci0gICAg
ICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRhKTsKKyAgICAgICAgcmV0dXJuIEZv
bnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGEsIEZvbnQ6Ok9yaWdpbjo6TG9jYWwsIHRoaXMpOwogICAg
IH0pOwogCiAgICAgQVNTRVJUKGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPnBsYXRmb3JtRGF0
YSgpID09IHBsYXRmb3JtRGF0YSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9Gb250Q2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0ZvbnRDYWNoZS5oCmluZGV4IDRlYmE2ZmNmMmY3YzgwNDhmYjgzZDY1NTRiOGZkNmFmODdjMWFj
OWQuLjM0NzU1MmI4YWI2MzFiMTFiZjZlZTRmMGM5MWYxOTNlODJlM2YyMjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCkBAIC0yMjAsNyArMjIwLDcg
QEAgY2xhc3MgRm9udENhY2hlIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9udENhY2hlPiB7CiBwdWJs
aWM6CiAgICAgc3RhdGljIFJlZjxGb250Q2FjaGU+IGNyZWF0ZSgpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBGb250Q2FjaGUmIHNpbmdsZXRvbigpOwotICAgIHN0YXRpYyBGb250Q2FjaGUm
IGZvbnRDYWNoZUZhbGxiYWNrVG9TaW5nbGV0b24oUmVmUHRyPEZvbnRTZWxlY3Rvcj4pOworICAg
IHN0YXRpYyBGb250Q2FjaGUmIGZvbnRDYWNoZUZhbGxpbmdCYWNrVG9TaW5nbGV0b24oUmVmUHRy
PEZvbnRTZWxlY3Rvcj4pOwogCiAgICAgfkZvbnRDYWNoZSgpOwogCkBAIC0zNzgsNyArMzc4LDcg
QEAgT3B0aW9uYWw8Rm9udENhY2hlOjpQcmV3YXJtSW5mb3JtYXRpb24+IEZvbnRDYWNoZTo6UHJl
d2FybUluZm9ybWF0aW9uOjpkZWNvZGUoRGUKICAgICByZXR1cm4gcHJld2FybUluZm9ybWF0aW9u
OwogfQogCi1pbmxpbmUgRm9udENhY2hlJiBGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxiYWNrVG9T
aW5nbGV0b24oUmVmUHRyPEZvbnRTZWxlY3Rvcj4gZm9udFNlbGVjdG9yKQoraW5saW5lIEZvbnRD
YWNoZSYgRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uKFJlZlB0cjxG
b250U2VsZWN0b3I+IGZvbnRTZWxlY3RvcikKIHsKICAgICByZXR1cm4gZm9udFNlbGVjdG9yID8g
Zm9udFNlbGVjdG9yLT5mb250Q2FjaGUoKSA6IEZvbnRDYWNoZTo6c2luZ2xldG9uKCk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZS5jcHAKaW5k
ZXggYTkyYjdiYWVkOTZiMzYyNjZjNmQwNDBkYjBmMWE5ZjE0M2Q2MmJmNy4uZTMxOTMzN2JiYTgy
NzBjODliZmJjZDJlMDBmZTBjNjg2NDAyZDM0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlLmNwcApAQCAtMTcwLDcgKzE3MCw3IEBAIHZvaWQg
Rm9udENhc2NhZGU6OnVwZGF0ZUZvbnRzKFJlZjxGb250Q2FzY2FkZUZvbnRzPiYmIGZvbnRzKSBj
b25zdAogCiB2b2lkIEZvbnRDYXNjYWRlOjp1cGRhdGUoUmVmUHRyPEZvbnRTZWxlY3Rvcj4mJiBm
b250U2VsZWN0b3IpIGNvbnN0CiB7Ci0gICAgRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1Rv
U2luZ2xldG9uKGZvbnRTZWxlY3RvcikudXBkYXRlRm9udENhc2NhZGUoKnRoaXMsIFdURk1vdmUo
Zm9udFNlbGVjdG9yKSk7CisgICAgRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2lu
Z2xldG9uKGZvbnRTZWxlY3RvcikudXBkYXRlRm9udENhc2NhZGUoKnRoaXMsIFdURk1vdmUoZm9u
dFNlbGVjdG9yKSk7CiB9CiAKIEdseXBoQnVmZmVyIEZvbnRDYXNjYWRlOjpsYXlvdXRUZXh0KENv
ZGVQYXRoIGNvZGVQYXRoVG9Vc2UsIGNvbnN0IFRleHRSdW4mIHJ1biwgdW5zaWduZWQgZnJvbSwg
dW5zaWduZWQgdG8sIEZvclRleHRFbXBoYXNpc09yTm90IGZvclRleHRFbXBoYXNpcykgY29uc3QK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRl
Rm9udHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVG
b250cy5jcHAKaW5kZXggOWY2NWQyOTk4Zjk0ODY5NzNkNGJiZjE4ZGUyNmY4MmIwNDQzOWZjYS4u
NGE1NDA1NDg3MTE5YmRiYzFmZDcyYTQ5MjRkMzU2ZTk2ODQ5MDE4ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKQEAg
LTEwMiw3ICsxMDIsNyBAQCBGb250Q2FzY2FkZUZvbnRzOjpGb250Q2FzY2FkZUZvbnRzKFJlZlB0
cjxGb250U2VsZWN0b3I+JiYgZm9udFNlbGVjdG9yKQogICAgIDogbV9jYWNoZWRQcmltYXJ5Rm9u
dChudWxscHRyKQogICAgICwgbV9mb250U2VsZWN0b3IoZm9udFNlbGVjdG9yKQogICAgICwgbV9m
b250U2VsZWN0b3JWZXJzaW9uKG1fZm9udFNlbGVjdG9yID8gbV9mb250U2VsZWN0b3ItPnZlcnNp
b24oKSA6IDApCi0gICAgLCBtX2dlbmVyYXRpb24oRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFj
a1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5lcmF0aW9uKCkpCisgICAgLCBtX2dlbmVy
YXRpb24oRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uKG1fZm9udFNl
bGVjdG9yKS5nZW5lcmF0aW9uKCkpCiB7CiAjaWYgQVNTRVJUX0VOQUJMRUQKICAgICBpZiAoIWlz
TWFpblRocmVhZCgpKQpAQCAtMTQ0LDcgKzE0NCw3IEBAIHN0YXRpYyBGb250UmFuZ2VzIHJlYWxp
emVOZXh0RmFsbGJhY2soY29uc3QgRm9udENhc2NhZGVEZXNjcmlwdGlvbiYgZGVzY3JpcHRpb24s
CiB7CiAgICAgQVNTRVJUKGluZGV4IDwgZGVzY3JpcHRpb24uZWZmZWN0aXZlRmFtaWx5Q291bnQo
KSk7CiAKLSAgICBhdXRvJiBmb250Q2FjaGUgPSBGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxiYWNr
VG9TaW5nbGV0b24oZm9udFNlbGVjdG9yKTsKKyAgICBhdXRvJiBmb250Q2FjaGUgPSBGb250Q2Fj
aGU6OmZvbnRDYWNoZUZhbGxpbmdCYWNrVG9TaW5nbGV0b24oZm9udFNlbGVjdG9yKTsKICAgICB3
aGlsZSAoaW5kZXggPCBkZXNjcmlwdGlvbi5lZmZlY3RpdmVGYW1pbHlDb3VudCgpKSB7CiAgICAg
ICAgIGF1dG8gdmlzaXRvciA9IFdURjo6bWFrZVZpc2l0b3IoWyZdKGNvbnN0IEF0b21TdHJpbmcm
IGZhbWlseSkgLT4gRm9udFJhbmdlcyB7CiAgICAgICAgICAgICBpZiAoZmFtaWx5LmlzRW1wdHko
KSkKQEAgLTE4MSw3ICsxODEsNyBAQCBjb25zdCBGb250UmFuZ2VzJiBGb250Q2FzY2FkZUZvbnRz
OjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250Q2FzY2FkZURlcwogICAgICAgICBy
ZXR1cm4gbV9yZWFsaXplZEZhbGxiYWNrUmFuZ2VzW2luZGV4XTsKIAogICAgIEFTU0VSVChpbmRl
eCA9PSBtX3JlYWxpemVkRmFsbGJhY2tSYW5nZXMuc2l6ZSgpKTsKLSAgICBBU1NFUlQoRm9udENh
Y2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5lcmF0
aW9uKCkgPT0gbV9nZW5lcmF0aW9uKTsKKyAgICBBU1NFUlQoRm9udENhY2hlOjpmb250Q2FjaGVG
YWxsaW5nQmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5lcmF0aW9uKCkgPT0gbV9n
ZW5lcmF0aW9uKTsKIAogICAgIG1fcmVhbGl6ZWRGYWxsYmFja1Jhbmdlcy5hcHBlbmQoRm9udFJh
bmdlcygpKTsKICAgICBhdXRvJiBmb250UmFuZ2VzID0gbV9yZWFsaXplZEZhbGxiYWNrUmFuZ2Vz
Lmxhc3QoKTsKQEAgLTE4OSw5ICsxODksOSBAQCBjb25zdCBGb250UmFuZ2VzJiBGb250Q2FzY2Fk
ZUZvbnRzOjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250Q2FzY2FkZURlcwogICAg
IGlmICghaW5kZXgpIHsKICAgICAgICAgZm9udFJhbmdlcyA9IHJlYWxpemVOZXh0RmFsbGJhY2so
ZGVzY3JpcHRpb24sIG1fbGFzdFJlYWxpemVkRmFsbGJhY2tJbmRleCwgbV9mb250U2VsZWN0b3Iu
Z2V0KCkpOwogICAgICAgICBpZiAoZm9udFJhbmdlcy5pc051bGwoKSAmJiBtX2ZvbnRTZWxlY3Rv
cikKLSAgICAgICAgICAgIGZvbnRSYW5nZXMgPSBtX2ZvbnRTZWxlY3Rvci0+Zm9udFJhbmdlc0Zv
ckZhbWlseShkZXNjcmlwdGlvbiwgc3RhbmRhcmRGYW1pbHkpOworICAgICAgICAgICAgZm9udFJh
bmdlcyA9IG1fZm9udFNlbGVjdG9yLT5mb250UmFuZ2VzRm9yRmFtaWx5KGRlc2NyaXB0aW9uLCBm
YW1pbHlOYW1lc0RhdGEtPmF0KEZhbWlseU5hbWVzSW5kZXg6OlN0YW5kYXJkRmFtaWx5KSk7CiAg
ICAgICAgIGlmIChmb250UmFuZ2VzLmlzTnVsbCgpKQotICAgICAgICAgICAgZm9udFJhbmdlcyA9
IEZvbnRSYW5nZXMoRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKG1fZm9u
dFNlbGVjdG9yKS5sYXN0UmVzb3J0RmFsbGJhY2tGb250KGRlc2NyaXB0aW9uKSk7CisgICAgICAg
ICAgICBmb250UmFuZ2VzID0gRm9udFJhbmdlcyhGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxpbmdC
YWNrVG9TaW5nbGV0b24obV9mb250U2VsZWN0b3IpLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZGVz
Y3JpcHRpb24pKTsKICAgICAgICAgcmV0dXJuIGZvbnRSYW5nZXM7CiAgICAgfQogCkBAIC0zNTEs
NyArMzUxLDcgQEAgR2x5cGhEYXRhIEZvbnRDYXNjYWRlRm9udHM6OmdseXBoRGF0YUZvclN5c3Rl
bUZhbGxiYWNrKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdAogICAgIGlmICghZm9udCkKICAgICAg
ICAgZm9udCA9ICZyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChkZXNjcmlwdGlvbiwgMCkuZm9udEZv
ckZpcnN0UmFuZ2UoKTsKIAotICAgIGF1dG8gc3lzdGVtRmFsbGJhY2tGb250ID0gZm9udC0+c3lz
dGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKGNoYXJhY3RlciwgZGVzY3JpcHRpb24sIG1faXNG
b3JQbGF0Zm9ybUZvbnQgPyBJc0ZvclBsYXRmb3JtRm9udDo6WWVzIDogSXNGb3JQbGF0Zm9ybUZv
bnQ6Ok5vKTsKKyAgICBhdXRvIHN5c3RlbUZhbGxiYWNrRm9udCA9IGZvbnQtPnN5c3RlbUZhbGxi
YWNrRm9udEZvckNoYXJhY3RlcihjaGFyYWN0ZXIsIGRlc2NyaXB0aW9uLCBtX2lzRm9yUGxhdGZv
cm1Gb250ID8gSXNGb3JQbGF0Zm9ybUZvbnQ6OlllcyA6IElzRm9yUGxhdGZvcm1Gb250OjpObywg
Rm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9y
KSk7CiAgICAgaWYgKCFzeXN0ZW1GYWxsYmFja0ZvbnQpCiAgICAgICAgIHJldHVybiBHbHlwaERh
dGEoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV09G
RkZpbGVGb3JtYXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV09GRkZp
bGVGb3JtYXQuY3BwCmluZGV4IGZjNmIzYzI3MGI4MzIwNTY2NDNmZWE1ZGE4N2QzMGQ4YjMzNTFh
NWQuLjk5NzNlZTgxNWYwZGI2OGU2NzBjZDMzZDk1NGQwZWVjNGFlODk1YWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9XT0ZGRmlsZUZvcm1hdC5jcHAKQEAg
LTI4Miw1ICsyODIsMjMgQEAgYm9vbCBjb252ZXJ0V09GRlRvU2ZudChTaGFyZWRCdWZmZXImIHdv
ZmYsIFZlY3RvcjxjaGFyPiYgc2ZudCkKIAogICAgIHJldHVybiBzZm50LnNpemUoKSA9PSB0b3Rh
bFNmbnRTaXplOwogfQotICAgIAorCitib29sIGNvbnZlcnRXT0ZGVG9TZm50SWZOZWNlc3Nhcnko
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4mIGJ1ZmZlcikKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAg
ICByZXR1cm4gZmFsc2U7CisjZWxzZQorICAgIGlmICghYnVmZmVyIHx8ICFpc1dPRkYoKmJ1ZmZl
cikpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIFZlY3RvcjxjaGFyPiBjb252ZXJ0ZWRG
b250OworICAgIGlmIChjb252ZXJ0V09GRlRvU2ZudCgqYnVmZmVyLCBjb252ZXJ0ZWRGb250KSkK
KyAgICAgICAgYnVmZmVyID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoV1RGTW92ZShjb252ZXJ0ZWRG
b250KSk7CisgICAgZWxzZQorICAgICAgICBidWZmZXIgPSBudWxscHRyOworCisgICAgcmV0dXJu
IHRydWU7CisjZW5kaWYKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0LmgKaW5kZXggZmEwOWQ5
ZTY5MmUwMWViYjIyNTc3OWY0OTJiOGNiMGVjOTUzMWU5Mi4uNWMwY2E0ZmMyMDdkMjEwZmQwODA1
NGM0ZmZhN2VmY2EzM2EwYjEyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9XT0ZGRmlsZUZvcm1hdC5oCkBAIC0zOSw2ICszOSwxMSBAQCBib29sIGlzV09GRihT
aGFyZWRCdWZmZXImKTsKIC8vIGlmIGNvbnZlcnNpb24gcmFuIG91dCBvZiBtZW1vcnkpLiBPdGhl
cndpc2UgcmV0dXJucyB0cnVlIGFuZCB3cml0ZXMgdGhlIHNmbnQgcGF5bG9hZCBpbnRvIHNmbnQu
CiBib29sIGNvbnZlcnRXT0ZGVG9TZm50KFNoYXJlZEJ1ZmZlciYgd29mZiwgVmVjdG9yPGNoYXI+
JiBzZm50KTsKIAorLy8gSWYgdGhlIGdpdmVuIGJ1ZmZlciBpcyBhIFdPRkYgZmlsZSBhbmQgdGhl
IGN1cnJlbnQgcGxhdGZvcm0gaGFzIG5vIG5hdGl2ZSBzdXBwb3J0IGZvciBXT0ZGCisvLyBmb250
cywgY29udmVydCBpdCB0byBzZm50LiBSZXR1cm5zIHRydWUgaWYgdGhlIGdpdmVuIGJ1ZmZlciB3
YXMgY29udmVydGVkLiBJZiBjb252ZXJzaW9uIGZhaWxzLAorLy8gdGhlIGJ1ZmZlciB3aWxsIGJl
IHNldCB0byBudWxscHRyLgorYm9vbCBjb252ZXJ0V09GRlRvU2ZudElmTmVjZXNzYXJ5KFJlZlB0
cjxTaGFyZWRCdWZmZXI+Jik7CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8v
IFdPRkZGaWxlRm9ybWF0X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhaXJvL0ZvbnRDYWlyb0hhcmZidXp6TkcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvSGFyZmJ1enpORy5jcHAKaW5kZXggZDYwYjVk
YjcwNzdhZWRjYzgyZDc1NTY4ZjFhNDM3ODAyOWM4NDJlZC4uYzcxN2UzYjZjNDAwM2MyNTI1ZTYw
MzQ4OTc3MWJkNWQ0YWJiNWQxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvSGFyZmJ1enpORy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvSGFyZmJ1enpORy5jcHAKQEAgLTEz
OCw3ICsxMzgsNyBAQCBjb25zdCBGb250KiBGb250Q2FzY2FkZTo6Zm9udEZvckNvbWJpbmluZ0No
YXJhY3RlclNlcXVlbmNlKGNvbnN0IFVDaGFyKiBvcmlnaW5hbAogICAgICAgICAgICAgcmV0dXJu
IGZhbGxiYWNrRm9udDsKICAgICB9CiAKLSAgICBpZiAoYXV0byBzeXN0ZW1GYWxsYmFjayA9IEZv
bnRDYWNoZTo6Zm9udENhY2hlRmFsbGJhY2tUb1NpbmdsZXRvbihmb250U2VsZWN0b3IoKSkuc3lz
dGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKG1fZm9udERlc2NyaXB0aW9uLCBiYXNlRm9udCwgSXNG
b3JQbGF0Zm9ybUZvbnQ6Ok5vLCBwcmVmZXJDb2xvcmVkRm9udCA/IEZvbnRDYWNoZTo6UHJlZmVy
Q29sb3JlZEZvbnQ6OlllcyA6IEZvbnRDYWNoZTo6UHJlZmVyQ29sb3JlZEZvbnQ6Ok5vLCBjaGFy
YWN0ZXJzLCBsZW5ndGgpKSB7CisgICAgaWYgKGF1dG8gc3lzdGVtRmFsbGJhY2sgPSBGb250Q2Fj
aGU6OmZvbnRDYWNoZUZhbGxpbmdCYWNrVG9TaW5nbGV0b24oZm9udFNlbGVjdG9yKCkpLnN5c3Rl
bUZhbGxiYWNrRm9yQ2hhcmFjdGVycyhtX2ZvbnREZXNjcmlwdGlvbiwgYmFzZUZvbnQsIElzRm9y
UGxhdGZvcm1Gb250OjpObywgcHJlZmVyQ29sb3JlZEZvbnQgPyBGb250Q2FjaGU6OlByZWZlckNv
bG9yZWRGb250OjpZZXMgOiBGb250Q2FjaGU6OlByZWZlckNvbG9yZWRGb250OjpObywgY2hhcmFj
dGVycywgbGVuZ3RoKSkgewogICAgICAgICBpZiAoc3lzdGVtRmFsbGJhY2stPmNhblJlbmRlckNv
bWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNoYXJhY3RlcnMsIGxlbmd0aCkgJiYgKCFwcmVmZXJD
b2xvcmVkRm9udCB8fCBzeXN0ZW1GYWxsYmFjay0+cGxhdGZvcm1EYXRhKCkuaXNDb2xvckJpdG1h
cEZvbnQoKSkpCiAgICAgICAgICAgICByZXR1cm4gc3lzdGVtRmFsbGJhY2suZ2V0KCk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hMWY5NDdlYjg3MTIxZDljYzAwN2Q3MjM3YjBjZDdlMTI4MjQwYzI2Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3Qu
Y3BwCkBAIC0wLDAgKzEsMTQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAy
MDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAw
OSBUb3JjaCBNb2JpbGUsIEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBNZXRyb2xvZ2ljYWwg
R3JvdXAgQi5WLgorICogQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAq
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgor
ICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV29ya2VyRm9udExvYWRSZXF1ZXN0Lmgi
CisKKyNpbmNsdWRlICJGb250LmgiCisjaW5jbHVkZSAiRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5o
IgorI2luY2x1ZGUgIkZvbnRTZWxlY3Rpb25BbGdvcml0aG0uaCIKKyNpbmNsdWRlICJSZXNvdXJj
ZUxvYWRlck9wdGlvbnMuaCIKKyNpbmNsdWRlICJTZXJ2aWNlV29ya2VyLmgiCisjaW5jbHVkZSAi
U2hhcmVkQnVmZmVyLmgiCisjaW5jbHVkZSAiV09GRkZpbGVGb3JtYXQuaCIKKyNpbmNsdWRlICJX
b3JrZXJHbG9iYWxTY29wZS5oIgorI2luY2x1ZGUgIldvcmtlclRocmVhZGFibGVMb2FkZXIuaCIK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitXb3JrZXJGb250TG9hZFJlcXVlc3Q6OldvcmtlckZv
bnRMb2FkUmVxdWVzdChVUkwmJiB1cmwsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbG9hZGVkRnJv
bU9wYXF1ZVNvdXJjZSkKKyAgICA6IG1fdXJsKFdURk1vdmUodXJsKSkKKyAgICAsIG1fbG9hZGVk
RnJvbU9wYXF1ZVNvdXJjZShsb2FkZWRGcm9tT3BhcXVlU291cmNlKQoreworfQorCit2b2lkIFdv
cmtlckZvbnRMb2FkUmVxdWVzdDo6bG9hZChXb3JrZXJHbG9iYWxTY29wZSYgd29ya2VyR2xvYmFs
U2NvcGUpCit7CisgICAgbV9jb250ZXh0ID0gbWFrZVdlYWtQdHIoc3RhdGljX2Nhc3Q8U2NyaXB0
RXhlY3V0aW9uQ29udGV4dCo+KCZ3b3JrZXJHbG9iYWxTY29wZSkpOworCisgICAgUmVzb3VyY2VS
ZXF1ZXN0IHJlcXVlc3QgeyBtX3VybCB9OworICAgIEFTU0VSVChyZXF1ZXN0Lmh0dHBNZXRob2Qo
KSA9PSAiR0VUIik7CisKKyAgICBGZXRjaE9wdGlvbnMgZmV0Y2hPcHRpb25zOworICAgIGZldGNo
T3B0aW9ucy5tb2RlID0gRmV0Y2hPcHRpb25zOjpNb2RlOjpTYW1lT3JpZ2luOworICAgIGZldGNo
T3B0aW9ucy5jcmVkZW50aWFscyA9IHdvcmtlckdsb2JhbFNjb3BlLmNyZWRlbnRpYWxzKCk7Cisg
ICAgZmV0Y2hPcHRpb25zLmNhY2hlID0gRmV0Y2hPcHRpb25zOjpDYWNoZTo6RGVmYXVsdDsKKyAg
ICBmZXRjaE9wdGlvbnMucmVkaXJlY3QgPSBGZXRjaE9wdGlvbnM6OlJlZGlyZWN0OjpGb2xsb3c7
CisgICAgZmV0Y2hPcHRpb25zLmRlc3RpbmF0aW9uID0gRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlv
bjo6V29ya2VyOworCisgICAgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMgb3B0aW9ucyB7IFdURk1v
dmUoZmV0Y2hPcHRpb25zKSB9OworICAgIG9wdGlvbnMuc2VuZExvYWRDYWxsYmFja3MgPSBTZW5k
Q2FsbGJhY2tQb2xpY3k6OlNlbmRDYWxsYmFja3M7CisgICAgb3B0aW9ucy5jb250ZW50U2VjdXJp
dHlQb2xpY3lFbmZvcmNlbWVudCA9IG1fY29udGV4dC0+c2hvdWxkQnlwYXNzTWFpbldvcmxkQ29u
dGVudFNlY3VyaXR5UG9saWN5KCkgPyBDb250ZW50U2VjdXJpdHlQb2xpY3lFbmZvcmNlbWVudDo6
RG9Ob3RFbmZvcmNlIDogQ29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1lbnQ6OkVuZm9yY2VD
aGlsZFNyY0RpcmVjdGl2ZTsKKyAgICBvcHRpb25zLmxvYWRlZEZyb21PcGFxdWVTb3VyY2UgPSBt
X2xvYWRlZEZyb21PcGFxdWVTb3VyY2U7CisKKyAgICBvcHRpb25zLnNlcnZpY2VXb3JrZXJzTW9k
ZSA9IFNlcnZpY2VXb3JrZXJzTW9kZTo6QWxsOworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikK
KyAgICBpZiAoYXV0byogYWN0aXZlU2VydmljZVdvcmtlciA9IHdvcmtlckdsb2JhbFNjb3BlLmFj
dGl2ZVNlcnZpY2VXb3JrZXIoKSkKKyAgICAgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uSWRlbnRpZmllciA9IGFjdGl2ZVNlcnZpY2VXb3JrZXItPnJlZ2lzdHJhdGlvbklkZW50
aWZpZXIoKTsKKyNlbmRpZgorCisgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlc291
cmNlU3luY2hyb25vdXNseSh3b3JrZXJHbG9iYWxTY29wZSwgV1RGTW92ZShyZXF1ZXN0KSwgKnRo
aXMsIG9wdGlvbnMpOworfQorCitib29sIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3Vz
dG9tRm9udERhdGEoY29uc3QgQXRvbVN0cmluZyYpCit7CisgICAgaWYgKCFtX2ZvbnRDdXN0b21Q
bGF0Zm9ybURhdGEgJiYgIW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9pc0xvYWRpbmcpIHsKKyAgICAg
ICAgY29udmVydFdPRkZUb1NmbnRJZk5lY2Vzc2FyeShtX2RhdGEpOworICAgICAgICBpZiAobV9k
YXRhKSB7CisgICAgICAgICAgICBtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEgPSBjcmVhdGVGb250
Q3VzdG9tUGxhdGZvcm1EYXRhKCptX2RhdGEsIG1fdXJsLmZyYWdtZW50SWRlbnRpZmllcigpLnRv
U3RyaW5nKCkpOworICAgICAgICAgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEpCisg
ICAgICAgICAgICAgICAgbV9lcnJvck9jY3VycmVkID0gdHJ1ZTsKKyAgICAgICAgfQorICAgIH0K
KworICAgIHJldHVybiBtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuZ2V0KCk7Cit9CisKK1JlZlB0
cjxGb250PiBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmNyZWF0ZUZvbnQoY29uc3QgRm9udERlc2Ny
aXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcmLCBib29sIHN5bnRoZXRp
Y0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBm
b250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzIGZvbnRG
YWNlQ2FwYWJpbGl0aWVzKQoreworICAgIEFTU0VSVChtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEp
OworICAgIEFTU0VSVChtX2NvbnRleHQpOworICAgIHJldHVybiBGb250OjpjcmVhdGUobV9mb250
Q3VzdG9tUGxhdGZvcm1EYXRhLT5mb250UGxhdGZvcm1EYXRhKGZvbnREZXNjcmlwdGlvbiwgc3lu
dGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNh
cGFiaWxpdGllcyksIEZvbnQ6Ok9yaWdpbjo6UmVtb3RlLCAmbV9jb250ZXh0LT5mb250Q2FjaGUo
KSk7Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpzZXRDbGllbnQoRm9udExvYWRS
ZXF1ZXN0Q2xpZW50KiBjbGllbnQpCit7CisgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQgPSBj
bGllbnQ7CisKKyAgICBpZiAobV9ub3RpZnlPbkNsaWVudFNldCkgeworICAgICAgICBtX25vdGlm
eU9uQ2xpZW50U2V0ID0gZmFsc2U7CisgICAgICAgIG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50LT5m
b250TG9hZGVkKCp0aGlzKTsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0
OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UpCit7CisgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAg
IT0gMiAmJiByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKQorICAgICAgICBtX2Vycm9yT2NjdXJy
ZWQgPSB0cnVlOworfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURh
dGEoY29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFMZW5ndGgpCit7CisgICAgaWYgKG1fZXJyb3JP
Y2N1cnJlZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFtX2RhdGEpCisgICAgICAgIG1f
ZGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CisKKyAgICBtX2RhdGEtPmFwcGVuZChkYXRh
LCBkYXRhTGVuZ3RoKTsKK30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZpbmlz
aExvYWRpbmcodW5zaWduZWQgbG9uZykKK3sKKyAgICBtX2lzTG9hZGluZyA9IGZhbHNlOworCisg
ICAgaWYgKCFtX2Vycm9yT2NjdXJyZWQpIHsKKyAgICAgICAgaWYgKG1fZm9udExvYWRSZXF1ZXN0
Q2xpZW50KQorICAgICAgICAgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQtPmZvbnRMb2FkZWQo
KnRoaXMpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX25vdGlmeU9uQ2xpZW50U2V0ID0g
dHJ1ZTsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGYWlsKGNv
bnN0IFJlc291cmNlRXJyb3ImKQoreworICAgIG1fZXJyb3JPY2N1cnJlZCA9IHRydWU7Cit9CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtl
ckZvbnRMb2FkUmVxdWVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJmOTRmZDQ4Y2FiMTRiZDUzNDg5MjE3ZjIw
NGJmMjNhODYwNGM1ZTgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC0wLDAgKzEsODMgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgTWV0cm9sb2dpY2FsIEdyb3VwIEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAy
MSBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5Z
CisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Cisg
KiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGb250
TG9hZFJlcXVlc3QuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKKyNpbmNs
dWRlICJUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgiCisjaW5jbHVkZSA8d3RmL1VSTC5oPgorI2lu
Y2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFNoYXJlZEJ1ZmZlcjsKK2NsYXNzIFdvcmtlckds
b2JhbFNjb3BlOworCitzdHJ1Y3QgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTsKKworY2xhc3MgV29y
a2VyRm9udExvYWRSZXF1ZXN0IDogcHVibGljIEZvbnRMb2FkUmVxdWVzdCwgcHVibGljIFRocmVh
ZGFibGVMb2FkZXJDbGllbnQgeworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGlj
OgorICAgIFdvcmtlckZvbnRMb2FkUmVxdWVzdChVUkwmJiwgTG9hZGVkRnJvbU9wYXF1ZVNvdXJj
ZSk7CisgICAgfldvcmtlckZvbnRMb2FkUmVxdWVzdCgpID0gZGVmYXVsdDsKKworICAgIHZvaWQg
bG9hZChXb3JrZXJHbG9iYWxTY29wZSYpOworCitwcml2YXRlOgorICAgIGNvbnN0IFVSTCYgdXJs
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV91cmw7IH0KKyAgICBib29sIGlzUGVuZGluZygpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuICFtX2lzTG9hZGluZyAmJiAhbV9lcnJvck9jY3VycmVkICYmICFt
X2RhdGE7IH0KKyAgICBib29sIGlzTG9hZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1faXNM
b2FkaW5nOyB9CisgICAgYm9vbCBlcnJvck9jY3VycmVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
bV9lcnJvck9jY3VycmVkOyB9CisKKyAgICBib29sIGVuc3VyZUN1c3RvbUZvbnREYXRhKGNvbnN0
IEF0b21TdHJpbmcmIHJlbW90ZVVSSSkgZmluYWw7CisgICAgUmVmUHRyPEZvbnQ+IGNyZWF0ZUZv
bnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiwgY29uc3QgQXRvbVN0cmluZyYgcmVtb3RlVVJJLCBi
b29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVhdHVy
ZVNldHRpbmdzJiwgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcykgZmluYWw7CisK
KyAgICB2b2lkIHNldENsaWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqKSBmaW5hbDsKKworICAg
IGJvb2wgaXNXb3JrZXJGb250TG9hZFJlcXVlc3QoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVl
OyB9CisKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVE
YXRhKGNvbnN0IGNoYXIqIGRhdGEsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lk
IGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOworCisgICAgVVJMIG1fdXJsOwor
ICAgIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbV9sb2FkZWRGcm9tT3BhcXVlU291cmNlOworCisg
ICAgYm9vbCBtX2lzTG9hZGluZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX25vdGlmeU9uQ2xpZW50
U2V0IHsgZmFsc2UgfTsKKyAgICBib29sIG1fZXJyb3JPY2N1cnJlZCB7IGZhbHNlIH07CisgICAg
Rm9udExvYWRSZXF1ZXN0Q2xpZW50KiBtX2ZvbnRMb2FkUmVxdWVzdENsaWVudCB7IG51bGxwdHIg
fTsKKworICAgIFdlYWtQdHI8U2NyaXB0RXhlY3V0aW9uQ29udGV4dD4gbV9jb250ZXh0OworICAg
IFJlZlB0cjxTaGFyZWRCdWZmZXI+IG1fZGF0YTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8Rm9udEN1
c3RvbVBsYXRmb3JtRGF0YT4gbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhOworfTsKKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQorCitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0ZPTlRMT0FEUkVRVUVT
VChXZWJDb3JlOjpXb3JrZXJGb250TG9hZFJlcXVlc3QsIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0
KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3Bl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCmluZGV4
IGQwZmJkNzJkMzJiNTUwNDY5ZWEwOGE5MGYwZmQ2YmY4NGZhNjE4ODYuLjAxN2RmNWJiN2NjNDU1
ZDA5ZGExMzU0MTUyNGY2ZGNmNDNkZDM1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiQ29udGVu
dFNlY3VyaXR5UG9saWN5LmgiCiAjaW5jbHVkZSAiQ3J5cHRvLmgiCiAjaW5jbHVkZSAiRm9udENh
Y2hlLmgiCisjaW5jbHVkZSAiRm9udEZhY2VTZXQuaCIKICNpbmNsdWRlICJJREJDb25uZWN0aW9u
UHJveHkuaCIKICNpbmNsdWRlICJJbWFnZUJpdG1hcE9wdGlvbnMuaCIKICNpbmNsdWRlICJJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKQEAgLTQ1LDYgKzQ2LDcgQEAKICNpbmNsdWRlICJTZWN1
cml0eU9yaWdpblBvbGljeS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5o
IgogI2luY2x1ZGUgIlNvY2tldFByb3ZpZGVyLmgiCisjaW5jbHVkZSAiV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmgiCiAjaW5jbHVkZSAiV29ya2VyTG9hZGVyUHJveHkuaCIKICNpbmNsdWRlICJXb3Jr
ZXJMb2NhdGlvbi5oIgogI2luY2x1ZGUgIldvcmtlck1lc3NhZ2luZ1Byb3h5LmgiCkBAIC01MjEs
NiArNTIzLDIzIEBAIEZvbnRDYWNoZSYgV29ya2VyR2xvYmFsU2NvcGU6OmZvbnRDYWNoZSgpCiAg
ICAgcmV0dXJuICptX2ZvbnRDYWNoZTsKIH0KIAorUmVmPEZvbnRGYWNlU2V0PiBXb3JrZXJHbG9i
YWxTY29wZTo6Zm9udHMoKQoreworICAgIEFTU0VSVChjc3NGb250U2VsZWN0b3IoKSk7CisgICAg
cmV0dXJuIGNzc0ZvbnRTZWxlY3RvcigpLT5mb250RmFjZVNldCgpOworfQorCitzdGQ6OnVuaXF1
ZV9wdHI8Rm9udExvYWRSZXF1ZXN0PiBXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0
KFN0cmluZyYgdXJsLCBib29sLCBib29sLCBMb2FkZWRGcm9tT3BhcXVlU291cmNlIGxvYWRlZEZy
b21PcGFxdWVTb3VyY2UpCit7CisgICAgcmV0dXJuIG1ha2VVbmlxdWU8V29ya2VyRm9udExvYWRS
ZXF1ZXN0Pihjb21wbGV0ZVVSTCh1cmwpLCBsb2FkZWRGcm9tT3BhcXVlU291cmNlKTsKK30KKwor
dm9pZCBXb3JrZXJHbG9iYWxTY29wZTo6YmVnaW5Mb2FkaW5nRm9udFNvb24oRm9udExvYWRSZXF1
ZXN0JiByZXF1ZXN0KQoreworICAgIEFTU0VSVChpczxXb3JrZXJGb250TG9hZFJlcXVlc3Q+KHJl
cXVlc3QpKTsKKyAgICBkb3duY2FzdDxXb3JrZXJGb250TG9hZFJlcXVlc3Q+KHJlcXVlc3QpLmxv
YWQoKnRoaXMpOworfQorCiBSZWZlcnJlclBvbGljeSBXb3JrZXJHbG9iYWxTY29wZTo6cmVmZXJy
ZXJQb2xpY3koKSBjb25zdAogewogICAgIHJldHVybiBtX3JlZmVycmVyUG9saWN5OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCmluZGV4IDZlYmU0NjUxMWZiYTIx
YzJmODUxNmRlNDUyNjgwMTRjYzI3ZjE2OGUuLjFlZmU5YzhkMWVjMjkxZTkyNmNhMzIzMmMyZTc4
YmFhMzc3N2ZiMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xv
YmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3Bl
LmgKQEAgLTUxLDYgKzUxLDcgQEAgY2xhc3MgQ1NTRm9udFNlbGVjdG9yOwogY2xhc3MgQ1NTVmFs
dWVQb29sOwogY2xhc3MgQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzOwogY2xh
c3MgQ3J5cHRvOworY2xhc3MgRm9udEZhY2VTZXQ7CiBjbGFzcyBQZXJmb3JtYW5jZTsKIGNsYXNz
IFNjaGVkdWxlZEFjdGlvbjsKIGNsYXNzIFdvcmtlckxvY2F0aW9uOwpAQCAtMTI0LDYgKzEyNSw5
IEBAIHB1YmxpYzoKICAgICBDU1NWYWx1ZVBvb2wmIGNzc1ZhbHVlUG9vbCgpIGZpbmFsOwogICAg
IENTU0ZvbnRTZWxlY3RvciogY3NzRm9udFNlbGVjdG9yKCkgZmluYWw7CiAgICAgRm9udENhY2hl
JiBmb250Q2FjaGUoKSBmaW5hbDsKKyAgICBSZWY8Rm9udEZhY2VTZXQ+IGZvbnRzKCk7CisgICAg
c3RkOjp1bmlxdWVfcHRyPEZvbnRMb2FkUmVxdWVzdD4gZm9udExvYWRSZXF1ZXN0KFN0cmluZyYg
dXJsLCBib29sIGlzU1ZHLCBib29sIGlzSW5pdGlhdGluZ0VsZW1lbnRJblVzZXJBZ2VudFNoYWRv
d1RyZWUsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UpIGZpbmFsOworICAgIHZvaWQgYmVnaW5Mb2Fk
aW5nRm9udFNvb24oRm9udExvYWRSZXF1ZXN0JikgZmluYWw7CiAKICAgICBSZWZlcnJlclBvbGlj
eSByZWZlcnJlclBvbGljeSgpIGNvbnN0IGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCmluZGV4IGY4NTc4YTQ3MWY0OGI0ODU4YmJmYmJmYmM4
YTA1Y2NkZDliNjliMjYuLmUyOGU4OWVmZjRjYjAyZjc0ZGYwYmQxYTI5MDFhNzU3MTQ1Y2VjZmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC00
OCwzICs0OCw0IEBACiB9OwogCiBXb3JrZXJHbG9iYWxTY29wZSBpbmNsdWRlcyBXaW5kb3dPcldv
cmtlckdsb2JhbFNjb3BlOworV29ya2VyR2xvYmFsU2NvcGUgaW5jbHVkZXMgRm9udEZhY2VTb3Vy
Y2U7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAyMGFkNzA1ZTUxNThiMTZiNGNi
OTRlZjQ5NWMyNmQ4NDgwN2U1YTVjLi4zMTVlNGI0ZjU0MTkyZmVjZDE0ZmVhZjM5YWVmZjQ4MGUx
OWYzM2M4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NyBAQAor
MjAyMS0wNC0xNiAgQ2hyaXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1w
bGVtZW50IEZvbnRGYWNlIGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS83NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxl
ci4KKworICAgICAgICBGb250RmFjZSBpcyBub3cgYXZhaWxhYmxlIGZvciBXb3JrZXJzLCByZWJh
c2VsaW5lIHJlbGF0ZWQgdGVzdHMuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1mb250LWxvYWRpbmcvZm9udGZhY2VzZXQtbG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWdu
LmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtl
ci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5i
YXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFz
ZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50
b3Aud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQu
d29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uu
d29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3Jr
ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNw
YWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2Uu
Y29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNl
LmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5j
b2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29s
bGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJv
dW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFz
dXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0
aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA0LTIxICBUaW0gTmd1eWVuICA8
bnRpbUBhcHBsZS5jb20+CiAKICAgICAgICAgSW1wb3J0IGNzcy9jc3Mtd2lsbC1jaGFuZ2UgdGVz
dHMgZnJvbSBXUFQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1mb250LWxvYWRpbmcvZm9udGZhY2VzZXQtbG9hZC1jc3Mtd2lk
ZS1rZXl3b3Jkcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtZm9udC1sb2FkaW5nL2ZvbnRmYWNlc2V0LWxvYWQtY3NzLXdp
ZGUta2V5d29yZHMtZXhwZWN0ZWQudHh0CmluZGV4IGI4MzFlNThmZTUzY2RiOGVmYWNjMDIzZDIz
ZTU5YWUyYjE5NjYyOTUuLjYyNzViMTNlNWM3MGYxYWYzNmU4OGFhMDkyZDk1MTU2YTQ5ODgzYWMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1mb250LWxvYWRpbmcvZm9udGZhY2VzZXQtbG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWZvbnQtbG9hZGluZy9mb250ZmFjZXNldC1sb2FkLWNzcy13aWRlLWtleXdv
cmRzLWV4cGVjdGVkLnR4dApAQCAtMSwxMyArMSwxMCBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdzZWxmLmZvbnRz
LmxvYWQnKQotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3NlbGYuZm9udHMubG9hZCcpCiAK
IFBBU1MgTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3JkICJpbml0aWFsIiBjYXVzZXMgU3ludGF4RXJy
b3IgKGRvY3VtZW50KQogUEFTUyBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgImluaGVyaXQiIGNh
dXNlcyBTeW50YXhFcnJvciAoZG9jdW1lbnQpCiBQQVNTIExvYWRpbmcgQ1NTLXdpZGUga2V5d29y
ZCAidW5zZXQiIGNhdXNlcyBTeW50YXhFcnJvciAoZG9jdW1lbnQpCiBQQVNTIExvYWRpbmcgQ1NT
LXdpZGUga2V5d29yZCAicmV2ZXJ0IiBjYXVzZXMgU3ludGF4RXJyb3IgKGRvY3VtZW50KQotVElN
RU9VVCBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgImluaXRpYWwiIGNhdXNlcyBTeW50YXhFcnJv
ciAod29ya2VyKSBUZXN0IHRpbWVkIG91dAotTk9UUlVOIExvYWRpbmcgQ1NTLXdpZGUga2V5d29y
ZCAiaW5oZXJpdCIgY2F1c2VzIFN5bnRheEVycm9yICh3b3JrZXIpCi1OT1RSVU4gTG9hZGluZyBD
U1Mtd2lkZSBrZXl3b3JkICJ1bnNldCIgY2F1c2VzIFN5bnRheEVycm9yICh3b3JrZXIpCi1OT1RS
VU4gTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3JkICJyZXZlcnQiIGNhdXNlcyBTeW50YXhFcnJvciAo
d29ya2VyKQorUEFTUyBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgImluaXRpYWwiIGNhdXNlcyBT
eW50YXhFcnJvciAod29ya2VyKQorUEFTUyBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgImluaGVy
aXQiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2VyKQorUEFTUyBMb2FkaW5nIENTUy13aWRlIGtl
eXdvcmQgInVuc2V0IiBjYXVzZXMgU3ludGF4RXJyb3IgKHdvcmtlcikKK1BBU1MgTG9hZGluZyBD
U1Mtd2lkZSBrZXl3b3JkICJyZXZlcnQiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2VyKQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53
b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGU5ZDdmNTc0ZjQ1NTBjZDVmMmYzNGMzYTBjNmI4OWRk
M2RhOGZkZDMuLjExZGRjZmNlNjcwYjVlZmFiNDE3NjIzNTgwYjI4Yjc0ZDJhMTA2MzUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53
b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBjZW50
ZXIgaXMgdGhlIGNlbnRlciBvZiB0aGUgZW0gc3F1YXJlcyAobm90IHRoZSBib3VuZGluZyBib3gp
IENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBjZW50ZXIgaXMg
dGhlIGNlbnRlciBvZiB0aGUgZW0gc3F1YXJlcyAobm90IHRoZSBib3VuZGluZyBib3gpCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIu
d29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzOGRkNzhiZWViZWJmOTJlZDAyYjE1NDk2MmEwYTA5
NTAwZDk2YzFjLi5lMDkyZTFmOGJjNmRmNzVkMWM5MTVhNGI0ZmI5YWVkYmUxZjhjNzliIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0
ci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBl
bmQgd2l0aCBsdHIgaXMgdGhlIHJpZ2h0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZh
Y2UKK1BBU1MgdGV4dEFsaWduIGVuZCB3aXRoIGx0ciBpcyB0aGUgcmlnaHQgZWRnZQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndv
cmtlci1leHBlY3RlZC50eHQKaW5kZXggMDU4YmI5OWRlMzM1YTRiZmQwM2ZiNTE2NzM0MWVkNDBi
YWJjYjkxMi4uNGI2ZGUyN2UyNDg4YmVlYjlkY2VjOWRkZWIxZWI0NDIwYmUzZjVjMiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwu
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gZW5k
IHdpdGggcnRsIGlzIHRoZSBsZWZ0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UK
K1BBU1MgdGV4dEFsaWduIGVuZCB3aXRoIHJ0bCBpcyB0aGUgbGVmdCBlZGdlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVj
dGVkLnR4dAppbmRleCBmMjkyZjk0NDEyNzlkY2E5NTc0YzJiZjAzMTY2YjEzOTUxOTJjNTYzLi5i
MjNmNzc4Y2ZlMDFjNTQ1MzkyMDAyM2ExYTMzZDQ5NmQ1ZjJmYWEzIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQu
dHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBsZWZ0IGlzIHRoZSBsZWZ0IG9m
IHRoZSBmaXJzdCBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxpZ24gbGVmdCBpcyB0aGUgbGVmdCBvZiB0aGUg
Zmlyc3QgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggZmY1YTQwMjBiZGFiMGE2MTE5ZmQ2NGFlNDc3MmZjMTViMTFlYTU2NS4uYTEwODJk
NWI4YzU4NTQ0OTNkYTA4OTUwMTYwZWZkY2E2OWIzZWIwZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0
CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiByaWdodCBpcyB0aGUgcmlnaHQgb2Yg
dGhlIGxhc3QgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJp
YWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIHJpZ2h0IGlzIHRoZSByaWdodCBvZiB0aGUg
bGFzdCBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhw
ZWN0ZWQudHh0CmluZGV4IDZmZDk2NTU0NTJjZjAxNjdiNGFkMDljMTJlOTM2N2MwY2M4YjEyYTku
LjE5ZjAyYmYzZDA4NWY0MWFhZTk2OWNhYmY5ZDQ5YjJjZjdhMGYyOTYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3Jr
ZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBzdGFydCB3
aXRoIGx0ciBpcyB0aGUgbGVmdCBlZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQ
QVNTIHRleHRBbGlnbiBzdGFydCB3aXRoIGx0ciBpcyB0aGUgbGVmdCBlZGdlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndv
cmtlci1leHBlY3RlZC50eHQKaW5kZXggYmQ1YTU5ZDc5ZTZlMDVhZGMzODQzOWNhZDVkYmY1YjIx
ZDljODY5Yy4uNDFjM2YyNGFmMGJkYjQ2MzYyNTFjNDk0ZmRjNjQ5ZTNkOWU2OTFiZCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQu
cnRsLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWdu
IHN0YXJ0IHdpdGggcnRsIGlzIHRoZSByaWdodCBlZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZv
bnRGYWNlCitQQVNTIHRleHRBbGlnbiBzdGFydCB3aXRoIHJ0bCBpcyB0aGUgcmlnaHQgZWRnZQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJl
dGljLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNl
bGluZS5hbHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdk
YTNhYmYyZWVjNGQ3YTliOTYxNTFkM2ZlZC4uYTE3ZWVmNTA5MmI3ZDAzODI3YWNkNjViNzk3OGVl
NGI5YmUyMGRjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxp
bmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwz
ICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyAy
ZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0
b20ud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2Vs
aW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDZhMTU0OWMxN2IyMjZhOWU1NTY1
NzVjZTkyZjcyOTY4ODljZGEyOTIuLmZmMjgzNjA5ODUzODU0MmQ3MmVkYzI5MTAwZjU4MDZhODIz
YjA3NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJv
dHRvbS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1G
QUlMIHRleHRCYXNlbGluZSBib3R0b20gaXMgdGhlIGJvdHRvbSBvZiB0aGUgZW0gc3F1YXJlIChu
b3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwg
dGV4dEJhc2VsaW5lIGJvdHRvbSBpcyB0aGUgYm90dG9tIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0
aGUgYm91bmRpbmcgYm94KSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhl
IHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2lu
Zy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5
Yjk2MTUxZDNmZWQuLmNiZWYyNzZhMzQ3OGZhYmMxMWFiNWY0ZjFiNWQyNTkyNTU3Njk4ZGUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29y
a2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGlu
ZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQg
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgMmQgYXNzZXJ0X2FwcHJveF9lcXVh
bHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBi
dXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNl
bGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBk
Mzg5OTQwYWY2NWY0N2RhM2FiZjJlZWM0ZDdhOWI5NjE1MWQzZmVkLi5jYmVmMjc2YTM0NzhmYWJj
MTFhYjVmNGYxYjVkMjU5MjU1NzY5OGRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTog
Rm9udEZhY2UKK0ZBSUwgMmQgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRo
ZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53
b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDMwMDY3MzhhOWM2ZDhmOTIwZWQ5YzBjOGNlNjZlYzkz
MjM5M2ViYWEuLmFkNjQ5NDllMTUxMmE1Yjg3MGIwNmQxMjA0OGYyYjhmMjg2ODMxOTYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1p
ZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRCYXNl
bGluZSBtaWRkbGUgaXMgdGhlIG1pZGRsZSBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5k
aW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4dEJhc2VsaW5l
IG1pZGRsZSBpcyB0aGUgbWlkZGxlIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcg
Ym94KSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1
LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRvcC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQK
aW5kZXggZTI2ZjFiNmY4YTM0M2IwZGE1MzU5YWVlNDgxNjliNDdmYjYyNzBhYS4uODBlOThmYjI1
YjY5NDNiM2M4Mjk0ZGMyMmUzYmJiN2E3MDJhMzY0NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEJhc2VsaW5lIHRvcCBpcyB0aGUgdG9wIG9mIHRo
ZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBG
b250RmFjZQorRkFJTCB0ZXh0QmFzZWxpbmUgdG9wIGlzIHRoZSB0b3Agb2YgdGhlIGVtIHNxdWFy
ZSAobm90IHRoZSBib3VuZGluZyBib3gpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5l
bCBvZiB0aGUgcGl4ZWwgYXQgKDUsIDUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3Vu
ZC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5t
YXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDljM2Y4NWU0OTBhMjEzNmQz
ZjQ1MDViYjM5M2JhMzljYjQ5MDJiYmEuLmVlNDI5MWQyYmU4MzU4NDQ1MDI4ZjdiMmU1MzkwYTRi
OWZhNGUwMGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4
V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyAr
MSwzIEBACiAKLUZBSUwgZmlsbFRleHQgaGFuZGxlcyBtYXhXaWR0aCBiYXNlZCBvbiBsaW5lIHNp
emUsIG5vdCBib3VuZGluZyBib3ggc2l6ZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQor
UEFTUyBmaWxsVGV4dCBoYW5kbGVzIG1heFdpZHRoIGJhc2VkIG9uIGxpbmUgc2l6ZSwgbm90IGJv
dW5kaW5nIGJveCBzaXplCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCA2YjkyYzM4ZjMyMjIyOThjYThhYThlZTIxOTZjMzhlMTRhN2I5Yzc4Li5iMmNlMjcx
YmYxMDFlM2M5YjYyYjU4YmQxODkyOTc1OTFkNzlhNzZkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250ZmFj
ZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIGZpbGxUZXh0IHdv
cmtzIG9uIEBmb250LWZhY2UgZm9udHMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BB
U1MgZmlsbFRleHQgd29ya3Mgb24gQGZvbnQtZmFjZSBmb250cwogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3Jr
ZXItZXhwZWN0ZWQudHh0CmluZGV4IGU3OTM1N2FhYjI1ZjYxOGVmNWE3ZTA0YmZiYTQ4NTcwZTk0
ZjJlY2IuLjFhYjk5MWYyMmVlZGU1YjI4ZjMxMTljOWY1MmZhN2Q4MWQ4M2MzMjIgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5v
dGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEBmb250
LWZhY2UgZm9udHMgc2hvdWxkIHdvcmsgZXZlbiBpZiB0aGV5IGFyZSBub3QgdXNlZCBpbiB0aGUg
cGFnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBAZm9udC1mYWNlIGZvbnRz
IHNob3VsZCB3b3JrIGV2ZW4gaWYgdGhleSBhcmUgbm90IHVzZWQgaW4gdGhlIHBhZ2UKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBl
YXQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAwZjc1ZWE5MjEyOWRkNGYyYWY5ZDJmNTNmMWVm
YjY0ZjE5OTExNjQ1Li4zOWVkYTRkYzJmZjY2M2UxZjI4MzZlNTY3Y2U3NjM4NjU1NjkxZDk1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29y
a2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFj
ZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBEcmF3
IHdpdGggdGhlIGZvbnQgaW1tZWRpYXRlbHksIHRoZW4gd2FpdCBhIGJpdCB1bnRpbCBhbmQgZHJh
dyBhZ2Fpbi4gKFRoaXMgY3Jhc2hlcyBzb21lIHZlcnNpb24gb2YgV2ViS2l0LikgQ2FuJ3QgZmlu
ZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgRHJhdyB3aXRoIHRoZSBmb250IGltbWVkaWF0ZWx5
LCB0aGVuIHdhaXQgYSBiaXQgdW50aWwgYW5kIGRyYXcgYWdhaW4uIChUaGlzIGNyYXNoZXMgc29t
ZSB2ZXJzaW9uIG9mIFdlYktpdC4pCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3
ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmExN2VlZjUwOTJiN2QwMzgyN2FjZDY1Yjc5Nzhl
ZTRiOWJlMjBkYzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRm
YWNlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
Zm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyAyZAogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCA5YTMyNDAyNzVlZDM4N2RiZGZkNWQyNWMxZjVhMjdhOWRlNjljNzVhLi4xZWQ0NGY4
ZjdkYmNiMTYzNGJmNDlhNzNiZjk1OTViOTc5MjA5OGNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVSswMDIwIGlzIHJlbmRlcmVkIHRoZSBjb3JyZWN0IHNp
emUgKDFlbSB3aWRlKSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBVKzAwMjAg
aXMgcmVuZGVyZWQgdGhlIGNvcnJlY3Qgc2l6ZSAoMWVtIHdpZGUpCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndv
cmtlci1leHBlY3RlZC50eHQKaW5kZXggNmU1ZjgzMmQxNDJlMGU3NTUyNDkyOGU1Mjc0ZWI5MGEw
YTMyY2I2YS4uNDJmNTcwZjBiOWU3OGQ5NDdjMGUwYmM2NGFiNjgxNjhjMzY2NTUyYyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtl
ci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29s
bGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3Bh
Y2UgY2hhcmFjdGVycyBhdCB0aGUgZW5kIG9mIGEgbGluZSBhcmUgY29sbGFwc2VkIChwZXIgQ1NT
KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0
IHRoZSBlbmQgb2YgYSBsaW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hf
ZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDc1LCAyNSkgZXhwZWN0ZWQgMCAr
Ly0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4cGVjdGVk
LnR4dAppbmRleCBhZTQ2MTVkZTRjYzQwMjk3NjBkMTc1YzkwNzQyOTc5ZWU1NTMwMzVjLi45ZTVk
NDcwNDQ5NTI5MzkxN2NkNWVlNTY0NmY0OGM4Yzk4ZGE2YmQ4IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5v
bnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgTm9uLXNw
YWNlIGNoYXJhY3RlcnMgYXJlIG5vdCBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQg
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgTm9uLXNwYWNlIGNoYXJhY3RlcnMg
YXJlIG5vdCBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90
aGVyLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOTRhMDA0M2EwYTMzNzllMTI4ZWIxNjQwYjRm
NjQyOGIyZDcxMzlkYS4uNjgyY2ZiOTM5YjBmODUwMTBiN2QzM2U1ODQyMTA1NmE1MWI0ODAxNCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3Ro
ZXIud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5z
cGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAog
Ci1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAsIGFuZCBjb2xs
YXBzZWQgKHBlciBDU1MpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNl
IGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBD
U1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1
LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3BhY2Uud29y
a2VyLWV4cGVjdGVkLnR4dAppbmRleCA5NGEwMDQzYTBhMzM3OWUxMjhlYjE2NDBiNGY2NDI4YjJk
NzEzOWRhLi42ODJjZmI5MzliMGY4NTAxMGI3ZDMzZTU4NDIxMDU2YTUxYjQ4MDE0IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3Jr
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNv
bGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwg
U3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAo
cGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFj
dGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgYXNz
ZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBl
eHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53b3JrZXItZXhw
ZWN0ZWQudHh0CmluZGV4IDUwODY4ZmU5MTk4MGNhNzBiNDA5Zjc2MzczOWU4NDBlZjk2ZjNkNWQu
LjdiY2I1MWNjYzdiOWMwYTE2MDlkNWVhY2QzZDM0ZGMyODE4MTI4NGMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uu
c3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBj
aGFyYWN0ZXJzIGF0IHRoZSBzdGFydCBvZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykg
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0
aGUgc3RhcnQgb2YgYSBsaW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hf
ZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCAr
Ly0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVh
c3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCAzMTIwZmNiOGZhZGRkOWU1NDI2NzQ1ZGQ1NTZmOWQ0Mzc5YmZlN2I3Li44MjU0Y2U2NzQy
NDg2MjJlZTA3YjQ0YzdkOWY4YjZjZGY3NjFjZjYyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtl
ci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBhY3R1YWxCb3Vu
ZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNl
CitGQUlMIFRlc3RpbmcgYWN0dWFsQm91bmRpbmdCb3ggZm9yIE9mZnNjcmVlbkNhbnZhcyBhc3Nl
cnRfZXF1YWxzOiBNYXRoLmFicyhjdHgubWVhc3VyZVRleHQoJ0EnKS5hY3R1YWxCb3VuZGluZ0Jv
eERlc2NlbnQpID09PSAwIChnb3QgMVtudW1iZXJdLCBleHBlY3RlZCAwW251bWJlcl0pIGV4cGVj
dGVkIDAgYnV0IGdvdCAxCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFz
dXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGY0YTA4NDAzYzFlYjhi
NDFhYzRiYTU4MDYyYTQzNTI4NTc1NTU1YWIuLjkzOGM3OTkxMWQwNmVmNTE0ZDdiMWM5YzZhNDU0
MTUxYTFiZjU3YjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFk
dmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUuYWR2YW5jZXMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJ
TCBUZXN0aW5nIHdpZHRoIGFkdmFuY2VzIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2
YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGluZyB3aWR0aCBhZHZhbmNlcyBmb3IgT2Zmc2Ny
ZWVuQ2FudmFzIHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdjdHgubWVh
c3VyZVRleHQoJ0hlbGxvJykuYWR2YW5jZXNbMF0nKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNlbGluZXMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDNkMjk5MGMxMWU5NmUxNzE4NTc4OTM0Y2YzMmNhYjYzNDQ3OTZjNzEuLmUxZDIyOTM4NGQx
YTcwNjUwMmU1MTg0MjkyZjU3ZDgzNDRjNDkyN2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIFRlc3RpbmcgYmFzZWxpbmVzIGZvciBPZmZzY3JlZW5DYW52
YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGluZyBiYXNlbGluZXMg
Zm9yIE9mZnNjcmVlbkNhbnZhcyBjdHgubWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnY3R4Lm1lYXN1cmVUZXh0KCdBJykuZ2V0QmFzZWxpbmVzKCkn
LCAnY3R4Lm1lYXN1cmVUZXh0KCdBJykuZ2V0QmFzZWxpbmVzJyBpcyB1bmRlZmluZWQpCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndv
cmtlci1leHBlY3RlZC50eHQKaW5kZXggODVhNzJjZWExNzE5M2ZiZjEwOGViZjRiNDYxM2ZlOWU5
MjU5ZDBkMC4uYWNhZmFkZjg2MWMwN2ZhN2ZmZjUxZjMwMWZhN2UxOWZkZWJhZjFmYSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndv
cmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBlbUhlaWdo
dHMgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJ
TCBUZXN0aW5nIGVtSGVpZ2h0cyBmb3IgT2Zmc2NyZWVuQ2FudmFzIGFzc2VydF9lcXVhbHM6IGN0
eC5tZWFzdXJlVGV4dCgnQScpLmVtSGVpZ2h0QXNjZW50ID09PSAzNy41IChnb3QgODVbbnVtYmVy
XSwgZXhwZWN0ZWQgMzcuNVtudW1iZXJdKSBleHBlY3RlZCAzNy41IGJ1dCBnb3QgODUKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91
bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAxNGM3ZGE0NGJkMGVkY2Y2ODFhZjdh
ZjNkYzZiNmU3ZmExNWE0NjUwLi4yNWJhY2UzZWZjZjE3ZmZlMjdiMDUzMTc5ZmRkZDBmZTkzMTIw
M2NkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRp
bmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVh
c3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAK
IAotRkFJTCBUZXN0aW5nIGZvbnRCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0
IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIFRlc3RpbmcgZm9udEJvdW5kaW5nQm94IGZv
ciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNWM3ODBj
OWU0ZTUxODYxYjAxZGEzMGNmMTRkNzM4NTIzNDM5YTI5My4uOTQyZjkxNDEwNTU1OTI3NzliODQz
YWI2NmE1MTU2YzliMmYwN2QwNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQubWVhc3VyZS53aWR0aC5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsMyBAQAogCi1GQUlMIFRoZSB3aWR0aCBvZiBjaGFyYWN0ZXIgaXMgc2FtZSBhcyBmb250IHVz
ZWQgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFT
UyBUaGUgd2lkdGggb2YgY2hhcmFjdGVyIGlzIHNhbWUgYXMgZm9udCB1c2VkIGZvciBPZmZzY3Jl
ZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lk
dGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFz
dXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNTAwZDcyN2QzYjY3ZGM5
ODZhZmVmNGI5ZDJmMmE3NDY5OWUxZDNlZS4uNjg3YmM0ZjM1ZmNmNGNjZDc0Nzc0MTFhNzYyMzM0
M2IzMGJkZTkzOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lk
dGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
bWVhc3VyZS53aWR0aC5lbXB0eS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAog
Ci1GQUlMIFRoZSBlbXB0eSBzdHJpbmcgaGFzIHplcm8gd2lkdGggZm9yIE9mZnNjcmVlbkNhbnZh
cyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBUaGUgZW1wdHkgc3RyaW5nIGhh
cyB6ZXJvIHdpZHRoIGZvciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggOTNkNzExYzRiYjk0NzIyMDRjN2YxNDM1YzhiZTAwZmRjN2IyNmIyYS4uMDUzNzI5
MDBkNTY2Zjc5YjQ1NWMzZWE1NTI1MjA2NTI1ZmQyMDFjYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZl
cnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgZm9yIE9mZnNjcmVlbkNhbnZh
cyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFy
ZSBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIGZvciBPZmZzY3Jl
ZW5DYW52YXMgYXNzZXJ0X2VxdWFsczogY3R4Lm1lYXN1cmVUZXh0KCdBIFx4MDlceDBhXHgwY1x4
MGQgIFx4MDlceDBhXHgwY1x4MGRCJykud2lkdGggPT09IDE1MCAoZ290IDY1MFtudW1iZXJdLCBl
eHBlY3RlZCAxNTBbbnVtYmVyXSkgZXhwZWN0ZWQgMTUwIGJ1dCBnb3QgNjUwCiAK
</data>
<flag name="commit-queue"
          id="447180"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426797</attachid>
            <date>2021-04-22 04:17:35 -0700</date>
            <delta_ts>2021-04-22 04:38:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210422121734.patch</filename>
            <type>text/plain</type>
            <size>88596</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NDI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2M1M2NlZGNhOTg1YmRj
YTU2MjUwMGU4ODE1OTRjOTZiM2Q2ZGFmZi4uYzNhZTIxYjNhNDI3MWQ1OGM2MTZkYzNhZmU4OGU0
ZGY5ZTJkZDVhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyMiBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBU
byBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGltcGxl
bWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJsZSBv
biBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFpbGFi
bGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAgICBt
YWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCByZWJh
c2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6CisgICAg
ICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0LmNw
cCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGluZ0JhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgVXNlIHRoZSBTY3JpcHRFeGVjdXRp
b25Db250ZXh0J3MgRm9udENhY2hlIGlmIHBvc3NpYmxlIHdoZW4gbG9hZGluZyBmb250cy4KKwor
ICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NG
b250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjptYXRjaGluZ0ZhY2VzRXhjbHVkaW5nUHJl
aW5zdGFsbGVkRm9udHMpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1ZVBvb2wg
YW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9yRmFtaWx5
UmVnaXN0ZXJlZC4gQWxzbyBjbGFyaWZ5IGEgdmFndWVseS1uYW1lZAorICAgICAgICAgIHZhcmlh
YmxlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0ZvbnRGYWNlU291cmNlOjpDU1NGb250RmFjZVNvdXJjZSk6CisgICAgICAgICAg
VXNlIEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nIGluc3RlYWQgb2YgbWFraW5nIGFzc3VtcHRp
b25zIGFib3V0IHRoZQorICAgICAgICAgIHJlcXVlc3Qgc3RhdGUgb24gY29uc3RydWN0aW9uLgor
CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRGYWNl
OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udEZhY2U6OmRpc3BsYXkgY29uc3QpOgor
ICAgICAgICAqIGNzcy9Gb250RmFjZS5oOgorICAgICAgICAqIGNzcy9Gb250RmFjZS5pZGw6Cisg
ICAgICAgICAgQ29uc3RydWN0IHdpdGggYSBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGluc3RlYWQg
b2YgYSBEb2N1bWVudCBhbmQKKyAgICAgICAgICBtYWtlIGF2YWlsYWJsZSBmb3IgV29ya2Vycy4K
KworICAgICAgICAqIGNzcy9Gb250RmFjZVNldC5pZGw6CisgICAgICAgICAgRXhwb3NlIHRvIFdv
cmtlcnMuCisKKyAgICAgICAgKiBsb2FkZXIvRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpGb250TG9hZFJlcXVlc3Q6OmlzV29ya2VyRm9udExvYWRSZXF1ZXN0IGNvbnN0KToK
KyAgICAgICAgICBBZGQgaXNQZW5kaW5nIGZ1bmN0aW9uIGFuZCBuZXcgdHlwZSBXb3JrZXJGb250
TG9hZFJlcXVlc3QuCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRGb250OjpjcmVhdGVDdXN0b21Gb250RGF0YSk6CisgICAg
ICAgICAgVXNlIGNvbnZlcnRXT0ZGVG9TZm50SWZOZWNlc3NhcnkoKS4KKworICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaDoKKyAgICAgICAgICBJbXBsZW1lbnQg
Rm9udExvYWRSZXF1ZXN0Ojppc1BlbmRpbmcuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpGb250OjpGb250KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OnN5c3RlbUZhbGxi
YWNrRm9udEZvckNoYXJhY3RlciBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udC5oOgorICAgICAgICAgIEFkZCBhbiBvcHRpb25hbCBGb250Q2FjaGUgcGFyYW1ldGVyIGZv
ciB1c2Ugd2l0aCB2ZXJ0aWNhbCBmb250IGRhdGEKKyAgICAgICAgICByZXRyaWV2YWwgYW5kIGFk
ZCBhIEZvbnRDYWNoZSBwYXJhbWV0ZXIgdG8KKyAgICAgICAgICBzeXN0ZW1GYWxsYmFja0ZvbnRG
b3JDaGFyYWN0ZXIgaW5zdGVhZCBvZiB1c2luZyB0aGUgc2luZ2xldG9uLgorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRD
YWNoZTo6Zm9udEZvclBsYXRmb3JtRGF0YSk6CisgICAgICAgICAgUGFzcyBGb250Q2FjaGUgcGFy
YW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250Q2FjaGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYWNoZTo6Zm9udENhY2hlRmFs
bGluZ0JhY2tUb1NpbmdsZXRvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
c2NhZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGU6OnVwZGF0ZSBjb25zdCk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvSGFyZmJ1enpORy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2FkZTo6Zm9udEZvckNvbWJpbmluZ0NoYXJh
Y3RlclNlcXVlbmNlIGNvbnN0KToKKyAgICAgICAgICBSZW5hbWUgZm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbiAtPiBmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uCisKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRDYXNjYWRlRm9udHM6OnJlYWxpemVGYWxsYmFja1Jhbmdlc0F0KToKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDYXNjYWRlRm9udHM6OmdseXBoRGF0YUZvclN5c3RlbUZhbGxiYWNrKToK
KyAgICAgICAgICBVc2UgZmFtaWx5TmFtZXNEYXRhIGluc3RlYWQgb2YgZmFtaWx5TmFtZXMgYW5k
IHBhc3MgdGhlIEZvbnRDYWNoZQorICAgICAgICAgIHBhcmFtZXRlciB3aGVuIGNhbGxpbmcgZ2x5
cGhEYXRhRm9yU3lzdGVtRmFsbGJhY2sgdG8gbWFrZSB0aGlzIHNhZmUKKyAgICAgICAgICB0byB1
c2UgaW4gYSBXb3JrZXIuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250VGFnZ2Vk
U2V0dGluZ3MuaDoKKyAgICAgICAgICBBZGQgbWlzc2luZyB3dGYvSGFzaGVyLmggaW5jbHVkZS4K
KworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmNvbnZlcnRXT0ZGVG9TZm50SWZOZWNlc3NhcnkpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0Lmg6CisgICAgICAgICAgQWRkIHV0aWxpdHkg
ZnVuY3Rpb24gdG8gY29udmVydCBXT0ZGIGZvbnRzIG9uIG5vbi1Db2NvYSBwbGF0Zm9ybXMuCisK
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHA6IEFkZGVkLgorICAg
ICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpXb3JrZXJGb250TG9hZFJlcXVl
c3QpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0Ojpsb2FkKToKKyAg
ICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3VzdG9tRm9udERh
dGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpjcmVhdGVGb250
KToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6c2V0Q2xpZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2
ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5p
c2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlk
RmFpbCk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaDogQWRkZWQu
CisgICAgICAgICAgSW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdCBmb3IgV29ya2Vycy4KKworICAg
ICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyR2xvYmFsU2NvcGU6OmZvbnRzKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2Jh
bFNjb3BlOjpmb250TG9hZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyR2xvYmFs
U2NvcGU6OmJlZ2luTG9hZGluZ0ZvbnRTb29uKToKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckds
b2JhbFNjb3BlLmg6CisgICAgICAgICAgSW1wbGVtZW50IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQg
Zm9udC1sb2FkaW5nIHJlbGF0ZWQgZnVuY3Rpb25zLgorCisgICAgICAgICogd29ya2Vycy9Xb3Jr
ZXJHbG9iYWxTY29wZS5pZGw6CisgICAgICAgICAgSW5jbHVkZSBGb250RmFjZVNvdXJjZS4KKwog
MjAyMS0wNC0yMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtpT1NdIFdlYiBwcm9jZXNzZXMgcmVjcmVhdGVkIGFmdGVyIGNyYXNoaW5nIGFyZSBu
b3QgY3JlYXRlZCB3aXRoIHRoZSByaWdodCBjb250ZW50U2l6ZUNhdGVnb3J5CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5j
bWFrZQppbmRleCBjMDRmODA0ZWQ5MzdjNjcwYWRlZjdiM2I2ODlkODk1ZGZhN2U3YjAwLi40OTk5
YmVjYWM2NTdkZGJhZGZjZDdkNWVmMzEwYTczMGZiNWMzN2NhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UK
QEAgLTE2NTQsNiArMTY1NCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURF
UlMKICAgICB3b3JrZXJzL1NjcmlwdEJ1ZmZlci5oCiAgICAgd29ya2Vycy9Xb3JrZXJBbmltYXRp
b25Db250cm9sbGVyLmgKICAgICB3b3JrZXJzL1dvcmtlckRlYnVnZ2VyUHJveHkuaAorICAgIHdv
cmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKICAgICB3b3JrZXJzL1dvcmtlckxvYWRlclBy
b3h5LmgKICAgICB3b3JrZXJzL1dvcmtlck9yV29ya2xldFRocmVhZC5oCiAgICAgd29ya2Vycy9X
b3JrZXJSdW5Mb29wLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIv
U291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggYmRiMmU1NTFhMWE5MjFkMzkyMTI1ZDk4
ODFlYzBkNDM2OTg0YmQwYi4uMTE5YzY5N2UwMjE2NmE4NTczNTgwOGQ3ZDFlN2FhOWM0MGQ1YjU0
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dl
YkNvcmUvU291cmNlcy50eHQKQEAgLTI2NTQsNiArMjY1NCw3IEBAIHdvcmtlcnMvV29ya2VyLmNw
cAogd29ya2Vycy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmNwcAogd29ya2Vycy9Xb3JrZXJD
b25zb2xlQ2xpZW50LmNwcAogd29ya2Vycy9Xb3JrZXJFdmVudExvb3AuY3BwCit3b3JrZXJzL1dv
cmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCiB3
b3JrZXJzL1dvcmtlckluc3BlY3RvclByb3h5LmNwcAogd29ya2Vycy9Xb3JrZXJMb2NhdGlvbi5j
cHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agppbmRleCA0Y2E1ODkyN2M3ZWI0MTI3NWVlNzUyZDI0MmEwMTI0YzA2MWIyMDJiLi4yZWFhY2Zi
NzdmNTEwMDJjOGVhZTI5ODYzMGE5NjJiZWNiMjNiN2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNDMyLDYgKzM0MzIsNyBA
QAogCQlBN0NGQjNEMjBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0NGQjNEMDBCN0VEMTBBMDA3MEMz
MkQgLyogRHJhZ0ltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJQTdEMjBGNjMxMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZv
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0QyMEY2
MTEwN0Y0MDY5MDBBODAzOTIgLyogSlNXZWJHTEFjdGl2ZUluZm8uaCAqLzsgfTsKIAkJQTdEMjBG
NkQxMDdGNDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNkIxMDdGNDM4QjAwQTgwMzkyIC8q
IFdlYkdMQWN0aXZlSW5mby5oICovOyB9OworCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyog
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBN0Q2QjM0NzBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJQTdENkIzNDkwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdENkIzNDcwRjYxMTA0
NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3REJGOERFMTI3NjkxOUMwMDZCNjAwOCAvKiBU
ZXh0Q2hlY2tpbmdIZWxwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE3REJGOERDMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIu
aCAqLzsgfTsKIAkJQTgwRDY3MDgwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBs
YXRmb3JtUHJpdmF0ZUNHLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBODBENjcwNzBFOUU5REVCMDBFNDIwRjAgLyogR3JhcGhpY3NDb250ZXh0UGxhdGZv
cm1Qcml2YXRlQ0cuaCAqLzsgfTsKQEAgLTEyODQ4LDYgKzEyODQ5LDggQEAKIAkJQTdEMjBGNjAx
MDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJbmZvLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTdEMjBGNjExMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3Rp
dmVJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJ
bmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDIwRjZCMTA3RjQzOEIwMEE4
MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV2ViR0xBY3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZC
MzQ3MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1ZXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZCMzQ4MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJG
b250TG9hZFJlcXVlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
V29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2FkZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDgwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNj
cmlwdExvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3Jr
ZXJTY3JpcHRMb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0RCRjhE
QjEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRDaGVja2luZ0hlbHBlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xOTQxOSw2ICsxOTQyMiw4IEBACiAJCQkJQTUyQjM0OUMx
RkE0MTZGODAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCAqLywKIAkJCQk5QjBBQkNB
MzIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmNwcCAqLywKIAkJCQk5QjBBQkNB
NDIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmggKi8sCisJCQkJQTdENkIzNDgw
RjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgKi8sCisJCQkJQTdE
NkIzNDcwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oICovLAogCQkJ
CTJFNDM0NjM2MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5jcHAgKi8sCiAJ
CQkJMkU0MzQ2MzcwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmggKi8sCiAJ
CQkJMkU0MzQ2MzgwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmlkbCAqLywK
QEAgLTM1ODMxLDYgKzM1ODM2LDcgQEAKIAkJCQlBNUI4MUNDRTFGQUE0NERFMDAzN0QxRTYgLyog
V29ya2VyRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTUyQjM0OUUxRkE0MTcw
MzAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkx
RTBEREM0MjMwQjQxRjEwMDE5RTFFMyAvKiBXb3JrZXJET01EZWJ1Z2dlckFnZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQkyRTQzNDY0OTBGNTQ2QTgyMDBCMEYxQkEgLyog
V29ya2VyR2xvYmFsU2NvcGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRDEyOUNFMUYzRDBFRjYw
MEQxNUU0NyAvKiBXb3JrZXJHbG9iYWxTY29wZUNhY2hlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MkU0MzQ2NEIwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlUHJveHkuaCBpbiBI
ZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAKaW5kZXggMWFkODA0NzdhYmEw
ZDM2NjdkMGRlNTYzYzkyZGNlYmU4YTllYzM5YS4uYjc3ZDExZmM2NDVkOTE4YTc1NjhjN2RkMzFk
MjE3ZmUxOTZmYzg1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuY3BwCkBAIC0zOTYsNiAr
Mzk2LDEzIEBAIERvY3VtZW50KiBDU1NGb250RmFjZTo6ZG9jdW1lbnQoKQogICAgIHJldHVybiBu
dWxscHRyOwogfQogCitGb250Q2FjaGUmIENTU0ZvbnRGYWNlOjpmb250Q2FjaGVGYWxsaW5nQmFj
a1RvU2luZ2xldG9uKCkKK3sKKyAgICBpZiAobV93cmFwcGVyICYmIG1fd3JhcHBlci0+c2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm4gbV93cmFwcGVyLT5zY3JpcHRFeGVj
dXRpb25Db250ZXh0KCktPmZvbnRDYWNoZSgpOworICAgIHJldHVybiBGb250Q2FjaGU6OnNpbmds
ZXRvbigpOworfQorCiBib29sIENTU0ZvbnRGYWNlOjpjb21wdXRlRmFpbHVyZVN0YXRlKCkgY29u
c3QKIHsKICAgICBpZiAoc3RhdHVzKCkgPT0gU3RhdHVzOjpGYWlsdXJlKQpAQCAtNjY5LDggKzY3
Niw5IEBAIFJlZlB0cjxGb250PiBDU1NGb250RmFjZTo6Zm9udChjb25zdCBGb250RGVzY3JpcHRp
b24mIGZvbnREZXNjcmlwdGlvbiwgYm9vbCBzeW50CiAgICAgICAgIHN3aXRjaCAoc291cmNlLT5z
dGF0dXMoKSkgewogICAgICAgICBjYXNlIENTU0ZvbnRGYWNlU291cmNlOjpTdGF0dXM6OlBlbmRp
bmc6CiAgICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6TG9hZGluZzogewor
ICAgICAgICAgICAgYXV0byYgZm9udENhY2hlID0gZm9udENhY2hlRmFsbGluZ0JhY2tUb1Npbmds
ZXRvbigpOwogICAgICAgICAgICAgRm9udDo6VmlzaWJpbGl0eSB2aXNpYmlsaXR5ID0gV2ViQ29y
ZTo6dmlzaWJpbGl0eShzdGF0dXMoKSwgZm9udExvYWRUaW1pbmcoKSk7Ci0gICAgICAgICAgICBy
ZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRDYWNoZTo6c2luZ2xldG9uKCkubGFzdFJlc29ydEZhbGxi
YWNrRm9udChmb250RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpM
b2NhbCwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOworICAgICAgICAgICAg
cmV0dXJuIEZvbnQ6OmNyZWF0ZShmb250Q2FjaGUubGFzdFJlc29ydEZhbGxiYWNrRm9udChmb250
RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpMb2NhbCwgJmZvbnRD
YWNoZSwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOwogICAgICAgICB9CiAg
ICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6U3VjY2VzczoKICAgICAgICAg
ICAgIGlmIChhdXRvIHJlc3VsdCA9IHNvdXJjZS0+Zm9udChmb250RGVzY3JpcHRpb24sIHN5bnRo
ZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgbV9mZWF0dXJlU2V0dGluZ3MsIG1fZm9udFNlbGVj
dGlvbkNhcGFiaWxpdGllcykpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9u
dEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCmluZGV4IGI1ZTQ5NzVk
MWQ1OTIwOWQ4NjJiZDg0NjJkZDdjZGZmZjZmNTlkYmQuLmYzZjAxNTdkMTAyMjRiNmE2ZTA0ZGYy
YjM3NjUxZTY2YjY0MTAxOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250
RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCkBAIC00Niw2ICs0
Niw3IEBAIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKIGNsYXNzIENTU1NlZ21lbnRlZEZvbnRGYWNl
OwogY2xhc3MgQ1NTVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZUxpc3Q7CitjbGFzcyBGb250Q2FjaGU7
CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250OwogY2xhc3MgRm9udEZhY2U7CkBA
IC0xNzIsNiArMTczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHRpbWVvdXRGaXJlZCgpOwogCiAg
ICAgRG9jdW1lbnQqIGRvY3VtZW50KCk7CisgICAgRm9udENhY2hlJiBmb250Q2FjaGVGYWxsaW5n
QmFja1RvU2luZ2xldG9uKCk7CiAKICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtX2ZhbWlsaWVz
OwogICAgIFZlY3RvcjxVbmljb2RlUmFuZ2U+IG1fcmFuZ2VzOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NG
b250RmFjZVNldC5jcHAKaW5kZXggZjBjYWY0OGVmY2NlYmM1ZDEyMzAwMjE4NGMzNmRmM2VhMzA1
MjdjMy4uM2ZhYTg2ZjljMDFkODBhNWI1YmQ1YzEzYjY5ODNjNTdlODI2YTg1OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2VTZXQuY3BwCkBAIC0xMTIsNyArMTEyLDcgQEAgdm9pZCBDU1NG
b250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0
IFN0cmluZyYgZmFtaWwKICAgICBBbGxvd1VzZXJJbnN0YWxsZWRGb250cyBhbGxvd1VzZXJJbnN0
YWxsZWRGb250cyA9IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXM7CiAgICAgaWYgKG1fb3du
aW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCiAgICAgICAgIGFsbG93
VXNlckluc3RhbGxlZEZvbnRzID0gbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKS0+c2V0dGluZ3NWYWx1ZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250
cyA/IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXMgOiBBbGxvd1VzZXJJbnN0YWxsZWRGb250
czo6Tm87Ci0gICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXM+IGNhcGFiaWxpdGll
cyA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuZ2V0Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllc0lu
RmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKKyAgICBWZWN0b3I8
Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllcz4gY2FwYWJpbGl0aWVzID0gbV9vd25pbmdGb250U2Vs
ZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+Zm9udENhY2hlKCkuZ2V0Rm9udFNlbGVj
dGlvbkNhcGFiaWxpdGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZv
bnRzKTsKICAgICBpZiAoY2FwYWJpbGl0aWVzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwog
CkBAIC0xMjEsNyArMTIxLDcgQEAgdm9pZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250
RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICAgICAgUmVm
PENTU0ZvbnRGYWNlPiBmYWNlID0gQ1NTRm9udEZhY2U6OmNyZWF0ZShtX293bmluZ0ZvbnRTZWxl
Y3Rvci5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0ciwgdHJ1ZSk7CiAgICAgICAgIAogICAgICAgICBS
ZWY8Q1NTVmFsdWVMaXN0PiBmYW1pbHlMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNl
cGFyYXRlZCgpOwotICAgICAgICBmYW1pbHlMaXN0LT5hcHBlbmQoQ1NTVmFsdWVQb29sOjpzaW5n
bGV0b24oKS5jcmVhdGVGb250RmFtaWx5VmFsdWUoZmFtaWx5TmFtZSkpOworICAgICAgICBmYW1p
bHlMaXN0LT5hcHBlbmQobV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKS0+Y3NzVmFsdWVQb29sKCkuY3JlYXRlRm9udEZhbWlseVZhbHVlKGZhbWlseU5hbWUpKTsK
ICAgICAgICAgZmFjZS0+c2V0RmFtaWxpZXMoZmFtaWx5TGlzdC5nZXQoKSk7CiAgICAgICAgIGZh
Y2UtPnNldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMoaXRlbSk7CiAgICAgICAgIGZhY2UtPmFk
b3B0U291cmNlKG1ha2VVbmlxdWU8Q1NTRm9udEZhY2VTb3VyY2U+KGZhY2UuZ2V0KCksIGZhbWls
eU5hbWUpKTsKQEAgLTM3Niw5ICszNzYsOSBAQCBFeGNlcHRpb25PcjxWZWN0b3I8c3RkOjpyZWZl
cmVuY2Vfd3JhcHBlcjxDU1NGb250RmFjZT4+PiBDU1NGb250RmFjZVNldDo6bWF0Y2hpbgogICAg
IFZlY3RvcjxBdG9tU3RyaW5nPiBmYW1pbHlPcmRlcjsKICAgICBmb3IgKGF1dG8mIGZhbWlseVJh
dyA6IGZvbnQtPmZhbWlseSkgewogICAgICAgICBBdG9tU3RyaW5nIGZhbWlseUF0b207Ci0gICAg
ICAgIFdURjo6c3dpdGNoT24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgaWRlbnQpIHsKLSAg
ICAgICAgICAgIGlmIChpZGVudCAhPSBDU1NWYWx1ZVdlYmtpdEJvZHkpCi0gICAgICAgICAgICAg
ICAgZmFtaWx5QXRvbSA9IGZhbWlseU5hbWVzRGF0YS0+YXQoQ1NTUHJvcGVydHlQYXJzZXJIZWxw
ZXJzOjpnZW5lcmljRm9udEZhbWlseUluZGV4KGlkZW50KSk7CisgICAgICAgIFdURjo6c3dpdGNo
T24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgZmFtaWx5S2V5d29yZCkgeworICAgICAgICAg
ICAgaWYgKGZhbWlseUtleXdvcmQgIT0gQ1NTVmFsdWVXZWJraXRCb2R5KQorICAgICAgICAgICAg
ICAgIGZhbWlseUF0b20gPSBmYW1pbHlOYW1lc0RhdGEtPmF0KENTU1Byb3BlcnR5UGFyc2VySGVs
cGVyczo6Z2VuZXJpY0ZvbnRGYW1pbHlJbmRleChmYW1pbHlLZXl3b3JkKSk7CiAgICAgICAgICAg
ICBlbHNlIHsKICAgICAgICAgICAgICAgICBBU1NFUlQobV9vd25pbmdGb250U2VsZWN0b3IgJiYg
bV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAgICAgICAg
ICAgICAgICAgZmFtaWx5QXRvbSA9IG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRp
b25Db250ZXh0KCktPnNldHRpbmdzVmFsdWVzKCkuZm9udEdlbmVyaWNGYW1pbGllcy5zdGFuZGFy
ZEZvbnRGYW1pbHkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFj
ZVNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwCmlu
ZGV4IGI2N2U4ZTY2NmNmOWJjYTk1OGEyM2VkMzcwNjJjODY0NGM2ZmQyMWUuLmQzYTNiMDA2NjRk
NmRmZTg1YWUyYjkwMjZmZWVlMmM5NzY0MDZhMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Zv
bnRGYWNlU291cmNlLmNwcApAQCAtODEsNyArODEsNyBAQCBDU1NGb250RmFjZVNvdXJjZTo6Q1NT
Rm9udEZhY2VTb3VyY2UoQ1NTRm9udEZhY2UmIG93bmVyLCBjb25zdCBTdHJpbmcmIGZhbWlseU5h
bQogICAgIC8vIFRoaXMgbWF5IHN5bmNocm9ub3VzbHkgY2FsbCBmb250TG9hZGVkKCkuCiAgICAg
bV9mb250UmVxdWVzdC0+c2V0Q2xpZW50KHRoaXMpOwogCi0gICAgaWYgKHN0YXR1cygpID09IFN0
YXR1czo6UGVuZGluZyAmJiAhbV9mb250UmVxdWVzdC0+aXNMb2FkaW5nKCkpIHsKKyAgICBpZiAo
c3RhdHVzKCkgPT0gU3RhdHVzOjpQZW5kaW5nICYmICFtX2ZvbnRSZXF1ZXN0LT5pc1BlbmRpbmco
KSkgewogICAgICAgICBzZXRTdGF0dXMoU3RhdHVzOjpMb2FkaW5nKTsKICAgICAgICAgaWYgKCFz
aG91bGRJZ25vcmVGb250TG9hZENvbXBsZXRpb25zKCkpIHsKICAgICAgICAgICAgIGlmIChtX2Zv
bnRSZXF1ZXN0LT5lcnJvck9jY3VycmVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvRm9udEZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAppbmRleCAx
OWQ5YjQ0YWNkNDg1YjMyMzE5Y2U5NTlmNGFkMmQ2NzExNTg0ZjhlLi5hZjQ4MGQwMGIzMWY5Zjg0
ZDAzOWQzMTM1NzkxNmU4OTcxZDYyNWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Rm9udEZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAKQEAgLTYy
LDE0ICs2MiwxNSBAQCB2b2lkIEZvbnRGYWNlOjpzZXRFcnJvclN0YXRlKCkKICAgICBtX2JhY2tp
bmctPnNldEVycm9yU3RhdGUoKTsKIH0KIAotUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRl
KERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmIHNvdXJj
ZSwgY29uc3QgRGVzY3JpcHRvcnMmIGRlc2NyaXB0b3JzKQorUmVmPEZvbnRGYWNlPiBGb250RmFj
ZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0cmluZyYg
ZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2UsIGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlwdG9ycykK
IHsKLSAgICBhdXRvIHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9udEZhY2UoZG9jdW1lbnQuZm9u
dFNlbGVjdG9yKCkpKTsKKyAgICBBU1NFUlQoY29udGV4dC5jc3NGb250U2VsZWN0b3IoKSk7Cisg
ICAgYXV0byByZXN1bHQgPSBhZG9wdFJlZigqbmV3IEZvbnRGYWNlKCpjb250ZXh0LmNzc0ZvbnRT
ZWxlY3RvcigpKSk7CiAgICAgcmVzdWx0LT5zdXNwZW5kSWZOZWVkZWQoKTsKIAogICAgIGJvb2wg
ZGF0YVJlcXVpcmVzQXN5bmNocm9ub3VzTG9hZGluZyA9IHRydWU7CiAKLSAgICBhdXRvIHNldEZh
bWlseVJlc3VsdCA9IHJlc3VsdC0+c2V0RmFtaWx5KGRvY3VtZW50LCBmYW1pbHkpOworICAgIGF1
dG8gc2V0RmFtaWx5UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoY29udGV4dCwgZmFtaWx5KTsK
ICAgICBpZiAoc2V0RmFtaWx5UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3Vs
dC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNzcsMTAgKzc4
LDEwIEBAIFJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQs
IGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAKICAgICBhdXRvIHNvdXJjZUNvbnZlcnNp
b25SZXN1bHQgPSBXVEY6OnN3aXRjaE9uKHNvdXJjZSwKICAgICAgICAgWyZdIChTdHJpbmcmIHN0
cmluZykgLT4gRXhjZXB0aW9uT3I8dm9pZD4gewotICAgICAgICAgICAgYXV0byB2YWx1ZSA9IENT
U1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFjZVNyYyhzdHJpbmcsIENTU1Bh
cnNlckNvbnRleHQoZG9jdW1lbnQpKTsKKyAgICAgICAgICAgIGF1dG8gdmFsdWUgPSBDU1NQcm9w
ZXJ0eVBhcnNlcldvcmtlclNhZmU6OnBhcnNlRm9udEZhY2VTcmMoc3RyaW5nLCBpczxEb2N1bWVu
dD4oY29udGV4dCkgPyBDU1NQYXJzZXJDb250ZXh0KGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0
KSkgOiBIVE1MU3RhbmRhcmRNb2RlKTsKICAgICAgICAgICAgIGlmICghdmFsdWUpCiAgICAgICAg
ICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFN5bnRheEVycm9yIH07Ci0gICAgICAgICAgICBD
U1NGb250RmFjZTo6YXBwZW5kU291cmNlcyhyZXN1bHQtPmJhY2tpbmcoKSwgKnZhbHVlLCAmZG9j
dW1lbnQsIGZhbHNlKTsKKyAgICAgICAgICAgIENTU0ZvbnRGYWNlOjphcHBlbmRTb3VyY2VzKHJl
c3VsdC0+YmFja2luZygpLCAqdmFsdWUsICZjb250ZXh0LCBmYWxzZSk7CiAgICAgICAgICAgICBy
ZXR1cm4geyB9OwogICAgICAgICB9LAogICAgICAgICBbJl0gKFJlZlB0cjxBcnJheUJ1ZmZlclZp
ZXc+JiBhcnJheUJ1ZmZlclZpZXcpIC0+IEV4Y2VwdGlvbk9yPHZvaWQ+IHsKQEAgLTEwMSwzMiAr
MTAyLDMyIEBAIFJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1l
bnQsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAgICAgfQogCiAgICAgLy8gVGhlc2Ug
dGVybmFyaWVzIG1hdGNoIHRoZSBkZWZhdWx0IHN0cmluZ3MgaW5zaWRlIHRoZSBGb250RmFjZURl
c2NyaXB0b3JzIGRpY3Rpb25hcnkgaW5zaWRlIEZvbnRGYWNlLmlkbC4KLSAgICBhdXRvIHNldFN0
eWxlUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHlsZShkb2N1bWVudCwgZGVzY3JpcHRvcnMuc3R5bGUu
aXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLnN0eWxlKTsKKyAgICBhdXRvIHNl
dFN0eWxlUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHlsZShjb250ZXh0LCBkZXNjcmlwdG9ycy5zdHls
ZS5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3R5bGUpOwogICAgIGlmIChz
ZXRTdHlsZVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9y
U3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXRXZWln
aHRSZXN1bHQgPSByZXN1bHQtPnNldFdlaWdodChkb2N1bWVudCwgZGVzY3JpcHRvcnMud2VpZ2h0
LmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOworICAgIGF1dG8g
c2V0V2VpZ2h0UmVzdWx0ID0gcmVzdWx0LT5zZXRXZWlnaHQoY29udGV4dCwgZGVzY3JpcHRvcnMu
d2VpZ2h0LmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOwogICAg
IGlmIChzZXRXZWlnaHRSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5z
ZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8g
c2V0U3RyZXRjaFJlc3VsdCA9IHJlc3VsdC0+c2V0U3RyZXRjaChkb2N1bWVudCwgZGVzY3JpcHRv
cnMuc3RyZXRjaC5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3RyZXRjaCk7
CisgICAgYXV0byBzZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJldGNoKGNvbnRleHQs
IGRlc2NyaXB0b3JzLnN0cmV0Y2guaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3Jz
LnN0cmV0Y2gpOwogICAgIGlmIChzZXRTdHJldGNoUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAg
ICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0Owog
ICAgIH0KLSAgICBhdXRvIHNldFVuaWNvZGVSYW5nZVJlc3VsdCA9IHJlc3VsdC0+c2V0VW5pY29k
ZVJhbmdlKGRvY3VtZW50LCBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUr
MC0xMEZGRkYiX3MgOiBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UpOworICAgIGF1dG8gc2V0VW5p
Y29kZVJhbmdlUmVzdWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2UoY29udGV4dCwgZGVzY3Jp
cHRvcnMudW5pY29kZVJhbmdlLmlzRW1wdHkoKSA/ICJVKzAtMTBGRkZGIl9zIDogZGVzY3JpcHRv
cnMudW5pY29kZVJhbmdlKTsKICAgICBpZiAoc2V0VW5pY29kZVJhbmdlUmVzdWx0Lmhhc0V4Y2Vw
dGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1
cm4gcmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jlc3VsdCA9IHJl
c3VsdC0+c2V0RmVhdHVyZVNldHRpbmdzKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0
dGluZ3MuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5n
cyk7CisgICAgYXV0byBzZXRGZWF0dXJlU2V0dGluZ3NSZXN1bHQgPSByZXN1bHQtPnNldEZlYXR1
cmVTZXR0aW5ncyhjb250ZXh0LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0dGluZ3MuaXNFbXB0eSgp
ID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncyk7CiAgICAgaWYgKHNl
dEZlYXR1cmVTZXR0aW5nc1Jlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQt
PnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0
byBzZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGRvY3VtZW50LCBkZXNjcmlw
dG9ycy5kaXNwbGF5LmlzRW1wdHkoKSA/ICJhdXRvIl9zIDogZGVzY3JpcHRvcnMuZGlzcGxheSk7
CisgICAgYXV0byBzZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGNvbnRleHQs
IGRlc2NyaXB0b3JzLmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3MgOiBkZXNjcmlwdG9ycy5k
aXNwbGF5KTsKICAgICBpZiAoc2V0RGlzcGxheVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAg
ICAgICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAg
LTM5OSwxMyArNDAwLDEzIEBAIFN0cmluZyBGb250RmFjZTo6ZmVhdHVyZVNldHRpbmdzKCkgY29u
c3QKICAgICByZXR1cm4gbGlzdC0+Y3NzVGV4dCgpOwogfQogCi1TdHJpbmcgRm9udEZhY2U6OmRp
c3BsYXkoKSBjb25zdAorU3RyaW5nIEZvbnRGYWNlOjpkaXNwbGF5KFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpIGNvbnN0CiB7CiAgICAgbV9iYWNraW5nLT51cGRhdGVTdHlsZUlmTmVl
ZGVkKCk7CiAgICAgY29uc3QgYXV0byYgbG9hZGluZ0JlaGF2aW9yV3JhcHBlZCA9IG1fYmFja2lu
Zy0+bG9hZGluZ0JlaGF2aW9yKCk7CiAgICAgaWYgKCFsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLmhh
c1ZhbHVlKCkpCiAgICAgICAgIHJldHVybiAiYXV0byJfczsKLSAgICByZXR1cm4gQ1NTVmFsdWVQ
b29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVl
KCkpLT5jc3NUZXh0KCk7CisgICAgcmV0dXJuIGNvbnRleHQuY3NzVmFsdWVQb29sKCkuY3JlYXRl
VmFsdWUobG9hZGluZ0JlaGF2aW9yV3JhcHBlZC52YWx1ZSgpKS0+Y3NzVGV4dCgpOwogfQogCiBh
dXRvIEZvbnRGYWNlOjpzdGF0dXMoKSBjb25zdCAtPiBMb2FkU3RhdHVzCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFj
ZS5oCmluZGV4IGYxYjU1YTgxMTJiODA0MWMxMDQ2NDJjNDBlNjZiZDM2ZGEwM2M3MmEuLjk3N2Yz
YTk5YWM0YTE3NmMwNjYzMGU3YzdkMGFhZGQ5NTAxYjVkNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Gb250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5o
CkBAIC01NCw3ICs1NCw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIAogICAgIHVzaW5nIFNvdXJj
ZSA9IFZhcmlhbnQ8U3RyaW5nLCBSZWZQdHI8SlNDOjpBcnJheUJ1ZmZlcj4sIFJlZlB0cjxKU0M6
OkFycmF5QnVmZmVyVmlldz4+OwotICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShEb2N1
bWVudCYsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMm
KTsKKyAgICBzdGF0aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMmKTsK
ICAgICBzdGF0aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCos
IENTU0ZvbnRGYWNlJik7CiAgICAgdmlydHVhbCB+Rm9udEZhY2UoKTsKIApAQCAtNzIsNyArNzIs
NyBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIHN0cmV0Y2goKSBjb25zdDsKICAgICBTdHJpbmcgdW5p
Y29kZVJhbmdlKCkgY29uc3Q7CiAgICAgU3RyaW5nIGZlYXR1cmVTZXR0aW5ncygpIGNvbnN0Owot
ICAgIFN0cmluZyBkaXNwbGF5KCkgY29uc3Q7CisgICAgU3RyaW5nIGRpc3BsYXkoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCYpIGNvbnN0OwogCiAgICAgZW51bSBjbGFzcyBMb2FkU3RhdHVzIHsgVW5s
b2FkZWQsIExvYWRpbmcsIExvYWRlZCwgRXJyb3IgfTsKICAgICBMb2FkU3RhdHVzIHN0YXR1cygp
IGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKaW5kZXggMzM0NjdhZmIzYjE4NDQzNTk5ZjFj
NmFkYjliZDRlNmNhNDc1NzM5Mi4uNDFmMzU3MjMwMWZhMzRhZjE5NzExNjU5OTk5ZGJjZTdlYTUw
NzM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRsCkBAIC00Myw5ICs0Myw5IEBAIGRpY3Rpb25h
cnkgRm9udEZhY2VEZXNjcmlwdG9ycyB7CiAKIFsKICAgICBBY3RpdmVET01PYmplY3QsCi0gICAg
RXhwb3NlZD1XaW5kb3cKKyAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2Ug
Rm9udEZhY2UgewotICAgIFtDYWxsV2l0aD1Eb2N1bWVudF0gY29uc3RydWN0b3IoRE9NU3RyaW5n
IGZhbWlseSwgKERPTVN0cmluZyBvciBCaW5hcnlEYXRhKSBzb3VyY2UsIG9wdGlvbmFsIEZvbnRG
YWNlRGVzY3JpcHRvcnMgZGVzY3JpcHRvcnMpOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRp
b25Db250ZXh0XSBjb25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCAoRE9NU3RyaW5nIG9yIEJp
bmFyeURhdGEpIHNvdXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNjcmlwdG9ycyBkZXNjcmlwdG9y
cyk7CiAKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmli
dXRlIERPTVN0cmluZyBmYW1pbHk7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlv
bkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3R5bGU7CkBAIC01Myw3ICs1Myw3IEBAIGRp
Y3Rpb25hcnkgRm9udEZhY2VEZXNjcmlwdG9ycyB7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlw
dEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyZXRjaDsKICAgICBbU2V0
dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyB1
bmljb2RlUmFuZ2U7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRd
IGF0dHJpYnV0ZSBET01TdHJpbmcgZmVhdHVyZVNldHRpbmdzOwotICAgIFtTZXR0ZXJDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRpc3BsYXk7Cisg
ICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcg
ZGlzcGxheTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGb250RmFjZUxvYWRTdGF0dXMgc3Rh
dHVzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuaWRsIGIv
U291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlU2V0LmlkbAppbmRleCAwNDJhMGI2ZWYwOTAzZTYw
Y2E3NzNkNDEyYWJhOWUwODBmODk4MGE1Li5mNzM4YjQ3NzE2N2EyMTgwYTMxMGJjNjcyMjU0ZGQx
ZjFiMWJkNGJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZVNldC5pZGwKQEAgLTMwLDcgKzMwLDcg
QEAgZW51bSBGb250RmFjZVNldExvYWRTdGF0dXMgewogCiBbCiAgICAgQWN0aXZlRE9NT2JqZWN0
LAotICAgIEV4cG9zZWQ9V2luZG93CisgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKIF0gaW50
ZXJmYWNlIEZvbnRGYWNlU2V0IDogRXZlbnRUYXJnZXQgewogICAgIFtDYWxsV2l0aD1TY3JpcHRF
eGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihzZXF1ZW5jZTxGb250RmFjZT4gaW5pdGlhbEZh
Y2VzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVz
dC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IGUzMzQ1
YTgyZTQ2Mjg1YTE5YjU0Y2RkYWZmNjIyMThjMDY1ZWUyMWYuLjVkZmFjODJjYjU3ZGE3N2YzYjIw
ODcwYmU2MGMzYzQ5YjM0NjFmMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
b250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1
ZXN0LmgKQEAgLTM1LDkgKzM1LDYgQEAgY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgRm9u
dExvYWRSZXF1ZXN0Owogc3RydWN0IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7
CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBUPiBjbGFzcyBGb250VGFnZ2VkU2V0dGluZ3M7Ci11c2lu
ZyBGb250RmVhdHVyZVNldHRpbmdzID0gRm9udFRhZ2dlZFNldHRpbmdzPGludD47Ci0KIGNsYXNz
IEZvbnRMb2FkUmVxdWVzdENsaWVudCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+Rm9udExvYWRS
ZXF1ZXN0Q2xpZW50KCkgPSBkZWZhdWx0OwpAQCAtNDksNiArNDYsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB+Rm9udExvYWRSZXF1ZXN0KCkgPSBkZWZhdWx0OwogCiAgICAgdmlydHVhbCBjb25z
dCBVUkwmIHVybCgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgaXNQZW5kaW5nKCkgY29u
c3QgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBpc0xvYWRpbmcoKSBjb25zdCA9IDA7CiAgICAgdmly
dHVhbCBib29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCA9IDA7CiAKQEAgLTU4LDYgKzU2LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50
KikgPSAwOwogCiAgICAgdmlydHVhbCBib29sIGlzQ2FjaGVkRm9udExvYWRSZXF1ZXN0KCkgY29u
c3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaXNXb3JrZXJGb250TG9hZFJl
cXVlc3QoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwCmluZGV4IDk3
NDE5ZWVlNzQxOWY4MGFhZGFmZTgyNDU1OTBkZmVkNjRlOTc3MmUuLjViNzE5ZGFjNWRlMmE3OGJl
MDg4NzZhMDZkOWE1N2I4MTJmOWUwNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRGb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkRm9udC5jcHAKQEAgLTEwNCwyMSArMTA0LDkgQEAgYm9vbCBDYWNoZWRGb250OjplbnN1
cmVDdXN0b21Gb250RGF0YShTaGFyZWRCdWZmZXIqIGRhdGEpCiAKIHN0ZDo6dW5pcXVlX3B0cjxG
b250Q3VzdG9tUGxhdGZvcm1EYXRhPiBDYWNoZWRGb250OjpjcmVhdGVDdXN0b21Gb250RGF0YShT
aGFyZWRCdWZmZXImIGJ5dGVzLCBjb25zdCBTdHJpbmcmIGl0ZW1JbkNvbGxlY3Rpb24sIGJvb2wm
IHdyYXBwaW5nKQogewotICAgIHdyYXBwaW5nID0gdHJ1ZTsKLQotI2lmICFQTEFURk9STShDT0NP
QSkKLSAgICBpZiAoaXNXT0ZGKGJ5dGVzKSkgewotICAgICAgICB3cmFwcGluZyA9IGZhbHNlOwot
ICAgICAgICBWZWN0b3I8Y2hhcj4gY29udmVydGVkRm9udDsKLSAgICAgICAgaWYgKCFjb252ZXJ0
V09GRlRvU2ZudChieXRlcywgY29udmVydGVkRm9udCkpCi0gICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLQotICAgICAgICBhdXRvIGJ1ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFdURk1v
dmUoY29udmVydGVkRm9udCkpOwotICAgICAgICByZXR1cm4gY3JlYXRlRm9udEN1c3RvbVBsYXRm
b3JtRGF0YShidWZmZXIsIGl0ZW1JbkNvbGxlY3Rpb24pOwotICAgIH0KLSNlbmRpZgotCi0gICAg
cmV0dXJuIGNyZWF0ZUZvbnRDdXN0b21QbGF0Zm9ybURhdGEoYnl0ZXMsIGl0ZW1JbkNvbGxlY3Rp
b24pOworICAgIGF1dG8gYnVmZmVyID0gbWFrZVJlZlB0cihieXRlcyk7CisgICAgd3JhcHBpbmcg
PSAhY29udmVydFdPRkZUb1NmbnRJZk5lY2Vzc2FyeShidWZmZXIpOworICAgIHJldHVybiBidWZm
ZXIgPyBjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1EYXRhKCpidWZmZXIsIGl0ZW1JbkNvbGxlY3Rp
b24pIDogbnVsbHB0cjsKIH0KIAogUmVmUHRyPEZvbnQ+IENhY2hlZEZvbnQ6OmNyZWF0ZUZvbnQo
Y29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcm
LCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVh
dHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2Fw
YWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IDUzZDExZjNmNjI4Mzc0
Yjk2ZjFhMjJlNjlmYWZkYWFkZGVhZjljNTAuLmI5YjBjZjg2ZWE5YzEzYTU3ZDNhNTEwZGMxN2E5
Zjg4NWFhZDBiYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkRm9udExvYWRSZXF1ZXN0LmgKQEAgLTUxLDYgKzUxLDcgQEAgcHVibGljOgogCiBwcml2YXRl
OgogICAgIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT51cmwo
KTsgfQorICAgIGJvb2wgaXNQZW5kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT5z
dGF0dXMoKSA9PSBDYWNoZWRSZXNvdXJjZTo6U3RhdHVzOjpQZW5kaW5nOyB9CiAgICAgYm9vbCBp
c0xvYWRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPmlzTG9hZGluZygpOyB9CiAg
ICAgYm9vbCBlcnJvck9jY3VycmVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT5lcnJv
ck9jY3VycmVkKCk7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNw
cAppbmRleCBiMTFhODc2OWU4NjBiOTNiMDlkNzMyNDFlNWJlYmQ1ODA4YjYyYjhmLi5mOTkxODNk
N2NjYmI4NTRlNGU0ZmJjYzU1MDlhMzAzYWIzYjUyN2ZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250LmNwcApAQCAtNTgsMTYgKzU4LDI2IEBAIGNvbnN0IGZsb2F0IGVt
cGhhc2lzTWFya0ZvbnRTaXplTXVsdGlwbGllciA9IDAuNWY7CiAKIERFRklORV9BTExPQ0FUT1Jf
V0lUSF9IRUFQX0lERU5USUZJRVIoRm9udCk7CiAKLVJlZjxGb250PiBGb250OjpjcmVhdGUoUmVm
PFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiBvcmlnaW4sIGZsb2F0
IGZvbnRTaXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljKQorUmVm
PEZvbnQ+IEZvbnQ6OmNyZWF0ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEs
IE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2liaWxpdHkgdmlz
aWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25h
bDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IGlkZW50aWZpZXIpCit7CisgICAgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgRm9udChwbGF0Zm9ybURhdGEsIG9yaWdpbiwgaW50ZXJzdGl0aWFsLCB2
aXNpYmlsaXR5LCBvcmllbnRhdGlvbkZhbGxiYWNrLCBpZGVudGlmaWVyLCBudWxscHRyKSk7Cit9
CisKK1JlZjxGb250PiBGb250OjpjcmVhdGUoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZv
cm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBGb250Q2FjaGUqIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0
YSwgSW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSB2aXNpYmlsaXR5LCBPcmll
bnRhdGlvbkZhbGxiYWNrIG9yaWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcj4gaWRlbnRpZmllcikKK3sKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBGb250KHBsYXRmb3JtRGF0YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2liaWxpdHksIG9y
aWVudGF0aW9uRmFsbGJhY2ssIGlkZW50aWZpZXIsIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0YSkp
OworfQorCitSZWY8Rm9udD4gRm9udDo6Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZh
Y2VEYXRhLCBGb250OjpPcmlnaW4gb3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0
aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgRm9udENhY2hlKiBmb250Q2FjaGVGb3JWZXJ0
aWNhbERhdGEpCiB7CiAgICAgYm9vbCB3cmFwcGluZzsKICAgICBhdXRvIGN1c3RvbUZvbnREYXRh
ID0gQ2FjaGVkRm9udDo6Y3JlYXRlQ3VzdG9tRm9udERhdGEoZm9udEZhY2VEYXRhLmdldCgpLCB7
IH0sIHdyYXBwaW5nKTsKICAgICBGb250RGVzY3JpcHRpb24gZGVzY3JpcHRpb247CiAgICAgZGVz
Y3JpcHRpb24uc2V0Q29tcHV0ZWRTaXplKGZvbnRTaXplKTsKLSAgICByZXR1cm4gRm9udDo6Y3Jl
YXRlKENhY2hlZEZvbnQ6OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCpjdXN0b21Gb250RGF0
YSwgZGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgeyB9LCB7IH0p
LCBvcmlnaW4pOworICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxhdGZvcm1E
YXRhRnJvbUN1c3RvbURhdGEoKmN1c3RvbUZvbnREYXRhLCBkZXNjcmlwdGlvbiwgc3ludGhldGlj
Qm9sZCwgc3ludGhldGljSXRhbGljLCB7IH0sIHsgfSksIG9yaWdpbiwgZm9udENhY2hlRm9yVmVy
dGljYWxEYXRhKTsKIH0KIAotRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0
Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2li
aWxpdHkgdmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNr
LCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IHJlbmRlcmluZ1Jlc291cmNl
SWRlbnRpZmllcikKK0ZvbnQ6OkZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1E
YXRhLCBPcmlnaW4gb3JpZ2luLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5
IHZpc2liaWxpdHksIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjaywgT3B0
aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiByZW5kZXJpbmdSZXNvdXJjZUlkZW50
aWZpZXIsIEZvbnRDYWNoZSogZm9udENhY2hlRm9yVmVydGljYWxEYXRhKQogICAgIDogbV9wbGF0
Zm9ybURhdGEocGxhdGZvcm1EYXRhKQogICAgICwgbV9yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZp
ZXIocmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9vcmlnaW4ob3JpZ2luKQpA
QCAtODgsOSArOTgsMTEgQEAgRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0
Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnQKICAgICBwbGF0Zm9ybUNo
YXJXaWR0aEluaXQoKTsKICNpZiBFTkFCTEUoT1BFTlRZUEVfVkVSVElDQUwpCiAgICAgaWYgKHBs
YXRmb3JtRGF0YS5vcmllbnRhdGlvbigpID09IEZvbnRPcmllbnRhdGlvbjo6VmVydGljYWwgJiYg
b3JpZW50YXRpb25GYWxsYmFjayA9PSBPcmllbnRhdGlvbkZhbGxiYWNrOjpObykgewotICAgICAg
ICBtX3ZlcnRpY2FsRGF0YSA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBs
YXRmb3JtRGF0YSk7CisgICAgICAgIG1fdmVydGljYWxEYXRhID0gZm9udENhY2hlRm9yVmVydGlj
YWxEYXRhID8gZm9udENhY2hlRm9yVmVydGljYWxEYXRhLT52ZXJ0aWNhbERhdGEocGxhdGZvcm1E
YXRhKSA6IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7
CiAgICAgICAgIG1faGFzVmVydGljYWxHbHlwaHMgPSBtX3ZlcnRpY2FsRGF0YS5nZXQoKSAmJiBt
X3ZlcnRpY2FsRGF0YS0+aGFzVmVydGljYWxNZXRyaWNzKCk7CiAgICAgfQorI2Vsc2UKKyAgICBV
TlVTRURfUEFSQU0oZm9udENhY2hlRm9yVmVydGljYWxEYXRhKTsKICNlbmRpZgogfQogCkBAIC01
NjgsMTMgKzU4MCwxMyBAQCBzdGF0aWMgU3lzdGVtRmFsbGJhY2tDYWNoZSYgc3lzdGVtRmFsbGJh
Y2tDYWNoZSgpCiAgICAgcmV0dXJuIG1hcC5nZXQoKTsKIH0KIAotUmVmUHRyPEZvbnQ+IEZvbnQ6
OnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbiwgSXNGb3JQbGF0Zm9ybUZvbnQgaXNGb3JQbGF0
Zm9ybUZvbnQpIGNvbnN0CitSZWZQdHI8Rm9udD4gRm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9y
Q2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdCBGb250RGVzY3JpcHRpb24mIGRlc2Ny
aXB0aW9uLCBJc0ZvclBsYXRmb3JtRm9udCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlJiBm
b250Q2FjaGUpIGNvbnN0CiB7CiAgICAgYXV0byBmb250QWRkUmVzdWx0ID0gc3lzdGVtRmFsbGJh
Y2tDYWNoZSgpLmFkZCh0aGlzLCBDaGFyYWN0ZXJGYWxsYmFja01hcCgpKTsKIAogICAgIGlmICgh
Y2hhcmFjdGVyKSB7CiAgICAgICAgIFVDaGFyIGNvZGVVbml0ID0gMDsKLSAgICAgICAgcmV0dXJu
IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2Ny
aXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVk
Rm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CisgICAgICAgIHJldHVybiBmb250Q2FjaGUuc3lzdGVt
RmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9u
dCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CiAgICAg
fQogCiAgICAgYXV0byBrZXkgPSBDaGFyYWN0ZXJGYWxsYmFja01hcEtleSB7IGRlc2NyaXB0aW9u
LmNvbXB1dGVkTG9jYWxlKCksIGNoYXJhY3RlciwgaXNGb3JQbGF0Zm9ybUZvbnQgIT0gSXNGb3JQ
bGF0Zm9ybUZvbnQ6Ok5vIH07CkBAIC01ODksNyArNjAxLDcgQEAgUmVmUHRyPEZvbnQ+IEZvbnQ6
OnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3Qg
Rm9udEQKICAgICAgICAgICAgIGNvZGVVbml0c1sxXSA9IFUxNl9UUkFJTChjaGFyYWN0ZXIpOwog
ICAgICAgICAgICAgY29kZVVuaXRzTGVuZ3RoID0gMjsKICAgICAgICAgfQotICAgICAgICBhdXRv
IGZvbnQgPSBGb250Q2FjaGU6OnNpbmdsZXRvbigpLnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVy
cyhkZXNjcmlwdGlvbiwgdGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVy
Q29sb3JlZEZvbnQ6Ok5vLCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0KCk7CisgICAg
ICAgIGF1dG8gZm9udCA9IGZvbnRDYWNoZS5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMoZGVz
Y3JpcHRpb24sIHRoaXMsIGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZlckNvbG9y
ZWRGb250OjpObywgY29kZVVuaXRzLCBjb2RlVW5pdHNMZW5ndGgpLmdldCgpOwogICAgICAgICBp
ZiAoZm9udCkKICAgICAgICAgICAgIGZvbnQtPm1faXNVc2VkSW5TeXN0ZW1GYWxsYmFja0NhY2hl
ID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuIGZvbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmgKaW5kZXggNjUzYjMzOGI3YzM0MjU2MjcyMjQ5NjExZTI3MDFhYzVkMjYzZTk2
NS4uNzI0MTU5MWExODk1Yjc1NDhjNjIwMzBhZTRjMTk0Mzg4NTQ2YjQ4MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtNTcsNiArNTcsNyBAQCBpbnRlcmZhY2Ug
SURXcml0ZUdkaUludGVyb3A7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRm9udENh
Y2hlOwogY2xhc3MgR2x5cGhQYWdlOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgU2hh
cmVkQnVmZmVyOwpAQCAtOTIsMTIgKzkzLDExIEBAIHB1YmxpYzoKICAgICAgICAgWWVzLAogICAg
ICAgICBObwogICAgIH07Ci0gICAgc3RhdGljIFJlZjxGb250PiBjcmVhdGUoY29uc3QgRm9udFBs
YXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luID0gT3JpZ2luOjpMb2NhbCwg
SW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCA9IEludGVyc3RpdGlhbDo6Tm8sCi0gICAgICAgIFZp
c2liaWxpdHkgdmlzaWJpbGl0eSA9IFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFs
bGJhY2sgb3JpZW50YXRpb25GYWxsYmFjayA9IE9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRp
b25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IGlkZW50aWZpZXIgPSBXVEY6Om51bGxv
cHQpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb250KHBsYXRmb3JtRGF0
YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2liaWxpdHksIG9yaWVudGF0aW9uRmFsbGJhY2ss
IGlkZW50aWZpZXIpKTsKLSAgICB9Ci0gICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGb250
PiBjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiwg
ZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMp
OworICAgIHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmLCBP
cmlnaW4gPSBPcmlnaW46OkxvY2FsLCBJbnRlcnN0aXRpYWwgPSBJbnRlcnN0aXRpYWw6Ok5vLAor
ICAgICAgICBWaXNpYmlsaXR5ID0gVmlzaWJpbGl0eTo6VmlzaWJsZSwgT3JpZW50YXRpb25GYWxs
YmFjayA9IE9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJj
ZUlkZW50aWZpZXI+ID0gV1RGOjpudWxsb3B0KTsKKyAgICBzdGF0aWMgUmVmPEZvbnQ+IGNyZWF0
ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiwgT3JpZ2luLCBGb250Q2FjaGUqIGZvbnRDYWNoZUZv
clZlcnRpY2FsRGF0YSwgSW50ZXJzdGl0aWFsID0gSW50ZXJzdGl0aWFsOjpObywKKyAgICAgICAg
VmlzaWJpbGl0eSA9IFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFsbGJhY2sgPSBP
cmllbnRhdGlvbkZhbGxiYWNrOjpObywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlm
aWVyPiA9IFdURjo6bnVsbG9wdCk7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGb250
PiBjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiwg
ZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMs
IEZvbnRDYWNoZSogPSBudWxscHRyKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIH5Gb250KCk7CiAK
QEAgLTE4OSw3ICsxODksNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzdXBwb3J0c0NvZGVQb2ludChV
Q2hhcjMyKSBjb25zdDsKICAgICBib29sIHBsYXRmb3JtU3VwcG9ydHNDb2RlUG9pbnQoVUNoYXIz
MiwgT3B0aW9uYWw8VUNoYXIzMj4gdmFyaWF0aW9uID0gV1RGOjpudWxsb3B0KSBjb25zdDsKIAot
ICAgIFJlZlB0cjxGb250PiBzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIoVUNoYXIzMiwg
Y29uc3QgRm9udERlc2NyaXB0aW9uJiwgSXNGb3JQbGF0Zm9ybUZvbnQpIGNvbnN0OworICAgIFJl
ZlB0cjxGb250PiBzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIoVUNoYXIzMiwgY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiwgSXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZSYpIGNvbnN0Owog
CiAgICAgY29uc3QgR2x5cGhQYWdlKiBnbHlwaFBhZ2UodW5zaWduZWQgcGFnZU51bWJlcikgY29u
c3Q7CiAKQEAgLTIzMiw3ICsyMzIsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogcHJpdmF0ZToKLSAg
ICBXRUJDT1JFX0VYUE9SVCBGb250KGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmLCBPcmlnaW4sIElu
dGVyc3RpdGlhbCwgVmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjaywgT3B0aW9uYWw8UmVu
ZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPik7CisgICAgV0VCQ09SRV9FWFBPUlQgRm9udChjb25z
dCBGb250UGxhdGZvcm1EYXRhJiwgT3JpZ2luLCBJbnRlcnN0aXRpYWwsIFZpc2liaWxpdHksIE9y
aWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcj4s
IEZvbnRDYWNoZSopOwogCiAgICAgdm9pZCBwbGF0Zm9ybUluaXQoKTsKICAgICB2b2lkIHBsYXRm
b3JtR2x5cGhJbml0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250Q2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9u
dENhY2hlLmNwcAppbmRleCA4YmIzM2VkNTdhZTg0MmNmMTA5NDZhZDI3NDdiOTU5NmNiMDRhNTg2
Li4wMmI1NWQxMjBkMzgzYTM2ZTgwZTg0ZDE3NjViMTc1NDljMDcxM2JkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAKQEAgLTI4MCw3ICsyODAs
NyBAQCBSZWY8Rm9udD4gRm9udENhY2hlOjpmb250Rm9yUGxhdGZvcm1EYXRhKGNvbnN0IEZvbnRQ
bGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSkKICNlbmRpZgogCiAgICAgYXV0byBhZGRSZXN1bHQg
PSBtX2ZvbnREYXRhQ2FjaGVzLT5kYXRhLmVuc3VyZShwbGF0Zm9ybURhdGEsIFsmXSB7Ci0gICAg
ICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRhKTsKKyAgICAgICAgcmV0dXJuIEZv
bnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGEsIEZvbnQ6Ok9yaWdpbjo6TG9jYWwsIHRoaXMpOwogICAg
IH0pOwogCiAgICAgQVNTRVJUKGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPnBsYXRmb3JtRGF0
YSgpID09IHBsYXRmb3JtRGF0YSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9Gb250Q2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0ZvbnRDYWNoZS5oCmluZGV4IDRlYmE2ZmNmMmY3YzgwNDhmYjgzZDY1NTRiOGZkNmFmODdjMWFj
OWQuLjM0NzU1MmI4YWI2MzFiMTFiZjZlZTRmMGM5MWYxOTNlODJlM2YyMjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCkBAIC0yMjAsNyArMjIwLDcg
QEAgY2xhc3MgRm9udENhY2hlIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9udENhY2hlPiB7CiBwdWJs
aWM6CiAgICAgc3RhdGljIFJlZjxGb250Q2FjaGU+IGNyZWF0ZSgpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBGb250Q2FjaGUmIHNpbmdsZXRvbigpOwotICAgIHN0YXRpYyBGb250Q2FjaGUm
IGZvbnRDYWNoZUZhbGxiYWNrVG9TaW5nbGV0b24oUmVmUHRyPEZvbnRTZWxlY3Rvcj4pOworICAg
IHN0YXRpYyBGb250Q2FjaGUmIGZvbnRDYWNoZUZhbGxpbmdCYWNrVG9TaW5nbGV0b24oUmVmUHRy
PEZvbnRTZWxlY3Rvcj4pOwogCiAgICAgfkZvbnRDYWNoZSgpOwogCkBAIC0zNzgsNyArMzc4LDcg
QEAgT3B0aW9uYWw8Rm9udENhY2hlOjpQcmV3YXJtSW5mb3JtYXRpb24+IEZvbnRDYWNoZTo6UHJl
d2FybUluZm9ybWF0aW9uOjpkZWNvZGUoRGUKICAgICByZXR1cm4gcHJld2FybUluZm9ybWF0aW9u
OwogfQogCi1pbmxpbmUgRm9udENhY2hlJiBGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxiYWNrVG9T
aW5nbGV0b24oUmVmUHRyPEZvbnRTZWxlY3Rvcj4gZm9udFNlbGVjdG9yKQoraW5saW5lIEZvbnRD
YWNoZSYgRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uKFJlZlB0cjxG
b250U2VsZWN0b3I+IGZvbnRTZWxlY3RvcikKIHsKICAgICByZXR1cm4gZm9udFNlbGVjdG9yID8g
Zm9udFNlbGVjdG9yLT5mb250Q2FjaGUoKSA6IEZvbnRDYWNoZTo6c2luZ2xldG9uKCk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZS5jcHAKaW5k
ZXggYTkyYjdiYWVkOTZiMzYyNjZjNmQwNDBkYjBmMWE5ZjE0M2Q2MmJmNy4uZTMxOTMzN2JiYTgy
NzBjODliZmJjZDJlMDBmZTBjNjg2NDAyZDM0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlLmNwcApAQCAtMTcwLDcgKzE3MCw3IEBAIHZvaWQg
Rm9udENhc2NhZGU6OnVwZGF0ZUZvbnRzKFJlZjxGb250Q2FzY2FkZUZvbnRzPiYmIGZvbnRzKSBj
b25zdAogCiB2b2lkIEZvbnRDYXNjYWRlOjp1cGRhdGUoUmVmUHRyPEZvbnRTZWxlY3Rvcj4mJiBm
b250U2VsZWN0b3IpIGNvbnN0CiB7Ci0gICAgRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1Rv
U2luZ2xldG9uKGZvbnRTZWxlY3RvcikudXBkYXRlRm9udENhc2NhZGUoKnRoaXMsIFdURk1vdmUo
Zm9udFNlbGVjdG9yKSk7CisgICAgRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2lu
Z2xldG9uKGZvbnRTZWxlY3RvcikudXBkYXRlRm9udENhc2NhZGUoKnRoaXMsIFdURk1vdmUoZm9u
dFNlbGVjdG9yKSk7CiB9CiAKIEdseXBoQnVmZmVyIEZvbnRDYXNjYWRlOjpsYXlvdXRUZXh0KENv
ZGVQYXRoIGNvZGVQYXRoVG9Vc2UsIGNvbnN0IFRleHRSdW4mIHJ1biwgdW5zaWduZWQgZnJvbSwg
dW5zaWduZWQgdG8sIEZvclRleHRFbXBoYXNpc09yTm90IGZvclRleHRFbXBoYXNpcykgY29uc3QK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRl
Rm9udHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVG
b250cy5jcHAKaW5kZXggOWY2NWQyOTk4Zjk0ODY5NzNkNGJiZjE4ZGUyNmY4MmIwNDQzOWZjYS4u
NGE1NDA1NDg3MTE5YmRiYzFmZDcyYTQ5MjRkMzU2ZTk2ODQ5MDE4ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVGb250cy5jcHAKQEAg
LTEwMiw3ICsxMDIsNyBAQCBGb250Q2FzY2FkZUZvbnRzOjpGb250Q2FzY2FkZUZvbnRzKFJlZlB0
cjxGb250U2VsZWN0b3I+JiYgZm9udFNlbGVjdG9yKQogICAgIDogbV9jYWNoZWRQcmltYXJ5Rm9u
dChudWxscHRyKQogICAgICwgbV9mb250U2VsZWN0b3IoZm9udFNlbGVjdG9yKQogICAgICwgbV9m
b250U2VsZWN0b3JWZXJzaW9uKG1fZm9udFNlbGVjdG9yID8gbV9mb250U2VsZWN0b3ItPnZlcnNp
b24oKSA6IDApCi0gICAgLCBtX2dlbmVyYXRpb24oRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFj
a1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5lcmF0aW9uKCkpCisgICAgLCBtX2dlbmVy
YXRpb24oRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uKG1fZm9udFNl
bGVjdG9yKS5nZW5lcmF0aW9uKCkpCiB7CiAjaWYgQVNTRVJUX0VOQUJMRUQKICAgICBpZiAoIWlz
TWFpblRocmVhZCgpKQpAQCAtMTQ0LDcgKzE0NCw3IEBAIHN0YXRpYyBGb250UmFuZ2VzIHJlYWxp
emVOZXh0RmFsbGJhY2soY29uc3QgRm9udENhc2NhZGVEZXNjcmlwdGlvbiYgZGVzY3JpcHRpb24s
CiB7CiAgICAgQVNTRVJUKGluZGV4IDwgZGVzY3JpcHRpb24uZWZmZWN0aXZlRmFtaWx5Q291bnQo
KSk7CiAKLSAgICBhdXRvJiBmb250Q2FjaGUgPSBGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxiYWNr
VG9TaW5nbGV0b24oZm9udFNlbGVjdG9yKTsKKyAgICBhdXRvJiBmb250Q2FjaGUgPSBGb250Q2Fj
aGU6OmZvbnRDYWNoZUZhbGxpbmdCYWNrVG9TaW5nbGV0b24oZm9udFNlbGVjdG9yKTsKICAgICB3
aGlsZSAoaW5kZXggPCBkZXNjcmlwdGlvbi5lZmZlY3RpdmVGYW1pbHlDb3VudCgpKSB7CiAgICAg
ICAgIGF1dG8gdmlzaXRvciA9IFdURjo6bWFrZVZpc2l0b3IoWyZdKGNvbnN0IEF0b21TdHJpbmcm
IGZhbWlseSkgLT4gRm9udFJhbmdlcyB7CiAgICAgICAgICAgICBpZiAoZmFtaWx5LmlzRW1wdHko
KSkKQEAgLTE4MSw3ICsxODEsNyBAQCBjb25zdCBGb250UmFuZ2VzJiBGb250Q2FzY2FkZUZvbnRz
OjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250Q2FzY2FkZURlcwogICAgICAgICBy
ZXR1cm4gbV9yZWFsaXplZEZhbGxiYWNrUmFuZ2VzW2luZGV4XTsKIAogICAgIEFTU0VSVChpbmRl
eCA9PSBtX3JlYWxpemVkRmFsbGJhY2tSYW5nZXMuc2l6ZSgpKTsKLSAgICBBU1NFUlQoRm9udENh
Y2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5lcmF0
aW9uKCkgPT0gbV9nZW5lcmF0aW9uKTsKKyAgICBBU1NFUlQoRm9udENhY2hlOjpmb250Q2FjaGVG
YWxsaW5nQmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5lcmF0aW9uKCkgPT0gbV9n
ZW5lcmF0aW9uKTsKIAogICAgIG1fcmVhbGl6ZWRGYWxsYmFja1Jhbmdlcy5hcHBlbmQoRm9udFJh
bmdlcygpKTsKICAgICBhdXRvJiBmb250UmFuZ2VzID0gbV9yZWFsaXplZEZhbGxiYWNrUmFuZ2Vz
Lmxhc3QoKTsKQEAgLTE4OSw5ICsxODksOSBAQCBjb25zdCBGb250UmFuZ2VzJiBGb250Q2FzY2Fk
ZUZvbnRzOjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250Q2FzY2FkZURlcwogICAg
IGlmICghaW5kZXgpIHsKICAgICAgICAgZm9udFJhbmdlcyA9IHJlYWxpemVOZXh0RmFsbGJhY2so
ZGVzY3JpcHRpb24sIG1fbGFzdFJlYWxpemVkRmFsbGJhY2tJbmRleCwgbV9mb250U2VsZWN0b3Iu
Z2V0KCkpOwogICAgICAgICBpZiAoZm9udFJhbmdlcy5pc051bGwoKSAmJiBtX2ZvbnRTZWxlY3Rv
cikKLSAgICAgICAgICAgIGZvbnRSYW5nZXMgPSBtX2ZvbnRTZWxlY3Rvci0+Zm9udFJhbmdlc0Zv
ckZhbWlseShkZXNjcmlwdGlvbiwgc3RhbmRhcmRGYW1pbHkpOworICAgICAgICAgICAgZm9udFJh
bmdlcyA9IG1fZm9udFNlbGVjdG9yLT5mb250UmFuZ2VzRm9yRmFtaWx5KGRlc2NyaXB0aW9uLCBm
YW1pbHlOYW1lc0RhdGEtPmF0KEZhbWlseU5hbWVzSW5kZXg6OlN0YW5kYXJkRmFtaWx5KSk7CiAg
ICAgICAgIGlmIChmb250UmFuZ2VzLmlzTnVsbCgpKQotICAgICAgICAgICAgZm9udFJhbmdlcyA9
IEZvbnRSYW5nZXMoRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKG1fZm9u
dFNlbGVjdG9yKS5sYXN0UmVzb3J0RmFsbGJhY2tGb250KGRlc2NyaXB0aW9uKSk7CisgICAgICAg
ICAgICBmb250UmFuZ2VzID0gRm9udFJhbmdlcyhGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxpbmdC
YWNrVG9TaW5nbGV0b24obV9mb250U2VsZWN0b3IpLmxhc3RSZXNvcnRGYWxsYmFja0ZvbnQoZGVz
Y3JpcHRpb24pKTsKICAgICAgICAgcmV0dXJuIGZvbnRSYW5nZXM7CiAgICAgfQogCkBAIC0zNTEs
NyArMzUxLDcgQEAgR2x5cGhEYXRhIEZvbnRDYXNjYWRlRm9udHM6OmdseXBoRGF0YUZvclN5c3Rl
bUZhbGxiYWNrKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdAogICAgIGlmICghZm9udCkKICAgICAg
ICAgZm9udCA9ICZyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChkZXNjcmlwdGlvbiwgMCkuZm9udEZv
ckZpcnN0UmFuZ2UoKTsKIAotICAgIGF1dG8gc3lzdGVtRmFsbGJhY2tGb250ID0gZm9udC0+c3lz
dGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKGNoYXJhY3RlciwgZGVzY3JpcHRpb24sIG1faXNG
b3JQbGF0Zm9ybUZvbnQgPyBJc0ZvclBsYXRmb3JtRm9udDo6WWVzIDogSXNGb3JQbGF0Zm9ybUZv
bnQ6Ok5vKTsKKyAgICBhdXRvIHN5c3RlbUZhbGxiYWNrRm9udCA9IGZvbnQtPnN5c3RlbUZhbGxi
YWNrRm9udEZvckNoYXJhY3RlcihjaGFyYWN0ZXIsIGRlc2NyaXB0aW9uLCBtX2lzRm9yUGxhdGZv
cm1Gb250ID8gSXNGb3JQbGF0Zm9ybUZvbnQ6OlllcyA6IElzRm9yUGxhdGZvcm1Gb250OjpObywg
Rm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9y
KSk7CiAgICAgaWYgKCFzeXN0ZW1GYWxsYmFja0ZvbnQpCiAgICAgICAgIHJldHVybiBHbHlwaERh
dGEoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV09G
RkZpbGVGb3JtYXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV09GRkZp
bGVGb3JtYXQuY3BwCmluZGV4IGZjNmIzYzI3MGI4MzIwNTY2NDNmZWE1ZGE4N2QzMGQ4YjMzNTFh
NWQuLjFlMGQ4MGRmZTkxMTdiY2E5YTM5NDI3ODUxOThmODM1MDZkZTM5MzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9XT0ZGRmlsZUZvcm1hdC5jcHAKQEAg
LTI4Miw1ICsyODIsMjQgQEAgYm9vbCBjb252ZXJ0V09GRlRvU2ZudChTaGFyZWRCdWZmZXImIHdv
ZmYsIFZlY3RvcjxjaGFyPiYgc2ZudCkKIAogICAgIHJldHVybiBzZm50LnNpemUoKSA9PSB0b3Rh
bFNmbnRTaXplOwogfQotICAgIAorCitib29sIGNvbnZlcnRXT0ZGVG9TZm50SWZOZWNlc3Nhcnko
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4mIGJ1ZmZlcikKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAg
ICBVTlVTRURfUEFSQU0oYnVmZmVyKTsKKyAgICByZXR1cm4gZmFsc2U7CisjZWxzZQorICAgIGlm
ICghYnVmZmVyIHx8ICFpc1dPRkYoKmJ1ZmZlcikpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwor
ICAgIFZlY3RvcjxjaGFyPiBjb252ZXJ0ZWRGb250OworICAgIGlmIChjb252ZXJ0V09GRlRvU2Zu
dCgqYnVmZmVyLCBjb252ZXJ0ZWRGb250KSkKKyAgICAgICAgYnVmZmVyID0gU2hhcmVkQnVmZmVy
OjpjcmVhdGUoV1RGTW92ZShjb252ZXJ0ZWRGb250KSk7CisgICAgZWxzZQorICAgICAgICBidWZm
ZXIgPSBudWxscHRyOworCisgICAgcmV0dXJuIHRydWU7CisjZW5kaWYKK30KKwogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvV09GRkZpbGVGb3JtYXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dP
RkZGaWxlRm9ybWF0LmgKaW5kZXggZmEwOWQ5ZTY5MmUwMWViYjIyNTc3OWY0OTJiOGNiMGVjOTUz
MWU5Mi4uNWMwY2E0ZmMyMDdkMjEwZmQwODA1NGM0ZmZhN2VmY2EzM2EwYjEyZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9XT0ZGRmlsZUZvcm1hdC5oCkBAIC0z
OSw2ICszOSwxMSBAQCBib29sIGlzV09GRihTaGFyZWRCdWZmZXImKTsKIC8vIGlmIGNvbnZlcnNp
b24gcmFuIG91dCBvZiBtZW1vcnkpLiBPdGhlcndpc2UgcmV0dXJucyB0cnVlIGFuZCB3cml0ZXMg
dGhlIHNmbnQgcGF5bG9hZCBpbnRvIHNmbnQuCiBib29sIGNvbnZlcnRXT0ZGVG9TZm50KFNoYXJl
ZEJ1ZmZlciYgd29mZiwgVmVjdG9yPGNoYXI+JiBzZm50KTsKIAorLy8gSWYgdGhlIGdpdmVuIGJ1
ZmZlciBpcyBhIFdPRkYgZmlsZSBhbmQgdGhlIGN1cnJlbnQgcGxhdGZvcm0gaGFzIG5vIG5hdGl2
ZSBzdXBwb3J0IGZvciBXT0ZGCisvLyBmb250cywgY29udmVydCBpdCB0byBzZm50LiBSZXR1cm5z
IHRydWUgaWYgdGhlIGdpdmVuIGJ1ZmZlciB3YXMgY29udmVydGVkLiBJZiBjb252ZXJzaW9uIGZh
aWxzLAorLy8gdGhlIGJ1ZmZlciB3aWxsIGJlIHNldCB0byBudWxscHRyLgorYm9vbCBjb252ZXJ0
V09GRlRvU2ZudElmTmVjZXNzYXJ5KFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7CisKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIFdPRkZGaWxlRm9ybWF0X2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0ZvbnRDYWlyb0hhcmZidXp6
TkcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJv
SGFyZmJ1enpORy5jcHAKaW5kZXggZDYwYjVkYjcwNzdhZWRjYzgyZDc1NTY4ZjFhNDM3ODAyOWM4
NDJlZC4uYzcxN2UzYjZjNDAwM2MyNTI1ZTYwMzQ4OTc3MWJkNWQ0YWJiNWQxYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvSGFyZmJ1
enpORy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9u
dENhaXJvSGFyZmJ1enpORy5jcHAKQEAgLTEzOCw3ICsxMzgsNyBAQCBjb25zdCBGb250KiBGb250
Q2FzY2FkZTo6Zm9udEZvckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNvbnN0IFVDaGFyKiBv
cmlnaW5hbAogICAgICAgICAgICAgcmV0dXJuIGZhbGxiYWNrRm9udDsKICAgICB9CiAKLSAgICBp
ZiAoYXV0byBzeXN0ZW1GYWxsYmFjayA9IEZvbnRDYWNoZTo6Zm9udENhY2hlRmFsbGJhY2tUb1Np
bmdsZXRvbihmb250U2VsZWN0b3IoKSkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKG1fZm9u
dERlc2NyaXB0aW9uLCBiYXNlRm9udCwgSXNGb3JQbGF0Zm9ybUZvbnQ6Ok5vLCBwcmVmZXJDb2xv
cmVkRm9udCA/IEZvbnRDYWNoZTo6UHJlZmVyQ29sb3JlZEZvbnQ6OlllcyA6IEZvbnRDYWNoZTo6
UHJlZmVyQ29sb3JlZEZvbnQ6Ok5vLCBjaGFyYWN0ZXJzLCBsZW5ndGgpKSB7CisgICAgaWYgKGF1
dG8gc3lzdGVtRmFsbGJhY2sgPSBGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxpbmdCYWNrVG9TaW5n
bGV0b24oZm9udFNlbGVjdG9yKCkpLnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVycyhtX2ZvbnRE
ZXNjcmlwdGlvbiwgYmFzZUZvbnQsIElzRm9yUGxhdGZvcm1Gb250OjpObywgcHJlZmVyQ29sb3Jl
ZEZvbnQgPyBGb250Q2FjaGU6OlByZWZlckNvbG9yZWRGb250OjpZZXMgOiBGb250Q2FjaGU6OlBy
ZWZlckNvbG9yZWRGb250OjpObywgY2hhcmFjdGVycywgbGVuZ3RoKSkgewogICAgICAgICBpZiAo
c3lzdGVtRmFsbGJhY2stPmNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKGNoYXJh
Y3RlcnMsIGxlbmd0aCkgJiYgKCFwcmVmZXJDb2xvcmVkRm9udCB8fCBzeXN0ZW1GYWxsYmFjay0+
cGxhdGZvcm1EYXRhKCkuaXNDb2xvckJpdG1hcEZvbnQoKSkpCiAgICAgICAgICAgICByZXR1cm4g
c3lzdGVtRmFsbGJhY2suZ2V0KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29y
a2VyRm9udExvYWRSZXF1ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMWY5NDdlYjg3MTIxZDljYzAwN2Q3
MjM3YjBjZDdlMTI4MjQwYzI2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwCkBAIC0wLDAgKzEsMTQyIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOSBUb3JjaCBNb2JpbGUsIEluYy4KKyAqIENvcHly
aWdodCAoQykgMjAyMSBNZXRyb2xvZ2ljYWwgR3JvdXAgQi5WLgorICogQ29weXJpZ2h0IChDKSAy
MDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBB
TlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsK
KyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiV29ya2VyRm9udExvYWRSZXF1ZXN0LmgiCisKKyNpbmNsdWRlICJGb250LmgiCisjaW5jbHVk
ZSAiRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIgorI2luY2x1ZGUgIkZvbnRTZWxlY3Rpb25BbGdv
cml0aG0uaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKKyNpbmNsdWRlICJT
ZXJ2aWNlV29ya2VyLmgiCisjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisjaW5jbHVkZSAiV09G
RkZpbGVGb3JtYXQuaCIKKyNpbmNsdWRlICJXb3JrZXJHbG9iYWxTY29wZS5oIgorI2luY2x1ZGUg
IldvcmtlclRocmVhZGFibGVMb2FkZXIuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OldvcmtlckZvbnRMb2FkUmVxdWVzdChVUkwmJiB1cmwsIExvYWRl
ZEZyb21PcGFxdWVTb3VyY2UgbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkKKyAgICA6IG1fdXJsKFdU
Rk1vdmUodXJsKSkKKyAgICAsIG1fbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZShsb2FkZWRGcm9tT3Bh
cXVlU291cmNlKQoreworfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6bG9hZChXb3Jr
ZXJHbG9iYWxTY29wZSYgd29ya2VyR2xvYmFsU2NvcGUpCit7CisgICAgbV9jb250ZXh0ID0gbWFr
ZVdlYWtQdHIoc3RhdGljX2Nhc3Q8U2NyaXB0RXhlY3V0aW9uQ29udGV4dCo+KCZ3b3JrZXJHbG9i
YWxTY29wZSkpOworCisgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgeyBtX3VybCB9OworICAg
IEFTU0VSVChyZXF1ZXN0Lmh0dHBNZXRob2QoKSA9PSAiR0VUIik7CisKKyAgICBGZXRjaE9wdGlv
bnMgZmV0Y2hPcHRpb25zOworICAgIGZldGNoT3B0aW9ucy5tb2RlID0gRmV0Y2hPcHRpb25zOjpN
b2RlOjpTYW1lT3JpZ2luOworICAgIGZldGNoT3B0aW9ucy5jcmVkZW50aWFscyA9IHdvcmtlckds
b2JhbFNjb3BlLmNyZWRlbnRpYWxzKCk7CisgICAgZmV0Y2hPcHRpb25zLmNhY2hlID0gRmV0Y2hP
cHRpb25zOjpDYWNoZTo6RGVmYXVsdDsKKyAgICBmZXRjaE9wdGlvbnMucmVkaXJlY3QgPSBGZXRj
aE9wdGlvbnM6OlJlZGlyZWN0OjpGb2xsb3c7CisgICAgZmV0Y2hPcHRpb25zLmRlc3RpbmF0aW9u
ID0gRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6V29ya2VyOworCisgICAgVGhyZWFkYWJsZUxv
YWRlck9wdGlvbnMgb3B0aW9ucyB7IFdURk1vdmUoZmV0Y2hPcHRpb25zKSB9OworICAgIG9wdGlv
bnMuc2VuZExvYWRDYWxsYmFja3MgPSBTZW5kQ2FsbGJhY2tQb2xpY3k6OlNlbmRDYWxsYmFja3M7
CisgICAgb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lFbmZvcmNlbWVudCA9IG1fY29udGV4
dC0+c2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5KCkgPyBDb250ZW50
U2VjdXJpdHlQb2xpY3lFbmZvcmNlbWVudDo6RG9Ob3RFbmZvcmNlIDogQ29udGVudFNlY3VyaXR5
UG9saWN5RW5mb3JjZW1lbnQ6OkVuZm9yY2VDaGlsZFNyY0RpcmVjdGl2ZTsKKyAgICBvcHRpb25z
LmxvYWRlZEZyb21PcGFxdWVTb3VyY2UgPSBtX2xvYWRlZEZyb21PcGFxdWVTb3VyY2U7CisKKyAg
ICBvcHRpb25zLnNlcnZpY2VXb3JrZXJzTW9kZSA9IFNlcnZpY2VXb3JrZXJzTW9kZTo6QWxsOwor
I2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBpZiAoYXV0byogYWN0aXZlU2VydmljZVdv
cmtlciA9IHdvcmtlckdsb2JhbFNjb3BlLmFjdGl2ZVNlcnZpY2VXb3JrZXIoKSkKKyAgICAgICAg
b3B0aW9ucy5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSWRlbnRpZmllciA9IGFjdGl2ZVNlcnZp
Y2VXb3JrZXItPnJlZ2lzdHJhdGlvbklkZW50aWZpZXIoKTsKKyNlbmRpZgorCisgICAgV29ya2Vy
VGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseSh3b3JrZXJHbG9iYWxT
Y29wZSwgV1RGTW92ZShyZXF1ZXN0KSwgKnRoaXMsIG9wdGlvbnMpOworfQorCitib29sIFdvcmtl
ckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3VzdG9tRm9udERhdGEoY29uc3QgQXRvbVN0cmluZyYp
Cit7CisgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEgJiYgIW1fZXJyb3JPY2N1cnJl
ZCAmJiAhbV9pc0xvYWRpbmcpIHsKKyAgICAgICAgY29udmVydFdPRkZUb1NmbnRJZk5lY2Vzc2Fy
eShtX2RhdGEpOworICAgICAgICBpZiAobV9kYXRhKSB7CisgICAgICAgICAgICBtX2ZvbnRDdXN0
b21QbGF0Zm9ybURhdGEgPSBjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1EYXRhKCptX2RhdGEsIG1f
dXJsLmZyYWdtZW50SWRlbnRpZmllcigpLnRvU3RyaW5nKCkpOworICAgICAgICAgICAgaWYgKCFt
X2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEpCisgICAgICAgICAgICAgICAgbV9lcnJvck9jY3VycmVk
ID0gdHJ1ZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiBtX2ZvbnRDdXN0b21QbGF0
Zm9ybURhdGEuZ2V0KCk7Cit9CisKK1JlZlB0cjxGb250PiBXb3JrZXJGb250TG9hZFJlcXVlc3Q6
OmNyZWF0ZUZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0
IEF0b21TdHJpbmcmLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBj
b25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9u
U3BlY2lmaWVkQ2FwYWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQoreworICAgIEFTU0VS
VChtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEpOworICAgIEFTU0VSVChtX2NvbnRleHQpOworICAg
IHJldHVybiBGb250OjpjcmVhdGUobV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhLT5mb250UGxhdGZv
cm1EYXRhKGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3ludGhldGljSXRhbGljLCBm
b250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNhcGFiaWxpdGllcyksIEZvbnQ6Ok9yaWdpbjo6UmVt
b3RlLCAmbV9jb250ZXh0LT5mb250Q2FjaGUoKSk7Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRS
ZXF1ZXN0OjpzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50KiBjbGllbnQpCit7CisgICAg
bV9mb250TG9hZFJlcXVlc3RDbGllbnQgPSBjbGllbnQ7CisKKyAgICBpZiAobV9ub3RpZnlPbkNs
aWVudFNldCkgeworICAgICAgICBtX25vdGlmeU9uQ2xpZW50U2V0ID0gZmFsc2U7CisgICAgICAg
IG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50LT5mb250TG9hZGVkKCp0aGlzKTsKKyAgICB9Cit9CisK
K3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQg
bG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit7CisgICAgaWYgKHJlc3Bv
bnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgIT0gMiAmJiByZXNwb25zZS5odHRwU3RhdHVzQ29k
ZSgpKQorICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOworfQorCit2b2lkIFdvcmtlckZv
bnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFM
ZW5ndGgpCit7CisgICAgaWYgKG1fZXJyb3JPY2N1cnJlZCkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgaWYgKCFtX2RhdGEpCisgICAgICAgIG1fZGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7
CisKKyAgICBtX2RhdGEtPmFwcGVuZChkYXRhLCBkYXRhTGVuZ3RoKTsKK30KKwordm9pZCBXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3sKKyAg
ICBtX2lzTG9hZGluZyA9IGZhbHNlOworCisgICAgaWYgKCFtX2Vycm9yT2NjdXJyZWQpIHsKKyAg
ICAgICAgaWYgKG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50KQorICAgICAgICAgICAgbV9mb250TG9h
ZFJlcXVlc3RDbGllbnQtPmZvbnRMb2FkZWQoKnRoaXMpOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICBtX25vdGlmeU9uQ2xpZW50U2V0ID0gdHJ1ZTsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2Vy
Rm9udExvYWRSZXF1ZXN0OjpkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKQoreworICAgIG1f
ZXJyb3JPY2N1cnJlZCA9IHRydWU7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmggYi9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmJmOTRmZDQ4Y2FiMTRiZDUzNDg5MjE3ZjIwNGJmMjNhODYwNGM1ZTgKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC0w
LDAgKzEsODMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgTWV0cm9sb2dpY2FsIEdyb3Vw
IEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKKyNpbmNsdWRlICJGb250TG9hZFJlcXVlc3QuaCIKKyNpbmNsdWRlICJSZXNv
dXJjZUxvYWRlck9wdGlvbnMuaCIKKyNpbmNsdWRlICJUaHJlYWRhYmxlTG9hZGVyQ2xpZW50Lmgi
CisjaW5jbHVkZSA8d3RmL1VSTC5oPgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFNo
YXJlZEJ1ZmZlcjsKK2NsYXNzIFdvcmtlckdsb2JhbFNjb3BlOworCitzdHJ1Y3QgRm9udEN1c3Rv
bVBsYXRmb3JtRGF0YTsKKworY2xhc3MgV29ya2VyRm9udExvYWRSZXF1ZXN0IDogcHVibGljIEZv
bnRMb2FkUmVxdWVzdCwgcHVibGljIFRocmVhZGFibGVMb2FkZXJDbGllbnQgeworICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIFdvcmtlckZvbnRMb2FkUmVxdWVzdChV
UkwmJiwgTG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSk7CisgICAgfldvcmtlckZvbnRMb2FkUmVxdWVz
dCgpID0gZGVmYXVsdDsKKworICAgIHZvaWQgbG9hZChXb3JrZXJHbG9iYWxTY29wZSYpOworCitw
cml2YXRlOgorICAgIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV91cmw7
IH0KKyAgICBib29sIGlzUGVuZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICFtX2lzTG9hZGlu
ZyAmJiAhbV9lcnJvck9jY3VycmVkICYmICFtX2RhdGE7IH0KKyAgICBib29sIGlzTG9hZGluZygp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1faXNMb2FkaW5nOyB9CisgICAgYm9vbCBlcnJvck9jY3Vy
cmVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9lcnJvck9jY3VycmVkOyB9CisKKyAgICBib29s
IGVuc3VyZUN1c3RvbUZvbnREYXRhKGNvbnN0IEF0b21TdHJpbmcmIHJlbW90ZVVSSSkgZmluYWw7
CisgICAgUmVmUHRyPEZvbnQ+IGNyZWF0ZUZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiwgY29u
c3QgQXRvbVN0cmluZyYgcmVtb3RlVVJJLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhl
dGljSXRhbGljLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiwgRm9udFNlbGVjdGlvblNwZWNp
ZmllZENhcGFiaWxpdGllcykgZmluYWw7CisKKyAgICB2b2lkIHNldENsaWVudChGb250TG9hZFJl
cXVlc3RDbGllbnQqKSBmaW5hbDsKKworICAgIGJvb2wgaXNXb3JrZXJGb250TG9hZFJlcXVlc3Qo
KSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CisKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBm
aW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IGNoYXIqIGRhdGEsIGludCBkYXRh
TGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYp
IGZpbmFsOworCisgICAgVVJMIG1fdXJsOworICAgIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbV9s
b2FkZWRGcm9tT3BhcXVlU291cmNlOworCisgICAgYm9vbCBtX2lzTG9hZGluZyB7IGZhbHNlIH07
CisgICAgYm9vbCBtX25vdGlmeU9uQ2xpZW50U2V0IHsgZmFsc2UgfTsKKyAgICBib29sIG1fZXJy
b3JPY2N1cnJlZCB7IGZhbHNlIH07CisgICAgRm9udExvYWRSZXF1ZXN0Q2xpZW50KiBtX2ZvbnRM
b2FkUmVxdWVzdENsaWVudCB7IG51bGxwdHIgfTsKKworICAgIFdlYWtQdHI8U2NyaXB0RXhlY3V0
aW9uQ29udGV4dD4gbV9jb250ZXh0OworICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IG1fZGF0YTsK
KyAgICBzdGQ6OnVuaXF1ZV9wdHI8Rm9udEN1c3RvbVBsYXRmb3JtRGF0YT4gbV9mb250Q3VzdG9t
UGxhdGZvcm1EYXRhOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCitTUEVDSUFMSVpF
X1RZUEVfVFJBSVRTX0ZPTlRMT0FEUkVRVUVTVChXZWJDb3JlOjpXb3JrZXJGb250TG9hZFJlcXVl
c3QsIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyR2xvYmFsU2NvcGUuY3BwCmluZGV4IGQwZmJkNzJkMzJiNTUwNDY5ZWEwOGE5MGYwZmQ2
YmY4NGZhNjE4ODYuLjAxN2RmNWJiN2NjNDU1ZDA5ZGExMzU0MTUyNGY2ZGNmNDNkZDM1MzMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC0zNCw2
ICszNCw3IEBACiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5UG9saWN5LmgiCiAjaW5jbHVkZSAi
Q3J5cHRvLmgiCiAjaW5jbHVkZSAiRm9udENhY2hlLmgiCisjaW5jbHVkZSAiRm9udEZhY2VTZXQu
aCIKICNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIKICNpbmNsdWRlICJJbWFnZUJpdG1h
cE9wdGlvbnMuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKQEAgLTQ1
LDYgKzQ2LDcgQEAKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpblBvbGljeS5oIgogI2luY2x1ZGUg
IlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oIgogI2luY2x1ZGUgIlNvY2tldFByb3ZpZGVyLmgi
CisjaW5jbHVkZSAiV29ya2VyRm9udExvYWRSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiV29ya2VyTG9h
ZGVyUHJveHkuaCIKICNpbmNsdWRlICJXb3JrZXJMb2NhdGlvbi5oIgogI2luY2x1ZGUgIldvcmtl
ck1lc3NhZ2luZ1Byb3h5LmgiCkBAIC01MjEsNiArNTIzLDIzIEBAIEZvbnRDYWNoZSYgV29ya2Vy
R2xvYmFsU2NvcGU6OmZvbnRDYWNoZSgpCiAgICAgcmV0dXJuICptX2ZvbnRDYWNoZTsKIH0KIAor
UmVmPEZvbnRGYWNlU2V0PiBXb3JrZXJHbG9iYWxTY29wZTo6Zm9udHMoKQoreworICAgIEFTU0VS
VChjc3NGb250U2VsZWN0b3IoKSk7CisgICAgcmV0dXJuIGNzc0ZvbnRTZWxlY3RvcigpLT5mb250
RmFjZVNldCgpOworfQorCitzdGQ6OnVuaXF1ZV9wdHI8Rm9udExvYWRSZXF1ZXN0PiBXb3JrZXJH
bG9iYWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0KFN0cmluZyYgdXJsLCBib29sLCBib29sLCBMb2Fk
ZWRGcm9tT3BhcXVlU291cmNlIGxvYWRlZEZyb21PcGFxdWVTb3VyY2UpCit7CisgICAgcmV0dXJu
IG1ha2VVbmlxdWU8V29ya2VyRm9udExvYWRSZXF1ZXN0Pihjb21wbGV0ZVVSTCh1cmwpLCBsb2Fk
ZWRGcm9tT3BhcXVlU291cmNlKTsKK30KKwordm9pZCBXb3JrZXJHbG9iYWxTY29wZTo6YmVnaW5M
b2FkaW5nRm9udFNvb24oRm9udExvYWRSZXF1ZXN0JiByZXF1ZXN0KQoreworICAgIEFTU0VSVChp
czxXb3JrZXJGb250TG9hZFJlcXVlc3Q+KHJlcXVlc3QpKTsKKyAgICBkb3duY2FzdDxXb3JrZXJG
b250TG9hZFJlcXVlc3Q+KHJlcXVlc3QpLmxvYWQoKnRoaXMpOworfQorCiBSZWZlcnJlclBvbGlj
eSBXb3JrZXJHbG9iYWxTY29wZTo6cmVmZXJyZXJQb2xpY3koKSBjb25zdAogewogICAgIHJldHVy
biBtX3JlZmVycmVyUG9saWN5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXJHbG9iYWxTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxT
Y29wZS5oCmluZGV4IDZlYmU0NjUxMWZiYTIxYzJmODUxNmRlNDUyNjgwMTRjYzI3ZjE2OGUuLjFl
ZmU5YzhkMWVjMjkxZTkyNmNhMzIzMmMyZTc4YmFhMzc3N2ZiMzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmgKQEAgLTUxLDYgKzUxLDcgQEAgY2xhc3MgQ1NT
Rm9udFNlbGVjdG9yOwogY2xhc3MgQ1NTVmFsdWVQb29sOwogY2xhc3MgQ29udGVudFNlY3VyaXR5
UG9saWN5UmVzcG9uc2VIZWFkZXJzOwogY2xhc3MgQ3J5cHRvOworY2xhc3MgRm9udEZhY2VTZXQ7
CiBjbGFzcyBQZXJmb3JtYW5jZTsKIGNsYXNzIFNjaGVkdWxlZEFjdGlvbjsKIGNsYXNzIFdvcmtl
ckxvY2F0aW9uOwpAQCAtMTI0LDYgKzEyNSw5IEBAIHB1YmxpYzoKICAgICBDU1NWYWx1ZVBvb2wm
IGNzc1ZhbHVlUG9vbCgpIGZpbmFsOwogICAgIENTU0ZvbnRTZWxlY3RvciogY3NzRm9udFNlbGVj
dG9yKCkgZmluYWw7CiAgICAgRm9udENhY2hlJiBmb250Q2FjaGUoKSBmaW5hbDsKKyAgICBSZWY8
Rm9udEZhY2VTZXQ+IGZvbnRzKCk7CisgICAgc3RkOjp1bmlxdWVfcHRyPEZvbnRMb2FkUmVxdWVz
dD4gZm9udExvYWRSZXF1ZXN0KFN0cmluZyYgdXJsLCBib29sIGlzU1ZHLCBib29sIGlzSW5pdGlh
dGluZ0VsZW1lbnRJblVzZXJBZ2VudFNoYWRvd1RyZWUsIExvYWRlZEZyb21PcGFxdWVTb3VyY2Up
IGZpbmFsOworICAgIHZvaWQgYmVnaW5Mb2FkaW5nRm9udFNvb24oRm9udExvYWRSZXF1ZXN0Jikg
ZmluYWw7CiAKICAgICBSZWZlcnJlclBvbGljeSByZWZlcnJlclBvbGljeSgpIGNvbnN0IGZpbmFs
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3Bl
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCmluZGV4
IGY4NTc4YTQ3MWY0OGI0ODU4YmJmYmJmYmM4YTA1Y2NkZDliNjliMjYuLmUyOGU4OWVmZjRjYjAy
Zjc0ZGYwYmQxYTI5MDFhNzU3MTQ1Y2VjZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC00OCwzICs0OCw0IEBACiB9OwogCiBXb3JrZXJHbG9i
YWxTY29wZSBpbmNsdWRlcyBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlOworV29ya2VyR2xvYmFs
U2NvcGUgaW5jbHVkZXMgRm9udEZhY2VTb3VyY2U7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZwppbmRleCAyMGFkNzA1ZTUxNThiMTZiNGNiOTRlZjQ5NWMyNmQ4NDgwN2U1YTVjLi4zMTVlNGI0
ZjU0MTkyZmVjZDE0ZmVhZjM5YWVmZjQ4MGUxOWYzM2M4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSw0NyBAQAorMjAyMS0wNC0xNiAgQ2hyaXMgTG9yZCAgPGNsb3Jk
QGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNlIGluIFdvcmtlcnMgZm9y
IE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjUyOTAyND4KKworICAg
ICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBGb250RmFjZSBpcyBub3cg
YXZhaWxhYmxlIGZvciBXb3JrZXJzLCByZWJhc2VsaW5lIHJlbGF0ZWQgdGVzdHMuCisKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mb250LWxvYWRpbmcvZm9udGZhY2VzZXQt
bG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5j
ZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29y
a2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5h
bGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0
YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFi
ZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYm90dG9tLndv
cmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndvcmtlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
Zm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFj
ZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5lbUhl
aWdodHMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmZvbnRCb3VuZGluZ0Jv
eC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2Vy
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0Ogor
CiAyMDIxLTA0LTIxICBUaW0gTmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CiAKICAgICAgICAgSW1w
b3J0IGNzcy9jc3Mtd2lsbC1jaGFuZ2UgdGVzdHMgZnJvbSBXUFQKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mb250LWxvYWRp
bmcvZm9udGZhY2VzZXQtbG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZm9udC1sb2Fk
aW5nL2ZvbnRmYWNlc2V0LWxvYWQtY3NzLXdpZGUta2V5d29yZHMtZXhwZWN0ZWQudHh0CmluZGV4
IGI4MzFlNThmZTUzY2RiOGVmYWNjMDIzZDIzZTU5YWUyYjE5NjYyOTUuLjYyNzViMTNlNWM3MGYx
YWYzNmU4OGFhMDkyZDk1MTU2YTQ5ODgzYWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mb250LWxvYWRpbmcvZm9udGZhY2Vz
ZXQtbG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZvbnQtbG9hZGluZy9mb250
ZmFjZXNldC1sb2FkLWNzcy13aWRlLWtleXdvcmRzLWV4cGVjdGVkLnR4dApAQCAtMSwxMyArMSwx
MCBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICdzZWxmLmZvbnRzLmxvYWQnKQotCi1IYXJuZXNzIEVycm9yIChGQUlM
KSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ3NlbGYuZm9udHMubG9hZCcpCiAKIFBBU1MgTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3Jk
ICJpbml0aWFsIiBjYXVzZXMgU3ludGF4RXJyb3IgKGRvY3VtZW50KQogUEFTUyBMb2FkaW5nIENT
Uy13aWRlIGtleXdvcmQgImluaGVyaXQiIGNhdXNlcyBTeW50YXhFcnJvciAoZG9jdW1lbnQpCiBQ
QVNTIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAidW5zZXQiIGNhdXNlcyBTeW50YXhFcnJvciAo
ZG9jdW1lbnQpCiBQQVNTIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAicmV2ZXJ0IiBjYXVzZXMg
U3ludGF4RXJyb3IgKGRvY3VtZW50KQotVElNRU9VVCBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQg
ImluaXRpYWwiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2VyKSBUZXN0IHRpbWVkIG91dAotTk9U
UlVOIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAiaW5oZXJpdCIgY2F1c2VzIFN5bnRheEVycm9y
ICh3b3JrZXIpCi1OT1RSVU4gTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3JkICJ1bnNldCIgY2F1c2Vz
IFN5bnRheEVycm9yICh3b3JrZXIpCi1OT1RSVU4gTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3JkICJy
ZXZlcnQiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2VyKQorUEFTUyBMb2FkaW5nIENTUy13aWRl
IGtleXdvcmQgImluaXRpYWwiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2VyKQorUEFTUyBMb2Fk
aW5nIENTUy13aWRlIGtleXdvcmQgImluaGVyaXQiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2Vy
KQorUEFTUyBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgInVuc2V0IiBjYXVzZXMgU3ludGF4RXJy
b3IgKHdvcmtlcikKK1BBU1MgTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3JkICJyZXZlcnQiIGNhdXNl
cyBTeW50YXhFcnJvciAod29ya2VyKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGU5ZDdm
NTc0ZjQ1NTBjZDVmMmYzNGMzYTBjNmI4OWRkM2RhOGZkZDMuLjExZGRjZmNlNjcwYjVlZmFiNDE3
NjIzNTgwYjI4Yjc0ZDJhMTA2MzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MyBAQAogCi1GQUlMIHRleHRBbGlnbiBjZW50ZXIgaXMgdGhlIGNlbnRlciBvZiB0aGUgZW0gc3F1
YXJlcyAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNl
CitQQVNTIHRleHRBbGlnbiBjZW50ZXIgaXMgdGhlIGNlbnRlciBvZiB0aGUgZW0gc3F1YXJlcyAo
bm90IHRoZSBib3VuZGluZyBib3gpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzOGRk
NzhiZWViZWJmOTJlZDAyYjE1NDk2MmEwYTA5NTAwZDk2YzFjLi5lMDkyZTFmOGJjNmRmNzVkMWM5
MTVhNGI0ZmI5YWVkYmUxZjhjNzliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBlbmQgd2l0aCBsdHIgaXMgdGhlIHJpZ2h0IGVkZ2Ug
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGVuZCB3aXRoIGx0
ciBpcyB0aGUgcmlnaHQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMDU4YmI5
OWRlMzM1YTRiZmQwM2ZiNTE2NzM0MWVkNDBiYWJjYjkxMi4uNGI2ZGUyN2UyNDg4YmVlYjlkY2Vj
OWRkZWIxZWI0NDIwYmUzZjVjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsx
LDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gZW5kIHdpdGggcnRsIGlzIHRoZSBsZWZ0IGVkZ2UgQ2Fu
J3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWduIGVuZCB3aXRoIHJ0bCBp
cyB0aGUgbGVmdCBlZGdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBmMjkyZjk0NDEyNzlkY2E5
NTc0YzJiZjAzMTY2YjEzOTUxOTJjNTYzLi5iMjNmNzc4Y2ZlMDFjNTQ1MzkyMDAyM2ExYTMzZDQ5
NmQ1ZjJmYWEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5s
ZWZ0Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRl
eHRBbGlnbiBsZWZ0IGlzIHRoZSBsZWZ0IG9mIHRoZSBmaXJzdCBlbSBzcXVhcmUgKG5vdCB0aGUg
Ym91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyB0ZXh0QWxp
Z24gbGVmdCBpcyB0aGUgbGVmdCBvZiB0aGUgZmlyc3QgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5k
aW5nIGJveCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24u
cmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFs
aWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZmY1YTQwMjBiZGFiMGE2MTE5ZmQ2
NGFlNDc3MmZjMTViMTFlYTU2NS4uYTEwODJkNWI4YzU4NTQ0OTNkYTA4OTUwMTYwZWZkY2E2OWIz
ZWIwZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24ucmlnaHQu
d29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGln
bi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRB
bGlnbiByaWdodCBpcyB0aGUgcmlnaHQgb2YgdGhlIGxhc3QgZW0gc3F1YXJlIChub3QgdGhlIGJv
dW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWdu
IHJpZ2h0IGlzIHRoZSByaWdodCBvZiB0aGUgbGFzdCBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRp
bmcgYm94KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5z
dGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDZmZDk2NTU0NTJjZjAx
NjdiNGFkMDljMTJlOTM2N2MwY2M4YjEyYTkuLjE5ZjAyYmYzZDA4NWY0MWFhZTk2OWNhYmY5ZDQ5
YjJjZjdhMGYyOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWdu
LnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBA
QAogCi1GQUlMIHRleHRBbGlnbiBzdGFydCB3aXRoIGx0ciBpcyB0aGUgbGVmdCBlZGdlIENhbid0
IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBzdGFydCB3aXRoIGx0ciBp
cyB0aGUgbGVmdCBlZGdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggYmQ1YTU5
ZDc5ZTZlMDVhZGMzODQzOWNhZDVkYmY1YjIxZDljODY5Yy4uNDFjM2YyNGFmMGJkYjQ2MzYyNTFj
NDk0ZmRjNjQ5ZTNkOWU2OTFiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEs
MyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIHN0YXJ0IHdpdGggcnRsIGlzIHRoZSByaWdodCBl
ZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBzdGFydCB3
aXRoIHJ0bCBpcyB0aGUgcmlnaHQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtlci1leHBlY3Rl
ZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYyZWVjNGQ3YTliOTYxNTFkM2ZlZC4uYTE3
ZWVmNTA5MmI3ZDAzODI3YWNkNjViNzk3OGVlNGI5YmUyMGRjMiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmFscGhhYmV0aWMu
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyAyZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0
CmluZGV4IDZhMTU0OWMxN2IyMjZhOWU1NTY1NzVjZTkyZjcyOTY4ODljZGEyOTIuLmZmMjgzNjA5
ODUzODU0MmQ3MmVkYzI5MTAwZjU4MDZhODIzYjA3NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRCYXNlbGluZSBib3R0b20gaXMgdGhl
IGJvdHRvbSBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmlu
ZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4dEJhc2VsaW5lIGJvdHRvbSBpcyB0aGUgYm90
dG9tIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBhc3NlcnRfYXBwcm94
X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwgMjUpIGV4cGVjdGVkIDAg
Ky8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGQz
ODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmNiZWYyNzZhMzQ3OGZhYmMx
MWFiNWY0ZjFiNWQyNTkyNTU3Njk4ZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UK
K0ZBSUwgMmQgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBh
dCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaWRlb2dyYXBoaWMu
d29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBkMzg5OTQwYWY2NWY0N2RhM2FiZjJlZWM0ZDdhOWI5
NjE1MWQzZmVkLi5jYmVmMjc2YTM0NzhmYWJjMTFhYjVmNGYxYjVkMjU5MjU1NzY5OGRlIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhpYy53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2Vs
aW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZB
SUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgMmQgYXNzZXJ0X2FwcHJv
eF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCAr
Ly0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDMwMDY3
MzhhOWM2ZDhmOTIwZWQ5YzBjOGNlNjZlYzkzMjM5M2ViYWEuLmFkNjQ5NDllMTUxMmE1Yjg3MGIw
NmQxMjA0OGYyYjhmMjg2ODMxOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsMyBAQAogCi1GQUlMIHRleHRCYXNlbGluZSBtaWRkbGUgaXMgdGhlIG1pZGRsZSBvZiB0
aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTog
Rm9udEZhY2UKK0ZBSUwgdGV4dEJhc2VsaW5lIG1pZGRsZSBpcyB0aGUgbWlkZGxlIG9mIHRoZSBl
bSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVk
IGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1LCA1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3Qg
MjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLnRv
cC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxp
bmUudG9wLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZTI2ZjFiNmY4YTM0M2IwZGE1MzU5YWVl
NDgxNjliNDdmYjYyNzBhYS4uODBlOThmYjI1YjY5NDNiM2M4Mjk0ZGMyMmUzYmJiN2E3MDJhMzY0
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndv
cmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxp
bmUudG9wLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEJh
c2VsaW5lIHRvcCBpcyB0aGUgdG9wIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcg
Ym94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCB0ZXh0QmFzZWxpbmUgdG9w
IGlzIHRoZSB0b3Agb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3VuZGluZyBib3gpIGFzc2Vy
dF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDUsIDUpIGV4cGVj
dGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0ZWQu
dHh0CmluZGV4IDljM2Y4NWU0OTBhMjEzNmQzZjQ1MDViYjM5M2JhMzljYjQ5MDJiYmEuLmVlNDI5
MWQyYmU4MzU4NDQ1MDI4ZjdiMmU1MzkwYTRiOWZhNGUwMGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRoLmJvdW5kLndv
cmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgZmlsbFRleHQgaGFuZGxl
cyBtYXhXaWR0aCBiYXNlZCBvbiBsaW5lIHNpemUsIG5vdCBib3VuZGluZyBib3ggc2l6ZSBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBmaWxsVGV4dCBoYW5kbGVzIG1heFdpZHRo
IGJhc2VkIG9uIGxpbmUgc2l6ZSwgbm90IGJvdW5kaW5nIGJveCBzaXplCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGgu
Zm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA2YjkyYzM4ZjMyMjIyOThjYThhYThl
ZTIxOTZjMzhlMTRhN2I5Yzc4Li5iMmNlMjcxYmYxMDFlM2M5YjYyYjU4YmQxODkyOTc1OTFkNzlh
NzZkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1heFdpZHRo
LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsMyBAQAogCi1GQUlMIGZpbGxUZXh0IHdvcmtzIG9uIEBmb250LWZhY2UgZm9udHMgQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgZmlsbFRleHQgd29ya3Mgb24gQGZvbnQtZmFj
ZSBmb250cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFj
ZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGU3OTM1N2Fh
YjI1ZjYxOGVmNWE3ZTA0YmZiYTQ4NTcwZTk0ZjJlY2IuLjFhYjk5MWYyMmVlZGU1YjI4ZjMxMTlj
OWY1MmZhN2Q4MWQ4M2MzMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIEBmb250LWZhY2UgZm9udHMgc2hvdWxkIHdvcmsgZXZlbiBp
ZiB0aGV5IGFyZSBub3QgdXNlZCBpbiB0aGUgcGFnZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250
RmFjZQorUEFTUyBAZm9udC1mYWNlIGZvbnRzIHNob3VsZCB3b3JrIGV2ZW4gaWYgdGhleSBhcmUg
bm90IHVzZWQgaW4gdGhlIHBhZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAw
Zjc1ZWE5MjEyOWRkNGYyYWY5ZDJmNTNmMWVmYjY0ZjE5OTExNjQ1Li4zOWVkYTRkYzJmZjY2M2Ux
ZjI4MzZlNTY3Y2U3NjM4NjU1NjkxZDk1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDMgQEAKIAotRkFJTCBEcmF3IHdpdGggdGhlIGZvbnQgaW1tZWRpYXRlbHksIHRo
ZW4gd2FpdCBhIGJpdCB1bnRpbCBhbmQgZHJhdyBhZ2Fpbi4gKFRoaXMgY3Jhc2hlcyBzb21lIHZl
cnNpb24gb2YgV2ViS2l0LikgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgRHJh
dyB3aXRoIHRoZSBmb250IGltbWVkaWF0ZWx5LCB0aGVuIHdhaXQgYSBiaXQgdW50aWwgYW5kIGRy
YXcgYWdhaW4uIChUaGlzIGNyYXNoZXMgc29tZSB2ZXJzaW9uIG9mIFdlYktpdC4pCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0
ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmEx
N2VlZjUwOTJiN2QwMzgyN2FjZDY1Yjc5NzhlZTRiOWJlMjBkYzIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQor
UEFTUyAyZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5i
YXNpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3Bh
Y2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA5YTMyNDAyNzVlZDM4N2RiZGZkNWQy
NWMxZjVhMjdhOWRlNjljNzVhLi4xZWQ0NGY4ZjdkYmNiMTYzNGJmNDlhNzNiZjk1OTViOTc5MjA5
OGNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5iYXNpYy53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNl
LmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVSswMDIw
IGlzIHJlbmRlcmVkIHRoZSBjb3JyZWN0IHNpemUgKDFlbSB3aWRlKSBDYW4ndCBmaW5kIHZhcmlh
YmxlOiBGb250RmFjZQorUEFTUyBVKzAwMjAgaXMgcmVuZGVyZWQgdGhlIGNvcnJlY3Qgc2l6ZSAo
MWVtIHdpZGUpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNl
LmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNmU1Zjgz
MmQxNDJlMGU3NTUyNDkyOGU1Mjc0ZWI5MGEwYTMyY2I2YS4uNDJmNTcwZjBiOWU3OGQ5NDdjMGUw
YmM2NGFiNjgxNjhjMzY2NTUyYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgZW5kIG9mIGEg
bGluZSBhcmUgY29sbGFwc2VkIChwZXIgQ1NTKSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFj
ZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBlbmQgb2YgYSBsaW5lIGFyZSBjb2xsYXBz
ZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4
ZWwgYXQgKDc1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3Jr
ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFw
c2Uubm9uc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBhZTQ2MTVkZTRjYzQwMjk3NjBk
MTc1YzkwNzQyOTc5ZWU1NTMwMzVjLi45ZTVkNDcwNDQ5NTI5MzkxN2NkNWVlNTY0NmY0OGM4Yzk4
ZGE2YmQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xs
YXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKQEAg
LTEsMyArMSwzIEBACiAKLUZBSUwgTm9uLXNwYWNlIGNoYXJhY3RlcnMgYXJlIG5vdCBjb252ZXJ0
ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UK
K1BBU1MgTm9uLXNwYWNlIGNoYXJhY3RlcnMgYXJlIG5vdCBjb252ZXJ0ZWQgdG8gVSswMDIwIGFu
ZCBjb2xsYXBzZWQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3Bh
Y2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXgg
OTRhMDA0M2EwYTMzNzllMTI4ZWIxNjQwYjRmNjQyOGIyZDcxMzlkYS4uNjgyY2ZiOTM5YjBmODUw
MTBiN2QzM2U1ODQyMTA1NmE1MWI0ODAxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5vdGhlci53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNv
bnZlcnRlZCB0byBVKzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIENhbid0IGZpbmQgdmFy
aWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBV
KzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQg
Y2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290
IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xs
YXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuc3BhY2UuY29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA5NGEwMDQz
YTBhMzM3OWUxMjhlYjE2NDBiNGY2NDI4YjJkNzEzOWRhLi42ODJjZmI5MzliMGY4NTAxMGI3ZDMz
ZTU4NDIxMDU2YTUxYjQ4MDE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndvcmtlci1leHBlY3RlZC50
eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVk
IHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTog
Rm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwg
YW5kIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVs
IG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBleHBlY3RlZCAwICsvLSAyIGJ1dCBnb3QgMjU1CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0
YXJ0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFj
ZS5jb2xsYXBzZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDUwODY4ZmU5MTk4MGNh
NzBiNDA5Zjc2MzczOWU4NDBlZjk2ZjNkNWQuLjdiY2I1MWNjYzdiOWMwYTE2MDlkNWVhY2QzZDM0
ZGMyODE4MTI4NGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNl
LmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBzdGFydCBvZiBhIGxp
bmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UK
K0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgc3RhcnQgb2YgYSBsaW5lIGFyZSBjb2xsYXBz
ZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4
ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWN0dWFsQm91bmRp
bmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzMTIwZmNiOGZhZGRkOWU1NDI2NzQ1ZGQ1
NTZmOWQ0Mzc5YmZlN2I3Li44MjU0Y2U2NzQyNDg2MjJlZTA3YjQ0YzdkOWY4YjZjZGY3NjFjZjYy
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1YWxCb3VuZGlu
Z0JveC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFz
dXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgVGVzdGluZyBhY3R1YWxCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENh
bid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFRlc3RpbmcgYWN0dWFsQm91bmRpbmdC
b3ggZm9yIE9mZnNjcmVlbkNhbnZhcyBhc3NlcnRfZXF1YWxzOiBNYXRoLmFicyhjdHgubWVhc3Vy
ZVRleHQoJ0EnKS5hY3R1YWxCb3VuZGluZ0JveERlc2NlbnQpID09PSAwIChnb3QgMVtudW1iZXJd
LCBleHBlY3RlZCAwW251bWJlcl0pIGV4cGVjdGVkIDAgYnV0IGdvdCAxCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0
ZWQudHh0CmluZGV4IGY0YTA4NDAzYzFlYjhiNDFhYzRiYTU4MDYyYTQzNTI4NTc1NTU1YWIuLjkz
OGM3OTkxMWQwNmVmNTE0ZDdiMWM5YzZhNDU0MTUxYTFiZjU3YjUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIHdpZHRoIGFkdmFuY2VzIGZvciBP
ZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGlu
ZyB3aWR0aCBhZHZhbmNlcyBmb3IgT2Zmc2NyZWVuQ2FudmFzIHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICdjdHgubWVhc3VyZVRleHQoJ0hlbGxvJykuYWR2YW5jZXNbMF0n
KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5iYXNlbGluZXMu
d29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2Vs
aW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDNkMjk5MGMxMWU5NmUxNzE4NTc4OTM0Y2Yz
MmNhYjYzNDQ3OTZjNzEuLmUxZDIyOTM4NGQxYTcwNjUwMmU1MTg0MjkyZjU3ZDgzNDRjNDkyN2Mg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2VsaW5lcy53b3Jr
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmJhc2Vs
aW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRlc3Rpbmcg
YmFzZWxpbmVzIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZh
Y2UKK0ZBSUwgVGVzdGluZyBiYXNlbGluZXMgZm9yIE9mZnNjcmVlbkNhbnZhcyBjdHgubWVhc3Vy
ZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY3R4Lm1lYXN1
cmVUZXh0KCdBJykuZ2V0QmFzZWxpbmVzKCknLCAnY3R4Lm1lYXN1cmVUZXh0KCdBJykuZ2V0QmFz
ZWxpbmVzJyBpcyB1bmRlZmluZWQpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggODVhNzJj
ZWExNzE5M2ZiZjEwOGViZjRiNDYxM2ZlOWU5MjU5ZDBkMC4uYWNhZmFkZjg2MWMwN2ZhN2ZmZjUx
ZjMwMWZhN2UxOWZkZWJhZjFmYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwz
IEBACiAKLUZBSUwgVGVzdGluZyBlbUhlaWdodHMgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIGVtSGVpZ2h0cyBmb3IgT2Zmc2Ny
ZWVuQ2FudmFzIGFzc2VydF9lcXVhbHM6IGN0eC5tZWFzdXJlVGV4dCgnQScpLmVtSGVpZ2h0QXNj
ZW50ID09PSAzNy41IChnb3QgODVbbnVtYmVyXSwgZXhwZWN0ZWQgMzcuNVtudW1iZXJdKSBleHBl
Y3RlZCAzNy41IGJ1dCBnb3QgODUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0
Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCAxNGM3ZGE0NGJkMGVkY2Y2ODFhZjdhZjNkYzZiNmU3ZmExNWE0NjUwLi4yNWJhY2UzZWZj
ZjE3ZmZlMjdiMDUzMTc5ZmRkZDBmZTkzMTIwM2NkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4
cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIGZvbnRCb3VuZGluZ0Jv
eCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNT
IFRlc3RpbmcgZm9udEJvdW5kaW5nQm94IGZvciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmJhc2ljLndvcmtl
ci1leHBlY3RlZC50eHQKaW5kZXggNWM3ODBjOWU0ZTUxODYxYjAxZGEzMGNmMTRkNzM4NTIzNDM5
YTI5My4uOTQyZjkxNDEwNTU1OTI3NzliODQzYWI2NmE1MTU2YzliMmYwN2QwNSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFzaWMud29ya2VyLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5iYXNpYy53
b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRoZSB3aWR0aCBvZiBj
aGFyYWN0ZXIgaXMgc2FtZSBhcyBmb250IHVzZWQgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBUaGUgd2lkdGggb2YgY2hhcmFjdGVyIGlzIHNh
bWUgYXMgZm9udCB1c2VkIGZvciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5Lndvcmtlci1leHBlY3Rl
ZC50eHQKaW5kZXggNTAwZDcyN2QzYjY3ZGM5ODZhZmVmNGI5ZDJmMmE3NDY5OWUxZDNlZS4uNjg3
YmM0ZjM1ZmNmNGNjZDc0Nzc0MTFhNzYyMzM0M2IzMGJkZTkzOCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2VyLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5lbXB0eS53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRoZSBlbXB0eSBzdHJpbmcgaGFzIHpl
cm8gd2lkdGggZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFj
ZQorUEFTUyBUaGUgZW1wdHkgc3RyaW5nIGhhcyB6ZXJvIHdpZHRoIGZvciBPZmZzY3JlZW5DYW52
YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3Bh
Y2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndp
ZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOTNkNzExYzRiYjk0NzIyMDRjN2Yx
NDM1YzhiZTAwZmRjN2IyNmIyYS4uMDUzNzI5MDBkNTY2Zjc5YjQ1NWMzZWE1NTI1MjA2NTI1ZmQy
MDFjYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguc3Bh
Y2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3Vy
ZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlM
IFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAgYW5kIGNvbGxhcHNlZCAo
cGVyIENTUykgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFj
ZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xs
YXBzZWQgKHBlciBDU1MpIGZvciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0X2VxdWFsczogY3R4Lm1l
YXN1cmVUZXh0KCdBIFx4MDlceDBhXHgwY1x4MGQgIFx4MDlceDBhXHgwY1x4MGRCJykud2lkdGgg
PT09IDE1MCAoZ290IDY1MFtudW1iZXJdLCBleHBlY3RlZCAxNTBbbnVtYmVyXSkgZXhwZWN0ZWQg
MTUwIGJ1dCBnb3QgNjUwCiAK
</data>
<flag name="commit-queue"
          id="447182"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426799</attachid>
            <date>2021-04-22 04:31:57 -0700</date>
            <delta_ts>2021-04-22 11:45:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224178-20210422123154.patch</filename>
            <type>text/plain</type>
            <size>88611</size>
            <attacher name="Chris Lord">clord</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NDI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2M1M2NlZGNhOTg1YmRj
YTU2MjUwMGU4ODE1OTRjOTZiM2Q2ZGFmZi4uYzNhZTIxYjNhNDI3MWQ1OGM2MTZkYzNhZmU4OGU0
ZGY5ZTJkZDVhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyMiBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBU
byBjb21wbHkgd2l0aCBzcGVjIGFuZCBjb21wbGV0ZSB0aGUgT2Zmc2NyZWVuQ2FudmFzIGltcGxl
bWVudGF0aW9uLAorICAgICAgICBGb250RmFjZSBuZWVkcyB0byBiZSBtYWRlIGF2YWlsYWJsZSBv
biBXb3JrZXJHbG9iYWxTY29wZS4gVGhpcyBwYXRjaAorICAgICAgICBtYWtlcyBpdCBhdmFpbGFi
bGUgYW5kIGZpeGVzIGNyYXNoZXMgdXNpbmcgaXQgZHVlIHRvIGFjY2Vzc2luZworICAgICAgICBt
YWluLXRocmVhZCBvbmx5IHNpbmdsZXRvbnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCByZWJh
c2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6CisgICAg
ICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAgIEFkZCBuZXcgZmlsZXMgV29ya2VyRm9udExvYWRSZXF1ZXN0LmNw
cCwgV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udENhY2hlRmFsbGluZ0JhY2tU
b1NpbmdsZXRvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NGb250RmFjZTo6Zm9udCk6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICAgVXNlIHRoZSBTY3JpcHRFeGVjdXRp
b25Db250ZXh0J3MgRm9udENhY2hlIGlmIHBvc3NpYmxlIHdoZW4gbG9hZGluZyBmb250cy4KKwor
ICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NG
b250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU2V0OjptYXRjaGluZ0ZhY2VzRXhjbHVkaW5nUHJl
aW5zdGFsbGVkRm9udHMpOgorICAgICAgICAgIFVzZSB0aGUgY29ycmVjdCBDU1NWYWx1ZVBvb2wg
YW5kIEZvbnRDYWNoZSBpbgorICAgICAgICAgIGVuc3VyZUxvY2FsRm9udEZhY2VzRm9yRmFtaWx5
UmVnaXN0ZXJlZC4gQWxzbyBjbGFyaWZ5IGEgdmFndWVseS1uYW1lZAorICAgICAgICAgIHZhcmlh
YmxlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0ZvbnRGYWNlU291cmNlOjpDU1NGb250RmFjZVNvdXJjZSk6CisgICAgICAgICAg
VXNlIEZvbnRMb2FkUmVxdWVzdDo6aXNQZW5kaW5nIGluc3RlYWQgb2YgbWFraW5nIGFzc3VtcHRp
b25zIGFib3V0IHRoZQorICAgICAgICAgIHJlcXVlc3Qgc3RhdGUgb24gY29uc3RydWN0aW9uLgor
CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRGYWNl
OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udEZhY2U6OmRpc3BsYXkgY29uc3QpOgor
ICAgICAgICAqIGNzcy9Gb250RmFjZS5oOgorICAgICAgICAqIGNzcy9Gb250RmFjZS5pZGw6Cisg
ICAgICAgICAgQ29uc3RydWN0IHdpdGggYSBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGluc3RlYWQg
b2YgYSBEb2N1bWVudCBhbmQKKyAgICAgICAgICBtYWtlIGF2YWlsYWJsZSBmb3IgV29ya2Vycy4K
KworICAgICAgICAqIGNzcy9Gb250RmFjZVNldC5pZGw6CisgICAgICAgICAgRXhwb3NlIHRvIFdv
cmtlcnMuCisKKyAgICAgICAgKiBsb2FkZXIvRm9udExvYWRSZXF1ZXN0Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpGb250TG9hZFJlcXVlc3Q6OmlzV29ya2VyRm9udExvYWRSZXF1ZXN0IGNvbnN0KToK
KyAgICAgICAgICBBZGQgaXNQZW5kaW5nIGZ1bmN0aW9uIGFuZCBuZXcgdHlwZSBXb3JrZXJGb250
TG9hZFJlcXVlc3QuCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRGb250OjpjcmVhdGVDdXN0b21Gb250RGF0YSk6CisgICAg
ICAgICAgVXNlIGNvbnZlcnRXT0ZGVG9TZm50SWZOZWNlc3NhcnkoKS4KKworICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaDoKKyAgICAgICAgICBJbXBsZW1lbnQg
Rm9udExvYWRSZXF1ZXN0Ojppc1BlbmRpbmcuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmNyZWF0ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpGb250OjpGb250KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OnN5c3RlbUZhbGxi
YWNrRm9udEZvckNoYXJhY3RlciBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udC5oOgorICAgICAgICAgIEFkZCBhbiBvcHRpb25hbCBGb250Q2FjaGUgcGFyYW1ldGVyIGZv
ciB1c2Ugd2l0aCB2ZXJ0aWNhbCBmb250IGRhdGEKKyAgICAgICAgICByZXRyaWV2YWwgYW5kIGFk
ZCBhIEZvbnRDYWNoZSBwYXJhbWV0ZXIgdG8KKyAgICAgICAgICBzeXN0ZW1GYWxsYmFja0ZvbnRG
b3JDaGFyYWN0ZXIgaW5zdGVhZCBvZiB1c2luZyB0aGUgc2luZ2xldG9uLgorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRD
YWNoZTo6Zm9udEZvclBsYXRmb3JtRGF0YSk6CisgICAgICAgICAgUGFzcyBGb250Q2FjaGUgcGFy
YW1ldGVyIHdoZW4gY3JlYXRpbmcgZm9udHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250Q2FjaGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYWNoZTo6Zm9udENhY2hlRmFs
bGluZ0JhY2tUb1NpbmdsZXRvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
c2NhZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGU6OnVwZGF0ZSBjb25zdCk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvSGFyZmJ1enpORy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FzY2FkZTo6Zm9udEZvckNvbWJpbmluZ0NoYXJh
Y3RlclNlcXVlbmNlIGNvbnN0KToKKyAgICAgICAgICBSZW5hbWUgZm9udENhY2hlRmFsbGJhY2tU
b1NpbmdsZXRvbiAtPiBmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uCisKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRDYXNjYWRlRm9udHM6OnJlYWxpemVGYWxsYmFja1Jhbmdlc0F0KToKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDYXNjYWRlRm9udHM6OmdseXBoRGF0YUZvclN5c3RlbUZhbGxiYWNrKToK
KyAgICAgICAgICBVc2UgZmFtaWx5TmFtZXNEYXRhIGluc3RlYWQgb2YgZmFtaWx5TmFtZXMgYW5k
IHBhc3MgdGhlIEZvbnRDYWNoZQorICAgICAgICAgIHBhcmFtZXRlciB3aGVuIGNhbGxpbmcgZ2x5
cGhEYXRhRm9yU3lzdGVtRmFsbGJhY2sgdG8gbWFrZSB0aGlzIHNhZmUKKyAgICAgICAgICB0byB1
c2UgaW4gYSBXb3JrZXIuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250VGFnZ2Vk
U2V0dGluZ3MuaDoKKyAgICAgICAgICBBZGQgbWlzc2luZyB3dGYvSGFzaGVyLmggaW5jbHVkZS4K
KworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmNvbnZlcnRXT0ZGVG9TZm50SWZOZWNlc3NhcnkpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0Lmg6CisgICAgICAgICAgQWRkIHV0aWxpdHkg
ZnVuY3Rpb24gdG8gY29udmVydCBXT0ZGIGZvbnRzIG9uIG5vbi1Db2NvYSBwbGF0Zm9ybXMuCisK
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHA6IEFkZGVkLgorICAg
ICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpXb3JrZXJGb250TG9hZFJlcXVl
c3QpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0Ojpsb2FkKToKKyAg
ICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3VzdG9tRm9udERh
dGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpjcmVhdGVGb250
KToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6c2V0Q2xpZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2
ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5p
c2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlk
RmFpbCk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaDogQWRkZWQu
CisgICAgICAgICAgSW1wbGVtZW50IEZvbnRMb2FkUmVxdWVzdCBmb3IgV29ya2Vycy4KKworICAg
ICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyR2xvYmFsU2NvcGU6OmZvbnRzKToKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtlckdsb2Jh
bFNjb3BlOjpmb250TG9hZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyR2xvYmFs
U2NvcGU6OmJlZ2luTG9hZGluZ0ZvbnRTb29uKToKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckds
b2JhbFNjb3BlLmg6CisgICAgICAgICAgSW1wbGVtZW50IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQg
Zm9udC1sb2FkaW5nIHJlbGF0ZWQgZnVuY3Rpb25zLgorCisgICAgICAgICogd29ya2Vycy9Xb3Jr
ZXJHbG9iYWxTY29wZS5pZGw6CisgICAgICAgICAgSW5jbHVkZSBGb250RmFjZVNvdXJjZS4KKwog
MjAyMS0wNC0yMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtpT1NdIFdlYiBwcm9jZXNzZXMgcmVjcmVhdGVkIGFmdGVyIGNyYXNoaW5nIGFyZSBu
b3QgY3JlYXRlZCB3aXRoIHRoZSByaWdodCBjb250ZW50U2l6ZUNhdGVnb3J5CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5j
bWFrZQppbmRleCBjMDRmODA0ZWQ5MzdjNjcwYWRlZjdiM2I2ODlkODk1ZGZhN2U3YjAwLi40OTk5
YmVjYWM2NTdkZGJhZGZjZDdkNWVmMzEwYTczMGZiNWMzN2NhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UK
QEAgLTE2NTQsNiArMTY1NCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURF
UlMKICAgICB3b3JrZXJzL1NjcmlwdEJ1ZmZlci5oCiAgICAgd29ya2Vycy9Xb3JrZXJBbmltYXRp
b25Db250cm9sbGVyLmgKICAgICB3b3JrZXJzL1dvcmtlckRlYnVnZ2VyUHJveHkuaAorICAgIHdv
cmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKICAgICB3b3JrZXJzL1dvcmtlckxvYWRlclBy
b3h5LmgKICAgICB3b3JrZXJzL1dvcmtlck9yV29ya2xldFRocmVhZC5oCiAgICAgd29ya2Vycy9X
b3JrZXJSdW5Mb29wLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIv
U291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggYmRiMmU1NTFhMWE5MjFkMzkyMTI1ZDk4
ODFlYzBkNDM2OTg0YmQwYi4uMTE5YzY5N2UwMjE2NmE4NTczNTgwOGQ3ZDFlN2FhOWM0MGQ1YjU0
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dl
YkNvcmUvU291cmNlcy50eHQKQEAgLTI2NTQsNiArMjY1NCw3IEBAIHdvcmtlcnMvV29ya2VyLmNw
cAogd29ya2Vycy9Xb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmNwcAogd29ya2Vycy9Xb3JrZXJD
b25zb2xlQ2xpZW50LmNwcAogd29ya2Vycy9Xb3JrZXJFdmVudExvb3AuY3BwCit3b3JrZXJzL1dv
cmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCiB3
b3JrZXJzL1dvcmtlckluc3BlY3RvclByb3h5LmNwcAogd29ya2Vycy9Xb3JrZXJMb2NhdGlvbi5j
cHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agppbmRleCA0Y2E1ODkyN2M3ZWI0MTI3NWVlNzUyZDI0MmEwMTI0YzA2MWIyMDJiLi4yZWFhY2Zi
NzdmNTEwMDJjOGVhZTI5ODYzMGE5NjJiZWNiMjNiN2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNDMyLDYgKzM0MzIsNyBA
QAogCQlBN0NGQjNEMjBCN0VEMTBBMDA3MEMzMkQgLyogRHJhZ0ltYWdlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0NGQjNEMDBCN0VEMTBBMDA3MEMz
MkQgLyogRHJhZ0ltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJQTdEMjBGNjMxMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZv
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0QyMEY2
MTEwN0Y0MDY5MDBBODAzOTIgLyogSlNXZWJHTEFjdGl2ZUluZm8uaCAqLzsgfTsKIAkJQTdEMjBG
NkQxMDdGNDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNkIxMDdGNDM4QjAwQTgwMzkyIC8q
IFdlYkdMQWN0aXZlSW5mby5oICovOyB9OworCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyog
V29ya2VyRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBN0Q2QjM0NzBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJQTdENkIzNDkwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdENkIzNDcwRjYxMTA0
NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE3REJGOERFMTI3NjkxOUMwMDZCNjAwOCAvKiBU
ZXh0Q2hlY2tpbmdIZWxwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE3REJGOERDMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIu
aCAqLzsgfTsKIAkJQTgwRDY3MDgwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBs
YXRmb3JtUHJpdmF0ZUNHLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBODBENjcwNzBFOUU5REVCMDBFNDIwRjAgLyogR3JhcGhpY3NDb250ZXh0UGxhdGZv
cm1Qcml2YXRlQ0cuaCAqLzsgfTsKQEAgLTEyODQ4LDYgKzEyODQ5LDggQEAKIAkJQTdEMjBGNjAx
MDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJbmZvLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTdEMjBGNjExMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3Rp
dmVJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xBY3RpdmVJ
bmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE3RDIwRjZCMTA3RjQzOEIwMEE4
MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV2ViR0xBY3RpdmVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZC
MzQ3MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1ZXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZCMzQ4MEY2MTEwNDUwMEZGOUZEMSAvKiBXb3JrZXJG
b250TG9hZFJlcXVlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
V29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrZXJTY3JpcHRMb2FkZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdENkIzNDgwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNj
cmlwdExvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3Jr
ZXJTY3JpcHRMb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0RCRjhE
QjEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRDaGVja2luZ0hlbHBlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xOTQxOSw2ICsxOTQyMiw4IEBACiAJCQkJQTUyQjM0OUMx
RkE0MTZGODAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCAqLywKIAkJCQk5QjBBQkNB
MzIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmNwcCAqLywKIAkJCQk5QjBBQkNB
NDIzNjc5QUNGMDBCNDUwODUgLyogV29ya2VyRXZlbnRMb29wLmggKi8sCisJCQkJQTdENkIzNDgw
RjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgKi8sCisJCQkJQTdE
NkIzNDcwRjYxMTA0NTAwRkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oICovLAogCQkJ
CTJFNDM0NjM2MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5jcHAgKi8sCiAJ
CQkJMkU0MzQ2MzcwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmggKi8sCiAJ
CQkJMkU0MzQ2MzgwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmlkbCAqLywK
QEAgLTM1ODMxLDYgKzM1ODM2LDcgQEAKIAkJCQlBNUI4MUNDRTFGQUE0NERFMDAzN0QxRTYgLyog
V29ya2VyRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTUyQjM0OUUxRkE0MTcw
MzAwOEI2MjQ2IC8qIFdvcmtlckRlYnVnZ2VyUHJveHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkx
RTBEREM0MjMwQjQxRjEwMDE5RTFFMyAvKiBXb3JrZXJET01EZWJ1Z2dlckFnZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBN0Q2QjM0OTBGNjExMDQ1MDBGRjlGRDEgLyogV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQkyRTQzNDY0OTBGNTQ2QTgyMDBCMEYxQkEgLyog
V29ya2VyR2xvYmFsU2NvcGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRDEyOUNFMUYzRDBFRjYw
MEQxNUU0NyAvKiBXb3JrZXJHbG9iYWxTY29wZUNhY2hlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MkU0MzQ2NEIwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlUHJveHkuaCBpbiBI
ZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5jcHAKaW5kZXggMWFkODA0NzdhYmEw
ZDM2NjdkMGRlNTYzYzkyZGNlYmU4YTllYzM5YS4uYjc3ZDExZmM2NDVkOTE4YTc1NjhjN2RkMzFk
MjE3ZmUxOTZmYzg1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuY3BwCkBAIC0zOTYsNiAr
Mzk2LDEzIEBAIERvY3VtZW50KiBDU1NGb250RmFjZTo6ZG9jdW1lbnQoKQogICAgIHJldHVybiBu
dWxscHRyOwogfQogCitGb250Q2FjaGUmIENTU0ZvbnRGYWNlOjpmb250Q2FjaGVGYWxsaW5nQmFj
a1RvU2luZ2xldG9uKCkKK3sKKyAgICBpZiAobV93cmFwcGVyICYmIG1fd3JhcHBlci0+c2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm4gbV93cmFwcGVyLT5zY3JpcHRFeGVj
dXRpb25Db250ZXh0KCktPmZvbnRDYWNoZSgpOworICAgIHJldHVybiBGb250Q2FjaGU6OnNpbmds
ZXRvbigpOworfQorCiBib29sIENTU0ZvbnRGYWNlOjpjb21wdXRlRmFpbHVyZVN0YXRlKCkgY29u
c3QKIHsKICAgICBpZiAoc3RhdHVzKCkgPT0gU3RhdHVzOjpGYWlsdXJlKQpAQCAtNjY5LDggKzY3
Niw5IEBAIFJlZlB0cjxGb250PiBDU1NGb250RmFjZTo6Zm9udChjb25zdCBGb250RGVzY3JpcHRp
b24mIGZvbnREZXNjcmlwdGlvbiwgYm9vbCBzeW50CiAgICAgICAgIHN3aXRjaCAoc291cmNlLT5z
dGF0dXMoKSkgewogICAgICAgICBjYXNlIENTU0ZvbnRGYWNlU291cmNlOjpTdGF0dXM6OlBlbmRp
bmc6CiAgICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6TG9hZGluZzogewor
ICAgICAgICAgICAgYXV0byYgZm9udENhY2hlID0gZm9udENhY2hlRmFsbGluZ0JhY2tUb1Npbmds
ZXRvbigpOwogICAgICAgICAgICAgRm9udDo6VmlzaWJpbGl0eSB2aXNpYmlsaXR5ID0gV2ViQ29y
ZTo6dmlzaWJpbGl0eShzdGF0dXMoKSwgZm9udExvYWRUaW1pbmcoKSk7Ci0gICAgICAgICAgICBy
ZXR1cm4gRm9udDo6Y3JlYXRlKEZvbnRDYWNoZTo6c2luZ2xldG9uKCkubGFzdFJlc29ydEZhbGxi
YWNrRm9udChmb250RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpM
b2NhbCwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOworICAgICAgICAgICAg
cmV0dXJuIEZvbnQ6OmNyZWF0ZShmb250Q2FjaGUubGFzdFJlc29ydEZhbGxiYWNrRm9udChmb250
RGVzY3JpcHRpb24pLT5wbGF0Zm9ybURhdGEoKSwgRm9udDo6T3JpZ2luOjpMb2NhbCwgJmZvbnRD
YWNoZSwgRm9udDo6SW50ZXJzdGl0aWFsOjpZZXMsIHZpc2liaWxpdHkpOwogICAgICAgICB9CiAg
ICAgICAgIGNhc2UgQ1NTRm9udEZhY2VTb3VyY2U6OlN0YXR1czo6U3VjY2VzczoKICAgICAgICAg
ICAgIGlmIChhdXRvIHJlc3VsdCA9IHNvdXJjZS0+Zm9udChmb250RGVzY3JpcHRpb24sIHN5bnRo
ZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgbV9mZWF0dXJlU2V0dGluZ3MsIG1fZm9udFNlbGVj
dGlvbkNhcGFiaWxpdGllcykpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9u
dEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCmluZGV4IGI1ZTQ5NzVk
MWQ1OTIwOWQ4NjJiZDg0NjJkZDdjZGZmZjZmNTlkYmQuLmYzZjAxNTdkMTAyMjRiNmE2ZTA0ZGYy
YjM3NjUxZTY2YjY0MTAxOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250
RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCkBAIC00Niw2ICs0
Niw3IEBAIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKIGNsYXNzIENTU1NlZ21lbnRlZEZvbnRGYWNl
OwogY2xhc3MgQ1NTVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZUxpc3Q7CitjbGFzcyBGb250Q2FjaGU7
CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250OwogY2xhc3MgRm9udEZhY2U7CkBA
IC0xNzIsNiArMTczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHRpbWVvdXRGaXJlZCgpOwogCiAg
ICAgRG9jdW1lbnQqIGRvY3VtZW50KCk7CisgICAgRm9udENhY2hlJiBmb250Q2FjaGVGYWxsaW5n
QmFja1RvU2luZ2xldG9uKCk7CiAKICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtX2ZhbWlsaWVz
OwogICAgIFZlY3RvcjxVbmljb2RlUmFuZ2U+IG1fcmFuZ2VzOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NG
b250RmFjZVNldC5jcHAKaW5kZXggZjBjYWY0OGVmY2NlYmM1ZDEyMzAwMjE4NGMzNmRmM2VhMzA1
MjdjMy4uM2ZhYTg2ZjljMDFkODBhNWI1YmQ1YzEzYjY5ODNjNTdlODI2YTg1OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2VTZXQuY3BwCkBAIC0xMTIsNyArMTEyLDcgQEAgdm9pZCBDU1NG
b250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0
IFN0cmluZyYgZmFtaWwKICAgICBBbGxvd1VzZXJJbnN0YWxsZWRGb250cyBhbGxvd1VzZXJJbnN0
YWxsZWRGb250cyA9IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXM7CiAgICAgaWYgKG1fb3du
aW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCiAgICAgICAgIGFsbG93
VXNlckluc3RhbGxlZEZvbnRzID0gbV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKS0+c2V0dGluZ3NWYWx1ZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250
cyA/IEFsbG93VXNlckluc3RhbGxlZEZvbnRzOjpZZXMgOiBBbGxvd1VzZXJJbnN0YWxsZWRGb250
czo6Tm87Ci0gICAgVmVjdG9yPEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXM+IGNhcGFiaWxpdGll
cyA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuZ2V0Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllc0lu
RmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKKyAgICBWZWN0b3I8
Rm9udFNlbGVjdGlvbkNhcGFiaWxpdGllcz4gY2FwYWJpbGl0aWVzID0gbV9vd25pbmdGb250U2Vs
ZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+Zm9udENhY2hlKCkuZ2V0Rm9udFNlbGVj
dGlvbkNhcGFiaWxpdGllc0luRmFtaWx5KGZhbWlseU5hbWUsIGFsbG93VXNlckluc3RhbGxlZEZv
bnRzKTsKICAgICBpZiAoY2FwYWJpbGl0aWVzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwog
CkBAIC0xMjEsNyArMTIxLDcgQEAgdm9pZCBDU1NGb250RmFjZVNldDo6ZW5zdXJlTG9jYWxGb250
RmFjZXNGb3JGYW1pbHlSZWdpc3RlcmVkKGNvbnN0IFN0cmluZyYgZmFtaWwKICAgICAgICAgUmVm
PENTU0ZvbnRGYWNlPiBmYWNlID0gQ1NTRm9udEZhY2U6OmNyZWF0ZShtX293bmluZ0ZvbnRTZWxl
Y3Rvci5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0ciwgdHJ1ZSk7CiAgICAgICAgIAogICAgICAgICBS
ZWY8Q1NTVmFsdWVMaXN0PiBmYW1pbHlMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNl
cGFyYXRlZCgpOwotICAgICAgICBmYW1pbHlMaXN0LT5hcHBlbmQoQ1NTVmFsdWVQb29sOjpzaW5n
bGV0b24oKS5jcmVhdGVGb250RmFtaWx5VmFsdWUoZmFtaWx5TmFtZSkpOworICAgICAgICBmYW1p
bHlMaXN0LT5hcHBlbmQobV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKS0+Y3NzVmFsdWVQb29sKCkuY3JlYXRlRm9udEZhbWlseVZhbHVlKGZhbWlseU5hbWUpKTsK
ICAgICAgICAgZmFjZS0+c2V0RmFtaWxpZXMoZmFtaWx5TGlzdC5nZXQoKSk7CiAgICAgICAgIGZh
Y2UtPnNldEZvbnRTZWxlY3Rpb25DYXBhYmlsaXRpZXMoaXRlbSk7CiAgICAgICAgIGZhY2UtPmFk
b3B0U291cmNlKG1ha2VVbmlxdWU8Q1NTRm9udEZhY2VTb3VyY2U+KGZhY2UuZ2V0KCksIGZhbWls
eU5hbWUpKTsKQEAgLTM3Niw5ICszNzYsOSBAQCBFeGNlcHRpb25PcjxWZWN0b3I8c3RkOjpyZWZl
cmVuY2Vfd3JhcHBlcjxDU1NGb250RmFjZT4+PiBDU1NGb250RmFjZVNldDo6bWF0Y2hpbgogICAg
IFZlY3RvcjxBdG9tU3RyaW5nPiBmYW1pbHlPcmRlcjsKICAgICBmb3IgKGF1dG8mIGZhbWlseVJh
dyA6IGZvbnQtPmZhbWlseSkgewogICAgICAgICBBdG9tU3RyaW5nIGZhbWlseUF0b207Ci0gICAg
ICAgIFdURjo6c3dpdGNoT24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgaWRlbnQpIHsKLSAg
ICAgICAgICAgIGlmIChpZGVudCAhPSBDU1NWYWx1ZVdlYmtpdEJvZHkpCi0gICAgICAgICAgICAg
ICAgZmFtaWx5QXRvbSA9IGZhbWlseU5hbWVzRGF0YS0+YXQoQ1NTUHJvcGVydHlQYXJzZXJIZWxw
ZXJzOjpnZW5lcmljRm9udEZhbWlseUluZGV4KGlkZW50KSk7CisgICAgICAgIFdURjo6c3dpdGNo
T24oZmFtaWx5UmF3LCBbJl0gKENTU1ZhbHVlSUQgZmFtaWx5S2V5d29yZCkgeworICAgICAgICAg
ICAgaWYgKGZhbWlseUtleXdvcmQgIT0gQ1NTVmFsdWVXZWJraXRCb2R5KQorICAgICAgICAgICAg
ICAgIGZhbWlseUF0b20gPSBmYW1pbHlOYW1lc0RhdGEtPmF0KENTU1Byb3BlcnR5UGFyc2VySGVs
cGVyczo6Z2VuZXJpY0ZvbnRGYW1pbHlJbmRleChmYW1pbHlLZXl3b3JkKSk7CiAgICAgICAgICAg
ICBlbHNlIHsKICAgICAgICAgICAgICAgICBBU1NFUlQobV9vd25pbmdGb250U2VsZWN0b3IgJiYg
bV9vd25pbmdGb250U2VsZWN0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAgICAgICAg
ICAgICAgICAgZmFtaWx5QXRvbSA9IG1fb3duaW5nRm9udFNlbGVjdG9yLT5zY3JpcHRFeGVjdXRp
b25Db250ZXh0KCktPnNldHRpbmdzVmFsdWVzKCkuZm9udEdlbmVyaWNGYW1pbGllcy5zdGFuZGFy
ZEZvbnRGYW1pbHkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFj
ZVNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuY3BwCmlu
ZGV4IGI2N2U4ZTY2NmNmOWJjYTk1OGEyM2VkMzcwNjJjODY0NGM2ZmQyMWUuLmQzYTNiMDA2NjRk
NmRmZTg1YWUyYjkwMjZmZWVlMmM5NzY0MDZhMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Zv
bnRGYWNlU291cmNlLmNwcApAQCAtODEsNyArODEsNyBAQCBDU1NGb250RmFjZVNvdXJjZTo6Q1NT
Rm9udEZhY2VTb3VyY2UoQ1NTRm9udEZhY2UmIG93bmVyLCBjb25zdCBTdHJpbmcmIGZhbWlseU5h
bQogICAgIC8vIFRoaXMgbWF5IHN5bmNocm9ub3VzbHkgY2FsbCBmb250TG9hZGVkKCkuCiAgICAg
bV9mb250UmVxdWVzdC0+c2V0Q2xpZW50KHRoaXMpOwogCi0gICAgaWYgKHN0YXR1cygpID09IFN0
YXR1czo6UGVuZGluZyAmJiAhbV9mb250UmVxdWVzdC0+aXNMb2FkaW5nKCkpIHsKKyAgICBpZiAo
c3RhdHVzKCkgPT0gU3RhdHVzOjpQZW5kaW5nICYmICFtX2ZvbnRSZXF1ZXN0LT5pc1BlbmRpbmco
KSkgewogICAgICAgICBzZXRTdGF0dXMoU3RhdHVzOjpMb2FkaW5nKTsKICAgICAgICAgaWYgKCFz
aG91bGRJZ25vcmVGb250TG9hZENvbXBsZXRpb25zKCkpIHsKICAgICAgICAgICAgIGlmIChtX2Zv
bnRSZXF1ZXN0LT5lcnJvck9jY3VycmVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvRm9udEZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAppbmRleCAx
OWQ5YjQ0YWNkNDg1YjMyMzE5Y2U5NTlmNGFkMmQ2NzExNTg0ZjhlLi5hZjQ4MGQwMGIzMWY5Zjg0
ZDAzOWQzMTM1NzkxNmU4OTcxZDYyNWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Rm9udEZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAKQEAgLTYy
LDE0ICs2MiwxNSBAQCB2b2lkIEZvbnRGYWNlOjpzZXRFcnJvclN0YXRlKCkKICAgICBtX2JhY2tp
bmctPnNldEVycm9yU3RhdGUoKTsKIH0KIAotUmVmPEZvbnRGYWNlPiBGb250RmFjZTo6Y3JlYXRl
KERvY3VtZW50JiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBmYW1pbHksIFNvdXJjZSYmIHNvdXJj
ZSwgY29uc3QgRGVzY3JpcHRvcnMmIGRlc2NyaXB0b3JzKQorUmVmPEZvbnRGYWNlPiBGb250RmFj
ZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0cmluZyYg
ZmFtaWx5LCBTb3VyY2UmJiBzb3VyY2UsIGNvbnN0IERlc2NyaXB0b3JzJiBkZXNjcmlwdG9ycykK
IHsKLSAgICBhdXRvIHJlc3VsdCA9IGFkb3B0UmVmKCpuZXcgRm9udEZhY2UoZG9jdW1lbnQuZm9u
dFNlbGVjdG9yKCkpKTsKKyAgICBBU1NFUlQoY29udGV4dC5jc3NGb250U2VsZWN0b3IoKSk7Cisg
ICAgYXV0byByZXN1bHQgPSBhZG9wdFJlZigqbmV3IEZvbnRGYWNlKCpjb250ZXh0LmNzc0ZvbnRT
ZWxlY3RvcigpKSk7CiAgICAgcmVzdWx0LT5zdXNwZW5kSWZOZWVkZWQoKTsKIAogICAgIGJvb2wg
ZGF0YVJlcXVpcmVzQXN5bmNocm9ub3VzTG9hZGluZyA9IHRydWU7CiAKLSAgICBhdXRvIHNldEZh
bWlseVJlc3VsdCA9IHJlc3VsdC0+c2V0RmFtaWx5KGRvY3VtZW50LCBmYW1pbHkpOworICAgIGF1
dG8gc2V0RmFtaWx5UmVzdWx0ID0gcmVzdWx0LT5zZXRGYW1pbHkoY29udGV4dCwgZmFtaWx5KTsK
ICAgICBpZiAoc2V0RmFtaWx5UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHJlc3Vs
dC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNzcsMTAgKzc4
LDEwIEBAIFJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQs
IGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAKICAgICBhdXRvIHNvdXJjZUNvbnZlcnNp
b25SZXN1bHQgPSBXVEY6OnN3aXRjaE9uKHNvdXJjZSwKICAgICAgICAgWyZdIChTdHJpbmcmIHN0
cmluZykgLT4gRXhjZXB0aW9uT3I8dm9pZD4gewotICAgICAgICAgICAgYXV0byB2YWx1ZSA9IENT
U1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZTo6cGFyc2VGb250RmFjZVNyYyhzdHJpbmcsIENTU1Bh
cnNlckNvbnRleHQoZG9jdW1lbnQpKTsKKyAgICAgICAgICAgIGF1dG8gdmFsdWUgPSBDU1NQcm9w
ZXJ0eVBhcnNlcldvcmtlclNhZmU6OnBhcnNlRm9udEZhY2VTcmMoc3RyaW5nLCBpczxEb2N1bWVu
dD4oY29udGV4dCkgPyBDU1NQYXJzZXJDb250ZXh0KGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0
KSkgOiBIVE1MU3RhbmRhcmRNb2RlKTsKICAgICAgICAgICAgIGlmICghdmFsdWUpCiAgICAgICAg
ICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFN5bnRheEVycm9yIH07Ci0gICAgICAgICAgICBD
U1NGb250RmFjZTo6YXBwZW5kU291cmNlcyhyZXN1bHQtPmJhY2tpbmcoKSwgKnZhbHVlLCAmZG9j
dW1lbnQsIGZhbHNlKTsKKyAgICAgICAgICAgIENTU0ZvbnRGYWNlOjphcHBlbmRTb3VyY2VzKHJl
c3VsdC0+YmFja2luZygpLCAqdmFsdWUsICZjb250ZXh0LCBmYWxzZSk7CiAgICAgICAgICAgICBy
ZXR1cm4geyB9OwogICAgICAgICB9LAogICAgICAgICBbJl0gKFJlZlB0cjxBcnJheUJ1ZmZlclZp
ZXc+JiBhcnJheUJ1ZmZlclZpZXcpIC0+IEV4Y2VwdGlvbk9yPHZvaWQ+IHsKQEAgLTEwMSwzMiAr
MTAyLDMyIEBAIFJlZjxGb250RmFjZT4gRm9udEZhY2U6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1l
bnQsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmCiAgICAgfQogCiAgICAgLy8gVGhlc2Ug
dGVybmFyaWVzIG1hdGNoIHRoZSBkZWZhdWx0IHN0cmluZ3MgaW5zaWRlIHRoZSBGb250RmFjZURl
c2NyaXB0b3JzIGRpY3Rpb25hcnkgaW5zaWRlIEZvbnRGYWNlLmlkbC4KLSAgICBhdXRvIHNldFN0
eWxlUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHlsZShkb2N1bWVudCwgZGVzY3JpcHRvcnMuc3R5bGUu
aXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLnN0eWxlKTsKKyAgICBhdXRvIHNl
dFN0eWxlUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHlsZShjb250ZXh0LCBkZXNjcmlwdG9ycy5zdHls
ZS5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3R5bGUpOwogICAgIGlmIChz
ZXRTdHlsZVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQtPnNldEVycm9y
U3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0byBzZXRXZWln
aHRSZXN1bHQgPSByZXN1bHQtPnNldFdlaWdodChkb2N1bWVudCwgZGVzY3JpcHRvcnMud2VpZ2h0
LmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOworICAgIGF1dG8g
c2V0V2VpZ2h0UmVzdWx0ID0gcmVzdWx0LT5zZXRXZWlnaHQoY29udGV4dCwgZGVzY3JpcHRvcnMu
d2VpZ2h0LmlzRW1wdHkoKSA/ICJub3JtYWwiX3MgOiBkZXNjcmlwdG9ycy53ZWlnaHQpOwogICAg
IGlmIChzZXRXZWlnaHRSZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcmVzdWx0LT5z
ZXRFcnJvclN0YXRlKCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGF1dG8g
c2V0U3RyZXRjaFJlc3VsdCA9IHJlc3VsdC0+c2V0U3RyZXRjaChkb2N1bWVudCwgZGVzY3JpcHRv
cnMuc3RyZXRjaC5pc0VtcHR5KCkgPyAibm9ybWFsIl9zIDogZGVzY3JpcHRvcnMuc3RyZXRjaCk7
CisgICAgYXV0byBzZXRTdHJldGNoUmVzdWx0ID0gcmVzdWx0LT5zZXRTdHJldGNoKGNvbnRleHQs
IGRlc2NyaXB0b3JzLnN0cmV0Y2guaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3Jz
LnN0cmV0Y2gpOwogICAgIGlmIChzZXRTdHJldGNoUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAg
ICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1cm4gcmVzdWx0Owog
ICAgIH0KLSAgICBhdXRvIHNldFVuaWNvZGVSYW5nZVJlc3VsdCA9IHJlc3VsdC0+c2V0VW5pY29k
ZVJhbmdlKGRvY3VtZW50LCBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UuaXNFbXB0eSgpID8gIlUr
MC0xMEZGRkYiX3MgOiBkZXNjcmlwdG9ycy51bmljb2RlUmFuZ2UpOworICAgIGF1dG8gc2V0VW5p
Y29kZVJhbmdlUmVzdWx0ID0gcmVzdWx0LT5zZXRVbmljb2RlUmFuZ2UoY29udGV4dCwgZGVzY3Jp
cHRvcnMudW5pY29kZVJhbmdlLmlzRW1wdHkoKSA/ICJVKzAtMTBGRkZGIl9zIDogZGVzY3JpcHRv
cnMudW5pY29kZVJhbmdlKTsKICAgICBpZiAoc2V0VW5pY29kZVJhbmdlUmVzdWx0Lmhhc0V4Y2Vw
dGlvbigpKSB7CiAgICAgICAgIHJlc3VsdC0+c2V0RXJyb3JTdGF0ZSgpOwogICAgICAgICByZXR1
cm4gcmVzdWx0OwogICAgIH0KLSAgICBhdXRvIHNldEZlYXR1cmVTZXR0aW5nc1Jlc3VsdCA9IHJl
c3VsdC0+c2V0RmVhdHVyZVNldHRpbmdzKGRvY3VtZW50LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0
dGluZ3MuaXNFbXB0eSgpID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5n
cyk7CisgICAgYXV0byBzZXRGZWF0dXJlU2V0dGluZ3NSZXN1bHQgPSByZXN1bHQtPnNldEZlYXR1
cmVTZXR0aW5ncyhjb250ZXh0LCBkZXNjcmlwdG9ycy5mZWF0dXJlU2V0dGluZ3MuaXNFbXB0eSgp
ID8gIm5vcm1hbCJfcyA6IGRlc2NyaXB0b3JzLmZlYXR1cmVTZXR0aW5ncyk7CiAgICAgaWYgKHNl
dEZlYXR1cmVTZXR0aW5nc1Jlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICByZXN1bHQt
PnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgYXV0
byBzZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGRvY3VtZW50LCBkZXNjcmlw
dG9ycy5kaXNwbGF5LmlzRW1wdHkoKSA/ICJhdXRvIl9zIDogZGVzY3JpcHRvcnMuZGlzcGxheSk7
CisgICAgYXV0byBzZXREaXNwbGF5UmVzdWx0ID0gcmVzdWx0LT5zZXREaXNwbGF5KGNvbnRleHQs
IGRlc2NyaXB0b3JzLmRpc3BsYXkuaXNFbXB0eSgpID8gImF1dG8iX3MgOiBkZXNjcmlwdG9ycy5k
aXNwbGF5KTsKICAgICBpZiAoc2V0RGlzcGxheVJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAg
ICAgICByZXN1bHQtPnNldEVycm9yU3RhdGUoKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAg
LTM5OSwxMyArNDAwLDEzIEBAIFN0cmluZyBGb250RmFjZTo6ZmVhdHVyZVNldHRpbmdzKCkgY29u
c3QKICAgICByZXR1cm4gbGlzdC0+Y3NzVGV4dCgpOwogfQogCi1TdHJpbmcgRm9udEZhY2U6OmRp
c3BsYXkoKSBjb25zdAorU3RyaW5nIEZvbnRGYWNlOjpkaXNwbGF5KFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpIGNvbnN0CiB7CiAgICAgbV9iYWNraW5nLT51cGRhdGVTdHlsZUlmTmVl
ZGVkKCk7CiAgICAgY29uc3QgYXV0byYgbG9hZGluZ0JlaGF2aW9yV3JhcHBlZCA9IG1fYmFja2lu
Zy0+bG9hZGluZ0JlaGF2aW9yKCk7CiAgICAgaWYgKCFsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLmhh
c1ZhbHVlKCkpCiAgICAgICAgIHJldHVybiAiYXV0byJfczsKLSAgICByZXR1cm4gQ1NTVmFsdWVQ
b29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShsb2FkaW5nQmVoYXZpb3JXcmFwcGVkLnZhbHVl
KCkpLT5jc3NUZXh0KCk7CisgICAgcmV0dXJuIGNvbnRleHQuY3NzVmFsdWVQb29sKCkuY3JlYXRl
VmFsdWUobG9hZGluZ0JlaGF2aW9yV3JhcHBlZC52YWx1ZSgpKS0+Y3NzVGV4dCgpOwogfQogCiBh
dXRvIEZvbnRGYWNlOjpzdGF0dXMoKSBjb25zdCAtPiBMb2FkU3RhdHVzCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFj
ZS5oCmluZGV4IGYxYjU1YTgxMTJiODA0MWMxMDQ2NDJjNDBlNjZiZDM2ZGEwM2M3MmEuLjk3N2Yz
YTk5YWM0YTE3NmMwNjYzMGU3YzdkMGFhZGQ5NTAxYjVkNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Gb250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5o
CkBAIC01NCw3ICs1NCw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIAogICAgIHVzaW5nIFNvdXJj
ZSA9IFZhcmlhbnQ8U3RyaW5nLCBSZWZQdHI8SlNDOjpBcnJheUJ1ZmZlcj4sIFJlZlB0cjxKU0M6
OkFycmF5QnVmZmVyVmlldz4+OwotICAgIHN0YXRpYyBSZWY8Rm9udEZhY2U+IGNyZWF0ZShEb2N1
bWVudCYsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMm
KTsKKyAgICBzdGF0aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYsIGNvbnN0IFN0cmluZyYgZmFtaWx5LCBTb3VyY2UmJiwgY29uc3QgRGVzY3JpcHRvcnMmKTsK
ICAgICBzdGF0aWMgUmVmPEZvbnRGYWNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCos
IENTU0ZvbnRGYWNlJik7CiAgICAgdmlydHVhbCB+Rm9udEZhY2UoKTsKIApAQCAtNzIsNyArNzIs
NyBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIHN0cmV0Y2goKSBjb25zdDsKICAgICBTdHJpbmcgdW5p
Y29kZVJhbmdlKCkgY29uc3Q7CiAgICAgU3RyaW5nIGZlYXR1cmVTZXR0aW5ncygpIGNvbnN0Owot
ICAgIFN0cmluZyBkaXNwbGF5KCkgY29uc3Q7CisgICAgU3RyaW5nIGRpc3BsYXkoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCYpIGNvbnN0OwogCiAgICAgZW51bSBjbGFzcyBMb2FkU3RhdHVzIHsgVW5s
b2FkZWQsIExvYWRpbmcsIExvYWRlZCwgRXJyb3IgfTsKICAgICBMb2FkU3RhdHVzIHN0YXR1cygp
IGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKaW5kZXggMzM0NjdhZmIzYjE4NDQzNTk5ZjFj
NmFkYjliZDRlNmNhNDc1NzM5Mi4uNDFmMzU3MjMwMWZhMzRhZjE5NzExNjU5OTk5ZGJjZTdlYTUw
NzM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRsCkBAIC00Myw5ICs0Myw5IEBAIGRpY3Rpb25h
cnkgRm9udEZhY2VEZXNjcmlwdG9ycyB7CiAKIFsKICAgICBBY3RpdmVET01PYmplY3QsCi0gICAg
RXhwb3NlZD1XaW5kb3cKKyAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2Ug
Rm9udEZhY2UgewotICAgIFtDYWxsV2l0aD1Eb2N1bWVudF0gY29uc3RydWN0b3IoRE9NU3RyaW5n
IGZhbWlseSwgKERPTVN0cmluZyBvciBCaW5hcnlEYXRhKSBzb3VyY2UsIG9wdGlvbmFsIEZvbnRG
YWNlRGVzY3JpcHRvcnMgZGVzY3JpcHRvcnMpOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRp
b25Db250ZXh0XSBjb25zdHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCAoRE9NU3RyaW5nIG9yIEJp
bmFyeURhdGEpIHNvdXJjZSwgb3B0aW9uYWwgRm9udEZhY2VEZXNjcmlwdG9ycyBkZXNjcmlwdG9y
cyk7CiAKICAgICBbU2V0dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmli
dXRlIERPTVN0cmluZyBmYW1pbHk7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlv
bkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3R5bGU7CkBAIC01Myw3ICs1Myw3IEBAIGRp
Y3Rpb25hcnkgRm9udEZhY2VEZXNjcmlwdG9ycyB7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlw
dEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyZXRjaDsKICAgICBbU2V0
dGVyQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gYXR0cmlidXRlIERPTVN0cmluZyB1
bmljb2RlUmFuZ2U7CiAgICAgW1NldHRlckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRd
IGF0dHJpYnV0ZSBET01TdHJpbmcgZmVhdHVyZVNldHRpbmdzOwotICAgIFtTZXR0ZXJDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRpc3BsYXk7Cisg
ICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBET01TdHJpbmcg
ZGlzcGxheTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGb250RmFjZUxvYWRTdGF0dXMgc3Rh
dHVzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuaWRsIGIv
U291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlU2V0LmlkbAppbmRleCAwNDJhMGI2ZWYwOTAzZTYw
Y2E3NzNkNDEyYWJhOWUwODBmODk4MGE1Li5mNzM4YjQ3NzE2N2EyMTgwYTMxMGJjNjcyMjU0ZGQx
ZjFiMWJkNGJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZVNldC5pZGwKQEAgLTMwLDcgKzMwLDcg
QEAgZW51bSBGb250RmFjZVNldExvYWRTdGF0dXMgewogCiBbCiAgICAgQWN0aXZlRE9NT2JqZWN0
LAotICAgIEV4cG9zZWQ9V2luZG93CisgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKIF0gaW50
ZXJmYWNlIEZvbnRGYWNlU2V0IDogRXZlbnRUYXJnZXQgewogICAgIFtDYWxsV2l0aD1TY3JpcHRF
eGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihzZXF1ZW5jZTxGb250RmFjZT4gaW5pdGlhbEZh
Y2VzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVz
dC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IGUzMzQ1
YTgyZTQ2Mjg1YTE5YjU0Y2RkYWZmNjIyMThjMDY1ZWUyMWYuLjVkZmFjODJjYjU3ZGE3N2YzYjIw
ODcwYmU2MGMzYzQ5YjM0NjFmMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
b250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1
ZXN0LmgKQEAgLTM1LDkgKzM1LDYgQEAgY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgRm9u
dExvYWRSZXF1ZXN0Owogc3RydWN0IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7
CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBUPiBjbGFzcyBGb250VGFnZ2VkU2V0dGluZ3M7Ci11c2lu
ZyBGb250RmVhdHVyZVNldHRpbmdzID0gRm9udFRhZ2dlZFNldHRpbmdzPGludD47Ci0KIGNsYXNz
IEZvbnRMb2FkUmVxdWVzdENsaWVudCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+Rm9udExvYWRS
ZXF1ZXN0Q2xpZW50KCkgPSBkZWZhdWx0OwpAQCAtNDksNiArNDYsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB+Rm9udExvYWRSZXF1ZXN0KCkgPSBkZWZhdWx0OwogCiAgICAgdmlydHVhbCBjb25z
dCBVUkwmIHVybCgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgaXNQZW5kaW5nKCkgY29u
c3QgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBpc0xvYWRpbmcoKSBjb25zdCA9IDA7CiAgICAgdmly
dHVhbCBib29sIGVycm9yT2NjdXJyZWQoKSBjb25zdCA9IDA7CiAKQEAgLTU4LDYgKzU2LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50
KikgPSAwOwogCiAgICAgdmlydHVhbCBib29sIGlzQ2FjaGVkRm9udExvYWRSZXF1ZXN0KCkgY29u
c3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaXNXb3JrZXJGb250TG9hZFJl
cXVlc3QoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwCmluZGV4IDk3
NDE5ZWVlNzQxOWY4MGFhZGFmZTgyNDU1OTBkZmVkNjRlOTc3MmUuLjViNzE5ZGFjNWRlMmE3OGJl
MDg4NzZhMDZkOWE1N2I4MTJmOWUwNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRGb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkRm9udC5jcHAKQEAgLTEwNCwyMSArMTA0LDkgQEAgYm9vbCBDYWNoZWRGb250OjplbnN1
cmVDdXN0b21Gb250RGF0YShTaGFyZWRCdWZmZXIqIGRhdGEpCiAKIHN0ZDo6dW5pcXVlX3B0cjxG
b250Q3VzdG9tUGxhdGZvcm1EYXRhPiBDYWNoZWRGb250OjpjcmVhdGVDdXN0b21Gb250RGF0YShT
aGFyZWRCdWZmZXImIGJ5dGVzLCBjb25zdCBTdHJpbmcmIGl0ZW1JbkNvbGxlY3Rpb24sIGJvb2wm
IHdyYXBwaW5nKQogewotICAgIHdyYXBwaW5nID0gdHJ1ZTsKLQotI2lmICFQTEFURk9STShDT0NP
QSkKLSAgICBpZiAoaXNXT0ZGKGJ5dGVzKSkgewotICAgICAgICB3cmFwcGluZyA9IGZhbHNlOwot
ICAgICAgICBWZWN0b3I8Y2hhcj4gY29udmVydGVkRm9udDsKLSAgICAgICAgaWYgKCFjb252ZXJ0
V09GRlRvU2ZudChieXRlcywgY29udmVydGVkRm9udCkpCi0gICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLQotICAgICAgICBhdXRvIGJ1ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFdURk1v
dmUoY29udmVydGVkRm9udCkpOwotICAgICAgICByZXR1cm4gY3JlYXRlRm9udEN1c3RvbVBsYXRm
b3JtRGF0YShidWZmZXIsIGl0ZW1JbkNvbGxlY3Rpb24pOwotICAgIH0KLSNlbmRpZgotCi0gICAg
cmV0dXJuIGNyZWF0ZUZvbnRDdXN0b21QbGF0Zm9ybURhdGEoYnl0ZXMsIGl0ZW1JbkNvbGxlY3Rp
b24pOworICAgIGF1dG8gYnVmZmVyID0gbWFrZVJlZlB0cihieXRlcyk7CisgICAgd3JhcHBpbmcg
PSAhY29udmVydFdPRkZUb1NmbnRJZk5lY2Vzc2FyeShidWZmZXIpOworICAgIHJldHVybiBidWZm
ZXIgPyBjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1EYXRhKCpidWZmZXIsIGl0ZW1JbkNvbGxlY3Rp
b24pIDogbnVsbHB0cjsKIH0KIAogUmVmUHRyPEZvbnQ+IENhY2hlZEZvbnQ6OmNyZWF0ZUZvbnQo
Y29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcm
LCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVh
dHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2Fw
YWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IDUzZDExZjNmNjI4Mzc0
Yjk2ZjFhMjJlNjlmYWZkYWFkZGVhZjljNTAuLmI5YjBjZjg2ZWE5YzEzYTU3ZDNhNTEwZGMxN2E5
Zjg4NWFhZDBiYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkRm9udExvYWRSZXF1ZXN0LmgKQEAgLTUxLDYgKzUxLDcgQEAgcHVibGljOgogCiBwcml2YXRl
OgogICAgIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT51cmwo
KTsgfQorICAgIGJvb2wgaXNQZW5kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT5z
dGF0dXMoKSA9PSBDYWNoZWRSZXNvdXJjZTo6U3RhdHVzOjpQZW5kaW5nOyB9CiAgICAgYm9vbCBp
c0xvYWRpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZvbnQtPmlzTG9hZGluZygpOyB9CiAg
ICAgYm9vbCBlcnJvck9jY3VycmVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9mb250LT5lcnJv
ck9jY3VycmVkKCk7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNw
cAppbmRleCBiMTFhODc2OWU4NjBiOTNiMDlkNzMyNDFlNWJlYmQ1ODA4YjYyYjhmLi5mOTkxODNk
N2NjYmI4NTRlNGU0ZmJjYzU1MDlhMzAzYWIzYjUyN2ZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250LmNwcApAQCAtNTgsMTYgKzU4LDI2IEBAIGNvbnN0IGZsb2F0IGVt
cGhhc2lzTWFya0ZvbnRTaXplTXVsdGlwbGllciA9IDAuNWY7CiAKIERFRklORV9BTExPQ0FUT1Jf
V0lUSF9IRUFQX0lERU5USUZJRVIoRm9udCk7CiAKLVJlZjxGb250PiBGb250OjpjcmVhdGUoUmVm
PFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiBvcmlnaW4sIGZsb2F0
IGZvbnRTaXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljSXRhbGljKQorUmVm
PEZvbnQ+IEZvbnQ6OmNyZWF0ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEs
IE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2liaWxpdHkgdmlz
aWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNrLCBPcHRpb25h
bDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IGlkZW50aWZpZXIpCit7CisgICAgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgRm9udChwbGF0Zm9ybURhdGEsIG9yaWdpbiwgaW50ZXJzdGl0aWFsLCB2
aXNpYmlsaXR5LCBvcmllbnRhdGlvbkZhbGxiYWNrLCBpZGVudGlmaWVyLCBudWxscHRyKSk7Cit9
CisKK1JlZjxGb250PiBGb250OjpjcmVhdGUoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZv
cm1EYXRhLCBPcmlnaW4gb3JpZ2luLCBGb250Q2FjaGUqIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0
YSwgSW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSB2aXNpYmlsaXR5LCBPcmll
bnRhdGlvbkZhbGxiYWNrIG9yaWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcj4gaWRlbnRpZmllcikKK3sKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBGb250KHBsYXRmb3JtRGF0YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2liaWxpdHksIG9y
aWVudGF0aW9uRmFsbGJhY2ssIGlkZW50aWZpZXIsIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0YSkp
OworfQorCitSZWY8Rm9udD4gRm9udDo6Y3JlYXRlKFJlZjxTaGFyZWRCdWZmZXI+JiYgZm9udEZh
Y2VEYXRhLCBGb250OjpPcmlnaW4gb3JpZ2luLCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0
aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxpYywgRm9udENhY2hlKiBmb250Q2FjaGVGb3JWZXJ0
aWNhbERhdGEpCiB7CiAgICAgYm9vbCB3cmFwcGluZzsKICAgICBhdXRvIGN1c3RvbUZvbnREYXRh
ID0gQ2FjaGVkRm9udDo6Y3JlYXRlQ3VzdG9tRm9udERhdGEoZm9udEZhY2VEYXRhLmdldCgpLCB7
IH0sIHdyYXBwaW5nKTsKICAgICBGb250RGVzY3JpcHRpb24gZGVzY3JpcHRpb247CiAgICAgZGVz
Y3JpcHRpb24uc2V0Q29tcHV0ZWRTaXplKGZvbnRTaXplKTsKLSAgICByZXR1cm4gRm9udDo6Y3Jl
YXRlKENhY2hlZEZvbnQ6OnBsYXRmb3JtRGF0YUZyb21DdXN0b21EYXRhKCpjdXN0b21Gb250RGF0
YSwgZGVzY3JpcHRpb24sIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYywgeyB9LCB7IH0p
LCBvcmlnaW4pOworICAgIHJldHVybiBGb250OjpjcmVhdGUoQ2FjaGVkRm9udDo6cGxhdGZvcm1E
YXRhRnJvbUN1c3RvbURhdGEoKmN1c3RvbUZvbnREYXRhLCBkZXNjcmlwdGlvbiwgc3ludGhldGlj
Qm9sZCwgc3ludGhldGljSXRhbGljLCB7IH0sIHsgfSksIG9yaWdpbiwgZm9udENhY2hlRm9yVmVy
dGljYWxEYXRhKTsKIH0KIAotRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0
Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnRlcnN0aXRpYWwsIFZpc2li
aWxpdHkgdmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFjayBvcmllbnRhdGlvbkZhbGxiYWNr
LCBPcHRpb25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IHJlbmRlcmluZ1Jlc291cmNl
SWRlbnRpZmllcikKK0ZvbnQ6OkZvbnQoY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1E
YXRhLCBPcmlnaW4gb3JpZ2luLCBJbnRlcnN0aXRpYWwgaW50ZXJzdGl0aWFsLCBWaXNpYmlsaXR5
IHZpc2liaWxpdHksIE9yaWVudGF0aW9uRmFsbGJhY2sgb3JpZW50YXRpb25GYWxsYmFjaywgT3B0
aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiByZW5kZXJpbmdSZXNvdXJjZUlkZW50
aWZpZXIsIEZvbnRDYWNoZSogZm9udENhY2hlRm9yVmVydGljYWxEYXRhKQogICAgIDogbV9wbGF0
Zm9ybURhdGEocGxhdGZvcm1EYXRhKQogICAgICwgbV9yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZp
ZXIocmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKQogICAgICwgbV9vcmlnaW4ob3JpZ2luKQpA
QCAtODgsOSArOTgsMTEgQEAgRm9udDo6Rm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0
Zm9ybURhdGEsIE9yaWdpbiBvcmlnaW4sIEludGVyc3RpdGlhbCBpbnQKICAgICBwbGF0Zm9ybUNo
YXJXaWR0aEluaXQoKTsKICNpZiBFTkFCTEUoT1BFTlRZUEVfVkVSVElDQUwpCiAgICAgaWYgKHBs
YXRmb3JtRGF0YS5vcmllbnRhdGlvbigpID09IEZvbnRPcmllbnRhdGlvbjo6VmVydGljYWwgJiYg
b3JpZW50YXRpb25GYWxsYmFjayA9PSBPcmllbnRhdGlvbkZhbGxiYWNrOjpObykgewotICAgICAg
ICBtX3ZlcnRpY2FsRGF0YSA9IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBs
YXRmb3JtRGF0YSk7CisgICAgICAgIG1fdmVydGljYWxEYXRhID0gZm9udENhY2hlRm9yVmVydGlj
YWxEYXRhID8gZm9udENhY2hlRm9yVmVydGljYWxEYXRhLT52ZXJ0aWNhbERhdGEocGxhdGZvcm1E
YXRhKSA6IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkudmVydGljYWxEYXRhKHBsYXRmb3JtRGF0YSk7
CiAgICAgICAgIG1faGFzVmVydGljYWxHbHlwaHMgPSBtX3ZlcnRpY2FsRGF0YS5nZXQoKSAmJiBt
X3ZlcnRpY2FsRGF0YS0+aGFzVmVydGljYWxNZXRyaWNzKCk7CiAgICAgfQorI2Vsc2UKKyAgICBV
TlVTRURfUEFSQU0oZm9udENhY2hlRm9yVmVydGljYWxEYXRhKTsKICNlbmRpZgogfQogCkBAIC01
NjgsMTMgKzU4MCwxMyBAQCBzdGF0aWMgU3lzdGVtRmFsbGJhY2tDYWNoZSYgc3lzdGVtRmFsbGJh
Y2tDYWNoZSgpCiAgICAgcmV0dXJuIG1hcC5nZXQoKTsKIH0KIAotUmVmUHRyPEZvbnQ+IEZvbnQ6
OnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbiwgSXNGb3JQbGF0Zm9ybUZvbnQgaXNGb3JQbGF0
Zm9ybUZvbnQpIGNvbnN0CitSZWZQdHI8Rm9udD4gRm9udDo6c3lzdGVtRmFsbGJhY2tGb250Rm9y
Q2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdCBGb250RGVzY3JpcHRpb24mIGRlc2Ny
aXB0aW9uLCBJc0ZvclBsYXRmb3JtRm9udCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlJiBm
b250Q2FjaGUpIGNvbnN0CiB7CiAgICAgYXV0byBmb250QWRkUmVzdWx0ID0gc3lzdGVtRmFsbGJh
Y2tDYWNoZSgpLmFkZCh0aGlzLCBDaGFyYWN0ZXJGYWxsYmFja01hcCgpKTsKIAogICAgIGlmICgh
Y2hhcmFjdGVyKSB7CiAgICAgICAgIFVDaGFyIGNvZGVVbml0ID0gMDsKLSAgICAgICAgcmV0dXJu
IEZvbnRDYWNoZTo6c2luZ2xldG9uKCkuc3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2Ny
aXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9udCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVk
Rm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CisgICAgICAgIHJldHVybiBmb250Q2FjaGUuc3lzdGVt
RmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGRlc2NyaXB0aW9uLCB0aGlzLCBpc0ZvclBsYXRmb3JtRm9u
dCwgRm9udENhY2hlOjpQcmVmZXJDb2xvcmVkRm9udDo6Tm8sICZjb2RlVW5pdCwgMSk7CiAgICAg
fQogCiAgICAgYXV0byBrZXkgPSBDaGFyYWN0ZXJGYWxsYmFja01hcEtleSB7IGRlc2NyaXB0aW9u
LmNvbXB1dGVkTG9jYWxlKCksIGNoYXJhY3RlciwgaXNGb3JQbGF0Zm9ybUZvbnQgIT0gSXNGb3JQ
bGF0Zm9ybUZvbnQ6Ok5vIH07CkBAIC01ODksNyArNjAxLDcgQEAgUmVmUHRyPEZvbnQ+IEZvbnQ6
OnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihVQ2hhcjMyIGNoYXJhY3RlciwgY29uc3Qg
Rm9udEQKICAgICAgICAgICAgIGNvZGVVbml0c1sxXSA9IFUxNl9UUkFJTChjaGFyYWN0ZXIpOwog
ICAgICAgICAgICAgY29kZVVuaXRzTGVuZ3RoID0gMjsKICAgICAgICAgfQotICAgICAgICBhdXRv
IGZvbnQgPSBGb250Q2FjaGU6OnNpbmdsZXRvbigpLnN5c3RlbUZhbGxiYWNrRm9yQ2hhcmFjdGVy
cyhkZXNjcmlwdGlvbiwgdGhpcywgaXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRDYWNoZTo6UHJlZmVy
Q29sb3JlZEZvbnQ6Ok5vLCBjb2RlVW5pdHMsIGNvZGVVbml0c0xlbmd0aCkuZ2V0KCk7CisgICAg
ICAgIGF1dG8gZm9udCA9IGZvbnRDYWNoZS5zeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMoZGVz
Y3JpcHRpb24sIHRoaXMsIGlzRm9yUGxhdGZvcm1Gb250LCBGb250Q2FjaGU6OlByZWZlckNvbG9y
ZWRGb250OjpObywgY29kZVVuaXRzLCBjb2RlVW5pdHNMZW5ndGgpLmdldCgpOwogICAgICAgICBp
ZiAoZm9udCkKICAgICAgICAgICAgIGZvbnQtPm1faXNVc2VkSW5TeXN0ZW1GYWxsYmFja0NhY2hl
ID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuIGZvbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250LmgKaW5kZXggNjUzYjMzOGI3YzM0MjU2MjcyMjQ5NjExZTI3MDFhYzVkMjYzZTk2
NS4uNzVmNjQ2YmZkMGMzODVlMGE0M2JiYjYxZTY3NzJhNDgxYTA5NjZhZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaApAQCAtNTcsNiArNTcsNyBAQCBpbnRlcmZhY2Ug
SURXcml0ZUdkaUludGVyb3A7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRm9udENh
Y2hlOwogY2xhc3MgR2x5cGhQYWdlOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgU2hh
cmVkQnVmZmVyOwpAQCAtOTIsMTIgKzkzLDExIEBAIHB1YmxpYzoKICAgICAgICAgWWVzLAogICAg
ICAgICBObwogICAgIH07Ci0gICAgc3RhdGljIFJlZjxGb250PiBjcmVhdGUoY29uc3QgRm9udFBs
YXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBPcmlnaW4gb3JpZ2luID0gT3JpZ2luOjpMb2NhbCwg
SW50ZXJzdGl0aWFsIGludGVyc3RpdGlhbCA9IEludGVyc3RpdGlhbDo6Tm8sCi0gICAgICAgIFZp
c2liaWxpdHkgdmlzaWJpbGl0eSA9IFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVudGF0aW9uRmFs
bGJhY2sgb3JpZW50YXRpb25GYWxsYmFjayA9IE9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRp
b25hbDxSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+IGlkZW50aWZpZXIgPSBXVEY6Om51bGxv
cHQpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb250KHBsYXRmb3JtRGF0
YSwgb3JpZ2luLCBpbnRlcnN0aXRpYWwsIHZpc2liaWxpdHksIG9yaWVudGF0aW9uRmFsbGJhY2ss
IGlkZW50aWZpZXIpKTsKLSAgICB9Ci0gICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGb250
PiBjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEsIEZvbnQ6Ok9yaWdpbiwg
ZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBzeW50aGV0aWNJdGFsaWMp
OworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWY8Rm9udD4gY3JlYXRlKGNvbnN0IEZvbnRQ
bGF0Zm9ybURhdGEmLCBPcmlnaW4gPSBPcmlnaW46OkxvY2FsLCBJbnRlcnN0aXRpYWwgPSBJbnRl
cnN0aXRpYWw6Ok5vLAorICAgICAgICBWaXNpYmlsaXR5ID0gVmlzaWJpbGl0eTo6VmlzaWJsZSwg
T3JpZW50YXRpb25GYWxsYmFjayA9IE9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vLCBPcHRpb25hbDxS
ZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXI+ID0gV1RGOjpudWxsb3B0KTsKKyAgICBzdGF0aWMg
UmVmPEZvbnQ+IGNyZWF0ZShjb25zdCBGb250UGxhdGZvcm1EYXRhJiwgT3JpZ2luLCBGb250Q2Fj
aGUqIGZvbnRDYWNoZUZvclZlcnRpY2FsRGF0YSwgSW50ZXJzdGl0aWFsID0gSW50ZXJzdGl0aWFs
OjpObywKKyAgICAgICAgVmlzaWJpbGl0eSA9IFZpc2liaWxpdHk6OlZpc2libGUsIE9yaWVudGF0
aW9uRmFsbGJhY2sgPSBPcmllbnRhdGlvbkZhbGxiYWNrOjpObywgT3B0aW9uYWw8UmVuZGVyaW5n
UmVzb3VyY2VJZGVudGlmaWVyPiA9IFdURjo6bnVsbG9wdCk7CisgICAgV0VCQ09SRV9FWFBPUlQg
c3RhdGljIFJlZjxGb250PiBjcmVhdGUoUmVmPFNoYXJlZEJ1ZmZlcj4mJiBmb250RmFjZURhdGEs
IEZvbnQ6Ok9yaWdpbiwgZmxvYXQgZm9udFNpemUsIGJvb2wgc3ludGhldGljQm9sZCwgYm9vbCBz
eW50aGV0aWNJdGFsaWMsIEZvbnRDYWNoZSogPSBudWxscHRyKTsKIAogICAgIFdFQkNPUkVfRVhQ
T1JUIH5Gb250KCk7CiAKQEAgLTE4OSw3ICsxODksNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzdXBw
b3J0c0NvZGVQb2ludChVQ2hhcjMyKSBjb25zdDsKICAgICBib29sIHBsYXRmb3JtU3VwcG9ydHND
b2RlUG9pbnQoVUNoYXIzMiwgT3B0aW9uYWw8VUNoYXIzMj4gdmFyaWF0aW9uID0gV1RGOjpudWxs
b3B0KSBjb25zdDsKIAotICAgIFJlZlB0cjxGb250PiBzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFy
YWN0ZXIoVUNoYXIzMiwgY29uc3QgRm9udERlc2NyaXB0aW9uJiwgSXNGb3JQbGF0Zm9ybUZvbnQp
IGNvbnN0OworICAgIFJlZlB0cjxGb250PiBzeXN0ZW1GYWxsYmFja0ZvbnRGb3JDaGFyYWN0ZXIo
VUNoYXIzMiwgY29uc3QgRm9udERlc2NyaXB0aW9uJiwgSXNGb3JQbGF0Zm9ybUZvbnQsIEZvbnRD
YWNoZSYpIGNvbnN0OwogCiAgICAgY29uc3QgR2x5cGhQYWdlKiBnbHlwaFBhZ2UodW5zaWduZWQg
cGFnZU51bWJlcikgY29uc3Q7CiAKQEAgLTIzMiw3ICsyMzIsNyBAQCBwdWJsaWM6CiAjZW5kaWYK
IAogcHJpdmF0ZToKLSAgICBXRUJDT1JFX0VYUE9SVCBGb250KGNvbnN0IEZvbnRQbGF0Zm9ybURh
dGEmLCBPcmlnaW4sIEludGVyc3RpdGlhbCwgVmlzaWJpbGl0eSwgT3JpZW50YXRpb25GYWxsYmFj
aywgT3B0aW9uYWw8UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPik7CisgICAgV0VCQ09SRV9F
WFBPUlQgRm9udChjb25zdCBGb250UGxhdGZvcm1EYXRhJiwgT3JpZ2luLCBJbnRlcnN0aXRpYWws
IFZpc2liaWxpdHksIE9yaWVudGF0aW9uRmFsbGJhY2ssIE9wdGlvbmFsPFJlbmRlcmluZ1Jlc291
cmNlSWRlbnRpZmllcj4sIEZvbnRDYWNoZSopOwogCiAgICAgdm9pZCBwbGF0Zm9ybUluaXQoKTsK
ICAgICB2b2lkIHBsYXRmb3JtR2x5cGhJbml0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udENhY2hlLmNwcAppbmRleCA4YmIzM2VkNTdhZTg0MmNmMTA5NDZhZDI3
NDdiOTU5NmNiMDRhNTg2Li4wMmI1NWQxMjBkMzgzYTM2ZTgwZTg0ZDE3NjViMTc1NDljMDcxM2Jk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5jcHAK
QEAgLTI4MCw3ICsyODAsNyBAQCBSZWY8Rm9udD4gRm9udENhY2hlOjpmb250Rm9yUGxhdGZvcm1E
YXRhKGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSkKICNlbmRpZgogCiAgICAg
YXV0byBhZGRSZXN1bHQgPSBtX2ZvbnREYXRhQ2FjaGVzLT5kYXRhLmVuc3VyZShwbGF0Zm9ybURh
dGEsIFsmXSB7Ci0gICAgICAgIHJldHVybiBGb250OjpjcmVhdGUocGxhdGZvcm1EYXRhKTsKKyAg
ICAgICAgcmV0dXJuIEZvbnQ6OmNyZWF0ZShwbGF0Zm9ybURhdGEsIEZvbnQ6Ok9yaWdpbjo6TG9j
YWwsIHRoaXMpOwogICAgIH0pOwogCiAgICAgQVNTRVJUKGFkZFJlc3VsdC5pdGVyYXRvci0+dmFs
dWUtPnBsYXRmb3JtRGF0YSgpID09IHBsYXRmb3JtRGF0YSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCmluZGV4IDRlYmE2ZmNmMmY3YzgwNDhmYjgzZDY1
NTRiOGZkNmFmODdjMWFjOWQuLjM0NzU1MmI4YWI2MzFiMTFiZjZlZTRmMGM5MWYxOTNlODJlM2Yy
MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNo
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCkBA
IC0yMjAsNyArMjIwLDcgQEAgY2xhc3MgRm9udENhY2hlIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9u
dENhY2hlPiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxGb250Q2FjaGU+IGNyZWF0ZSgpOwog
ICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBGb250Q2FjaGUmIHNpbmdsZXRvbigpOwotICAgIHN0
YXRpYyBGb250Q2FjaGUmIGZvbnRDYWNoZUZhbGxiYWNrVG9TaW5nbGV0b24oUmVmUHRyPEZvbnRT
ZWxlY3Rvcj4pOworICAgIHN0YXRpYyBGb250Q2FjaGUmIGZvbnRDYWNoZUZhbGxpbmdCYWNrVG9T
aW5nbGV0b24oUmVmUHRyPEZvbnRTZWxlY3Rvcj4pOwogCiAgICAgfkZvbnRDYWNoZSgpOwogCkBA
IC0zNzgsNyArMzc4LDcgQEAgT3B0aW9uYWw8Rm9udENhY2hlOjpQcmV3YXJtSW5mb3JtYXRpb24+
IEZvbnRDYWNoZTo6UHJld2FybUluZm9ybWF0aW9uOjpkZWNvZGUoRGUKICAgICByZXR1cm4gcHJl
d2FybUluZm9ybWF0aW9uOwogfQogCi1pbmxpbmUgRm9udENhY2hlJiBGb250Q2FjaGU6OmZvbnRD
YWNoZUZhbGxiYWNrVG9TaW5nbGV0b24oUmVmUHRyPEZvbnRTZWxlY3Rvcj4gZm9udFNlbGVjdG9y
KQoraW5saW5lIEZvbnRDYWNoZSYgRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2lu
Z2xldG9uKFJlZlB0cjxGb250U2VsZWN0b3I+IGZvbnRTZWxlY3RvcikKIHsKICAgICByZXR1cm4g
Zm9udFNlbGVjdG9yID8gZm9udFNlbGVjdG9yLT5mb250Q2FjaGUoKSA6IEZvbnRDYWNoZTo6c2lu
Z2xldG9uKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9Gb250Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250
Q2FzY2FkZS5jcHAKaW5kZXggYTkyYjdiYWVkOTZiMzYyNjZjNmQwNDBkYjBmMWE5ZjE0M2Q2MmJm
Ny4uZTMxOTMzN2JiYTgyNzBjODliZmJjZDJlMDBmZTBjNjg2NDAyZDM0NSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlLmNwcApAQCAtMTcwLDcg
KzE3MCw3IEBAIHZvaWQgRm9udENhc2NhZGU6OnVwZGF0ZUZvbnRzKFJlZjxGb250Q2FzY2FkZUZv
bnRzPiYmIGZvbnRzKSBjb25zdAogCiB2b2lkIEZvbnRDYXNjYWRlOjp1cGRhdGUoUmVmUHRyPEZv
bnRTZWxlY3Rvcj4mJiBmb250U2VsZWN0b3IpIGNvbnN0CiB7Ci0gICAgRm9udENhY2hlOjpmb250
Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKGZvbnRTZWxlY3RvcikudXBkYXRlRm9udENhc2NhZGUo
KnRoaXMsIFdURk1vdmUoZm9udFNlbGVjdG9yKSk7CisgICAgRm9udENhY2hlOjpmb250Q2FjaGVG
YWxsaW5nQmFja1RvU2luZ2xldG9uKGZvbnRTZWxlY3RvcikudXBkYXRlRm9udENhc2NhZGUoKnRo
aXMsIFdURk1vdmUoZm9udFNlbGVjdG9yKSk7CiB9CiAKIEdseXBoQnVmZmVyIEZvbnRDYXNjYWRl
OjpsYXlvdXRUZXh0KENvZGVQYXRoIGNvZGVQYXRoVG9Vc2UsIGNvbnN0IFRleHRSdW4mIHJ1biwg
dW5zaWduZWQgZnJvbSwgdW5zaWduZWQgdG8sIEZvclRleHRFbXBoYXNpc09yTm90IGZvclRleHRF
bXBoYXNpcykgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0ZvbnRDYXNjYWRlRm9udHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRm9udENhc2NhZGVGb250cy5jcHAKaW5kZXggOWY2NWQyOTk4Zjk0ODY5NzNkNGJiZjE4ZGUy
NmY4MmIwNDQzOWZjYS4uNGE1NDA1NDg3MTE5YmRiYzFmZDcyYTQ5MjRkMzU2ZTk2ODQ5MDE4ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGVG
b250cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2Nh
ZGVGb250cy5jcHAKQEAgLTEwMiw3ICsxMDIsNyBAQCBGb250Q2FzY2FkZUZvbnRzOjpGb250Q2Fz
Y2FkZUZvbnRzKFJlZlB0cjxGb250U2VsZWN0b3I+JiYgZm9udFNlbGVjdG9yKQogICAgIDogbV9j
YWNoZWRQcmltYXJ5Rm9udChudWxscHRyKQogICAgICwgbV9mb250U2VsZWN0b3IoZm9udFNlbGVj
dG9yKQogICAgICwgbV9mb250U2VsZWN0b3JWZXJzaW9uKG1fZm9udFNlbGVjdG9yID8gbV9mb250
U2VsZWN0b3ItPnZlcnNpb24oKSA6IDApCi0gICAgLCBtX2dlbmVyYXRpb24oRm9udENhY2hlOjpm
b250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5lcmF0aW9uKCkp
CisgICAgLCBtX2dlbmVyYXRpb24oRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2lu
Z2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5lcmF0aW9uKCkpCiB7CiAjaWYgQVNTRVJUX0VOQUJM
RUQKICAgICBpZiAoIWlzTWFpblRocmVhZCgpKQpAQCAtMTQ0LDcgKzE0NCw3IEBAIHN0YXRpYyBG
b250UmFuZ2VzIHJlYWxpemVOZXh0RmFsbGJhY2soY29uc3QgRm9udENhc2NhZGVEZXNjcmlwdGlv
biYgZGVzY3JpcHRpb24sCiB7CiAgICAgQVNTRVJUKGluZGV4IDwgZGVzY3JpcHRpb24uZWZmZWN0
aXZlRmFtaWx5Q291bnQoKSk7CiAKLSAgICBhdXRvJiBmb250Q2FjaGUgPSBGb250Q2FjaGU6OmZv
bnRDYWNoZUZhbGxiYWNrVG9TaW5nbGV0b24oZm9udFNlbGVjdG9yKTsKKyAgICBhdXRvJiBmb250
Q2FjaGUgPSBGb250Q2FjaGU6OmZvbnRDYWNoZUZhbGxpbmdCYWNrVG9TaW5nbGV0b24oZm9udFNl
bGVjdG9yKTsKICAgICB3aGlsZSAoaW5kZXggPCBkZXNjcmlwdGlvbi5lZmZlY3RpdmVGYW1pbHlD
b3VudCgpKSB7CiAgICAgICAgIGF1dG8gdmlzaXRvciA9IFdURjo6bWFrZVZpc2l0b3IoWyZdKGNv
bnN0IEF0b21TdHJpbmcmIGZhbWlseSkgLT4gRm9udFJhbmdlcyB7CiAgICAgICAgICAgICBpZiAo
ZmFtaWx5LmlzRW1wdHkoKSkKQEAgLTE4MSw3ICsxODEsNyBAQCBjb25zdCBGb250UmFuZ2VzJiBG
b250Q2FzY2FkZUZvbnRzOjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250Q2FzY2Fk
ZURlcwogICAgICAgICByZXR1cm4gbV9yZWFsaXplZEZhbGxiYWNrUmFuZ2VzW2luZGV4XTsKIAog
ICAgIEFTU0VSVChpbmRleCA9PSBtX3JlYWxpemVkRmFsbGJhY2tSYW5nZXMuc2l6ZSgpKTsKLSAg
ICBBU1NFUlQoRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1RvU2luZ2xldG9uKG1fZm9udFNl
bGVjdG9yKS5nZW5lcmF0aW9uKCkgPT0gbV9nZW5lcmF0aW9uKTsKKyAgICBBU1NFUlQoRm9udENh
Y2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5nZW5l
cmF0aW9uKCkgPT0gbV9nZW5lcmF0aW9uKTsKIAogICAgIG1fcmVhbGl6ZWRGYWxsYmFja1Jhbmdl
cy5hcHBlbmQoRm9udFJhbmdlcygpKTsKICAgICBhdXRvJiBmb250UmFuZ2VzID0gbV9yZWFsaXpl
ZEZhbGxiYWNrUmFuZ2VzLmxhc3QoKTsKQEAgLTE4OSw5ICsxODksOSBAQCBjb25zdCBGb250UmFu
Z2VzJiBGb250Q2FzY2FkZUZvbnRzOjpyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChjb25zdCBGb250
Q2FzY2FkZURlcwogICAgIGlmICghaW5kZXgpIHsKICAgICAgICAgZm9udFJhbmdlcyA9IHJlYWxp
emVOZXh0RmFsbGJhY2soZGVzY3JpcHRpb24sIG1fbGFzdFJlYWxpemVkRmFsbGJhY2tJbmRleCwg
bV9mb250U2VsZWN0b3IuZ2V0KCkpOwogICAgICAgICBpZiAoZm9udFJhbmdlcy5pc051bGwoKSAm
JiBtX2ZvbnRTZWxlY3RvcikKLSAgICAgICAgICAgIGZvbnRSYW5nZXMgPSBtX2ZvbnRTZWxlY3Rv
ci0+Zm9udFJhbmdlc0ZvckZhbWlseShkZXNjcmlwdGlvbiwgc3RhbmRhcmRGYW1pbHkpOworICAg
ICAgICAgICAgZm9udFJhbmdlcyA9IG1fZm9udFNlbGVjdG9yLT5mb250UmFuZ2VzRm9yRmFtaWx5
KGRlc2NyaXB0aW9uLCBmYW1pbHlOYW1lc0RhdGEtPmF0KEZhbWlseU5hbWVzSW5kZXg6OlN0YW5k
YXJkRmFtaWx5KSk7CiAgICAgICAgIGlmIChmb250UmFuZ2VzLmlzTnVsbCgpKQotICAgICAgICAg
ICAgZm9udFJhbmdlcyA9IEZvbnRSYW5nZXMoRm9udENhY2hlOjpmb250Q2FjaGVGYWxsYmFja1Rv
U2luZ2xldG9uKG1fZm9udFNlbGVjdG9yKS5sYXN0UmVzb3J0RmFsbGJhY2tGb250KGRlc2NyaXB0
aW9uKSk7CisgICAgICAgICAgICBmb250UmFuZ2VzID0gRm9udFJhbmdlcyhGb250Q2FjaGU6OmZv
bnRDYWNoZUZhbGxpbmdCYWNrVG9TaW5nbGV0b24obV9mb250U2VsZWN0b3IpLmxhc3RSZXNvcnRG
YWxsYmFja0ZvbnQoZGVzY3JpcHRpb24pKTsKICAgICAgICAgcmV0dXJuIGZvbnRSYW5nZXM7CiAg
ICAgfQogCkBAIC0zNTEsNyArMzUxLDcgQEAgR2x5cGhEYXRhIEZvbnRDYXNjYWRlRm9udHM6Omds
eXBoRGF0YUZvclN5c3RlbUZhbGxiYWNrKFVDaGFyMzIgY2hhcmFjdGVyLCBjb25zdAogICAgIGlm
ICghZm9udCkKICAgICAgICAgZm9udCA9ICZyZWFsaXplRmFsbGJhY2tSYW5nZXNBdChkZXNjcmlw
dGlvbiwgMCkuZm9udEZvckZpcnN0UmFuZ2UoKTsKIAotICAgIGF1dG8gc3lzdGVtRmFsbGJhY2tG
b250ID0gZm9udC0+c3lzdGVtRmFsbGJhY2tGb250Rm9yQ2hhcmFjdGVyKGNoYXJhY3RlciwgZGVz
Y3JpcHRpb24sIG1faXNGb3JQbGF0Zm9ybUZvbnQgPyBJc0ZvclBsYXRmb3JtRm9udDo6WWVzIDog
SXNGb3JQbGF0Zm9ybUZvbnQ6Ok5vKTsKKyAgICBhdXRvIHN5c3RlbUZhbGxiYWNrRm9udCA9IGZv
bnQtPnN5c3RlbUZhbGxiYWNrRm9udEZvckNoYXJhY3RlcihjaGFyYWN0ZXIsIGRlc2NyaXB0aW9u
LCBtX2lzRm9yUGxhdGZvcm1Gb250ID8gSXNGb3JQbGF0Zm9ybUZvbnQ6OlllcyA6IElzRm9yUGxh
dGZvcm1Gb250OjpObywgRm9udENhY2hlOjpmb250Q2FjaGVGYWxsaW5nQmFja1RvU2luZ2xldG9u
KG1fZm9udFNlbGVjdG9yKSk7CiAgICAgaWYgKCFzeXN0ZW1GYWxsYmFja0ZvbnQpCiAgICAgICAg
IHJldHVybiBHbHlwaERhdGEoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuY3BwCmluZGV4IGZjNmIzYzI3MGI4MzIwNTY2NDNmZWE1
ZGE4N2QzMGQ4YjMzNTFhNWQuLjFlMGQ4MGRmZTkxMTdiY2E5YTM5NDI3ODUxOThmODM1MDZkZTM5
MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dPRkZGaWxl
Rm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9XT0ZGRmls
ZUZvcm1hdC5jcHAKQEAgLTI4Miw1ICsyODIsMjQgQEAgYm9vbCBjb252ZXJ0V09GRlRvU2ZudChT
aGFyZWRCdWZmZXImIHdvZmYsIFZlY3RvcjxjaGFyPiYgc2ZudCkKIAogICAgIHJldHVybiBzZm50
LnNpemUoKSA9PSB0b3RhbFNmbnRTaXplOwogfQotICAgIAorCitib29sIGNvbnZlcnRXT0ZGVG9T
Zm50SWZOZWNlc3NhcnkoUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mIGJ1ZmZlcikKK3sKKyNpZiBQTEFU
Rk9STShDT0NPQSkKKyAgICBVTlVTRURfUEFSQU0oYnVmZmVyKTsKKyAgICByZXR1cm4gZmFsc2U7
CisjZWxzZQorICAgIGlmICghYnVmZmVyIHx8ICFpc1dPRkYoKmJ1ZmZlcikpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIFZlY3RvcjxjaGFyPiBjb252ZXJ0ZWRGb250OworICAgIGlmIChj
b252ZXJ0V09GRlRvU2ZudCgqYnVmZmVyLCBjb252ZXJ0ZWRGb250KSkKKyAgICAgICAgYnVmZmVy
ID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoV1RGTW92ZShjb252ZXJ0ZWRGb250KSk7CisgICAgZWxz
ZQorICAgICAgICBidWZmZXIgPSBudWxscHRyOworCisgICAgcmV0dXJuIHRydWU7CisjZW5kaWYK
K30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL1dPRkZGaWxlRm9ybWF0LmgKaW5kZXggZmEwOWQ5ZTY5MmUwMWViYjIyNTc3
OWY0OTJiOGNiMGVjOTUzMWU5Mi4uNWMwY2E0ZmMyMDdkMjEwZmQwODA1NGM0ZmZhN2VmY2EzM2Ew
YjEyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV09GRkZp
bGVGb3JtYXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9XT0ZGRmls
ZUZvcm1hdC5oCkBAIC0zOSw2ICszOSwxMSBAQCBib29sIGlzV09GRihTaGFyZWRCdWZmZXImKTsK
IC8vIGlmIGNvbnZlcnNpb24gcmFuIG91dCBvZiBtZW1vcnkpLiBPdGhlcndpc2UgcmV0dXJucyB0
cnVlIGFuZCB3cml0ZXMgdGhlIHNmbnQgcGF5bG9hZCBpbnRvIHNmbnQuCiBib29sIGNvbnZlcnRX
T0ZGVG9TZm50KFNoYXJlZEJ1ZmZlciYgd29mZiwgVmVjdG9yPGNoYXI+JiBzZm50KTsKIAorLy8g
SWYgdGhlIGdpdmVuIGJ1ZmZlciBpcyBhIFdPRkYgZmlsZSBhbmQgdGhlIGN1cnJlbnQgcGxhdGZv
cm0gaGFzIG5vIG5hdGl2ZSBzdXBwb3J0IGZvciBXT0ZGCisvLyBmb250cywgY29udmVydCBpdCB0
byBzZm50LiBSZXR1cm5zIHRydWUgaWYgdGhlIGdpdmVuIGJ1ZmZlciB3YXMgY29udmVydGVkLiBJ
ZiBjb252ZXJzaW9uIGZhaWxzLAorLy8gdGhlIGJ1ZmZlciB3aWxsIGJlIHNldCB0byBudWxscHRy
LgorYm9vbCBjb252ZXJ0V09GRlRvU2ZudElmTmVjZXNzYXJ5KFJlZlB0cjxTaGFyZWRCdWZmZXI+
Jik7CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIFdPRkZGaWxlRm9ybWF0
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0Zv
bnRDYWlyb0hhcmZidXp6TkcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2Fpcm8vRm9udENhaXJvSGFyZmJ1enpORy5jcHAKaW5kZXggZDYwYjVkYjcwNzdhZWRjYzgyZDc1
NTY4ZjFhNDM3ODAyOWM4NDJlZC4uYzcxN2UzYjZjNDAwM2MyNTI1ZTYwMzQ4OTc3MWJkNWQ0YWJi
NWQxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8v
Rm9udENhaXJvSGFyZmJ1enpORy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2Fpcm8vRm9udENhaXJvSGFyZmJ1enpORy5jcHAKQEAgLTEzOCw3ICsxMzgsNyBAQCBj
b25zdCBGb250KiBGb250Q2FzY2FkZTo6Zm9udEZvckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNl
KGNvbnN0IFVDaGFyKiBvcmlnaW5hbAogICAgICAgICAgICAgcmV0dXJuIGZhbGxiYWNrRm9udDsK
ICAgICB9CiAKLSAgICBpZiAoYXV0byBzeXN0ZW1GYWxsYmFjayA9IEZvbnRDYWNoZTo6Zm9udENh
Y2hlRmFsbGJhY2tUb1NpbmdsZXRvbihmb250U2VsZWN0b3IoKSkuc3lzdGVtRmFsbGJhY2tGb3JD
aGFyYWN0ZXJzKG1fZm9udERlc2NyaXB0aW9uLCBiYXNlRm9udCwgSXNGb3JQbGF0Zm9ybUZvbnQ6
Ok5vLCBwcmVmZXJDb2xvcmVkRm9udCA/IEZvbnRDYWNoZTo6UHJlZmVyQ29sb3JlZEZvbnQ6Olll
cyA6IEZvbnRDYWNoZTo6UHJlZmVyQ29sb3JlZEZvbnQ6Ok5vLCBjaGFyYWN0ZXJzLCBsZW5ndGgp
KSB7CisgICAgaWYgKGF1dG8gc3lzdGVtRmFsbGJhY2sgPSBGb250Q2FjaGU6OmZvbnRDYWNoZUZh
bGxpbmdCYWNrVG9TaW5nbGV0b24oZm9udFNlbGVjdG9yKCkpLnN5c3RlbUZhbGxiYWNrRm9yQ2hh
cmFjdGVycyhtX2ZvbnREZXNjcmlwdGlvbiwgYmFzZUZvbnQsIElzRm9yUGxhdGZvcm1Gb250OjpO
bywgcHJlZmVyQ29sb3JlZEZvbnQgPyBGb250Q2FjaGU6OlByZWZlckNvbG9yZWRGb250OjpZZXMg
OiBGb250Q2FjaGU6OlByZWZlckNvbG9yZWRGb250OjpObywgY2hhcmFjdGVycywgbGVuZ3RoKSkg
ewogICAgICAgICBpZiAoc3lzdGVtRmFsbGJhY2stPmNhblJlbmRlckNvbWJpbmluZ0NoYXJhY3Rl
clNlcXVlbmNlKGNoYXJhY3RlcnMsIGxlbmd0aCkgJiYgKCFwcmVmZXJDb2xvcmVkRm9udCB8fCBz
eXN0ZW1GYWxsYmFjay0+cGxhdGZvcm1EYXRhKCkuaXNDb2xvckJpdG1hcEZvbnQoKSkpCiAgICAg
ICAgICAgICByZXR1cm4gc3lzdGVtRmFsbGJhY2suZ2V0KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMWY5NDdl
Yjg3MTIxZDljYzAwN2Q3MjM3YjBjZDdlMTI4MjQwYzI2Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwCkBAIC0wLDAgKzEs
MTQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOSBUb3JjaCBNb2JpbGUs
IEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBNZXRyb2xvZ2ljYWwgR3JvdXAgQi5WLgorICog
Q29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUK
KyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29u
ZmlnLmgiCisjaW5jbHVkZSAiV29ya2VyRm9udExvYWRSZXF1ZXN0LmgiCisKKyNpbmNsdWRlICJG
b250LmgiCisjaW5jbHVkZSAiRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIgorI2luY2x1ZGUgIkZv
bnRTZWxlY3Rpb25BbGdvcml0aG0uaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMu
aCIKKyNpbmNsdWRlICJTZXJ2aWNlV29ya2VyLmgiCisjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgi
CisjaW5jbHVkZSAiV09GRkZpbGVGb3JtYXQuaCIKKyNpbmNsdWRlICJXb3JrZXJHbG9iYWxTY29w
ZS5oIgorI2luY2x1ZGUgIldvcmtlclRocmVhZGFibGVMb2FkZXIuaCIKKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitXb3JrZXJGb250TG9hZFJlcXVlc3Q6OldvcmtlckZvbnRMb2FkUmVxdWVzdChV
UkwmJiB1cmwsIExvYWRlZEZyb21PcGFxdWVTb3VyY2UgbG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSkK
KyAgICA6IG1fdXJsKFdURk1vdmUodXJsKSkKKyAgICAsIG1fbG9hZGVkRnJvbU9wYXF1ZVNvdXJj
ZShsb2FkZWRGcm9tT3BhcXVlU291cmNlKQoreworfQorCit2b2lkIFdvcmtlckZvbnRMb2FkUmVx
dWVzdDo6bG9hZChXb3JrZXJHbG9iYWxTY29wZSYgd29ya2VyR2xvYmFsU2NvcGUpCit7CisgICAg
bV9jb250ZXh0ID0gbWFrZVdlYWtQdHIoc3RhdGljX2Nhc3Q8U2NyaXB0RXhlY3V0aW9uQ29udGV4
dCo+KCZ3b3JrZXJHbG9iYWxTY29wZSkpOworCisgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qg
eyBtX3VybCB9OworICAgIEFTU0VSVChyZXF1ZXN0Lmh0dHBNZXRob2QoKSA9PSAiR0VUIik7CisK
KyAgICBGZXRjaE9wdGlvbnMgZmV0Y2hPcHRpb25zOworICAgIGZldGNoT3B0aW9ucy5tb2RlID0g
RmV0Y2hPcHRpb25zOjpNb2RlOjpTYW1lT3JpZ2luOworICAgIGZldGNoT3B0aW9ucy5jcmVkZW50
aWFscyA9IHdvcmtlckdsb2JhbFNjb3BlLmNyZWRlbnRpYWxzKCk7CisgICAgZmV0Y2hPcHRpb25z
LmNhY2hlID0gRmV0Y2hPcHRpb25zOjpDYWNoZTo6RGVmYXVsdDsKKyAgICBmZXRjaE9wdGlvbnMu
cmVkaXJlY3QgPSBGZXRjaE9wdGlvbnM6OlJlZGlyZWN0OjpGb2xsb3c7CisgICAgZmV0Y2hPcHRp
b25zLmRlc3RpbmF0aW9uID0gRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6V29ya2VyOworCisg
ICAgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMgb3B0aW9ucyB7IFdURk1vdmUoZmV0Y2hPcHRpb25z
KSB9OworICAgIG9wdGlvbnMuc2VuZExvYWRDYWxsYmFja3MgPSBTZW5kQ2FsbGJhY2tQb2xpY3k6
OlNlbmRDYWxsYmFja3M7CisgICAgb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lFbmZvcmNl
bWVudCA9IG1fY29udGV4dC0+c2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9s
aWN5KCkgPyBDb250ZW50U2VjdXJpdHlQb2xpY3lFbmZvcmNlbWVudDo6RG9Ob3RFbmZvcmNlIDog
Q29udGVudFNlY3VyaXR5UG9saWN5RW5mb3JjZW1lbnQ6OkVuZm9yY2VDaGlsZFNyY0RpcmVjdGl2
ZTsKKyAgICBvcHRpb25zLmxvYWRlZEZyb21PcGFxdWVTb3VyY2UgPSBtX2xvYWRlZEZyb21PcGFx
dWVTb3VyY2U7CisKKyAgICBvcHRpb25zLnNlcnZpY2VXb3JrZXJzTW9kZSA9IFNlcnZpY2VXb3Jr
ZXJzTW9kZTo6QWxsOworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBpZiAoYXV0byog
YWN0aXZlU2VydmljZVdvcmtlciA9IHdvcmtlckdsb2JhbFNjb3BlLmFjdGl2ZVNlcnZpY2VXb3Jr
ZXIoKSkKKyAgICAgICAgb3B0aW9ucy5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSWRlbnRpZmll
ciA9IGFjdGl2ZVNlcnZpY2VXb3JrZXItPnJlZ2lzdHJhdGlvbklkZW50aWZpZXIoKTsKKyNlbmRp
ZgorCisgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNs
eSh3b3JrZXJHbG9iYWxTY29wZSwgV1RGTW92ZShyZXF1ZXN0KSwgKnRoaXMsIG9wdGlvbnMpOwor
fQorCitib29sIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZW5zdXJlQ3VzdG9tRm9udERhdGEoY29u
c3QgQXRvbVN0cmluZyYpCit7CisgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEgJiYg
IW1fZXJyb3JPY2N1cnJlZCAmJiAhbV9pc0xvYWRpbmcpIHsKKyAgICAgICAgY29udmVydFdPRkZU
b1NmbnRJZk5lY2Vzc2FyeShtX2RhdGEpOworICAgICAgICBpZiAobV9kYXRhKSB7CisgICAgICAg
ICAgICBtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEgPSBjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1E
YXRhKCptX2RhdGEsIG1fdXJsLmZyYWdtZW50SWRlbnRpZmllcigpLnRvU3RyaW5nKCkpOworICAg
ICAgICAgICAgaWYgKCFtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEpCisgICAgICAgICAgICAgICAg
bV9lcnJvck9jY3VycmVkID0gdHJ1ZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiBt
X2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuZ2V0KCk7Cit9CisKK1JlZlB0cjxGb250PiBXb3JrZXJG
b250TG9hZFJlcXVlc3Q6OmNyZWF0ZUZvbnQoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVz
Y3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcmLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3lu
dGhldGljSXRhbGljLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVz
LCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVz
KQoreworICAgIEFTU0VSVChtX2ZvbnRDdXN0b21QbGF0Zm9ybURhdGEpOworICAgIEFTU0VSVCht
X2NvbnRleHQpOworICAgIHJldHVybiBGb250OjpjcmVhdGUobV9mb250Q3VzdG9tUGxhdGZvcm1E
YXRhLT5mb250UGxhdGZvcm1EYXRhKGZvbnREZXNjcmlwdGlvbiwgc3ludGhldGljQm9sZCwgc3lu
dGhldGljSXRhbGljLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZUNhcGFiaWxpdGllcyksIEZv
bnQ6Ok9yaWdpbjo6UmVtb3RlLCAmbV9jb250ZXh0LT5mb250Q2FjaGUoKSk7Cit9CisKK3ZvaWQg
V29ya2VyRm9udExvYWRSZXF1ZXN0OjpzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50KiBj
bGllbnQpCit7CisgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQgPSBjbGllbnQ7CisKKyAgICBp
ZiAobV9ub3RpZnlPbkNsaWVudFNldCkgeworICAgICAgICBtX25vdGlmeU9uQ2xpZW50U2V0ID0g
ZmFsc2U7CisgICAgICAgIG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50LT5mb250TG9hZGVkKCp0aGlz
KTsKKyAgICB9Cit9CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVz
cG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit7
CisgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgIT0gMiAmJiByZXNwb25z
ZS5odHRwU3RhdHVzQ29kZSgpKQorICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOworfQor
Cit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgY2hhciog
ZGF0YSwgaW50IGRhdGFMZW5ndGgpCit7CisgICAgaWYgKG1fZXJyb3JPY2N1cnJlZCkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgaWYgKCFtX2RhdGEpCisgICAgICAgIG1fZGF0YSA9IFNoYXJlZEJ1
ZmZlcjo6Y3JlYXRlKCk7CisKKyAgICBtX2RhdGEtPmFwcGVuZChkYXRhLCBkYXRhTGVuZ3RoKTsK
K30KKwordm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWdu
ZWQgbG9uZykKK3sKKyAgICBtX2lzTG9hZGluZyA9IGZhbHNlOworCisgICAgaWYgKCFtX2Vycm9y
T2NjdXJyZWQpIHsKKyAgICAgICAgaWYgKG1fZm9udExvYWRSZXF1ZXN0Q2xpZW50KQorICAgICAg
ICAgICAgbV9mb250TG9hZFJlcXVlc3RDbGllbnQtPmZvbnRMb2FkZWQoKnRoaXMpOworICAgICAg
ICBlbHNlCisgICAgICAgICAgICBtX25vdGlmeU9uQ2xpZW50U2V0ID0gdHJ1ZTsKKyAgICB9Cit9
CisKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJy
b3ImKQoreworICAgIG1fZXJyb3JPY2N1cnJlZCA9IHRydWU7Cit9CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExv
YWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVz
dC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmJmOTRmZDQ4Y2FiMTRiZDUzNDg5MjE3ZjIwNGJmMjNhODYwNGM1ZTgK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2Fk
UmVxdWVzdC5oCkBAIC0wLDAgKzEsODMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgTWV0
cm9sb2dpY2FsIEdyb3VwIEIuVi4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICog
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGb250TG9hZFJlcXVlc3QuaCIK
KyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKKyNpbmNsdWRlICJUaHJlYWRhYmxl
TG9hZGVyQ2xpZW50LmgiCisjaW5jbHVkZSA8d3RmL1VSTC5oPgorI2luY2x1ZGUgPHd0Zi9XZWFr
UHRyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dDsKK2NsYXNzIFNoYXJlZEJ1ZmZlcjsKK2NsYXNzIFdvcmtlckdsb2JhbFNjb3BlOworCitz
dHJ1Y3QgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTsKKworY2xhc3MgV29ya2VyRm9udExvYWRSZXF1
ZXN0IDogcHVibGljIEZvbnRMb2FkUmVxdWVzdCwgcHVibGljIFRocmVhZGFibGVMb2FkZXJDbGll
bnQgeworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIFdvcmtlckZv
bnRMb2FkUmVxdWVzdChVUkwmJiwgTG9hZGVkRnJvbU9wYXF1ZVNvdXJjZSk7CisgICAgfldvcmtl
ckZvbnRMb2FkUmVxdWVzdCgpID0gZGVmYXVsdDsKKworICAgIHZvaWQgbG9hZChXb3JrZXJHbG9i
YWxTY29wZSYpOworCitwcml2YXRlOgorICAgIGNvbnN0IFVSTCYgdXJsKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gbV91cmw7IH0KKyAgICBib29sIGlzUGVuZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuICFtX2lzTG9hZGluZyAmJiAhbV9lcnJvck9jY3VycmVkICYmICFtX2RhdGE7IH0KKyAgICBi
b29sIGlzTG9hZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1faXNMb2FkaW5nOyB9CisgICAg
Ym9vbCBlcnJvck9jY3VycmVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9lcnJvck9jY3VycmVk
OyB9CisKKyAgICBib29sIGVuc3VyZUN1c3RvbUZvbnREYXRhKGNvbnN0IEF0b21TdHJpbmcmIHJl
bW90ZVVSSSkgZmluYWw7CisgICAgUmVmUHRyPEZvbnQ+IGNyZWF0ZUZvbnQoY29uc3QgRm9udERl
c2NyaXB0aW9uJiwgY29uc3QgQXRvbVN0cmluZyYgcmVtb3RlVVJJLCBib29sIHN5bnRoZXRpY0Jv
bGQsIGJvb2wgc3ludGhldGljSXRhbGljLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiwgRm9u
dFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcykgZmluYWw7CisKKyAgICB2b2lkIHNldENs
aWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqKSBmaW5hbDsKKworICAgIGJvb2wgaXNXb3JrZXJG
b250TG9hZFJlcXVlc3QoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CisKKyAgICB2b2lk
IGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IGNoYXIq
IGRhdGEsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZhaWwoY29uc3Qg
UmVzb3VyY2VFcnJvciYpIGZpbmFsOworCisgICAgVVJMIG1fdXJsOworICAgIExvYWRlZEZyb21P
cGFxdWVTb3VyY2UgbV9sb2FkZWRGcm9tT3BhcXVlU291cmNlOworCisgICAgYm9vbCBtX2lzTG9h
ZGluZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX25vdGlmeU9uQ2xpZW50U2V0IHsgZmFsc2UgfTsK
KyAgICBib29sIG1fZXJyb3JPY2N1cnJlZCB7IGZhbHNlIH07CisgICAgRm9udExvYWRSZXF1ZXN0
Q2xpZW50KiBtX2ZvbnRMb2FkUmVxdWVzdENsaWVudCB7IG51bGxwdHIgfTsKKworICAgIFdlYWtQ
dHI8U2NyaXB0RXhlY3V0aW9uQ29udGV4dD4gbV9jb250ZXh0OworICAgIFJlZlB0cjxTaGFyZWRC
dWZmZXI+IG1fZGF0YTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8Rm9udEN1c3RvbVBsYXRmb3JtRGF0
YT4gbV9mb250Q3VzdG9tUGxhdGZvcm1EYXRhOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQorCitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0ZPTlRMT0FEUkVRVUVTVChXZWJDb3JlOjpXb3Jr
ZXJGb250TG9hZFJlcXVlc3QsIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCmluZGV4IGQwZmJkNzJkMzJiNTUw
NDY5ZWEwOGE5MGYwZmQ2YmY4NGZhNjE4ODYuLjAxN2RmNWJiN2NjNDU1ZDA5ZGExMzU0MTUyNGY2
ZGNmNDNkZDM1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xv
YmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2Nv
cGUuY3BwCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5UG9saWN5
LmgiCiAjaW5jbHVkZSAiQ3J5cHRvLmgiCiAjaW5jbHVkZSAiRm9udENhY2hlLmgiCisjaW5jbHVk
ZSAiRm9udEZhY2VTZXQuaCIKICNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIKICNpbmNs
dWRlICJJbWFnZUJpdG1hcE9wdGlvbnMuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb24uaCIKQEAgLTQ1LDYgKzQ2LDcgQEAKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpblBvbGlj
eS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oIgogI2luY2x1ZGUgIlNv
Y2tldFByb3ZpZGVyLmgiCisjaW5jbHVkZSAiV29ya2VyRm9udExvYWRSZXF1ZXN0LmgiCiAjaW5j
bHVkZSAiV29ya2VyTG9hZGVyUHJveHkuaCIKICNpbmNsdWRlICJXb3JrZXJMb2NhdGlvbi5oIgog
I2luY2x1ZGUgIldvcmtlck1lc3NhZ2luZ1Byb3h5LmgiCkBAIC01MjEsNiArNTIzLDIzIEBAIEZv
bnRDYWNoZSYgV29ya2VyR2xvYmFsU2NvcGU6OmZvbnRDYWNoZSgpCiAgICAgcmV0dXJuICptX2Zv
bnRDYWNoZTsKIH0KIAorUmVmPEZvbnRGYWNlU2V0PiBXb3JrZXJHbG9iYWxTY29wZTo6Zm9udHMo
KQoreworICAgIEFTU0VSVChjc3NGb250U2VsZWN0b3IoKSk7CisgICAgcmV0dXJuIGNzc0ZvbnRT
ZWxlY3RvcigpLT5mb250RmFjZVNldCgpOworfQorCitzdGQ6OnVuaXF1ZV9wdHI8Rm9udExvYWRS
ZXF1ZXN0PiBXb3JrZXJHbG9iYWxTY29wZTo6Zm9udExvYWRSZXF1ZXN0KFN0cmluZyYgdXJsLCBi
b29sLCBib29sLCBMb2FkZWRGcm9tT3BhcXVlU291cmNlIGxvYWRlZEZyb21PcGFxdWVTb3VyY2Up
Cit7CisgICAgcmV0dXJuIG1ha2VVbmlxdWU8V29ya2VyRm9udExvYWRSZXF1ZXN0Pihjb21wbGV0
ZVVSTCh1cmwpLCBsb2FkZWRGcm9tT3BhcXVlU291cmNlKTsKK30KKwordm9pZCBXb3JrZXJHbG9i
YWxTY29wZTo6YmVnaW5Mb2FkaW5nRm9udFNvb24oRm9udExvYWRSZXF1ZXN0JiByZXF1ZXN0KQor
eworICAgIEFTU0VSVChpczxXb3JrZXJGb250TG9hZFJlcXVlc3Q+KHJlcXVlc3QpKTsKKyAgICBk
b3duY2FzdDxXb3JrZXJGb250TG9hZFJlcXVlc3Q+KHJlcXVlc3QpLmxvYWQoKnRoaXMpOworfQor
CiBSZWZlcnJlclBvbGljeSBXb3JrZXJHbG9iYWxTY29wZTo6cmVmZXJyZXJQb2xpY3koKSBjb25z
dAogewogICAgIHJldHVybiBtX3JlZmVycmVyUG9saWN5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJHbG9iYWxTY29wZS5oCmluZGV4IDZlYmU0NjUxMWZiYTIxYzJmODUxNmRlNDUyNjgw
MTRjYzI3ZjE2OGUuLjFlZmU5YzhkMWVjMjkxZTkyNmNhMzIzMmMyZTc4YmFhMzc3N2ZiMzQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmgKQEAgLTUxLDYgKzUx
LDcgQEAgY2xhc3MgQ1NTRm9udFNlbGVjdG9yOwogY2xhc3MgQ1NTVmFsdWVQb29sOwogY2xhc3Mg
Q29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzOwogY2xhc3MgQ3J5cHRvOworY2xh
c3MgRm9udEZhY2VTZXQ7CiBjbGFzcyBQZXJmb3JtYW5jZTsKIGNsYXNzIFNjaGVkdWxlZEFjdGlv
bjsKIGNsYXNzIFdvcmtlckxvY2F0aW9uOwpAQCAtMTI0LDYgKzEyNSw5IEBAIHB1YmxpYzoKICAg
ICBDU1NWYWx1ZVBvb2wmIGNzc1ZhbHVlUG9vbCgpIGZpbmFsOwogICAgIENTU0ZvbnRTZWxlY3Rv
ciogY3NzRm9udFNlbGVjdG9yKCkgZmluYWw7CiAgICAgRm9udENhY2hlJiBmb250Q2FjaGUoKSBm
aW5hbDsKKyAgICBSZWY8Rm9udEZhY2VTZXQ+IGZvbnRzKCk7CisgICAgc3RkOjp1bmlxdWVfcHRy
PEZvbnRMb2FkUmVxdWVzdD4gZm9udExvYWRSZXF1ZXN0KFN0cmluZyYgdXJsLCBib29sIGlzU1ZH
LCBib29sIGlzSW5pdGlhdGluZ0VsZW1lbnRJblVzZXJBZ2VudFNoYWRvd1RyZWUsIExvYWRlZEZy
b21PcGFxdWVTb3VyY2UpIGZpbmFsOworICAgIHZvaWQgYmVnaW5Mb2FkaW5nRm9udFNvb24oRm9u
dExvYWRSZXF1ZXN0JikgZmluYWw7CiAKICAgICBSZWZlcnJlclBvbGljeSByZWZlcnJlclBvbGlj
eSgpIGNvbnN0IGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckdsb2JhbFNjb3BlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFs
U2NvcGUuaWRsCmluZGV4IGY4NTc4YTQ3MWY0OGI0ODU4YmJmYmJmYmM4YTA1Y2NkZDliNjliMjYu
LmUyOGU4OWVmZjRjYjAyZjc0ZGYwYmQxYTI5MDFhNzU3MTQ1Y2VjZmMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC00OCwzICs0OCw0IEBACiB9
OwogCiBXb3JrZXJHbG9iYWxTY29wZSBpbmNsdWRlcyBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3Bl
OworV29ya2VyR2xvYmFsU2NvcGUgaW5jbHVkZXMgRm9udEZhY2VTb3VyY2U7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAyMGFkNzA1ZTUxNThiMTZiNGNiOTRlZjQ5NWMyNmQ4NDgw
N2U1YTVjLi4zMTVlNGI0ZjU0MTkyZmVjZDE0ZmVhZjM5YWVmZjQ4MGUxOWYzM2M4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NyBAQAorMjAyMS0wNC0xNiAgQ2hy
aXMgTG9yZCAgPGNsb3JkQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEZvbnRGYWNl
IGluIFdvcmtlcnMgZm9yIE9mZnNjcmVlbkNhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NjUyOTAyND4KKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBG
b250RmFjZSBpcyBub3cgYXZhaWxhYmxlIGZvciBXb3JrZXJzLCByZWJhc2VsaW5lIHJlbGF0ZWQg
dGVzdHMuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mb250LWxvYWRp
bmcvZm9udGZhY2VzZXQtbG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFs
aWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5y
dGwud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQuZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YmFzZWxpbmUuYWxwaGFiZXRpYy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFz
ZWxpbmUuYm90dG9tLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5o
YW5naW5nLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3Jh
cGhpYy53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUubWlkZGxlLndv
cmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS50b3Aud29ya2VyLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29ya2VyLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5mb250ZmFjZS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2Uu
YmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVu
ZC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uubm9uc3Bh
Y2Uud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90aGVy
Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53
b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29y
a2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtl
ci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNlcy53b3JrZXItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0Lm1lYXN1cmUuYmFzZWxpbmVzLndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQubWVhc3VyZS5lbUhlaWdodHMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LmZvbnRCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lk
dGguYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5
Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA0LTIxICBUaW0gTmd1eWVuICA8bnRpbUBhcHBsZS5jb20+
CiAKICAgICAgICAgSW1wb3J0IGNzcy9jc3Mtd2lsbC1jaGFuZ2UgdGVzdHMgZnJvbSBXUFQKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1mb250LWxvYWRpbmcvZm9udGZhY2VzZXQtbG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtZm9udC1sb2FkaW5nL2ZvbnRmYWNlc2V0LWxvYWQtY3NzLXdpZGUta2V5d29yZHMtZXhw
ZWN0ZWQudHh0CmluZGV4IGI4MzFlNThmZTUzY2RiOGVmYWNjMDIzZDIzZTU5YWUyYjE5NjYyOTUu
LjYyNzViMTNlNWM3MGYxYWYzNmU4OGFhMDkyZDk1MTU2YTQ5ODgzYWMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mb250LWxv
YWRpbmcvZm9udGZhY2VzZXQtbG9hZC1jc3Mtd2lkZS1rZXl3b3Jkcy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZv
bnQtbG9hZGluZy9mb250ZmFjZXNldC1sb2FkLWNzcy13aWRlLWtleXdvcmRzLWV4cGVjdGVkLnR4
dApAQCAtMSwxMyArMSwxMCBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdzZWxmLmZvbnRzLmxvYWQnKQotCi1IYXJu
ZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ3NlbGYuZm9udHMubG9hZCcpCiAKIFBBU1MgTG9hZGluZyBD
U1Mtd2lkZSBrZXl3b3JkICJpbml0aWFsIiBjYXVzZXMgU3ludGF4RXJyb3IgKGRvY3VtZW50KQog
UEFTUyBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgImluaGVyaXQiIGNhdXNlcyBTeW50YXhFcnJv
ciAoZG9jdW1lbnQpCiBQQVNTIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAidW5zZXQiIGNhdXNl
cyBTeW50YXhFcnJvciAoZG9jdW1lbnQpCiBQQVNTIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAi
cmV2ZXJ0IiBjYXVzZXMgU3ludGF4RXJyb3IgKGRvY3VtZW50KQotVElNRU9VVCBMb2FkaW5nIENT
Uy13aWRlIGtleXdvcmQgImluaXRpYWwiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2VyKSBUZXN0
IHRpbWVkIG91dAotTk9UUlVOIExvYWRpbmcgQ1NTLXdpZGUga2V5d29yZCAiaW5oZXJpdCIgY2F1
c2VzIFN5bnRheEVycm9yICh3b3JrZXIpCi1OT1RSVU4gTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3Jk
ICJ1bnNldCIgY2F1c2VzIFN5bnRheEVycm9yICh3b3JrZXIpCi1OT1RSVU4gTG9hZGluZyBDU1Mt
d2lkZSBrZXl3b3JkICJyZXZlcnQiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2VyKQorUEFTUyBM
b2FkaW5nIENTUy13aWRlIGtleXdvcmQgImluaXRpYWwiIGNhdXNlcyBTeW50YXhFcnJvciAod29y
a2VyKQorUEFTUyBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgImluaGVyaXQiIGNhdXNlcyBTeW50
YXhFcnJvciAod29ya2VyKQorUEFTUyBMb2FkaW5nIENTUy13aWRlIGtleXdvcmQgInVuc2V0IiBj
YXVzZXMgU3ludGF4RXJyb3IgKHdvcmtlcikKK1BBU1MgTG9hZGluZyBDU1Mtd2lkZSBrZXl3b3Jk
ICJyZXZlcnQiIGNhdXNlcyBTeW50YXhFcnJvciAod29ya2VyKQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5jZW50ZXIud29ya2VyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQu
dHh0CmluZGV4IGU5ZDdmNTc0ZjQ1NTBjZDVmMmYzNGMzYTBjNmI4OWRkM2RhOGZkZDMuLjExZGRj
ZmNlNjcwYjVlZmFiNDE3NjIzNTgwYjI4Yjc0ZDJhMTA2MzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmNlbnRlci53b3JrZXItZXhwZWN0ZWQu
dHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBjZW50ZXIgaXMgdGhlIGNlbnRl
ciBvZiB0aGUgZW0gc3F1YXJlcyAobm90IHRoZSBib3VuZGluZyBib3gpIENhbid0IGZpbmQgdmFy
aWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBjZW50ZXIgaXMgdGhlIGNlbnRlciBvZiB0
aGUgZW0gc3F1YXJlcyAobm90IHRoZSBib3VuZGluZyBib3gpCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5sdHIud29ya2VyLWV4cGVjdGVk
LnR4dAppbmRleCAzOGRkNzhiZWViZWJmOTJlZDAyYjE1NDk2MmEwYTA5NTAwZDk2YzFjLi5lMDky
ZTFmOGJjNmRmNzVkMWM5MTVhNGI0ZmI5YWVkYmUxZjhjNzliIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQubHRyLndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLmx0ci53b3JrZXItZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBlbmQgd2l0aCBsdHIgaXMg
dGhlIHJpZ2h0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFs
aWduIGVuZCB3aXRoIGx0ciBpcyB0aGUgcmlnaHQgZWRnZQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVl
bi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5hbGlnbi5lbmQucnRsLndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggMDU4YmI5OWRlMzM1YTRiZmQwM2ZiNTE2NzM0MWVkNDBiYWJjYjkxMi4uNGI2ZGUy
N2UyNDg4YmVlYjlkY2VjOWRkZWIxZWI0NDIwYmUzZjVjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uZW5kLnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMv
b2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmVuZC5ydGwud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCB0ZXh0QWxpZ24gZW5kIHdpdGggcnRsIGlzIHRo
ZSBsZWZ0IGVkZ2UgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgdGV4dEFsaWdu
IGVuZCB3aXRoIHJ0bCBpcyB0aGUgbGVmdCBlZGdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmFsaWduLmxlZnQud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBm
MjkyZjk0NDEyNzlkY2E5NTc0YzJiZjAzMTY2YjEzOTUxOTJjNTYzLi5iMjNmNzc4Y2ZlMDFjNTQ1
MzkyMDAyM2ExYTMzZDQ5NmQ1ZjJmYWEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5sZWZ0Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4
dC8yZC50ZXh0LmRyYXcuYWxpZ24ubGVmdC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MyBAQAogCi1GQUlMIHRleHRBbGlnbiBsZWZ0IGlzIHRoZSBsZWZ0IG9mIHRoZSBmaXJzdCBlbSBz
cXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFj
ZQorUEFTUyB0ZXh0QWxpZ24gbGVmdCBpcyB0aGUgbGVmdCBvZiB0aGUgZmlyc3QgZW0gc3F1YXJl
IChub3QgdGhlIGJvdW5kaW5nIGJveCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQv
MmQudGV4dC5kcmF3LmFsaWduLnJpZ2h0Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZmY1YTQw
MjBiZGFiMGE2MTE5ZmQ2NGFlNDc3MmZjMTViMTFlYTU2NS4uYTEwODJkNWI4YzU4NTQ0OTNkYTA4
OTUwMTYwZWZkY2E2OWIzZWIwZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuYWxpZ24ucmlnaHQud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5hbGlnbi5yaWdodC53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBA
QAogCi1GQUlMIHRleHRBbGlnbiByaWdodCBpcyB0aGUgcmlnaHQgb2YgdGhlIGxhc3QgZW0gc3F1
YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UK
K1BBU1MgdGV4dEFsaWduIHJpZ2h0IGlzIHRoZSByaWdodCBvZiB0aGUgbGFzdCBlbSBzcXVhcmUg
KG5vdCB0aGUgYm91bmRpbmcgYm94KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5hbGlnbi5zdGFydC5sdHIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4
IDZmZDk2NTU0NTJjZjAxNjdiNGFkMDljMTJlOTM2N2MwY2M4YjEyYTkuLjE5ZjAyYmYzZDA4NWY0
MWFhZTk2OWNhYmY5ZDQ5YjJjZjdhMGYyOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0Lmx0ci53b3JrZXItZXhwZWN0ZWQudHh0
CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRBbGlnbiBzdGFydCB3aXRoIGx0ciBpcyB0aGUg
bGVmdCBlZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRleHRBbGlnbiBz
dGFydCB3aXRoIGx0ciBpcyB0aGUgbGVmdCBlZGdlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmFsaWduLnN0YXJ0LnJ0bC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggYmQ1YTU5ZDc5ZTZlMDVhZGMzODQzOWNhZDVkYmY1YjIxZDljODY5Yy4uNDFjM2Yy
NGFmMGJkYjQ2MzYyNTFjNDk0ZmRjNjQ5ZTNkOWU2OTFiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYWxpZ24uc3RhcnQucnRsLndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgdGV4dEFsaWduIHN0YXJ0IHdpdGggcnRs
IGlzIHRoZSByaWdodCBlZGdlIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitQQVNTIHRl
eHRBbGlnbiBzdGFydCB3aXRoIHJ0bCBpcyB0aGUgcmlnaHQgZWRnZQogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29m
ZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGljLndvcmtlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5hbHBoYWJldGlj
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDM4OTk0MGFmNjVmNDdkYTNhYmYyZWVjNGQ3YTli
OTYxNTFkM2ZlZC4uYTE3ZWVmNTA5MmI3ZDAzODI3YWNkNjViNzk3OGVlNGI5YmUyMGRjMiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuYWxwaGFiZXRpYy53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2Vs
aW5lLmFscGhhYmV0aWMud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJ
TCAyZCBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyAyZAogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5ib3R0b20ud29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3Jr
ZXItZXhwZWN0ZWQudHh0CmluZGV4IDZhMTU0OWMxN2IyMjZhOWU1NTY1NzVjZTkyZjcyOTY4ODlj
ZGEyOTIuLmZmMjgzNjA5ODUzODU0MmQ3MmVkYzI5MTAwZjU4MDZhODIzYjA3NGUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRvbS53b3JrZXItZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmJvdHRv
bS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRCYXNlbGlu
ZSBib3R0b20gaXMgdGhlIGJvdHRvbSBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5n
IGJveCkgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4dEJhc2VsaW5lIGJv
dHRvbSBpcyB0aGUgYm90dG9tIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94
KSBhc3NlcnRfYXBwcm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICgyNSwg
MjUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxpbmUuaGFuZ2luZy53b3JrZXItZXhwZWN0
ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5Yjk2MTUxZDNmZWQuLmNi
ZWYyNzZhMzQ3OGZhYmMxMWFiNWY0ZjFiNWQyNTkyNTU3Njk4ZGUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLmhhbmdpbmcud29ya2VyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5oYW5naW5nLndvcmtl
ci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJp
YWJsZTogRm9udEZhY2UKK0ZBSUwgMmQgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVs
IG9mIHRoZSBwaXhlbCBhdCAoNSwgNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5pZGVvZ3JhcGhp
Yy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuYmFzZWxp
bmUuaWRlb2dyYXBoaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBkMzg5OTQwYWY2NWY0N2Rh
M2FiZjJlZWM0ZDdhOWI5NjE1MWQzZmVkLi5jYmVmMjc2YTM0NzhmYWJjMTFhYjVmNGYxYjVkMjU5
MjU1NzY5OGRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGlu
ZS5pZGVvZ3JhcGhpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LmJhc2VsaW5lLmlkZW9ncmFwaGljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEs
MyArMSwzIEBACiAKLUZBSUwgMmQgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwg
MmQgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoNSwg
NSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5iYXNlbGluZS5taWRkbGUud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQu
dHh0CmluZGV4IDMwMDY3MzhhOWM2ZDhmOTIwZWQ5YzBjOGNlNjZlYzkzMjM5M2ViYWEuLmFkNjQ5
NDllMTUxMmE1Yjg3MGIwNmQxMjA0OGYyYjhmMjg2ODMxOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmJhc2VsaW5lLm1pZGRsZS53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIHRleHRCYXNlbGluZSBtaWRkbGUgaXMg
dGhlIG1pZGRsZSBvZiB0aGUgZW0gc3F1YXJlIChub3QgdGhlIGJvdW5kaW5nIGJveCkgQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgdGV4dEJhc2VsaW5lIG1pZGRsZSBpcyB0aGUg
bWlkZGxlIG9mIHRoZSBlbSBzcXVhcmUgKG5vdCB0aGUgYm91bmRpbmcgYm94KSBhc3NlcnRfYXBw
cm94X2VxdWFsczogUmVkIGNoYW5uZWwgb2YgdGhlIHBpeGVsIGF0ICg1LCA1KSBleHBlY3RlZCAw
ICsvLSAyIGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5k
cmF3LmJhc2VsaW5lLnRvcC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZTI2ZjFiNmY4
YTM0M2IwZGE1MzU5YWVlNDgxNjliNDdmYjYyNzBhYS4uODBlOThmYjI1YjY5NDNiM2M4Mjk0ZGMy
MmUzYmJiN2E3MDJhMzY0NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcu
YmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50
ZXh0LmRyYXcuYmFzZWxpbmUudG9wLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgdGV4dEJhc2VsaW5lIHRvcCBpcyB0aGUgdG9wIG9mIHRoZSBlbSBzcXVhcmUgKG5v
dCB0aGUgYm91bmRpbmcgYm94KSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCB0
ZXh0QmFzZWxpbmUgdG9wIGlzIHRoZSB0b3Agb2YgdGhlIGVtIHNxdWFyZSAobm90IHRoZSBib3Vu
ZGluZyBib3gpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwg
YXQgKDUsIDUpIGV4cGVjdGVkIDAgKy8tIDIgYnV0IGdvdCAyNTUKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53b3JrZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5ib3VuZC53
b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDljM2Y4NWU0OTBhMjEzNmQzZjQ1MDViYjM5M2JhMzlj
YjQ5MDJiYmEuLmVlNDI5MWQyYmU4MzU4NDQ1MDI4ZjdiMmU1MzkwYTRiOWZhNGUwMGYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGguYm91bmQud29y
a2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5maWxsLm1h
eFdpZHRoLmJvdW5kLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwg
ZmlsbFRleHQgaGFuZGxlcyBtYXhXaWR0aCBiYXNlZCBvbiBsaW5lIHNpemUsIG5vdCBib3VuZGlu
ZyBib3ggc2l6ZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBmaWxsVGV4dCBo
YW5kbGVzIG1heFdpZHRoIGJhc2VkIG9uIGxpbmUgc2l6ZSwgbm90IGJvdW5kaW5nIGJveCBzaXpl
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZpbGwubWF4V2lkdGgu
Zm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3
LmZpbGwubWF4V2lkdGguZm9udGZhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA2YjkyYzM4
ZjMyMjIyOThjYThhYThlZTIxOTZjMzhlMTRhN2I5Yzc4Li5iMmNlMjcxYmYxMDFlM2M5YjYyYjU4
YmQxODkyOTc1OTFkNzlhNzZkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5maWxsLm1heFdpZHRoLmZvbnRmYWNlLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuZmlsbC5tYXhXaWR0aC5mb250ZmFjZS53b3JrZXItZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIGZpbGxUZXh0IHdvcmtzIG9uIEBmb250LWZh
Y2UgZm9udHMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK1BBU1MgZmlsbFRleHQgd29y
a3Mgb24gQGZvbnQtZmFjZSBmb250cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5mb250ZmFjZS5ub3RpbnBhZ2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVu
L3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0
CmluZGV4IGU3OTM1N2FhYjI1ZjYxOGVmNWE3ZTA0YmZiYTQ4NTcwZTk0ZjJlY2IuLjFhYjk5MWYy
MmVlZGU1YjI4ZjMxMTljOWY1MmZhN2Q4MWQ4M2MzMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52
YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlucGFnZS53b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEBmb250LWZhY2UgZm9udHMgc2hv
dWxkIHdvcmsgZXZlbiBpZiB0aGV5IGFyZSBub3QgdXNlZCBpbiB0aGUgcGFnZSBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBAZm9udC1mYWNlIGZvbnRzIHNob3VsZCB3b3JrIGV2
ZW4gaWYgdGhleSBhcmUgbm90IHVzZWQgaW4gdGhlIHBhZ2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2UucmVwZWF0Lndvcmtlci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVj
dGVkLnR4dAppbmRleCAwZjc1ZWE5MjEyOWRkNGYyYWY5ZDJmNTNmMWVmYjY0ZjE5OTExNjQ1Li4z
OWVkYTRkYzJmZjY2M2UxZjI4MzZlNTY3Y2U3NjM4NjU1NjkxZDk1IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNj
cmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2VyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFjZS5yZXBlYXQud29ya2Vy
LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBEcmF3IHdpdGggdGhlIGZvbnQg
aW1tZWRpYXRlbHksIHRoZW4gd2FpdCBhIGJpdCB1bnRpbCBhbmQgZHJhdyBhZ2Fpbi4gKFRoaXMg
Y3Jhc2hlcyBzb21lIHZlcnNpb24gb2YgV2ViS2l0LikgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9u
dEZhY2UKK1BBU1MgRHJhdyB3aXRoIHRoZSBmb250IGltbWVkaWF0ZWx5LCB0aGVuIHdhaXQgYSBi
aXQgdW50aWwgYW5kIGRyYXcgYWdhaW4uIChUaGlzIGNyYXNoZXMgc29tZSB2ZXJzaW9uIG9mIFdl
YktpdC4pCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNl
Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5mb250ZmFj
ZS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGQzODk5NDBhZjY1ZjQ3ZGEzYWJmMmVlYzRkN2E5
Yjk2MTUxZDNmZWQuLmExN2VlZjUwOTJiN2QwMzgyN2FjZDY1Yjc5NzhlZTRiOWJlMjBkYzIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LmZvbnRmYWNlLndvcmtlci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuZm9udGZhY2Uud29ya2Vy
LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCAyZCBDYW4ndCBmaW5kIHZhcmlh
YmxlOiBGb250RmFjZQorUEFTUyAyZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRl
eHQuZHJhdy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuc3BhY2UuYmFzaWMud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA5YTMyNDAy
NzVlZDM4N2RiZGZkNWQyNWMxZjVhMjdhOWRlNjljNzVhLi4xZWQ0NGY4ZjdkYmNiMTYzNGJmNDlh
NzNiZjk1OTViOTc5MjA5OGNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJh
dy5zcGFjZS5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LnNwYWNlLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgVSswMDIwIGlzIHJlbmRlcmVkIHRoZSBjb3JyZWN0IHNpemUgKDFlbSB3aWRlKSBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBVKzAwMjAgaXMgcmVuZGVyZWQgdGhl
IGNvcnJlY3Qgc2l6ZSAoMWVtIHdpZGUpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLmVuZC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggNmU1ZjgzMmQxNDJlMGU3NTUyNDkyOGU1Mjc0ZWI5MGEwYTMyY2I2YS4uNDJmNTcw
ZjBiOWU3OGQ5NDdjMGUwYmM2NGFiNjgxNjhjMzY2NTUyYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtlci1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nh
bnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2UuZW5kLndvcmtl
ci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVycyBh
dCB0aGUgZW5kIG9mIGEgbGluZSBhcmUgY29sbGFwc2VkIChwZXIgQ1NTKSBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRoZSBlbmQgb2YgYSBs
aW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hh
bm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDc1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1
NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBz
ZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRy
YXcuc3BhY2UuY29sbGFwc2Uubm9uc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBhZTQ2
MTVkZTRjYzQwMjk3NjBkMTc1YzkwNzQyOTc5ZWU1NTMwMzVjLi45ZTVkNDcwNDQ5NTI5MzkxN2Nk
NWVlNTY0NmY0OGM4Yzk4ZGE2YmQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5zcGFjZS5jb2xsYXBzZS5ub25zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm5vbnNwYWNlLndvcmtlci1l
eHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgTm9uLXNwYWNlIGNoYXJhY3RlcnMg
YXJlIG5vdCBjb252ZXJ0ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQgQ2FuJ3QgZmluZCB2YXJp
YWJsZTogRm9udEZhY2UKK1BBU1MgTm9uLXNwYWNlIGNoYXJhY3RlcnMgYXJlIG5vdCBjb252ZXJ0
ZWQgdG8gVSswMDIwIGFuZCBjb2xsYXBzZWQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8y
ZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zm
c2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLm90aGVyLndvcmtlci1leHBl
Y3RlZC50eHQKaW5kZXggOTRhMDA0M2EwYTMzNzllMTI4ZWIxNjQwYjRmNjQyOGIyZDcxMzlkYS4u
NjgyY2ZiOTM5YjBmODUwMTBiN2QzM2U1ODQyMTA1NmE1MWI0ODAxNCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZz
Y3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uub3RoZXIud29ya2VyLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5v
dGhlci53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNwYWNlIGNo
YXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1Mp
IENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJl
IGNvbnZlcnRlZCB0byBVKzAwMjAsIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHBy
b3hfZXF1YWxzOiBSZWQgY2hhbm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQg
MCArLy0gMiBidXQgZ290IDI1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQu
ZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCA5NGEwMDQzYTBhMzM3OWUxMjhlYjE2NDBiNGY2NDI4YjJkNzEzOWRhLi42ODJjZmI5
MzliMGY4NTAxMGI3ZDMzZTU4NDIxMDU2YTUxYjQ4MDE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90
ZXh0LzJkLnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9j
YW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnNwYWNlLndv
cmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU3BhY2UgY2hhcmFjdGVy
cyBhcmUgY29udmVydGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhcmUgY29udmVy
dGVkIHRvIFUrMDAyMCwgYW5kIGNvbGxhcHNlZCAocGVyIENTUykgYXNzZXJ0X2FwcHJveF9lcXVh
bHM6IFJlZCBjaGFubmVsIG9mIHRoZSBwaXhlbCBhdCAoMjUsIDI1KSBleHBlY3RlZCAwICsvLSAy
IGJ1dCBnb3QgMjU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5kcmF3LnNw
YWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJk
LnRleHQuZHJhdy5zcGFjZS5jb2xsYXBzZS5zdGFydC53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4
IDUwODY4ZmU5MTk4MGNhNzBiNDA5Zjc2MzczOWU4NDBlZjk2ZjNkNWQuLjdiY2I1MWNjYzdiOWMw
YTE2MDlkNWVhY2QzZDM0ZGMyODE4MTI4NGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5kcmF3LnNwYWNlLmNvbGxhcHNlLnN0YXJ0Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0LmRyYXcuc3BhY2UuY29sbGFwc2Uuc3RhcnQud29ya2VyLWV4
cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGF0IHRo
ZSBzdGFydCBvZiBhIGxpbmUgYXJlIGNvbGxhcHNlZCAocGVyIENTUykgQ2FuJ3QgZmluZCB2YXJp
YWJsZTogRm9udEZhY2UKK0ZBSUwgU3BhY2UgY2hhcmFjdGVycyBhdCB0aGUgc3RhcnQgb2YgYSBs
aW5lIGFyZSBjb2xsYXBzZWQgKHBlciBDU1MpIGFzc2VydF9hcHByb3hfZXF1YWxzOiBSZWQgY2hh
bm5lbCBvZiB0aGUgcGl4ZWwgYXQgKDI1LCAyNSkgZXhwZWN0ZWQgMCArLy0gMiBidXQgZ290IDI1
NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hY3R1YWxCb3Vu
ZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1
cmUuYWN0dWFsQm91bmRpbmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAzMTIwZmNiOGZh
ZGRkOWU1NDI2NzQ1ZGQ1NTZmOWQ0Mzc5YmZlN2I3Li44MjU0Y2U2NzQyNDg2MjJlZTA3YjQ0Yzdk
OWY4YjZjZGY3NjFjZjYyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3Vy
ZS5hY3R1YWxCb3VuZGluZ0JveC53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3Rl
eHQvMmQudGV4dC5tZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBhY3R1YWxCb3VuZGluZ0JveCBmb3IgT2Zm
c2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6IEZvbnRGYWNlCitGQUlMIFRlc3Rpbmcg
YWN0dWFsQm91bmRpbmdCb3ggZm9yIE9mZnNjcmVlbkNhbnZhcyBhc3NlcnRfZXF1YWxzOiBNYXRo
LmFicyhjdHgubWVhc3VyZVRleHQoJ0EnKS5hY3R1YWxCb3VuZGluZ0JveERlc2NlbnQpID09PSAw
IChnb3QgMVtudW1iZXJdLCBleHBlY3RlZCAwW251bWJlcl0pIGV4cGVjdGVkIDAgYnV0IGdvdCAx
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5hZHZhbmNl
cy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IGY0YTA4NDAzYzFlYjhiNDFhYzRiYTU4MDYyYTQz
NTI4NTc1NTU1YWIuLjkzOGM3OTkxMWQwNmVmNTE0ZDdiMWM5YzZhNDU0MTUxYTFiZjU3YjUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmFkdmFuY2VzLndvcmtlci1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuYWR2YW5jZXMu
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5nIHdpZHRo
IGFkdmFuY2VzIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogRm9udEZh
Y2UKK0ZBSUwgVGVzdGluZyB3aWR0aCBhZHZhbmNlcyBmb3IgT2Zmc2NyZWVuQ2FudmFzIHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdjdHgubWVhc3VyZVRleHQoJ0hlbGxv
JykuYWR2YW5jZXNbMF0nKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVh
c3VyZS5iYXNlbGluZXMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDNkMjk5MGMxMWU5
NmUxNzE4NTc4OTM0Y2YzMmNhYjYzNDQ3OTZjNzEuLmUxZDIyOTM4NGQxYTcwNjUwMmU1MTg0Mjky
ZjU3ZDgzNDRjNDkyN2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJl
LmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4
dC5tZWFzdXJlLmJhc2VsaW5lcy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAog
Ci1GQUlMIFRlc3RpbmcgYmFzZWxpbmVzIGZvciBPZmZzY3JlZW5DYW52YXMgQ2FuJ3QgZmluZCB2
YXJpYWJsZTogRm9udEZhY2UKK0ZBSUwgVGVzdGluZyBiYXNlbGluZXMgZm9yIE9mZnNjcmVlbkNh
bnZhcyBjdHgubWVhc3VyZVRleHQoJ0EnKS5nZXRCYXNlbGluZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnY3R4Lm1lYXN1cmVUZXh0KCdBJykuZ2V0QmFzZWxpbmVzKCknLCAnY3R4Lm1lYXN1cmVU
ZXh0KCdBJykuZ2V0QmFzZWxpbmVzJyBpcyB1bmRlZmluZWQpCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2Ny
ZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLmVtSGVpZ2h0cy53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50
eHQKaW5kZXggODVhNzJjZWExNzE5M2ZiZjEwOGViZjRiNDYxM2ZlOWU5MjU5ZDBkMC4uYWNhZmFk
Zjg2MWMwN2ZhN2ZmZjUxZjMwMWZhN2UxOWZkZWJhZjFmYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4v
dGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9v
ZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZW1IZWlnaHRzLndvcmtlci1leHBlY3RlZC50
eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdGluZyBlbUhlaWdodHMgZm9yIE9mZnNjcmVl
bkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorRkFJTCBUZXN0aW5nIGVtSGVp
Z2h0cyBmb3IgT2Zmc2NyZWVuQ2FudmFzIGFzc2VydF9lcXVhbHM6IGN0eC5tZWFzdXJlVGV4dCgn
QScpLmVtSGVpZ2h0QXNjZW50ID09PSAzNy41IChnb3QgODVbbnVtYmVyXSwgZXhwZWN0ZWQgMzcu
NVtudW1iZXJdKSBleHBlY3RlZCAzNy41IGJ1dCBnb3QgODUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3Jl
ZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUuZm9udEJvdW5kaW5nQm94Lndvcmtlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2Vy
LWV4cGVjdGVkLnR4dAppbmRleCAxNGM3ZGE0NGJkMGVkY2Y2ODFhZjdhZjNkYzZiNmU3ZmExNWE0
NjUwLi4yNWJhY2UzZWZjZjE3ZmZlMjdiMDUzMTc5ZmRkZDBmZTkzMTIwM2NkIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRpbmdCb3gud29ya2VyLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS5mb250Qm91bmRp
bmdCb3gud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBUZXN0aW5n
IGZvbnRCb3VuZGluZ0JveCBmb3IgT2Zmc2NyZWVuQ2FudmFzIENhbid0IGZpbmQgdmFyaWFibGU6
IEZvbnRGYWNlCitQQVNTIFRlc3RpbmcgZm9udEJvdW5kaW5nQm94IGZvciBPZmZzY3JlZW5DYW52
YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFz
aWMud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndp
ZHRoLmJhc2ljLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNWM3ODBjOWU0ZTUxODYxYjAxZGEz
MGNmMTRkNzM4NTIzNDM5YTI5My4uOTQyZjkxNDEwNTU1OTI3NzliODQzYWI2NmE1MTU2YzliMmYw
N2QwNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguYmFz
aWMud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3Vy
ZS53aWR0aC5iYXNpYy53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlM
IFRoZSB3aWR0aCBvZiBjaGFyYWN0ZXIgaXMgc2FtZSBhcyBmb250IHVzZWQgZm9yIE9mZnNjcmVl
bkNhbnZhcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBGb250RmFjZQorUEFTUyBUaGUgd2lkdGggb2Yg
Y2hhcmFjdGVyIGlzIHNhbWUgYXMgZm9udCB1c2VkIGZvciBPZmZzY3JlZW5DYW52YXMKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQudGV4dC5tZWFzdXJlLndpZHRoLmVtcHR5
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNTAwZDcyN2QzYjY3ZGM5ODZhZmVmNGI5ZDJmMmE3
NDY5OWUxZDNlZS4uNjg3YmM0ZjM1ZmNmNGNjZDc0Nzc0MTFhNzYyMzM0M2IzMGJkZTkzOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1lYXN1cmUud2lkdGguZW1wdHkud29ya2Vy
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0LzJkLnRleHQubWVhc3VyZS53aWR0aC5l
bXB0eS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRoZSBlbXB0
eSBzdHJpbmcgaGFzIHplcm8gd2lkdGggZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBGb250RmFjZQorUEFTUyBUaGUgZW1wdHkgc3RyaW5nIGhhcyB6ZXJvIHdpZHRoIGZv
ciBPZmZzY3JlZW5DYW52YXMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvb2Zmc2NyZWVuL3RleHQvMmQu
dGV4dC5tZWFzdXJlLndpZHRoLnNwYWNlLndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggOTNkNzEx
YzRiYjk0NzIyMDRjN2YxNDM1YzhiZTAwZmRjN2IyNmIyYS4uMDUzNzI5MDBkNTY2Zjc5YjQ1NWMz
ZWE1NTI1MjA2NTI1ZmQyMDFjYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vdGV4dC8yZC50ZXh0Lm1l
YXN1cmUud2lkdGguc3BhY2Uud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi90ZXh0
LzJkLnRleHQubWVhc3VyZS53aWR0aC5zcGFjZS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsMyBAQAogCi1GQUlMIFNwYWNlIGNoYXJhY3RlcnMgYXJlIGNvbnZlcnRlZCB0byBVKzAwMjAg
YW5kIGNvbGxhcHNlZCAocGVyIENTUykgZm9yIE9mZnNjcmVlbkNhbnZhcyBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBGb250RmFjZQorRkFJTCBTcGFjZSBjaGFyYWN0ZXJzIGFyZSBjb252ZXJ0ZWQgdG8g
VSswMDIwIGFuZCBjb2xsYXBzZWQgKHBlciBDU1MpIGZvciBPZmZzY3JlZW5DYW52YXMgYXNzZXJ0
X2VxdWFsczogY3R4Lm1lYXN1cmVUZXh0KCdBIFx4MDlceDBhXHgwY1x4MGQgIFx4MDlceDBhXHgw
Y1x4MGRCJykud2lkdGggPT09IDE1MCAoZ290IDY1MFtudW1iZXJdLCBleHBlY3RlZCAxNTBbbnVt
YmVyXSkgZXhwZWN0ZWQgMTUwIGJ1dCBnb3QgNjUwCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>