<?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>117599</bug_id>
          
          <creation_ts>2013-06-13 09:25:03 -0700</creation_ts>
          <short_desc>[CSS Shapes][CSS Regions] Respect bottom positioned shapes and content adjustment inside shapes</short_desc>
          <delta_ts>2013-06-13 14:09:56 -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>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>89256</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zoltan Horvath">zoltan</reporter>
          <assigned_to name="Zoltan Horvath">zoltan</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>WebkitBugTracker</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>900125</commentid>
    <comment_count>0</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2013-06-13 09:25:03 -0700</bug_when>
    <thetext>Shapes which positioned to the bottom of the container cause layout errors. We need to respect adjustment inside shapes. (e.g. in case of rectangular shapes we neet to adjust the content start position to where the first segment fits).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900200</commentid>
    <comment_count>1</comment_count>
      <attachid>204629</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2013-06-13 10:43:36 -0700</bug_when>
    <thetext>Created attachment 204629
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900266</commentid>
    <comment_count>2</comment_count>
      <attachid>204629</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2013-06-13 13:01:44 -0700</bug_when>
    <thetext>Comment on attachment 204629
proposed patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900280</commentid>
    <comment_count>3</comment_count>
      <attachid>204629</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-13 14:09:54 -0700</bug_when>
    <thetext>Comment on attachment 204629
proposed patch

Clearing flags on attachment: 204629

Committed r151570: &lt;http://trac.webkit.org/changeset/151570&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900281</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-13 14:09:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204629</attachid>
            <date>2013-06-13 10:43:36 -0700</date>
            <delta_ts>2013-06-13 14:09:54 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>adjusted_bottom.patch</filename>
            <type>text/plain</type>
            <size>34675</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAyOGExZTc1Li41MWE4MzFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTMtMDYt
MTMgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW0NTUyBT
aGFwZXNdW0NTUyBSZWdpb25zXSBSZXNwZWN0IGJvdHRvbSBwb3NpdGlvbmVkIHNoYXBlcyBhbmQg
Y29udGVudCBhZGp1c3RtZW50IGluc2lkZSBzaGFwZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzU5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEluIHIxNTA0NzggSSBhZGRlZCBzdXBwb3J0IGZvciBt
dWx0aXBsZSBwb3NpdGlvbmVkIHNoYXBlLWluc2lkZXMgb24gcmVnaW9ucywgdGhpcyBwYXRjaCBj
b3ZlcnMgdGhlIGNhc2VzIHdoZW4gYSBzaGFwZQorICAgICAgICBpcyBwb3NpdGlvbmVkIHRvIHRo
ZSBib3R0b20gb2YgdGhlIHJlZ2lvbiBvciB0aGUgcmVnaW9uIGNvbnRhaW5zIGEgc2hhcGUgd2hp
Y2ggZm9yY2VzIHRoZSBjb250ZW50IHRvIGJlIGFkanVzdGVkIGluc2lkZQorICAgICAgICB0aGUg
c2hhcGUgKGUuZy4gd2UgaGF2ZSBhIHRyaWFuZ2xlIHNoYXBlIGFuZCB0aGUgZmlyc3QgbGluZSBu
ZWVkcyB0byBiZSBzdGFydGVkIGF0IHRoZSBmaXJzdCBwb3NpdGlvbiB3aGVyZSBpdCBmaXRzKS4K
KyAgICAgICAgSSBpbnRyb2R1Y2VkIGEgbmV3IGhlbHBlciBmdW5jdGlvbiB0byB1cGRhdGUgdGhl
IGN1cnJlbnQgc2hhcGUgYW5kIHRoZSBjdXJyZW50IGxpbmUgc2VnbWVudHMgaW4gdGhlIGZsb3cg
dGhyZWFkIGNhc2VzLiBXaXRoCisgICAgICAgIHRoaXMgbmV3IGhlbHBlciBmdW5jdGlvbiBhbGwg
dGhlIGxvZ2ljIHdoaWNoIGNhbGN1bGF0ZXMgdGhlIHNlZ21lbnRzIGZvciBzaGFwZS1pbnNpZGUg
b24gcmVnaW9ucyBpcyBsb2NhdGVkIGluIG9uZSBmdW5jdGlvbi4KKworICAgICAgICAqIGZhc3Qv
cmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMtYmxvY2stY29udGVu
dC1vdmVyZmxvdy1ib3R0b20tcG9zaXRpb25lZC1tdWx0aXBsZS1zaGFwZXMtZXhwZWN0ZWQuaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNp
ZGUtb24tcmVnaW9ucy1ibG9jay1jb250ZW50LW92ZXJmbG93LWJvdHRvbS1wb3NpdGlvbmVkLW11
bHRpcGxlLXNoYXBlcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvc2hhcGUt
aW5zaWRlL3NoYXBlLWluc2lkZS1vbi1yZWdpb25zLWJsb2NrLWNvbnRlbnQtcG9seWdvbi13aXRo
LWFkanVzdG1lbnQtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9yZWdpb25z
L3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1ibG9jay1jb250ZW50LXBvbHln
b24td2l0aC1hZGp1c3RtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9z
aGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMtaW5saW5lLWNvbnRlbnQtb3ZlcmZs
b3ctYm90dG9tLXBvc2l0aW9uZWQtbXVsdGlwbGUtc2hhcGVzLWV4cGVjdGVkLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJl
Z2lvbnMtaW5saW5lLWNvbnRlbnQtb3ZlcmZsb3ctYm90dG9tLXBvc2l0aW9uZWQtbXVsdGlwbGUt
c2hhcGVzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUv
c2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMtaW5saW5lLWNvbnRlbnQtcG9seWdvbi13aXRoLWFkanVz
dG1lbnQtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9yZWdpb25zL3NoYXBl
LWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1pbmxpbmUtY29udGVudC1wb2x5Z29uLXdp
dGgtYWRqdXN0bWVudC5odG1sOiBBZGRlZC4KKwogMjAxMy0wNi0xMyAgWXVraSBTZWtpZ3VjaGkg
IDx5dWtpLnNla2lndWNoaUBhY2Nlc3MtY29tcGFueS5jb20+CiAKICAgICAgICAgU2V0dGluZyBv
dmVyZmxvdzpoaWRkZW4gb24gcG9zaXRpb246YWJzb2x1dGUgZG9lcyBub3QgcmVwYWludCBoaWRk
ZW4gY29udGVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3NoYXBlLWlu
c2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1ibG9jay1jb250ZW50LW92ZXJmbG93LWJvdHRv
bS1wb3NpdGlvbmVkLW11bHRpcGxlLXNoYXBlcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1ibG9jay1j
b250ZW50LW92ZXJmbG93LWJvdHRvbS1wb3NpdGlvbmVkLW11bHRpcGxlLXNoYXBlcy1leHBlY3Rl
ZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU0ODdkYWYKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvc2hhcGUtaW5zaWRlL3NoYXBl
LWluc2lkZS1vbi1yZWdpb25zLWJsb2NrLWNvbnRlbnQtb3ZlcmZsb3ctYm90dG9tLXBvc2l0aW9u
ZWQtbXVsdGlwbGUtc2hhcGVzLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSw0OSBAQAorPCFET0NU
WVBFIEhUTUw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzdHlsZT4KKyAgICAgICAgI3BhZ2Ugewor
ICAgICAgICAgICAgZm9udDogMjBweCBBaGVtLCBzYW5zLXNlcmlmOworICAgICAgICAgICAgbGlu
ZS1oZWlnaHQ6IDIwcHg7CisgICAgICAgIH0KKyAgICAgICAgLnJlZ2lvbiB7CisgICAgICAgICAg
ICB3aWR0aDogMjAwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICAgICAg
Ym9yZGVyOiAycHggc29saWQgZ3JlZW47CisgICAgICAgIH0KKyAgICAgICAgI3JlZ2lvbjIgeyBt
YXJnaW4tdG9wOiAxMHB4OyB9CisgICAgICAgICNib3JkZXIxIHsKKyAgICAgICAgICAgIHBvc2l0
aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgICAgIHRvcDogMTA4cHg7CisgICAgICAgICAgICBsZWZ0
OiA1OHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKKyAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsdWU7CisgICAgICAgIH0KKyAg
ICAgICAgI2JvcmRlcjIgeworICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAg
ICAgICAgdG9wOiAzMjJweDsKKyAgICAgICAgICAgIGxlZnQ6IDMzcHg7CisgICAgICAgICAgICB3
aWR0aDogMTQwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgYm9y
ZGVyOiAycHggc29saWQgYmx1ZTsKKyAgICAgICAgfQorICAgICAgICAjb3ZlcmZsb3cgeworICAg
ICAgICAgICAgd2lkdGg6IDIwMHB4OworICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDsKKyAg
ICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorPC9o
ZWFkPgorPGJvZHk+CisgICAgPGRpdiBpZD0icGFnZSI+CisgICAgICAgIDxkaXYgaWQ9ImJvcmRl
cjEiPlggWCA8cD5YIFggWCBYIFg8cD48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uMSIg
Y2xhc3M9InJlZ2lvbiI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9ImJvcmRlcjIiPlg8cD5YIFgg
WCBYPC9wPjxwPlggWCBYIFg8L3A+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbjIiIGNs
YXNzPSJyZWdpb24iPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJvdmVyZmxvdyI+WCBYIFggWCBY
IFggWDwvZGl2PgorICAgIDwvZGl2PgorICAgIDxwIHN0eWxlPSJtYXJnaW4tdG9wOiAxMnB4OyI+
UmVxdWlyZXMgQWhlbSBmb250LiBUaGVyZSBhcmUgdHdvIHJlZ2lvbnMgd2l0aCB0d28gcmFjdGFu
Z2xlIHNoYXBlLWluc2lkZXMsIHRoZSBzaGFwZS1pbnNpZGVzIGFyZSBzbWFsbGVyIGFuZCBoYXZl
IHRvcCBhbmQgbGVmdCBvZmZzZXRzIGluc2lkZSB0aGUgY29udGVudCBib3guIFRoZSByZWN0YW5n
dWxhciBzaGFwZXMgYm91bmRhcmllcyBhcmUgcmVwcmVzZW50ZWQgYnkgdGhlIGJsdWUgcmVjdGFu
Z2xlcy4gVGhlIGJsb2NrIGNvbnRlbnQgc2hvdWxkIGZsb3cgaW5zaWRlIHRoZSBibHVlIHJhY3Rh
bmdsZXMsIHRoZSBvdmVyZmxvdyBzaG91bGQgYmUgcHVzaGVkIGRvd24gYmVsb3cgdGhlIGxhc3Qg
cmVnaW9uJ3MgY29udGVudCBib3guPC9wPgorICAgIDxwPkJ1ZyA8YSBocmVmPSJodHRwOi8vd2Vi
a2l0Lm9yZy9iLzExNzU5OSI+MTE3NTk5PC9hPltDU1MgU2hhcGVzXVtDU1MgUmVnaW9uc10gUmVz
cGVjdCBib3R0b20gcG9zaXRpb25lZCBzaGFwZXMgYW5kIGNvbnRlbnQgYWRqdXN0bWVudCBpbnNp
ZGUgc2hhcGVzPC9wPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1ibG9jay1j
b250ZW50LW92ZXJmbG93LWJvdHRvbS1wb3NpdGlvbmVkLW11bHRpcGxlLXNoYXBlcy5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVn
aW9ucy1ibG9jay1jb250ZW50LW92ZXJmbG93LWJvdHRvbS1wb3NpdGlvbmVkLW11bHRpcGxlLXNo
YXBlcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE4YTFmN2MKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvc2hhcGUtaW5zaWRlL3No
YXBlLWluc2lkZS1vbi1yZWdpb25zLWJsb2NrLWNvbnRlbnQtb3ZlcmZsb3ctYm90dG9tLXBvc2l0
aW9uZWQtbXVsdGlwbGUtc2hhcGVzLmh0bWwKQEAgLTAsMCArMSw1NyBAQAorPCFET0NUWVBFIEhU
TUw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cuaW50
ZXJuYWxzKQorICAgICAgICAgICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRDU1NTaGFw
ZXNFbmFibGVkKHRydWUpOworICAgIDwvc2NyaXB0PgorICAgIDxzdHlsZT4KKyAgICAgICAgI3Jl
Y3RhbmdsZSB7CisgICAgICAgICAgICBmb250OiAyMHB4IEFoZW0sIHNhbnMtc2VyaWY7CisgICAg
ICAgICAgICBsaW5lLWhlaWdodDogMjBweDsKKyAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRv
OiBmbG93OworICAgICAgICB9CisgICAgICAgIC5yZWdpb24geworICAgICAgICAgICAgLXdlYmtp
dC1mbG93LWZyb206IGZsb3c7CisgICAgICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAgICAg
ICBoZWlnaHQ6IDIwMHB4OworICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgZ3JlZW47Cisg
ICAgICAgIH0KKyAgICAgICAgI3JlZ2lvbjEgeyAtd2Via2l0LXNoYXBlLWluc2lkZTogcmVjdGFu
Z2xlKDUwcHgsIDEwMHB4LCAxMDBweCwgMTAwcHgpOyB9CisgICAgICAgICNyZWdpb24yIHsKKyAg
ICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7CisgICAgICAgICAgICAtd2Via2l0LXNoYXBlLWlu
c2lkZTogcmVjdGFuZ2xlKDI1cHgsIDEwMHB4LCAxNTBweCwgMTAwcHgpOworICAgICAgICB9Cisg
ICAgICAgICNib3JkZXIxIHsKKyAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAg
ICAgICAgIHRvcDogMTA4cHg7CisgICAgICAgICAgICBsZWZ0OiA1OHB4OworICAgICAgICAgICAg
d2lkdGg6IDEwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICAgIGJv
cmRlcjogMnB4IHNvbGlkIGJsdWU7CisgICAgICAgIH0KKyAgICAgICAgI2JvcmRlcjIgeworICAg
ICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICAgICAgdG9wOiAzMjJweDsKKyAg
ICAgICAgICAgIGxlZnQ6IDMzcHg7CisgICAgICAgICAgICB3aWR0aDogMTQwcHg7CisgICAgICAg
ICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgYmx1ZTsK
KyAgICAgICAgfQorICAgIDwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8ZGl2IGlkPSJy
ZWN0YW5nbGUiPgorICAgICAgIFggWCA8cD5YIFggWCBYIFg8cD4gWDwvcD48L3A+IFggWCBYIFg8
cD4gWCBYIFggWCBYIFggWCBYIFggWCBYCisgICAgPC9kaXY+CisKKyAgICA8ZGl2IGlkPSJwYWdl
Ij4KKyAgICAgICAgPGRpdiBpZD0iYm9yZGVyMSI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJl
Z2lvbjEiIGNsYXNzPSJyZWdpb24iPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJib3JkZXIyIj48
L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9InJlZ2lvbiI+PC9kaXY+Cisg
ICAgPC9kaXY+CisgICAgPHAgc3R5bGU9Im1hcmdpbi10b3A6IDUwcHg7Ij5SZXF1aXJlcyBBaGVt
IGZvbnQuIFRoZXJlIGFyZSB0d28gcmVnaW9ucyB3aXRoIHR3byByYWN0YW5nbGUgc2hhcGUtaW5z
aWRlcywgdGhlIHNoYXBlLWluc2lkZXMgYXJlIHNtYWxsZXIgYW5kIGhhdmUgdG9wIGFuZCBsZWZ0
IG9mZnNldHMgaW5zaWRlIHRoZSBjb250ZW50IGJveC4gVGhlIHJlY3Rhbmd1bGFyIHNoYXBlcyBi
b3VuZGFyaWVzIGFyZSByZXByZXNlbnRlZCBieSB0aGUgYmx1ZSByZWN0YW5nbGVzLiBUaGUgYmxv
Y2sgY29udGVudCBzaG91bGQgZmxvdyBpbnNpZGUgdGhlIGJsdWUgcmFjdGFuZ2xlcywgdGhlIG92
ZXJmbG93IHNob3VsZCBiZSBwdXNoZWQgZG93biBiZWxvdyB0aGUgbGFzdCByZWdpb24ncyBjb250
ZW50IGJveC48L3A+CisgICAgPHA+QnVnIDxhIGhyZWY9Imh0dHA6Ly93ZWJraXQub3JnL2IvMTE3
NTk5Ij4xMTc1OTk8L2E+W0NTUyBTaGFwZXNdW0NTUyBSZWdpb25zXSBSZXNwZWN0IGJvdHRvbSBw
b3NpdGlvbmVkIHNoYXBlcyBhbmQgY29udGVudCBhZGp1c3RtZW50IGluc2lkZSBzaGFwZXM8L3A+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
c2hhcGUtaW5zaWRlL3NoYXBlLWluc2lkZS1vbi1yZWdpb25zLWJsb2NrLWNvbnRlbnQtcG9seWdv
bi13aXRoLWFkanVzdG1lbnQtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMtYmxvY2stY29udGVudC1wb2x5
Z29uLXdpdGgtYWRqdXN0bWVudC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjdlOWE5ODMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvc2hhcGUtaW5zaWRlL3NoYXBlLWluc2lkZS1vbi1yZWdpb25zLWJsb2NrLWNvbnRl
bnQtcG9seWdvbi13aXRoLWFkanVzdG1lbnQtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDQ2IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorICAgIGlmICh3aW5k
b3cuaW50ZXJuYWxzKQorICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldENTU0V4
Y2x1c2lvbnNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgI2NvbnRlbnQg
eworICAgICAgICBmb250OiAxM3B4IEFoZW0sIHNhbnMtc2VyaWY7CisgICAgICAgIGxpbmUtaGVp
Z2h0OiAxNXB4OworICAgIH0KKyAgICAucmVnaW9uMSB7CisgICAgICAgIHdpZHRoOiAyMDBweDsK
KyAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgYm9yZGVyOiA1cHggc29saWQgYmxhY2s7
CisgICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgZ3JlZW47CisgICAgICAgIGJvcmRlci1i
b3R0b206IDE1cHggc29saWQgeWVsbG93OworICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OworICAg
IH0KKyAgICAucmVnaW9uMiB7CisgICAgICAgIHdpZHRoOiA0MDBweDsKKyAgICAgICAgaGVpZ2h0
OiA0MDBweDsKKyAgICAgICAgYm9yZGVyOiAxNXB4IHNvbGlkIGJsYWNrOworICAgICAgICBib3Jk
ZXItdG9wOiAzMHB4IHNvbGlkIGdyZWVuOworICAgICAgICBib3JkZXItbGVmdDogMHB4OyAvKiBG
SVhNRTogQ29udGVudCBnZXRzIGV4dHJhIGxlZnQgb2Zmc2V0IHdoZW4gdGhlcmUgaXMgbGVmdC1i
b3JkZXIgb24gdGhlIGNvbnRlbnQgYm94OiAgaHR0cDovL3dlYmtpdC5vcmcvYi8xMTc1NzMgKi8K
KyAgICAgICAgbWFyZ2luLXRvcDogMTBweDsKKyAgICAgICAgLXdlYmtpdC1zaGFwZS1pbnNpZGU6
IHBvbHlnb24oMzBweCAzMHB4LCAzODBweCAzODBweCwgMTBweCAzODBweCk7CisgICAgfQorPC9z
dHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iY29udGVudCI+CisgICAgPGRpdiBjbGFz
cz0icmVnaW9uMSI+CisgICAgICAgIFRoZSBDdWx0dXJlIGFuZCA8cD50aGUgSWRpcmFuIDxwPkVt
cGlyZTwvcD4gYXJlIDwvcD5hdCB3YXIgaW4gYSBnYWxheHktc3Bhbm5pbmcgY29uZmxpY3QuIEhv
cnphLCBhIG1lcmNlbmFyeQorICAgIDwvZGl2PgorICAgIDxkaXYgY2xhc3M9InJlZ2lvbjIiPgor
ICAgICAgICA8cD5jYXBhYmxlIG9mIGFsdGVyaW5nIGhpcyBhcHBlYXJhbmNlPC9wPmF0IHdpbGwg
PHA+KGEgQ2hhbmdlciksPC9wPiBpcyBhc3NpZ25lZCB0aGUgdGFzayBvZiByZXRyaWV2aW5nIGEg
ZGlzcG9zc2Vzc2VkIEN1bHR1cmUgTWluZCBieSBoaXMgSWRpcmFuIGhhbmRsZXJzLgorICAgIDwv
ZGl2PgorPC9kaXY+CisKKzxwIHN0eWxlPSJtYXJnaW4tdG9wOiAzMHB4OyI+UmVxdWlyZXMgQWhl
bSBmb250LiBUaGVyZSBhcmUgdHdvIHJlZ2lvbnMsIHRoZXJlIGlzIGEgcG9seWdvbiBzaGFwZS1p
bnNpZGUgb24gdGhlIHNlY29uZCByZWdpb24uIFRoZSBzaGFwZSBpcyBwb3NpdGlvbmVkIGFuZCBp
dCBmb3JjZXMgdGhlIGNvbnRlbnQgdG8gYmUgYWRqdXN0ZWQgKHB1c2hlZCBkb3duIGZyb20gdGhl
IHRvcCBvZiB0aGUgc2hhcGUpIGluc2lkZSB0aGUgc2hhcGUuIFRoZSBjb250ZW50IHNob3VsZCBm
aWxsIG91dCB0aGUgZmlyc3QgcmVnaW9uIGFuZCBpdCBzaG91bGQgZmlsbCBvdXQgdGhlIHBvbHln
b24gc2hhcGUgb24gdGhlIHNlY29uZCByZWdpb24uPC9wPgorPHA+QnVnIDxhIGhyZWY9Imh0dHA6
Ly93ZWJraXQub3JnL2IvMTE3NTk5Ij4xMTc1OTk8L2E+W0NTUyBTaGFwZXNdW0NTUyBSZWdpb25z
XSBSZXNwZWN0IGJvdHRvbSBwb3NpdGlvbmVkIHNoYXBlcyBhbmQgY29udGVudCBhZGp1c3RtZW50
IGluc2lkZSBzaGFwZXM8L3A+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMt
YmxvY2stY29udGVudC1wb2x5Z29uLXdpdGgtYWRqdXN0bWVudC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1ibG9jay1j
b250ZW50LXBvbHlnb24td2l0aC1hZGp1c3RtZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uZWZiMGVjYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMtYmxvY2stY29u
dGVudC1wb2x5Z29uLXdpdGgtYWRqdXN0bWVudC5odG1sCkBAIC0wLDAgKzEsNDcgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5pbnRl
cm5hbHMpCisgICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTRXhjbHVzaW9u
c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzxzdHlsZT4KKyAgICAjY29udGVudCB7CisgICAg
ICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OworICAgICAgICBmb250OiAxM3B4IEFoZW0sIHNh
bnMtc2VyaWY7CisgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4OworICAgIH0KKyAgICAucmVnaW9u
MSB7CisgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICB3aWR0aDogMjAw
cHg7CisgICAgICAgIGhlaWdodDogMjAwcHg7CisgICAgICAgIGJvcmRlcjogNXB4IHNvbGlkIGJs
YWNrOworICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIGdyZWVuOworICAgICAgICBib3Jk
ZXItYm90dG9tOiAxNXB4IHNvbGlkIHllbGxvdzsKKyAgICAgICAgbWFyZ2luLXRvcDogMTBweDsK
KyAgICB9CisgICAgLnJlZ2lvbjIgeworICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsK
KyAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICBoZWlnaHQ6IDQwMHB4OworICAgICAgICBi
b3JkZXI6IDE1cHggc29saWQgYmxhY2s7CisgICAgICAgIGJvcmRlci10b3A6IDMwcHggc29saWQg
Z3JlZW47CisgICAgICAgIGJvcmRlci1sZWZ0OiAwcHg7ICAvKiBGSVhNRTogQ29udGVudCBnZXRz
IGV4dHJhIGxlZnQgb2Zmc2V0IHdoZW4gdGhlcmUgaXMgbGVmdC1ib3JkZXIgb24gdGhlIGNvbnRl
bnQgYm94OiAgaHR0cDovL3dlYmtpdC5vcmcvYi8xMTc1NzMgKi8KKyAgICAgICAgbWFyZ2luLXRv
cDogMTBweDsKKyAgICAgICAgLXdlYmtpdC1zaGFwZS1pbnNpZGU6IHBvbHlnb24oMzBweCAzMHB4
LCAzODBweCAzODBweCwgMTBweCAzODBweCk7CisgICAgfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxi
b2R5PgorPGRpdiBjbGFzcz0icmVnaW9uMSI+PC9kaXY+Cis8ZGl2IGNsYXNzPSJyZWdpb24yIj48
L2Rpdj4KKworPGRpdiBpZD0iY29udGVudCI+CitUaGUgQ3VsdHVyZSBhbmQgPHA+dGhlIElkaXJh
biA8cD5FbXBpcmU8L3A+IGFyZSA8L3A+YXQgd2FyIGluIGEgZ2FsYXh5LXNwYW5uaW5nIGNvbmZs
aWN0LiBIb3J6YSwgYSBtZXJjZW5hcnkgPHA+Y2FwYWJsZSBvZiBhbHRlcmluZyBoaXMgYXBwZWFy
YW5jZTwvcD5hdCB3aWxsIDxwPihhIENoYW5nZXIpLDwvcD4gaXMgYXNzaWduZWQgdGhlIHRhc2sg
b2YgcmV0cmlldmluZyBhIGRpc3Bvc3Nlc3NlZCBDdWx0dXJlIE1pbmQgYnkgaGlzIElkaXJhbiBo
YW5kbGVycy4KKzwvZGl2PgorCis8cCBzdHlsZT0ibWFyZ2luLXRvcDogMzBweDsiPlJlcXVpcmVz
IEFoZW0gZm9udC4gVGhlcmUgYXJlIHR3byByZWdpb25zLCB0aGVyZSBpcyBhIHBvbHlnb24gc2hh
cGUtaW5zaWRlIG9uIHRoZSBzZWNvbmQgcmVnaW9uLiBUaGUgc2hhcGUgaXMgcG9zaXRpb25lZCBh
bmQgaXQgZm9yY2VzIHRoZSBjb250ZW50IHRvIGJlIGFkanVzdGVkIChwdXNoZWQgZG93biBmcm9t
IHRoZSB0b3Agb2YgdGhlIHNoYXBlKSBpbnNpZGUgdGhlIHNoYXBlLiBUaGUgY29udGVudCBzaG91
bGQgZmlsbCBvdXQgdGhlIGZpcnN0IHJlZ2lvbiBhbmQgaXQgc2hvdWxkIGZpbGwgb3V0IHRoZSBw
b2x5Z29uIHNoYXBlIG9uIHRoZSBzZWNvbmQgcmVnaW9uLjwvcD4KKzxwPkJ1ZyA8YSBocmVmPSJo
dHRwOi8vd2Via2l0Lm9yZy9iLzExNzU5OSI+MTE3NTk5PC9hPltDU1MgU2hhcGVzXVtDU1MgUmVn
aW9uc10gUmVzcGVjdCBib3R0b20gcG9zaXRpb25lZCBzaGFwZXMgYW5kIGNvbnRlbnQgYWRqdXN0
bWVudCBpbnNpZGUgc2hhcGVzPC9wPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvc2hhcGUtaW5zaWRlL3NoYXBlLWluc2lkZS1vbi1yZWdp
b25zLWlubGluZS1jb250ZW50LW92ZXJmbG93LWJvdHRvbS1wb3NpdGlvbmVkLW11bHRpcGxlLXNo
YXBlcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3NoYXBlLWluc2lk
ZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1pbmxpbmUtY29udGVudC1vdmVyZmxvdy1ib3R0b20t
cG9zaXRpb25lZC1tdWx0aXBsZS1zaGFwZXMtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi4wNWY1YjZmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1pbmxp
bmUtY29udGVudC1vdmVyZmxvdy1ib3R0b20tcG9zaXRpb25lZC1tdWx0aXBsZS1zaGFwZXMtZXhw
ZWN0ZWQuaHRtbApAQCAtMCwwICsxLDQ5IEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorPGhl
YWQ+CisgICAgPHN0eWxlPgorICAgICAgICAjcGFnZSB7CisgICAgICAgICAgICBmb250OiAyMHB4
IEFoZW0sIHNhbnMtc2VyaWY7CisgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDsKKyAgICAg
ICAgfQorICAgICAgICAucmVnaW9uIHsKKyAgICAgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAg
ICAgICAgIGhlaWdodDogMjAwcHg7CisgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBncmVl
bjsKKyAgICAgICAgfQorICAgICAgICAjcmVnaW9uMiB7IG1hcmdpbi10b3A6IDEwcHg7IH0KKyAg
ICAgICAgI2JvcmRlcjEgeworICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAg
ICAgICAgdG9wOiAxMDhweDsKKyAgICAgICAgICAgIGxlZnQ6IDU4cHg7CisgICAgICAgICAgICB3
aWR0aDogMTAwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgYm9y
ZGVyOiAycHggc29saWQgYmx1ZTsKKyAgICAgICAgfQorICAgICAgICAjYm9yZGVyMiB7CisgICAg
ICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgICAgICB0b3A6IDMyMnB4OworICAg
ICAgICAgICAgbGVmdDogMzNweDsKKyAgICAgICAgICAgIHdpZHRoOiAxNDBweDsKKyAgICAgICAg
ICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBibHVlOwor
ICAgICAgICB9CisgICAgICAgICNvdmVyZmxvdyB7CisgICAgICAgICAgICB3aWR0aDogMjAwcHg7
CisgICAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4OworICAgICAgICAgICAgbWFyZ2luLXRvcDog
LTJweDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8ZGl2
IGlkPSJwYWdlIj4KKyAgICAgICAgPGRpdiBpZD0iYm9yZGVyMSI+WCBYIFggWCBYIFggWCBYIFgg
WCBYIFggWCBYIFg8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9InJlZ2lv
biI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9ImJvcmRlcjIiPlggWCBYIFggWCBYIFggWCBYIFgg
WCBYIFggWCBYIFggWCBYIFggWDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFz
cz0icmVnaW9uIj48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0ib3ZlcmZsb3ciPlggWCBYIFggWCBY
IFg8L2Rpdj4KKyAgICA8L2Rpdj4KKyAgICA8cCBzdHlsZT0ibWFyZ2luLXRvcDogMTJweDsiPlJl
cXVpcmVzIEFoZW0gZm9udC4gVGhlcmUgYXJlIHR3byByZWdpb25zIHdpdGggdHdvIHJhY3Rhbmds
ZSBzaGFwZS1pbnNpZGVzLCB0aGUgc2hhcGUtaW5zaWRlcyBhcmUgc21hbGxlciBhbmQgaGF2ZSB0
b3AgYW5kIGxlZnQgb2Zmc2V0cyBpbnNpZGUgdGhlIGNvbnRlbnQgYm94LiBUaGUgcmVjdGFuZ3Vs
YXIgc2hhcGVzIGJvdW5kYXJpZXMgYXJlIHJlcHJlc2VudGVkIGJ5IHRoZSBibHVlIHJlY3Rhbmds
ZXMuIFRoZSBpbmxpbmUgY29udGVudCBzaG91bGQgZmxvdyBpbnNpZGUgdGhlIGJsdWUgcmFjdGFu
Z2xlcywgdGhlIG92ZXJmbG93IHNob3VsZCBiZSBwdXNoZWQgZG93biBiZWxvdyB0aGUgbGFzdCBy
ZWdpb24ncyBjb250ZW50IGJveDwvcD4KKyAgICA8cD5CdWcgPGEgaHJlZj0iaHR0cDovL3dlYmtp
dC5vcmcvYi8xMTc1OTkiPjExNzU5OTwvYT5bQ1NTIFNoYXBlc11bQ1NTIFJlZ2lvbnNdIFJlc3Bl
Y3QgYm90dG9tIHBvc2l0aW9uZWQgc2hhcGVzIGFuZCBjb250ZW50IGFkanVzdG1lbnQgaW5zaWRl
IHNoYXBlczwvcD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMtaW5saW5lLWNv
bnRlbnQtb3ZlcmZsb3ctYm90dG9tLXBvc2l0aW9uZWQtbXVsdGlwbGUtc2hhcGVzLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvc2hhcGUtaW5zaWRlL3NoYXBlLWluc2lkZS1vbi1yZWdp
b25zLWlubGluZS1jb250ZW50LW92ZXJmbG93LWJvdHRvbS1wb3NpdGlvbmVkLW11bHRpcGxlLXNo
YXBlcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhhYTkwODUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvc2hhcGUtaW5zaWRlL3No
YXBlLWluc2lkZS1vbi1yZWdpb25zLWlubGluZS1jb250ZW50LW92ZXJmbG93LWJvdHRvbS1wb3Np
dGlvbmVkLW11bHRpcGxlLXNoYXBlcy5odG1sCkBAIC0wLDAgKzEsNTcgQEAKKzwhRE9DVFlQRSBI
VE1MPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93Lmlu
dGVybmFscykKKyAgICAgICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTU2hh
cGVzRW5hYmxlZCh0cnVlKTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c3R5bGU+CisgICAgICAgICNy
ZWN0YW5nbGUgeworICAgICAgICAgICAgZm9udDogMjBweCBBaGVtLCBzYW5zLXNlcmlmOworICAg
ICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7CisgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50
bzogZmxvdzsKKyAgICAgICAgfQorICAgICAgICAucmVnaW9uIHsKKyAgICAgICAgICAgIC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICAgICAgd2lkdGg6IDIwMHB4OworICAgICAgICAg
ICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGdyZWVuOwor
ICAgICAgICB9CisgICAgICAgICNyZWdpb24xIHsgLXdlYmtpdC1zaGFwZS1pbnNpZGU6IHJlY3Rh
bmdsZSg1MHB4LCAxMDBweCwgMTAwcHgsIDEwMHB4KTsgfQorICAgICAgICAjcmVnaW9uMiB7Cisg
ICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OworICAgICAgICAgICAgLXdlYmtpdC1zaGFwZS1p
bnNpZGU6IHJlY3RhbmdsZSgyNXB4LCAxMDBweCwgMTQwcHgsIDEwMHB4KTsKKyAgICAgICAgfQor
ICAgICAgICAjYm9yZGVyMSB7CisgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAg
ICAgICAgICB0b3A6IDEwOHB4OworICAgICAgICAgICAgbGVmdDogNThweDsKKyAgICAgICAgICAg
IHdpZHRoOiAxMDBweDsKKyAgICAgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgICAgICBi
b3JkZXI6IDJweCBzb2xpZCBibHVlOworICAgICAgICB9CisgICAgICAgICNib3JkZXIyIHsKKyAg
ICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgICAgIHRvcDogMzIycHg7Cisg
ICAgICAgICAgICBsZWZ0OiAzM3B4OworICAgICAgICAgICAgd2lkdGg6IDE0MHB4OworICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsdWU7
CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgICAgPGRpdiBpZD0i
cmVjdGFuZ2xlIj4KKyAgICAgICBYIFggWCBYIFggWCBYIFggWCBYIFggWCBYIFggWCBYIFggWCBY
IFggWCBYIFggWCBYIFggWCBYIFggWCBYIFggWCBYIFggWCBYIFggWCBYIFggWAorICAgIDwvZGl2
PgorCisgICAgPGRpdiBpZD0icGFnZSI+CisgICAgICAgIDxkaXYgaWQ9ImJvcmRlcjEiPjwvZGl2
PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0icmVnaW9uIj48L2Rpdj4KKyAgICAg
ICAgPGRpdiBpZD0iYm9yZGVyMiI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbjIiIGNs
YXNzPSJyZWdpb24iPjwvZGl2PgorICAgIDwvZGl2PgorICAgIDxwIHN0eWxlPSJtYXJnaW4tdG9w
OiA1MHB4OyI+UmVxdWlyZXMgQWhlbSBmb250LiBUaGVyZSBhcmUgdHdvIHJlZ2lvbnMgd2l0aCB0
d28gcmFjdGFuZ2xlIHNoYXBlLWluc2lkZXMsIHRoZSBzaGFwZS1pbnNpZGVzIGFyZSBzbWFsbGVy
IGFuZCBoYXZlIHRvcCBhbmQgbGVmdCBvZmZzZXRzIGluc2lkZSB0aGUgY29udGVudCBib3guIFRo
ZSByZWN0YW5ndWxhciBzaGFwZXMgYm91bmRhcmllcyBhcmUgcmVwcmVzZW50ZWQgYnkgdGhlIGJs
dWUgcmVjdGFuZ2xlcy4gVGhlIGlubGluZSBjb250ZW50IHNob3VsZCBmbG93IGluc2lkZSB0aGUg
Ymx1ZSByYWN0YW5nbGVzLCB0aGUgb3ZlcmZsb3cgc2hvdWxkIGJlIHB1c2hlZCBkb3duIGJlbG93
IHRoZSBsYXN0IHJlZ2lvbidzIGNvbnRlbnQgYm94PC9wPgorICAgIDxwPkJ1ZyA8YSBocmVmPSJo
dHRwOi8vd2Via2l0Lm9yZy9iLzExNzU5OSI+MTE3NTk5PC9hPltDU1MgU2hhcGVzXVtDU1MgUmVn
aW9uc10gUmVzcGVjdCBib3R0b20gcG9zaXRpb25lZCBzaGFwZXMgYW5kIGNvbnRlbnQgYWRqdXN0
bWVudCBpbnNpZGUgc2hhcGVzPC9wPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9u
cy1pbmxpbmUtY29udGVudC1wb2x5Z29uLXdpdGgtYWRqdXN0bWVudC1leHBlY3RlZC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVn
aW9ucy1pbmxpbmUtY29udGVudC1wb2x5Z29uLXdpdGgtYWRqdXN0bWVudC1leHBlY3RlZC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJlOWViNDkKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvc2hhcGUtaW5zaWRlL3NoYXBlLWluc2lk
ZS1vbi1yZWdpb25zLWlubGluZS1jb250ZW50LXBvbHlnb24td2l0aC1hZGp1c3RtZW50LWV4cGVj
dGVkLmh0bWwKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdD4KKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgd2luZG93Lmlu
dGVybmFscy5zZXR0aW5ncy5zZXRDU1NFeGNsdXNpb25zRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0
PgorPHN0eWxlPgorICAgICNjb250ZW50IHsKKyAgICAgICAgZm9udDogMTNweCBBaGVtLCBzYW5z
LXNlcmlmOworICAgICAgICBsaW5lLWhlaWdodDogMTVweDsKKyAgICB9CisgICAgLnJlZ2lvbjEg
eworICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAgIGhlaWdodDogMjAwcHg7CisgICAgICAg
IGJvcmRlcjogNXB4IHNvbGlkIGJsYWNrOworICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlk
IGdyZWVuOworICAgICAgICBib3JkZXItYm90dG9tOiAxNXB4IHNvbGlkIHllbGxvdzsKKyAgICAg
ICAgbWFyZ2luLXRvcDogMTBweDsKKyAgICB9CisgICAgLnJlZ2lvbjIgeworICAgICAgICB3aWR0
aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogNDAwcHg7CisgICAgICAgIGJvcmRlcjogMTVweCBz
b2xpZCBibGFjazsKKyAgICAgICAgbWFyZ2luLXRvcDogMTBweDsKKyAgICAgICAgYm9yZGVyLXRv
cDogMzBweCBzb2xpZCBncmVlbjsKKyAgICAgICAgLXdlYmtpdC1zaGFwZS1pbnNpZGU6IHBvbHln
b24oMzBweCAzMHB4LCAzODBweCAzODBweCwgMTBweCAzODBweCk7CisgICAgfQorPC9zdHlsZT4K
KzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iY29udGVudCI+CisgICAgPGRpdiBjbGFzcz0icmVn
aW9uMSI+CisgICAgICAgIFRoZSBDdWx0dXJlIGFuZCB0aGUgSWRpcmFuIEVtcGlyZSBhcmUgYXQg
d2FyIGluIGEgZ2FsYXh5LXNwYW5uaW5nIGNvbmZsaWN0LiBIb3J6YSwgYSBtZXJjZW5hcnkgY2Fw
YWJsZSBvZiBhbHRlcmluZyBoaXMgYXBwZWFyYW5jZSBhdCB3aWxsIChhIENoYW5nZXIpLCBpcwor
ICAgIDwvZGl2PgorICAgIDxkaXYgY2xhc3M9InJlZ2lvbjIiPgorICAgICAgICBhc3NpZ25lZCB0
aGUgdGFzayBvZiByZXRyaWV2aW5nIGEgZGlzcG9zc2Vzc2VkIEN1bHR1cmUgTWluZCBieSBoaXMg
SWRpcmFuIGhhbmRsZXJzLiBUaGUgTWluZCwgd2hpbGUgZmxlZWluZyBhdHRhY2tpbmcgSWRpcmFu
cyB3aG8gY29uc2lkZXIgaXRzIGV4aXN0ZW5jZSBhbiBhYm9taW5hdGlvbiwgaGFzIHRha2VuLi4u
CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPHAgc3R5bGU9Im1hcmdpbi10b3A6IDMwcHg7Ij5SZXF1
aXJlcyBBaGVtIGZvbnQuIFRoZXJlIGFyZSB0d28gcmVnaW9ucywgdGhlcmUgaXMgYSBwb2x5Z29u
IHNoYXBlLWluc2lkZSBvbiB0aGUgc2Vjb25kIHJlZ2lvbi4gVGhlIHNoYXBlIGlzIHBvc2l0aW9u
ZWQgYW5kIGl0IGZvcmNlcyB0aGUgY29udGVudCB0byBiZSBhZGp1c3RlZCAocHVzaGVkIGRvd24g
ZnJvbSB0aGUgdG9wIG9mIHRoZSBzaGFwZSkgaW5zaWRlIHRoZSBzaGFwZS4gVGhlIGNvbnRlbnQg
c2hvdWxkIGZpbGwgb3V0IHRoZSBmaXJzdCByZWdpb24gYW5kIGl0IHNob3VsZCBmaWxsIG91dCB0
aGUgcG9seWdvbiBzaGFwZSBvbiB0aGUgc2Vjb25kIHJlZ2lvbi48L3A+Cis8cD5CdWcgPGEgaHJl
Zj0iaHR0cDovL3dlYmtpdC5vcmcvYi8xMTc1OTkiPjExNzU5OTwvYT5bQ1NTIFNoYXBlc11bQ1NT
IFJlZ2lvbnNdIFJlc3BlY3QgYm90dG9tIHBvc2l0aW9uZWQgc2hhcGVzIGFuZCBjb250ZW50IGFk
anVzdG1lbnQgaW5zaWRlIHNoYXBlczwvcD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJl
Z2lvbnMtaW5saW5lLWNvbnRlbnQtcG9seWdvbi13aXRoLWFkanVzdG1lbnQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMt
aW5saW5lLWNvbnRlbnQtcG9seWdvbi13aXRoLWFkanVzdG1lbnQuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi5hOWI3NjQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1p
bmxpbmUtY29udGVudC1wb2x5Z29uLXdpdGgtYWRqdXN0bWVudC5odG1sCkBAIC0wLDAgKzEsNDYg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAgaWYgKHdp
bmRvdy5pbnRlcm5hbHMpCisgICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NT
RXhjbHVzaW9uc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzxzdHlsZT4KKyAgICAjY29udGVu
dCB7CisgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OworICAgICAgICBmb250OiAxM3B4
IEFoZW0sIHNhbnMtc2VyaWY7CisgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4OworICAgIH0KKyAg
ICAucmVnaW9uMSB7CisgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICB3
aWR0aDogMjAwcHg7CisgICAgICAgIGhlaWdodDogMjAwcHg7CisgICAgICAgIGJvcmRlcjogNXB4
IHNvbGlkIGJsYWNrOworICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIGdyZWVuOworICAg
ICAgICBib3JkZXItYm90dG9tOiAxNXB4IHNvbGlkIHllbGxvdzsKKyAgICAgICAgbWFyZ2luLXRv
cDogMTBweDsKKyAgICB9CisgICAgLnJlZ2lvbjIgeworICAgICAgICAtd2Via2l0LWZsb3ctZnJv
bTogZmxvdzsKKyAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICBoZWlnaHQ6IDQwMHB4Owor
ICAgICAgICBib3JkZXI6IDE1cHggc29saWQgYmxhY2s7CisgICAgICAgIGJvcmRlci10b3A6IDMw
cHggc29saWQgZ3JlZW47CisgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7CisgICAgICAgIC13ZWJr
aXQtc2hhcGUtaW5zaWRlOiBwb2x5Z29uKDMwcHggMzBweCwgMzgwcHggMzgwcHgsIDEwcHggMzgw
cHgpOworICAgIH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgY2xhc3M9InJlZ2lv
bjEiPjwvZGl2PgorPGRpdiBjbGFzcz0icmVnaW9uMiI+PC9kaXY+CisKKzxkaXYgaWQ9ImNvbnRl
bnQiPgorVGhlIEN1bHR1cmUgYW5kIHRoZSBJZGlyYW4gRW1waXJlIGFyZSBhdCB3YXIgaW4gYSBn
YWxheHktc3Bhbm5pbmcgY29uZmxpY3QuIEhvcnphLCBhIG1lcmNlbmFyeSBjYXBhYmxlIG9mIGFs
dGVyaW5nIGhpcyBhcHBlYXJhbmNlIGF0IHdpbGwgKGEgQ2hhbmdlciksIGlzIGFzc2lnbmVkIHRo
ZSB0YXNrIG9mIHJldHJpZXZpbmcgYSBkaXNwb3NzZXNzZWQgQ3VsdHVyZSBNaW5kIGJ5IGhpcyBJ
ZGlyYW4gaGFuZGxlcnMuIFRoZSBNaW5kLCB3aGlsZSBmbGVlaW5nIGF0dGFja2luZyBJZGlyYW5z
IHdobyBjb25zaWRlciBpdHMgZXhpc3RlbmNlIGFuIGFib21pbmF0aW9uLCBoYXMgdGFrZW4uLi4K
KzwvZGl2PgorCis8cCBzdHlsZT0ibWFyZ2luLXRvcDogMzBweDsiPlJlcXVpcmVzIEFoZW0gZm9u
dC4gVGhlcmUgYXJlIHR3byByZWdpb25zLCB0aGVyZSBpcyBhIHBvbHlnb24gc2hhcGUtaW5zaWRl
IG9uIHRoZSBzZWNvbmQgcmVnaW9uLiBUaGUgc2hhcGUgaXMgcG9zaXRpb25lZCBhbmQgaXQgZm9y
Y2VzIHRoZSBjb250ZW50IHRvIGJlIGFkanVzdGVkIChwdXNoZWQgZG93biBmcm9tIHRoZSB0b3Ag
b2YgdGhlIHNoYXBlKSBpbnNpZGUgdGhlIHNoYXBlLiBUaGUgY29udGVudCBzaG91bGQgZmlsbCBv
dXQgdGhlIGZpcnN0IHJlZ2lvbiBhbmQgaXQgc2hvdWxkIGZpbGwgb3V0IHRoZSBwb2x5Z29uIHNo
YXBlIG9uIHRoZSBzZWNvbmQgcmVnaW9uLjwvcD4KKzxwPkJ1ZyA8YSBocmVmPSJodHRwOi8vd2Vi
a2l0Lm9yZy9iLzExNzU5OSI+MTE3NTk5PC9hPltDU1MgU2hhcGVzXVtDU1MgUmVnaW9uc10gUmVz
cGVjdCBib3R0b20gcG9zaXRpb25lZCBzaGFwZXMgYW5kIGNvbnRlbnQgYWRqdXN0bWVudCBpbnNp
ZGUgc2hhcGVzPC9wPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGY0MjMzNC4u
YWU0OTAzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEzLTA2LTEzICBab2x0YW4g
SG9ydmF0aCAgPHpvbHRhbkB3ZWJraXQub3JnPgorCisgICAgICAgIFtDU1MgU2hhcGVzXVtDU1Mg
UmVnaW9uc10gUmVzcGVjdCBib3R0b20gcG9zaXRpb25lZCBzaGFwZXMgYW5kIGNvbnRlbnQgYWRq
dXN0bWVudCBpbnNpZGUgc2hhcGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMTc1OTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbiByMTUwNDc4IEkgYWRkZWQgc3VwcG9ydCBmb3IgbXVsdGlwbGUgcG9z
aXRpb25lZCBzaGFwZS1pbnNpZGVzIG9uIHJlZ2lvbnMsIHRoaXMgcGF0Y2ggY292ZXJzIHRoZSBj
YXNlcyB3aGVuIGEgc2hhcGUKKyAgICAgICAgaXMgcG9zaXRpb25lZCB0byB0aGUgYm90dG9tIG9m
IHRoZSByZWdpb24gb3IgdGhlIHJlZ2lvbiBjb250YWlucyBhIHNoYXBlIHdoaWNoIGZvcmNlcyB0
aGUgY29udGVudCB0byBiZSBhZGp1c3RlZCBpbnNpZGUKKyAgICAgICAgdGhlIHNoYXBlIChlLmcu
IHdlIGhhdmUgYSB0cmlhbmdsZSBzaGFwZSBhbmQgdGhlIGZpcnN0IGxpbmUgbmVlZHMgdG8gYmUg
c3RhcnRlZCBhdCB0aGUgZmlyc3QgcG9zaXRpb24gd2hlcmUgaXQgZml0cykuCisgICAgICAgIEkg
aW50cm9kdWNlZCBhIG5ldyBoZWxwZXIgZnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBjdXJyZW50IHNo
YXBlIGFuZCB0aGUgY3VycmVudCBsaW5lIHNlZ21lbnRzIGluIHRoZSBmbG93IHRocmVhZCBjYXNl
cy4gV2l0aAorICAgICAgICB0aGlzIG5ldyBoZWxwZXIgZnVuY3Rpb24gYWxsIHRoZSBsb2dpYyB3
aGljaCBjYWxjdWxhdGVzIHRoZSBzZWdtZW50cyBmb3Igc2hhcGUtaW5zaWRlIG9uIHJlZ2lvbnMg
aXMgbG9jYXRlZCBpbiBvbmUgZnVuY3Rpb24uCisKKyAgICAgICAgVGVzdHM6IGZhc3QvcmVnaW9u
cy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMtYmxvY2stY29udGVudC1vdmVy
Zmxvdy1ib3R0b20tcG9zaXRpb25lZC1tdWx0aXBsZS1zaGFwZXMuaHRtbAorICAgICAgICAgICAg
ICAgZmFzdC9yZWdpb25zL3NoYXBlLWluc2lkZS9zaGFwZS1pbnNpZGUtb24tcmVnaW9ucy1ibG9j
ay1jb250ZW50LXBvbHlnb24td2l0aC1hZGp1c3RtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGZh
c3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJlZ2lvbnMtaW5saW5lLWNv
bnRlbnQtb3ZlcmZsb3ctYm90dG9tLXBvc2l0aW9uZWQtbXVsdGlwbGUtc2hhcGVzLmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvcmVnaW9ucy9zaGFwZS1pbnNpZGUvc2hhcGUtaW5zaWRlLW9uLXJl
Z2lvbnMtaW5saW5lLWNvbnRlbnQtcG9seWdvbi13aXRoLWFkanVzdG1lbnQuaHRtbAorCisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmg6IEFkZCBuZXcgaGVscGVyJ3MgZGVjbGFyYXRp
b24KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxpbmVMYXlvdXRTdGF0ZTo6TGluZUxheW91dFN0YXRlKTogQWRkIGEgbWVt
YmVyIHRvIGNhcnJ5IGFkanVzdG1lbnQgZm9yIGZsb3cgdGhyZWFkIGNhc2VzLgorICAgICAgICAo
V2ViQ29yZTo6TGluZUxheW91dFN0YXRlOjphZGp1c3RlZExvZ2ljYWxMaW5lVG9wKTogQWRkIG5l
dyBtZW1iZXIuCisgICAgICAgIChXZWJDb3JlOjpMaW5lTGF5b3V0U3RhdGU6OnNldEFkanVzdGVk
TG9naWNhbExpbmVUb3ApOiBBZGQgbmV3IHNldHRlciBmb3IgdGhlIG5ldyBtZW1iZXIuCisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6dXBkYXRlU2hhcGVBbmRTZWdtZW50c0ZvckN1cnJl
bnRMaW5lKTogTW92ZSBmbG93IHRocmVhZCBjYXNlIHRvIGl0cyBoZWxwZXIgZnVuY3Rpb24uCisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6dXBkYXRlU2hhcGVBbmRTZWdtZW50c0ZvckN1
cnJlbnRMaW5lSW5GbG93VGhyZWFkKTogQWRkZWQgbmV3IGhlbHBlciBmb3IgZmxvdyB0aHJlYWQg
Y2FzZXMuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6YWRqdXN0TG9naWNhbExpbmVU
b3BBbmRMb2dpY2FsSGVpZ2h0SWZOZWVkZWQpOiBTYXZlIGFkanVzdG1lbnQgZm9yIGZsb3cgdGhy
ZWFkIGNhc2VzLgorCiAyMDEzLTA2LTEzICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1Ad2Via2l0
Lm9yZz4KIAogICAgICAgICBbV2luQ2Fpcm9dIFVucmV2aWV3ZWQgYnVpbGQgY29ycmVjdGlvbi4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgKaW5kZXggMjY1Nzk2ZC4uY2UxYTA1
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgKQEAgLTEwODUsNyArMTA4
NSw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBsYXlvdXRSdW5zQW5kRmxvYXRzKExpbmVMYXlvdXRT
dGF0ZSYsIGJvb2wgaGFzSW5saW5lQ2hpbGQpOwogICAgIHZvaWQgbGF5b3V0UnVuc0FuZEZsb2F0
c0luUmFuZ2UoTGluZUxheW91dFN0YXRlJiwgSW5saW5lQmlkaVJlc29sdmVyJiwgY29uc3QgSW5s
aW5lSXRlcmF0b3ImIGNsZWFuTGluZVN0YXJ0LCBjb25zdCBCaWRpU3RhdHVzJiBjbGVhbkxpbmVC
aWRpU3RhdHVzLCB1bnNpZ25lZCBjb25zZWN1dGl2ZUh5cGhlbmF0ZWRMaW5lcyk7CiAjaWYgRU5B
QkxFKENTU19TSEFQRVMpCi0gICAgdm9pZCB1cGRhdGVTaGFwZUFuZFNlZ21lbnRzRm9yQ3VycmVu
dExpbmUoU2hhcGVJbnNpZGVJbmZvKiwgTGF5b3V0VW5pdCYsIExpbmVMYXlvdXRTdGF0ZSYsIGJv
b2wmKTsKKyAgICB2b2lkIHVwZGF0ZVNoYXBlQW5kU2VnbWVudHNGb3JDdXJyZW50TGluZShTaGFw
ZUluc2lkZUluZm8qJiwgTGF5b3V0VW5pdCYsIExpbmVMYXlvdXRTdGF0ZSYsIGJvb2wmKTsKKyAg
ICB2b2lkIHVwZGF0ZVNoYXBlQW5kU2VnbWVudHNGb3JDdXJyZW50TGluZUluRmxvd1RocmVhZChT
aGFwZUluc2lkZUluZm8qJiwgTGluZUxheW91dFN0YXRlJiwgYm9vbCYpOwogICAgIGJvb2wgYWRq
dXN0TG9naWNhbExpbmVUb3BBbmRMb2dpY2FsSGVpZ2h0SWZOZWVkZWQoU2hhcGVJbnNpZGVJbmZv
KiwgTGF5b3V0VW5pdCwgTGluZUxheW91dFN0YXRlJiwgSW5saW5lQmlkaVJlc29sdmVyJiwgRmxv
YXRpbmdPYmplY3QqLCBJbmxpbmVJdGVyYXRvciYsIFdvcmRNZWFzdXJlbWVudHMmKTsKICNlbmRp
ZgogICAgIGNvbnN0IElubGluZUl0ZXJhdG9yJiByZXN0YXJ0TGF5b3V0UnVuc0FuZEZsb2F0c0lu
UmFuZ2UoTGF5b3V0VW5pdCBvbGRMb2dpY2FsSGVpZ2h0LCBMYXlvdXRVbml0IG5ld0xvZ2ljYWxI
ZWlnaHQsICBGbG9hdGluZ09iamVjdCogbGFzdEZsb2F0RnJvbVByZXZpb3VzTGluZSwgSW5saW5l
QmlkaVJlc29sdmVyJiwgIGNvbnN0IElubGluZUl0ZXJhdG9yJik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwCmluZGV4IGI5ZGM1Y2Yu
LmQxODY3MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
a0xpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
a0xpbmVMYXlvdXQuY3BwCkBAIC0xNDU4LDYgKzE0NTgsNyBAQCBwdWJsaWM6CiAgICAgICAgICwg
bV9pc0Z1bGxMYXlvdXQoZnVsbExheW91dCkKICAgICAgICAgLCBtX3JlcGFpbnRMb2dpY2FsVG9w
KHJlcGFpbnRMb2dpY2FsVG9wKQogICAgICAgICAsIG1fcmVwYWludExvZ2ljYWxCb3R0b20ocmVw
YWludExvZ2ljYWxCb3R0b20pCisgICAgICAgICwgbV9hZGp1c3RlZExvZ2ljYWxMaW5lVG9wKDAp
CiAgICAgICAgICwgbV91c2VzUmVwYWludEJvdW5kcyhmYWxzZSkKICAgICAgICAgLCBtX2Zsb3dU
aHJlYWQoZmxvd1RocmVhZCkKICAgICB7IH0KQEAgLTE1MDMsNiArMTUwNCw5IEBAIHB1YmxpYzoK
ICAgICB1bnNpZ25lZCBmbG9hdEluZGV4KCkgY29uc3QgeyByZXR1cm4gbV9mbG9hdEluZGV4OyB9
CiAgICAgdm9pZCBzZXRGbG9hdEluZGV4KHVuc2lnbmVkIGZsb2F0SW5kZXgpIHsgbV9mbG9hdElu
ZGV4ID0gZmxvYXRJbmRleDsgfQogICAgIAorICAgIExheW91dFVuaXQgYWRqdXN0ZWRMb2dpY2Fs
TGluZVRvcCgpIGNvbnN0IHsgcmV0dXJuIG1fYWRqdXN0ZWRMb2dpY2FsTGluZVRvcDsgfQorICAg
IHZvaWQgc2V0QWRqdXN0ZWRMb2dpY2FsTGluZVRvcChMYXlvdXRVbml0IHZhbHVlKSB7IG1fYWRq
dXN0ZWRMb2dpY2FsTGluZVRvcCA9IHZhbHVlOyB9CisKICAgICBSZW5kZXJGbG93VGhyZWFkKiBm
bG93VGhyZWFkKCkgY29uc3QgeyByZXR1cm4gbV9mbG93VGhyZWFkOyB9CiAgICAgdm9pZCBzZXRG
bG93VGhyZWFkKFJlbmRlckZsb3dUaHJlYWQqIHRocmVhZCkgeyBtX2Zsb3dUaHJlYWQgPSB0aHJl
YWQ7IH0KIApAQCAtMTUyMiw2ICsxNTI2LDggQEAgcHJpdmF0ZToKICAgICBMYXlvdXRVbml0JiBt
X3JlcGFpbnRMb2dpY2FsVG9wOwogICAgIExheW91dFVuaXQmIG1fcmVwYWludExvZ2ljYWxCb3R0
b207CiAKKyAgICBMYXlvdXRVbml0IG1fYWRqdXN0ZWRMb2dpY2FsTGluZVRvcDsKKwogICAgIGJv
b2wgbV91c2VzUmVwYWludEJvdW5kczsKICAgICAKICAgICBSZW5kZXJGbG93VGhyZWFkKiBtX2Zs
b3dUaHJlYWQ7CkBAIC0xNjQ2LDU4ICsxNjUyLDk4IEBAIHN0YXRpYyBpbmxpbmUgTGF5b3V0VW5p
dCBhZGp1c3RMb2dpY2FsTGluZVRvcChTaGFwZUluc2lkZUluZm8qIHNoYXBlSW5zaWRlSW5mbywK
ICAgICByZXR1cm4gc2hhcGVJbnNpZGVJbmZvLT5zaGFwZUxvZ2ljYWxCb3R0b20oKTsKIH0KIAot
dm9pZCBSZW5kZXJCbG9jazo6dXBkYXRlU2hhcGVBbmRTZWdtZW50c0ZvckN1cnJlbnRMaW5lKFNo
YXBlSW5zaWRlSW5mbyogc2hhcGVJbnNpZGVJbmZvLCBMYXlvdXRVbml0JiBhYnNvbHV0ZUxvZ2lj
YWxUb3AsIExpbmVMYXlvdXRTdGF0ZSYgbGF5b3V0U3RhdGUsIGJvb2wmIGxpbmVPdmVyZmxvd3NG
cm9tU2hhcGVJbnNpZGUpCit2b2lkIFJlbmRlckJsb2NrOjp1cGRhdGVTaGFwZUFuZFNlZ21lbnRz
Rm9yQ3VycmVudExpbmUoU2hhcGVJbnNpZGVJbmZvKiYgc2hhcGVJbnNpZGVJbmZvLCBMYXlvdXRV
bml0JiBhYnNvbHV0ZUxvZ2ljYWxUb3AsIExpbmVMYXlvdXRTdGF0ZSYgbGF5b3V0U3RhdGUsIGJv
b2wmIGxpbmVPdmVyZmxvd3NGcm9tU2hhcGVJbnNpZGUpCiB7Ci0gICAgTGF5b3V0VW5pdCBsb2dp
Y2FsSGVpZ2h0ID0gdGhpcy0+bG9naWNhbEhlaWdodCgpOwotICAgIFJlbmRlclJlZ2lvbiogY3Vy
cmVudFJlZ2lvbiA9IHJlZ2lvbkF0QmxvY2tPZmZzZXQobG9naWNhbEhlaWdodCk7Ci0gICAgaWYg
KGN1cnJlbnRSZWdpb24pCi0gICAgICAgIHNoYXBlSW5zaWRlSW5mbyA9IGxheW91dFNoYXBlSW5z
aWRlSW5mbygpOworICAgIGlmIChsYXlvdXRTdGF0ZS5mbG93VGhyZWFkKCkpCisgICAgICAgIHJl
dHVybiB1cGRhdGVTaGFwZUFuZFNlZ21lbnRzRm9yQ3VycmVudExpbmVJbkZsb3dUaHJlYWQoc2hh
cGVJbnNpZGVJbmZvLCBsYXlvdXRTdGF0ZSwgbGluZU92ZXJmbG93c0Zyb21TaGFwZUluc2lkZSk7
CisKICAgICBpZiAoIXNoYXBlSW5zaWRlSW5mbykKICAgICAgICAgcmV0dXJuOwogCi0gICAgTGF5
b3V0VW5pdCBsaW5lVG9wID0gbG9naWNhbEhlaWdodCArIGFic29sdXRlTG9naWNhbFRvcDsKLSAg
ICBMYXlvdXRVbml0IGxpbmVIZWlnaHQgPSB0aGlzLT5saW5lSGVpZ2h0KGxheW91dFN0YXRlLmxp
bmVJbmZvKCkuaXNGaXJzdExpbmUoKSwgaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA/IEhvcml6
b250YWxMaW5lIDogVmVydGljYWxMaW5lLCBQb3NpdGlvbk9mSW50ZXJpb3JMaW5lQm94ZXMpOwot
Ci0gICAgaWYgKGxheW91dFN0YXRlLmZsb3dUaHJlYWQoKSkgewotICAgICAgICBSZW5kZXJSZWdp
b24qIG5leHRSZWdpb24gPSByZWdpb25BdEJsb2NrT2Zmc2V0KGxvZ2ljYWxIZWlnaHQgKyBsaW5l
SGVpZ2h0IC0gTGF5b3V0VW5pdCgxKSk7Ci0gICAgICAgIGxpbmVUb3AgKz0gc2hhcGVJbnNpZGVJ
bmZvLT5vd25lcigpLT5ib3JkZXJBbmRQYWRkaW5nQmVmb3JlKCk7Ci0gICAgICAgIC8vIENvbnRl
bnQgaW4gYSBmbG93IHRocmVhZCBpcyByZWxhdGl2ZSB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSB0
aHJlYWQsIGJ1dCB0aGUgc2hhcGUgY2FsY3VsYXRpb24gc2hvdWxkIGJlIHJlbGF0aXZlIHRvIHRo
ZSBjdXJyZW50IHJlZ2lvbi4KLSAgICAgICAgaWYgKGN1cnJlbnRSZWdpb24gPT0gbmV4dFJlZ2lv
bikKLSAgICAgICAgICAgIGxpbmVUb3AgLT0gY3VycmVudFJlZ2lvbi0+bG9naWNhbFRvcEZvckZs
b3dUaHJlYWRDb250ZW50KCk7Ci0gICAgfQotCisgICAgTGF5b3V0VW5pdCBsaW5lVG9wID0gbG9n
aWNhbEhlaWdodCgpICsgYWJzb2x1dGVMb2dpY2FsVG9wOwogICAgIC8vIEZJWE1FOiBCdWcgOTUz
NjE6IEl0IGlzIHBvc3NpYmxlIGZvciBhIGxpbmUgdG8gZ3JvdyBiZXlvbmQgbGluZUhlaWdodCwg
aW4gd2hpY2ggY2FzZSB0aGVzZSBzZWdtZW50cyBtYXkgYmUgaW5jb3JyZWN0LgotICAgIHNoYXBl
SW5zaWRlSW5mby0+Y29tcHV0ZVNlZ21lbnRzRm9yTGluZShsaW5lVG9wLCBsaW5lSGVpZ2h0KTsK
KyAgICBzaGFwZUluc2lkZUluZm8tPmNvbXB1dGVTZWdtZW50c0ZvckxpbmUobGluZVRvcCwgbGlu
ZUhlaWdodChsYXlvdXRTdGF0ZS5saW5lSW5mbygpLmlzRmlyc3RMaW5lKCksIGlzSG9yaXpvbnRh
bFdyaXRpbmdNb2RlKCkgPyBIb3Jpem9udGFsTGluZSA6IFZlcnRpY2FsTGluZSwgUG9zaXRpb25P
ZkludGVyaW9yTGluZUJveGVzKSk7CiAKICAgICAvLyBUaGUgb3ZlcmZsb3cgc2hvdWxkIGJlIHB1
c2hlZCBiZWxvdyB0aGUgY29udGVudCBib3gKICAgICBMYXlvdXRVbml0IHNoYXBlQ29udGFpbmlu
Z0Jsb2NrSGVpZ2h0ID0gc2hhcGVJbnNpZGVJbmZvLT5zaGFwZUNvbnRhaW5pbmdCbG9ja0hlaWdo
dCgpOwogICAgIGlmICghc2hhcGVJbnNpZGVJbmZvLT5saW5lV2l0aGluU2hhcGVCb3VuZHMoKSAm
JiAhbGluZU92ZXJmbG93c0Zyb21TaGFwZUluc2lkZSAmJiBzaGFwZUNvbnRhaW5pbmdCbG9ja0hl
aWdodCkgewogICAgICAgICBsaW5lT3ZlcmZsb3dzRnJvbVNoYXBlSW5zaWRlID0gdHJ1ZTsKLSAg
ICAgICAgTGF5b3V0VW5pdCBuZXdMb2dpY2FsSGVpZ2h0ID0gc2hhcGVDb250YWluaW5nQmxvY2tI
ZWlnaHQ7CisgICAgICAgIHNldExvZ2ljYWxIZWlnaHQoc2hhcGVDb250YWluaW5nQmxvY2tIZWln
aHQpOworICAgIH0KK30KIAotICAgICAgICBpZiAobGF5b3V0U3RhdGUuZmxvd1RocmVhZCgpKSB7
Ci0gICAgICAgICAgICAvLyBJZiBibG9jayBjb250ZW50cyBmbG93biBhY3Jvc3MgbXVsdGlwbGUg
cmVnaW9ucyBhbmQgdGhlIHNoYXBlLWluc2lkZSB3YXMgYXBwbGllZCBvbiB0aGUgc2Vjb25kIHJl
Z2lvbiB3ZSBjYW4gZW5kIHVwIHdpdGggbmVnYXRpdmUgbGluZVRvcAotICAgICAgICAgICAgaWYg
KGxpbmVUb3AgPCAwKQotICAgICAgICAgICAgICAgIHJldHVybjsKK3ZvaWQgUmVuZGVyQmxvY2s6
OnVwZGF0ZVNoYXBlQW5kU2VnbWVudHNGb3JDdXJyZW50TGluZUluRmxvd1RocmVhZChTaGFwZUlu
c2lkZUluZm8qJiBzaGFwZUluc2lkZUluZm8sIExpbmVMYXlvdXRTdGF0ZSYgbGF5b3V0U3RhdGUs
IGJvb2wmIGxpbmVPdmVyZmxvd3NGcm9tU2hhcGVJbnNpZGUpCit7CisgICAgQVNTRVJUKGxheW91
dFN0YXRlLmZsb3dUaHJlYWQoKSk7CiAKLSAgICAgICAgICAgIG5ld0xvZ2ljYWxIZWlnaHQgPSBs
b2dpY2FsSGVpZ2h0ICsgc2hhcGVDb250YWluaW5nQmxvY2tIZWlnaHQgLSBsaW5lVG9wIC0gY3Vy
cmVudFJlZ2lvbi0+Ym9yZGVyQW5kUGFkZGluZ0JlZm9yZSgpOworICAgIExheW91dFVuaXQgbGlu
ZUhlaWdodCA9IHRoaXMtPmxpbmVIZWlnaHQobGF5b3V0U3RhdGUubGluZUluZm8oKS5pc0ZpcnN0
TGluZSgpLCBpc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8gSG9yaXpvbnRhbExpbmUgOiBWZXJ0
aWNhbExpbmUsIFBvc2l0aW9uT2ZJbnRlcmlvckxpbmVCb3hlcyk7CiAKLSAgICAgICAgICAgIFJl
bmRlclJlZ2lvbiogbmV4dFJlZ2lvbiA9IHJlZ2lvbkF0QmxvY2tPZmZzZXQobmV3TG9naWNhbEhl
aWdodCk7Ci0gICAgICAgICAgICBTaGFwZUluc2lkZUluZm8qIG5leHRTaGFwZUluZm8gPSAwOwot
ICAgICAgICAgICAgaWYgKG5leHRSZWdpb24pCi0gICAgICAgICAgICAgICAgbmV4dFNoYXBlSW5m
byA9IG5leHRSZWdpb24tPnNoYXBlSW5zaWRlSW5mbygpOworICAgIFJlbmRlclJlZ2lvbiogY3Vy
cmVudFJlZ2lvbiA9IHJlZ2lvbkF0QmxvY2tPZmZzZXQobG9naWNhbEhlaWdodCgpKTsKKyAgICBp
ZiAoIWN1cnJlbnRSZWdpb24pCisgICAgICAgIHJldHVybjsKIAotICAgICAgICAgICAgLy8gVGhl
IG92ZXJmbG93IGZsb3dzIGludG8gYW5vdGhlciByZWdpb24gd2l0aCBzaGFwZS1pbnNpZGUKLSAg
ICAgICAgICAgIGlmIChjdXJyZW50UmVnaW9uICE9IG5leHRSZWdpb24gJiYgbmV4dFNoYXBlSW5m
bykgewotICAgICAgICAgICAgICAgIG5ld0xvZ2ljYWxIZWlnaHQgKz0gbmV4dFNoYXBlSW5mby0+
c2hhcGVMb2dpY2FsVG9wKCkgLSBuZXh0UmVnaW9uLT5ib3JkZXJBbmRQYWRkaW5nQmVmb3JlKCk7
CisgICAgc2hhcGVJbnNpZGVJbmZvID0gY3VycmVudFJlZ2lvbi0+c2hhcGVJbnNpZGVJbmZvKCk7
CiAKLSAgICAgICAgICAgICAgICBMYXlvdXRVbml0IG9mZnNldCA9IG5leHRTaGFwZUluZm8tPnNo
YXBlTG9naWNhbFRvcCgpIC0gbmV4dFJlZ2lvbi0+Ym9yZGVyQW5kUGFkZGluZ0JlZm9yZSgpOwot
ICAgICAgICAgICAgICAgIG5leHRTaGFwZUluZm8tPmNvbXB1dGVTZWdtZW50c0ZvckxpbmUob2Zm
c2V0LCBsaW5lSGVpZ2h0KTsKKyAgICBMYXlvdXRVbml0IGxvZ2ljYWxMaW5lVG9wSW5GbG93VGhy
ZWFkID0gbG9naWNhbEhlaWdodCgpICsgb2Zmc2V0RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UGFnZSgp
OworICAgIExheW91dFVuaXQgbG9naWNhbExpbmVCb3R0b21JbkZsb3dUaHJlYWQgPSBsb2dpY2Fs
TGluZVRvcEluRmxvd1RocmVhZCArIGxpbmVIZWlnaHQ7CisgICAgTGF5b3V0VW5pdCBsb2dpY2Fs
UmVnaW9uVG9wSW5GbG93VGhyZWFkID0gY3VycmVudFJlZ2lvbi0+bG9naWNhbFRvcEZvckZsb3dU
aHJlYWRDb250ZW50KCk7CisgICAgTGF5b3V0VW5pdCBsb2dpY2FsUmVnaW9uQm90dG9tSW5GbG93
VGhyZWFkID0gbG9naWNhbFJlZ2lvblRvcEluRmxvd1RocmVhZCArIGN1cnJlbnRSZWdpb24tPmxv
Z2ljYWxIZWlnaHQoKSAtIGN1cnJlbnRSZWdpb24tPmJvcmRlckFuZFBhZGRpbmdCZWZvcmUoKSAt
IGN1cnJlbnRSZWdpb24tPmJvcmRlckFmdGVyKCkgLSBjdXJyZW50UmVnaW9uLT5wYWRkaW5nQWZ0
ZXIoKTsKIAotICAgICAgICAgICAgICAgIHNoYXBlSW5zaWRlSW5mbyA9IG5leHRTaGFwZUluZm87
Ci0gICAgICAgICAgICAgICAgbGluZU92ZXJmbG93c0Zyb21TaGFwZUluc2lkZSA9IGZhbHNlOwot
ICAgICAgICAgICAgfQotICAgICAgICB9CisgICAgLy8gV2Ugb25seSB3YW50IHRvIGRlYWwgcmVn
aW9ucyB3aXRoIHNoYXBlcywgc28gd2UgbG9vayB1cCBmb3IgdGhlIG5leHQgcmVnaW9uIHdoZXRo
ZXIgaXQgaGFzIGEgc2hhcGUKKyAgICBpZiAoIXNoYXBlSW5zaWRlSW5mbyAmJiAhY3VycmVudFJl
Z2lvbi0+aXNMYXN0UmVnaW9uKCkpIHsKKyAgICAgICAgTGF5b3V0VW5pdCBkZWx0YVRvTmV4dFJl
Z2lvbiA9IGxvZ2ljYWxIZWlnaHQoKSArIGxvZ2ljYWxSZWdpb25Cb3R0b21JbkZsb3dUaHJlYWQg
LSBsb2dpY2FsTGluZVRvcEluRmxvd1RocmVhZDsKKyAgICAgICAgUmVuZGVyUmVnaW9uKiBsb29r
dXBGb3JOZXh0UmVnaW9uID0gcmVnaW9uQXRCbG9ja09mZnNldChsb2dpY2FsSGVpZ2h0KCkgKyBk
ZWx0YVRvTmV4dFJlZ2lvbik7CisgICAgICAgIGlmICghbG9va3VwRm9yTmV4dFJlZ2lvbi0+c2hh
cGVJbnNpZGVJbmZvKCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgTGF5b3V0
VW5pdCBzaGFwZUJvdHRvbUluRmxvd1RocmVhZCA9IExheW91dFVuaXQ6Om1heCgpOworICAgIGlm
IChzaGFwZUluc2lkZUluZm8pCisgICAgICAgIHNoYXBlQm90dG9tSW5GbG93VGhyZWFkID0gc2hh
cGVJbnNpZGVJbmZvLT5zaGFwZUxvZ2ljYWxCb3R0b20oKSArIGN1cnJlbnRSZWdpb24tPmxvZ2lj
YWxUb3BGb3JGbG93VGhyZWFkQ29udGVudCgpOworCisgICAgLy8gSWYgdGhlIGxpbmUgaXMgYmV0
d2VlbiB0d28gc2hhcGVzL3JlZ2lvbnMgd2UgcG9zaXRpb24gdGhlIGxpbmUgdG8gdGhlIHRvcCBv
ZiB0aGUgbmV4dCBzaGFwZS9yZWdpb24KKyAgICBSZW5kZXJSZWdpb24qIG5leHRSZWdpb24gPSBy
ZWdpb25BdEJsb2NrT2Zmc2V0KGxvZ2ljYWxIZWlnaHQoKSArIGxpbmVIZWlnaHQpOworICAgIGlm
ICgoY3VycmVudFJlZ2lvbiAhPSBuZXh0UmVnaW9uICYmIChsb2dpY2FsTGluZUJvdHRvbUluRmxv
d1RocmVhZCA+IGxvZ2ljYWxSZWdpb25Cb3R0b21JbkZsb3dUaHJlYWQpKSB8fCAoIWN1cnJlbnRS
ZWdpb24tPmlzTGFzdFJlZ2lvbigpICYmIHNoYXBlQm90dG9tSW5GbG93VGhyZWFkIDwgbG9naWNh
bExpbmVCb3R0b21JbkZsb3dUaHJlYWQpKSB7CisgICAgICAgIExheW91dFVuaXQgZGVsdGFUb05l
eHRSZWdpb24gPSBsb2dpY2FsUmVnaW9uQm90dG9tSW5GbG93VGhyZWFkIC0gbG9naWNhbExpbmVU
b3BJbkZsb3dUaHJlYWQ7CisgICAgICAgIG5leHRSZWdpb24gPSByZWdpb25BdEJsb2NrT2Zmc2V0
KGxvZ2ljYWxIZWlnaHQoKSArIGRlbHRhVG9OZXh0UmVnaW9uKTsKKworICAgICAgICBBU1NFUlQo
Y3VycmVudFJlZ2lvbiAhPSBuZXh0UmVnaW9uKTsKKworICAgICAgICBzaGFwZUluc2lkZUluZm8g
PSBuZXh0UmVnaW9uLT5zaGFwZUluc2lkZUluZm8oKTsKKyAgICAgICAgc2V0TG9naWNhbEhlaWdo
dChsb2dpY2FsSGVpZ2h0KCkgKyBkZWx0YVRvTmV4dFJlZ2lvbik7CisKKyAgICAgICAgY3VycmVu
dFJlZ2lvbiA9IG5leHRSZWdpb247CisKKyAgICAgICAgbG9naWNhbExpbmVUb3BJbkZsb3dUaHJl
YWQgPSBsb2dpY2FsSGVpZ2h0KCkgKyBvZmZzZXRGcm9tTG9naWNhbFRvcE9mRmlyc3RQYWdlKCk7
CisgICAgICAgIGxvZ2ljYWxMaW5lQm90dG9tSW5GbG93VGhyZWFkID0gbG9naWNhbExpbmVUb3BJ
bkZsb3dUaHJlYWQgKyBsaW5lSGVpZ2h0OworICAgICAgICBsb2dpY2FsUmVnaW9uVG9wSW5GbG93
VGhyZWFkID0gY3VycmVudFJlZ2lvbi0+bG9naWNhbFRvcEZvckZsb3dUaHJlYWRDb250ZW50KCk7
CisgICAgICAgIGxvZ2ljYWxSZWdpb25Cb3R0b21JbkZsb3dUaHJlYWQgPSBsb2dpY2FsUmVnaW9u
VG9wSW5GbG93VGhyZWFkICsgY3VycmVudFJlZ2lvbi0+bG9naWNhbEhlaWdodCgpIC0gY3VycmVu
dFJlZ2lvbi0+Ym9yZGVyQW5kUGFkZGluZ0JlZm9yZSgpIC0gY3VycmVudFJlZ2lvbi0+Ym9yZGVy
QWZ0ZXIoKSAtIGN1cnJlbnRSZWdpb24tPnBhZGRpbmdBZnRlcigpOworICAgIH0KKworICAgIGlm
ICghc2hhcGVJbnNpZGVJbmZvKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBXZSBwb3NpdGlv
biB0aGUgZmlyc3QgbGluZSB0byB0aGUgdG9wIG9mIHRoZSBzaGFwZSBpbiB0aGUgcmVnaW9uIG9y
IHRvIHRoZSBwcmV2aW91c2x5IGFkanVzdGVkIHBvc2l0aW9uIGluIHRoZSBzaGFwZQorICAgIGlm
IChsb2dpY2FsTGluZUJvdHRvbUluRmxvd1RocmVhZCA8PSAobG9naWNhbFJlZ2lvblRvcEluRmxv
d1RocmVhZCArIGxpbmVIZWlnaHQpIHx8IChsb2dpY2FsTGluZVRvcEluRmxvd1RocmVhZCAtIGxv
Z2ljYWxSZWdpb25Ub3BJbkZsb3dUaHJlYWQpIDwgKGxheW91dFN0YXRlLmFkanVzdGVkTG9naWNh
bExpbmVUb3AoKSAtIGN1cnJlbnRSZWdpb24tPmJvcmRlckFuZFBhZGRpbmdCZWZvcmUoKSkpIHsK
KyAgICAgICAgTGF5b3V0VW5pdCBzaGFwZVRvcE9mZnNldCA9IGxheW91dFN0YXRlLmFkanVzdGVk
TG9naWNhbExpbmVUb3AoKTsKKyAgICAgICAgaWYgKCFzaGFwZVRvcE9mZnNldCkKKyAgICAgICAg
ICAgIHNoYXBlVG9wT2Zmc2V0ID0gc2hhcGVJbnNpZGVJbmZvLT5zaGFwZUxvZ2ljYWxUb3AoKTsK
KworICAgICAgICBMYXlvdXRVbml0IHNoYXBlUG9zaXRpb25JbkZsb3dUaHJlYWQgPSBjdXJyZW50
UmVnaW9uLT5sb2dpY2FsVG9wRm9yRmxvd1RocmVhZENvbnRlbnQoKSArIHNoYXBlVG9wT2Zmc2V0
OworICAgICAgICBMYXlvdXRVbml0IHNoYXBlVG9wTGluZVRvcERlbHRhID0gc2hhcGVQb3NpdGlv
bkluRmxvd1RocmVhZCAtIGxvZ2ljYWxMaW5lVG9wSW5GbG93VGhyZWFkIC0gY3VycmVudFJlZ2lv
bi0+Ym9yZGVyQW5kUGFkZGluZ0JlZm9yZSgpOworCisgICAgICAgIHNldExvZ2ljYWxIZWlnaHQo
bG9naWNhbEhlaWdodCgpICsgc2hhcGVUb3BMaW5lVG9wRGVsdGEpOworICAgICAgICBsb2dpY2Fs
TGluZVRvcEluRmxvd1RocmVhZCArPSBzaGFwZVRvcExpbmVUb3BEZWx0YTsKKyAgICAgICAgbGF5
b3V0U3RhdGUuc2V0QWRqdXN0ZWRMb2dpY2FsTGluZVRvcCgwKTsKKyAgICB9CisKKyAgICBMYXlv
dXRVbml0IGxpbmVUb3AgPSBsb2dpY2FsTGluZVRvcEluRmxvd1RocmVhZCAtIGN1cnJlbnRSZWdp
b24tPmxvZ2ljYWxUb3BGb3JGbG93VGhyZWFkQ29udGVudCgpICsgY3VycmVudFJlZ2lvbi0+Ym9y
ZGVyQW5kUGFkZGluZ0JlZm9yZSgpOworICAgIHNoYXBlSW5zaWRlSW5mby0+Y29tcHV0ZVNlZ21l
bnRzRm9yTGluZShsaW5lVG9wLCBsaW5lSGVpZ2h0KTsKKworICAgIC8vIE92ZXJmbG93IGZyb20g
bGFzdCBzaGFwZSBvbiBsYXN0IHJlZ2lvbiBzaG91bGQgYmUgcHVzaGVkIGJlbG93IHRoZSBjb250
ZW50IGJveAorICAgIGlmIChjdXJyZW50UmVnaW9uLT5pc0xhc3RSZWdpb24oKSAmJiAhbGluZU92
ZXJmbG93c0Zyb21TaGFwZUluc2lkZSAmJiAobGluZVRvcCArIGxpbmVIZWlnaHQpID4gc2hhcGVJ
bnNpZGVJbmZvLT5zaGFwZUxvZ2ljYWxCb3R0b20oKSkgeworICAgICAgICBsaW5lT3ZlcmZsb3dz
RnJvbVNoYXBlSW5zaWRlID0gdHJ1ZTsKKyAgICAgICAgTGF5b3V0VW5pdCBuZXdMb2dpY2FsSGVp
Z2h0ID0gdGhpcy0+bG9naWNhbEhlaWdodCgpICsgKHNoYXBlSW5zaWRlSW5mby0+c2hhcGVDb250
YWluaW5nQmxvY2tIZWlnaHQoKSAtIChsaW5lVG9wICsgY3VycmVudFJlZ2lvbi0+Ym9yZGVyQWZ0
ZXIoKSArIGN1cnJlbnRSZWdpb24tPnBhZGRpbmdBZnRlcigpKSk7CiAgICAgICAgIHNldExvZ2lj
YWxIZWlnaHQobmV3TG9naWNhbEhlaWdodCk7CiAgICAgfQogfQpAQCAtMTcwOSw4ICsxNzU1LDEy
IEBAIGJvb2wgUmVuZGVyQmxvY2s6OmFkanVzdExvZ2ljYWxMaW5lVG9wQW5kTG9naWNhbEhlaWdo
dElmTmVlZGVkKFNoYXBlSW5zaWRlSW5mbyoKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAg
TGF5b3V0VW5pdCBuZXdMb2dpY2FsSGVpZ2h0ID0gYWRqdXN0ZWRMb2dpY2FsTGluZVRvcCAtIGFi
c29sdXRlTG9naWNhbFRvcDsKLSAgICBpZiAobGF5b3V0U3RhdGUuZmxvd1RocmVhZCgpKQorCisg
ICAgaWYgKGxheW91dFN0YXRlLmZsb3dUaHJlYWQoKSkgeworICAgICAgICBsYXlvdXRTdGF0ZS5z
ZXRBZGp1c3RlZExvZ2ljYWxMaW5lVG9wKGFkanVzdGVkTG9naWNhbExpbmVUb3ApOwogICAgICAg
ICBuZXdMb2dpY2FsSGVpZ2h0ID0gbG9naWNhbEhlaWdodCgpOworICAgIH0KKwogCiAgICAgZW5k
ID0gcmVzdGFydExheW91dFJ1bnNBbmRGbG9hdHNJblJhbmdlKGxvZ2ljYWxIZWlnaHQoKSwgbmV3
TG9naWNhbEhlaWdodCwgbGFzdEZsb2F0RnJvbVByZXZpb3VzTGluZSwgcmVzb2x2ZXIsIGVuZCk7
CiAgICAgcmV0dXJuIHRydWU7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>