<?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>73164</bug_id>
          
          <creation_ts>2011-11-27 01:48:59 -0800</creation_ts>
          <short_desc>unicode-bidi should support isolate override and override isolate</short_desc>
          <delta_ts>2012-03-05 15:09:28 -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>CSS</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>50910</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>aharon</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>leviw</cc>
    
    <cc>macpherson</cc>
    
    <cc>mitz</cc>
    
    <cc>playmobil</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xji</cc>
    
    <cc>yael</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>509418</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-27 01:48:59 -0800</bug_when>
    <thetext>Right now, WebKit only accepts either -webkit-isolate or override as the value of unicode-bidi. However, per CSS Writing Modes Module level 3, it should also support -webkit-isolate override and override -webkit-isolate.

See http://dev.w3.org/csswg/css3-writing-modes/#unicode-bidi0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509422</commentid>
    <comment_count>1</comment_count>
      <attachid>116669</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-27 02:56:17 -0800</bug_when>
    <thetext>Created attachment 116669
work in progress</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509423</commentid>
    <comment_count>2</comment_count>
      <attachid>116670</attachid>
    <who name="Aharon (Vladimir) Lanin">aharon</who>
    <bug_when>2011-11-27 03:02:38 -0800</bug_when>
    <thetext>Created attachment 116670
test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509424</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-27 03:16:33 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Created an attachment (id=116670) [details]
&gt; test case

Thanks for the tests!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509535</commentid>
    <comment_count>4</comment_count>
      <attachid>116692</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-27 18:58:44 -0800</bug_when>
    <thetext>Created attachment 116692
fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509538</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-27 19:22:42 -0800</bug_when>
    <thetext>Ideally, I want to land this patch first before landing my patch for the bug 63903 so that I can fix bdi behavior for good in the bug 63903.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509546</commentid>
    <comment_count>6</comment_count>
      <attachid>116692</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2011-11-27 20:06:45 -0800</bug_when>
    <thetext>Comment on attachment 116692
fixes the bug

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

&gt; Source/WebCore/css/CSSStyleSelector.cpp:2602
&gt; +    {

It would be preferable to implement this in CSSStyleApplyProperty.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509574</commentid>
    <comment_count>7</comment_count>
      <attachid>116692</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-27 22:46:55 -0800</bug_when>
    <thetext>Comment on attachment 116692
fixes the bug

Attachment 116692 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10676104

New failing tests:
fast/text/bidi-override-isolate.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509575</commentid>
    <comment_count>8</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-27 22:48:53 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 116692 [details])
&gt; Attachment 116692 [details] did not pass chromium-ews (chromium-xvfb):
&gt; Output: http://queues.webkit.org/results/10676104
&gt; 
&gt; New failing tests:
&gt; fast/text/bidi-override-isolate.html

We just need a rebaseline for each Chromium platform.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509584</commentid>
    <comment_count>9</comment_count>
    <who name="Aharon (Vladimir) Lanin">aharon</who>
    <bug_when>2011-11-27 23:08:56 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; (From update of attachment 116692 [details] [details])
&gt; &gt; Attachment 116692 [details] [details] did not pass chromium-ews (chromium-xvfb):
&gt; &gt; Output: http://queues.webkit.org/results/10676104
&gt; &gt; 
&gt; &gt; New failing tests:
&gt; &gt; fast/text/bidi-override-isolate.html
&gt; 
&gt; We just need a rebaseline for each Chromium platform.

Can this be done as a ref test (the kind where a screenshot of the test document is compared to screenshot of a reference document, as opposed to a reference image)? It should be very easy to convert the test case I provided to that format.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509586</commentid>
    <comment_count>10</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-27 23:12:41 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; Can this be done as a ref test (the kind where a screenshot of the test document is compared to screenshot of a reference document, as opposed to a reference image)? It should be very easy to convert the test case I provided to that format.

That&apos;s an excellent idea. Let me do that tomorrow morning.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509995</commentid>
    <comment_count>11</comment_count>
      <attachid>116789</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-28 11:19:57 -0800</bug_when>
    <thetext>Created attachment 116789
Made bidi-override-isolate.html a reftest</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510034</commentid>
    <comment_count>12</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-11-28 11:50:11 -0800</bug_when>
    <thetext>I think we should push back against the CSS WG and get them to drop this silly unicode-bidi: isolate override; syntax with some sort of compound values which only work in one case!

Seems they should just have added a &apos;isolate-override&apos; value to the enum instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510038</commentid>
    <comment_count>13</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-28 11:53:03 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; I think we should push back against the CSS WG and get them to drop this silly unicode-bidi: isolate override; syntax with some sort of compound values which only work in one case!
&gt; 
&gt; Seems they should just have added a &apos;isolate-override&apos; value to the enum instead.

I second this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510066</commentid>
    <comment_count>14</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-28 12:23:35 -0800</bug_when>
    <thetext>Also see https://bugzilla.mozilla.org/show_bug.cgi?id=613149.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510153</commentid>
    <comment_count>15</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-11-28 14:01:40 -0800</bug_when>
    <thetext>Asked on www-style: http://lists.w3.org/Archives/Public/www-style/2011Nov/0707.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512072</commentid>
    <comment_count>16</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-11-30 13:28:23 -0800</bug_when>
    <thetext>Any response from www-style?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>568917</commentid>
    <comment_count>17</comment_count>
      <attachid>116789</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-03-01 14:26:44 -0800</bug_when>
    <thetext>Comment on attachment 116789
Made bidi-override-isolate.html a reftest

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

I don&apos;t really like this spec change, but the implementation looks OK.

&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:997
&gt; +        {
&gt; +            RefPtr&lt;CSSValueList&gt; list = CSSValueList::createSpaceSeparated();
&gt; +            list-&gt;append(primitiveValueCache-&gt;createIdentifierValue(CSSValueBidiOverride));
&gt; +            list-&gt;append(primitiveValueCache-&gt;createIdentifierValue(CSSValueWebkitIsolate));
&gt; +            return list;
&gt; +        }

I don&apos; think this is quite the right indent.  I think the { themselves do not get indented.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>568920</commentid>
    <comment_count>18</comment_count>
      <attachid>116789</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-03-01 14:27:28 -0800</bug_when>
    <thetext>Comment on attachment 116789
Made bidi-override-isolate.html a reftest

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

&gt; LayoutTests/fast/text/bidi-override-isolate.html:10
&gt; +&lt;div&gt;&lt;span style=&quot;direction: rtl; unicode-bidi: bidi-override -webkit-isolate; unicodeo-bidi: bidi-override isolate;&quot;&gt;abc&lt;/span&gt; 1&lt;/div&gt;
&gt; +&lt;div&gt;&lt;span style=&quot;direction: rtl; unicode-bidi: -webkit-isolate bidi-override; unicodeo-bidi: isolate bidi-override;&quot;&gt;abc&lt;/span&gt; 1&lt;/div&gt;

unicodeo?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571079</commentid>
    <comment_count>19</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-03-05 15:09:28 -0800</bug_when>
    <thetext>Committed r109806: &lt;http://trac.webkit.org/changeset/109806&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116669</attachid>
            <date>2011-11-27 02:56:17 -0800</date>
            <delta_ts>2011-11-27 18:58:37 -0800</delta_ts>
            <desc>work in progress</desc>
            <filename>wip73164</filename>
            <type>text/plain</type>
            <size>14992</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1VuaWNvZGVCaWRpLmgJKHJldmlz
aW9uIDEwMTE4MikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGku
aAkod29ya2luZyBjb3B5KQpAQCAtMzEsMTEgKzMxLDE1IEBACiBlbnVtIEVVbmljb2RlQmlkaSB7
CiAgICAgVUJOb3JtYWwsCiAgICAgRW1iZWQsCisgICAgUGxhaW50ZXh0LAogICAgIE92ZXJyaWRl
LAogICAgIElzb2xhdGUsCi0gICAgUGxhaW50ZXh0CisgICAgT3ZlcnJpZGVJc29sYXRlLAogfTsK
IAoraW5saW5lIGJvb2wgaXNPdmVycmlkZShFVW5pY29kZUJpZGkgYmlkaSkgeyByZXR1cm4gYmlk
aSA9PSBPdmVycmlkZSB8fCBiaWRpID09IE92ZXJyaWRlSXNvbGF0ZTsgfQoraW5saW5lIGJvb2wg
aXNJc29sYXRlKEVVbmljb2RlQmlkaSBiaWRpKSB7IHJldHVybiBiaWRpID09IElzb2xhdGUgfHwg
YmlkaSA9PSBPdmVycmlkZUlzb2xhdGU7IH0KKwogfQogCiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJE
LmNwcAkocmV2aXNpb24gMTAxMTgyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2Fu
dmFzUmVuZGVyaW5nQ29udGV4dDJELmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjA5Niw3ICsyMDk2
LDcgQEAKICAgICBSZW5kZXJTdHlsZSogY29tcHV0ZWRTdHlsZSA9IGNhbnZhcygpLT5jb21wdXRl
ZFN0eWxlKCk7CiAgICAgVGV4dERpcmVjdGlvbiBkaXJlY3Rpb24gPSBjb21wdXRlZFN0eWxlID8g
Y29tcHV0ZWRTdHlsZS0+ZGlyZWN0aW9uKCkgOiBMVFI7CiAgICAgYm9vbCBpc1JUTCA9IGRpcmVj
dGlvbiA9PSBSVEw7Ci0gICAgYm9vbCBvdmVycmlkZSA9IGNvbXB1dGVkU3R5bGUgPyBjb21wdXRl
ZFN0eWxlLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRlIDogZmFsc2U7CisgICAgYm9vbCBvdmVy
cmlkZSA9IGNvbXB1dGVkU3R5bGUgPyBpc092ZXJyaWRlKGNvbXB1dGVkU3R5bGUtPnVuaWNvZGVC
aWRpKCkpIDogZmFsc2U7CiAKICAgICB1bnNpZ25lZCBsZW5ndGggPSB0ZXh0Lmxlbmd0aCgpOwog
ICAgIGNvbnN0IFVDaGFyKiBzdHJpbmcgPSB0ZXh0LmNoYXJhY3RlcnMoKTsKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmds
ZUxpbmUuY3BwCShyZXZpc2lvbiAxMDExODIpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGV4dENvbnRyb2xTaW5nbGVMaW5lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjEwLDcg
KzYxMCw4IEBACiAKIFBvcHVwTWVudVN0eWxlIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGluZTo6
bWVudVN0eWxlKCkgY29uc3QKIHsKLSAgICByZXR1cm4gUG9wdXBNZW51U3R5bGUoc3R5bGUoKS0+
dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5Q29sb3IpLCBzdHlsZSgpLT52aXNpdGVk
RGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpLCBzdHlsZSgpLT5mb250
KCksIHN0eWxlKCktPnZpc2liaWxpdHkoKSA9PSBWSVNJQkxFLCBzdHlsZSgpLT5kaXNwbGF5KCkg
PT0gTk9ORSwgc3R5bGUoKS0+dGV4dEluZGVudCgpLCBzdHlsZSgpLT5kaXJlY3Rpb24oKSwgc3R5
bGUoKS0+dW5pY29kZUJpZGkoKSA9PSBPdmVycmlkZSk7CisgICAgcmV0dXJuIFBvcHVwTWVudVN0
eWxlKHN0eWxlKCktPnZpc2l0ZWREZXBlbmRlbnRDb2xvcihDU1NQcm9wZXJ0eUNvbG9yKSwgc3R5
bGUoKS0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yKSwg
c3R5bGUoKS0+Zm9udCgpLCBzdHlsZSgpLT52aXNpYmlsaXR5KCkgPT0gVklTSUJMRSwKKyAgICAg
ICAgc3R5bGUoKS0+ZGlzcGxheSgpID09IE5PTkUsIHN0eWxlKCktPnRleHRJbmRlbnQoKSwgc3R5
bGUoKS0+ZGlyZWN0aW9uKCksIGlzT3ZlcnJpZGUoc3R5bGUoKS0+dW5pY29kZUJpZGkoKSkpOwog
fQogCiBpbnQgUmVuZGVyVGV4dENvbnRyb2xTaW5nbGVMaW5lOjpjbGllbnRJbnNldExlZnQoKSBj
b25zdApJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCShyZXZp
c2lvbiAxMDExODIpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC02OTYwLDcgKzY5NjAsNyBAQAogICAgICAgICBpZiAoZmxhZ3Mg
JiBSZXNwZWN0RGlyZWN0aW9uKQogICAgICAgICAgICAgdGV4dERpcmVjdGlvbiA9IHN0eWxlLT5k
aXJlY3Rpb24oKTsKICAgICAgICAgaWYgKGZsYWdzICYgUmVzcGVjdERpcmVjdGlvbk92ZXJyaWRl
KQotICAgICAgICAgICAgZGlyZWN0aW9uYWxPdmVycmlkZSB8PSBzdHlsZS0+dW5pY29kZUJpZGko
KSA9PSBPdmVycmlkZTsKKyAgICAgICAgICAgIGRpcmVjdGlvbmFsT3ZlcnJpZGUgfD0gaXNPdmVy
cmlkZShzdHlsZS0+dW5pY29kZUJpZGkoKSk7CiAgICAgfQogCiAgICAgVGV4dFJ1biBydW4oY2hh
cmFjdGVycywgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgZXhwYW5zaW9uLCB0ZXh0RGlyZWN0aW9uLCBk
aXJlY3Rpb25hbE92ZXJyaWRlKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCbG9ja0xpbmVMYXlvdXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwCShyZXZpc2lvbiAxMDExODIpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTI0MCw3ICsxMjQwLDcgQEAKICAgICAgICAgICAgIGlmIChpc05ld1VCQVBhcmFn
cmFwaCAmJiBzdHlsZSgpLT51bmljb2RlQmlkaSgpID09IFBsYWludGV4dCAmJiAhcmVzb2x2ZXIu
Y29udGV4dCgpLT5wYXJlbnQoKSkgewogICAgICAgICAgICAgICAgIFRleHREaXJlY3Rpb24gZGly
ZWN0aW9uID0gc3R5bGUoKS0+ZGlyZWN0aW9uKCk7CiAgICAgICAgICAgICAgICAgZGV0ZXJtaW5l
UGFyYWdyYXBoRGlyZWN0aW9uKGRpcmVjdGlvbiwgcmVzb2x2ZXIucG9zaXRpb24oKSk7Ci0gICAg
ICAgICAgICAgICAgcmVzb2x2ZXIuc2V0U3RhdHVzKEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBzdHls
ZSgpLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRlKSk7CisgICAgICAgICAgICAgICAgcmVzb2x2
ZXIuc2V0U3RhdHVzKEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBpc092ZXJyaWRlKHN0eWxlKCktPnVu
aWNvZGVCaWRpKCkpKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAvLyBGSVhNRTogVGhp
cyBvd25lcnNoaXAgaXMgcmV2ZXJzZWQuIFdlIHNob3VsZCBvd24gdGhlIEJpZGlSdW5MaXN0IGFu
ZCBwYXNzIGl0IHRvIGNyZWF0ZUJpZGlSdW5zRm9yTGluZS4KICAgICAgICAgICAgIEJpZGlSdW5M
aXN0PEJpZGlSdW4+JiBiaWRpUnVucyA9IHJlc29sdmVyLnJ1bnMoKTsKQEAgLTE2NDcsNyArMTY0
Nyw3IEBACiAgICAgICAgICAgICAvLyBGSVhNRTogV2h5IGRvZXMgInVuaWNvZGUtYmlkaTogcGxh
aW50ZXh0IiBiaWRpRmlyc3RJbmNsdWRpbmdFbXB0eUlubGluZXMgd2hlbiBhbGwgb3RoZXIgbGlu
ZSBsYXlvdXQgY29kZSB1c2VzIGJpZGlGaXJzdFNraXBwaW5nRW1wdHlJbmxpbmVzPwogICAgICAg
ICAgICAgZGV0ZXJtaW5lUGFyYWdyYXBoRGlyZWN0aW9uKGRpcmVjdGlvbiwgSW5saW5lSXRlcmF0
b3IodGhpcywgYmlkaUZpcnN0SW5jbHVkaW5nRW1wdHlJbmxpbmVzKHRoaXMpLCAwKSk7CiAgICAg
ICAgIH0KLSAgICAgICAgcmVzb2x2ZXIuc2V0U3RhdHVzKEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBz
dHlsZSgpLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRlKSk7CisgICAgICAgIHJlc29sdmVyLnNl
dFN0YXR1cyhCaWRpU3RhdHVzKGRpcmVjdGlvbiwgaXNPdmVycmlkZShzdHlsZSgpLT51bmljb2Rl
QmlkaSgpKSkpOwogICAgICAgICByZXNvbHZlci5zZXRQb3NpdGlvbihJbmxpbmVJdGVyYXRvcih0
aGlzLCBiaWRpRmlyc3RTa2lwcGluZ0VtcHR5SW5saW5lcyh0aGlzLCAmcmVzb2x2ZXIpLCAwKSk7
CiAgICAgfQogICAgIHJldHVybiBjdXJyOwpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L0lubGluZUl0ZXJhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L0lubGluZUl0ZXJhdG9yLmgJKHJldmlzaW9uIDEwMTE4MikKKysrIFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9JbmxpbmVJdGVyYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzEsNyArMTMxLDcg
QEAKICAgICAgICAgLy8gVGh1cyB3ZSBpZ25vcmUgYW55IHBvc3NpYmxlIGRpcj0gYXR0cmlidXRl
IG9uIHRoZSBzcGFuLgogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIGlmICh1bmljb2RlQmlk
aSA9PSBJc29sYXRlKSB7CisgICAgaWYgKGlzSXNvbGF0ZSh1bmljb2RlQmlkaSkpIHsKICAgICAg
ICAgb2JzZXJ2ZXItPmVudGVySXNvbGF0ZSgpOwogICAgICAgICAvLyBFbWJlZGRpbmcvT3ZlcnJp
ZGUgY2hhcmFjdGVycyBpbXBsaWVkIGJ5IGRpcj0gYXJlIGhhbmRsZWQgd2hlbgogICAgICAgICAv
LyB3ZSBwcm9jZXNzIHRoZSBpc29sYXRlZCBzcGFuLCBub3Qgd2hlbiBsYXlpbmcgb3V0IHRoZSAi
cGFyZW50IiBydW4uCkBAIC0xNTEsNyArMTUxLDcgQEAKICAgICBFVW5pY29kZUJpZGkgdW5pY29k
ZUJpZGkgPSBvYmplY3QtPnN0eWxlKCktPnVuaWNvZGVCaWRpKCk7CiAgICAgaWYgKHVuaWNvZGVC
aWRpID09IFVCTm9ybWFsKQogICAgICAgICByZXR1cm47IC8vIE5vdGhpbmcgdG8gZG8gZm9yIHVu
aWNvZGUtYmlkaTogbm9ybWFsCi0gICAgaWYgKHVuaWNvZGVCaWRpID09IElzb2xhdGUpIHsKKyAg
ICBpZiAoaXNJc29sYXRlKHVuaWNvZGVCaWRpKSkgewogICAgICAgICBvYnNlcnZlci0+ZXhpdElz
b2xhdGUoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTM5MCw3ICszOTAsNyBAQAogc3Rh
dGljIGlubGluZSBib29sIGlzSXNvbGF0ZWRJbmxpbmUoUmVuZGVyT2JqZWN0KiBvYmplY3QpCiB7
CiAgICAgQVNTRVJUKG9iamVjdCk7Ci0gICAgcmV0dXJuIG9iamVjdC0+aXNSZW5kZXJJbmxpbmUo
KSAmJiBvYmplY3QtPnN0eWxlKCktPnVuaWNvZGVCaWRpKCkgPT0gSXNvbGF0ZTsKKyAgICByZXR1
cm4gb2JqZWN0LT5pc1JlbmRlcklubGluZSgpICYmIGlzSXNvbGF0ZShvYmplY3QtPnN0eWxlKCkt
PnVuaWNvZGVCaWRpKCkpOwogfQogCiBzdGF0aWMgaW5saW5lIFJlbmRlck9iamVjdCogY29udGFp
bmluZ0lzb2xhdGUoUmVuZGVyT2JqZWN0KiBvYmplY3QsIFJlbmRlck9iamVjdCogcm9vdCkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcAkocmV2aXNp
b24gMTAxMTgyKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNDQ0LDcgKzQ0NCw4IEBACiAgICAgSFRNTEVsZW1lbnQqIGVs
ZW1lbnQgPSBsaXN0SXRlbXNbbGlzdEluZGV4XTsKICAgICAKICAgICBSZW5kZXJTdHlsZSogc3R5
bGUgPSBlbGVtZW50LT5yZW5kZXJTdHlsZSgpID8gZWxlbWVudC0+cmVuZGVyU3R5bGUoKSA6IGVs
ZW1lbnQtPmNvbXB1dGVkU3R5bGUoKTsKLSAgICByZXR1cm4gc3R5bGUgPyBQb3B1cE1lbnVTdHls
ZShzdHlsZS0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5Q29sb3IpLCBpdGVtQmFj
a2dyb3VuZENvbG9yKGxpc3RJbmRleCksIHN0eWxlLT5mb250KCksIHN0eWxlLT52aXNpYmlsaXR5
KCkgPT0gVklTSUJMRSwgc3R5bGUtPmRpc3BsYXkoKSA9PSBOT05FLCBzdHlsZS0+dGV4dEluZGVu
dCgpLCBzdHlsZS0+ZGlyZWN0aW9uKCksIHN0eWxlLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRl
KSA6IG1lbnVTdHlsZSgpOworICAgIHJldHVybiBzdHlsZSA/IFBvcHVwTWVudVN0eWxlKHN0eWxl
LT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlDb2xvciksIGl0ZW1CYWNrZ3JvdW5k
Q29sb3IobGlzdEluZGV4KSwgc3R5bGUtPmZvbnQoKSwgc3R5bGUtPnZpc2liaWxpdHkoKSA9PSBW
SVNJQkxFLAorICAgICAgICBzdHlsZS0+ZGlzcGxheSgpID09IE5PTkUsIHN0eWxlLT50ZXh0SW5k
ZW50KCksIHN0eWxlLT5kaXJlY3Rpb24oKSwgaXNPdmVycmlkZShzdHlsZS0+dW5pY29kZUJpZGko
KSkpIDogbWVudVN0eWxlKCk7CiB9CiAKIENvbG9yIFJlbmRlck1lbnVMaXN0OjppdGVtQmFja2dy
b3VuZENvbG9yKHVuc2lnbmVkIGxpc3RJbmRleCkgY29uc3QKQEAgLTQ3Myw3ICs0NzQsOCBAQAog
UG9wdXBNZW51U3R5bGUgUmVuZGVyTWVudUxpc3Q6Om1lbnVTdHlsZSgpIGNvbnN0CiB7CiAgICAg
UmVuZGVyU3R5bGUqIHMgPSBtX2lubmVyQmxvY2sgPyBtX2lubmVyQmxvY2stPnN0eWxlKCkgOiBz
dHlsZSgpOwotICAgIHJldHVybiBQb3B1cE1lbnVTdHlsZShzLT52aXNpdGVkRGVwZW5kZW50Q29s
b3IoQ1NTUHJvcGVydHlDb2xvciksIHMtPnZpc2l0ZWREZXBlbmRlbnRDb2xvcihDU1NQcm9wZXJ0
eUJhY2tncm91bmRDb2xvciksIHMtPmZvbnQoKSwgcy0+dmlzaWJpbGl0eSgpID09IFZJU0lCTEUs
IHMtPmRpc3BsYXkoKSA9PSBOT05FLCBzLT50ZXh0SW5kZW50KCksIHN0eWxlKCktPmRpcmVjdGlv
bigpLCBzdHlsZSgpLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRlKTsKKyAgICByZXR1cm4gUG9w
dXBNZW51U3R5bGUocy0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5Q29sb3IpLCBz
LT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpLCBzLT5m
b250KCksIHMtPnZpc2liaWxpdHkoKSA9PSBWSVNJQkxFLAorICAgICAgICBzLT5kaXNwbGF5KCkg
PT0gTk9ORSwgcy0+dGV4dEluZGVudCgpLCBzdHlsZSgpLT5kaXJlY3Rpb24oKSwgaXNPdmVycmlk
ZShzdHlsZSgpLT51bmljb2RlQmlkaSgpKSk7CiB9CiAKIEhvc3RXaW5kb3cqIFJlbmRlck1lbnVM
aXN0Ojpob3N0V2luZG93KCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMaXN0Qm94LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGlzdEJveC5jcHAJKHJldmlzaW9uIDEwMTE4MikKKysrIFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDA3LDcgKzQwNyw3
IEBACiAKICAgICB1bnNpZ25lZCBsZW5ndGggPSBpdGVtVGV4dC5sZW5ndGgoKTsKICAgICBjb25z
dCBVQ2hhciogc3RyaW5nID0gaXRlbVRleHQuY2hhcmFjdGVycygpOwotICAgIFRleHRSdW4gdGV4
dFJ1bihzdHJpbmcsIGxlbmd0aCwgZmFsc2UsIDAsIDAsIFRleHRSdW46OkFsbG93VHJhaWxpbmdF
eHBhbnNpb24sIGl0ZW1TdHlsZS0+ZGlyZWN0aW9uKCksIGl0ZW1TdHlsZS0+dW5pY29kZUJpZGko
KSA9PSBPdmVycmlkZSwgVGV4dFJ1bjo6Tm9Sb3VuZGluZyk7CisgICAgVGV4dFJ1biB0ZXh0UnVu
KHN0cmluZywgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgVGV4dFJ1bjo6QWxsb3dUcmFpbGluZ0V4cGFu
c2lvbiwgaXRlbVN0eWxlLT5kaXJlY3Rpb24oKSwgaXNPdmVycmlkZShpdGVtU3R5bGUtPnVuaWNv
ZGVCaWRpKCkpLCBUZXh0UnVuOjpOb1JvdW5kaW5nKTsKICAgICBGb250IGl0ZW1Gb250ID0gc3R5
bGUoKS0+Zm9udCgpOwogICAgIExheW91dFJlY3QgciA9IGl0ZW1Cb3VuZGluZ0JveFJlY3QocGFp
bnRPZmZzZXQsIGxpc3RJbmRleCk7CiAgICAgci5tb3ZlKGl0ZW1PZmZzZXRGb3JBbGlnbm1lbnQo
dGV4dFJ1biwgaXRlbVN0eWxlLCBpdGVtRm9udCwgcikpOwpJbmRleDogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9TVkdUZXh0TWV0cmljcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdUZXh0TWV0cmljcy5jcHAJKHJldmlzaW9uIDEwMTE4MikK
KysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHVGV4dE1ldHJpY3MuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC04Miw3ICs4Miw3IEBACiAgICAgICAgICAgICAgICAgLCAwIC8qIHBhZGRp
bmcsIG9ubHkgcmVsZXZhbnQgZm9yIGp1c3RpZmllZCB0ZXh0LCBub3QgcmVsZXZhbnQgZm9yIFNW
RyAqLwogICAgICAgICAgICAgICAgICwgVGV4dFJ1bjo6QWxsb3dUcmFpbGluZ0V4cGFuc2lvbgog
ICAgICAgICAgICAgICAgICwgc3R5bGUtPmRpcmVjdGlvbigpCi0gICAgICAgICAgICAgICAgLCBz
dHlsZS0+dW5pY29kZUJpZGkoKSA9PSBPdmVycmlkZSAvKiBkaXJlY3Rpb25hbE92ZXJyaWRlICov
KTsKKyAgICAgICAgICAgICAgICAsIGlzT3ZlcnJpZGUoc3R5bGUtPnVuaWNvZGVCaWRpKCkpIC8q
IGRpcmVjdGlvbmFsT3ZlcnJpZGUgKi8pOwogCiAgICAgaWYgKHRleHRSdW5OZWVkc1JlbmRlcmlu
Z0NvbnRleHQoc3R5bGUtPmZvbnQoKSkpCiAgICAgICAgIHJ1bi5zZXRSZW5kZXJpbmdDb250ZXh0
KFNWR1RleHRSdW5SZW5kZXJpbmdDb250ZXh0OjpjcmVhdGUodGV4dCkpOwpJbmRleDogU291cmNl
L1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAkocmV2aXNpb24gMTAxMTgyKQorKysgU291
cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NTk5LDcgKzI1OTksMjEgQEAKICAgICAgICAgSEFORExFX0lOSEVSSVRfQU5EX0lOSVRJQUxfQU5E
X1BSSU1JVElWRSh0YWJsZUxheW91dCwgVGFibGVMYXlvdXQpCiAgICAgICAgIHJldHVybjsKICAg
ICBjYXNlIENTU1Byb3BlcnR5VW5pY29kZUJpZGk6CisgICAgewogICAgICAgICBIQU5ETEVfSU5I
RVJJVF9BTkRfSU5JVElBTF9BTkRfUFJJTUlUSVZFKHVuaWNvZGVCaWRpLCBVbmljb2RlQmlkaSkK
KyAgICAgICAgaWYgKHZhbHVlLT5pc1ZhbHVlTGlzdCgpKSB7CisjaWZuZGVmIEFTU0VSVF9ESVNB
QkxFRAorICAgICAgICAgICAgQ1NTVmFsdWVMaXN0KiB2YWx1ZUxpc3QgPSBzdGF0aWNfY2FzdDxD
U1NQcmltaXRpdmVWYWx1ZSo+KHZhbHVlKTsKKyAgICAgICAgICAgIEFTU0VSVCh2YWx1ZUxpc3Qt
Pmxlbmd0aCgpID09IDIpOworICAgICAgICAgICAgQVNTRVJUKHZhbHVlTGlzdC0+aXRlbSgwKS0+
aXNQcmltaXRpdmVWYWx1ZSgpKTsKKyAgICAgICAgICAgIEFTU0VSVCh2YWx1ZUxpc3QtPml0ZW0o
MSktPmlzUHJpbWl0aXZlVmFsdWUoKSk7CisgICAgICAgICAgICBFVW5pY29kZUJpZGkgZmlyc3RW
YWx1ZSA9IHN0YXRpY19jYXN0PEVVbmljb2RlQmlkaT4oKnN0YXRpY19jYXN0PENTU1ByaW1pdGl2
ZVZhbHVlKj4odmFsdWVMaXN0LT5pdGVtKDApKSk7CisgICAgICAgICAgICBFVW5pY29kZUJpZGkg
c2Vjb25kVmFsdWUgPSBzdGF0aWNfY2FzdDxFVW5pY29kZUJpZGk+KCpzdGF0aWNfY2FzdDxDU1NQ
cmltaXRpdmVWYWx1ZSo+KHZhbHVlTGlzdC0+aXRlbSgxKSkpOworICAgICAgICAgICAgQVNTRVJU
KChmaXJzdFZhbHVlID09IE92ZXJyaWRlICYmIHNlY29uZFZhbHVlID09IElzb2xhdGUpIHx8IChm
aXJzdFZhbHVlID09IElzb2xhdGUgJiYgc2Vjb25kVmFsdWUgPT0gT3ZlcnJpZGUpKTsKKyNlbmRp
ZgorICAgICAgICAgICAgbV9zdHlsZS0+c2V0VW5pY29kZUJpZGkoT3ZlcnJpZGVJc29sYXRlKTsK
KyAgICAgICAgfQorICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgQ1NTUHJvcGVydHlU
ZXh0VHJhbnNmb3JtOgogICAgICAgICBIQU5ETEVfSU5IRVJJVF9BTkRfSU5JVElBTF9BTkRfUFJJ
TUlUSVZFKHRleHRUcmFuc2Zvcm0sIFRleHRUcmFuc2Zvcm0pCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUGFyc2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UGFyc2VyLmNwcAkocmV2aXNpb24gMTAxMTgyKQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1Bh
cnNlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg3NSwxMyArODc1LDI1IEBACiAgICAgICAgIGVs
c2UKICAgICAgICAgICAgIHJldHVybiBwYXJzZVF1b3Rlcyhwcm9wSWQsIGltcG9ydGFudCk7CiAg
ICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ1NTUHJvcGVydHlVbmljb2RlQmlkaTogLy8gbm9ybWFs
IHwgZW1iZWQgfCBiaWRpLW92ZXJyaWRlIHwgaXNvbGF0ZSB8IHBsYWludGV4dCB8IGluaGVyaXQK
KyAgICBjYXNlIENTU1Byb3BlcnR5VW5pY29kZUJpZGk6IC8vIG5vcm1hbCB8IGVtYmVkIHwgKGJp
ZGktb3ZlcnJpZGUgfHwgaXNvbGF0ZSkgfCBwbGFpbnRleHQgfCBpbmhlcml0CiAgICAgICAgIGlm
IChpZCA9PSBDU1NWYWx1ZU5vcm1hbAogICAgICAgICAgICAgfHwgaWQgPT0gQ1NTVmFsdWVFbWJl
ZAorICAgICAgICAgICAgfHwgaWQgPT0gQ1NTVmFsdWVXZWJraXRQbGFpbnRleHQKICAgICAgICAg
ICAgIHx8IGlkID09IENTU1ZhbHVlQmlkaU92ZXJyaWRlCi0gICAgICAgICAgICB8fCBpZCA9PSBD
U1NWYWx1ZVdlYmtpdElzb2xhdGUKLSAgICAgICAgICAgIHx8IGlkID09IENTU1ZhbHVlV2Via2l0
UGxhaW50ZXh0KQorICAgICAgICAgICAgfHwgaWQgPT0gQ1NTVmFsdWVXZWJraXRJc29sYXRlKQog
ICAgICAgICAgICAgdmFsaWRQcmltaXRpdmUgPSB0cnVlOworCisgICAgICAgIGlmIChtX3ZhbHVl
TGlzdC0+c2l6ZSgpID09IDIgJiYgKGlkID09IENTU1ZhbHVlQmlkaU92ZXJyaWRlIHx8IGlkID09
IENTU1ZhbHVlV2Via2l0SXNvbGF0ZSkpIHsKKyAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxp
c3Q+IGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7CisgICAgICAg
ICAgICBsaXN0LT5hcHBlbmQocHJpbWl0aXZlVmFsdWVDYWNoZSgpLT5jcmVhdGVJZGVudGlmaWVy
VmFsdWUoaWQpKTsKKyAgICAgICAgICAgIHZhbHVlID0gbV92YWx1ZUxpc3QtPm5leHQoKTsKKyAg
ICAgICAgICAgIGlmICgodmFsdWUtPmlkID09IENTU1ZhbHVlQmlkaU92ZXJyaWRlIHx8IHZhbHVl
LT5pZCA9PSBDU1NWYWx1ZVdlYmtpdElzb2xhdGUpICYmIHZhbHVlLT5pZCAhPSBpZCkgeworICAg
ICAgICAgICAgICAgIGxpc3QtPmFwcGVuZChwcmltaXRpdmVWYWx1ZUNhY2hlKCktPmNyZWF0ZUlk
ZW50aWZpZXJWYWx1ZSh2YWx1ZS0+aWQpKTsKKyAgICAgICAgICAgICAgICB2YWxpZFByaW1pdGl2
ZSA9IGZhbHNlOworICAgICAgICAgICAgICAgIHBhcnNlZFZhbHVlID0gbGlzdC5yZWxlYXNlKCk7
CisgICAgICAgICAgICAgICAgbV92YWx1ZUxpc3QtPm5leHQoKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgQ1NTUHJvcGVydHlQb3NpdGlvbjog
ICAgICAgICAgICAgLy8gc3RhdGljIHwgcmVsYXRpdmUgfCBhYnNvbHV0ZSB8IGZpeGVkIHwgaW5o
ZXJpdApJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlv
bi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVE
ZWNsYXJhdGlvbi5jcHAJKHJldmlzaW9uIDEwMTE4MikKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NzUsNiAr
OTc1LDMxIEBACiAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlQ2FjaGUtPmNyZWF0ZVZhbHVlKGZh
bWlseS5zdHJpbmcoKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19TVFJJTkcpOwogfQogCitzdGF0
aWMgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gcmVuZGVyVW5pY29kZUJpZGlGbGFnc1RvQ1NTVmFsdWUo
RVVuaWNvZGVCaWRpIHVuaWNvZGVCaWRpLCBDU1NQcmltaXRpdmVWYWx1ZUNhY2hlKiBwcmltaXRp
dmVWYWx1ZUNhY2hlKQoreworICAgIHN3aXRjaCAodW5pY29kZUJpZGkpIHsKKyAgICBjYXNlIFVC
Tm9ybWFsOgorICAgICAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWVDYWNoZS0+Y3JlYXRlSWRlbnRp
ZmllclZhbHVlKENTU1ZhbHVlTm9ybWFsKTsKKyAgICBjYXNlIEVtYmVkOgorICAgICAgICByZXR1
cm4gcHJpbWl0aXZlVmFsdWVDYWNoZS0+Y3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlRW1i
ZWQpOworICAgIGNhc2UgUGxhaW50ZXh0OgorICAgICAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWVD
YWNoZS0+Y3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlV2Via2l0UGxhaW50ZXh0KTsKKyAg
ICBjYXNlIE92ZXJyaWRlOgorICAgICAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWVDYWNoZS0+Y3Jl
YXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlQmlkaU92ZXJyaWRlKTsKKyAgICBjYXNlIElzb2xh
dGU6CisgICAgICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZUNhY2hlLT5jcmVhdGVJZGVudGlmaWVy
VmFsdWUoQ1NTVmFsdWVXZWJraXRJc29sYXRlKTsKKyAgICBjYXNlIE92ZXJyaWRlSXNvbGF0ZToK
KyAgICAgICAgeworICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9IENTU1Zh
bHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKyAgICAgICAgICAgIGxpc3QtPmFwcGVu
ZChwcmltaXRpdmVWYWx1ZUNhY2hlLT5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVCaWRp
T3ZlcnJpZGUpKTsKKyAgICAgICAgICAgIGxpc3QtPmFwcGVuZChwcmltaXRpdmVWYWx1ZUNhY2hl
LT5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVXZWJraXRJc29sYXRlKSk7CisgICAgICAg
ICAgICByZXR1cm4gbGlzdDsKKyAgICAgICAgfQorICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKyAgICByZXR1cm4gMDsKK30KKwogc3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHJl
bmRlclRleHREZWNvcmF0aW9uRmxhZ3NUb0NTU1ZhbHVlKGludCB0ZXh0RGVjb3JhdGlvbiwgQ1NT
UHJpbWl0aXZlVmFsdWVDYWNoZSogcHJpbWl0aXZlVmFsdWVDYWNoZSkKIHsKICAgICBSZWZQdHI8
Q1NTVmFsdWVMaXN0PiBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgp
OwpAQCAtMTcxMiw3ICsxNzM3LDcgQEAKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVRvcDoKICAg
ICAgICAgICAgIHJldHVybiBnZXRQb3NpdGlvbk9mZnNldFZhbHVlKHN0eWxlLmdldCgpLCBDU1NQ
cm9wZXJ0eVRvcCwgcHJpbWl0aXZlVmFsdWVDYWNoZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVy
dHlVbmljb2RlQmlkaToKLSAgICAgICAgICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZUNhY2hlLT5j
cmVhdGVWYWx1ZShzdHlsZS0+dW5pY29kZUJpZGkoKSk7CisgICAgICAgICAgICByZXR1cm4gcmVu
ZGVyVW5pY29kZUJpZGlGbGFnc1RvQ1NTVmFsdWUoc3R5bGUtPnVuaWNvZGVCaWRpKCksIHByaW1p
dGl2ZVZhbHVlQ2FjaGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5VmVydGljYWxBbGlnbjoK
ICAgICAgICAgICAgIHN3aXRjaCAoc3R5bGUtPnZlcnRpY2FsQWxpZ24oKSkgewogICAgICAgICAg
ICAgICAgIGNhc2UgQkFTRUxJTkU6CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0
aXZlVmFsdWVNYXBwaW5ncy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
cmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgJKHJldmlzaW9uIDEwMTE4MikKKysrIFNvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIx
MTMsNyArMjExMyw3IEBACiAgICAgICAgICAgICByZXR1cm4gVFROT05FOwogICAgIH0KIH0KLQor
LyoKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1
ZShFVW5pY29kZUJpZGkgZSkKICAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogewpAQCAt
MjEzNSw3ICsyMTM1LDcgQEAKICAgICAgICAgbV92YWx1ZS5pZGVudCA9IENTU1ZhbHVlV2Via2l0
UGxhaW50ZXh0OwogICAgICAgICBicmVhazsKICAgICB9Ci19Cit9Ki8KIAogdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVVbmljb2RlQmlkaSgpIGNvbnN0CiB7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>116670</attachid>
            <date>2011-11-27 03:02:38 -0800</date>
            <delta_ts>2011-11-27 03:02:38 -0800</delta_ts>
            <desc>test case</desc>
            <filename>test-override-isolate.html</filename>
            <type>text/html</type>
            <size>1342</size>
            <attacher name="Aharon (Vladimir) Lanin">aharon</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIEhUTUw+DQo8aHRtbD48aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQt
VHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9dXRmLTgiPg0KPHRpdGxlPnRlc3Qtb3Zl
cnJpZGUtaXNvbGF0ZTwvdGl0bGU+DQo8c3R5bGU+DQogIC5vdmVycmlkZSB7DQogICAgdW5pY29k
ZS1iaWRpOiBiaWRpLW92ZXJyaWRlOw0KICB9DQogIC5pc29sYXRlIHsNCiAgICB1bmljb2RlLWJp
ZGk6IC13ZWJraXQtaXNvbGF0ZTsNCiAgICB1bmljb2RlLWJpZGk6IGlzb2xhdGU7DQogIH0NCiAg
Lm92ZXJyaWRlLWlzb2xhdGUgew0KICAgIHVuaWNvZGUtYmlkaTogb3ZlcnJpZGUgLXdlYmtpdC1p
c29sYXRlOw0KICAgIHVuaWNvZGUtYmlkaTogb3ZlcnJpZGUgaXNvbGF0ZTsNCiAgfQ0KICAuaXNv
bGF0ZS1vdmVycmlkZSB7DQogICAgdW5pY29kZS1iaWRpOiAtd2Via2l0LWlzb2xhdGUgb3ZlcnJp
ZGU7DQogICAgdW5pY29kZS1iaWRpOiBpc29sYXRlIG92ZXJyaWRlOw0KICB9DQogIC5ydGwgew0K
ICAgIGRpcmVjdGlvbjogcnRsOw0KICB9DQogIC5ib3JkZXIgew0KICAgIGJvcmRlcjogc29saWQg
dGhpbiBncmF5Ow0KICB9DQo8L3N0eWxlPg0KPC9oZWFkPjxib2R5Pg0KICA8dGFibGU+DQogICAg
PHRyPg0KICAgICAgPHRkIGNsYXNzPSJib3JkZXIiPjxzcGFuIGNsYXNzPSJpc29sYXRlIHJ0bCI+
YWJjPC9zcGFuPiAxPC90ZD4NCiAgICAgIDx0ZD5zaG91bGQgbG9vayB0aGUgc2FtZSBhczwvdGQ+
DQogICAgICA8dGQgY2xhc3M9ImJvcmRlciI+YWJjIDE8L3RkPg0KICAgIDwvdHI+DQogICAgPHRy
Pg0KICAgICAgPHRkIGNsYXNzPSJib3JkZXIiPjxzcGFuIGNsYXNzPSJvdmVycmlkZSBydGwiPmFi
Yzwvc3Bhbj4gMTwvdGQ+DQogICAgICA8dGQ+c2hvdWxkIGxvb2sgdGhlIHNhbWUgYXM8L3RkPg0K
ICAgICAgPHRkIGNsYXNzPSJib3JkZXIiPjEgY2JhPC90ZD4NCiAgICA8L3RyPg0KICAgIDx0cj4N
CiAgICAgIDx0ZCBjbGFzcz0iYm9yZGVyIj48c3BhbiBjbGFzcz0iaXNvbGF0ZS1vdmVycmlkZSBy
dGwiPmFiYzwvc3Bhbj4gMTwvdGQ+DQogICAgICA8dGQ+c2hvdWxkIGxvb2sgdGhlIHNhbWUgYXM8
L3RkPg0KICAgICAgPHRkIGNsYXNzPSJib3JkZXIiPmNiYSAxPC90ZD4NCiAgICA8L3RyPg0KICAg
IDx0cj4NCiAgICAgIDx0ZCBjbGFzcz0iYm9yZGVyIj48c3BhbiBjbGFzcz0ib3ZlcnJpZGUtaXNv
bGF0ZSBydGwiPmFiYzwvc3Bhbj4gMTwvdGQ+DQogICAgICA8dGQ+c2hvdWxkIGxvb2sgdGhlIHNh
bWUgYXM8L3RkPg0KICAgICAgPHRkIGNsYXNzPSJib3JkZXIiPmNiYSAxPC90ZD4NCiAgICA8L3Ry
Pg0KICA8L3RhYmxlPg0KPC9ib2R5PjwvaHRtbD4NCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116692</attachid>
            <date>2011-11-27 18:58:44 -0800</date>
            <delta_ts>2011-11-28 11:19:52 -0800</delta_ts>
            <desc>fixes the bug</desc>
            <filename>bug-73164-20111127185843.patch</filename>
            <type>text/plain</type>
            <size>74298</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMTIxNykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDU5IEBACisyMDExLTExLTI3ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIHVuaWNvZGUtYmlkaSBzaG91bGQg
c3VwcG9ydCBpc29sYXRlIG92ZXJyaWRlIGFuZCBvdmVycmlkZSBpc29sYXRlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MzE2NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgQ1NTIHBhcnNlciBh
bmQgQ1NTIHN0eWxlIHNlbGVjdG9yIHRvIHN1cHBvcnQgdGhlIHVuaW9uIG9mIGJpZGktb3ZlcnJp
ZGUgYW5kIGlzb2xhdGUgaW4KKyAgICAgICAgdW5pY29kZS1iaWRpIHByb3BlcnR5LiBBZGRlZCBP
dmVycmlkZUlzb2xhdGUgdG8gRVVuaWNvZGVCaWRpIGluc3RlYWQgb2YgdHVybmluZyBPdmVycmlk
ZSBhbmQgSXNvbGF0ZQorICAgICAgICBpbnRvIGJpdCBmbGFncyB0byBhdm9pZCBpbmNyZWFzaW5n
IHRoZSBudW1iZXIgb2YgYml0cyByZXF1aXJlZCB0byBzdG9yZSB0aGUgdW5pY29kZUJpZGkgZmxh
Zy4KKworICAgICAgICBBbHNvIGZpeGVkIGEgYnVnIGluIFJlbmRlckJsb2NrOjpjb25zdHJ1Y3RU
ZXh0UnVuIHRvIGFjdHVhbGx5IGNoZWNrIHdoZXRoZXIgYW4gaXNvbGF0ZWQgcnVuJ3MgZGlyZWN0
aW9uCisgICAgICAgIGlzIG92ZXJyaWRkZW4gb3Igbm90IHdoZW4gY29uc3RydWN0aW5nIG9uZS4K
KworICAgICAgICBUZXN0czogZmFzdC9jc3MvdW5pY29kZS1iaWRpLWNvbXB1dGVkLXZhbHVlLmh0
bWwKKyAgICAgICAgICAgICAgIGZhc3QvdGV4dC9iaWRpLW92ZXJyaWRlLWlzb2xhdGUuaHRtbAor
CisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpyZW5kZXJVbmljb2RlQmlkaUZsYWdzVG9DU1NWYWx1ZSk6IEFkZGVkOyBDcmVh
dGUgYSBDU1NWYWx1ZUxpc3Qgd2hlbiB1bmljb2RlLWJpZGkgaGFzIGJvdGgKKyAgICAgICAgaXNv
bGF0ZSBhbmQgYmlkaS1vdmVycmlkZSBzcGVjaWZpZWQuCisgICAgICAgIChXZWJDb3JlOjpDU1ND
b21wdXRlZFN0eWxlRGVjbGFyYXRpb246OmdldFByb3BlcnR5Q1NTVmFsdWUpOiBDYWxscyByZW5k
ZXJVbmljb2RlQmlkaUZsYWdzVG9DU1NWYWx1ZS4KKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlcjo6cGFyc2VWYWx1ZSk6IFN1cHBvcnQgcGFy
c2luZyBjb21iaW5hdGlvbnMgb2YgLXdlYmtpdC1pc29sYXRlIGFuZCBiaWRpLW92ZXJyaWRlOwor
ICAgICAgICBDcmVhdGUgYSBDU1NWYWx1ZUxpc3QgaW4gc3VjaCBjYXNlcy4KKyAgICAgICAgKiBj
c3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAgICAqIGNzcy9DU1NTdHlsZVNl
bGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJv
cGVydHkpOiBTdXBwb3J0IGNvbWJpbmF0aW9ucyBvZiAtd2Via2l0LWlzb2xhdGUgYW5kIGJpZGkt
b3ZlcnJpZGUuCisgICAgICAgIFNldCB0aGUgdW5pY29kZUJpZGkgZmxhZyB0byBPdmVycmlkZUlz
b2xhdGUgaW4gc3VjaCBjYXNlcy4KKyAgICAgICAgKiBodG1sL2NhbnZhcy9DYW52YXNSZW5kZXJp
bmdDb250ZXh0MkQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FudmFzUmVuZGVyaW5nQ29udGV4
dDJEOjpkcmF3VGV4dEludGVybmFsKToKKyAgICAgICAgKiBwbGF0Zm9ybS90ZXh0L1VuaWNvZGVC
aWRpLmg6IEFkZGVkIE92ZXJyaWRlSXNvbGF0ZS4gV2UgZG9uJ3QgdXNlIGJpdCBmbGFncyB0byBh
dm9pZCBpbmNyZWFzaW5nIHRoZQorICAgICAgICBudW1iZXIgb2YgYml0cyByZXF1aXJlZCB0byBz
dG9yZSBmbGFncyBlc3BlY2lhbGx5IGJlY2F1c2UgaXNvbGF0ZSBhbmQgYmlkaS1vdmVycmlkZSBh
cmUgb25seSB2YWx1ZXMKKyAgICAgICAgdGhhdCBjYW4gYmUgY29tYmluZWQuCisgICAgICAgIChX
ZWJDb3JlOjppc092ZXJyaWRlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjppc0lzb2xhdGUp
OiBBZGRlZC4KKyAgICAgICAgKiByZW5kZXJpbmcvSW5saW5lSXRlcmF0b3IuaDoKKyAgICAgICAg
KFdlYkNvcmU6Om5vdGlmeU9ic2VydmVyRW50ZXJlZE9iamVjdCk6CisgICAgICAgIChXZWJDb3Jl
Ojpub3RpZnlPYnNlcnZlcldpbGxFeGl0T2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OmlzSXNv
bGF0ZWRJbmxpbmUpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9jay5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6Y29uc3RydWN0VGV4dFJ1bik6CisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpz
dGF0dXNXaXRoRGlyZWN0aW9uKTogVGFrZXMgaXNPdmVycmlkZTsgd2UgdXNlZCB0byBhc3N1bWUg
aXQncyBhbHdheXMgZmFsc2UuCisgICAgICAgIChXZWJDb3JlOjpjb25zdHJ1Y3RCaWRpUnVucyk6
IEluc3RhbnRpYXRlIGlzb2xhdGVkUmVzb2x2ZXIgd2l0aCBhIHByb3BlciB2YWx1ZSBvZiBpc092
ZXJyaWRlLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmxheW91dFJ1bnNBbmRGbG9h
dHNJblJhbmdlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpkZXRlcm1pbmVTdGFy
dFBvc2l0aW9uKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJMaXN0Qm94OjpwYWludEl0ZW1Gb3JlZ3JvdW5kKToKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTWVudUxpc3Q6Oml0ZW1TdHlsZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNZW51TGlz
dDo6bWVudVN0eWxlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2xTaW5n
bGVMaW5lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRleHRDb250cm9sU2luZ2xlTGlu
ZTo6bWVudVN0eWxlKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3ZnL1NWR1RleHRNZXRyaWNzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN0cnVjdFRleHRSdW4pOgorCiAyMDExLTExLTI3ICBN
YXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgPGh0dHA6Ly93ZWJraXQub3Jn
L2IvNzI2NjU+IFN3aXRjaCB0byBhIG1vcmUgbW9kZXJuIGFwcHJvYWNoIHRvIHJldHJpZXZpbmcg
dGhlIE9TIG1hcmtldGluZyB2ZXJzaW9uCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29t
cHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAkocmV2aXNpb24gMTAxMTgyKQorKysg
U291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTk3NSw2ICs5NzUsMzEgQEAgc3RhdGljIFBhc3NSZWZQdHI8Q1NTUHJpbWl0
aXZlVmFsdWU+IHZhbAogICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZUNhY2hlLT5jcmVhdGVWYWx1
ZShmYW1pbHkuc3RyaW5nKCksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfU1RSSU5HKTsKIH0KIAor
c3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHJlbmRlclVuaWNvZGVCaWRpRmxhZ3NUb0NTU1Zh
bHVlKEVVbmljb2RlQmlkaSB1bmljb2RlQmlkaSwgQ1NTUHJpbWl0aXZlVmFsdWVDYWNoZSogcHJp
bWl0aXZlVmFsdWVDYWNoZSkKK3sKKyAgICBzd2l0Y2ggKHVuaWNvZGVCaWRpKSB7CisgICAgY2Fz
ZSBVQk5vcm1hbDoKKyAgICAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlQ2FjaGUtPmNyZWF0ZUlk
ZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vcm1hbCk7CisgICAgY2FzZSBFbWJlZDoKKyAgICAgICAg
cmV0dXJuIHByaW1pdGl2ZVZhbHVlQ2FjaGUtPmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1
ZUVtYmVkKTsKKyAgICBjYXNlIFBsYWludGV4dDoKKyAgICAgICAgcmV0dXJuIHByaW1pdGl2ZVZh
bHVlQ2FjaGUtPmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZVdlYmtpdFBsYWludGV4dCk7
CisgICAgY2FzZSBPdmVycmlkZToKKyAgICAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlQ2FjaGUt
PmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZUJpZGlPdmVycmlkZSk7CisgICAgY2FzZSBJ
c29sYXRlOgorICAgICAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWVDYWNoZS0+Y3JlYXRlSWRlbnRp
ZmllclZhbHVlKENTU1ZhbHVlV2Via2l0SXNvbGF0ZSk7CisgICAgY2FzZSBPdmVycmlkZUlzb2xh
dGU6CisgICAgICAgIHsKKyAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IGxpc3QgPSBD
U1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7CisgICAgICAgICAgICBsaXN0LT5h
cHBlbmQocHJpbWl0aXZlVmFsdWVDYWNoZS0+Y3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVl
QmlkaU92ZXJyaWRlKSk7CisgICAgICAgICAgICBsaXN0LT5hcHBlbmQocHJpbWl0aXZlVmFsdWVD
YWNoZS0+Y3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlV2Via2l0SXNvbGF0ZSkpOworICAg
ICAgICAgICAgcmV0dXJuIGxpc3Q7CisgICAgICAgIH0KKyAgICB9CisgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7CisgICAgcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBQYXNzUmVmUHRyPENTU1ZhbHVl
PiByZW5kZXJUZXh0RGVjb3JhdGlvbkZsYWdzVG9DU1NWYWx1ZShpbnQgdGV4dERlY29yYXRpb24s
IENTU1ByaW1pdGl2ZVZhbHVlQ2FjaGUqIHByaW1pdGl2ZVZhbHVlQ2FjaGUpCiB7CiAgICAgUmVm
UHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0
ZWQoKTsKQEAgLTE3MTIsNyArMTczNyw3IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU0NvbXB1
dGVkU3R5bGVEZWMKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVRvcDoKICAgICAgICAgICAgIHJl
dHVybiBnZXRQb3NpdGlvbk9mZnNldFZhbHVlKHN0eWxlLmdldCgpLCBDU1NQcm9wZXJ0eVRvcCwg
cHJpbWl0aXZlVmFsdWVDYWNoZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlVbmljb2RlQmlk
aToKLSAgICAgICAgICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZUNhY2hlLT5jcmVhdGVWYWx1ZShz
dHlsZS0+dW5pY29kZUJpZGkoKSk7CisgICAgICAgICAgICByZXR1cm4gcmVuZGVyVW5pY29kZUJp
ZGlGbGFnc1RvQ1NTVmFsdWUoc3R5bGUtPnVuaWNvZGVCaWRpKCksIHByaW1pdGl2ZVZhbHVlQ2Fj
aGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5VmVydGljYWxBbGlnbjoKICAgICAgICAgICAg
IHN3aXRjaCAoc3R5bGUtPnZlcnRpY2FsQWxpZ24oKSkgewogICAgICAgICAgICAgICAgIGNhc2Ug
QkFTRUxJTkU6CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAkocmV2aXNpb24gMTAxMTgy
KQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTg3NSwxMyArODc1LDMwIEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKGludCBwcm9wSWQs
IGIKICAgICAgICAgZWxzZQogICAgICAgICAgICAgcmV0dXJuIHBhcnNlUXVvdGVzKHByb3BJZCwg
aW1wb3J0YW50KTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVVuaWNvZGVC
aWRpOiAvLyBub3JtYWwgfCBlbWJlZCB8IGJpZGktb3ZlcnJpZGUgfCBpc29sYXRlIHwgcGxhaW50
ZXh0IHwgaW5oZXJpdAorICAgIGNhc2UgQ1NTUHJvcGVydHlVbmljb2RlQmlkaTogLy8gbm9ybWFs
IHwgZW1iZWQgfCAoYmlkaS1vdmVycmlkZSB8fCBpc29sYXRlKSB8IHBsYWludGV4dCB8IGluaGVy
aXQKICAgICAgICAgaWYgKGlkID09IENTU1ZhbHVlTm9ybWFsCiAgICAgICAgICAgICB8fCBpZCA9
PSBDU1NWYWx1ZUVtYmVkCi0gICAgICAgICAgICB8fCBpZCA9PSBDU1NWYWx1ZUJpZGlPdmVycmlk
ZQotICAgICAgICAgICAgfHwgaWQgPT0gQ1NTVmFsdWVXZWJraXRJc29sYXRlCiAgICAgICAgICAg
ICB8fCBpZCA9PSBDU1NWYWx1ZVdlYmtpdFBsYWludGV4dCkKICAgICAgICAgICAgIHZhbGlkUHJp
bWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBSZWZQdHI8Q1NTVmFs
dWVMaXN0PiBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOworICAg
ICAgICAgICAgYm9vbCBpc1ZhbGlkID0gdHJ1ZTsKKyAgICAgICAgICAgIHdoaWxlIChpc1ZhbGlk
ICYmIHZhbHVlKSB7CisgICAgICAgICAgICAgICAgc3dpdGNoICh2YWx1ZS0+aWQpIHsKKyAgICAg
ICAgICAgICAgICBjYXNlIENTU1ZhbHVlQmlkaU92ZXJyaWRlOgorICAgICAgICAgICAgICAgIGNh
c2UgQ1NTVmFsdWVXZWJraXRJc29sYXRlOgorICAgICAgICAgICAgICAgICAgICBsaXN0LT5hcHBl
bmQocHJpbWl0aXZlVmFsdWVDYWNoZSgpLT5jcmVhdGVJZGVudGlmaWVyVmFsdWUodmFsdWUtPmlk
KSk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICAgICAgICAgIGlzVmFsaWQgPSBmYWxzZTsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgdmFsdWUgPSBtX3ZhbHVlTGlzdC0+bmV4dCgpOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgaWYgKGxpc3QtPmxlbmd0aCgpICYmIGlzVmFsaWQpIHsKKyAgICAg
ICAgICAgICAgICBwYXJzZWRWYWx1ZSA9IGxpc3QucmVsZWFzZSgpOworICAgICAgICAgICAgICAg
IG1fdmFsdWVMaXN0LT5uZXh0KCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KICAgICAgICAg
YnJlYWs7CiAKICAgICBjYXNlIENTU1Byb3BlcnR5UG9zaXRpb246ICAgICAgICAgICAgIC8vIHN0
YXRpYyB8IHJlbGF0aXZlIHwgYWJzb2x1dGUgfCBmaXhlZCB8IGluaGVyaXQKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAkocmV2aXNpb24g
MTAxMTgyKQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aAkod29ya2luZyBjb3B5KQpAQCAtMjExNCwyOSArMjExNCw2IEBAIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGUKICAgICB9CiB9CiAKLXRlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFVW5pY29kZUJpZGkgZSkKLSAgICA6
IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQotewotICAgIG1fcHJpbWl0aXZlVW5pdFR5cGUgPSBD
U1NfSURFTlQ7Ci0gICAgc3dpdGNoIChlKSB7Ci0gICAgY2FzZSBVQk5vcm1hbDoKLSAgICAgICAg
bV92YWx1ZS5pZGVudCA9IENTU1ZhbHVlTm9ybWFsOwotICAgICAgICBicmVhazsKLSAgICBjYXNl
IEVtYmVkOgotICAgICAgICBtX3ZhbHVlLmlkZW50ID0gQ1NTVmFsdWVFbWJlZDsKLSAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBPdmVycmlkZToKLSAgICAgICAgbV92YWx1ZS5pZGVudCA9IENTU1Zh
bHVlQmlkaU92ZXJyaWRlOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIElzb2xhdGU6Ci0gICAg
ICAgIG1fdmFsdWUuaWRlbnQgPSBDU1NWYWx1ZVdlYmtpdElzb2xhdGU7Ci0gICAgICAgIGJyZWFr
OwotICAgIGNhc2UgUGxhaW50ZXh0OgotICAgICAgICBtX3ZhbHVlLmlkZW50ID0gQ1NTVmFsdWVX
ZWJraXRQbGFpbnRleHQ7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLX0KLQogdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVVbmljb2RlQmlkaSgpIGNvbnN0CiB7
CiAgICAgc3dpdGNoIChtX3ZhbHVlLmlkZW50KSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTU3R5bGVTZWxlY3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NT
U1N0eWxlU2VsZWN0b3IuY3BwCShyZXZpc2lvbiAxMDExODIpCisrKyBTb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1OTksNyArMjU5OSwy
MyBAQCB2b2lkIENTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkoaW50CiAgICAgICAgIEhB
TkRMRV9JTkhFUklUX0FORF9JTklUSUFMX0FORF9QUklNSVRJVkUodGFibGVMYXlvdXQsIFRhYmxl
TGF5b3V0KQogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVVuaWNvZGVCaWRp
OgorICAgIHsKICAgICAgICAgSEFORExFX0lOSEVSSVRfQU5EX0lOSVRJQUxfQU5EX1BSSU1JVElW
RSh1bmljb2RlQmlkaSwgVW5pY29kZUJpZGkpCisgICAgICAgIGlmICh2YWx1ZS0+aXNWYWx1ZUxp
c3QoKSkgeworICAgICAgICAgICAgRVVuaWNvZGVCaWRpIHJlbmRlcmVyVW5pY29kZUJpZGkgPSBS
ZW5kZXJTdHlsZTo6aW5pdGlhbFVuaWNvZGVCaWRpKCk7CisgICAgICAgICAgICBmb3IgKENTU1Zh
bHVlTGlzdEl0ZXJhdG9yIGkgPSB2YWx1ZTsgaS5oYXNNb3JlKCk7IGkuYWR2YW5jZSgpKSB7Cisg
ICAgICAgICAgICAgICAgQ1NTVmFsdWUqIGl0ZW0gPSBpLnZhbHVlKCk7CisgICAgICAgICAgICAg
ICAgQVNTRVJUKGl0ZW0tPmlzUHJpbWl0aXZlVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgRVVu
aWNvZGVCaWRpIGN1cnJlbnRWYWx1ZSA9ICpzdGF0aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSo+
KGl0ZW0pOworICAgICAgICAgICAgICAgIEFTU0VSVChjdXJyZW50VmFsdWUgPT0gT3ZlcnJpZGUg
fHwgY3VycmVudFZhbHVlID09IElzb2xhdGUpOworICAgICAgICAgICAgICAgIGlmIChjdXJyZW50
VmFsdWUgIT0gcmVuZGVyZXJVbmljb2RlQmlkaSAmJiByZW5kZXJlclVuaWNvZGVCaWRpICE9IFJl
bmRlclN0eWxlOjppbml0aWFsVW5pY29kZUJpZGkoKSkKKyAgICAgICAgICAgICAgICAgICAgcmVu
ZGVyZXJVbmljb2RlQmlkaSA9IE92ZXJyaWRlSXNvbGF0ZTsKKyAgICAgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyVW5pY29kZUJpZGkgPSBjdXJyZW50VmFsdWU7
CisgICAgICAgICAgICB9CisgICAgICAgICAgICBtX3N0eWxlLT5zZXRVbmljb2RlQmlkaShyZW5k
ZXJlclVuaWNvZGVCaWRpKTsKKyAgICAgICAgfQorICAgIH0KICAgICAgICAgcmV0dXJuOwogICAg
IGNhc2UgQ1NTUHJvcGVydHlUZXh0VHJhbnNmb3JtOgogICAgICAgICBIQU5ETEVfSU5IRVJJVF9B
TkRfSU5JVElBTF9BTkRfUFJJTUlUSVZFKHRleHRUcmFuc2Zvcm0sIFRleHRUcmFuc2Zvcm0pCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRl
cmluZ0NvbnRleHQyRC5jcHAJKHJldmlzaW9uIDEwMTE4MikKKysrIFNvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTIwOTYsNyArMjA5Niw3IEBAIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpkcmF3VGV4
dEkKICAgICBSZW5kZXJTdHlsZSogY29tcHV0ZWRTdHlsZSA9IGNhbnZhcygpLT5jb21wdXRlZFN0
eWxlKCk7CiAgICAgVGV4dERpcmVjdGlvbiBkaXJlY3Rpb24gPSBjb21wdXRlZFN0eWxlID8gY29t
cHV0ZWRTdHlsZS0+ZGlyZWN0aW9uKCkgOiBMVFI7CiAgICAgYm9vbCBpc1JUTCA9IGRpcmVjdGlv
biA9PSBSVEw7Ci0gICAgYm9vbCBvdmVycmlkZSA9IGNvbXB1dGVkU3R5bGUgPyBjb21wdXRlZFN0
eWxlLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRlIDogZmFsc2U7CisgICAgYm9vbCBvdmVycmlk
ZSA9IGNvbXB1dGVkU3R5bGUgPyBpc092ZXJyaWRlKGNvbXB1dGVkU3R5bGUtPnVuaWNvZGVCaWRp
KCkpIDogZmFsc2U7CiAKICAgICB1bnNpZ25lZCBsZW5ndGggPSB0ZXh0Lmxlbmd0aCgpOwogICAg
IGNvbnN0IFVDaGFyKiBzdHJpbmcgPSB0ZXh0LmNoYXJhY3RlcnMoKTsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1VuaWNvZGVCaWRpLmgJKHJldmlzaW9uIDEwMTE4MikKKysr
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaAkod29ya2luZyBjb3B5
KQpAQCAtMzEsMTEgKzMxLDE1IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGVudW0gRVVuaWNvZGVC
aWRpIHsKICAgICBVQk5vcm1hbCwKICAgICBFbWJlZCwKKyAgICBQbGFpbnRleHQsCiAgICAgT3Zl
cnJpZGUsCiAgICAgSXNvbGF0ZSwKLSAgICBQbGFpbnRleHQKKyAgICBPdmVycmlkZUlzb2xhdGUs
CiB9OwogCitpbmxpbmUgYm9vbCBpc092ZXJyaWRlKEVVbmljb2RlQmlkaSBiaWRpKSB7IHJldHVy
biBiaWRpID09IE92ZXJyaWRlIHx8IGJpZGkgPT0gT3ZlcnJpZGVJc29sYXRlOyB9CitpbmxpbmUg
Ym9vbCBpc0lzb2xhdGUoRVVuaWNvZGVCaWRpIGJpZGkpIHsgcmV0dXJuIGJpZGkgPT0gSXNvbGF0
ZSB8fCBiaWRpID09IE92ZXJyaWRlSXNvbGF0ZTsgfQorCiB9CiAKICNlbmRpZgpJbmRleDogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUl0ZXJhdG9yLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUl0ZXJhdG9yLmgJKHJldmlzaW9uIDEwMTE4MikK
KysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVJdGVyYXRvci5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xMzEsNyArMTMxLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIG5vdGlmeU9ic2VydmVy
RW50ZXJlZAogICAgICAgICAvLyBUaHVzIHdlIGlnbm9yZSBhbnkgcG9zc2libGUgZGlyPSBhdHRy
aWJ1dGUgb24gdGhlIHNwYW4uCiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgaWYgKHVuaWNv
ZGVCaWRpID09IElzb2xhdGUpIHsKKyAgICBpZiAoaXNJc29sYXRlKHVuaWNvZGVCaWRpKSkgewog
ICAgICAgICBvYnNlcnZlci0+ZW50ZXJJc29sYXRlKCk7CiAgICAgICAgIC8vIEVtYmVkZGluZy9P
dmVycmlkZSBjaGFyYWN0ZXJzIGltcGxpZWQgYnkgZGlyPSBhcmUgaGFuZGxlZCB3aGVuCiAgICAg
ICAgIC8vIHdlIHByb2Nlc3MgdGhlIGlzb2xhdGVkIHNwYW4sIG5vdCB3aGVuIGxheWluZyBvdXQg
dGhlICJwYXJlbnQiIHJ1bi4KQEAgLTE1MSw3ICsxNTEsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQg
bm90aWZ5T2JzZXJ2ZXJXaWxsRXhpCiAgICAgRVVuaWNvZGVCaWRpIHVuaWNvZGVCaWRpID0gb2Jq
ZWN0LT5zdHlsZSgpLT51bmljb2RlQmlkaSgpOwogICAgIGlmICh1bmljb2RlQmlkaSA9PSBVQk5v
cm1hbCkKICAgICAgICAgcmV0dXJuOyAvLyBOb3RoaW5nIHRvIGRvIGZvciB1bmljb2RlLWJpZGk6
IG5vcm1hbAotICAgIGlmICh1bmljb2RlQmlkaSA9PSBJc29sYXRlKSB7CisgICAgaWYgKGlzSXNv
bGF0ZSh1bmljb2RlQmlkaSkpIHsKICAgICAgICAgb2JzZXJ2ZXItPmV4aXRJc29sYXRlKCk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CkBAIC0zOTAsNyArMzkwLDcgQEAgaW5saW5lIHZvaWQgSW5s
aW5lQmlkaVJlc29sdmVyOjppbmNyZW1lbgogc3RhdGljIGlubGluZSBib29sIGlzSXNvbGF0ZWRJ
bmxpbmUoUmVuZGVyT2JqZWN0KiBvYmplY3QpCiB7CiAgICAgQVNTRVJUKG9iamVjdCk7Ci0gICAg
cmV0dXJuIG9iamVjdC0+aXNSZW5kZXJJbmxpbmUoKSAmJiBvYmplY3QtPnN0eWxlKCktPnVuaWNv
ZGVCaWRpKCkgPT0gSXNvbGF0ZTsKKyAgICByZXR1cm4gb2JqZWN0LT5pc1JlbmRlcklubGluZSgp
ICYmIGlzSXNvbGF0ZShvYmplY3QtPnN0eWxlKCktPnVuaWNvZGVCaWRpKCkpOwogfQogCiBzdGF0
aWMgaW5saW5lIFJlbmRlck9iamVjdCogY29udGFpbmluZ0lzb2xhdGUoUmVuZGVyT2JqZWN0KiBv
YmplY3QsIFJlbmRlck9iamVjdCogcm9vdCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9jay5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJsb2NrLmNwcAkocmV2aXNpb24gMTAxMTgyKQorKysgU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjk2MCw3ICs2OTYwLDcg
QEAgVGV4dFJ1biBSZW5kZXJCbG9jazo6Y29uc3RydWN0VGV4dFJ1bihSZQogICAgICAgICBpZiAo
ZmxhZ3MgJiBSZXNwZWN0RGlyZWN0aW9uKQogICAgICAgICAgICAgdGV4dERpcmVjdGlvbiA9IHN0
eWxlLT5kaXJlY3Rpb24oKTsKICAgICAgICAgaWYgKGZsYWdzICYgUmVzcGVjdERpcmVjdGlvbk92
ZXJyaWRlKQotICAgICAgICAgICAgZGlyZWN0aW9uYWxPdmVycmlkZSB8PSBzdHlsZS0+dW5pY29k
ZUJpZGkoKSA9PSBPdmVycmlkZTsKKyAgICAgICAgICAgIGRpcmVjdGlvbmFsT3ZlcnJpZGUgfD0g
aXNPdmVycmlkZShzdHlsZS0+dW5pY29kZUJpZGkoKSk7CiAgICAgfQogCiAgICAgVGV4dFJ1biBy
dW4oY2hhcmFjdGVycywgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgZXhwYW5zaW9uLCB0ZXh0RGlyZWN0
aW9uLCBkaXJlY3Rpb25hbE92ZXJyaWRlKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwCShyZXZpc2lvbiAxMDExODIpCisr
KyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtOTM0LDEwICs5MzQsMTAgQEAgdm9pZCBSZW5kZXJCbG9jazo6YXBwZW5k
RmxvYXRpbmdPYmplY3RUbwogfQogCiAvLyBGSVhNRTogVGhpcyBzaG91bGQgYmUgYSBCaWRpU3Rh
dHVzIGNvbnN0cnVjdG9yIG9yIGNyZWF0ZSBtZXRob2QuCi1zdGF0aWMgaW5saW5lIEJpZGlTdGF0
dXMgc3RhdHVzV2l0aERpcmVjdGlvbihUZXh0RGlyZWN0aW9uIHRleHREaXJlY3Rpb24pCitzdGF0
aWMgaW5saW5lIEJpZGlTdGF0dXMgc3RhdHVzV2l0aERpcmVjdGlvbihUZXh0RGlyZWN0aW9uIHRl
eHREaXJlY3Rpb24sIGJvb2wgaXNPdmVycmlkZSkKIHsKICAgICBXVEY6OlVuaWNvZGU6OkRpcmVj
dGlvbiBkaXJlY3Rpb24gPSB0ZXh0RGlyZWN0aW9uID09IExUUiA/IExlZnRUb1JpZ2h0IDogUmln
aHRUb0xlZnQ7Ci0gICAgUmVmUHRyPEJpZGlDb250ZXh0PiBjb250ZXh0ID0gQmlkaUNvbnRleHQ6
OmNyZWF0ZSh0ZXh0RGlyZWN0aW9uID09IExUUiA/IDAgOiAxLCBkaXJlY3Rpb24sIGZhbHNlLCBG
cm9tU3R5bGVPckRPTSk7CisgICAgUmVmUHRyPEJpZGlDb250ZXh0PiBjb250ZXh0ID0gQmlkaUNv
bnRleHQ6OmNyZWF0ZSh0ZXh0RGlyZWN0aW9uID09IExUUiA/IDAgOiAxLCBkaXJlY3Rpb24sIGlz
T3ZlcnJpZGUsIEZyb21TdHlsZU9yRE9NKTsKIAogICAgIC8vIFRoaXMgY29waWVzIEJpZGlTdGF0
dXMgYW5kIG1heSBjaHVybiB0aGUgcmVmIG9uIEJpZGlDb250ZXh0LiBJIGRvdWJ0IGl0IG1hdHRl
cnMuCiAgICAgcmV0dXJuIEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBkaXJlY3Rpb24sIGRpcmVjdGlv
biwgY29udGV4dC5yZWxlYXNlKCkpOwpAQCAtOTU5LDcgKzk1OSw3IEBAIHN0YXRpYyBpbmxpbmUg
dm9pZCBjb25zdHJ1Y3RCaWRpUnVucyhJbmwKICAgICAgICAgLy8gT25seSBpbmxpbmVzIG1ha2Ug
c2Vuc2Ugd2l0aCB1bmljb2RlLWJpZGk6IGlzb2xhdGUgKGJsb2NrcyBhcmUgYWxyZWFkeSBpc29s
YXRlZCkuCiAgICAgICAgIFJlbmRlcklubGluZSogaXNvbGF0ZWRTcGFuID0gdG9SZW5kZXJJbmxp
bmUoaXNvbGF0ZWRSdW4tPm9iamVjdCgpKTsKICAgICAgICAgSW5saW5lQmlkaVJlc29sdmVyIGlz
b2xhdGVkUmVzb2x2ZXI7Ci0gICAgICAgIGlzb2xhdGVkUmVzb2x2ZXIuc2V0U3RhdHVzKHN0YXR1
c1dpdGhEaXJlY3Rpb24oaXNvbGF0ZWRTcGFuLT5zdHlsZSgpLT5kaXJlY3Rpb24oKSkpOworICAg
ICAgICBpc29sYXRlZFJlc29sdmVyLnNldFN0YXR1cyhzdGF0dXNXaXRoRGlyZWN0aW9uKGlzb2xh
dGVkU3Bhbi0+c3R5bGUoKS0+ZGlyZWN0aW9uKCksIGlzT3ZlcnJpZGUoaXNvbGF0ZWRTcGFuLT5z
dHlsZSgpLT51bmljb2RlQmlkaSgpKSkpOwogCiAgICAgICAgIC8vIEZJWE1FOiBUaGUgZmFjdCB0
aGF0IHdlIGhhdmUgdG8gY29uc3RydWN0IGFuIEl0ZXJhdG9yIGhlcmUKICAgICAgICAgLy8gY3Vy
cmVudGx5IHByZXZlbnRzIHRoaXMgY29kZSBmcm9tIG1vdmluZyBpbnRvIEJpZGlSZXNvbHZlci4K
QEAgLTEyNDAsNyArMTI0MCw3IEBAIHZvaWQgUmVuZGVyQmxvY2s6OmxheW91dFJ1bnNBbmRGbG9h
dHNJblIKICAgICAgICAgICAgIGlmIChpc05ld1VCQVBhcmFncmFwaCAmJiBzdHlsZSgpLT51bmlj
b2RlQmlkaSgpID09IFBsYWludGV4dCAmJiAhcmVzb2x2ZXIuY29udGV4dCgpLT5wYXJlbnQoKSkg
ewogICAgICAgICAgICAgICAgIFRleHREaXJlY3Rpb24gZGlyZWN0aW9uID0gc3R5bGUoKS0+ZGly
ZWN0aW9uKCk7CiAgICAgICAgICAgICAgICAgZGV0ZXJtaW5lUGFyYWdyYXBoRGlyZWN0aW9uKGRp
cmVjdGlvbiwgcmVzb2x2ZXIucG9zaXRpb24oKSk7Ci0gICAgICAgICAgICAgICAgcmVzb2x2ZXIu
c2V0U3RhdHVzKEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBzdHlsZSgpLT51bmljb2RlQmlkaSgpID09
IE92ZXJyaWRlKSk7CisgICAgICAgICAgICAgICAgcmVzb2x2ZXIuc2V0U3RhdHVzKEJpZGlTdGF0
dXMoZGlyZWN0aW9uLCBpc092ZXJyaWRlKHN0eWxlKCktPnVuaWNvZGVCaWRpKCkpKSk7CiAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAvLyBGSVhNRTogVGhpcyBvd25lcnNoaXAgaXMgcmV2ZXJz
ZWQuIFdlIHNob3VsZCBvd24gdGhlIEJpZGlSdW5MaXN0IGFuZCBwYXNzIGl0IHRvIGNyZWF0ZUJp
ZGlSdW5zRm9yTGluZS4KICAgICAgICAgICAgIEJpZGlSdW5MaXN0PEJpZGlSdW4+JiBiaWRpUnVu
cyA9IHJlc29sdmVyLnJ1bnMoKTsKQEAgLTE2NDcsNyArMTY0Nyw3IEBAIFJvb3RJbmxpbmVCb3gq
IFJlbmRlckJsb2NrOjpkZXRlcm1pbmVTdGEKICAgICAgICAgICAgIC8vIEZJWE1FOiBXaHkgZG9l
cyAidW5pY29kZS1iaWRpOiBwbGFpbnRleHQiIGJpZGlGaXJzdEluY2x1ZGluZ0VtcHR5SW5saW5l
cyB3aGVuIGFsbCBvdGhlciBsaW5lIGxheW91dCBjb2RlIHVzZXMgYmlkaUZpcnN0U2tpcHBpbmdF
bXB0eUlubGluZXM/CiAgICAgICAgICAgICBkZXRlcm1pbmVQYXJhZ3JhcGhEaXJlY3Rpb24oZGly
ZWN0aW9uLCBJbmxpbmVJdGVyYXRvcih0aGlzLCBiaWRpRmlyc3RJbmNsdWRpbmdFbXB0eUlubGlu
ZXModGhpcyksIDApKTsKICAgICAgICAgfQotICAgICAgICByZXNvbHZlci5zZXRTdGF0dXMoQmlk
aVN0YXR1cyhkaXJlY3Rpb24sIHN0eWxlKCktPnVuaWNvZGVCaWRpKCkgPT0gT3ZlcnJpZGUpKTsK
KyAgICAgICAgcmVzb2x2ZXIuc2V0U3RhdHVzKEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBpc092ZXJy
aWRlKHN0eWxlKCktPnVuaWNvZGVCaWRpKCkpKSk7CiAgICAgICAgIHJlc29sdmVyLnNldFBvc2l0
aW9uKElubGluZUl0ZXJhdG9yKHRoaXMsIGJpZGlGaXJzdFNraXBwaW5nRW1wdHlJbmxpbmVzKHRo
aXMsICZyZXNvbHZlciksIDApKTsKICAgICB9CiAgICAgcmV0dXJuIGN1cnI7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwCShyZXZpc2lvbiAxMDExODIp
CisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTQwNyw3ICs0MDcsNyBAQCB2b2lkIFJlbmRlckxpc3RCb3g6OnBhaW50SXRlbUZv
cmVncm91bmQoCiAKICAgICB1bnNpZ25lZCBsZW5ndGggPSBpdGVtVGV4dC5sZW5ndGgoKTsKICAg
ICBjb25zdCBVQ2hhciogc3RyaW5nID0gaXRlbVRleHQuY2hhcmFjdGVycygpOwotICAgIFRleHRS
dW4gdGV4dFJ1bihzdHJpbmcsIGxlbmd0aCwgZmFsc2UsIDAsIDAsIFRleHRSdW46OkFsbG93VHJh
aWxpbmdFeHBhbnNpb24sIGl0ZW1TdHlsZS0+ZGlyZWN0aW9uKCksIGl0ZW1TdHlsZS0+dW5pY29k
ZUJpZGkoKSA9PSBPdmVycmlkZSwgVGV4dFJ1bjo6Tm9Sb3VuZGluZyk7CisgICAgVGV4dFJ1biB0
ZXh0UnVuKHN0cmluZywgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgVGV4dFJ1bjo6QWxsb3dUcmFpbGlu
Z0V4cGFuc2lvbiwgaXRlbVN0eWxlLT5kaXJlY3Rpb24oKSwgaXNPdmVycmlkZShpdGVtU3R5bGUt
PnVuaWNvZGVCaWRpKCkpLCBUZXh0UnVuOjpOb1JvdW5kaW5nKTsKICAgICBGb250IGl0ZW1Gb250
ID0gc3R5bGUoKS0+Zm9udCgpOwogICAgIExheW91dFJlY3QgciA9IGl0ZW1Cb3VuZGluZ0JveFJl
Y3QocGFpbnRPZmZzZXQsIGxpc3RJbmRleCk7CiAgICAgci5tb3ZlKGl0ZW1PZmZzZXRGb3JBbGln
bm1lbnQodGV4dFJ1biwgaXRlbVN0eWxlLCBpdGVtRm9udCwgcikpOwpJbmRleDogU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCShyZXZpc2lvbiAxMDExODIpCisr
KyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC00NDQsNyArNDQ0LDggQEAgUG9wdXBNZW51U3R5bGUgUmVuZGVyTWVudUxpc3Q6Oml0
ZW1TdHlsZQogICAgIEhUTUxFbGVtZW50KiBlbGVtZW50ID0gbGlzdEl0ZW1zW2xpc3RJbmRleF07
CiAgICAgCiAgICAgUmVuZGVyU3R5bGUqIHN0eWxlID0gZWxlbWVudC0+cmVuZGVyU3R5bGUoKSA/
IGVsZW1lbnQtPnJlbmRlclN0eWxlKCkgOiBlbGVtZW50LT5jb21wdXRlZFN0eWxlKCk7Ci0gICAg
cmV0dXJuIHN0eWxlID8gUG9wdXBNZW51U3R5bGUoc3R5bGUtPnZpc2l0ZWREZXBlbmRlbnRDb2xv
cihDU1NQcm9wZXJ0eUNvbG9yKSwgaXRlbUJhY2tncm91bmRDb2xvcihsaXN0SW5kZXgpLCBzdHls
ZS0+Zm9udCgpLCBzdHlsZS0+dmlzaWJpbGl0eSgpID09IFZJU0lCTEUsIHN0eWxlLT5kaXNwbGF5
KCkgPT0gTk9ORSwgc3R5bGUtPnRleHRJbmRlbnQoKSwgc3R5bGUtPmRpcmVjdGlvbigpLCBzdHls
ZS0+dW5pY29kZUJpZGkoKSA9PSBPdmVycmlkZSkgOiBtZW51U3R5bGUoKTsKKyAgICByZXR1cm4g
c3R5bGUgPyBQb3B1cE1lbnVTdHlsZShzdHlsZS0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1By
b3BlcnR5Q29sb3IpLCBpdGVtQmFja2dyb3VuZENvbG9yKGxpc3RJbmRleCksIHN0eWxlLT5mb250
KCksIHN0eWxlLT52aXNpYmlsaXR5KCkgPT0gVklTSUJMRSwKKyAgICAgICAgc3R5bGUtPmRpc3Bs
YXkoKSA9PSBOT05FLCBzdHlsZS0+dGV4dEluZGVudCgpLCBzdHlsZS0+ZGlyZWN0aW9uKCksIGlz
T3ZlcnJpZGUoc3R5bGUtPnVuaWNvZGVCaWRpKCkpKSA6IG1lbnVTdHlsZSgpOwogfQogCiBDb2xv
ciBSZW5kZXJNZW51TGlzdDo6aXRlbUJhY2tncm91bmRDb2xvcih1bnNpZ25lZCBsaXN0SW5kZXgp
IGNvbnN0CkBAIC00NzMsNyArNDc0LDggQEAgQ29sb3IgUmVuZGVyTWVudUxpc3Q6Oml0ZW1CYWNr
Z3JvdW5kQ29sbwogUG9wdXBNZW51U3R5bGUgUmVuZGVyTWVudUxpc3Q6Om1lbnVTdHlsZSgpIGNv
bnN0CiB7CiAgICAgUmVuZGVyU3R5bGUqIHMgPSBtX2lubmVyQmxvY2sgPyBtX2lubmVyQmxvY2st
PnN0eWxlKCkgOiBzdHlsZSgpOwotICAgIHJldHVybiBQb3B1cE1lbnVTdHlsZShzLT52aXNpdGVk
RGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlDb2xvciksIHMtPnZpc2l0ZWREZXBlbmRlbnRDb2xv
cihDU1NQcm9wZXJ0eUJhY2tncm91bmRDb2xvciksIHMtPmZvbnQoKSwgcy0+dmlzaWJpbGl0eSgp
ID09IFZJU0lCTEUsIHMtPmRpc3BsYXkoKSA9PSBOT05FLCBzLT50ZXh0SW5kZW50KCksIHN0eWxl
KCktPmRpcmVjdGlvbigpLCBzdHlsZSgpLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRlKTsKKyAg
ICByZXR1cm4gUG9wdXBNZW51U3R5bGUocy0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3Bl
cnR5Q29sb3IpLCBzLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5k
Q29sb3IpLCBzLT5mb250KCksIHMtPnZpc2liaWxpdHkoKSA9PSBWSVNJQkxFLAorICAgICAgICBz
LT5kaXNwbGF5KCkgPT0gTk9ORSwgcy0+dGV4dEluZGVudCgpLCBzdHlsZSgpLT5kaXJlY3Rpb24o
KSwgaXNPdmVycmlkZShzdHlsZSgpLT51bmljb2RlQmlkaSgpKSk7CiB9CiAKIEhvc3RXaW5kb3cq
IFJlbmRlck1lbnVMaXN0Ojpob3N0V2luZG93KCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuY3Bw
CShyZXZpc2lvbiAxMDExODIpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4
dENvbnRyb2xTaW5nbGVMaW5lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjEwLDcgKzYxMCw4IEBA
IFBvcHVwTWVudVN0eWxlIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGkKIAogUG9wdXBNZW51U3R5
bGUgUmVuZGVyVGV4dENvbnRyb2xTaW5nbGVMaW5lOjptZW51U3R5bGUoKSBjb25zdAogewotICAg
IHJldHVybiBQb3B1cE1lbnVTdHlsZShzdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NT
UHJvcGVydHlDb2xvciksIHN0eWxlKCktPnZpc2l0ZWREZXBlbmRlbnRDb2xvcihDU1NQcm9wZXJ0
eUJhY2tncm91bmRDb2xvciksIHN0eWxlKCktPmZvbnQoKSwgc3R5bGUoKS0+dmlzaWJpbGl0eSgp
ID09IFZJU0lCTEUsIHN0eWxlKCktPmRpc3BsYXkoKSA9PSBOT05FLCBzdHlsZSgpLT50ZXh0SW5k
ZW50KCksIHN0eWxlKCktPmRpcmVjdGlvbigpLCBzdHlsZSgpLT51bmljb2RlQmlkaSgpID09IE92
ZXJyaWRlKTsKKyAgICByZXR1cm4gUG9wdXBNZW51U3R5bGUoc3R5bGUoKS0+dmlzaXRlZERlcGVu
ZGVudENvbG9yKENTU1Byb3BlcnR5Q29sb3IpLCBzdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29s
b3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpLCBzdHlsZSgpLT5mb250KCksIHN0eWxlKCkt
PnZpc2liaWxpdHkoKSA9PSBWSVNJQkxFLAorICAgICAgICBzdHlsZSgpLT5kaXNwbGF5KCkgPT0g
Tk9ORSwgc3R5bGUoKS0+dGV4dEluZGVudCgpLCBzdHlsZSgpLT5kaXJlY3Rpb24oKSwgaXNPdmVy
cmlkZShzdHlsZSgpLT51bmljb2RlQmlkaSgpKSk7CiB9CiAKIGludCBSZW5kZXJUZXh0Q29udHJv
bFNpbmdsZUxpbmU6OmNsaWVudEluc2V0TGVmdCgpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3ZnL1NWR1RleHRNZXRyaWNzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1RleHRNZXRyaWNzLmNwcAkocmV2aXNpb24gMTAxMTgy
KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdUZXh0TWV0cmljcy5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTgyLDcgKzgyLDcgQEAgc3RhdGljIFRleHRSdW4gY29uc3RydWN0VGV4
dFJ1bihSZW5kZXJTVgogICAgICAgICAgICAgICAgICwgMCAvKiBwYWRkaW5nLCBvbmx5IHJlbGV2
YW50IGZvciBqdXN0aWZpZWQgdGV4dCwgbm90IHJlbGV2YW50IGZvciBTVkcgKi8KICAgICAgICAg
ICAgICAgICAsIFRleHRSdW46OkFsbG93VHJhaWxpbmdFeHBhbnNpb24KICAgICAgICAgICAgICAg
ICAsIHN0eWxlLT5kaXJlY3Rpb24oKQotICAgICAgICAgICAgICAgICwgc3R5bGUtPnVuaWNvZGVC
aWRpKCkgPT0gT3ZlcnJpZGUgLyogZGlyZWN0aW9uYWxPdmVycmlkZSAqLyk7CisgICAgICAgICAg
ICAgICAgLCBpc092ZXJyaWRlKHN0eWxlLT51bmljb2RlQmlkaSgpKSAvKiBkaXJlY3Rpb25hbE92
ZXJyaWRlICovKTsKIAogICAgIGlmICh0ZXh0UnVuTmVlZHNSZW5kZXJpbmdDb250ZXh0KHN0eWxl
LT5mb250KCkpKQogICAgICAgICBydW4uc2V0UmVuZGVyaW5nQ29udGV4dChTVkdUZXh0UnVuUmVu
ZGVyaW5nQ29udGV4dDo6Y3JlYXRlKHRleHQpKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMTIxNykK
KysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBA
CisyMDExLTExLTI3ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAg
IHVuaWNvZGUtYmlkaSBzaG91bGQgc3VwcG9ydCBpc29sYXRlIG92ZXJyaWRlIGFuZCBvdmVycmlk
ZSBpc29sYXRlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD03MzE2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZGVkIGEgdGVzdCBmb3IgcmV0cmlldmluZyBjb21wdXRlZCB2YWx1ZSBvZiB1bmljb2RlLWJp
ZGkgcHJvcGVydHkKKyAgICAgICAgYW5kIGFsc28gYWRkZWQgYSB0ZXN0IHRvIHJlbmRlciAidW5p
Y29kZS1iaWRpOiAtd2Via2l0LWlzb2xhdGUgYmlkaS1vdmVycmlkZSIuCisKKyAgICAgICAgKiBm
YXN0L2Nzcy91bmljb2RlLWJpZGktY29tcHV0ZWQtdmFsdWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2Nzcy91bmljb2RlLWJpZGktY29tcHV0ZWQtdmFsdWUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC90ZXh0L2JpZGktb3ZlcnJpZGUtaXNvbGF0ZS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC90ZXh0L2JpZGktb3ZlcnJpZGUtaXNvbGF0
ZS1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L3RleHQv
YmlkaS1vdmVycmlkZS1pc29sYXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTEtMTEtMjcg
IE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbW92
ZSBhIHRlc3QgYmFzZWxpbmUgdGhhdCBkb2VzIG5vdCBkaWZmZXIgb24gR1RLKyBub3cgdGhhdApJ
bmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvdW5pY29kZS1iaWRpLWNvbXB1dGVkLXZhbHVlLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy91bmljb2RlLWJp
ZGktY29tcHV0ZWQtdmFsdWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvZmFzdC9jc3MvdW5pY29kZS1iaWRpLWNvbXB1dGVkLXZhbHVlLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwxNyBAQAorVGhpcyB0ZXN0cyB0aGUgY29tcHV0ZWQgdmFsdWUg
b2YgdW5pY29kZS1iaWRpIHByb3BlcnR5LgorCitQQVNTIHN0eWxlT2YoInNwYW4iLCB7fSkudW5p
Y29kZUJpZGkgaXMgIm5vcm1hbCIKK1BBU1Mgc3R5bGVPZigic3BhbiIsIHsic3R5bGUiOiJ1bmlj
b2RlLWJpZGk6IGVtYmVkOyJ9KS51bmljb2RlQmlkaSBpcyAiZW1iZWQiCitQQVNTIHN0eWxlT2Yo
InNwYW4iLCB7InN0eWxlIjoidW5pY29kZS1iaWRpOiAtd2Via2l0LWlzb2xhdGU7In0pLnVuaWNv
ZGVCaWRpIGlzICItd2Via2l0LWlzb2xhdGUiCitQQVNTIHN0eWxlT2YoInNwYW4iLCB7InN0eWxl
IjoidW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlOyJ9KS51bmljb2RlQmlkaSBpcyAiYmlkaS1v
dmVycmlkZSIKK1BBU1Mgc3R5bGVPZigic3BhbiIsIHsic3R5bGUiOiJ1bmljb2RlLWJpZGk6IC13
ZWJraXQtcGxhaW50ZXh0OyJ9KS51bmljb2RlQmlkaSBpcyAiLXdlYmtpdC1wbGFpbnRleHQiCitQ
QVNTIHN0eWxlT2YoInNwYW4iLCB7InN0eWxlIjoidW5pY29kZS1iaWRpOiBiYWQtdmFsdWU7In0p
LnVuaWNvZGVCaWRpIGlzICJub3JtYWwiCitQQVNTIHN0eWxlT2YoInNwYW4iLCB7InN0eWxlIjoi
dW5pY29kZS1iaWRpOiBlbWJlZCBlbWJlZDsifSkudW5pY29kZUJpZGkgaXMgIm5vcm1hbCIKK1BB
U1Mgc3R5bGVPZigic3BhbiIsIHsic3R5bGUiOiJ1bmljb2RlLWJpZGk6IGVtYmVkIC13ZWJraXQt
cGxhaW4tdGV4dDsifSkudW5pY29kZUJpZGkgaXMgIm5vcm1hbCIKK1BBU1Mgc3R5bGVPZigic3Bh
biIsIHsic3R5bGUiOiJ1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGUgLXdlYmtpdC1pc29sYXRl
OyJ9KS51bmljb2RlQmlkaSBpcyAiYmlkaS1vdmVycmlkZSAtd2Via2l0LWlzb2xhdGUiCitQQVNT
IHN0eWxlT2YoInNwYW4iLCB7InN0eWxlIjoidW5pY29kZS1iaWRpOiAtd2Via2l0LWlzb2xhdGUg
YmlkaS1vdmVycmlkZTsifSkudW5pY29kZUJpZGkgaXMgImJpZGktb3ZlcnJpZGUgLXdlYmtpdC1p
c29sYXRlIgorUEFTUyBzdHlsZU9mKCJzcGFuIiwgeyJzdHlsZSI6InVuaWNvZGUtYmlkaTogYmlk
aS1vdmVycmlkZSAtd2Via2l0LWlzb2xhdGUgYmlkaS1vdmVycmlkZTsifSkudW5pY29kZUJpZGkg
aXMgImJpZGktb3ZlcnJpZGUgLXdlYmtpdC1pc29sYXRlIgorUEFTUyBzdHlsZU9mKCJzcGFuIiwg
eyJzdHlsZSI6InVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZSAtd2Via2l0LWlzb2xhdGUgLXdl
YmtpdC1pc29sYXRlOyJ9KS51bmljb2RlQmlkaSBpcyAiYmlkaS1vdmVycmlkZSAtd2Via2l0LWlz
b2xhdGUiCitQQVNTIHN0eWxlT2YoInNwYW4iLCB7InN0eWxlIjoidW5pY29kZS1iaWRpOiBiaWRp
LW92ZXJyaWRlIGJhZC12YWx1ZTsifSkudW5pY29kZUJpZGkgaXMgIm5vcm1hbCIKK1BBU1Mgc3R5
bGVPZigic3BhbiIsIHsic3R5bGUiOiJ1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGUgZW1iZWQ7
In0pLnVuaWNvZGVCaWRpIGlzICJub3JtYWwiCisKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3Nz
L3VuaWNvZGUtYmlkaS1jb21wdXRlZC12YWx1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvY3NzL3VuaWNvZGUtYmlkaS1jb21wdXRlZC12YWx1ZS5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9jc3MvdW5pY29kZS1iaWRpLWNvbXB1dGVkLXZhbHVlLmh0
bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDMgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj5UaGlzIHRlc3RzIHRoZSBjb21wdXRlZCB2
YWx1ZSBvZiB1bmljb2RlLWJpZGkgcHJvcGVydHkuPC9wPgorPGRpdiBpZD0iY29udGFpbmVyIj48
L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKwordmFyIGNvbnRhaW5l
ciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb250YWluZXInKTsKKworZnVuY3Rpb24gc3R5
bGVPZihuYW1lLCBhdHRyaWJ1dGVzKSB7CisgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCdkaXYnKTsKKyAgICBmb3IgKHZhciBuYW1lIGluIGF0dHJpYnV0ZXMpIHsKKyAg
ICAgICAgdmFyIHZhbHVlID0gYXR0cmlidXRlc1tuYW1lXTsKKyAgICAgICAgZWxlbWVudC5zZXRB
dHRyaWJ1dGUobmFtZSwgdmFsdWUpOworICAgIH0KKyAgICBjb250YWluZXIuYXBwZW5kQ2hpbGQo
ZWxlbWVudCk7CisgICAgcmV0dXJuIGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7Cit9CisKK3Zh
ciB0ZXN0cyA9IFsKKyAgICBbJ3NwYW4nLCB7fSwgJ25vcm1hbCddLAorICAgIFsnc3BhbicsIHsn
c3R5bGUnOiAndW5pY29kZS1iaWRpOiBlbWJlZDsnfSwgJ2VtYmVkJ10sCisgICAgWydzcGFuJywg
eydzdHlsZSc6ICd1bmljb2RlLWJpZGk6IC13ZWJraXQtaXNvbGF0ZTsnfSwgJy13ZWJraXQtaXNv
bGF0ZSddLAorICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29kZS1iaWRpOiBiaWRpLW92ZXJy
aWRlOyd9LCAnYmlkaS1vdmVycmlkZSddLAorICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29k
ZS1iaWRpOiAtd2Via2l0LXBsYWludGV4dDsnfSwgJy13ZWJraXQtcGxhaW50ZXh0J10sCisgICAg
WydzcGFuJywgeydzdHlsZSc6ICd1bmljb2RlLWJpZGk6IGJhZC12YWx1ZTsnfSwgJ25vcm1hbCdd
LAorICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29kZS1iaWRpOiBlbWJlZCBlbWJlZDsnfSwg
J25vcm1hbCddLAorICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29kZS1iaWRpOiBlbWJlZCAt
d2Via2l0LXBsYWluLXRleHQ7J30sICdub3JtYWwnXSwKKyAgICBbJ3NwYW4nLCB7J3N0eWxlJzog
J3VuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZSAtd2Via2l0LWlzb2xhdGU7J30sICdiaWRpLW92
ZXJyaWRlIC13ZWJraXQtaXNvbGF0ZSddLAorICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29k
ZS1iaWRpOiAtd2Via2l0LWlzb2xhdGUgYmlkaS1vdmVycmlkZTsnfSwgJ2JpZGktb3ZlcnJpZGUg
LXdlYmtpdC1pc29sYXRlJ10sCisgICAgWydzcGFuJywgeydzdHlsZSc6ICd1bmljb2RlLWJpZGk6
IGJpZGktb3ZlcnJpZGUgLXdlYmtpdC1pc29sYXRlIGJpZGktb3ZlcnJpZGU7J30sICdiaWRpLW92
ZXJyaWRlIC13ZWJraXQtaXNvbGF0ZSddLAorICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29k
ZS1iaWRpOiBiaWRpLW92ZXJyaWRlIC13ZWJraXQtaXNvbGF0ZSAtd2Via2l0LWlzb2xhdGU7J30s
ICdiaWRpLW92ZXJyaWRlIC13ZWJraXQtaXNvbGF0ZSddLAorICAgIFsnc3BhbicsIHsnc3R5bGUn
OiAndW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlIGJhZC12YWx1ZTsnfSwgJ25vcm1hbCddLAor
ICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlIGVtYmVk
Oyd9LCAnbm9ybWFsJ10sCitdLmZvckVhY2goZnVuY3Rpb24gKHRlc3QpIHsKKyAgICBzaG91bGRC
ZSgnc3R5bGVPZigiJyArIHRlc3RbMF0gKyAnIiwgJyArIEpTT04uc3RyaW5naWZ5KHRlc3RbMV0p
ICsgJykudW5pY29kZUJpZGknLCAnIicgKyB0ZXN0WzJdICsgJyInKTsKK30pOworCis8L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvdGV4dC9iaWRpLW92
ZXJyaWRlLWlzb2xhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L3RleHQv
YmlkaS1vdmVycmlkZS1pc29sYXRlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9m
YXN0L3RleHQvYmlkaS1vdmVycmlkZS1pc29sYXRlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsNDUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZSB0eXBlPSJ0
ZXh0L2NzcyI+CisudGVzdC1jYXNlIHsgcG9zaXRpb246IHJlbGF0aXZlOyBmb250LXNpemU6IDNl
bTsgY29sb3I6IHJlZDsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorLmV4cGVjdGVkIHsgcG9z
aXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IGNvbG9yOiBibGFjazsgfQorPC9zdHls
ZT4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgZm9yICJ1bmljb2RlLWJpZGk6IGJpZGktb3Zl
cnJpZGUgaXNvbGF0ZSIuIFRoZSB0ZXN0IHBhc3NlcyBpZiB5b3UgZG9uJ3Qgc2VlIHNlZSBhbnkg
cmVkIGZvbnRzIGJlbG93OjwvcD4KKworPGRpdiBjbGFzcz0idGVzdC1jYXNlIj4KKzxkaXY+PHNw
YW4gc3R5bGU9ImRpcmVjdGlvbjogcnRsOyB1bmljb2RlLWJpZGk6IC13ZWJraXQtaXNvbGF0ZSBp
c29sYXRlOyI+YWJjPC9zcGFuPiAxPC9kaXY+Cis8ZGl2IGNsYXNzPSJleHBlY3RlZCI+YWJjIDE8
L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJ0ZXN0LWNhc2UiPgorPGRpdj48c3BhbiBzdHls
ZT0iZGlyZWN0aW9uOiBydGw7IHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTsiPmFiYzwvc3Bh
bj4gMTwvZGl2PgorPGRpdiBjbGFzcz0iZXhwZWN0ZWQiPjEgY2JhPC9kaXY+Cis8L2Rpdj4KKwor
PGRpdiBjbGFzcz0idGVzdC1jYXNlIj4KKzxkaXY+PHNwYW4gc3R5bGU9ImRpcmVjdGlvbjogcnRs
OyB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGUgLXdlYmtpdC1pc29sYXRlOyB1bmljb2Rlby1i
aWRpOiBiaWRpLW92ZXJyaWRlIGlzb2xhdGU7Ij5hYmM8L3NwYW4+IDE8L2Rpdj4KKzxkaXYgY2xh
c3M9ImV4cGVjdGVkIj5jYmEgMTwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9InRlc3QtY2Fz
ZSI+Cis8ZGl2PjxzcGFuIHN0eWxlPSJkaXJlY3Rpb246IHJ0bDsgdW5pY29kZS1iaWRpOiAtd2Vi
a2l0LWlzb2xhdGUgYmlkaS1vdmVycmlkZTsgdW5pY29kZW8tYmlkaTogaXNvbGF0ZSBiaWRpLW92
ZXJyaWRlOyI+YWJjPC9zcGFuPiAxPC9kaXY+Cis8ZGl2IGNsYXNzPSJleHBlY3RlZCI+Y2JhIDE8
L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJ0ZXN0LWNhc2UiPgorPGRpdj48c3BhbiBzdHls
ZT0iZGlyZWN0aW9uOiBydGw7IHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZSBiaWRpLW92ZXJy
aWRlOwordW5pY29kZS1iaWRpOiAtd2Via2l0LWJhZC12YWx1ZSAtd2Via2l0LWlzb2xhdGU7IHVu
aWNvZGUtYmlkaTogLWJhZC12YWx1ZSBpc29sYXRlOyI+YWJjPC9zcGFuPiAxPC9kaXY+Cis8ZGl2
IGNsYXNzPSJleHBlY3RlZCI+MSBjYmE8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJ0ZXN0
LWNhc2UiPgorPGRpdj48c3BhbiBzdHlsZT0iZGlyZWN0aW9uOiBydGw7IHVuaWNvZGUtYmlkaTog
LXdlYmtpdC1pc29sYXRlIC13ZWJraXQtaXNvbGF0ZTsgdW5pY29kZW8tYmlkaTogaXNvbGF0ZSBp
c29sYXRlOwordW5pY29kZS1iaWRpOiAtYmFkLXZhbHVlIGJpZGktb3ZlcnJpZGU7Ij5hYmM8L3Nw
YW4+IDE8L2Rpdj4KKzxkaXYgY2xhc3M9ImV4cGVjdGVkIj5hYmMgMTwvZGl2PgorPC9kaXY+CisK
KzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L3Rl
eHQvYmlkaS1vdmVycmlkZS1pc29sYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC90ZXh0L2JpZGktb3ZlcnJpZGUtaXNvbGF0ZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC90
ZXh0L2JpZGktb3ZlcnJpZGUtaXNvbGF0ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsODIgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0
ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4MzI4CisgIFJlbmRl
ckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXplIDgwMHgzMjgKKyAgICBSZW5kZXJCb2R5IHtCT0RZ
fSBhdCAoOCwxNikgc2l6ZSA3ODR4MzA0CisgICAgICBSZW5kZXJCbG9jayB7UH0gYXQgKDAsMCkg
c2l6ZSA3ODR4MTgKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNjQ0
eDE4CisgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNjQ0OiAiVGVzdHMgZm9yIFwi
dW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlIGlzb2xhdGVcIi4gVGhlIHRlc3QgcGFzc2VzIGlm
IHlvdSBkb24ndCBzZWUgc2VlIGFueSByZWQgZm9udHMgYmVsb3c6IgorbGF5ZXIgYXQgKDgsNTAp
IHNpemUgNzg0eDQ1CisgIFJlbmRlckJsb2NrIChyZWxhdGl2ZSBwb3NpdGlvbmVkKSB7RElWfSBh
dCAoMCwzNCkgc2l6ZSA3ODR4NDUgW2NvbG9yPSNGRjAwMDBdCisgICAgUmVuZGVyQmxvY2sge0RJ
Vn0gYXQgKDAsMCkgc2l6ZSA3ODR4NDUKKyAgICAgIFJlbmRlcklubGluZSB7U1BBTn0gYXQgKDAs
MCkgc2l6ZSA2OXg0NQorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA2
OXg0NQorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDY5OiAiYWJjIgorICAgICAg
UmVuZGVyVGV4dCB7I3RleHR9IGF0ICg2OSwwKSBzaXplIDQ2eDQ1CisgICAgICAgIHRleHQgcnVu
IGF0ICg2OSwwKSB3aWR0aCA0NjogIiAxIgorbGF5ZXIgYXQgKDgsNTApIHNpemUgMTE1eDQ1Cisg
IFJlbmRlckJsb2NrIChwb3NpdGlvbmVkKSB7RElWfSBhdCAoMCwwKSBzaXplIDExNXg0NSBbY29s
b3I9IzAwMDAwMF0KKyAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAxMTV4NDUK
KyAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDExNTogImFiYyAxIgorbGF5ZXIgYXQgKDgs
OTUpIHNpemUgNzg0eDQ1CisgIFJlbmRlckJsb2NrIChyZWxhdGl2ZSBwb3NpdGlvbmVkKSB7RElW
fSBhdCAoMCw3OSkgc2l6ZSA3ODR4NDUgW2NvbG9yPSNGRjAwMDBdCisgICAgUmVuZGVyQmxvY2sg
e0RJVn0gYXQgKDAsMCkgc2l6ZSA3ODR4NDUKKyAgICAgIFJlbmRlcklubGluZSB7U1BBTn0gYXQg
KDAsMCkgc2l6ZSA2OXg0NQorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDQ2LDApIHNp
emUgNjl4NDUKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoNDYsMCkgd2lkdGggNjkgUlRMIG92ZXJy
aWRlOiAiYWJjIgorICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNDZ4NDUK
KyAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMjM6ICIxIgorICAgICAgICB0ZXh0IHJ1
biBhdCAoMjMsMCkgd2lkdGggMjMgUlRMOiAiICIKK2xheWVyIGF0ICg4LDk1KSBzaXplIDExNXg0
NQorICBSZW5kZXJCbG9jayAocG9zaXRpb25lZCkge0RJVn0gYXQgKDAsMCkgc2l6ZSAxMTV4NDUg
W2NvbG9yPSMwMDAwMDBdCisgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMTE1
eDQ1CisgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAxMTU6ICIxIGNiYSIKK2xheWVyIGF0
ICg4LDE0MCkgc2l6ZSA3ODR4NDUKKyAgUmVuZGVyQmxvY2sgKHJlbGF0aXZlIHBvc2l0aW9uZWQp
IHtESVZ9IGF0ICgwLDEyNCkgc2l6ZSA3ODR4NDUgW2NvbG9yPSNGRjAwMDBdCisgICAgUmVuZGVy
QmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSA3ODR4NDUKKyAgICAgIFJlbmRlcklubGluZSB7U1BB
Tn0gYXQgKDAsMCkgc2l6ZSA2OXg0NQorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAs
MCkgc2l6ZSA2OXg0NQorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDY5IFJUTCBv
dmVycmlkZTogImFiYyIKKyAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoNjksMCkgc2l6ZSA0
Nng0NQorICAgICAgICB0ZXh0IHJ1biBhdCAoNjksMCkgd2lkdGggNDY6ICIgMSIKK2xheWVyIGF0
ICg4LDE0MCkgc2l6ZSAxMTV4NDUKKyAgUmVuZGVyQmxvY2sgKHBvc2l0aW9uZWQpIHtESVZ9IGF0
ICgwLDApIHNpemUgMTE1eDQ1IFtjb2xvcj0jMDAwMDAwXQorICAgIFJlbmRlclRleHQgeyN0ZXh0
fSBhdCAoMCwwKSBzaXplIDExNXg0NQorICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMTE1
OiAiY2JhIDEiCitsYXllciBhdCAoOCwxODUpIHNpemUgNzg0eDQ1CisgIFJlbmRlckJsb2NrIChy
ZWxhdGl2ZSBwb3NpdGlvbmVkKSB7RElWfSBhdCAoMCwxNjkpIHNpemUgNzg0eDQ1IFtjb2xvcj0j
RkYwMDAwXQorICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgNzg0eDQ1CisgICAg
ICBSZW5kZXJJbmxpbmUge1NQQU59IGF0ICgwLDApIHNpemUgNjl4NDUKKyAgICAgICAgUmVuZGVy
VGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNjl4NDUKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAo
MCwwKSB3aWR0aCA2OSBSVEwgb3ZlcnJpZGU6ICJhYmMiCisgICAgICBSZW5kZXJUZXh0IHsjdGV4
dH0gYXQgKDY5LDApIHNpemUgNDZ4NDUKKyAgICAgICAgdGV4dCBydW4gYXQgKDY5LDApIHdpZHRo
IDQ2OiAiIDEiCitsYXllciBhdCAoOCwxODUpIHNpemUgMTE1eDQ1CisgIFJlbmRlckJsb2NrIChw
b3NpdGlvbmVkKSB7RElWfSBhdCAoMCwwKSBzaXplIDExNXg0NSBbY29sb3I9IzAwMDAwMF0KKyAg
ICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAxMTV4NDUKKyAgICAgIHRleHQgcnVu
IGF0ICgwLDApIHdpZHRoIDExNTogImNiYSAxIgorbGF5ZXIgYXQgKDgsMjMwKSBzaXplIDc4NHg0
NQorICBSZW5kZXJCbG9jayAocmVsYXRpdmUgcG9zaXRpb25lZCkge0RJVn0gYXQgKDAsMjE0KSBz
aXplIDc4NHg0NSBbY29sb3I9I0ZGMDAwMF0KKyAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCww
KSBzaXplIDc4NHg0NQorICAgICAgUmVuZGVySW5saW5lIHtTUEFOfSBhdCAoMCwwKSBzaXplIDY5
eDQ1CisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoNDYsMCkgc2l6ZSA2OXg0NQorICAg
ICAgICAgIHRleHQgcnVuIGF0ICg0NiwwKSB3aWR0aCA2OSBSVEwgb3ZlcnJpZGU6ICJhYmMiCisg
ICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0Nng0NQorICAgICAgICB0ZXh0
IHJ1biBhdCAoMCwwKSB3aWR0aCAyMzogIjEiCisgICAgICAgIHRleHQgcnVuIGF0ICgyMywwKSB3
aWR0aCAyMyBSVEw6ICIgIgorbGF5ZXIgYXQgKDgsMjMwKSBzaXplIDExNXg0NQorICBSZW5kZXJC
bG9jayAocG9zaXRpb25lZCkge0RJVn0gYXQgKDAsMCkgc2l6ZSAxMTV4NDUgW2NvbG9yPSMwMDAw
MDBdCisgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMTE1eDQ1CisgICAgICB0
ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAxMTU6ICIxIGNiYSIKK2xheWVyIGF0ICg4LDI3NSkgc2l6
ZSA3ODR4NDUKKyAgUmVuZGVyQmxvY2sgKHJlbGF0aXZlIHBvc2l0aW9uZWQpIHtESVZ9IGF0ICgw
LDI1OSkgc2l6ZSA3ODR4NDUgW2NvbG9yPSNGRjAwMDBdCisgICAgUmVuZGVyQmxvY2sge0RJVn0g
YXQgKDAsMCkgc2l6ZSA3ODR4NDUKKyAgICAgIFJlbmRlcklubGluZSB7U1BBTn0gYXQgKDAsMCkg
c2l6ZSA2OXg0NQorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA2OXg0
NQorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDY5OiAiYWJjIgorICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICg2OSwwKSBzaXplIDQ2eDQ1CisgICAgICAgIHRleHQgcnVuIGF0
ICg2OSwwKSB3aWR0aCA0NjogIiAxIgorbGF5ZXIgYXQgKDgsMjc1KSBzaXplIDExNXg0NQorICBS
ZW5kZXJCbG9jayAocG9zaXRpb25lZCkge0RJVn0gYXQgKDAsMCkgc2l6ZSAxMTV4NDUgW2NvbG9y
PSMwMDAwMDBdCisgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMTE1eDQ1Cisg
ICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAxMTU6ICJhYmMgMSIKSW5kZXg6IExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9mYXN0L3RleHQvYmlkaS1vdmVycmlkZS1pc29sYXRlLWV4cGVjdGVk
LnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0
eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpQcm9wZXJ0eSBj
aGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC90ZXh0L2JpZGktb3ZlcnJp
ZGUtaXNvbGF0ZS1leHBlY3RlZC5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOm1pbWUtdHlwZQog
ICArIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKCmlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUF5
QUFBQUpZQ0FZQUFBQ2Fkb0p3QUFBQUtYUkZXSFJqYUdWamEzTjFiUUJtTlRWalpUQmwKTmpWa04y
UmpaR013WldObE5HVmhZelkzTUdJM056WTBaaGVKZUI4QUFBTHVhVU5EVUVsRFF5QlFjbTltYVd4
bEFBQjRBWVZVejJzVApRUlQrTm02cDBDSUlXbXNPc25pUUlrbFpxMmhGMURiOUVXSnJETnNmdGtX
UVpETkoxbTQyNis0bXRhV0k1T0xSS3Q1RjdhRUgvNEFlCmV2QmtMMHFGV2tVbzNxc29ZcUVYTGZI
TmJreTJwZXJBem43ejNqZnZmVzkyM3dBTmN0STA5WUFFNUEzSFVxSVJhV3g4UW1yOGlBQ08Kb2ds
Qk5DVlYyK3hPSkFaQmczUDVlK2ZZZWcrQlcxYkRlL3Qzc25ldG10SzJtZ2VFL1VEZ1I1clpLckR2
RjNFS1dSSUNpRHpmb1NuSApkQWpmNDlqeTdJODVUbmw0d2JVUEt6M0VXU0o4UURVdHpuOU51RlBO
SmROQWcwZzRsUFZ4VWo2YzE0dVUxeDBIYVc1bXhzZ1F2VStRCnBydk03cXRpb1p4TzlnNlF2WjMw
Zms2ejNqN0NJY0lMR2EwL1JyaU5udldNMVQvaVllR2s1c1NHUFJ3WU5mVDRZQlczR3FuNE5jSVUK
WHhCTko2SlVjZGt1RGZHWXJ2MVc4a3FDY0pBNHltUmhnSE5hU0UvWFRHNzR1b2NGZlNiWEU2L2lk
MVpSNFhtUEUyZmUxTjN2UmRvQwpyekFPSFF3YURKb05TRkFRUlFSaG1MQlFRSVk4R2pFMHNuSS9J
NnNHRzVON01uVWthcnQwWWtTeFFYczIzRDIzVWFUZFBQNG9JbkdVClE3VUlrdnhCL2lxdnlVL2xl
Zm5MWExEWVZ2ZVVyWnVhdXZMZ084WGxtYmthSHRmVHlPTnpUVjU4bGRSMmsxZEhscXg1ZXJ5YTdC
by8KN0ZlWE1lYUNOWS9FYzdENzhTMWZsY3lYS1l3VXhlTlY4K3BMaEhWYU1UZmZuMngvT3ozaUxz
OHV0ZFp6clltTE4xYWJsMmY5YWtqNwo3cXE4aytaVitVOWU5Zkg4WjgzRVkrSXBNU1oyaXVjaGla
ZkZMdkdTMkV1ckMrSmdiY2NJblpXR0tkSnRrZm9rMVdCZ21yejFMMTAvClczaTlSbjhNOVZHVUdj
elNWSW4zZjhJcVpEU2R1UTV2K28vYngvd1g1UGVLNTU4b0FpOXM0TWladW0xVGNlOFFvV1dsYm5P
dUFoZS8KMFgzd3RtNXJvMzQ0L0FSWVBLc1dyVkkxbnlDOEFSeDJoM29lNkNtWTA1YVd6VGxTaHl5
Zms3cnB5bUpTekZEYlExSlMxeVhYWlVzVwpzNWxWWXVsMjJKblRIVzRjb1RsQzk4U25TbVdUK3Ev
eEViRDlzRkw1K2F4UzJYNU9HdGFCbC9wdndMejlSY0I0aTRrQUFDQUFTVVJCClZIZ0I3TjBMdkUz
MXV2RHh4ejBwa1V1STdiWVJ1YmM3TmwyazBnV2w1QnloN1QxeU5wWHFiS2szcWwzWktSMlZTTm5h
NnUzaXBWSzcKSGZWR1NGZGJJYUVzYVVXbFpTZjNXRzZGK1Q3UHNNWTAxbHhqempIbU10ZWFpL243
Zno1cnpUSEgrSTh4L3VNNzVwcHJQdk4vS3hYUgpKQ1FFRUVBQUFRUVFRQUFCQkJCQW9CZ0VTaGZE
T1RnRkFnZ2dnQUFDQ0NDQUFBSUlJT0FJRUlEd1FrQUFBUVFRUUFBQkJCQkFBSUZpCkV5QUFLVFpx
VG9RQUFnZ2dnQUFDQ0NDQUFBSUVJTHdHRUVBQUFRUVFRQUFCQkJCQW9OZ0VDRUNLalpvVElZQUFB
Z2dnZ0FBQ0NDQ0EKQUFFSXJ3RUVFRUFBQVFRUVFBQUJCQkFvTmdFQ2tHS2o1a1FJSUlBQUFnZ2dn
QUFDQ0NCQUFNSnJBQUVFRUVBQUFRUVFRQUFCQklwTgpnQUNrMktnNUVRSUlJSUFBQWdnZ2dBQUND
QkNBOEJwQUFBRUVFRUFBQVFRUVFBQ0JZaE1nQUNrMmFrNkVBQUlJSUlBQUFnZ2dnQUFDCkJDQzhC
aEJBQUFFRUVFQUFBUVFRUUtEWUJBaEFpbzJhRXlHQUFBSUlJSUFBQWdnZ2dBQUJDSzhCQkJCQUFB
RUVFRUFBQVFRUUtEWUIKQXBCaW8rWkVDQ0NBQUFJSUlJQUFBZ2dnUUFEQ2F3QUJCQkJBQUFFRUVF
QUFBUVNLVFlBQXBOaW9PUkVDQ0NDQUFBSUlJSUFBQWdnYwo4d0hJcGsyYlpNR0NCYkp0MjdhVTNN
MDllL2JJMXExYm5XUDk4TU1QS1RtbWV4QTdibloydHZzMHBZOEhEeDZVcjc3NnF0REh6TTNOCmxR
MGJOc1RkUDZqc3NlY1B5aDk3b25TZlA3WTh4ZlU4eUNuV05abHlCUjA3N0xIMjc5OHYvL3puUDhO
bUQ1MnZLUC9XM0VMWTZ5clYKZjhmdXNYa1U1NzNTN3owdDFlL0xxYlErbXI4cHYzTGs1T1Q0clda
ZG1nWEMzdWVTOEZvTit2K1hpTEtvM3A4VG5aTnRDS1JDSURBQQo2ZEdqaDFTdFdsVXV1K3d5K1kv
LytBOHBVNmFNTkd6WVVIcjM3aTNubm51dTgvekZGMTlNUlZtU1BzYmYvdlkzZWZubGwrV0REejZR
Ck04ODhVK3dQOFdqVHVISGpaTWlRSWM2SCtRWU5Hc2l2di81NnRJZU03bi92dmZmS1ZWZGRGWDJl
cW9VbFM1WkkyN1p0WmZEZ3dZVTYKNU5OUFB5M1ZxbFdUVjE5OU5lNytpY3J1ZC81RStXTlBrdTd6
eDVhbk9KOG5jdkp6VGFac2lZNGQ5amlmZnZxcC9PNTN2NU5ldlhxRgozU1YwdnNMK3JZVjlUNW8r
ZmJxY2R0cHBNblhxMU5CbEltTnlBbjZ2c2FKNFgwNnVWUEZ6SCszZlZPeVJWNjllTFMxYnRveGR6
Zk0wCkM0Uzl6eVhodFJybS8xODh6cUo4ZjQ1M1R0WWprREtCU0VDNjVKSkxJdXZXcll2bU91R0VF
eUwvK1ovL0dYMysyR09QUmZRUEtQbzgKMllWOSsvWkZ0QVlqMmQwaStvMUJwRktsU2hIOWxzUFpk
K0hDaFVrZncyK0hKNTU0d3JrK3JRMXdqdStYcDdEcnRtelpFdm42NjY4TAp1M3ZDL1c2KytlYklo
UmRlbURCUG9vMzZRUzN5K09PUHg4MFNWUGJZOHdmbGp6MVJ1czhmVzU3aWVoN2tGT3VhVExtQ2po
MzJXSTgrCittakU3aytZbE16ZmMySC8xcEo1VDJyZXZIbmt3UWNmREZQMHdEekpYRnU4ZzZYaUdQ
R09uWTcxc2EreG9ucGZUdVcxSGMzZlZHdzUKTm03Y0dORXZxcUtyajdmN0c3MndZM0FoNkQ0WHhX
dTFzUGMvNlA5Zkl2NWszcDhUSFlkdENCUzNRR0FOeUcyMzNlYlVlTVNMZUt5Mgp3R29md2lhOXdH
aFdxMTM0d3gvK0lCOTk5RkYwbmJ2Z3plZXU4ejUrOGNVWDhzc3Z2MGpwMG9jdm9WT25UdDdOaFY1
dTFLaVIxSzlmClgyclhyaTNObWpVcjlISDhkclJhaGlaTm12aHRLdlM2UTRjT09mdVdMVnMyYWxH
WWc1VXJWMDVLbFNvVmQ5ZDRaWTkzL25qNTQ1MGcKM2VlUFY2NmlYaC9QS1o1ck11V0pkK3lndjYz
WWM1UXZYOTczdFhIZ3dJRjhXUlA5UGVmTG1QZWtzSDlyeWJ3bkJiMnUvTXJsdHk3WgphM09QNGJW
TzloamVmZDNqdVkreDl1NTZlNHkzWDd6MTNuMWpsNFAyaVgyTkZkWDdjbXk1Q3ZNOEZYOVRzZWZW
RDQ1eXhobG5PS3VUCnViOUJyckhuU2ZaNVVSOC8wZXN2MmJLbU9uL1krNXpxMTJxaSt4OTBQNDdt
ZlNyZSszT3FYVGtlQXFrV0NBeEFMcjMwMG9UbjFGb0kKT2VlY2M1dzhQLzMwazlpSGc4NmRPOHRa
WjUwbG4zenlTWFRmVjE1NVJmNzYxNy9LMkxGanhRMFd4bzhmTDdObXpaSTMzbmhEL3RmLworbCt5
ZS9kdThjc1hQVWpld2pQUFBDUDMzMysvMkp2ZzBLRkQ1ZmJiYjNlMldEdEsvZFpEaGc4ZjdqUjF1
dlhXVzJYdjNyM090bVhMCmxqbE5xKzY1NXg3UmIwU2xSbzBhc25qeDR0aERpL3VoeUQ2TTIzVzR5
Y3AxK3Vtbnk4U0pFNTFWMXZUTEFwUWJicmpCZWY3ZWUrL0oKdGRkZTY1VGwyV2VmbGNhTkd6di9t
TDc5OWx0bis0OC8vdWhjZThlT0hkMURPbVc3Kys2NzVYLys1MytrVDU4K290OWtSTGNsdWhiTApa
TzNuYjdycEpoazllclJUaHFWTGwwYjN0WVZFOXlKZlJzOFRPNlpaMmo5VnUzL1d2TUNTWDlrVG5k
OHYvd01QUENCbm4zMjI1MndGCkY0dnkvQVhQSnBMSStLMjMzcEphdFdvNVpmN21tMitjM2UzMVlz
SHAzTGx6bmVmeGpQMWVhOVpNMFlKMTcrdnY3YmZmTHZDYVNPUnEKSjQxM1RxZEFubDkrOXlEZTMx
WWlCODhobzR2dnZ2dXU4NXExSmxUMnQvL2xsMTg2Mi96K25oT1ZOOTdmV3ZSRWNSYVNlVSt5UTln
SApFbXNxOUp2Zi9NWnBMdVArVGRxMlJPV3o3VzVLOXRyOHJQMk80UjdmSHVmUG55OTkrL2FWUC8v
NXp6Sml4QWpuU3hBcnM2MTNVeng3CjIrNTN6a1RyRTExN3ZHTzU1YkRIMk5kWXZQZGw3ejdXTE02
K3NPcmV2WHUwejVwOUVMVDNSWHNQdFpUbzlXamxTdlErN0QyWHV4ejAKTjVYb2ZFSHY2M1lPOS85
RTBQMjF2UEZjRTkyTFJOdnNtTjVVMU1lUDkvb0xjZ3B6MzczWDRmY2VhdSsvaVN5QzdyUDMrUEZl
cTBmegpXdkM3Ly9IdWg3Y3M3bks4LzMrMlBkRjF1L3U3ajRtdTRmWFhYM2MrKzF4OTlkV3lZOGNP
ZWY3NTU1M25YYnQyRmZmL25MMnZuM2ZlCmVhSzFPYzRody96dmRzL05Jd0pKQ1doa25sU0tiWUxs
N3F6QlFPVHl5eStQN055NTAya1dwUisySXZvaFA3SjkrL2FJZmpNUTBYYmsKYnRiSXNHSERvazJu
clByNm9ZY2VjcllseWhmZE9XOWh4b3daRWEzOXlMZjYvUFBQaitnSFBXZWQxbzVFL3UzZi9pMmk3
Y1dkNTRzVwpMWXBvWDVhSTlwV0l2UGJhYXhFcm4xOXpLTnR2OCtiTnpqN1dETXViOUI5ZnZ1WWMx
aFRrMy8vOTM1MHNWaFhmdEduVGlINGJGbm56CnpUY2ozMzMzWFVRRGxNZ2YvL2hIWjd0MmRJdG9z
QktwWHIxNjlKRGFyeVppNWJLa0FZUlZEVVUrKyt3ejUzbWlhN0VNK2c4OG9rR1EKazllYW9kV3BV
eWVpYnlMTzgwVDN3c25nODZ0dTNib1IvV0FRMFlEUWFSSm45MFUvSURyM3pxL3NpYzd2bC8rcHA1
Nks5T3paMCtmTQpoMWNWOWZuOVRoeGsvRi8vOVY4UnJiR0s3bXF2VC8yQTZEeFBaT3ozV3JQWGEr
enJUd1AwQXErSlJLNkp6aGt0Wk41QzdEMUk5TGNWCjVHQk5wVFFZYzQ2cy9hd2k5bmZnTnB2VUx3
SWkxMXh6VGZUMDNyL25vUEltK2x1TEhqREVRcnozSk51MWRldldrVFp0MmtUMFEzeEUKTzZNN2Y1
OTJYeTBGbGMvSjVQa1Y5dG9TV1h1UDRUbTBzNmlCVWFSbXpab1I3V01YMFZyaGlQWnRjOHBlcjE0
OVozc2krM2puakxjKwowYlhIMnllMnZMR3ZNZHZ1OTc0Y3U1KzkzaTYrK09Mb2FpdUw5elVVOUhw
TTlENGNQYWhuSWRIZmxHVkxkTDZnOTNYYjMvMS9ZY3VKCjdtODgxMFQzSXRFMk81ODNGZlh4RTcz
K3dqZ0YzWGZ2dGZpOWgrb1hZbkUvWTlpK1FmZlplM3hiOW51dEh1MXJ3WHYvNDkyUDJITFkKODBU
Ly80SmVBOTczWnp0V29tdXc3ZTNidDQ5Y2YvMzF0dWlrQ3k2NElESnc0RUQzYWVULy9iLy9GM251
dWVlaXo0UCtkMGN6c29CQQprZ0tCTlNCaG94bjlZM2FxL3EwNTFadzVjNXh2Ny9TTldUNzg4RU1u
MGw2K2ZMbllONzZXOUVONXZtWUNidE1maThnVDVVdFVGanZuCnh4OS83TlJDV0Q2cjB0US9NckZ2
c3ZYTlRINy8rOTg3TlJMYUpsejBuNTFNbmp6WnR6bVU3YWRCZ25NcS9WQ2Y3NVFWSzFiTTF4VGwK
eEJOUGpENjNXZ09yOVdqVnFwVllKMW43cGx6N1pNaWFOV3VjWTFpTmkyM1QrK004dDVHN1B2Lzhj
K25Rb1lQejNHb2NyRXkyWDlDMQpXTTJTV2JyZkJGc3p0RzdkdWtYTG11aGVSRFA1TEF3WU1FQ3V1
T0lLNmRLbGl6ejg4TU9pZlgrY2IxOWp5eDUwL3RqOGRpcXJyYkdhCnJrU3BLTThmZTk0Z1k4dHZ0
V2syd285MWFMUmszMFJyd09rc0p6TDJlNjNaZnRaVXcvdjZzM3Z2ZlUwRXVTWTZwMU1vejYvWWV4
RHYKYnl1TWcrZXd6dCtWZFVqWEQvWE9hbXVDNDlhVXVmbmN2K2VnOGliNlczT1BsWXBIKzN1ODZL
S0xSUC9KTzY5dGQ3UzRvUEw1blR2TQp0Y1d6ZG8vbkhzTjk3ajdxaHhmUllFT3V2UEpLWjRBUC9T
RGhETEpobzNpWnNYbkZzNDkzem5qckUxMTd2SDNjY3JxUHNhOHhkMzNRCm8zNEJKZlpOdWxzVFpl
L2IrdVdWczF1WTEyT2k5K0hZY3dmOVRRV2RMK2g5M2M3bi9yOXd6eDN2L3NaelRYUXZFbTF6eitj
K0Z2WHgKRTczK3dqZ2x1dS91TmJpUGZ1K2g5di9TL24vNmZjWUl1cy91Y1JNOXB1SzFZTWQzNzMr
OCt4R3ZEUEgrL3lYekdnaTZCanUzQmh2eQp6anZ2T0RYRDlseS9EQkQ5MHRScFVXTFB2Zi9uN0ht
WS85MldqNFJBc2dJcEMwRHNRNzU5R0xIMmlQWmpUVFBtelp2bk5PV3hOMmo3Cngya2ZicTNKbFAy
anRkRzAzT1Qrd1FibGMvUDdQVnIxclAxRHREZEpOMmtOaUxOb2IxeVc3QitYNVNtcVpOZmhYb3Vk
NCtTVFQ0NVcKWTlwejczWUx6S3dwbWplL05kRXh3NkJyZWYvOTk1MFBzMVdxVkxIRE91bWtrMDZL
SGl2UnZkQmFIN0dSUDl3ZnkrdW1VMDQ1eFYxMApBalo3NGc2eDZTMTcwUGx0UDI5K2V4NG1GZFg1
L2E0NXlOaktheCt5TFREOHYvLzMvenJGdHpkdC9aYk5XVTVrYkJuOFhtdCs2N3hPClFhNUI1M1FL
NXZubFBYYTh2NjB3RHA1RE92ZFZ2M0Z6dmxTd3BvTTJBdDJ1WGJ1OFdVSzlEdlB0VU1SUHpNRk5O
cUtmTlZHd2xLeW4KN2VNZUs5Rys4YXh0ZjB2dU1RNC95Ly9idG5uZkd5MW90VExiaHdMYkZzOCsz
am5qclQrYThudExiR1ZLZEQzZXZPNnkvUit3UU12ZQpneXpabDBUMnBaQ2xaRitQems0SmZnWDlU
WVU1WCt3MXhyNnZ4NTQrbmtkaDdrV2kreFI3M3FJK3ZsMVh2TmVmbFNYSUtkRjlqNzBXCmV4Nzdm
cG5JSXVnKyt4MC9kbDJxWGd2dS9ZOTNQMkxQNno2UDkvOHYwWFc3KzdxUFlhN0Jtbm5hbDhOdTMx
dHJRbXZOMysxTEFXdDIKWlUxV3JXazlDWUdpRmlpYnFoUG9hQ2hpSGFFdG12WkwxZ2JVYWhRbVRK
Z2cxcjdUUHN4VnJseTVRTmF3K1dKM3RQYVRWZ2I3Y0dFZgp4aTNadDh0V0p2dmpLbW5KMm5TNmJl
ZGp5eFowTFRidXZGMXJiSExmK0JMZEMvc2c4NDkvL0NPNnErM2o3WmZpYnJDYUdQdEhheit4Cktl
ajhzZmtMOHp5VjUxKy9mbjJCYXc0eWRzdHN0V2lqUm8xeSt0cG9VeDhudUxadGlZemRmWk45REhJ
OTJuUDYvVzJGZGZCZWl3MGIKYWQ5YS81Ly84My9FMmxMYlB6Mi9kTFRsOVR0bUt0Y2RUZm1DOXZX
ejludS9DM005VnNOcDcyT1dFdG5ITzZmZit1SXNmK3cxV29CMQo0NDAzaXJXWnQ3OHQ2NmZuZnBs
U21OZGo3UEc5ejRQK3BsSjlQdSs1L1phVHZSZEI5eW4ySEVWOS9FU3Z2OWl5eEQ1UGROOWo4L285
ClQyUVJkSi85amhlN3JpaGVDMzczSTh6N2dQZi9YNkxyTHN3MTJKZWNWaXM4YmRvMDUrL09obG0z
OXhqcjEvcnp6ejhYeVZRQnNlWGsKT1FJbWtMSWFrSVk2TjRqVmVMZ2RsK3pnVmwxcTMweG8rMURS
OXNLaXc3dzZ6WXVzMDZHOTJOM2tmbkFPeXVmbTkzdTBid3B0NGlHMwp1WXpsc1hOcSswbW4yWXZm
UG9WWjU0NndVWmg5dmZ2WUc0elZMcXhkdXphNjJyeXN0aWJvV2l5UXMyOHc3SnQ5djVUb1hsaUFP
SHYyCjdPaVBOWWZ6Uy8vNjE3K2NiN2JidFd0WFlIUFErUXZzVUlnVnFUeS8zelVIR2J0Rjd0ZXZu
MmkvSnJubGxsdkVPdTY1S1pHeG15ZloKeHlEWG96bG52TCt0c0E3dXRXUmxaVGxWOGpaZ2dyZTIw
ZDF1ais3Zjg5R1UxM3U4b2xvdVRQbkNYRnM4YS9jNjNHTzR6eE05MnQrNApUU2lwN2JZbGtYMjhj
OFpibitqYTQrMlRxSnpKYnROK09FNHQybDEzM2VWMGVIWDNEL3Q2RFBzK0hQUTNGZlo4YnZuQ1BN
YTd2L0ZjCkU5MkxSTnRpeTFMVXgwLzArb3N0Uzd6bjhlNTd2UHplOVlrc2d1Nno5emp4bGxQMVdu
RHZmN3o3RWUvODN2WGUvMytKcnR1N2p5MkgKdlFhZFNzR1o5MnZLbENsaTk4U2FaZGtYay9ZRnBU
dW9RdXl4ZVk1QXFnV1NDa0RzVGQrR3Z2V2JkYngvLy83T1NBM1dqRWc3bmpzZgovdi95bDc4NC9T
enNINmlOQm1GSk8yNkxka2FPMWxMWU4xLzI3WVVsNjNNUUw1K1R3ZlBMUGhSYWVleGJDMHZXeHQ3
YWVGc1E1Q1liCkdjcitJRzBTUlVzV2pMaWpZcmw1a25tMEdoV2IrTWNNN0EzQ2dnZTdOamZaZXU4
L1JpdWJCVVZ1c3VkMmZnczBiTlFyKzBiZC92Q3QKZmJmOS9PLy8vYitkcGdsQjEyTDcyamVpMW1m
RVRkYXUzYjRwc2ZNbHVoZHVmcjlIYjFtdGo0cE5tdWkyOVk4dGU2THoyN0c5K2UyNQpWZmRhQUpv
b0ZlWDVZODhiWk96bXQ5ZW5OUiswKys0MjZiTnRRY1orcnpXL2RWNm5WTjlYNzdIai9RMkdjYkRY
dFhhb2RFanNkV3F2CmNmc3dZdmZMbW1EWmx3NzJtcllmNzkremZjdG1OWDErN3dtdWI3eEhtMVJV
QjZlSXZqZkV5NWZvUGNuMk1RUDdjWlA5L2JudkFVSDMKME4zSGZReDdiZkdzN1RqZVk5ajdwRi95
dnFmWTZFSTJJbzMxRjBwa2IzLzdmdStkOGNxUzZOcmo3ZU5YVnU5cnpMYkh2aS83N1dQcgpySG1L
alJwb3piQ3NhWTZid3J3ZWc5NkgzV1BaWTlEZlZKanpCYjJ2ZTgrWDZQN0djMDEwTHhKdDg1N1hs
b3Y2K0lsZWYvYTNIOFlwCjNuMlB2Ulo3SHZ0K21jZ2k2RDc3SFQvMnRacUsxNEwzL2lmemVjYktG
Ky8vWDZMcnR2Mjg3ODlocnNIMnNUNVhGU3BVY0pwN1d0TXYKNjY5cU5UTTIvWUFiUUZrK1MySCtk
eC9PeVc4RWtoVFFONDVRU1pzTE9TTkg2ZUVqK29LTjJBU0VXbDJYYjE4ZFpqZWlMK3FJdm9DZApF
YkEwb25hMjI3N2FRZHVac0hEbXpKa1I3ZFRraks1a0cvVWJNQ2UvamNwZ283N0V5K2M5a1hZNGkr
Zy9aV2ZVS0IwMk5xS0JnTE5aCm0zWkZXclJvRVhua2tVY2kya2s3b3YvZ0l2cW02V3pUNmtabllr
SDlBNHZvUDJydjRVSXZheHZKaUZaZk9xTkQzWEhISGM0SVJ0cTUKMVJrUnlNcXViejdPYUZUYVpq
T2luZWtqdi8zdGJ4MFBIYlkxb2g5Z0k5clV5U216VGZobkk0cVlqL1pKY2RacGpVaEVtN1ZFeTVM
bwpXaXlUWFk4Mmo0cllSR3M2UTMxRS80bEh0RStKczk2Mng3c1h0czB2M1hmZmZSSDl4eDdSenVl
Uk1XUEdSUDc3di8vYkdkSE04dnFWClBkSDUvZkxya01qT1NFcjZUOFh2OUpHaVByL2ZTWU9NM1gz
c3ZwdEpiSXBuN1BkYTgxdm41NVRJMWM0Zjc1eXhaWXM5dHRhc3hmM2IKU3VSZ3g5RitNTTVyZE5L
a1NjNm9kamFTbkRaemRFWk9zUkZUZERDR3lIWFhYZWU4cHIxL3p4cDhoQzV2YlBrMXdISGVGMTU0
NFlYWQpUZEhuUWU5Sk50cWRqWlJuN3dsMi9YYWQ5dmVpd2JNejJwc2RLS3luNVExN2JXSGY3OHdu
TnRsb2dlYXJRL0ZHdEhsU3hFYmEwMjlTCm5XemFsTlRaNW1jZjcvNG1La3U4YTArMGo3ZThzYTh4
L2FEaSs3N3MzY2U3Yk8rWldzUG9YZVVzSjNvOVdvWkU3OE1GRHFZcmd2Nm0KRXAwdjZIMDk5bnl4
cnhIdjlrU3U4ZTZGN1o5b1czRWVQOUhyVDc4NVQvai96MXZPZVBmZG04ZnYvZEsySjdJSXVzL2U0
eGZtTTBTWQoxNEwzL2x2K01KOW5yRnlKL3YvWjlualhIZnYrYko4ckVyMmU3Vmh1c3M5T092U3Ur
OVI1ei9FK2R6Y0UvZTkyOC9HSVFMSUNwV3lICkpHT1doTmt0R3JkUlc2eUprZHR1MmI2bHREYUdO
aXFFTmR1STdlQmszOTdaTnlOQitSS2VPRytqWFk2TloyM25zMUdwVXAzcyt1eWIKQ3VzZ1o5OEt4
MnVHRXZhOFZsNXJLbWFqaU1TbW9HdXhjdGkzcUdabjMwSmJqWW8zK2QwTDczYS9aYXMydHVPNTk4
NHZqN3N1NlB4dQpQbnUwYTdFeW1sdWlWRlRuajNmT0lHTjNQL3RHM3I0eGlrMkZNWTQ5UnV6eklO
ZkNuRFBvYnl1c2cxdFdxMFZ3NzJYczM0SDc5K3ptCkxVeDViVjlyWmxpVWcwWVVwbnhocmkzSU92
WVliam5zMGViS3NkR3ZyUGJZYWhmOHJ0L1BQdDQ1NDYxM3orbDNiNEwyY2ZjOTJrZXIKL1dpZ0E1
SllyWGhzQ25vOVdybVRlUjhPK3BzS09sOXMrUkk5ajNkL2cxejk3b1Y3bmtUYjNEeEZmWHozUEg2
dlAzZGJtTWRFOXozTQovb2tzZ3U1em1PTWY3V3ZCdmY5Qjk4T3ZMSW4rL3lXNjd0aGpoYm1HMlA5
cHNjL2RZOXF4d3Z6dmR2UHppRUJZZ1pRSElHRlBURDRFCkVFQUFnZndDYmdDaU5jejVOeHhIejJ6
VU5Bdm1yV21KRFRFYTIrVGpPTHBVTHNVandIMzNZTENJQUFLcDY0U09KUUlJSUlCQTRRWHMKRzFP
M2IxbmhqMUt5OTlSbWZHSnR6cTEyMmdiQUlQZ28yZmNyVmFYanZxZEtrdU1nY1B3SVVBTnkvTnhM
cmdRQkJJNWhBZTN2RXUxMAozNmhSSTdIeCtvKzNaQU9ZV0dkNUc0akVSaTRpWllZQTl6MHo3ak5Y
aVVBeUFnUWd5V2lSRndFRUVFQUFBUVFRUUFBQkJJNUtJS2xoCmVJL3FUT3lNQUFJSUlJQUFBZ2dn
Z0FBQ0dTOUFBSkx4THdFQUVFQUFBUVFRUUFBQkJCQW9QZ0VDa09LejVrd0lJSUFBQWdnZ2dBQUMK
Q0dTOEFBRkl4cjhFQUVBQUFRUVFRQUFCQkJCQW9QZ0VDRUNLejVveklZQUFBZ2dnZ0FBQ0NDQ1E4
UUlFSUJuL0VnQUFBUVFRUUFBQgpCQkJBQUlIaUV5QUFLVDVyem9RQUFnZ2dnQUFDQ0NDQVFNWUxF
SUJrL0VzQUFBUVFRQUFCQkJCQUFBRUVpaytBQUtUNHJEa1RBZ2dnCmdBQUNDQ0NBQUFJWkwwQUFr
dkV2QVFBUVFBQUJCQkJBQUFFRUVDZytBUUtRNHJQbVRBZ2dnQUFDQ0NDQUFBSUlaTHdBQVVqR3Z3
UUEKUUFBQkJCQkFBQUVFRUVDZytBUUlRSXJQbWpNaGdBQUNDQ0NBQUFJSUlKRHhBZ1FnR2Y4U0FB
QUJCQkJBQUFFRUVFQUFnZUlUSUFBcApQbXZPaEFBQ0NDQ0FBQUlJSUlCQXhnc1FnR1Q4U3dBQUJC
QkFBQUVFRUVBQUFRU0tUNEFBcFBpc09STUNDQ0NBQUFJSUlJQUFBaGt2ClFBQ1M4UzhCQUJCQUFB
RUVFRUFBQVFRUUtENEJBcERpcytaTUNDQ0FBQUlJSUlBQUFnaGt2QUFCU01hL0JBQkFBQUVFRUVB
QUFRUVEKUUtENEJBaEFpcythTXlHQUFBSUlJSUFBQWdnZ2tQRUNCQ0FaL3hJQUFBRUVFRUFBQVFR
UVFBQ0I0aE1nQUNrK2E4NkVBQUlJSUlBQQpBZ2dnZ0VER0N4Q0FaUHhMQUFBRUVFQUFBUVFRUUFB
QkJJcFBnQUNrK0t3NUV3SUlJSUFBQWdnZ2dBQUNHUytROWdCay90aXgwdktFCkU2UmE2ZExPVDAx
OUhObXhZOGJmbUNDQVgvZnNrUThuVHBReGwxNHFLMmJNQ01yT2RnUVFRQUFCQkJCQUFBRUVTb1JB
cVlpbWRKWmsKU1BQbThyZXZ2c3BYaE4rZmRKSXMyclVyM3pxZWlHVE5taVh6bm45ZTVpMWNLQjlz
MmlTNWVTaTlUejlkWHMzSmdRZ0JCQkJBQUFFRQpFRUFBZ1JJdlVEYmRKUno2d0FPeS9zWWJaWU1H
SEYvczM1L3U0cFRJOHk5NDdERVpQR0tFckQxd3dMZDhQKy9kNjd1ZWxRZ2dnQUFDCkNDQ0FBQUlJ
bERTQnREZkJhdDI3dDh6ZXZGbm1MbDVjMG14S1RIbWVHamN1WC9CUlFVdldwRnk1RWxNK0NvSUFB
Z2dnZ0FBQ0NDQ0EKUUZpQnRBY2dZUXVheWZudWYrSUpHZHF5cFR6WXRhdlQ3MlBIOXUweThiNzdN
cG1FYTBjQUFRUVFRQUFCQkJBNFJnWFMzZ1RyR0hVcgoxbUszdXVZYWVWSi9TQWdnZ0FBQ0NDQ0FB
QUlJSE9zQ0thMEJPYkJ2bnh6ODVaZGp6c1RLVFVJQUFRUVFRQUFCQkJCQUFJR2lGeWgwCkFMSm05
bXdaMjYyYmRLOVpVK3FYTFN1VlM1V1NjaFVyU3NVS0ZhUlorZkxTNDdUVDVPVmJiMDNKRld4Y3VW
TGVIalZLUmw5OHNmejUKdlBQa3RlSERKWHZlUERrVXAxTjIwRW10VS9lZEhUcEl0eG8xcEo2V3Zi
eVd1MWFaTXRMcDVKTmxhS3RXc3ZURkY1MURmUFB1dS9LSApSbzFrVkpjdWhUNVhVRm5ZamdBQ0ND
Q0FBQUlJSUlCQUpna2tQUXh2NU5BaHVVay9wRS9KeXBLRElhUzZWS2tpMDk1N1QycTNiWnN3CnR3
VVp0ZHUwY2ZLNHcvQXVtelpOK2cwY0tHdCsvZFYzMzVvYTlFelNZT1NhUng3eDNSNjdjc3VhTmZL
bnl5NlRhZDk5Rjd1cHdQTTIKT2pkSlpRMmtQdHE1MDltMmJQcDBhZGUzYjRGODZWcnh6b01QeW1Y
MzNPT2N2dXVwcDhyY3JWdlRWUlRPaXdBQ0NDQ0FBQUlJSUlCQQphSUdrYTBEZWZmUlJtZXdUZk5U
V0NRUjcxcW9sblU4NVJTd3djTk43TzNiSUxUMTZ1RTlEUHo3ZHY3OTB1dTY2dU1HSEhXaVRUbUhT
Clc4dlRyMEVEMmJaMmJjSmp6eGs5V2xyb25DTit3VWNsM2ZOSWlROGZab1UyeTNLREQxdXo1ZnZ2
RDIvZ053SUlJSUFBQWdnZ2dBQUMKQ0JSYUlPa0FwS2syZ1RveDczUVhhTzNHbEFFREpIditmUG5Y
d1lQeXhvOC95dnNhY1B5Z3RRWTJRN2ViL3I1aGc4eDcrR0gzYWVEagprdHhjdVVGckhHeFdrUEw2
ODhjenpoQUxTRDU2NmluNSt4MTN5SDJkTzhzWldqdmhwcGMwT09paE5TenhtbVRsTEZraWZlKzlW
elo3CjVseThwRm8xbVcxemtIenlpZVRxK3A4MHFMSW1ZOWMzYVZJZ0dMSHpITkxySXlHQUFBSUlJ
SUFBQWdnZ2dNRFJDU1E5Q3Radk9uYVUKNzNYbThnTTZhV0N0MXExOXoxNWVaeklmTVdlT2ZObXdZ
YlRHWWM2cnIwcFhuVXd2VEhJLzZyZlh2aGt2YURPc2xsZGZuVyszWHZwcwpwQVk1OTJ1UU0xWURp
RVA2ZkpFR0xlTjc5WkxiZExad2I3SW1Zd08xMmRXT3ZPRERhanVlMVVDano0UUozbXhTUTJ0SGJK
MzluTjJ2Cm45ejQwa3Y1dHZNRUFRUVFRQUFCQkJCQUFBRUVqbDRnNlJvUU8yWDFaczNpQmgvZUln
MFlQRGo2TkZ0clFaSkoxb3hyN29vVkJZSVAKOXhnVktsZVdNWXNXeVovYXQzZFh5VDF2dmluV2Nk
eWJuaHMwU09adjJ4WmQ5YWoyNDRnTlBxSWI4eGFzOXVXUjd0MWpWL01jQVFRUQpRQUFCQkJCQUFB
RUVqbElnNlJvUTcvbDJhTk9uTmRyODZnZHR2cFN6YnAxczBSbk5UOUxhajJvNk1sYkxjOCtWV3Rx
Y3lVM2Y2T1I1CnlhUUpOOThzMVR6N3g5dDN0STZHTlZOSDNGcXJJMkx0MVV5dmFZZjBFUmRkRk0w
KzF4T1FXSWQ0Q3k3Q3BOdmZla3UrMWxxUktWcmIKWTZtQko5QUpzejk1RUVBQUFRUVFRQUFCQkJC
QW9LQkFvUUtRMWZyaC9ISHRpekZWUDV6SG5VRmo2dFI4ZlNuMmFsT29zTWtLMWV1aApoMEpscjZn
alFQWFVwbURqbGkxejhxOVl2VHJmZnNzM2Jvdys3NjVCVVRKcHdzS0YwbnJJRUttalRjbWFYWDU1
TXJ1U0Z3RUVFRUFBCkFRUVFRQUFCQkh3RWtnNUFIci9xS2hrK2M2WkVmQTVtbmROdHZkVkVXUExM
YzNoTDR0OU50WU81OVNNSm0xcTFheWVTRjRDczlBUWMKdXpkdGttelBFTDV0dEFOOU1zbUNtNXUx
N3dvSkFRUVFRQUFCQkJCQUFBRUVVaU9RVkI4UUc0SEtHM3pZU0ZRUGF3ZnZMTzE3c1ZQNwplT3pX
anQ1NzlDZjNwNTlrNGVUSnpxU0JoU2xtZGUxOG5reXFVYmR1Tkh1T1p5YjI3ZHBFekZ2dlVyVk9u
V2crRmhCQUFBRUVFRUFBCkFRUVFRS0Q0QlVMWGdOaG9Vb04xQm5HM1ZxTy96cjN4M0twVlV1NUVk
MURlSTRXdnBIMUFPbW5UcGFZWFhDQVA2QkM2eWFiVmVaUC8KaGQxdjlkS2wwYXpOSzlrNFY0ZFQz
YlBQbGxPMU0vdTJ2Qkd3Vm4zNG9aeWxjNHVRRUVBQUFRUVFRQUFCQkJCQUlEMENvV3RBc3JXegp0
L3RCM2thb2VqRTcyemY0OEY3R0w3dDNlNStHWHJiNU9uNzQ5TlBRK1QvLzhzdG8zbmIxNjBlWFJa
a3Jqd0FBSUFCSlJFRlViYUd0CmRqeDMwL0xQUG5NWGVVUUFBUVFRUUFBQkJCQkFBSUUwQ0lRT1FK
Wm92dzgzZGRJWnowdVhEYTQ4bWFralVoVTIzZG1uVDZoZGw3L3kKaXN6d3pGTGUvcXl6OHUzWHZu
SGo2UE5udEovSWVoMjZOMnl5aVExbkRCc20vN2p6enJDN2tBOEJCQkJBQUFFRUVFQUFBUVFTQ0lR
TwpRS3Bvc3lvM3JkbTZWYXhKVnFJMGQ4d1lHZm55eTRteUpOeG1zNXRQSHpvMFlSNGJCbmpRd0lG
eUlDOVhrM0xscFArNGNmbjJHZmIwCjAxSlZhMndzN2RLZklWZGVLUWM5L1VTY0RUNi92dFhtV3Vk
cEovUSs0OGRMcjdGajVkTm5uL1hKeFNvRUVFQUFBUVFRUUFBQkJCQkkKUmlCMEFOSk9QN2k3YWJW
K2dCK2hNNkw3ZlpCZjkvNzdjbXViTnRMdHJydmtaM2VIUWo3Mm56UkpydGU1UUxhdFhadnZDQmI4
ekxyNwpiam16VVNOWnR2ZndtRnRsTk1jTFR6NHBKMWF2bmk5dkhaMi80NiszM0JKZE4yZkxGamxI
QXdzYlN0Z3ZXVkR6bHdzdmxMYWRPOHMvCmQxbklJbUpkNGh0MTZ1UXM4d3NCQkJCQUFBRUVFRUFB
QVFRS0wxQXFvaW5zN2xmVnJpMHpQY1BjTnRVYWg2NDZLM3JOR2pWa3ZZNkMKOWJWdVc2Z2R5TjI2
a2JwbHlzaTJnd2RsajU3QXVxcGZvdnRYcWxCQnJ0Qmd4cDJOZk8yQ0JUSldhenB5dEZibGJaM0kw
RTJOdFltWApUUzVveWVvdkd1cnpGaG80Yk5aK0phdjBKOWZaY3VUWHZlZWZMNk0rK09ESWlwaWxB
UnFzVFAzMjIramFDcnAwYnRXcTBscm4rR2lzCnpiUTI1T1JJOXZyMU1sZXZZMmMwbDBnNVhYNUNa
MDhQTzRHaFo5ZVVMZHJvWTdOZWYxMXk5KzJUUTNtM2ExTnVialJBcXFFMVBPZG8Kc3pnM1ZkVFJ5
UnJweUdDajFMYU1McE1RUUFBQkJCQkFBQUVFRUNncEFra0ZJRnUxNDNsYm5SMDhSNE9LUk1tcVZX
NXExVW9lbWpOSApMdFFhaktWN0xBUTVraXJyNHJiOSs1MFB4OE8waG1MODU1OGYyWmkzOU4zSEg4
djFWMXdoQ3dKbVVMY1AzNU52djkxcEpsWGdJSjRWClZtc3k2ZHByWmFUTzYzRzRYc096TWM2aU5l
bWEvc3d6OHJzQkErTGtLUHJWVnU1cUdueHREeDhuUmd0bHplQzZqaGdSZmM0Q0FnZ2cKZ0FBQ0ND
Q0FBQUxwRmdqZEJNc0tXazJEaWVVNjAvZ05MVnFJMzQ0MkFHNFhIWFZxNFpRcE1uSGxTamxaNTkw
WVBtaVFXTURoSnF0NQo2S05EODdyZnpIZnQyVk5xbDg1L3RQcGFjMUt2UXdlWm83VVN0Mm1BMGx5
L3hjK2ZRNlNCZmlpMzVsbXJkQ2hnNjZNUmxFcnBPWWJPCm1DRlppeGRMTHkxWHZHa083VHlYYXpP
dU4wYU9sQ3l0elVsbjhHSFhaT1h1ZSthWmNrTFFCY1pzYjZ0enFiUlZXeElDQ0NDQUFBSUkKSUlB
QUFpVkpJS2thRUcvQk4ycUFrYVZEODY3Uk9UZ3FhMU9tOXQyNlNUT2RsRERNNkZqZTQ0UmR6dFht
WGN1MDlzSnFCTnJvYk94VgpZb2JiRFhzY041OGR4MnBadm5qbkhWbVhsU1cxNnRXVGh0cDM1YmZh
bE1zQ0xSSUNDQ0NBQUFJSUlJQUFBZ2lrWHFEUUFVanFpOElSCkVVQUFBUVFRUUFBQkJCQkE0SGdY
aUczWmRMeGZMOWVIQUFJSUlJQUFBZ2dnZ0FBQ2FSUWdBRWtqUHFkR0FBRUVFRUFBQVFRUVFDRFQK
QkFoQU11Mk9jNzBJSUlBQUFnZ2dnQUFDQ0tSUmdBQWtqZmljR2dFRUVFQUFBUVFRUUFDQlRCTWdB
TW0wTzg3MUlvQUFBZ2dnZ0FBQwpDQ0NRUmdFQ2tEVGljMm9FRUVBQUFRUVFRQUFCQkRKTmdBQWsw
KzQ0MTRzQUFnZ2dnQUFDQ0NDQVFCb0ZDRURTaU0rcEVVQUFBUVFRClFBQUJCQkRJTkFFQ2tFeTc0
MXd2QWdnZ2dBQUNDQ0NBQUFKcEZDQUFTU00rcDBZQUFRUVFRQUFCQkJCQUlOTUVDRUF5N1k1enZR
Z2cKZ0FBQ0NDQ0FBQUlJcEZHQUFDU04rSndhQVFRUVFBQUJCQkJBQUlGTUV5QUF5YlE3enZVaWdB
QUNDQ0NBQUFJSUlKQkdBUUtRTk9KegphZ1FRUUFBQkJCQkFBQUVFTWsyQUFDVFQ3ampYaXdBQ0ND
Q0FBQUlJSUlCQUdnVUlRTktJejZrUlFBQUJCQkJBQUFFRUVNZzBBUUtRClRMdmpYQzhDQ0NDQUFB
SUlJSUFBQW1rVUlBQkpJejZuUmdBQkJCQkFBQUVFRUVBZzB3UlNGb0Q4dW1lUGZEaHhvb3k1OUZK
Wk1XUEcKY2U4NGYreFlhWG5DQ1ZLdGRHbm5wNlkranV6WThiaS9iaTRRQVFRUVFBQUJCQkJBQUlH
akVTZ1YwVlRZQTJUTm1pWHpubjllNWkxYwpLQjlzMmlTNWVRZnFmZnJwOG1wT1RtRVBlMHpzTjZS
NWMvbmJWMS9sSyt2dlR6cEpGdTNhbFc4ZFR4QkFBQUVFRUVBQUFRUVFRT0NJClFOa2ppK0dYRmp6
Mm1Bd2VNVUxXSGpqZ3U5UFBlL2Y2cmorZVZnNTk0QUZaZitPTnNrRURqaS8yN3orZUxvMXJRUUFC
QkJCQUFBRUUKRUVDZ3lBUUsxUVRycVhIajhnVWZGYlI0VGNxVks3SkNsc1FEdCs3ZFcyWnYzaXh6
Rnk4dWljV2pUQWdnZ0FBQ0NDQ0FBQUlJbEVpQgpRZ1VnOXoveGhBeHQyVkllN05yVjZmZXhZL3Qy
bVhqZmZTWHlBaWtVQWdnZ2dBQUNDQ0NBQUFJSWxCeUJRalhCYW5YTk5mS2svcEFRClFBQUJCQkJB
QUFFRUVFQUFnV1FFQ2xVRGtzd0pqb1c4Qi9idE94YUtXYUNNVnU2RHYveFNZRDByRUVBQUFRUVFR
QUFCQkJBb3FRSVoKR1lCWUovbzdPM1NRYmpWcVNMMnlaYVY4eFlwU3Ewd1o2WFR5eVRLMFZTdFor
dUtMenYzNjV0MTM1UStOR3Ntb0xsM2tVSndPOTRsdQo3TWFWSytYdFVhTms5TVVYeTUvUE8wOWVH
ejVjc3VmTks5U3gxc3llTFdPN2RaUHVOV3RLZlMxejVWS2xwSnlXdTJLRkN0S3NmSG5wCmNkcHA4
dkt0dHlZcUR0c1FRQUFCQkJCQUFBRUVFRWk3d0ZFTncrc3QvVHNQUGlpWDNYT1BzNnJycWFmSzNL
MWJ2WnRMeFBLV05XdmsKVDVkZEp0TysreTZ3UEcxMGpvL0src0grbzUwN25iekxwaytYZG4zN0Z0
alBnb3phYmRvNDY5MWhlSmRObXliOUJnNlVOYi8rV2lDLwpyYWlwd2NNa0RVYXVlZVFSMyszZWxa
RkRoK1FtRFlxbVpHWEpRZStHT010ZHFsU1JhZSs5SjdYYnRvMlRnOVVJSUlBQUFnZ2dnQUFDCkNL
UlBJR05xUU9hTUhpMHRkTzRPditDamt2cVhpcmtISzdSNWt4dDgyS1l0MzM4Zms4UC82ZFA5KzB1
bjY2NkxHM3pZWHB0MDZwWGUKano0cS9SbzBrRzFyMS9vZktHL3R1NXB2c2svd1VWc25QdXhacTVa
MFB1VVVKNkJ4RC9MZWpoMXlTNDhlN2xNZUVVQUFBUVFRUUFBQgpCQkFvVVFJWkVZRGtMRmtpZmUr
OVZ6Wjc1bHk4cEZvMW1XMXplWHp5aWVUcStwLzBRNzQxWWJxK1NaTUN3WWpkc1VNSGcrc2ZsdVRt
CnlnMWFVMkt6Z3BUWG56K2VjWVpZUVBMUlUwL0ozKys0USs3cjNGbk8wRm9WTjcya1FVMFByYWxJ
MUx5cnFUYmRPakZ2aHd1MGRtUEsKZ0FHU1BYKysvRXZMODhhUFA4cjdHbkQ4b0xVME5nTzltLzYr
WVlQTWUvaGg5eW1QQ0NDQUFBSUlJSUFBQWdpVUdJRkNqWUpWWWtvZgpvaURXaEdtZ05ydmFrUmQ4
V0czSHN4cG85Smt3SWQvZU5iUjJ4TmJaejluOStzbU5MNzJVYjN1WUoyNkkwbDc3WnJ5Z3piQmFY
bjExCnZ0MTY2Yk9SR2l6Y3I4SENXQTE4RHVuelJScTBqTy9WUzI3VFdlWDkwbTg2ZHBUdmRjYjFB
enJaWWEzV3JmMnlTSG1kZ1gzRW5EbnkKWmNPRzBScWVPYSsrS2wxMXNrZ1NBZ2dnZ0FBQ0NDQ0FB
QUlsU2VDNHJ3RjVidEFnbWI5dFc5VDhVZTNIRVJ0OFJEZm1MVmd0eGlQZAp1OGV1RHZYYytuZk1Y
YkdpUVBEaDdseWhjbVVaczJpUi9LbDllM2VWM1BQbW0ySWQzdU9sNnMyYXhRMCt2UHNNR0R3NCtq
UmJhMEZJCkNDQ0FBQUlJSUlBQUFnaVVOSUhqdmdaa3J1ZUR2WFhRdHVBaVRMcjlyYmZrYTYwVm1h
SzFENVlhZUFLR1JQdFB1UGxtcWFiTnVJTFMKYUIwTmE2YU9YTFZXUjlmYXE1bGYwdzdwSXk2NktP
RnVPN1RKMWhwdGZ2V0ROaGZMV2JkT3R1aE03Q2RwN1VjMUhSbXI1Ym5uU2kzUAplYi9SeVNGSkND
Q0FBQUlJSUlBQUFnaVVOSUhqUGdCWnZuRmoxTHk3ZmtoUEprMVl1RkJhRHhraWRiUnBVN1BMTHcv
YzFUQjdQZlJRCllEN0xVRkZIQ3V1cFRhckdMVnZtNUYreGVuWGMvVlpyTVBTNDlpR1pxc0ZRM0Js
THBrN04xM2RscnpZOUl5R0FBQUlJSUlBQUFnZ2cKVU5JRWp1c0FaUGVtVFpMdEdRcTNqWGJvVGla
WmtIQ3o5cVVJbTVwcUIzUHJqeEUydFdyWFRpUXZBRm5wQ1pTOCt6OSsxVlV5Zk9aTQppWGhYNWkx
YjUzUmJielVvbHZ6eUhON0Nid1FRUUFBQkJCQkFBQUVFU29iQWNkMEhaTHMyV2ZMV0ExU3RVNmRJ
MWF0cjUvTmtVbzI2CmRhUFpjM3htTkxlUnM3ekJoNDJnOWJCMnFNL1NQaU03dFkvSGJ1MVl2MGQv
Y24vNlNSWk9udXhNZGhnOUlBc0lJSUFBQWdnZ2dBQUMKQ0pSQWdlTzZCcVR1MldmTHFkb3BmRnZl
Q0ZpclB2eFF6dEk1T29vcXJjNmJ0RERzOFZjdlhSck4ycnlTamM5MUpObm9YWU4xeG5hMwpWcU8v
emhueTNLcFZVdTVFZDFEZUkza3JhUitRVHRwVXJPa0ZGOGdET3ZRdkNRRUVFRUFBQVFRUVFBQ0Jr
aXB3WE5lQUdIcGI3WGp1CnB1V2ZmZVl1RnNtanpUUHl3NmVmaGo3MjUxOStHYzNicm43OTZMSXRa
R3NuZFRkd3NwRzFYc3pPOWcwK3ZEdjlzbnUzOXluTENDQ0EKQUFJSUlJQUFBZ2lVT0lIalBnQnAz
N2h4RlAwWjdXK3hYb2ZBRFp0c2dzQVp3NGJKUCs2OE0rd3VjbWVmUHFIeUxuL2xGWm5obVYyOQov
VmxuNWR0dmlmYjdjRk1ubmZHOGRObmd5cXFaT3BJV0NRRUVFRUFBQVFRUVFBQ0JraXh3M0FjZ3c1
NStXcXBxRFlLbFhmb3o1TW9yCjVhQlBmd3NuZytmWHQ5cGM2enp0aE41bi9IanBOWGFzZlByc3M1
NnQ4UmR0ZHZQcFE0Zkd6NkJiYkRqZFFRTUh5b0c4WEUzS2xaUCsKNDhibDI2ZUtOcXR5MDVxdFc4
V2FaQ1ZLYzhlTWtaRXZ2NXdvQzlzUVFBQUJCQkJBQUFFRUVFaTd3SEVmZ05UUitUditlc3N0VWVn
NQpXN2JJT1JwWTJOQzJmc21DZzc5Y2VLRzA3ZHhaL3JuTFFoWWRNbGQvR25YcTVDeUgrZFYvMGlT
NVh1ZmsyTFoyYmI3c0ZrVE11dnR1Ck9iTlJJMW0yOS9EWVZXVTB4d3RQUGlrblZxK2VMMjg3RFpU
Y3RGb0RwaEU2STdwZjRMVHUvZmZsMWpadHBOdGRkOG5QN2c0OElvQUEKQWdnZ2dBQUNDQ0JRUWdW
S1JUUWxXelliblduVzY2OUw3cjU5Y2lodjkwMjV1ZEVQN0RXMHh1RWNiVGJrcG9vNmVsTWpIZkZw
MUlJRgpVa2FYMDVFRzZJZitxZDkrR3oxMUJWMDZ0MnBWYWExemZEVFdabG9iY25Ja2UvMTZtYXVq
UysyTTVoSXBwOHRQNk96cHNSTVlydFZyCkdhczFIVGxhTy9HMlRnam9wc2JhVk1vbUY3Ums5UzRO
OVhrTERYZzJhLytNVmZxVDYydzU4dXZlODgrWFVSOThjR1NGWittcTJyVmwKcG1kNDNxWmFVOUpW
WjBXdldhT0dyTmR5ZnEzYkZtckhkN2R1cEc2Wk1yTHQ0RUhabzhld3J1cVg2UDZWS2xTUUt6U1lD
WnI5M1hOYQpGaEZBQUFFRUVFQUFBUVFRS0RLQnBBTVEreGEvbW42bzNwNTgzQ0xXVEtqcmlCRkZk
akdKRG16bG5uVHR0VEpTNS9VNFhLK1JLUGZoCmJkWTBhdm96ejhqdkJnd29rSG1ZMXF5TS8venpB
dXUvKy9oanVmNktLMlJCd0V6a0ZxUk52djEycDNsWGdZUGtyZGlxSGMvYjZtenMKT1JwVUpFcFdq
WFZUcTFieTBKdzVjcUhXdkN6ZFl5SElrVlJaRjdmdDM1KzI0TzlJU1ZoQ0FBRUVFRUFBQVFRUXlI
U0JwSnRnbFNwZApXdnFlZWFhY2tLUmNXNTBqbzIzUG5rbnVsYnJzVnU2aE0yWkkxdUxGMGt2bkE0
azNYYUNCWEs3Tm9kNFlPVkt5dEhiQkwvaXdVblhWCmE2bXR4L1NtK2xvRFVhOURCNW1qdFNtM2FZ
RFNYR3Q3OHVjUWFhREJtelhQV3FWRDZscmZra1NwbXVaYnJqT2szOUNpUllIajJINDIKY0c4WEhl
VnI0WlFwTW5IbFNqbFpyMnY0b0VGaUFZZWJyS2Fuanc3Tm02NmFKN2NjUENLQUFBSUlJSUFBQWdn
Z1lBSkoxNEFjTDJ4VwpJMksxRlYrODg0NnN5OHFTV3ZYcVNVUHRTL0ZiYlJKbEgveFRsWEsxbWRR
eXJYV3g4N1hSV2MycnhBeTNHL1k4R3pYQXlOS2hlZGZvCjNDR1Z0ZWxZKzI3ZHBKbE9TaGhtZEt5
dzV5QWZBZ2dnZ0FBQ0NDQ0FBQUpGTFpDeEFVaFJ3M0o4QkJCQUFBRUVFRUFBQVFRUUtDZ1EKMjBL
b1lBN1dJSUFBQWdnZ2dBQUNDQ0NBQUFJcEVpQUFTUkVraDBFQUFRUVFRQUFCQkJCQUFJRmdBUUtR
WUNOeUlJQUFBZ2dnZ0FBQwpDQ0NBUUlvRUNFQlNCTWxoRUVBQUFRUVFRQUFCQkJCQUlGaUFBQ1RZ
aUJ3SUlJQUFBZ2dnZ0FBQ0NDQ1FJZ0VDa0JSQmNoZ0VFRUFBCkFRUVFRQUFCQkJBSUZpQUFDVFlp
QndJSUlJQUFBZ2dnZ0FBQ0NLUklnQUFrUlpBY0JnRUVFRUFBQVFRUVFBQUJCSUlGQ0VDQ2pjaUIK
QUFJSUlJQUFBZ2dnZ0FBQ0tSSWdBRWtSSklkQkFBRUVFRUFBQVFRUVFBQ0JZQUVDa0dBamNpQ0FB
QUlJSUlBQUFnZ2dnRUNLQkFoQQpVZ1RKWVJCQUFBRUVFRUFBQVFRUVFDQllnQUFrMklnY0NDQ0FB
QUlJSUlBQUFnZ2drQ0lCQXBBVVFYSVlCQkJBQUFFRUVFQUFBUVFRCkNCWWdBQWsySWdjQ0NDQ0FB
QUlJSUlBQUFnaWtTSUFBSkVXUUhBWUJCQkJBQUFFRUVFQUFBUVNDQlFoQWdvM0lnUUFDQ0NDQUFB
SUkKSUlBQUFpa1NJQUJKRVNTSFFRQUJCQkJBQUFFRUVFQUFnV0NCdEFjZzg4ZU9sWllubkNEVlNw
ZDJmbXJxNDhpT0hZTkxudUU1ZnQyegpSejZjT0ZIR1hIcXBySmd4SThNMXVId0VFRUFBQVFRUVFB
Q0JZMFdnVkVSVE9nczdwSGx6K2R0WFgrVXJ3dTlQT2trVzdkcVZieDFQClJMSm16Wko1eno4djh4
WXVsQTgyYlpMY1BKVGVwNTh1citia1FJUUFBZ2dnZ0FBQ0NDQ0FRSWtYS0p2dUVnNTk0QUZaZitP
TnNrRUQKamkvMjcwOTNjVXJrK1JjODlwZ01IakZDMWg0NDRGdStuL2Z1OVYzUFNnUVFRQUFCQkJC
QUFBRUVTcHBBMnB0Z3RlN2RXMlp2M2l4egpGeTh1YVRZbHBqeFBqUnVYTC9pb29DVnJVcTVjaVNr
ZkJVRUFBUVFRUUFBQkJCQkFJS3hBMmdPUXNBWE41SHozUC9HRURHM1pVaDdzCjJ0WHA5N0ZqKzNh
WmVOOTltVXpDdFNPQUFBSUlJSUFBQWdnY293SnBiNEoxakxvVmE3RmJYWE9OUEtrL0pBUVFRQUFC
QkJCQUFBRUUKam5XQmxOYUFITmkzNzVqMHNISWYvT1dYWTdMc0ZCb0JCQkJBQUFFRUVFQUFnV05K
NEtnQ0VPc2NmV2VIRHRLdFJnMnBWN2FzbEs5WQpVV3FWS1NPZFRqNVpoclpxSlV0ZmZOR3grT2Jk
ZCtVUGpSckpxQzVkNUZDY2p0U0owRGF1WENsdmp4b2xveSsrV1A1ODNubnkydkRoCmtqMXZYcUdP
dFdiMmJCbmJyWnQwcjFsVDZtdVpLNWNxSmVXMDNCVXJWSkJtNWN0TGo5Tk9rNWR2dlRWUmNkaUdB
QUlJSUlBQUFnZ2cKZ0FBQ2hSUW8xREM4Vzlhc2tUOWRkcGxNKys2N3dOTzIwVGsrS3VzSCs0OTI3
blR5THBzK1hkcjE3VnRnUHdzeWFyZHA0NngzaCtGZApObTJhOUJzNFVOYjgrbXVCL0xhaXBnWVBr
elFZdWVhUlIzeTNlMWRHRGgyU216UW9tcEtWSlFlOUcrSXNkNmxTUmFhOTk1N1VidHMyClRvNzBy
bjdud1FmbHNudnVjUXJSOWRSVFplN1dyZWt0RUdkSEFBRUVFRUFBQVFRUVFDQ0VRTkkxSUhOR2o1
WVdPbmVIWC9CUlNVOVkKS3Vha0s3UjVreHQ4MktZdDMzOGZrOFAvNmRQOSswdW42NjZMRzN6WVhw
dDBDcFBlano0cS9SbzBrRzFyMS9vZktHL3R1NXB2c2svdwpVVnNuUHV4WnE1WjBQdVVVSjZCeEQv
TGVqaDF5UzQ4ZTdsTWVFVUFBQVFRUVFBQUJCQkJBSUFVQ1NRVWdPVXVXU045Nzc1WE5ucmtMCkw2
bFdUV2JiWEI2ZmZDSzV1djRuL1pCdlRaaXViOUtrUURCaTVUMTBNTGorWVVsdXJ0eWdOU1UySzBo
NS9mbmpHV2VJQlNRZlBmV1UKL1AyT08rUyt6cDNsREsxVmNkTkxHdFQwMEpxS1JNMjdtbXJUclJQ
emRyaEFhemVtREJnZzJmUG55NyswUEcvOCtLTzhyd0hIRDFwTApZek9MdStudkd6Ykl2SWNmZHAv
eWlBQUNDQ0NBQUFJSUlJQUFBa2NwRUhvVUxHdkNORkNiWGUzSUN6NnN0dU5aRFRUNlRKaVFyd2cx
CnRIYkUxdG5QMmYzNnlZMHZ2WlJ2ZTVnbmJvalNYdnRtdktETnNGcGVmWFcrM1hycHM1RWFMTnl2
d2NKWURYd082Zk5GR3JTTTc5VkwKYnRQWnd2M1NienAybE85MXh2VURPdGxocmRhdC9iSkllWjJC
ZmNTY09mSmx3NGJSR3A0NXI3NHFYWFVTUUJJQ0NDQ0FBQUlJSUlBQQpBZ2djdlVEb0dwRG5CZzJT
K2R1MlJjLzRxUGJqaUEwK29odnpGcXdXNDVIdTNXTlhoM3B1L1R2bXJsaFJJUGh3ZDY1UXViS01X
YlJJCi90Uyt2YnRLN25uelRiRU83L0ZTOVdiTjRnWWYzbjBHREI0Y2ZacXR0U0FrQkJCQUFBRUVF
RUFBQVFRUVNJMUE2QnFRdVo0UDl0WkIKMjRLTE1PbjJ0OTZTcjdWV1pJcldQbGhxNEFrWUV1MC80
ZWFicFpvMjR3cEtvM1UwckprNmN0VmFIVjFycjJaK1RUdWtqN2pvb29TNwo3ZEFtVzJ1MCtkVVAy
bHdzWjkwNjJhSXpzWitrdFIvVmRHU3NsdWVlSzdVODUvMUdKLzBqSVlBQUFnZ2dnQUFDQ0NDQVFH
b0VRZ2NnCnl6ZHVqSjZ4dTM1SVR5Wk5XTGhRV2c4WkluVzBhVk96eXk4UDNOVUsxZXVoaHdMeldZ
YUtPZ0pVVDIxU05XN1pNaWYvaXRXcjQrNjMKV29PaHg3VVB5VlFOaHVMT1dESjFhcjYrSzN1MTZS
a0pBUVFRUUFBQkJCQkFBQUVFVWlNUUtnRFp2V21UWkh1R3dtMmpIYnFUU1JZawozS3g5S2NLbXB0
ckIzUHBqaEUydDJyVVR5UXRBVm5vQ0plLytqMTkxbFF5Zk9WTWkzcFY1eTlZNTNkWmJEWW9sdnp5
SHQvQWJBUVFRClFBQUJCQkJBQUFFRWprWWdWQitRN2Rwa3lWc1BVTFZPbmFNNVorQysxYlh6ZVRL
cFJ0MjYwZXc1UGpPYTI4aFozdUREUnRCNldEdlUKWjJtZmtaM2F4Mk8zZHF6Zm96KzVQLzBrQ3lk
UGRpWTdqQjZRQlFRUVFBQUJCQkJBQUFFRUVFaVpRS2dha0xwbm55Mm5hcWZ3YlhragpZSzM2OEVN
NVMrZm9LS3EwT20vU3dyREhYNzEwYVRScjgwbzJQdGVSWktOM0RkWVoyOTFhamY0Nlo4aHpxMVpK
dVJQZFFYbVA1SzJrCmZVQTZhVk94cGhkY0lBL28wTDhrQkJCQUFBRUVFRUFBQVFRUVNLMUFxQm9R
TzJWYjdYanVwdVdmZmVZdUZzbWp6VFB5dzZlZmhqNzIKNTE5K0djM2Jybjc5NkxJdFpHc25kVGR3
c3BHMVhzek85ZzArdkR2OXNudTM5eW5MQ0NDQUFBSUlJSUFBQWdnZ2tDS0IwQUZJKzhhTgpvNmQ4
UnZ0YnJOY2hjTU1tbXlCd3hyQmg4bzg3N3d5N2k5elpwMCtvdk10ZmVVVm1lR1pYYjMvV1dmbjJX
Nkw5UHR6VVNXYzhMMTAyCnVOSm5wbzZrUlVJQUFRUVFRQUFCQkJCQUFJSFVDNFFPUUlZOS9iUlUx
Um9FUzd2MFo4aVZWOHBCbi80V1RnYlByMisxdWRaNTJnbTkKei9qeDBtdnNXUG4wMldjOVcrTXYy
dXptMDRjT2paOUJ0OWh3dW9NR0RwUURlYm1hbENzbi9jZU55N2RQRlcxVzVhWTFXN2VLTmNsSwps
T2FPR1NNalgzNDVVUmEySVlBQUFnZ2dnQUFDQ0NDQVFDRUZRZ2NnZFhUK2pyL2Vja3YwTkhPMmJK
RnpOTEN3b1czOWtnVUhmN253ClFtbmJ1YlA4YzVlRkxEcGtydjQwNnRUSldRN3pxLytrU1hLOXpz
bXhiZTNhZk5rdGlKaDE5OTF5WnFOR3NtenY0YkdyeW1pT0Y1NTgKVWs2c1hqMWYzbllhS0xscHRR
Wk1JM1JHZEwvQWFkMzc3OHV0YmRwSXQ3dnVrcC9kSFhoRUFBRUVFRUFBQVFRUVFBQ0JsQXFVaW1o
Swo1b2dEOUVQLzFHKy9qZTVTUVpmT3JWcFZXdXNjSDQyMW1kYUduQnpKWHI5ZTV1cm9VanVqdVVU
SzZmSVRPbnQ2N0FTR2F4Y3NrTEZhCjA1R2p0Uk52NjRTQWJtcXNUYVZzY2tGTFZ1L1NVSiszMElC
bnMvYlBXS1UvdWM2V0k3L3VQZjk4R2ZYQkIwZFdlSmF1cWwxYlpucUcKNTIycU5TVmRkVmIwbWpW
cXlIb3Q1OWU2YmFGMmZIZnJSdXFXS1NQYkRoNlVQWG9NNjZwK2llNWZxVUlGdVVLRG1hRFozejJu
VGRtaQpqZUkxNi9YWEpYZmZQam1VZDdzMjVlWkdBN3NhV2pOMWpqWXZjMU5GSGVXcmtZNE1Oa3B0
eStneUNRRUVFRUFBQVFRUVFBQ0JraUtRCmRBQml0UStUcnIxV1J1cThIb2ZyTllJdnhacEdUWC9t
R2ZuZGdBRUZNZy9UbXBYeG4zOWVZUDEzSDM4czExOXhoU3dJbUluY1BueFAKdnYxMnAzbFhnWVBr
cmRpcUhjL2I2bXpzT1JwVUpFcFdIWFJUcTFieTBKdzVjcUhXdkN6ZFl5SElrVlJaRjdmdDMxK3NI
K3JOdTVvRwpYOXVUaXhPZFFsdHpzcTRqUmh5NUFKWVFRQUFCQkJCQUFBRUVFRWl6UU9nbVdHNDVT
NVV1TFVObnpKQ3N4WXVsbDg0SEVtKzZRRHZ3CjVkb2M2bzJSSXlWTGF4ZjhnZzg3WnRlZVBhVzJI
dE9iNm1zTlJMME9IV1NPMXFiY3BnRktjLzBXUDM4T2tRYjZvZHlhWjYzU0lYV3QKYjBtaVZFM3pM
ZGNaMG05bzBhTEFjV3cvRzdpM2k0N3l0WERLRkptNGNxV2NyTmMxZk5BZ3NZRERUVmJUMDBlSDVp
M3VHZ1h6N252bQptWEtDVzVDUWoyMTFMcFcyYWt0Q0FBRUVFRUFBQVFRUVFLQWtDU1JkQXhKYmVQ
dUczbW9ydm5qbkhWbVhsU1cxNnRXVGh0cVg0cmZhCkpNbysrS2NxNVdvenFXVmE2MkxuYTZPem1s
ZUpHVzQzN0hrMmFvQ1JwVVB6cnRHNVF5cHIwN0gyM2JwSk01MlVNTXpvV0dIUFFUNEUKRUVBQUFR
UVFRQUFCQkJEd0Z6anFBTVQvc0t4RkFBRUVFRUFBQVFRUVFBQUJCQW9LeExac0twaUROUWdnZ0FB
Q0NDQ0FBQUlJSUlCQQppZ1FJUUZJRXlXRVFRQUFCQkJCQUFBRUVFRUFnV0lBQUpOaUlIQWdnZ0FB
Q0NDQ0FBQUlJSUpBaUFRS1FGRUZ5R0FRUVFBQUJCQkJBCkFBRUVFQWdXSUFBSk5pSUhBZ2dnZ0FB
Q0NDQ0FBQUlJcEVpQUFDUkZrQndHQVFRUVFBQUJCQkJBQUFFRWdnVUlRSUtOeUlFQUFnZ2cKZ0FB
Q0NDQ0FBQUlwRWlBQVNSRWtoMEVBQVFRUVFBQUJCQkJBQUlGZ0FRS1FZQ055SUlBQUFnZ2dnQUFD
Q0NDQVFJb0VDRUJTQk1saApFRUFBQVFRUVFBQUJCQkJBSUZpQUFDVFlpQndJSUlBQUFnZ2dnQUFD
Q0NDUUlnRUNrQlJCY2hnRUVFQUFBUVFRUUFBQkJCQUlGaUFBCkNUWWlCd0lJSUlBQUFnZ2dnQUFD
Q0tSSWdBQWtSWkFjQmdFRUVFQUFBUVFRUUFBQkJJSUZDRUNDamNpQkFBSUlJSUFBQWdnZ2dBQUMK
S1JJZ0FFa1JKSWRCQUFFRUVFQUFBUVFRUUFDQllBRUNrR0FqY2lDQUFBSUlJSUFBQWdnZ2dFQ0tC
QWhBVWdUSllSQkFBQUVFRUVBQQpBUVFRUUNCWUlPMEJ5UHl4WTZYbENTZEl0ZEtsblorYStqaXlZ
OGZna21kNGpsLzM3SkVQSjA2VU1aZGVLaXRtek1od0RTNGZBUVFRClFBQUJCQkJBNEZnUktCWFJs
TTdDRG1uZVhQNzIxVmY1aXZEN2swNlNSYnQyNVZ2SEU1R3NXYk5rM3ZQUHk3eUZDK1dEVFpza053
K2wKOSttbnk2czVPUkFoZ0FBQ0NDQ0FBQUlJSUZEaUJjcW11NFJESDNoQTF0OTRvMnpRZ09PTC9m
dlRYWndTZWY0Rmp6MG1nMGVNa0xVSApEdmlXNytlOWUzM1hzeElCQkJCQUFBRUVFRUFBZ1pJbWtQ
WW1XSzE3OTViWm16ZkwzTVdMUzVwTmlTblBVK1BHNVFzK0ttakptcFFyClYyTEtSMEVRUUFBQkJC
QkFBQUVFRUFncmtQWUFKR3hCTXpuZi9VODhJVU5idHBRSHUzWjErbjNzMkw1ZEp0NTNYeWFUY08w
SUlJQUEKQWdnZ2dBQUN4NmhBMnB0Z0hhTnV4VnJzVnRkY0kwL3FEd2tCQkJCQUFBRUVFRUFBZ1dO
ZElLVTFJQWYyN1RzbVBhemNCMy81NVpncwpPNFZHQUFFRUVFQUFBUVFRUU9CWUVqaXFBTVE2Ujkv
Wm9ZTjBxMUZENnBVdEsrVXJWcFJhWmNwSXA1TlBscUd0V3NuU0YxOTBMTDU1CjkxMzVRNk5HTXFw
TEZ6a1VweU4xSXJTTksxZksyNk5HeWVpTEw1WS9uM2VldkRaOHVHVFBtMWVvWTYyWlBWdkdkdXNt
M1d2V2xQcGEKNXNxbFNrazVMWGZGQ2hXa1dmbnkwdU8wMCtUbFcyOU5WQnkySVlBQUFnZ2dnQUFD
Q0NDQVFDRUZDalVNNzVZMWErUlBsMTBtMDc3NwpMdkMwYlhTT2o4cjZ3ZjZqblR1ZHZNdW1UNWQy
ZmZzVzJNK0NqTnB0MmpqcjNXRjRsMDJ1S2VhdUFBQWdBRWxFUVZTYkp2MEdEcFExCnYvNWFJTCt0
cUtuQnd5UU5ScTU1NUJIZjdkNlZrVU9INUNZTmlxWmtaY2xCNzRZNHkxMnFWSkZwNzcwbnRkdTJq
Wk1qdmF2ZmVmQkIKdWV5ZWU1eENkRDMxVkptN2RXdDZDOFRaRVVBQUFRUVFRQUFCQkJBSUlaQjBE
Y2ljMGFPbGhjN2Q0UmQ4Vk5JVGxvbzU2UXB0M3VRRwpIN1pweS9mZngrVHdmL3AwLy83UzZicnI0
Z1lmdHRjbW5jS2s5Nk9QU3I4R0RXVGIyclgrQjhwYis2N21tK3dUZk5UV2lROTcxcW9sCm5VODV4
UWxvM0lPOHQyT0gzTktqaC91VVJ3UVFRQUFCQkJCQUFBRUVFRWlCUUZJQlNNNlNKZEwzM250bHMy
ZnV3a3VxVlpQWk5wZkgKSjU5SXJxNy9TVC9rV3hPbTY1czBLUkNNV0hrUEhReXVmMWlTbXlzM2FF
Mkp6UXBTWG4vK2VNWVpZZ0hKUjA4OUpYKy80dzY1cjNObgpPVU5yVmR6MGtnWTFQYlNtSWxIenJx
YmFkT3ZFdkIwdTBOcU5LUU1HU1BiOCtmSXZMYzhiUC80bzcydkE4WVBXMHRqTTRtNzYrNFlOCk11
L2hoOTJuUENLQUFBSUlJSUFBQWdnZ2dNQlJDb1FlQmN1YU1BM1VabGM3OG9JUHErMTRWZ09OUGhN
bTVDdENEYTBkc1hYMmMzYS8KZm5MalN5L2wyeDdtaVJ1aXROZStHUzlvTTZ5V1YxK2RiN2RlK215
a0JndjNhN0F3VmdPZlEvcDhrUVl0NDN2MWt0dDB0bkMvOUp1TwpIZVY3blhIOWdFNTJXS3QxYTc4
c1VsNW5ZQjh4WjQ1ODJiQmh0SVpuenF1dlNsZWRCSkNFQUFJSUlJQUFBZ2dnZ0FBQ1J5OFF1Z2Jr
CnVVR0RaUDYyYmRFelBxcjlPR0tEaitqR3ZBV3J4WGlrZS9mWTFhR2VXLytPdVN0V0ZBZyszSjBy
Vks0c1l4WXRraisxYisrdWtudmUKZkZPc3czdThWTDFaczdqQmgzZWZBWU1IUjU5bWF5MElDUUVF
RUVBQUFRUVFRQUFCQkZJakVMb0daSzduZzcxMTBMYmdJa3k2L2EyMwo1R3V0RlptaXRRK1dHbmdD
aGtUN1Q3ajVacW1temJpQzBtZ2REV3Vtamx5MVZrZlgycXVaWDlNTzZTTXV1aWpoYmp1MHlkWWFi
WDcxCmd6WVh5MW0zVHJib1RPd25hZTFITlIwWnErVzU1MG90ejNtLzBVbi9TQWdnZ0FBQ0NDQ0FB
QUlJSUpBYWdkQUJ5UEtORzZObjdLNGYKMHBOSkV4WXVsTlpEaGtnZGJkclU3UExMQTNlMVF2VjY2
S0hBZkphaG9vNEExVk9iVkkxYnRzekp2MkwxNnJqN3JkWmc2SEh0UXpKVgpnNkc0TTVaTW5acXY3
OHBlYlhwR1FnQUJCQkJBQUFFRUVFQUFnZFFJaEFwQWRtL2FKTm1lb1hEYmFJZnVaSklGQ1Rkclg0
cXdxYWwyCk1MZitHR0ZUcTNidFJQSUNrSldlUU1tNy8rTlhYU1hEWjg2VWlIZGwzckoxVHJmMVZv
Tml5Uy9QNFMzOFJnQUJCQkJBQUFFRUVFQUEKZ2FNUkNOVUhaTHMyV2ZMV0ExU3RVK2RvemhtNGIz
WHRmSjVNcWxHM2JqUjdqcytNNWpaeWxqZjRzQkcwSHRZTzlWbmFaMlNuOXZIWQpyUjNyOStoUDdr
OC95Y0xKazUzSkRxTUhaQUVCQkJCQUFBRUVFRUFBQVFSU0poQ3FCcVR1MldmTHFkb3BmRnZlQ0Zp
clB2eFF6dEk1Ck9vb3FyYzZidEREczhWY3ZYUnJOMnJ5U2pjOTFKTm5vWFlOMXhuYTNWcU8vemhu
eTNLcFZVdTVFZDFEZUkza3JhUitRVHRwVXJPa0YKRjhnRE92UXZDUUVFRUVBQUFRUVFRQUFCQkZJ
ckVLb0d4RTdaVmp1ZXUybjVaNSs1aTBYeWFQT00vUERwcDZHUC9mbVhYMGJ6dHF0ZgpQN3BzQzlu
YVNkME5uR3hrclJlenMzMkREKzlPdit6ZTdYM0tNZ0lJSUlBQUFnZ2dnQUFDQ0tSSUlIUUEwcjV4
NCtncG45SCtGdXQxCkNOeXd5U1lJbkRGc21Qemp6anZEN2lKMzl1a1RLdS95VjE2UkdaN1oxZHVm
ZFZhKy9aWm92dzgzZGRJWnowdVhEYTcwbWFramFaRVEKUUFBQkJCQkFBQUVFRUVBZzlRS2hBNUJo
VHo4dFZiVUd3ZEl1L1JseTVaVnkwS2UvaFpQQjgrdGJiYTUxbm5aQzd6Tit2UFFhTzFZKwpmZlpa
ejliNGl6YTcrZlNoUStObjBDMDJuTzZnZ1FQbFFGNnVKdVhLU2Y5eDQvTHRVMFdiVmJscHpkYXRZ
azJ5RXFXNVk4Ykl5SmRmClRwU0ZiUWdnZ0FBQ0NDQ0FBQUlJSUZCSWdkQUJTQjJkditPdnQ5d1NQ
YzJjTFZ2a0hBMHNiR2hidjJUQndWOHV2RkRhZHU0cy85eGwKSVlzT21hcy9qVHAxY3BiRC9Pby9h
WkpjcjNOeWJGdTdObDkyQ3lKbTNYMjNuTm1va1N6YmUzanNxakthNDRVbm41UVRxMWZQbDdlZApC
a3B1V3EwQjB3aWRFZDB2Y0ZyMy92dHlhNXMyMHUydXUrUm5kd2NlRVVBQUFRUVFRQUFCQkJCQUlL
VUNwU0tha2puaUFQM1FQL1hiCmI2TzdWTkNsYzZ0V2xkWTZ4MGRqYmFhMUlTZEhzdGV2bDdrNnV0
VE9hQzZSY3JyOGhNNmVIanVCNGRvRkMyU3MxblRrYU8zRTJ6b2gKb0pzYWExTXBtMXpRa3RXN05O
VG5MVFRnMmF6OU0xYnBUNjZ6NWNpdmU4OC9YMFo5OE1HUkZaNmxxMnJYbHBtZTRYbWJhazFKVjUw
Vgp2V2FOR3JKZXkvbTFibHVvSGQvZHVwRzZaY3JJdG9NSFpZOGV3N3FxWDZMN1Y2cFFRYTdRWUNa
bzluZlBhVk8yYUtONHpYcjlkY25kCnQwOE81ZDJ1VGJtNTBjQ3VodFpNbmFQTnk5eFVVVWY1YXFR
amc0MVMyeks2VEVJQUFRUVFRQUFCQkJCQW9LUUlKQjJBV08zRHBHdXYKbFpFNnI4ZmhlbzNnUzdH
bVVkT2ZlVVorTjJCQWdjekR0R1psL09lZkYxai8zY2NmeS9WWFhDRUxBbVlpdHcvZmsyKy8zV25l
VmVBZwplU3UyYXNmenRqb2JlNDRHRlltU1ZRZmQxS3FWUERSbmpseW9OUzlMOTFnSWNpUlYxc1Z0
Ky9jWDY0ZDY4NjZtd2RmMjVPSkVwOURXCm5LenJpQkZITG9BbEJCQkFBQUVFRUVBQUFRVFNMQkM2
Q1paYnpsS2xTOHZRR1RNa2EvRmk2YVh6Z2NTYkx0QU9mTGsyaDNwajVFakoKMHRvRnYrRERqdG0x
WjArcHJjZjBwdnBhQTFHdlF3ZVpvN1VwdDJtQTBseS94YytmUTZTQmZpaTM1bG1yZEVoZDYxdVNL
RlhUZk10MQpodlFiV3JRb2NCemJ6d2J1N2FLamZDMmNNa1Vtcmx3cEordDFEUjgwU0N6Z2NKUFY5
UFRSb1htTHUwYkJ2UHVlZWFhYzRCWWs1R05iCm5VdWxyZHFTRUVBQUFRUVFRQUFCQkJBb1NRSkox
NERFRnQ2K29iZmFpaS9lZVVmV1pXVkpyWHIxcEtIMnBmaXROb215RC82cFNybmEKVEdxWjFyclkr
ZHJvck9aVllvYmJEWHVlalJwZ1pPblF2R3QwN3BESzJuU3NmYmR1MGt3bkpRd3pPbGJZYzVBUEFR
UVFRQUFCQkJCQQpBQUVFL0FXT09nRHhQeXhyRVVBQUFRUVFRQUFCQkJCQUFJR0NBckV0bXdybVlB
MENDQ0NBQUFJSUlJQUFBZ2dna0NJQkFwQVVRWElZCkJCQkFBQUVFRUVBQUFRUVFDQllnQUFrMkln
Y0NDQ0NBQUFJSUlJQUFBZ2lrU0lBQUpFV1FIQVlCQkJCQUFBRUVFRUFBQVFTQ0JRaEEKZ28zSWdR
QUNDQ0NBQUFJSUlJQUFBaWtTSUFCSkVTU0hRUUFCQkJCQUFBRUVFRUFBZ1dBQkFwQmdJM0lnZ0FB
Q0NDQ0FBQUlJSUlCQQppZ1FJUUZJRXlXRVFRQUFCQkJCQUFBRUVFRUFnV0lBQUpOaUlIQWdnZ0FB
Q0NDQ0FBQUlJSUpBaUFRS1FGRUZ5R0FRUVFBQUJCQkJBCkFBRUVFQWdXSUFBSk5pSUhBZ2dnZ0FB
Q0NDQ0FBQUlJcEVpQUFDUkZrQndHQVFRUVFBQUJCQkJBQUFFRWdnVUlRSUtOeUlFQUFnZ2cKZ0FB
Q0NDQ0FBQUlwRWlBQVNSRWtoMEVBQVFRUVFBQUJCQkJBQUlGZ0FRS1FZQ055SUlBQUFnZ2dnQUFD
Q0NDQVFJb0VDRUJTQk1saApFRUFBQVFRUVFBQUJCQkJBSUZpQUFDVFlpQndJSUlBQUFnZ2dnQUFD
Q0NDUUlnRUNrQlJCY2hnRUVFQUFBUVFRUUFBQkJCQUlGa2haCkFQTHJuajN5NGNTSk11YlNTMlhG
akJuQlp6N0djOHdmTzFaYW5uQ0NWQ3RkMnZtcHFZOGpPM1k4eHErSzRpT0FBQUlJSUlBQUFnZ2cK
VUxRQ3BTS2FDbnVLckZtelpON3p6OHU4aFF2bGcwMmJKRGZ2UUwxUFAxMWV6Y2twN0dHUGlmMkdO
Rzh1Zi92cXEzeGwvZjFKSjhtaQpYYnZ5cmVNSkFnZ2dnQUFDQ0NDQUFBSUlIQkVvZTJReC9OS0N4
eDZUd1NOR3lOb0RCM3gzK25udlh0LzF4OVBLb1E4OElPdHZ2RkUyCmFNRHh4Zjc5eDlPbGNTMElJ
SUFBQWdnZ2dBQUNDQlNaUUtHYVlEMDFibHkrNEtPQ0ZxOUp1WEpGVnNpU2VPRFd2WHZMN00yYlpl
N2kKeFNXeGVKUUpBUVFRUUFBQkJCQkFBSUVTS1ZDb0FPVCtKNTZRb1MxYnlvTmR1enI5UG5aczN5
NFQ3N3V2UkY0Z2hVSUFBUVFRUUFBQgpCQkJBQUlHU0kxQ29KbGl0cnJsR250UWZFZ0lJSUlBQUFn
Z2dnQUFDQ0NDUWpFQ2hha0NTT2NHeGtQZkF2bjNIUWpFTGxOSEtmZkNYClh3cXNad1VDQ0NDQUFB
SUlJSUFBQWlWVklDTURFT3RFZjJlSER0S3RSZzJwVjdhc2xLOVlVV3FWS1NPZFRqNVpoclpxSlV0
ZmZORzUKWDkrOCs2NzhvVkVqR2RXbGl4eUswK0UrMFkzZHVIS2x2RDFxbEl5KytHTDU4M25ueVd2
RGgwdjJ2SG1GT3RhYTJiTmxiTGR1MHIxbQpUYW12WmE1Y3FwU1UwM0pYckZCQm1wVXZMejFPTzAx
ZXZ2WFdSTVZoR3dJSUlJQUFBZ2dnZ0FBQ2FSYzRxbUY0dmFWLzU4RUg1Yko3CjduRldkVDMxVkpt
N2RhdDNjNGxZM3JKbWpmenBzc3RrMm5mZkJaYW5qYzd4VVZrLzJIKzBjNmVUZDluMDZkS3ViOThD
KzFtUVVidE4KRzJlOU93enZzbW5UcE4vQWdiTG0xMThMNUxjVk5UVjRtS1RCeURXUFBPSzczYnN5
Y3VpUTNLUkIwWlNzTERubzNSQm51VXVWS2pMdAp2ZmVrZHR1MmNYS3dHZ0VFRUVBQUFRUVFRQUNC
OUFsa1RBM0luTkdqcFlYTzNlRVhmRlJTLzFJeDkyQ0ZObTl5Z3cvYnRPWDc3Mk55CitEOTl1bjkv
NlhUZGRYR0REOXRyazA2OTB2dlJSNlZmZ3dheWJlMWEvd1BsclgxWDgwMzJDVDVxNjhTSFBXdlZr
czZubk9JRU5PNUIKM3R1eFEyN3AwY045eWlNQ0NDQ0FBQUlJSUlBQUFpVktJQ01Da0p3bFM2VHZ2
ZmZLWnMrY2k1ZFVxeWF6YlM2UFR6NlJYRjMvazM3SQp0eVpNMXpkcFVpQVlzVHQyNkdCdy9jT1Mz
Rnk1UVd0S2JGYVE4dnJ6eHpQT0VBdElQbnJxS2ZuN0hYZklmWjA3eXhsYXErS21selNvCjZhRTFG
WW1hZHpYVnBsc241dTF3Z2RadVRCa3dRTExuejVkL2FYbmUrUEZIZVY4RGpoKzBsc1ptb0hmVDN6
ZHNrSGtQUCt3KzVSRUIKQkJCQUFBRUVFRUFBZ1JJalVLaFJzRXBNNlVNVXhKb3dEZFJtVnp2eWdn
K3I3WGhXQTQwK0V5YmsyN3VHMW83WU92czV1MTgvdWZHbApsL0p0RC9QRURWSGFhOStNRjdRWlZz
dXJyODYzV3k5OU5sS0RoZnMxV0JpcmdjOGhmYjVJZzVieHZYckpiVHFydkYvNlRjZU84cjNPCnVI
NUFKenVzMWJxMVh4WXByek93ajVnelI3NXMyREJhd3pQbjFWZWxxMDRXU1VJQUFRUVFRQUFCQkJC
QW9DUUpIUGMxSU04TkdpVHoKdDIyTG1qK3EvVGhpZzQvb3hyd0ZxOFY0cEh2MzJOV2hubHYvanJr
clZoUUlQdHlkSzFTdUxHTVdMWkkvdFcvdnJwSjczbnhUck1ONwp2RlM5V2JPNHdZZDNud0dEQjBl
Zlptc3RDQWtCQkJCQUFBRUVFRUFBZ1pJbWNOelhnTXoxZkxDM0R0b1dYSVJKdDcvMWxueXR0U0pU
CnRQYkJVZ05Qd0pCby93azMzeXpWdEJsWFVCcXRvMkhOMUpHcjF1cm9XbnMxODJ2YUlYM0VSUmNs
M0cySE50bGFvODJ2ZnREbVlqbnIKMXNrV25ZbjlKSzM5cUtZalk3VTg5MXlwNVRudk56bzVKQWtC
QkJCQUFBRUVFRUFBZ1pJbWNOd0hJTXMzYm95YWQ5Y1A2Y21rQ1FzWApTdXNoUTZTT05tMXFkdm5s
Z2JzYVpxK0hIZ3JNWnhrcTZraGhQYlZKMWJobHk1ejhLMWF2anJ2ZmFnMkdIdGMrSkZNMUdJbzdZ
OG5VCnFmbjZydXpWcG1ja0JCQkFBQUVFRUVBQUFRUkttc0J4SFlEczNyUkpzajFENGJiUkR0M0pK
QXNTYnRhK0ZHRlRVKzFnYnYweHdxWlcKN2RxSjVBVWdLejJCa25mL3g2KzZTb2JQbkNrUjc4cTha
ZXVjYnV1dEJzV1NYNTdEVy9pTkFBSUlJSUFBQWdnZ2dFREpFRGl1KzRCcwoxeVpMM25xQXFuWHFG
S2w2ZGUxOG5reXFVYmR1Tkh1T3o0em1ObktXTi9pd0ViUWUxZzcxV2RwblpLZjI4ZGl0SGV2MzZF
L3VUei9KCndzbVRuY2tPb3dka0FRRUVFRUFBQVFRUVFBQ0JFaWh3WE5lQTFEMzdiRGxWTzRWdnl4
c0JhOVdISDhwWk9rZEhVYVhWZVpNV2hqMysKNnFWTG8xbWJWN0x4dVk0a0c3MXJzTTdZN3RacTlO
YzVRNTVidFVyS25lZ095bnNrYnlYdEE5SkptNG8xdmVBQ2VVQ0gvaVVoZ0FBQwpDQ0NBQUFJSUlG
QlNCWTdyR2hCRGI2c2R6OTIwL0xQUDNNVWllYlI1Um43NDlOUFF4Lzc4eXkramVkdlZyeDlkdG9W
czdhVHVCazQyCnN0YUwyZG0rd1lkM3AxOTI3L1krWlJrQkJCQkFBQUVFRUVBQWdSSW5jTndISU8w
Yk40NmlQNlA5TGRickVMaGhrMDBRT0dQWU1QbkgKblhlRzNVWHU3Tk1uVk43bHI3d2lNenl6cTdj
LzY2eDgreTNSZmg5dTZxUXpucGN1RzF4Wk5WTkgwaUloZ0FBQ0NDQ0FBQUlJSUZDUwpCWTc3QUdU
WTAwOUxWYTFCc0xSTGY0WmNlYVVjOU9sdjRXVHcvUHBXbTJ1ZHA1M1ErNHdmTDczR2pwVlBuMzNX
c3pYK29zMXVQbjNvCjBQZ1pkSXNOcHp0bzRFQTVrSmVyU2JseTBuL2N1SHo3Vk5GbVZXNWFzM1dy
V0pPc1JHbnVtREV5OHVXWEUyVmhHd0lJSUlBQUFnZ2cKZ0FBQ2FSYzQ3Z09RT2pwL3gxOXZ1U1VL
UFdmTEZqbEhBd3NiMnRZdldYRHdsd3N2bExhZE84cy9kMW5Jb2tQbTZrK2pUcDJjNVRDLworayth
Sk5mcm5CemIxcTdObDkyQ2lGbDMzeTFuTm1va3kvWWVIcnVxak9aNDRja241Y1RxMWZQbGJhZUJr
cHRXYThBMFFtZEU5d3VjCjFyMy92dHphcG8xMHUrc3UrZG5kZ1VjRUVFQUFBUVFRUUFBQkJFcW9R
S21JcG1UTFpxTXp6WHI5ZGNuZHQwOE81ZTIrS1RjMytvRzkKaHRZNG5LUE5odHhVVVVkdmFxUWpQ
bzFhc0VESzZISTYwZ0Q5MEQvMTIyK2pwNjZnUytkV3JTcXRkWTZQeHRwTWEwTk9qbVN2WHk5egpk
WFNwbmRGY0l1VjArUW1kUFQxMkFzTzFlaTFqdGFZalIyc24zdFlKQWQzVVdKdEsyZVNDbHF6ZXBh
RStiNkVCejJidG43RktmM0tkCkxVZCszWHYrK1RMcWd3K09yUEFzWFZXN3RzejBETS9iVkd0S3V1
cXM2RFZyMUpEMVdzNnZkZHRDN2ZqdTFvM1VMVk5HdGgwOEtIdjAKR05aVi9STGR2MUtGQ25LRkJq
TkJzNzk3VHNzaUFnZ2dnQUFDQ0NDQUFBSkZKcEIwQUdMZjRsZlREOVhiazQ5YnhKb0pkUjB4b3Nn
dQpKdEdCcmR5VHJyMVdSdXE4SG9mck5STGxQcnpObWtaTmYrWVorZDJBQVFVeUQ5T2FsZkdmZjE1
Zy9YY2ZmeXpYWDNHRkxBaVlpZHlDCnRNbTMzKzQwN3lwd2tMd1ZXN1hqZVZ1ZGpUMUhnNHBFeWFx
eGJtclZTaDZhTTBjdTFKcVhwWHNzQkRtU0t1dml0djM3MHhiOEhTa0oKU3dnZ2dBQUNDQ0NBQUFL
WkxwQjBFNnhTcFV0TDN6UFBsQk9TbEd1cmMyUzA3ZGt6eWIxU2w5M0tQWFRHRE1sYXZGaDY2WHdn
OGFZTApOSkRMdFRuVUd5TkhTcGJXTHZnRkgxYXFybm90dGZXWTNsUmZheURxZGVnZ2M3UTI1VFlO
VUpwcmJVLytIQ0lOTkhpejVsbXJkRWhkCjYxdVNLRlhUZk10MWh2UWJXclFvY0J6Ynp3YnU3YUtq
ZkMyY01rVW1ybHdwSit0MURSODBTQ3pnY0pQVjlQVFJvWG5UVmZQa2xvTkgKQkJCQUFBRUVFRUFB
QVFSTUlPa2FrT09GeldwRXJMYmlpM2Zla1hWWldWS3JYajFwcUgwcGZxdE5vdXlEZjZwU3JqYVRX
cWExTG5hKwpOanFyZVpXWTRYYkRubWVqQmhoWk9qVHZHcDA3cExJMkhXdmZyWnMwMDBrSnc0eU9G
ZlljNUVNQUFRUVFRQUFCQkJCQW9LZ0ZNallBCktXcFlqbzhBQWdnZ2dBQUNDQ0NBQUFJRkJXSmJD
QlhNd1JvRUVFQUFBUVFRUUFBQkJCQkFJRVVDQkNBcGd1UXdDQ0NBQUFJSUlJQUEKQWdnZ0VDeEFB
QkpzUkE0RUVFQUFBUVFRUUFBQkJCQklrUUFCU0lvZ09Rd0NDQ0NBQUFJSUlJQUFBZ2dFQ3hDQUJC
dVJBd0VFRUVBQQpBUVFRUUFBQkJGSWtRQUNTSWtnT2d3QUNDQ0NBQUFJSUlJQUFBc0VDQkNEQlJ1
UkFBQUVFRUVBQUFRUVFRQUNCRkFrUWdLUUlrc01nCmdBQUNDQ0NBQUFJSUlJQkFzQUFCU0xBUk9S
QkFBQUVFRUVBQUFRUVFRQ0JGQWdRZ0tZTGtNQWdnZ0FBQ0NDQ0FBQUlJSUJBc1FBQVMKYkVRT0JC
QkFBQUVFRUVBQUFRUVFTSkVBQVVpS0lEa01BZ2dnZ0FBQ0NDQ0FBQUlJQkFzUWdBUWJrUU1CQkJC
QUFBRUVFRUFBQVFSUwpKRUFBa2lKSURvTUFBZ2dnZ0FBQ0NDQ0FBQUxCQWdRZ3dVYmtRQUFCQkJC
QUFBRUVFRUFBZ1JRSkVJQ2tDSkxESUlBQUFnZ2dnQUFDCkNDQ0FRTEFBQVVpd0VUa1FRQUFCQkJC
QUFBRUVFRUFnUlFJRUlDbUM1REFJSUlBQUFnZ2dnQUFDQ0NBUUxKRDJBR1QrMkxIUzhvUVQKcEZy
cDBzNVBUWDBjMmJGamNNa3pQTWV2ZS9iSWh4TW55cGhMTDVVVk0yWmt1QWFYandBQ0NDQ0FBQUlJ
SUhDc0NKU0thRXBuWVljMApieTUvKytxcmZFWDQvVWtueWFKZHUvS3Q0NGxJMXF4Wk11LzU1Mlhl
d29YeXdhWk5rcHVIMHZ2MDArWFZuQnlJRUVBQUFRUVFRQUFCCkJCQW84UUpsMDEzQ29RODhJT3R2
dkZFMmFNRHh4Zjc5NlM1T2lUei9nc2NlazhFalJzamFBd2Q4eS9mejNyMis2MW1KQUFJSUlJQUEK
QWdnZ2dFQkpFMGg3RTZ6V3ZYdkw3TTJiWmU3aXhTWE5wc1NVNTZseDQvSUZIeFcwWkUzS2xTc3g1
YU1nQ0NDQUFBSUlJSUFBQWdpRQpGVWg3QUJLMm9KbWM3LzRubnBDaExWdktnMTI3T3YwK2RtemZM
aFB2dXkrVFNiaDJCQkJBQUFFRUVFQUFnV05VSU8xTnNJNVJ0Mkl0CmRxdHJycEVuOVllRUFBSUlJ
SUFBQWdnZ2dNQ3hMcERTR3BBRCsvYkp3VjkrT2VaTXJOd2tCQkJBQUFFRUVFQUFBUVFRS0hxQlFn
Y2cKYTJiUGxySGR1a24zbWpXbGZ0bXlVcmxVS1NsWHNhSlVyRkJCbXBVdkx6MU9PMDFldnZYV2xG
ekJ4cFVyNWUxUm8yVDB4UmZMbjg4NwpUMTRiUGx5eTU4MlRRM0U2WlFlZDFEcDEzOW1oZzNTclVV
UHFhZG5MYTdscmxTa2puVTQrV1lhMmFpVkxYM3pST2NRMzc3NHJmMmpVClNFWjE2VkxvY3dXVmhl
MElJSUFBQWdnZ2dBQUNDR1NTUU5MRDhFWU9IWktiOUVQNmxLd3NPUmhDcWt1VktqTHR2ZmVrZHR1
MkNYTmIKa0ZHN1RSc25qenNNNzdKcDA2VGZ3SUd5NXRkZmZmZXRxVUhQSkExR3JubmtFZC90c1N1
M3JGa2pmN3JzTXBuMjNYZXhtd284YjZOegprMVRXUU9xam5UdWRiY3VtVDVkMmZmc1d5SmV1RmU4
OCtLQmNkczg5enVtN25ucXF6TjI2TlYxRjRid0lJSUFBQWdnZ2dBQUNDSVFXClNMb0c1TjFISDVY
SlBzRkhiWjFBc0dldFd0TDVsRlBFQWdNM3ZiZGpoOXpTbzRmN05QVGowLzM3UzZmcnJvc2JmTmlC
TnVrVUpyMjEKUFAwYU5KQnRhOWNtUFBhYzBhT2xoYzQ1NGhkOFZOSTlqNVQ0OEdGV2FMTXNOL2l3
TlZ1Ky8vN3dCbjRqZ0FBQ0NDQ0FBQUlJSUlCQQpvUVdTRGtDYWFoT29FL05PZDRIV2Jrd1pNRUN5
NTgrWGZ4MDhLRy84K0tPOHJ3SEhEMXByWUROMHUrbnZHemJJdkljZmRwOEdQaTdKCnpaVWJ0TWJC
WmdVcHJ6OS9QT01Nc1lEa282ZWVrci9mY1lmYzE3bXpuS0cxRTI1NlNZT0RIbHJERXE5SlZzNlNK
ZEwzM250bHMyZk8KeFV1cVZaUFpOZ2ZKSjU5SXJxNy9TWU1xYXpKMmZaTW1CWUlSTzg4aHZUNFNB
Z2dnZ0FBQ0NDQ0FBQUlJSEoxQTBxTmcvYVpqUi9sZQpaeTQvb0pNRzFtcmQydmZzNVhVbTh4Rno1
c2lYRFJ0R2F4em12UHFxZE5YSjlNSWs5Nk4rZSsyYjhZSTJ3MnA1OWRYNWR1dWx6MFpxCmtITy9C
amxqTllBNHBNOFhhZEF5dmxjdnVVMW5DL2NtYXpJMlVKdGQ3Y2dMUHF5MjQxa05OUHBNbU9ETkpq
VzBkc1RXMmMvWi9mckoKalMrOWxHODdUeEJBQUFFRUVFQUFBUVFRUU9Eb0JaS3VBYkZUVm0vV0xH
N3c0UzNTZ01HRG8wK3p0UllrbVdUTnVPYXVXRkVnK0hDUApVYUZ5WlJtemFKSDhxWDE3ZDVYYzgr
YWJZaDNIdmVtNVFZTmsvclp0MFZXUGFqK08yT0FqdWpGdndXcGZIdW5lUFhZMXp4RkFBQUVFCkVF
QUFBUVFRUU9Bb0JaS3VBZkdlYjRjMmZWcWp6YTkrME9aTE9ldld5UmFkMGZ3a3JmMm9waU5qdFR6
M1hLbWx6Wm5jOUkxT25wZE0KbW5EenpWTE5zMys4ZlVmcmFGZ3pkY1N0dFRvaTFsN045SnAyU0I5
eDBVWFI3SE05QVlsMWlMZmdJa3k2L2EyMzVHdXRGWm1pdFQyVwpHbmdDblREN2t3Y0JCQkJBQUFF
RUVFQUFBUVFLQ2hRcUFGbXRIODRmMTc0WVUvWERlZHdaTktaT3pkZVhZcTgyaFFxYnJGQzlIbm9v
ClZQYUtPZ0pVVDIwS05tN1pNaWYvaXRXcjgrMjNmT1BHNlBQdUdoUWxreVlzWENpdGh3eVJPdHFV
ck5ubGx5ZXpLM2tSUUFBQkJCQkEKQUFFRUVFREFSeURwQU9UeHE2NlM0VE5uU3NUbllOWTUzZFpi
VFlRbHZ6eUh0eVQrM1ZRN21Gcy9rckNwVmJ0Mklua0J5RXBQd0xGNwoweWJKOWd6aDIwWTcwQ2VU
TExpNVdmdXVrQkJBQUFFRUVFQUFBUVFRUUNBMUFrbjFBYkVScUx6Qmg0MUU5YkIyOE03U3ZoYzd0
WS9ICmJ1M292VWQvY24vNlNSWk9udXhNR2xpWVlsYlh6dWZKcEJwMTYwYXo1M2htWXQrdVRjUzg5
UzVWNjlTSjVtTUJBUVFRUUFBQkJCQkEKQUFFRWlsOGdkQTJJalNZMVdHY1FkMnMxK3V2Y0c4K3RX
aVhsVG5RSDVUMVMrRXJhQjZTVE5sMXFlc0VGOG9BT29adHNXcDAzK1YvWQovVll2WFJyTjJyeVNq
WE4xT05VOSsydzVWVHV6YjhzYkFXdlZoeC9LV1RxM0NBa0JCQkJBQUFFRUVFQUFBUVRTSXhDNkJp
UmJPM3U3CkgrUnRoS29YczdOOWd3L3ZaZnl5ZTdmM2FlaGxtNi9qaDA4L0RaMy84eSsvak9adFY3
OStkTmtXMm1ySGN6Y3QvK3d6ZDVGSEJCQkEKQUFFRUVFQUFBUVFRU0lOQTZBQmtpZmI3Y0ZNbm5m
RzhkTm5neXBPWk9pSlZZZE9kZmZxRTJuWDVLNi9JRE04czVlM1BPaXZmZnUwYgpONDQrZjBiN2lh
elhvWHZESnB2WWNNYXdZZktQTys4TXV3djVFRUFBQVFRUVFBQUJCQkJBSUlGQTZBQ2tpamFyY3RP
YXJWdkZtbVFsClNuUEhqSkdSTDcrY0tFdkNiVGE3K2ZTaFF4UG1zV0dBQncwY0tBZnljalVwVjA3
Nmp4dVhiNTloVHo4dFZiWEd4dEl1L1JseTVaVnkKME5OUHhObmc4K3RiYmE1MW5uWkM3ek4rdlBR
YU8xWStmZlpabjF5c1FnQUJCQkJBQUFFRUVFQUFnV1FFUWdjZzdmU0R1NXRXNndmNApFVG9qdXQ4
SCtYWHZ2eSszdG1rajNlNjZTMzUyZHlqa1kvOUprK1I2blF0azI5cTErWTVnd2Mrc3UrK1dNeHMx
a21WN0Q0KzVWVVp6CnZQRGtrM0ppOWVyNTh0YlIrVHYrZXNzdDBYVnp0bXlSY3pTd3NLR0UvWklG
TlgrNThFSnAyN216L0hPWGhTd2kxaVcrVWFkT3pqSy8KRUVBQUFRUVFRQUFCQkJCQW9QQUNwU0th
d3U1K1ZlM2FNdE16ekcxVHJYSG9xck9pMTZ4UlE5YnJLRmhmNjdhRjJvSGNyUnVwVzZhTQpiRHQ0
VVBib0NheXIraVc2ZjZVS0ZlUUtEV2JjMmNqWExsZ2dZN1dtSTBkclZkN1dpUXpkMUZpYmVObmtn
cGFzL3FLaFBtK2hnY05tCjdWZXlTbjl5blMxSGZ0MTcvdmt5Nm9NUGpxeUlXUnFnd2NyVWI3K05y
cTJnUytkV3JTcXRkWTZQeHRwTWEwTk9qbVN2WHk5ejlUcDIKUm5PSmxOUGxKM1QyOUxBVEdIcDJU
ZG1palQ0MjYvWFhKWGZmUGptVWQ3czI1ZVpHQTZRYVdzTnpqamFMYzFORkhaMnNrWTRNTmtwdAp5
K2d5Q1FFRUVFQUFBUVFRUUFDQmtpS1FWQUN5VlR1ZXQ5WFp3WE0wcUVpVXJGcmxwbGF0NUtFNWMr
UkNyY0ZZdXNkQ2tDT3BzaTV1CjI3L2YrWEE4VEdzb3huLysrWkdOZVV2ZmZmeXhYSC9GRmJJZ1lB
WjErL0E5K2ZiYm5XWlNCUTdpV1dHMUpwT3V2VlpHNnJ3ZWgrczEKUEJ2akxGcVRydW5QUENPL0d6
QWdUbzZpWDIzbHJxYkIxL2J3Y1dLMFVOWU1ydXVJRWRIbkxDQ0FBQUlJSUlBQUFnZ2drRzZCMEUy
dwpyS0RWTkpoWXJqT04zOUNpaGZqdGFBUGdkdEZScHhaT21TSVRWNjZVazNYZWpab25hMEVBQUJT
V1NVUkJWT0dEQm9rRkhHNnltb2MrCk9qU3YrODE4MTU0OXBYYnAvRWVycnpVbjlUcDBrRGxhSzNH
YkJpak45VnY4L0RsRUd1aUhjbXVldFVxSEFyWStHa0dwbEo1ajZJd1oKa3JWNHNmVFNjc1diNXRE
T2M3azI0M3BqNUVqSjB0cWNkQVlmZGsxVzdyNW5uaWtuQkYxZ3pQYTJPcGRLVzdVbElZQUFBZ2dn
Z0FBQwpDQ0JRa2dTU3FnSHhGbnlqQmhoWk9qVHZHcDJEbzdJMlpXcmZyWnMwMDBrSnc0eU81VDFP
Mk9WY2JkNjFUR3N2ckVhZ2pjN0dYaVZtCnVOMnd4M0h6MlhHc2x1V0xkOTZSZFZsWlVxdGVQV21v
ZlZkK3EwMjVMTkFpSVlBQUFnZ2dnQUFDQ0NDQVFPb0ZDaDJBcEw0b0hCRUIKQkJCQUFBRUVFRUFB
QVFTT2Q0SFlsazNIKy9WeWZRZ2dnQUFDQ0NDQUFBSUlJSkJHQVFLUU5PSnphZ1FRUUFBQkJCQkFB
QUVFTWsyQQpBQ1RUN2pqWGl3QUNDQ0NBQUFJSUlJQkFHZ1VJUU5LSXo2a1JRQUFCQkJCQUFBRUVF
TWcwQVFLUVRMdmpYQzhDQ0NDQUFBSUlJSUFBCkFta1VJQUJKSXo2blJnQUJCQkJBQUFFRUVFQWcw
d1FJUURMdGpuTzlDQ0NBQUFJSUlJQUFBZ2lrVVlBQUpJMzRuQm9CQkJCQUFBRUUKRUVBQWdVd1RJ
QURKdER2TzlTS0FBQUlJSUlBQUFnZ2drRVlCQXBBMDRuTnFCQkJBQUFFRUVFQUFBUVF5VFlBQUpO
UHVPTmVMQUFJSQpJSUFBQWdnZ2dFQWFCUWhBMG9qUHFSRkFBQUVFRUVBQUFRUVF5RFFCQXBCTXUr
TmNMd0lJSUlBQUFnZ2dnQUFDYVJRZ0FFa2pQcWRHCkFBRUVFRUFBQVFRUVFDRFRCQWhBTXUyT2M3
MElJSUFBQWdnZ2dBQUNDS1JSZ0FBa2pmaWNHZ0VFRUVBQUFRUVFRQUNCVEJNZ0FNbTAKTzg3MUlv
QUFBZ2dnZ0FBQ0NDQ1FSZ0VDa0RUaWMyb0VFRUFBQVFRUVFBQUJCREpOZ0FBazArNDQxNHNBQWdn
Z2dBQUNDQ0NBUUJvRgpDRURTaU0rcEVVQUFBUVFRUUFBQkJCRElOQUVDa0V5NzQxd3ZBZ2dnZ0FB
Q0NDQ0FBQUpwRkNBQVNTTStwMFlBQVFRUVFBQUJCQkJBCklOTUVDRUF5N1k1enZRZ2dnQUFDQ0ND
QUFBSUlwRkdBQUNTTitKd2FBUVFRUUFBQkJCQkFBSUZNRXlBQXliUTd6dlVpZ0FBQ0NDQ0EKQUFJ
SUlKQkdBUUtRTk9KemFnUVFRQUFCQkJCQUFBRUVNazJBQUNUVDdqalhpd0FDQ0NDQUFBSUlJSUJB
R2dVSVFOS0l6NmtSUUFBQgpCQkJBQUFFRUVNZzBBUUtRVEx2alhDOENDQ0NBQUFJSUlJQUFBbWtV
SUFCSkl6Nm5SZ0FCQkJCQUFBRUVFRUFnMHdRSVFETHRqbk85CkNDQ0FBQUlJSUlBQUFnaWtVWUFB
SkkzNG5Cb0JCQkJBQUFFRUVFQUFnVXdUSUFESnREdk85U0tBQUFJSUlJQUFBZ2dna0VZQkFwQTAK
NG5OcUJCQkFBQUVFRUVBQUFRUXlUWUFBSk5QdU9OZUxBQUlJSUlBQUFnZ2dnRUFhQlFoQTBvai8v
OXV2WXhvQUFBQ0VZZjVkSTROagpWVUFvRjZJSkVDQkFnQUFCQWdRSTFBUWNrTnJpK2hJZ1FJQUFB
UUlFQ0JBNENqZ2dSM3pSQkFnUUlFQ0FBQUVDQkdvQ0RraHRjWDBKCkVDQkFnQUFCQWdRSUhBVWNr
Q08rYUFJRUNCQWdRSUFBQVFJMUFRZWt0cmkrQkFnUUlFQ0FBQUVDQkk0Q0RzZ1JYelFCQWdRSUVD
QkEKZ0FDQm1vQURVbHRjWHdJRUNCQWdRSUFBQVFKSEFRZmtpQythQUFFQ0JBZ1FJRUNBUUUzQUFh
a3RyaThCQWdRSUVDQkFnQUNCbzRBRApjc1FYVFlBQUFRSUVDQkFnUUtBbTRJRFVGdGVYQUFFQ0JB
Z1FJRUNBd0ZIQUFUbmlpeVpBZ0FBQkFnUUlFQ0JRRTNCQWFvdnJTNEFBCkFRSUVDQkFnUU9BbzRJ
QWM4VVVUSUVDQUFBRUNCQWdRcUFrNElMWEY5U1ZBZ0FBQkFnUUlFQ0J3RkhCQWp2aWlDUkFnUUlB
QUFRSUUKQ05RRUhKRGE0dm9TSUVDQUFBRUNCQWdRT0FvNElFZDgwUVFJRUNCQWdBQUJBZ1JxQWc1
SWJYRjlDUkFnUUlBQUFRSUVDQndGSEpBagp2bWdDQkFnUUlFQ0FBQUVDTlFFSHBMYTR2Z1FJRUNC
QWdBQUJBZ1NPQWc3SUVWODBBUUlFQ0JBZ1FJQUFnWnFBQTFKYlhGOENCQWdRCklFQ0FBQUVDUndF
SDVJZ3ZtZ0FCQWdRSUVDQkFnRUJOd0FHcExhNHZBUUlFQ0JBZ1FJQUFnYU9BQTNMRUYwMkFBQUVD
QkFnUUlFQ2cKSnVDQTFCYlhsd0FCQWdRSUVDQkFnTUJSd0FFNTRvc21RSUFBQVFJRUNCQWdVQk53
UUdxTDYwdUFBQUVDQkFnUUlFRGdLT0NBSFBGRgpFeUJBZ0FBQkFnUUlFS2dKT0NDMXhmVWxRSUFB
QVFJRUNCQWdjQlJ3UUk3NG9na1FJRUNBQUFFQ0JBalVCQnlRMnVMNkVpQkFnQUFCCkFnUUlFRGdL
T0NCSGZORUVDQkFnUUlBQUFRSUVhZ0lPU0cxeGZRa1FJRUNBQUFFQ0JBZ2NCUnlRSTc1b0FnUUlF
Q0JBZ0FBQkFqVUIKQjZTMnVMNEVDQkFnUUlBQUFRSUVqZ0lPeUJGZk5BRUNCQWdRSUVDQUFJR2Fn
QU5TVzF4ZkFnUUlFQ0JBZ0FBQkFrY0JCK1NJTDVvQQpBUUlFQ0JBZ1FJQkFUY0FCcVMydUx3RUNC
QWdRSUVDQUFJR2pnQU55eEJkTmdBQUJBZ1FJRUNCQW9DYmdnTlFXMTVjQUFRSUVDQkFnClFJREFV
Y0FCT2VLTEprQ0FBQUVDQkFnUUlGQVRjRUJxaSt0TGdBQUJBZ1FJRUNCQTRDamdnQnp4UlJNZ1FJ
QUFBUUlFQ0JDb0NUZ2cKdGNYMUpVQ0FBQUVDQkFnUUlIQVVjRUNPK0tJSkVDQkFnQUFCQWdRSTFB
UWNrTnJpK2hJZ1FJQUFBUUlFQ0JBNENqZ2dSM3pSQkFnUQpJRUNBQUFFQ0JHb0NEa2h0Y1gwSkVD
QkFnQUFCQWdRSUhBVWNrQ08rYUFJRUNCQWdRSUFBQVFJMUFRZWt0cmkrQkFnUUlFQ0FBQUVDCkJJ
NENEc2dSWHpRQkFnUUlFQ0JBZ0FDQm1vQURVbHRjWHdJRUNCQWdRSUFBQVFKSEFRZmtpQythQUFF
Q0JBZ1FJRUNBUUUzQUFha3QKcmk4QkFnUUlFQ0JBZ0FDQm80QURjc1FYVFlBQUFRSUVDQkFnUUtB
bTRJRFVGdGVYQUFFQ0JBZ1FJRUNBd0ZIQUFUbmlpeVpBZ0FBQgpBZ1FJRUNCUUUzQkFhb3ZyUzRB
QUFRSUVDQkFnUU9BbzRJQWM4VVVUSUVDQUFBRUNCQWdRcUFrNElMWEY5U1ZBZ0FBQkFnUUlFQ0J3
CkZIQkFqdmlpQ1JBZ1FJQUFBUUlFQ05RRUhKRGE0dm9TSUVDQUFBRUNCQWdRT0FvNElFZDgwUVFJ
RUNCQWdBQUJBZ1JxQWc1SWJYRjkKQ1JBZ1FJQUFBUUlFQ0J3RkhKQWp2bWdDQkFnUUlFQ0FBQUVD
TlFFSHBMYTR2Z1FJRUNCQWdBQUJBZ1NPQWc3SUVWODBBUUlFQ0JBZwpRSUFBZ1pxQUExSmJYRjhD
QkFnUUlFQ0FBQUVDUndFSDVJZ3ZtZ0FCQWdRSUVDQkFnRUJOd0FHcExhNHZBUUlFQ0JBZ1FJQUFn
YU9BCkEzTEVGMDJBQUFFQ0JBZ1FJRUNnSnVDQTFCYlhsd0FCQWdRSUVDQkFnTUJSd0FFNTRvc21R
SUFBQVFJRUNCQWdVQk53UUdxTDYwdUEKQUFFQ0JBZ1FJRURnS09DQUhQRkZFeUJBZ0FBQkFnUUlF
S2dKT0NDMXhmVWxRSUFBQVFJRUNCQWdjQlJ3UUk3NG9na1FJRUNBQUFFQwpCQWpVQkJ5UTJ1TDZF
aUJBZ0FBQkFnUUlFRGdLT0NCSGZORUVDQkFnUUlBQUFRSUVhZ0lPU0cxeGZRa1FJRUNBQUFFQ0JB
Z2NCUnlRCkk3NW9BZ1FJRUNCQWdBQUJBalVCQjZTMnVMNEVDQkFnUUlBQUFRSUVqZ0lPeUJGZk5B
RUNCQWdRSUVDQUFJR2FnQU5TVzF4ZkFnUUkKRUNCQWdBQUJBa2NCQitTSUw1b0FBUUlFQ0JBZ1FJ
QkFUY0FCcVMydUx3RUNCQWdRSUVDQUFJR2pnQU55eEJkTmdBQUJBZ1FJRUNCQQpvQ2JnZ05RVzE1
Y0FBUUlFQ0JBZ1FJREFVY0FCT2VLTEprQ0FBQUVDQkFnUUlGQVRjRUJxaSt0TGdBQUJBZ1FJRUNC
QTRDamdnQnp4ClJSTWdRSUFBQVFJRUNCQ29DVGdndGNYMUpVQ0FBQUVDQkFnUUlIQVVjRUNPK0tJ
SkVDQkFnQUFCQWdRSTFBUWNrTnJpK2hJZ1FJQUEKQVFJRUNCQTRDamdnUjN6UkJBZ1FJRUNBQUFF
Q0JHb0NEa2h0Y1gwSkVDQkFnQUFCQWdRSUhBVWNrQ08rYUFJRUNCQWdRSUFBQVFJMQpBUWVrdHJp
K0JBZ1FJRUNBQUFFQ0JJNENEc2dSWHpRQkFnUUlFQ0JBZ0FDQm1vQURVbHRjWHdJRUNCQWdRSUFB
QVFKSEFRZmtpQythCkFBRUNCQWdRSUVDQVFFM0FBYWt0cmk4QkFnUUlFQ0JBZ0FDQm80QURjc1FY
VFlBQUFRSUVDQkFnUUtBbTRJRFVGdGVYQUFFQ0JBZ1EKSUVDQXdGSEFBVG5paXlaQWdBQUJBZ1FJ
RUNCUUUzQkFhb3ZyUzRBQUFRSUVDQkFnUU9BbzRJQWM4VVVUSUVDQUFBRUNCQWdRcUFrNApJTFhG
OVNWQWdBQUJBZ1FJRUNCd0ZIQkFqdmlpQ1JBZ1FJQUFBUUlFQ05RRUhKRGE0dm9TSUVDQUFBRUNC
QWdRT0FvNElFZDgwUVFJCkVDQkFnQUFCQWdScUFnNUliWEY5Q1JBZ1FJQUFBUUlFQ0J3RkhKQWp2
bWdDQkFnUUlFQ0FBQUVDTlFFSHBMYTR2Z1FJRUNCQWdBQUIKQWdTT0FnN0lFVjgwQVFJRUNCQWdR
SUFBZ1pxQUExSmJYRjhDQkFnUUlFQ0FBQUVDUndFSDVJZ3ZtZ0FCQWdRSUVDQkFnRUJOd0FHcApM
YTR2QVFJRUNCQWdRSUFBZ2FPQUEzTEVGMDJBQUFFQ0JBZ1FJRUNnSnVDQTFCYlhsd0FCQWdRSUVD
QkFnTUJSd0FFNTRvc21RSUFBCkFRSUVDQkFnVUJOd1FHcUw2MHVBQUFFQ0JBZ1FJRURnS09DQUhQ
RkZFeUJBZ0FBQkFnUUlFS2dKT0NDMXhmVWxRSUFBQVFJRUNCQWcKY0JSd1FJNzRvZ2tRSUVDQUFB
RUNCQWpVQkJ5UTJ1TDZFaUJBZ0FBQkFnUUlFRGdLT0NCSGZORUVDQkFnUUlBQUFRSUVhZ0lPU0cx
eApmUWtRSUVDQUFBRUNCQWdjQlJ5UUk3NW9BZ1FJRUNCQWdBQUJBalVCQjZTMnVMNEVDQkFnUUlB
QUFRSUVqZ0lPeUJGZk5BRUNCQWdRCklFQ0FBSUdhZ0FOU1cxeGZBZ1FJRUNCQWdBQUJBa2NCQitT
SUw1b0FBUUlFQ0JBZ1FJQkFUY0FCcVMydUx3RUNCQWdRSUVDQUFJR2oKZ0FOeXhCZE5nQUFCQWdR
SUVDQkFvQ2JnZ05RVzE1Y0FBUUlFQ0JBZ1FJREFVY0FCT2VLTEprQ0FBQUVDQkFnUUlGQVRjRUJx
aSt0TApnQUFCQWdRSUVDQkE0Q2pnZ0J6eFJSTWdRSUFBQVFJRUNCQ29DVGdndGNYMUpVQ0FBQUVD
QkFnUUlIQVVjRUNPK0tJSkVDQkFnQUFCCkFnUUkxQVFja05yaStoSWdRSUFBQVFJRUNCQTRDamdn
UjN6UkJBZ1FJRUNBQUFFQ0JHb0NEa2h0Y1gwSkVDQkFnQUFCQWdRSUhBVWMKa0NPK2FBSUVDQkFn
UUlBQUFRSTFBUWVrdHJpK0JBZ1FJRUNBQUFFQ0JJNENEc2dSWHpRQkFnUUlFQ0JBZ0FDQm1vQURV
bHRjWHdJRQpDQkFnUUlBQUFRSkhBUWZraUMrYUFBRUNCQWdRSUVDQVFFM0FBYWt0cmk4QkFnUUlF
Q0JBZ0FDQm80QURjc1FYVFlBQUFRSUVDQkFnClFLQW00SURVRnRlWEFBRUNCQWdRSUVDQXdGSEFB
VG5paXlaQWdBQUJBZ1FJRUNCUUUzQkFhb3ZyUzRBQUFRSUVDQkFnUU9BbzRJQWMKOFVVVElFQ0FB
QUVDQkFnUXFBazRJTFhGOVNWQWdBQUJBZ1FJRUNCd0ZIQkFqdmlpQ1JBZ1FJQUFBUUlFQ05RRUhK
RGE0dm9TSUVDQQpBQUVDQkFnUU9BbzRJRWQ4MFFRSUVDQkFnQUFCQWdScUFnNUliWEY5Q1JBZ1FJ
QUFBUUlFQ0J3RkhKQWp2bWdDQkFnUUlFQ0FBQUVDCk5RRUhwTGE0dmdRSUVDQkFnQUFCQWdTT0Fn
N0lFVjgwQVFJRUNCQWdRSUFBZ1pxQUExSmJYRjhDQkFnUUlFQ0FBQUVDUndFSDVJZ3YKbWdBQkFn
UUlFQ0JBZ0VCTndBR3BMYTR2QVFJRUNCQWdRSUFBZ2FPQUEzTEVGMDJBQUFFQ0JBZ1FJRUNnSnVD
QTFCYlhsd0FCQWdRSQpFQ0JBZ01CUndBRTU0b3NtUUlBQUFRSUVDQkFnVUJOd1FHcUw2MHVBQUFF
Q0JBZ1FJRURnS09DQUhQRkZFeUJBZ0FBQkFnUUlFS2dKCk9DQzF4ZlVsUUlBQUFRSUVDQkFnY0JS
d1FJNzRvZ2tRSUVDQUFBRUNCQWpVQkJ5UTJ1TDZFaUJBZ0FBQkFnUUlFRGdLT0NCSGZORUUKQ0JB
Z1FJQUFBUUlFYWdJT1NHMXhmUWtRSUVDQUFBRUNCQWdjQlJ5UUk3NW9BZ1FJRUNCQWdBQUJBalVC
QjZTMnVMNEVDQkFnUUlBQQpBUUlFamdJT3lCRmZOQUVDQkFnUUlFQ0FBSUdhZ0FOU1cxeGZBZ1FJ
RUNCQWdBQUJBa2NCQitTSUw1b0FBUUlFQ0JBZ1FJQkFUY0FCCnFTMnVMd0VDQkFnUUlFQ0FBSUdq
Z0FOeXhCZE5nQUFCQWdRSUVDQkFvQ2JnZ05RVzE1Y0FBUUlFQ0JBZ1FJREFVY0FCT2VLTEprQ0EK
QUFFQ0JBZ1FJRkFUY0VCcWkrdExnQUFCQWdRSUVDQkE0Q2pnZ0J6eFJSTWdRSUFBQVFJRUNCQ29D
VGdndGNYMUpVQ0FBQUVDQkFnUQpJSEFVY0VDTytLSUpFQ0JBZ0FBQkFnUUkxQVFja05yaStoSWdR
SUFBQVFJRUNCQTRDamdnUjN6UkJBZ1FJRUNBQUFFQ0JHb0NEa2h0CmNYMEpFQ0JBZ0FBQkFnUUlI
QVVja0NPK2FBSUVDQkFnUUlBQUFRSTFBUWVrdHJpK0JBZ1FJRUNBQUFFQ0JJNENEc2dSWHpRQkFn
UUkKRUNCQWdBQ0Jtb0FEVWx0Y1h3SUVDQkFnUUlBQUFRSkhBUWZraUMrYUFBRUNCQWdRSUVDQVFF
M0FBYWt0cmk4QkFnUUlFQ0JBZ0FDQgpvNEFEY3NRWFRZQUFBUUlFQ0JBZ1FLQW00SURVRnRlWEFB
RUNCQWdRSUVDQXdGSEFBVG5paXlaQWdBQUJBZ1FJRUNCUUUzQkFhb3ZyClM0QUFBUUlFQ0JBZ1FP
QW80SUFjOFVVVElFQ0FBQUVDQkFnUXFBazRJTFhGOVNWQWdBQUJBZ1FJRUNCd0ZIQkFqdmlpQ1JB
Z1FJQUEKQVFJRUNOUUVISkRhNHZvU0lFQ0FBQUVDQkFnUU9BbzRJRWQ4MFFRSUVDQkFnQUFCQWdS
cUFnNUliWEY5Q1JBZ1FJQUFBUUlFQ0J3RgpISkFqdm1nQ0JBZ1FJRUNBQUFFQ05RRUhwTGE0dmdR
SUVDQkFnQUFCQWdTT0FnN0lFVjgwQVFJRUNCQWdRSUFBZ1pxQUExSmJYRjhDCkJBZ1FJRUNBQUFF
Q1J3RUg1SWd2bWdBQkFnUUlFQ0JBZ0VCTndBR3BMYTR2QVFJRUNCQWdRSUFBZ2FPQUEzTEVGMDJB
QUFFQ0JBZ1EKSUVDZ0p1Q0ExQmJYbHdBQkFnUUlFQ0JBZ01CUndBRTU0b3NtUUlBQUFRSUVDQkFn
VUJOd1FHcUw2MHVBQUFFQ0JBZ1FJRURnS09DQQpIUEZGRXlCQWdBQUJBZ1FJRUtnSk9DQzF4ZlVs
UUlBQUFRSUVDQkFnY0JSd1FJNzRvZ2tRSUVDQUFBRUNCQWpVQkJ5UTJ1TDZFaUJBCmdBQUJBZ1FJ
RURnS09DQkhmTkVFQ0JBZ1FJQUFBUUlFYWdJT1NHMXhmUWtRSUVDQUFBRUNCQWdjQlJ5UUk3NW9B
Z1FJRUNCQWdBQUIKQWpVQkI2UzJ1TDRFQ0JBZ1FJQUFBUUlFamdJT3lCRmZOQUVDQkFnUUlFQ0FB
SUdhZ0FOU1cxeGZBZ1FJRUNCQWdBQUJBa2NCQitTSQpMNW9BQVFJRUNCQWdRSUJBVGNBQnFTMnVM
d0VDQkFnUUlFQ0FBSUdqZ0FOeXhCZE5nQUFCQWdRSUVDQkFvQ2JnZ05RVzE1Y0FBUUlFCkNCQWdR
SURBVWNBQk9lS0xKa0NBQUFFQ0JBZ1FJRkFUY0VCcWkrdExnQUFCQWdRSUVDQkE0Q2pnZ0J6eFJS
TWdRSUFBQVFJRUNCQ28KQ1RnZ3RjWDFKVUNBQUFFQ0JBZ1FJSEFVY0VDTytLSUpFQ0JBZ0FBQkFn
UUkxQVFja05yaStoSWdRSUFBQVFJRUNCQTRDamdnUjN6UgpCQWdRSUVDQUFBRUNCR29DRGtodGNY
MEpFQ0JBZ0FBQkFnUUlIQVVja0NPK2FBSUVDQkFnUUlBQUFRSTFBUWVrdHJpK0JBZ1FJRUNBCkFB
RUNCSTRDRHNnUlh6UUJBZ1FJRUNCQWdBQ0Jtb0FEVWx0Y1h3SUVDQkFnUUlBQUFRSkhBUWZraUMr
YUFBRUNCQWdRSUVDQVFFM0EKQWFrdHJpOEJBZ1FJRUNCQWdBQ0JvNEFEY3NRWFRZQUFBUUlFQ0JB
Z1FLQW00SURVRnRlWEFBRUNCQWdRSUVDQXdGSEFBVG5paXlaQQpnQUFCQWdRSUVDQlFFeGlGOUM5
Y3VGdGc5UUFBQUFCSlJVNUVya0pnZ2c9PQoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116789</attachid>
            <date>2011-11-28 11:19:57 -0800</date>
            <delta_ts>2012-03-01 14:27:28 -0800</delta_ts>
            <desc>Made bidi-override-isolate.html a reftest</desc>
            <filename>bug-73164-20111128111956.patch</filename>
            <type>text/plain</type>
            <size>27775</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMTIxNykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDU5IEBACisyMDExLTExLTI3ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIHVuaWNvZGUtYmlkaSBzaG91bGQg
c3VwcG9ydCBpc29sYXRlIG92ZXJyaWRlIGFuZCBvdmVycmlkZSBpc29sYXRlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MzE2NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgQ1NTIHBhcnNlciBh
bmQgQ1NTIHN0eWxlIHNlbGVjdG9yIHRvIHN1cHBvcnQgdGhlIHVuaW9uIG9mIGJpZGktb3ZlcnJp
ZGUgYW5kIGlzb2xhdGUgaW4KKyAgICAgICAgdW5pY29kZS1iaWRpIHByb3BlcnR5LiBBZGRlZCBP
dmVycmlkZUlzb2xhdGUgdG8gRVVuaWNvZGVCaWRpIGluc3RlYWQgb2YgdHVybmluZyBPdmVycmlk
ZSBhbmQgSXNvbGF0ZQorICAgICAgICBpbnRvIGJpdCBmbGFncyB0byBhdm9pZCBpbmNyZWFzaW5n
IHRoZSBudW1iZXIgb2YgYml0cyByZXF1aXJlZCB0byBzdG9yZSB0aGUgdW5pY29kZUJpZGkgZmxh
Zy4KKworICAgICAgICBBbHNvIGZpeGVkIGEgYnVnIGluIFJlbmRlckJsb2NrOjpjb25zdHJ1Y3RU
ZXh0UnVuIHRvIGFjdHVhbGx5IGNoZWNrIHdoZXRoZXIgYW4gaXNvbGF0ZWQgcnVuJ3MgZGlyZWN0
aW9uCisgICAgICAgIGlzIG92ZXJyaWRkZW4gb3Igbm90IHdoZW4gY29uc3RydWN0aW5nIG9uZS4K
KworICAgICAgICBUZXN0czogZmFzdC9jc3MvdW5pY29kZS1iaWRpLWNvbXB1dGVkLXZhbHVlLmh0
bWwKKyAgICAgICAgICAgICAgIGZhc3QvdGV4dC9iaWRpLW92ZXJyaWRlLWlzb2xhdGUuaHRtbAor
CisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpyZW5kZXJVbmljb2RlQmlkaUZsYWdzVG9DU1NWYWx1ZSk6IEFkZGVkOyBDcmVh
dGUgYSBDU1NWYWx1ZUxpc3Qgd2hlbiB1bmljb2RlLWJpZGkgaGFzIGJvdGgKKyAgICAgICAgaXNv
bGF0ZSBhbmQgYmlkaS1vdmVycmlkZSBzcGVjaWZpZWQuCisgICAgICAgIChXZWJDb3JlOjpDU1ND
b21wdXRlZFN0eWxlRGVjbGFyYXRpb246OmdldFByb3BlcnR5Q1NTVmFsdWUpOiBDYWxscyByZW5k
ZXJVbmljb2RlQmlkaUZsYWdzVG9DU1NWYWx1ZS4KKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlcjo6cGFyc2VWYWx1ZSk6IFN1cHBvcnQgcGFy
c2luZyBjb21iaW5hdGlvbnMgb2YgLXdlYmtpdC1pc29sYXRlIGFuZCBiaWRpLW92ZXJyaWRlOwor
ICAgICAgICBDcmVhdGUgYSBDU1NWYWx1ZUxpc3QgaW4gc3VjaCBjYXNlcy4KKyAgICAgICAgKiBj
c3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAgICAqIGNzcy9DU1NTdHlsZVNl
bGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJv
cGVydHkpOiBTdXBwb3J0IGNvbWJpbmF0aW9ucyBvZiAtd2Via2l0LWlzb2xhdGUgYW5kIGJpZGkt
b3ZlcnJpZGUuCisgICAgICAgIFNldCB0aGUgdW5pY29kZUJpZGkgZmxhZyB0byBPdmVycmlkZUlz
b2xhdGUgaW4gc3VjaCBjYXNlcy4KKyAgICAgICAgKiBodG1sL2NhbnZhcy9DYW52YXNSZW5kZXJp
bmdDb250ZXh0MkQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FudmFzUmVuZGVyaW5nQ29udGV4
dDJEOjpkcmF3VGV4dEludGVybmFsKToKKyAgICAgICAgKiBwbGF0Zm9ybS90ZXh0L1VuaWNvZGVC
aWRpLmg6IEFkZGVkIE92ZXJyaWRlSXNvbGF0ZS4gV2UgZG9uJ3QgdXNlIGJpdCBmbGFncyB0byBh
dm9pZCBpbmNyZWFzaW5nIHRoZQorICAgICAgICBudW1iZXIgb2YgYml0cyByZXF1aXJlZCB0byBz
dG9yZSBmbGFncyBlc3BlY2lhbGx5IGJlY2F1c2UgaXNvbGF0ZSBhbmQgYmlkaS1vdmVycmlkZSBh
cmUgb25seSB2YWx1ZXMKKyAgICAgICAgdGhhdCBjYW4gYmUgY29tYmluZWQuCisgICAgICAgIChX
ZWJDb3JlOjppc092ZXJyaWRlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjppc0lzb2xhdGUp
OiBBZGRlZC4KKyAgICAgICAgKiByZW5kZXJpbmcvSW5saW5lSXRlcmF0b3IuaDoKKyAgICAgICAg
KFdlYkNvcmU6Om5vdGlmeU9ic2VydmVyRW50ZXJlZE9iamVjdCk6CisgICAgICAgIChXZWJDb3Jl
Ojpub3RpZnlPYnNlcnZlcldpbGxFeGl0T2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OmlzSXNv
bGF0ZWRJbmxpbmUpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9jay5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6Y29uc3RydWN0VGV4dFJ1bik6CisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpz
dGF0dXNXaXRoRGlyZWN0aW9uKTogVGFrZXMgaXNPdmVycmlkZTsgd2UgdXNlZCB0byBhc3N1bWUg
aXQncyBhbHdheXMgZmFsc2UuCisgICAgICAgIChXZWJDb3JlOjpjb25zdHJ1Y3RCaWRpUnVucyk6
IEluc3RhbnRpYXRlIGlzb2xhdGVkUmVzb2x2ZXIgd2l0aCBhIHByb3BlciB2YWx1ZSBvZiBpc092
ZXJyaWRlLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmxheW91dFJ1bnNBbmRGbG9h
dHNJblJhbmdlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpkZXRlcm1pbmVTdGFy
dFBvc2l0aW9uKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJMaXN0Qm94OjpwYWludEl0ZW1Gb3JlZ3JvdW5kKToKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTWVudUxpc3Q6Oml0ZW1TdHlsZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNZW51TGlz
dDo6bWVudVN0eWxlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2xTaW5n
bGVMaW5lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRleHRDb250cm9sU2luZ2xlTGlu
ZTo6bWVudVN0eWxlKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3ZnL1NWR1RleHRNZXRyaWNzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN0cnVjdFRleHRSdW4pOgorCiAyMDExLTExLTI3ICBN
YXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgPGh0dHA6Ly93ZWJraXQub3Jn
L2IvNzI2NjU+IFN3aXRjaCB0byBhIG1vcmUgbW9kZXJuIGFwcHJvYWNoIHRvIHJldHJpZXZpbmcg
dGhlIE9TIG1hcmtldGluZyB2ZXJzaW9uCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29t
cHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAkocmV2aXNpb24gMTAxMjE3KQorKysg
U291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTk3NSw2ICs5NzUsMzEgQEAgc3RhdGljIFBhc3NSZWZQdHI8Q1NTUHJpbWl0
aXZlVmFsdWU+IHZhbAogICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZUNhY2hlLT5jcmVhdGVWYWx1
ZShmYW1pbHkuc3RyaW5nKCksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfU1RSSU5HKTsKIH0KIAor
c3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHJlbmRlclVuaWNvZGVCaWRpRmxhZ3NUb0NTU1Zh
bHVlKEVVbmljb2RlQmlkaSB1bmljb2RlQmlkaSwgQ1NTUHJpbWl0aXZlVmFsdWVDYWNoZSogcHJp
bWl0aXZlVmFsdWVDYWNoZSkKK3sKKyAgICBzd2l0Y2ggKHVuaWNvZGVCaWRpKSB7CisgICAgY2Fz
ZSBVQk5vcm1hbDoKKyAgICAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlQ2FjaGUtPmNyZWF0ZUlk
ZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vcm1hbCk7CisgICAgY2FzZSBFbWJlZDoKKyAgICAgICAg
cmV0dXJuIHByaW1pdGl2ZVZhbHVlQ2FjaGUtPmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1
ZUVtYmVkKTsKKyAgICBjYXNlIFBsYWludGV4dDoKKyAgICAgICAgcmV0dXJuIHByaW1pdGl2ZVZh
bHVlQ2FjaGUtPmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZVdlYmtpdFBsYWludGV4dCk7
CisgICAgY2FzZSBPdmVycmlkZToKKyAgICAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlQ2FjaGUt
PmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZUJpZGlPdmVycmlkZSk7CisgICAgY2FzZSBJ
c29sYXRlOgorICAgICAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWVDYWNoZS0+Y3JlYXRlSWRlbnRp
ZmllclZhbHVlKENTU1ZhbHVlV2Via2l0SXNvbGF0ZSk7CisgICAgY2FzZSBPdmVycmlkZUlzb2xh
dGU6CisgICAgICAgIHsKKyAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IGxpc3QgPSBD
U1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7CisgICAgICAgICAgICBsaXN0LT5h
cHBlbmQocHJpbWl0aXZlVmFsdWVDYWNoZS0+Y3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVl
QmlkaU92ZXJyaWRlKSk7CisgICAgICAgICAgICBsaXN0LT5hcHBlbmQocHJpbWl0aXZlVmFsdWVD
YWNoZS0+Y3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlV2Via2l0SXNvbGF0ZSkpOworICAg
ICAgICAgICAgcmV0dXJuIGxpc3Q7CisgICAgICAgIH0KKyAgICB9CisgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7CisgICAgcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBQYXNzUmVmUHRyPENTU1ZhbHVl
PiByZW5kZXJUZXh0RGVjb3JhdGlvbkZsYWdzVG9DU1NWYWx1ZShpbnQgdGV4dERlY29yYXRpb24s
IENTU1ByaW1pdGl2ZVZhbHVlQ2FjaGUqIHByaW1pdGl2ZVZhbHVlQ2FjaGUpCiB7CiAgICAgUmVm
UHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0
ZWQoKTsKQEAgLTE3MTIsNyArMTczNyw3IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU0NvbXB1
dGVkU3R5bGVEZWMKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVRvcDoKICAgICAgICAgICAgIHJl
dHVybiBnZXRQb3NpdGlvbk9mZnNldFZhbHVlKHN0eWxlLmdldCgpLCBDU1NQcm9wZXJ0eVRvcCwg
cHJpbWl0aXZlVmFsdWVDYWNoZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlVbmljb2RlQmlk
aToKLSAgICAgICAgICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZUNhY2hlLT5jcmVhdGVWYWx1ZShz
dHlsZS0+dW5pY29kZUJpZGkoKSk7CisgICAgICAgICAgICByZXR1cm4gcmVuZGVyVW5pY29kZUJp
ZGlGbGFnc1RvQ1NTVmFsdWUoc3R5bGUtPnVuaWNvZGVCaWRpKCksIHByaW1pdGl2ZVZhbHVlQ2Fj
aGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5VmVydGljYWxBbGlnbjoKICAgICAgICAgICAg
IHN3aXRjaCAoc3R5bGUtPnZlcnRpY2FsQWxpZ24oKSkgewogICAgICAgICAgICAgICAgIGNhc2Ug
QkFTRUxJTkU6CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAkocmV2aXNpb24gMTAxMjE3
KQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTg3NSwxMyArODc1LDMwIEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKGludCBwcm9wSWQs
IGIKICAgICAgICAgZWxzZQogICAgICAgICAgICAgcmV0dXJuIHBhcnNlUXVvdGVzKHByb3BJZCwg
aW1wb3J0YW50KTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVVuaWNvZGVC
aWRpOiAvLyBub3JtYWwgfCBlbWJlZCB8IGJpZGktb3ZlcnJpZGUgfCBpc29sYXRlIHwgcGxhaW50
ZXh0IHwgaW5oZXJpdAorICAgIGNhc2UgQ1NTUHJvcGVydHlVbmljb2RlQmlkaTogLy8gbm9ybWFs
IHwgZW1iZWQgfCAoYmlkaS1vdmVycmlkZSB8fCBpc29sYXRlKSB8IHBsYWludGV4dCB8IGluaGVy
aXQKICAgICAgICAgaWYgKGlkID09IENTU1ZhbHVlTm9ybWFsCiAgICAgICAgICAgICB8fCBpZCA9
PSBDU1NWYWx1ZUVtYmVkCi0gICAgICAgICAgICB8fCBpZCA9PSBDU1NWYWx1ZUJpZGlPdmVycmlk
ZQotICAgICAgICAgICAgfHwgaWQgPT0gQ1NTVmFsdWVXZWJraXRJc29sYXRlCiAgICAgICAgICAg
ICB8fCBpZCA9PSBDU1NWYWx1ZVdlYmtpdFBsYWludGV4dCkKICAgICAgICAgICAgIHZhbGlkUHJp
bWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBSZWZQdHI8Q1NTVmFs
dWVMaXN0PiBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOworICAg
ICAgICAgICAgYm9vbCBpc1ZhbGlkID0gdHJ1ZTsKKyAgICAgICAgICAgIHdoaWxlIChpc1ZhbGlk
ICYmIHZhbHVlKSB7CisgICAgICAgICAgICAgICAgc3dpdGNoICh2YWx1ZS0+aWQpIHsKKyAgICAg
ICAgICAgICAgICBjYXNlIENTU1ZhbHVlQmlkaU92ZXJyaWRlOgorICAgICAgICAgICAgICAgIGNh
c2UgQ1NTVmFsdWVXZWJraXRJc29sYXRlOgorICAgICAgICAgICAgICAgICAgICBsaXN0LT5hcHBl
bmQocHJpbWl0aXZlVmFsdWVDYWNoZSgpLT5jcmVhdGVJZGVudGlmaWVyVmFsdWUodmFsdWUtPmlk
KSk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICAgICAgICAgIGlzVmFsaWQgPSBmYWxzZTsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgdmFsdWUgPSBtX3ZhbHVlTGlzdC0+bmV4dCgpOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgaWYgKGxpc3QtPmxlbmd0aCgpICYmIGlzVmFsaWQpIHsKKyAgICAg
ICAgICAgICAgICBwYXJzZWRWYWx1ZSA9IGxpc3QucmVsZWFzZSgpOworICAgICAgICAgICAgICAg
IG1fdmFsdWVMaXN0LT5uZXh0KCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KICAgICAgICAg
YnJlYWs7CiAKICAgICBjYXNlIENTU1Byb3BlcnR5UG9zaXRpb246ICAgICAgICAgICAgIC8vIHN0
YXRpYyB8IHJlbGF0aXZlIHwgYWJzb2x1dGUgfCBmaXhlZCB8IGluaGVyaXQKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAkocmV2aXNpb24g
MTAxMjE3KQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aAkod29ya2luZyBjb3B5KQpAQCAtMjExNCwyOSArMjExNCw2IEBAIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGUKICAgICB9CiB9CiAKLXRlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFVW5pY29kZUJpZGkgZSkKLSAgICA6
IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQotewotICAgIG1fcHJpbWl0aXZlVW5pdFR5cGUgPSBD
U1NfSURFTlQ7Ci0gICAgc3dpdGNoIChlKSB7Ci0gICAgY2FzZSBVQk5vcm1hbDoKLSAgICAgICAg
bV92YWx1ZS5pZGVudCA9IENTU1ZhbHVlTm9ybWFsOwotICAgICAgICBicmVhazsKLSAgICBjYXNl
IEVtYmVkOgotICAgICAgICBtX3ZhbHVlLmlkZW50ID0gQ1NTVmFsdWVFbWJlZDsKLSAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBPdmVycmlkZToKLSAgICAgICAgbV92YWx1ZS5pZGVudCA9IENTU1Zh
bHVlQmlkaU92ZXJyaWRlOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIElzb2xhdGU6Ci0gICAg
ICAgIG1fdmFsdWUuaWRlbnQgPSBDU1NWYWx1ZVdlYmtpdElzb2xhdGU7Ci0gICAgICAgIGJyZWFr
OwotICAgIGNhc2UgUGxhaW50ZXh0OgotICAgICAgICBtX3ZhbHVlLmlkZW50ID0gQ1NTVmFsdWVX
ZWJraXRQbGFpbnRleHQ7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLX0KLQogdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVVbmljb2RlQmlkaSgpIGNvbnN0CiB7
CiAgICAgc3dpdGNoIChtX3ZhbHVlLmlkZW50KSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTU3R5bGVTZWxlY3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NT
U1N0eWxlU2VsZWN0b3IuY3BwCShyZXZpc2lvbiAxMDEyMTcpCisrKyBTb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1OTksNyArMjU5OSwy
MyBAQCB2b2lkIENTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkoaW50CiAgICAgICAgIEhB
TkRMRV9JTkhFUklUX0FORF9JTklUSUFMX0FORF9QUklNSVRJVkUodGFibGVMYXlvdXQsIFRhYmxl
TGF5b3V0KQogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVVuaWNvZGVCaWRp
OgorICAgIHsKICAgICAgICAgSEFORExFX0lOSEVSSVRfQU5EX0lOSVRJQUxfQU5EX1BSSU1JVElW
RSh1bmljb2RlQmlkaSwgVW5pY29kZUJpZGkpCisgICAgICAgIGlmICh2YWx1ZS0+aXNWYWx1ZUxp
c3QoKSkgeworICAgICAgICAgICAgRVVuaWNvZGVCaWRpIHJlbmRlcmVyVW5pY29kZUJpZGkgPSBS
ZW5kZXJTdHlsZTo6aW5pdGlhbFVuaWNvZGVCaWRpKCk7CisgICAgICAgICAgICBmb3IgKENTU1Zh
bHVlTGlzdEl0ZXJhdG9yIGkgPSB2YWx1ZTsgaS5oYXNNb3JlKCk7IGkuYWR2YW5jZSgpKSB7Cisg
ICAgICAgICAgICAgICAgQ1NTVmFsdWUqIGl0ZW0gPSBpLnZhbHVlKCk7CisgICAgICAgICAgICAg
ICAgQVNTRVJUKGl0ZW0tPmlzUHJpbWl0aXZlVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgRVVu
aWNvZGVCaWRpIGN1cnJlbnRWYWx1ZSA9ICpzdGF0aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSo+
KGl0ZW0pOworICAgICAgICAgICAgICAgIEFTU0VSVChjdXJyZW50VmFsdWUgPT0gT3ZlcnJpZGUg
fHwgY3VycmVudFZhbHVlID09IElzb2xhdGUpOworICAgICAgICAgICAgICAgIGlmIChjdXJyZW50
VmFsdWUgIT0gcmVuZGVyZXJVbmljb2RlQmlkaSAmJiByZW5kZXJlclVuaWNvZGVCaWRpICE9IFJl
bmRlclN0eWxlOjppbml0aWFsVW5pY29kZUJpZGkoKSkKKyAgICAgICAgICAgICAgICAgICAgcmVu
ZGVyZXJVbmljb2RlQmlkaSA9IE92ZXJyaWRlSXNvbGF0ZTsKKyAgICAgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyVW5pY29kZUJpZGkgPSBjdXJyZW50VmFsdWU7
CisgICAgICAgICAgICB9CisgICAgICAgICAgICBtX3N0eWxlLT5zZXRVbmljb2RlQmlkaShyZW5k
ZXJlclVuaWNvZGVCaWRpKTsKKyAgICAgICAgfQorICAgIH0KICAgICAgICAgcmV0dXJuOwogICAg
IGNhc2UgQ1NTUHJvcGVydHlUZXh0VHJhbnNmb3JtOgogICAgICAgICBIQU5ETEVfSU5IRVJJVF9B
TkRfSU5JVElBTF9BTkRfUFJJTUlUSVZFKHRleHRUcmFuc2Zvcm0sIFRleHRUcmFuc2Zvcm0pCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRl
cmluZ0NvbnRleHQyRC5jcHAJKHJldmlzaW9uIDEwMTIxNykKKysrIFNvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTIwOTYsNyArMjA5Niw3IEBAIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpkcmF3VGV4
dEkKICAgICBSZW5kZXJTdHlsZSogY29tcHV0ZWRTdHlsZSA9IGNhbnZhcygpLT5jb21wdXRlZFN0
eWxlKCk7CiAgICAgVGV4dERpcmVjdGlvbiBkaXJlY3Rpb24gPSBjb21wdXRlZFN0eWxlID8gY29t
cHV0ZWRTdHlsZS0+ZGlyZWN0aW9uKCkgOiBMVFI7CiAgICAgYm9vbCBpc1JUTCA9IGRpcmVjdGlv
biA9PSBSVEw7Ci0gICAgYm9vbCBvdmVycmlkZSA9IGNvbXB1dGVkU3R5bGUgPyBjb21wdXRlZFN0
eWxlLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRlIDogZmFsc2U7CisgICAgYm9vbCBvdmVycmlk
ZSA9IGNvbXB1dGVkU3R5bGUgPyBpc092ZXJyaWRlKGNvbXB1dGVkU3R5bGUtPnVuaWNvZGVCaWRp
KCkpIDogZmFsc2U7CiAKICAgICB1bnNpZ25lZCBsZW5ndGggPSB0ZXh0Lmxlbmd0aCgpOwogICAg
IGNvbnN0IFVDaGFyKiBzdHJpbmcgPSB0ZXh0LmNoYXJhY3RlcnMoKTsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1VuaWNvZGVCaWRpLmgJKHJldmlzaW9uIDEwMTIxNykKKysr
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaAkod29ya2luZyBjb3B5
KQpAQCAtMzEsMTEgKzMxLDE1IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGVudW0gRVVuaWNvZGVC
aWRpIHsKICAgICBVQk5vcm1hbCwKICAgICBFbWJlZCwKKyAgICBQbGFpbnRleHQsCiAgICAgT3Zl
cnJpZGUsCiAgICAgSXNvbGF0ZSwKLSAgICBQbGFpbnRleHQKKyAgICBPdmVycmlkZUlzb2xhdGUs
CiB9OwogCitpbmxpbmUgYm9vbCBpc092ZXJyaWRlKEVVbmljb2RlQmlkaSBiaWRpKSB7IHJldHVy
biBiaWRpID09IE92ZXJyaWRlIHx8IGJpZGkgPT0gT3ZlcnJpZGVJc29sYXRlOyB9CitpbmxpbmUg
Ym9vbCBpc0lzb2xhdGUoRVVuaWNvZGVCaWRpIGJpZGkpIHsgcmV0dXJuIGJpZGkgPT0gSXNvbGF0
ZSB8fCBiaWRpID09IE92ZXJyaWRlSXNvbGF0ZTsgfQorCiB9CiAKICNlbmRpZgpJbmRleDogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUl0ZXJhdG9yLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUl0ZXJhdG9yLmgJKHJldmlzaW9uIDEwMTIxNykK
KysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVJdGVyYXRvci5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xMzEsNyArMTMxLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIG5vdGlmeU9ic2VydmVy
RW50ZXJlZAogICAgICAgICAvLyBUaHVzIHdlIGlnbm9yZSBhbnkgcG9zc2libGUgZGlyPSBhdHRy
aWJ1dGUgb24gdGhlIHNwYW4uCiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgaWYgKHVuaWNv
ZGVCaWRpID09IElzb2xhdGUpIHsKKyAgICBpZiAoaXNJc29sYXRlKHVuaWNvZGVCaWRpKSkgewog
ICAgICAgICBvYnNlcnZlci0+ZW50ZXJJc29sYXRlKCk7CiAgICAgICAgIC8vIEVtYmVkZGluZy9P
dmVycmlkZSBjaGFyYWN0ZXJzIGltcGxpZWQgYnkgZGlyPSBhcmUgaGFuZGxlZCB3aGVuCiAgICAg
ICAgIC8vIHdlIHByb2Nlc3MgdGhlIGlzb2xhdGVkIHNwYW4sIG5vdCB3aGVuIGxheWluZyBvdXQg
dGhlICJwYXJlbnQiIHJ1bi4KQEAgLTE1MSw3ICsxNTEsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQg
bm90aWZ5T2JzZXJ2ZXJXaWxsRXhpCiAgICAgRVVuaWNvZGVCaWRpIHVuaWNvZGVCaWRpID0gb2Jq
ZWN0LT5zdHlsZSgpLT51bmljb2RlQmlkaSgpOwogICAgIGlmICh1bmljb2RlQmlkaSA9PSBVQk5v
cm1hbCkKICAgICAgICAgcmV0dXJuOyAvLyBOb3RoaW5nIHRvIGRvIGZvciB1bmljb2RlLWJpZGk6
IG5vcm1hbAotICAgIGlmICh1bmljb2RlQmlkaSA9PSBJc29sYXRlKSB7CisgICAgaWYgKGlzSXNv
bGF0ZSh1bmljb2RlQmlkaSkpIHsKICAgICAgICAgb2JzZXJ2ZXItPmV4aXRJc29sYXRlKCk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CkBAIC0zOTAsNyArMzkwLDcgQEAgaW5saW5lIHZvaWQgSW5s
aW5lQmlkaVJlc29sdmVyOjppbmNyZW1lbgogc3RhdGljIGlubGluZSBib29sIGlzSXNvbGF0ZWRJ
bmxpbmUoUmVuZGVyT2JqZWN0KiBvYmplY3QpCiB7CiAgICAgQVNTRVJUKG9iamVjdCk7Ci0gICAg
cmV0dXJuIG9iamVjdC0+aXNSZW5kZXJJbmxpbmUoKSAmJiBvYmplY3QtPnN0eWxlKCktPnVuaWNv
ZGVCaWRpKCkgPT0gSXNvbGF0ZTsKKyAgICByZXR1cm4gb2JqZWN0LT5pc1JlbmRlcklubGluZSgp
ICYmIGlzSXNvbGF0ZShvYmplY3QtPnN0eWxlKCktPnVuaWNvZGVCaWRpKCkpOwogfQogCiBzdGF0
aWMgaW5saW5lIFJlbmRlck9iamVjdCogY29udGFpbmluZ0lzb2xhdGUoUmVuZGVyT2JqZWN0KiBv
YmplY3QsIFJlbmRlck9iamVjdCogcm9vdCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9jay5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJsb2NrLmNwcAkocmV2aXNpb24gMTAxMjE3KQorKysgU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjk2MCw3ICs2OTYwLDcg
QEAgVGV4dFJ1biBSZW5kZXJCbG9jazo6Y29uc3RydWN0VGV4dFJ1bihSZQogICAgICAgICBpZiAo
ZmxhZ3MgJiBSZXNwZWN0RGlyZWN0aW9uKQogICAgICAgICAgICAgdGV4dERpcmVjdGlvbiA9IHN0
eWxlLT5kaXJlY3Rpb24oKTsKICAgICAgICAgaWYgKGZsYWdzICYgUmVzcGVjdERpcmVjdGlvbk92
ZXJyaWRlKQotICAgICAgICAgICAgZGlyZWN0aW9uYWxPdmVycmlkZSB8PSBzdHlsZS0+dW5pY29k
ZUJpZGkoKSA9PSBPdmVycmlkZTsKKyAgICAgICAgICAgIGRpcmVjdGlvbmFsT3ZlcnJpZGUgfD0g
aXNPdmVycmlkZShzdHlsZS0+dW5pY29kZUJpZGkoKSk7CiAgICAgfQogCiAgICAgVGV4dFJ1biBy
dW4oY2hhcmFjdGVycywgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgZXhwYW5zaW9uLCB0ZXh0RGlyZWN0
aW9uLCBkaXJlY3Rpb25hbE92ZXJyaWRlKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwCShyZXZpc2lvbiAxMDEyMTcpCisr
KyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtOTM0LDEwICs5MzQsMTAgQEAgdm9pZCBSZW5kZXJCbG9jazo6YXBwZW5k
RmxvYXRpbmdPYmplY3RUbwogfQogCiAvLyBGSVhNRTogVGhpcyBzaG91bGQgYmUgYSBCaWRpU3Rh
dHVzIGNvbnN0cnVjdG9yIG9yIGNyZWF0ZSBtZXRob2QuCi1zdGF0aWMgaW5saW5lIEJpZGlTdGF0
dXMgc3RhdHVzV2l0aERpcmVjdGlvbihUZXh0RGlyZWN0aW9uIHRleHREaXJlY3Rpb24pCitzdGF0
aWMgaW5saW5lIEJpZGlTdGF0dXMgc3RhdHVzV2l0aERpcmVjdGlvbihUZXh0RGlyZWN0aW9uIHRl
eHREaXJlY3Rpb24sIGJvb2wgaXNPdmVycmlkZSkKIHsKICAgICBXVEY6OlVuaWNvZGU6OkRpcmVj
dGlvbiBkaXJlY3Rpb24gPSB0ZXh0RGlyZWN0aW9uID09IExUUiA/IExlZnRUb1JpZ2h0IDogUmln
aHRUb0xlZnQ7Ci0gICAgUmVmUHRyPEJpZGlDb250ZXh0PiBjb250ZXh0ID0gQmlkaUNvbnRleHQ6
OmNyZWF0ZSh0ZXh0RGlyZWN0aW9uID09IExUUiA/IDAgOiAxLCBkaXJlY3Rpb24sIGZhbHNlLCBG
cm9tU3R5bGVPckRPTSk7CisgICAgUmVmUHRyPEJpZGlDb250ZXh0PiBjb250ZXh0ID0gQmlkaUNv
bnRleHQ6OmNyZWF0ZSh0ZXh0RGlyZWN0aW9uID09IExUUiA/IDAgOiAxLCBkaXJlY3Rpb24sIGlz
T3ZlcnJpZGUsIEZyb21TdHlsZU9yRE9NKTsKIAogICAgIC8vIFRoaXMgY29waWVzIEJpZGlTdGF0
dXMgYW5kIG1heSBjaHVybiB0aGUgcmVmIG9uIEJpZGlDb250ZXh0LiBJIGRvdWJ0IGl0IG1hdHRl
cnMuCiAgICAgcmV0dXJuIEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBkaXJlY3Rpb24sIGRpcmVjdGlv
biwgY29udGV4dC5yZWxlYXNlKCkpOwpAQCAtOTU5LDcgKzk1OSw3IEBAIHN0YXRpYyBpbmxpbmUg
dm9pZCBjb25zdHJ1Y3RCaWRpUnVucyhJbmwKICAgICAgICAgLy8gT25seSBpbmxpbmVzIG1ha2Ug
c2Vuc2Ugd2l0aCB1bmljb2RlLWJpZGk6IGlzb2xhdGUgKGJsb2NrcyBhcmUgYWxyZWFkeSBpc29s
YXRlZCkuCiAgICAgICAgIFJlbmRlcklubGluZSogaXNvbGF0ZWRTcGFuID0gdG9SZW5kZXJJbmxp
bmUoaXNvbGF0ZWRSdW4tPm9iamVjdCgpKTsKICAgICAgICAgSW5saW5lQmlkaVJlc29sdmVyIGlz
b2xhdGVkUmVzb2x2ZXI7Ci0gICAgICAgIGlzb2xhdGVkUmVzb2x2ZXIuc2V0U3RhdHVzKHN0YXR1
c1dpdGhEaXJlY3Rpb24oaXNvbGF0ZWRTcGFuLT5zdHlsZSgpLT5kaXJlY3Rpb24oKSkpOworICAg
ICAgICBpc29sYXRlZFJlc29sdmVyLnNldFN0YXR1cyhzdGF0dXNXaXRoRGlyZWN0aW9uKGlzb2xh
dGVkU3Bhbi0+c3R5bGUoKS0+ZGlyZWN0aW9uKCksIGlzT3ZlcnJpZGUoaXNvbGF0ZWRTcGFuLT5z
dHlsZSgpLT51bmljb2RlQmlkaSgpKSkpOwogCiAgICAgICAgIC8vIEZJWE1FOiBUaGUgZmFjdCB0
aGF0IHdlIGhhdmUgdG8gY29uc3RydWN0IGFuIEl0ZXJhdG9yIGhlcmUKICAgICAgICAgLy8gY3Vy
cmVudGx5IHByZXZlbnRzIHRoaXMgY29kZSBmcm9tIG1vdmluZyBpbnRvIEJpZGlSZXNvbHZlci4K
QEAgLTEyNDAsNyArMTI0MCw3IEBAIHZvaWQgUmVuZGVyQmxvY2s6OmxheW91dFJ1bnNBbmRGbG9h
dHNJblIKICAgICAgICAgICAgIGlmIChpc05ld1VCQVBhcmFncmFwaCAmJiBzdHlsZSgpLT51bmlj
b2RlQmlkaSgpID09IFBsYWludGV4dCAmJiAhcmVzb2x2ZXIuY29udGV4dCgpLT5wYXJlbnQoKSkg
ewogICAgICAgICAgICAgICAgIFRleHREaXJlY3Rpb24gZGlyZWN0aW9uID0gc3R5bGUoKS0+ZGly
ZWN0aW9uKCk7CiAgICAgICAgICAgICAgICAgZGV0ZXJtaW5lUGFyYWdyYXBoRGlyZWN0aW9uKGRp
cmVjdGlvbiwgcmVzb2x2ZXIucG9zaXRpb24oKSk7Ci0gICAgICAgICAgICAgICAgcmVzb2x2ZXIu
c2V0U3RhdHVzKEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBzdHlsZSgpLT51bmljb2RlQmlkaSgpID09
IE92ZXJyaWRlKSk7CisgICAgICAgICAgICAgICAgcmVzb2x2ZXIuc2V0U3RhdHVzKEJpZGlTdGF0
dXMoZGlyZWN0aW9uLCBpc092ZXJyaWRlKHN0eWxlKCktPnVuaWNvZGVCaWRpKCkpKSk7CiAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAvLyBGSVhNRTogVGhpcyBvd25lcnNoaXAgaXMgcmV2ZXJz
ZWQuIFdlIHNob3VsZCBvd24gdGhlIEJpZGlSdW5MaXN0IGFuZCBwYXNzIGl0IHRvIGNyZWF0ZUJp
ZGlSdW5zRm9yTGluZS4KICAgICAgICAgICAgIEJpZGlSdW5MaXN0PEJpZGlSdW4+JiBiaWRpUnVu
cyA9IHJlc29sdmVyLnJ1bnMoKTsKQEAgLTE2NDcsNyArMTY0Nyw3IEBAIFJvb3RJbmxpbmVCb3gq
IFJlbmRlckJsb2NrOjpkZXRlcm1pbmVTdGEKICAgICAgICAgICAgIC8vIEZJWE1FOiBXaHkgZG9l
cyAidW5pY29kZS1iaWRpOiBwbGFpbnRleHQiIGJpZGlGaXJzdEluY2x1ZGluZ0VtcHR5SW5saW5l
cyB3aGVuIGFsbCBvdGhlciBsaW5lIGxheW91dCBjb2RlIHVzZXMgYmlkaUZpcnN0U2tpcHBpbmdF
bXB0eUlubGluZXM/CiAgICAgICAgICAgICBkZXRlcm1pbmVQYXJhZ3JhcGhEaXJlY3Rpb24oZGly
ZWN0aW9uLCBJbmxpbmVJdGVyYXRvcih0aGlzLCBiaWRpRmlyc3RJbmNsdWRpbmdFbXB0eUlubGlu
ZXModGhpcyksIDApKTsKICAgICAgICAgfQotICAgICAgICByZXNvbHZlci5zZXRTdGF0dXMoQmlk
aVN0YXR1cyhkaXJlY3Rpb24sIHN0eWxlKCktPnVuaWNvZGVCaWRpKCkgPT0gT3ZlcnJpZGUpKTsK
KyAgICAgICAgcmVzb2x2ZXIuc2V0U3RhdHVzKEJpZGlTdGF0dXMoZGlyZWN0aW9uLCBpc092ZXJy
aWRlKHN0eWxlKCktPnVuaWNvZGVCaWRpKCkpKSk7CiAgICAgICAgIHJlc29sdmVyLnNldFBvc2l0
aW9uKElubGluZUl0ZXJhdG9yKHRoaXMsIGJpZGlGaXJzdFNraXBwaW5nRW1wdHlJbmxpbmVzKHRo
aXMsICZyZXNvbHZlciksIDApKTsKICAgICB9CiAgICAgcmV0dXJuIGN1cnI7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwCShyZXZpc2lvbiAxMDEyMTcp
CisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTQwNyw3ICs0MDcsNyBAQCB2b2lkIFJlbmRlckxpc3RCb3g6OnBhaW50SXRlbUZv
cmVncm91bmQoCiAKICAgICB1bnNpZ25lZCBsZW5ndGggPSBpdGVtVGV4dC5sZW5ndGgoKTsKICAg
ICBjb25zdCBVQ2hhciogc3RyaW5nID0gaXRlbVRleHQuY2hhcmFjdGVycygpOwotICAgIFRleHRS
dW4gdGV4dFJ1bihzdHJpbmcsIGxlbmd0aCwgZmFsc2UsIDAsIDAsIFRleHRSdW46OkFsbG93VHJh
aWxpbmdFeHBhbnNpb24sIGl0ZW1TdHlsZS0+ZGlyZWN0aW9uKCksIGl0ZW1TdHlsZS0+dW5pY29k
ZUJpZGkoKSA9PSBPdmVycmlkZSwgVGV4dFJ1bjo6Tm9Sb3VuZGluZyk7CisgICAgVGV4dFJ1biB0
ZXh0UnVuKHN0cmluZywgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgVGV4dFJ1bjo6QWxsb3dUcmFpbGlu
Z0V4cGFuc2lvbiwgaXRlbVN0eWxlLT5kaXJlY3Rpb24oKSwgaXNPdmVycmlkZShpdGVtU3R5bGUt
PnVuaWNvZGVCaWRpKCkpLCBUZXh0UnVuOjpOb1JvdW5kaW5nKTsKICAgICBGb250IGl0ZW1Gb250
ID0gc3R5bGUoKS0+Zm9udCgpOwogICAgIExheW91dFJlY3QgciA9IGl0ZW1Cb3VuZGluZ0JveFJl
Y3QocGFpbnRPZmZzZXQsIGxpc3RJbmRleCk7CiAgICAgci5tb3ZlKGl0ZW1PZmZzZXRGb3JBbGln
bm1lbnQodGV4dFJ1biwgaXRlbVN0eWxlLCBpdGVtRm9udCwgcikpOwpJbmRleDogU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCShyZXZpc2lvbiAxMDEyMTcpCisr
KyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC00NDQsNyArNDQ0LDggQEAgUG9wdXBNZW51U3R5bGUgUmVuZGVyTWVudUxpc3Q6Oml0
ZW1TdHlsZQogICAgIEhUTUxFbGVtZW50KiBlbGVtZW50ID0gbGlzdEl0ZW1zW2xpc3RJbmRleF07
CiAgICAgCiAgICAgUmVuZGVyU3R5bGUqIHN0eWxlID0gZWxlbWVudC0+cmVuZGVyU3R5bGUoKSA/
IGVsZW1lbnQtPnJlbmRlclN0eWxlKCkgOiBlbGVtZW50LT5jb21wdXRlZFN0eWxlKCk7Ci0gICAg
cmV0dXJuIHN0eWxlID8gUG9wdXBNZW51U3R5bGUoc3R5bGUtPnZpc2l0ZWREZXBlbmRlbnRDb2xv
cihDU1NQcm9wZXJ0eUNvbG9yKSwgaXRlbUJhY2tncm91bmRDb2xvcihsaXN0SW5kZXgpLCBzdHls
ZS0+Zm9udCgpLCBzdHlsZS0+dmlzaWJpbGl0eSgpID09IFZJU0lCTEUsIHN0eWxlLT5kaXNwbGF5
KCkgPT0gTk9ORSwgc3R5bGUtPnRleHRJbmRlbnQoKSwgc3R5bGUtPmRpcmVjdGlvbigpLCBzdHls
ZS0+dW5pY29kZUJpZGkoKSA9PSBPdmVycmlkZSkgOiBtZW51U3R5bGUoKTsKKyAgICByZXR1cm4g
c3R5bGUgPyBQb3B1cE1lbnVTdHlsZShzdHlsZS0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1By
b3BlcnR5Q29sb3IpLCBpdGVtQmFja2dyb3VuZENvbG9yKGxpc3RJbmRleCksIHN0eWxlLT5mb250
KCksIHN0eWxlLT52aXNpYmlsaXR5KCkgPT0gVklTSUJMRSwKKyAgICAgICAgc3R5bGUtPmRpc3Bs
YXkoKSA9PSBOT05FLCBzdHlsZS0+dGV4dEluZGVudCgpLCBzdHlsZS0+ZGlyZWN0aW9uKCksIGlz
T3ZlcnJpZGUoc3R5bGUtPnVuaWNvZGVCaWRpKCkpKSA6IG1lbnVTdHlsZSgpOwogfQogCiBDb2xv
ciBSZW5kZXJNZW51TGlzdDo6aXRlbUJhY2tncm91bmRDb2xvcih1bnNpZ25lZCBsaXN0SW5kZXgp
IGNvbnN0CkBAIC00NzMsNyArNDc0LDggQEAgQ29sb3IgUmVuZGVyTWVudUxpc3Q6Oml0ZW1CYWNr
Z3JvdW5kQ29sbwogUG9wdXBNZW51U3R5bGUgUmVuZGVyTWVudUxpc3Q6Om1lbnVTdHlsZSgpIGNv
bnN0CiB7CiAgICAgUmVuZGVyU3R5bGUqIHMgPSBtX2lubmVyQmxvY2sgPyBtX2lubmVyQmxvY2st
PnN0eWxlKCkgOiBzdHlsZSgpOwotICAgIHJldHVybiBQb3B1cE1lbnVTdHlsZShzLT52aXNpdGVk
RGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlDb2xvciksIHMtPnZpc2l0ZWREZXBlbmRlbnRDb2xv
cihDU1NQcm9wZXJ0eUJhY2tncm91bmRDb2xvciksIHMtPmZvbnQoKSwgcy0+dmlzaWJpbGl0eSgp
ID09IFZJU0lCTEUsIHMtPmRpc3BsYXkoKSA9PSBOT05FLCBzLT50ZXh0SW5kZW50KCksIHN0eWxl
KCktPmRpcmVjdGlvbigpLCBzdHlsZSgpLT51bmljb2RlQmlkaSgpID09IE92ZXJyaWRlKTsKKyAg
ICByZXR1cm4gUG9wdXBNZW51U3R5bGUocy0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3Bl
cnR5Q29sb3IpLCBzLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5k
Q29sb3IpLCBzLT5mb250KCksIHMtPnZpc2liaWxpdHkoKSA9PSBWSVNJQkxFLAorICAgICAgICBz
LT5kaXNwbGF5KCkgPT0gTk9ORSwgcy0+dGV4dEluZGVudCgpLCBzdHlsZSgpLT5kaXJlY3Rpb24o
KSwgaXNPdmVycmlkZShzdHlsZSgpLT51bmljb2RlQmlkaSgpKSk7CiB9CiAKIEhvc3RXaW5kb3cq
IFJlbmRlck1lbnVMaXN0Ojpob3N0V2luZG93KCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuY3Bw
CShyZXZpc2lvbiAxMDEyMTcpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4
dENvbnRyb2xTaW5nbGVMaW5lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjEwLDcgKzYxMCw4IEBA
IFBvcHVwTWVudVN0eWxlIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGkKIAogUG9wdXBNZW51U3R5
bGUgUmVuZGVyVGV4dENvbnRyb2xTaW5nbGVMaW5lOjptZW51U3R5bGUoKSBjb25zdAogewotICAg
IHJldHVybiBQb3B1cE1lbnVTdHlsZShzdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NT
UHJvcGVydHlDb2xvciksIHN0eWxlKCktPnZpc2l0ZWREZXBlbmRlbnRDb2xvcihDU1NQcm9wZXJ0
eUJhY2tncm91bmRDb2xvciksIHN0eWxlKCktPmZvbnQoKSwgc3R5bGUoKS0+dmlzaWJpbGl0eSgp
ID09IFZJU0lCTEUsIHN0eWxlKCktPmRpc3BsYXkoKSA9PSBOT05FLCBzdHlsZSgpLT50ZXh0SW5k
ZW50KCksIHN0eWxlKCktPmRpcmVjdGlvbigpLCBzdHlsZSgpLT51bmljb2RlQmlkaSgpID09IE92
ZXJyaWRlKTsKKyAgICByZXR1cm4gUG9wdXBNZW51U3R5bGUoc3R5bGUoKS0+dmlzaXRlZERlcGVu
ZGVudENvbG9yKENTU1Byb3BlcnR5Q29sb3IpLCBzdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29s
b3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpLCBzdHlsZSgpLT5mb250KCksIHN0eWxlKCkt
PnZpc2liaWxpdHkoKSA9PSBWSVNJQkxFLAorICAgICAgICBzdHlsZSgpLT5kaXNwbGF5KCkgPT0g
Tk9ORSwgc3R5bGUoKS0+dGV4dEluZGVudCgpLCBzdHlsZSgpLT5kaXJlY3Rpb24oKSwgaXNPdmVy
cmlkZShzdHlsZSgpLT51bmljb2RlQmlkaSgpKSk7CiB9CiAKIGludCBSZW5kZXJUZXh0Q29udHJv
bFNpbmdsZUxpbmU6OmNsaWVudEluc2V0TGVmdCgpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3ZnL1NWR1RleHRNZXRyaWNzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1RleHRNZXRyaWNzLmNwcAkocmV2aXNpb24gMTAxMjE3
KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdUZXh0TWV0cmljcy5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTgyLDcgKzgyLDcgQEAgc3RhdGljIFRleHRSdW4gY29uc3RydWN0VGV4
dFJ1bihSZW5kZXJTVgogICAgICAgICAgICAgICAgICwgMCAvKiBwYWRkaW5nLCBvbmx5IHJlbGV2
YW50IGZvciBqdXN0aWZpZWQgdGV4dCwgbm90IHJlbGV2YW50IGZvciBTVkcgKi8KICAgICAgICAg
ICAgICAgICAsIFRleHRSdW46OkFsbG93VHJhaWxpbmdFeHBhbnNpb24KICAgICAgICAgICAgICAg
ICAsIHN0eWxlLT5kaXJlY3Rpb24oKQotICAgICAgICAgICAgICAgICwgc3R5bGUtPnVuaWNvZGVC
aWRpKCkgPT0gT3ZlcnJpZGUgLyogZGlyZWN0aW9uYWxPdmVycmlkZSAqLyk7CisgICAgICAgICAg
ICAgICAgLCBpc092ZXJyaWRlKHN0eWxlLT51bmljb2RlQmlkaSgpKSAvKiBkaXJlY3Rpb25hbE92
ZXJyaWRlICovKTsKIAogICAgIGlmICh0ZXh0UnVuTmVlZHNSZW5kZXJpbmdDb250ZXh0KHN0eWxl
LT5mb250KCkpKQogICAgICAgICBydW4uc2V0UmVuZGVyaW5nQ29udGV4dChTVkdUZXh0UnVuUmVu
ZGVyaW5nQ29udGV4dDo6Y3JlYXRlKHRleHQpKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMTIxNykK
KysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBA
CisyMDExLTExLTI3ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAg
IHVuaWNvZGUtYmlkaSBzaG91bGQgc3VwcG9ydCBpc29sYXRlIG92ZXJyaWRlIGFuZCBvdmVycmlk
ZSBpc29sYXRlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD03MzE2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZGVkIGEgdGVzdCBmb3IgcmV0cmlldmluZyBjb21wdXRlZCB2YWx1ZSBvZiB1bmljb2RlLWJp
ZGkgcHJvcGVydHkKKyAgICAgICAgYW5kIGFsc28gYWRkZWQgYSB0ZXN0IHRvIHJlbmRlciAidW5p
Y29kZS1iaWRpOiAtd2Via2l0LWlzb2xhdGUgYmlkaS1vdmVycmlkZSIuCisKKyAgICAgICAgKiBm
YXN0L2Nzcy91bmljb2RlLWJpZGktY29tcHV0ZWQtdmFsdWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2Nzcy91bmljb2RlLWJpZGktY29tcHV0ZWQtdmFsdWUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC90ZXh0L2JpZGktb3ZlcnJpZGUtaXNvbGF0ZS1leHBlY3RlZC5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3RleHQvYmlkaS1vdmVycmlkZS1pc29sYXRlLmh0
bWw6IEFkZGVkLgorCiAyMDExLTExLTI3ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdh
bGlhLmNvbT4KIAogICAgICAgICBSZW1vdmUgYSB0ZXN0IGJhc2VsaW5lIHRoYXQgZG9lcyBub3Qg
ZGlmZmVyIG9uIEdUSysgbm93IHRoYXQKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL3VuaWNv
ZGUtYmlkaS1jb21wdXRlZC12YWx1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9jc3MvdW5pY29kZS1iaWRpLWNvbXB1dGVkLXZhbHVlLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL3VuaWNvZGUtYmlkaS1jb21wdXRl
ZC12YWx1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTcgQEAKK1RoaXMg
dGVzdHMgdGhlIGNvbXB1dGVkIHZhbHVlIG9mIHVuaWNvZGUtYmlkaSBwcm9wZXJ0eS4KKworUEFT
UyBzdHlsZU9mKCJzcGFuIiwge30pLnVuaWNvZGVCaWRpIGlzICJub3JtYWwiCitQQVNTIHN0eWxl
T2YoInNwYW4iLCB7InN0eWxlIjoidW5pY29kZS1iaWRpOiBlbWJlZDsifSkudW5pY29kZUJpZGkg
aXMgImVtYmVkIgorUEFTUyBzdHlsZU9mKCJzcGFuIiwgeyJzdHlsZSI6InVuaWNvZGUtYmlkaTog
LXdlYmtpdC1pc29sYXRlOyJ9KS51bmljb2RlQmlkaSBpcyAiLXdlYmtpdC1pc29sYXRlIgorUEFT
UyBzdHlsZU9mKCJzcGFuIiwgeyJzdHlsZSI6InVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTsi
fSkudW5pY29kZUJpZGkgaXMgImJpZGktb3ZlcnJpZGUiCitQQVNTIHN0eWxlT2YoInNwYW4iLCB7
InN0eWxlIjoidW5pY29kZS1iaWRpOiAtd2Via2l0LXBsYWludGV4dDsifSkudW5pY29kZUJpZGkg
aXMgIi13ZWJraXQtcGxhaW50ZXh0IgorUEFTUyBzdHlsZU9mKCJzcGFuIiwgeyJzdHlsZSI6InVu
aWNvZGUtYmlkaTogYmFkLXZhbHVlOyJ9KS51bmljb2RlQmlkaSBpcyAibm9ybWFsIgorUEFTUyBz
dHlsZU9mKCJzcGFuIiwgeyJzdHlsZSI6InVuaWNvZGUtYmlkaTogZW1iZWQgZW1iZWQ7In0pLnVu
aWNvZGVCaWRpIGlzICJub3JtYWwiCitQQVNTIHN0eWxlT2YoInNwYW4iLCB7InN0eWxlIjoidW5p
Y29kZS1iaWRpOiBlbWJlZCAtd2Via2l0LXBsYWluLXRleHQ7In0pLnVuaWNvZGVCaWRpIGlzICJu
b3JtYWwiCitQQVNTIHN0eWxlT2YoInNwYW4iLCB7InN0eWxlIjoidW5pY29kZS1iaWRpOiBiaWRp
LW92ZXJyaWRlIC13ZWJraXQtaXNvbGF0ZTsifSkudW5pY29kZUJpZGkgaXMgImJpZGktb3ZlcnJp
ZGUgLXdlYmtpdC1pc29sYXRlIgorUEFTUyBzdHlsZU9mKCJzcGFuIiwgeyJzdHlsZSI6InVuaWNv
ZGUtYmlkaTogLXdlYmtpdC1pc29sYXRlIGJpZGktb3ZlcnJpZGU7In0pLnVuaWNvZGVCaWRpIGlz
ICJiaWRpLW92ZXJyaWRlIC13ZWJraXQtaXNvbGF0ZSIKK1BBU1Mgc3R5bGVPZigic3BhbiIsIHsi
c3R5bGUiOiJ1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGUgLXdlYmtpdC1pc29sYXRlIGJpZGkt
b3ZlcnJpZGU7In0pLnVuaWNvZGVCaWRpIGlzICJiaWRpLW92ZXJyaWRlIC13ZWJraXQtaXNvbGF0
ZSIKK1BBU1Mgc3R5bGVPZigic3BhbiIsIHsic3R5bGUiOiJ1bmljb2RlLWJpZGk6IGJpZGktb3Zl
cnJpZGUgLXdlYmtpdC1pc29sYXRlIC13ZWJraXQtaXNvbGF0ZTsifSkudW5pY29kZUJpZGkgaXMg
ImJpZGktb3ZlcnJpZGUgLXdlYmtpdC1pc29sYXRlIgorUEFTUyBzdHlsZU9mKCJzcGFuIiwgeyJz
dHlsZSI6InVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZSBiYWQtdmFsdWU7In0pLnVuaWNvZGVC
aWRpIGlzICJub3JtYWwiCitQQVNTIHN0eWxlT2YoInNwYW4iLCB7InN0eWxlIjoidW5pY29kZS1i
aWRpOiBiaWRpLW92ZXJyaWRlIGVtYmVkOyJ9KS51bmljb2RlQmlkaSBpcyAibm9ybWFsIgorCklu
ZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy91bmljb2RlLWJpZGktY29tcHV0ZWQtdmFsdWUuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy91bmljb2RlLWJpZGktY29tcHV0
ZWQtdmFsdWUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL3VuaWNv
ZGUtYmlkaS1jb21wdXRlZC12YWx1ZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQzIEBA
Civvu788IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0iLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+
VGhpcyB0ZXN0cyB0aGUgY29tcHV0ZWQgdmFsdWUgb2YgdW5pY29kZS1iaWRpIHByb3BlcnR5Ljwv
cD4KKzxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KzxzY3JpcHQ+CisKK3ZhciBjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY29u
dGFpbmVyJyk7CisKK2Z1bmN0aW9uIHN0eWxlT2YobmFtZSwgYXR0cmlidXRlcykgeworICAgIHZh
ciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgICAgZm9yICh2YXIg
bmFtZSBpbiBhdHRyaWJ1dGVzKSB7CisgICAgICAgIHZhciB2YWx1ZSA9IGF0dHJpYnV0ZXNbbmFt
ZV07CisgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKG5hbWUsIHZhbHVlKTsKKyAgICB9Cisg
ICAgY29udGFpbmVyLmFwcGVuZENoaWxkKGVsZW1lbnQpOworICAgIHJldHVybiBnZXRDb21wdXRl
ZFN0eWxlKGVsZW1lbnQpOworfQorCit2YXIgdGVzdHMgPSBbCisgICAgWydzcGFuJywge30sICdu
b3JtYWwnXSwKKyAgICBbJ3NwYW4nLCB7J3N0eWxlJzogJ3VuaWNvZGUtYmlkaTogZW1iZWQ7J30s
ICdlbWJlZCddLAorICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29kZS1iaWRpOiAtd2Via2l0
LWlzb2xhdGU7J30sICctd2Via2l0LWlzb2xhdGUnXSwKKyAgICBbJ3NwYW4nLCB7J3N0eWxlJzog
J3VuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTsnfSwgJ2JpZGktb3ZlcnJpZGUnXSwKKyAgICBb
J3NwYW4nLCB7J3N0eWxlJzogJ3VuaWNvZGUtYmlkaTogLXdlYmtpdC1wbGFpbnRleHQ7J30sICct
d2Via2l0LXBsYWludGV4dCddLAorICAgIFsnc3BhbicsIHsnc3R5bGUnOiAndW5pY29kZS1iaWRp
OiBiYWQtdmFsdWU7J30sICdub3JtYWwnXSwKKyAgICBbJ3NwYW4nLCB7J3N0eWxlJzogJ3VuaWNv
ZGUtYmlkaTogZW1iZWQgZW1iZWQ7J30sICdub3JtYWwnXSwKKyAgICBbJ3NwYW4nLCB7J3N0eWxl
JzogJ3VuaWNvZGUtYmlkaTogZW1iZWQgLXdlYmtpdC1wbGFpbi10ZXh0Oyd9LCAnbm9ybWFsJ10s
CisgICAgWydzcGFuJywgeydzdHlsZSc6ICd1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGUgLXdl
YmtpdC1pc29sYXRlOyd9LCAnYmlkaS1vdmVycmlkZSAtd2Via2l0LWlzb2xhdGUnXSwKKyAgICBb
J3NwYW4nLCB7J3N0eWxlJzogJ3VuaWNvZGUtYmlkaTogLXdlYmtpdC1pc29sYXRlIGJpZGktb3Zl
cnJpZGU7J30sICdiaWRpLW92ZXJyaWRlIC13ZWJraXQtaXNvbGF0ZSddLAorICAgIFsnc3Bhbics
IHsnc3R5bGUnOiAndW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlIC13ZWJraXQtaXNvbGF0ZSBi
aWRpLW92ZXJyaWRlOyd9LCAnYmlkaS1vdmVycmlkZSAtd2Via2l0LWlzb2xhdGUnXSwKKyAgICBb
J3NwYW4nLCB7J3N0eWxlJzogJ3VuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZSAtd2Via2l0LWlz
b2xhdGUgLXdlYmtpdC1pc29sYXRlOyd9LCAnYmlkaS1vdmVycmlkZSAtd2Via2l0LWlzb2xhdGUn
XSwKKyAgICBbJ3NwYW4nLCB7J3N0eWxlJzogJ3VuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZSBi
YWQtdmFsdWU7J30sICdub3JtYWwnXSwKKyAgICBbJ3NwYW4nLCB7J3N0eWxlJzogJ3VuaWNvZGUt
YmlkaTogYmlkaS1vdmVycmlkZSBlbWJlZDsnfSwgJ25vcm1hbCddLAorXS5mb3JFYWNoKGZ1bmN0
aW9uICh0ZXN0KSB7CisgICAgc2hvdWxkQmUoJ3N0eWxlT2YoIicgKyB0ZXN0WzBdICsgJyIsICcg
KyBKU09OLnN0cmluZ2lmeSh0ZXN0WzFdKSArICcpLnVuaWNvZGVCaWRpJywgJyInICsgdGVzdFsy
XSArICciJyk7Cit9KTsKKworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L3RleHQvYmlkaS1vdmVycmlkZS1pc29sYXRlLWV4cGVjdGVkLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2JpZGktb3ZlcnJpZGUtaXNvbGF0ZS1l
eHBlY3RlZC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2JpZGkt
b3ZlcnJpZGUtaXNvbGF0ZS1leHBlY3RlZC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE2
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8cD5UZXN0cyBmb3IgInVuaWNv
ZGUtYmlkaTogYmlkaS1vdmVycmlkZSBpc29sYXRlIi48L3A+CisKKzxkaXYgc3R5bGU9ImZvbnQt
c2l6ZTogM2VtOyI+Cis8ZGl2PmFiYyAxPC9kaXY+Cis8ZGl2PjEgY2JhPC9kaXY+Cis8ZGl2PmNi
YSAxPC9kaXY+Cis8ZGl2PmNiYSAxPC9kaXY+Cis8ZGl2PjEgY2JhPC9kaXY+Cis8ZGl2PmFiYyAx
PC9kaXY+Cis8L2Rpdj4KKworPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC90ZXh0L2JpZGktb3ZlcnJpZGUtaXNvbGF0ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvdGV4dC9iaWRpLW92ZXJyaWRlLWlzb2xhdGUuaHRtbAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL2Zhc3QvdGV4dC9iaWRpLW92ZXJyaWRlLWlzb2xhdGUuaHRtbAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwxOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5Pgor
PHA+VGVzdHMgZm9yICJ1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGUgaXNvbGF0ZSIuPC9wPgor
Cis8ZGl2IHN0eWxlPSJmb250LXNpemU6IDNlbTsiPgorPGRpdj48c3BhbiBzdHlsZT0iZGlyZWN0
aW9uOiBydGw7IHVuaWNvZGUtYmlkaTogLXdlYmtpdC1pc29sYXRlIGlzb2xhdGU7Ij5hYmM8L3Nw
YW4+IDE8L2Rpdj4KKzxkaXY+PHNwYW4gc3R5bGU9ImRpcmVjdGlvbjogcnRsOyB1bmljb2RlLWJp
ZGk6IGJpZGktb3ZlcnJpZGU7Ij5hYmM8L3NwYW4+IDE8L2Rpdj4KKzxkaXY+PHNwYW4gc3R5bGU9
ImRpcmVjdGlvbjogcnRsOyB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGUgLXdlYmtpdC1pc29s
YXRlOyB1bmljb2Rlby1iaWRpOiBiaWRpLW92ZXJyaWRlIGlzb2xhdGU7Ij5hYmM8L3NwYW4+IDE8
L2Rpdj4KKzxkaXY+PHNwYW4gc3R5bGU9ImRpcmVjdGlvbjogcnRsOyB1bmljb2RlLWJpZGk6IC13
ZWJraXQtaXNvbGF0ZSBiaWRpLW92ZXJyaWRlOyB1bmljb2Rlby1iaWRpOiBpc29sYXRlIGJpZGkt
b3ZlcnJpZGU7Ij5hYmM8L3NwYW4+IDE8L2Rpdj4KKzxkaXY+PHNwYW4gc3R5bGU9ImRpcmVjdGlv
bjogcnRsOyB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGUgYmlkaS1vdmVycmlkZTsKK3VuaWNv
ZGUtYmlkaTogLXdlYmtpdC1iYWQtdmFsdWUgLXdlYmtpdC1pc29sYXRlOyB1bmljb2RlLWJpZGk6
IC1iYWQtdmFsdWUgaXNvbGF0ZTsiPmFiYzwvc3Bhbj4gMTwvZGl2PgorPGRpdj48c3BhbiBzdHls
ZT0iZGlyZWN0aW9uOiBydGw7IHVuaWNvZGUtYmlkaTogLXdlYmtpdC1pc29sYXRlIC13ZWJraXQt
aXNvbGF0ZTsgdW5pY29kZW8tYmlkaTogaXNvbGF0ZSBpc29sYXRlOwordW5pY29kZS1iaWRpOiAt
YmFkLXZhbHVlIGJpZGktb3ZlcnJpZGU7Ij5hYmM8L3NwYW4+IDE8L2Rpdj4KKzwvZGl2PgorCis8
L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="116052"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>