<?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>16637</bug_id>
          
          <creation_ts>2007-12-28 01:53:05 -0800</creation_ts>
          <short_desc>Acid3 expects ExeceptionCode constants to be defined on DOMException objects</short_desc>
          <delta_ts>2019-02-06 09:02:38 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.hixie.ch/tests/evil/acid/003/NOT_READY_PLEASE_DO_NOT_USE.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>dstorey</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>65455</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-12-28 01:53:05 -0800</bug_when>
    <thetext>Acid3 expect ExeceptionCode constants to be defined on DOMException objects

http://www.hixie.ch/tests/evil/acid/003/NOT_READY_PLEASE_DO_NOT_USE.html

    function () {
      // test 34: value of constants
      var e = null;
      try {
        document.body.appendChild(document.documentElement);
         // raises a HIERARCHY_REQUEST_ERR
      } catch (err) {
        e = err;
      }
      if ((document.DOCUMENT_FRAGMENT_NODE == 11) &amp;&amp;
          (document.body.COMMENT_NODE == 8) &amp;&amp;
          (document.createTextNode(&apos;&apos;).ELEMENT_NODE == 1) &amp;&amp;
          (e.HIERARCHY_REQUEST_ERR == 3) &amp;&amp; (e.code == 3))
        return 3;
    },

We pass every part of that test, except for &quot;e.HIERARCHY_REQUEST_ERR == 3&quot;  e. HIERARCHY_REQUEST_ERR is not defined.

http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-17189187
Does not seem to agree with the test, but perhaps IE defines these constants on DOMException.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65468</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-12-28 07:22:07 -0800</bug_when>
    <thetext>AFAICT, only Firefox does.  Firefox, Opera and WebKit all support DOMException.HIERARCHY_REQUEST_ERR (a constructor property).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65565</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-12-28 23:44:40 -0800</bug_when>
    <thetext>Hixie has used the power of Appendix E to convince me.

Prototype Object DOMException
The DOMException class has the following constants:
DOMException.INDEX_SIZE_ERR
This constant is of type Number and its value is 1.

Since Node defines a similar &quot;Prototype Object Node&quot;, we are to assume that those constants are to be defined on the prototype for DOMException, and thus available on all DOMException instances.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65566</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-12-28 23:45:09 -0800</bug_when>
    <thetext>Sadly, JSDOMException is not autogenerated (i&apos;m not even sure it exists) otherwise this would be easy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65572</commentid>
    <comment_count>4</comment_count>
      <attachid>18167</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-12-29 00:06:43 -0800</bug_when>
    <thetext>Created attachment 18167
Add test case

 .../fast/dom/DOMException/prototype-object.html    |   13 +++++++++++++
 .../fast/dom/DOMException/resources/TEMPLATE.html  |   13 +++++++++++++
 .../dom/DOMException/resources/prototype-object.js |   15 +++++++++++++++
 WebCore/WebCore.xcodeproj/project.pbxproj          |    1 +
 4 files changed, 42 insertions(+), 0 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65573</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-12-29 00:08:35 -0800</bug_when>
    <thetext>Firefox passes this test case, we fail, opera fails too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65850</commentid>
    <comment_count>6</comment_count>
      <attachid>18219</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2007-12-31 15:55:46 -0800</bug_when>
    <thetext>Created attachment 18219
An exceptional patch (HAR HAR HAR)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65852</commentid>
    <comment_count>7</comment_count>
      <attachid>18219</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-12-31 16:06:08 -0800</bug_when>
    <thetext>Comment on attachment 18219
An exceptional patch (HAR HAR HAR)

+        // FIXME: this is copied from ExceptionCode.h, it needs to be kept in sync.

And both need to be kept in sync with the standard! Why can&apos;t DOMCoreException use the values from ExceptionCode.h -- it includes that file, so it should be able to. Can we change things later so these are defined only in the .idl file?

What about non-core errors?

Can we make sure the name &quot;DOMCoreException&quot; doesn&apos;t show through in JavaScript?

+shouldBeEqualToString(&quot;e.constructor.toString()&quot;, &quot;[object DOMCoreExceptionConstructor]&quot;);

That should be &quot;[object DOMExceptionConstructor]&quot; -- we don&apos;t want to expose the naming conflict issues in WebKit to the web content.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65871</commentid>
    <comment_count>8</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2007-12-31 19:04:44 -0800</bug_when>
    <thetext>Landed in r29058.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1502811</commentid>
    <comment_count>9</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2019-02-06 09:02:38 -0800</bug_when>
    <thetext>Mass moving XML DOM bugs to the &quot;DOM&quot; Component.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18167</attachid>
            <date>2007-12-29 00:06:43 -0800</date>
            <delta_ts>2007-12-31 15:55:46 -0800</delta_ts>
            <desc>Add test case</desc>
            <filename>Add-test-case.patch</filename>
            <type>text/plain</type>
            <size>2697</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">N2MzY2FiNDM5ODg4N2U2YmE0OTcwNmNkMGFiZmFiNjg0NjkxNWI3NApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vRE9NRXhjZXB0aW9uL3Byb3RvdHlwZS1vYmplY3QuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0RPTUV4Y2VwdGlvbi9wcm90b3R5cGUtb2JqZWN0Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODJkYjE2YgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0RPTUV4Y2VwdGlvbi9wcm90b3R5cGUtb2JqZWN0Lmh0
bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy9wcm90b3R5cGUtb2JqZWN0LmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0RPTUV4Y2Vw
dGlvbi9yZXNvdXJjZXMvVEVNUExBVEUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0RPTUV4
Y2VwdGlvbi9yZXNvdXJjZXMvVEVNUExBVEUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi4xOTUxYzQzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vRE9NRXhjZXB0aW9uL3Jlc291cmNlcy9URU1QTEFURS5odG1sCkBAIC0wLDAgKzEsMTMgQEAK
KzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgor
PGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZT1VSX0pTX0ZJ
TEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9ET01FeGNlcHRpb24vcmVzb3VyY2VzL3Byb3RvdHlwZS1vYmplY3Qu
anMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ET01FeGNlcHRpb24vcmVzb3VyY2VzL3Byb3RvdHlw
ZS1vYmplY3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjMwMjBlZQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0RPTUV4Y2VwdGlvbi9yZXNv
dXJjZXMvcHJvdG90eXBlLW9iamVjdC5qcwpAQCAtMCwwICsxLDE1IEBACitkZXNjcmlwdGlvbigi
RE9NRXhjZXB0aW9uIG5lZWRzIGEgcmVhbCBwcm90b3R5cGU6IGh0dHA6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE2NjM3IikKKwordmFyIGU7Cit0cnkgeworICBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCk7CisgICAvLyByYWlzZXMg
YSBISUVSQVJDSFlfUkVRVUVTVF9FUlIKK30gY2F0Y2ggKGVycikgeworICBlID0gZXJyOworfQor
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkiLCAiW29iamVj
dCBET01FeGNlcHRpb25dIik7CitzaG91bGRCZSgiZS5jb25zdHJ1Y3RvciIsICJET01FeGNlcHRp
b24iKTsKK3Nob3VsZEJlKCJlLkhJRVJBUkNIWV9SRVFVRVNUX0VSUiIsICJlLmNvbnN0cnVjdG9y
LkhJRVJBUkNIWV9SRVFVRVNUX0VSUiIpOworc2hvdWxkQmUoImUuSElFUkFSQ0hZX1JFUVVFU1Rf
RVJSIiwgIjMiKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQg
YS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDhmZTZhZWMuLjg1MDc4OTggMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNDI4Nyw2ICsx
NDI4Nyw3IEBACiAJCTA4NjdENjkwRkU4NDAyOEZDMDJBQUMwNyAvKiBQcm9qZWN0IG9iamVjdCAq
LyA9IHsKIAkJCWlzYSA9IFBCWFByb2plY3Q7CiAJCQlidWlsZENvbmZpZ3VyYXRpb25MaXN0ID0g
MTQ5QzI4NDMwODkwMkIxMTAwOEE5RUZDIC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3Ig
UEJYUHJvamVjdCAiV2ViQ29yZSIgKi87CisJCQljb21wYXRpYmlsaXR5VmVyc2lvbiA9ICJYY29k
ZSAyLjQiOwogCQkJaGFzU2Nhbm5lZEZvckVuY29kaW5ncyA9IDE7CiAJCQlrbm93blJlZ2lvbnMg
PSAoCiAJCQkJRW5nbGlzaCwK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18219</attachid>
            <date>2007-12-31 15:55:46 -0800</date>
            <delta_ts>2007-12-31 16:06:08 -0800</delta_ts>
            <desc>An exceptional patch (HAR HAR HAR)</desc>
            <filename>exceptionalPatch.diff</filename>
            <type>text/plain</type>
            <size>40223</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyOTA0OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDctMTItMzEgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQYXRjaCBm
b3IgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY2MzcKKyAgICAgICAg
QWNpZDMgZXhwZWN0cyBFeGVjZXB0aW9uQ29kZSBjb25zdGFudHMgdG8gYmUgZGVmaW5lZCBvbiBE
T01FeGNlcHRpb24gb2JqZWN0cworCisgICAgICAgIC0gTWFrZSBET01FeGNlcHRpb24gYSByZWFs
IEpTIG9iamVjdC4KKworICAgICAgICBUZXN0OiBmYXN0L2RvbS9ET01FeGNlcHRpb24vcHJvdG90
eXBlLW9iamVjdC5odG1sCisKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAg
ICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKworICAgICAgICBUaGlzIGlz
IG5vIGxvbmdlciBuZWVkZWQgYXMgdGhlIGF1dG9nZW5lcmF0ZWQgY2xhc3NlcyBub3cgaW5jbHVk
ZXMgdGhlCisgICAgICAgIGNvbnN0cnVjdG9yLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9N
RXhjZXB0aW9uQ29uc3RydWN0b3IuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTRE9NRXhjZXB0aW9uQ29uc3RydWN0b3IuaDogUmVtb3ZlZC4KKworICAgICAgICBDcmVhdGUg
b24gZGVtYW5kIGFuZCB1c2UgdGhlIG5ldyBjbGFzcyBmb3IgRE9NRXhjZXB0aW9ucy4KKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9ranNfYmluZGluZy5jcHA6CisgICAgICAgIChLSlM6OnNldERPTUV4
Y2VwdGlvbik6CisKKyAgICAgICAgUmVtb3ZlIG5vIGxvbmdlciBuZWVkZWQgY3VzdG9tIGNvbnN0
cnVjdG9yIGdldHRlci4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9ranNfd2luZG93LmNwcDoKKyAg
ICAgICAgKEtKUzo6V2luZG93OjpnZXRWYWx1ZVByb3BlcnR5KToKKworICAgICAgICBUaGUgRE9N
RXhjZXB0aW9uIGNsYXNzL2ZpbGUgbmVlZHMgdG8gYmUgbmFtZWQgRE9NQ29yZUV4Y2VwdGlvbiBi
ZWNhdXNlIHRoZXJlIGlzCisgICAgICAgIG5hbWUgY29uZmxpY3Qgd2l0aCBvbmUgb2YgdGhlIE9i
amVjdGl2ZS1DIGJpbmRpbmdzIGNsYXNzZXMuICBJdCBzaG91bGQgYmUgcmVuYW1lZAorICAgICAg
ICB0byBET01FeGNlcHRpb24gd2hlbiB0aGUgT2JqZWN0aXZlLUMgYmluZGluZ3MgYXJlIG1vdmVk
IGludG8gV2ViS2l0LgorICAgICAgICAqIGRvbS9ET01Db3JlRXhjZXB0aW9uLmNwcDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpET01Db3JlRXhjZXB0aW9uOjpET01Db3JlRXhjZXB0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OkRPTUNvcmVFeGNlcHRpb246OnRvU3RyaW5nKToKKyAgICAgICAg
KiBkb20vRE9NQ29yZUV4Y2VwdGlvbi5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRPTUNv
cmVFeGNlcHRpb246Oik6CisgICAgICAgIChXZWJDb3JlOjpET01Db3JlRXhjZXB0aW9uOjpjb2Rl
KToKKyAgICAgICAgKFdlYkNvcmU6OkRPTUNvcmVFeGNlcHRpb246Om5hbWUpOgorICAgICAgICAo
V2ViQ29yZTo6RE9NQ29yZUV4Y2VwdGlvbjo6bWVzc2FnZSk6CisgICAgICAgICogZG9tL0RPTUNv
cmVFeGNlcHRpb24uaWRsOiBBZGRlZC4KKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6CisK
IDIwMDctMTItMzAgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IERhbiBCZXJuc3RlaW4uCkluZGV4OiBXZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCShyZXZpc2lvbiAyOTAz
MykKKysrIFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQkod29ya2luZyBjb3B5KQpAQCAtMzMx
LDEyICszMzEsMTMgQEAgYWxsIDogXAogICAgIEpTQ29uc29sZS5oIFwKICAgICBKU0NvdW50ZXIu
aCBcCiAgICAgSlNDU1NTdHlsZURlY2xhcmF0aW9uLmggXAotICAgIEpTRGF0YWJhc2UuaCBcCisg
ICAgSlNET01Db3JlRXhjZXB0aW9uLmggXAogICAgIEpTRE9NRXhjZXB0aW9uQ29uc3RydWN0b3Iu
bHV0LmggXAogICAgIEpTRE9NSW1wbGVtZW50YXRpb24uaCBcCiAgICAgSlNET01QYXJzZXIuaCBc
CiAgICAgSlNET01TZWxlY3Rpb24uaCBcCiAgICAgSlNET01XaW5kb3cuaCBcCisgICAgSlNEYXRh
YmFzZS5oIFwKICAgICBKU0RvY3VtZW50LmggXAogICAgIEpTRG9jdW1lbnRGcmFnbWVudC5oIFwK
ICAgICBKU0RvY3VtZW50VHlwZS5oIFwKSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyOTA0MSkKKysrIFdlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0zMTUyLDggKzMxNTIsNiBA
QAogCQlCMjdCMjgyODBDRUYwQzA3MDBEMzlENTQgLyogSlNTVkdHbHlwaEVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyN0IyODIyMENFRjBD
MDcwMEQzOUQ1NCAvKiBKU1NWR0dseXBoRWxlbWVudC5oICovOyB9OwogCQlCMjdCMjgyOTBDRUYw
QzA3MDBEMzlENTQgLyogSlNTVkdNaXNzaW5nR2x5cGhFbGVtZW50LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyN0IyODIzMENFRjBDMDcwMEQzOUQ1
NCAvKiBKU1NWR01pc3NpbmdHbHlwaEVsZW1lbnQuY3BwICovOyB9OwogCQlCMjdCMjgyQTBDRUYw
QzA3MDBEMzlENTQgLyogSlNTVkdNaXNzaW5nR2x5cGhFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjdCMjgyNDBDRUYwQzA3MDBEMzlENTQg
LyogSlNTVkdNaXNzaW5nR2x5cGhFbGVtZW50LmggKi87IH07Ci0JCUIyN0IyODM2MENFRjBDMzYw
MEQzOUQ1NCAvKiBDU1NQcm9wZXJ0eU5hbWVzLmluIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjdCMjgyQjBDRUYwQzM1MDBEMzlENTQgLyogQ1NTUHJv
cGVydHlOYW1lcy5pbiAqLzsgfTsKLQkJQjI3QjI4MzcwQ0VGMEMzNjAwRDM5RDU0IC8qIENTU1Zh
bHVlS2V5d29yZHMuaW4gaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEIyN0IyODJDMENFRjBDMzUwMEQzOUQ1NCAvKiBDU1NWYWx1ZUtleXdvcmRzLmluICov
OyB9OwogCQlCMjdCMjgzODBDRUYwQzM2MDBEMzlENTQgLyogRE9NU1ZHRm9udEVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyN0IyODJEMENF
RjBDMzUwMEQzOUQ1NCAvKiBET01TVkdGb250RWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKCk7IH07IH07CiAJCUIyN0IyODM5MENFRjBDMzYwMEQzOUQ1NCAvKiBET01TVkdG
b250RWxlbWVudC5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEIyN0IyODJFMENFRjBDMzUwMEQzOUQ1NCAvKiBET01TVkdGb250RWxlbWVudC5tbSAqLzsg
fTsKIAkJQjI3QjI4M0EwQ0VGMEMzNjAwRDM5RDU0IC8qIERPTVNWR0ZvbnRFbGVtZW50SW50ZXJu
YWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyN0Iy
ODJGMENFRjBDMzUwMEQzOUQ1NCAvKiBET01TVkdGb250RWxlbWVudEludGVybmFsLmggKi87IH07
CkBAIC0zNjE0LDYgKzM2MTIsMTEgQEAKIAkJQkM1QTg2ODUwQzMzNjc2MDAwRUVBNjQ5IC8qIERP
TVNlbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkM1QTg2ODIwQzMzNjc2MDAwRUVBNjQ5IC8qIERPTVNlbGVjdGlvbi5oICovOyB9OwogCQlC
QzVBODZCNTBDMzM2N0U4MDBFRUE2NDkgLyogSlNET01TZWxlY3Rpb24uY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1QTg2QjMwQzMzNjdFODAwRUVB
NjQ5IC8qIEpTRE9NU2VsZWN0aW9uLmNwcCAqLzsgfTsKIAkJQkM1QTg2QjYwQzMzNjdFODAwRUVB
NjQ5IC8qIEpTRE9NU2VsZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCQzVBODZCNDBDMzM2N0U4MDBFRUE2NDkgLyogSlNET01TZWxlY3Rpb24u
aCAqLzsgfTsKKwkJQkM2MEQ2RTkwRDI4RDgzNDAwQjk5MThGIC8qIERPTUNvcmVFeGNlcHRpb24u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNjBENkU4
MEQyOEQ4MzQwMEI5OTE4RiAvKiBET01Db3JlRXhjZXB0aW9uLmggKi87IH07CisJCUJDNjBENkVD
MEQyOEQ5OTkwMEI5OTE4RiAvKiBET01Db3JlRXhjZXB0aW9uLmlkbCBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM2MEQ2RUIwRDI4RDk5OTAwQjk5MThG
IC8qIERPTUNvcmVFeGNlcHRpb24uaWRsICovOyB9OworCQlCQzYwRDdDMDBEMjlBNDYzMDBCOTkx
OEYgLyogSlNET01Db3JlRXhjZXB0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJDNjBEN0JFMEQyOUE0NjMwMEI5OTE4RiAvKiBKU0RPTUNvcmVF
eGNlcHRpb24uY3BwICovOyB9OworCQlCQzYwRDdDMTBEMjlBNDYzMDBCOTkxOEYgLyogSlNET01D
b3JlRXhjZXB0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCQzYwRDdCRjBEMjlBNDYzMDBCOTkxOEYgLyogSlNET01Db3JlRXhjZXB0aW9uLmggKi87
IH07CisJCUJDNjBEODA0MEQyOUE5RTgwMEI5OTE4RiAvKiBET01Db3JlRXhjZXB0aW9uLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNjBEODAzMEQy
OUE5RTgwMEI5OTE4RiAvKiBET01Db3JlRXhjZXB0aW9uLmNwcCAqLzsgfTsKIAkJQkM2NEI0Q0Iw
Q0I0Mjk1RDAwNUYyQjYyIC8qIENhY2hlZEZvbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM2NEI0QzkwQ0I0Mjk1RDAwNUYyQjYyIC8qIENhY2hl
ZEZvbnQuY3BwICovOyB9OwogCQlCQzY0QjRDQzBDQjQyOTVEMDA1RjJCNjIgLyogQ2FjaGVkRm9u
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM2NEI0
Q0EwQ0I0Mjk1RDAwNUYyQjYyIC8qIENhY2hlZEZvbnQuaCAqLzsgfTsKIAkJQkM2NEI0RDUwQ0I0
Mjk4QTAwNUYyQjYyIC8qIENTU0ZvbnRGYWNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNjRCNENEMENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250
RmFjZS5jcHAgKi87IH07CkBAIC0zNzI3LDggKzM3MzAsNiBAQAogCQlCQ0Q5QzI2MzBDMTdBQTY3
MDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXBDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNEOUMyNUYwQzE3QUE2NzAwNUM5MEEyIC8qIEpT
TmFtZWROb2RlTWFwQ3VzdG9tLmNwcCAqLzsgfTsKIAkJQkNEOUMyNjQwQzE3QUE2NzAwNUM5MEEy
IC8qIEpTTm9kZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQ0Q5QzI2MDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3VzdG9tLmNwcCAq
LzsgfTsKIAkJQkNEOUMyNjUwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTm9kZUxpc3RDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNEOUMyNjEw
QzE3QUE2NzAwNUM5MEEyIC8qIEpTTm9kZUxpc3RDdXN0b20uY3BwICovOyB9OwotCQlCQ0Q5QzI2
RTBDMTdBQTgxMDA1QzkwQTIgLyogSlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Q5QzI2ODBDMTdBQTgx
MDA1QzkwQTIgLyogSlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAgKi87IH07Ci0JCUJDRDlD
MjZGMEMxN0FBODEwMDVDOTBBMiAvKiBKU0RPTUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Q5QzI2OTBDMTdBQTgx
MDA1QzkwQTIgLyogSlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvci5oICovOyB9OwogCQlCQ0Q5QzI3
MDBDMTdBQTgxMDA1QzkwQTIgLyogSlNFdmVudFRhcmdldE5vZGUuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNEOUMyNkEwQzE3QUE4MTAwNUM5MEEy
IC8qIEpTRXZlbnRUYXJnZXROb2RlLmNwcCAqLzsgfTsKIAkJQkNEOUMyNzEwQzE3QUE4MTAwNUM5
MEEyIC8qIEpTRXZlbnRUYXJnZXROb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCQ0Q5QzI2QjBDMTdBQTgxMDA1QzkwQTIgLyogSlNFdmVudFRhcmdl
dE5vZGUuaCAqLzsgfTsKIAkJQkNEOUMyNzIwQzE3QUE4MTAwNUM5MEEyIC8qIEpTTmFtZWROb2Rl
c0NvbGxlY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkNEOUMyNkMwQzE3QUE4MTAwNUM5MEEyIC8qIEpTTmFtZWROb2Rlc0NvbGxlY3Rpb24u
Y3BwICovOyB9OwpAQCAtNzE5Nyw4ICs3MTk4LDYgQEAKIAkJQjI3QjI4MjIwQ0VGMEMwNzAwRDM5
RDU0IC8qIEpTU1ZHR2x5cGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR0dseXBoRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlC
MjdCMjgyMzBDRUYwQzA3MDBEMzlENTQgLyogSlNTVkdNaXNzaW5nR2x5cGhFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR01pc3NpbmdHbHlwaEVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMjdCMjgyNDBDRUYwQzA3
MDBEMzlENTQgLyogSlNTVkdNaXNzaW5nR2x5cGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU1NWR01pc3NpbmdHbHlwaEVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJQjI3QjI4MkIwQ0VGMEMzNTAwRDM5RDU0IC8qIENTU1Byb3BlcnR5
TmFtZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU1Byb3BlcnR5TmFtZXMuaW47IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUIyN0IyODJDMENFRjBDMzUwMEQzOUQ1NCAvKiBD
U1NWYWx1ZUtleXdvcmRzLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NWYWx1ZUtleXdv
cmRzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMjdCMjgyRDBDRUYwQzM1MDBE
MzlENTQgLyogRE9NU1ZHRm9udEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERPTVNWR0ZvbnRFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUIyN0IyODJFMENFRjBDMzUwMEQzOUQ1NCAvKiBET01TVkdGb250RWxlbWVudC5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBET01TVkdGb250RWxlbWVudC5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjI3QjI4MkYwQ0VGMEMzNTAwRDM5RDU0IC8q
IERPTVNWR0ZvbnRFbGVtZW50SW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERPTVNWR0ZvbnRFbGVtZW50SW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTc2NjMsNiArNzY2MiwxMSBAQAogCQlCQzVBODZCMzBDMzM2N0U4MDBFRUE2NDkg
LyogSlNET01TZWxlY3Rpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTRE9NU2VsZWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkM1
QTg2QjQwQzMzNjdFODAwRUVBNjQ5IC8qIEpTRE9NU2VsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTVNlbGVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlCQzVFQzE3NjBBNTA3RTNFMDA2MDA3RjUgLyogdmlldy1zb3VyY2UuY3NzICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSAidmlldy1zb3VyY2UuY3NzIjsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkM2MEQ2RTgwRDI4RDgzNDAwQjk5MThGIC8qIERPTUNvcmVFeGNlcHRp
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQ29yZUV4Y2VwdGlvbi5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzYwRDZFQjBEMjhEOTk5MDBCOTkxOEYg
LyogRE9NQ29yZUV4Y2VwdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NQ29yZUV4
Y2VwdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNjBEN0JFMEQyOUE0
NjMwMEI5OTE4RiAvKiBKU0RPTUNvcmVFeGNlcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNET01Db3JlRXhjZXB0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkM2MEQ3QkYwRDI5QTQ2MzAwQjk5MThGIC8qIEpTRE9NQ29yZUV4Y2Vw
dGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUNvcmVFeGNlcHRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM2MEQ4MDMwRDI5QTlFODAwQjk5
MThGIC8qIERPTUNvcmVFeGNlcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gRE9NQ29yZUV4Y2VwdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUJDNjRCNEM5MENCNDI5NUQwMDVGMkI2MiAvKiBDYWNoZWRGb250LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENhY2hlZEZvbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlCQzY0QjRDQTBDQjQyOTVEMDA1RjJCNjIgLyogQ2FjaGVkRm9udC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRGb250Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDNjRCNENEMENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250
RmFjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NGb250RmFj
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03NzgxLDggKzc3ODUsNiBAQAog
CQlCQ0Q5QzI1RjBDMTdBQTY3MDA1QzkwQTIgLyogSlNOYW1lZE5vZGVNYXBDdXN0b20uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmFtZWROb2RlTWFwQ3VzdG9t
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNEOUMyNjAwQzE3QUE2NzAwNUM5
MEEyIC8qIEpTTm9kZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNOb2RlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNE
OUMyNjEwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTm9kZUxpc3RDdXN0b20uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTm9kZUxpc3RDdXN0b20uY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwotCQlCQ0Q5QzI2ODBDMTdBQTgxMDA1QzkwQTIgLyogSlNET01F
eGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCUJDRDlDMjY5MEMxN0FBODEwMDVDOTBBMiAvKiBKU0RPTUV4Y2VwdGlvbkNvbnN0
cnVjdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUV4Y2VwdGlv
bkNvbnN0cnVjdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDRDlDMjZBMEMx
N0FBODEwMDVDOTBBMiAvKiBKU0V2ZW50VGFyZ2V0Tm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNFdmVudFRhcmdldE5vZGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlCQ0Q5QzI2QjBDMTdBQTgxMDA1QzkwQTIgLyogSlNFdmVudFRhcmdl
dE5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRXZlbnRUYXJnZXRO
b2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDRDlDMjZDMEMxN0FBODEwMDVD
OTBBMiAvKiBKU05hbWVkTm9kZXNDb2xsZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU05hbWVkTm9kZXNDb2xsZWN0aW9uLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTkyODEsOCArOTI4Myw2IEBACiAJCTg1QjIzMjI2MEE4QkYzQTEw
MEZERjQ3QiAvKiBEZXJpdmVkIFNvdXJjZXMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJ
CWNoaWxkcmVuID0gKAotCQkJCUIyN0IyODJCMENFRjBDMzUwMEQzOUQ1NCAvKiBDU1NQcm9wZXJ0
eU5hbWVzLmluICovLAotCQkJCUIyN0IyODJDMENFRjBDMzUwMEQzOUQ1NCAvKiBDU1NWYWx1ZUtl
eXdvcmRzLmluICovLAogCQkJCTg1OTY3RDlGMEFBOEJCNTkwMDVGRURFRSAvKiBDb3JlICovLAog
CQkJCTg1OTY3RENBMEFBOEJGMEYwMDVGRURFRSAvKiBDU1MgKi8sCiAJCQkJODVBRkE3QUIwQUFG
M0JCMDAwRTg0MzA1IC8qIEV2ZW50cyAqLywKQEAgLTEwNTU4LDYgKzEwNTU4LDggQEAKIAkJQTgz
Qjc5MTAwQ0NCMDAxQjAwMEIwODI1IC8qIENvcmUgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsK
IAkJCWNoaWxkcmVuID0gKAorCQkJCUJDNjBEN0JFMEQyOUE0NjMwMEI5OTE4RiAvKiBKU0RPTUNv
cmVFeGNlcHRpb24uY3BwICovLAorCQkJCUJDNjBEN0JGMEQyOUE0NjMwMEI5OTE4RiAvKiBKU0RP
TUNvcmVFeGNlcHRpb24uaCAqLywKIAkJCQk2NURGMzFEODA5RDFDMTIyMDAwQkUzMjUgLyogSlNB
dHRyLmNwcCAqLywKIAkJCQk2NURGMzFEOTA5RDFDMTIzMDAwQkUzMjUgLyogSlNBdHRyLmggKi8s
CiAJCQkJOTNGOUI3OUUwQkE2MDMyNjAwODU0MDY0IC8qIEpTQ0RBVEFTZWN0aW9uLmNwcCAqLywK
QEAgLTEwNTk4LDYgKzEwNjAwLDEwIEBACiAJCQkJRDIzQ0E1NUMwQUIwRUFBRTAwNTEwOEE1IC8q
IEpTUmFuZ2VFeGNlcHRpb24uaCAqLywKIAkJCQk2NURGMzFFRjA5RDFDQzYwMDAwQkUzMjUgLyog
SlNUZXh0LmNwcCAqLywKIAkJCQk2NURGMzFGMDA5RDFDQzYwMDAwQkUzMjUgLyogSlNUZXh0Lmgg
Ki8sCisJCQkJNjVERjMxRUQwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTUmFuZ2UuY3BwICovLAorCQkJ
CTY1REYzMUVFMDlEMUNDNjAwMDBCRTMyNSAvKiBKU1JhbmdlLmggKi8sCisJCQkJRDIzQ0E1NUUw
QUIwRUFCNjAwNTEwOEE1IC8qIEpTUmFuZ2VFeGNlcHRpb24uY3BwICovLAorCQkJCUQyM0NBNTVD
MEFCMEVBQUUwMDUxMDhBNSAvKiBKU1JhbmdlRXhjZXB0aW9uLmggKi8sCiAJCQkpOwogCQkJbmFt
ZSA9IENvcmU7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAtMTE0NzUsOCArMTE0ODEs
NiBAQAogCQkJCTE0MzJFODQ2MEM1MTQ5MzgwMEIxNTAwRiAvKiBHQ0NvbnRyb2xsZXIuaCAqLywK
IAkJCQlFMTBCOTNDMjBCNzNDMjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIu
Y3BwICovLAogCQkJCUUxMEI5MzdCMEI3M0MwMEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNS
ZXNvbHZlci5oICovLAotCQkJCUJDRDlDMjY4MEMxN0FBODEwMDVDOTBBMiAvKiBKU0RPTUV4Y2Vw
dGlvbkNvbnN0cnVjdG9yLmNwcCAqLywKLQkJCQlCQ0Q5QzI2OTBDMTdBQTgxMDA1QzkwQTIgLyog
SlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvci5oICovLAogCQkJCUIyNUJFNTBFMEQwNkI3MDgwMEI1
MjRDNiAvKiBKU0V2ZW50VGFyZ2V0QmFzZS5jcHAgKi8sCiAJCQkJQjI1QkU1MEYwRDA2QjcwODAw
QjUyNEM2IC8qIEpTRXZlbnRUYXJnZXRCYXNlLmggKi8sCiAJCQkJQkNEOUMyNkEwQzE3QUE4MTAw
NUM5MEEyIC8qIEpTRXZlbnRUYXJnZXROb2RlLmNwcCAqLywKQEAgLTExNjQ3LDEwICsxMTY1MSw2
IEBACiAJCUJDOTg1NDQ2MENEM0RBNUYwMDA2OUJDMSAvKiBSYW5nZXMgKi8gPSB7CiAJCQlpc2Eg
PSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAotCQkJCTY1REYzMUVEMDlEMUNDNjAwMDBCRTMy
NSAvKiBKU1JhbmdlLmNwcCAqLywKLQkJCQk2NURGMzFFRTA5RDFDQzYwMDAwQkUzMjUgLyogSlNS
YW5nZS5oICovLAotCQkJCUQyM0NBNTVFMEFCMEVBQjYwMDUxMDhBNSAvKiBKU1JhbmdlRXhjZXB0
aW9uLmNwcCAqLywKLQkJCQlEMjNDQTU1QzBBQjBFQUFFMDA1MTA4QTUgLyogSlNSYW5nZUV4Y2Vw
dGlvbi5oICovLAogCQkJKTsKIAkJCW5hbWUgPSBSYW5nZXM7CiAJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOwpAQCAtMTIyNzAsNiArMTIyNzAsOSBAQAogCQkJCUE4MTg1RjMyMDk3NjU3NjUwMDU4
MjZEOSAvKiBEb2N1bWVudFR5cGUuY3BwICovLAogCQkJCUE4MTg1RjMxMDk3NjU3NjUwMDU4MjZE
OSAvKiBEb2N1bWVudFR5cGUuaCAqLywKIAkJCQk5M0VFQzFFODA5QzI4Nzc3MDBDNTE1RDEgLyog
RG9jdW1lbnRUeXBlLmlkbCAqLywKKwkJCQlCQzYwRDgwMzBEMjlBOUU4MDBCOTkxOEYgLyogRE9N
Q29yZUV4Y2VwdGlvbi5jcHAgKi8sCisJCQkJQkM2MEQ2RTgwRDI4RDgzNDAwQjk5MThGIC8qIERP
TUNvcmVFeGNlcHRpb24uaCAqLywKKwkJCQlCQzYwRDZFQjBEMjhEOTk5MDBCOTkxOEYgLyogRE9N
Q29yZUV4Y2VwdGlvbi5pZGwgKi8sCiAJCQkJQTgxODVGMzYwOTc2NTc2NTAwNTgyNkQ5IC8qIERP
TUltcGxlbWVudGF0aW9uLmNwcCAqLywKIAkJCQlBODE4NUYzMzA5NzY1NzY1MDA1ODI2RDkgLyog
RE9NSW1wbGVtZW50YXRpb24uaCAqLywKIAkJCQk5M0VFQzFFOTA5QzI4Nzc3MDBDNTE1RDEgLyog
RE9NSW1wbGVtZW50YXRpb24uaWRsICovLApAQCAtMTM0NTksNyArMTM0NjIsNiBAQAogCQkJCTUx
RUM5MjZBMENFOTBERDQwMEY5MDMwOCAvKiBKU0N1c3RvbVNRTFRyYW5zYWN0aW9uRXJyb3JDYWxs
YmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUEzNDE3QzkwQ0VDRkYyNTAwNDlDQkRFIC8qIEpT
Q3VzdG9tVm9pZENhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlFMTBCOTM3QzBCNzNDMDBB
MDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICovLAotCQkJ
CUJDRDlDMjZGMEMxN0FBODEwMDVDOTBBMiAvKiBKU0RPTUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCQ0Q5QzJDNjBDMTdCNkVDMDA1QzkwQTIgLyogSlNET01FeGNl
cHRpb25Db25zdHJ1Y3Rvci5sdXQuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1REYzMUY4MDlEMUND
NjAwMDBCRTMyNSAvKiBKU0RPTUltcGxlbWVudGF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkx
QUNFNTNFMDBBOEQxODgxMDAyMjk0N0QgLyogSlNET01QYXJzZXIuaCBpbiBIZWFkZXJzICovLApA
QCAtMTQyNDksNiArMTQyNTEsOCBAQAogCQkJCUJDN0ZBNjJEMEQxRjBFRkYwMERCMjJBOSAvKiBT
dGF0aWNOb2RlTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM3RkE2ODEwRDFGMTY3OTAwREIy
MkE5IC8qIFNlbGVjdG9yTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRTNCRUMzMEQy
MjJCMUQwMDdFMDZFNCAvKiBUYWdOb2RlTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM2MEQ2
RTkwRDI4RDgzNDAwQjk5MThGIC8qIERPTUNvcmVFeGNlcHRpb24uaCBpbiBIZWFkZXJzICovLAor
CQkJCUJDNjBEN0MxMEQyOUE0NjMwMEI5OTE4RiAvKiBKU0RPTUNvcmVFeGNlcHRpb24uaCBpbiBI
ZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3Npbmcg
PSAwOwogCQl9OwpAQCAtMTQ1MTMsOCArMTQ1MTcsNyBAQAogCQkJCUIyQTFGMkFDMENFRjBBQkYw
MDQ0MkY2QSAvKiBTVkdGb250RWxlbWVudC5pZGwgaW4gUmVzb3VyY2VzICovLAogCQkJCUIyQTFG
MkFGMENFRjBBQkYwMDQ0MkY2QSAvKiBTVkdHbHlwaEVsZW1lbnQuaWRsIGluIFJlc291cmNlcyAq
LywKIAkJCQlCMkExRjJCMjBDRUYwQUJGMDA0NDJGNkEgLyogU1ZHTWlzc2luZ0dseXBoRWxlbWVu
dC5pZGwgaW4gUmVzb3VyY2VzICovLAotCQkJCUIyN0IyODM2MENFRjBDMzYwMEQzOUQ1NCAvKiBD
U1NQcm9wZXJ0eU5hbWVzLmluIGluIFJlc291cmNlcyAqLywKLQkJCQlCMjdCMjgzNzBDRUYwQzM2
MDBEMzlENTQgLyogQ1NTVmFsdWVLZXl3b3Jkcy5pbiBpbiBSZXNvdXJjZXMgKi8sCisJCQkJQkM2
MEQ2RUMwRDI4RDk5OTAwQjk5MThGIC8qIERPTUNvcmVFeGNlcHRpb24uaWRsIGluIFJlc291cmNl
cyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsK
IAkJfTsKQEAgLTE1MTg0LDcgKzE1MTg3LDYgQEAKIAkJCQk1MUVDOTI2OTBDRTkwREQ0MDBGOTAz
MDggLyogSlNDdXN0b21TUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMUEzNDE3Q0EwQ0VDRkYyNTAwNDlDQkRFIC8qIEpTQ3VzdG9tVm9pZENhbGxiYWNr
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxMEI5M0MzMEI3M0MyOTEwMDNFRDg5MCAvKiBKU0N1
c3RvbVhQYXRoTlNSZXNvbHZlci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlCQ0Q5QzI2RTBDMTdB
QTgxMDA1QzkwQTIgLyogSlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk2NURGMzFGNzA5RDFDQzYwMDAwQkUzMjUgLyogSlNET01JbXBsZW1lbnRhdGlvbi5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUNFNTNERjBBOEQxODgxMDAyMjk0N0QgLyogSlNET01Q
YXJzZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM1QTg2QjUwQzMzNjdFODAwRUVBNjQ5IC8q
IEpTRE9NU2VsZWN0aW9uLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMTU5ODIsNiArMTU5ODQsOCBA
QAogCQkJCUJDN0ZBNjJFMEQxRjBFRkYwMERCMjJBOSAvKiBTdGF0aWNOb2RlTGlzdC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlCQzdGQTY4MjBEMUYxNjc5MDBEQjIyQTkgLyogU2VsZWN0b3JOb2Rl
TGlzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0UzQkVDMjBEMjIyQjFEMDA3RTA2RTQgLyog
VGFnTm9kZUxpc3QuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQkM2MEQ3QzAwRDI5QTQ2MzAwQjk5
MThGIC8qIEpTRE9NQ29yZUV4Y2VwdGlvbi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCQzYwRDgw
NDBEMjlBOUU4MDBCOTkxOEYgLyogRE9NQ29yZUV4Y2VwdGlvbi5jcHAgaW4gU291cmNlcyAqLywK
IAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsK
SW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMvSlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUV4Y2VwdGlvbkNvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjkwMzMpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NRXhj
ZXB0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xLDgxICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQ09NUFVU
RVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRF
UiwgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
LSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJKU0RPTUV4Y2VwdGlvbkNvbnN0
cnVjdG9yLmgiCi0KLSNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCi0jaW5jbHVkZSA8a2pzL29i
amVjdF9vYmplY3QuaD4KLQotI2luY2x1ZGUgIkpTRE9NRXhjZXB0aW9uQ29uc3RydWN0b3IubHV0
LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotdXNpbmcgbmFtZXNwYWNlIEtKUzsKLQotY29u
c3QgQ2xhc3NJbmZvIEpTRE9NRXhjZXB0aW9uQ29uc3RydWN0b3I6OmluZm8gPSB7ICJET01FeGNl
cHRpb25Db25zdHJ1Y3RvciIsIDAsIDAgfTsKLQotLyogU291cmNlIGZvciBET01FeGNlcHRpb25D
b25zdHJ1Y3RvclRhYmxlLiBVc2UgIm1ha2UgaGFzaHRhYmxlcyIgdG8gcmVnZW5lcmF0ZS4KLUBi
ZWdpbiBKU0RPTUV4Y2VwdGlvbkNvbnN0cnVjdG9yVGFibGUgMTUKLSAgSU5ERVhfU0laRV9FUlIg
ICAgICAgICAgICAgICAgV2ViQ29yZTo6SU5ERVhfU0laRV9FUlIgICAgICAgICAgICAgICBEb250
RGVsZXRlfFJlYWRPbmx5Ci0gIERPTVNUUklOR19TSVpFX0VSUiAgICAgICAgICAgIFdlYkNvcmU6
OkRPTVNUUklOR19TSVpFX0VSUiAgIERvbnREZWxldGV8UmVhZE9ubHkKLSAgSElFUkFSQ0hZX1JF
UVVFU1RfRVJSICAgICAgICAgV2ViQ29yZTo6SElFUkFSQ0hZX1JFUVVFU1RfRVJSICAgICAgICBE
b250RGVsZXRlfFJlYWRPbmx5Ci0gIFdST05HX0RPQ1VNRU5UX0VSUiAgICAgICAgICAgIFdlYkNv
cmU6OldST05HX0RPQ1VNRU5UX0VSUiAgIERvbnREZWxldGV8UmVhZE9ubHkKLSAgSU5WQUxJRF9D
SEFSQUNURVJfRVJSICAgICAgICAgV2ViQ29yZTo6SU5WQUxJRF9DSEFSQUNURVJfRVJSICAgICAg
ICBEb250RGVsZXRlfFJlYWRPbmx5Ci0gIE5PX0RBVEFfQUxMT1dFRF9FUlIgICAgICAgICAgIFdl
YkNvcmU6Ok5PX0RBVEFfQUxMT1dFRF9FUlIgIERvbnREZWxldGV8UmVhZE9ubHkKLSAgTk9fTU9E
SUZJQ0FUSU9OX0FMTE9XRURfRVJSICAgV2ViQ29yZTo6Tk9fTU9ESUZJQ0FUSU9OX0FMTE9XRURf
RVJSICBEb250RGVsZXRlfFJlYWRPbmx5Ci0gIE5PVF9GT1VORF9FUlIgICAgICAgICAgICAgICAg
IFdlYkNvcmU6Ok5PVF9GT1VORF9FUlIgICAgICAgICAgICAgICAgRG9udERlbGV0ZXxSZWFkT25s
eQotICBOT1RfU1VQUE9SVEVEX0VSUiAgICAgICAgICAgICBXZWJDb3JlOjpOT1RfU1VQUE9SVEVE
X0VSUiAgICBEb250RGVsZXRlfFJlYWRPbmx5Ci0gIElOVVNFX0FUVFJJQlVURV9FUlIgICAgICAg
ICAgIFdlYkNvcmU6OklOVVNFX0FUVFJJQlVURV9FUlIgIERvbnREZWxldGV8UmVhZE9ubHkKLSAg
SU5WQUxJRF9TVEFURV9FUlIgICAgICAgICAgICAgV2ViQ29yZTo6SU5WQUxJRF9TVEFURV9FUlIg
ICAgRG9udERlbGV0ZXxSZWFkT25seQotICBTWU5UQVhfRVJSICAgICAgICAgICAgICAgICAgICBX
ZWJDb3JlOjpTWU5UQVhfRVJSICAgICAgICAgICBEb250RGVsZXRlfFJlYWRPbmx5Ci0gIElOVkFM
SURfTU9ESUZJQ0FUSU9OX0VSUiAgICAgIFdlYkNvcmU6OklOVkFMSURfTU9ESUZJQ0FUSU9OX0VS
UiAgICAgRG9udERlbGV0ZXxSZWFkT25seQotICBOQU1FU1BBQ0VfRVJSICAgICAgICAgICAgICAg
ICBXZWJDb3JlOjpOQU1FU1BBQ0VfRVJSICAgICAgICAgICAgICAgIERvbnREZWxldGV8UmVhZE9u
bHkKLSAgSU5WQUxJRF9BQ0NFU1NfRVJSICAgICAgICAgICAgV2ViQ29yZTo6SU5WQUxJRF9BQ0NF
U1NfRVJSICAgRG9udERlbGV0ZXxSZWFkT25seQotQGVuZAotKi8KLQotSlNET01FeGNlcHRpb25D
b25zdHJ1Y3Rvcjo6SlNET01FeGNlcHRpb25Db25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMpIAot
eyAKLSAgICBzZXRQcm90b3R5cGUoZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLT5vYmplY3RQ
cm90b3R5cGUoKSk7Ci19Ci0KLWJvb2wgSlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvcjo6Z2V0T3du
UHJvcGVydHlTbG90KEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlO
YW1lLCBQcm9wZXJ0eVNsb3QmIHNsb3QpCi17Ci0gICAgcmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xv
dDxKU0RPTUV4Y2VwdGlvbkNvbnN0cnVjdG9yLCBET01PYmplY3Q+KGV4ZWMsICZKU0RPTUV4Y2Vw
dGlvbkNvbnN0cnVjdG9yVGFibGUsIHRoaXMsIHByb3BlcnR5TmFtZSwgc2xvdCk7Ci19Ci0KLUpT
VmFsdWUqIEpTRE9NRXhjZXB0aW9uQ29uc3RydWN0b3I6OmdldFZhbHVlUHJvcGVydHkoRXhlY1N0
YXRlKiwgaW50IHRva2VuKSBjb25zdAotewotICAgIC8vIFdlIHVzZSB0aGUgdG9rZW4gYXMgdGhl
IHZhbHVlIHRvIHJldHVybiBkaXJlY3RseQotICAgIHJldHVybiBqc051bWJlcih0b2tlbik7Ci19
Ci0KLUpTT2JqZWN0KiBnZXRET01FeGNlcHRpb25Db25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMp
Ci17Ci0gICAgcmV0dXJuIGNhY2hlR2xvYmFsT2JqZWN0PEpTRE9NRXhjZXB0aW9uQ29uc3RydWN0
b3I+KGV4ZWMsICJbW0RPTUV4Y2VwdGlvbi5jb25zdHJ1Y3Rvcl1dIik7Ci19Ci0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMvSlNET01FeGNlcHRpb25D
b25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNET01FeGNl
cHRpb25Db25zdHJ1Y3Rvci5oCShyZXZpc2lvbiAyOTAzMykKKysrIFdlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUwICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBDT01QVVRFUiwgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKLSAqLwotCi0jaWZuZGVmIEpTRE9NRXhjZXB0aW9uQ29uc3RydWN0b3JfaAotI2Rl
ZmluZSBKU0RPTUV4Y2VwdGlvbkNvbnN0cnVjdG9yX2gKLQotI2luY2x1ZGUgImtqc19iaW5kaW5n
LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotICAgIC8vIENvbnN0cnVjdG9yIGZvciBET01F
eGNlcHRpb24gLSBjb25zdHJ1Y3RvciBzdHVmZiBub3QgaW1wbGVtZW50ZWQgeWV0Ci0gICAgY2xh
c3MgSlNET01FeGNlcHRpb25Db25zdHJ1Y3RvciA6IHB1YmxpYyBLSlM6OkRPTU9iamVjdCB7Ci0g
ICAgcHVibGljOgotICAgICAgICBKU0RPTUV4Y2VwdGlvbkNvbnN0cnVjdG9yKEtKUzo6RXhlY1N0
YXRlKik7Ci0KLSAgICAgICAgdmlydHVhbCBib29sIGdldE93blByb3BlcnR5U2xvdChLSlM6OkV4
ZWNTdGF0ZSosIGNvbnN0IEtKUzo6SWRlbnRpZmllciYsIEtKUzo6UHJvcGVydHlTbG90Jik7Ci0g
ICAgICAgIEtKUzo6SlNWYWx1ZSogZ2V0VmFsdWVQcm9wZXJ0eShLSlM6OkV4ZWNTdGF0ZSosIGlu
dCB0b2tlbikgY29uc3Q7Ci0gICAgICAgIC8vIG5vIHB1dCAtIGFsbCByZWFkLW9ubHkKLQotICAg
ICAgICB2aXJ0dWFsIGNvbnN0IEtKUzo6Q2xhc3NJbmZvKiBjbGFzc0luZm8oKSBjb25zdCB7IHJl
dHVybiAmaW5mbzsgfQotICAgICAgICBzdGF0aWMgY29uc3QgS0pTOjpDbGFzc0luZm8gaW5mbzsK
LSAgICB9OwotCi0gICAgS0pTOjpKU09iamVjdCogZ2V0RE9NRXhjZXB0aW9uQ29uc3RydWN0b3Io
S0pTOjpFeGVjU3RhdGUqKTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
SlNET01FeGNlcHRpb25Db25zdHJ1Y3Rvcl9oCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL2pzL2tq
c19iaW5kaW5nLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL2tqc19iaW5k
aW5nLmNwcAkocmV2aXNpb24gMjkwMzMpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL2tqc19iaW5k
aW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOSArMjYsMTEgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJranNfYmluZGluZy5oIgogCisjaW5jbHVkZSAiRE9NQ29yZUV4Y2Vw
dGlvbi5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJIVE1MSW1hZ2VF
bGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCisjaW5jbHVkZSAiSlNET01Db3JlRXhj
ZXB0aW9uLmgiCiAjaW5jbHVkZSAiSlNOb2RlLmgiCiAjaW5jbHVkZSAiWE1MSHR0cFJlcXVlc3Qu
aCIKIApAQCAtMjY2LDI0ICsyNjgsOSBAQCB2b2lkIHNldERPTUV4Y2VwdGlvbihFeGVjU3RhdGUq
IGV4ZWMsIEV4CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBFeGNlcHRpb25Db2RlRGVz
Y3JpcHRpb24gZGVzY3JpcHRpb247Ci0gICAgZ2V0RXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uKGVj
LCBkZXNjcmlwdGlvbik7Ci0KLSAgICAvLyAxMDAgY2hhcmFjdGVycyBpcyBhIGJpZyBlbm91Z2gg
YnVmZmVyLCBiZWNhdXNlIHRoZXJlIGFyZToKLSAgICAvLyAgIDEzIGNoYXJhY3RlcnMgaW4gdGhl
IG1lc3NhZ2UKLSAgICAvLyAgIDEwIGNoYXJhY3RlcnMgaW4gdGhlIGxvbmdlc3QgdHlwZSBuYW1l
Ci0gICAgLy8gICAyNyBjaGFyYWN0ZXJzIGluIHRoZSBsb25nZXN0IGV4Y2VwdGlvbiBuYW1lCi0g
ICAgLy8gICAyMCBvciBzbyBkaWdpdHMgaW4gdGhlIGxvbmdlc3QgaW50ZWdlcidzIEFTQ0lJIGZv
cm0gKGV2ZW4gaWYgaW50IGlzIDY0LWJpdCkKLSAgICAvLyAgIDEgYnl0ZSBmb3IgYSBudWxsIGNo
YXJhY3RlcgotICAgIC8vIFRoYXQgYWRkcyB1cCB0byBhYm91dCA3MCBieXRlcy4KLSAgICBjaGFy
IGJ1ZmZlclsxMDBdOwotICAgIGlmIChkZXNjcmlwdGlvbi5uYW1lKQotICAgICAgICBzcHJpbnRm
KGJ1ZmZlciwgIiVzOiAlcyBFeGNlcHRpb24gJWQiLCBkZXNjcmlwdGlvbi5uYW1lLCBkZXNjcmlw
dGlvbi50eXBlTmFtZSwgZGVzY3JpcHRpb24uY29kZSk7Ci0gICAgZWxzZQotICAgICAgICBzcHJp
bnRmKGJ1ZmZlciwgIiVzIEV4Y2VwdGlvbiAlZCIsIGRlc2NyaXB0aW9uLnR5cGVOYW1lLCBkZXNj
cmlwdGlvbi5jb2RlKTsKLQotICAgIEpTT2JqZWN0KiBlcnJvck9iamVjdCA9IHRocm93RXJyb3Io
ZXhlYywgR2VuZXJhbEVycm9yLCBidWZmZXIpOwotICAgIGVycm9yT2JqZWN0LT5wdXQoZXhlYywg
ImNvZGUiLCBqc051bWJlcihkZXNjcmlwdGlvbi5jb2RlKSk7CisgICAgRE9NQ29yZUV4Y2VwdGlv
biogZXhjZXB0aW9uID0gbmV3IERPTUNvcmVFeGNlcHRpb24oZWMpOworICAgIEpTVmFsdWUqIGVy
cm9yT2JqZWN0ID0gdG9KUyhleGVjLCBleGNlcHRpb24pOworICAgIGV4ZWMtPnNldEV4Y2VwdGlv
bihlcnJvck9iamVjdCk7CiB9CiAKLX0KK30gLy8gbmFtZXNwYWNlIEtKUwpJbmRleDogV2ViQ29y
ZS9iaW5kaW5ncy9qcy9ranNfd2luZG93LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRp
bmdzL2pzL2tqc193aW5kb3cuY3BwCShyZXZpc2lvbiAyOTA0NCkKKysrIFdlYkNvcmUvYmluZGlu
Z3MvanMva2pzX3dpbmRvdy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5LDcgKzM5LDYgQEAKICNp
bmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJHQ0NvbnRyb2xsZXIuaCIKICNpbmNsdWRl
ICJIVE1MRG9jdW1lbnQuaCIKLSNpbmNsdWRlICJKU0RPTUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmgi
CiAjaW5jbHVkZSAiSlNET01XaW5kb3cuaCIKICNpbmNsdWRlICJKU0V2ZW50LmgiCiAjaW5jbHVk
ZSAiSlNIVE1MQXVkaW9FbGVtZW50Q29uc3RydWN0b3IuaCIKQEAgLTE5NCw3ICsxOTMsNiBAQCBj
b25zdCBDbGFzc0luZm8gV2luZG93OjppbmZvID0geyAiV2luZG93CiAgIG9uYmVmb3JldW5sb2Fk
ICAgICAgICBXaW5kb3c6Ok9uYmVmb3JldW5sb2FkICAgICAgRG9udERlbGV0ZQogIyAtLSBDb25z
dHJ1Y3RvcnMgLS0KICAgQXVkaW8gICAgICAgICAgICAgICAgIFdpbmRvdzo6QXVkaW8gICAgICAg
ICAgICAgICBEb250RGVsZXRlCi0gIERPTUV4Y2VwdGlvbiAgICAgICAgICBXaW5kb3c6OkRPTUV4
Y2VwdGlvbiAgICAgICAgRG9udERlbGV0ZQogICBJbWFnZSAgICAgICAgICAgICAgICAgV2luZG93
OjpJbWFnZSAgICAgICAgICAgICAgIERvbnREZWxldGUKICAgT3B0aW9uICAgICAgICAgICAgICAg
IFdpbmRvdzo6T3B0aW9uICAgICAgICAgICAgICBEb250RGVsZXRlCiAgIFhNTEh0dHBSZXF1ZXN0
ICAgICAgICBXaW5kb3c6OlhNTEh0dHBSZXF1ZXN0ICAgICAgRG9udERlbGV0ZQpAQCAtNDYwLDEw
ICs0NTgsNiBAQCBKU1ZhbHVlICpXaW5kb3c6OmdldFZhbHVlUHJvcGVydHkoRXhlY1N0CiAgICBz
d2l0Y2ggKHRva2VuKSB7CiAgICBjYXNlIENyeXB0bzoKICAgICAgIHJldHVybiBqc1VuZGVmaW5l
ZCgpOyAvLyBGSVhNRTogaW1wbGVtZW50IHRoaXMKLSAgIGNhc2UgRE9NRXhjZXB0aW9uOgotICAg
ICAgaWYgKCFhbGxvd3NBY2Nlc3NGcm9tKGV4ZWMpKQotICAgICAgICByZXR1cm4ganNVbmRlZmlu
ZWQoKTsKLSAgICAgIHJldHVybiBnZXRET01FeGNlcHRpb25Db25zdHJ1Y3RvcihleGVjKTsKICAg
ICBjYXNlIEV2ZW50XzoKICAgICAgIGlmICghYWxsb3dzQWNjZXNzRnJvbShleGVjKSkKICAgICAg
ICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CkluZGV4OiBXZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0
aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmNwcAko
cmV2aXNpb24gMCkKKysrIFdlYkNvcmUvZG9tL0RPTUNvcmVFeGNlcHRpb24uY3BwCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA3IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuICBOZWl0aGVy
IHRoZSBuYW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVz
IG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFO
WQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORAorICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRE9N
Q29yZUV4Y2VwdGlvbi5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0RPTUNvcmVFeGNlcHRp
b246OkRPTUNvcmVFeGNlcHRpb24oRXhjZXB0aW9uQ29kZSBlYykKK3sKKyAgICBFeGNlcHRpb25D
b2RlRGVzY3JpcHRpb24gZGVzY3JpcHRpb247CisgICAgZ2V0RXhjZXB0aW9uQ29kZURlc2NyaXB0
aW9uKGVjLCBkZXNjcmlwdGlvbik7CisKKyAgICBtX2NvZGUgPSBkZXNjcmlwdGlvbi5jb2RlOwor
CisgICAgaWYgKGRlc2NyaXB0aW9uLm5hbWUpIHsKKyAgICAgICAgbV9uYW1lID0gZGVzY3JpcHRp
b24ubmFtZTsKKyAgICAgICAgbV9tZXNzYWdlID0gU3RyaW5nOjpmb3JtYXQoIiVzOiAlcyBFeGNl
cHRpb24gJWQiLCBkZXNjcmlwdGlvbi5uYW1lLCBkZXNjcmlwdGlvbi50eXBlTmFtZSwgZGVzY3Jp
cHRpb24uY29kZSk7CisgICAgfSBlbHNlCisgICAgICAgIG1fbWVzc2FnZSA9IFN0cmluZzo6Zm9y
bWF0KCIlcyBFeGNlcHRpb24gJWQiLCBkZXNjcmlwdGlvbi50eXBlTmFtZSwgZGVzY3JpcHRpb24u
Y29kZSk7Cit9CisKK1N0cmluZyBET01Db3JlRXhjZXB0aW9uOjp0b1N0cmluZygpIGNvbnN0Cit7
CisgICAgcmV0dXJuICJFcnJvcjogIiArIG1fbWVzc2FnZTsKK30KKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpJbmRleDogV2ViQ29yZS9kb20vRE9NQ29yZUV4Y2VwdGlvbi5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvZG9tL0RPTUNvcmVFeGNlcHRpb24uaAkocmV2aXNpb24gMCkKKysrIFdlYkNv
cmUvZG9tL0RPTUNvcmVFeGNlcHRpb24uaAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw4MSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAwNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4g
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBsZSBDb21w
dXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgorICogICAgIGl0cyBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQK
KyAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBB
TkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQK
KyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2lmbmRlZiBET01Db3JlRXhjZXB0aW9uX2gKKyNkZWZpbmUgRE9NQ29kZUV4Y2VwdGlvbl9oCisK
KyNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCisjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIK
KyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKKyAg
ICBjbGFzcyBET01Db3JlRXhjZXB0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8RE9NQ29yZUV4Y2Vw
dGlvbj4geworICAgIHB1YmxpYzoKKyAgICAgICAgRE9NQ29yZUV4Y2VwdGlvbihFeGNlcHRpb25D
b2RlKTsKKworICAgICAgICAvLyBGSVhNRTogdGhpcyBpcyBjb3BpZWQgZnJvbSBFeGNlcHRpb25D
b2RlLmgsIGl0IG5lZWRzIHRvIGJlIGtlcHQgaW4gc3luYy4KKyAgICAgICAgZW51bSB7CisgICAg
ICAgICAgICBJTkRFWF9TSVpFX0VSUiA9IDEsCisgICAgICAgICAgICBET01TVFJJTkdfU0laRV9F
UlIgPSAyLAorICAgICAgICAgICAgSElFUkFSQ0hZX1JFUVVFU1RfRVJSID0gMywKKyAgICAgICAg
ICAgIFdST05HX0RPQ1VNRU5UX0VSUiA9IDQsCisgICAgICAgICAgICBJTlZBTElEX0NIQVJBQ1RF
Ul9FUlIgPSA1LAorICAgICAgICAgICAgTk9fREFUQV9BTExPV0VEX0VSUiA9IDYsCisgICAgICAg
ICAgICBOT19NT0RJRklDQVRJT05fQUxMT1dFRF9FUlIgPSA3LAorICAgICAgICAgICAgTk9UX0ZP
VU5EX0VSUiA9IDgsCisgICAgICAgICAgICBOT1RfU1VQUE9SVEVEX0VSUiA9IDksCisgICAgICAg
ICAgICBJTlVTRV9BVFRSSUJVVEVfRVJSID0gMTAsCisKKyAgICAgICAgICAgIC8vIEludHJvZHVj
ZWQgaW4gRE9NIExldmVsIDI6CisgICAgICAgICAgICBJTlZBTElEX1NUQVRFX0VSUiA9IDExLAor
ICAgICAgICAgICAgU1lOVEFYX0VSUiA9IDEyLAorICAgICAgICAgICAgSU5WQUxJRF9NT0RJRklD
QVRJT05fRVJSID0gMTMsCisgICAgICAgICAgICBOQU1FU1BBQ0VfRVJSID0gMTQsCisgICAgICAg
ICAgICBJTlZBTElEX0FDQ0VTU19FUlIgPSAxNSwKKworICAgICAgICAgICAgLy8gSW50cm9kdWNl
ZCBpbiBET00gTGV2ZWwgMzoKKyAgICAgICAgICAgIFZBTElEQVRJT05fRVJSID0gMTYsCisgICAg
ICAgICAgICBUWVBFX01JU01BVENIX0VSUiA9IDE3CisgICAgICAgIH07CisKKyAgICAgICAgaW50
IGNvZGUoKSBjb25zdCB7IHJldHVybiBtX2NvZGU7IH0KKyAgICAgICAgU3RyaW5nIG5hbWUoKSBj
b25zdCB7IHJldHVybiBtX25hbWU7IH0KKyAgICAgICAgU3RyaW5nIG1lc3NhZ2UoKSBjb25zdCB7
IHJldHVybiBtX21lc3NhZ2U7IH0KKworICAgICAgICBTdHJpbmcgdG9TdHJpbmcoKSBjb25zdDsK
KworICAgIHByaXZhdGU6CisgICAgICAgIGludCBtX2NvZGU7CisgICAgICAgIFN0cmluZyBtX25h
bWU7CisgICAgICAgIFN0cmluZyBtX21lc3NhZ2U7CisgICAgfTsKKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQorCisjZW5kaWYgLy8gRE9NQ29yZUV4Y2VwdGlvbl9oCkluZGV4OiBXZWJDb3JlL2Rv
bS9ET01Db3JlRXhjZXB0aW9uLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9ET01Db3Jl
RXhjZXB0aW9uLmlkbAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUvZG9tL0RPTUNvcmVFeGNlcHRp
b24uaWRsCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcwIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDA3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqIDMuICBOZWl0aGVyIHRoZSBuYW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUi
KSBub3IgdGhlIG5hbWVzIG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAgIGZyb20gdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JT
ICJBUyBJUyIgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQor
ICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAorICogT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgY29yZSB7CisKKyAg
ICBpbnRlcmZhY2UgWworICAgICAgICBHZW5lcmF0ZUNvbnN0cnVjdG9yCisgICAgXSBET01Db3Jl
RXhjZXB0aW9uIHsKKworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQg
ICBjb2RlOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nICAgICAgICBuYW1l
OworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nICAgICAgICBtZXNzYWdlOwor
CisjaWYgZGVmaW5lZChMQU5HVUFHRV9KQVZBU0NSSVBUKQorICAgICAgICAvLyBPdmVycmlkZSBp
biBhIE1vemlsbGEgY29tcGF0aWJsZSBmb3JtYXQKKyAgICAgICAgW0RvbnRFbnVtXSBET01TdHJp
bmcgdG9TdHJpbmcoKTsKKyNlbmRpZgorCisgICAgICAgIC8vIEV4Y2VwdGlvbkNvZGUKKyAgICAg
ICAgY29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBJTkRFWF9TSVpFX0VSUiAgICAgICAgICAgICAg
ICAgPSAxOworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCAgICAgIERPTVNUUklOR19TSVpF
X0VSUiAgICAgICAgICAgICA9IDI7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0ICAgICAg
SElFUkFSQ0hZX1JFUVVFU1RfRVJSICAgICAgICAgID0gMzsKKyAgICAgICAgY29uc3QgdW5zaWdu
ZWQgc2hvcnQgICAgICBXUk9OR19ET0NVTUVOVF9FUlIgICAgICAgICAgICAgPSA0OworICAgICAg
ICBjb25zdCB1bnNpZ25lZCBzaG9ydCAgICAgIElOVkFMSURfQ0hBUkFDVEVSX0VSUiAgICAgICAg
ICA9IDU7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0ICAgICAgTk9fREFUQV9BTExPV0VE
X0VSUiAgICAgICAgICAgID0gNjsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBO
T19NT0RJRklDQVRJT05fQUxMT1dFRF9FUlIgICAgPSA3OworICAgICAgICBjb25zdCB1bnNpZ25l
ZCBzaG9ydCAgICAgIE5PVF9GT1VORF9FUlIgICAgICAgICAgICAgICAgICA9IDg7CisgICAgICAg
IGNvbnN0IHVuc2lnbmVkIHNob3J0ICAgICAgTk9UX1NVUFBPUlRFRF9FUlIgICAgICAgICAgICAg
ID0gOTsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBJTlVTRV9BVFRSSUJVVEVf
RVJSICAgICAgICAgICAgPSAxMDsKKyAgICAgICAgLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwg
MjoKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBJTlZBTElEX1NUQVRFX0VSUiAg
ICAgICAgICAgICAgPSAxMTsKKyAgICAgICAgLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgMjoK
KyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBTWU5UQVhfRVJSICAgICAgICAgICAg
ICAgICAgICAgPSAxMjsKKyAgICAgICAgLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgMjoKKyAg
ICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBJTlZBTElEX01PRElGSUNBVElPTl9FUlIg
ICAgICAgPSAxMzsKKyAgICAgICAgLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgMjoKKyAgICAg
ICAgY29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBOQU1FU1BBQ0VfRVJSICAgICAgICAgICAgICAg
ICAgPSAxNDsKKyAgICAgICAgLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgMjoKKyAgICAgICAg
Y29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBJTlZBTElEX0FDQ0VTU19FUlIgICAgICAgICAgICAg
PSAxNTsKKyAgICAgICAgLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgMzoKKyAgICAgICAgY29u
c3QgdW5zaWduZWQgc2hvcnQgICAgICBWQUxJREFUSU9OX0VSUiAgICAgICAgICAgICAgICAgPSAx
NjsKKyAgICAgICAgLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgMzoKKyAgICAgICAgY29uc3Qg
dW5zaWduZWQgc2hvcnQgICAgICBUWVBFX01JU01BVENIX0VSUiAgICAgICAgICAgICAgPSAxNzsK
KyAgICB9OworfQpJbmRleDogV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwJKHJldmlzaW9uIDI5MDQxKQorKysgV2ViQ29y
ZS9wYWdlL0RPTVdpbmRvdy5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTE1MCw3ICsxNTAsNyBAQCBt
b2R1bGUgd2luZG93IHsKICAgICAgICAgYXR0cmlidXRlIFN0eWxlU2hlZXRMaXN0Q29uc3RydWN0
b3IgU3R5bGVTaGVldExpc3Q7CiAKICAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGUgY29t
bWVudGVkLW91dCBnbG9iYWwgY29uc3RydWN0b3JzIGZvciBpbnRlcmZhY2VzIGxpc3RlZCBpbiBE
T00gTGV2ZWwgMyBDb3JlIHNwZWNpZmljYXRpb24uCi0vLyAgICAgICAgYXR0cmlidXRlIERPTUV4
Y2VwdGlvbkNvbnN0cnVjdG9yIERPTUV4Y2VwdGlvbjsKKyAgICAgICAgYXR0cmlidXRlIERPTUNv
cmVFeGNlcHRpb25Db25zdHJ1Y3RvciBET01FeGNlcHRpb247CiAvLyAgICAgICAgYXR0cmlidXRl
IERPTVN0cmluZ0xpc3RDb25zdHJ1Y3RvciBET01TdHJpbmdMaXN0OwogLy8gICAgICAgIGF0dHJp
YnV0ZSBOYW1lTGlzdENvbnN0cnVjdG9yIE5hbWVMaXN0OwogLy8gICAgICAgIGF0dHJpYnV0ZSBE
T01JbXBsZW1lbnRhdGlvbkxpc3RDb25zdHJ1Y3RvciBET01JbXBsZW1lbnRhdGlvbkxpc3Q7Cklu
ZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyOTA0OSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDA3LTEyLTMxICBTYW0gV2VpbmlnICA8c2FtQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVGVzdCBmb3IgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY2MzcK
KyAgICAgICAgQWNpZDMgZXhwZWN0cyBFeGVjZXB0aW9uQ29kZSBjb25zdGFudHMgdG8gYmUgZGVm
aW5lZCBvbiBET01FeGNlcHRpb24gb2JqZWN0cworCisgICAgICAgICogZmFzdC9kb20vRE9NRXhj
ZXB0aW9uOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9ET01FeGNlcHRpb24vcHJvdG90eXBl
LW9iamVjdC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0RPTUV4Y2Vw
dGlvbi9wcm90b3R5cGUtb2JqZWN0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0RP
TUV4Y2VwdGlvbi9yZXNvdXJjZXM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0RPTUV4Y2Vw
dGlvbi9yZXNvdXJjZXMvcHJvdG90eXBlLW9iamVjdC5qczogQWRkZWQuCisKIDIwMDctMTItMzAg
IFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBPbGl2
ZXIgSHVudC4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0RPTUV4Y2VwdGlvbi9wcm90b3R5
cGUtb2JqZWN0LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9ET01FeGNlcHRpb24vcHJvdG90eXBlLW9iamVjdC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9ET01FeGNlcHRpb24vcHJvdG90eXBlLW9iamVjdC1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTMgQEAKK0RPTUV4Y2VwdGlvbiBu
ZWVkcyBhIHJlYWwgcHJvdG90eXBlOiBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjYzNworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBlLmNvbnN0
cnVjdG9yLnRvU3RyaW5nKCkgaXMgIltvYmplY3QgRE9NQ29yZUV4Y2VwdGlvbkNvbnN0cnVjdG9y
XSIKK1BBU1MgZS5jb25zdHJ1Y3RvciBpcyB3aW5kb3cuRE9NRXhjZXB0aW9uCitQQVNTIGUuSElF
UkFSQ0hZX1JFUVVFU1RfRVJSIGlzIGUuY29uc3RydWN0b3IuSElFUkFSQ0hZX1JFUVVFU1RfRVJS
CitQQVNTIGUuSElFUkFSQ0hZX1JFUVVFU1RfRVJSIGlzIDMKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9ET01FeGNlcHRpb24vcHJvdG90eXBlLW9iamVjdC5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2Zhc3QvZG9tL0RPTUV4Y2VwdGlvbi9wcm90b3R5cGUtb2JqZWN0Lmh0bWwJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9ET01FeGNlcHRpb24vcHJvdG90eXBlLW9i
amVjdC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQ
VUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3Mi
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0i
Y29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Byb3RvdHlwZS1vYmplY3Qu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9kb20vRE9NRXhjZXB0aW9uL3Jlc291cmNlcy9wcm90b3R5cGUtb2JqZWN0LmpzCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0RPTUV4Y2VwdGlvbi9yZXNvdXJjZXMvcHJvdG90
eXBlLW9iamVjdC5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL0RPTUV4
Y2VwdGlvbi9yZXNvdXJjZXMvcHJvdG90eXBlLW9iamVjdC5qcwkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwxNiBAQAorZGVzY3JpcHRpb24oIkRPTUV4Y2VwdGlvbiBuZWVkcyBhIHJlYWwgcHJvdG90
eXBlOiBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjYzNyIpCisKK3Zh
ciBlOwordHJ5IHsKKyAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb2N1bWVudC5kb2N1bWVu
dEVsZW1lbnQpOworICAgLy8gcmFpc2VzIGEgSElFUkFSQ0hZX1JFUVVFU1RfRVJSCit9IGNhdGNo
IChlcnIpIHsKKyAgZSA9IGVycjsKK30KKworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJlLmNvbnN0
cnVjdG9yLnRvU3RyaW5nKCkiLCAiW29iamVjdCBET01Db3JlRXhjZXB0aW9uQ29uc3RydWN0b3Jd
Iik7CitzaG91bGRCZSgiZS5jb25zdHJ1Y3RvciIsICJ3aW5kb3cuRE9NRXhjZXB0aW9uIik7Citz
aG91bGRCZSgiZS5ISUVSQVJDSFlfUkVRVUVTVF9FUlIiLCAiZS5jb25zdHJ1Y3Rvci5ISUVSQVJD
SFlfUkVRVUVTVF9FUlIiKTsKK3Nob3VsZEJlKCJlLkhJRVJBUkNIWV9SRVFVRVNUX0VSUiIsICIz
Iik7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwo=
</data>
<flag name="review"
          id="7926"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>