<?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>237373</bug_id>
          
          <creation_ts>2022-03-02 08:47:16 -0800</creation_ts>
          <short_desc>AX: [WebAccessibilityObjectWrapperMac AXAttributeStringSetFont] crashes when given a font with a nil postscript name, font family, or display name</short_desc>
          <delta_ts>2022-03-04 18:05:09 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tyler Wilcock">tyler_w</reporter>
          <assigned_to name="Tyler Wilcock">tyler_w</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>andresg_22</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1847431</commentid>
    <comment_count>0</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-02 08:47:16 -0800</bug_when>
    <thetext>[WebAccessibilityObjectWrapperMac AXAttributeStringSetFont] crashes when given a font with a nil postscript name, font family, or display name. This can be triggered with CSS:

@font-face {
    font-family: &apos;Litherum&apos;;
    src: url(&quot;resources/Litherum.svg&quot;) format(svg);
}
* { font-family: &apos;Litherum&apos;; }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847433</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-02 08:47:38 -0800</bug_when>
    <thetext>&lt;rdar://problem/89690380&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847434</commentid>
    <comment_count>2</comment_count>
      <attachid>453617</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-02 08:51:25 -0800</bug_when>
    <thetext>Created attachment 453617
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847445</commentid>
    <comment_count>3</comment_count>
      <attachid>453621</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-02 09:08:31 -0800</bug_when>
    <thetext>Created attachment 453621
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847448</commentid>
    <comment_count>4</comment_count>
      <attachid>453621</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2022-03-02 09:09:46 -0800</bug_when>
    <thetext>Comment on attachment 453621
Patch

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

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:784
&gt; +        NSString *fontName = (__bridge NSString *)adoptCF(CTFontCopyPostScriptName(font)).get();

can we take this opportunity to centralize both of these methods which appear to be mostly duplicated</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847626</commentid>
    <comment_count>5</comment_count>
      <attachid>453664</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-02 14:52:28 -0800</bug_when>
    <thetext>Created attachment 453664
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847629</commentid>
    <comment_count>6</comment_count>
      <attachid>453664</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2022-03-02 15:00:10 -0800</bug_when>
    <thetext>Comment on attachment 453664
Patch

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

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm:602
&gt; +    RetainPtr&lt;CFStringRef&gt; fullName = adoptCF(CTFontCopyFullName(font));

it looks like on the Mac side we&apos;re adding a whole dictionary and on iOS side we&apos;re doing addAttribute:value for each item

Can we pick one way (like make a dictionary with the right platform keys)
and then set it one time?

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:806
&gt; +    [WebAccessibilityObjectWrapperBase applyFontToAttributedString:attrString font:style.fontCascade().primaryFont().getCTFont() range:range];

can we make this a C function instead of a class function?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847689</commentid>
    <comment_count>7</comment_count>
      <attachid>453680</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-02 17:15:26 -0800</bug_when>
    <thetext>Created attachment 453680
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847694</commentid>
    <comment_count>8</comment_count>
      <attachid>453680</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2022-03-02 17:24:48 -0800</bug_when>
    <thetext>Comment on attachment 453680
Patch

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

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.h:112
&gt; ++ (void)applyFontToAttributedString:(NSMutableAttributedString*)attributedString font:(CTFontRef)font range:(NSRange)range;

NSMutableAttributedString *

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm:585
&gt; +    return range.location &lt; [attributedString length] &amp;&amp; NSMaxRange(range) &lt;= [attributedString length];

the NSMaxRange check should be sufficient. I don&apos;t think you need the range.location check

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm:593
&gt; +    if (!font) {

we can wrap this whole block in MAC

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm:600
&gt; +    NSMutableDictionary *fontAttributes = [[NSMutableDictionary alloc] init];

we should RetainPtr this or release it. pretty sure ARC is not on</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847703</commentid>
    <comment_count>9</comment_count>
      <attachid>453685</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-02 17:46:50 -0800</bug_when>
    <thetext>Created attachment 453685
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847704</commentid>
    <comment_count>10</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-02 17:48:22 -0800</bug_when>
    <thetext>&gt; &gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm:593
&gt; &gt; +    if (!font) {
&gt; 
&gt; we can wrap this whole block in MAC
Can we? We do still need to return early if the font is null on iOS.

Fixed everything else, and made them C functions as you requested (I think it&apos;s nicer too).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847837</commentid>
    <comment_count>11</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-03-03 05:00:18 -0800</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #9)
&gt; Created attachment 453685 [details]
&gt; Patch

--- a/Source/WebCore/ChangeLog
+++ a/Source/WebCore/ChangeLog

+        Test: accessibility/svg-font-face-should-not-crash.html

Can we rename this test to just svg-font-face.html. Nothing should crash, so it is extra typing and reading with no valuable information. It is like adding accessibility to the name of accessibility tests under the accessibility dir.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847842</commentid>
    <comment_count>12</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-03-03 05:08:10 -0800</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #9)
&gt; Created attachment 453685 [details]
&gt; Patch

--- a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.h
+++ a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.h

+#import &quot;FontPlatformData.h&quot;

Can we forward declare what we need from this header and #import in the .mm instead. This helps with compile time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847844</commentid>
    <comment_count>13</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-03-03 05:10:39 -0800</bug_when>
    <thetext>(In reply to Andres Gonzalez from comment #12)
&gt; (In reply to Tyler Wilcock from comment #9)
&gt; &gt; Created attachment 453685 [details]
&gt; &gt; Patch
&gt; 
&gt; --- a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.h
&gt; +++ a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.h
&gt; 
&gt; +#import &quot;FontPlatformData.h&quot;
&gt; 
&gt; Can we forward declare what we need from this header and #import in the .mm
&gt; instead. This helps with compile time.

+void AXAttributeStringSetFont(NSMutableAttributedString*, CTFontRef, NSRange);

Shouldn&apos;t this be AXAttributedStringSetFont instead of AXAttributeStringSetFont?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847869</commentid>
    <comment_count>14</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-03-03 07:07:45 -0800</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #9)
&gt; Created attachment 453685 [details]
&gt; Patch

--- a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm
+++ a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm

+bool AXAttributedStringRangeIsValid(NSAttributedString *attributedString, NSRange range)
+{
+    return NSMaxRange(range) &lt;= [attributedString length];
+}

Do we need a function to make this check? I believe it is more readable to have the check inline where it is needed. Otherwise you would be wondering what AXAttributedStringRangeIsValid is doing?

+void AXAttributeStringSetFont(NSMutableAttributedString* attributedString, CTFontRef font, NSRange range)

Shouldn&apos;t the name be AXAttributedStringSetFont?

NSMutableAttributedString* attributedString has the * in the wrong side.

Shouldn&apos;t we pass NSRange by reference?

+    RetainPtr&lt;NSMutableDictionary&gt; fontAttributes = adoptNS([[NSMutableDictionary alloc] init]);
+    RetainPtr&lt;CFStringRef&gt; familyName = adoptCF(CTFontCopyFamilyName(font));

Do we need to retain all these local variables?

     NSNumber* size = [NSNumber numberWithFloat:CTFontGetSize(font)];

* in the wrong side.

-        [attrString addAttribute:UIAccessibilityTokenFontName value:(NSString*)fullName.get() range:range];
+        [fontAttributes setValue:(__bridge NSString*)fullName.get() forKey:UIAccessibilityTokenFontName];

Use bridge_cast instead of (__bridge NSString*).

+    CTFontSymbolicTraits traits = CTFontGetSymbolicTraits(font);

Can we use auto here?

+        [fontAttributes setValue:(__bridge NSString*)familyName.get() forKey:NSAccessibilityFontFamilyKey];

bridge_cast

+        [fontAttributes setValue:(__bridge NSString*)postScriptName.get() forKey:NSAccessibilityFontNameKey];

bridge_cast

+        [fontAttributes setValue:(__bridge NSString*)displayName.get() forKey:NSAccessibilityVisibleNameKey];

bridge_cast</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847979</commentid>
    <comment_count>15</comment_count>
      <attachid>453760</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-03 10:39:42 -0800</bug_when>
    <thetext>Created attachment 453760
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848075</commentid>
    <comment_count>16</comment_count>
      <attachid>453788</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-03 15:09:24 -0800</bug_when>
    <thetext>Created attachment 453788
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848164</commentid>
    <comment_count>17</comment_count>
      <attachid>453788</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2022-03-03 20:55:27 -0800</bug_when>
    <thetext>Comment on attachment 453788
Patch

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

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.h:61
&gt; +bool AXAttributedStringRangeIsValid(NSAttributedString*, NSRange);

* in wrong place</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848291</commentid>
    <comment_count>18</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-03-04 07:45:46 -0800</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #16)
&gt; Created attachment 453788 [details]
&gt; Patch

--- a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.h
+++ a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.h

+bool AXAttributedStringRangeIsValid(NSAttributedString*, NSRange);

if we are keeping this function, if should be:

bool AXAttributedStringRangeIsValid(NSAttributedString *, const NSRange&amp;);

or we can get rid of it altogether.

+void AXAttributedStringSetFont(NSMutableAttributedString*, CTFontRef, const NSRange&amp;);

NSMutableAttributedString* -&gt; NSMutableAttributedString *

--- a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm
+++ a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm

+bool AXAttributedStringRangeIsValid(NSAttributedString *attributedString, NSRange range)

Same as above, remove or pass NSRange by reference.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848292</commentid>
    <comment_count>19</comment_count>
      <attachid>453841</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-04 07:47:49 -0800</bug_when>
    <thetext>Created attachment 453841
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848294</commentid>
    <comment_count>20</comment_count>
      <attachid>453842</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-03-04 07:49:51 -0800</bug_when>
    <thetext>Created attachment 453842
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848467</commentid>
    <comment_count>21</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-04 18:05:06 -0800</bug_when>
    <thetext>Committed r290858 (248089@main): &lt;https://commits.webkit.org/248089@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 453842.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453617</attachid>
            <date>2022-03-02 08:51:25 -0800</date>
            <delta_ts>2022-03-02 09:08:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220302105124.patch</filename>
            <type>text/plain</type>
            <size>8852</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGVmMTA3YTYwMzBjNjkz
ODQzN2RhNTUyY2ViMmMzNTA5NmY4MTdlZC4uM2U5N2Q1ZDkzNmVkNzY5ZWRjNjkwYzc2ZDYyMjQx
ZTMxNmZhM2E4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIyLTAzLTAyICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0
cmluZ1NldEZvbnRdIGNyYXNoZXMgd2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhCisgICAgICAgIG5p
bCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5LCBvciBkaXNwbGF5IG5hbWUuIFRoaXMgY2Fu
IGJlCisgICAgICAgIHRyaWdnZXJlZCB3aXRoIGEgY3VzdG9tIFNWRyBAZm9udC1mYWNlIC0tIGZv
ciBleGFtcGxlOgorCisgICAgICAgIEBmb250LWZhY2UgeworICAgICAgICAgICAgZm9udC1mYW1p
bHk6ICdMaXRoZXJ1bSc7CisgICAgICAgICAgICBzcmM6IHVybCgicmVzb3VyY2VzL0xpdGhlcnVt
LnN2ZyIpIGZvcm1hdChzdmcpOworICAgICAgICB9CisgICAgICAgICogeyBmb250LWZhbWlseTog
J0xpdGhlcnVtJzsgfQorCisgICAgICAgIFdlIGZpeCB0aGlzIGJ5IGNoZWNraW5nIGlmIHRoZXNl
IHZhbHVlcyBhcmUgbmlsIGJlZm9yZSB0cnlpbmcgdG8gYWRkCisgICAgICAgIHRoZW0gdG8gYSBk
aWN0aW9uYXJ5LgorCisgICAgICAgIFRlc3Q6IGFjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1z
aG91bGQtbm90LWNyYXNoLmh0bWwKKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOgorICAgICAgICAoQVhBdHRyaWJ1dGVTdHJp
bmdTZXRGb250KToKKwogMjAyMi0wMi0yOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNv
bT4KIAogICAgICAgICBbQ29jb2FdIEFkb3B0IC1zdHJlYW1EYXRhUGFyc2VyOmRpZFByb3ZpZGVD
b250ZW50S2V5U3BlY2lmaWVyOmZvclRyYWNrSUQ6IGRlbGVnYXRlIGNhbGxiYWNrCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlck1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCmluZGV4IGNkOWJhYWU0M2RkNTJkZTFjYjk1
OGY5NTgwM2RmYzU4ZTM2OWY1MjMuLjBkZjE5YjNiYTgxMzVhNjIwMGMzNTA2M2RiMDgyOWM0Yjkw
MWU3YmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCkBAIC03ODEs
MTIgKzc4MSwxOSBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQoTlNNdXRh
YmxlQXR0cmlidXRlZFN0cmluZyAqYXR0clN0cmluZywgTlNTdAogICAgICAgICByZXR1cm47CiAK
ICAgICBpZiAoZm9udCkgewotICAgICAgICBOU0RpY3Rpb25hcnkgKmRpY3Rpb25hcnkgPSBAewot
ICAgICAgICAgICAgTlNBY2Nlc3NpYmlsaXR5Rm9udE5hbWVLZXk6IChfX2JyaWRnZSBOU1N0cmlu
ZyAqKWFkb3B0Q0YoQ1RGb250Q29weVBvc3RTY3JpcHROYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAg
ICAgICAgIE5TQWNjZXNzaWJpbGl0eUZvbnRGYW1pbHlLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAq
KWFkb3B0Q0YoQ1RGb250Q29weUZhbWlseU5hbWUoZm9udCkpLmdldCgpLAotICAgICAgICAgICAg
TlNBY2Nlc3NpYmlsaXR5VmlzaWJsZU5hbWVLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0
Q0YoQ1RGb250Q29weURpc3BsYXlOYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5TQWNj
ZXNzaWJpbGl0eUZvbnRTaXplS2V5OiBAKENURm9udEdldFNpemUoZm9udCkpLAotICAgICAgICB9
OworICAgICAgICBOU1N0cmluZyAqZm9udE5hbWUgPSAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9w
dENGKENURm9udENvcHlQb3N0U2NyaXB0TmFtZShmb250KSkuZ2V0KCk7CisgICAgICAgIE5TU3Ry
aW5nICpmb250RmFtaWx5ID0gKF9fYnJpZGdlIE5TU3RyaW5nICopYWRvcHRDRihDVEZvbnRDb3B5
RmFtaWx5TmFtZShmb250KSkuZ2V0KCk7CisgICAgICAgIE5TU3RyaW5nICpkaXNwbGF5TmFtZSA9
IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0Q0YoQ1RGb250Q29weURpc3BsYXlOYW1lKGZvbnQp
KS5nZXQoKTsKKworICAgICAgICBOU011dGFibGVEaWN0aW9uYXJ5ICpkaWN0aW9uYXJ5ID0gW1tO
U011dGFibGVEaWN0aW9uYXJ5IGFsbG9jXSBpbml0XTsKKyAgICAgICAgW2RpY3Rpb25hcnkgc2V0
VmFsdWU6QChDVEZvbnRHZXRTaXplKGZvbnQpKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udFNp
emVLZXldOworICAgICAgICBpZiAoZm9udE5hbWUpCisgICAgICAgICAgICBbZGljdGlvbmFyeSBz
ZXRWYWx1ZTpmb250TmFtZSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udE5hbWVLZXldOworICAg
ICAgICBpZiAoZm9udEZhbWlseSkKKyAgICAgICAgICAgIFtkaWN0aW9uYXJ5IHNldFZhbHVlOmZv
bnRGYW1pbHkgZm9yS2V5Ok5TQWNjZXNzaWJpbGl0eUZvbnRGYW1pbHlLZXldOworICAgICAgICBp
ZiAoZGlzcGxheU5hbWUpCisgICAgICAgICAgICBbZGljdGlvbmFyeSBzZXRWYWx1ZTpkaXNwbGF5
TmFtZSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5VmlzaWJsZU5hbWVLZXldOworCiAgICAgICAgIFth
dHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTphdHRyaWJ1dGUgdmFsdWU6ZGljdGlvbmFyeSByYW5nZTpy
YW5nZV07CiAgICAgfSBlbHNlCiAgICAgICAgIFthdHRyU3RyaW5nIHJlbW92ZUF0dHJpYnV0ZTph
dHRyaWJ1dGUgcmFuZ2U6cmFuZ2VdOwpAQCAtODIxLDcgKzgyOCw3IEBAIHN0YXRpYyB2b2lkIEFY
QXR0cmlidXRlU3RyaW5nU2V0TnVtYmVyKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJT
dHJpbmcsIE5TCiBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlKE5TTXV0YWJs
ZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIFJlbmRlck9iamVjdCogcmVuZGVyZXIsIE5T
UmFuZ2UgcmFuZ2UpCiB7CiAgICAgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlID0gcmVuZGVyZXIt
PnN0eWxlKCk7Ci0gICAgCisKICAgICAvLyBzZXQgYmFzaWMgZm9udCBpbmZvCiAgICAgQVhBdHRy
aWJ1dGVTdHJpbmdTZXRGb250KGF0dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0eUZvbnRUZXh0QXR0
cmlidXRlLCBzdHlsZS5mb250Q2FzY2FkZSgpLnByaW1hcnlGb250KCkuZ2V0Q1RGb250KCksIHJh
bmdlKTsKICAgICAKQEAgLTEwMjMsNyArMTAzMCw3IEBAIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRl
ZFN0cmluZ0FwcGVuZFRleHQoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0clN0cmluZywK
ICNlbmRpZgogICAgICAgICBbYXR0clN0cmluZyByZW1vdmVBdHRyaWJ1dGU6TlNBY2Nlc3NpYmls
aXR5TWlzc3BlbGxlZFRleHRBdHRyaWJ1dGUgcmFuZ2U6YXR0clN0cmluZ1JhbmdlXTsKICAgICB9
Ci0gICAgCisKICAgICAvLyBzZXQgbmV3IGF0dHJpYnV0ZXMKICAgICBBWEF0dHJpYnV0ZVN0cmlu
Z1NldFN0eWxlKGF0dHJTdHJpbmcsIHJlbmRlcmVyLCBhdHRyU3RyaW5nUmFuZ2UpOwogICAgIEFY
QXR0cmlidXRlU3RyaW5nU2V0SGVhZGluZ0xldmVsKGF0dHJTdHJpbmcsIHJlbmRlcmVyLCBhdHRy
U3RyaW5nUmFuZ2UpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDc5MTliZWEyZWNmNDFmOWEyNTVkNWU4ZDQ3N2Q1ZTQyZDEw
MDY3ZGUuLjZjYTgxYzRkNTllNDY2NGRmMWQ4NWU3YTk1NGEyMGQzYzkxMmU3YTMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNCBAQAorMjAyMi0wMy0wMiAgVHlsZXIgV2lsY29jayAgPHR5bGVyX3dAYXBwbGUu
Y29tPgorCisgICAgICAgIEFYOiBbV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMgQVhB
dHRyaWJ1dGVTdHJpbmdTZXRGb250XSBjcmFzaGVzIHdoZW4gZ2l2ZW4gYSBmb250IHdpdGggYSBu
aWwgcG9zdHNjcmlwdCBuYW1lLCBmb250IGZhbWlseSwgb3IgZGlzcGxheSBuYW1lCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzczNzMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkv
cmVzb3VyY2VzL0xpdGhlcnVtLnN2ZzogQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9z
dmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBhY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC5odG1sOiBB
ZGRlZC4KKwogMjAyMi0wMi0yOCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAg
ICAgIEhhbmRsZSB3aWRvdyByZWxheW91dCBkaWZmZXJlbnRseQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnIGIvTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzNTQ4ZTUw
ZmZhN2MwNzYyZDM3MmMzMzcyYTk4OTU4MzI1Y2QzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9MaXRoZXJ1bS5zdmcKQEAgLTAsMCArMSwx
MiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PgorPCFET0NUWVBFIHN2
ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3Jh
cGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiA+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8yMDAwL3N2ZyI+Cis8bWV0YWRhdGE+PC9tZXRhZGF0YT4KKzxkZWZzPgorPGZvbnQgaWQ9
IkxpdGhlcnVtIiBob3Jpei1hZHYteD0iMTAyNCI+Cis8Zm9udC1mYWNlIHVuaXRzLXBlci1lbT0i
MTQiIGFzY2VudD0iMTQiIGRlc2NlbnQ9IjAiLz4KKzxnbHlwaCB1bmljb2RlPSJ8IiBob3Jpei1h
ZHYteD0iMTQiIGQ9Ik0wIDB2MTRoMTR2LTE0eiIvPgorPGdseXBoIHVuaWNvZGU9Ii0iIGhvcml6
LWFkdi14PSIyNjYiIGQ9Ik0wIDB2MTRoMjY2di0xNHoiLz4KKzwvZm9udD4KKzwvZGVmcz4KKzwv
c3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNl
LXNob3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjkzMTU5ZjEyNjY4OTBiMGJkOTMyMGRiODFmNmMwOWUxNzQ2OGRiY2MKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1j
cmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorVGhpcyB0ZXN0IGVuc3VyZXMgdGhh
dCB3ZSBkb24ndCBjcmFzaCB3aGVuIGFwcGx5aW5nIGEgY3VzdG9tIFNWRyBmb250IGluIGF0dHJp
YnV0ZWQgc3RyaW5ncy5HZXR0aW5nIGF0dHJpYnV0ZWQgc3RyaW5nIGZvciByYW5nZSAoMCwgOSkK
K1BBU1M6IEF0dHJpYnV0ZWQgc3RyaW5nIGNvbnRhaW5lZCAic29tZSB3b3JkIgorUEFTUzogQXR0
cmlidXRlZCBzdHJpbmcgY29udGFpbmVkICJBWEZvbnROYW1lID0gZm9udCIKK1BBU1M6IEF0dHJp
YnV0ZWQgc3RyaW5nIGNvbnRhaW5lZCAiQVhGb250U2l6ZSA9IDExIgorUEFTUzogQXR0cmlidXRl
ZCBzdHJpbmcgY29udGFpbmVkICJBWEJhY2tncm91bmRDb2xvciIKK1BBU1M6IEF0dHJpYnV0ZWQg
c3RyaW5nIGNvbnRhaW5lZCAiQVhGb3JlZ3JvdW5kQ29sb3IiCitQQVNTOiBEaWRuJ3QgY3Jhc2gu
CisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxk
LW5vdC1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNl
LXNob3VsZC1ub3QtY3Jhc2guaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wYmRhNjVlYzQwNzQ4NTkyNGY2MDg3
ZTU5NDBjYTE4NDE0ODdhYzkwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbApAQCAtMCwwICsxLDUy
IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRt
bD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3Njcmlw
dD4KKzxzdHlsZT4KK0Bmb250LWZhY2UgeworICAgIGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOwor
ICAgIHNyYzogdXJsKCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7Cit9Cisq
IHsgZm9udC1mYW1pbHk6ICdMaXRoZXJ1bSc7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keSBv
bmxvYWQ9InJ1blRlc3QoKSI+CisKKzxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0idGV4dGZpZWxkIiB2
YWx1ZT0ic29tZSB3b3JkIj48L2lucHV0PgorCis8c2NyaXB0PgorICAgIHZhciBvdXRwdXQgPSAi
VGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB3ZSBkb24ndCBjcmFzaCB3aGVuIGFwcGx5aW5nIGEgY3Vz
dG9tIFNWRyBmb250IGluIGF0dHJpYnV0ZWQgc3RyaW5ncy4iOworCisgICAgaWYgKHdpbmRvdy5h
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcikKKyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0
cnVlOworCisgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgaWYgKHdpbmRvdy5hY2Nl
c3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICAgICAgY29uc3QgdGV4dEZpZWxkID0gYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJ0ZXh0ZmllbGQiKTsK
KyAgICAgICAgICAgIG91dHB1dCArPSBgR2V0dGluZyBhdHRyaWJ1dGVkIHN0cmluZyBmb3IgcmFu
Z2UgKDAsIDkpXG5gOworICAgICAgICAgICAgY29uc3QgYXR0cmlidXRlZFN0cmluZyA9IHRleHRG
aWVsZC5hdHRyaWJ1dGVkU3RyaW5nRm9yUmFuZ2UoMCwgOSk7CisKKyAgICAgICAgICAgIGNvbnRh
aW5zRXhwZWN0ZWQoYXR0cmlidXRlZFN0cmluZywgInNvbWUgd29yZCIpOworICAgICAgICAgICAg
Ly8gVGhlIGZvbnQgbmFtZSBmb3IgY3VzdG9tIFNWRyBmb250cyBpcyBub3QgY29uc2lzdGVudCAo
ZS5nLiBmb250MDAwMDAwMDAyN2NmZDE4MyBvbmUgcnVuLCBmb250MDAwMDAwMDA4N2RmZDBlMyB0
aGUgbmV4dCksIHNvIG9ubHkgdmVyaWZ5IHRoZSBwcmVmaXguCisgICAgICAgICAgICBjb250YWlu
c0V4cGVjdGVkKGF0dHJpYnV0ZWRTdHJpbmcsICJBWEZvbnROYW1lID0gZm9udCIpOworICAgICAg
ICAgICAgY29udGFpbnNFeHBlY3RlZChhdHRyaWJ1dGVkU3RyaW5nLCAiQVhGb250U2l6ZSA9IDEx
Iik7CisgICAgICAgICAgICBjb250YWluc0V4cGVjdGVkKGF0dHJpYnV0ZWRTdHJpbmcsICJBWEJh
Y2tncm91bmRDb2xvciIpOworICAgICAgICAgICAgY29udGFpbnNFeHBlY3RlZChhdHRyaWJ1dGVk
U3RyaW5nLCAiQVhGb3JlZ3JvdW5kQ29sb3IiKTsKKworICAgICAgICAgICAgb3V0cHV0ICs9ICJQ
QVNTOiBEaWRuJ3QgY3Jhc2guXG4iOworICAgICAgICAgICAgZGVidWcob3V0cHV0KTsKKyAgICAg
ICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9CisgICAgfQorCisgICAgZnVuY3Rpb24g
Y29udGFpbnNFeHBlY3RlZCh0YXJnZXQsIGV4cGVjdGVkKSB7CisgICAgICAgIGlmICh0YXJnZXQu
aW5jbHVkZXMoZXhwZWN0ZWQpKQorICAgICAgICAgICAgb3V0cHV0ICs9IGBQQVNTOiBBdHRyaWJ1
dGVkIHN0cmluZyBjb250YWluZWQgIiR7ZXhwZWN0ZWR9IlxuYDsKKyAgICAgICAgZWxzZSB7Cisg
ICAgICAgICAgICBvdXRwdXQgKz0gYEZBSUw6IEF0dHJpYnV0ZWQgc3RyaW5nIGRpZCBub3QgY29u
dGFpbiAiJHtleHBlY3RlZH0iXG5gOworICAgICAgICAgICAgb3V0cHV0ICs9IGBBdHRyaWJ1dGVk
IHN0cmluZyB3YXM6ICR7dGFyZ2V0fVxuYDsKKyAgICAgICAgfQorICAgIH0KKzwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453621</attachid>
            <date>2022-03-02 09:08:31 -0800</date>
            <delta_ts>2022-03-02 14:52:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220302110830.patch</filename>
            <type>text/plain</type>
            <size>10370</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGVmMTA3YTYwMzBjNjkz
ODQzN2RhNTUyY2ViMmMzNTA5NmY4MTdlZC4uM2U5N2Q1ZDkzNmVkNzY5ZWRjNjkwYzc2ZDYyMjQx
ZTMxNmZhM2E4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIyLTAzLTAyICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0
cmluZ1NldEZvbnRdIGNyYXNoZXMgd2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhCisgICAgICAgIG5p
bCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5LCBvciBkaXNwbGF5IG5hbWUuIFRoaXMgY2Fu
IGJlCisgICAgICAgIHRyaWdnZXJlZCB3aXRoIGEgY3VzdG9tIFNWRyBAZm9udC1mYWNlIC0tIGZv
ciBleGFtcGxlOgorCisgICAgICAgIEBmb250LWZhY2UgeworICAgICAgICAgICAgZm9udC1mYW1p
bHk6ICdMaXRoZXJ1bSc7CisgICAgICAgICAgICBzcmM6IHVybCgicmVzb3VyY2VzL0xpdGhlcnVt
LnN2ZyIpIGZvcm1hdChzdmcpOworICAgICAgICB9CisgICAgICAgICogeyBmb250LWZhbWlseTog
J0xpdGhlcnVtJzsgfQorCisgICAgICAgIFdlIGZpeCB0aGlzIGJ5IGNoZWNraW5nIGlmIHRoZXNl
IHZhbHVlcyBhcmUgbmlsIGJlZm9yZSB0cnlpbmcgdG8gYWRkCisgICAgICAgIHRoZW0gdG8gYSBk
aWN0aW9uYXJ5LgorCisgICAgICAgIFRlc3Q6IGFjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1z
aG91bGQtbm90LWNyYXNoLmh0bWwKKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOgorICAgICAgICAoQVhBdHRyaWJ1dGVTdHJp
bmdTZXRGb250KToKKwogMjAyMi0wMi0yOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNv
bT4KIAogICAgICAgICBbQ29jb2FdIEFkb3B0IC1zdHJlYW1EYXRhUGFyc2VyOmRpZFByb3ZpZGVD
b250ZW50S2V5U3BlY2lmaWVyOmZvclRyYWNrSUQ6IGRlbGVnYXRlIGNhbGxiYWNrCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlck1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCmluZGV4IGNkOWJhYWU0M2RkNTJkZTFjYjk1
OGY5NTgwM2RmYzU4ZTM2OWY1MjMuLjBkZjE5YjNiYTgxMzVhNjIwMGMzNTA2M2RiMDgyOWM0Yjkw
MWU3YmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCkBAIC03ODEs
MTIgKzc4MSwxOSBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQoTlNNdXRh
YmxlQXR0cmlidXRlZFN0cmluZyAqYXR0clN0cmluZywgTlNTdAogICAgICAgICByZXR1cm47CiAK
ICAgICBpZiAoZm9udCkgewotICAgICAgICBOU0RpY3Rpb25hcnkgKmRpY3Rpb25hcnkgPSBAewot
ICAgICAgICAgICAgTlNBY2Nlc3NpYmlsaXR5Rm9udE5hbWVLZXk6IChfX2JyaWRnZSBOU1N0cmlu
ZyAqKWFkb3B0Q0YoQ1RGb250Q29weVBvc3RTY3JpcHROYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAg
ICAgICAgIE5TQWNjZXNzaWJpbGl0eUZvbnRGYW1pbHlLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAq
KWFkb3B0Q0YoQ1RGb250Q29weUZhbWlseU5hbWUoZm9udCkpLmdldCgpLAotICAgICAgICAgICAg
TlNBY2Nlc3NpYmlsaXR5VmlzaWJsZU5hbWVLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0
Q0YoQ1RGb250Q29weURpc3BsYXlOYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5TQWNj
ZXNzaWJpbGl0eUZvbnRTaXplS2V5OiBAKENURm9udEdldFNpemUoZm9udCkpLAotICAgICAgICB9
OworICAgICAgICBOU1N0cmluZyAqZm9udE5hbWUgPSAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9w
dENGKENURm9udENvcHlQb3N0U2NyaXB0TmFtZShmb250KSkuZ2V0KCk7CisgICAgICAgIE5TU3Ry
aW5nICpmb250RmFtaWx5ID0gKF9fYnJpZGdlIE5TU3RyaW5nICopYWRvcHRDRihDVEZvbnRDb3B5
RmFtaWx5TmFtZShmb250KSkuZ2V0KCk7CisgICAgICAgIE5TU3RyaW5nICpkaXNwbGF5TmFtZSA9
IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0Q0YoQ1RGb250Q29weURpc3BsYXlOYW1lKGZvbnQp
KS5nZXQoKTsKKworICAgICAgICBOU011dGFibGVEaWN0aW9uYXJ5ICpkaWN0aW9uYXJ5ID0gW1tO
U011dGFibGVEaWN0aW9uYXJ5IGFsbG9jXSBpbml0XTsKKyAgICAgICAgW2RpY3Rpb25hcnkgc2V0
VmFsdWU6QChDVEZvbnRHZXRTaXplKGZvbnQpKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udFNp
emVLZXldOworICAgICAgICBpZiAoZm9udE5hbWUpCisgICAgICAgICAgICBbZGljdGlvbmFyeSBz
ZXRWYWx1ZTpmb250TmFtZSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udE5hbWVLZXldOworICAg
ICAgICBpZiAoZm9udEZhbWlseSkKKyAgICAgICAgICAgIFtkaWN0aW9uYXJ5IHNldFZhbHVlOmZv
bnRGYW1pbHkgZm9yS2V5Ok5TQWNjZXNzaWJpbGl0eUZvbnRGYW1pbHlLZXldOworICAgICAgICBp
ZiAoZGlzcGxheU5hbWUpCisgICAgICAgICAgICBbZGljdGlvbmFyeSBzZXRWYWx1ZTpkaXNwbGF5
TmFtZSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5VmlzaWJsZU5hbWVLZXldOworCiAgICAgICAgIFth
dHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTphdHRyaWJ1dGUgdmFsdWU6ZGljdGlvbmFyeSByYW5nZTpy
YW5nZV07CiAgICAgfSBlbHNlCiAgICAgICAgIFthdHRyU3RyaW5nIHJlbW92ZUF0dHJpYnV0ZTph
dHRyaWJ1dGUgcmFuZ2U6cmFuZ2VdOwpAQCAtODIxLDcgKzgyOCw3IEBAIHN0YXRpYyB2b2lkIEFY
QXR0cmlidXRlU3RyaW5nU2V0TnVtYmVyKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJT
dHJpbmcsIE5TCiBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlKE5TTXV0YWJs
ZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIFJlbmRlck9iamVjdCogcmVuZGVyZXIsIE5T
UmFuZ2UgcmFuZ2UpCiB7CiAgICAgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlID0gcmVuZGVyZXIt
PnN0eWxlKCk7Ci0gICAgCisKICAgICAvLyBzZXQgYmFzaWMgZm9udCBpbmZvCiAgICAgQVhBdHRy
aWJ1dGVTdHJpbmdTZXRGb250KGF0dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0eUZvbnRUZXh0QXR0
cmlidXRlLCBzdHlsZS5mb250Q2FzY2FkZSgpLnByaW1hcnlGb250KCkuZ2V0Q1RGb250KCksIHJh
bmdlKTsKICAgICAKQEAgLTEwMjMsNyArMTAzMCw3IEBAIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRl
ZFN0cmluZ0FwcGVuZFRleHQoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0clN0cmluZywK
ICNlbmRpZgogICAgICAgICBbYXR0clN0cmluZyByZW1vdmVBdHRyaWJ1dGU6TlNBY2Nlc3NpYmls
aXR5TWlzc3BlbGxlZFRleHRBdHRyaWJ1dGUgcmFuZ2U6YXR0clN0cmluZ1JhbmdlXTsKICAgICB9
Ci0gICAgCisKICAgICAvLyBzZXQgbmV3IGF0dHJpYnV0ZXMKICAgICBBWEF0dHJpYnV0ZVN0cmlu
Z1NldFN0eWxlKGF0dHJTdHJpbmcsIHJlbmRlcmVyLCBhdHRyU3RyaW5nUmFuZ2UpOwogICAgIEFY
QXR0cmlidXRlU3RyaW5nU2V0SGVhZGluZ0xldmVsKGF0dHJTdHJpbmcsIHJlbmRlcmVyLCBhdHRy
U3RyaW5nUmFuZ2UpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDc5MTliZWEyZWNmNDFmOWEyNTVkNWU4ZDQ3N2Q1ZTQyZDEw
MDY3ZGUuLjZjYTgxYzRkNTllNDY2NGRmMWQ4NWU3YTk1NGEyMGQzYzkxMmU3YTMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNCBAQAorMjAyMi0wMy0wMiAgVHlsZXIgV2lsY29jayAgPHR5bGVyX3dAYXBwbGUu
Y29tPgorCisgICAgICAgIEFYOiBbV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMgQVhB
dHRyaWJ1dGVTdHJpbmdTZXRGb250XSBjcmFzaGVzIHdoZW4gZ2l2ZW4gYSBmb250IHdpdGggYSBu
aWwgcG9zdHNjcmlwdCBuYW1lLCBmb250IGZhbWlseSwgb3IgZGlzcGxheSBuYW1lCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzczNzMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkv
cmVzb3VyY2VzL0xpdGhlcnVtLnN2ZzogQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9z
dmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBhY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC5odG1sOiBB
ZGRlZC4KKwogMjAyMi0wMi0yOCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAg
ICAgIEhhbmRsZSB3aWRvdyByZWxheW91dCBkaWZmZXJlbnRseQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnIGIvTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzNTQ4ZTUw
ZmZhN2MwNzYyZDM3MmMzMzcyYTk4OTU4MzI1Y2QzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9MaXRoZXJ1bS5zdmcKQEAgLTAsMCArMSwx
MiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PgorPCFET0NUWVBFIHN2
ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3Jh
cGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiA+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8yMDAwL3N2ZyI+Cis8bWV0YWRhdGE+PC9tZXRhZGF0YT4KKzxkZWZzPgorPGZvbnQgaWQ9
IkxpdGhlcnVtIiBob3Jpei1hZHYteD0iMTAyNCI+Cis8Zm9udC1mYWNlIHVuaXRzLXBlci1lbT0i
MTQiIGFzY2VudD0iMTQiIGRlc2NlbnQ9IjAiLz4KKzxnbHlwaCB1bmljb2RlPSJ8IiBob3Jpei1h
ZHYteD0iMTQiIGQ9Ik0wIDB2MTRoMTR2LTE0eiIvPgorPGdseXBoIHVuaWNvZGU9Ii0iIGhvcml6
LWFkdi14PSIyNjYiIGQ9Ik0wIDB2MTRoMjY2di0xNHoiLz4KKzwvZm9udD4KKzwvZGVmcz4KKzwv
c3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNl
LXNob3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjkzMTU5ZjEyNjY4OTBiMGJkOTMyMGRiODFmNmMwOWUxNzQ2OGRiY2MKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1j
cmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorVGhpcyB0ZXN0IGVuc3VyZXMgdGhh
dCB3ZSBkb24ndCBjcmFzaCB3aGVuIGFwcGx5aW5nIGEgY3VzdG9tIFNWRyBmb250IGluIGF0dHJp
YnV0ZWQgc3RyaW5ncy5HZXR0aW5nIGF0dHJpYnV0ZWQgc3RyaW5nIGZvciByYW5nZSAoMCwgOSkK
K1BBU1M6IEF0dHJpYnV0ZWQgc3RyaW5nIGNvbnRhaW5lZCAic29tZSB3b3JkIgorUEFTUzogQXR0
cmlidXRlZCBzdHJpbmcgY29udGFpbmVkICJBWEZvbnROYW1lID0gZm9udCIKK1BBU1M6IEF0dHJp
YnV0ZWQgc3RyaW5nIGNvbnRhaW5lZCAiQVhGb250U2l6ZSA9IDExIgorUEFTUzogQXR0cmlidXRl
ZCBzdHJpbmcgY29udGFpbmVkICJBWEJhY2tncm91bmRDb2xvciIKK1BBU1M6IEF0dHJpYnV0ZWQg
c3RyaW5nIGNvbnRhaW5lZCAiQVhGb3JlZ3JvdW5kQ29sb3IiCitQQVNTOiBEaWRuJ3QgY3Jhc2gu
CisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxk
LW5vdC1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNl
LXNob3VsZC1ub3QtY3Jhc2guaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wYmRhNjVlYzQwNzQ4NTkyNGY2MDg3
ZTU5NDBjYTE4NDE0ODdhYzkwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbApAQCAtMCwwICsxLDUy
IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRt
bD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3Njcmlw
dD4KKzxzdHlsZT4KK0Bmb250LWZhY2UgeworICAgIGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOwor
ICAgIHNyYzogdXJsKCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7Cit9Cisq
IHsgZm9udC1mYW1pbHk6ICdMaXRoZXJ1bSc7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keSBv
bmxvYWQ9InJ1blRlc3QoKSI+CisKKzxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0idGV4dGZpZWxkIiB2
YWx1ZT0ic29tZSB3b3JkIj48L2lucHV0PgorCis8c2NyaXB0PgorICAgIHZhciBvdXRwdXQgPSAi
VGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB3ZSBkb24ndCBjcmFzaCB3aGVuIGFwcGx5aW5nIGEgY3Vz
dG9tIFNWRyBmb250IGluIGF0dHJpYnV0ZWQgc3RyaW5ncy4iOworCisgICAgaWYgKHdpbmRvdy5h
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcikKKyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0
cnVlOworCisgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgaWYgKHdpbmRvdy5hY2Nl
c3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICAgICAgY29uc3QgdGV4dEZpZWxkID0gYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJ0ZXh0ZmllbGQiKTsK
KyAgICAgICAgICAgIG91dHB1dCArPSBgR2V0dGluZyBhdHRyaWJ1dGVkIHN0cmluZyBmb3IgcmFu
Z2UgKDAsIDkpXG5gOworICAgICAgICAgICAgY29uc3QgYXR0cmlidXRlZFN0cmluZyA9IHRleHRG
aWVsZC5hdHRyaWJ1dGVkU3RyaW5nRm9yUmFuZ2UoMCwgOSk7CisKKyAgICAgICAgICAgIGNvbnRh
aW5zRXhwZWN0ZWQoYXR0cmlidXRlZFN0cmluZywgInNvbWUgd29yZCIpOworICAgICAgICAgICAg
Ly8gVGhlIGZvbnQgbmFtZSBmb3IgY3VzdG9tIFNWRyBmb250cyBpcyBub3QgY29uc2lzdGVudCAo
ZS5nLiBmb250MDAwMDAwMDAyN2NmZDE4MyBvbmUgcnVuLCBmb250MDAwMDAwMDA4N2RmZDBlMyB0
aGUgbmV4dCksIHNvIG9ubHkgdmVyaWZ5IHRoZSBwcmVmaXguCisgICAgICAgICAgICBjb250YWlu
c0V4cGVjdGVkKGF0dHJpYnV0ZWRTdHJpbmcsICJBWEZvbnROYW1lID0gZm9udCIpOworICAgICAg
ICAgICAgY29udGFpbnNFeHBlY3RlZChhdHRyaWJ1dGVkU3RyaW5nLCAiQVhGb250U2l6ZSA9IDEx
Iik7CisgICAgICAgICAgICBjb250YWluc0V4cGVjdGVkKGF0dHJpYnV0ZWRTdHJpbmcsICJBWEJh
Y2tncm91bmRDb2xvciIpOworICAgICAgICAgICAgY29udGFpbnNFeHBlY3RlZChhdHRyaWJ1dGVk
U3RyaW5nLCAiQVhGb3JlZ3JvdW5kQ29sb3IiKTsKKworICAgICAgICAgICAgb3V0cHV0ICs9ICJQ
QVNTOiBEaWRuJ3QgY3Jhc2guXG4iOworICAgICAgICAgICAgZGVidWcob3V0cHV0KTsKKyAgICAg
ICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9CisgICAgfQorCisgICAgZnVuY3Rpb24g
Y29udGFpbnNFeHBlY3RlZCh0YXJnZXQsIGV4cGVjdGVkKSB7CisgICAgICAgIGlmICh0YXJnZXQu
aW5jbHVkZXMoZXhwZWN0ZWQpKQorICAgICAgICAgICAgb3V0cHV0ICs9IGBQQVNTOiBBdHRyaWJ1
dGVkIHN0cmluZyBjb250YWluZWQgIiR7ZXhwZWN0ZWR9IlxuYDsKKyAgICAgICAgZWxzZSB7Cisg
ICAgICAgICAgICBvdXRwdXQgKz0gYEZBSUw6IEF0dHJpYnV0ZWQgc3RyaW5nIGRpZCBub3QgY29u
dGFpbiAiJHtleHBlY3RlZH0iXG5gOworICAgICAgICAgICAgb3V0cHV0ICs9IGBBdHRyaWJ1dGVk
IHN0cmluZyB3YXM6ICR7dGFyZ2V0fVxuYDsKKyAgICAgICAgfQorICAgIH0KKzwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rl
c3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9u
cwppbmRleCA3ZWMzNDUxNGJmZDQ2MTg3N2VhMzFhZDY1N2NiZmQ5MWNkNzk1MGUxLi4xNGFiMjI3
NjA0MzkwYTYwY2ExNTdjYmFjMzgxMmYzYTQ1NTFlMjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9pb3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjEwNCw2ICsyMTA0LDcgQEAgYWNjZXNzaWJpbGl0
eS9keW5hbWljYWxseS1jaGFuZ2luZy1pZnJhbWUtcmVtYWlucy1hY2Nlc3NpYmxlLmh0bWwgWyBQ
YXNzIF0KIAogYWNjZXNzaWJpbGl0eS9zZWxlY3RlZC1zdGF0ZS1jaGFuZ2VkLW5vdGlmaWNhdGlv
bnMuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRl
eHQuaHRtbCBbIFBhc3MgXQorYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3Qt
Y3Jhc2guaHRtbCBbIFBhc3MgXQogCiAjIEVuYWJsZSAiYXR0YWNobWVudCBlbGVtZW50IiB0ZXN0
IGZvciBpT1MKIGFjY2Vzc2liaWxpdHkvYXR0YWNobWVudC1lbGVtZW50Lmh0bWwgWyBQYXNzIF0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMTQyZGU1MjUx
ODc3Y2UzN2JlMDc0NTllOWZkNjQ4ZTA0OTViMGViMy4uZTQwMjZhZGM2ZDQ0ODc0ZDFkNTI0YjQ5
OTJkNmIwMmRmZmE1ODA3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTQ5MjIsNyArNDkyMiwxMCBAQCB3ZWJraXQub3JnL2IvMjI5MzAwIGh0dHAvdGVz
dHMvc2VjdXJpdHkvbm8tamF2YXNjcmlwdC1yZWZyZXNoLXNwYWNlcy5weSBbIFBhc3MgQwogYWNj
ZXNzaWJpbGl0eS9zZWxlY3RlZC1zdGF0ZS1jaGFuZ2VkLW5vdGlmaWNhdGlvbnMuaHRtbCBbIFNr
aXAgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQuaHRtbCBbIFNr
aXAgXQogYWNjZXNzaWJpbGl0eS9kaWFsb2ctcHJvcGVydGllcy5odG1sIFsgU2tpcCBdCisKKyMg
TWlzc2luZyBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjphdHRyaWJ1dGVkU3RyaW5nRm9yUmFuZ2Ug
aW1wbGVtZW50YXRpb24KIGFjY2Vzc2liaWxpdHkvbmF0aXZlLXRleHQtY29udHJvbC1hdHRyaWJ1
dGVkLXN0cmluZy5odG1sIFsgU2tpcCBdCithY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hv
dWxkLW5vdC1jcmFzaC5odG1sIFsgU2tpcCBdCiAKIHdlYmtpdC5vcmcvYi8yMjkyNDcgaHR0cC90
ZXN0cy9mZXRjaC9rZWVwYWxpdmUtZmV0Y2gtMi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453664</attachid>
            <date>2022-03-02 14:52:28 -0800</date>
            <delta_ts>2022-03-02 17:15:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220302165226.patch</filename>
            <type>text/plain</type>
            <size>23398</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGVmMTA3YTYwMzBjNjkz
ODQzN2RhNTUyY2ViMmMzNTA5NmY4MTdlZC4uYzAxZDYzNmQ5ODM2YmU3NDU1ZjE2OTc1NTU1OGE4
M2RiZGJmMzllNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIyLTAzLTAyICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0
cmluZ1NldEZvbnRdIGNyYXNoZXMgd2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhCisgICAgICAgIG5p
bCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5LCBvciBkaXNwbGF5IG5hbWUuIFRoaXMgY2Fu
IGJlCisgICAgICAgIHRyaWdnZXJlZCB3aXRoIGEgY3VzdG9tIFNWRyBAZm9udC1mYWNlIC0tIGZv
ciBleGFtcGxlOgorCisgICAgICAgIEBmb250LWZhY2UgeworICAgICAgICAgICAgZm9udC1mYW1p
bHk6ICdMaXRoZXJ1bSc7CisgICAgICAgICAgICBzcmM6IHVybCgicmVzb3VyY2VzL0xpdGhlcnVt
LnN2ZyIpIGZvcm1hdChzdmcpOworICAgICAgICB9CisgICAgICAgICogeyBmb250LWZhbWlseTog
J0xpdGhlcnVtJzsgfQorCisgICAgICAgIFdlIGZpeCB0aGlzIGJ5IGNoZWNraW5nIGlmIHRoZXNl
IHZhbHVlcyBhcmUgbmlsIGJlZm9yZSB0cnlpbmcgdG8gYWRkCisgICAgICAgIHRoZW0gdG8gYSBk
aWN0aW9uYXJ5LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyBjZW50cmFsaXplcyBhcHBsaWNh
dGlvbiBvZiBmb250cyB0byBhdHRyaWJ1dGVkIHN0cmluZ3MKKyAgICAgICAgaW4gdGhlIGJhc2Ug
d3JhcHBlciB3aXRoIG5ldyBmdW5jdGlvbiBhcHBseUZvbnRUb0F0dHJpYnV0ZWRTdHJpbmcuIElu
IGRvaW5nIHNvLAorICAgICAgICB3ZSBmaXggYSBidWcgd2hlcmUgaWYgW1dlYkFjY2Vzc2liaWxp
dHlPYmplY3RXcmFwcGVyQmFzZSBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlXSB3YXMKKyAgICAg
ICAgY2FsbGVkIGZyb20gYSBNYWMtY29udGV4dCwgaXQgc2V0IGlPUyBmb250IHByb3BlcnRpZXMg
KGUuZy4KKyAgICAgICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IGluc3RlYWQgb2Yg
TlNBY2Nlc3NpYmlsaXR5Rm9udEZhbWlseUtleSkuCisKKyAgICAgICAgVGVzdDogYWNjZXNzaWJp
bGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbAorCisgICAgICAgICogYWNj
ZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmg6CisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNl
Lm1tOgorICAgICAgICAoK1tXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UgYXR0cmli
dXRlZFN0cmluZ1JhbmdlSXNWYWxpZDpyYW5nZTpdKToKKyAgICAgICAgQWRkZWQgYXMgYSBjbGFz
cyBmdW5jdGlvbiBpbiB0aGUgYmFzZSB3cmFwcGVyIHNvIHRoZSBsb2dpYyBjYW4gYmUgc2hhcmVk
IGFjcm9zcyBhbGwgd3JhcHBlcnMuCisgICAgICAgICgrW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RX
cmFwcGVyQmFzZSBhcHBseUZvbnRUb0F0dHJpYnV0ZWRTdHJpbmc6Zm9udDpyYW5nZTpdKToKKyAg
ICAgICAgQWRkZWQuCisgICAgICAgIChBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlKToKKyAgICAg
ICAgKEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udCk6CisgICAgICAgIERlbGV0ZWQgaW4gZmF2b3Ig
b2YgbmV3IGFwcGx5Rm9udFRvQXR0cmlidXRlZFN0cmluZyBmdW5jdGlvbi4KKyAgICAgICAgKiBh
Y2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbToKKyAg
ICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6CisgICAgICAgIENhbGwgbmV3
IGF0dHJpYnV0ZWRTdHJpbmdSYW5nZUlzVmFsaWQgZnVuY3Rpb24uCisgICAgICAgIChBWEF0dHJp
YnV0ZVN0cmluZ1NldFN0eWxlKToKKyAgICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ0FwcGVuZFRl
eHQpOgorICAgICAgICAoQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KToKKyAgICAgICAgRGVsZXRl
ZCBpbiBmYXZvciBvZiBuZXcgYXBwbHlGb250VG9BdHRyaWJ1dGVkU3RyaW5nIGZ1bmN0aW9uLgor
CiAyMDIyLTAyLTI4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAg
IFtDb2NvYV0gQWRvcHQgLXN0cmVhbURhdGFQYXJzZXI6ZGlkUHJvdmlkZUNvbnRlbnRLZXlTcGVj
aWZpZXI6Zm9yVHJhY2tJRDogZGVsZWdhdGUgY2FsbGJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFz
ZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXJCYXNlLmgKaW5kZXggYWMyYmRiZmUyYWM1ODk2NTYwZTYwOTYwNGM3Njk4MzZh
Mjg0MjRhZC4uYWRmMGViMGUzMjNkMGU3YmZlZjFlM2VmYmU2MTNhOTFhZmI2Nzg4ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXJCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMv
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmgKQEAgLTI3LDYgKzI3LDcgQEAKICAq
LwogCiAjaW1wb3J0ICJBY2Nlc3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmgiCisjaW1wb3J0ICJG
b250UGxhdGZvcm1EYXRhLmgiCiAjaW1wb3J0IDxDb3JlR3JhcGhpY3MvQ29yZUdyYXBoaWNzLmg+
CiAjaW1wb3J0IDx2YXJpYW50PgogI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgpAQCAtMTA4LDYgKzEw
OSw5IEBAIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IFVJQWNjZXNzaWJpbGl0eVRleHR1YWxDb250
ZXh0U291cmNlQ29kZSA9IEAiVUlBY2Nlc3NpYmlsCiAtIChDR1JlY3QpY29udmVydFJlY3RUb1Nw
YWNlOihjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKXJlY3Qgc3BhY2U6KFdlYkNvcmU6OkFjY2Vz
c2liaWxpdHlDb252ZXJzaW9uU3BhY2Upc3BhY2U7CiAtIChOU0FycmF5ICopY29udGVudEZvclNp
bXBsZVJhbmdlOihjb25zdCBXZWJDb3JlOjpTaW1wbGVSYW5nZSYpcmFuZ2UgYXR0cmlidXRlZDoo
Qk9PTClhdHRyaWJ1dGVkOwogCisrICh2b2lkKWFwcGx5Rm9udFRvQXR0cmlidXRlZFN0cmluZzoo
TlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyopYXR0cmlidXRlZFN0cmluZyBmb250OihDVEZvbnRS
ZWYpZm9udCByYW5nZTooTlNSYW5nZSlyYW5nZTsKKysgKEJPT0wpYXR0cmlidXRlZFN0cmluZ1Jh
bmdlSXNWYWxpZDooTlNBdHRyaWJ1dGVkU3RyaW5nICopYXR0cmlidXRlZFN0cmluZyByYW5nZToo
TlNSYW5nZSlyYW5nZTsKKwogLy8gTWF0aCByZWxhdGVkIGZ1bmN0aW9ucwogLSAoTlNBcnJheSAq
KWFjY2Vzc2liaWxpdHlNYXRoUG9zdHNjcmlwdFBhaXJzOwogLSAoTlNBcnJheSAqKWFjY2Vzc2li
aWxpdHlNYXRoUHJlc2NyaXB0UGFpcnM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBl
ckJhc2UubW0KaW5kZXggYWE2NmYzZjVmMzk5ZDZmNTdkYjRjYTQ3ODg1M2E1NjUzZGViZTQ1NS4u
MDFjZDQwNjA4NjY3OTdlODIwM2QyODdiOTUzM2FiNTQzOTQwMmE1YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBw
ZXJCYXNlLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vz
c2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbQpAQCAtNTc4LDI3ICs1NzgsNTcgQEAgc3RhdGlj
IHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRIZWFkaW5nTGV2ZWwoTlNNdXRhYmxlQXR0cmlidXRl
ZFN0cmluZyogYXR0clN0cmkKICAgICAgICAgW2F0dHJTdHJpbmcgcmVtb3ZlQXR0cmlidXRlOlVJ
QWNjZXNzaWJpbGl0eVRva2VuSGVhZGluZ0xldmVsIHJhbmdlOnJhbmdlXTsKIH0KIAotc3RhdGlj
IHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcq
IGF0dHJTdHJpbmcsIENURm9udFJlZiBmb250LCBOU1JhbmdlIHJhbmdlKQorLy8gV2hlbiBtb2Rp
ZnlpbmcgYXR0cmlidXRlZCBzdHJpbmdzLCB0aGUgcmFuZ2UgY2FuIGNvbWUgZnJvbSBhIHNvdXJj
ZSB3aGljaCBtYXkgcHJvdmlkZSBmYXVsdHkgaW5mb3JtYXRpb24gKGUuZy4gdGhlIHNwZWxsIGNo
ZWNrZXIpLgorLy8gVG8gcHJvdGVjdCBhZ2FpbnN0IHN1Y2ggY2FzZXMgdGhlIHJhbmdlIHNob3Vs
ZCBiZSB2YWxpZGF0ZWQgYmVmb3JlIGFkZGluZyBvciByZW1vdmluZyBhdHRyaWJ1dGVzLgorKyAo
Qk9PTClhdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkOihOU0F0dHJpYnV0ZWRTdHJpbmcgKilh
dHRyaWJ1dGVkU3RyaW5nIHJhbmdlOihOU1JhbmdlKXJhbmdlCiB7Ci0gICAgaWYgKCFmb250KQor
ICAgIHJldHVybiByYW5nZS5sb2NhdGlvbiA8IFthdHRyaWJ1dGVkU3RyaW5nIGxlbmd0aF0gJiYg
TlNNYXhSYW5nZShyYW5nZSkgPD0gW2F0dHJpYnV0ZWRTdHJpbmcgbGVuZ3RoXTsKK30KKworKyAo
dm9pZClhcHBseUZvbnRUb0F0dHJpYnV0ZWRTdHJpbmc6KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJp
bmcqKWF0dHJpYnV0ZWRTdHJpbmcgZm9udDooQ1RGb250UmVmKWZvbnQgcmFuZ2U6KE5TUmFuZ2Up
cmFuZ2UKK3sKKyAgICBpZiAoIVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UgYXR0
cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZDphdHRyaWJ1dGVkU3RyaW5nIHJhbmdlOnJhbmdlXSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBmdWxsTmFtZSA9
IGFkb3B0Q0YoQ1RGb250Q29weUZ1bGxOYW1lKGZvbnQpKTsKLSAgICBSZXRhaW5QdHI8Q0ZTdHJp
bmdSZWY+IGZhbWlseU5hbWUgPSBhZG9wdENGKENURm9udENvcHlGYW1pbHlOYW1lKGZvbnQpKTsK
KyAgICBpZiAoIWZvbnQpIHsKKyNpZiBQTEFURk9STShNQUMpCisgICAgICAgIFthdHRyaWJ1dGVk
U3RyaW5nIHJlbW92ZUF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlGb250VGV4dEF0dHJpYnV0ZSBy
YW5nZTpyYW5nZV07CisjZW5kaWYKKyAgICAgICAgcmV0dXJuOworICAgIH0KIAotICAgIE5TTnVt
YmVyKiBzaXplID0gW05TTnVtYmVyIG51bWJlcldpdGhGbG9hdDpDVEZvbnRHZXRTaXplKGZvbnQp
XTsKLSAgICBDVEZvbnRTeW1ib2xpY1RyYWl0cyB0cmFpdHMgPSBDVEZvbnRHZXRTeW1ib2xpY1Ry
YWl0cyhmb250KTsKLSAgICBOU051bWJlciogYm9sZCA9IFtOU051bWJlciBudW1iZXJXaXRoQm9v
bDoodHJhaXRzICYga0NURm9udFRyYWl0Qm9sZCldOworICAgIFJldGFpblB0cjxDRlN0cmluZ1Jl
Zj4gZmFtaWx5TmFtZSA9IGFkb3B0Q0YoQ1RGb250Q29weUZhbWlseU5hbWUoZm9udCkpOworI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBmdWxsTmFt
ZSA9IGFkb3B0Q0YoQ1RGb250Q29weUZ1bGxOYW1lKGZvbnQpKTsKICAgICBpZiAoZnVsbE5hbWUp
Ci0gICAgICAgIFthdHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkZv
bnROYW1lIHZhbHVlOihOU1N0cmluZyopZnVsbE5hbWUuZ2V0KCkgcmFuZ2U6cmFuZ2VdOworICAg
ICAgICBbYXR0cmlidXRlZFN0cmluZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5G
b250TmFtZSB2YWx1ZTooX19icmlkZ2UgTlNTdHJpbmcqKWZ1bGxOYW1lLmdldCgpIHJhbmdlOnJh
bmdlXTsKICAgICBpZiAoZmFtaWx5TmFtZSkKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0cmli
dXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSB2YWx1ZTooTlNTdHJpbmcqKWZhbWls
eU5hbWUuZ2V0KCkgcmFuZ2U6cmFuZ2VdOworICAgICAgICBbYXR0cmlidXRlZFN0cmluZyBhZGRB
dHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IHZhbHVlOihfX2JyaWRnZSBO
U1N0cmluZyopZmFtaWx5TmFtZS5nZXQoKSByYW5nZTpyYW5nZV07CisgICAgTlNOdW1iZXIqIHNp
emUgPSBbTlNOdW1iZXIgbnVtYmVyV2l0aEZsb2F0OkNURm9udEdldFNpemUoZm9udCldOwogICAg
IGlmIChbc2l6ZSBib29sVmFsdWVdKQotICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6
VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSB2YWx1ZTpzaXplIHJhbmdlOnJhbmdlXTsKLSAg
ICBpZiAoW2JvbGQgYm9vbFZhbHVlXSB8fCAodHJhaXRzICYga0NURm9udFRyYWl0Qm9sZCkpCi0g
ICAgICAgIFthdHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkJvbGQg
dmFsdWU6QFlFUyByYW5nZTpyYW5nZV07CisgICAgICAgIFthdHRyaWJ1dGVkU3RyaW5nIGFkZEF0
dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplIHZhbHVlOnNpemUgcmFuZ2U6cmFu
Z2VdOworICAgIENURm9udFN5bWJvbGljVHJhaXRzIHRyYWl0cyA9IENURm9udEdldFN5bWJvbGlj
VHJhaXRzKGZvbnQpOworICAgIGlmICh0cmFpdHMgJiBrQ1RGb250VHJhaXRCb2xkKQorICAgICAg
ICBbYXR0cmlidXRlZFN0cmluZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Cb2xk
IHZhbHVlOkBZRVMgcmFuZ2U6cmFuZ2VdOwogICAgIGlmICh0cmFpdHMgJiBrQ1RGb250VHJhaXRJ
dGFsaWMpCi0gICAgICAgIFthdHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlU
b2tlbkl0YWxpYyB2YWx1ZTpAWUVTIHJhbmdlOnJhbmdlXTsKKyAgICAgICAgW2F0dHJpYnV0ZWRT
dHJpbmcgYWRkQXR0cmlidXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuSXRhbGljIHZhbHVlOkBZRVMg
cmFuZ2U6cmFuZ2VdOworI2VuZGlmCisKKyNpZiBQTEFURk9STShNQUMpCisgICAgTlNNdXRhYmxl
RGljdGlvbmFyeSAqZGljdGlvbmFyeSA9IFtbTlNNdXRhYmxlRGljdGlvbmFyeSBhbGxvY10gaW5p
dF07CisgICAgW2RpY3Rpb25hcnkgc2V0VmFsdWU6QChDVEZvbnRHZXRTaXplKGZvbnQpKSBmb3JL
ZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udFNpemVLZXldOworCisgICAgaWYgKGZhbWlseU5hbWUpCisg
ICAgICAgIFtkaWN0aW9uYXJ5IHNldFZhbHVlOihfX2JyaWRnZSBOU1N0cmluZyopZmFtaWx5TmFt
ZS5nZXQoKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udEZhbWlseUtleV07CisgICAgUmV0YWlu
UHRyPENGU3RyaW5nUmVmPiBwb3N0U2NyaXB0TmFtZSA9IGFkb3B0Q0YoQ1RGb250Q29weVBvc3RT
Y3JpcHROYW1lKGZvbnQpKTsKKyAgICBpZiAocG9zdFNjcmlwdE5hbWUpCisgICAgICAgIFtkaWN0
aW9uYXJ5IHNldFZhbHVlOihfX2JyaWRnZSBOU1N0cmluZyopcG9zdFNjcmlwdE5hbWUuZ2V0KCkg
Zm9yS2V5Ok5TQWNjZXNzaWJpbGl0eUZvbnROYW1lS2V5XTsKKyAgICBSZXRhaW5QdHI8Q0ZTdHJp
bmdSZWY+IGRpc3BsYXlOYW1lID0gYWRvcHRDRihDVEZvbnRDb3B5RGlzcGxheU5hbWUoZm9udCkp
OworICAgIGlmIChkaXNwbGF5TmFtZSkKKyAgICAgICAgW2RpY3Rpb25hcnkgc2V0VmFsdWU6KF9f
YnJpZGdlIE5TU3RyaW5nKilkaXNwbGF5TmFtZS5nZXQoKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5
VmlzaWJsZU5hbWVLZXldOworCisgICAgW2F0dHJpYnV0ZWRTdHJpbmcgYWRkQXR0cmlidXRlOk5T
QWNjZXNzaWJpbGl0eUZvbnRUZXh0QXR0cmlidXRlIHZhbHVlOmRpY3Rpb25hcnkgcmFuZ2U6cmFu
Z2VdOworI2VuZGlmCiB9CiAKIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0TnVtYmVy
KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIE5TU3RyaW5nKiBhdHRyaWJ1
dGUsIE5TTnVtYmVyKiBudW1iZXIsIE5TUmFuZ2UgcmFuZ2UpCkBAIC02MTQsNyArNjQ0LDcgQEAg
c3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZShOU011dGFibGVBdHRyaWJ1dGVk
U3RyaW5nKiBhdHRyU3RyaW5nLCBSZW4KICAgICBhdXRvJiBzdHlsZSA9IHJlbmRlcmVyLT5zdHls
ZSgpOwogCiAgICAgLy8gc2V0IGJhc2ljIGZvbnQgaW5mbwotICAgIEFYQXR0cmlidXRlU3RyaW5n
U2V0Rm9udChhdHRyU3RyaW5nLCBzdHlsZS5mb250Q2FzY2FkZSgpLnByaW1hcnlGb250KCkuZ2V0
Q1RGb250KCksIHJhbmdlKTsKKyAgICBbV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNl
IGFwcGx5Rm9udFRvQXR0cmlidXRlZFN0cmluZzphdHRyU3RyaW5nIGZvbnQ6c3R5bGUuZm9udENh
c2NhZGUoKS5wcmltYXJ5Rm9udCgpLmdldENURm9udCgpIHJhbmdlOnJhbmdlXTsKIAogICAgIGF1
dG8gZGVjb3IgPSBzdHlsZS50ZXh0RGVjb3JhdGlvbnNJbkVmZmVjdCgpOwogICAgIGlmIChkZWNv
ciAmIFRleHREZWNvcmF0aW9uTGluZTo6VW5kZXJsaW5lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlck1hYy5tbQppbmRleCBjZDliYWFlNDNkZDUyZGUxY2I5NThmOTU4MDNkZmM1OGUz
NjlmNTIzLi42NmRlMjRlOTkyM2YyYzNiMzk3OTUzYzBiMGRmY2VhNzU1YWQwZjU2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlck1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9X
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQpAQCAtNzY4LDI5ICs3NjgsOSBAQCBz
dGF0aWMgUmV0YWluUHRyPEFYVGV4dE1hcmtlclJlZj4gcHJldmlvdXNUZXh0TWFya2VyRm9yQ2hh
cmFjdGVyT2Zmc2V0KEFYT2JqZWN0QwogICAgIHJldHVybiBhZG9wdENGKEFYVGV4dE1hcmtlckNy
ZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCAoY29uc3QgVUludDgqKSZ0ZXh0TWFya2VyRGF0YS52
YWx1ZSgpLCBzaXplb2YodGV4dE1hcmtlckRhdGEudmFsdWUoKSkpKTsKIH0KIAotLy8gV2hlbiBt
b2RpZnlpbmcgYXR0cmlidXRlZCBzdHJpbmdzLCB0aGUgcmFuZ2UgY2FuIGNvbWUgZnJvbSBhIHNv
dXJjZSB3aGljaCBtYXkgcHJvdmlkZSBmYXVsdHkgaW5mb3JtYXRpb24gKGUuZy4gdGhlIHNwZWxs
IGNoZWNrZXIpLgotLy8gVG8gcHJvdGVjdCBhZ2FpbnN0IHN1Y2ggY2FzZXMgdGhlIHJhbmdlIHNo
b3VsZCBiZSB2YWxpZGF0ZWQgYmVmb3JlIGFkZGluZyBvciByZW1vdmluZyBhdHRyaWJ1dGVzLgog
c3RhdGljIEJPT0wgQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkKE5TQXR0cmlidXRlZFN0
cmluZyAqYXR0clN0cmluZywgTlNSYW5nZSByYW5nZSkKIHsKLSAgICByZXR1cm4gKHJhbmdlLmxv
Y2F0aW9uIDwgW2F0dHJTdHJpbmcgbGVuZ3RoXSAmJiBOU01heFJhbmdlKHJhbmdlKSA8PSBbYXR0
clN0cmluZyBsZW5ndGhdKTsKLX0KLQotc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRG
b250KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcgKmF0dHJTdHJpbmcsIE5TU3RyaW5nICphdHRy
aWJ1dGUsIENURm9udFJlZiBmb250LCBOU1JhbmdlIHJhbmdlKQotewotICAgIGlmICghQVhBdHRy
aWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkKGF0dHJTdHJpbmcsIHJhbmdlKSkKLSAgICAgICAgcmV0
dXJuOwotCi0gICAgaWYgKGZvbnQpIHsKLSAgICAgICAgTlNEaWN0aW9uYXJ5ICpkaWN0aW9uYXJ5
ID0gQHsKLSAgICAgICAgICAgIE5TQWNjZXNzaWJpbGl0eUZvbnROYW1lS2V5OiAoX19icmlkZ2Ug
TlNTdHJpbmcgKilhZG9wdENGKENURm9udENvcHlQb3N0U2NyaXB0TmFtZShmb250KSkuZ2V0KCks
Ci0gICAgICAgICAgICBOU0FjY2Vzc2liaWxpdHlGb250RmFtaWx5S2V5OiAoX19icmlkZ2UgTlNT
dHJpbmcgKilhZG9wdENGKENURm9udENvcHlGYW1pbHlOYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAg
ICAgICAgIE5TQWNjZXNzaWJpbGl0eVZpc2libGVOYW1lS2V5OiAoX19icmlkZ2UgTlNTdHJpbmcg
KilhZG9wdENGKENURm9udENvcHlEaXNwbGF5TmFtZShmb250KSkuZ2V0KCksCi0gICAgICAgICAg
ICBOU0FjY2Vzc2liaWxpdHlGb250U2l6ZUtleTogQChDVEZvbnRHZXRTaXplKGZvbnQpKSwKLSAg
ICAgICAgfTsKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0cmlidXRlOmF0dHJpYnV0ZSB2YWx1
ZTpkaWN0aW9uYXJ5IHJhbmdlOnJhbmdlXTsKLSAgICB9IGVsc2UKLSAgICAgICAgW2F0dHJTdHJp
bmcgcmVtb3ZlQXR0cmlidXRlOmF0dHJpYnV0ZSByYW5nZTpyYW5nZV07Ci0gICAgCisgICAgcmV0
dXJuIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UgYXR0cmlidXRlZFN0cmluZ1Jh
bmdlSXNWYWxpZDphdHRyU3RyaW5nIHJhbmdlOnJhbmdlXTsKIH0KIAogc3RhdGljIHZvaWQgQVhB
dHRyaWJ1dGVTdHJpbmdTZXRDb2xvcihOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3Ry
aW5nLCBOU1N0cmluZyogYXR0cmlidXRlLCBOU0NvbG9yKiBjb2xvciwgTlNSYW5nZSByYW5nZSkK
QEAgLTgyMSwxMCArODAxLDEwIEBAIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0TnVt
YmVyKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIE5TCiBzdGF0aWMgdm9p
ZCBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0
dHJTdHJpbmcsIFJlbmRlck9iamVjdCogcmVuZGVyZXIsIE5TUmFuZ2UgcmFuZ2UpCiB7CiAgICAg
Y29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlID0gcmVuZGVyZXItPnN0eWxlKCk7Ci0gICAgCisKICAg
ICAvLyBzZXQgYmFzaWMgZm9udCBpbmZvCi0gICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KGF0
dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0eUZvbnRUZXh0QXR0cmlidXRlLCBzdHlsZS5mb250Q2Fz
Y2FkZSgpLnByaW1hcnlGb250KCkuZ2V0Q1RGb250KCksIHJhbmdlKTsKLSAgICAKKyAgICBbV2Vi
QWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlIGFwcGx5Rm9udFRvQXR0cmlidXRlZFN0cmlu
ZzphdHRyU3RyaW5nIGZvbnQ6c3R5bGUuZm9udENhc2NhZGUoKS5wcmltYXJ5Rm9udCgpLmdldENU
Rm9udCgpIHJhbmdlOnJhbmdlXTsKKwogICAgIC8vIHNldCBiYXNpYyBjb2xvcnMKICAgICBBWEF0
dHJpYnV0ZVN0cmluZ1NldENvbG9yKGF0dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0eUZvcmVncm91
bmRDb2xvclRleHRBdHRyaWJ1dGUsIGNvY29hQ29sb3Ioc3R5bGUudmlzaXRlZERlcGVuZGVudENv
bG9yKENTU1Byb3BlcnR5Q29sb3IpKS5nZXQoKSwgcmFuZ2UpOwogICAgIEFYQXR0cmlidXRlU3Ry
aW5nU2V0Q29sb3IoYXR0clN0cmluZywgTlNBY2Nlc3NpYmlsaXR5QmFja2dyb3VuZENvbG9yVGV4
dEF0dHJpYnV0ZSwgY29jb2FDb2xvcihzdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJv
cGVydHlCYWNrZ3JvdW5kQ29sb3IpKS5nZXQoKSwgcmFuZ2UpOwpAQCAtMTAyMyw3ICsxMDAzLDcg
QEAgc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVkU3RyaW5nQXBwZW5kVGV4dChOU011dGFibGVBdHRy
aWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLAogI2VuZGlmCiAgICAgICAgIFthdHRyU3RyaW5nIHJl
bW92ZUF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlNaXNzcGVsbGVkVGV4dEF0dHJpYnV0ZSByYW5n
ZTphdHRyU3RyaW5nUmFuZ2VdOwogICAgIH0KLSAgICAKKwogICAgIC8vIHNldCBuZXcgYXR0cmli
dXRlcwogICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0U3R5bGUoYXR0clN0cmluZywgcmVuZGVyZXIs
IGF0dHJTdHJpbmdSYW5nZSk7CiAgICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRIZWFkaW5nTGV2ZWwo
YXR0clN0cmluZywgcmVuZGVyZXIsIGF0dHJTdHJpbmdSYW5nZSk7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNzkxOWJlYTJl
Y2Y0MWY5YTI1NWQ1ZThkNDc3ZDVlNDJkMTAwNjdkZS4uMzZhN2ZiOGEyYzY2ZTdmODkyY2UzMTc2
YWE0MWIwODJlMjc0MTFkYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTAyICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnOiBBZGRlZC4K
KyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFj
ZS1zaG91bGQtbm90LWNyYXNoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dsaWIv
VGVzdEV4cGVjdGF0aW9uczogU2tpcCBuZXcgdGVzdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mv
VGVzdEV4cGVjdGF0aW9uczogRW5hYmxlIG5ldyB0ZXN0LgorICAgICAgICAqIHBsYXRmb3JtL3dp
bi9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIG5ldyB0ZXN0LgorCisgICAgICAgICogcGxhdGZvcm0v
bWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgQmVmb3JlIHRoaXMgcGF0Y2gsIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlckJhc2UgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZV0gY2FsbGVkIHRoZSBpT1MKKyAgICAg
ICAgdmVyc2lvbiBvZiBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQuIFRoaXMgcGF0Y2ggZml4ZXMg
dGhpcy4gVGhlIGV4cGVjdGF0aW9uIGZvciB0aGlzIHRlc3QgaXMgdXBkYXRlZCBhcyBhIHJlc3Vs
dC4KKwogMjAyMi0wMi0yOCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAg
IEhhbmRsZSB3aWRvdyByZWxheW91dCBkaWZmZXJlbnRseQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnIGIvTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzNTQ4ZTUwZmZh
N2MwNzYyZDM3MmMzMzcyYTk4OTU4MzI1Y2QzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9MaXRoZXJ1bS5zdmcKQEAgLTAsMCArMSwxMiBA
QAorPD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PgorPCFET0NUWVBFIHN2ZyBQ
VUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhp
Y3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiA+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZyI+Cis8bWV0YWRhdGE+PC9tZXRhZGF0YT4KKzxkZWZzPgorPGZvbnQgaWQ9Ikxp
dGhlcnVtIiBob3Jpei1hZHYteD0iMTAyNCI+Cis8Zm9udC1mYWNlIHVuaXRzLXBlci1lbT0iMTQi
IGFzY2VudD0iMTQiIGRlc2NlbnQ9IjAiLz4KKzxnbHlwaCB1bmljb2RlPSJ8IiBob3Jpei1hZHYt
eD0iMTQiIGQ9Ik0wIDB2MTRoMTR2LTE0eiIvPgorPGdseXBoIHVuaWNvZGU9Ii0iIGhvcml6LWFk
di14PSIyNjYiIGQ9Ik0wIDB2MTRoMjY2di0xNHoiLz4KKzwvZm9udD4KKzwvZGVmcz4KKzwvc3Zn
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLXNo
b3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9z
dmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNh
ODA4MGJhNTQxYjJlNmUwMzQ4ZWVhZGEzNTZkNGYyMzgyMWUyNjgKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFz
aC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHdl
IGRvbid0IGNyYXNoIHdoZW4gYXBwbHlpbmcgYSBjdXN0b20gU1ZHIGZvbnQgdG8gYXR0cmlidXRl
ZCBzdHJpbmdzLgorR2V0dGluZyBhdHRyaWJ1dGVkIHN0cmluZyBmb3IgcmFuZ2UgKDAsIDkpCitQ
QVNTOiBEaWRuJ3QgY3Jhc2guCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2
Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJp
bGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYzM5
MzAxNjM1YmYwYTA0Mjc5ZmQ0Yjk2Y2I0MGY5ODM0ZmU3MDkzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2gu
aHRtbApAQCAtMCwwICsxLDM1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9q
cy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK0Bmb250LWZhY2UgeworICAgIGZvbnQtZmFt
aWx5OiAnTGl0aGVydW0nOworICAgIHNyYzogdXJsKCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikg
Zm9ybWF0KHN2Zyk7Cit9CisqIHsgZm9udC1mYW1pbHk6ICdMaXRoZXJ1bSc7IH0KKzwvc3R5bGU+
Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CisKKzxpbnB1dCB0eXBlPSJ0ZXh0
IiBpZD0idGV4dGZpZWxkIiB2YWx1ZT0ic29tZSB3b3JkIj48L2lucHV0PgorCis8c2NyaXB0Pgor
ICAgIHZhciBvdXRwdXQgPSAiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB3ZSBkb24ndCBjcmFzaCB3
aGVuIGFwcGx5aW5nIGEgY3VzdG9tIFNWRyBmb250IHRvIGF0dHJpYnV0ZWQgc3RyaW5ncy5cbiI7
CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKQorICAgICAgICB3aW5k
b3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKKyAgICBmdW5jdGlvbiBydW5UZXN0KCkgeworICAg
ICAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7CisgICAgICAgICAgICBj
b25zdCB0ZXh0RmllbGQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVu
dEJ5SWQoInRleHRmaWVsZCIpOworICAgICAgICAgICAgb3V0cHV0ICs9IGBHZXR0aW5nIGF0dHJp
YnV0ZWQgc3RyaW5nIGZvciByYW5nZSAoMCwgOSlcbmA7CisgICAgICAgICAgICBjb25zdCBhdHRy
aWJ1dGVkU3RyaW5nID0gdGV4dEZpZWxkLmF0dHJpYnV0ZWRTdHJpbmdGb3JSYW5nZSgwLCA5KTsK
KyAgICAgICAgICAgIG91dHB1dCArPSAiUEFTUzogRGlkbid0IGNyYXNoLlxuIjsKKyAgICAgICAg
ICAgIGRlYnVnKG91dHB1dCk7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAg
fQorICAgIH0KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDg4NTcxNzMxZGE3NzNmMmUwZGUyZDAxMWYx
YTM5MWFkMTU3ZmRhYmIuLmQwZjNmZTA4MDg3MGE3YzAzNTEzZDJmNzI1YTY4ZDIxZjFlZGE1ZjMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9ucwor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTMzMSw2
ICszMzEsOCBAQCBmYXN0L2Nzcy9hY2NlbnQtY29sb3IvdGV4dC5odG1sIFsgUGFzcyBdCiAjIEFj
Y2Vzc2liaWxpdHktcmVsYXRlZCBidWdzCiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
LwogCithY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC5odG1sIFsg
U2tpcCBdCisKICMgTmVlZCB0byBpbXBsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aGFz
RG9jdW1lbnRSb2xlQW5jZXN0b3IoKSwgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aGFzV2ViQXBw
bGljYXRpb25BbmNlc3RvcigpLAogIyBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojppc0luRGVzY3Jp
cHRpb25MaXN0RGV0YWlsKCksIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmlzSW5EZXNjcmlwdGlv
bkxpc3RUZXJtKCksIGFuZAogIyBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojppc0luQ2VsbCgpLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA3ZWMzNDUxNGJm
ZDQ2MTg3N2VhMzFhZDY1N2NiZmQ5MWNkNzk1MGUxLi4xNGFiMjI3NjA0MzkwYTYwY2ExNTdjYmFj
MzgxMmYzYTQ1NTFlMjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVz
dEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0
aW9ucwpAQCAtMjEwNCw2ICsyMTA0LDcgQEAgYWNjZXNzaWJpbGl0eS9keW5hbWljYWxseS1jaGFu
Z2luZy1pZnJhbWUtcmVtYWlucy1hY2Nlc3NpYmxlLmh0bWwgWyBQYXNzIF0KIAogYWNjZXNzaWJp
bGl0eS9zZWxlY3RlZC1zdGF0ZS1jaGFuZ2VkLW5vdGlmaWNhdGlvbnMuaHRtbCBbIFBhc3MgXQog
YWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQuaHRtbCBbIFBhc3MgXQor
YWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbCBbIFBhc3Mg
XQogCiAjIEVuYWJsZSAiYXR0YWNobWVudCBlbGVtZW50IiB0ZXN0IGZvciBpT1MKIGFjY2Vzc2li
aWxpdHkvYXR0YWNobWVudC1lbGVtZW50Lmh0bWwgWyBQYXNzIF0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQt
dGV4dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0
eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQtZXhwZWN0ZWQudHh0CmluZGV4IGMyMGQ2MWIx
ZmI4YWJkMGYxYzk1YWU3ODg2Y2RmYWIwZTA0NzVlNmIuLjM1ZDYxNThlN2YzYmRhYjA0Y2RlZGJj
NWJmZTE2YmEyYTA0OGFhMjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9h
Y2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4dC1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJl
Y3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4dApAQCAtMTAsMjggKzEwLDI4IEBAIFRoaXMgdGVzdHMg
dGhhdCBsaW5lUmVjdHNBbmRUZXh0IHJldHVybnMgdGhlIGNvcnJlY3QgdmFsdWVzLgogT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLXRleHQgPSAiVGhpcyBpcyBzb21lIHRlc3RpbmcgY29u
dGVudC4ge1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAg
IFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlB
Y2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufUEgbGluayBoZXJlLntcbiAgICBVSUFj
Y2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlU
b2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2Vu
Rm9udFNpemUgPSAxNjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlblVuZGVybGluZSA9IDE7XG59
IE1PcmUgdGV4dC57XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7
XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAg
ICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59IjsKK3RleHQgPSAiVGhpcyBp
cyBzb21lIHRlc3RpbmcgY29udGVudC4ge1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFY
Rm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwi
O1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRp
bWVzIFJvbWFuXCI7XG4gICAgfTtcbn1BIGxpbmsgaGVyZS57XG4gICAgQVhGb250ID0gICAgIHtc
biAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRp
bWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxl
TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2Vu
VW5kZXJsaW5lID0gMTtcbn0gTU9yZSB0ZXh0LntcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAg
ICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9t
YW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0g
XCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4g
MDogdHJ1ZQotdGV4dCA9ICJ6e1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9
IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFu
XCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0g
Inp7XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4g
ICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUg
PSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xu
fSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRleHQgPSAiQW5vdGhlciBs
aW5lIG9mIHRleHQue1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVz
O1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4g
ICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gIkFub3Ro
ZXIgbGluZSBvZiB0ZXh0LntcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1p
bHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAg
ICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21h
blwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQogdGV4
dCA9ICJjYWtle1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRleHQg
PSAiSmFjayBhbmQgSmlsbCB3ZW50IHVwIHRoZSBoaWxsIHRvIGZldGNoIGEgcGFpbCBvZiB3YXRl
ci4gSmFjayBmZWxsIGRvd24uLi57XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5
ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9t
YW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTQ7XG59IjsKK3RleHQg
PSAiSmFjayBhbmQgSmlsbCB3ZW50IHVwIHRoZSBoaWxsIHRvIGZldGNoIGEgcGFpbCBvZiB3YXRl
ci4gSmFjayBmZWxsIGRvd24uLi57XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250
RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4g
ICAgICAgIEFYRm9udFNpemUgPSAxNDtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMg
Um9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUK
LXRleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IGFiY2RlZmdoaWpr
bG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSB7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250
RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGlt
ZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59IjsK
K3RleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IGFiY2RlZmdoaWpr
bG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSB7XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAg
QVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFu
XCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwi
VGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6
IHRydWUKLXRleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LWFiY2Rl
ZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OS17XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9r
ZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9
IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7
XG59IjsKK3RleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LWFiY2Rl
ZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OS17XG4gICAgQVhGb250ID0gICAgIHtcbiAg
ICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVz
LVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFt
ZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdo
dCA+IDA6IHRydWUKLXRleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5
e1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNj
ZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3Np
YmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gImFiY2RlZmdoaWprbG1ub3Bx
cnN0dXZ3eHl6MDEyMzQ1Njc4OXtcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRG
YW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAg
ICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBS
b21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQog
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
VGVzdEV4cGVjdGF0aW9ucwppbmRleCAxNDJkZTUyNTE4NzdjZTM3YmUwNzQ1OWU5ZmQ2NDhlMDQ5
NWIwZWIzLi5lNDAyNmFkYzZkNDQ4NzRkMWQ1MjRiNDk5MmQ2YjAyZGZmYTU4MDcyIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwpAQCAtNDkyMiw3ICs0OTIyLDEw
IEBAIHdlYmtpdC5vcmcvYi8yMjkzMDAgaHR0cC90ZXN0cy9zZWN1cml0eS9uby1qYXZhc2NyaXB0
LXJlZnJlc2gtc3BhY2VzLnB5IFsgUGFzcyBDCiBhY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXN0YXRl
LWNoYW5nZWQtbm90aWZpY2F0aW9ucy5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2VsZW1l
bnQtbGluZS1yZWN0cy1hbmQtdGV4dC5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2RpYWxv
Zy1wcm9wZXJ0aWVzLmh0bWwgWyBTa2lwIF0KKworIyBNaXNzaW5nIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OmF0dHJpYnV0ZWRTdHJpbmdGb3JSYW5nZSBpbXBsZW1lbnRhdGlvbgogYWNjZXNzaWJp
bGl0eS9uYXRpdmUtdGV4dC1jb250cm9sLWF0dHJpYnV0ZWQtc3RyaW5nLmh0bWwgWyBTa2lwIF0K
K2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1zaG91bGQtbm90LWNyYXNoLmh0bWwgWyBTa2lw
IF0KIAogd2Via2l0Lm9yZy9iLzIyOTI0NyBodHRwL3Rlc3RzL2ZldGNoL2tlZXBhbGl2ZS1mZXRj
aC0yLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453680</attachid>
            <date>2022-03-02 17:15:26 -0800</date>
            <delta_ts>2022-03-02 17:46:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220302191525.patch</filename>
            <type>text/plain</type>
            <size>23317</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGVmMTA3YTYwMzBjNjkz
ODQzN2RhNTUyY2ViMmMzNTA5NmY4MTdlZC4uYzAxZDYzNmQ5ODM2YmU3NDU1ZjE2OTc1NTU1OGE4
M2RiZGJmMzllNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIyLTAzLTAyICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0
cmluZ1NldEZvbnRdIGNyYXNoZXMgd2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhCisgICAgICAgIG5p
bCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5LCBvciBkaXNwbGF5IG5hbWUuIFRoaXMgY2Fu
IGJlCisgICAgICAgIHRyaWdnZXJlZCB3aXRoIGEgY3VzdG9tIFNWRyBAZm9udC1mYWNlIC0tIGZv
ciBleGFtcGxlOgorCisgICAgICAgIEBmb250LWZhY2UgeworICAgICAgICAgICAgZm9udC1mYW1p
bHk6ICdMaXRoZXJ1bSc7CisgICAgICAgICAgICBzcmM6IHVybCgicmVzb3VyY2VzL0xpdGhlcnVt
LnN2ZyIpIGZvcm1hdChzdmcpOworICAgICAgICB9CisgICAgICAgICogeyBmb250LWZhbWlseTog
J0xpdGhlcnVtJzsgfQorCisgICAgICAgIFdlIGZpeCB0aGlzIGJ5IGNoZWNraW5nIGlmIHRoZXNl
IHZhbHVlcyBhcmUgbmlsIGJlZm9yZSB0cnlpbmcgdG8gYWRkCisgICAgICAgIHRoZW0gdG8gYSBk
aWN0aW9uYXJ5LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyBjZW50cmFsaXplcyBhcHBsaWNh
dGlvbiBvZiBmb250cyB0byBhdHRyaWJ1dGVkIHN0cmluZ3MKKyAgICAgICAgaW4gdGhlIGJhc2Ug
d3JhcHBlciB3aXRoIG5ldyBmdW5jdGlvbiBhcHBseUZvbnRUb0F0dHJpYnV0ZWRTdHJpbmcuIElu
IGRvaW5nIHNvLAorICAgICAgICB3ZSBmaXggYSBidWcgd2hlcmUgaWYgW1dlYkFjY2Vzc2liaWxp
dHlPYmplY3RXcmFwcGVyQmFzZSBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlXSB3YXMKKyAgICAg
ICAgY2FsbGVkIGZyb20gYSBNYWMtY29udGV4dCwgaXQgc2V0IGlPUyBmb250IHByb3BlcnRpZXMg
KGUuZy4KKyAgICAgICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IGluc3RlYWQgb2Yg
TlNBY2Nlc3NpYmlsaXR5Rm9udEZhbWlseUtleSkuCisKKyAgICAgICAgVGVzdDogYWNjZXNzaWJp
bGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbAorCisgICAgICAgICogYWNj
ZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmg6CisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNl
Lm1tOgorICAgICAgICAoK1tXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UgYXR0cmli
dXRlZFN0cmluZ1JhbmdlSXNWYWxpZDpyYW5nZTpdKToKKyAgICAgICAgQWRkZWQgYXMgYSBjbGFz
cyBmdW5jdGlvbiBpbiB0aGUgYmFzZSB3cmFwcGVyIHNvIHRoZSBsb2dpYyBjYW4gYmUgc2hhcmVk
IGFjcm9zcyBhbGwgd3JhcHBlcnMuCisgICAgICAgICgrW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RX
cmFwcGVyQmFzZSBhcHBseUZvbnRUb0F0dHJpYnV0ZWRTdHJpbmc6Zm9udDpyYW5nZTpdKToKKyAg
ICAgICAgQWRkZWQuCisgICAgICAgIChBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlKToKKyAgICAg
ICAgKEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udCk6CisgICAgICAgIERlbGV0ZWQgaW4gZmF2b3Ig
b2YgbmV3IGFwcGx5Rm9udFRvQXR0cmlidXRlZFN0cmluZyBmdW5jdGlvbi4KKyAgICAgICAgKiBh
Y2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbToKKyAg
ICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6CisgICAgICAgIENhbGwgbmV3
IGF0dHJpYnV0ZWRTdHJpbmdSYW5nZUlzVmFsaWQgZnVuY3Rpb24uCisgICAgICAgIChBWEF0dHJp
YnV0ZVN0cmluZ1NldFN0eWxlKToKKyAgICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ0FwcGVuZFRl
eHQpOgorICAgICAgICAoQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KToKKyAgICAgICAgRGVsZXRl
ZCBpbiBmYXZvciBvZiBuZXcgYXBwbHlGb250VG9BdHRyaWJ1dGVkU3RyaW5nIGZ1bmN0aW9uLgor
CiAyMDIyLTAyLTI4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAg
IFtDb2NvYV0gQWRvcHQgLXN0cmVhbURhdGFQYXJzZXI6ZGlkUHJvdmlkZUNvbnRlbnRLZXlTcGVj
aWZpZXI6Zm9yVHJhY2tJRDogZGVsZWdhdGUgY2FsbGJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFz
ZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXJCYXNlLmgKaW5kZXggYWMyYmRiZmUyYWM1ODk2NTYwZTYwOTYwNGM3Njk4MzZh
Mjg0MjRhZC4uYWRmMGViMGUzMjNkMGU3YmZlZjFlM2VmYmU2MTNhOTFhZmI2Nzg4ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXJCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMv
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmgKQEAgLTI3LDYgKzI3LDcgQEAKICAq
LwogCiAjaW1wb3J0ICJBY2Nlc3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmgiCisjaW1wb3J0ICJG
b250UGxhdGZvcm1EYXRhLmgiCiAjaW1wb3J0IDxDb3JlR3JhcGhpY3MvQ29yZUdyYXBoaWNzLmg+
CiAjaW1wb3J0IDx2YXJpYW50PgogI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgpAQCAtMTA4LDYgKzEw
OSw5IEBAIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IFVJQWNjZXNzaWJpbGl0eVRleHR1YWxDb250
ZXh0U291cmNlQ29kZSA9IEAiVUlBY2Nlc3NpYmlsCiAtIChDR1JlY3QpY29udmVydFJlY3RUb1Nw
YWNlOihjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKXJlY3Qgc3BhY2U6KFdlYkNvcmU6OkFjY2Vz
c2liaWxpdHlDb252ZXJzaW9uU3BhY2Upc3BhY2U7CiAtIChOU0FycmF5ICopY29udGVudEZvclNp
bXBsZVJhbmdlOihjb25zdCBXZWJDb3JlOjpTaW1wbGVSYW5nZSYpcmFuZ2UgYXR0cmlidXRlZDoo
Qk9PTClhdHRyaWJ1dGVkOwogCisrICh2b2lkKWFwcGx5Rm9udFRvQXR0cmlidXRlZFN0cmluZzoo
TlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyopYXR0cmlidXRlZFN0cmluZyBmb250OihDVEZvbnRS
ZWYpZm9udCByYW5nZTooTlNSYW5nZSlyYW5nZTsKKysgKEJPT0wpYXR0cmlidXRlZFN0cmluZ1Jh
bmdlSXNWYWxpZDooTlNBdHRyaWJ1dGVkU3RyaW5nICopYXR0cmlidXRlZFN0cmluZyByYW5nZToo
TlNSYW5nZSlyYW5nZTsKKwogLy8gTWF0aCByZWxhdGVkIGZ1bmN0aW9ucwogLSAoTlNBcnJheSAq
KWFjY2Vzc2liaWxpdHlNYXRoUG9zdHNjcmlwdFBhaXJzOwogLSAoTlNBcnJheSAqKWFjY2Vzc2li
aWxpdHlNYXRoUHJlc2NyaXB0UGFpcnM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBl
ckJhc2UubW0KaW5kZXggYWE2NmYzZjVmMzk5ZDZmNTdkYjRjYTQ3ODg1M2E1NjUzZGViZTQ1NS4u
ZjI4YzQyNmRjMDZjODU2YjQ5YWFkYTJjYzZkZjYxZWU2MTk4MWVmZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBw
ZXJCYXNlLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vz
c2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbQpAQCAtNTc4LDI3ICs1NzgsNTkgQEAgc3RhdGlj
IHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRIZWFkaW5nTGV2ZWwoTlNNdXRhYmxlQXR0cmlidXRl
ZFN0cmluZyogYXR0clN0cmkKICAgICAgICAgW2F0dHJTdHJpbmcgcmVtb3ZlQXR0cmlidXRlOlVJ
QWNjZXNzaWJpbGl0eVRva2VuSGVhZGluZ0xldmVsIHJhbmdlOnJhbmdlXTsKIH0KIAotc3RhdGlj
IHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcq
IGF0dHJTdHJpbmcsIENURm9udFJlZiBmb250LCBOU1JhbmdlIHJhbmdlKQorLy8gV2hlbiBtb2Rp
ZnlpbmcgYXR0cmlidXRlZCBzdHJpbmdzLCB0aGUgcmFuZ2UgY2FuIGNvbWUgZnJvbSBhIHNvdXJj
ZSB3aGljaCBtYXkgcHJvdmlkZSBmYXVsdHkgaW5mb3JtYXRpb24gKGUuZy4gdGhlIHNwZWxsIGNo
ZWNrZXIpLgorLy8gVG8gcHJvdGVjdCBhZ2FpbnN0IHN1Y2ggY2FzZXMgdGhlIHJhbmdlIHNob3Vs
ZCBiZSB2YWxpZGF0ZWQgYmVmb3JlIGFkZGluZyBvciByZW1vdmluZyBhdHRyaWJ1dGVzLgorKyAo
Qk9PTClhdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkOihOU0F0dHJpYnV0ZWRTdHJpbmcgKilh
dHRyaWJ1dGVkU3RyaW5nIHJhbmdlOihOU1JhbmdlKXJhbmdlCiB7Ci0gICAgaWYgKCFmb250KQor
ICAgIHJldHVybiByYW5nZS5sb2NhdGlvbiA8IFthdHRyaWJ1dGVkU3RyaW5nIGxlbmd0aF0gJiYg
TlNNYXhSYW5nZShyYW5nZSkgPD0gW2F0dHJpYnV0ZWRTdHJpbmcgbGVuZ3RoXTsKK30KKworKyAo
dm9pZClhcHBseUZvbnRUb0F0dHJpYnV0ZWRTdHJpbmc6KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJp
bmcqKWF0dHJpYnV0ZWRTdHJpbmcgZm9udDooQ1RGb250UmVmKWZvbnQgcmFuZ2U6KE5TUmFuZ2Up
cmFuZ2UKK3sKKyAgICBpZiAoIVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UgYXR0
cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZDphdHRyaWJ1dGVkU3RyaW5nIHJhbmdlOnJhbmdlXSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBmdWxsTmFtZSA9
IGFkb3B0Q0YoQ1RGb250Q29weUZ1bGxOYW1lKGZvbnQpKTsKLSAgICBSZXRhaW5QdHI8Q0ZTdHJp
bmdSZWY+IGZhbWlseU5hbWUgPSBhZG9wdENGKENURm9udENvcHlGYW1pbHlOYW1lKGZvbnQpKTsK
KyAgICBpZiAoIWZvbnQpIHsKKyNpZiBQTEFURk9STShNQUMpCisgICAgICAgIFthdHRyaWJ1dGVk
U3RyaW5nIHJlbW92ZUF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlGb250VGV4dEF0dHJpYnV0ZSBy
YW5nZTpyYW5nZV07CisjZW5kaWYKKyAgICAgICAgcmV0dXJuOworICAgIH0KIAorICAgIE5TTXV0
YWJsZURpY3Rpb25hcnkgKmZvbnRBdHRyaWJ1dGVzID0gW1tOU011dGFibGVEaWN0aW9uYXJ5IGFs
bG9jXSBpbml0XTsKKyAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGZhbWlseU5hbWUgPSBhZG9w
dENGKENURm9udENvcHlGYW1pbHlOYW1lKGZvbnQpKTsKICAgICBOU051bWJlciogc2l6ZSA9IFtO
U051bWJlciBudW1iZXJXaXRoRmxvYXQ6Q1RGb250R2V0U2l6ZShmb250KV07Ci0gICAgQ1RGb250
U3ltYm9saWNUcmFpdHMgdHJhaXRzID0gQ1RGb250R2V0U3ltYm9saWNUcmFpdHMoZm9udCk7Ci0g
ICAgTlNOdW1iZXIqIGJvbGQgPSBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6KHRyYWl0cyAmIGtD
VEZvbnRUcmFpdEJvbGQpXTsKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIFJldGFpblB0
cjxDRlN0cmluZ1JlZj4gZnVsbE5hbWUgPSBhZG9wdENGKENURm9udENvcHlGdWxsTmFtZShmb250
KSk7CiAgICAgaWYgKGZ1bGxOYW1lKQotICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6
VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSB2YWx1ZTooTlNTdHJpbmcqKWZ1bGxOYW1lLmdl
dCgpIHJhbmdlOnJhbmdlXTsKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOihfX2Jy
aWRnZSBOU1N0cmluZyopZnVsbE5hbWUuZ2V0KCkgZm9yS2V5OlVJQWNjZXNzaWJpbGl0eVRva2Vu
Rm9udE5hbWVdOwogICAgIGlmIChmYW1pbHlOYW1lKQotICAgICAgICBbYXR0clN0cmluZyBhZGRB
dHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IHZhbHVlOihOU1N0cmluZyop
ZmFtaWx5TmFtZS5nZXQoKSByYW5nZTpyYW5nZV07CisgICAgICAgIFtmb250QXR0cmlidXRlcyBz
ZXRWYWx1ZTooX19icmlkZ2UgTlNTdHJpbmcqKWZhbWlseU5hbWUuZ2V0KCkgZm9yS2V5OlVJQWNj
ZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseV07CiAgICAgaWYgKFtzaXplIGJvb2xWYWx1ZV0pCi0g
ICAgICAgIFthdHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRT
aXplIHZhbHVlOnNpemUgcmFuZ2U6cmFuZ2VdOwotICAgIGlmIChbYm9sZCBib29sVmFsdWVdIHx8
ICh0cmFpdHMgJiBrQ1RGb250VHJhaXRCb2xkKSkKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0
cmlidXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuQm9sZCB2YWx1ZTpAWUVTIHJhbmdlOnJhbmdlXTsK
KyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOnNpemUgZm9yS2V5OlVJQWNjZXNzaWJp
bGl0eVRva2VuRm9udFNpemVdOworICAgIENURm9udFN5bWJvbGljVHJhaXRzIHRyYWl0cyA9IENU
Rm9udEdldFN5bWJvbGljVHJhaXRzKGZvbnQpOworICAgIGlmICh0cmFpdHMgJiBrQ1RGb250VHJh
aXRCb2xkKQorICAgICAgICBbZm9udEF0dHJpYnV0ZXMgc2V0VmFsdWU6QFlFUyBmb3JLZXk6VUlB
Y2Nlc3NpYmlsaXR5VG9rZW5Cb2xkXTsKICAgICBpZiAodHJhaXRzICYga0NURm9udFRyYWl0SXRh
bGljKQotICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9r
ZW5JdGFsaWMgdmFsdWU6QFlFUyByYW5nZTpyYW5nZV07CisgICAgICAgIFtmb250QXR0cmlidXRl
cyBzZXRWYWx1ZTpAWUVTIGZvcktleTpVSUFjY2Vzc2liaWxpdHlUb2tlbkl0YWxpY107CisKKyAg
ICBbYXR0cmlidXRlZFN0cmluZyBhZGRBdHRyaWJ1dGVzOmZvbnRBdHRyaWJ1dGVzIHJhbmdlOnJh
bmdlXTsKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oTUFDKQorICAgIFtmb250QXR0cmlidXRlcyBz
ZXRWYWx1ZTpzaXplIGZvcktleTpOU0FjY2Vzc2liaWxpdHlGb250U2l6ZUtleV07CisKKyAgICBp
ZiAoZmFtaWx5TmFtZSkKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOihfX2JyaWRn
ZSBOU1N0cmluZyopZmFtaWx5TmFtZS5nZXQoKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udEZh
bWlseUtleV07CisgICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBwb3N0U2NyaXB0TmFtZSA9IGFk
b3B0Q0YoQ1RGb250Q29weVBvc3RTY3JpcHROYW1lKGZvbnQpKTsKKyAgICBpZiAocG9zdFNjcmlw
dE5hbWUpCisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTooX19icmlkZ2UgTlNTdHJp
bmcqKXBvc3RTY3JpcHROYW1lLmdldCgpIGZvcktleTpOU0FjY2Vzc2liaWxpdHlGb250TmFtZUtl
eV07CisgICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBkaXNwbGF5TmFtZSA9IGFkb3B0Q0YoQ1RG
b250Q29weURpc3BsYXlOYW1lKGZvbnQpKTsKKyAgICBpZiAoZGlzcGxheU5hbWUpCisgICAgICAg
IFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTooX19icmlkZ2UgTlNTdHJpbmcqKWRpc3BsYXlOYW1l
LmdldCgpIGZvcktleTpOU0FjY2Vzc2liaWxpdHlWaXNpYmxlTmFtZUtleV07CisKKyAgICBbYXR0
cmlidXRlZFN0cmluZyBhZGRBdHRyaWJ1dGU6TlNBY2Nlc3NpYmlsaXR5Rm9udFRleHRBdHRyaWJ1
dGUgdmFsdWU6Zm9udEF0dHJpYnV0ZXMgcmFuZ2U6cmFuZ2VdOworI2VuZGlmCiB9CiAKIHN0YXRp
YyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0TnVtYmVyKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJp
bmcqIGF0dHJTdHJpbmcsIE5TU3RyaW5nKiBhdHRyaWJ1dGUsIE5TTnVtYmVyKiBudW1iZXIsIE5T
UmFuZ2UgcmFuZ2UpCkBAIC02MTQsNyArNjQ2LDcgQEAgc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVT
dHJpbmdTZXRTdHlsZShOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBSZW4K
ICAgICBhdXRvJiBzdHlsZSA9IHJlbmRlcmVyLT5zdHlsZSgpOwogCiAgICAgLy8gc2V0IGJhc2lj
IGZvbnQgaW5mbwotICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udChhdHRyU3RyaW5nLCBzdHls
ZS5mb250Q2FzY2FkZSgpLnByaW1hcnlGb250KCkuZ2V0Q1RGb250KCksIHJhbmdlKTsKKyAgICBb
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlIGFwcGx5Rm9udFRvQXR0cmlidXRlZFN0
cmluZzphdHRyU3RyaW5nIGZvbnQ6c3R5bGUuZm9udENhc2NhZGUoKS5wcmltYXJ5Rm9udCgpLmdl
dENURm9udCgpIHJhbmdlOnJhbmdlXTsKIAogICAgIGF1dG8gZGVjb3IgPSBzdHlsZS50ZXh0RGVj
b3JhdGlvbnNJbkVmZmVjdCgpOwogICAgIGlmIChkZWNvciAmIFRleHREZWNvcmF0aW9uTGluZTo6
VW5kZXJsaW5lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMv
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQppbmRleCBj
ZDliYWFlNDNkZDUyZGUxY2I5NThmOTU4MDNkZmM1OGUzNjlmNTIzLi42NmRlMjRlOTkyM2YyYzNi
Mzk3OTUzYzBiMGRmY2VhNzU1YWQwZjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlck1hYy5tbQpAQCAtNzY4LDI5ICs3NjgsOSBAQCBzdGF0aWMgUmV0YWluUHRyPEFYVGV4dE1h
cmtlclJlZj4gcHJldmlvdXNUZXh0TWFya2VyRm9yQ2hhcmFjdGVyT2Zmc2V0KEFYT2JqZWN0Qwog
ICAgIHJldHVybiBhZG9wdENGKEFYVGV4dE1hcmtlckNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0
LCAoY29uc3QgVUludDgqKSZ0ZXh0TWFya2VyRGF0YS52YWx1ZSgpLCBzaXplb2YodGV4dE1hcmtl
ckRhdGEudmFsdWUoKSkpKTsKIH0KIAotLy8gV2hlbiBtb2RpZnlpbmcgYXR0cmlidXRlZCBzdHJp
bmdzLCB0aGUgcmFuZ2UgY2FuIGNvbWUgZnJvbSBhIHNvdXJjZSB3aGljaCBtYXkgcHJvdmlkZSBm
YXVsdHkgaW5mb3JtYXRpb24gKGUuZy4gdGhlIHNwZWxsIGNoZWNrZXIpLgotLy8gVG8gcHJvdGVj
dCBhZ2FpbnN0IHN1Y2ggY2FzZXMgdGhlIHJhbmdlIHNob3VsZCBiZSB2YWxpZGF0ZWQgYmVmb3Jl
IGFkZGluZyBvciByZW1vdmluZyBhdHRyaWJ1dGVzLgogc3RhdGljIEJPT0wgQVhBdHRyaWJ1dGVk
U3RyaW5nUmFuZ2VJc1ZhbGlkKE5TQXR0cmlidXRlZFN0cmluZyAqYXR0clN0cmluZywgTlNSYW5n
ZSByYW5nZSkKIHsKLSAgICByZXR1cm4gKHJhbmdlLmxvY2F0aW9uIDwgW2F0dHJTdHJpbmcgbGVu
Z3RoXSAmJiBOU01heFJhbmdlKHJhbmdlKSA8PSBbYXR0clN0cmluZyBsZW5ndGhdKTsKLX0KLQot
c3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KE5TTXV0YWJsZUF0dHJpYnV0ZWRT
dHJpbmcgKmF0dHJTdHJpbmcsIE5TU3RyaW5nICphdHRyaWJ1dGUsIENURm9udFJlZiBmb250LCBO
U1JhbmdlIHJhbmdlKQotewotICAgIGlmICghQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlk
KGF0dHJTdHJpbmcsIHJhbmdlKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKGZvbnQpIHsK
LSAgICAgICAgTlNEaWN0aW9uYXJ5ICpkaWN0aW9uYXJ5ID0gQHsKLSAgICAgICAgICAgIE5TQWNj
ZXNzaWJpbGl0eUZvbnROYW1lS2V5OiAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9wdENGKENURm9u
dENvcHlQb3N0U2NyaXB0TmFtZShmb250KSkuZ2V0KCksCi0gICAgICAgICAgICBOU0FjY2Vzc2li
aWxpdHlGb250RmFtaWx5S2V5OiAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9wdENGKENURm9udENv
cHlGYW1pbHlOYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5TQWNjZXNzaWJpbGl0eVZp
c2libGVOYW1lS2V5OiAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9wdENGKENURm9udENvcHlEaXNw
bGF5TmFtZShmb250KSkuZ2V0KCksCi0gICAgICAgICAgICBOU0FjY2Vzc2liaWxpdHlGb250U2l6
ZUtleTogQChDVEZvbnRHZXRTaXplKGZvbnQpKSwKLSAgICAgICAgfTsKLSAgICAgICAgW2F0dHJT
dHJpbmcgYWRkQXR0cmlidXRlOmF0dHJpYnV0ZSB2YWx1ZTpkaWN0aW9uYXJ5IHJhbmdlOnJhbmdl
XTsKLSAgICB9IGVsc2UKLSAgICAgICAgW2F0dHJTdHJpbmcgcmVtb3ZlQXR0cmlidXRlOmF0dHJp
YnV0ZSByYW5nZTpyYW5nZV07Ci0gICAgCisgICAgcmV0dXJuIFtXZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlckJhc2UgYXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZDphdHRyU3RyaW5nIHJh
bmdlOnJhbmdlXTsKIH0KIAogc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRDb2xvcihO
U011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBOU1N0cmluZyogYXR0cmlidXRl
LCBOU0NvbG9yKiBjb2xvciwgTlNSYW5nZSByYW5nZSkKQEAgLTgyMSwxMCArODAxLDEwIEBAIHN0
YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0TnVtYmVyKE5TTXV0YWJsZUF0dHJpYnV0ZWRT
dHJpbmcqIGF0dHJTdHJpbmcsIE5TCiBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0
eWxlKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIFJlbmRlck9iamVjdCog
cmVuZGVyZXIsIE5TUmFuZ2UgcmFuZ2UpCiB7CiAgICAgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxl
ID0gcmVuZGVyZXItPnN0eWxlKCk7Ci0gICAgCisKICAgICAvLyBzZXQgYmFzaWMgZm9udCBpbmZv
Ci0gICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KGF0dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0
eUZvbnRUZXh0QXR0cmlidXRlLCBzdHlsZS5mb250Q2FzY2FkZSgpLnByaW1hcnlGb250KCkuZ2V0
Q1RGb250KCksIHJhbmdlKTsKLSAgICAKKyAgICBbV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBw
ZXJCYXNlIGFwcGx5Rm9udFRvQXR0cmlidXRlZFN0cmluZzphdHRyU3RyaW5nIGZvbnQ6c3R5bGUu
Zm9udENhc2NhZGUoKS5wcmltYXJ5Rm9udCgpLmdldENURm9udCgpIHJhbmdlOnJhbmdlXTsKKwog
ICAgIC8vIHNldCBiYXNpYyBjb2xvcnMKICAgICBBWEF0dHJpYnV0ZVN0cmluZ1NldENvbG9yKGF0
dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0eUZvcmVncm91bmRDb2xvclRleHRBdHRyaWJ1dGUsIGNv
Y29hQ29sb3Ioc3R5bGUudmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5Q29sb3IpKS5n
ZXQoKSwgcmFuZ2UpOwogICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0Q29sb3IoYXR0clN0cmluZywg
TlNBY2Nlc3NpYmlsaXR5QmFja2dyb3VuZENvbG9yVGV4dEF0dHJpYnV0ZSwgY29jb2FDb2xvcihz
dHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpKS5n
ZXQoKSwgcmFuZ2UpOwpAQCAtMTAyMyw3ICsxMDAzLDcgQEAgc3RhdGljIHZvaWQgQVhBdHRyaWJ1
dGVkU3RyaW5nQXBwZW5kVGV4dChOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5n
LAogI2VuZGlmCiAgICAgICAgIFthdHRyU3RyaW5nIHJlbW92ZUF0dHJpYnV0ZTpOU0FjY2Vzc2li
aWxpdHlNaXNzcGVsbGVkVGV4dEF0dHJpYnV0ZSByYW5nZTphdHRyU3RyaW5nUmFuZ2VdOwogICAg
IH0KLSAgICAKKwogICAgIC8vIHNldCBuZXcgYXR0cmlidXRlcwogICAgIEFYQXR0cmlidXRlU3Ry
aW5nU2V0U3R5bGUoYXR0clN0cmluZywgcmVuZGVyZXIsIGF0dHJTdHJpbmdSYW5nZSk7CiAgICAg
QVhBdHRyaWJ1dGVTdHJpbmdTZXRIZWFkaW5nTGV2ZWwoYXR0clN0cmluZywgcmVuZGVyZXIsIGF0
dHJTdHJpbmdSYW5nZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNzkxOWJlYTJlY2Y0MWY5YTI1NWQ1ZThkNDc3ZDVlNDJk
MTAwNjdkZS4uMzZhN2ZiOGEyYzY2ZTdmODkyY2UzMTc2YWE0MWIwODJlMjc0MTFkYiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTAyICBUeWxlciBXaWxjb2NrICA8dHlsZXJfd0BhcHBs
ZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYyBB
WEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMgd2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBh
IG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5LCBvciBkaXNwbGF5IG5hbWUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzM3MworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYWNjZXNzaWJpbGl0
eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGFjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1zaG91bGQtbm90LWNyYXNoLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9uczogU2tpcCBu
ZXcgdGVzdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9uczogRW5hYmxl
IG5ldyB0ZXN0LgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zOiBTa2lw
IG5ldyB0ZXN0LgorCisgICAgICAgICogcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVu
dC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgQmVmb3JlIHRoaXMg
cGF0Y2gsIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UgQVhBdHRyaWJ1dGVTdHJp
bmdTZXRTdHlsZV0gY2FsbGVkIHRoZSBpT1MKKyAgICAgICAgdmVyc2lvbiBvZiBBWEF0dHJpYnV0
ZVN0cmluZ1NldEZvbnQuIFRoaXMgcGF0Y2ggZml4ZXMgdGhpcy4gVGhlIGV4cGVjdGF0aW9uIGZv
ciB0aGlzIHRlc3QgaXMgdXBkYXRlZCBhcyBhIHJlc3VsdC4KKwogMjAyMi0wMi0yOCAgUm9iIEJ1
aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEhhbmRsZSB3aWRvdyByZWxheW91dCBk
aWZmZXJlbnRseQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJj
ZXMvTGl0aGVydW0uc3ZnIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0
aGVydW0uc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzNTQ4ZTUwZmZhN2MwNzYyZDM3MmMzMzcyYTk4OTU4MzI1
Y2QzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291
cmNlcy9MaXRoZXJ1bS5zdmcKQEAgLTAsMCArMSwxMiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBz
dGFuZGFsb25lPSJubyI/PgorPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAx
LjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRk
IiA+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+Cis8bWV0YWRhdGE+
PC9tZXRhZGF0YT4KKzxkZWZzPgorPGZvbnQgaWQ9IkxpdGhlcnVtIiBob3Jpei1hZHYteD0iMTAy
NCI+Cis8Zm9udC1mYWNlIHVuaXRzLXBlci1lbT0iMTQiIGFzY2VudD0iMTQiIGRlc2NlbnQ9IjAi
Lz4KKzxnbHlwaCB1bmljb2RlPSJ8IiBob3Jpei1hZHYteD0iMTQiIGQ9Ik0wIDB2MTRoMTR2LTE0
eiIvPgorPGdseXBoIHVuaWNvZGU9Ii0iIGhvcml6LWFkdi14PSIyNjYiIGQ9Ik0wIDB2MTRoMjY2
di0xNHoiLz4KKzwvZm9udD4KKzwvZGVmcz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2gtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3Qt
Y3Jhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNhODA4MGJhNTQxYjJlNmUwMzQ4ZWVhZGEz
NTZkNGYyMzgyMWUyNjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw4IEBACitUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHdlIGRvbid0IGNyYXNoIHdoZW4gYXBwbHlp
bmcgYSBjdXN0b20gU1ZHIGZvbnQgdG8gYXR0cmlidXRlZCBzdHJpbmdzLgorR2V0dGluZyBhdHRy
aWJ1dGVkIHN0cmluZyBmb3IgcmFuZ2UgKDAsIDkpCitQQVNTOiBEaWRuJ3QgY3Jhc2guCisKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1j
cmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3Vs
ZC1ub3QtY3Jhc2guaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYzM5MzAxNjM1YmYwYTA0Mjc5ZmQ0Yjk2Y2I0
MGY5ODM0ZmU3MDkzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbApAQCAtMCwwICsxLDM1IEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxz
dHlsZT4KK0Bmb250LWZhY2UgeworICAgIGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOworICAgIHNy
YzogdXJsKCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7Cit9CisqIHsgZm9u
dC1mYW1pbHk6ICdMaXRoZXJ1bSc7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9
InJ1blRlc3QoKSI+CisKKzxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0idGV4dGZpZWxkIiB2YWx1ZT0i
c29tZSB3b3JkIj48L2lucHV0PgorCis8c2NyaXB0PgorICAgIHZhciBvdXRwdXQgPSAiVGhpcyB0
ZXN0IGVuc3VyZXMgdGhhdCB3ZSBkb24ndCBjcmFzaCB3aGVuIGFwcGx5aW5nIGEgY3VzdG9tIFNW
RyBmb250IHRvIGF0dHJpYnV0ZWQgc3RyaW5ncy5cbiI7CisKKyAgICBpZiAod2luZG93LmFjY2Vz
c2liaWxpdHlDb250cm9sbGVyKQorICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7
CisKKyAgICBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgICBpZiAod2luZG93LmFjY2Vzc2li
aWxpdHlDb250cm9sbGVyKSB7CisgICAgICAgICAgICBjb25zdCB0ZXh0RmllbGQgPSBhY2Nlc3Np
YmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoInRleHRmaWVsZCIpOworICAg
ICAgICAgICAgb3V0cHV0ICs9IGBHZXR0aW5nIGF0dHJpYnV0ZWQgc3RyaW5nIGZvciByYW5nZSAo
MCwgOSlcbmA7CisgICAgICAgICAgICBjb25zdCBhdHRyaWJ1dGVkU3RyaW5nID0gdGV4dEZpZWxk
LmF0dHJpYnV0ZWRTdHJpbmdGb3JSYW5nZSgwLCA5KTsKKyAgICAgICAgICAgIG91dHB1dCArPSAi
UEFTUzogRGlkbid0IGNyYXNoLlxuIjsKKyAgICAgICAgICAgIGRlYnVnKG91dHB1dCk7CisgICAg
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgIH0KKzwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0
RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IDg4NTcxNzMxZGE3NzNmMmUwZGUyZDAxMWYxYTM5MWFkMTU3ZmRhYmIuLmQwZjNmZTA4
MDg3MGE3YzAzNTEzZDJmNzI1YTY4ZDIxZjFlZGE1ZjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTMzMSw2ICszMzEsOCBAQCBmYXN0L2Nzcy9hY2Nl
bnQtY29sb3IvdGV4dC5odG1sIFsgUGFzcyBdCiAjIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBidWdz
CiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogCithY2Nlc3NpYmlsaXR5L3N2Zy1m
b250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC5odG1sIFsgU2tpcCBdCisKICMgTmVlZCB0byBpbXBs
ZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aGFzRG9jdW1lbnRSb2xlQW5jZXN0b3IoKSwg
QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aGFzV2ViQXBwbGljYXRpb25BbmNlc3RvcigpLAogIyBB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojppc0luRGVzY3JpcHRpb25MaXN0RGV0YWlsKCksIEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OmlzSW5EZXNjcmlwdGlvbkxpc3RUZXJtKCksIGFuZAogIyBBY2Nl
c3NpYmlsaXR5VUlFbGVtZW50Ojppc0luQ2VsbCgpLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCA3ZWMzNDUxNGJmZDQ2MTg3N2VhMzFhZDY1N2NiZmQ5MWNk
Nzk1MGUxLi4xNGFiMjI3NjA0MzkwYTYwY2ExNTdjYmFjMzgxMmYzYTQ1NTFlMjY4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjEwNCw2ICsyMTA0LDcg
QEAgYWNjZXNzaWJpbGl0eS9keW5hbWljYWxseS1jaGFuZ2luZy1pZnJhbWUtcmVtYWlucy1hY2Nl
c3NpYmxlLmh0bWwgWyBQYXNzIF0KIAogYWNjZXNzaWJpbGl0eS9zZWxlY3RlZC1zdGF0ZS1jaGFu
Z2VkLW5vdGlmaWNhdGlvbnMuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxp
bmUtcmVjdHMtYW5kLXRleHQuaHRtbCBbIFBhc3MgXQorYWNjZXNzaWJpbGl0eS9zdmctZm9udC1m
YWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbCBbIFBhc3MgXQogCiAjIEVuYWJsZSAiYXR0YWNobWVu
dCBlbGVtZW50IiB0ZXN0IGZvciBpT1MKIGFjY2Vzc2liaWxpdHkvYXR0YWNobWVudC1lbGVtZW50
Lmh0bWwgWyBQYXNzIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nl
c3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4dC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5k
LXRleHQtZXhwZWN0ZWQudHh0CmluZGV4IGMyMGQ2MWIxZmI4YWJkMGYxYzk1YWU3ODg2Y2RmYWIw
ZTA0NzVlNmIuLjM1ZDYxNThlN2YzYmRhYjA0Y2RlZGJjNWJmZTE2YmEyYTA0OGFhMjQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGlu
ZS1yZWN0cy1hbmQtdGV4dC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4
dApAQCAtMTAsMjggKzEwLDI4IEBAIFRoaXMgdGVzdHMgdGhhdCBsaW5lUmVjdHNBbmRUZXh0IHJl
dHVybnMgdGhlIGNvcnJlY3QgdmFsdWVzLgogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAK
LXRleHQgPSAiVGhpcyBpcyBzb21lIHRlc3RpbmcgY29udGVudC4ge1xuICAgIFVJQWNjZXNzaWJp
bGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9u
dE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6
ZSA9IDE2O1xufUEgbGluayBoZXJlLntcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1p
bHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBS
b21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAxNjtcbiAgICBVSUFj
Y2Vzc2liaWxpdHlUb2tlblVuZGVybGluZSA9IDE7XG59IE1PcmUgdGV4dC57XG4gICAgVUlBY2Nl
c3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9r
ZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZv
bnRTaXplID0gMTY7XG59IjsKK3RleHQgPSAiVGhpcyBpcyBzb21lIHRlc3RpbmcgY29udGVudC4g
e1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAg
ICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0g
MTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn1B
IGxpbmsgaGVyZS57XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0g
VGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFY
Rm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtc
biAgICB9O1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuVW5kZXJsaW5lID0gMTtcbn0gTU9yZSB0
ZXh0LntcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztc
biAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6
ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07
XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQotdGV4dCA9ICJ6e1xuICAg
IFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJp
bGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5
VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gInp7XG4gICAgQVhGb250ID0gICAgIHtc
biAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRp
bWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxl
TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhl
aWdodCA+IDA6IHRydWUKLXRleHQgPSAiQW5vdGhlciBsaW5lIG9mIHRleHQue1xuICAgIFVJQWNj
ZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRv
a2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5G
b250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gIkFub3RoZXIgbGluZSBvZiB0ZXh0LntcbiAgICBB
WEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhG
b250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAg
ICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59IjsKIHdpZHRo
ID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQogdGV4dCA9ICJjYWtle1xufSI7CiB3aWR0aCA+
IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRleHQgPSAiSmFjayBhbmQgSmlsbCB3ZW50IHVw
IHRoZSBoaWxsIHRvIGZldGNoIGEgcGFpbCBvZiB3YXRlci4gSmFjayBmZWxsIGRvd24uLi57XG4g
ICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3Np
YmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxp
dHlUb2tlbkZvbnRTaXplID0gMTQ7XG59IjsKK3RleHQgPSAiSmFjayBhbmQgSmlsbCB3ZW50IHVw
IHRoZSBoaWxsIHRvIGZldGNoIGEgcGFpbCBvZiB3YXRlci4gSmFjayBmZWxsIGRvd24uLi57XG4g
ICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAg
IEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNDtc
biAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3
aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRleHQgPSAiYWJjZGVmZ2hpamtsbW5v
cHFyc3R1dnd4eXowMTIzNDU2Nzg5IGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4
OSB7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlB
Y2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vz
c2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59IjsKK3RleHQgPSAiYWJjZGVmZ2hpamtsbW5v
cHFyc3R1dnd4eXowMTIzNDU2Nzg5IGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4
OSB7XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4g
ICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUg
PSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xu
fSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRleHQgPSAiYWJjZGVmZ2hp
amtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEy
MzQ1Njc4OS17XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4g
ICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBV
SUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59IjsKK3RleHQgPSAiYWJjZGVmZ2hp
amtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEy
MzQ1Njc4OS17XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGlt
ZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9u
dFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAg
ICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRleHQgPSAiYWJj
ZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5e1xuICAgIFVJQWNjZXNzaWJpbGl0eVRv
a2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUg
PSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2
O1xufSI7Cit0ZXh0ID0gImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OXtcbiAg
ICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAg
QVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xu
ICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59IjsKIHdp
ZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3Rh
dGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCAx
NDJkZTUyNTE4NzdjZTM3YmUwNzQ1OWU5ZmQ2NDhlMDQ5NWIwZWIzLi5lNDAyNmFkYzZkNDQ4NzRk
MWQ1MjRiNDk5MmQ2YjAyZGZmYTU4MDcyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVz
dEV4cGVjdGF0aW9ucwpAQCAtNDkyMiw3ICs0OTIyLDEwIEBAIHdlYmtpdC5vcmcvYi8yMjkzMDAg
aHR0cC90ZXN0cy9zZWN1cml0eS9uby1qYXZhc2NyaXB0LXJlZnJlc2gtc3BhY2VzLnB5IFsgUGFz
cyBDCiBhY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXN0YXRlLWNoYW5nZWQtbm90aWZpY2F0aW9ucy5o
dG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4dC5o
dG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2RpYWxvZy1wcm9wZXJ0aWVzLmh0bWwgWyBTa2lw
IF0KKworIyBNaXNzaW5nIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmF0dHJpYnV0ZWRTdHJpbmdG
b3JSYW5nZSBpbXBsZW1lbnRhdGlvbgogYWNjZXNzaWJpbGl0eS9uYXRpdmUtdGV4dC1jb250cm9s
LWF0dHJpYnV0ZWQtc3RyaW5nLmh0bWwgWyBTa2lwIF0KK2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQt
ZmFjZS1zaG91bGQtbm90LWNyYXNoLmh0bWwgWyBTa2lwIF0KIAogd2Via2l0Lm9yZy9iLzIyOTI0
NyBodHRwL3Rlc3RzL2ZldGNoL2tlZXBhbGl2ZS1mZXRjaC0yLmh0bWwgWyBQYXNzIEZhaWx1cmUg
XQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453685</attachid>
            <date>2022-03-02 17:46:50 -0800</date>
            <delta_ts>2022-03-03 10:39:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220302194649.patch</filename>
            <type>text/plain</type>
            <size>22164</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGVmMTA3YTYwMzBjNjkz
ODQzN2RhNTUyY2ViMmMzNTA5NmY4MTdlZC4uZDgzN2Y3NTczMTFiNmI5Mjc3NWIxNDRlNTgzYWQ1
ZjM5MzFjZmVmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIyLTAzLTAyICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0
cmluZ1NldEZvbnRdIGNyYXNoZXMgd2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhCisgICAgICAgIG5p
bCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5LCBvciBkaXNwbGF5IG5hbWUuIFRoaXMgY2Fu
IGJlCisgICAgICAgIHRyaWdnZXJlZCB3aXRoIGEgY3VzdG9tIFNWRyBAZm9udC1mYWNlIC0tIGZv
ciBleGFtcGxlOgorCisgICAgICAgIEBmb250LWZhY2UgeworICAgICAgICAgICAgZm9udC1mYW1p
bHk6ICdMaXRoZXJ1bSc7CisgICAgICAgICAgICBzcmM6IHVybCgicmVzb3VyY2VzL0xpdGhlcnVt
LnN2ZyIpIGZvcm1hdChzdmcpOworICAgICAgICB9CisgICAgICAgICogeyBmb250LWZhbWlseTog
J0xpdGhlcnVtJzsgfQorCisgICAgICAgIFdlIGZpeCB0aGlzIGJ5IGNoZWNraW5nIGlmIHRoZXNl
IHZhbHVlcyBhcmUgbmlsIGJlZm9yZSB0cnlpbmcgdG8gYWRkCisgICAgICAgIHRoZW0gdG8gYSBk
aWN0aW9uYXJ5LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyBjZW50cmFsaXplcyBhcHBsaWNh
dGlvbiBvZiBmb250cyB0byBhdHRyaWJ1dGVkIHN0cmluZ3MKKyAgICAgICAgYnkgbW92aW5nIEFY
QXR0cmlidXRlU3RyaW5nU2V0Rm9udCB0byB0aGUgYmFzZSB3cmFwcGVyLiBJbiBkb2luZyBzbywK
KyAgICAgICAgd2UgZml4IGEgYnVnIHdoZXJlIGlmIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlckJhc2UgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZV0gd2FzCisgICAgICAgIGNhbGxlZCBm
cm9tIGEgTWFjLWNvbnRleHQsIGl0IHNldCBpT1MgZm9udCBwcm9wZXJ0aWVzIChlLmcuCisgICAg
ICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSBpbnN0ZWFkIG9mIE5TQWNjZXNzaWJp
bGl0eUZvbnRGYW1pbHlLZXkpLgorCisgICAgICAgIFRlc3Q6IGFjY2Vzc2liaWxpdHkvc3ZnLWZv
bnQtZmFjZS1zaG91bGQtbm90LWNyYXNoLmh0bWwKKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkv
bWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oOgorICAgICAgICAqIGFjY2Vz
c2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbToKKyAgICAg
ICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6IEFkZGVkLgorICAgICAgICAoQVhB
dHRyaWJ1dGVTdHJpbmdTZXRGb250KTogQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9t
YWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW06CisgICAgICAgIChBWEF0dHJp
YnV0ZVN0cmluZ1NldFN0eWxlKToKKyAgICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ0FwcGVuZFRl
eHQpOgorICAgICAgICAoQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkKToKKyAgICAgICAg
TW92ZWQgdG8gYmFzZSB3cmFwcGVyLgorICAgICAgICAoQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250
KToKKyAgICAgICAgTW92ZWQgdG8gYmFzZSB3cmFwcGVyLgorCiAyMDIyLTAyLTI4ICBKZXIgTm9i
bGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gQWRvcHQgLXN0cmVh
bURhdGFQYXJzZXI6ZGlkUHJvdmlkZUNvbnRlbnRLZXlTcGVjaWZpZXI6Zm9yVHJhY2tJRDogZGVs
ZWdhdGUgY2FsbGJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
bWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oIGIvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmgKaW5k
ZXggYWMyYmRiZmUyYWM1ODk2NTYwZTYwOTYwNGM3Njk4MzZhMjg0MjRhZC4uODdiY2UxY2FkOWRm
ZDRlZjQ3ZjBmNjg1NzhhMmY1MmYzMjBjODk5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVj
dFdyYXBwZXJCYXNlLmgKQEAgLTI3LDYgKzI3LDcgQEAKICAqLwogCiAjaW1wb3J0ICJBY2Nlc3Np
YmlsaXR5T2JqZWN0SW50ZXJmYWNlLmgiCisjaW1wb3J0ICJGb250UGxhdGZvcm1EYXRhLmgiCiAj
aW1wb3J0IDxDb3JlR3JhcGhpY3MvQ29yZUdyYXBoaWNzLmg+CiAjaW1wb3J0IDx2YXJpYW50Pgog
I2ltcG9ydCA8d3RmL1JlZlB0ci5oPgpAQCAtNTcsNiArNTgsOSBAQCBzdGF0aWMgTlNTdHJpbmcg
KiBjb25zdCBVSUFjY2Vzc2liaWxpdHlUb2tlbkF0dGFjaG1lbnQgPSBAIlVJQWNjZXNzaWJpbGl0
eVRva2VuQQogc3RhdGljIE5TU3RyaW5nICogY29uc3QgVUlBY2Nlc3NpYmlsaXR5VGV4dEF0dHJp
YnV0ZUNvbnRleHQgPSBAIlVJQWNjZXNzaWJpbGl0eVRleHRBdHRyaWJ1dGVDb250ZXh0IjsKIHN0
YXRpYyBOU1N0cmluZyAqIGNvbnN0IFVJQWNjZXNzaWJpbGl0eVRleHR1YWxDb250ZXh0U291cmNl
Q29kZSA9IEAiVUlBY2Nlc3NpYmlsaXR5VGV4dHVhbENvbnRleHRTb3VyY2VDb2RlIjsKIAorYm9v
bCBBWEF0dHJpYnV0ZWRTdHJpbmdSYW5nZUlzVmFsaWQoTlNBdHRyaWJ1dGVkU3RyaW5nKiwgTlNS
YW5nZSk7Cit2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udChOU011dGFibGVBdHRyaWJ1dGVk
U3RyaW5nKiwgQ1RGb250UmVmLCBOU1JhbmdlKTsKKwogQGludGVyZmFjZSBXZWJBY2Nlc3NpYmls
aXR5T2JqZWN0V3JhcHBlckJhc2UgOiBOU09iamVjdCB7CiAgICAgV2ViQ29yZTo6QVhDb3JlT2Jq
ZWN0KiBtX2F4T2JqZWN0OwogI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0lTT0xBVEVEX1RSRUUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0KaW5kZXggYWE2NmYzZjVm
Mzk5ZDZmNTdkYjRjYTQ3ODg1M2E1NjUzZGViZTQ1NS4uNjk4NDkxYzZlYzI3NGEyNjU5ZjYzNzEw
MWE3MTQ2YjhkOTI1NmUyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFz
ZS5tbQpAQCAtNTc4LDI3ICs1NzgsNTkgQEAgc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdT
ZXRIZWFkaW5nTGV2ZWwoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0clN0cmkKICAgICAg
ICAgW2F0dHJTdHJpbmcgcmVtb3ZlQXR0cmlidXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuSGVhZGlu
Z0xldmVsIHJhbmdlOnJhbmdlXTsKIH0KIAotc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdT
ZXRGb250KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIENURm9udFJlZiBm
b250LCBOU1JhbmdlIHJhbmdlKQorLy8gV2hlbiBtb2RpZnlpbmcgYXR0cmlidXRlZCBzdHJpbmdz
LCB0aGUgcmFuZ2UgY2FuIGNvbWUgZnJvbSBhIHNvdXJjZSB3aGljaCBtYXkgcHJvdmlkZSBmYXVs
dHkgaW5mb3JtYXRpb24gKGUuZy4gdGhlIHNwZWxsIGNoZWNrZXIpLgorLy8gVG8gcHJvdGVjdCBh
Z2FpbnN0IHN1Y2ggY2FzZXMsIHRoZSByYW5nZSBzaG91bGQgYmUgdmFsaWRhdGVkIGJlZm9yZSBh
ZGRpbmcgb3IgcmVtb3ZpbmcgYXR0cmlidXRlcy4KK2Jvb2wgQVhBdHRyaWJ1dGVkU3RyaW5nUmFu
Z2VJc1ZhbGlkKE5TQXR0cmlidXRlZFN0cmluZyAqYXR0cmlidXRlZFN0cmluZywgTlNSYW5nZSBy
YW5nZSkKIHsKLSAgICBpZiAoIWZvbnQpCisgICAgcmV0dXJuIE5TTWF4UmFuZ2UocmFuZ2UpIDw9
IFthdHRyaWJ1dGVkU3RyaW5nIGxlbmd0aF07Cit9CisKK3ZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdT
ZXRGb250KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJpYnV0ZWRTdHJpbmcsIENURm9u
dFJlZiBmb250LCBOU1JhbmdlIHJhbmdlKQoreworICAgIGlmICghQVhBdHRyaWJ1dGVkU3RyaW5n
UmFuZ2VJc1ZhbGlkKGF0dHJpYnV0ZWRTdHJpbmcsIHJhbmdlKSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBmdWxsTmFtZSA9IGFkb3B0Q0YoQ1RGb250Q29w
eUZ1bGxOYW1lKGZvbnQpKTsKLSAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGZhbWlseU5hbWUg
PSBhZG9wdENGKENURm9udENvcHlGYW1pbHlOYW1lKGZvbnQpKTsKKyAgICBpZiAoIWZvbnQpIHsK
KyNpZiBQTEFURk9STShNQUMpCisgICAgICAgIFthdHRyaWJ1dGVkU3RyaW5nIHJlbW92ZUF0dHJp
YnV0ZTpOU0FjY2Vzc2liaWxpdHlGb250VGV4dEF0dHJpYnV0ZSByYW5nZTpyYW5nZV07CisjZW5k
aWYKKyAgICAgICAgcmV0dXJuOworICAgIH0KIAorICAgIFJldGFpblB0cjxOU011dGFibGVEaWN0
aW9uYXJ5PiBmb250QXR0cmlidXRlcyA9IGFkb3B0TlMoW1tOU011dGFibGVEaWN0aW9uYXJ5IGFs
bG9jXSBpbml0XSk7CisgICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBmYW1pbHlOYW1lID0gYWRv
cHRDRihDVEZvbnRDb3B5RmFtaWx5TmFtZShmb250KSk7CiAgICAgTlNOdW1iZXIqIHNpemUgPSBb
TlNOdW1iZXIgbnVtYmVyV2l0aEZsb2F0OkNURm9udEdldFNpemUoZm9udCldOwotICAgIENURm9u
dFN5bWJvbGljVHJhaXRzIHRyYWl0cyA9IENURm9udEdldFN5bWJvbGljVHJhaXRzKGZvbnQpOwot
ICAgIE5TTnVtYmVyKiBib2xkID0gW05TTnVtYmVyIG51bWJlcldpdGhCb29sOih0cmFpdHMgJiBr
Q1RGb250VHJhaXRCb2xkKV07CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBSZXRhaW5Q
dHI8Q0ZTdHJpbmdSZWY+IGZ1bGxOYW1lID0gYWRvcHRDRihDVEZvbnRDb3B5RnVsbE5hbWUoZm9u
dCkpOwogICAgIGlmIChmdWxsTmFtZSkKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0cmlidXRl
OlVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgdmFsdWU6KE5TU3RyaW5nKilmdWxsTmFtZS5n
ZXQoKSByYW5nZTpyYW5nZV07CisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTooX19i
cmlkZ2UgTlNTdHJpbmcqKWZ1bGxOYW1lLmdldCgpIGZvcktleTpVSUFjY2Vzc2liaWxpdHlUb2tl
bkZvbnROYW1lXTsKICAgICBpZiAoZmFtaWx5TmFtZSkKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRk
QXR0cmlidXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSB2YWx1ZTooTlNTdHJpbmcq
KWZhbWlseU5hbWUuZ2V0KCkgcmFuZ2U6cmFuZ2VdOworICAgICAgICBbZm9udEF0dHJpYnV0ZXMg
c2V0VmFsdWU6KF9fYnJpZGdlIE5TU3RyaW5nKilmYW1pbHlOYW1lLmdldCgpIGZvcktleTpVSUFj
Y2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHldOwogICAgIGlmIChbc2l6ZSBib29sVmFsdWVdKQot
ICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250
U2l6ZSB2YWx1ZTpzaXplIHJhbmdlOnJhbmdlXTsKLSAgICBpZiAoW2JvbGQgYm9vbFZhbHVlXSB8
fCAodHJhaXRzICYga0NURm9udFRyYWl0Qm9sZCkpCi0gICAgICAgIFthdHRyU3RyaW5nIGFkZEF0
dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkJvbGQgdmFsdWU6QFlFUyByYW5nZTpyYW5nZV07
CisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpzaXplIGZvcktleTpVSUFjY2Vzc2li
aWxpdHlUb2tlbkZvbnRTaXplXTsKKyAgICBDVEZvbnRTeW1ib2xpY1RyYWl0cyB0cmFpdHMgPSBD
VEZvbnRHZXRTeW1ib2xpY1RyYWl0cyhmb250KTsKKyAgICBpZiAodHJhaXRzICYga0NURm9udFRy
YWl0Qm9sZCkKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOkBZRVMgZm9yS2V5OlVJ
QWNjZXNzaWJpbGl0eVRva2VuQm9sZF07CiAgICAgaWYgKHRyYWl0cyAmIGtDVEZvbnRUcmFpdEl0
YWxpYykKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0cmlidXRlOlVJQWNjZXNzaWJpbGl0eVRv
a2VuSXRhbGljIHZhbHVlOkBZRVMgcmFuZ2U6cmFuZ2VdOworICAgICAgICBbZm9udEF0dHJpYnV0
ZXMgc2V0VmFsdWU6QFlFUyBmb3JLZXk6VUlBY2Nlc3NpYmlsaXR5VG9rZW5JdGFsaWNdOworCisg
ICAgW2F0dHJpYnV0ZWRTdHJpbmcgYWRkQXR0cmlidXRlczpmb250QXR0cmlidXRlcy5nZXQoKSBy
YW5nZTpyYW5nZV07CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICBbZm9udEF0dHJp
YnV0ZXMgc2V0VmFsdWU6c2l6ZSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udFNpemVLZXldOwor
CisgICAgaWYgKGZhbWlseU5hbWUpCisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZToo
X19icmlkZ2UgTlNTdHJpbmcqKWZhbWlseU5hbWUuZ2V0KCkgZm9yS2V5Ok5TQWNjZXNzaWJpbGl0
eUZvbnRGYW1pbHlLZXldOworICAgIFJldGFpblB0cjxDRlN0cmluZ1JlZj4gcG9zdFNjcmlwdE5h
bWUgPSBhZG9wdENGKENURm9udENvcHlQb3N0U2NyaXB0TmFtZShmb250KSk7CisgICAgaWYgKHBv
c3RTY3JpcHROYW1lKQorICAgICAgICBbZm9udEF0dHJpYnV0ZXMgc2V0VmFsdWU6KF9fYnJpZGdl
IE5TU3RyaW5nKilwb3N0U2NyaXB0TmFtZS5nZXQoKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9u
dE5hbWVLZXldOworICAgIFJldGFpblB0cjxDRlN0cmluZ1JlZj4gZGlzcGxheU5hbWUgPSBhZG9w
dENGKENURm9udENvcHlEaXNwbGF5TmFtZShmb250KSk7CisgICAgaWYgKGRpc3BsYXlOYW1lKQor
ICAgICAgICBbZm9udEF0dHJpYnV0ZXMgc2V0VmFsdWU6KF9fYnJpZGdlIE5TU3RyaW5nKilkaXNw
bGF5TmFtZS5nZXQoKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5VmlzaWJsZU5hbWVLZXldOworCisg
ICAgW2F0dHJpYnV0ZWRTdHJpbmcgYWRkQXR0cmlidXRlOk5TQWNjZXNzaWJpbGl0eUZvbnRUZXh0
QXR0cmlidXRlIHZhbHVlOmZvbnRBdHRyaWJ1dGVzLmdldCgpIHJhbmdlOnJhbmdlXTsKKyNlbmRp
ZgogfQogCiBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldE51bWJlcihOU011dGFibGVB
dHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBOU1N0cmluZyogYXR0cmlidXRlLCBOU051bWJl
ciogbnVtYmVyLCBOU1JhbmdlIHJhbmdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBl
ck1hYy5tbQppbmRleCBjZDliYWFlNDNkZDUyZGUxY2I5NThmOTU4MDNkZmM1OGUzNjlmNTIzLi5i
OGQ5MWNjNjY5M2ZiMGVjMjc2NDlmNWVhN2FhOThiYzFhZjg2Zjk4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBl
ck1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQpAQCAtNzY4LDMxICs3NjgsNiBAQCBzdGF0aWMgUmV0
YWluUHRyPEFYVGV4dE1hcmtlclJlZj4gcHJldmlvdXNUZXh0TWFya2VyRm9yQ2hhcmFjdGVyT2Zm
c2V0KEFYT2JqZWN0QwogICAgIHJldHVybiBhZG9wdENGKEFYVGV4dE1hcmtlckNyZWF0ZShrQ0ZB
bGxvY2F0b3JEZWZhdWx0LCAoY29uc3QgVUludDgqKSZ0ZXh0TWFya2VyRGF0YS52YWx1ZSgpLCBz
aXplb2YodGV4dE1hcmtlckRhdGEudmFsdWUoKSkpKTsKIH0KIAotLy8gV2hlbiBtb2RpZnlpbmcg
YXR0cmlidXRlZCBzdHJpbmdzLCB0aGUgcmFuZ2UgY2FuIGNvbWUgZnJvbSBhIHNvdXJjZSB3aGlj
aCBtYXkgcHJvdmlkZSBmYXVsdHkgaW5mb3JtYXRpb24gKGUuZy4gdGhlIHNwZWxsIGNoZWNrZXIp
LgotLy8gVG8gcHJvdGVjdCBhZ2FpbnN0IHN1Y2ggY2FzZXMgdGhlIHJhbmdlIHNob3VsZCBiZSB2
YWxpZGF0ZWQgYmVmb3JlIGFkZGluZyBvciByZW1vdmluZyBhdHRyaWJ1dGVzLgotc3RhdGljIEJP
T0wgQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkKE5TQXR0cmlidXRlZFN0cmluZyAqYXR0
clN0cmluZywgTlNSYW5nZSByYW5nZSkKLXsKLSAgICByZXR1cm4gKHJhbmdlLmxvY2F0aW9uIDwg
W2F0dHJTdHJpbmcgbGVuZ3RoXSAmJiBOU01heFJhbmdlKHJhbmdlKSA8PSBbYXR0clN0cmluZyBs
ZW5ndGhdKTsKLX0KLQotc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KE5TTXV0
YWJsZUF0dHJpYnV0ZWRTdHJpbmcgKmF0dHJTdHJpbmcsIE5TU3RyaW5nICphdHRyaWJ1dGUsIENU
Rm9udFJlZiBmb250LCBOU1JhbmdlIHJhbmdlKQotewotICAgIGlmICghQVhBdHRyaWJ1dGVkU3Ry
aW5nUmFuZ2VJc1ZhbGlkKGF0dHJTdHJpbmcsIHJhbmdlKSkKLSAgICAgICAgcmV0dXJuOwotCi0g
ICAgaWYgKGZvbnQpIHsKLSAgICAgICAgTlNEaWN0aW9uYXJ5ICpkaWN0aW9uYXJ5ID0gQHsKLSAg
ICAgICAgICAgIE5TQWNjZXNzaWJpbGl0eUZvbnROYW1lS2V5OiAoX19icmlkZ2UgTlNTdHJpbmcg
KilhZG9wdENGKENURm9udENvcHlQb3N0U2NyaXB0TmFtZShmb250KSkuZ2V0KCksCi0gICAgICAg
ICAgICBOU0FjY2Vzc2liaWxpdHlGb250RmFtaWx5S2V5OiAoX19icmlkZ2UgTlNTdHJpbmcgKilh
ZG9wdENGKENURm9udENvcHlGYW1pbHlOYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5T
QWNjZXNzaWJpbGl0eVZpc2libGVOYW1lS2V5OiAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9wdENG
KENURm9udENvcHlEaXNwbGF5TmFtZShmb250KSkuZ2V0KCksCi0gICAgICAgICAgICBOU0FjY2Vz
c2liaWxpdHlGb250U2l6ZUtleTogQChDVEZvbnRHZXRTaXplKGZvbnQpKSwKLSAgICAgICAgfTsK
LSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0cmlidXRlOmF0dHJpYnV0ZSB2YWx1ZTpkaWN0aW9u
YXJ5IHJhbmdlOnJhbmdlXTsKLSAgICB9IGVsc2UKLSAgICAgICAgW2F0dHJTdHJpbmcgcmVtb3Zl
QXR0cmlidXRlOmF0dHJpYnV0ZSByYW5nZTpyYW5nZV07Ci0gICAgCi19Ci0KIHN0YXRpYyB2b2lk
IEFYQXR0cmlidXRlU3RyaW5nU2V0Q29sb3IoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0
clN0cmluZywgTlNTdHJpbmcqIGF0dHJpYnV0ZSwgTlNDb2xvciogY29sb3IsIE5TUmFuZ2UgcmFu
Z2UpCiB7CiAgICAgaWYgKCFBWEF0dHJpYnV0ZWRTdHJpbmdSYW5nZUlzVmFsaWQoYXR0clN0cmlu
ZywgcmFuZ2UpKQpAQCAtODIxLDEwICs3OTYsMTAgQEAgc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVT
dHJpbmdTZXROdW1iZXIoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0clN0cmluZywgTlMK
IHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0U3R5bGUoTlNNdXRhYmxlQXR0cmlidXRl
ZFN0cmluZyogYXR0clN0cmluZywgUmVuZGVyT2JqZWN0KiByZW5kZXJlciwgTlNSYW5nZSByYW5n
ZSkKIHsKICAgICBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUgPSByZW5kZXJlci0+c3R5bGUoKTsK
LSAgICAKKwogICAgIC8vIHNldCBiYXNpYyBmb250IGluZm8KLSAgICBBWEF0dHJpYnV0ZVN0cmlu
Z1NldEZvbnQoYXR0clN0cmluZywgTlNBY2Nlc3NpYmlsaXR5Rm9udFRleHRBdHRyaWJ1dGUsIHN0
eWxlLmZvbnRDYXNjYWRlKCkucHJpbWFyeUZvbnQoKS5nZXRDVEZvbnQoKSwgcmFuZ2UpOwotICAg
IAorICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udChhdHRyU3RyaW5nLCBzdHlsZS5mb250Q2Fz
Y2FkZSgpLnByaW1hcnlGb250KCkuZ2V0Q1RGb250KCksIHJhbmdlKTsKKwogICAgIC8vIHNldCBi
YXNpYyBjb2xvcnMKICAgICBBWEF0dHJpYnV0ZVN0cmluZ1NldENvbG9yKGF0dHJTdHJpbmcsIE5T
QWNjZXNzaWJpbGl0eUZvcmVncm91bmRDb2xvclRleHRBdHRyaWJ1dGUsIGNvY29hQ29sb3Ioc3R5
bGUudmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5Q29sb3IpKS5nZXQoKSwgcmFuZ2Up
OwogICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0Q29sb3IoYXR0clN0cmluZywgTlNBY2Nlc3NpYmls
aXR5QmFja2dyb3VuZENvbG9yVGV4dEF0dHJpYnV0ZSwgY29jb2FDb2xvcihzdHlsZS52aXNpdGVk
RGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpKS5nZXQoKSwgcmFuZ2Up
OwpAQCAtMTAyMyw3ICs5OTgsNyBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZWRTdHJpbmdBcHBl
bmRUZXh0KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsCiAjZW5kaWYKICAg
ICAgICAgW2F0dHJTdHJpbmcgcmVtb3ZlQXR0cmlidXRlOk5TQWNjZXNzaWJpbGl0eU1pc3NwZWxs
ZWRUZXh0QXR0cmlidXRlIHJhbmdlOmF0dHJTdHJpbmdSYW5nZV07CiAgICAgfQotICAgIAorCiAg
ICAgLy8gc2V0IG5ldyBhdHRyaWJ1dGVzCiAgICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZShh
dHRyU3RyaW5nLCByZW5kZXJlciwgYXR0clN0cmluZ1JhbmdlKTsKICAgICBBWEF0dHJpYnV0ZVN0
cmluZ1NldEhlYWRpbmdMZXZlbChhdHRyU3RyaW5nLCByZW5kZXJlciwgYXR0clN0cmluZ1Jhbmdl
KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCA3OTE5YmVhMmVjZjQxZjlhMjU1ZDVlOGQ0NzdkNWU0MmQxMDA2N2RlLi4zNmE3
ZmI4YTJjNjZlN2Y4OTJjZTMxNzZhYTQxYjA4MmUyNzQxMWRiIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMjItMDMtMDIgIFR5bGVyIFdpbGNvY2sgIDx0eWxlcl93QGFwcGxlLmNvbT4KKworICAg
ICAgICBBWDogW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjIEFYQXR0cmlidXRlU3Ry
aW5nU2V0Rm9udF0gY3Jhc2hlcyB3aGVuIGdpdmVuIGEgZm9udCB3aXRoIGEgbmlsIHBvc3RzY3Jp
cHQgbmFtZSwgZm9udCBmYW1pbHksIG9yIGRpc3BsYXkgbmFtZQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3MzczCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9M
aXRoZXJ1bS5zdmc6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFj
ZS1zaG91bGQtbm90LWNyYXNoLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogYWNjZXNz
aWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1ub3QtY3Jhc2guaHRtbDogQWRkZWQuCisgICAg
ICAgICogcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIG5ldyB0ZXN0LgorICAg
ICAgICAqIHBsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zOiBFbmFibGUgbmV3IHRlc3QuCisg
ICAgICAgICogcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnM6IFNraXAgbmV3IHRlc3QuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMt
YW5kLXRleHQtZXhwZWN0ZWQudHh0OgorICAgICAgICBCZWZvcmUgdGhpcyBwYXRjaCwgW1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZSBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlXSBj
YWxsZWQgdGhlIGlPUworICAgICAgICB2ZXJzaW9uIG9mIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9u
dC4gVGhpcyBwYXRjaCBmaXhlcyB0aGlzLiBUaGUgZXhwZWN0YXRpb24gZm9yIHRoaXMgdGVzdCBp
cyB1cGRhdGVkIGFzIGEgcmVzdWx0LgorCiAyMDIyLTAyLTI4ICBSb2IgQnVpcyAgPHJidWlzQGln
YWxpYS5jb20+CiAKICAgICAgICAgSGFuZGxlIHdpZG93IHJlbGF5b3V0IGRpZmZlcmVudGx5CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9MaXRoZXJ1bS5z
dmcgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9MaXRoZXJ1bS5zdmcKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYzM1NDhlNTBmZmE3YzA3NjJkMzcyYzMzNzJhOTg5NTgzMjVjZDM3MwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvcmVzb3VyY2VzL0xpdGhlcnVt
LnN2ZwpAQCAtMCwwICsxLDEyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIHN0YW5kYWxvbmU9Im5v
Ij8+Cis8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRw
Oi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiID4KKzxzdmcgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKzxtZXRhZGF0YT48L21ldGFkYXRhPgor
PGRlZnM+Cis8Zm9udCBpZD0iTGl0aGVydW0iIGhvcml6LWFkdi14PSIxMDI0Ij4KKzxmb250LWZh
Y2UgdW5pdHMtcGVyLWVtPSIxNCIgYXNjZW50PSIxNCIgZGVzY2VudD0iMCIvPgorPGdseXBoIHVu
aWNvZGU9InwiIGhvcml6LWFkdi14PSIxNCIgZD0iTTAgMHYxNGgxNHYtMTR6Ii8+Cis8Z2x5cGgg
dW5pY29kZT0iLSIgaG9yaXotYWR2LXg9IjI2NiIgZD0iTTAgMHYxNGgyNjZ2LTE0eiIvPgorPC9m
b250PgorPC9kZWZzPgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uY2E4MDgwYmE1NDFiMmU2ZTAzNDhlZWFkYTM1NmQ0ZjIzODIxZTI2
OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQt
ZmFjZS1zaG91bGQtbm90LWNyYXNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKK1RoaXMg
dGVzdCBlbnN1cmVzIHRoYXQgd2UgZG9uJ3QgY3Jhc2ggd2hlbiBhcHBseWluZyBhIGN1c3RvbSBT
VkcgZm9udCB0byBhdHRyaWJ1dGVkIHN0cmluZ3MuCitHZXR0aW5nIGF0dHJpYnV0ZWQgc3RyaW5n
IGZvciByYW5nZSAoMCwgOSkKK1BBU1M6IERpZG4ndCBjcmFzaC4KKworUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1zaG91bGQtbm90LWNyYXNoLmh0bWwgYi9M
YXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5vdC1jcmFzaC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmVjMzkzMDE2MzViZjBhMDQyNzlmZDRiOTZjYjQwZjk4MzRmZTcwOTMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZh
Y2Utc2hvdWxkLW5vdC1jcmFzaC5odG1sCkBAIC0wLDAgKzEsMzUgQEAKKzwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0
IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorQGZvbnQt
ZmFjZSB7CisgICAgZm9udC1mYW1pbHk6ICdMaXRoZXJ1bSc7CisgICAgc3JjOiB1cmwoInJlc291
cmNlcy9MaXRoZXJ1bS5zdmciKSBmb3JtYXQoc3ZnKTsKK30KKyogeyBmb250LWZhbWlseTogJ0xp
dGhlcnVtJzsgfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4K
KworPGlucHV0IHR5cGU9InRleHQiIGlkPSJ0ZXh0ZmllbGQiIHZhbHVlPSJzb21lIHdvcmQiPjwv
aW5wdXQ+CisKKzxzY3JpcHQ+CisgICAgdmFyIG91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB0
aGF0IHdlIGRvbid0IGNyYXNoIHdoZW4gYXBwbHlpbmcgYSBjdXN0b20gU1ZHIGZvbnQgdG8gYXR0
cmlidXRlZCBzdHJpbmdzLlxuIjsKKworICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRy
b2xsZXIpCisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworICAgIGZ1bmN0
aW9uIHJ1blRlc3QoKSB7CisgICAgICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIpIHsKKyAgICAgICAgICAgIGNvbnN0IHRleHRGaWVsZCA9IGFjY2Vzc2liaWxpdHlDb250cm9s
bGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgidGV4dGZpZWxkIik7CisgICAgICAgICAgICBvdXRw
dXQgKz0gYEdldHRpbmcgYXR0cmlidXRlZCBzdHJpbmcgZm9yIHJhbmdlICgwLCA5KVxuYDsKKyAg
ICAgICAgICAgIGNvbnN0IGF0dHJpYnV0ZWRTdHJpbmcgPSB0ZXh0RmllbGQuYXR0cmlidXRlZFN0
cmluZ0ZvclJhbmdlKDAsIDkpOworICAgICAgICAgICAgb3V0cHV0ICs9ICJQQVNTOiBEaWRuJ3Qg
Y3Jhc2guXG4iOworICAgICAgICAgICAgZGVidWcob3V0cHV0KTsKKyAgICAgICAgICAgIGZpbmlz
aEpTVGVzdCgpOworICAgICAgICB9CisgICAgfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggODg1NzE3
MzFkYTc3M2YyZTBkZTJkMDExZjFhMzkxYWQxNTdmZGFiYi4uZDBmM2ZlMDgwODcwYTdjMDM1MTNk
MmY3MjVhNjhkMjFmMWVkYTVmMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xp
Yi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4
cGVjdGF0aW9ucwpAQCAtMzMxLDYgKzMzMSw4IEBAIGZhc3QvY3NzL2FjY2VudC1jb2xvci90ZXh0
Lmh0bWwgWyBQYXNzIF0KICMgQWNjZXNzaWJpbGl0eS1yZWxhdGVkIGJ1Z3MKICMvLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vCiAKK2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1zaG91
bGQtbm90LWNyYXNoLmh0bWwgWyBTa2lwIF0KKwogIyBOZWVkIHRvIGltcGxlbWVudCBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpoYXNEb2N1bWVudFJvbGVBbmNlc3RvcigpLCBBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpoYXNXZWJBcHBsaWNhdGlvbkFuY2VzdG9yKCksCiAjIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6OmlzSW5EZXNjcmlwdGlvbkxpc3REZXRhaWwoKSwgQWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6aXNJbkRlc2NyaXB0aW9uTGlzdFRlcm0oKSwgYW5kCiAjIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OmlzSW5DZWxsKCkuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mv
VGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IDdlYzM0NTE0YmZkNDYxODc3ZWEzMWFkNjU3Y2JmZDkxY2Q3OTUwZTEuLjE0YWIy
Mjc2MDQzOTBhNjBjYTE1N2NiYWMzODEyZjNhNDU1MWUyNjggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMTA0LDYgKzIxMDQsNyBAQCBhY2Nlc3NpYmls
aXR5L2R5bmFtaWNhbGx5LWNoYW5naW5nLWlmcmFtZS1yZW1haW5zLWFjY2Vzc2libGUuaHRtbCBb
IFBhc3MgXQogCiBhY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXN0YXRlLWNoYW5nZWQtbm90aWZpY2F0
aW9ucy5odG1sIFsgUGFzcyBdCiBhY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQt
dGV4dC5odG1sIFsgUGFzcyBdCithY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2Utc2hvdWxkLW5v
dC1jcmFzaC5odG1sIFsgUGFzcyBdCiAKICMgRW5hYmxlICJhdHRhY2htZW50IGVsZW1lbnQiIHRl
c3QgZm9yIGlPUwogYWNjZXNzaWJpbGl0eS9hdHRhY2htZW50LWVsZW1lbnQuaHRtbCBbIFBhc3Mg
XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvZWxl
bWVudC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9hY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4dC1leHBlY3Rl
ZC50eHQKaW5kZXggYzIwZDYxYjFmYjhhYmQwZjFjOTVhZTc4ODZjZGZhYjBlMDQ3NWU2Yi4uMzVk
NjE1OGU3ZjNiZGFiMDRjZGVkYmM1YmZlMTZiYTJhMDQ4YWEyNCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10
ZXh0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQtZXhwZWN0ZWQudHh0CkBAIC0xMCwyOCAr
MTAsMjggQEAgVGhpcyB0ZXN0cyB0aGF0IGxpbmVSZWN0c0FuZFRleHQgcmV0dXJucyB0aGUgY29y
cmVjdCB2YWx1ZXMuCiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKIAotdGV4dCA9ICJUaGlz
IGlzIHNvbWUgdGVzdGluZyBjb250ZW50LiB7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250
RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGlt
ZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59QSBs
aW5rIGhlcmUue1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xu
ICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAg
VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xuICAgIFVJQWNjZXNzaWJpbGl0eVRv
a2VuVW5kZXJsaW5lID0gMTtcbn0gTU9yZSB0ZXh0LntcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tl
bkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0g
XCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAxNjtc
bn0iOwordGV4dCA9ICJUaGlzIGlzIHNvbWUgdGVzdGluZyBjb250ZW50LiB7XG4gICAgQVhGb250
ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5h
bWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAg
QVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufUEgbGluayBoZXJlLntc
biAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAg
ICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2
O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG4gICAg
VUlBY2Nlc3NpYmlsaXR5VG9rZW5VbmRlcmxpbmUgPSAxO1xufSBNT3JlIHRleHQue1xuICAgIEFY
Rm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZv
bnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAg
ICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn0iOwogd2lkdGgg
PiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0ID0gInp7XG4gICAgVUlBY2Nlc3NpYmls
aXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250
TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXpl
ID0gMTY7XG59IjsKK3RleHQgPSAientcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZv
bnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtc
biAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1l
cyBSb21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1
ZQotdGV4dCA9ICJBbm90aGVyIGxpbmUgb2YgdGV4dC57XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9r
ZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9
IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7
XG59IjsKK3RleHQgPSAiQW5vdGhlciBsaW5lIG9mIHRleHQue1xuICAgIEFYRm9udCA9ICAgICB7
XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJU
aW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJs
ZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn0iOwogd2lkdGggPiAwOiB0cnVlCiBo
ZWlnaHQgPiAwOiB0cnVlCiB0ZXh0ID0gImNha2V7XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVp
Z2h0ID4gMDogdHJ1ZQotdGV4dCA9ICJKYWNrIGFuZCBKaWxsIHdlbnQgdXAgdGhlIGhpbGwgdG8g
ZmV0Y2ggYSBwYWlsIG9mIHdhdGVyLiBKYWNrIGZlbGwgZG93bi4uLntcbiAgICBVSUFjY2Vzc2li
aWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZv
bnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNp
emUgPSAxNDtcbn0iOwordGV4dCA9ICJKYWNrIGFuZCBKaWxsIHdlbnQgdXAgdGhlIGhpbGwgdG8g
ZmV0Y2ggYSBwYWlsIG9mIHdhdGVyLiBKYWNrIGZlbGwgZG93bi4uLntcbiAgICBBWEZvbnQgPSAg
ICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9
IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE0O1xuICAgICAgICBBWFZp
c2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1
ZQogaGVpZ2h0ID4gMDogdHJ1ZQotdGV4dCA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAx
MjM0NTY3ODkgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IHtcbiAgICBVSUFj
Y2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlU
b2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2Vu
Rm9udFNpemUgPSAxNjtcbn0iOwordGV4dCA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAx
MjM0NTY3ODkgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IHtcbiAgICBBWEZv
bnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250
TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAg
ICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4g
MDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQotdGV4dCA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2
d3h5ejAxMjM0NTY3ODktYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LXtcbiAg
ICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2li
aWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0
eVRva2VuRm9udFNpemUgPSAxNjtcbn0iOwordGV4dCA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2
d3h5ejAxMjM0NTY3ODktYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LXtcbiAg
ICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAg
QVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xu
ICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59IjsKIHdp
ZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQotdGV4dCA9ICJhYmNkZWZnaGlqa2xtbm9w
cXJzdHV2d3h5ejAxMjM0NTY3ODl7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5
ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9t
YW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59IjsKK3RleHQg
PSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5e1xuICAgIEFYRm9udCA9ICAg
ICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0g
XCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlz
aWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn0iOwogd2lkdGggPiAwOiB0cnVl
CiBoZWlnaHQgPiAwOiB0cnVlCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDE0MmRlNTI1MTg3N2Nl
MzdiZTA3NDU5ZTlmZDY0OGUwNDk1YjBlYjMuLmU0MDI2YWRjNmQ0NDg3NGQxZDUyNGI0OTkyZDZi
MDJkZmZhNTgwNzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25z
CkBAIC00OTIyLDcgKzQ5MjIsMTAgQEAgd2Via2l0Lm9yZy9iLzIyOTMwMCBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L25vLWphdmFzY3JpcHQtcmVmcmVzaC1zcGFjZXMucHkgWyBQYXNzIEMKIGFjY2Vzc2li
aWxpdHkvc2VsZWN0ZWQtc3RhdGUtY2hhbmdlZC1ub3RpZmljYXRpb25zLmh0bWwgWyBTa2lwIF0K
IGFjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0Lmh0bWwgWyBTa2lwIF0K
IGFjY2Vzc2liaWxpdHkvZGlhbG9nLXByb3BlcnRpZXMuaHRtbCBbIFNraXAgXQorCisjIE1pc3Np
bmcgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YXR0cmlidXRlZFN0cmluZ0ZvclJhbmdlIGltcGxl
bWVudGF0aW9uCiBhY2Nlc3NpYmlsaXR5L25hdGl2ZS10ZXh0LWNvbnRyb2wtYXR0cmlidXRlZC1z
dHJpbmcuaHRtbCBbIFNraXAgXQorYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLXNob3VsZC1u
b3QtY3Jhc2guaHRtbCBbIFNraXAgXQogCiB3ZWJraXQub3JnL2IvMjI5MjQ3IGh0dHAvdGVzdHMv
ZmV0Y2gva2VlcGFsaXZlLWZldGNoLTIuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453760</attachid>
            <date>2022-03-03 10:39:42 -0800</date>
            <delta_ts>2022-03-03 15:09:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220303123939.patch</filename>
            <type>text/plain</type>
            <size>23232</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGVmMTA3YTYwMzBjNjkz
ODQzN2RhNTUyY2ViMmMzNTA5NmY4MTdlZC4uYzAxODg1NmE3Yjk1YjgyNzMxZjM1NTVmYTRkMGZi
YmM3YjZiMjEyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIyLTAzLTAzICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IENocmlzIEZsZWl6YWNoIGFu
ZCBBbmRyZXMgR29uemFsZXouCisKKyAgICAgICAgW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyTWFjIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udF0gY3Jhc2hlcyB3aGVuIGdpdmVuIGEgZm9u
dCB3aXRoIGEKKyAgICAgICAgbmlsIHBvc3RzY3JpcHQgbmFtZSwgZm9udCBmYW1pbHksIG9yIGRp
c3BsYXkgbmFtZS4gVGhpcyBjYW4gYmUKKyAgICAgICAgdHJpZ2dlcmVkIHdpdGggYSBjdXN0b20g
U1ZHIEBmb250LWZhY2UgLS0gZm9yIGV4YW1wbGU6CisKKyAgICAgICAgQGZvbnQtZmFjZSB7Cisg
ICAgICAgICAgICBmb250LWZhbWlseTogJ0xpdGhlcnVtJzsKKyAgICAgICAgICAgIHNyYzogdXJs
KCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7CisgICAgICAgIH0KKyAgICAg
ICAgKiB7IGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOyB9CisKKyAgICAgICAgV2UgZml4IHRoaXMg
YnkgY2hlY2tpbmcgaWYgdGhlc2UgdmFsdWVzIGFyZSBuaWwgYmVmb3JlIHRyeWluZyB0byBhZGQK
KyAgICAgICAgdGhlbSB0byBhIGRpY3Rpb25hcnkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNv
IGNlbnRyYWxpemVzIGFwcGxpY2F0aW9uIG9mIGZvbnRzIHRvIGF0dHJpYnV0ZWQgc3RyaW5ncwor
ICAgICAgICBieSBtb3ZpbmcgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250IHRvIHRoZSBiYXNlIHdy
YXBwZXIuIEluIGRvaW5nIHNvLAorICAgICAgICB3ZSBmaXggYSBidWcgd2hlcmUgaWYgW1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZSBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlXSB3
YXMKKyAgICAgICAgY2FsbGVkIGZyb20gYSBNYWMtY29udGV4dCwgaXQgc2V0IGlPUyBmb250IHBy
b3BlcnRpZXMgKGUuZy4KKyAgICAgICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IGlu
c3RlYWQgb2YgTlNBY2Nlc3NpYmlsaXR5Rm9udEZhbWlseUtleSkuCisKKyAgICAgICAgVGVzdDog
YWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLmh0bWwKKworICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oOgorICAgICAgICAqIGFj
Y2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbToKKyAg
ICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6IEFkZGVkLgorICAgICAgICAo
QVhBdHRyaWJ1dGVkU3RyaW5nU2V0Rm9udCk6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOgorICAgICAgICAoQVhB
dHRyaWJ1dGVTdHJpbmdTZXRTdHlsZSk6CisgICAgICAgIChBWEF0dHJpYnV0ZWRTdHJpbmdBcHBl
bmRUZXh0KToKKyAgICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6CisgICAg
ICAgIE1vdmVkIHRvIGJhc2Ugd3JhcHBlci4KKyAgICAgICAgKEFYQXR0cmlidXRlU3RyaW5nU2V0
Rm9udCk6CisgICAgICAgIE1vdmVkIHRvIGJhc2Ugd3JhcHBlci4KKwogMjAyMi0wMi0yOCAgSmVy
IE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIEFkb3B0IC1z
dHJlYW1EYXRhUGFyc2VyOmRpZFByb3ZpZGVDb250ZW50S2V5U3BlY2lmaWVyOmZvclRyYWNrSUQ6
IGRlbGVnYXRlIGNhbGxiYWNrCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaCBiL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5o
CmluZGV4IGFjMmJkYmZlMmFjNTg5NjU2MGU2MDk2MDRjNzY5ODM2YTI4NDI0YWQuLjRlZDlhZDFh
NzUyMzQ4YzJiNTFmZDIwZmY0MjRjNzQwOWFhNjIyMjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVyQmFzZS5oCkBAIC0yNyw2ICsyNyw3IEBACiAgKi8KIAogI2ltcG9ydCAiQWNj
ZXNzaWJpbGl0eU9iamVjdEludGVyZmFjZS5oIgorI2ltcG9ydCAiRm9udFBsYXRmb3JtRGF0YS5o
IgogI2ltcG9ydCA8Q29yZUdyYXBoaWNzL0NvcmVHcmFwaGljcy5oPgogI2ltcG9ydCA8dmFyaWFu
dD4KICNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KQEAgLTU3LDYgKzU4LDkgQEAgc3RhdGljIE5TU3Ry
aW5nICogY29uc3QgVUlBY2Nlc3NpYmlsaXR5VG9rZW5BdHRhY2htZW50ID0gQCJVSUFjY2Vzc2li
aWxpdHlUb2tlbkEKIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IFVJQWNjZXNzaWJpbGl0eVRleHRB
dHRyaWJ1dGVDb250ZXh0ID0gQCJVSUFjY2Vzc2liaWxpdHlUZXh0QXR0cmlidXRlQ29udGV4dCI7
CiBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBVSUFjY2Vzc2liaWxpdHlUZXh0dWFsQ29udGV4dFNv
dXJjZUNvZGUgPSBAIlVJQWNjZXNzaWJpbGl0eVRleHR1YWxDb250ZXh0U291cmNlQ29kZSI7CiAK
K2Jvb2wgQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkKE5TQXR0cmlidXRlZFN0cmluZyos
IE5TUmFuZ2UpOwordm9pZCBBWEF0dHJpYnV0ZWRTdHJpbmdTZXRGb250KE5TTXV0YWJsZUF0dHJp
YnV0ZWRTdHJpbmcqLCBDVEZvbnRSZWYsIGNvbnN0IE5TUmFuZ2UmKTsKKwogQGludGVyZmFjZSBX
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UgOiBOU09iamVjdCB7CiAgICAgV2ViQ29y
ZTo6QVhDb3JlT2JqZWN0KiBtX2F4T2JqZWN0OwogI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0lT
T0xBVEVEX1RSRUUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0KaW5k
ZXggYWE2NmYzZjVmMzk5ZDZmNTdkYjRjYTQ3ODg1M2E1NjUzZGViZTQ1NS4uODEyMTQwY2I5ZGVi
ZjM4MWJjNzM2YTdmZDhmNDk3M2RiNGVlMWRlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmpl
Y3RXcmFwcGVyQmFzZS5tbQpAQCAtNDYsOCArNDYsNiBAQAogI2ltcG9ydCAiQ29sb3JNYWMuaCIK
ICNpbXBvcnQgIkNvbnRleHRNZW51Q29udHJvbGxlci5oIgogI2ltcG9ydCAiRWRpdGluZy5oIgot
I2ltcG9ydCAiRm9udC5oIgotI2ltcG9ydCAiRm9udENhc2NhZGUuaCIKICNpbXBvcnQgIkZyYW1l
U2VsZWN0aW9uLmgiCiAjaW1wb3J0ICJIVE1MTmFtZXMuaCIKICNpbXBvcnQgIkxheW91dFJlY3Qu
aCIKQEAgLTU3OCwyNyArNTc2LDU5IEBAIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0
SGVhZGluZ0xldmVsKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpCiAgICAgICAg
IFthdHRyU3RyaW5nIHJlbW92ZUF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkhlYWRpbmdM
ZXZlbCByYW5nZTpyYW5nZV07CiB9CiAKLXN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0
Rm9udChOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBDVEZvbnRSZWYgZm9u
dCwgTlNSYW5nZSByYW5nZSkKKy8vIFdoZW4gbW9kaWZ5aW5nIGF0dHJpYnV0ZWQgc3RyaW5ncywg
dGhlIHJhbmdlIGNhbiBjb21lIGZyb20gYSBzb3VyY2Ugd2hpY2ggbWF5IHByb3ZpZGUgZmF1bHR5
IGluZm9ybWF0aW9uIChlLmcuIHRoZSBzcGVsbCBjaGVja2VyKS4KKy8vIFRvIHByb3RlY3QgYWdh
aW5zdCBzdWNoIGNhc2VzLCB0aGUgcmFuZ2Ugc2hvdWxkIGJlIHZhbGlkYXRlZCBiZWZvcmUgYWRk
aW5nIG9yIHJlbW92aW5nIGF0dHJpYnV0ZXMuCitib29sIEFYQXR0cmlidXRlZFN0cmluZ1Jhbmdl
SXNWYWxpZChOU0F0dHJpYnV0ZWRTdHJpbmcgKmF0dHJpYnV0ZWRTdHJpbmcsIE5TUmFuZ2UgcmFu
Z2UpCiB7Ci0gICAgaWYgKCFmb250KQorICAgIHJldHVybiBOU01heFJhbmdlKHJhbmdlKSA8PSBb
YXR0cmlidXRlZFN0cmluZyBsZW5ndGhdOworfQorCit2b2lkIEFYQXR0cmlidXRlZFN0cmluZ1Nl
dEZvbnQoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyAqYXR0cmlidXRlZFN0cmluZywgQ1RGb250
UmVmIGZvbnQsIGNvbnN0IE5TUmFuZ2UmIHJhbmdlKQoreworICAgIGlmICghQVhBdHRyaWJ1dGVk
U3RyaW5nUmFuZ2VJc1ZhbGlkKGF0dHJpYnV0ZWRTdHJpbmcsIHJhbmdlKSkKICAgICAgICAgcmV0
dXJuOwogCi0gICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBmdWxsTmFtZSA9IGFkb3B0Q0YoQ1RG
b250Q29weUZ1bGxOYW1lKGZvbnQpKTsKLSAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGZhbWls
eU5hbWUgPSBhZG9wdENGKENURm9udENvcHlGYW1pbHlOYW1lKGZvbnQpKTsKKyAgICBpZiAoIWZv
bnQpIHsKKyNpZiBQTEFURk9STShNQUMpCisgICAgICAgIFthdHRyaWJ1dGVkU3RyaW5nIHJlbW92
ZUF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlGb250VGV4dEF0dHJpYnV0ZSByYW5nZTpyYW5nZV07
CisjZW5kaWYKKyAgICAgICAgcmV0dXJuOworICAgIH0KIAotICAgIE5TTnVtYmVyKiBzaXplID0g
W05TTnVtYmVyIG51bWJlcldpdGhGbG9hdDpDVEZvbnRHZXRTaXplKGZvbnQpXTsKLSAgICBDVEZv
bnRTeW1ib2xpY1RyYWl0cyB0cmFpdHMgPSBDVEZvbnRHZXRTeW1ib2xpY1RyYWl0cyhmb250KTsK
LSAgICBOU051bWJlciogYm9sZCA9IFtOU051bWJlciBudW1iZXJXaXRoQm9vbDoodHJhaXRzICYg
a0NURm9udFRyYWl0Qm9sZCldOworICAgIGF1dG8gZm9udEF0dHJpYnV0ZXMgPSBhZG9wdE5TKFtb
TlNNdXRhYmxlRGljdGlvbmFyeSBhbGxvY10gaW5pdF0pOworICAgIGF1dG8gZmFtaWx5TmFtZSA9
IGFkb3B0Q0YoQ1RGb250Q29weUZhbWlseU5hbWUoZm9udCkpOworICAgIE5TTnVtYmVyICpzaXpl
ID0gW05TTnVtYmVyIG51bWJlcldpdGhGbG9hdDpDVEZvbnRHZXRTaXplKGZvbnQpXTsKKyNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKQorICAgIGF1dG8gZnVsbE5hbWUgPSBhZG9wdENGKENURm9udENv
cHlGdWxsTmFtZShmb250KSk7CiAgICAgaWYgKGZ1bGxOYW1lKQotICAgICAgICBbYXR0clN0cmlu
ZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSB2YWx1ZTooTlNTdHJp
bmcqKWZ1bGxOYW1lLmdldCgpIHJhbmdlOnJhbmdlXTsKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVz
IHNldFZhbHVlOmJyaWRnZV9jYXN0KGZ1bGxOYW1lLmdldCgpKSBmb3JLZXk6VUlBY2Nlc3NpYmls
aXR5VG9rZW5Gb250TmFtZV07CiAgICAgaWYgKGZhbWlseU5hbWUpCi0gICAgICAgIFthdHRyU3Ry
aW5nIGFkZEF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgdmFsdWU6KE5T
U3RyaW5nKilmYW1pbHlOYW1lLmdldCgpIHJhbmdlOnJhbmdlXTsKKyAgICAgICAgW2ZvbnRBdHRy
aWJ1dGVzIHNldFZhbHVlOmJyaWRnZV9jYXN0KGZhbWlseU5hbWUuZ2V0KCkpIGZvcktleTpVSUFj
Y2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHldOwogICAgIGlmIChbc2l6ZSBib29sVmFsdWVdKQot
ICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250
U2l6ZSB2YWx1ZTpzaXplIHJhbmdlOnJhbmdlXTsKLSAgICBpZiAoW2JvbGQgYm9vbFZhbHVlXSB8
fCAodHJhaXRzICYga0NURm9udFRyYWl0Qm9sZCkpCi0gICAgICAgIFthdHRyU3RyaW5nIGFkZEF0
dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkJvbGQgdmFsdWU6QFlFUyByYW5nZTpyYW5nZV07
CisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpzaXplIGZvcktleTpVSUFjY2Vzc2li
aWxpdHlUb2tlbkZvbnRTaXplXTsKKyAgICBhdXRvIHRyYWl0cyA9IENURm9udEdldFN5bWJvbGlj
VHJhaXRzKGZvbnQpOworICAgIGlmICh0cmFpdHMgJiBrQ1RGb250VHJhaXRCb2xkKQorICAgICAg
ICBbZm9udEF0dHJpYnV0ZXMgc2V0VmFsdWU6QFlFUyBmb3JLZXk6VUlBY2Nlc3NpYmlsaXR5VG9r
ZW5Cb2xkXTsKICAgICBpZiAodHJhaXRzICYga0NURm9udFRyYWl0SXRhbGljKQotICAgICAgICBb
YXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5JdGFsaWMgdmFsdWU6
QFlFUyByYW5nZTpyYW5nZV07CisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpAWUVT
IGZvcktleTpVSUFjY2Vzc2liaWxpdHlUb2tlbkl0YWxpY107CisKKyAgICBbYXR0cmlidXRlZFN0
cmluZyBhZGRBdHRyaWJ1dGVzOmZvbnRBdHRyaWJ1dGVzLmdldCgpIHJhbmdlOnJhbmdlXTsKKyNl
bmRpZgorCisjaWYgUExBVEZPUk0oTUFDKQorICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpz
aXplIGZvcktleTpOU0FjY2Vzc2liaWxpdHlGb250U2l6ZUtleV07CisKKyAgICBpZiAoZmFtaWx5
TmFtZSkKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOmJyaWRnZV9jYXN0KGZhbWls
eU5hbWUuZ2V0KCkpIGZvcktleTpOU0FjY2Vzc2liaWxpdHlGb250RmFtaWx5S2V5XTsKKyAgICBh
dXRvIHBvc3RTY3JpcHROYW1lID0gYWRvcHRDRihDVEZvbnRDb3B5UG9zdFNjcmlwdE5hbWUoZm9u
dCkpOworICAgIGlmIChwb3N0U2NyaXB0TmFtZSkKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNl
dFZhbHVlOmJyaWRnZV9jYXN0KHBvc3RTY3JpcHROYW1lLmdldCgpKSBmb3JLZXk6TlNBY2Nlc3Np
YmlsaXR5Rm9udE5hbWVLZXldOworICAgIGF1dG8gZGlzcGxheU5hbWUgPSBhZG9wdENGKENURm9u
dENvcHlEaXNwbGF5TmFtZShmb250KSk7CisgICAgaWYgKGRpc3BsYXlOYW1lKQorICAgICAgICBb
Zm9udEF0dHJpYnV0ZXMgc2V0VmFsdWU6YnJpZGdlX2Nhc3QoZGlzcGxheU5hbWUuZ2V0KCkpIGZv
cktleTpOU0FjY2Vzc2liaWxpdHlWaXNpYmxlTmFtZUtleV07CisKKyAgICBbYXR0cmlidXRlZFN0
cmluZyBhZGRBdHRyaWJ1dGU6TlNBY2Nlc3NpYmlsaXR5Rm9udFRleHRBdHRyaWJ1dGUgdmFsdWU6
Zm9udEF0dHJpYnV0ZXMuZ2V0KCkgcmFuZ2U6cmFuZ2VdOworI2VuZGlmCiB9CiAKIHN0YXRpYyB2
b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0TnVtYmVyKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcq
IGF0dHJTdHJpbmcsIE5TU3RyaW5nKiBhdHRyaWJ1dGUsIE5TTnVtYmVyKiBudW1iZXIsIE5TUmFu
Z2UgcmFuZ2UpCkBAIC02MTQsNyArNjQ0LDcgQEAgc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJp
bmdTZXRTdHlsZShOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBSZW4KICAg
ICBhdXRvJiBzdHlsZSA9IHJlbmRlcmVyLT5zdHlsZSgpOwogCiAgICAgLy8gc2V0IGJhc2ljIGZv
bnQgaW5mbwotICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udChhdHRyU3RyaW5nLCBzdHlsZS5m
b250Q2FzY2FkZSgpLnByaW1hcnlGb250KCkuZ2V0Q1RGb250KCksIHJhbmdlKTsKKyAgICBBWEF0
dHJpYnV0ZWRTdHJpbmdTZXRGb250KGF0dHJTdHJpbmcsIHN0eWxlLmZvbnRDYXNjYWRlKCkucHJp
bWFyeUZvbnQoKS5nZXRDVEZvbnQoKSwgcmFuZ2UpOwogCiAgICAgYXV0byBkZWNvciA9IHN0eWxl
LnRleHREZWNvcmF0aW9uc0luRWZmZWN0KCk7CiAgICAgaWYgKGRlY29yICYgVGV4dERlY29yYXRp
b25MaW5lOjpVbmRlcmxpbmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbSBiL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1t
CmluZGV4IGNkOWJhYWU0M2RkNTJkZTFjYjk1OGY5NTgwM2RmYzU4ZTM2OWY1MjMuLjQ5MDhiMGE1
YTQ3M2M0N2YwNTEzZjNiMzQzMTgyNDNhZTM0NTI0MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVyTWFjLm1tCkBAIC03NjgsMzEgKzc2OCw2IEBAIHN0YXRpYyBSZXRhaW5QdHI8
QVhUZXh0TWFya2VyUmVmPiBwcmV2aW91c1RleHRNYXJrZXJGb3JDaGFyYWN0ZXJPZmZzZXQoQVhP
YmplY3RDCiAgICAgcmV0dXJuIGFkb3B0Q0YoQVhUZXh0TWFya2VyQ3JlYXRlKGtDRkFsbG9jYXRv
ckRlZmF1bHQsIChjb25zdCBVSW50OCopJnRleHRNYXJrZXJEYXRhLnZhbHVlKCksIHNpemVvZih0
ZXh0TWFya2VyRGF0YS52YWx1ZSgpKSkpOwogfQogCi0vLyBXaGVuIG1vZGlmeWluZyBhdHRyaWJ1
dGVkIHN0cmluZ3MsIHRoZSByYW5nZSBjYW4gY29tZSBmcm9tIGEgc291cmNlIHdoaWNoIG1heSBw
cm92aWRlIGZhdWx0eSBpbmZvcm1hdGlvbiAoZS5nLiB0aGUgc3BlbGwgY2hlY2tlcikuCi0vLyBU
byBwcm90ZWN0IGFnYWluc3Qgc3VjaCBjYXNlcyB0aGUgcmFuZ2Ugc2hvdWxkIGJlIHZhbGlkYXRl
ZCBiZWZvcmUgYWRkaW5nIG9yIHJlbW92aW5nIGF0dHJpYnV0ZXMuCi1zdGF0aWMgQk9PTCBBWEF0
dHJpYnV0ZWRTdHJpbmdSYW5nZUlzVmFsaWQoTlNBdHRyaWJ1dGVkU3RyaW5nICphdHRyU3RyaW5n
LCBOU1JhbmdlIHJhbmdlKQotewotICAgIHJldHVybiAocmFuZ2UubG9jYXRpb24gPCBbYXR0clN0
cmluZyBsZW5ndGhdICYmIE5TTWF4UmFuZ2UocmFuZ2UpIDw9IFthdHRyU3RyaW5nIGxlbmd0aF0p
OwotfQotCi1zdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQoTlNNdXRhYmxlQXR0
cmlidXRlZFN0cmluZyAqYXR0clN0cmluZywgTlNTdHJpbmcgKmF0dHJpYnV0ZSwgQ1RGb250UmVm
IGZvbnQsIE5TUmFuZ2UgcmFuZ2UpCi17Ci0gICAgaWYgKCFBWEF0dHJpYnV0ZWRTdHJpbmdSYW5n
ZUlzVmFsaWQoYXR0clN0cmluZywgcmFuZ2UpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAo
Zm9udCkgewotICAgICAgICBOU0RpY3Rpb25hcnkgKmRpY3Rpb25hcnkgPSBAewotICAgICAgICAg
ICAgTlNBY2Nlc3NpYmlsaXR5Rm9udE5hbWVLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0
Q0YoQ1RGb250Q29weVBvc3RTY3JpcHROYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5T
QWNjZXNzaWJpbGl0eUZvbnRGYW1pbHlLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0Q0Yo
Q1RGb250Q29weUZhbWlseU5hbWUoZm9udCkpLmdldCgpLAotICAgICAgICAgICAgTlNBY2Nlc3Np
YmlsaXR5VmlzaWJsZU5hbWVLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0Q0YoQ1RGb250
Q29weURpc3BsYXlOYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5TQWNjZXNzaWJpbGl0
eUZvbnRTaXplS2V5OiBAKENURm9udEdldFNpemUoZm9udCkpLAotICAgICAgICB9OwotICAgICAg
ICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6YXR0cmlidXRlIHZhbHVlOmRpY3Rpb25hcnkgcmFu
Z2U6cmFuZ2VdOwotICAgIH0gZWxzZQotICAgICAgICBbYXR0clN0cmluZyByZW1vdmVBdHRyaWJ1
dGU6YXR0cmlidXRlIHJhbmdlOnJhbmdlXTsKLSAgICAKLX0KLQogc3RhdGljIHZvaWQgQVhBdHRy
aWJ1dGVTdHJpbmdTZXRDb2xvcihOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5n
LCBOU1N0cmluZyogYXR0cmlidXRlLCBOU0NvbG9yKiBjb2xvciwgTlNSYW5nZSByYW5nZSkKIHsK
ICAgICBpZiAoIUFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZChhdHRyU3RyaW5nLCByYW5n
ZSkpCkBAIC04MjEsMTAgKzc5NiwxMCBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1Nl
dE51bWJlcihOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBOUwogc3RhdGlj
IHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZShOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5n
KiBhdHRyU3RyaW5nLCBSZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBOU1JhbmdlIHJhbmdlKQogewog
ICAgIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSA9IHJlbmRlcmVyLT5zdHlsZSgpOwotICAgIAor
CiAgICAgLy8gc2V0IGJhc2ljIGZvbnQgaW5mbwotICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9u
dChhdHRyU3RyaW5nLCBOU0FjY2Vzc2liaWxpdHlGb250VGV4dEF0dHJpYnV0ZSwgc3R5bGUuZm9u
dENhc2NhZGUoKS5wcmltYXJ5Rm9udCgpLmdldENURm9udCgpLCByYW5nZSk7Ci0gICAgCisgICAg
QVhBdHRyaWJ1dGVkU3RyaW5nU2V0Rm9udChhdHRyU3RyaW5nLCBzdHlsZS5mb250Q2FzY2FkZSgp
LnByaW1hcnlGb250KCkuZ2V0Q1RGb250KCksIHJhbmdlKTsKKwogICAgIC8vIHNldCBiYXNpYyBj
b2xvcnMKICAgICBBWEF0dHJpYnV0ZVN0cmluZ1NldENvbG9yKGF0dHJTdHJpbmcsIE5TQWNjZXNz
aWJpbGl0eUZvcmVncm91bmRDb2xvclRleHRBdHRyaWJ1dGUsIGNvY29hQ29sb3Ioc3R5bGUudmlz
aXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5Q29sb3IpKS5nZXQoKSwgcmFuZ2UpOwogICAg
IEFYQXR0cmlidXRlU3RyaW5nU2V0Q29sb3IoYXR0clN0cmluZywgTlNBY2Nlc3NpYmlsaXR5QmFj
a2dyb3VuZENvbG9yVGV4dEF0dHJpYnV0ZSwgY29jb2FDb2xvcihzdHlsZS52aXNpdGVkRGVwZW5k
ZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpKS5nZXQoKSwgcmFuZ2UpOwpAQCAt
MTAyMyw3ICs5OTgsNyBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZWRTdHJpbmdBcHBlbmRUZXh0
KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsCiAjZW5kaWYKICAgICAgICAg
W2F0dHJTdHJpbmcgcmVtb3ZlQXR0cmlidXRlOk5TQWNjZXNzaWJpbGl0eU1pc3NwZWxsZWRUZXh0
QXR0cmlidXRlIHJhbmdlOmF0dHJTdHJpbmdSYW5nZV07CiAgICAgfQotICAgIAorCiAgICAgLy8g
c2V0IG5ldyBhdHRyaWJ1dGVzCiAgICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZShhdHRyU3Ry
aW5nLCByZW5kZXJlciwgYXR0clN0cmluZ1JhbmdlKTsKICAgICBBWEF0dHJpYnV0ZVN0cmluZ1Nl
dEhlYWRpbmdMZXZlbChhdHRyU3RyaW5nLCByZW5kZXJlciwgYXR0clN0cmluZ1JhbmdlKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCA3OTE5YmVhMmVjZjQxZjlhMjU1ZDVlOGQ0NzdkNWU0MmQxMDA2N2RlLi4xNWI4OTQwZWUy
YTQ2YmM4NWJjNDBlYTY2Mjk5Mzk5MDZkYzFmYTFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIw
MjItMDMtMDMgIFR5bGVyIFdpbGNvY2sgIDx0eWxlcl93QGFwcGxlLmNvbT4KKworICAgICAgICBB
WDogW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjIEFYQXR0cmlidXRlU3RyaW5nU2V0
Rm9udF0gY3Jhc2hlcyB3aGVuIGdpdmVuIGEgZm9udCB3aXRoIGEgbmlsIHBvc3RzY3JpcHQgbmFt
ZSwgZm9udCBmYW1pbHksIG9yIGRpc3BsYXkgbmFtZQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3MzczCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQ2hy
aXMgRmxlaXphY2ggYW5kIEFuZHJlcyBHb256YWxlei4KKworICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvcmVzb3VyY2VzL0xpdGhlcnVtLnN2ZzogQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJpbGl0
eS9zdmctZm9udC1mYWNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJp
bGl0eS9zdmctZm9udC1mYWNlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dsaWIv
VGVzdEV4cGVjdGF0aW9uczogU2tpcCBuZXcgdGVzdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mv
VGVzdEV4cGVjdGF0aW9uczogRW5hYmxlIG5ldyB0ZXN0LgorICAgICAgICAqIHBsYXRmb3JtL3dp
bi9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIG5ldyB0ZXN0LgorCisgICAgICAgICogcGxhdGZvcm0v
bWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgQmVmb3JlIHRoaXMgcGF0Y2gsIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlckJhc2UgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZV0gY2FsbGVkIHRoZSBpT1MKKyAgICAg
ICAgdmVyc2lvbiBvZiBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQuIFRoaXMgcGF0Y2ggZml4ZXMg
dGhpcy4gVGhlIGV4cGVjdGF0aW9uIGZvciB0aGlzIHRlc3QgaXMgdXBkYXRlZCBhcyBhIHJlc3Vs
dC4KKwogMjAyMi0wMi0yOCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAg
IEhhbmRsZSB3aWRvdyByZWxheW91dCBkaWZmZXJlbnRseQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnIGIvTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzNTQ4ZTUwZmZh
N2MwNzYyZDM3MmMzMzcyYTk4OTU4MzI1Y2QzNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9MaXRoZXJ1bS5zdmcKQEAgLTAsMCArMSwxMiBA
QAorPD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PgorPCFET0NUWVBFIHN2ZyBQ
VUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhp
Y3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiA+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZyI+Cis8bWV0YWRhdGE+PC9tZXRhZGF0YT4KKzxkZWZzPgorPGZvbnQgaWQ9Ikxp
dGhlcnVtIiBob3Jpei1hZHYteD0iMTAyNCI+Cis8Zm9udC1mYWNlIHVuaXRzLXBlci1lbT0iMTQi
IGFzY2VudD0iMTQiIGRlc2NlbnQ9IjAiLz4KKzxnbHlwaCB1bmljb2RlPSJ8IiBob3Jpei1hZHYt
eD0iMTQiIGQ9Ik0wIDB2MTRoMTR2LTE0eiIvPgorPGdseXBoIHVuaWNvZGU9Ii0iIGhvcml6LWFk
di14PSIyNjYiIGQ9Ik0wIDB2MTRoMjY2di0xNHoiLz4KKzwvZm9udD4KKzwvZGVmcz4KKzwvc3Zn
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uY2E4MDgwYmE1NDFiMmU2ZTAzNDhlZWFkYTM1NmQ0ZjIzODIx
ZTI2OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZv
bnQtZmFjZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitUaGlzIHRlc3QgZW5zdXJlcyB0
aGF0IHdlIGRvbid0IGNyYXNoIHdoZW4gYXBwbHlpbmcgYSBjdXN0b20gU1ZHIGZvbnQgdG8gYXR0
cmlidXRlZCBzdHJpbmdzLgorR2V0dGluZyBhdHRyaWJ1dGVkIHN0cmluZyBmb3IgcmFuZ2UgKDAs
IDkpCitQQVNTOiBEaWRuJ3QgY3Jhc2guCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L3N2Zy1mb250LWZhY2UuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZv
bnQtZmFjZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVjMzkzMDE2MzViZjBhMDQyNzlmZDRiOTZjYjQwZjk4
MzRmZTcwOTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2
Zy1mb250LWZhY2UuaHRtbApAQCAtMCwwICsxLDM1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK0Bmb250LWZhY2Ugewor
ICAgIGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOworICAgIHNyYzogdXJsKCJyZXNvdXJjZXMvTGl0
aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7Cit9CisqIHsgZm9udC1mYW1pbHk6ICdMaXRoZXJ1bSc7
IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CisKKzxpbnB1
dCB0eXBlPSJ0ZXh0IiBpZD0idGV4dGZpZWxkIiB2YWx1ZT0ic29tZSB3b3JkIj48L2lucHV0Pgor
Cis8c2NyaXB0PgorICAgIHZhciBvdXRwdXQgPSAiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB3ZSBk
b24ndCBjcmFzaCB3aGVuIGFwcGx5aW5nIGEgY3VzdG9tIFNWRyBmb250IHRvIGF0dHJpYnV0ZWQg
c3RyaW5ncy5cbiI7CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKQor
ICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKKyAgICBmdW5jdGlvbiBydW5U
ZXN0KCkgeworICAgICAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7Cisg
ICAgICAgICAgICBjb25zdCB0ZXh0RmllbGQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nl
c3NpYmxlRWxlbWVudEJ5SWQoInRleHRmaWVsZCIpOworICAgICAgICAgICAgb3V0cHV0ICs9IGBH
ZXR0aW5nIGF0dHJpYnV0ZWQgc3RyaW5nIGZvciByYW5nZSAoMCwgOSlcbmA7CisgICAgICAgICAg
ICBjb25zdCBhdHRyaWJ1dGVkU3RyaW5nID0gdGV4dEZpZWxkLmF0dHJpYnV0ZWRTdHJpbmdGb3JS
YW5nZSgwLCA5KTsKKyAgICAgICAgICAgIG91dHB1dCArPSAiUEFTUzogRGlkbid0IGNyYXNoLlxu
IjsKKyAgICAgICAgICAgIGRlYnVnKG91dHB1dCk7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3Qo
KTsKKyAgICAgICAgfQorICAgIH0KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDg4NTcxNzMxZGE3NzNm
MmUwZGUyZDAxMWYxYTM5MWFkMTU3ZmRhYmIuLmZlN2I2MzZkYjNiMTljN2U0NmNiYjU2NjkwYmI2
ZTRkMmYyZjMxNTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4
cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTMzMSw2ICszMzEsOCBAQCBmYXN0L2Nzcy9hY2NlbnQtY29sb3IvdGV4dC5odG1sIFsg
UGFzcyBdCiAjIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBidWdzCiAjLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLwogCithY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2UuaHRtbCBbIFNraXAg
XQorCiAjIE5lZWQgdG8gaW1wbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6Omhhc0RvY3Vt
ZW50Um9sZUFuY2VzdG9yKCksIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6Omhhc1dlYkFwcGxpY2F0
aW9uQW5jZXN0b3IoKSwKICMgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aXNJbkRlc2NyaXB0aW9u
TGlzdERldGFpbCgpLCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojppc0luRGVzY3JpcHRpb25MaXN0
VGVybSgpLCBhbmQKICMgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aXNJbkNlbGwoKS4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggN2VjMzQ1MTRiZmQ0NjE4
NzdlYTMxYWQ2NTdjYmZkOTFjZDc5NTBlMS4uZmE4YmE2MjJlZTU5N2FiMmE0MjA0YWUwNDc0Njhh
NDZiMDE4MGUwZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBl
Y3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMK
QEAgLTIxMDQsNiArMjEwNCw3IEBAIGFjY2Vzc2liaWxpdHkvZHluYW1pY2FsbHktY2hhbmdpbmct
aWZyYW1lLXJlbWFpbnMtYWNjZXNzaWJsZS5odG1sIFsgUGFzcyBdCiAKIGFjY2Vzc2liaWxpdHkv
c2VsZWN0ZWQtc3RhdGUtY2hhbmdlZC1ub3RpZmljYXRpb25zLmh0bWwgWyBQYXNzIF0KIGFjY2Vz
c2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0Lmh0bWwgWyBQYXNzIF0KK2FjY2Vz
c2liaWxpdHkvc3ZnLWZvbnQtZmFjZS5odG1sIFsgUGFzcyBdCiAKICMgRW5hYmxlICJhdHRhY2ht
ZW50IGVsZW1lbnQiIHRlc3QgZm9yIGlPUwogYWNjZXNzaWJpbGl0eS9hdHRhY2htZW50LWVsZW1l
bnQuaHRtbCBbIFBhc3MgXQpAQCAtMzUwNCw0ICszNTA1LDQgQEAgd2Via2l0Lm9yZy9iLzIzNzE1
OSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY29udGFpbi9jb250ZW50
LXZpc2kKIAogd2Via2l0Lm9yZy9iLzIzNzE2MSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LW5vLWZyZXNo
bmVzcy1oZWFkZXJzLmh0dHBzLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCi13ZWJraXQub3JnL2Iv
MjM3MTYyIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3BhcnRpdGlvbmVkLXNlcnZpY2Utd29ya2VyLWdldFJlZ2lzdHJhdGlvbnMu
dGVudGF0aXZlLmh0dHBzLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKK3dlYmtpdC5vcmcvYi8yMzcxNjIgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcGFydGl0aW9uZWQtc2VydmljZS13
b3JrZXItZ2V0UmVnaXN0cmF0aW9ucy50ZW50YXRpdmUuaHR0cHMuaHRtbCBbIFBhc3MgRmFpbHVy
ZSBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9l
bGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVj
dGVkLnR4dAppbmRleCBjMjBkNjFiMWZiOGFiZDBmMWM5NWFlNzg4NmNkZmFiMGUwNDc1ZTZiLi4z
NWQ2MTU4ZTdmM2JkYWIwNGNkZWRiYzViZmUxNmJhMmEwNDhhYTI0IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5k
LXRleHQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3Np
YmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4dC1leHBlY3RlZC50eHQKQEAgLTEwLDI4
ICsxMCwyOCBAQCBUaGlzIHRlc3RzIHRoYXQgbGluZVJlY3RzQW5kVGV4dCByZXR1cm5zIHRoZSBj
b3JyZWN0IHZhbHVlcy4KIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCi10ZXh0ID0gIlRo
aXMgaXMgc29tZSB0ZXN0aW5nIGNvbnRlbnQuIHtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZv
bnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJU
aW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAxNjtcbn1B
IGxpbmsgaGVyZS57XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7
XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAg
ICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG4gICAgVUlBY2Nlc3NpYmlsaXR5
VG9rZW5VbmRlcmxpbmUgPSAxO1xufSBNT3JlIHRleHQue1xuICAgIFVJQWNjZXNzaWJpbGl0eVRv
a2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUg
PSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2
O1xufSI7Cit0ZXh0ID0gIlRoaXMgaXMgc29tZSB0ZXN0aW5nIGNvbnRlbnQuIHtcbiAgICBBWEZv
bnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250
TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAg
ICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59QSBsaW5rIGhlcmUu
e1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAg
ICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0g
MTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbiAg
ICBVSUFjY2Vzc2liaWxpdHlUb2tlblVuZGVybGluZSA9IDE7XG59IE1PcmUgdGV4dC57XG4gICAg
QVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFY
Rm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAg
ICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0
aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRleHQgPSAientcbiAgICBVSUFjY2Vzc2li
aWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZv
bnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNp
emUgPSAxNjtcbn0iOwordGV4dCA9ICJ6e1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFY
Rm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwi
O1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRp
bWVzIFJvbWFuXCI7XG4gICAgfTtcbn0iOwogd2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0
cnVlCi10ZXh0ID0gIkFub3RoZXIgbGluZSBvZiB0ZXh0LntcbiAgICBVSUFjY2Vzc2liaWxpdHlU
b2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1l
ID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAx
Njtcbn0iOwordGV4dCA9ICJBbm90aGVyIGxpbmUgb2YgdGV4dC57XG4gICAgQVhGb250ID0gICAg
IHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBc
IlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNp
YmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUK
IGhlaWdodCA+IDA6IHRydWUKIHRleHQgPSAiY2FrZXtcbn0iOwogd2lkdGggPiAwOiB0cnVlCiBo
ZWlnaHQgPiAwOiB0cnVlCi10ZXh0ID0gIkphY2sgYW5kIEppbGwgd2VudCB1cCB0aGUgaGlsbCB0
byBmZXRjaCBhIHBhaWwgb2Ygd2F0ZXIuIEphY2sgZmVsbCBkb3duLi4ue1xuICAgIFVJQWNjZXNz
aWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2Vu
Rm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250
U2l6ZSA9IDE0O1xufSI7Cit0ZXh0ID0gIkphY2sgYW5kIEppbGwgd2VudCB1cCB0aGUgaGlsbCB0
byBmZXRjaCBhIHBhaWwgb2Ygd2F0ZXIuIEphY2sgZmVsbCBkb3duLi4ue1xuICAgIEFYRm9udCA9
ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1l
ID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0gMTQ7XG4gICAgICAgIEFY
VmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn0iOwogd2lkdGggPiAwOiB0
cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0ID0gImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6
MDEyMzQ1Njc4OSBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkge1xuICAgIFVJ
QWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0
eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9r
ZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6
MDEyMzQ1Njc4OSBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkge1xuICAgIEFY
Rm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZv
bnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAg
ICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn0iOwogd2lkdGgg
PiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0ID0gImFiY2RlZmdoaWprbG1ub3BxcnN0
dXZ3eHl6MDEyMzQ1Njc4OS1hYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkte1xu
ICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNz
aWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmls
aXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gImFiY2RlZmdoaWprbG1ub3BxcnN0
dXZ3eHl6MDEyMzQ1Njc4OS1hYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkte1xu
ICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAg
ICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7
XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn0iOwog
d2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0ID0gImFiY2RlZmdoaWprbG1u
b3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OXtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1p
bHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBS
b21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAxNjtcbn0iOwordGV4
dCA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODl7XG4gICAgQVhGb250ID0g
ICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUg
PSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhW
aXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRy
dWUKIGhlaWdodCA+IDA6IHRydWUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMTQyZGU1MjUxODc3
Y2UzN2JlMDc0NTllOWZkNjQ4ZTA0OTViMGViMy4uYjdmNDFkOWM3OGQ3NGU0Mzc3NTIxZWIxYzlk
MTRhOWFiMTEzMzQyYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RF
eHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTQ5MjIsNyArNDkyMiwxMCBAQCB3ZWJraXQub3JnL2IvMjI5MzAwIGh0dHAvdGVzdHMv
c2VjdXJpdHkvbm8tamF2YXNjcmlwdC1yZWZyZXNoLXNwYWNlcy5weSBbIFBhc3MgQwogYWNjZXNz
aWJpbGl0eS9zZWxlY3RlZC1zdGF0ZS1jaGFuZ2VkLW5vdGlmaWNhdGlvbnMuaHRtbCBbIFNraXAg
XQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQuaHRtbCBbIFNraXAg
XQogYWNjZXNzaWJpbGl0eS9kaWFsb2ctcHJvcGVydGllcy5odG1sIFsgU2tpcCBdCisKKyMgTWlz
c2luZyBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjphdHRyaWJ1dGVkU3RyaW5nRm9yUmFuZ2UgaW1w
bGVtZW50YXRpb24KIGFjY2Vzc2liaWxpdHkvbmF0aXZlLXRleHQtY29udHJvbC1hdHRyaWJ1dGVk
LXN0cmluZy5odG1sIFsgU2tpcCBdCithY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2UuaHRtbCBb
IFNraXAgXQogCiB3ZWJraXQub3JnL2IvMjI5MjQ3IGh0dHAvdGVzdHMvZmV0Y2gva2VlcGFsaXZl
LWZldGNoLTIuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453788</attachid>
            <date>2022-03-03 15:09:24 -0800</date>
            <delta_ts>2022-03-04 07:47:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220303170923.patch</filename>
            <type>text/plain</type>
            <size>22627</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNzk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWM3NjI3YTk1ZDkyNTBi
ZTQzNzBkMTZkMTQ4NGQzMDBiMWRmYmI2Yy4uZDg2MjA5ZDY1MTcyYjM5YmUxMTdiYTk1NDZlZjRj
ZjIzZGZkOWIzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIyLTAzLTAzICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IENocmlzIEZsZWl6YWNoIGFu
ZCBBbmRyZXMgR29uemFsZXouCisKKyAgICAgICAgW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyTWFjIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udF0gY3Jhc2hlcyB3aGVuIGdpdmVuIGEgZm9u
dCB3aXRoIGEKKyAgICAgICAgbmlsIHBvc3RzY3JpcHQgbmFtZSwgZm9udCBmYW1pbHksIG9yIGRp
c3BsYXkgbmFtZS4gVGhpcyBjYW4gYmUKKyAgICAgICAgdHJpZ2dlcmVkIHdpdGggYSBjdXN0b20g
U1ZHIEBmb250LWZhY2UgLS0gZm9yIGV4YW1wbGU6CisKKyAgICAgICAgQGZvbnQtZmFjZSB7Cisg
ICAgICAgICAgICBmb250LWZhbWlseTogJ0xpdGhlcnVtJzsKKyAgICAgICAgICAgIHNyYzogdXJs
KCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7CisgICAgICAgIH0KKyAgICAg
ICAgKiB7IGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOyB9CisKKyAgICAgICAgV2UgZml4IHRoaXMg
YnkgY2hlY2tpbmcgaWYgdGhlc2UgdmFsdWVzIGFyZSBuaWwgYmVmb3JlIHRyeWluZyB0byBhZGQK
KyAgICAgICAgdGhlbSB0byBhIGRpY3Rpb25hcnkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNv
IGNlbnRyYWxpemVzIGFwcGxpY2F0aW9uIG9mIGZvbnRzIHRvIGF0dHJpYnV0ZWQgc3RyaW5ncwor
ICAgICAgICBieSBtb3ZpbmcgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250IHRvIHRoZSBiYXNlIHdy
YXBwZXIuIEluIGRvaW5nIHNvLAorICAgICAgICB3ZSBmaXggYSBidWcgd2hlcmUgaWYgW1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZSBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlXSB3
YXMKKyAgICAgICAgY2FsbGVkIGZyb20gYSBNYWMtY29udGV4dCwgaXQgc2V0IGlPUyBmb250IHBy
b3BlcnRpZXMgKGUuZy4KKyAgICAgICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IGlu
c3RlYWQgb2YgTlNBY2Nlc3NpYmlsaXR5Rm9udEZhbWlseUtleSkuCisKKyAgICAgICAgVGVzdDog
YWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLmh0bWwKKworICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oOgorICAgICAgICAqIGFj
Y2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbToKKyAg
ICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6IEFkZGVkLgorICAgICAgICAo
QVhBdHRyaWJ1dGVkU3RyaW5nU2V0Rm9udCk6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOgorICAgICAgICAoQVhB
dHRyaWJ1dGVTdHJpbmdTZXRTdHlsZSk6CisgICAgICAgIChBWEF0dHJpYnV0ZWRTdHJpbmdBcHBl
bmRUZXh0KToKKyAgICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6CisgICAg
ICAgIE1vdmVkIHRvIGJhc2Ugd3JhcHBlci4KKyAgICAgICAgKEFYQXR0cmlidXRlU3RyaW5nU2V0
Rm9udCk6CisgICAgICAgIE1vdmVkIHRvIGJhc2Ugd3JhcHBlci4KKwogMjAyMi0wMy0wMyAgU2lt
b24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBuYXNhLmdvdiBw
YWdlIHdpdGggZml4ZWQgYmFja2dyb3VuZHMgcGFpbnRzIGluY29ycmVjdGx5IG9uIHNjcm9sbApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaAppbmRleCBhYzJiZGJmZTJhYzU4
OTY1NjBlNjA5NjA0Yzc2OTgzNmEyODQyNGFkLi40ZWQ5YWQxYTc1MjM0OGMyYjUxZmQyMGZmNDI0
Yzc0MDlhYTYyMjI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaApA
QCAtMjcsNiArMjcsNyBAQAogICovCiAKICNpbXBvcnQgIkFjY2Vzc2liaWxpdHlPYmplY3RJbnRl
cmZhY2UuaCIKKyNpbXBvcnQgIkZvbnRQbGF0Zm9ybURhdGEuaCIKICNpbXBvcnQgPENvcmVHcmFw
aGljcy9Db3JlR3JhcGhpY3MuaD4KICNpbXBvcnQgPHZhcmlhbnQ+CiAjaW1wb3J0IDx3dGYvUmVm
UHRyLmg+CkBAIC01Nyw2ICs1OCw5IEBAIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IFVJQWNjZXNz
aWJpbGl0eVRva2VuQXR0YWNobWVudCA9IEAiVUlBY2Nlc3NpYmlsaXR5VG9rZW5BCiBzdGF0aWMg
TlNTdHJpbmcgKiBjb25zdCBVSUFjY2Vzc2liaWxpdHlUZXh0QXR0cmlidXRlQ29udGV4dCA9IEAi
VUlBY2Nlc3NpYmlsaXR5VGV4dEF0dHJpYnV0ZUNvbnRleHQiOwogc3RhdGljIE5TU3RyaW5nICog
Y29uc3QgVUlBY2Nlc3NpYmlsaXR5VGV4dHVhbENvbnRleHRTb3VyY2VDb2RlID0gQCJVSUFjY2Vz
c2liaWxpdHlUZXh0dWFsQ29udGV4dFNvdXJjZUNvZGUiOwogCitib29sIEFYQXR0cmlidXRlZFN0
cmluZ1JhbmdlSXNWYWxpZChOU0F0dHJpYnV0ZWRTdHJpbmcqLCBOU1JhbmdlKTsKK3ZvaWQgQVhB
dHRyaWJ1dGVkU3RyaW5nU2V0Rm9udChOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiwgQ1RGb250
UmVmLCBjb25zdCBOU1JhbmdlJik7CisKIEBpbnRlcmZhY2UgV2ViQWNjZXNzaWJpbGl0eU9iamVj
dFdyYXBwZXJCYXNlIDogTlNPYmplY3QgewogICAgIFdlYkNvcmU6OkFYQ29yZU9iamVjdCogbV9h
eE9iamVjdDsKICNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09MQVRFRF9UUkVFKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXJCYXNlLm1tIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2Vi
QWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tCmluZGV4IGFhNjZmM2Y1ZjM5OWQ2ZjU3
ZGI0Y2E0Nzg4NTNhNTY1M2RlYmU0NTUuLjgxMjE0MGNiOWRlYmYzODFiYzczNmE3ZmQ4ZjQ5NzNk
YjRlZTFkZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dl
YkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0KQEAg
LTQ2LDggKzQ2LDYgQEAKICNpbXBvcnQgIkNvbG9yTWFjLmgiCiAjaW1wb3J0ICJDb250ZXh0TWVu
dUNvbnRyb2xsZXIuaCIKICNpbXBvcnQgIkVkaXRpbmcuaCIKLSNpbXBvcnQgIkZvbnQuaCIKLSNp
bXBvcnQgIkZvbnRDYXNjYWRlLmgiCiAjaW1wb3J0ICJGcmFtZVNlbGVjdGlvbi5oIgogI2ltcG9y
dCAiSFRNTE5hbWVzLmgiCiAjaW1wb3J0ICJMYXlvdXRSZWN0LmgiCkBAIC01NzgsMjcgKzU3Niw1
OSBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldEhlYWRpbmdMZXZlbChOU011dGFi
bGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaQogICAgICAgICBbYXR0clN0cmluZyByZW1vdmVB
dHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5IZWFkaW5nTGV2ZWwgcmFuZ2U6cmFuZ2VdOwog
fQogCi1zdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQoTlNNdXRhYmxlQXR0cmli
dXRlZFN0cmluZyogYXR0clN0cmluZywgQ1RGb250UmVmIGZvbnQsIE5TUmFuZ2UgcmFuZ2UpCisv
LyBXaGVuIG1vZGlmeWluZyBhdHRyaWJ1dGVkIHN0cmluZ3MsIHRoZSByYW5nZSBjYW4gY29tZSBm
cm9tIGEgc291cmNlIHdoaWNoIG1heSBwcm92aWRlIGZhdWx0eSBpbmZvcm1hdGlvbiAoZS5nLiB0
aGUgc3BlbGwgY2hlY2tlcikuCisvLyBUbyBwcm90ZWN0IGFnYWluc3Qgc3VjaCBjYXNlcywgdGhl
IHJhbmdlIHNob3VsZCBiZSB2YWxpZGF0ZWQgYmVmb3JlIGFkZGluZyBvciByZW1vdmluZyBhdHRy
aWJ1dGVzLgorYm9vbCBBWEF0dHJpYnV0ZWRTdHJpbmdSYW5nZUlzVmFsaWQoTlNBdHRyaWJ1dGVk
U3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nLCBOU1JhbmdlIHJhbmdlKQogewotICAgIGlmICghZm9u
dCkKKyAgICByZXR1cm4gTlNNYXhSYW5nZShyYW5nZSkgPD0gW2F0dHJpYnV0ZWRTdHJpbmcgbGVu
Z3RoXTsKK30KKwordm9pZCBBWEF0dHJpYnV0ZWRTdHJpbmdTZXRGb250KE5TTXV0YWJsZUF0dHJp
YnV0ZWRTdHJpbmcgKmF0dHJpYnV0ZWRTdHJpbmcsIENURm9udFJlZiBmb250LCBjb25zdCBOU1Jh
bmdlJiByYW5nZSkKK3sKKyAgICBpZiAoIUFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZChh
dHRyaWJ1dGVkU3RyaW5nLCByYW5nZSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJldGFpblB0
cjxDRlN0cmluZ1JlZj4gZnVsbE5hbWUgPSBhZG9wdENGKENURm9udENvcHlGdWxsTmFtZShmb250
KSk7Ci0gICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBmYW1pbHlOYW1lID0gYWRvcHRDRihDVEZv
bnRDb3B5RmFtaWx5TmFtZShmb250KSk7CisgICAgaWYgKCFmb250KSB7CisjaWYgUExBVEZPUk0o
TUFDKQorICAgICAgICBbYXR0cmlidXRlZFN0cmluZyByZW1vdmVBdHRyaWJ1dGU6TlNBY2Nlc3Np
YmlsaXR5Rm9udFRleHRBdHRyaWJ1dGUgcmFuZ2U6cmFuZ2VdOworI2VuZGlmCisgICAgICAgIHJl
dHVybjsKKyAgICB9CiAKLSAgICBOU051bWJlciogc2l6ZSA9IFtOU051bWJlciBudW1iZXJXaXRo
RmxvYXQ6Q1RGb250R2V0U2l6ZShmb250KV07Ci0gICAgQ1RGb250U3ltYm9saWNUcmFpdHMgdHJh
aXRzID0gQ1RGb250R2V0U3ltYm9saWNUcmFpdHMoZm9udCk7Ci0gICAgTlNOdW1iZXIqIGJvbGQg
PSBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6KHRyYWl0cyAmIGtDVEZvbnRUcmFpdEJvbGQpXTsK
KyAgICBhdXRvIGZvbnRBdHRyaWJ1dGVzID0gYWRvcHROUyhbW05TTXV0YWJsZURpY3Rpb25hcnkg
YWxsb2NdIGluaXRdKTsKKyAgICBhdXRvIGZhbWlseU5hbWUgPSBhZG9wdENGKENURm9udENvcHlG
YW1pbHlOYW1lKGZvbnQpKTsKKyAgICBOU051bWJlciAqc2l6ZSA9IFtOU051bWJlciBudW1iZXJX
aXRoRmxvYXQ6Q1RGb250R2V0U2l6ZShmb250KV07CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
KyAgICBhdXRvIGZ1bGxOYW1lID0gYWRvcHRDRihDVEZvbnRDb3B5RnVsbE5hbWUoZm9udCkpOwog
ICAgIGlmIChmdWxsTmFtZSkKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0cmlidXRlOlVJQWNj
ZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgdmFsdWU6KE5TU3RyaW5nKilmdWxsTmFtZS5nZXQoKSBy
YW5nZTpyYW5nZV07CisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpicmlkZ2VfY2Fz
dChmdWxsTmFtZS5nZXQoKSkgZm9yS2V5OlVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWVdOwog
ICAgIGlmIChmYW1pbHlOYW1lKQotICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6VUlB
Y2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IHZhbHVlOihOU1N0cmluZyopZmFtaWx5TmFtZS5n
ZXQoKSByYW5nZTpyYW5nZV07CisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpicmlk
Z2VfY2FzdChmYW1pbHlOYW1lLmdldCgpKSBmb3JLZXk6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250
RmFtaWx5XTsKICAgICBpZiAoW3NpemUgYm9vbFZhbHVlXSkKLSAgICAgICAgW2F0dHJTdHJpbmcg
YWRkQXR0cmlidXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgdmFsdWU6c2l6ZSByYW5n
ZTpyYW5nZV07Ci0gICAgaWYgKFtib2xkIGJvb2xWYWx1ZV0gfHwgKHRyYWl0cyAmIGtDVEZvbnRU
cmFpdEJvbGQpKQotICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmls
aXR5VG9rZW5Cb2xkIHZhbHVlOkBZRVMgcmFuZ2U6cmFuZ2VdOworICAgICAgICBbZm9udEF0dHJp
YnV0ZXMgc2V0VmFsdWU6c2l6ZSBmb3JLZXk6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZV07
CisgICAgYXV0byB0cmFpdHMgPSBDVEZvbnRHZXRTeW1ib2xpY1RyYWl0cyhmb250KTsKKyAgICBp
ZiAodHJhaXRzICYga0NURm9udFRyYWl0Qm9sZCkKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNl
dFZhbHVlOkBZRVMgZm9yS2V5OlVJQWNjZXNzaWJpbGl0eVRva2VuQm9sZF07CiAgICAgaWYgKHRy
YWl0cyAmIGtDVEZvbnRUcmFpdEl0YWxpYykKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0cmli
dXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuSXRhbGljIHZhbHVlOkBZRVMgcmFuZ2U6cmFuZ2VdOwor
ICAgICAgICBbZm9udEF0dHJpYnV0ZXMgc2V0VmFsdWU6QFlFUyBmb3JLZXk6VUlBY2Nlc3NpYmls
aXR5VG9rZW5JdGFsaWNdOworCisgICAgW2F0dHJpYnV0ZWRTdHJpbmcgYWRkQXR0cmlidXRlczpm
b250QXR0cmlidXRlcy5nZXQoKSByYW5nZTpyYW5nZV07CisjZW5kaWYKKworI2lmIFBMQVRGT1JN
KE1BQykKKyAgICBbZm9udEF0dHJpYnV0ZXMgc2V0VmFsdWU6c2l6ZSBmb3JLZXk6TlNBY2Nlc3Np
YmlsaXR5Rm9udFNpemVLZXldOworCisgICAgaWYgKGZhbWlseU5hbWUpCisgICAgICAgIFtmb250
QXR0cmlidXRlcyBzZXRWYWx1ZTpicmlkZ2VfY2FzdChmYW1pbHlOYW1lLmdldCgpKSBmb3JLZXk6
TlNBY2Nlc3NpYmlsaXR5Rm9udEZhbWlseUtleV07CisgICAgYXV0byBwb3N0U2NyaXB0TmFtZSA9
IGFkb3B0Q0YoQ1RGb250Q29weVBvc3RTY3JpcHROYW1lKGZvbnQpKTsKKyAgICBpZiAocG9zdFNj
cmlwdE5hbWUpCisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpicmlkZ2VfY2FzdChw
b3N0U2NyaXB0TmFtZS5nZXQoKSkgZm9yS2V5Ok5TQWNjZXNzaWJpbGl0eUZvbnROYW1lS2V5XTsK
KyAgICBhdXRvIGRpc3BsYXlOYW1lID0gYWRvcHRDRihDVEZvbnRDb3B5RGlzcGxheU5hbWUoZm9u
dCkpOworICAgIGlmIChkaXNwbGF5TmFtZSkKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZh
bHVlOmJyaWRnZV9jYXN0KGRpc3BsYXlOYW1lLmdldCgpKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5
VmlzaWJsZU5hbWVLZXldOworCisgICAgW2F0dHJpYnV0ZWRTdHJpbmcgYWRkQXR0cmlidXRlOk5T
QWNjZXNzaWJpbGl0eUZvbnRUZXh0QXR0cmlidXRlIHZhbHVlOmZvbnRBdHRyaWJ1dGVzLmdldCgp
IHJhbmdlOnJhbmdlXTsKKyNlbmRpZgogfQogCiBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmlu
Z1NldE51bWJlcihOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBOU1N0cmlu
ZyogYXR0cmlidXRlLCBOU051bWJlciogbnVtYmVyLCBOU1JhbmdlIHJhbmdlKQpAQCAtNjE0LDcg
KzY0NCw3IEBAIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0U3R5bGUoTlNNdXRhYmxl
QXR0cmlidXRlZFN0cmluZyogYXR0clN0cmluZywgUmVuCiAgICAgYXV0byYgc3R5bGUgPSByZW5k
ZXJlci0+c3R5bGUoKTsKIAogICAgIC8vIHNldCBiYXNpYyBmb250IGluZm8KLSAgICBBWEF0dHJp
YnV0ZVN0cmluZ1NldEZvbnQoYXR0clN0cmluZywgc3R5bGUuZm9udENhc2NhZGUoKS5wcmltYXJ5
Rm9udCgpLmdldENURm9udCgpLCByYW5nZSk7CisgICAgQVhBdHRyaWJ1dGVkU3RyaW5nU2V0Rm9u
dChhdHRyU3RyaW5nLCBzdHlsZS5mb250Q2FzY2FkZSgpLnByaW1hcnlGb250KCkuZ2V0Q1RGb250
KCksIHJhbmdlKTsKIAogICAgIGF1dG8gZGVjb3IgPSBzdHlsZS50ZXh0RGVjb3JhdGlvbnNJbkVm
ZmVjdCgpOwogICAgIGlmIChkZWNvciAmIFRleHREZWNvcmF0aW9uTGluZTo6VW5kZXJsaW5lKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQppbmRleCBjZDliYWFlNDNkZDUy
ZGUxY2I5NThmOTU4MDNkZmM1OGUzNjlmNTIzLi40OTA4YjBhNWE0NzNjNDdmMDUxM2YzYjM0MzE4
MjQzYWUzNDUyNDJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQpA
QCAtNzY4LDMxICs3NjgsNiBAQCBzdGF0aWMgUmV0YWluUHRyPEFYVGV4dE1hcmtlclJlZj4gcHJl
dmlvdXNUZXh0TWFya2VyRm9yQ2hhcmFjdGVyT2Zmc2V0KEFYT2JqZWN0QwogICAgIHJldHVybiBh
ZG9wdENGKEFYVGV4dE1hcmtlckNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCAoY29uc3QgVUlu
dDgqKSZ0ZXh0TWFya2VyRGF0YS52YWx1ZSgpLCBzaXplb2YodGV4dE1hcmtlckRhdGEudmFsdWUo
KSkpKTsKIH0KIAotLy8gV2hlbiBtb2RpZnlpbmcgYXR0cmlidXRlZCBzdHJpbmdzLCB0aGUgcmFu
Z2UgY2FuIGNvbWUgZnJvbSBhIHNvdXJjZSB3aGljaCBtYXkgcHJvdmlkZSBmYXVsdHkgaW5mb3Jt
YXRpb24gKGUuZy4gdGhlIHNwZWxsIGNoZWNrZXIpLgotLy8gVG8gcHJvdGVjdCBhZ2FpbnN0IHN1
Y2ggY2FzZXMgdGhlIHJhbmdlIHNob3VsZCBiZSB2YWxpZGF0ZWQgYmVmb3JlIGFkZGluZyBvciBy
ZW1vdmluZyBhdHRyaWJ1dGVzLgotc3RhdGljIEJPT0wgQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJ
c1ZhbGlkKE5TQXR0cmlidXRlZFN0cmluZyAqYXR0clN0cmluZywgTlNSYW5nZSByYW5nZSkKLXsK
LSAgICByZXR1cm4gKHJhbmdlLmxvY2F0aW9uIDwgW2F0dHJTdHJpbmcgbGVuZ3RoXSAmJiBOU01h
eFJhbmdlKHJhbmdlKSA8PSBbYXR0clN0cmluZyBsZW5ndGhdKTsKLX0KLQotc3RhdGljIHZvaWQg
QVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcgKmF0dHJT
dHJpbmcsIE5TU3RyaW5nICphdHRyaWJ1dGUsIENURm9udFJlZiBmb250LCBOU1JhbmdlIHJhbmdl
KQotewotICAgIGlmICghQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkKGF0dHJTdHJpbmcs
IHJhbmdlKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKGZvbnQpIHsKLSAgICAgICAgTlNE
aWN0aW9uYXJ5ICpkaWN0aW9uYXJ5ID0gQHsKLSAgICAgICAgICAgIE5TQWNjZXNzaWJpbGl0eUZv
bnROYW1lS2V5OiAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9wdENGKENURm9udENvcHlQb3N0U2Ny
aXB0TmFtZShmb250KSkuZ2V0KCksCi0gICAgICAgICAgICBOU0FjY2Vzc2liaWxpdHlGb250RmFt
aWx5S2V5OiAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9wdENGKENURm9udENvcHlGYW1pbHlOYW1l
KGZvbnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5TQWNjZXNzaWJpbGl0eVZpc2libGVOYW1lS2V5
OiAoX19icmlkZ2UgTlNTdHJpbmcgKilhZG9wdENGKENURm9udENvcHlEaXNwbGF5TmFtZShmb250
KSkuZ2V0KCksCi0gICAgICAgICAgICBOU0FjY2Vzc2liaWxpdHlGb250U2l6ZUtleTogQChDVEZv
bnRHZXRTaXplKGZvbnQpKSwKLSAgICAgICAgfTsKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0
cmlidXRlOmF0dHJpYnV0ZSB2YWx1ZTpkaWN0aW9uYXJ5IHJhbmdlOnJhbmdlXTsKLSAgICB9IGVs
c2UKLSAgICAgICAgW2F0dHJTdHJpbmcgcmVtb3ZlQXR0cmlidXRlOmF0dHJpYnV0ZSByYW5nZTpy
YW5nZV07Ci0gICAgCi19Ci0KIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0Q29sb3Io
TlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0clN0cmluZywgTlNTdHJpbmcqIGF0dHJpYnV0
ZSwgTlNDb2xvciogY29sb3IsIE5TUmFuZ2UgcmFuZ2UpCiB7CiAgICAgaWYgKCFBWEF0dHJpYnV0
ZWRTdHJpbmdSYW5nZUlzVmFsaWQoYXR0clN0cmluZywgcmFuZ2UpKQpAQCAtODIxLDEwICs3OTYs
MTAgQEAgc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXROdW1iZXIoTlNNdXRhYmxlQXR0
cmlidXRlZFN0cmluZyogYXR0clN0cmluZywgTlMKIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3Ry
aW5nU2V0U3R5bGUoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0clN0cmluZywgUmVuZGVy
T2JqZWN0KiByZW5kZXJlciwgTlNSYW5nZSByYW5nZSkKIHsKICAgICBjb25zdCBSZW5kZXJTdHls
ZSYgc3R5bGUgPSByZW5kZXJlci0+c3R5bGUoKTsKLSAgICAKKwogICAgIC8vIHNldCBiYXNpYyBm
b250IGluZm8KLSAgICBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQoYXR0clN0cmluZywgTlNBY2Nl
c3NpYmlsaXR5Rm9udFRleHRBdHRyaWJ1dGUsIHN0eWxlLmZvbnRDYXNjYWRlKCkucHJpbWFyeUZv
bnQoKS5nZXRDVEZvbnQoKSwgcmFuZ2UpOwotICAgIAorICAgIEFYQXR0cmlidXRlZFN0cmluZ1Nl
dEZvbnQoYXR0clN0cmluZywgc3R5bGUuZm9udENhc2NhZGUoKS5wcmltYXJ5Rm9udCgpLmdldENU
Rm9udCgpLCByYW5nZSk7CisKICAgICAvLyBzZXQgYmFzaWMgY29sb3JzCiAgICAgQVhBdHRyaWJ1
dGVTdHJpbmdTZXRDb2xvcihhdHRyU3RyaW5nLCBOU0FjY2Vzc2liaWxpdHlGb3JlZ3JvdW5kQ29s
b3JUZXh0QXR0cmlidXRlLCBjb2NvYUNvbG9yKHN0eWxlLnZpc2l0ZWREZXBlbmRlbnRDb2xvcihD
U1NQcm9wZXJ0eUNvbG9yKSkuZ2V0KCksIHJhbmdlKTsKICAgICBBWEF0dHJpYnV0ZVN0cmluZ1Nl
dENvbG9yKGF0dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0eUJhY2tncm91bmRDb2xvclRleHRBdHRy
aWJ1dGUsIGNvY29hQ29sb3Ioc3R5bGUudmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5
QmFja2dyb3VuZENvbG9yKSkuZ2V0KCksIHJhbmdlKTsKQEAgLTEwMjMsNyArOTk4LDcgQEAgc3Rh
dGljIHZvaWQgQVhBdHRyaWJ1dGVkU3RyaW5nQXBwZW5kVGV4dChOU011dGFibGVBdHRyaWJ1dGVk
U3RyaW5nKiBhdHRyU3RyaW5nLAogI2VuZGlmCiAgICAgICAgIFthdHRyU3RyaW5nIHJlbW92ZUF0
dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlNaXNzcGVsbGVkVGV4dEF0dHJpYnV0ZSByYW5nZTphdHRy
U3RyaW5nUmFuZ2VdOwogICAgIH0KLSAgICAKKwogICAgIC8vIHNldCBuZXcgYXR0cmlidXRlcwog
ICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0U3R5bGUoYXR0clN0cmluZywgcmVuZGVyZXIsIGF0dHJT
dHJpbmdSYW5nZSk7CiAgICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRIZWFkaW5nTGV2ZWwoYXR0clN0
cmluZywgcmVuZGVyZXIsIGF0dHJTdHJpbmdSYW5nZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNGM3NTQ4ZGU1NTJmNThh
ZTJiMDdjMDk0NjgyMDk5MzFlMjg2ZTI4MC4uNjMxZWQ1ODBlYTdlZDIxZmI4MThlODIyNGZhYzk3
ZTljZjdlYmQ2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTAzICBUeWxlciBXaWxj
b2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMgd2hlbiBn
aXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5LCBvciBk
aXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IENocmlzIEZsZWl6YWNoIGFuZCBBbmRy
ZXMgR29uemFsZXouCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9MaXRoZXJ1
bS5zdmc6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnM6IFNr
aXAgbmV3IHRlc3QuCisgICAgICAgICogcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnM6IEVu
YWJsZSBuZXcgdGVzdC4KKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9uczog
U2tpcCBuZXcgdGVzdC4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2Vs
ZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4dC1leHBlY3RlZC50eHQ6CisgICAgICAgIEJlZm9yZSB0
aGlzIHBhdGNoLCBbV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlIEFYQXR0cmlidXRl
U3RyaW5nU2V0U3R5bGVdIGNhbGxlZCB0aGUgaU9TCisgICAgICAgIHZlcnNpb24gb2YgQVhBdHRy
aWJ1dGVTdHJpbmdTZXRGb250LiBUaGlzIHBhdGNoIGZpeGVzIHRoaXMuIFRoZSBleHBlY3RhdGlv
biBmb3IgdGhpcyB0ZXN0IGlzIHVwZGF0ZWQgYXMgYSByZXN1bHQuCisKIDIwMjItMDMtMDMgIFNp
bW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgbmFzYS5nb3Yg
cGFnZSB3aXRoIGZpeGVkIGJhY2tncm91bmRzIHBhaW50cyBpbmNvcnJlY3RseSBvbiBzY3JvbGwK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvcmVzb3VyY2VzL0xpdGhlcnVt
LnN2ZyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvcmVzb3VyY2VzL0xpdGhlcnVtLnN2Zwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5jMzU0OGU1MGZmYTdjMDc2MmQzNzJjMzM3MmE5ODk1ODMyNWNkMzczCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVy
dW0uc3ZnCkBAIC0wLDAgKzEsMTIgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgc3RhbmRhbG9uZT0i
bm8iPz4KKzwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0
dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPgorPHN2ZyB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorPG1ldGFkYXRhPjwvbWV0YWRhdGE+
Cis8ZGVmcz4KKzxmb250IGlkPSJMaXRoZXJ1bSIgaG9yaXotYWR2LXg9IjEwMjQiPgorPGZvbnQt
ZmFjZSB1bml0cy1wZXItZW09IjE0IiBhc2NlbnQ9IjE0IiBkZXNjZW50PSIwIi8+Cis8Z2x5cGgg
dW5pY29kZT0ifCIgaG9yaXotYWR2LXg9IjE0IiBkPSJNMCAwdjE0aDE0di0xNHoiLz4KKzxnbHlw
aCB1bmljb2RlPSItIiBob3Jpei1hZHYteD0iMjY2IiBkPSJNMCAwdjE0aDI2NnYtMTR6Ii8+Cis8
L2ZvbnQ+Cis8L2RlZnM+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvc3ZnLWZvbnQtZmFjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L3N2Zy1mb250LWZhY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNhODA4MGJhNTQxYjJl
NmUwMzQ4ZWVhZGEzNTZkNGYyMzgyMWUyNjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBA
QAorVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB3ZSBkb24ndCBjcmFzaCB3aGVuIGFwcGx5aW5nIGEg
Y3VzdG9tIFNWRyBmb250IHRvIGF0dHJpYnV0ZWQgc3RyaW5ncy4KK0dldHRpbmcgYXR0cmlidXRl
ZCBzdHJpbmcgZm9yIHJhbmdlICgwLCA5KQorUEFTUzogRGlkbid0IGNyYXNoLgorCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLmh0bWwgYi9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYzM5MzAxNjM1
YmYwYTA0Mjc5ZmQ0Yjk2Y2I0MGY5ODM0ZmU3MDkzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLmh0bWwKQEAgLTAsMCArMSwzNSBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8
c3R5bGU+CitAZm9udC1mYWNlIHsKKyAgICBmb250LWZhbWlseTogJ0xpdGhlcnVtJzsKKyAgICBz
cmM6IHVybCgicmVzb3VyY2VzL0xpdGhlcnVtLnN2ZyIpIGZvcm1hdChzdmcpOworfQorKiB7IGZv
bnQtZmFtaWx5OiAnTGl0aGVydW0nOyB9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgorCis8aW5wdXQgdHlwZT0idGV4dCIgaWQ9InRleHRmaWVsZCIgdmFsdWU9
InNvbWUgd29yZCI+PC9pbnB1dD4KKworPHNjcmlwdD4KKyAgICB2YXIgb3V0cHV0ID0gIlRoaXMg
dGVzdCBlbnN1cmVzIHRoYXQgd2UgZG9uJ3QgY3Jhc2ggd2hlbiBhcHBseWluZyBhIGN1c3RvbSBT
VkcgZm9udCB0byBhdHRyaWJ1dGVkIHN0cmluZ3MuXG4iOworCisgICAgaWYgKHdpbmRvdy5hY2Nl
c3NpYmlsaXR5Q29udHJvbGxlcikKKyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVl
OworCisgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgaWYgKHdpbmRvdy5hY2Nlc3Np
YmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICAgICAgY29uc3QgdGV4dEZpZWxkID0gYWNjZXNz
aWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJ0ZXh0ZmllbGQiKTsKKyAg
ICAgICAgICAgIG91dHB1dCArPSBgR2V0dGluZyBhdHRyaWJ1dGVkIHN0cmluZyBmb3IgcmFuZ2Ug
KDAsIDkpXG5gOworICAgICAgICAgICAgY29uc3QgYXR0cmlidXRlZFN0cmluZyA9IHRleHRGaWVs
ZC5hdHRyaWJ1dGVkU3RyaW5nRm9yUmFuZ2UoMCwgOSk7CisgICAgICAgICAgICBvdXRwdXQgKz0g
IlBBU1M6IERpZG4ndCBjcmFzaC5cbiI7CisgICAgICAgICAgICBkZWJ1ZyhvdXRwdXQpOworICAg
ICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0KKyAgICB9Cis8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVz
dEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9u
cwppbmRleCAyZTEyN2M5OGYzMDNmZmI5Yjg1MGM3OTQzNWRmZjVmNjM4NzBmMTA3Li5lZDY0OTAx
OTU5NjMwZGU4OGYwZDE1YWNiOTBjYjkwY2IxODM2NzU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zCkBAIC0zMzEsNiArMzMxLDggQEAgZmFzdC9jc3MvYWNj
ZW50LWNvbG9yL3RleHQuaHRtbCBbIFBhc3MgXQogIyBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgYnVn
cwogIy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KIAorYWNjZXNzaWJpbGl0eS9zdmct
Zm9udC1mYWNlLmh0bWwgWyBTa2lwIF0KKwogIyBOZWVkIHRvIGltcGxlbWVudCBBY2Nlc3NpYmls
aXR5VUlFbGVtZW50OjpoYXNEb2N1bWVudFJvbGVBbmNlc3RvcigpLCBBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50OjpoYXNXZWJBcHBsaWNhdGlvbkFuY2VzdG9yKCksCiAjIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OmlzSW5EZXNjcmlwdGlvbkxpc3REZXRhaWwoKSwgQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dDo6aXNJbkRlc2NyaXB0aW9uTGlzdFRlcm0oKSwgYW5kCiAjIEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OmlzSW5DZWxsKCkuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVz
dEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IDhiMzExMTMwYzgxMGFlNzA4OTM2ZTJlMDQzYWFmMmFlOGE1NTY3ZTUuLjNjYzM2NjUx
YTI5ZjgzYjZlNWM5MTNmNGJiN2NjMDBiYTU0ZjZkYTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMTA1LDYgKzIxMDUsNyBAQCBhY2Nlc3NpYmlsaXR5
L2lnbm9yZS1tb2RhbHMtd2l0aG91dC1hbnktY29udGVudC5odG1sIFsgUGFzcyBdCiAKIGFjY2Vz
c2liaWxpdHkvc2VsZWN0ZWQtc3RhdGUtY2hhbmdlZC1ub3RpZmljYXRpb25zLmh0bWwgWyBQYXNz
IF0KIGFjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0Lmh0bWwgWyBQYXNz
IF0KK2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS5odG1sIFsgUGFzcyBdCiAKICMgRW5hYmxl
ICJhdHRhY2htZW50IGVsZW1lbnQiIHRlc3QgZm9yIGlPUwogYWNjZXNzaWJpbGl0eS9hdHRhY2ht
ZW50LWVsZW1lbnQuaHRtbCBbIFBhc3MgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGlu
ZS1yZWN0cy1hbmQtdGV4dC1leHBlY3RlZC50eHQKaW5kZXggYzIwZDYxYjFmYjhhYmQwZjFjOTVh
ZTc4ODZjZGZhYjBlMDQ3NWU2Yi4uMzVkNjE1OGU3ZjNiZGFiMDRjZGVkYmM1YmZlMTZiYTJhMDQ4
YWEyNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkv
ZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQt
ZXhwZWN0ZWQudHh0CkBAIC0xMCwyOCArMTAsMjggQEAgVGhpcyB0ZXN0cyB0aGF0IGxpbmVSZWN0
c0FuZFRleHQgcmV0dXJucyB0aGUgY29ycmVjdCB2YWx1ZXMuCiBPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCiAKIAotdGV4dCA9ICJUaGlzIGlzIHNvbWUgdGVzdGluZyBjb250ZW50LiB7XG4gICAg
VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmls
aXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlU
b2tlbkZvbnRTaXplID0gMTY7XG59QSBsaW5rIGhlcmUue1xuICAgIFVJQWNjZXNzaWJpbGl0eVRv
a2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUg
PSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2
O1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuVW5kZXJsaW5lID0gMTtcbn0gTU9yZSB0ZXh0Lntc
biAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vz
c2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJp
bGl0eVRva2VuRm9udFNpemUgPSAxNjtcbn0iOwordGV4dCA9ICJUaGlzIGlzIHNvbWUgdGVzdGlu
ZyBjb250ZW50LiB7XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0g
VGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFY
Rm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtc
biAgICB9O1xufUEgbGluayBoZXJlLntcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZv
bnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtc
biAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1l
cyBSb21hblwiO1xuICAgIH07XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5VbmRlcmxpbmUgPSAx
O1xufSBNT3JlIHRleHQue1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWls
eSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAg
ICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFu
XCI7XG4gICAgfTtcbn0iOwogd2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0
ID0gInp7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAg
VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFj
Y2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59IjsKK3RleHQgPSAientcbiAgICBBWEZv
bnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250
TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAg
ICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4g
MDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQotdGV4dCA9ICJBbm90aGVyIGxpbmUgb2YgdGV4dC57
XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nl
c3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2li
aWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59IjsKK3RleHQgPSAiQW5vdGhlciBsaW5lIG9mIHRl
eHQue1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xu
ICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXpl
ID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtc
bn0iOwogd2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCiB0ZXh0ID0gImNha2V7XG59
IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQotdGV4dCA9ICJKYWNrIGFuZCBK
aWxsIHdlbnQgdXAgdGhlIGhpbGwgdG8gZmV0Y2ggYSBwYWlsIG9mIHdhdGVyLiBKYWNrIGZlbGwg
ZG93bi4uLntcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAg
ICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJ
QWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAxNDtcbn0iOwordGV4dCA9ICJKYWNrIGFuZCBK
aWxsIHdlbnQgdXAgdGhlIGhpbGwgdG8gZmV0Y2ggYSBwYWlsIG9mIHdhdGVyLiBKYWNrIGZlbGwg
ZG93bi4uLntcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkgPSBUaW1l
cztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAgQVhGb250
U2l6ZSA9IDE0O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAg
IH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQotdGV4dCA9ICJhYmNk
ZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4
eXowMTIzNDU2Nzg5IHtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1l
cztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xu
ICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAxNjtcbn0iOwordGV4dCA9ICJhYmNk
ZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4
eXowMTIzNDU2Nzg5IHtcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkg
PSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAg
QVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwi
O1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQotdGV4dCA9
ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktYWJjZGVmZ2hpamtsbW5vcHFy
c3R1dnd4eXowMTIzNDU2Nzg5LXtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkg
PSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21h
blwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAxNjtcbn0iOwordGV4dCA9
ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktYWJjZGVmZ2hpamtsbW5vcHFy
c3R1dnd4eXowMTIzNDU2Nzg5LXtcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRG
YW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAg
ICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBS
b21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQot
dGV4dCA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODl7XG4gICAgVUlBY2Nl
c3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9r
ZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZv
bnRTaXplID0gMTY7XG59IjsKK3RleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIz
NDU2Nzg5e1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVz
O1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRT
aXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAg
fTtcbn0iOwogd2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCiBQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
VGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IGM3ZDU4YzNmMWIyZTI1Zjc5OGQyOGEwNDM1YThlMjVjMmUxMmJkYjEuLjgyN2U4
ZTFmYTFjY2MxMDIyNDBhNzQxNDkxYjE2YjY2YjQxN2Y4ZmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCkBAIC00OTIyLDcgKzQ5MjIsMTAgQEAgd2Via2l0Lm9y
Zy9iLzIyOTMwMCBodHRwL3Rlc3RzL3NlY3VyaXR5L25vLWphdmFzY3JpcHQtcmVmcmVzaC1zcGFj
ZXMucHkgWyBQYXNzIEMKIGFjY2Vzc2liaWxpdHkvc2VsZWN0ZWQtc3RhdGUtY2hhbmdlZC1ub3Rp
ZmljYXRpb25zLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3Rz
LWFuZC10ZXh0Lmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvZGlhbG9nLXByb3BlcnRpZXMu
aHRtbCBbIFNraXAgXQorCisjIE1pc3NpbmcgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YXR0cmli
dXRlZFN0cmluZ0ZvclJhbmdlIGltcGxlbWVudGF0aW9uCiBhY2Nlc3NpYmlsaXR5L25hdGl2ZS10
ZXh0LWNvbnRyb2wtYXR0cmlidXRlZC1zdHJpbmcuaHRtbCBbIFNraXAgXQorYWNjZXNzaWJpbGl0
eS9zdmctZm9udC1mYWNlLmh0bWwgWyBTa2lwIF0KIAogd2Via2l0Lm9yZy9iLzIyOTI0NyBodHRw
L3Rlc3RzL2ZldGNoL2tlZXBhbGl2ZS1mZXRjaC0yLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453841</attachid>
            <date>2022-03-04 07:47:49 -0800</date>
            <delta_ts>2022-03-04 07:49:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220304094748.patch</filename>
            <type>text/plain</type>
            <size>22629</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNzk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWM3NjI3YTk1ZDkyNTBi
ZTQzNzBkMTZkMTQ4NGQzMDBiMWRmYmI2Yy4uZDg2MjA5ZDY1MTcyYjM5YmUxMTdiYTk1NDZlZjRj
ZjIzZGZkOWIzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIyLTAzLTAzICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IENocmlzIEZsZWl6YWNoIGFu
ZCBBbmRyZXMgR29uemFsZXouCisKKyAgICAgICAgW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyTWFjIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udF0gY3Jhc2hlcyB3aGVuIGdpdmVuIGEgZm9u
dCB3aXRoIGEKKyAgICAgICAgbmlsIHBvc3RzY3JpcHQgbmFtZSwgZm9udCBmYW1pbHksIG9yIGRp
c3BsYXkgbmFtZS4gVGhpcyBjYW4gYmUKKyAgICAgICAgdHJpZ2dlcmVkIHdpdGggYSBjdXN0b20g
U1ZHIEBmb250LWZhY2UgLS0gZm9yIGV4YW1wbGU6CisKKyAgICAgICAgQGZvbnQtZmFjZSB7Cisg
ICAgICAgICAgICBmb250LWZhbWlseTogJ0xpdGhlcnVtJzsKKyAgICAgICAgICAgIHNyYzogdXJs
KCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7CisgICAgICAgIH0KKyAgICAg
ICAgKiB7IGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOyB9CisKKyAgICAgICAgV2UgZml4IHRoaXMg
YnkgY2hlY2tpbmcgaWYgdGhlc2UgdmFsdWVzIGFyZSBuaWwgYmVmb3JlIHRyeWluZyB0byBhZGQK
KyAgICAgICAgdGhlbSB0byBhIGRpY3Rpb25hcnkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNv
IGNlbnRyYWxpemVzIGFwcGxpY2F0aW9uIG9mIGZvbnRzIHRvIGF0dHJpYnV0ZWQgc3RyaW5ncwor
ICAgICAgICBieSBtb3ZpbmcgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250IHRvIHRoZSBiYXNlIHdy
YXBwZXIuIEluIGRvaW5nIHNvLAorICAgICAgICB3ZSBmaXggYSBidWcgd2hlcmUgaWYgW1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZSBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlXSB3
YXMKKyAgICAgICAgY2FsbGVkIGZyb20gYSBNYWMtY29udGV4dCwgaXQgc2V0IGlPUyBmb250IHBy
b3BlcnRpZXMgKGUuZy4KKyAgICAgICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IGlu
c3RlYWQgb2YgTlNBY2Nlc3NpYmlsaXR5Rm9udEZhbWlseUtleSkuCisKKyAgICAgICAgVGVzdDog
YWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLmh0bWwKKworICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oOgorICAgICAgICAqIGFj
Y2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbToKKyAg
ICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6IEFkZGVkLgorICAgICAgICAo
QVhBdHRyaWJ1dGVkU3RyaW5nU2V0Rm9udCk6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOgorICAgICAgICAoQVhB
dHRyaWJ1dGVTdHJpbmdTZXRTdHlsZSk6CisgICAgICAgIChBWEF0dHJpYnV0ZWRTdHJpbmdBcHBl
bmRUZXh0KToKKyAgICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6CisgICAg
ICAgIE1vdmVkIHRvIGJhc2Ugd3JhcHBlci4KKyAgICAgICAgKEFYQXR0cmlidXRlU3RyaW5nU2V0
Rm9udCk6CisgICAgICAgIE1vdmVkIHRvIGJhc2Ugd3JhcHBlci4KKwogMjAyMi0wMy0wMyAgU2lt
b24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBuYXNhLmdvdiBw
YWdlIHdpdGggZml4ZWQgYmFja2dyb3VuZHMgcGFpbnRzIGluY29ycmVjdGx5IG9uIHNjcm9sbApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaAppbmRleCBhYzJiZGJmZTJhYzU4
OTY1NjBlNjA5NjA0Yzc2OTgzNmEyODQyNGFkLi5kN2FkN2E4YmRmMTVjZTAxMjYzM2QwNzM4MmVk
MGU0NmQyZDk5YTU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaApA
QCAtMjcsNiArMjcsNyBAQAogICovCiAKICNpbXBvcnQgIkFjY2Vzc2liaWxpdHlPYmplY3RJbnRl
cmZhY2UuaCIKKyNpbXBvcnQgIkZvbnRQbGF0Zm9ybURhdGEuaCIKICNpbXBvcnQgPENvcmVHcmFw
aGljcy9Db3JlR3JhcGhpY3MuaD4KICNpbXBvcnQgPHZhcmlhbnQ+CiAjaW1wb3J0IDx3dGYvUmVm
UHRyLmg+CkBAIC01Nyw2ICs1OCw5IEBAIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IFVJQWNjZXNz
aWJpbGl0eVRva2VuQXR0YWNobWVudCA9IEAiVUlBY2Nlc3NpYmlsaXR5VG9rZW5BCiBzdGF0aWMg
TlNTdHJpbmcgKiBjb25zdCBVSUFjY2Vzc2liaWxpdHlUZXh0QXR0cmlidXRlQ29udGV4dCA9IEAi
VUlBY2Nlc3NpYmlsaXR5VGV4dEF0dHJpYnV0ZUNvbnRleHQiOwogc3RhdGljIE5TU3RyaW5nICog
Y29uc3QgVUlBY2Nlc3NpYmlsaXR5VGV4dHVhbENvbnRleHRTb3VyY2VDb2RlID0gQCJVSUFjY2Vz
c2liaWxpdHlUZXh0dWFsQ29udGV4dFNvdXJjZUNvZGUiOwogCitib29sIEFYQXR0cmlidXRlZFN0
cmluZ1JhbmdlSXNWYWxpZChOU0F0dHJpYnV0ZWRTdHJpbmcgKiwgTlNSYW5nZSk7Cit2b2lkIEFY
QXR0cmlidXRlZFN0cmluZ1NldEZvbnQoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyAqLCBDVEZv
bnRSZWYsIGNvbnN0IE5TUmFuZ2UmKTsKKwogQGludGVyZmFjZSBXZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlckJhc2UgOiBOU09iamVjdCB7CiAgICAgV2ViQ29yZTo6QVhDb3JlT2JqZWN0KiBt
X2F4T2JqZWN0OwogI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0lTT0xBVEVEX1RSRUUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlckJhc2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9X
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0KaW5kZXggYWE2NmYzZjVmMzk5ZDZm
NTdkYjRjYTQ3ODg1M2E1NjUzZGViZTQ1NS4uODEyMTQwY2I5ZGViZjM4MWJjNzM2YTdmZDhmNDk3
M2RiNGVlMWRlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMv
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbQpA
QCAtNDYsOCArNDYsNiBAQAogI2ltcG9ydCAiQ29sb3JNYWMuaCIKICNpbXBvcnQgIkNvbnRleHRN
ZW51Q29udHJvbGxlci5oIgogI2ltcG9ydCAiRWRpdGluZy5oIgotI2ltcG9ydCAiRm9udC5oIgot
I2ltcG9ydCAiRm9udENhc2NhZGUuaCIKICNpbXBvcnQgIkZyYW1lU2VsZWN0aW9uLmgiCiAjaW1w
b3J0ICJIVE1MTmFtZXMuaCIKICNpbXBvcnQgIkxheW91dFJlY3QuaCIKQEAgLTU3OCwyNyArNTc2
LDU5IEBAIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0SGVhZGluZ0xldmVsKE5TTXV0
YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpCiAgICAgICAgIFthdHRyU3RyaW5nIHJlbW92
ZUF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkhlYWRpbmdMZXZlbCByYW5nZTpyYW5nZV07
CiB9CiAKLXN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udChOU011dGFibGVBdHRy
aWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBDVEZvbnRSZWYgZm9udCwgTlNSYW5nZSByYW5nZSkK
Ky8vIFdoZW4gbW9kaWZ5aW5nIGF0dHJpYnV0ZWQgc3RyaW5ncywgdGhlIHJhbmdlIGNhbiBjb21l
IGZyb20gYSBzb3VyY2Ugd2hpY2ggbWF5IHByb3ZpZGUgZmF1bHR5IGluZm9ybWF0aW9uIChlLmcu
IHRoZSBzcGVsbCBjaGVja2VyKS4KKy8vIFRvIHByb3RlY3QgYWdhaW5zdCBzdWNoIGNhc2VzLCB0
aGUgcmFuZ2Ugc2hvdWxkIGJlIHZhbGlkYXRlZCBiZWZvcmUgYWRkaW5nIG9yIHJlbW92aW5nIGF0
dHJpYnV0ZXMuCitib29sIEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZChOU0F0dHJpYnV0
ZWRTdHJpbmcgKmF0dHJpYnV0ZWRTdHJpbmcsIE5TUmFuZ2UgcmFuZ2UpCiB7Ci0gICAgaWYgKCFm
b250KQorICAgIHJldHVybiBOU01heFJhbmdlKHJhbmdlKSA8PSBbYXR0cmlidXRlZFN0cmluZyBs
ZW5ndGhdOworfQorCit2b2lkIEFYQXR0cmlidXRlZFN0cmluZ1NldEZvbnQoTlNNdXRhYmxlQXR0
cmlidXRlZFN0cmluZyAqYXR0cmlidXRlZFN0cmluZywgQ1RGb250UmVmIGZvbnQsIGNvbnN0IE5T
UmFuZ2UmIHJhbmdlKQoreworICAgIGlmICghQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlk
KGF0dHJpYnV0ZWRTdHJpbmcsIHJhbmdlKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmV0YWlu
UHRyPENGU3RyaW5nUmVmPiBmdWxsTmFtZSA9IGFkb3B0Q0YoQ1RGb250Q29weUZ1bGxOYW1lKGZv
bnQpKTsKLSAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGZhbWlseU5hbWUgPSBhZG9wdENGKENU
Rm9udENvcHlGYW1pbHlOYW1lKGZvbnQpKTsKKyAgICBpZiAoIWZvbnQpIHsKKyNpZiBQTEFURk9S
TShNQUMpCisgICAgICAgIFthdHRyaWJ1dGVkU3RyaW5nIHJlbW92ZUF0dHJpYnV0ZTpOU0FjY2Vz
c2liaWxpdHlGb250VGV4dEF0dHJpYnV0ZSByYW5nZTpyYW5nZV07CisjZW5kaWYKKyAgICAgICAg
cmV0dXJuOworICAgIH0KIAotICAgIE5TTnVtYmVyKiBzaXplID0gW05TTnVtYmVyIG51bWJlcldp
dGhGbG9hdDpDVEZvbnRHZXRTaXplKGZvbnQpXTsKLSAgICBDVEZvbnRTeW1ib2xpY1RyYWl0cyB0
cmFpdHMgPSBDVEZvbnRHZXRTeW1ib2xpY1RyYWl0cyhmb250KTsKLSAgICBOU051bWJlciogYm9s
ZCA9IFtOU051bWJlciBudW1iZXJXaXRoQm9vbDoodHJhaXRzICYga0NURm9udFRyYWl0Qm9sZCld
OworICAgIGF1dG8gZm9udEF0dHJpYnV0ZXMgPSBhZG9wdE5TKFtbTlNNdXRhYmxlRGljdGlvbmFy
eSBhbGxvY10gaW5pdF0pOworICAgIGF1dG8gZmFtaWx5TmFtZSA9IGFkb3B0Q0YoQ1RGb250Q29w
eUZhbWlseU5hbWUoZm9udCkpOworICAgIE5TTnVtYmVyICpzaXplID0gW05TTnVtYmVyIG51bWJl
cldpdGhGbG9hdDpDVEZvbnRHZXRTaXplKGZvbnQpXTsKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZ
KQorICAgIGF1dG8gZnVsbE5hbWUgPSBhZG9wdENGKENURm9udENvcHlGdWxsTmFtZShmb250KSk7
CiAgICAgaWYgKGZ1bGxOYW1lKQotICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRyaWJ1dGU6VUlB
Y2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSB2YWx1ZTooTlNTdHJpbmcqKWZ1bGxOYW1lLmdldCgp
IHJhbmdlOnJhbmdlXTsKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOmJyaWRnZV9j
YXN0KGZ1bGxOYW1lLmdldCgpKSBmb3JLZXk6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZV07
CiAgICAgaWYgKGZhbWlseU5hbWUpCi0gICAgICAgIFthdHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTpV
SUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgdmFsdWU6KE5TU3RyaW5nKilmYW1pbHlOYW1l
LmdldCgpIHJhbmdlOnJhbmdlXTsKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOmJy
aWRnZV9jYXN0KGZhbWlseU5hbWUuZ2V0KCkpIGZvcktleTpVSUFjY2Vzc2liaWxpdHlUb2tlbkZv
bnRGYW1pbHldOwogICAgIGlmIChbc2l6ZSBib29sVmFsdWVdKQotICAgICAgICBbYXR0clN0cmlu
ZyBhZGRBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSB2YWx1ZTpzaXplIHJh
bmdlOnJhbmdlXTsKLSAgICBpZiAoW2JvbGQgYm9vbFZhbHVlXSB8fCAodHJhaXRzICYga0NURm9u
dFRyYWl0Qm9sZCkpCi0gICAgICAgIFthdHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTpVSUFjY2Vzc2li
aWxpdHlUb2tlbkJvbGQgdmFsdWU6QFlFUyByYW5nZTpyYW5nZV07CisgICAgICAgIFtmb250QXR0
cmlidXRlcyBzZXRWYWx1ZTpzaXplIGZvcktleTpVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXpl
XTsKKyAgICBhdXRvIHRyYWl0cyA9IENURm9udEdldFN5bWJvbGljVHJhaXRzKGZvbnQpOworICAg
IGlmICh0cmFpdHMgJiBrQ1RGb250VHJhaXRCb2xkKQorICAgICAgICBbZm9udEF0dHJpYnV0ZXMg
c2V0VmFsdWU6QFlFUyBmb3JLZXk6VUlBY2Nlc3NpYmlsaXR5VG9rZW5Cb2xkXTsKICAgICBpZiAo
dHJhaXRzICYga0NURm9udFRyYWl0SXRhbGljKQotICAgICAgICBbYXR0clN0cmluZyBhZGRBdHRy
aWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5JdGFsaWMgdmFsdWU6QFlFUyByYW5nZTpyYW5nZV07
CisgICAgICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpAWUVTIGZvcktleTpVSUFjY2Vzc2li
aWxpdHlUb2tlbkl0YWxpY107CisKKyAgICBbYXR0cmlidXRlZFN0cmluZyBhZGRBdHRyaWJ1dGVz
OmZvbnRBdHRyaWJ1dGVzLmdldCgpIHJhbmdlOnJhbmdlXTsKKyNlbmRpZgorCisjaWYgUExBVEZP
Uk0oTUFDKQorICAgIFtmb250QXR0cmlidXRlcyBzZXRWYWx1ZTpzaXplIGZvcktleTpOU0FjY2Vz
c2liaWxpdHlGb250U2l6ZUtleV07CisKKyAgICBpZiAoZmFtaWx5TmFtZSkKKyAgICAgICAgW2Zv
bnRBdHRyaWJ1dGVzIHNldFZhbHVlOmJyaWRnZV9jYXN0KGZhbWlseU5hbWUuZ2V0KCkpIGZvcktl
eTpOU0FjY2Vzc2liaWxpdHlGb250RmFtaWx5S2V5XTsKKyAgICBhdXRvIHBvc3RTY3JpcHROYW1l
ID0gYWRvcHRDRihDVEZvbnRDb3B5UG9zdFNjcmlwdE5hbWUoZm9udCkpOworICAgIGlmIChwb3N0
U2NyaXB0TmFtZSkKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOmJyaWRnZV9jYXN0
KHBvc3RTY3JpcHROYW1lLmdldCgpKSBmb3JLZXk6TlNBY2Nlc3NpYmlsaXR5Rm9udE5hbWVLZXld
OworICAgIGF1dG8gZGlzcGxheU5hbWUgPSBhZG9wdENGKENURm9udENvcHlEaXNwbGF5TmFtZShm
b250KSk7CisgICAgaWYgKGRpc3BsYXlOYW1lKQorICAgICAgICBbZm9udEF0dHJpYnV0ZXMgc2V0
VmFsdWU6YnJpZGdlX2Nhc3QoZGlzcGxheU5hbWUuZ2V0KCkpIGZvcktleTpOU0FjY2Vzc2liaWxp
dHlWaXNpYmxlTmFtZUtleV07CisKKyAgICBbYXR0cmlidXRlZFN0cmluZyBhZGRBdHRyaWJ1dGU6
TlNBY2Nlc3NpYmlsaXR5Rm9udFRleHRBdHRyaWJ1dGUgdmFsdWU6Zm9udEF0dHJpYnV0ZXMuZ2V0
KCkgcmFuZ2U6cmFuZ2VdOworI2VuZGlmCiB9CiAKIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3Ry
aW5nU2V0TnVtYmVyKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIE5TU3Ry
aW5nKiBhdHRyaWJ1dGUsIE5TTnVtYmVyKiBudW1iZXIsIE5TUmFuZ2UgcmFuZ2UpCkBAIC02MTQs
NyArNjQ0LDcgQEAgc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZShOU011dGFi
bGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBSZW4KICAgICBhdXRvJiBzdHlsZSA9IHJl
bmRlcmVyLT5zdHlsZSgpOwogCiAgICAgLy8gc2V0IGJhc2ljIGZvbnQgaW5mbwotICAgIEFYQXR0
cmlidXRlU3RyaW5nU2V0Rm9udChhdHRyU3RyaW5nLCBzdHlsZS5mb250Q2FzY2FkZSgpLnByaW1h
cnlGb250KCkuZ2V0Q1RGb250KCksIHJhbmdlKTsKKyAgICBBWEF0dHJpYnV0ZWRTdHJpbmdTZXRG
b250KGF0dHJTdHJpbmcsIHN0eWxlLmZvbnRDYXNjYWRlKCkucHJpbWFyeUZvbnQoKS5nZXRDVEZv
bnQoKSwgcmFuZ2UpOwogCiAgICAgYXV0byBkZWNvciA9IHN0eWxlLnRleHREZWNvcmF0aW9uc0lu
RWZmZWN0KCk7CiAgICAgaWYgKGRlY29yICYgVGV4dERlY29yYXRpb25MaW5lOjpVbmRlcmxpbmUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
bWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCmluZGV4IGNkOWJhYWU0M2Rk
NTJkZTFjYjk1OGY5NTgwM2RmYzU4ZTM2OWY1MjMuLjQ5MDhiMGE1YTQ3M2M0N2YwNTEzZjNiMzQz
MTgyNDNhZTM0NTI0MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
bWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1t
CkBAIC03NjgsMzEgKzc2OCw2IEBAIHN0YXRpYyBSZXRhaW5QdHI8QVhUZXh0TWFya2VyUmVmPiBw
cmV2aW91c1RleHRNYXJrZXJGb3JDaGFyYWN0ZXJPZmZzZXQoQVhPYmplY3RDCiAgICAgcmV0dXJu
IGFkb3B0Q0YoQVhUZXh0TWFya2VyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIChjb25zdCBV
SW50OCopJnRleHRNYXJrZXJEYXRhLnZhbHVlKCksIHNpemVvZih0ZXh0TWFya2VyRGF0YS52YWx1
ZSgpKSkpOwogfQogCi0vLyBXaGVuIG1vZGlmeWluZyBhdHRyaWJ1dGVkIHN0cmluZ3MsIHRoZSBy
YW5nZSBjYW4gY29tZSBmcm9tIGEgc291cmNlIHdoaWNoIG1heSBwcm92aWRlIGZhdWx0eSBpbmZv
cm1hdGlvbiAoZS5nLiB0aGUgc3BlbGwgY2hlY2tlcikuCi0vLyBUbyBwcm90ZWN0IGFnYWluc3Qg
c3VjaCBjYXNlcyB0aGUgcmFuZ2Ugc2hvdWxkIGJlIHZhbGlkYXRlZCBiZWZvcmUgYWRkaW5nIG9y
IHJlbW92aW5nIGF0dHJpYnV0ZXMuCi1zdGF0aWMgQk9PTCBBWEF0dHJpYnV0ZWRTdHJpbmdSYW5n
ZUlzVmFsaWQoTlNBdHRyaWJ1dGVkU3RyaW5nICphdHRyU3RyaW5nLCBOU1JhbmdlIHJhbmdlKQot
ewotICAgIHJldHVybiAocmFuZ2UubG9jYXRpb24gPCBbYXR0clN0cmluZyBsZW5ndGhdICYmIE5T
TWF4UmFuZ2UocmFuZ2UpIDw9IFthdHRyU3RyaW5nIGxlbmd0aF0pOwotfQotCi1zdGF0aWMgdm9p
ZCBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyAqYXR0
clN0cmluZywgTlNTdHJpbmcgKmF0dHJpYnV0ZSwgQ1RGb250UmVmIGZvbnQsIE5TUmFuZ2UgcmFu
Z2UpCi17Ci0gICAgaWYgKCFBWEF0dHJpYnV0ZWRTdHJpbmdSYW5nZUlzVmFsaWQoYXR0clN0cmlu
ZywgcmFuZ2UpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAoZm9udCkgewotICAgICAgICBO
U0RpY3Rpb25hcnkgKmRpY3Rpb25hcnkgPSBAewotICAgICAgICAgICAgTlNBY2Nlc3NpYmlsaXR5
Rm9udE5hbWVLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0Q0YoQ1RGb250Q29weVBvc3RT
Y3JpcHROYW1lKGZvbnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5TQWNjZXNzaWJpbGl0eUZvbnRG
YW1pbHlLZXk6IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0Q0YoQ1RGb250Q29weUZhbWlseU5h
bWUoZm9udCkpLmdldCgpLAotICAgICAgICAgICAgTlNBY2Nlc3NpYmlsaXR5VmlzaWJsZU5hbWVL
ZXk6IChfX2JyaWRnZSBOU1N0cmluZyAqKWFkb3B0Q0YoQ1RGb250Q29weURpc3BsYXlOYW1lKGZv
bnQpKS5nZXQoKSwKLSAgICAgICAgICAgIE5TQWNjZXNzaWJpbGl0eUZvbnRTaXplS2V5OiBAKENU
Rm9udEdldFNpemUoZm9udCkpLAotICAgICAgICB9OwotICAgICAgICBbYXR0clN0cmluZyBhZGRB
dHRyaWJ1dGU6YXR0cmlidXRlIHZhbHVlOmRpY3Rpb25hcnkgcmFuZ2U6cmFuZ2VdOwotICAgIH0g
ZWxzZQotICAgICAgICBbYXR0clN0cmluZyByZW1vdmVBdHRyaWJ1dGU6YXR0cmlidXRlIHJhbmdl
OnJhbmdlXTsKLSAgICAKLX0KLQogc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVTdHJpbmdTZXRDb2xv
cihOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBOU1N0cmluZyogYXR0cmli
dXRlLCBOU0NvbG9yKiBjb2xvciwgTlNSYW5nZSByYW5nZSkKIHsKICAgICBpZiAoIUFYQXR0cmli
dXRlZFN0cmluZ1JhbmdlSXNWYWxpZChhdHRyU3RyaW5nLCByYW5nZSkpCkBAIC04MjEsMTAgKzc5
NiwxMCBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldE51bWJlcihOU011dGFibGVB
dHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBOUwogc3RhdGljIHZvaWQgQVhBdHRyaWJ1dGVT
dHJpbmdTZXRTdHlsZShOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaW5nLCBSZW5k
ZXJPYmplY3QqIHJlbmRlcmVyLCBOU1JhbmdlIHJhbmdlKQogewogICAgIGNvbnN0IFJlbmRlclN0
eWxlJiBzdHlsZSA9IHJlbmRlcmVyLT5zdHlsZSgpOwotICAgIAorCiAgICAgLy8gc2V0IGJhc2lj
IGZvbnQgaW5mbwotICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udChhdHRyU3RyaW5nLCBOU0Fj
Y2Vzc2liaWxpdHlGb250VGV4dEF0dHJpYnV0ZSwgc3R5bGUuZm9udENhc2NhZGUoKS5wcmltYXJ5
Rm9udCgpLmdldENURm9udCgpLCByYW5nZSk7Ci0gICAgCisgICAgQVhBdHRyaWJ1dGVkU3RyaW5n
U2V0Rm9udChhdHRyU3RyaW5nLCBzdHlsZS5mb250Q2FzY2FkZSgpLnByaW1hcnlGb250KCkuZ2V0
Q1RGb250KCksIHJhbmdlKTsKKwogICAgIC8vIHNldCBiYXNpYyBjb2xvcnMKICAgICBBWEF0dHJp
YnV0ZVN0cmluZ1NldENvbG9yKGF0dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0eUZvcmVncm91bmRD
b2xvclRleHRBdHRyaWJ1dGUsIGNvY29hQ29sb3Ioc3R5bGUudmlzaXRlZERlcGVuZGVudENvbG9y
KENTU1Byb3BlcnR5Q29sb3IpKS5nZXQoKSwgcmFuZ2UpOwogICAgIEFYQXR0cmlidXRlU3RyaW5n
U2V0Q29sb3IoYXR0clN0cmluZywgTlNBY2Nlc3NpYmlsaXR5QmFja2dyb3VuZENvbG9yVGV4dEF0
dHJpYnV0ZSwgY29jb2FDb2xvcihzdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVy
dHlCYWNrZ3JvdW5kQ29sb3IpKS5nZXQoKSwgcmFuZ2UpOwpAQCAtMTAyMyw3ICs5OTgsNyBAQCBz
dGF0aWMgdm9pZCBBWEF0dHJpYnV0ZWRTdHJpbmdBcHBlbmRUZXh0KE5TTXV0YWJsZUF0dHJpYnV0
ZWRTdHJpbmcqIGF0dHJTdHJpbmcsCiAjZW5kaWYKICAgICAgICAgW2F0dHJTdHJpbmcgcmVtb3Zl
QXR0cmlidXRlOk5TQWNjZXNzaWJpbGl0eU1pc3NwZWxsZWRUZXh0QXR0cmlidXRlIHJhbmdlOmF0
dHJTdHJpbmdSYW5nZV07CiAgICAgfQotICAgIAorCiAgICAgLy8gc2V0IG5ldyBhdHRyaWJ1dGVz
CiAgICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRTdHlsZShhdHRyU3RyaW5nLCByZW5kZXJlciwgYXR0
clN0cmluZ1JhbmdlKTsKICAgICBBWEF0dHJpYnV0ZVN0cmluZ1NldEhlYWRpbmdMZXZlbChhdHRy
U3RyaW5nLCByZW5kZXJlciwgYXR0clN0cmluZ1JhbmdlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA0Yzc1NDhkZTU1MmY1
OGFlMmIwN2MwOTQ2ODIwOTkzMWUyODZlMjgwLi42MzFlZDU4MGVhN2VkMjFmYjgxOGU4MjI0ZmFj
OTdlOWNmN2ViZDY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjItMDMtMDMgIFR5bGVyIFdp
bGNvY2sgIDx0eWxlcl93QGFwcGxlLmNvbT4KKworICAgICAgICBBWDogW1dlYkFjY2Vzc2liaWxp
dHlPYmplY3RXcmFwcGVyTWFjIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udF0gY3Jhc2hlcyB3aGVu
IGdpdmVuIGEgZm9udCB3aXRoIGEgbmlsIHBvc3RzY3JpcHQgbmFtZSwgZm9udCBmYW1pbHksIG9y
IGRpc3BsYXkgbmFtZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjM3MzczCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQ2hyaXMgRmxlaXphY2ggYW5kIEFu
ZHJlcyBHb256YWxlei4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvcmVzb3VyY2VzL0xpdGhl
cnVtLnN2ZzogQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNl
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9uczog
U2tpcCBuZXcgdGVzdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9uczog
RW5hYmxlIG5ldyB0ZXN0LgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25z
OiBTa2lwIG5ldyB0ZXN0LgorCisgICAgICAgICogcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkv
ZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgQmVmb3Jl
IHRoaXMgcGF0Y2gsIFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UgQVhBdHRyaWJ1
dGVTdHJpbmdTZXRTdHlsZV0gY2FsbGVkIHRoZSBpT1MKKyAgICAgICAgdmVyc2lvbiBvZiBBWEF0
dHJpYnV0ZVN0cmluZ1NldEZvbnQuIFRoaXMgcGF0Y2ggZml4ZXMgdGhpcy4gVGhlIGV4cGVjdGF0
aW9uIGZvciB0aGlzIHRlc3QgaXMgdXBkYXRlZCBhcyBhIHJlc3VsdC4KKwogMjAyMi0wMy0wMyAg
U2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBuYXNhLmdv
diBwYWdlIHdpdGggZml4ZWQgYmFja2dyb3VuZHMgcGFpbnRzIGluY29ycmVjdGx5IG9uIHNjcm9s
bApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVy
dW0uc3ZnIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9yZXNvdXJjZXMvTGl0aGVydW0uc3Zn
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmMzNTQ4ZTUwZmZhN2MwNzYyZDM3MmMzMzcyYTk4OTU4MzI1Y2QzNzMKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291cmNlcy9MaXRo
ZXJ1bS5zdmcKQEAgLTAsMCArMSwxMiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25l
PSJubyI/PgorPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAi
aHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiA+Cis8c3Zn
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+Cis8bWV0YWRhdGE+PC9tZXRhZGF0
YT4KKzxkZWZzPgorPGZvbnQgaWQ9IkxpdGhlcnVtIiBob3Jpei1hZHYteD0iMTAyNCI+Cis8Zm9u
dC1mYWNlIHVuaXRzLXBlci1lbT0iMTQiIGFzY2VudD0iMTQiIGRlc2NlbnQ9IjAiLz4KKzxnbHlw
aCB1bmljb2RlPSJ8IiBob3Jpei1hZHYteD0iMTQiIGQ9Ik0wIDB2MTRoMTR2LTE0eiIvPgorPGds
eXBoIHVuaWNvZGU9Ii0iIGhvcml6LWFkdi14PSIyNjYiIGQ9Ik0wIDB2MTRoMjY2di0xNHoiLz4K
KzwvZm9udD4KKzwvZGVmcz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9zdmctZm9udC1mYWNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvc3ZnLWZvbnQtZmFjZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2E4MDgwYmE1NDFi
MmU2ZTAzNDhlZWFkYTM1NmQ0ZjIzODIxZTI2OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4
IEBACitUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHdlIGRvbid0IGNyYXNoIHdoZW4gYXBwbHlpbmcg
YSBjdXN0b20gU1ZHIGZvbnQgdG8gYXR0cmlidXRlZCBzdHJpbmdzLgorR2V0dGluZyBhdHRyaWJ1
dGVkIHN0cmluZyBmb3IgcmFuZ2UgKDAsIDkpCitQQVNTOiBEaWRuJ3QgY3Jhc2guCisKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2UuaHRtbCBiL0xheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVjMzkzMDE2
MzViZjBhMDQyNzlmZDRiOTZjYjQwZjk4MzRmZTcwOTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2UuaHRtbApAQCAtMCwwICsxLDM1IEBA
Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4K
KzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4K
KzxzdHlsZT4KK0Bmb250LWZhY2UgeworICAgIGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOworICAg
IHNyYzogdXJsKCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7Cit9CisqIHsg
Zm9udC1mYW1pbHk6ICdMaXRoZXJ1bSc7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keSBvbmxv
YWQ9InJ1blRlc3QoKSI+CisKKzxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0idGV4dGZpZWxkIiB2YWx1
ZT0ic29tZSB3b3JkIj48L2lucHV0PgorCis8c2NyaXB0PgorICAgIHZhciBvdXRwdXQgPSAiVGhp
cyB0ZXN0IGVuc3VyZXMgdGhhdCB3ZSBkb24ndCBjcmFzaCB3aGVuIGFwcGx5aW5nIGEgY3VzdG9t
IFNWRyBmb250IHRvIGF0dHJpYnV0ZWQgc3RyaW5ncy5cbiI7CisKKyAgICBpZiAod2luZG93LmFj
Y2Vzc2liaWxpdHlDb250cm9sbGVyKQorICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRy
dWU7CisKKyAgICBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgICBpZiAod2luZG93LmFjY2Vz
c2liaWxpdHlDb250cm9sbGVyKSB7CisgICAgICAgICAgICBjb25zdCB0ZXh0RmllbGQgPSBhY2Nl
c3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoInRleHRmaWVsZCIpOwor
ICAgICAgICAgICAgb3V0cHV0ICs9IGBHZXR0aW5nIGF0dHJpYnV0ZWQgc3RyaW5nIGZvciByYW5n
ZSAoMCwgOSlcbmA7CisgICAgICAgICAgICBjb25zdCBhdHRyaWJ1dGVkU3RyaW5nID0gdGV4dEZp
ZWxkLmF0dHJpYnV0ZWRTdHJpbmdGb3JSYW5nZSgwLCA5KTsKKyAgICAgICAgICAgIG91dHB1dCAr
PSAiUEFTUzogRGlkbid0IGNyYXNoLlxuIjsKKyAgICAgICAgICAgIGRlYnVnKG91dHB1dCk7Cisg
ICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgIH0KKzwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IDJlMTI3Yzk4ZjMwM2ZmYjliODUwYzc5NDM1ZGZmNWY2Mzg3MGYxMDcuLmVkNjQ5
MDE5NTk2MzBkZTg4ZjBkMTVhY2I5MGNiOTBjYjE4MzY3NTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTMzMSw2ICszMzEsOCBAQCBmYXN0L2Nzcy9h
Y2NlbnQtY29sb3IvdGV4dC5odG1sIFsgUGFzcyBdCiAjIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBi
dWdzCiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogCithY2Nlc3NpYmlsaXR5L3N2
Zy1mb250LWZhY2UuaHRtbCBbIFNraXAgXQorCiAjIE5lZWQgdG8gaW1wbGVtZW50IEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6Omhhc0RvY3VtZW50Um9sZUFuY2VzdG9yKCksIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6Omhhc1dlYkFwcGxpY2F0aW9uQW5jZXN0b3IoKSwKICMgQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6aXNJbkRlc2NyaXB0aW9uTGlzdERldGFpbCgpLCBBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50Ojppc0luRGVzY3JpcHRpb25MaXN0VGVybSgpLCBhbmQKICMgQWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6aXNJbkNlbGwoKS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlv
bnMKaW5kZXggOGIzMTExMzBjODEwYWU3MDg5MzZlMmUwNDNhYWYyYWU4YTU1NjdlNS4uM2NjMzY2
NTFhMjlmODNiNmU1YzkxM2Y0YmI3Y2MwMGJhNTRmNmRhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIxMDUsNiArMjEwNSw3IEBAIGFjY2Vzc2liaWxp
dHkvaWdub3JlLW1vZGFscy13aXRob3V0LWFueS1jb250ZW50Lmh0bWwgWyBQYXNzIF0KIAogYWNj
ZXNzaWJpbGl0eS9zZWxlY3RlZC1zdGF0ZS1jaGFuZ2VkLW5vdGlmaWNhdGlvbnMuaHRtbCBbIFBh
c3MgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQuaHRtbCBbIFBh
c3MgXQorYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLmh0bWwgWyBQYXNzIF0KIAogIyBFbmFi
bGUgImF0dGFjaG1lbnQgZWxlbWVudCIgdGVzdCBmb3IgaU9TCiBhY2Nlc3NpYmlsaXR5L2F0dGFj
aG1lbnQtZWxlbWVudC5odG1sIFsgUGFzcyBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1s
aW5lLXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4dAppbmRleCBjMjBkNjFiMWZiOGFiZDBmMWM5
NWFlNzg4NmNkZmFiMGUwNDc1ZTZiLi4zNWQ2MTU4ZTdmM2JkYWIwNGNkZWRiYzViZmUxNmJhMmEw
NDhhYTI0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0
eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4
dC1leHBlY3RlZC50eHQKQEAgLTEwLDI4ICsxMCwyOCBAQCBUaGlzIHRlc3RzIHRoYXQgbGluZVJl
Y3RzQW5kVGV4dCByZXR1cm5zIHRoZSBjb3JyZWN0IHZhbHVlcy4KIE9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KIAogCi10ZXh0ID0gIlRoaXMgaXMgc29tZSB0ZXN0aW5nIGNvbnRlbnQuIHtcbiAg
ICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2li
aWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0
eVRva2VuRm9udFNpemUgPSAxNjtcbn1BIGxpbmsgaGVyZS57XG4gICAgVUlBY2Nlc3NpYmlsaXR5
VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFt
ZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0g
MTY7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5VbmRlcmxpbmUgPSAxO1xufSBNT3JlIHRleHQu
e1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJQWNj
ZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nlc3Np
YmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gIlRoaXMgaXMgc29tZSB0ZXN0
aW5nIGNvbnRlbnQuIHtcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRGYW1pbHkg
PSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAgICAgICAg
QVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBSb21hblwi
O1xuICAgIH07XG59QSBsaW5rIGhlcmUue1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFY
Rm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwi
O1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRp
bWVzIFJvbWFuXCI7XG4gICAgfTtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlblVuZGVybGluZSA9
IDE7XG59IE1PcmUgdGV4dC57XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFt
aWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAg
ICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9t
YW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRl
eHQgPSAientcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAg
ICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJ
QWNjZXNzaWJpbGl0eVRva2VuRm9udFNpemUgPSAxNjtcbn0iOwordGV4dCA9ICJ6e1xuICAgIEFY
Rm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZv
bnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAg
ICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn0iOwogd2lkdGgg
PiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0ID0gIkFub3RoZXIgbGluZSBvZiB0ZXh0
LntcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFj
Y2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNz
aWJpbGl0eVRva2VuRm9udFNpemUgPSAxNjtcbn0iOwordGV4dCA9ICJBbm90aGVyIGxpbmUgb2Yg
dGV4dC57XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7
XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNp
emUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9
O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKIHRleHQgPSAiY2FrZXtc
bn0iOwogd2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0ID0gIkphY2sgYW5k
IEppbGwgd2VudCB1cCB0aGUgaGlsbCB0byBmZXRjaCBhIHBhaWwgb2Ygd2F0ZXIuIEphY2sgZmVs
bCBkb3duLi4ue1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xu
ICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAg
VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE0O1xufSI7Cit0ZXh0ID0gIkphY2sgYW5k
IEppbGwgd2VudCB1cCB0aGUgaGlsbCB0byBmZXRjaCBhIHBhaWwgb2Ygd2F0ZXIuIEphY2sgZmVs
bCBkb3duLi4ue1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWlseSA9IFRp
bWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAgICBBWEZv
bnRTaXplID0gMTQ7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4g
ICAgfTtcbn0iOwogd2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0ID0gImFi
Y2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2
d3h5ejAxMjM0NTY3ODkge1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRp
bWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7
XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gImFi
Y2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2
d3h5ejAxMjM0NTY3ODkge1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9udEZhbWls
eSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xuICAgICAg
ICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVzIFJvbWFu
XCI7XG4gICAgfTtcbn0iOwogd2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVlCi10ZXh0
ID0gImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OS1hYmNkZWZnaGlqa2xtbm9w
cXJzdHV2d3h5ejAxMjM0NTY3ODkte1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWls
eSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJv
bWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0
ID0gImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OS1hYmNkZWZnaGlqa2xtbm9w
cXJzdHV2d3h5ejAxMjM0NTY3ODkte1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAgIEFYRm9u
dEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21hblwiO1xu
ICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBcIlRpbWVz
IFJvbWFuXCI7XG4gICAgfTtcbn0iOwogd2lkdGggPiAwOiB0cnVlCiBoZWlnaHQgPiAwOiB0cnVl
Ci10ZXh0ID0gImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OXtcbiAgICBVSUFj
Y2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxpdHlU
b2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2Vu
Rm9udFNpemUgPSAxNjtcbn0iOwordGV4dCA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAx
MjM0NTY3ODl7XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGlt
ZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9u
dFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAg
ICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKIFBBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dp
bi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3Rh
dGlvbnMKaW5kZXggYzdkNThjM2YxYjJlMjVmNzk4ZDI4YTA0MzVhOGUyNWMyZTEyYmRiMS4uODI3
ZThlMWZhMWNjYzEwMjI0MGE3NDE0OTFiMTZiNjZiNDE3ZjhmZSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTQ5MjIsNyArNDkyMiwxMCBAQCB3ZWJraXQu
b3JnL2IvMjI5MzAwIGh0dHAvdGVzdHMvc2VjdXJpdHkvbm8tamF2YXNjcmlwdC1yZWZyZXNoLXNw
YWNlcy5weSBbIFBhc3MgQwogYWNjZXNzaWJpbGl0eS9zZWxlY3RlZC1zdGF0ZS1jaGFuZ2VkLW5v
dGlmaWNhdGlvbnMuaHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVj
dHMtYW5kLXRleHQuaHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9kaWFsb2ctcHJvcGVydGll
cy5odG1sIFsgU2tpcCBdCisKKyMgTWlzc2luZyBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjphdHRy
aWJ1dGVkU3RyaW5nRm9yUmFuZ2UgaW1wbGVtZW50YXRpb24KIGFjY2Vzc2liaWxpdHkvbmF0aXZl
LXRleHQtY29udHJvbC1hdHRyaWJ1dGVkLXN0cmluZy5odG1sIFsgU2tpcCBdCithY2Nlc3NpYmls
aXR5L3N2Zy1mb250LWZhY2UuaHRtbCBbIFNraXAgXQogCiB3ZWJraXQub3JnL2IvMjI5MjQ3IGh0
dHAvdGVzdHMvZmV0Y2gva2VlcGFsaXZlLWZldGNoLTIuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453842</attachid>
            <date>2022-03-04 07:49:51 -0800</date>
            <delta_ts>2022-03-04 18:05:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237373-20220304094950.patch</filename>
            <type>text/plain</type>
            <size>22643</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNzk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWM3NjI3YTk1ZDkyNTBi
ZTQzNzBkMTZkMTQ4NGQzMDBiMWRmYmI2Yy4uZDg2MjA5ZDY1MTcyYjM5YmUxMTdiYTk1NDZlZjRj
ZjIzZGZkOWIzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIyLTAzLTAzICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFtXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYyBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnRdIGNyYXNoZXMg
d2hlbiBnaXZlbiBhIGZvbnQgd2l0aCBhIG5pbCBwb3N0c2NyaXB0IG5hbWUsIGZvbnQgZmFtaWx5
LCBvciBkaXNwbGF5IG5hbWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzM3MworCisgICAgICAgIFJldmlld2VkIGJ5IENocmlzIEZsZWl6YWNoIGFu
ZCBBbmRyZXMgR29uemFsZXouCisKKyAgICAgICAgW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyTWFjIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udF0gY3Jhc2hlcyB3aGVuIGdpdmVuIGEgZm9u
dCB3aXRoIGEKKyAgICAgICAgbmlsIHBvc3RzY3JpcHQgbmFtZSwgZm9udCBmYW1pbHksIG9yIGRp
c3BsYXkgbmFtZS4gVGhpcyBjYW4gYmUKKyAgICAgICAgdHJpZ2dlcmVkIHdpdGggYSBjdXN0b20g
U1ZHIEBmb250LWZhY2UgLS0gZm9yIGV4YW1wbGU6CisKKyAgICAgICAgQGZvbnQtZmFjZSB7Cisg
ICAgICAgICAgICBmb250LWZhbWlseTogJ0xpdGhlcnVtJzsKKyAgICAgICAgICAgIHNyYzogdXJs
KCJyZXNvdXJjZXMvTGl0aGVydW0uc3ZnIikgZm9ybWF0KHN2Zyk7CisgICAgICAgIH0KKyAgICAg
ICAgKiB7IGZvbnQtZmFtaWx5OiAnTGl0aGVydW0nOyB9CisKKyAgICAgICAgV2UgZml4IHRoaXMg
YnkgY2hlY2tpbmcgaWYgdGhlc2UgdmFsdWVzIGFyZSBuaWwgYmVmb3JlIHRyeWluZyB0byBhZGQK
KyAgICAgICAgdGhlbSB0byBhIGRpY3Rpb25hcnkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNv
IGNlbnRyYWxpemVzIGFwcGxpY2F0aW9uIG9mIGZvbnRzIHRvIGF0dHJpYnV0ZWQgc3RyaW5ncwor
ICAgICAgICBieSBtb3ZpbmcgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250IHRvIHRoZSBiYXNlIHdy
YXBwZXIuIEluIGRvaW5nIHNvLAorICAgICAgICB3ZSBmaXggYSBidWcgd2hlcmUgaWYgW1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZSBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlXSB3
YXMKKyAgICAgICAgY2FsbGVkIGZyb20gYSBNYWMtY29udGV4dCwgaXQgc2V0IGlPUyBmb250IHBy
b3BlcnRpZXMgKGUuZy4KKyAgICAgICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5IGlu
c3RlYWQgb2YgTlNBY2Nlc3NpYmlsaXR5Rm9udEZhbWlseUtleSkuCisKKyAgICAgICAgVGVzdDog
YWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLmh0bWwKKworICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oOgorICAgICAgICAqIGFj
Y2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbToKKyAg
ICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6IEFkZGVkLgorICAgICAgICAo
QVhBdHRyaWJ1dGVkU3RyaW5nU2V0Rm9udCk6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOgorICAgICAgICAoQVhB
dHRyaWJ1dGVTdHJpbmdTZXRTdHlsZSk6CisgICAgICAgIChBWEF0dHJpYnV0ZWRTdHJpbmdBcHBl
bmRUZXh0KToKKyAgICAgICAgKEFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNWYWxpZCk6CisgICAg
ICAgIE1vdmVkIHRvIGJhc2Ugd3JhcHBlci4KKyAgICAgICAgKEFYQXR0cmlidXRlU3RyaW5nU2V0
Rm9udCk6CisgICAgICAgIE1vdmVkIHRvIGJhc2Ugd3JhcHBlci4KKwogMjAyMi0wMy0wMyAgU2lt
b24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBuYXNhLmdvdiBw
YWdlIHdpdGggZml4ZWQgYmFja2dyb3VuZHMgcGFpbnRzIGluY29ycmVjdGx5IG9uIHNjcm9sbApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaAppbmRleCBhYzJiZGJmZTJhYzU4
OTY1NjBlNjA5NjA0Yzc2OTgzNmEyODQyNGFkLi44ZGMzNTM4MDgyYjcxZjY3M2Q3ZjJmNjQyNzA4
ZTg0NGRjY2M3ZTAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21h
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaApA
QCAtMjcsNiArMjcsNyBAQAogICovCiAKICNpbXBvcnQgIkFjY2Vzc2liaWxpdHlPYmplY3RJbnRl
cmZhY2UuaCIKKyNpbXBvcnQgIkZvbnRQbGF0Zm9ybURhdGEuaCIKICNpbXBvcnQgPENvcmVHcmFw
aGljcy9Db3JlR3JhcGhpY3MuaD4KICNpbXBvcnQgPHZhcmlhbnQ+CiAjaW1wb3J0IDx3dGYvUmVm
UHRyLmg+CkBAIC01Nyw2ICs1OCw5IEBAIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IFVJQWNjZXNz
aWJpbGl0eVRva2VuQXR0YWNobWVudCA9IEAiVUlBY2Nlc3NpYmlsaXR5VG9rZW5BCiBzdGF0aWMg
TlNTdHJpbmcgKiBjb25zdCBVSUFjY2Vzc2liaWxpdHlUZXh0QXR0cmlidXRlQ29udGV4dCA9IEAi
VUlBY2Nlc3NpYmlsaXR5VGV4dEF0dHJpYnV0ZUNvbnRleHQiOwogc3RhdGljIE5TU3RyaW5nICog
Y29uc3QgVUlBY2Nlc3NpYmlsaXR5VGV4dHVhbENvbnRleHRTb3VyY2VDb2RlID0gQCJVSUFjY2Vz
c2liaWxpdHlUZXh0dWFsQ29udGV4dFNvdXJjZUNvZGUiOwogCitib29sIEFYQXR0cmlidXRlZFN0
cmluZ1JhbmdlSXNWYWxpZChOU0F0dHJpYnV0ZWRTdHJpbmcgKiwgY29uc3QgTlNSYW5nZSYpOwor
dm9pZCBBWEF0dHJpYnV0ZWRTdHJpbmdTZXRGb250KE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcg
KiwgQ1RGb250UmVmLCBjb25zdCBOU1JhbmdlJik7CisKIEBpbnRlcmZhY2UgV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJCYXNlIDogTlNPYmplY3QgewogICAgIFdlYkNvcmU6OkFYQ29yZU9i
amVjdCogbV9heE9iamVjdDsKICNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09MQVRFRF9UUkVF
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNz
aWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tCmluZGV4IGFhNjZmM2Y1
ZjM5OWQ2ZjU3ZGI0Y2E0Nzg4NTNhNTY1M2RlYmU0NTUuLjg0N2ZjMDVmMWYzZmYxMWUxYTBiZjA4
ODA1YTUxMjdmY2NmMmIxZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJh
c2UubW0KQEAgLTQ2LDggKzQ2LDYgQEAKICNpbXBvcnQgIkNvbG9yTWFjLmgiCiAjaW1wb3J0ICJD
b250ZXh0TWVudUNvbnRyb2xsZXIuaCIKICNpbXBvcnQgIkVkaXRpbmcuaCIKLSNpbXBvcnQgIkZv
bnQuaCIKLSNpbXBvcnQgIkZvbnRDYXNjYWRlLmgiCiAjaW1wb3J0ICJGcmFtZVNlbGVjdGlvbi5o
IgogI2ltcG9ydCAiSFRNTE5hbWVzLmgiCiAjaW1wb3J0ICJMYXlvdXRSZWN0LmgiCkBAIC01Nzgs
MjcgKzU3Niw1OSBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldEhlYWRpbmdMZXZl
bChOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nKiBhdHRyU3RyaQogICAgICAgICBbYXR0clN0cmlu
ZyByZW1vdmVBdHRyaWJ1dGU6VUlBY2Nlc3NpYmlsaXR5VG9rZW5IZWFkaW5nTGV2ZWwgcmFuZ2U6
cmFuZ2VdOwogfQogCi1zdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1NldEZvbnQoTlNNdXRh
YmxlQXR0cmlidXRlZFN0cmluZyogYXR0clN0cmluZywgQ1RGb250UmVmIGZvbnQsIE5TUmFuZ2Ug
cmFuZ2UpCisvLyBXaGVuIG1vZGlmeWluZyBhdHRyaWJ1dGVkIHN0cmluZ3MsIHRoZSByYW5nZSBj
YW4gY29tZSBmcm9tIGEgc291cmNlIHdoaWNoIG1heSBwcm92aWRlIGZhdWx0eSBpbmZvcm1hdGlv
biAoZS5nLiB0aGUgc3BlbGwgY2hlY2tlcikuCisvLyBUbyBwcm90ZWN0IGFnYWluc3Qgc3VjaCBj
YXNlcywgdGhlIHJhbmdlIHNob3VsZCBiZSB2YWxpZGF0ZWQgYmVmb3JlIGFkZGluZyBvciByZW1v
dmluZyBhdHRyaWJ1dGVzLgorYm9vbCBBWEF0dHJpYnV0ZWRTdHJpbmdSYW5nZUlzVmFsaWQoTlNB
dHRyaWJ1dGVkU3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nLCBjb25zdCBOU1JhbmdlJiByYW5nZSkK
IHsKLSAgICBpZiAoIWZvbnQpCisgICAgcmV0dXJuIE5TTWF4UmFuZ2UocmFuZ2UpIDw9IFthdHRy
aWJ1dGVkU3RyaW5nIGxlbmd0aF07Cit9CisKK3ZvaWQgQVhBdHRyaWJ1dGVkU3RyaW5nU2V0Rm9u
dChOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nLCBDVEZvbnRSZWYg
Zm9udCwgY29uc3QgTlNSYW5nZSYgcmFuZ2UpCit7CisgICAgaWYgKCFBWEF0dHJpYnV0ZWRTdHJp
bmdSYW5nZUlzVmFsaWQoYXR0cmlidXRlZFN0cmluZywgcmFuZ2UpKQogICAgICAgICByZXR1cm47
CiAKLSAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGZ1bGxOYW1lID0gYWRvcHRDRihDVEZvbnRD
b3B5RnVsbE5hbWUoZm9udCkpOwotICAgIFJldGFpblB0cjxDRlN0cmluZ1JlZj4gZmFtaWx5TmFt
ZSA9IGFkb3B0Q0YoQ1RGb250Q29weUZhbWlseU5hbWUoZm9udCkpOworICAgIGlmICghZm9udCkg
eworI2lmIFBMQVRGT1JNKE1BQykKKyAgICAgICAgW2F0dHJpYnV0ZWRTdHJpbmcgcmVtb3ZlQXR0
cmlidXRlOk5TQWNjZXNzaWJpbGl0eUZvbnRUZXh0QXR0cmlidXRlIHJhbmdlOnJhbmdlXTsKKyNl
bmRpZgorICAgICAgICByZXR1cm47CisgICAgfQogCi0gICAgTlNOdW1iZXIqIHNpemUgPSBbTlNO
dW1iZXIgbnVtYmVyV2l0aEZsb2F0OkNURm9udEdldFNpemUoZm9udCldOwotICAgIENURm9udFN5
bWJvbGljVHJhaXRzIHRyYWl0cyA9IENURm9udEdldFN5bWJvbGljVHJhaXRzKGZvbnQpOwotICAg
IE5TTnVtYmVyKiBib2xkID0gW05TTnVtYmVyIG51bWJlcldpdGhCb29sOih0cmFpdHMgJiBrQ1RG
b250VHJhaXRCb2xkKV07CisgICAgYXV0byBmb250QXR0cmlidXRlcyA9IGFkb3B0TlMoW1tOU011
dGFibGVEaWN0aW9uYXJ5IGFsbG9jXSBpbml0XSk7CisgICAgYXV0byBmYW1pbHlOYW1lID0gYWRv
cHRDRihDVEZvbnRDb3B5RmFtaWx5TmFtZShmb250KSk7CisgICAgTlNOdW1iZXIgKnNpemUgPSBb
TlNOdW1iZXIgbnVtYmVyV2l0aEZsb2F0OkNURm9udEdldFNpemUoZm9udCldOworI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCisgICAgYXV0byBmdWxsTmFtZSA9IGFkb3B0Q0YoQ1RGb250Q29weUZ1
bGxOYW1lKGZvbnQpKTsKICAgICBpZiAoZnVsbE5hbWUpCi0gICAgICAgIFthdHRyU3RyaW5nIGFk
ZEF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnROYW1lIHZhbHVlOihOU1N0cmluZyop
ZnVsbE5hbWUuZ2V0KCkgcmFuZ2U6cmFuZ2VdOworICAgICAgICBbZm9udEF0dHJpYnV0ZXMgc2V0
VmFsdWU6YnJpZGdlX2Nhc3QoZnVsbE5hbWUuZ2V0KCkpIGZvcktleTpVSUFjY2Vzc2liaWxpdHlU
b2tlbkZvbnROYW1lXTsKICAgICBpZiAoZmFtaWx5TmFtZSkKLSAgICAgICAgW2F0dHJTdHJpbmcg
YWRkQXR0cmlidXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSB2YWx1ZTooTlNTdHJp
bmcqKWZhbWlseU5hbWUuZ2V0KCkgcmFuZ2U6cmFuZ2VdOworICAgICAgICBbZm9udEF0dHJpYnV0
ZXMgc2V0VmFsdWU6YnJpZGdlX2Nhc3QoZmFtaWx5TmFtZS5nZXQoKSkgZm9yS2V5OlVJQWNjZXNz
aWJpbGl0eVRva2VuRm9udEZhbWlseV07CiAgICAgaWYgKFtzaXplIGJvb2xWYWx1ZV0pCi0gICAg
ICAgIFthdHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXpl
IHZhbHVlOnNpemUgcmFuZ2U6cmFuZ2VdOwotICAgIGlmIChbYm9sZCBib29sVmFsdWVdIHx8ICh0
cmFpdHMgJiBrQ1RGb250VHJhaXRCb2xkKSkKLSAgICAgICAgW2F0dHJTdHJpbmcgYWRkQXR0cmli
dXRlOlVJQWNjZXNzaWJpbGl0eVRva2VuQm9sZCB2YWx1ZTpAWUVTIHJhbmdlOnJhbmdlXTsKKyAg
ICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOnNpemUgZm9yS2V5OlVJQWNjZXNzaWJpbGl0
eVRva2VuRm9udFNpemVdOworICAgIGF1dG8gdHJhaXRzID0gQ1RGb250R2V0U3ltYm9saWNUcmFp
dHMoZm9udCk7CisgICAgaWYgKHRyYWl0cyAmIGtDVEZvbnRUcmFpdEJvbGQpCisgICAgICAgIFtm
b250QXR0cmlidXRlcyBzZXRWYWx1ZTpAWUVTIGZvcktleTpVSUFjY2Vzc2liaWxpdHlUb2tlbkJv
bGRdOwogICAgIGlmICh0cmFpdHMgJiBrQ1RGb250VHJhaXRJdGFsaWMpCi0gICAgICAgIFthdHRy
U3RyaW5nIGFkZEF0dHJpYnV0ZTpVSUFjY2Vzc2liaWxpdHlUb2tlbkl0YWxpYyB2YWx1ZTpAWUVT
IHJhbmdlOnJhbmdlXTsKKyAgICAgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOkBZRVMgZm9y
S2V5OlVJQWNjZXNzaWJpbGl0eVRva2VuSXRhbGljXTsKKworICAgIFthdHRyaWJ1dGVkU3RyaW5n
IGFkZEF0dHJpYnV0ZXM6Zm9udEF0dHJpYnV0ZXMuZ2V0KCkgcmFuZ2U6cmFuZ2VdOworI2VuZGlm
CisKKyNpZiBQTEFURk9STShNQUMpCisgICAgW2ZvbnRBdHRyaWJ1dGVzIHNldFZhbHVlOnNpemUg
Zm9yS2V5Ok5TQWNjZXNzaWJpbGl0eUZvbnRTaXplS2V5XTsKKworICAgIGlmIChmYW1pbHlOYW1l
KQorICAgICAgICBbZm9udEF0dHJpYnV0ZXMgc2V0VmFsdWU6YnJpZGdlX2Nhc3QoZmFtaWx5TmFt
ZS5nZXQoKSkgZm9yS2V5Ok5TQWNjZXNzaWJpbGl0eUZvbnRGYW1pbHlLZXldOworICAgIGF1dG8g
cG9zdFNjcmlwdE5hbWUgPSBhZG9wdENGKENURm9udENvcHlQb3N0U2NyaXB0TmFtZShmb250KSk7
CisgICAgaWYgKHBvc3RTY3JpcHROYW1lKQorICAgICAgICBbZm9udEF0dHJpYnV0ZXMgc2V0VmFs
dWU6YnJpZGdlX2Nhc3QocG9zdFNjcmlwdE5hbWUuZ2V0KCkpIGZvcktleTpOU0FjY2Vzc2liaWxp
dHlGb250TmFtZUtleV07CisgICAgYXV0byBkaXNwbGF5TmFtZSA9IGFkb3B0Q0YoQ1RGb250Q29w
eURpc3BsYXlOYW1lKGZvbnQpKTsKKyAgICBpZiAoZGlzcGxheU5hbWUpCisgICAgICAgIFtmb250
QXR0cmlidXRlcyBzZXRWYWx1ZTpicmlkZ2VfY2FzdChkaXNwbGF5TmFtZS5nZXQoKSkgZm9yS2V5
Ok5TQWNjZXNzaWJpbGl0eVZpc2libGVOYW1lS2V5XTsKKworICAgIFthdHRyaWJ1dGVkU3RyaW5n
IGFkZEF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlGb250VGV4dEF0dHJpYnV0ZSB2YWx1ZTpmb250
QXR0cmlidXRlcy5nZXQoKSByYW5nZTpyYW5nZV07CisjZW5kaWYKIH0KIAogc3RhdGljIHZvaWQg
QVhBdHRyaWJ1dGVTdHJpbmdTZXROdW1iZXIoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0
clN0cmluZywgTlNTdHJpbmcqIGF0dHJpYnV0ZSwgTlNOdW1iZXIqIG51bWJlciwgTlNSYW5nZSBy
YW5nZSkKQEAgLTYxNCw3ICs2NDQsNyBAQCBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0ZVN0cmluZ1Nl
dFN0eWxlKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIFJlbgogICAgIGF1
dG8mIHN0eWxlID0gcmVuZGVyZXItPnN0eWxlKCk7CiAKICAgICAvLyBzZXQgYmFzaWMgZm9udCBp
bmZvCi0gICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KGF0dHJTdHJpbmcsIHN0eWxlLmZvbnRD
YXNjYWRlKCkucHJpbWFyeUZvbnQoKS5nZXRDVEZvbnQoKSwgcmFuZ2UpOworICAgIEFYQXR0cmli
dXRlZFN0cmluZ1NldEZvbnQoYXR0clN0cmluZywgc3R5bGUuZm9udENhc2NhZGUoKS5wcmltYXJ5
Rm9udCgpLmdldENURm9udCgpLCByYW5nZSk7CiAKICAgICBhdXRvIGRlY29yID0gc3R5bGUudGV4
dERlY29yYXRpb25zSW5FZmZlY3QoKTsKICAgICBpZiAoZGVjb3IgJiBUZXh0RGVjb3JhdGlvbkxp
bmU6OlVuZGVybGluZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
bWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tIGIvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0KaW5k
ZXggY2Q5YmFhZTQzZGQ1MmRlMWNiOTU4Zjk1ODAzZGZjNThlMzY5ZjUyMy4uNDkwOGIwYTVhNDcz
YzQ3ZjA1MTNmM2IzNDMxODI0M2FlMzQ1MjQyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVj
dFdyYXBwZXJNYWMubW0KQEAgLTc2OCwzMSArNzY4LDYgQEAgc3RhdGljIFJldGFpblB0cjxBWFRl
eHRNYXJrZXJSZWY+IHByZXZpb3VzVGV4dE1hcmtlckZvckNoYXJhY3Rlck9mZnNldChBWE9iamVj
dEMKICAgICByZXR1cm4gYWRvcHRDRihBWFRleHRNYXJrZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVm
YXVsdCwgKGNvbnN0IFVJbnQ4KikmdGV4dE1hcmtlckRhdGEudmFsdWUoKSwgc2l6ZW9mKHRleHRN
YXJrZXJEYXRhLnZhbHVlKCkpKSk7CiB9CiAKLS8vIFdoZW4gbW9kaWZ5aW5nIGF0dHJpYnV0ZWQg
c3RyaW5ncywgdGhlIHJhbmdlIGNhbiBjb21lIGZyb20gYSBzb3VyY2Ugd2hpY2ggbWF5IHByb3Zp
ZGUgZmF1bHR5IGluZm9ybWF0aW9uIChlLmcuIHRoZSBzcGVsbCBjaGVja2VyKS4KLS8vIFRvIHBy
b3RlY3QgYWdhaW5zdCBzdWNoIGNhc2VzIHRoZSByYW5nZSBzaG91bGQgYmUgdmFsaWRhdGVkIGJl
Zm9yZSBhZGRpbmcgb3IgcmVtb3ZpbmcgYXR0cmlidXRlcy4KLXN0YXRpYyBCT09MIEFYQXR0cmli
dXRlZFN0cmluZ1JhbmdlSXNWYWxpZChOU0F0dHJpYnV0ZWRTdHJpbmcgKmF0dHJTdHJpbmcsIE5T
UmFuZ2UgcmFuZ2UpCi17Ci0gICAgcmV0dXJuIChyYW5nZS5sb2NhdGlvbiA8IFthdHRyU3RyaW5n
IGxlbmd0aF0gJiYgTlNNYXhSYW5nZShyYW5nZSkgPD0gW2F0dHJTdHJpbmcgbGVuZ3RoXSk7Ci19
Ci0KLXN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udChOU011dGFibGVBdHRyaWJ1
dGVkU3RyaW5nICphdHRyU3RyaW5nLCBOU1N0cmluZyAqYXR0cmlidXRlLCBDVEZvbnRSZWYgZm9u
dCwgTlNSYW5nZSByYW5nZSkKLXsKLSAgICBpZiAoIUFYQXR0cmlidXRlZFN0cmluZ1JhbmdlSXNW
YWxpZChhdHRyU3RyaW5nLCByYW5nZSkpCi0gICAgICAgIHJldHVybjsKLQotICAgIGlmIChmb250
KSB7Ci0gICAgICAgIE5TRGljdGlvbmFyeSAqZGljdGlvbmFyeSA9IEB7Ci0gICAgICAgICAgICBO
U0FjY2Vzc2liaWxpdHlGb250TmFtZUtleTogKF9fYnJpZGdlIE5TU3RyaW5nICopYWRvcHRDRihD
VEZvbnRDb3B5UG9zdFNjcmlwdE5hbWUoZm9udCkpLmdldCgpLAotICAgICAgICAgICAgTlNBY2Nl
c3NpYmlsaXR5Rm9udEZhbWlseUtleTogKF9fYnJpZGdlIE5TU3RyaW5nICopYWRvcHRDRihDVEZv
bnRDb3B5RmFtaWx5TmFtZShmb250KSkuZ2V0KCksCi0gICAgICAgICAgICBOU0FjY2Vzc2liaWxp
dHlWaXNpYmxlTmFtZUtleTogKF9fYnJpZGdlIE5TU3RyaW5nICopYWRvcHRDRihDVEZvbnRDb3B5
RGlzcGxheU5hbWUoZm9udCkpLmdldCgpLAotICAgICAgICAgICAgTlNBY2Nlc3NpYmlsaXR5Rm9u
dFNpemVLZXk6IEAoQ1RGb250R2V0U2l6ZShmb250KSksCi0gICAgICAgIH07Ci0gICAgICAgIFth
dHRyU3RyaW5nIGFkZEF0dHJpYnV0ZTphdHRyaWJ1dGUgdmFsdWU6ZGljdGlvbmFyeSByYW5nZTpy
YW5nZV07Ci0gICAgfSBlbHNlCi0gICAgICAgIFthdHRyU3RyaW5nIHJlbW92ZUF0dHJpYnV0ZTph
dHRyaWJ1dGUgcmFuZ2U6cmFuZ2VdOwotICAgIAotfQotCiBzdGF0aWMgdm9pZCBBWEF0dHJpYnV0
ZVN0cmluZ1NldENvbG9yKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIE5T
U3RyaW5nKiBhdHRyaWJ1dGUsIE5TQ29sb3IqIGNvbG9yLCBOU1JhbmdlIHJhbmdlKQogewogICAg
IGlmICghQVhBdHRyaWJ1dGVkU3RyaW5nUmFuZ2VJc1ZhbGlkKGF0dHJTdHJpbmcsIHJhbmdlKSkK
QEAgLTgyMSwxMCArNzk2LDEwIEBAIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlU3RyaW5nU2V0TnVt
YmVyKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0dHJTdHJpbmcsIE5TCiBzdGF0aWMgdm9p
ZCBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlKE5TTXV0YWJsZUF0dHJpYnV0ZWRTdHJpbmcqIGF0
dHJTdHJpbmcsIFJlbmRlck9iamVjdCogcmVuZGVyZXIsIE5TUmFuZ2UgcmFuZ2UpCiB7CiAgICAg
Y29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlID0gcmVuZGVyZXItPnN0eWxlKCk7Ci0gICAgCisKICAg
ICAvLyBzZXQgYmFzaWMgZm9udCBpbmZvCi0gICAgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250KGF0
dHJTdHJpbmcsIE5TQWNjZXNzaWJpbGl0eUZvbnRUZXh0QXR0cmlidXRlLCBzdHlsZS5mb250Q2Fz
Y2FkZSgpLnByaW1hcnlGb250KCkuZ2V0Q1RGb250KCksIHJhbmdlKTsKLSAgICAKKyAgICBBWEF0
dHJpYnV0ZWRTdHJpbmdTZXRGb250KGF0dHJTdHJpbmcsIHN0eWxlLmZvbnRDYXNjYWRlKCkucHJp
bWFyeUZvbnQoKS5nZXRDVEZvbnQoKSwgcmFuZ2UpOworCiAgICAgLy8gc2V0IGJhc2ljIGNvbG9y
cwogICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0Q29sb3IoYXR0clN0cmluZywgTlNBY2Nlc3NpYmls
aXR5Rm9yZWdyb3VuZENvbG9yVGV4dEF0dHJpYnV0ZSwgY29jb2FDb2xvcihzdHlsZS52aXNpdGVk
RGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlDb2xvcikpLmdldCgpLCByYW5nZSk7CiAgICAgQVhB
dHRyaWJ1dGVTdHJpbmdTZXRDb2xvcihhdHRyU3RyaW5nLCBOU0FjY2Vzc2liaWxpdHlCYWNrZ3Jv
dW5kQ29sb3JUZXh0QXR0cmlidXRlLCBjb2NvYUNvbG9yKHN0eWxlLnZpc2l0ZWREZXBlbmRlbnRD
b2xvcihDU1NQcm9wZXJ0eUJhY2tncm91bmRDb2xvcikpLmdldCgpLCByYW5nZSk7CkBAIC0xMDIz
LDcgKzk5OCw3IEBAIHN0YXRpYyB2b2lkIEFYQXR0cmlidXRlZFN0cmluZ0FwcGVuZFRleHQoTlNN
dXRhYmxlQXR0cmlidXRlZFN0cmluZyogYXR0clN0cmluZywKICNlbmRpZgogICAgICAgICBbYXR0
clN0cmluZyByZW1vdmVBdHRyaWJ1dGU6TlNBY2Nlc3NpYmlsaXR5TWlzc3BlbGxlZFRleHRBdHRy
aWJ1dGUgcmFuZ2U6YXR0clN0cmluZ1JhbmdlXTsKICAgICB9Ci0gICAgCisKICAgICAvLyBzZXQg
bmV3IGF0dHJpYnV0ZXMKICAgICBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlKGF0dHJTdHJpbmcs
IHJlbmRlcmVyLCBhdHRyU3RyaW5nUmFuZ2UpOwogICAgIEFYQXR0cmlidXRlU3RyaW5nU2V0SGVh
ZGluZ0xldmVsKGF0dHJTdHJpbmcsIHJlbmRlcmVyLCBhdHRyU3RyaW5nUmFuZ2UpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IDRjNzU0OGRlNTUyZjU4YWUyYjA3YzA5NDY4MjA5OTMxZTI4NmUyODAuLjYzMWVkNTgwZWE3ZWQy
MWZiODE4ZTgyMjRmYWM5N2U5Y2Y3ZWJkNjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMi0w
My0wMyAgVHlsZXIgV2lsY29jayAgPHR5bGVyX3dAYXBwbGUuY29tPgorCisgICAgICAgIEFYOiBb
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMgQVhBdHRyaWJ1dGVTdHJpbmdTZXRGb250
XSBjcmFzaGVzIHdoZW4gZ2l2ZW4gYSBmb250IHdpdGggYSBuaWwgcG9zdHNjcmlwdCBuYW1lLCBm
b250IGZhbWlseSwgb3IgZGlzcGxheSBuYW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzczNzMKKworICAgICAgICBSZXZpZXdlZCBieSBDaHJpcyBG
bGVpemFjaCBhbmQgQW5kcmVzIEdvbnphbGV6LgorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9y
ZXNvdXJjZXMvTGl0aGVydW0uc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L3N2
Zy1mb250LWZhY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L3N2Zy1mb250LWZhY2UuaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZ2xpYi9UZXN0
RXhwZWN0YXRpb25zOiBTa2lwIG5ldyB0ZXN0LgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9UZXN0
RXhwZWN0YXRpb25zOiBFbmFibGUgbmV3IHRlc3QuCisgICAgICAgICogcGxhdGZvcm0vd2luL1Rl
c3RFeHBlY3RhdGlvbnM6IFNraXAgbmV3IHRlc3QuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
YWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICBCZWZvcmUgdGhpcyBwYXRjaCwgW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVy
QmFzZSBBWEF0dHJpYnV0ZVN0cmluZ1NldFN0eWxlXSBjYWxsZWQgdGhlIGlPUworICAgICAgICB2
ZXJzaW9uIG9mIEFYQXR0cmlidXRlU3RyaW5nU2V0Rm9udC4gVGhpcyBwYXRjaCBmaXhlcyB0aGlz
LiBUaGUgZXhwZWN0YXRpb24gZm9yIHRoaXMgdGVzdCBpcyB1cGRhdGVkIGFzIGEgcmVzdWx0Lgor
CiAyMDIyLTAzLTAzICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAg
ICAgICAgIG5hc2EuZ292IHBhZ2Ugd2l0aCBmaXhlZCBiYWNrZ3JvdW5kcyBwYWludHMgaW5jb3Jy
ZWN0bHkgb24gc2Nyb2xsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Jl
c291cmNlcy9MaXRoZXJ1bS5zdmcgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Jlc291cmNl
cy9MaXRoZXJ1bS5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzM1NDhlNTBmZmE3YzA3NjJkMzcyYzMzNzJhOTg5
NTgzMjVjZDM3MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkv
cmVzb3VyY2VzL0xpdGhlcnVtLnN2ZwpAQCAtMCwwICsxLDEyIEBACis8P3htbCB2ZXJzaW9uPSIx
LjAiIHN0YW5kYWxvbmU9Im5vIj8+Cis8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQg
U1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcx
MS5kdGQiID4KKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKzxtZXRh
ZGF0YT48L21ldGFkYXRhPgorPGRlZnM+Cis8Zm9udCBpZD0iTGl0aGVydW0iIGhvcml6LWFkdi14
PSIxMDI0Ij4KKzxmb250LWZhY2UgdW5pdHMtcGVyLWVtPSIxNCIgYXNjZW50PSIxNCIgZGVzY2Vu
dD0iMCIvPgorPGdseXBoIHVuaWNvZGU9InwiIGhvcml6LWFkdi14PSIxNCIgZD0iTTAgMHYxNGgx
NHYtMTR6Ii8+Cis8Z2x5cGggdW5pY29kZT0iLSIgaG9yaXotYWR2LXg9IjI2NiIgZD0iTTAgMHYx
NGgyNjZ2LTE0eiIvPgorPC9mb250PgorPC9kZWZzPgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5jYTgwODBiYTU0MWIyZTZlMDM0OGVlYWRhMzU2ZDRmMjM4MjFlMjY4Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDggQEAKK1RoaXMgdGVzdCBlbnN1cmVzIHRoYXQgd2UgZG9uJ3QgY3Jhc2gg
d2hlbiBhcHBseWluZyBhIGN1c3RvbSBTVkcgZm9udCB0byBhdHRyaWJ1dGVkIHN0cmluZ3MuCitH
ZXR0aW5nIGF0dHJpYnV0ZWQgc3RyaW5nIGZvciByYW5nZSAoMCwgOSkKK1BBU1M6IERpZG4ndCBj
cmFzaC4KKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS5o
dG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9zdmctZm9udC1mYWNlLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZWMzOTMwMTYzNWJmMGEwNDI3OWZkNGI5NmNiNDBmOTgzNGZlNzA5MwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS5odG1sCkBA
IC0wLDAgKzEsMzUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3Qu
anMiPjwvc2NyaXB0PgorPHN0eWxlPgorQGZvbnQtZmFjZSB7CisgICAgZm9udC1mYW1pbHk6ICdM
aXRoZXJ1bSc7CisgICAgc3JjOiB1cmwoInJlc291cmNlcy9MaXRoZXJ1bS5zdmciKSBmb3JtYXQo
c3ZnKTsKK30KKyogeyBmb250LWZhbWlseTogJ0xpdGhlcnVtJzsgfQorPC9zdHlsZT4KKzwvaGVh
ZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKworPGlucHV0IHR5cGU9InRleHQiIGlkPSJ0
ZXh0ZmllbGQiIHZhbHVlPSJzb21lIHdvcmQiPjwvaW5wdXQ+CisKKzxzY3JpcHQ+CisgICAgdmFy
IG91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHdlIGRvbid0IGNyYXNoIHdoZW4gYXBw
bHlpbmcgYSBjdXN0b20gU1ZHIGZvbnQgdG8gYXR0cmlidXRlZCBzdHJpbmdzLlxuIjsKKworICAg
IGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpCisgICAgICAgIHdpbmRvdy5qc1Rl
c3RJc0FzeW5jID0gdHJ1ZTsKKworICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAgIGlm
ICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICAgICAgICAgIGNvbnN0IHRl
eHRGaWVsZCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgi
dGV4dGZpZWxkIik7CisgICAgICAgICAgICBvdXRwdXQgKz0gYEdldHRpbmcgYXR0cmlidXRlZCBz
dHJpbmcgZm9yIHJhbmdlICgwLCA5KVxuYDsKKyAgICAgICAgICAgIGNvbnN0IGF0dHJpYnV0ZWRT
dHJpbmcgPSB0ZXh0RmllbGQuYXR0cmlidXRlZFN0cmluZ0ZvclJhbmdlKDAsIDkpOworICAgICAg
ICAgICAgb3V0cHV0ICs9ICJQQVNTOiBEaWRuJ3QgY3Jhc2guXG4iOworICAgICAgICAgICAgZGVi
dWcob3V0cHV0KTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9CisgICAg
fQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGli
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMmUxMjdjOThmMzAzZmZiOWI4NTBjNzk0MzVkZmY1ZjYz
ODcwZjEwNy4uZWQ2NDkwMTk1OTYzMGRlODhmMGQxNWFjYjkwY2I5MGNiMTgzNjc1NSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzMxLDYgKzMzMSw4
IEBAIGZhc3QvY3NzL2FjY2VudC1jb2xvci90ZXh0Lmh0bWwgWyBQYXNzIF0KICMgQWNjZXNzaWJp
bGl0eS1yZWxhdGVkIGJ1Z3MKICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAKK2Fj
Y2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS5odG1sIFsgU2tpcCBdCisKICMgTmVlZCB0byBpbXBs
ZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aGFzRG9jdW1lbnRSb2xlQW5jZXN0b3IoKSwg
QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aGFzV2ViQXBwbGljYXRpb25BbmNlc3RvcigpLAogIyBB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojppc0luRGVzY3JpcHRpb25MaXN0RGV0YWlsKCksIEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OmlzSW5EZXNjcmlwdGlvbkxpc3RUZXJtKCksIGFuZAogIyBBY2Nl
c3NpYmlsaXR5VUlFbGVtZW50Ojppc0luQ2VsbCgpLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCA4YjMxMTEzMGM4MTBhZTcwODkzNmUyZTA0M2FhZjJhZThh
NTU2N2U1Li4zY2MzNjY1MWEyOWY4M2I2ZTVjOTEzZjRiYjdjYzAwYmE1NGY2ZGE5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjEwNSw2ICsyMTA1LDcg
QEAgYWNjZXNzaWJpbGl0eS9pZ25vcmUtbW9kYWxzLXdpdGhvdXQtYW55LWNvbnRlbnQuaHRtbCBb
IFBhc3MgXQogCiBhY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXN0YXRlLWNoYW5nZWQtbm90aWZpY2F0
aW9ucy5odG1sIFsgUGFzcyBdCiBhY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQt
dGV4dC5odG1sIFsgUGFzcyBdCithY2Nlc3NpYmlsaXR5L3N2Zy1mb250LWZhY2UuaHRtbCBbIFBh
c3MgXQogCiAjIEVuYWJsZSAiYXR0YWNobWVudCBlbGVtZW50IiB0ZXN0IGZvciBpT1MKIGFjY2Vz
c2liaWxpdHkvYXR0YWNobWVudC1lbGVtZW50Lmh0bWwgWyBQYXNzIF0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1h
bmQtdGV4dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQtZXhwZWN0ZWQudHh0CmluZGV4IGMyMGQ2
MWIxZmI4YWJkMGYxYzk1YWU3ODg2Y2RmYWIwZTA0NzVlNmIuLjM1ZDYxNThlN2YzYmRhYjA0Y2Rl
ZGJjNWJmZTE2YmEyYTA0OGFhMjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9hY2Nlc3NpYmlsaXR5L2VsZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4dC1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5l
LXJlY3RzLWFuZC10ZXh0LWV4cGVjdGVkLnR4dApAQCAtMTAsMjggKzEwLDI4IEBAIFRoaXMgdGVz
dHMgdGhhdCBsaW5lUmVjdHNBbmRUZXh0IHJldHVybnMgdGhlIGNvcnJlY3QgdmFsdWVzLgogT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLXRleHQgPSAiVGhpcyBpcyBzb21lIHRlc3Rpbmcg
Y29udGVudC4ge1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xu
ICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAg
VUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufUEgbGluayBoZXJlLntcbiAgICBV
SUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICBVSUFjY2Vzc2liaWxp
dHlUb2tlbkZvbnROYW1lID0gXCJUaW1lcyBSb21hblwiO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRv
a2VuRm9udFNpemUgPSAxNjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlblVuZGVybGluZSA9IDE7
XG59IE1PcmUgdGV4dC57XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFtaWx5ID0gVGlt
ZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtc
biAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59IjsKK3RleHQgPSAiVGhp
cyBpcyBzb21lIHRlc3RpbmcgY29udGVudC4ge1xuICAgIEFYRm9udCA9ICAgICB7XG4gICAgICAg
IEFYRm9udEZhbWlseSA9IFRpbWVzO1xuICAgICAgICBBWEZvbnROYW1lID0gXCJUaW1lcy1Sb21h
blwiO1xuICAgICAgICBBWEZvbnRTaXplID0gMTY7XG4gICAgICAgIEFYVmlzaWJsZU5hbWUgPSBc
IlRpbWVzIFJvbWFuXCI7XG4gICAgfTtcbn1BIGxpbmsgaGVyZS57XG4gICAgQVhGb250ID0gICAg
IHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBc
IlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNp
YmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xuICAgIFVJQWNjZXNzaWJpbGl0eVRv
a2VuVW5kZXJsaW5lID0gMTtcbn0gTU9yZSB0ZXh0LntcbiAgICBBWEZvbnQgPSAgICAge1xuICAg
ICAgICBBWEZvbnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMt
Um9tYW5cIjtcbiAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1l
ID0gXCJUaW1lcyBSb21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0
ID4gMDogdHJ1ZQotdGV4dCA9ICJ6e1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWls
eSA9IFRpbWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJv
bWFuXCI7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0
ID0gInp7XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7
XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNp
emUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9
O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRleHQgPSAiQW5vdGhl
ciBsaW5lIG9mIHRleHQue1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRp
bWVzO1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7
XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gIkFu
b3RoZXIgbGluZSBvZiB0ZXh0LntcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZvbnRG
YW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtcbiAg
ICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1lcyBS
b21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1ZQog
dGV4dCA9ICJjYWtle1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRydWUKLXRl
eHQgPSAiSmFjayBhbmQgSmlsbCB3ZW50IHVwIHRoZSBoaWxsIHRvIGZldGNoIGEgcGFpbCBvZiB3
YXRlci4gSmFjayBmZWxsIGRvd24uLi57XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250RmFt
aWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwiVGltZXMg
Um9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTQ7XG59IjsKK3Rl
eHQgPSAiSmFjayBhbmQgSmlsbCB3ZW50IHVwIHRoZSBoaWxsIHRvIGZldGNoIGEgcGFpbCBvZiB3
YXRlci4gSmFjayBmZWxsIGRvd24uLi57XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAgICAgQVhG
b250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJvbWFuXCI7
XG4gICAgICAgIEFYRm9udFNpemUgPSAxNDtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9IFwiVGlt
ZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+IDA6IHRy
dWUKLXRleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IGFiY2RlZmdo
aWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSB7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5G
b250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFtZSA9IFwi
VGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0gMTY7XG59
IjsKK3RleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IGFiY2RlZmdo
aWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSB7XG4gICAgQVhGb250ID0gICAgIHtcbiAgICAg
ICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRpbWVzLVJv
bWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxlTmFtZSA9
IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhlaWdodCA+
IDA6IHRydWUKLXRleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LWFi
Y2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OS17XG4gICAgVUlBY2Nlc3NpYmlsaXR5
VG9rZW5Gb250RmFtaWx5ID0gVGltZXM7XG4gICAgVUlBY2Nlc3NpYmlsaXR5VG9rZW5Gb250TmFt
ZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICBVSUFjY2Vzc2liaWxpdHlUb2tlbkZvbnRTaXplID0g
MTY7XG59IjsKK3RleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LWFi
Y2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OS17XG4gICAgQVhGb250ID0gICAgIHtc
biAgICAgICAgQVhGb250RmFtaWx5ID0gVGltZXM7XG4gICAgICAgIEFYRm9udE5hbWUgPSBcIlRp
bWVzLVJvbWFuXCI7XG4gICAgICAgIEFYRm9udFNpemUgPSAxNjtcbiAgICAgICAgQVhWaXNpYmxl
TmFtZSA9IFwiVGltZXMgUm9tYW5cIjtcbiAgICB9O1xufSI7CiB3aWR0aCA+IDA6IHRydWUKIGhl
aWdodCA+IDA6IHRydWUKLXRleHQgPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2
Nzg5e1xuICAgIFVJQWNjZXNzaWJpbGl0eVRva2VuRm9udEZhbWlseSA9IFRpbWVzO1xuICAgIFVJ
QWNjZXNzaWJpbGl0eVRva2VuRm9udE5hbWUgPSBcIlRpbWVzIFJvbWFuXCI7XG4gICAgVUlBY2Nl
c3NpYmlsaXR5VG9rZW5Gb250U2l6ZSA9IDE2O1xufSI7Cit0ZXh0ID0gImFiY2RlZmdoaWprbG1u
b3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OXtcbiAgICBBWEZvbnQgPSAgICAge1xuICAgICAgICBBWEZv
bnRGYW1pbHkgPSBUaW1lcztcbiAgICAgICAgQVhGb250TmFtZSA9IFwiVGltZXMtUm9tYW5cIjtc
biAgICAgICAgQVhGb250U2l6ZSA9IDE2O1xuICAgICAgICBBWFZpc2libGVOYW1lID0gXCJUaW1l
cyBSb21hblwiO1xuICAgIH07XG59IjsKIHdpZHRoID4gMDogdHJ1ZQogaGVpZ2h0ID4gMDogdHJ1
ZQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCBjN2Q1OGMzZjFiMmUyNWY3OThkMjhhMDQzNWE4ZTI1
YzJlMTJiZGIxLi44MjdlOGUxZmExY2NjMTAyMjQwYTc0MTQ5MWIxNmI2NmI0MTdmOGZlIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwpAQCAtNDkyMiw3ICs0OTIy
LDEwIEBAIHdlYmtpdC5vcmcvYi8yMjkzMDAgaHR0cC90ZXN0cy9zZWN1cml0eS9uby1qYXZhc2Ny
aXB0LXJlZnJlc2gtc3BhY2VzLnB5IFsgUGFzcyBDCiBhY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXN0
YXRlLWNoYW5nZWQtbm90aWZpY2F0aW9ucy5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2Vs
ZW1lbnQtbGluZS1yZWN0cy1hbmQtdGV4dC5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2Rp
YWxvZy1wcm9wZXJ0aWVzLmh0bWwgWyBTa2lwIF0KKworIyBNaXNzaW5nIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6OmF0dHJpYnV0ZWRTdHJpbmdGb3JSYW5nZSBpbXBsZW1lbnRhdGlvbgogYWNjZXNz
aWJpbGl0eS9uYXRpdmUtdGV4dC1jb250cm9sLWF0dHJpYnV0ZWQtc3RyaW5nLmh0bWwgWyBTa2lw
IF0KK2FjY2Vzc2liaWxpdHkvc3ZnLWZvbnQtZmFjZS5odG1sIFsgU2tpcCBdCiAKIHdlYmtpdC5v
cmcvYi8yMjkyNDcgaHR0cC90ZXN0cy9mZXRjaC9rZWVwYWxpdmUtZmV0Y2gtMi5odG1sIFsgUGFz
cyBGYWlsdXJlIF0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>