<?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>60353</bug_id>
          
          <creation_ts>2011-05-06 00:58:05 -0700</creation_ts>
          <short_desc>REGRESSION(r83256): Validation message for &lt;input type=range&gt; is not rendered</short_desc>
          <delta_ts>2011-06-15 21:31:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Forms</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>52920</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kent Tamura">tkent</reporter>
          <assigned_to name="Kent Tamura">tkent</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>dominicc</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>399406</commentid>
    <comment_count>0</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-06 00:58:05 -0700</bug_when>
    <thetext>How to reproduce:

1. Open the following HTML with Google Chrome / Chromium, not Safari:
&lt;form action=&quot;&quot;&gt;
  &lt;input type=range id=range&gt;
  &lt;input type=submit id=submit&gt;
&lt;/form&gt;
&lt;script&gt;
document.getElementById(&apos;range&apos;).setCustomValidity(&apos;Foo bar&apos;);
&lt;/script&gt;

2. Click the submit button

Results:
Google Chrome 11 shows a validation message with &quot;Foo bar&quot;.
Google Chrome 12 shows nothing.


I confirmed shadow DOM tree for a validation message was correctly created and they were attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399526</commentid>
    <comment_count>1</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-06 08:26:40 -0700</bug_when>
    <thetext>Probably https://trac.webkit.org/changeset/83256 made the regression.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>400326</commentid>
    <comment_count>2</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-08 19:55:06 -0700</bug_when>
    <thetext>Observation:
 * The size of -webkit-validation-bubble element is set to 0x0 by style calculation.
 * If I modify ValidationMessage::buildBubbleTree() as follows, the problem is fixed.

     ExceptionCode ec = 0;
-    host-&gt;ensureShadowRoot()-&gt;appendChild(m_bubble.get(), ec);
+    host-&gt;ensureShadowRoot()-&gt;firstChild()-&gt;appendChild(m_bubble.get(), ec);
 
     RefPtr&lt;HTMLElement&gt; clipper = ElementWithPseudoId::create(doc, &quot;-webkit-validation-bubble-arrow-clipper&quot;);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>400337</commentid>
    <comment_count>3</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-08 20:45:27 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Observation:
&gt;  * The size of -webkit-validation-bubble element is set to 0x0 by style calculation.
&gt;  * If I modify ValidationMessage::buildBubbleTree() as follows, the problem is fixed.

Ok, I found the root cause.
RenderSlider, which is a renderer for a host node, doesn&apos;t lay out renderers for their light/shadow children.  RenderSlider::layout() doesn&apos;t call any layout() for them.

I&apos;m not sure how to fix the problem.
 - Should RenderSlider lay out their children?
  I think we can do so.  But is it a general fix?
 - Shouldn&apos;t we attach a validation message tree to each of form controls?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>402744</commentid>
    <comment_count>4</comment_count>
      <attachid>93266</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-12 01:35:05 -0700</bug_when>
    <thetext>Created attachment 93266
work-in-progress</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>402770</commentid>
    <comment_count>5</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-12 03:22:15 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Created an attachment (id=93266) [details]
&gt; work-in-progress

In this approach, ValidationMessage object should be owned by HTMLFormElement, and HTMLFormElement should provide some functions, which are called by HTMLFormControlElement to control validation messages.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>402880</commentid>
    <comment_count>6</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-05-12 09:09:15 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; Observation:
&gt; &gt;  * The size of -webkit-validation-bubble element is set to 0x0 by style calculation.
&gt; &gt;  * If I modify ValidationMessage::buildBubbleTree() as follows, the problem is fixed.
&gt; 
&gt; Ok, I found the root cause.
&gt; RenderSlider, which is a renderer for a host node, doesn&apos;t lay out renderers for their light/shadow children.  RenderSlider::layout() doesn&apos;t call any layout() for them.
&gt; 
&gt; I&apos;m not sure how to fix the problem.
&gt;  - Should RenderSlider lay out their children?

Yes! It is possible and a &quot;good thing&quot; to do. See bug 52920.

&gt;   I think we can do so.  But is it a general fix?
&gt;  - Shouldn&apos;t we attach a validation message tree to each of form controls?

This is also a cool idea. The form validating its controls seems like a logical idea. Will this still work for free-standing elements? Or do they always have a form element associated? I can&apos;t remember.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404888</commentid>
    <comment_count>7</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-16 19:00:46 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; &gt;  - Should RenderSlider lay out their children?
&gt; 
&gt; Yes! It is possible and a &quot;good thing&quot; to do. See bug 52920.

Oh, it&apos;s a nice patch! Do you have a plan to proceed it?

&gt; &gt;  - Shouldn&apos;t we attach a validation message tree to each of form controls?
&gt; 
&gt; This is also a cool idea. The form validating its controls seems like a logical idea. Will this still work for free-standing elements? Or do they always have a form element associated? I can&apos;t remember.

The interactive validation feature works only for controls associated to a &lt;form&gt;, and we show at most one validation message bubble.  So there is no problem.
However I&apos;m a little afraid using ShadowContent to render form content makes regressions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>421755</commentid>
    <comment_count>8</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-15 21:31:41 -0700</bug_when>
    <thetext>This was fixed by r88757.
Now RenderSlider lays out all of children.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>93266</attachid>
            <date>2011-05-12 01:35:05 -0700</date>
            <delta_ts>2011-05-12 01:35:05 -0700</delta_ts>
            <desc>work-in-progress</desc>
            <filename>bug-60353-20110512173502.patch</filename>
            <type>text/plain</type>
            <size>21755</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODYzMTMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA0NTc2ZmY0MDhhMjgxZDhiODZhZDAx
MTUyNjNkZGQxMWMxY2Y5YmY0Li45NjdmN2FjZTY2MjM5Mzk1ZGM4YjJmZmYyODQ3MjE1MGY1NWNl
NTczIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTEtMDUtMTIgIEtlbnQgVGFtdXJhICA8dGtl
bnRAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIGhvZ2UKKworICAgICAgICBOZWVkIGEgc2hvcnQgZGVzY3JpcHRpb24gYW5kIGJ1
ZyBVUkwgKE9PUFMhKQorCisgICAgICAgICogZmFzdC9mb3Jtcy92YWxpZGF0aW9uLW1lc3NhZ2Ut
YXBwZWFyYW5jZS1yYW5nZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFz
dC9mb3Jtcy92YWxpZGF0aW9uLW1lc3NhZ2UtYXBwZWFyYW5jZS1yYW5nZS1leHBlY3RlZC5wbmc6
IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2Zvcm1zL3ZhbGlkYXRpb24tbWVz
c2FnZS1hcHBlYXJhbmNlLXJhbmdlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTEtMDUtMTEg
IFNyaW5pdmFzdWx1IENoZXJlZGR5ICA8U3Jpbml2YXN1bHUuQ2hlcmVkZHlAbm9raWEuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy92YWxpZGF0aW9uLW1lc3NhZ2UtYXBwZWFyYW5jZS1yYW5nZS5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy92YWxpZGF0aW9uLW1lc3NhZ2UtYXBwZWFyYW5jZS1yYW5n
ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjBjYTU0YzQzYzU5NDFhMzlhODI2NzY0NzIyZTMzMDI4Y2ZkOWMy
NjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3ZhbGlkYXRpb24t
bWVzc2FnZS1hcHBlYXJhbmNlLXJhbmdlLmh0bWwKQEAgLTAsMCArMSwxOSBAQAorPCFET0NUWVBF
IGh0bWw+Cis8IS0tCisgIENoZWNrIGlmIHRoZSBhcHBlYXJhbmNlIG9mIGEgdmFsaWRhdGlvbiBt
ZXNzYWdlIGZvciBhIHNsaWRlciBpcyBnb29kLgorICAgKiBUaGUgdG9wIG9mIHRoZSBidWJibGUg
YXJyb3cgc2hvdWxkIGJlIG9uIHRoZSBib3R0b20gb2YgdGhlIHNsaWRlci4KKy0tPgorPGZvcm0g
YWN0aW9uPSJ2YWxpZGF0aW9uLW1lc3NhZ2UtYXBwZWFyYW5jZS1yYW5nZS5odG1sIj4KKzxpbnB1
dCB0eXBlPXJhbmdlIGlkPXJhbmdlPgorPGlucHV0IHR5cGU9c3VibWl0IGlkPXN1Ym1pdD4KKzwv
Zm9ybT4KKworPHNjcmlwdD4KK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyYW5nZScpLnNldEN1
c3RvbVZhbGlkaXR5KCdGb28gYmFyJyk7Citkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3VibWl0
JykuY2xpY2soKTsKK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisgICAgc2V0VGltZW91dChmdW5jdGlv
bigpIHsgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOyB9LCAwKTsKK30KKzwvc2Ny
aXB0PgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9mb3Jtcy92
YWxpZGF0aW9uLW1lc3NhZ2UtYXBwZWFyYW5jZS1yYW5nZS1leHBlY3RlZC5wbmcgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9mb3Jtcy92YWxpZGF0aW9uLW1lc3NhZ2UtYXBwZWFyYW5j
ZS1yYW5nZS1leHBlY3RlZC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTgzMTc4NmU4ZTExMDI4ODk0YWYzODVi
ZTFhYTM2MmFmNWZkZjViOApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMTgxNDIKemNtZUh2ZDBk
aVApVUtNUFcjdj93SWJkME5PM2tic04oSVpRdmIwSWYyci1BdTJfaDlWMmVkcW5Ce3BnMWJlZ28y
Cno7dytlYFNQcG45d1ZYZkBOaHlhRTVDPjJaeFNhMWgqfTREVWB+QU5BVUg8fCQ/RVM4SEtXamJE
VDVJIXJRX2VhJgp6WnJaU1lnT3JyaXJqc1leJlB6JEgoVXA+dHhnQF8lR1YmQzhgLWJGWVo8emgx
RnJWdndLMCVAM0F5TmtxVGxnRzQKemVBVjBaa2VUVGJpdnczSmorcG8hSzRmeV87MVA/JSpBNUA/
T05EdTRObWdKNyp4SF53WD18JXtfOXB5VksoTD5iCnpSRHxeSjdyVE5+azhLZnwhVCRXYlF+cSsk
PUV7aFNvaExudHVpTipVMzY7SHJIcXJuJWB3WlZoQztNUyRsazdiOwp6dWFkdXdlQXpjLSZ3M14m
aj89ans/UTRBTV9zak9iNEhmXzl7WT40NitXfFhgZC1iRUtHaj97IW9EJX5fR05kLSQKej5eP2pu
QztNI14+SEtyJGZaKnVrZnk+RUs+Q2V8NkpHfFNLSHMhbyktTFg1TmkmMH5nVFote3V4OF43VHN1
RzJMCnorS3FjRW1tc3dIPmlCZUVVcFlxfHZCNSh7Q2ZTUGRZJWVLSHAyNEtkT2tze1ZNQEdEPlE4
Y2hfQHpAentWYHxpaQp6SzJ2KzRWfFMwdW9mOCgxPGBMKEN4I1lBKldObzxzKnRORUhyM1JPYkxj
JTlAdkc9b0ZYV3IoRmhQPTYwPWMqeSMKemB5S0JVR19XOXQrSSN1KWNsJHNpU0JHRFl3al4zPlo4
TSEpQFk7JnN7Xng/fWB6PXRWR3kyYWpBX24kdjt5eClBCnp5M0wlcmVJdnUtZ1lWVjIoOTApVyRm
c2NvYnhDVnVfSztQfU1vQDAmaDlmYm17ekpXVmp5K1lUPzcoTDJqb1VYcQp6LUVgdXRsRCtLSkMq
QH50NjBOcUk5SW1feChrb3U0YDdyOFdfXnY9Z243M1dVdV8mYGFZeTcjRmJTdSRzSX13ajsKell2
ZG0rOX4xMj5gXik4ZjxsQElHPHJGdm1CVyV2b3h8eSQqdD4zZlhacjM2QXZAPTdgY3QkXyZNTHUr
USVxKXEjCnpSc1ZFcUo3fiYxJVZoTW5EVylaflQpO0pnS0tfKW9fd0pUZnJ0OW52ci1ibSFDZ3pO
U1Y2Pig2JG97VlZIVHxMMwp6bHIoZDxvR2dEfjswWGN5UDVyfUIqRl9pNGRHNH0qTX5sek1VWHdr
QClVaDJZUypgb0k0PTdIPjNMez0yQj5COUAKemlGPjw0P2wwfT9eWVZJSEtXX3tIZmc+Nm0mPlFF
Xko8fEJwZUtDY1BlIXRLNmFOZ1VeQEZmaDV3NTxNKHBFXzNYCnpuflpWcipZQG5Ya1A4VG8obGZ0
VHUrVU4mYj5mJHBYJmZ4Kk1YYmZMPj9OeVdIU0JyUTBeTkZQRW85T3lvJDxYLQp6ZE5NT1JqK3s/
MkVPPU5xQHhsQjJyP1dLTV5YSkxDJCRuMDFSb1NsSTZHJSNTazJYeH0qXiVTP21aRFJCNTB9Y2cK
eiVIX2lIXk5XaW09TGNlKXhBKF9xRXkwYFdoNHhKbVgoPmB0eD42X1lqJE1xOVgzLTw3XlRXZjly
PWV7UkA3dzRxCnpqaEBAMHlkYHJAamhuR15VKT5naUBSbjBwMik2Jk5DJWlURjwxX0xrckg9YU1r
X1l5cChXJkNUel4hQlBBOElaZQp6SURPcnpkJDllWWlvRVM7aWVPNFZHQ2s+cml1MWJtJmR4RTkk
JlJRX09TVyllM15TSkZ8MT1EUktkY312QlAqfEAKellaRTZXZDd+cDB8Q2VHRFlHSzJfI15tUUBX
UmdMJHt+Rk9iQVQ5ayhgVVRKYSpGPEBGVUQzTGdXI3BBMm5xKn0mCno8bkJfe21IJH47QHx8d25n
NjZNSkhlYVB4bTI3a2wxVlppcDxJP3t6eCNeLVRRPSFDeiZ9YW0wWGYqUGA7UnNOJgp6ODthO3Nh
UCkxKlF7WEY+WDtkSHpeIUNoVEVkSG0obDQlREooJGM8SyNxdDFVRF9ESnVEfWpyMTY/TyZuKTlI
bjAKenZVYCYtWWVxNUVZanwxe1h0bT5RKHNOMkh3O1NJZkYqPkpkPDFxN1NzeyFxP3hlPVVmPT1s
Vyh0fUFTMUR3fmFWCnpXJXRXSD1uRz1YJXA2THtJSjNOYllROyh+Q21FVWNaRnY+TCVyYGslSElz
MFV7QEI+bzVneDxiRDVUZ084KnUyXwp6PV4oLVcrQDM8NjJBM1NHeSlxe1prR0hRJjspKXZ0WXl4
PCY5fTZaaytSJU5TRjx+RGI/S09mdSs7aXAhKyFEVz8KejtyITN+dVo/dSRmXiN7QSElVGwtRWZ6
QShBPWUxaVBRJU5ofDd4YUFXJXAzS3pYd3RNaU9XXkluJVQxSjd7TlZUCnooejJpWTR4YS17MENF
fFcwVjRgfHl2SnFIdVl9YHtwZz9tKmJTTX1YSld5IXQjMSV7cFJNRm81dTBWVUNHeWpANQp6UnxJ
TmN5JmNPQm5laXBAVXY1al5gSmRSdS07fl4xK3g8NF9GPl56WXpTM0hSMloyM21OeTloQm9TfWBD
QTdPZDgKejlJZm9nSF5wfTMwJkIxd2stbkhxTF99RE04RCRkJWZOWVoqRVNSejZXOXZ8TzF+I2tw
WGVnLUVxcEMxd3o4RCVaCnptV1Q0Ujk4T1RCRG5KK0JCUG15dDxfJmxpdWRhckVlOTJDXk82VlQt
Uks7LUckKnF+JG1VVnkzcjReVUspSUI0dgp6TXpNbVJ3MCFhTTdAbzEqITNnZHRKVlFJTGsrMWlr
anctSzJTcj5uaiZOZmw/N3orWGtDdFBTcCMmVVp5NEwhTyEKemcofm5naD99PVlaMm5pcjVaaTFU
S2w2M3lZZWVYTHNyRW4tSHYyNmFkfVEofiZYLSQ8WXxoaFQ0UCViSjdXU19mCno7SF5qUlJ7IX0+
em9yakR5JWFgRDx6ZHN7RnAlKUM0cHgoZzBkO3hwMXpMT01CejVrd0lleEUhZEk8Q3h6bFdnVAp6
RXpXR2JSbzFgQEVHbWUtV2hxKTw7XiEpZEJJYllldV50dklgeDNyQWFINCpNaWVgfUcmb3BzY0hr
ayU8KkMxeWUKemE/TmpjbjNBaWpJKiU0PnFYclF5NnE9OHMlfXcrO2lhU3ZeQk9DTW9qelMzKlhP
RFptMmlyN3FAND42emhLfSpACnowPmJRN0tVMjFrI2B8V1cjKkl3cDBScjc1OzI3OTR2SWBnN1Q4
WD5LSjMkREszP2R0UCgwR0tYUXxkTipffG82JQp6eit+TCtrTlAjUFJTd2lqU0ZGKktCZ0d2VzFI
PXdPUkE1ZE9ZO15PcDBTekk7ZWJfYFMqcX5lU293Kz5RMTwhKVUKek1uKHhJcF5WWTRmJnlNRzF8
ZVdRVXBPWUctM3dwNF8mRXZLJVUyPXorUkluMDFtRCFRYDFOdWJtKTZ0IzN1Mkk7CnpAVzdebSU3
RDBtdShkPkVlfGtNR2tlK0s2RnlEKS1JfWBOS3piaEQzbiVCTCpBPGA5R0tmKlM5TDJDJjd7JmIj
fAp6WC1VU3Ruaz5YPWchPCE2aX5JMj45fSlgdUtMdnlxbUlNZ0dpWTdYMFBybndrNDZWYF5sYktl
SExLZDcpeFlFalMKenZjbTFLOXFRU1FkdkZDVW9NJmEmWlZ0Rm1He2k2WE4/LWB0eWoxdTQ9TiZv
YmFMZU1zOEN2c1Iqcjk4bXRgbWoxCno0QUB4QXdkVmM0JUJRcWNFQiEzSFJRfTxqSl5PQWpnM3l8
dmlTWlgwbjFPcH4/KVZ0e1c/ND83X2UoNHg9cGBMTgp6dH5MdUFlVDJKdDMmcWdwbn1oX1NLRH5k
ckh3MlE/JkNWYXBPR1EhWiV1dTZxYD1kKT5SbzcwIzRtbExvU2RWb0UKeiRiSEp8U0w+YHR5Sncq
RzFlUUY0MmMhYDEhRERCMFNuWWI0VTt6c2NNXlEmPUxSfFRqeCU+Q29BKTM2SSR4ZjVMCnomWlRo
PVZRSTk0QypYd2Y9Vntjbj5RX0UqMX09T3hpVXxgOzU9RTF8PWpzakQzQW5+cSNCVzhwSCV+PnFR
fUZ6Wgp6YzI5VjUjQDBSbzw2NylpQlkjNEg1Mm9uTXtVS0xGbk5qNnJuK0VsKDE8bWRITnFKMnp2
VXt7X29SM2J0PFZoVH0KenZLM31WQkxzOEE/UW84T1JFJUROVjZudUk3PWpOM3p1TzFILVp4JntV
dEBqRUliX3pxPiQoQ2ptbzVxR2ttQ041CnprUDhISEg/IyskNWl7Xy1DV09OZGtMcjklLUYpUmht
RyhqT098UyozLWxkVzZMaiNMPmpwQ3VMQSZkN2R3bmFKWgp6Knp2PW9FLVhOPipvN1gtVXVlLXM1
K0dPKFpkWGFiJDJ6NlRPN0p0bCNQSmhhKEtgT2BaZ29Xc15+NnIhMGFSTyoKej9zQSorM0Y+YG5U
MT0ySig8KGFUeHRxSmxNV0xXJm5uUllzO1ZKeDBBQ299SyE/RXNmN0NKK190bnJOVnB9WVpxCnp6
Nil0YCNBezk+MSpnNEo+VTVTcUMqan5SbGkoUW1BXiotVyF4UDMjeiZ8cTkjOU0jYkI1dGFKcXtF
ezRWQ2FvLQp6cik5UWZDVz5AeHU9NHI2UG11MXk1LTUjYkFMZzFmeiZkZ21KdjQ+PEVGQmRfXyNR
Xl4hY3dNKnFiTmc8eyVhXygKelA1UH5OOWFnT3ppPWwmUEBuansoX35SbFcrWGwzPWNFczdXQ21V
JVpLKi03Q0MzQj1vb1dkXlVVNSZoJnZLb0pvCnpVX2pgQDlkZ2F7b0FNNSkxe0JxaHRsNVo9KjNf
KnI4SCp4NTV3dnVxQjhjbj1vVmwtZD81bTZEbitzSiFDZmBJdAp6bSZnd245NTRnUEp0OSNEV0JI
N3JKRkJzYGFpUF4xPUxsTipWc3pXbDVZNipQX2Q1ZEB6bGxuJkRCcz8+djZYYDsKekFxXikxZlZY
bmJePWd+ODNPX3B+NmpPdTtqO0grbzU2OVNlMzFxS0tkQShxaU9neUI7TjhQSlYobUlVUzQqIzZi
CnpkZVZIRUZpRXYlXj1xbypVNHVCK0Mtb1Y5e1V5V35NdmRHfCtgXmsyK01VZ2YxbnElX3toazAk
OGxPfEA2bHxLagp6YjstZyg1OXp2SHJ1XyFNVT4xPSFKXmZCR3dtYzhmcm9sMlRpIyRYMHlCZmpI
MWo4bSErJSQlZEpxVSt1amFrPEQKeipjSHBHOyhhJHB6Zn1ZJStqeXNwamY1Ki03ayE2e1VWJm1A
eCE2ZSlPeXBfZTxMP3JydU0oeXpLUTU3dEpuTCV9CnomRSZMaCpoSkFNSjwwamczSG96SThgMj9k
QmNYfHhpJXQocmhjND9oKnR2WTZtSFdMRWR5N3x5RCE4aE5QM1cmKgp6S1R5cnFvbyVAMCFvdkF9
M00ydkUhbFQtaVhLNyFPdXk4eUM0SDJ+WTg7M3ZfbEFOZXlAblNiX3tPS2gxZW9fZ2kKejA3R3Rf
V1g1bnNeemY5JnZ5PjBZYSpzJSpyPCpzI2woZGsxNVRLSDtBZmBzd0lIb3djTnRzTm9vaFp5JThy
dkRYCnpGPHd0WCpGKStjKCV1KiFnVGJEQlViU2VKU15lNDhBX2MzN05XP1g3d2sjbiZgRmZ+ZUBz
cjRBTSN5SW4+OTsxYQp6RlVtQjNZIV5WOVE3eXY2JVY8fmwrKlhWfFQ7e34tY2dPIXA0PUF6bWJR
Q3NIaXkqSCZKOWF3QTVrPElTSkBlI0YKelR9RE5AX0tvUjU5UWkkYTNuOXVTRmJjXlJwb2s8VUhA
YmVtQygkd3E8OF5uZHpAayVjdm1MWkNkaHo7PVRLKSVOCnpxVkNOV1d5azhqRjw+PlZRNEUldDs9
amFxe0I0X0hYKmVffkx6KFpoIyFreXRyM3x5MSYzdD8yUFYyTT1jYlBKbAp6TktPfHY0diRxWlJL
ZFdKK0toMXtvbk9nVkZ0TGRwYFQ0IXRVfFY4RndqTHNHUUhPPGw2LTUwfUdmQTdmQztrMkYKeitB
OFkxREI2dDRmd204ZWw2KnVVcjl5Skx5R2ZTJl55K3RVcnpLfCF6aHxtfUtPX3RxYEU9UClKTiUr
Sl52YT1LCnomUCt8R1QlPnZDaipUc1h2ZjdiVVFGUXwleldHUyNYdGpqXypwTkYmQS04aDRMV0NB
K3g8TylJMGg4ZFphSm5BVwp6dilmYVhiSShaVWk8MV5jcko8Rm5fRHxxVCNrMTdRLUF2UTNDUyp7
c0tWSlZIVERSdVk4MitKN3JBeVNPSkE1e1cKeiQmWkxlRjw2MHk7RjNZZC07JFhJLWRSTnltNG1f
T2t8OXFMPkUkQzRfWitROGwjTW9QVkhCMkl4bSUwIVp2fjJ9CnozXyR9VWghZXchNS1gbVpaPHk0
WkglP2tJN007YVpmOXB2UDc4Vns4Qitsa1c4KihNTVpqfD16OEVYVElkVyhRSAp6TWpuK2ZUVDNy
akN7VSh7b3tpUkdpfng4IzYzbjxUcl5mbDt3KTc8JTlmYn1yP1BpSlYxPmFTTjJDKmVidUBRWiEK
ejU4XzlBYTZ1UWhyNnReWVdhQCUoRUhfUEhrVjtDOERYQ1FpPnBoPmJhUUg/SURob2tHSjR7Z3o4
Kj1NKilWMmhtCnplS2JVZUlrbjdtVWBZJEFDQTR8QUlWeT5+aUFXTWcjOXhofFBoWmhgMHZ1e0pX
ZD1qYzJYRUw0VEooV21rey0jUQp6S31hP0hpIXwxRCVWbDhkY3tRd01xRkIoX1F6UkJ+QEw0R1Ri
Q3VzemxPZFVFTXdmZEY/Kkk1O1AmVmFLdFpCZnsKelZiPmlfaHw4bE4+b3QrUnw5Vz85SSUhMWgt
N2U9dlA0JTYzdkFZJTIzflN2MW1We1ZfJVRFVilVMFlhPjF5YHp4CnpGYFFfQiFFc2J4Oy13PlpY
XiVtUkNrWEByVn1lPEM7cX5SND5zejl8KDtSWnw/TXA5OTRuaz00PVJNd3N0ViZnUwp6eil+WjRZ
JTwrNnRjVUJvNjVpKTN0Zytpe0pAOzkzdjd6R0NIQTxkQVImQyZhQ2M0cnhnaENzdGsqK2NqSU5R
amQKekglS1gpNnF6NSpSNzkjNXItPWo1QjI1T3hHaSlAUVAjRDJ8IStjYWpoTSp2NT9SM2lTcHJ5
Rzk7YVhgN05WRmkqCnpvZTRJV3RzdURlWThLN2tuQHFHNVIoJExgc2hgKE4pfD8wYnlveExgKlhE
IU5QMFRjKy0tRVRqRTZTNj5NUmklMAp6I2dyM3Q1fGs+TEF9S2I7Q0FCekBCdDdVM2pSX35yYnZw
QHNmRmw7Xm1qPTJqNzVZRDtmYCFSdnd9MW5eaSVBbHgKenFDcXZSSjBJMGRSUDFTdjhkVXZSTihC
PmE+aSlqTW15cEdYPW1aUm14RXdwLXJiYmxYKFVPQEZRbjBYUXUyVmgqCnp2RkFeViQwMzZ3T1Mq
YFIkZj9tczBWJEEqayszRjItPmUxQWI/XiNidVAzNFJBQk1UOGRTYV4kZG4rKHNGdHx4Pgp6OVpE
UmteWVBfOWY3aGlVa25ve1dXIW0hWSYwd3BZNXE3XzYjQ0R5SjRWRiZ2SWtxI29NVFBrNWpAaDky
IV92TmsKeihfZ1VWcjV4bmdUTEo7JmNWNnEkVXx5bXJgfVloMTJsSE5rI2RmN3lxVWB4QT50b1Z9
XzBseWQraWRFQFooeiN5CnpJfUB4TFgtOEZAcnFae3s2X1pBcT1KTVp4ZXdDV3Q4PlolQDRuQ1cl
O0JMelJDV3BuXyQpNlBQVW1vfXctX2tQUgp6RXRFZnt6Z14lJkk5aFVxOURzRW5FVndUQDt8bTlB
OG9hbnx2a2tfcXU3RzJaJnw8USNzOV8hcDR5SGMqd1lMMH0KelIoemhDNGVuXzRNaiY3TF98REhR
SX08aX52RGRIWSRUd3htPSQrNEg1OzVZPGhqcz50PVI0cHlkb3E7YVcmfTFICnpFPWBhODxVe29u
YXs7UTE4SXZKPmwpcGpob2lFSCFtemRnNWZZR0R+SUdzdnp4WWgreipuSVNMLW9pYCRueGI0dQp6
O3FkSz01MDBsLXwxPE5LKUhtX1lVZDN6THBSIU1WTDhCentgTyZ7WFNVZWRUeSEoNTczQF9rTi1R
JVU2cTIqREwKeipOaFB4U0BXdUU9KFBNfEZKWSs5NEgtWTQta09HPVZ+MGVRM09iOTNRK19OeWYl
QWs0Kj1efWVgX1lTfklaUXhTCnpaazE1YjxoQ3xMOXNveW9oRWlKQDA/KFo4eXAkaCo4cGszbTd3
d0ckbGRSXlJnPEx+UDxGT3c3VmR7VFFtTms1NAp6b3YjYDIwcSZXSiZxPkpHemlDZExrWWpmNjtD
JlFoRU5KQSgxM3hAdHNJK2xtZ2h5dkQ9YG9KLTJYVXBBcnFjKXYKekl5JE5jQj1YVkJLMnBWYXBo
fHdBV1hGRWtxd3AmX0xnVFI7Yk9BQlZuJCM+MXVmaHkxN1NoMFZUZSo1SlJ1JHB5CnpTK3BBIU8l
fD4mZD9tMiV0fXRAJFU2ZT0oM31telNwQ3ZRUVYjTDxheTY9b2NyRWJWKyohalZfMUxkfF5AfX40
LQp6VG0hZH4+K1lmajYwNkt9e3RaJmxWVTkwcW9Pe0twI3VGUlBhQnZCeUN1SWhEQDJRXn1lOHls
a3VOV2V+TWRpczIKenNUM2NlWEg1NldrVz1ediFwMVVtZ0xkVG1eK0p0NTZRd0V8Njt4dVIyRFZ3
WCsxLWNhODxnSkQxfE40cj9lSmFmCnpla0pWQjtEP2NKK3gtXiNRTjhncUs9b2l5ZjV7aEo2fGst
MCUzak9MNH0haGtgQGMoRikyWmlXXkBfJllobHtxRwp6elFuLUJWZHlkWStgMmd4VGZZcjRASWoj
TmBONz5kOUFgS1F1YitEPlB8I2xscUtpMFZLPU5wcXk2dSU3UjtEUzYKeko9alIzP0RSJkpLJSNv
ej0+TSNSWXRnY01tWjk/cVQ9NkM2KmtKfHBEZGJrXm0qNUZjaFBKeE92MFhBSnJfeFI5Cnp3KSlF
SkohVFVgZHIoMzxgNkc+JWRUeGVVKDFAI3FgRj0zJSFFUHJpMVYhKDJMK0ohSD5uLTZ7Kys5aWNo
R1A3Qgp6eE9CPHxSQD0/LTNLRmRMKCRfWEQ7MDN7eCZoKGlTc2wzfD5pdm1QPUZ9Xis1Z2s0N3NN
ZiFfRndiclBSWm53T2YKenVoNFd1WFQoNEA8bylVWlEzQygyN0tlYGxCISpUSEFvRX5yKylAeHFY
bnZYemslXyZMZzRPdyRXZW5HJmB5Z15tCnpkPmpDRnhmKCZfZn53NmM3JEhsVjY0dGJqbGlTcWRo
Tm9PQmlxQjBVWWpPLUA3fHBQMktEV31EQWgqJmgxNCRWSgp6XiFZUHg7WUhpaEJeY09mREk4cSkw
a1otR3Bgb2M/RTw9fUF0OWdGJFBOJXRXYzY+PCg/IW94fEw5TS0jTSFJd2cKeiEpV0VGNjNpfTBx
VlBuP1pPb0FPQDZtQDB6Vm54I1pZT1JjcCpJUUBBKDlTfSNtTHYkVlk3TjwjSiM5cilGWFNECnpf
Q3U9cyNpbjtKMnBzKEZzcj9VWkRjamtrSWN3UTtgSklIdmV7RVg+YGRNfCNFN2NtdXVQO2JNZyN4
eXlQdFhTTgp6IyokNzZPQSN0dzt0MnVFVXRfVTtxM2QhSTY/Z2NDcDRWQnluTD1OUzNzR3FRMUQ5
PjJ0MWxAZVNUaEQ/VEFycjIKeihBPjReKWVVMV4wQVkteUBKNmV2ZHlWYEtlR25WTD1rekJiYU00
cSpiKXEtX0VDUXdDPkJxY2lHQUNwKWwpbWZDCnpra0dSUSVoTzQ7U09NRXxYfEE0cVlNNCoqc0Il
Qz5RWkpGbSkhQVBHNHVVKXpCQEp3VjlRaUFBMXF1MTc0PkJ+bwp6Zj9HKjQyMVdicjx+TkRNQ2g1
ZT9qZmIyPEFzV04hQGw9M3Rma2FjeXBEI2k3elI+OXRrQGdsPDY5djZSKWJYe08KejJ3ajRBWHB6
NXcpI0N6SlQmI2Z4VldNWHEobGs0KnMpKkV1VDgzI2ZueEFKdD13VVEyb3EtMWBQVH5AKjdKRHp5
CnooNHVlcEYpYC0hPStMTkVpOGt3cUtsJFQpJl9YaUoyYGM9LTFBcylfPm53bkh1MUdLajxpOWVt
YVRpUyM7OGRNfgp6ayNsZE9WI1ozWExUWXxWNCZeVHlGdTxtNnQ0TCZjN0QzRGc2VDYyQGsqc2lY
alJCZ1FDUEk9UnNRRUpTTUAoI1cKejE5SmBGeCpWSGA3U1B6Uz98XzJwTHd8UHs/KGN1cEc2cT95
RHlTSX56NWBURyFze3k8aVdHRlpCSElwOGkkTE48CnotVUlpQkgmYCRwSHB0UTFENHI+KXFQRVhY
dXYoWkhjb3FhPFpeYFR1KlExNTA/Q3NoRDZ4ZSVjO1AqNXw7K1FxLQp6SHY3X2pSSn5hRXE5OXhu
ampUNjhyMis2TGhKY0RUelRCSjc/SllfTm4hXztNLXl6dFFKWFY0eSZlQEJHZUUwTSMKenN7U2lS
YmJhbklBY0FCYG9oNHdre24wWklnKzgySHZwS1k5YSkzYnx3Nj5nYW5UcyEydW9Fenw4bW9vRXdg
MDZ4CnolKCpjVChSd24jV2ZCZSpeNiloS3RTakJJVlBFVzdDaT9qbk9XOFQxPUBEMmxOZ1Z5JUsj
K3VQUH1uYW5RYGxrNwp6eGFubE1vTUI3TmhEWD9uN3cqeWZHdnVAcGNIJjVzNXJqSTViVm1YKjhN
bkcwUXBKJVUhSEgxJXVUOXIyenExeCsKejZ4U2phRFN8PERPZEIoTnY/dz19RGgrOCRfVXAzZGpp
WCtxSntEUW1Kcj56K3draWtkZD5lPEVWPCZuRllnK0xgCnpST3JkJnI7fXdJc0pMN1g2ZnFaWnBQ
N0U3UGBMYn5TWVdnZDZXZ008Ryk1OH4odDt5Q09VdkREOURDPWVHZj5JYAp6UENpZEZoVXNnZXUw
JSFRWXJaPio9Yjw0M0d2N257ZSlJYHhmLTJYME0/JT1tNztFSTUmPEJLR2NxYDdvKlB3YGIKenlB
byUqSGVNcSNWNF5+UVRiQi1ze1BOeTItLVZeTWJkNTUje2cqeTd1SEMmYDlYVUglUSVrSDsqaXFy
UDZVYT09CnpmZHYqNTQzZkpoV2xtWUM2SGN8TjVNWX1hK19hIUY3OWVkYms8PlFpeEdtTGglMTRx
VXgyNV9xKmFGNilJe0olZgp6ZXRES3dQPUloQ0VEI3RXYG9RSTNWSk5wVHFBUCp9NVAwTj4+VzRj
LXlNR2VBI0dzKFJfaXYqQ0R+QTk4dz59fWEKeldMY000RHBfVW5RVTJ8OXlld2ljZGNGY1BQWHc5
a2E2QiFvJkBqez5YP0dUK0ExSD40YH1hMzImJX5PKWFjdHx5CnptPXVeVmdeSmY+Xjh8MFpZNSsq
XjVwVk17JTkxantRKEsmb1JOYmVFazd6bWVWPVFKXmZ0Nll5YWE2fT51QFoxZQp6dTF6cGlmb1Yt
a1dDK1hgbDc0bSVCelghfW5TejZxPDM9XmpCM1VfNWVqVHBSUW5lb3g/d2BBS1Q3NnclSTA0JHEK
eillIzNWRD5OfnomYiN5Ul95KCt5QldWZjxgdlojUklxQ0ckQS1aO2tqQCVQP0s7JEtTYWxhRShL
dCstKHthOWFOCnpzMWlrIzlOdlo5U3dBbUZBNnU/Z0k4LSooblgkRUMtViNEdDkweDdpM1ljc0BD
O1MtY1hJVSZzaE1VJnQ5ciU7aAp6YVElMnU9K1JkK2ArYj5SREYzXmNkJGIpWj5TKkBATHJfRjRk
SHhjT2ckKH5WKGkoQ1Y1QU9UNl9kKi1YdG4tOF4KemlaXjhAUUVmeTRmYi02eGdFTGF2Q2FpOyR3
ZUEwTUV0ZUhvdDJGWH1KdklVUEJieSMwdmRkYnlgeHJ3MU5IRSV+Cnp7Q3VjNFo+TDQzZFlDXmlS
bzY2aF5iXmhuPHlJQyQkUjdkeiRnaipFK093NEI+OX0lZUBXK0VEOTkmdWhZNSgrNgp6P0F4cT8t
YWp1bUR4TXtoVX10P2ktJEw7ITN9WX0/eVclfkEyIUZed3tSNFFOKTQ8ekt7fmxPbyVeJj5IZyVr
OXgKekoxRzk4OTJCP3M1Q3ZWJFgyKVA8TzIzZ1Y/ZWNWSUcmSS1MTnEhKChiKCsyK1ZUOElTK31l
IXNUUiFwd2daKmdgCno/UThXKjFZc1hfWGBCR3dRIyhlRDA1REJ7REhqM1Q8UitJOStpSG82NHo2
ZUltKV8rfnMqfjUlRVltI3JZPmh2WAp6MX5SeiFFMTApSXoxfmF2ek89aik8JSZaN2BBVS1kSW49
RXc2Pk9jfWsjSlckQEppPk41Zz4+I1R+U0p+bS1sRzYKej5Cb1Q5VWl1eytOPjgzTkM2dWtIe1FB
ZThDNzFkb050PCZpZTl9UjJIMm5fMmZibzJTTFJFZEhDdnlVRHlwRShNCnpEWX5yc2NvV1dpJWJ8
ay09VUBNT2shPVBDaDl3I1pvSClyXlYmOUhxOU8yWD4rbmFVeiszZSNkTio8QjBCWDQtKwp6WHw0
JHYlNndvNW5lKEhSOUlvNzBfazlFJntlbFF1ektAeVcyeUl1T2lFRH5ja1RlNld6UiZnMGhfVD1G
U09vRU0KejdtSilQbHl2PmhJZmxzWnB3QXlUd0p1fFNTVClTUlZkfmFhPjBRVyVBTW1eaEcmSX4q
QVd8biVLPEs2dmVXWTx0CnpGSnQ2KzVfazNubno4SjhZLU0+YntAPHpQayhZIUkzcTRSP0NHVC1u
N1l1TiNCWnZ4VTxUciM2bi13fGZwRkdffgp6Y2g2UWwqMmhKKXhaUmZyak1kTCRqcks8QFB7eDR4
R2VaJmFaRCh4VCs0S0d7IU4yZlFSZWR1M18lbzleKGxtKUwKenhEYG5GYzNYa15oPCpHdiNgNjBr
PGcjaTNNTlJBR2k1I0YkVFQzSENKK2cwbnwwUFg8WEJleDdIM0U7VlYkM0tICnpHb08ldklQMnh6
I3VORDRFb3p3aV93U3FlY2prVUVjKllya2pOZnFaU0x5UWo3aWJqU2EjIWhISTlXcXpVM0ZnUQp6
WGZgVmRBWUtAY0ExNz9SaEVNREJMNjQhUkpMbzFSNj1gbjRpXjtgaGojQW0/YThHYyMqRD02eC1a
PHs9PT5pfWAKelk1KiY7SVBDT3VVdjVCVXoqfXViOy0rZm9WdiNZbHVedXZ6d2B1WnlTMWIrXkpO
JGRkbXJkcSNNZEotKyN4Jk9nCnpqM29PVUM+QEVMd0hXcDNwX2xIQXt2XyFOdnVlbm1BKUUkMjhf
cEg8IVZKI0ladSQyfnJsdUB6VXQ5fSMjUERwZgp6OCNXTHs0fGdaOWE1TzRiQX04JG4qLXFUOGA1
KEF6OVp5OWltdExzdkhHRV5taUAqZlhQMHg4ZElSPGwrciVsa0oKeldpdl54OWgtSXtTbVcxZWht
IThKTEh2M14wPGVCfWRPLTRIXzV3Zzh1VF4yY0UwZU9YdmVNR1EqVE5KJj1uaUBCCnpSb2padHh2
RVRuK0R8N0pHP09YLXUwPl9XS2FxPVBETn13KHNmWXl0Zj9CSjFpTD9QXyp2eWVzbnZZdUM5Xyl4
fgp6PkNmMnJ2RTAlJUEmcFhKQjNwNHw4KkpFe1QpYTx9RWNZe2dZZjR4OWQ7WiMlKVFGTzNsOE9Q
Nzg+JUgmO29YfTAKejEtbiFFXygqdTQlIXhWR1ZaR3hIYkpofHtHOXk/ej8yOzU0MygySSFLZjJj
fXsrcW5kI2JiZiVlQ1A3JGlXUUliCnpaYVcwZUM7UWxwczFiWnlqcTsxUDAyM1NhdUdvI0lOKnhT
ZClWUTV3MWkxNnlVdWlCPUE9cTZpMSM+cTtgS3BoKwp6cDdNIUE1XjBGOSRRfWBJMWUreGFDQEx5
PWBDU04yOVkhbmRCSmlpLVF0XlRfVVc3STZYRlgpXlVyaSgzMDltPG4Kelc5MjArXjVyV1BGNHE0
bDY3SWBiOHBjaHZLYVc7aG5KTyh+eF5AcGEqdldsYCtocFpedzx5XmhiaGJiOVliYlN0Cnp5c29g
bXZDK0AxbVheXzJFMVBsbSFhM0VJaDJvI2YkZWo0e0UtLUNII0IzYS1yRlN0ZV9XbkFBe15OQz0p
Y0xTLQp6PmRxRE0le1hUeF5fUnN+KF9jcFp3b2Y7MWkqXmFfU0FfZkBHVXZ8QzdqaSVVMy1JNX12
e2lIZEFNJkdCdXZXcDYKenUtXlghTj9kajJSYWFoaDxeTFBXIyVnNChNJUhSJXR3ej49Nmlva3hN
YjBZa3RuJHQoQDJ2OTlEKTBQdllDV3k4CnpAK3ZFQHZocGVgdWQ/emdFQnx3LV41NmNyV0wyfFBI
RVVJflJ5QXU/dnNOfGhmMUdBcmV1QmhFb356O2NfajNYTQpwWXlOJChEeU9TKmB1fi1qZWlnM354
RGNNN0okdCFPXjF2RllsbElQYnJOX04pfDFUTHpQI14jUgoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAx
CgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvZm9ybXMvdmFsaWRh
dGlvbi1tZXNzYWdlLWFwcGVhcmFuY2UtcmFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2Zhc3QvZm9ybXMvdmFsaWRhdGlvbi1tZXNzYWdlLWFwcGVhcmFuY2UtcmFu
Z2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZiMWU3OTg5MGRhMzMyMjgyNDA3YmNhZjc4NDkx
NjcwY2ZmOWYxM2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
ZmFzdC9mb3Jtcy92YWxpZGF0aW9uLW1lc3NhZ2UtYXBwZWFyYW5jZS1yYW5nZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyNiBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRl
clZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg0MAor
ICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4NDAKKyAgICBSZW5kZXJCb2R5
IHtCT0RZfSBhdCAoOCw4KSBzaXplIDc4NHgyNAorICAgICAgUmVuZGVyQmxvY2sge0ZPUk19IGF0
ICgwLDApIHNpemUgNzg0eDI0CisgICAgICAgIFJlbmRlclNsaWRlciB7SU5QVVR9IGF0ICgyLDIp
IHNpemUgMTI5eDE1IFtiZ2NvbG9yPSNGRkZGRkZdCisgICAgICAgICAgUmVuZGVyQmxvY2sge0RJ
Vn0gYXQgKDU3LDApIHNpemUgMTV4MTUKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgx
MzMsMykgc2l6ZSA0eDE4CisgICAgICAgICAgdGV4dCBydW4gYXQgKDEzMywzKSB3aWR0aCA0OiAi
ICIKKyAgICAgICAgUmVuZGVyQnV0dG9uIHtJTlBVVH0gYXQgKDEzOSw0KSBzaXplIDU0eDE4IFti
Z2NvbG9yPSNDMEMwQzBdCisgICAgICAgICAgUmVuZGVyQmxvY2sgKGFub255bW91cykgYXQgKDgs
Mikgc2l6ZSAzOHgxMworICAgICAgICAgICAgUmVuZGVyVGV4dCBhdCAoMCwwKSBzaXplIDM4eDEz
CisgICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDM4OiAiU3VibWl0IgorICAg
ICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAweDAKK2xheWVyIGF0ICgxMCwy
NSkgc2l6ZSA3MXg1MgorICBSZW5kZXJCbG9jayAocG9zaXRpb25lZCkgekk6IDIxNDc0ODM2NDcg
e0RJVn0gYXQgKDEwLDI1KSBzaXplIDcxeDUyCitsYXllciBhdCAoMTAsMjUpIHNpemUgNzF4MTYg
c2Nyb2xsSGVpZ2h0IDI2CisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgNzF4MTYK
K2xheWVyIGF0ICgxMCwzNykgc2l6ZSA3MXgzNgorICBSZW5kZXJCbG9jayAocmVsYXRpdmUgcG9z
aXRpb25lZCkgekk6IDIxNDc0ODM2NDQge0RJVn0gYXQgKDAsMTYpIHNpemUgNzF4MzYgW2JvcmRl
cjogKDJweCBzb2xpZCAjNDQwMDAwKV0KKyAgICBSZW5kZXJJbmxpbmUge0J9IGF0ICgwLDApIHNp
emUgNTF4MTYKKyAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMTAsMTApIHNpemUgNTF4MTYK
KyAgICAgICAgdGV4dCBydW4gYXQgKDEwLDEwKSB3aWR0aCA1MTogIkZvbyBiYXIiCitsYXllciBh
dCAoNDIsMjUpIHNpemUgMTh4MTggYmFja2dyb3VuZENsaXAgYXQgKDEwLDI1KSBzaXplIDcxeDE2
IGNsaXAgYXQgKDEwLDI1KSBzaXplIDcxeDE2IG91dGxpbmVDbGlwIGF0ICgxMCwyNSkgc2l6ZSA3
MXgxNgorICBSZW5kZXJCbG9jayAocmVsYXRpdmUgcG9zaXRpb25lZCkgekk6IDIxNDc0ODM2NDUg
e0RJVn0gYXQgKDAsMCkgc2l6ZSAxOHgxOCBbYmdjb2xvcj0jRjhFQ0VDXSBbYm9yZGVyOiAoMnB4
IHNvbGlkICM0NDAwMDApIG5vbmUgKDJweCBzb2xpZCAjNDQwMDAwKV0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAy
ZGVhODRkYjc1YTRkNjMxNTdkODlkN2UxMTQ5NTg4NzMxNTEwNGNhLi5lMDM2MDgyODMyODdhYmU0
ZTMxYzk4NDEyNzVkMWIyZTI2ZjMxMWQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIw
MTEtMDUtMTIgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJFR1JFU1NJT04ocjgzMjU2KTog
VmFsaWRhdGlvbiBtZXNzYWdlIGZvciA8aW5wdXQgdHlwZT1yYW5nZT4gaXMgbm90IHJlbmRlcmVk
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjAzNTMK
KyAgICAgICAgCisgICAgICAgIFcgSSBQCisKKyAgICAgICAgVGVzdDogZmFzdC9mb3Jtcy92YWxp
ZGF0aW9uLW1lc3NhZ2UtYXBwZWFyYW5jZS1yYW5nZS5odG1sCisKKyAgICAgICAgKiBodG1sL0hU
TUxGb3JtRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1lbnQ6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpGb3JtQ29udGVudEVsZW1lbnQ6OkZvcm1Db250ZW50
RWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpGb3JtQ29udGVudEVsZW1lbnQ6OnNob3VsZElu
Y2x1ZGUpOgorICAgICAgICAoV2ViQ29yZTo6Rm9ybUNvbnRlbnRFbGVtZW50OjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpjcmVhdGVTaGFkb3dTdWJ0cmVlKToK
KyAgICAgICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvVmFsaWRh
dGlvbk1lc3NhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VmFsaWRhdGlvbk1lc3NhZ2U6OmJ1
aWxkQnViYmxlVHJlZSk6CisgICAgICAgIChXZWJDb3JlOjpWYWxpZGF0aW9uTWVzc2FnZTo6ZGVs
ZXRlQnViYmxlVHJlZSk6CisKIDIwMTEtMDUtMTEgIExldmkgV2VpbnRyYXViICA8bGV2aXdAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCmluZGV4IDUyYmZkYTMwMGViNDljNzJiNzRlNzEz
MTk1OTIxMzk4MDEwMDRkNGMuLjcwNWQzMjE0M2UzZTNhMzU0NDE3YWIyYzUyYzJkZGM5YTRjNTZi
ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKQEAgLTUwLDYgKzUw
LDggQEAKICNpbmNsdWRlICJSZW5kZXJUZXh0Q29udHJvbC5oIgogI2luY2x1ZGUgIlNjcmlwdEV2
ZW50TGlzdGVuZXIuaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgorI2luY2x1ZGUgIlNoYWRvd0Nv
bnRlbnRFbGVtZW50LmgiCisjaW5jbHVkZSAiU2hhZG93Um9vdC5oIgogI2luY2x1ZGUgIlZhbGlk
aXR5U3RhdGUuaCIKICNpbmNsdWRlIDxsaW1pdHM+CiAKQEAgLTgwLDEyICs4MiwxNiBAQCBIVE1M
Rm9ybUVsZW1lbnQ6OkhUTUxGb3JtRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1l
LCBEb2N1bWVudCogZG9jdW1lbgogCiBQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gSFRNTEZv
cm1FbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQqIGRvY3VtZW50KQogewotICAgIHJldHVybiBhZG9w
dFJlZihuZXcgSFRNTEZvcm1FbGVtZW50KGZvcm1UYWcsIGRvY3VtZW50KSk7CisgICAgUmVmUHRy
PEhUTUxGb3JtRWxlbWVudD4gZm9ybSA9IGFkb3B0UmVmKG5ldyBIVE1MRm9ybUVsZW1lbnQoZm9y
bVRhZywgZG9jdW1lbnQpKTsKKyAgICBmb3JtLT5jcmVhdGVTaGFkb3dTdWJ0cmVlKCk7CisgICAg
cmV0dXJuIGZvcm0ucmVsZWFzZSgpOwogfQogCiBQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4g
SFRNTEZvcm1FbGVtZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9j
dW1lbnQqIGRvY3VtZW50KQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgSFRNTEZvcm1FbGVt
ZW50KHRhZ05hbWUsIGRvY3VtZW50KSk7CisgICAgUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9y
bSA9IGFkb3B0UmVmKG5ldyBIVE1MRm9ybUVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpKTsKKyAg
ICBmb3JtLT5jcmVhdGVTaGFkb3dTdWJ0cmVlKCk7CisgICAgcmV0dXJuIGZvcm0ucmVsZWFzZSgp
OwogfQogCiBIVE1MRm9ybUVsZW1lbnQ6On5IVE1MRm9ybUVsZW1lbnQoKQpAQCAtOTksNiArMTA1
LDMwIEBAIEhUTUxGb3JtRWxlbWVudDo6fkhUTUxGb3JtRWxlbWVudCgpCiAgICAgICAgIG1faW1h
Z2VFbGVtZW50c1tpXS0+bV9mb3JtID0gMDsKIH0KIAorY2xhc3MgRm9ybUNvbnRlbnRFbGVtZW50
IDogcHVibGljIFNoYWRvd0NvbnRlbnRFbGVtZW50IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFz
c1JlZlB0cjxGb3JtQ29udGVudEVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCopOworCitwcml2YXRl
OgorICAgIEZvcm1Db250ZW50RWxlbWVudChEb2N1bWVudCogZG9jdW1lbnQpCisgICAgICAgIDog
U2hhZG93Q29udGVudEVsZW1lbnQoZG9jdW1lbnQpCisgICAgeworICAgIH0KKworICAgIHZpcnR1
YWwgYm9vbCBzaG91bGRJbmNsdWRlKE5vZGUqKSB7IHJldHVybiB0cnVlOyB9Cit9OworCitQYXNz
UmVmUHRyPEZvcm1Db250ZW50RWxlbWVudD4gRm9ybUNvbnRlbnRFbGVtZW50OjpjcmVhdGUoRG9j
dW1lbnQqIGRvYykKK3sKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IEZvcm1Db250ZW50RWxlbWVu
dChkb2MpKTsKK30KKwordm9pZCBIVE1MRm9ybUVsZW1lbnQ6OmNyZWF0ZVNoYWRvd1N1YnRyZWUo
KQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworICAgIGVuc3VyZVNoYWRvd1Jvb3QoKS0+
YXBwZW5kQ2hpbGQoRm9ybUNvbnRlbnRFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSksIGVjLCB0
cnVlKTsKK30KKwogYm9vbCBIVE1MRm9ybUVsZW1lbnQ6OmZvcm1Xb3VsZEhhdmVTZWN1cmVTdWJt
aXNzaW9uKGNvbnN0IFN0cmluZyYgdXJsKQogewogICAgIHJldHVybiBkb2N1bWVudCgpLT5jb21w
bGV0ZVVSTCh1cmwpLnByb3RvY29sSXMoImh0dHBzIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9y
bUVsZW1lbnQuaAppbmRleCAzMTAwZjY3YWRmZTFjYzZlYWVjYWY0YWNkMDc2NjNjNzQ4MjYxNGVh
Li5hNjUxYWJiOWViMmZiOTc3OTU2ZTA3YmY1MDcyZjExYWFjNjE4NDI3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEZvcm1FbGVtZW50LmgKQEAgLTExNiw2ICsxMTYsNyBAQCBwdWJsaWM6CiAKIHBy
aXZhdGU6CiAgICAgSFRNTEZvcm1FbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVu
dCopOworICAgIHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZSgpOwogCiAgICAgdmlydHVhbCBib29s
IHJlbmRlcmVySXNOZWVkZWQoUmVuZGVyU3R5bGUqKTsKICAgICB2aXJ0dWFsIHZvaWQgaW5zZXJ0
ZWRJbnRvRG9jdW1lbnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVmFsaWRh
dGlvbk1lc3NhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9WYWxpZGF0aW9uTWVzc2FnZS5j
cHAKaW5kZXggYTM0MmYzMmVjNGY4ZDA2NzQ2NDc3MTY1ODQwNTkwODE0MmQ3YzM4Yi4uZGQ4Njhk
MmYwMDM3ZWMzYWE3Nzc3YjdiYTU5NGFmZTFhMDRhYjU3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9WYWxpZGF0aW9uTWVzc2FnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9WYWxpZGF0aW9uTWVzc2FnZS5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJDU1NW
YWx1ZUtleXdvcmRzLmgiCiAjaW5jbHVkZSAiRm9ybUFzc29jaWF0ZWRFbGVtZW50LmgiCiAjaW5j
bHVkZSAiSFRNTEJSRWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVudC5oIgogI2lu
Y2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJSZW5kZXJP
YmplY3QuaCIKQEAgLTE0NSw3ICsxNDYsOSBAQCB2b2lkIFZhbGlkYXRpb25NZXNzYWdlOjpidWls
ZEJ1YmJsZVRyZWUoVGltZXI8VmFsaWRhdGlvbk1lc3NhZ2U+KikKICAgICBtX2J1YmJsZS0+Z2V0
SW5saW5lU3R5bGVEZWNsKCktPnNldFByb3BlcnR5KENTU1Byb3BlcnR5UG9zaXRpb24sIENTU1Zh
bHVlQWJzb2x1dGUpOwogICAgIGFkanVzdEJ1YmJsZVBvc2l0aW9uKGhvc3QtPmdldFJlY3QoKSwg
bV9idWJibGUuZ2V0KCkpOwogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwotICAgIGhvc3QtPmVu
c3VyZVNoYWRvd1Jvb3QoKS0+YXBwZW5kQ2hpbGQobV9idWJibGUuZ2V0KCksIGVjKTsKKyAgICAv
L2hvc3QtPmVuc3VyZVNoYWRvd1Jvb3QoKS0+YXBwZW5kQ2hpbGQobV9idWJibGUuZ2V0KCksIGVj
KTsKKyAgICBBU1NFUlQoaG9zdC0+Zm9ybSgpKTsKKyAgICBob3N0LT5mb3JtKCktPmVuc3VyZVNo
YWRvd1Jvb3QoKS0+YXBwZW5kQ2hpbGQobV9idWJibGUuZ2V0KCksIGVjKTsKIAogICAgIFJlZlB0
cjxIVE1MRWxlbWVudD4gY2xpcHBlciA9IEVsZW1lbnRXaXRoUHNldWRvSWQ6OmNyZWF0ZShkb2Ms
ICItd2Via2l0LXZhbGlkYXRpb24tYnViYmxlLWFycm93LWNsaXBwZXIiKTsKICAgICBjbGlwcGVy
LT5hcHBlbmRDaGlsZChFbGVtZW50V2l0aFBzZXVkb0lkOjpjcmVhdGUoZG9jLCAiLXdlYmtpdC12
YWxpZGF0aW9uLWJ1YmJsZS1hcnJvdyIpLCBlYyk7CkBAIC0xNzAsOCArMTczLDExIEBAIHZvaWQg
VmFsaWRhdGlvbk1lc3NhZ2U6OmRlbGV0ZUJ1YmJsZVRyZWUoVGltZXI8VmFsaWRhdGlvbk1lc3Nh
Z2U+KikKICAgICBpZiAobV9idWJibGUpIHsKICAgICAgICAgbV9idWJibGVNZXNzYWdlID0gMDsK
ICAgICAgICAgSFRNTEVsZW1lbnQqIGhvc3QgPSB0b0hUTUxFbGVtZW50KG1fZWxlbWVudCk7Ci0g
ICAgICAgIEV4Y2VwdGlvbkNvZGUgZWM7Ci0gICAgICAgIGhvc3QtPnNoYWRvd1Jvb3QoKS0+cmVt
b3ZlQ2hpbGQobV9idWJibGUuZ2V0KCksIGVjKTsKKyAgICAgICAgQVNTRVJUKGhvc3QtPmZvcm0o
KSk7CisgICAgICAgIGlmIChob3N0LT5mb3JtKCkpIHsKKyAgICAgICAgICAgIEV4Y2VwdGlvbkNv
ZGUgZWM7CisgICAgICAgICAgICBob3N0LT5mb3JtKCktPnNoYWRvd1Jvb3QoKS0+cmVtb3ZlQ2hp
bGQobV9idWJibGUuZ2V0KCksIGVjKTsKKyAgICAgICAgfQogICAgICAgICBtX2J1YmJsZSA9IDA7
CiAgICAgfQogICAgIG1fbWVzc2FnZSA9IFN0cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IGNl
ZmJmMmI3NWM3MWQ0NjZjODQ5OTI2ZDg3YjY5MmNhMTQwZTNkMDkuLjU3YzcxMDFiOGRhNzhjOWRm
ZDU4MTBhNTc4NTZkZTBlZWMyZDdmNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAxMS0wNS0xMiAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUkVHUkVTU0lPTihyODMy
NTYpOiBWYWxpZGF0aW9uIG1lc3NhZ2UgZm9yIDxpbnB1dCB0eXBlPXJhbmdlPiBpcyBub3QgcmVu
ZGVyZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
MDM1MworICAgICAgICAKKyAgICAgICAgV2ViS2l0L21hYyBjaGFuZ2UgbXVzdCBiZSByZXZlcnRl
ZC4gSXQncyBmb3IgdGVzdGluZy4KKworICAgICAgICAqIFdlYlZpZXcvV2ViVmlld0RhdGEubW06
CisgICAgICAgICgtW1dlYlZpZXdQcml2YXRlIGluaXRdKToKKwogMjAxMS0wNS0xMSAgSmlhIFB1
ICA8anB1QGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlld0RhdGEubW0gYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXdEYXRhLm1tCmluZGV4IDkxZjUyZmQxZjIwNTE4
N2E0NTIwZDhlMTFhODNiMDc2MjQ5NTYyMjIuLmJlMzBjNDFjYjhjMGE4ZGVkNzYyNTAzY2MwZDE3
ZmJiZmE0OTUxYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmll
d0RhdGEubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3RGF0YS5tbQpA
QCAtNjMsNyArNjMsNyBAQCBpbnQgcGx1Z2luRGF0YWJhc2VDbGllbnRDb3VudCA9IDA7CiAgICAg
em9vbU11bHRpcGxpZXIgPSAxOwogICAgIHpvb21zVGV4dE9ubHkgPSBOTzsKIAotICAgIGludGVy
YWN0aXZlRm9ybVZhbGlkYXRpb25FbmFibGVkID0gTk87CisgICAgaW50ZXJhY3RpdmVGb3JtVmFs
aWRhdGlvbkVuYWJsZWQgPSBZRVM7CiAgICAgLy8gVGhlIGRlZmF1bHQgdmFsdWUgc2hvdWxkIGJl
IHN5bmNocm9uaXplZCB3aXRoIFdlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAuCiAgICAgdmFsaWRh
dGlvbk1lc3NhZ2VUaW1lck1hZ25pZmljYXRpb24gPSA1MDsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>