<?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>127537</bug_id>
          
          <creation_ts>2014-01-23 19:54:07 -0800</creation_ts>
          <short_desc>Move ContentSearchUtils, ScriptBreakpoint, and ScriptDebugListener into JavaScriptCore for inspector</short_desc>
          <delta_ts>2014-01-23 22:08:09 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ggaren</cc>
    
    <cc>joepeck</cc>
    
    <cc>mark.lam</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>971475</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-01-23 19:54:07 -0800</bug_when>
    <thetext>More classes that need to move down into JavaScriptCore for ScriptDebugServer/InspectorDebuggerAgent.

Leave them mostly unedited (just cleaned up a bit with nullptr and ASCIILiteral). Move them to the Inspector namespace, and export via ForwardingHeaders.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971476</commentid>
    <comment_count>1</comment_count>
      <attachid>222070</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-01-23 20:05:02 -0800</bug_when>
    <thetext>Created attachment 222070
[PATCH] Proposed Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971477</commentid>
    <comment_count>2</comment_count>
      <attachid>222071</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-01-23 20:06:18 -0800</bug_when>
    <thetext>Created attachment 222071
[PATCH] For Bots 1

Proposed fix depends on others not yet landing. Adding a version that the bots can chew through in the meantime.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971514</commentid>
    <comment_count>3</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-01-23 22:08:09 -0800</bug_when>
    <thetext>Landed &lt;http://trac.webkit.org/changeset/162692&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222070</attachid>
            <date>2014-01-23 20:05:02 -0800</date>
            <delta_ts>2014-01-23 20:10:30 -0800</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>contentsearch.patch</filename>
            <type>text/plain</type>
            <size>62123</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjN2U3MmU4Li45YTFjNjk5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMjYsMTQgKzIyNiwxNSBAQCBz
ZXQoSmF2YVNjcmlwdENvcmVfU09VUkNFUwogICAgIGhlYXAvV3JpdGVCYXJyaWVyQnVmZmVyLmNw
cAogICAgIGhlYXAvV3JpdGVCYXJyaWVyU3VwcG9ydC5jcHAKIAotICAgIGluc3BlY3Rvci9JbnNw
ZWN0b3JBZ2VudFJlZ2lzdHJ5LmNwcAotICAgIGluc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kRGlz
cGF0Y2hlci5jcHAKLSAgICBpbnNwZWN0b3IvSW5zcGVjdG9yVmFsdWVzLmNwcAorICAgIGluc3Bl
Y3Rvci9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmNwcAogICAgIGluc3BlY3Rvci9JbmplY3RlZFNj
cmlwdC5jcHAKICAgICBpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRCYXNlLmNwcAogICAgIGluc3Bl
Y3Rvci9JbmplY3RlZFNjcmlwdEhvc3QuY3BwCiAgICAgaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0
TWFuYWdlci5jcHAKICAgICBpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRNb2R1bGUuY3BwCisgICAg
aW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwCisgICAgaW5zcGVjdG9yL0luc3Bl
Y3RvckJhY2tlbmREaXNwYXRjaGVyLmNwcAorICAgIGluc3BlY3Rvci9JbnNwZWN0b3JWYWx1ZXMu
Y3BwCiAgICAgaW5zcGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcAogICAgIGluc3BlY3Rv
ci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKICAgICBpbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckFnZW50LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggYzVmNDkyNS4u
ZjI3MjZiNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDMgQEAKIDIwMTQt
MDEtMjMgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAorICAgICAgICBN
b3ZlIENvbnRlbnRTZWFyY2hVdGlscywgU2NyaXB0QnJlYWtwb2ludCwgYW5kIFNjcmlwdERlYnVn
TGlzdGVuZXIgaW50byBKYXZhU2NyaXB0Q29yZSBmb3IgaW5zcGVjdG9yCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjc1MzcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAg
ICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogSmF2YVNjcmlwdENvcmUudmN4
cHJvai9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qOgorICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnZj
eHByb2ovSmF2YVNjcmlwdENvcmUudmN4cHJvai5maWx0ZXJzOgorICAgICAgICAqIEphdmFTY3Jp
cHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogaW5zcGVjdG9yL0Nv
bnRlbnRTZWFyY2hVdGlsaXRpZXMuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlscy5jcHAuCisgICAgICAgIChJbnNwZWN0b3I6OkNvbnRl
bnRTZWFyY2hVdGlsaXRpZXM6OmNyZWF0ZVNlYXJjaFJlZ2V4U291cmNlKToKKyAgICAgICAgKElu
c3BlY3Rvcjo6Q29udGVudFNlYXJjaFV0aWxpdGllczo6c2l6ZXRFeHRyYWN0b3IpOgorICAgICAg
ICAoSW5zcGVjdG9yOjpDb250ZW50U2VhcmNoVXRpbGl0aWVzOjp0ZXh0UG9zaXRpb25Gcm9tT2Zm
c2V0KToKKyAgICAgICAgKEluc3BlY3Rvcjo6Q29udGVudFNlYXJjaFV0aWxpdGllczo6Z2V0UmVn
dWxhckV4cHJlc3Npb25NYXRjaGVzQnlMaW5lcyk6CisgICAgICAgIChJbnNwZWN0b3I6OkNvbnRl
bnRTZWFyY2hVdGlsaXRpZXM6OmxpbmVFbmRpbmdzKToKKyAgICAgICAgKEluc3BlY3Rvcjo6Q29u
dGVudFNlYXJjaFV0aWxpdGllczo6YnVpbGRPYmplY3RGb3JTZWFyY2hNYXRjaCk6CisgICAgICAg
IChJbnNwZWN0b3I6OkNvbnRlbnRTZWFyY2hVdGlsaXRpZXM6OmNyZWF0ZVNlYXJjaFJlZ2V4KToK
KyAgICAgICAgKEluc3BlY3Rvcjo6Q29udGVudFNlYXJjaFV0aWxpdGllczo6Y291bnRSZWd1bGFy
RXhwcmVzc2lvbk1hdGNoZXMpOgorICAgICAgICAoSW5zcGVjdG9yOjpDb250ZW50U2VhcmNoVXRp
bGl0aWVzOjpzZWFyY2hJblRleHRCeUxpbmVzKToKKyAgICAgICAgKEluc3BlY3Rvcjo6Q29udGVu
dFNlYXJjaFV0aWxpdGllczo6c2NyaXB0Q29tbWVudFBhdHRlcm4pOgorICAgICAgICAoSW5zcGVj
dG9yOjpDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpzdHlsZXNoZWV0Q29tbWVudFBhdHRlcm4pOgor
ICAgICAgICAoSW5zcGVjdG9yOjpDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpmaW5kTWFnaWNDb21t
ZW50KToKKyAgICAgICAgKEluc3BlY3Rvcjo6Q29udGVudFNlYXJjaFV0aWxpdGllczo6ZmluZFNj
cmlwdFNvdXJjZVVSTCk6CisgICAgICAgIChJbnNwZWN0b3I6OkNvbnRlbnRTZWFyY2hVdGlsaXRp
ZXM6OmZpbmRTY3JpcHRTb3VyY2VNYXBVUkwpOgorICAgICAgICAoSW5zcGVjdG9yOjpDb250ZW50
U2VhcmNoVXRpbGl0aWVzOjpmaW5kU3R5bGVzaGVldFNvdXJjZU1hcFVSTCk6CisgICAgICAgICog
aW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlsaXRpZXMuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbHMuaC4KKyAgICAgICAgKiBpbnNwZWN0
b3IvU2NyaXB0QnJlYWtwb2ludC5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL1NjcmlwdEJyZWFrcG9pbnQuaC4KKyAgICAgICAgKEluc3BlY3Rvcjo6U2NyaXB0QnJlYWtw
b2ludEFjdGlvbjo6U2NyaXB0QnJlYWtwb2ludEFjdGlvbik6CisgICAgICAgIChJbnNwZWN0b3I6
OlNjcmlwdEJyZWFrcG9pbnQ6OlNjcmlwdEJyZWFrcG9pbnQpOgorICAgICAgICAqIGluc3BlY3Rv
ci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5oLgorICAgICAgICAoSW5zcGVjdG9yOjpTY3JpcHRE
ZWJ1Z0xpc3RlbmVyOjpTY3JpcHQ6OlNjcmlwdCk6CisgICAgICAgIChJbnNwZWN0b3I6OlNjcmlw
dERlYnVnTGlzdGVuZXI6On5TY3JpcHREZWJ1Z0xpc3RlbmVyKToKKyAgICAgICAgKiBydW50aW1l
L1JlZ0V4cC5jcHA6CisgICAgICAgIChKU0M6OlJlZ0V4cDo6bWF0Y2gpOgorCisyMDE0LTAxLTIz
ICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CisKICAgICAgICAgTW92ZSBS
ZWd1bGFyRXhwcmVzc2lvbiBpbnRvIEphdmFTY3JpcHRDb3JlIGZvciBpbnNwZWN0b3IKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzUyNgogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDkwNzkxZjYuLmE2MTI1
ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFt
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC02Mjcs
NiArNjI3LDggQEAgamF2YXNjcmlwdGNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ljdS91bmljb2RlL3V0Zl9vbGQuaCBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2lj
dS91bmljb2RlL3V0eXBlcy5oIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUv
dXZlcnNpb24uaCBcCisJU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9Db250ZW50U2Vh
cmNoVXRpbGl0aWVzLmNwcCBcCisJU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9Db250
ZW50U2VhcmNoVXRpbGl0aWVzLmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
SW5qZWN0ZWRTY3JpcHQuY3BwIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0lu
amVjdGVkU2NyaXB0LmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSW5qZWN0
ZWRTY3JpcHRCYXNlLmNwcCBcCkBAIC02NTEsNiArNjUzLDggQEAgamF2YXNjcmlwdGNvcmVfc291
cmNlcyArPSBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2Ny
aXB0SG9zdC5oIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSW5qZWN0ZWRT
Y3JpcHRIb3N0UHJvdG90eXBlLmNwcCBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5oIFwKKwlTb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL1NjcmlwdEJyZWFrcG9pbnQuaCBcCisJU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckFnZW50LmggXAogCVNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckFnZW50LmNwcCBcCiAJU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ludGVycHJldGVyL0Fic3RyYWN0UEMuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qL0phdmFTY3JpcHRDb3JlLnZj
eHByb2ogYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmN4cHJvai9KYXZh
U2NyaXB0Q29yZS52Y3hwcm9qCmluZGV4IDA1NTM1YTAuLmJhZmU4YjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qL0phdmFTY3JpcHRDb3Jl
LnZjeHByb2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjeHBy
b2ovSmF2YVNjcmlwdENvcmUudmN4cHJvagpAQCAtNDc1LDYgKzQ3NSw3IEBACiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxoZWFwXFdlYWtTZXQuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5caGVhcFxXcml0ZUJhcnJpZXJCdWZmZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5caGVhcFxXcml0ZUJhcnJpZXJTdXBwb3J0LmNwcCIgLz4KKyAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxDb250ZW50U2VhcmNoVXRpbGl0aWVzLmNwcCIgLz4K
ICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbmplY3RlZFNjcmlwdC5jcHAi
IC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5qZWN0ZWRTY3JpcHRC
YXNlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbmplY3Rl
ZFNjcmlwdEhvc3QuY3BwIiAvPgpAQCAtMTA0MSw2ICsxMDQyLDcgQEAKICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXGhlYXBcV2Vha1NldElubGluZXMuaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXGhlYXBcV3JpdGVCYXJyaWVyQnVmZmVyLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxoZWFwXFdyaXRlQmFycmllclN1cHBvcnQuaCIgLz4KKyAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXGluc3BlY3RvclxDb250ZW50U2VhcmNoVXRpbGl0aWVzLmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5qZWN0ZWRTY3JpcHQuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbmplY3RlZFNjcmlwdEJhc2UuaCIg
Lz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbmplY3RlZFNjcmlwdEhv
c3QuaCIgLz4KQEAgLTEwNTUsNiArMTA1Nyw4IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
LlxpbnNwZWN0b3JcSW5zcGVjdG9yVmFsdWVzLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxpbnNwZWN0b3JcSlNJbmplY3RlZFNjcmlwdEhvc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXGluc3BlY3RvclxKU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5oIiAv
PgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXFNjcmlwdEJyZWFrcG9pbnQu
aCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxTY3JpcHREZWJ1Z0xp
c3RlbmVyLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcYWdlbnRz
XEluc3BlY3RvckFnZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnRlcnBy
ZXRlclxBYnN0cmFjdFBDLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnRlcnBy
ZXRlclxDYWNoZWRDYWxsLmgiIC8+CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
SmF2YVNjcmlwdENvcmUudmN4cHJvai9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qLmZpbHRlcnMgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmN4cHJvai9KYXZhU2NyaXB0Q29y
ZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggOGIxNjFiNi4uMmVhOWYwNSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjeHByb2ovSmF2YVNjcmlwdENvcmUu
dmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29y
ZS52Y3hwcm9qL0phdmFTY3JpcHRDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMjg1LDYgKzI4NSw5
IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxoZWFwXFdyaXRlQmFycmllclN1cHBvcnQu
Y3BwIj4KICAgICAgIDxGaWx0ZXI+aGVhcDwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAg
IDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXENvbnRlbnRTZWFyY2hVdGlsaXRpZXMu
Y3BwIj4KKyAgICAgIDxGaWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CisgICAgPC9DbENvbXBpbGU+
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQWdlbnRSZWdp
c3RyeS5jcHAiPgogICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KICAgICA8L0NsQ29t
cGlsZT4KQEAgLTE3NjksNiArMTc3Miw5IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxo
ZWFwXFdyaXRlQmFycmllclN1cHBvcnQuaCI+CiAgICAgICA8RmlsdGVyPmhlYXA8L0ZpbHRlcj4K
ICAgICA8L0NsSW5jbHVkZT4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxD
b250ZW50U2VhcmNoVXRpbGl0aWVzLmgiPgorICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRl
cj4KKyAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3Rv
clxJbnNwZWN0b3JBZ2VudEJhc2UuaCI+CiAgICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVy
PgogICAgIDwvQ2xJbmNsdWRlPgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0ph
dmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA4YjU1
NzJlLi5iYjFjZTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlw
dENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtOTAwLDYgKzkw
MCw4IEBACiAJCUExNzEyQjQxMTFDN0IyMzUwMDdBNTMxNSAvKiBSZWdFeHBLZXkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNzEyQjQwMTFDN0IyMzUw
MDdBNTMxNSAvKiBSZWdFeHBLZXkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQlBMUEwMDlDMDE4MzFBMjJEMDBDRjg3MTEgLyogTWFjcm9Bc3NlbWJs
ZXJBUk02NC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
ODY0MDkyM0MxNTZFRUQzQjAwNTY2Q0IyIC8qIE1hY3JvQXNzZW1ibGVyQVJNNjQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlBMUEwMDlDMTE4MzFB
MjZFMDBDRjg3MTEgLyogQVJNNjRBc3NlbWJsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg2NDA5MjNCMTU2RUVEM0IwMDU2NkNCMiAvKiBBUk02NEFz
c2VtYmxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUE1MDNGQTIxMTg4RUZGNjgwMDExMEYxNCAvKiBTY3JpcHRCcmVha3BvaW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTAzRkExRjE4OEVGRjY4
MDAxMTBGMTQgLyogU2NyaXB0QnJlYWtwb2ludC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUE1MDNGQTIyMTg4RUZGNjgwMDExMEYxNCAvKiBTY3Jp
cHREZWJ1Z0xpc3RlbmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBNTAzRkEyMDE4OEVGRjY4MDAxMTBGMTQgLyogU2NyaXB0RGVidWdMaXN0ZW5lci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE1MTAw
N0MwMTg3Q0MzQzYwMEIzODg3OSAvKiBKU0dsb2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXIu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTUxMDA3
QkUxODdDQzNDNjAwQjM4ODc5IC8qIEpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5j
cHAgKi87IH07CiAJCUE1MTAwN0MxMTg3Q0MzQzYwMEIzODg3OSAvKiBKU0dsb2JhbE9iamVjdElu
c3BlY3RvckNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE1MTAwN0JGMTg3Q0MzQzYwMEIzODg3OSAvKiBKU0dsb2JhbE9iamVjdEluc3Bl
Y3RvckNvbnRyb2xsZXIuaCAqLzsgfTsKIAkJQTUxM0U1QjcxODVCOEJEMzAwN0U5NUFEIC8qIElu
amVjdGVkU2NyaXB0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE1MTNFNUI1MTg1QjhCRDMwMDdFOTVBRCAvKiBJbmplY3RlZFNjcmlwdC5jcHAgKi87
IH07CkBAIC05MzMsNiArOTM1LDggQEAKIAkJQTU1RDkzQUMxODUxNEY3OTAwNDAwREVEIC8qIElu
c3BlY3RvclR5cGVCdWlsZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBNTVEOTNBQjE4NTE0Rjc5MDA0MDBERUQgLyogSW5zcGVjdG9yVHlwZUJ1aWxk
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlB
NTdEMjNFRDE4OTFCNTU0MDAzMUM3RkEgLyogUmVndWxhckV4cHJlc3Npb24uY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU3RDIzRUIxODkxQjU1NDAw
MzFDN0ZBIC8qIFJlZ3VsYXJFeHByZXNzaW9uLmNwcCAqLzsgfTsKIAkJQTU3RDIzRUUxODkxQjU1
NDAwMzFDN0ZBIC8qIFJlZ3VsYXJFeHByZXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTdEMjNFQzE4OTFCNTU0MDAzMUM3RkEgLyogUmVndWxh
ckV4cHJlc3Npb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlBNTdEMjNGMTE4OTFCNUI0MDAzMUM3RkEgLyogQ29udGVudFNlYXJjaFV0aWxpdGll
cy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTdE
MjNFRjE4OTFCNUI0MDAzMUM3RkEgLyogQ29udGVudFNlYXJjaFV0aWxpdGllcy5jcHAgKi87IH07
CisJCUE1N0QyM0YyMTg5MUI1QjQwMDMxQzdGQSAvKiBDb250ZW50U2VhcmNoVXRpbGl0aWVzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTdEMjNGMDE4
OTFCNUI0MDAzMUM3RkEgLyogQ29udGVudFNlYXJjaFV0aWxpdGllcy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE1ODQwRTIwMTg3QjdCODYwMDg0
M0IxMCAvKiBJbmplY3RlZFNjcmlwdE1vZHVsZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTg0MEUxRTE4N0I3Qjg2MDA4NDNCMTAgLyogSW5qZWN0
ZWRTY3JpcHRNb2R1bGUuY3BwICovOyB9OwogCQlBNTg0MEUyMTE4N0I3Qjg2MDA4NDNCMTAgLyog
SW5qZWN0ZWRTY3JpcHRNb2R1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE1ODQwRTFGMTg3QjdCODYwMDg0M0IxMCAvKiBJbmplY3RlZFNjcmlwdE1v
ZHVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CUE1ODQwRTI3MTg3Qzk4MUUwMDg0M0IxMCAvKiBjc3NtaW4ucHkgaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTg0MEUyNjE4N0M5ODA3MDA4NDNCMTAgLyog
Y3NzbWluLnB5ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CkBAIC0yMjg2LDYgKzIyOTAsOCBAQAogCQlBMTcxMkIzQTExQzdCMjEyMDA3QTUzMTUgLyogUmVn
RXhwQ2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVnRXhw
Q2FjaGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTcxMkIzRTExQzdCMjI4
MDA3QTUzMTUgLyogUmVnRXhwQ2FjaGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUmVnRXhwQ2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTE3MTJCNDAx
MUM3QjIzNTAwN0E1MzE1IC8qIFJlZ0V4cEtleS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBSZWdFeHBLZXkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTUwM0ZB
MUYxODhFRkY2ODAwMTEwRjE0IC8qIFNjcmlwdEJyZWFrcG9pbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2NyaXB0QnJlYWtwb2ludC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBNTAzRkEyMDE4OEVGRjY4MDAxMTBGMTQgLyogU2NyaXB0RGVidWdMaXN0ZW5l
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JpcHREZWJ1Z0xpc3RlbmVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE1MTAwN0JFMTg3Q0MzQzYwMEIzODg3
OSAvKiBKU0dsb2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTUxMDA3QkYxODdDQzNDNjAwQjM4
ODc5IC8qIEpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0dsb2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTUxM0U1QjUxODVCOEJEMzAwN0U5NUFEIC8q
IEluamVjdGVkU2NyaXB0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEluamVjdGVkU2NyaXB0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIzMjQs
NiArMjMzMCw4IEBACiAJCUE1NUQ5M0FCMTg1MTRGNzkwMDQwMERFRCAvKiBJbnNwZWN0b3JUeXBl
QnVpbGRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JUeXBl
QnVpbGRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNTdEMjNFQjE4OTFCNTU0
MDAzMUM3RkEgLyogUmVndWxhckV4cHJlc3Npb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gUmVndWxhckV4cHJlc3Npb24uY3BwOyBwYXRoID0geWFyci9SZWd1bGFy
RXhwcmVzc2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE1N0QyM0VDMTg5
MUI1NTQwMDMxQzdGQSAvKiBSZWd1bGFyRXhwcmVzc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IG5hbWUgPSBSZWd1bGFyRXhwcmVzc2lvbi5oOyBwYXRoID0geWFyci9SZWd1bGFyRXhw
cmVzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTdEMjNFRjE4OTFCNUI0
MDAzMUM3RkEgLyogQ29udGVudFNlYXJjaFV0aWxpdGllcy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBDb250ZW50U2VhcmNoVXRpbGl0aWVzLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTU3RDIzRjAxODkxQjVCNDAwMzFDN0ZBIC8qIENvbnRlbnRT
ZWFyY2hVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGVu
dFNlYXJjaFV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNTg0MEUx
RTE4N0I3Qjg2MDA4NDNCMTAgLyogSW5qZWN0ZWRTY3JpcHRNb2R1bGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5qZWN0ZWRTY3JpcHRNb2R1bGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNTg0MEUxRjE4N0I3Qjg2MDA4NDNCMTAgLyogSW5q
ZWN0ZWRTY3JpcHRNb2R1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5q
ZWN0ZWRTY3JpcHRNb2R1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTU4NDBF
MjYxODdDOTgwNzAwODQzQjEwIC8qIGNzc21pbi5weSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuc2NyaXB0LnB5
dGhvbjsgcGF0aCA9IGNzc21pbi5weTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTQz
NzIsNiArNDM4MCw4IEBACiAJCQkJQTUxM0U1Q0MxODVGQjk5MjAwN0U5NUFEIC8qIGFnZW50cyAq
LywKIAkJCQlBNUJBMTVFMDE4MjM0MDlEMDBBODJFNjkgLyogcmVtb3RlICovLAogCQkJCUE1MzI0
MzhFMTg1Njk2Q0UwMDJFRDY5MiAvKiBzY3JpcHRzICovLAorCQkJCUE1N0QyM0VGMTg5MUI1QjQw
MDMxQzdGQSAvKiBDb250ZW50U2VhcmNoVXRpbGl0aWVzLmNwcCAqLywKKwkJCQlBNTdEMjNGMDE4
OTFCNUI0MDAzMUM3RkEgLyogQ29udGVudFNlYXJjaFV0aWxpdGllcy5oICovLAogCQkJCUE1MTNF
NUI1MTg1QjhCRDMwMDdFOTVBRCAvKiBJbmplY3RlZFNjcmlwdC5jcHAgKi8sCiAJCQkJQTUxM0U1
QjYxODVCOEJEMzAwN0U5NUFEIC8qIEluamVjdGVkU2NyaXB0LmggKi8sCiAJCQkJQTUxNEIyQzAx
ODVBNjg0NDAwRjNDN0NCIC8qIEluamVjdGVkU2NyaXB0QmFzZS5jcHAgKi8sCkBAIC00Mzk5LDYg
KzQ0MDksOCBAQAogCQkJCUE1MTNFNUJCMTg1QkZBQ0MwMDdFOTVBRCAvKiBKU0luamVjdGVkU2Ny
aXB0SG9zdC5oICovLAogCQkJCUE1MTNFNUJDMTg1QkZBQ0MwMDdFOTVBRCAvKiBKU0luamVjdGVk
U2NyaXB0SG9zdFByb3RvdHlwZS5jcHAgKi8sCiAJCQkJQTUxM0U1QkQxODVCRkFDQzAwN0U5NUFE
IC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlLmggKi8sCisJCQkJQTUwM0ZBMUYxODhF
RkY2ODAwMTEwRjE0IC8qIFNjcmlwdEJyZWFrcG9pbnQuaCAqLywKKwkJCQlBNTAzRkEyMDE4OEVG
RjY4MDAxMTBGMTQgLyogU2NyaXB0RGVidWdMaXN0ZW5lci5oICovLAogCQkJKTsKIAkJCXBhdGgg
PSBpbnNwZWN0b3I7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAtNDUyNSw2ICs0NTM3
LDcgQEAKIAkJCQk4NkUxMTZCMTBGRTc1QUM4MDBCNTEyQkMgLyogQ29kZUxvY2F0aW9uLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRkJEN0U2OTE0NDc5OTk2MDA0ODEzMTUgLyogQ29kZU9yaWdpbi5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMEYyMUMyN0QxNEJFNzI3QTAwQURDNjRCIC8qIENvZGVTcGVj
aWFsaXphdGlvbktpbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1MDNGQTIxMTg4RUZGNjgwMDEx
MEYxNCAvKiBTY3JpcHRCcmVha3BvaW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjBCODNBNzE0
QkNGNTA3MDA4ODVCNEYgLyogQ29kZVR5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMThDM0Yz
MEUxNkY1Q0QwMEIzNDQ2MCAvKiBDb21tb25JZGVudGlmaWVycy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMEYxNUYxNUYxNEI3QTczRTAwNURFMzdEIC8qIENvbW1vblNsb3dQYXRocy5oIGluIEhlYWRl
cnMgKi8sCkBAIC00OTY4LDYgKzQ5ODEsNyBAQAogCQkJCTg2RDNCMkM2MTAxNTZCREUwMDI4NjVF
NyAvKiBNYWNyb0Fzc2VtYmxlckFSTS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODZBREQxNDYwRkRE
RUE5ODAwMDZFRUMyIC8qIE1hY3JvQXNzZW1ibGVyQVJNdjcuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTg2M0IyM0UwMEZDNjExODkwMDcwM0FBNCAvKiBNYWNyb0Fzc2VtYmxlckNvZGVSZWYuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUE1N0QyM0YyMTg5MUI1QjQwMDMxQzdGQSAvKiBDb250ZW50U2VhcmNo
VXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNTMyNDM4QTE4NTY4MzM1MDAyRUQ2OTIg
LyogSW5zcGVjdG9ySlNGcm9udGVuZERpc3BhdGNoZXJzLmggaW4gSGVhZGVycyAqLywKIAkJCQk4
NkM1NjhFMTExQTIxM0VFMDAwN0Y3RjAgLyogTWFjcm9Bc3NlbWJsZXJNSVBTLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk4NkFFNjRBOTEzNUU1RTFDMDA5NjMwMTIgLyogTWFjcm9Bc3NlbWJsZXJTSDQu
aCBpbiBIZWFkZXJzICovLApAQCAtNDk5Myw2ICs1MDA3LDcgQEAKIAkJCQk4NkM1NjhFMjExQTIx
M0VFMDAwN0Y3RjAgLyogTUlQU0Fzc2VtYmxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODZFQkYz
MDAxNTYwRjA2QTAwOEU5MjIyIC8qIE5hbWVDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQTc5MERENkUxODJGNDk5NzAwNTg4ODA3IC8qIFNldEl0ZXJhdG9yUHJvdG90eXBlLmggaW4g
SGVhZGVycyAqLywKKwkJCQlBNTAzRkEyMjE4OEVGRjY4MDAxMTBGMTQgLyogU2NyaXB0RGVidWdM
aXN0ZW5lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODZFQkYzMDIxNTYwRjA2QTAwOEU5MjIyIC8q
IE5hbWVJbnN0YW5jZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODZFQkYzMDQxNTYwRjA2QTAwOEU5
MjIyIC8qIE5hbWVQcm90b3R5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMDJFOTExMEUxODM5
REIwMDBGOTI5NyAvKiBOYXRpdmVFcnJvckNvbnN0cnVjdG9yLmggaW4gSGVhZGVycyAqLywKQEAg
LTU5OTIsNiArNjAwNyw3IEBACiAJCQkJMEZGNzI5QjIxNjZBRDM1QzAwMEY1QkEzIC8qIFByb2Zp
bGVyRGF0YWJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZGNzI5QjMxNjZBRDM1QzAwMEY1
QkEzIC8qIFByb2ZpbGVyT3JpZ2luLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGRjcyOUI0MTY2
QUQzNUMwMDBGNUJBMyAvKiBQcm9maWxlck9yaWdpblN0YWNrLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCUE1N0QyM0YxMTg5MUI1QjQwMDMxQzdGQSAvKiBDb250ZW50U2VhcmNoVXRpbGl0aWVzLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUMyRkNBRTEwMTdBOUMyNEUwMDM0QzczNSAvKiBCeXRlY29k
ZUJhc2ljQmxvY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMEY2NjZFQ0MxODM2QjM3RTAwRDAx
N0YxIC8qIERGR1Jlc3VycmVjdGlvbkZvclZhbGlkYXRpb25QaGFzZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQkwRkIxMDU4QjE2NzU0ODMxMDBGOEFCNkUgLyogUHJvZmlsZXJPU1JFeGl0LmNwcCBp
biBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0NvbnRl
bnRTZWFyY2hVdGlscy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0NvbnRl
bnRTZWFyY2hVdGlsaXRpZXMuY3BwCnNpbWlsYXJpdHkgaW5kZXggOTAlCnJlbmFtZSBmcm9tIFNv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbHMuY3BwCnJlbmFtZSB0byBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlsaXRpZXMuY3Bw
CmluZGV4IGM1YTYwMWUuLjJiNTI5NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9Db250ZW50U2VhcmNoVXRpbHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxpdGllcy5jcHAKQEAgLTI3LDI2ICsyNywyMyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJDb250ZW50U2VhcmNoVXRpbGl0
aWVzLmgiCiAKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQogCi0jaW5jbHVkZSAiQ29udGVudFNlYXJj
aFV0aWxzLmgiCi0jaW5jbHVkZSA8aW5zcGVjdG9yL0luc3BlY3RvckpTVHlwZUJ1aWxkZXJzLmg+
Ci0jaW5jbHVkZSA8aW5zcGVjdG9yL0luc3BlY3RvclZhbHVlcy5oPgorI2luY2x1ZGUgIkluc3Bl
Y3RvckpTVHlwZUJ1aWxkZXJzLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yVmFsdWVzLmgiCisjaW5j
bHVkZSAiUmVndWxhckV4cHJlc3Npb24uaCIKKyNpbmNsdWRlICJZYXJyLmgiCiAjaW5jbHVkZSA8
d3RmL0J1bXBQb2ludGVyQWxsb2NhdG9yLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5o
PgotI2luY2x1ZGUgPHlhcnIvUmVndWxhckV4cHJlc3Npb24uaD4KLSNpbmNsdWRlIDx5YXJyL1lh
cnIuaD4KIAotdXNpbmcgbmFtZXNwYWNlIEluc3BlY3RvcjsKK3VzaW5nIG5hbWVzcGFjZSBKU0M6
OllhcnI7CiAKLW5hbWVzcGFjZSBXZWJDb3JlIHsKLW5hbWVzcGFjZSBDb250ZW50U2VhcmNoVXRp
bHMgeworbmFtZXNwYWNlIEluc3BlY3RvciB7CituYW1lc3BhY2UgQ29udGVudFNlYXJjaFV0aWxp
dGllcyB7CiAKLW5hbWVzcGFjZSB7Ci0vLyBUaGlzIHNob3VsZCBiZSBrZXB0IHRoZSBzYW1lIGFz
IHRoZSBvbmUgaW4gZnJvbnQtZW5kL3V0aWxpdGllcy5qcwogc3RhdGljIGNvbnN0IGNoYXIgcmVn
ZXhTcGVjaWFsQ2hhcmFjdGVyc1tdID0gIltdKCl7fSstKi4sP1xcXiR8IjsKLX0KIAogc3RhdGlj
IFN0cmluZyBjcmVhdGVTZWFyY2hSZWdleFNvdXJjZShjb25zdCBTdHJpbmcmIHRleHQpCiB7CkBA
IC0xNTgsNyArMTU1LDcgQEAgUGFzc1JlZlB0cjxJbnNwZWN0b3I6OlR5cGVCdWlsZGVyOjpBcnJh
eTxJbnNwZWN0b3I6OlR5cGVCdWlsZGVyOjpHZW5lcmljVHlwZXM6OlMKIHsKICAgICBSZWZQdHI8
SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6QXJyYXk8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6R2Vu
ZXJpY1R5cGVzOjpTZWFyY2hNYXRjaD4+IHJlc3VsdCA9IEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6
OkFycmF5PEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6OkdlbmVyaWNUeXBlczo6U2VhcmNoTWF0Y2g+
OjpjcmVhdGUoKTsKIAotICAgIEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb24gcmVnZXggPSBD
b250ZW50U2VhcmNoVXRpbHM6OmNyZWF0ZVNlYXJjaFJlZ2V4KHF1ZXJ5LCBjYXNlU2Vuc2l0aXZl
LCBpc1JlZ2V4KTsKKyAgICBKU0M6OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9uIHJlZ2V4ID0gQ29u
dGVudFNlYXJjaFV0aWxpdGllczo6Y3JlYXRlU2VhcmNoUmVnZXgocXVlcnksIGNhc2VTZW5zaXRp
dmUsIGlzUmVnZXgpOwogICAgIFZlY3RvcjxzdGQ6OnBhaXI8aW50LCBTdHJpbmc+PiBtYXRjaGVz
ID0gZ2V0UmVndWxhckV4cHJlc3Npb25NYXRjaGVzQnlMaW5lcyhyZWdleCwgdGV4dCk7CiAKICAg
ICBmb3IgKFZlY3RvcjxzdGQ6OnBhaXI8aW50LCBTdHJpbmc+Pjo6Y29uc3RfaXRlcmF0b3IgaXQg
PSBtYXRjaGVzLmJlZ2luKCk7IGl0ICE9IG1hdGNoZXMuZW5kKCk7ICsraXQpCkBAIC0xOTQsMjYg
KzE5MSwyNyBAQCBzdGF0aWMgU3RyaW5nIGZpbmRNYWdpY0NvbW1lbnQoY29uc3QgU3RyaW5nJiBj
b250ZW50LCBjb25zdCBTdHJpbmcmIHBhdHRlcm5TdHJpbgogICAgIHVuc2lnbmVkIHJlc3VsdCA9
IEpTQzo6WWFycjo6aW50ZXJwcmV0KGJ5dGVjb2RlUGF0dGVybi5nZXQoKSwgY29udGVudCwgMCwg
cmVpbnRlcnByZXRfY2FzdDx1bnNpZ25lZCo+KG1hdGNoZXMuZGF0YSgpKSk7CiAgICAgaWYgKHJl
c3VsdCA9PSBKU0M6OllhcnI6Om9mZnNldE5vTWF0Y2gpCiAgICAgICAgIHJldHVybiBTdHJpbmco
KTsKKwogICAgIEFTU0VSVChtYXRjaGVzWzJdID4gMCAmJiBtYXRjaGVzWzNdID4gMCk7CiAgICAg
cmV0dXJuIGNvbnRlbnQuc3Vic3RyaW5nKG1hdGNoZXNbMl0sIG1hdGNoZXNbM10gLSBtYXRjaGVz
WzJdKTsKIH0KIAogU3RyaW5nIGZpbmRTY3JpcHRTb3VyY2VVUkwoY29uc3QgU3RyaW5nJiBjb250
ZW50KQogewotICAgIHJldHVybiBmaW5kTWFnaWNDb21tZW50KGNvbnRlbnQsIHNjcmlwdENvbW1l
bnRQYXR0ZXJuKCJzb3VyY2VVUkwiKSk7CisgICAgcmV0dXJuIGZpbmRNYWdpY0NvbW1lbnQoY29u
dGVudCwgc2NyaXB0Q29tbWVudFBhdHRlcm4oQVNDSUlMaXRlcmFsKCJzb3VyY2VVUkwiKSkpOwog
fQogCiBTdHJpbmcgZmluZFNjcmlwdFNvdXJjZU1hcFVSTChjb25zdCBTdHJpbmcmIGNvbnRlbnQp
CiB7Ci0gICAgcmV0dXJuIGZpbmRNYWdpY0NvbW1lbnQoY29udGVudCwgc2NyaXB0Q29tbWVudFBh
dHRlcm4oInNvdXJjZU1hcHBpbmdVUkwiKSk7CisgICAgcmV0dXJuIGZpbmRNYWdpY0NvbW1lbnQo
Y29udGVudCwgc2NyaXB0Q29tbWVudFBhdHRlcm4oQVNDSUlMaXRlcmFsKCJzb3VyY2VNYXBwaW5n
VVJMIikpKTsKIH0KIAogU3RyaW5nIGZpbmRTdHlsZXNoZWV0U291cmNlTWFwVVJMKGNvbnN0IFN0
cmluZyYgY29udGVudCkKIHsKLSAgICByZXR1cm4gZmluZE1hZ2ljQ29tbWVudChjb250ZW50LCBz
dHlsZXNoZWV0Q29tbWVudFBhdHRlcm4oInNvdXJjZU1hcHBpbmdVUkwiKSk7CisgICAgcmV0dXJu
IGZpbmRNYWdpY0NvbW1lbnQoY29udGVudCwgc3R5bGVzaGVldENvbW1lbnRQYXR0ZXJuKEFTQ0lJ
TGl0ZXJhbCgic291cmNlTWFwcGluZ1VSTCIpKSk7CiB9CiAKLX0gLy8gbmFtZXNwYWNlIENvbnRl
bnRTZWFyY2hVdGlscworfSAvLyBuYW1lc3BhY2UgQ29udGVudFNlYXJjaFV0aWxpdGllcwogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKElOU1BFQ1RPUikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbHMuaCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxpdGllcy5oCnNp
bWlsYXJpdHkgaW5kZXggNTglCnJlbmFtZSBmcm9tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9D
b250ZW50U2VhcmNoVXRpbHMuaApyZW5hbWUgdG8gU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmgKaW5kZXggNDBjODEwYy4uM2VhYTA2NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlscy5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxpdGll
cy5oCkBAIC0yNiwxMiArMjYsMTIgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBD
b250ZW50U2VhcmNoVXRpbHNfaAotI2RlZmluZSBDb250ZW50U2VhcmNoVXRpbHNfaAorI2lmbmRl
ZiBDb250ZW50U2VhcmNoVXRpbGl0aWVzX2gKKyNkZWZpbmUgQ29udGVudFNlYXJjaFV0aWxpdGll
c19oCiAKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQogCi0jaW5jbHVkZSAiSW5zcGVjdG9yV2ViVHlw
ZUJ1aWxkZXJzLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9ySlNUeXBlQnVpbGRlcnMuaCIKICNpbmNs
dWRlIDx3dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFBvc2l0aW9uLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkBAIC00MCwyMyArNDAsMjQgQEAgbmFtZXNw
YWNlIEpTQyB7IG5hbWVzcGFjZSBZYXJyIHsKIGNsYXNzIFJlZ3VsYXJFeHByZXNzaW9uOwogfSB9
CiAKLW5hbWVzcGFjZSBXZWJDb3JlIHsKK25hbWVzcGFjZSBJbnNwZWN0b3IgewogCi1uYW1lc3Bh
Y2UgQ29udGVudFNlYXJjaFV0aWxzIHsKK25hbWVzcGFjZSBDb250ZW50U2VhcmNoVXRpbGl0aWVz
IHsKIAotSlNDOjpZYXJyOjpSZWd1bGFyRXhwcmVzc2lvbiBjcmVhdGVTZWFyY2hSZWdleChjb25z
dCBTdHJpbmcmIHF1ZXJ5LCBib29sIGNhc2VTZW5zaXRpdmUsIGJvb2wgaXNSZWdleCk7Ci1pbnQg
Y291bnRSZWd1bGFyRXhwcmVzc2lvbk1hdGNoZXMoY29uc3QgSlNDOjpZYXJyOjpSZWd1bGFyRXhw
cmVzc2lvbiYsIGNvbnN0IFN0cmluZyYpOwotUGFzc1JlZlB0cjxJbnNwZWN0b3I6OlR5cGVCdWls
ZGVyOjpBcnJheTxJbnNwZWN0b3I6OlR5cGVCdWlsZGVyOjpHZW5lcmljVHlwZXM6OlNlYXJjaE1h
dGNoPj4gc2VhcmNoSW5UZXh0QnlMaW5lcyhjb25zdCBTdHJpbmcmIHRleHQsIGNvbnN0IFN0cmlu
ZyYgcXVlcnksIGNvbnN0IGJvb2wgY2FzZVNlbnNpdGl2ZSwgY29uc3QgYm9vbCBpc1JlZ2V4KTsK
LVRleHRQb3NpdGlvbiB0ZXh0UG9zaXRpb25Gcm9tT2Zmc2V0KHNpemVfdCBvZmZzZXQsIGNvbnN0
IFZlY3RvcjxzaXplX3Q+JiBsaW5lRW5kaW5ncyk7Ci1QYXNzT3duUHRyPFZlY3RvcjxzaXplX3Q+
PiBsaW5lRW5kaW5ncyhjb25zdCBTdHJpbmcmKTsKK0pTX0VYUE9SVF9QUklWQVRFIEpTQzo6WWFy
cjo6UmVndWxhckV4cHJlc3Npb24gY3JlYXRlU2VhcmNoUmVnZXgoY29uc3QgU3RyaW5nJiBxdWVy
eSwgYm9vbCBjYXNlU2Vuc2l0aXZlLCBib29sIGlzUmVnZXgpOworSlNfRVhQT1JUX1BSSVZBVEUg
aW50IGNvdW50UmVndWxhckV4cHJlc3Npb25NYXRjaGVzKGNvbnN0IEpTQzo6WWFycjo6UmVndWxh
ckV4cHJlc3Npb24mLCBjb25zdCBTdHJpbmcmKTsKK0pTX0VYUE9SVF9QUklWQVRFIFBhc3NSZWZQ
dHI8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6QXJyYXk8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6
R2VuZXJpY1R5cGVzOjpTZWFyY2hNYXRjaD4+IHNlYXJjaEluVGV4dEJ5TGluZXMoY29uc3QgU3Ry
aW5nJiB0ZXh0LCBjb25zdCBTdHJpbmcmIHF1ZXJ5LCBjb25zdCBib29sIGNhc2VTZW5zaXRpdmUs
IGNvbnN0IGJvb2wgaXNSZWdleCk7CitKU19FWFBPUlRfUFJJVkFURSBUZXh0UG9zaXRpb24gdGV4
dFBvc2l0aW9uRnJvbU9mZnNldChzaXplX3Qgb2Zmc2V0LCBjb25zdCBWZWN0b3I8c2l6ZV90PiYg
bGluZUVuZGluZ3MpOworSlNfRVhQT1JUX1BSSVZBVEUgUGFzc093blB0cjxWZWN0b3I8c2l6ZV90
Pj4gbGluZUVuZGluZ3MoY29uc3QgU3RyaW5nJik7CiAKLVN0cmluZyBmaW5kU2NyaXB0U291cmNl
VVJMKGNvbnN0IFN0cmluZyYgY29udGVudCk7Ci1TdHJpbmcgZmluZFNjcmlwdFNvdXJjZU1hcFVS
TChjb25zdCBTdHJpbmcmIGNvbnRlbnQpOwotU3RyaW5nIGZpbmRTdHlsZXNoZWV0U291cmNlTWFw
VVJMKGNvbnN0IFN0cmluZyYgY29udGVudCk7CitKU19FWFBPUlRfUFJJVkFURSBTdHJpbmcgZmlu
ZFNjcmlwdFNvdXJjZVVSTChjb25zdCBTdHJpbmcmIGNvbnRlbnQpOworSlNfRVhQT1JUX1BSSVZB
VEUgU3RyaW5nIGZpbmRTY3JpcHRTb3VyY2VNYXBVUkwoY29uc3QgU3RyaW5nJiBjb250ZW50KTsK
K0pTX0VYUE9SVF9QUklWQVRFIFN0cmluZyBmaW5kU3R5bGVzaGVldFNvdXJjZU1hcFVSTChjb25z
dCBTdHJpbmcmIGNvbnRlbnQpOwogCi19IC8vIG5hbWVzcGFjZSBDb250ZW50U2VhcmNoVXRpbHMK
LX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKK30gLy8gbmFtZXNwYWNlIENvbnRlbnRTZWFyY2hVdGls
aXRpZXMKKworfSAvLyBuYW1lc3BhY2UgSW5zcGVjdG9yCiAKICNlbmRpZiAvLyBFTkFCTEUoSU5T
UEVDVE9SKQogCi0jZW5kaWYgLy8gIWRlZmluZWQoQ29udGVudFNlYXJjaFV0aWxzX2gpCisjZW5k
aWYgLy8gIWRlZmluZWQoQ29udGVudFNlYXJjaFV0aWxpdGllc19oKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1NjcmlwdEJyZWFrcG9pbnQuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvU2NyaXB0QnJlYWtwb2ludC5oCnNpbWlsYXJpdHkgaW5kZXggOTgl
CnJlbmFtZSBmcm9tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9TY3JpcHRCcmVha3BvaW50LmgK
cmVuYW1lIHRvIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvU2NyaXB0QnJlYWtwb2lu
dC5oCmluZGV4IDE1N2YxZWYuLmUzZDUyNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9TY3JpcHRCcmVha3BvaW50LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9TY3JpcHRCcmVha3BvaW50LmgKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRlIDx3
dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKLW5hbWVzcGFj
ZSBXZWJDb3JlIHsKK25hbWVzcGFjZSBJbnNwZWN0b3IgewogCiB0eXBlZGVmIGVudW0gewogICAg
IFNjcmlwdEJyZWFrcG9pbnRBY3Rpb25UeXBlTG9nLApAQCAtODQsNiArODQsNiBAQCBzdHJ1Y3Qg
U2NyaXB0QnJlYWtwb2ludCB7CiAgICAgYm9vbCBhdXRvQ29udGludWU7CiB9OwogCi19IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCit9IC8vIG5hbWVzcGFjZSBJbnNwZWN0b3IKIAogI2VuZGlmIC8vICFk
ZWZpbmVkKFNjcmlwdEJyZWFrcG9pbnRfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5z
cGVjdG9yL1NjcmlwdERlYnVnTGlzdGVuZXIuaApzaW1pbGFyaXR5IGluZGV4IDk3JQpyZW5hbWUg
ZnJvbSBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5oCnJlbmFt
ZSB0byBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL1NjcmlwdERlYnVnTGlzdGVuZXIu
aAppbmRleCAyYTQyNGZmLi43M2Y4NTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5oCkBAIC0zMiw3ICszMiw3IEBACiAKICNpZiBF
TkFCTEUoSkFWQVNDUklQVF9ERUJVR0dFUikKIAotI2luY2x1ZGUgPGRlYnVnZ2VyL0RlYnVnZ2Vy
Lmg+CisjaW5jbHVkZSAiZGVidWdnZXIvRGVidWdnZXIuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2Fy
ZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00MCw3ICs0MCw3IEBA
IG5hbWVzcGFjZSBEZXByZWNhdGVkIHsKIGNsYXNzIFNjcmlwdFZhbHVlOwogfQogCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7CituYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAogY2xhc3MgU2NyaXB0RGVidWdM
aXN0ZW5lciB7CiBwdWJsaWM6CkBAIC03NSw3ICs3NSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IHZvaWQgZGlkQ29udGludWUoKSA9IDA7CiB9OwogCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCit9
IC8vIG5hbWVzcGFjZSBJbnNwZWN0b3IKIAogI2VuZGlmIC8vIEVOQUJMRShKQVZBU0NSSVBUX0RF
QlVHR0VSKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcAppbmRleCA2
YzAwNDA5Li4zMGMxMDVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWdFeHAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cC5j
cHAKQEAgLTM1Miw4ICszNTIsOCBAQCBpbnQgUmVnRXhwOjptYXRjaChWTSYgdm0sIGNvbnN0IFN0
cmluZyYgcywgdW5zaWduZWQgc3RhcnRPZmZzZXQsIFZlY3RvcjxpbnQsIDMyPgogICAgIC8vIFRo
ZSBvZmZzZXQgdmVjdG9yIGhhbmRsaW5nIG5lZWRzIHRvIGNoYW5nZSBhcyB3ZWxsLgogICAgIC8v
IFJpZ2h0IG5vdyB3ZSBjb252ZXJ0IGEgbWF0Y2ggd2hlcmUgdGhlIG9mZnNldHMgb3ZlcmZsb3dl
ZCBpbnRvIG1hdGNoIGZhaWx1cmUuCiAgICAgLy8gVGhlcmUgYXJlIHR3byBwbGFjZXMgaW4gV2Vi
Q29yZSB0aGF0IGNhbGwgdGhlIGludGVycHJldGVyIGRpcmVjdGx5IHRoYXQgbmVlZCB0bwotICAg
IC8vIGhhdmUgdGhlaXIgb2Zmc2V0cyBjaGFuZ2VkIHRvIGludCBhcyB3ZWxsLiBUaGV5IGFyZSBw
bGF0Zm9ybS90ZXh0L1JlZ3VsYXJFeHByZXNzaW9uLmNwcAotICAgIC8vIGFuZCBpbnNwZWN0b3Iv
Q29udGVudFNlYXJjaFV0aWxzLmNwcC4KKyAgICAvLyBoYXZlIHRoZWlyIG9mZnNldHMgY2hhbmdl
ZCB0byBpbnQgYXMgd2VsbC4gVGhleSBhcmUgeWFyci9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKKyAg
ICAvLyBhbmQgaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlsaXRpZXMuY3BwCiAgICAgaWYgKHMu
bGVuZ3RoKCkgPiBJTlRfTUFYKSB7CiAgICAgICAgIGJvb2wgb3ZlcmZsb3dlZCA9IGZhbHNlOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDczM2NiNDYuLmI1M2U2MzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlz
dHMudHh0CkBAIC0xNTcyLDcgKzE1NzIsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgaW5z
cGVjdG9yL0NvbW1hbmRMaW5lQVBJSG9zdC5jcHAKICAgICBpbnNwZWN0b3IvQ29tbWFuZExpbmVB
UElNb2R1bGUuY3BwCiAgICAgaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmNwcAotICAgIGluc3Bl
Y3Rvci9Db250ZW50U2VhcmNoVXRpbHMuY3BwCiAgICAgaW5zcGVjdG9yL0RPTUVkaXRvci5jcHAK
ICAgICBpbnNwZWN0b3IvRE9NUGF0Y2hTdXBwb3J0LmNwcAogICAgIGluc3BlY3Rvci9JZGVudGlm
aWVyc0ZhY3RvcnkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjU0MTVjMC4uMTcyMGQwZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZwpAQCAtMSw1ICsxLDQ4IEBACiAyMDE0LTAxLTIzICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFy
b0BhcHBsZS5jb20+CiAKKyAgICAgICAgTW92ZSBDb250ZW50U2VhcmNoVXRpbHMsIFNjcmlwdEJy
ZWFrcG9pbnQsIGFuZCBTY3JpcHREZWJ1Z0xpc3RlbmVyIGludG8gSmF2YVNjcmlwdENvcmUgZm9y
IGluc3BlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTI3NTM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgICAtIFJlbmFtZSBDb250ZW50U2VhcmNoVXRpbHMgPT4gQ29udGVudFNlYXJjaFV0aWxpdGll
cyBhbmQgbW92ZSB0byBKYXZhU2NyaXB0Q29yZS4KKyAgICAgICAgICAtIE1vdmUgU2NyaXB0QnJl
YWtwb2ludCBhbmQgU2NyaXB0RGVidWdMaXN0ZW5lciB0byBKYXZhU2NyaXB0Q29yZS4KKyAgICAg
ICAgICAtIE1vdmUgdGhlbSBhbGwgdG8gbmFtZXNwYWNlIEluc3BlY3Rvci4KKyAgICAgICAgICAt
IFVwZGF0ZSBidWlsZCBmaWxlcyBhbmQgdXNlcnMgdG8gdGhlIG5ldyBuYW1lcy4KKworICAgICAg
ICBObyBjaGFuZ2UgaW4gZnVuY3Rpb25hbGl0eSwganVzdCBtb3ZpbmcgY29kZS4KKworICAgICAg
ICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEZvcndhcmRpbmdIZWFkZXJzL2luc3BlY3Rv
ci9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmg6IEFkZGVkLgorICAgICAgICAqIEZvcndhcmRpbmdI
ZWFkZXJzL2luc3BlY3Rvci9TY3JpcHRCcmVha3BvaW50Lmg6IEFkZGVkLgorICAgICAgICAqIEZv
cndhcmRpbmdIZWFkZXJzL2luc3BlY3Rvci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmg6IEFkZGVkLgor
ICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hw
cm9qLmZpbHRlcnM6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL1BhZ2VTY3JpcHREZWJ1Z1NlcnZlci5jcHA6CisgICAg
ICAgICogYmluZGluZ3MvanMvUGFnZVNjcmlwdERlYnVnU2VydmVyLmg6CisgICAgICAgICogYmlu
ZGluZ3MvanMvU2NyaXB0RGVidWdTZXJ2ZXIuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1Nj
cmlwdERlYnVnU2VydmVyLmg6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyU2NyaXB0RGVi
dWdTZXJ2ZXIuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlclNjcmlwdERlYnVnU2Vy
dmVyLmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckFsbEluT25lLmNwcDoKKyAgICAg
ICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpzZWFyY2hJbkNvbnRlbnQpOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6c291cmNlTWFwVVJMRm9yU2NyaXB0KToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmRpZFBhcnNlU291cmNl
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oOgorICAgICAg
ICAqIGluc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yUGFnZUFnZW50Ojpzb3VyY2VNYXBVUkxGb3JSZXNvdXJjZSk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JQYWdlQWdlbnQ6OnNlYXJjaEluUmVzb3VyY2UpOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpzZWFyY2hJblJlc291cmNlcyk6CisgICAgICAg
ICogaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
YnVpbGRTb3VyY2VSYW5nZU9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHls
ZVNoZWV0OjpsaW5lRW5kaW5ncyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHlsZVNo
ZWV0Rm9ySW5saW5lU3R5bGU6OmxpbmVFbmRpbmdzKToKKworMjAxNC0wMS0yMyAgSm9zZXBoIFBl
Y29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCiAgICAgICAgIE1vdmUgUmVndWxhckV4cHJl
c3Npb24gaW50byBKYXZhU2NyaXB0Q29yZSBmb3IgaW5zcGVjdG9yCiAgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjc1MjYKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvRm9yd2FyZGluZ0hlYWRlcnMvaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGls
aXRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL2luc3BlY3Rvci9Db250
ZW50U2VhcmNoVXRpbGl0aWVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
OGVlZTEyNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL0ZvcndhcmRpbmdIZWFk
ZXJzL2luc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmgKQEAgLTAsMCArMSw0IEBACisj
aWZuZGVmIFdlYkNvcmVfRldEX0NvbnRlbnRTZWFyY2hVdGlsaXRpZXNfaAorI2RlZmluZSBXZWJD
b3JlX0ZXRF9Db250ZW50U2VhcmNoVXRpbGl0aWVzX2gKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29y
ZS9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmg+CisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL2luc3BlY3Rvci9TY3JpcHRCcmVha3BvaW50LmggYi9T
b3VyY2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9pbnNwZWN0b3IvU2NyaXB0QnJlYWtwb2lu
dC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE5ZGU0MjUKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9pbnNwZWN0b3IvU2Ny
aXB0QnJlYWtwb2ludC5oCkBAIC0wLDAgKzEsNCBAQAorI2lmbmRlZiBXZWJDb3JlX0ZXRF9TY3Jp
cHRCcmVha3BvaW50X2gKKyNkZWZpbmUgV2ViQ29yZV9GV0RfU2NyaXB0QnJlYWtwb2ludF9oCisj
aW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvU2NyaXB0QnJlYWtwb2ludC5oPgorI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9pbnNwZWN0b3IvU2NyaXB0
RGVidWdMaXN0ZW5lci5oIGIvU291cmNlL1dlYkNvcmUvRm9yd2FyZGluZ0hlYWRlcnMvaW5zcGVj
dG9yL1NjcmlwdERlYnVnTGlzdGVuZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5lYzZmZWE3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvRm9yd2FyZGlu
Z0hlYWRlcnMvaW5zcGVjdG9yL1NjcmlwdERlYnVnTGlzdGVuZXIuaApAQCAtMCwwICsxLDQgQEAK
KyNpZm5kZWYgV2ViQ29yZV9GV0RfU2NyaXB0RGVidWdMaXN0ZW5lcl9oCisjZGVmaW5lIFdlYkNv
cmVfRldEX1NjcmlwdERlYnVnTGlzdGVuZXJfaAorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1Nj
cmlwdERlYnVnTGlzdGVuZXIuaD4KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
R05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0K
aW5kZXggZDVmMWQ1YS4uNjRmODcyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBA
IC0zNzY1LDggKzM3NjUsNiBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9Db25zb2xlQVBJVHlwZXMuaCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0NvbnNvbGVNZXNzYWdlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0NvbnNvbGVN
ZXNzYWdlLmggXAotCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbHMu
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmggXAog
CVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9ET01FZGl0b3IuY3BwIFwKIAlTb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvRE9NRWRpdG9yLmggXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9ET01Q
YXRjaFN1cHBvcnQuY3BwIFwKQEAgLTM4NjQsMTIgKzM4NjIsMTAgQEAgd2ViY29yZV9zb3VyY2Vz
ICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvUGFnZVJ1bnRpbWVBZ2VudC5oIFwKIAlT
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvU2NyaXB0QXJndW1lbnRzLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL1NjcmlwdEFyZ3VtZW50cy5oIFwKLQlTb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvU2NyaXB0QnJlYWtwb2ludC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvU2Ny
aXB0Q2FsbEZyYW1lLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1NjcmlwdENhbGxG
cmFtZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvU2NyaXB0Q2FsbFN0YWNrLmNwcCBc
CiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1NjcmlwdENhbGxTdGFjay5oIFwKLQlTb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5oIFwKIAlTb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvVGltZWxpbmVSZWNvcmRGYWN0b3J5LmNwcCBcCiAJU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFjdG9yeS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvV29ya2VyQ29uc29sZUFnZW50LmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagppbmRleCBlNDY2ZGZiLi5lNzU2ZTFmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKQEAgLTE3NTg0
LDE0ICsxNzU4NCw2IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5caW5zcGVjdG9yXENvbnRlbnRTZWFyY2hVdGlscy5jcHAiPgotICAgICAgPEV4Y2x1ZGVkRnJv
bUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFz
ZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1
aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXx4
NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBD
b25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fp
cm98V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21C
dWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2Vf
V2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9k
dWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9k
dWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgIDwvQ2xDb21waWxlPgog
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXERPTUVkaXRvci5jcHAiPgogICAg
ICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAg
PEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nUmVsZWFzZXx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KQEAgLTIwOTI1LDcg
KzIwOTE3LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxDb21tYW5k
TGluZUFQSUhvc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxD
b21tYW5kTGluZUFQSU1vZHVsZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5z
cGVjdG9yXENvbnNvbGVNZXNzYWdlLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxp
bnNwZWN0b3JcQ29udGVudFNlYXJjaFV0aWxzLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxpbnNwZWN0b3JcRE9NRWRpdG9yLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
LlxpbnNwZWN0b3JcRE9NUGF0Y2hTdXBwb3J0LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxpbnNwZWN0b3JcSWRlbnRpZmllcnNGYWN0b3J5LmgiIC8+CkBAIC0yMDk3OCwxMCArMjA5
NjksOCBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXFBhZ2VJbmplY3Rl
ZFNjcmlwdE1hbmFnZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3Rv
clxQYWdlUnVudGltZUFnZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNw
ZWN0b3JcU2NyaXB0QXJndW1lbnRzLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxp
bnNwZWN0b3JcU2NyaXB0QnJlYWtwb2ludC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5caW5zcGVjdG9yXFNjcmlwdENhbGxGcmFtZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5caW5zcGVjdG9yXFNjcmlwdENhbGxTdGFjay5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5caW5zcGVjdG9yXFNjcmlwdERlYnVnTGlzdGVuZXIuaCIgLz4KICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxUaW1lbGluZVJlY29yZEZhY3RvcnkuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxXb3JrZXJDb25zb2xlQWdlbnQuaCIg
Lz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxXb3JrZXJEZWJ1Z2dlckFn
ZW50LmgiIC8+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggZDQ1ZDY5YWEuLmNjNjEwZGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRl
cnMKQEAgLTQ3MzQsOSArNDczNCw2IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNw
ZWN0b3JcQ29uc29sZU1lc3NhZ2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+aW5zcGVjdG9yPC9GaWx0
ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0
b3JcQ29udGVudFNlYXJjaFV0aWxzLmNwcCI+Ci0gICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmls
dGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVj
dG9yXERPTUVkaXRvci5jcHAiPgogICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KICAg
ICA8L0NsQ29tcGlsZT4KQEAgLTEyMjY5LDkgKzEyMjY2LDYgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXGluc3BlY3RvclxDb25zb2xlTWVzc2FnZS5oIj4KICAgICAgIDxGaWx0ZXI+aW5z
cGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxpbnNwZWN0b3JcQ29udGVudFNlYXJjaFV0aWxzLmgiPgotICAgICAgPEZpbHRlcj5pbnNw
ZWN0b3I8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXGluc3BlY3RvclxET01FZGl0b3IuaCI+CiAgICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmls
dGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTI0MjgsMTggKzEyNDIyLDEyIEBACiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcU2NyaXB0QXJndW1lbnRzLmgiPgogICAgICAg
PEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxTY3JpcHRCcmVha3BvaW50LmgiPgotICAgICAgPEZp
bHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXGluc3BlY3RvclxTY3JpcHRDYWxsRnJhbWUuaCI+CiAgICAgICA8RmlsdGVy
Pmluc3BlY3RvcjwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5caW5zcGVjdG9yXFNjcmlwdENhbGxTdGFjay5oIj4KICAgICAgIDxGaWx0ZXI+aW5z
cGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxpbnNwZWN0b3JcU2NyaXB0RGVidWdMaXN0ZW5lci5oIj4KLSAgICAgIDxGaWx0ZXI+aW5z
cGVjdG9yPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxpbnNwZWN0b3JcVGltZWxpbmVSZWNvcmRGYWN0b3J5LmgiPgogICAgICAgPEZpbHRlcj5p
bnNwZWN0b3I8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA1MjAxMjZmLi4wNmIwNWYw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0xOTgwLDggKzE5ODAsNiBAQAogCQk1OTA1QURDMDEzMDJGM0NFMDBGMTE2REYgLyog
WE1MVHJlZVZpZXdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTkwNUFEQkUxMzAyRjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuaCAqLzsgfTsK
IAkJNTkwRTFCNDkxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uRGF0YS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkwRTFCNDgxMUU0
RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uRGF0YS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTU5MEUxQjRCMTFFNEVGNzAwMDY5Rjc4
NCAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkwRTFCNEExMUU0RUY3MDAwNjlGNzg0IC8q
IEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAgKi87IH07Ci0JCTU5MTAyRkJCMTQz
MjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkxMDJGQjkxNDMyN0QzQjAwM0M5RDA0IC8q
IENvbnRlbnRTZWFyY2hVdGlscy5jcHAgKi87IH07Ci0JCTU5MTAyRkJDMTQzMjdEM0IwMDNDOUQw
NCAvKiBDb250ZW50U2VhcmNoVXRpbHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDU5MTAyRkJBMTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNo
VXRpbHMuaCAqLzsgfTsKIAkJNTkxM0EyNDExM0Q0OUVCQTAwRjVCMDVDIC8qIElkZW50aWZpZXJz
RmFjdG9yeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1OTEzQTIzRjEzRDQ5RUJBMDBGNUIwNUMgLyogSWRlbnRpZmllcnNGYWN0b3J5LmNwcCAqLzsg
fTsKIAkJNTkxM0EyNDIxM0Q0OUVCQTAwRjVCMDVDIC8qIElkZW50aWZpZXJzRmFjdG9yeS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkxM0EyNDAxM0Q0
OUVCQTAwRjVCMDVDIC8qIElkZW50aWZpZXJzRmFjdG9yeS5oICovOyB9OwogCQk1OTMwOUExMTEx
RjRBRTU4MDAyNTA2MDMgLyogRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5MzA5QTEwMTFGNEFFNTgw
MDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwICovOyB9OwpAQCAtMjI4
Myw4ICsyMjgxLDYgQEAKIAkJN0FDRDg4RDQxNEMwOEJENjAwODRFREQyIC8qIEluc3BlY3Rvcklu
ZGV4ZWREQkFnZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3QUNEODhEMjE0QzA4QkQ2MDA4NEVERDIgLyogSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQu
aCAqLzsgfTsKIAkJN0FERTcyMjYxMENCQkI5QjAwNkIzQjNBIC8qIENvbnRleHRNZW51UHJvdmlk
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBREU3
MjI1MTBDQkJCOUIwMDZCM0IzQSAvKiBDb250ZXh0TWVudVByb3ZpZGVyLmggKi87IH07CiAJCTdB
RjExQTVBMTJFNzI3NDkwMDYxRjIzQyAvKiBJbnNwZWN0b3JSdW50aW1lQWdlbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBRjExQTU5MTJFNzI3NDkw
MDYxRjIzQyAvKiBJbnNwZWN0b3JSdW50aW1lQWdlbnQuaCAqLzsgfTsKLQkJN0FGRDRBOEIxMTMx
QzI3NjAwMzVCODgzIC8qIFNjcmlwdEJyZWFrcG9pbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBRkQ0QThBMTEzMUMyNzYwMDM1Qjg4MyAvKiBTY3Jp
cHRCcmVha3BvaW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKLQkJN0FGRDRGRjQxMTMyNzdCNjAwMzVCODgzIC8qIFNjcmlwdERlYnVnTGlzdGVuZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBRkQ0RkYz
MTEzMjc3QjYwMDM1Qjg4MyAvKiBTY3JpcHREZWJ1Z0xpc3RlbmVyLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0JFNzQyNzM4MUZBOTA2RkJCNEYw
RjJDIC8qIEpTU1ZHR3JhcGhpY3NFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5NTBDNEMwMkJFRDg5MzZGODE4RTJGOTkgLyogSlNTVkdHcmFw
aGljc0VsZW1lbnQuaCAqLzsgfTsKIAkJN0MyQkREM0QxN0M3Rjk4QzAwMzhGRjE1IC8qIEpTRE9N
R2xvYmFsT2JqZWN0VGFzay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QzJCREQzQjE3QzdGOThCMDAzOEZGMTUgLyogSlNET01HbG9iYWxPYmplY3RU
YXNrLmNwcCAqLzsgfTsKIAkJN0MyQkREM0UxN0M3Rjk4QzAwMzhGRjE1IC8qIEpTRE9NR2xvYmFs
T2JqZWN0VGFzay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gN0MyQkREM0MxN0M3Rjk4QjAwMzhGRjE1IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oICov
OyB9OwpAQCAtODkwMSw4ICs4ODk3LDYgQEAKIAkJNTkwNUFEQkUxMzAyRjNDRTAwRjExNkRGIC8q
IFhNTFRyZWVWaWV3ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWE1MVHJl
ZVZpZXdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTBFMUI0ODExRTRFRjRC
MDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1OTBFMUI0QTExRTRFRjcwMDA2OUY3ODQgLyogSlNEZXZpY2VPcmllbnRhdGlv
bkV2ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTU5MTAyRkI5MTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29udGVudFNlYXJjaFV0aWxz
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTkxMDJGQkExNDMyN0QzQjAwM0M5
RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDb250ZW50U2VhcmNoVXRpbHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTkxM0EyM0YxM0Q0OUVCQTAwRjVCMDVDIC8qIElkZW50aWZpZXJzRmFjdG9yeS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJZGVudGlmaWVyc0ZhY3RvcnkuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTEzQTI0MDEzRDQ5RUJBMDBGNUIwNUMgLyog
SWRlbnRpZmllcnNGYWN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElk
ZW50aWZpZXJzRmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTMwOUEx
MDExRjRBRTU4MDAyNTA2MDMgLyogRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uQ2xpZW50
TW9jay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MjM2LDggKzkyMzAsNiBA
QAogCQk3QUNEODhEMjE0QzA4QkQ2MDA4NEVERDIgLyogSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9ySW5kZXhlZERCQWdl
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FERTcyMjUxMENCQkI5QjAwNkIz
QjNBIC8qIENvbnRleHRNZW51UHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ29udGV4dE1lbnVQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk3QUYxMUE1OTEyRTcyNzQ5MDA2MUYyM0MgLyogSW5zcGVjdG9yUnVudGltZUFnZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvclJ1bnRpbWVBZ2VudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3QUZENEE4QTExMzFDMjc2MDAzNUI4ODMgLyog
U2NyaXB0QnJlYWtwb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3Jp
cHRCcmVha3BvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdBRkQ0RkYzMTEz
Mjc3QjYwMDM1Qjg4MyAvKiBTY3JpcHREZWJ1Z0xpc3RlbmVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFNjcmlwdERlYnVnTGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJN0MyQkREM0IxN0M3Rjk4QjAwMzhGRjE1IC8qIEpTRE9NR2xvYmFsT2JqZWN0
VGFzay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTUdsb2Jh
bE9iamVjdFRhc2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QzJCREQzQzE3
QzdGOThCMDAzOEZGMTUgLyogSlNET01HbG9iYWxPYmplY3RUYXNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3QzUyMkQ0OTE1QjQ3N0U4MDA5QjdDOTUgLyogSW5zcGVjdG9yT3Zl
cmxheS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JP
dmVybGF5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE0ODA4LDggKzE0ODAw
LDYgQEAKIAkJCQkyREYyRTlENDE2NkUzOTc0MDAzNUJFRjIgLyogQ29uc29sZUFQSVR5cGVzLmgg
Ki8sCiAJCQkJNDFGMDYxOEQwRjVGMDY5ODAwQTA3RUFDIC8qIENvbnNvbGVNZXNzYWdlLmNwcCAq
LywKIAkJCQk0MUYwNjE4QzBGNUYwNjk4MDBBMDdFQUMgLyogQ29uc29sZU1lc3NhZ2UuaCAqLywK
LQkJCQk1OTEwMkZCOTE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmNwcCAq
LywKLQkJCQk1OTEwMkZCQTE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmgg
Ki8sCiAJCQkJN0FBQkEyNTcxNEJDNjEzMzAwQUE5QTExIC8qIERPTUVkaXRvci5jcHAgKi8sCiAJ
CQkJN0FBQkEyNTgxNEJDNjEzMzAwQUE5QTExIC8qIERPTUVkaXRvci5oICovLAogCQkJCTdBNTQ4
ODE2MTRFNDMyQTEwMDZBRTA1QSAvKiBET01QYXRjaFN1cHBvcnQuY3BwICovLApAQCAtMTQ5MTMs
MTIgKzE0OTAzLDEwIEBACiAJCQkJRjM4MjA4OEQxNDdEMzVGOTAwMTBCQzA2IC8qIFBhZ2VSdW50
aW1lQWdlbnQuaCAqLywKIAkJCQlGMzlCRTk1OTEyNjczQkY0MDBFMEE2NzQgLyogU2NyaXB0QXJn
dW1lbnRzLmNwcCAqLywKIAkJCQlGMzlCRTk1QTEyNjczQkY0MDBFMEE2NzQgLyogU2NyaXB0QXJn
dW1lbnRzLmggKi8sCi0JCQkJN0FGRDRBOEExMTMxQzI3NjAwMzVCODgzIC8qIFNjcmlwdEJyZWFr
cG9pbnQuaCAqLywKIAkJCQk0MTZFNzVDQTBFREY5MEM3MDAzNjBFMUQgLyogU2NyaXB0Q2FsbEZy
YW1lLmNwcCAqLywKIAkJCQk0MTZFNzVDOTBFREY5MEM3MDAzNjBFMUQgLyogU2NyaXB0Q2FsbEZy
YW1lLmggKi8sCiAJCQkJNDE2RTc1QkQwRURGOEZENzAwMzYwRTFEIC8qIFNjcmlwdENhbGxTdGFj
ay5jcHAgKi8sCiAJCQkJNDE2RTc1QkMwRURGOEZENzAwMzYwRTFEIC8qIFNjcmlwdENhbGxTdGFj
ay5oICovLAotCQkJCTdBRkQ0RkYzMTEzMjc3QjYwMDM1Qjg4MyAvKiBTY3JpcHREZWJ1Z0xpc3Rl
bmVyLmggKi8sCiAJCQkJOUZBMzdFRUYxMTcyRkQ0MTAwQzRDRDU1IC8qIFNjcmlwdFByb2ZpbGUu
aWRsICovLAogCQkJCTlGQTM3RUYwMTE3MkZENDEwMEM0Q0Q1NSAvKiBTY3JpcHRQcm9maWxlTm9k
ZS5pZGwgKi8sCiAJCQkJNzU1M0NGRTcxMDhGNDczRjAwRUEyODFFIC8qIFRpbWVsaW5lUmVjb3Jk
RmFjdG9yeS5jcHAgKi8sCkBAIC0yMjkyNyw3ICsyMjkxNSw2IEBACiAJCQkJQkM1RUI5ODEwRTgy
MDcyNTAwQjI1OTY1IC8qIENvbnRlbnREYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQk1N0I3OTFB
NDE0QzZBNjI5MDBGMjAyRDEgLyogQ29udGVudERpc3RyaWJ1dG9yLmggaW4gSGVhZGVycyAqLywK
IAkJCQkyOTE5QTFFOTE2QjMzNzY2MDA3ODcyMTMgLyogQ29udGVudEZpbHRlci5oIGluIEhlYWRl
cnMgKi8sCi0JCQkJNTkxMDJGQkMxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGls
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdDNDcxREMxMkY5MjVCRDAwODYzNTRCIC8qIENvbnRl
bnRTZWN1cml0eVBvbGljeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDFEMDE1Q0EwRjRCNUM3MTAw
NEE2NjJGIC8qIENvbnRlbnRUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzYyN0I4RTE0RkIz
Q0VFMDAyQ0RDQTEgLyogQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICov
LApAQCAtMjUxNTksMTMgKzI1MTQ2LDExIEBACiAJCQkJQkNFQzAxQkUwQzI3NERBQzAwOUY0RUM5
IC8qIFNjcmVlbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg0RDgyQzExMUQzNDc0ODAwOTcyOTkw
IC8qIFNjcmlwdGFibGVEb2N1bWVudFBhcnNlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjM5QkU5
NUMxMjY3M0JGNDAwRTBBNjc0IC8qIFNjcmlwdEFyZ3VtZW50cy5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJN0FGRDRBOEIxMTMxQzI3NjAwMzVCODgzIC8qIFNjcmlwdEJyZWFrcG9pbnQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTQxRjFEMjFGMEVGMzVDMkEwMERBODc1MyAvKiBTY3JpcHRDYWNoZWRGcmFt
ZURhdGEuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNkU3NUNCMEVERjkwQzcwMDM2MEUxRCAvKiBT
Y3JpcHRDYWxsRnJhbWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNkU3NUJFMEVERjhGRDcwMDM2
MEUxRCAvKiBTY3JpcHRDYWxsU3RhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUYzOTIyNDlEMTI2
RjExQUUwMEE5MjZEOSAvKiBTY3JpcHRDYWxsU3RhY2tGYWN0b3J5LmggaW4gSGVhZGVycyAqLywK
IAkJCQk5M0I3MEQ3MDA5RUIwQzdDMDA5RDg0NjggLyogU2NyaXB0Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJN0FGRDRGRjQxMTMyNzdCNjAwMzVCODgzIC8qIFNjcmlwdERlYnVnTGlz
dGVuZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTlGNkZDMTk3MTEyMkU4MkEwMEU4MDE5NiAvKiBT
Y3JpcHREZWJ1Z1NlcnZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDk5OEFFRDIxM0ZCMjI0RDAw
OTBCMUFBIC8qIFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMDhBNDg0NzgwRTUyNzJDNTAwQzNGRTc2IC8qIFNjcmlwdEVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovLApAQCAtMjY1MzYsNyArMjY1MjEsNiBAQAogCQkJCTUxRDcxOUQwMTgxMTA2RTAwMDE2REM1
MSAvKiBJREJFdmVudERpc3BhdGNoZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTdCNzkxQTMx
NEM2QTYyOTAwRjIwMkQxIC8qIENvbnRlbnREaXN0cmlidXRvci5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkyOTE5QTFFQjE2QjMzNzg5MDA3ODcyMTMgLyogQ29udGVudEZpbHRlck1hYy5tbSBpbiBT
b3VyY2VzICovLAotCQkJCTU5MTAyRkJCMTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNo
VXRpbHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdDNDcxREIxMkY5MjVCRDAwODYzNTRCIC8q
IENvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0MUQwMTVDQjBG
NEI1QzcxMDA0QTY2MkYgLyogQ29udGVudFR5cGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTc2
MjdCOEQxNEZCM0NFRTAwMkNEQ0ExIC8qIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyLmNwcCBp
biBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUGFn
ZVNjcmlwdERlYnVnU2VydmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1BhZ2VT
Y3JpcHREZWJ1Z1NlcnZlci5jcHAKaW5kZXggODQwNjc4Zi4uMDZiNjY2ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUGFnZVNjcmlwdERlYnVnU2VydmVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9QYWdlU2NyaXB0RGVidWdTZXJ2ZXIuY3BwCkBA
IC0zMCwxMSArMzAsMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFC
TEUoSkFWQVNDUklQVF9ERUJVR0dFUikKLQogI2luY2x1ZGUgIlBhZ2VTY3JpcHREZWJ1Z1NlcnZl
ci5oIgogCisjaWYgRU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdHRVIpCisKICNpbmNsdWRlICJEb2N1
bWVudC5oIgogI2luY2x1ZGUgIkV2ZW50TG9vcC5oIgogI2luY2x1ZGUgIkZyYW1lVmlldy5oIgpA
QCAtNDQsNyArNDMsNiBAQAogI2luY2x1ZGUgIlBhZ2VHcm91cC5oIgogI2luY2x1ZGUgIlBsdWdp
blZpZXcuaCIKICNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCi0jaW5jbHVkZSAiU2NyaXB0
RGVidWdMaXN0ZW5lci5oIgogI2luY2x1ZGUgIldpZGdldC5oIgogI2luY2x1ZGUgPHJ1bnRpbWUv
SlNMb2NrLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KQEAgLTU4LDYgKzU2LDcgQEAK
ICNlbmRpZgogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwordXNpbmcgbmFtZXNwYWNlIEluc3BlY3Rv
cjsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9QYWdlU2NyaXB0RGVidWdTZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1BhZ2VTY3JpcHREZWJ1Z1NlcnZlci5oCmluZGV4IDU2N2VkOTEuLjQ3YTE3ZDkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1BhZ2VTY3JpcHREZWJ1Z1NlcnZl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1BhZ2VTY3JpcHREZWJ1Z1NlcnZl
ci5oCkBAIC00OCw4ICs0OCw4IEBAIGNsYXNzIFBhZ2VTY3JpcHREZWJ1Z1NlcnZlciA6IHB1Ymxp
YyBTY3JpcHREZWJ1Z1NlcnZlciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhZ2VTY3JpcHREZWJ1
Z1NlcnZlciYgc2hhcmVkKCk7CiAKLSAgICB2b2lkIGFkZExpc3RlbmVyKFNjcmlwdERlYnVnTGlz
dGVuZXIqLCBQYWdlKik7Ci0gICAgdm9pZCByZW1vdmVMaXN0ZW5lcihTY3JpcHREZWJ1Z0xpc3Rl
bmVyKiwgUGFnZSosIGJvb2wgc2tpcFJlY29tcGlsZSk7CisgICAgdm9pZCBhZGRMaXN0ZW5lcihJ
bnNwZWN0b3I6OlNjcmlwdERlYnVnTGlzdGVuZXIqLCBQYWdlKik7CisgICAgdm9pZCByZW1vdmVM
aXN0ZW5lcihJbnNwZWN0b3I6OlNjcmlwdERlYnVnTGlzdGVuZXIqLCBQYWdlKiwgYm9vbCBza2lw
UmVjb21waWxlKTsKIAogICAgIHZpcnR1YWwgdm9pZCByZWNvbXBpbGVBbGxKU0Z1bmN0aW9ucygp
IG92ZXJyaWRlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3Jp
cHREZWJ1Z1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHREZWJ1
Z1NlcnZlci5jcHAKaW5kZXggNDAzZGZlOS4uNDdjZTZlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvU2NyaXB0RGVidWdTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1NjcmlwdERlYnVnU2VydmVyLmNwcApAQCAtNTEsNiArNTEsNyBAQAog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwor
dXNpbmcgbmFtZXNwYWNlIEluc3BlY3RvcjsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHREZWJ1Z1NlcnZlci5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0RGVidWdTZXJ2ZXIuaAppbmRleCA5MzU0
MGFlLi5kNDhmZDE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3Jp
cHREZWJ1Z1NlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdERl
YnVnU2VydmVyLmgKQEAgLTMyLDEwICszMiwxMCBAQAogCiAjaWYgRU5BQkxFKEpBVkFTQ1JJUFRf
REVCVUdHRVIpCiAKLSNpbmNsdWRlICJTY3JpcHRCcmVha3BvaW50LmgiCi0jaW5jbHVkZSAiU2Ny
aXB0RGVidWdMaXN0ZW5lci5oIgogI2luY2x1ZGUgPGJpbmRpbmdzL1NjcmlwdE9iamVjdC5oPgog
I2luY2x1ZGUgPGRlYnVnZ2VyL0RlYnVnZ2VyLmg+CisjaW5jbHVkZSA8aW5zcGVjdG9yL1Njcmlw
dEJyZWFrcG9pbnQuaD4KKyNpbmNsdWRlIDxpbnNwZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5o
PgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CkBAIC01NCwxMyArNTQsMTMgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogY2xhc3MgU2NyaXB0RGVidWdTZXJ2ZXIgOiBwdWJsaWMgSlNDOjpEZWJ1Z2dlciB7CiAg
ICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoU2NyaXB0RGVidWdTZXJ2ZXIpOyBXVEZfTUFLRV9GQVNU
X0FMTE9DQVRFRDsKIHB1YmxpYzoKLSAgICBKU0M6OkJyZWFrcG9pbnRJRCBzZXRCcmVha3BvaW50
KEpTQzo6U291cmNlSUQsIGNvbnN0IFNjcmlwdEJyZWFrcG9pbnQmLCB1bnNpZ25lZCogYWN0dWFs
TGluZU51bWJlciwgdW5zaWduZWQqIGFjdHVhbENvbHVtbk51bWJlcik7CisgICAgSlNDOjpCcmVh
a3BvaW50SUQgc2V0QnJlYWtwb2ludChKU0M6OlNvdXJjZUlELCBjb25zdCBJbnNwZWN0b3I6OlNj
cmlwdEJyZWFrcG9pbnQmLCB1bnNpZ25lZCogYWN0dWFsTGluZU51bWJlciwgdW5zaWduZWQqIGFj
dHVhbENvbHVtbk51bWJlcik7CiAgICAgdm9pZCByZW1vdmVCcmVha3BvaW50KEpTQzo6QnJlYWtw
b2ludElEKTsKICAgICB2b2lkIGNsZWFyQnJlYWtwb2ludHMoKTsKIAogICAgIHZpcnR1YWwgdm9p
ZCByZWNvbXBpbGVBbGxKU0Z1bmN0aW9ucygpID0gMDsKIAotICAgIGNvbnN0IFZlY3RvcjxTY3Jp
cHRCcmVha3BvaW50QWN0aW9uPiYgZ2V0QWN0aW9uc0ZvckJyZWFrcG9pbnQoSlNDOjpCcmVha3Bv
aW50SUQpOworICAgIGNvbnN0IFZlY3RvcjxJbnNwZWN0b3I6OlNjcmlwdEJyZWFrcG9pbnRBY3Rp
b24+JiBnZXRBY3Rpb25zRm9yQnJlYWtwb2ludChKU0M6OkJyZWFrcG9pbnRJRCk7CiAKICAgICBj
bGFzcyBUYXNrIHsKICAgICAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CkBAIC03MCw4ICs3
MCw4IEBAIHB1YmxpYzoKICAgICB9OwogCiBwcm90ZWN0ZWQ6Ci0gICAgdHlwZWRlZiBIYXNoU2V0
PFNjcmlwdERlYnVnTGlzdGVuZXIqPiBMaXN0ZW5lclNldDsKLSAgICB0eXBlZGVmIHZvaWQgKFNj
cmlwdERlYnVnU2VydmVyOjoqSmF2YVNjcmlwdEV4ZWN1dGlvbkNhbGxiYWNrKShTY3JpcHREZWJ1
Z0xpc3RlbmVyKik7CisgICAgdHlwZWRlZiBIYXNoU2V0PEluc3BlY3Rvcjo6U2NyaXB0RGVidWdM
aXN0ZW5lcio+IExpc3RlbmVyU2V0OworICAgIHR5cGVkZWYgdm9pZCAoU2NyaXB0RGVidWdTZXJ2
ZXI6OipKYXZhU2NyaXB0RXhlY3V0aW9uQ2FsbGJhY2spKEluc3BlY3Rvcjo6U2NyaXB0RGVidWdM
aXN0ZW5lciopOwogCiAgICAgU2NyaXB0RGVidWdTZXJ2ZXIoYm9vbCBpc0luV29ya2VyVGhyZWFk
ID0gZmFsc2UpOwogICAgIH5TY3JpcHREZWJ1Z1NlcnZlcigpOwpAQCAtODQsMTIgKzg0LDEyIEBA
IHByb3RlY3RlZDoKIAogICAgIHZpcnR1YWwgYm9vbCBpc0NvbnRlbnRTY3JpcHQoSlNDOjpFeGVj
U3RhdGUqKTsKIAotICAgIGJvb2wgZXZhbHVhdGVCcmVha3BvaW50QWN0aW9uKGNvbnN0IFNjcmlw
dEJyZWFrcG9pbnRBY3Rpb24mKTsKKyAgICBib29sIGV2YWx1YXRlQnJlYWtwb2ludEFjdGlvbihj
b25zdCBJbnNwZWN0b3I6OlNjcmlwdEJyZWFrcG9pbnRBY3Rpb24mKTsKIAogICAgIHZvaWQgZGlz
cGF0Y2hGdW5jdGlvblRvTGlzdGVuZXJzKEphdmFTY3JpcHRFeGVjdXRpb25DYWxsYmFjaywgSlND
OjpKU0dsb2JhbE9iamVjdCopOwogICAgIHZvaWQgZGlzcGF0Y2hGdW5jdGlvblRvTGlzdGVuZXJz
KGNvbnN0IExpc3RlbmVyU2V0JiBsaXN0ZW5lcnMsIEphdmFTY3JpcHRFeGVjdXRpb25DYWxsYmFj
ayBjYWxsYmFjayk7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFBhdXNlKFNjcmlwdERlYnVnTGlzdGVu
ZXIqKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ29udGludWUoU2NyaXB0RGVidWdMaXN0ZW5lciop
OworICAgIHZvaWQgZGlzcGF0Y2hEaWRQYXVzZShJbnNwZWN0b3I6OlNjcmlwdERlYnVnTGlzdGVu
ZXIqKTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ29udGludWUoSW5zcGVjdG9yOjpTY3JpcHREZWJ1
Z0xpc3RlbmVyKik7CiAgICAgdm9pZCBkaXNwYXRjaERpZFBhcnNlU291cmNlKGNvbnN0IExpc3Rl
bmVyU2V0JiBsaXN0ZW5lcnMsIEpTQzo6U291cmNlUHJvdmlkZXIqLCBib29sIGlzQ29udGVudFNj
cmlwdCk7CiAgICAgdm9pZCBkaXNwYXRjaEZhaWxlZFRvUGFyc2VTb3VyY2UoY29uc3QgTGlzdGVu
ZXJTZXQmIGxpc3RlbmVycywgSlNDOjpTb3VyY2VQcm92aWRlciosIGludCBlcnJvckxpbmUsIGNv
bnN0IFN0cmluZyYgZXJyb3JNZXNzYWdlKTsKICAgICB2b2lkIGRpc3BhdGNoRGlkU2FtcGxlUHJv
YmUoSlNDOjpFeGVjU3RhdGUqLCBpbnQgcHJvYmVJZGVudGlmaWVyLCBjb25zdCBEZXByZWNhdGVk
OjpTY3JpcHRWYWx1ZSYgc2FtcGxlKTsKQEAgLTk3LDcgKzk3LDcgQEAgcHJvdGVjdGVkOgogICAg
IGJvb2wgbV9kb25lUHJvY2Vzc2luZ0RlYnVnZ2VyRXZlbnRzOwogCiBwcml2YXRlOgotICAgIHR5
cGVkZWYgVmVjdG9yPFNjcmlwdEJyZWFrcG9pbnRBY3Rpb24+IEJyZWFrcG9pbnRBY3Rpb25zOwor
ICAgIHR5cGVkZWYgVmVjdG9yPEluc3BlY3Rvcjo6U2NyaXB0QnJlYWtwb2ludEFjdGlvbj4gQnJl
YWtwb2ludEFjdGlvbnM7CiAgICAgdHlwZWRlZiBIYXNoTWFwPEpTQzo6QnJlYWtwb2ludElELCBC
cmVha3BvaW50QWN0aW9ucz4gQnJlYWtwb2ludElEVG9BY3Rpb25zTWFwOwogCiAgICAgdmlydHVh
bCB2b2lkIHNvdXJjZVBhcnNlZChKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6U291cmNlUHJvdmlkZXIq
LCBpbnQgZXJyb3JMaW5lLCBjb25zdCBTdHJpbmcmIGVycm9yTXNnKSBvdmVycmlkZSBmaW5hbDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlclNjcmlwdERlYnVn
U2VydmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlclNjcmlwdERlYnVn
U2VydmVyLmNwcAppbmRleCA2OTUxYmZkLi41MzE5ZTRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJTY3JpcHREZWJ1Z1NlcnZlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyU2NyaXB0RGVidWdTZXJ2ZXIuY3BwCkBAIC0zMCwx
MCArMzAsMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoSkFW
QVNDUklQVF9ERUJVR0dFUikKICNpbmNsdWRlICJXb3JrZXJTY3JpcHREZWJ1Z1NlcnZlci5oIgog
CisjaWYgRU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdHRVIpCisKICNpbmNsdWRlICJXb3JrZXJEZWJ1
Z2dlckFnZW50LmgiCiAjaW5jbHVkZSAiV29ya2VyR2xvYmFsU2NvcGUuaCIKICNpbmNsdWRlICJX
b3JrZXJSdW5Mb29wLmgiCkBAIC00MSw2ICs0MSw4IEBACiAjaW5jbHVkZSA8cnVudGltZS9WTS5o
PgogI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+CiAKK3VzaW5nIG5hbWVzcGFjZSBJbnNwZWN0
b3I7CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV29ya2VyU2NyaXB0RGVidWdTZXJ2ZXI6Oldv
cmtlclNjcmlwdERlYnVnU2VydmVyKFdvcmtlckdsb2JhbFNjb3BlKiBjb250ZXh0LCBjb25zdCBT
dHJpbmcmIG1vZGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3Jr
ZXJTY3JpcHREZWJ1Z1NlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2Vy
U2NyaXB0RGVidWdTZXJ2ZXIuaAppbmRleCA3NjJkMjE3Li42NGRkMjJlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJTY3JpcHREZWJ1Z1NlcnZlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlclNjcmlwdERlYnVnU2VydmVyLmgKQEAg
LTQ3LDggKzQ3LDggQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHJlY29tcGlsZUFsbEpT
RnVuY3Rpb25zKCkgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIGFkZExpc3RlbmVyKFNjcmlwdERlYnVn
TGlzdGVuZXIqKTsKLSAgICB2b2lkIHJlbW92ZUxpc3RlbmVyKFNjcmlwdERlYnVnTGlzdGVuZXIq
LCBib29sIHNraXBSZWNvbXBpbGUpOworICAgIHZvaWQgYWRkTGlzdGVuZXIoSW5zcGVjdG9yOjpT
Y3JpcHREZWJ1Z0xpc3RlbmVyKik7CisgICAgdm9pZCByZW1vdmVMaXN0ZW5lcihJbnNwZWN0b3I6
OlNjcmlwdERlYnVnTGlzdGVuZXIqLCBib29sIHNraXBSZWNvbXBpbGUpOwogCiAgICAgdm9pZCBp
bnRlcnJ1cHRBbmRSdW5UYXNrKFBhc3NPd25QdHI8U2NyaXB0RGVidWdTZXJ2ZXI6OlRhc2s+KTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFsbEluT25l
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBbGxJbk9uZS5jcHAKaW5k
ZXggZWNhY2YxNy4uNjY2YmJhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckFsbEluT25lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yQWxsSW5PbmUuY3BwCkBAIC0yOCw3ICsyOCw2IEBACiAjaW5jbHVkZSAiQ29tbWFuZExp
bmVBUElIb3N0LmNwcCIKICNpbmNsdWRlICJDb21tYW5kTGluZUFQSU1vZHVsZS5jcHAiCiAjaW5j
bHVkZSAiQ29uc29sZU1lc3NhZ2UuY3BwIgotI2luY2x1ZGUgIkNvbnRlbnRTZWFyY2hVdGlscy5j
cHAiCiAjaW5jbHVkZSAiRE9NRWRpdG9yLmNwcCIKICNpbmNsdWRlICJET01QYXRjaFN1cHBvcnQu
Y3BwIgogI2luY2x1ZGUgIklkZW50aWZpZXJzRmFjdG9yeS5jcHAiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKaW5kZXggMmY3ODI2
YS4uM2IyYWUwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckRlYnVnZ2VyQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JEZWJ1Z2dlckFnZW50LmNwcApAQCAtMzMsMTIgKzMzLDEyIEBACiAjaWYgRU5BQkxFKEpBVkFT
Q1JJUFRfREVCVUdHRVIpICYmIEVOQUJMRShJTlNQRUNUT1IpCiAKICNpbmNsdWRlICJDYWNoZWRS
ZXNvdXJjZS5oIgotI2luY2x1ZGUgIkNvbnRlbnRTZWFyY2hVdGlscy5oIgogI2luY2x1ZGUgIklu
c3BlY3RvclBhZ2VBZ2VudC5oIgogI2luY2x1ZGUgIkluc3RydW1lbnRpbmdBZ2VudHMuaCIKICNp
bmNsdWRlICJTY3JpcHREZWJ1Z1NlcnZlci5oIgogI2luY2x1ZGUgPGJpbmRpbmdzL1NjcmlwdE9i
amVjdC5oPgogI2luY2x1ZGUgPGJpbmRpbmdzL1NjcmlwdFZhbHVlLmg+CisjaW5jbHVkZSA8aW5z
cGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlsaXRpZXMuaD4KICNpbmNsdWRlIDxpbnNwZWN0b3IvSW5q
ZWN0ZWRTY3JpcHQuaD4KICNpbmNsdWRlIDxpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRNYW5hZ2Vy
Lmg+CiAjaW5jbHVkZSA8aW5zcGVjdG9yL0luc3BlY3RvclZhbHVlcy5oPgpAQCAtNDIwLDcgKzQy
MCw3IEBAIHZvaWQgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6c2VhcmNoSW5Db250ZW50KEVycm9y
U3RyaW5nKiBlcnJvciwgY29uc3QgU3RyaW5nJiBzCiAgICAgSlNDOjpTb3VyY2VJRCBzb3VyY2VJ
RCA9IHNjcmlwdElEU3RyLnRvSW50UHRyKCk7CiAgICAgU2NyaXB0c01hcDo6aXRlcmF0b3IgaXQg
PSBtX3NjcmlwdHMuZmluZChzb3VyY2VJRCk7CiAgICAgaWYgKGl0ICE9IG1fc2NyaXB0cy5lbmQo
KSkKLSAgICAgICAgcmVzdWx0cyA9IENvbnRlbnRTZWFyY2hVdGlsczo6c2VhcmNoSW5UZXh0QnlM
aW5lcyhpdC0+dmFsdWUuc291cmNlLCBxdWVyeSwgY2FzZVNlbnNpdGl2ZSwgaXNSZWdleCk7Cisg
ICAgICAgIHJlc3VsdHMgPSBDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpzZWFyY2hJblRleHRCeUxp
bmVzKGl0LT52YWx1ZS5zb3VyY2UsIHF1ZXJ5LCBjYXNlU2Vuc2l0aXZlLCBpc1JlZ2V4KTsKICAg
ICBlbHNlCiAgICAgICAgICplcnJvciA9ICJObyBzY3JpcHQgZm9yIGlkOiAiICsgc2NyaXB0SURT
dHI7CiB9CkBAIC01OTIsNyArNTkyLDcgQEAgU3RyaW5nIEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6
OnNvdXJjZU1hcFVSTEZvclNjcmlwdChjb25zdCBTY3JpcHQmIHNjcmlwdCkKICAgICAgICAgfQog
ICAgIH0KIAotICAgIHJldHVybiBDb250ZW50U2VhcmNoVXRpbHM6OmZpbmRTY3JpcHRTb3VyY2VN
YXBVUkwoc2NyaXB0LnNvdXJjZSk7CisgICAgcmV0dXJuIENvbnRlbnRTZWFyY2hVdGlsaXRpZXM6
OmZpbmRTY3JpcHRTb3VyY2VNYXBVUkwoc2NyaXB0LnNvdXJjZSk7CiB9CiAKIC8vIEphdmFTY3Jp
cHREZWJ1Z0xpc3RlbmVyIGZ1bmN0aW9ucwpAQCAtNjAxLDcgKzYwMSw3IEBAIHZvaWQgSW5zcGVj
dG9yRGVidWdnZXJBZ2VudDo6ZGlkUGFyc2VTb3VyY2UoSlNDOjpTb3VyY2VJRCBzb3VyY2VJRCwg
Y29uc3QgU2NyaXB0CiB7CiAgICAgU2NyaXB0IHNjcmlwdCA9IGluU2NyaXB0OwogICAgIGlmICgh
c2NyaXB0LnN0YXJ0TGluZSAmJiAhc2NyaXB0LnN0YXJ0Q29sdW1uKQotICAgICAgICBzY3JpcHQu
c291cmNlVVJMID0gQ29udGVudFNlYXJjaFV0aWxzOjpmaW5kU2NyaXB0U291cmNlVVJMKHNjcmlw
dC5zb3VyY2UpOworICAgICAgICBzY3JpcHQuc291cmNlVVJMID0gQ29udGVudFNlYXJjaFV0aWxp
dGllczo6ZmluZFNjcmlwdFNvdXJjZVVSTChzY3JpcHQuc291cmNlKTsKICAgICBzY3JpcHQuc291
cmNlTWFwcGluZ1VSTCA9IHNvdXJjZU1hcFVSTEZvclNjcmlwdChzY3JpcHQpOwogCiAgICAgYm9v
bCBoYXNTb3VyY2VVUkwgPSAhc2NyaXB0LnNvdXJjZVVSTC5pc0VtcHR5KCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaAppbmRleCBhZGI3
NzlhLi5kYmVmNTZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yRGVidWdnZXJBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JEZWJ1Z2dlckFnZW50LmgKQEAgLTM1LDEyICszNSwxMiBAQAogI2luY2x1ZGUgIkNvbnNvbGVB
UElUeXBlcy5oIgogI2luY2x1ZGUgIkNvbnNvbGVUeXBlcy5oIgogI2luY2x1ZGUgIkluc3BlY3Rv
cldlYkFnZW50QmFzZS5oIgotI2luY2x1ZGUgIlNjcmlwdEJyZWFrcG9pbnQuaCIKLSNpbmNsdWRl
ICJTY3JpcHREZWJ1Z0xpc3RlbmVyLmgiCiAjaW5jbHVkZSA8YmluZGluZ3MvU2NyaXB0VmFsdWUu
aD4KICNpbmNsdWRlIDxkZWJ1Z2dlci9EZWJ1Z2dlci5oPgogI2luY2x1ZGUgPGluc3BlY3Rvci9J
bnNwZWN0b3JKU0JhY2tlbmREaXNwYXRjaGVycy5oPgogI2luY2x1ZGUgPGluc3BlY3Rvci9JbnNw
ZWN0b3JKU0Zyb250ZW5kRGlzcGF0Y2hlcnMuaD4KKyNpbmNsdWRlIDxpbnNwZWN0b3IvU2NyaXB0
QnJlYWtwb2ludC5oPgorI2luY2x1ZGUgPGluc3BlY3Rvci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmg+
CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2lu
Y2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+CkBAIC02Myw3ICs2Myw3IEBAIGNsYXNzIFNjcmlwdERl
YnVnU2VydmVyOwogCiB0eXBlZGVmIFN0cmluZyBFcnJvclN0cmluZzsKIAotY2xhc3MgSW5zcGVj
dG9yRGVidWdnZXJBZ2VudCA6IHB1YmxpYyBJbnNwZWN0b3JBZ2VudEJhc2UsIHB1YmxpYyBTY3Jp
cHREZWJ1Z0xpc3RlbmVyLCBwdWJsaWMgSW5zcGVjdG9yOjpJbnNwZWN0b3JEZWJ1Z2dlckJhY2tl
bmREaXNwYXRjaGVySGFuZGxlciB7CitjbGFzcyBJbnNwZWN0b3JEZWJ1Z2dlckFnZW50IDogcHVi
bGljIEluc3BlY3RvckFnZW50QmFzZSwgcHVibGljIEluc3BlY3Rvcjo6U2NyaXB0RGVidWdMaXN0
ZW5lciwgcHVibGljIEluc3BlY3Rvcjo6SW5zcGVjdG9yRGVidWdnZXJCYWNrZW5kRGlzcGF0Y2hl
ckhhbmRsZXIgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEluc3BlY3RvckRlYnVnZ2VyQWdl
bnQpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3Qg
Y2hhciogYmFja3RyYWNlT2JqZWN0R3JvdXA7CkBAIC0xNDcsMTIgKzE0NywxMiBAQCBwcml2YXRl
OgogICAgIHZpcnR1YWwgdm9pZCBmYWlsZWRUb1BhcnNlU291cmNlKGNvbnN0IFN0cmluZyYgdXJs
LCBjb25zdCBTdHJpbmcmIGRhdGEsIGludCBmaXJzdExpbmUsIGludCBlcnJvckxpbmUsIGNvbnN0
IFN0cmluZyYgZXJyb3JNZXNzYWdlKSBvdmVycmlkZSBmaW5hbDsKICAgICB2aXJ0dWFsIHZvaWQg
ZGlkU2FtcGxlUHJvYmUoSlNDOjpFeGVjU3RhdGUqLCBpbnQgcHJvYmVJZGVudGlmaWVyLCBpbnQg
aGl0Q291bnQsIGNvbnN0IERlcHJlY2F0ZWQ6OlNjcmlwdFZhbHVlJiBzYW1wbGUpIG92ZXJyaWRl
IGZpbmFsOwogCi0gICAgUGFzc1JlZlB0cjxJbnNwZWN0b3I6OlR5cGVCdWlsZGVyOjpEZWJ1Z2dl
cjo6TG9jYXRpb24+IHJlc29sdmVCcmVha3BvaW50KGNvbnN0IFN0cmluZyYgYnJlYWtwb2ludElk
ZW50aWZpZXIsIEpTQzo6U291cmNlSUQsIGNvbnN0IFNjcmlwdEJyZWFrcG9pbnQmKTsKKyAgICBQ
YXNzUmVmUHRyPEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6OkRlYnVnZ2VyOjpMb2NhdGlvbj4gcmVz
b2x2ZUJyZWFrcG9pbnQoY29uc3QgU3RyaW5nJiBicmVha3BvaW50SWRlbnRpZmllciwgSlNDOjpT
b3VyY2VJRCwgY29uc3QgSW5zcGVjdG9yOjpTY3JpcHRCcmVha3BvaW50Jik7CiAgICAgYm9vbCBh
c3NlcnRQYXVzZWQoRXJyb3JTdHJpbmcqKTsKICAgICB2b2lkIGNsZWFyUmVzb2x2ZWRCcmVha3Bv
aW50U3RhdGUoKTsKICAgICB2b2lkIGNsZWFyQnJlYWtEZXRhaWxzKCk7CiAKLSAgICBib29sIGJy
ZWFrcG9pbnRBY3Rpb25zRnJvbVByb3RvY29sKEVycm9yU3RyaW5nKiwgUmVmUHRyPEluc3BlY3Rv
cjo6SW5zcGVjdG9yQXJyYXk+JiBhY3Rpb25zLCBWZWN0b3I8U2NyaXB0QnJlYWtwb2ludEFjdGlv
bj4qIHJlc3VsdCk7CisgICAgYm9vbCBicmVha3BvaW50QWN0aW9uc0Zyb21Qcm90b2NvbChFcnJv
clN0cmluZyosIFJlZlB0cjxJbnNwZWN0b3I6Okluc3BlY3RvckFycmF5PiYgYWN0aW9ucywgVmVj
dG9yPEluc3BlY3Rvcjo6U2NyaXB0QnJlYWtwb2ludEFjdGlvbj4qIHJlc3VsdCk7CiAKICAgICBT
dHJpbmcgc291cmNlTWFwVVJMRm9yU2NyaXB0KGNvbnN0IFNjcmlwdCYpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwCmluZGV4IDEyMmE3NzEu
LmUzZDBjYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQ
YWdlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdl
QWdlbnQuY3BwCkBAIC00MCw3ICs0MCw2IEBACiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIK
ICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUxvYWRlci5oIgogI2luY2x1ZGUgIkNhY2hlZFNjcmlw
dC5oIgotI2luY2x1ZGUgIkNvbnRlbnRTZWFyY2hVdGlscy5oIgogI2luY2x1ZGUgIkNvb2tpZS5o
IgogI2luY2x1ZGUgIkNvb2tpZUphci5oIgogI2luY2x1ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgi
CkBAIC03Myw2ICs3Miw3IEBACiAjaW5jbHVkZSAiVGV4dFJlc291cmNlRGVjb2Rlci5oIgogI2lu
Y2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCiAjaW5jbHVkZSA8YmluZGluZ3MvU2NyaXB0
VmFsdWUuaD4KKyNpbmNsdWRlIDxpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxpdGllcy5oPgog
I2luY2x1ZGUgPGluc3BlY3Rvci9JbnNwZWN0b3JWYWx1ZXMuaD4KICNpbmNsdWRlIDx3dGYvQ3Vy
cmVudFRpbWUuaD4KICNpbmNsdWRlIDx3dGYvTGlzdEhhc2hTZXQuaD4KQEAgLTI3MCw3ICsyNzAs
NyBAQCBTdHJpbmcgSW5zcGVjdG9yUGFnZUFnZW50Ojpzb3VyY2VNYXBVUkxGb3JSZXNvdXJjZShD
YWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyYwogICAgIFN0cmluZyBjb250ZW50OwogICAgIGJv
b2wgYmFzZTY0RW5jb2RlZDsKICAgICBpZiAoSW5zcGVjdG9yUGFnZUFnZW50OjpjYWNoZWRSZXNv
dXJjZUNvbnRlbnQoY2FjaGVkUmVzb3VyY2UsICZjb250ZW50LCAmYmFzZTY0RW5jb2RlZCkgJiYg
IWJhc2U2NEVuY29kZWQpCi0gICAgICAgIHJldHVybiBDb250ZW50U2VhcmNoVXRpbHM6OmZpbmRT
dHlsZXNoZWV0U291cmNlTWFwVVJMKGNvbnRlbnQpOworICAgICAgICByZXR1cm4gQ29udGVudFNl
YXJjaFV0aWxpdGllczo6ZmluZFN0eWxlc2hlZXRTb3VyY2VNYXBVUkwoY29udGVudCk7CiAKICAg
ICByZXR1cm4gU3RyaW5nKCk7CiB9CkBAIC02MDksNyArNjA5LDcgQEAgdm9pZCBJbnNwZWN0b3JQ
YWdlQWdlbnQ6OnNlYXJjaEluUmVzb3VyY2UoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIGZy
YW1lSWQsIGMKICAgICBpZiAoIXN1Y2Nlc3MpCiAgICAgICAgIHJldHVybjsKIAotICAgIHJlc3Vs
dHMgPSBDb250ZW50U2VhcmNoVXRpbHM6OnNlYXJjaEluVGV4dEJ5TGluZXMoY29udGVudCwgcXVl
cnksIGNhc2VTZW5zaXRpdmUsIGlzUmVnZXgpOworICAgIHJlc3VsdHMgPSBDb250ZW50U2VhcmNo
VXRpbGl0aWVzOjpzZWFyY2hJblRleHRCeUxpbmVzKGNvbnRlbnQsIHF1ZXJ5LCBjYXNlU2Vuc2l0
aXZlLCBpc1JlZ2V4KTsKIH0KIAogc3RhdGljIFBhc3NSZWZQdHI8SW5zcGVjdG9yOjpUeXBlQnVp
bGRlcjo6UGFnZTo6U2VhcmNoUmVzdWx0PiBidWlsZE9iamVjdEZvclNlYXJjaFJlc3VsdChjb25z
dCBTdHJpbmcmIGZyYW1lSWQsIGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbWF0Y2hlc0NvdW50KQpA
QCAtNjI3LDcgKzYyNyw3IEBAIHZvaWQgSW5zcGVjdG9yUGFnZUFnZW50OjpzZWFyY2hJblJlc291
cmNlcyhFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYgdGV4dCwgY29uCiAKICAgICBib29sIGlz
UmVnZXggPSBvcHRpb25hbElzUmVnZXggPyAqb3B0aW9uYWxJc1JlZ2V4IDogZmFsc2U7CiAgICAg
Ym9vbCBjYXNlU2Vuc2l0aXZlID0gb3B0aW9uYWxDYXNlU2Vuc2l0aXZlID8gKm9wdGlvbmFsQ2Fz
ZVNlbnNpdGl2ZSA6IGZhbHNlOwotICAgIEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb24gcmVn
ZXggPSBDb250ZW50U2VhcmNoVXRpbHM6OmNyZWF0ZVNlYXJjaFJlZ2V4KHRleHQsIGNhc2VTZW5z
aXRpdmUsIGlzUmVnZXgpOworICAgIEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb24gcmVnZXgg
PSBDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpjcmVhdGVTZWFyY2hSZWdleCh0ZXh0LCBjYXNlU2Vu
c2l0aXZlLCBpc1JlZ2V4KTsKIAogICAgIGZvciAoRnJhbWUqIGZyYW1lID0gJm1fcGFnZS0+bWFp
bkZyYW1lKCk7IGZyYW1lOyBmcmFtZSA9IGZyYW1lLT50cmVlKCkudHJhdmVyc2VOZXh0KCZtX3Bh
Z2UtPm1haW5GcmFtZSgpKSkgewogICAgICAgICBTdHJpbmcgY29udGVudDsKQEAgLTYzNSwxMyAr
NjM1LDEzIEBAIHZvaWQgSW5zcGVjdG9yUGFnZUFnZW50OjpzZWFyY2hJblJlc291cmNlcyhFcnJv
clN0cmluZyosIGNvbnN0IFN0cmluZyYgdGV4dCwgY29uCiAgICAgICAgIGZvciAoVmVjdG9yPENh
Y2hlZFJlc291cmNlKj46OmNvbnN0X2l0ZXJhdG9yIGl0ID0gYWxsUmVzb3VyY2VzLmJlZ2luKCk7
IGl0ICE9IGFsbFJlc291cmNlcy5lbmQoKTsgKytpdCkgewogICAgICAgICAgICAgQ2FjaGVkUmVz
b3VyY2UqIGNhY2hlZFJlc291cmNlID0gKml0OwogICAgICAgICAgICAgaWYgKHRleHRDb250ZW50
Rm9yQ2FjaGVkUmVzb3VyY2UoY2FjaGVkUmVzb3VyY2UsICZjb250ZW50KSkgewotICAgICAgICAg
ICAgICAgIGludCBtYXRjaGVzQ291bnQgPSBDb250ZW50U2VhcmNoVXRpbHM6OmNvdW50UmVndWxh
ckV4cHJlc3Npb25NYXRjaGVzKHJlZ2V4LCBjb250ZW50KTsKKyAgICAgICAgICAgICAgICBpbnQg
bWF0Y2hlc0NvdW50ID0gQ29udGVudFNlYXJjaFV0aWxpdGllczo6Y291bnRSZWd1bGFyRXhwcmVz
c2lvbk1hdGNoZXMocmVnZXgsIGNvbnRlbnQpOwogICAgICAgICAgICAgICAgIGlmIChtYXRjaGVz
Q291bnQpCiAgICAgICAgICAgICAgICAgICAgIHNlYXJjaFJlc3VsdHMtPmFkZEl0ZW0oYnVpbGRP
YmplY3RGb3JTZWFyY2hSZXN1bHQoZnJhbWVJZChmcmFtZSksIGNhY2hlZFJlc291cmNlLT51cmwo
KSwgbWF0Y2hlc0NvdW50KSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgaWYg
KG1haW5SZXNvdXJjZUNvbnRlbnQoZnJhbWUsIGZhbHNlLCAmY29udGVudCkpIHsKLSAgICAgICAg
ICAgIGludCBtYXRjaGVzQ291bnQgPSBDb250ZW50U2VhcmNoVXRpbHM6OmNvdW50UmVndWxhckV4
cHJlc3Npb25NYXRjaGVzKHJlZ2V4LCBjb250ZW50KTsKKyAgICAgICAgICAgIGludCBtYXRjaGVz
Q291bnQgPSBDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpjb3VudFJlZ3VsYXJFeHByZXNzaW9uTWF0
Y2hlcyhyZWdleCwgY29udGVudCk7CiAgICAgICAgICAgICBpZiAobWF0Y2hlc0NvdW50KQogICAg
ICAgICAgICAgICAgIHNlYXJjaFJlc3VsdHMtPmFkZEl0ZW0oYnVpbGRPYmplY3RGb3JTZWFyY2hS
ZXN1bHQoZnJhbWVJZChmcmFtZSksIGZyYW1lLT5kb2N1bWVudCgpLT51cmwoKSwgbWF0Y2hlc0Nv
dW50KSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JTdHlsZVNoZWV0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JTdHlsZVNoZWV0LmNwcAppbmRleCA1YWU0OTZmLi5kNzM5NTYzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuY3BwCkBAIC0zOSw3ICszOSw2
IEBACiAjaW5jbHVkZSAiQ1NTU3R5bGVSdWxlLmgiCiAjaW5jbHVkZSAiQ1NTU3R5bGVTaGVldC5o
IgogI2luY2x1ZGUgIkNTU1N1cHBvcnRzUnVsZS5oIgotI2luY2x1ZGUgIkNvbnRlbnRTZWFyY2hV
dGlscy5oIgogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkRv
Y3VtZW50LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgpAQCAtNTgsNiArNTcsNyBAQAogI2luY2x1
ZGUgIlN0eWxlU2hlZXRDb250ZW50cy5oIgogI2luY2x1ZGUgIlN0eWxlU2hlZXRMaXN0LmgiCiAj
aW5jbHVkZSAiV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIgorI2luY2x1ZGUgPGluc3BlY3Rvci9D
b250ZW50U2VhcmNoVXRpbGl0aWVzLmg+CiAjaW5jbHVkZSA8aW5zcGVjdG9yL0luc3BlY3RvclZh
bHVlcy5oPgogI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KICNpbmNsdWRlIDx3dGYvUGFzc093blB0
ci5oPgpAQCAtMTU4LDggKzE1OCw4IEBAIHN0YXRpYyBQYXNzUmVmUHRyPEluc3BlY3Rvcjo6VHlw
ZUJ1aWxkZXI6OkNTUzo6U291cmNlUmFuZ2U+IGJ1aWxkU291cmNlUmFuZ2VPYmplCiB7CiAgICAg
aWYgKCFsaW5lRW5kaW5ncykKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgVGV4dFBvc2l0
aW9uIHN0YXJ0ID0gQ29udGVudFNlYXJjaFV0aWxzOjp0ZXh0UG9zaXRpb25Gcm9tT2Zmc2V0KHJh
bmdlLnN0YXJ0LCAqbGluZUVuZGluZ3MpOwotICAgIFRleHRQb3NpdGlvbiBlbmQgPSBDb250ZW50
U2VhcmNoVXRpbHM6OnRleHRQb3NpdGlvbkZyb21PZmZzZXQocmFuZ2UuZW5kLCAqbGluZUVuZGlu
Z3MpOworICAgIFRleHRQb3NpdGlvbiBzdGFydCA9IENvbnRlbnRTZWFyY2hVdGlsaXRpZXM6OnRl
eHRQb3NpdGlvbkZyb21PZmZzZXQocmFuZ2Uuc3RhcnQsICpsaW5lRW5kaW5ncyk7CisgICAgVGV4
dFBvc2l0aW9uIGVuZCA9IENvbnRlbnRTZWFyY2hVdGlsaXRpZXM6OnRleHRQb3NpdGlvbkZyb21P
ZmZzZXQocmFuZ2UuZW5kLCAqbGluZUVuZGluZ3MpOwogCiAgICAgUmVmUHRyPEluc3BlY3Rvcjo6
VHlwZUJ1aWxkZXI6OkNTUzo6U291cmNlUmFuZ2U+IHJlc3VsdCA9IEluc3BlY3Rvcjo6VHlwZUJ1
aWxkZXI6OkNTUzo6U291cmNlUmFuZ2U6OmNyZWF0ZSgpCiAgICAgICAgIC5zZXRTdGFydExpbmUo
c3RhcnQubV9saW5lLnplcm9CYXNlZEludCgpKQpAQCAtMTIyNSw3ICsxMjI1LDcgQEAgUGFzc093
blB0cjxWZWN0b3I8c2l6ZV90Pj4gSW5zcGVjdG9yU3R5bGVTaGVldDo6bGluZUVuZGluZ3MoKSBj
b25zdAogewogICAgIGlmICghbV9wYXJzZWRTdHlsZVNoZWV0LT5oYXNUZXh0KCkpCiAgICAgICAg
IHJldHVybiBQYXNzT3duUHRyPFZlY3RvcjxzaXplX3Q+PigpOwotICAgIHJldHVybiBDb250ZW50
U2VhcmNoVXRpbHM6OmxpbmVFbmRpbmdzKG1fcGFyc2VkU3R5bGVTaGVldC0+dGV4dCgpKTsKKyAg
ICByZXR1cm4gQ29udGVudFNlYXJjaFV0aWxpdGllczo6bGluZUVuZGluZ3MobV9wYXJzZWRTdHls
ZVNoZWV0LT50ZXh0KCkpOwogfQogCiB1bnNpZ25lZCBJbnNwZWN0b3JTdHlsZVNoZWV0OjpydWxl
SW5kZXhCeVN0eWxlKENTU1N0eWxlRGVjbGFyYXRpb24qIHBhZ2VTdHlsZSkgY29uc3QKQEAgLTE0
OTIsNyArMTQ5Miw3IEBAIGJvb2wgSW5zcGVjdG9yU3R5bGVTaGVldEZvcklubGluZVN0eWxlOjpz
ZXRTdHlsZVRleHQoQ1NTU3R5bGVEZWNsYXJhdGlvbiogc3R5bGUsCiAKIFBhc3NPd25QdHI8VmVj
dG9yPHNpemVfdD4+IEluc3BlY3RvclN0eWxlU2hlZXRGb3JJbmxpbmVTdHlsZTo6bGluZUVuZGlu
Z3MoKSBjb25zdAogewotICAgIHJldHVybiBDb250ZW50U2VhcmNoVXRpbHM6OmxpbmVFbmRpbmdz
KGVsZW1lbnRTdHlsZVRleHQoKSk7CisgICAgcmV0dXJuIENvbnRlbnRTZWFyY2hVdGlsaXRpZXM6
OmxpbmVFbmRpbmdzKGVsZW1lbnRTdHlsZVRleHQoKSk7CiB9CiAKIERvY3VtZW50KiBJbnNwZWN0
b3JTdHlsZVNoZWV0Rm9ySW5saW5lU3R5bGU6Om93bmVyRG9jdW1lbnQoKSBjb25zdAo=
</data>
<flag name="review"
          id="246043"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222071</attachid>
            <date>2014-01-23 20:06:18 -0800</date>
            <delta_ts>2014-01-23 20:06:18 -0800</delta_ts>
            <desc>[PATCH] For Bots 1</desc>
            <filename>cs-for-bots-1.patch</filename>
            <type>text/plain</type>
            <size>100221</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjNTY4NjViLi45YTFjNjk5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMjYsMTQgKzIyNiwxNSBAQCBz
ZXQoSmF2YVNjcmlwdENvcmVfU09VUkNFUwogICAgIGhlYXAvV3JpdGVCYXJyaWVyQnVmZmVyLmNw
cAogICAgIGhlYXAvV3JpdGVCYXJyaWVyU3VwcG9ydC5jcHAKIAotICAgIGluc3BlY3Rvci9JbnNw
ZWN0b3JBZ2VudFJlZ2lzdHJ5LmNwcAotICAgIGluc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kRGlz
cGF0Y2hlci5jcHAKLSAgICBpbnNwZWN0b3IvSW5zcGVjdG9yVmFsdWVzLmNwcAorICAgIGluc3Bl
Y3Rvci9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmNwcAogICAgIGluc3BlY3Rvci9JbmplY3RlZFNj
cmlwdC5jcHAKICAgICBpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRCYXNlLmNwcAogICAgIGluc3Bl
Y3Rvci9JbmplY3RlZFNjcmlwdEhvc3QuY3BwCiAgICAgaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0
TWFuYWdlci5jcHAKICAgICBpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRNb2R1bGUuY3BwCisgICAg
aW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwCisgICAgaW5zcGVjdG9yL0luc3Bl
Y3RvckJhY2tlbmREaXNwYXRjaGVyLmNwcAorICAgIGluc3BlY3Rvci9JbnNwZWN0b3JWYWx1ZXMu
Y3BwCiAgICAgaW5zcGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcAogICAgIGluc3BlY3Rv
ci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKICAgICBpbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckFnZW50LmNwcApAQCAtNDU4LDYgKzQ1OSw3IEBAIHNldChKYXZhU2NyaXB0Q29y
ZV9TT1VSQ0VTCiAgICAgdG9vbHMvQ29kZVByb2ZpbGUuY3BwCiAgICAgdG9vbHMvQ29kZVByb2Zp
bGluZy5jcHAKIAorICAgIHlhcnIvUmVndWxhckV4cHJlc3Npb24uY3BwCiAgICAgeWFyci9ZYXJy
Q2Fub25pY2FsaXplVUNTMi5jcHAKICAgICB5YXJyL1lhcnJJbnRlcnByZXRlci5jcHAKICAgICB5
YXJyL1lhcnJKSVQuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3OWQ5NzhmLi5mMjcy
NmI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSw3MyBAQAogMjAxNC0wMS0y
MyAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCisgICAgICAgIE1vdmUg
Q29udGVudFNlYXJjaFV0aWxzLCBTY3JpcHRCcmVha3BvaW50LCBhbmQgU2NyaXB0RGVidWdMaXN0
ZW5lciBpbnRvIEphdmFTY3JpcHRDb3JlIGZvciBpbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzUzNworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAg
ICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS52Y3hwcm9q
L0phdmFTY3JpcHRDb3JlLnZjeHByb2o6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUudmN4cHJv
ai9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qLmZpbHRlcnM6CisgICAgICAgICogSmF2YVNjcmlwdENv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBpbnNwZWN0b3IvQ29udGVu
dFNlYXJjaFV0aWxpdGllcy5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcC4KKyAgICAgICAgKEluc3BlY3Rvcjo6Q29udGVudFNl
YXJjaFV0aWxpdGllczo6Y3JlYXRlU2VhcmNoUmVnZXhTb3VyY2UpOgorICAgICAgICAoSW5zcGVj
dG9yOjpDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpzaXpldEV4dHJhY3Rvcik6CisgICAgICAgIChJ
bnNwZWN0b3I6OkNvbnRlbnRTZWFyY2hVdGlsaXRpZXM6OnRleHRQb3NpdGlvbkZyb21PZmZzZXQp
OgorICAgICAgICAoSW5zcGVjdG9yOjpDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpnZXRSZWd1bGFy
RXhwcmVzc2lvbk1hdGNoZXNCeUxpbmVzKToKKyAgICAgICAgKEluc3BlY3Rvcjo6Q29udGVudFNl
YXJjaFV0aWxpdGllczo6bGluZUVuZGluZ3MpOgorICAgICAgICAoSW5zcGVjdG9yOjpDb250ZW50
U2VhcmNoVXRpbGl0aWVzOjpidWlsZE9iamVjdEZvclNlYXJjaE1hdGNoKToKKyAgICAgICAgKElu
c3BlY3Rvcjo6Q29udGVudFNlYXJjaFV0aWxpdGllczo6Y3JlYXRlU2VhcmNoUmVnZXgpOgorICAg
ICAgICAoSW5zcGVjdG9yOjpDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpjb3VudFJlZ3VsYXJFeHBy
ZXNzaW9uTWF0Y2hlcyk6CisgICAgICAgIChJbnNwZWN0b3I6OkNvbnRlbnRTZWFyY2hVdGlsaXRp
ZXM6OnNlYXJjaEluVGV4dEJ5TGluZXMpOgorICAgICAgICAoSW5zcGVjdG9yOjpDb250ZW50U2Vh
cmNoVXRpbGl0aWVzOjpzY3JpcHRDb21tZW50UGF0dGVybik6CisgICAgICAgIChJbnNwZWN0b3I6
OkNvbnRlbnRTZWFyY2hVdGlsaXRpZXM6OnN0eWxlc2hlZXRDb21tZW50UGF0dGVybik6CisgICAg
ICAgIChJbnNwZWN0b3I6OkNvbnRlbnRTZWFyY2hVdGlsaXRpZXM6OmZpbmRNYWdpY0NvbW1lbnQp
OgorICAgICAgICAoSW5zcGVjdG9yOjpDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpmaW5kU2NyaXB0
U291cmNlVVJMKToKKyAgICAgICAgKEluc3BlY3Rvcjo6Q29udGVudFNlYXJjaFV0aWxpdGllczo6
ZmluZFNjcmlwdFNvdXJjZU1hcFVSTCk6CisgICAgICAgIChJbnNwZWN0b3I6OkNvbnRlbnRTZWFy
Y2hVdGlsaXRpZXM6OmZpbmRTdHlsZXNoZWV0U291cmNlTWFwVVJMKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvQ29udGVudFNlYXJjaFV0aWxpdGllcy5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlscy5oLgorICAgICAgICAqIGluc3BlY3Rvci9T
Y3JpcHRCcmVha3BvaW50Lmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
U2NyaXB0QnJlYWtwb2ludC5oLgorICAgICAgICAoSW5zcGVjdG9yOjpTY3JpcHRCcmVha3BvaW50
QWN0aW9uOjpTY3JpcHRCcmVha3BvaW50QWN0aW9uKToKKyAgICAgICAgKEluc3BlY3Rvcjo6U2Ny
aXB0QnJlYWtwb2ludDo6U2NyaXB0QnJlYWtwb2ludCk6CisgICAgICAgICogaW5zcGVjdG9yL1Nj
cmlwdERlYnVnTGlzdGVuZXIuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmguCisgICAgICAgIChJbnNwZWN0b3I6OlNjcmlwdERlYnVn
TGlzdGVuZXI6OlNjcmlwdDo6U2NyaXB0KToKKyAgICAgICAgKEluc3BlY3Rvcjo6U2NyaXB0RGVi
dWdMaXN0ZW5lcjo6flNjcmlwdERlYnVnTGlzdGVuZXIpOgorICAgICAgICAqIHJ1bnRpbWUvUmVn
RXhwLmNwcDoKKyAgICAgICAgKEpTQzo6UmVnRXhwOjptYXRjaCk6CisKKzIwMTQtMDEtMjMgIEpv
c2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIFJlZ3Vs
YXJFeHByZXNzaW9uIGludG8gSmF2YVNjcmlwdENvcmUgZm9yIGluc3BlY3RvcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3NTI2CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTW92ZSBSZWd1bGFyRXhwcmVz
c2lvbiBpbnRvIEphdmFTY3JpcHRDb3JlL3lhcnIgc28gaXQgY2FuCisgICAgICAgIGJlIHVzZWQg
bGF0ZXIgb24gYnkgSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yLiBDb252ZXJ0IHRvCisgICAgICAg
IHRoZSBKU0M6OllhcnIgbmFtZXNwYWNlLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6Cisg
ICAgICAgICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS52
Y3hwcm9qL0phdmFTY3JpcHRDb3JlLnZjeHByb2o6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUu
dmN4cHJvai9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qLmZpbHRlcnM6CisgICAgICAgICogSmF2YVNj
cmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiB5YXJyL1JlZ3Vs
YXJFeHByZXNzaW9uLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3Rl
eHQvUmVndWxhckV4cHJlc3Npb24uY3BwLgorICAgICAgICAoSlNDOjpZYXJyOjpSZWd1bGFyRXhw
cmVzc2lvbjo6UHJpdmF0ZTo6Y3JlYXRlKToKKyAgICAgICAgKEpTQzo6WWFycjo6UmVndWxhckV4
cHJlc3Npb246OlByaXZhdGU6OlByaXZhdGUpOgorICAgICAgICAoSlNDOjpZYXJyOjpSZWd1bGFy
RXhwcmVzc2lvbjo6UHJpdmF0ZTo6Y29tcGlsZSk6CisgICAgICAgIChKU0M6OllhcnI6OlJlZ3Vs
YXJFeHByZXNzaW9uOjpSZWd1bGFyRXhwcmVzc2lvbik6CisgICAgICAgIChKU0M6OllhcnI6OlJl
Z3VsYXJFeHByZXNzaW9uOjp+UmVndWxhckV4cHJlc3Npb24pOgorICAgICAgICAoSlNDOjpZYXJy
OjpSZWd1bGFyRXhwcmVzc2lvbjo6b3BlcmF0b3I9KToKKyAgICAgICAgKEpTQzo6WWFycjo6UmVn
dWxhckV4cHJlc3Npb246Om1hdGNoKToKKyAgICAgICAgKEpTQzo6WWFycjo6UmVndWxhckV4cHJl
c3Npb246OnNlYXJjaFJldik6CisgICAgICAgIChKU0M6OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9u
OjptYXRjaGVkTGVuZ3RoKToKKyAgICAgICAgKEpTQzo6WWFycjo6cmVwbGFjZSk6CisgICAgICAg
IChKU0M6OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9uOjppc1ZhbGlkKToKKyAgICAgICAgKiB5YXJy
L1JlZ3VsYXJFeHByZXNzaW9uLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS90ZXh0L1JlZ3VsYXJFeHByZXNzaW9uLmguCisKKzIwMTQtMDEtMjMgIEpvc2VwaCBQZWNvcmFy
byAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKwogICAgICAgICBXZWIgSW5zcGVjdG9yOiBSZW1vdmUg
cmVjb21waWxlQWxsSlNGdW5jdGlvbnMgdGltZXIgaW4gU2NyaXB0RGVidWdTZXJ2ZXIKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzQwOQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IGE5Yzg2OWIuLmE2MTI1
ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFt
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC02Mjcs
NiArNjI3LDggQEAgamF2YXNjcmlwdGNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ljdS91bmljb2RlL3V0Zl9vbGQuaCBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2lj
dS91bmljb2RlL3V0eXBlcy5oIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUv
dXZlcnNpb24uaCBcCisJU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9Db250ZW50U2Vh
cmNoVXRpbGl0aWVzLmNwcCBcCisJU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9Db250
ZW50U2VhcmNoVXRpbGl0aWVzLmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
SW5qZWN0ZWRTY3JpcHQuY3BwIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0lu
amVjdGVkU2NyaXB0LmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSW5qZWN0
ZWRTY3JpcHRCYXNlLmNwcCBcCkBAIC02NTEsNiArNjUzLDggQEAgamF2YXNjcmlwdGNvcmVfc291
cmNlcyArPSBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2Ny
aXB0SG9zdC5oIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSW5qZWN0ZWRT
Y3JpcHRIb3N0UHJvdG90eXBlLmNwcCBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5oIFwKKwlTb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL1NjcmlwdEJyZWFrcG9pbnQuaCBcCisJU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckFnZW50LmggXAogCVNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckFnZW50LmNwcCBcCiAJU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ludGVycHJldGVyL0Fic3RyYWN0UEMuY3BwIFwKQEAgLTExOTcsNiArMTIwMSw4
IEBAIGphdmFzY3JpcHRjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS90
b29scy9Db2RlUHJvZmlsaW5nLmggXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9Qcm9m
aWxlVHJlZU5vZGUuaCBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1RpZXJlZE1NYXBB
cnJheS5oIFwKKwlTb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5o
IFwKKwlTb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5jcHAgXAog
CVNvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1lhcnIuaCBcCiAJU291cmNlL0phdmFTY3JpcHRD
b3JlL3lhcnIvWWFyckNhbm9uaWNhbGl6ZVVDUzIuY3BwIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENv
cmUveWFyci9ZYXJyQ2Fub25pY2FsaXplVUNTMi5oIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qL0phdmFTY3JpcHRDb3JlLnZjeHByb2og
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmN4cHJvai9KYXZhU2NyaXB0
Q29yZS52Y3hwcm9qCmluZGV4IDIyNGVkNTYuLmJhZmU4YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qL0phdmFTY3JpcHRDb3JlLnZjeHBy
b2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjeHByb2ovSmF2
YVNjcmlwdENvcmUudmN4cHJvagpAQCAtNDc1LDYgKzQ3NSw3IEBACiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxoZWFwXFdlYWtTZXQuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5caGVhcFxXcml0ZUJhcnJpZXJCdWZmZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVk
ZT0iLi5caGVhcFxXcml0ZUJhcnJpZXJTdXBwb3J0LmNwcCIgLz4KKyAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGluc3BlY3RvclxDb250ZW50U2VhcmNoVXRpbGl0aWVzLmNwcCIgLz4KICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbmplY3RlZFNjcmlwdC5jcHAiIC8+CiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5qZWN0ZWRTY3JpcHRCYXNlLmNw
cCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbmplY3RlZFNjcmlw
dEhvc3QuY3BwIiAvPgpAQCAtNzAzLDYgKzcwNCw3IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxydW50aW1lXFdlYWtNYXBQcm90b3R5cGUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5cdG9vbHNcQ29kZVByb2ZpbGUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVk
ZT0iLi5cdG9vbHNcQ29kZVByb2ZpbGluZy5jcHAiIC8+CisgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlx5YXJyXFJlZ3VsYXJFeHByZXNzaW9uLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXHlhcnJcWWFyckNhbm9uaWNhbGl6ZVVDUzIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5ceWFyclxZYXJySW50ZXJwcmV0ZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5ceWFyclxZYXJySklULmNwcCIgLz4KQEAgLTEwNDAsNiArMTA0Miw3IEBACiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxoZWFwXFdlYWtTZXRJbmxpbmVzLmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxoZWFwXFdyaXRlQmFycmllckJ1ZmZlci5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caGVhcFxXcml0ZUJhcnJpZXJTdXBwb3J0LmgiIC8+Cisg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcQ29udGVudFNlYXJjaFV0aWxpdGll
cy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEluamVjdGVkU2Ny
aXB0LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5qZWN0ZWRT
Y3JpcHRCYXNlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5q
ZWN0ZWRTY3JpcHRIb3N0LmgiIC8+CkBAIC0xMDU0LDYgKzEwNTcsOCBAQAogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEluc3BlY3RvclZhbHVlcy5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEpTSW5qZWN0ZWRTY3JpcHRIb3N0LmgiIC8+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSlNJbmplY3RlZFNjcmlwdEhvc3RQ
cm90b3R5cGUuaCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxTY3Jp
cHRCcmVha3BvaW50LmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3Jc
U2NyaXB0RGVidWdMaXN0ZW5lci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5z
cGVjdG9yXGFnZW50c1xJbnNwZWN0b3JBZ2VudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5caW50ZXJwcmV0ZXJcQWJzdHJhY3RQQy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5caW50ZXJwcmV0ZXJcQ2FjaGVkQ2FsbC5oIiAvPgpAQCAtMTM2Nyw2ICsxMzcyLDcgQEAK
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRvb2xzXENvZGVQcm9maWxpbmcuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHRvb2xzXFByb2ZpbGVUcmVlTm9kZS5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cdG9vbHNcVGllcmVkTU1hcEFycmF5LmgiIC8+CisgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlx5YXJyXFJlZ3VsYXJFeHByZXNzaW9uLmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlx5YXJyXFlhcnIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHlhcnJcWWFyckNhbm9uaWNhbGl6ZVVDUzIuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHlhcnJcWWFyckludGVycHJldGVyLmgiIC8+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmN4cHJvai9KYXZhU2NyaXB0Q29yZS52
Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmN4
cHJvai9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggOTc0NDM1My4uMmVhOWYw
NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjeHBy
b2ovSmF2YVNjcmlwdENvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3hwcm9qL0phdmFTY3JpcHRDb3JlLnZjeHByb2ouZmlsdGVy
cwpAQCAtMjg1LDYgKzI4NSw5IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxoZWFwXFdy
aXRlQmFycmllclN1cHBvcnQuY3BwIj4KICAgICAgIDxGaWx0ZXI+aGVhcDwvRmlsdGVyPgogICAg
IDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXENvbnRl
bnRTZWFyY2hVdGlsaXRpZXMuY3BwIj4KKyAgICAgIDxGaWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+
CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3Jc
SW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAiPgogICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0Zp
bHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTc4OSw2ICs3OTIsOSBAQAogICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5cdG9vbHNcQ29kZVByb2ZpbGluZy5jcHAiPgogICAgICAgPEZpbHRlcj50
b29sczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5ceWFyclxSZWd1bGFyRXhwcmVzc2lvbi5jcHAiPgorICAgICAgPEZpbHRlcj55YXJyPC9GaWx0
ZXI+CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx5YXJyXFlh
cnJDYW5vbmljYWxpemVVQ1MyLmNwcCI+CiAgICAgICA8RmlsdGVyPnlhcnI8L0ZpbHRlcj4KICAg
ICA8L0NsQ29tcGlsZT4KQEAgLTE3NjYsNiArMTc3Miw5IEBACiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxoZWFwXFdyaXRlQmFycmllclN1cHBvcnQuaCI+CiAgICAgICA8RmlsdGVyPmhlYXA8
L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGlu
c3BlY3RvclxDb250ZW50U2VhcmNoVXRpbGl0aWVzLmgiPgorICAgICAgPEZpbHRlcj5pbnNwZWN0
b3I8L0ZpbHRlcj4KKyAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XGluc3BlY3RvclxJbnNwZWN0b3JBZ2VudEJhc2UuaCI+CiAgICAgICA8RmlsdGVyPmluc3BlY3Rv
cjwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMjQxNCw2ICsyNDIzLDkgQEAKICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHlhcnJcWWFyci5oIj4KICAgICAgIDxGaWx0ZXI+eWFycjwv
RmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgorICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ceWFy
clxSZWd1bGFyRXhwcmVzc2lvbi5oIj4KKyAgICAgIDxGaWx0ZXI+eWFycjwvRmlsdGVyPgorICAg
IDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ceWFyclxZYXJyQ2Fub25p
Y2FsaXplVUNTMi5oIj4KICAgICAgIDxGaWx0ZXI+eWFycjwvRmlsdGVyPgogICAgIDwvQ2xJbmNs
dWRlPgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlw
dENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA0ZDBjNmVjLi5iYjFjZTk2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtOTAwLDYgKzkwMCw4IEBACiAJCUExNzEy
QjQxMTFDN0IyMzUwMDdBNTMxNSAvKiBSZWdFeHBLZXkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNzEyQjQwMTFDN0IyMzUwMDdBNTMxNSAvKiBSZWdF
eHBLZXkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQlBMUEwMDlDMDE4MzFBMjJEMDBDRjg3MTEgLyogTWFjcm9Bc3NlbWJsZXJBUk02NC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODY0MDkyM0MxNTZFRUQz
QjAwNTY2Q0IyIC8qIE1hY3JvQXNzZW1ibGVyQVJNNjQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlBMUEwMDlDMTE4MzFBMjZFMDBDRjg3MTEgLyog
QVJNNjRBc3NlbWJsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDg2NDA5MjNCMTU2RUVEM0IwMDU2NkNCMiAvKiBBUk02NEFzc2VtYmxlci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE1MDNGQTIxMTg4
RUZGNjgwMDExMEYxNCAvKiBTY3JpcHRCcmVha3BvaW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTAzRkExRjE4OEVGRjY4MDAxMTBGMTQgLyogU2Ny
aXB0QnJlYWtwb2ludC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUE1MDNGQTIyMTg4RUZGNjgwMDExMEYxNCAvKiBTY3JpcHREZWJ1Z0xpc3RlbmVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTAzRkEy
MDE4OEVGRjY4MDAxMTBGMTQgLyogU2NyaXB0RGVidWdMaXN0ZW5lci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUE1MTAwN0MwMTg3Q0MzQzYwMEIz
ODg3OSAvKiBKU0dsb2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTUxMDA3QkUxODdDQzNDNjAwQjM4
ODc5IC8qIEpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHAgKi87IH07CiAJCUE1
MTAwN0MxMTg3Q0MzQzYwMEIzODg3OSAvKiBKU0dsb2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xs
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1MTAw
N0JGMTg3Q0MzQzYwMEIzODg3OSAvKiBKU0dsb2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXIu
aCAqLzsgfTsKIAkJQTUxM0U1QjcxODVCOEJEMzAwN0U5NUFEIC8qIEluamVjdGVkU2NyaXB0LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1MTNFNUI1
MTg1QjhCRDMwMDdFOTVBRCAvKiBJbmplY3RlZFNjcmlwdC5jcHAgKi87IH07CkBAIC05MzEsNiAr
OTMzLDEwIEBACiAJCUE1NUQ5M0E1MTg1MDEyQTgwMDQwMERFRCAvKiBTY3JpcHRGdW5jdGlvbkNh
bGwuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU1
RDkzQTMxODUwMTJBODAwNDAwREVEIC8qIFNjcmlwdEZ1bmN0aW9uQ2FsbC5jcHAgKi87IH07CiAJ
CUE1NUQ5M0E2MTg1MDEyQTgwMDQwMERFRCAvKiBTY3JpcHRGdW5jdGlvbkNhbGwuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1NUQ5M0E0MTg1MDEyQTgw
MDQwMERFRCAvKiBTY3JpcHRGdW5jdGlvbkNhbGwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlBNTVEOTNBQzE4NTE0Rjc5MDA0MDBERUQgLyogSW5z
cGVjdG9yVHlwZUJ1aWxkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE1NUQ5M0FCMTg1MTRGNzkwMDQwMERFRCAvKiBJbnNwZWN0b3JUeXBlQnVpbGRl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE1
N0QyM0VEMTg5MUI1NTQwMDMxQzdGQSAvKiBSZWd1bGFyRXhwcmVzc2lvbi5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTdEMjNFQjE4OTFCNTU0MDAz
MUM3RkEgLyogUmVndWxhckV4cHJlc3Npb24uY3BwICovOyB9OworCQlBNTdEMjNFRTE4OTFCNTU0
MDAzMUM3RkEgLyogUmVndWxhckV4cHJlc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1N0QyM0VDMTg5MUI1NTQwMDMxQzdGQSAvKiBSZWd1bGFy
RXhwcmVzc2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUE1N0QyM0YxMTg5MUI1QjQwMDMxQzdGQSAvKiBDb250ZW50U2VhcmNoVXRpbGl0aWVz
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1N0Qy
M0VGMTg5MUI1QjQwMDMxQzdGQSAvKiBDb250ZW50U2VhcmNoVXRpbGl0aWVzLmNwcCAqLzsgfTsK
KwkJQTU3RDIzRjIxODkxQjVCNDAwMzFDN0ZBIC8qIENvbnRlbnRTZWFyY2hVdGlsaXRpZXMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1N0QyM0YwMTg5
MUI1QjQwMDMxQzdGQSAvKiBDb250ZW50U2VhcmNoVXRpbGl0aWVzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTU4NDBFMjAxODdCN0I4NjAwODQz
QjEwIC8qIEluamVjdGVkU2NyaXB0TW9kdWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1ODQwRTFFMTg3QjdCODYwMDg0M0IxMCAvKiBJbmplY3Rl
ZFNjcmlwdE1vZHVsZS5jcHAgKi87IH07CiAJCUE1ODQwRTIxMTg3QjdCODYwMDg0M0IxMCAvKiBJ
bmplY3RlZFNjcmlwdE1vZHVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTU4NDBFMUYxODdCN0I4NjAwODQzQjEwIC8qIEluamVjdGVkU2NyaXB0TW9k
dWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
QTU4NDBFMjcxODdDOTgxRTAwODQzQjEwIC8qIGNzc21pbi5weSBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1ODQwRTI2MTg3Qzk4MDcwMDg0M0IxMCAvKiBj
c3NtaW4ucHkgKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
QEAgLTIyODQsNiArMjI5MCw4IEBACiAJCUExNzEyQjNBMTFDN0IyMTIwMDdBNTMxNSAvKiBSZWdF
eHBDYWNoZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZWdFeHBD
YWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExNzEyQjNFMTFDN0IyMjgw
MDdBNTMxNSAvKiBSZWdFeHBDYWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZWdFeHBDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTcxMkI0MDEx
QzdCMjM1MDA3QTUzMTUgLyogUmVnRXhwS2V5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJlZ0V4cEtleS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTAzRkEx
RjE4OEVGRjY4MDAxMTBGMTQgLyogU2NyaXB0QnJlYWtwb2ludC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTY3JpcHRCcmVha3BvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE1MDNGQTIwMTg4RUZGNjgwMDExMEYxNCAvKiBTY3JpcHREZWJ1Z0xpc3RlbmVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlwdERlYnVnTGlzdGVuZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTUxMDA3QkUxODdDQzNDNjAwQjM4ODc5
IC8qIEpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0dsb2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNTEwMDdCRjE4N0NDM0M2MDBCMzg4
NzkgLyogSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNTEzRTVCNTE4NUI4QkQzMDA3RTk1QUQgLyog
SW5qZWN0ZWRTY3JpcHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SW5qZWN0ZWRTY3JpcHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjMyMCw2
ICsyMzI4LDEwIEBACiAJCUE1NUQ5M0EzMTg1MDEyQTgwMDQwMERFRCAvKiBTY3JpcHRGdW5jdGlv
bkNhbGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2NyaXB0RnVu
Y3Rpb25DYWxsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTU1RDkzQTQxODUw
MTJBODAwNDAwREVEIC8qIFNjcmlwdEZ1bmN0aW9uQ2FsbC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTY3JpcHRGdW5jdGlvbkNhbGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQTU1RDkzQUIxODUxNEY3OTAwNDAwREVEIC8qIEluc3BlY3RvclR5cGVCdWlsZGVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvclR5cGVCdWlsZGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1N0QyM0VCMTg5MUI1NTQwMDMxQzdG
QSAvKiBSZWd1bGFyRXhwcmVzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBSZWd1bGFyRXhwcmVzc2lvbi5jcHA7IHBhdGggPSB5YXJyL1JlZ3VsYXJFeHByZXNz
aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTU3RDIzRUMxODkxQjU1NDAw
MzFDN0ZBIC8qIFJlZ3VsYXJFeHByZXNzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IFJlZ3VsYXJFeHByZXNzaW9uLmg7IHBhdGggPSB5YXJyL1JlZ3VsYXJFeHByZXNzaW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1N0QyM0VGMTg5MUI1QjQwMDMxQzdG
QSAvKiBDb250ZW50U2VhcmNoVXRpbGl0aWVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENvbnRlbnRTZWFyY2hVdGlsaXRpZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBNTdEMjNGMDE4OTFCNUI0MDAzMUM3RkEgLyogQ29udGVudFNlYXJjaFV0
aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZW50U2VhcmNo
VXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE1ODQwRTFFMTg3QjdC
ODYwMDg0M0IxMCAvKiBJbmplY3RlZFNjcmlwdE1vZHVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBJbmplY3RlZFNjcmlwdE1vZHVsZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUE1ODQwRTFGMTg3QjdCODYwMDg0M0IxMCAvKiBJbmplY3RlZFNj
cmlwdE1vZHVsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmplY3RlZFNj
cmlwdE1vZHVsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNTg0MEUyNjE4N0M5
ODA3MDA4NDNCMTAgLyogY3NzbWluLnB5ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQucHl0aG9uOyBw
YXRoID0gY3NzbWluLnB5OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMzg4OCw2ICsz
OTAwLDggQEAKIAkJODZFQUM0OEMwRjkzRThCOTAwOEVDOTQ4IC8qIHlhcnIgKi8gPSB7CiAJCQlp
c2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCUE1N0QyM0VCMTg5MUI1NTQwMDMx
QzdGQSAvKiBSZWd1bGFyRXhwcmVzc2lvbi5jcHAgKi8sCisJCQkJQTU3RDIzRUMxODkxQjU1NDAw
MzFDN0ZBIC8qIFJlZ3VsYXJFeHByZXNzaW9uLmggKi8sCiAJCQkJNDUxNTM5QjgxMkRDOTk0NTAw
RUY3QUM0IC8qIFlhcnIuaCAqLywKIAkJCQk4NjNDNkQ5ODE1MjExMTEyMDA1ODVFNEUgLyogWWFy
ckNhbm9uaWNhbGl6ZVVDUzIuY3BwICovLAogCQkJCTg2M0M2RDk5MTUyMTExMTIwMDU4NUU0RSAv
KiBZYXJyQ2Fub25pY2FsaXplVUNTMi5oICovLApAQCAtNDM2Niw2ICs0MzgwLDggQEAKIAkJCQlB
NTEzRTVDQzE4NUZCOTkyMDA3RTk1QUQgLyogYWdlbnRzICovLAogCQkJCUE1QkExNUUwMTgyMzQw
OUQwMEE4MkU2OSAvKiByZW1vdGUgKi8sCiAJCQkJQTUzMjQzOEUxODU2OTZDRTAwMkVENjkyIC8q
IHNjcmlwdHMgKi8sCisJCQkJQTU3RDIzRUYxODkxQjVCNDAwMzFDN0ZBIC8qIENvbnRlbnRTZWFy
Y2hVdGlsaXRpZXMuY3BwICovLAorCQkJCUE1N0QyM0YwMTg5MUI1QjQwMDMxQzdGQSAvKiBDb250
ZW50U2VhcmNoVXRpbGl0aWVzLmggKi8sCiAJCQkJQTUxM0U1QjUxODVCOEJEMzAwN0U5NUFEIC8q
IEluamVjdGVkU2NyaXB0LmNwcCAqLywKIAkJCQlBNTEzRTVCNjE4NUI4QkQzMDA3RTk1QUQgLyog
SW5qZWN0ZWRTY3JpcHQuaCAqLywKIAkJCQlBNTE0QjJDMDE4NUE2ODQ0MDBGM0M3Q0IgLyogSW5q
ZWN0ZWRTY3JpcHRCYXNlLmNwcCAqLywKQEAgLTQzOTMsNiArNDQwOSw4IEBACiAJCQkJQTUxM0U1
QkIxODVCRkFDQzAwN0U5NUFEIC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0LmggKi8sCiAJCQkJQTUx
M0U1QkMxODVCRkFDQzAwN0U5NUFEIC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlLmNw
cCAqLywKIAkJCQlBNTEzRTVCRDE4NUJGQUNDMDA3RTk1QUQgLyogSlNJbmplY3RlZFNjcmlwdEhv
c3RQcm90b3R5cGUuaCAqLywKKwkJCQlBNTAzRkExRjE4OEVGRjY4MDAxMTBGMTQgLyogU2NyaXB0
QnJlYWtwb2ludC5oICovLAorCQkJCUE1MDNGQTIwMTg4RUZGNjgwMDExMEYxNCAvKiBTY3JpcHRE
ZWJ1Z0xpc3RlbmVyLmggKi8sCiAJCQkpOwogCQkJcGF0aCA9IGluc3BlY3RvcjsKIAkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC00NTE5LDYgKzQ1MzcsNyBAQAogCQkJCTg2RTExNkIxMEZF
NzVBQzgwMEI1MTJCQyAvKiBDb2RlTG9jYXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQkQ3
RTY5MTQ0Nzk5OTYwMDQ4MTMxNSAvKiBDb2RlT3JpZ2luLmggaW4gSGVhZGVycyAqLywKIAkJCQkw
RjIxQzI3RDE0QkU3MjdBMDBBREM2NEIgLyogQ29kZVNwZWNpYWxpemF0aW9uS2luZC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTUwM0ZBMjExODhFRkY2ODAwMTEwRjE0IC8qIFNjcmlwdEJyZWFrcG9p
bnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGMEI4M0E3MTRCQ0Y1MDcwMDg4NUI0RiAvKiBDb2Rl
VHlwZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMxOEMzRjMwRTE2RjVDRDAwQjM0NDYwIC8qIENv
bW1vbklkZW50aWZpZXJzLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjE1RjE1RjE0QjdBNzNFMDA1
REUzN0QgLyogQ29tbW9uU2xvd1BhdGhzLmggaW4gSGVhZGVycyAqLywKQEAgLTQ1MzEsNiArNDU1
MCw3IEBACiAJCQkJQkMxOEMzRjUwRTE2RjVDRDAwQjM0NDYwIC8qIGNvbmZpZy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMTQ0ODM2RTcxMzJEQTdCRTAwNUJFNzg1IC8qIENvbnNlcnZhdGl2ZVJvb3Rz
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzE4QzNGNjBFMTZGNUNEMDBCMzQ0NjAgLyogQ29uc3Ry
dWN0RGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTU3RDIzRUUxODkxQjU1NDAwMzFDN0ZBIC8q
IFJlZ3VsYXJFeHByZXNzaW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlDMkVBRDJGQzE0RjAyNDk4
MDBBNEIxNTkgLyogQ29waWVkQWxsb2NhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQlDMkM4RDAz
MDE0QTNDRUZDMDA1NzhFNjUgLyogQ29waWVkQmxvY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUMy
RkM5QkQzMTY2NDRERkIwMDgxMEQzMyAvKiBDb3BpZWRCbG9ja0lubGluZXMuaCBpbiBIZWFkZXJz
ICovLApAQCAtNDk2MSw2ICs0OTgxLDcgQEAKIAkJCQk4NkQzQjJDNjEwMTU2QkRFMDAyODY1RTcg
LyogTWFjcm9Bc3NlbWJsZXJBUk0uaCBpbiBIZWFkZXJzICovLAogCQkJCTg2QUREMTQ2MEZEREVB
OTgwMDA2RUVDMiAvKiBNYWNyb0Fzc2VtYmxlckFSTXY3LmggaW4gSGVhZGVycyAqLywKIAkJCQk4
NjNCMjNFMDBGQzYxMTg5MDA3MDNBQTQgLyogTWFjcm9Bc3NlbWJsZXJDb2RlUmVmLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBNTdEMjNGMjE4OTFCNUI0MDAzMUM3RkEgLyogQ29udGVudFNlYXJjaFV0
aWxpdGllcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTUzMjQzOEExODU2ODMzNTAwMkVENjkyIC8q
IEluc3BlY3RvckpTRnJvbnRlbmREaXNwYXRjaGVycy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODZD
NTY4RTExMUEyMTNFRTAwMDdGN0YwIC8qIE1hY3JvQXNzZW1ibGVyTUlQUy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJODZBRTY0QTkxMzVFNUUxQzAwOTYzMDEyIC8qIE1hY3JvQXNzZW1ibGVyU0g0Lmgg
aW4gSGVhZGVycyAqLywKQEAgLTQ5ODYsNiArNTAwNyw3IEBACiAJCQkJODZDNTY4RTIxMUEyMTNF
RTAwMDdGN0YwIC8qIE1JUFNBc3NlbWJsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTg2RUJGMzAw
MTU2MEYwNkEwMDhFOTIyMiAvKiBOYW1lQ29uc3RydWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUE3OTBERDZFMTgyRjQ5OTcwMDU4ODgwNyAvKiBTZXRJdGVyYXRvclByb3RvdHlwZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTUwM0ZBMjIxODhFRkY2ODAwMTEwRjE0IC8qIFNjcmlwdERlYnVnTGlz
dGVuZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTg2RUJGMzAyMTU2MEYwNkEwMDhFOTIyMiAvKiBO
YW1lSW5zdGFuY2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTg2RUJGMzA0MTU2MEYwNkEwMDhFOTIy
MiAvKiBOYW1lUHJvdG90eXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzAyRTkxMTBFMTgzOURC
MDAwRjkyOTcgLyogTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8sCkBAIC01
OTg1LDYgKzYwMDcsNyBAQAogCQkJCTBGRjcyOUIyMTY2QUQzNUMwMDBGNUJBMyAvKiBQcm9maWxl
ckRhdGFiYXNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGRjcyOUIzMTY2QUQzNUMwMDBGNUJB
MyAvKiBQcm9maWxlck9yaWdpbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwRkY3MjlCNDE2NkFE
MzVDMDAwRjVCQTMgLyogUHJvZmlsZXJPcmlnaW5TdGFjay5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQlBNTdEMjNGMTE4OTFCNUI0MDAzMUM3RkEgLyogQ29udGVudFNlYXJjaFV0aWxpdGllcy5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlDMkZDQUUxMDE3QTlDMjRFMDAzNEM3MzUgLyogQnl0ZWNvZGVC
YXNpY0Jsb2NrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGNjY2RUNDMTgzNkIzN0UwMEQwMTdG
MSAvKiBERkdSZXN1cnJlY3Rpb25Gb3JWYWxpZGF0aW9uUGhhc2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJMEZCMTA1OEIxNjc1NDgzMTAwRjhBQjZFIC8qIFByb2ZpbGVyT1NSRXhpdC5jcHAgaW4g
U291cmNlcyAqLywKQEAgLTYwNzQsNiArNjA5Nyw3IEBACiAJCQkJODYzQzZEOUMxNTIxMTExQTAw
NTg1RTRFIC8qIFlhcnJDYW5vbmljYWxpemVVQ1MyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTg2
NzA0Qjg0MTJEQkEzMzcwMEE5RkU3QiAvKiBZYXJySW50ZXJwcmV0ZXIuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJODY3MDRCODYxMkRCQTMzNzAwQTlGRTdCIC8qIFlhcnJKSVQuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJQTU3RDIzRUQxODkxQjU1NDAwMzFDN0ZBIC8qIFJlZ3VsYXJFeHByZXNzaW9u
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTg2NzA0Qjg5MTJEQkEzMzcwMEE5RkU3QiAvKiBZYXJy
UGF0dGVybi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTkzQ0Y4NjE4NDAzOENBMDBCRkNFMjcg
LyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NjcwNEI0
MjEyREI4QTgxMDBBOUZFN0IgLyogWWFyclN5bnRheENoZWNrZXIuY3BwIGluIFNvdXJjZXMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxz
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxp
dGllcy5jcHAKc2ltaWxhcml0eSBpbmRleCA4NiUKcmVuYW1lIGZyb20gU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlscy5jcHAKcmVuYW1lIHRvIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxpdGllcy5jcHAKaW5kZXggMjI3Njhh
Ni4uMmI1Mjk2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0NvbnRlbnRT
ZWFyY2hVdGlscy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9Db250
ZW50U2VhcmNoVXRpbGl0aWVzLmNwcApAQCAtMjcsMjYgKzI3LDIzIEBACiAgKi8KIAogI2luY2x1
ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkNvbnRlbnRTZWFyY2hVdGlsaXRpZXMuaCIKIAogI2lm
IEVOQUJMRShJTlNQRUNUT1IpCiAKLSNpbmNsdWRlICJDb250ZW50U2VhcmNoVXRpbHMuaCIKKyNp
bmNsdWRlICJJbnNwZWN0b3JKU1R5cGVCdWlsZGVycy5oIgorI2luY2x1ZGUgIkluc3BlY3RvclZh
bHVlcy5oIgogI2luY2x1ZGUgIlJlZ3VsYXJFeHByZXNzaW9uLmgiCi0jaW5jbHVkZSA8aW5zcGVj
dG9yL0luc3BlY3RvckpTVHlwZUJ1aWxkZXJzLmg+Ci0jaW5jbHVkZSA8aW5zcGVjdG9yL0luc3Bl
Y3RvclZhbHVlcy5oPgorI2luY2x1ZGUgIllhcnIuaCIKICNpbmNsdWRlIDx3dGYvQnVtcFBvaW50
ZXJBbGxvY2F0b3IuaD4KICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+Ci0jaW5jbHVkZSA8
eWFyci9ZYXJyLmg+CiAKLXVzaW5nIG5hbWVzcGFjZSBJbnNwZWN0b3I7Cit1c2luZyBuYW1lc3Bh
Y2UgSlNDOjpZYXJyOwogCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci1uYW1lc3BhY2UgQ29udGVudFNl
YXJjaFV0aWxzIHsKK25hbWVzcGFjZSBJbnNwZWN0b3IgeworbmFtZXNwYWNlIENvbnRlbnRTZWFy
Y2hVdGlsaXRpZXMgewogCi1uYW1lc3BhY2UgewotLy8gVGhpcyBzaG91bGQgYmUga2VwdCB0aGUg
c2FtZSBhcyB0aGUgb25lIGluIGZyb250LWVuZC91dGlsaXRpZXMuanMKIHN0YXRpYyBjb25zdCBj
aGFyIHJlZ2V4U3BlY2lhbENoYXJhY3RlcnNbXSA9ICJbXSgpe30rLSouLD9cXF4kfCI7Ci19CiAK
IHN0YXRpYyBTdHJpbmcgY3JlYXRlU2VhcmNoUmVnZXhTb3VyY2UoY29uc3QgU3RyaW5nJiB0ZXh0
KQogewpAQCAtNzksNyArNzYsNyBAQCBUZXh0UG9zaXRpb24gdGV4dFBvc2l0aW9uRnJvbU9mZnNl
dChzaXplX3Qgb2Zmc2V0LCBjb25zdCBWZWN0b3I8c2l6ZV90PiYgbGluZUVuZAogICAgIHJldHVy
biBUZXh0UG9zaXRpb24oT3JkaW5hbE51bWJlcjo6ZnJvbVplcm9CYXNlZEludChsaW5lSW5kZXgp
LCBPcmRpbmFsTnVtYmVyOjpmcm9tWmVyb0Jhc2VkSW50KGNvbHVtbikpOwogfQogCi1zdGF0aWMg
VmVjdG9yPHN0ZDo6cGFpcjxpbnQsIFN0cmluZz4+IGdldFJlZ3VsYXJFeHByZXNzaW9uTWF0Y2hl
c0J5TGluZXMoY29uc3QgUmVndWxhckV4cHJlc3Npb24mIHJlZ2V4LCBjb25zdCBTdHJpbmcmIHRl
eHQpCitzdGF0aWMgVmVjdG9yPHN0ZDo6cGFpcjxpbnQsIFN0cmluZz4+IGdldFJlZ3VsYXJFeHBy
ZXNzaW9uTWF0Y2hlc0J5TGluZXMoY29uc3QgSlNDOjpZYXJyOjpSZWd1bGFyRXhwcmVzc2lvbiYg
cmVnZXgsIGNvbnN0IFN0cmluZyYgdGV4dCkKIHsKICAgICBWZWN0b3I8c3RkOjpwYWlyPGludCwg
U3RyaW5nPj4gcmVzdWx0OwogICAgIGlmICh0ZXh0LmlzRW1wdHkoKSkKQEAgLTEyOSwxMyArMTI2
LDEzIEBAIHN0YXRpYyBQYXNzUmVmUHRyPEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6OkdlbmVyaWNU
eXBlczo6U2VhcmNoTWF0Y2g+IGJ1aWxkT2JqZWN0CiAgICAgICAgIC5yZWxlYXNlKCk7CiB9CiAK
LVJlZ3VsYXJFeHByZXNzaW9uIGNyZWF0ZVNlYXJjaFJlZ2V4KGNvbnN0IFN0cmluZyYgcXVlcnks
IGJvb2wgY2FzZVNlbnNpdGl2ZSwgYm9vbCBpc1JlZ2V4KQorSlNDOjpZYXJyOjpSZWd1bGFyRXhw
cmVzc2lvbiBjcmVhdGVTZWFyY2hSZWdleChjb25zdCBTdHJpbmcmIHF1ZXJ5LCBib29sIGNhc2VT
ZW5zaXRpdmUsIGJvb2wgaXNSZWdleCkKIHsKICAgICBTdHJpbmcgcmVnZXhTb3VyY2UgPSBpc1Jl
Z2V4ID8gcXVlcnkgOiBjcmVhdGVTZWFyY2hSZWdleFNvdXJjZShxdWVyeSk7Ci0gICAgcmV0dXJu
IFJlZ3VsYXJFeHByZXNzaW9uKHJlZ2V4U291cmNlLCBjYXNlU2Vuc2l0aXZlID8gVGV4dENhc2VT
ZW5zaXRpdmUgOiBUZXh0Q2FzZUluc2Vuc2l0aXZlKTsKKyAgICByZXR1cm4gSlNDOjpZYXJyOjpS
ZWd1bGFyRXhwcmVzc2lvbihyZWdleFNvdXJjZSwgY2FzZVNlbnNpdGl2ZSA/IFRleHRDYXNlU2Vu
c2l0aXZlIDogVGV4dENhc2VJbnNlbnNpdGl2ZSk7CiB9CiAKLWludCBjb3VudFJlZ3VsYXJFeHBy
ZXNzaW9uTWF0Y2hlcyhjb25zdCBSZWd1bGFyRXhwcmVzc2lvbiYgcmVnZXgsIGNvbnN0IFN0cmlu
ZyYgY29udGVudCkKK2ludCBjb3VudFJlZ3VsYXJFeHByZXNzaW9uTWF0Y2hlcyhjb25zdCBKU0M6
OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9uJiByZWdleCwgY29uc3QgU3RyaW5nJiBjb250ZW50KQog
ewogICAgIGlmIChjb250ZW50LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC0xNTgs
NyArMTU1LDcgQEAgUGFzc1JlZlB0cjxJbnNwZWN0b3I6OlR5cGVCdWlsZGVyOjpBcnJheTxJbnNw
ZWN0b3I6OlR5cGVCdWlsZGVyOjpHZW5lcmljVHlwZXM6OlMKIHsKICAgICBSZWZQdHI8SW5zcGVj
dG9yOjpUeXBlQnVpbGRlcjo6QXJyYXk8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6R2VuZXJpY1R5
cGVzOjpTZWFyY2hNYXRjaD4+IHJlc3VsdCA9IEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6OkFycmF5
PEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6OkdlbmVyaWNUeXBlczo6U2VhcmNoTWF0Y2g+OjpjcmVh
dGUoKTsKIAotICAgIFJlZ3VsYXJFeHByZXNzaW9uIHJlZ2V4ID0gQ29udGVudFNlYXJjaFV0aWxz
OjpjcmVhdGVTZWFyY2hSZWdleChxdWVyeSwgY2FzZVNlbnNpdGl2ZSwgaXNSZWdleCk7CisgICAg
SlNDOjpZYXJyOjpSZWd1bGFyRXhwcmVzc2lvbiByZWdleCA9IENvbnRlbnRTZWFyY2hVdGlsaXRp
ZXM6OmNyZWF0ZVNlYXJjaFJlZ2V4KHF1ZXJ5LCBjYXNlU2Vuc2l0aXZlLCBpc1JlZ2V4KTsKICAg
ICBWZWN0b3I8c3RkOjpwYWlyPGludCwgU3RyaW5nPj4gbWF0Y2hlcyA9IGdldFJlZ3VsYXJFeHBy
ZXNzaW9uTWF0Y2hlc0J5TGluZXMocmVnZXgsIHRleHQpOwogCiAgICAgZm9yIChWZWN0b3I8c3Rk
OjpwYWlyPGludCwgU3RyaW5nPj46OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbWF0Y2hlcy5iZWdpbigp
OyBpdCAhPSBtYXRjaGVzLmVuZCgpOyArK2l0KQpAQCAtMTk0LDI2ICsxOTEsMjcgQEAgc3RhdGlj
IFN0cmluZyBmaW5kTWFnaWNDb21tZW50KGNvbnN0IFN0cmluZyYgY29udGVudCwgY29uc3QgU3Ry
aW5nJiBwYXR0ZXJuU3RyaW4KICAgICB1bnNpZ25lZCByZXN1bHQgPSBKU0M6OllhcnI6OmludGVy
cHJldChieXRlY29kZVBhdHRlcm4uZ2V0KCksIGNvbnRlbnQsIDAsIHJlaW50ZXJwcmV0X2Nhc3Q8
dW5zaWduZWQqPihtYXRjaGVzLmRhdGEoKSkpOwogICAgIGlmIChyZXN1bHQgPT0gSlNDOjpZYXJy
OjpvZmZzZXROb01hdGNoKQogICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisKICAgICBBU1NFUlQo
bWF0Y2hlc1syXSA+IDAgJiYgbWF0Y2hlc1szXSA+IDApOwogICAgIHJldHVybiBjb250ZW50LnN1
YnN0cmluZyhtYXRjaGVzWzJdLCBtYXRjaGVzWzNdIC0gbWF0Y2hlc1syXSk7CiB9CiAKIFN0cmlu
ZyBmaW5kU2NyaXB0U291cmNlVVJMKGNvbnN0IFN0cmluZyYgY29udGVudCkKIHsKLSAgICByZXR1
cm4gZmluZE1hZ2ljQ29tbWVudChjb250ZW50LCBzY3JpcHRDb21tZW50UGF0dGVybigic291cmNl
VVJMIikpOworICAgIHJldHVybiBmaW5kTWFnaWNDb21tZW50KGNvbnRlbnQsIHNjcmlwdENvbW1l
bnRQYXR0ZXJuKEFTQ0lJTGl0ZXJhbCgic291cmNlVVJMIikpKTsKIH0KIAogU3RyaW5nIGZpbmRT
Y3JpcHRTb3VyY2VNYXBVUkwoY29uc3QgU3RyaW5nJiBjb250ZW50KQogewotICAgIHJldHVybiBm
aW5kTWFnaWNDb21tZW50KGNvbnRlbnQsIHNjcmlwdENvbW1lbnRQYXR0ZXJuKCJzb3VyY2VNYXBw
aW5nVVJMIikpOworICAgIHJldHVybiBmaW5kTWFnaWNDb21tZW50KGNvbnRlbnQsIHNjcmlwdENv
bW1lbnRQYXR0ZXJuKEFTQ0lJTGl0ZXJhbCgic291cmNlTWFwcGluZ1VSTCIpKSk7CiB9CiAKIFN0
cmluZyBmaW5kU3R5bGVzaGVldFNvdXJjZU1hcFVSTChjb25zdCBTdHJpbmcmIGNvbnRlbnQpCiB7
Ci0gICAgcmV0dXJuIGZpbmRNYWdpY0NvbW1lbnQoY29udGVudCwgc3R5bGVzaGVldENvbW1lbnRQ
YXR0ZXJuKCJzb3VyY2VNYXBwaW5nVVJMIikpOworICAgIHJldHVybiBmaW5kTWFnaWNDb21tZW50
KGNvbnRlbnQsIHN0eWxlc2hlZXRDb21tZW50UGF0dGVybihBU0NJSUxpdGVyYWwoInNvdXJjZU1h
cHBpbmdVUkwiKSkpOwogfQogCi19IC8vIG5hbWVzcGFjZSBDb250ZW50U2VhcmNoVXRpbHMKK30g
Ly8gbmFtZXNwYWNlIENvbnRlbnRTZWFyY2hVdGlsaXRpZXMKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIAogI2VuZGlmIC8vIEVOQUJMRShJTlNQRUNUT1IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlsaXRpZXMuaApzaW1pbGFyaXR5IGluZGV4IDU3
JQpyZW5hbWUgZnJvbSBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxz
LmgKcmVuYW1lIHRvIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJj
aFV0aWxpdGllcy5oCmluZGV4IGZlNzZmYTQuLjNlYWEwNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbHMuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlsaXRpZXMuaApAQCAtMjYsMzUgKzI2
LDM4IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQ29udGVudFNlYXJjaFV0aWxz
X2gKLSNkZWZpbmUgQ29udGVudFNlYXJjaFV0aWxzX2gKKyNpZm5kZWYgQ29udGVudFNlYXJjaFV0
aWxpdGllc19oCisjZGVmaW5lIENvbnRlbnRTZWFyY2hVdGlsaXRpZXNfaAogCiAjaWYgRU5BQkxF
KElOU1BFQ1RPUikKIAotI2luY2x1ZGUgIkluc3BlY3RvcldlYlR5cGVCdWlsZGVycy5oIgorI2lu
Y2x1ZGUgIkluc3BlY3RvckpTVHlwZUJ1aWxkZXJzLmgiCiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgogI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0
L1dURlN0cmluZy5oPgogCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KK25hbWVzcGFjZSBKU0MgeyBu
YW1lc3BhY2UgWWFyciB7CiBjbGFzcyBSZWd1bGFyRXhwcmVzc2lvbjsKK30gfQogCi1uYW1lc3Bh
Y2UgQ29udGVudFNlYXJjaFV0aWxzIHsKK25hbWVzcGFjZSBJbnNwZWN0b3IgewogCi1SZWd1bGFy
RXhwcmVzc2lvbiBjcmVhdGVTZWFyY2hSZWdleChjb25zdCBTdHJpbmcmIHF1ZXJ5LCBib29sIGNh
c2VTZW5zaXRpdmUsIGJvb2wgaXNSZWdleCk7Ci1pbnQgY291bnRSZWd1bGFyRXhwcmVzc2lvbk1h
dGNoZXMoY29uc3QgUmVndWxhckV4cHJlc3Npb24mLCBjb25zdCBTdHJpbmcmKTsKLVBhc3NSZWZQ
dHI8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6QXJyYXk8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6
R2VuZXJpY1R5cGVzOjpTZWFyY2hNYXRjaD4+IHNlYXJjaEluVGV4dEJ5TGluZXMoY29uc3QgU3Ry
aW5nJiB0ZXh0LCBjb25zdCBTdHJpbmcmIHF1ZXJ5LCBjb25zdCBib29sIGNhc2VTZW5zaXRpdmUs
IGNvbnN0IGJvb2wgaXNSZWdleCk7Ci1UZXh0UG9zaXRpb24gdGV4dFBvc2l0aW9uRnJvbU9mZnNl
dChzaXplX3Qgb2Zmc2V0LCBjb25zdCBWZWN0b3I8c2l6ZV90PiYgbGluZUVuZGluZ3MpOwotUGFz
c093blB0cjxWZWN0b3I8c2l6ZV90Pj4gbGluZUVuZGluZ3MoY29uc3QgU3RyaW5nJik7CituYW1l
c3BhY2UgQ29udGVudFNlYXJjaFV0aWxpdGllcyB7CiAKLVN0cmluZyBmaW5kU2NyaXB0U291cmNl
VVJMKGNvbnN0IFN0cmluZyYgY29udGVudCk7Ci1TdHJpbmcgZmluZFNjcmlwdFNvdXJjZU1hcFVS
TChjb25zdCBTdHJpbmcmIGNvbnRlbnQpOwotU3RyaW5nIGZpbmRTdHlsZXNoZWV0U291cmNlTWFw
VVJMKGNvbnN0IFN0cmluZyYgY29udGVudCk7CitKU19FWFBPUlRfUFJJVkFURSBKU0M6OllhcnI6
OlJlZ3VsYXJFeHByZXNzaW9uIGNyZWF0ZVNlYXJjaFJlZ2V4KGNvbnN0IFN0cmluZyYgcXVlcnks
IGJvb2wgY2FzZVNlbnNpdGl2ZSwgYm9vbCBpc1JlZ2V4KTsKK0pTX0VYUE9SVF9QUklWQVRFIGlu
dCBjb3VudFJlZ3VsYXJFeHByZXNzaW9uTWF0Y2hlcyhjb25zdCBKU0M6OllhcnI6OlJlZ3VsYXJF
eHByZXNzaW9uJiwgY29uc3QgU3RyaW5nJik7CitKU19FWFBPUlRfUFJJVkFURSBQYXNzUmVmUHRy
PEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6OkFycmF5PEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6Okdl
bmVyaWNUeXBlczo6U2VhcmNoTWF0Y2g+PiBzZWFyY2hJblRleHRCeUxpbmVzKGNvbnN0IFN0cmlu
ZyYgdGV4dCwgY29uc3QgU3RyaW5nJiBxdWVyeSwgY29uc3QgYm9vbCBjYXNlU2Vuc2l0aXZlLCBj
b25zdCBib29sIGlzUmVnZXgpOworSlNfRVhQT1JUX1BSSVZBVEUgVGV4dFBvc2l0aW9uIHRleHRQ
b3NpdGlvbkZyb21PZmZzZXQoc2l6ZV90IG9mZnNldCwgY29uc3QgVmVjdG9yPHNpemVfdD4mIGxp
bmVFbmRpbmdzKTsKK0pTX0VYUE9SVF9QUklWQVRFIFBhc3NPd25QdHI8VmVjdG9yPHNpemVfdD4+
IGxpbmVFbmRpbmdzKGNvbnN0IFN0cmluZyYpOwogCi19IC8vIG5hbWVzcGFjZSBDb250ZW50U2Vh
cmNoVXRpbHMKLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKK0pTX0VYUE9SVF9QUklWQVRFIFN0cmlu
ZyBmaW5kU2NyaXB0U291cmNlVVJMKGNvbnN0IFN0cmluZyYgY29udGVudCk7CitKU19FWFBPUlRf
UFJJVkFURSBTdHJpbmcgZmluZFNjcmlwdFNvdXJjZU1hcFVSTChjb25zdCBTdHJpbmcmIGNvbnRl
bnQpOworSlNfRVhQT1JUX1BSSVZBVEUgU3RyaW5nIGZpbmRTdHlsZXNoZWV0U291cmNlTWFwVVJM
KGNvbnN0IFN0cmluZyYgY29udGVudCk7CisKK30gLy8gbmFtZXNwYWNlIENvbnRlbnRTZWFyY2hV
dGlsaXRpZXMKKworfSAvLyBuYW1lc3BhY2UgSW5zcGVjdG9yCiAKICNlbmRpZiAvLyBFTkFCTEUo
SU5TUEVDVE9SKQogCi0jZW5kaWYgLy8gIWRlZmluZWQoQ29udGVudFNlYXJjaFV0aWxzX2gpCisj
ZW5kaWYgLy8gIWRlZmluZWQoQ29udGVudFNlYXJjaFV0aWxpdGllc19oKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1NjcmlwdEJyZWFrcG9pbnQuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pbnNwZWN0b3IvU2NyaXB0QnJlYWtwb2ludC5oCnNpbWlsYXJpdHkgaW5kZXgg
OTglCnJlbmFtZSBmcm9tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9TY3JpcHRCcmVha3BvaW50
LmgKcmVuYW1lIHRvIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvU2NyaXB0QnJlYWtw
b2ludC5oCmluZGV4IDE1N2YxZWYuLmUzZDUyNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9TY3JpcHRCcmVha3BvaW50LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9TY3JpcHRCcmVha3BvaW50LmgKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRl
IDx3dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKLW5hbWVz
cGFjZSBXZWJDb3JlIHsKK25hbWVzcGFjZSBJbnNwZWN0b3IgewogCiB0eXBlZGVmIGVudW0gewog
ICAgIFNjcmlwdEJyZWFrcG9pbnRBY3Rpb25UeXBlTG9nLApAQCAtODQsNiArODQsNiBAQCBzdHJ1
Y3QgU2NyaXB0QnJlYWtwb2ludCB7CiAgICAgYm9vbCBhdXRvQ29udGludWU7CiB9OwogCi19IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCit9IC8vIG5hbWVzcGFjZSBJbnNwZWN0b3IKIAogI2VuZGlmIC8v
ICFkZWZpbmVkKFNjcmlwdEJyZWFrcG9pbnRfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL1NjcmlwdERlYnVnTGlzdGVuZXIuaApzaW1pbGFyaXR5IGluZGV4IDk3JQpyZW5h
bWUgZnJvbSBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5oCnJl
bmFtZSB0byBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL1NjcmlwdERlYnVnTGlzdGVu
ZXIuaAppbmRleCAyYTQyNGZmLi43M2Y4NTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvU2NyaXB0RGVidWdMaXN0ZW5lci5oCkBAIC0zMiw3ICszMiw3IEBACiAKICNp
ZiBFTkFCTEUoSkFWQVNDUklQVF9ERUJVR0dFUikKIAotI2luY2x1ZGUgPGRlYnVnZ2VyL0RlYnVn
Z2VyLmg+CisjaW5jbHVkZSAiZGVidWdnZXIvRGVidWdnZXIuaCIKICNpbmNsdWRlIDx3dGYvRm9y
d2FyZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00MCw3ICs0MCw3
IEBAIG5hbWVzcGFjZSBEZXByZWNhdGVkIHsKIGNsYXNzIFNjcmlwdFZhbHVlOwogfQogCi1uYW1l
c3BhY2UgV2ViQ29yZSB7CituYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAogY2xhc3MgU2NyaXB0RGVi
dWdMaXN0ZW5lciB7CiBwdWJsaWM6CkBAIC03NSw3ICs3NSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIHZvaWQgZGlkQ29udGludWUoKSA9IDA7CiB9OwogCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Cit9IC8vIG5hbWVzcGFjZSBJbnNwZWN0b3IKIAogI2VuZGlmIC8vIEVOQUJMRShKQVZBU0NSSVBU
X0RFQlVHR0VSKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9S
ZWdFeHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcAppbmRl
eCA2YzAwNDA5Li4zMGMxMDVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWdFeHAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4
cC5jcHAKQEAgLTM1Miw4ICszNTIsOCBAQCBpbnQgUmVnRXhwOjptYXRjaChWTSYgdm0sIGNvbnN0
IFN0cmluZyYgcywgdW5zaWduZWQgc3RhcnRPZmZzZXQsIFZlY3RvcjxpbnQsIDMyPgogICAgIC8v
IFRoZSBvZmZzZXQgdmVjdG9yIGhhbmRsaW5nIG5lZWRzIHRvIGNoYW5nZSBhcyB3ZWxsLgogICAg
IC8vIFJpZ2h0IG5vdyB3ZSBjb252ZXJ0IGEgbWF0Y2ggd2hlcmUgdGhlIG9mZnNldHMgb3ZlcmZs
b3dlZCBpbnRvIG1hdGNoIGZhaWx1cmUuCiAgICAgLy8gVGhlcmUgYXJlIHR3byBwbGFjZXMgaW4g
V2ViQ29yZSB0aGF0IGNhbGwgdGhlIGludGVycHJldGVyIGRpcmVjdGx5IHRoYXQgbmVlZCB0bwot
ICAgIC8vIGhhdmUgdGhlaXIgb2Zmc2V0cyBjaGFuZ2VkIHRvIGludCBhcyB3ZWxsLiBUaGV5IGFy
ZSBwbGF0Zm9ybS90ZXh0L1JlZ3VsYXJFeHByZXNzaW9uLmNwcAotICAgIC8vIGFuZCBpbnNwZWN0
b3IvQ29udGVudFNlYXJjaFV0aWxzLmNwcC4KKyAgICAvLyBoYXZlIHRoZWlyIG9mZnNldHMgY2hh
bmdlZCB0byBpbnQgYXMgd2VsbC4gVGhleSBhcmUgeWFyci9SZWd1bGFyRXhwcmVzc2lvbi5jcHAK
KyAgICAvLyBhbmQgaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlsaXRpZXMuY3BwCiAgICAgaWYg
KHMubGVuZ3RoKCkgPiBJTlRfTUFYKSB7CiAgICAgICAgIGJvb2wgb3ZlcmZsb3dlZCA9IGZhbHNl
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1JlZ3VsYXJFeHBy
ZXNzaW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9u
LmNwcApzaW1pbGFyaXR5IGluZGV4IDk1JQpyZW5hbWUgZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS90ZXh0L1JlZ3VsYXJFeHByZXNzaW9uLmNwcApyZW5hbWUgdG8gU291cmNlL0phdmFTY3Jp
cHRDb3JlL3lhcnIvUmVndWxhckV4cHJlc3Npb24uY3BwCmluZGV4IDljZDEzMzYuLmI1OGFkMzkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvUmVndWxhckV4cHJlc3Np
b24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9u
LmNwcApAQCAtMjIsMTcgKzIyLDE3IEBACiAgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCiAgKiBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKICAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJSZWd1bGFyRXhwcmVzc2lvbi5oIgogCisjaW5jbHVkZSAi
WWFyci5oIgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0J1bXBQ
b2ludGVyQWxsb2NhdG9yLmg+Ci0jaW5jbHVkZSA8eWFyci9ZYXJyLmg+Ci0jaW5jbHVkZSAiTG9n
Z2luZy5oIgogCi1uYW1lc3BhY2UgV2ViQ29yZSB7CituYW1lc3BhY2UgSlNDIHsgbmFtZXNwYWNl
IFlhcnIgewogCiBjbGFzcyBSZWd1bGFyRXhwcmVzc2lvbjo6UHJpdmF0ZSA6IHB1YmxpYyBSZWZD
b3VudGVkPFJlZ3VsYXJFeHByZXNzaW9uOjpQcml2YXRlPiB7CiBwdWJsaWM6CkBAIC01MCw3ICs1
MCw3IEBAIHByaXZhdGU6CiAgICAgUHJpdmF0ZShjb25zdCBTdHJpbmcmIHBhdHRlcm4sIFRleHRD
YXNlU2Vuc2l0aXZpdHkgY2FzZVNlbnNpdGl2aXR5LCBNdWx0aWxpbmVNb2RlIG11bHRpbGluZU1v
ZGUpCiAgICAgICAgIDogbGFzdE1hdGNoTGVuZ3RoKC0xKQogICAgICAgICAsIG1fcmVnRXhwQnl0
ZUNvZGUoY29tcGlsZShwYXR0ZXJuLCBjYXNlU2Vuc2l0aXZpdHksIG11bHRpbGluZU1vZGUpKQot
ICAgICAgICAsIG1fY29uc3RydWN0aW9uRXJyb3IoMCkKKyAgICAgICAgLCBtX2NvbnN0cnVjdGlv
bkVycm9yKG51bGxwdHIpCiAgICAgewogICAgIH0KIApAQCAtMTE0LDcgKzExNCw3IEBAIGludCBS
ZWd1bGFyRXhwcmVzc2lvbjo6bWF0Y2goY29uc3QgU3RyaW5nJiBzdHIsIGludCBzdGFydEZyb20s
IGludCogbWF0Y2hMZW5ndGgpCiAgICAgaWYgKHN0ci5sZW5ndGgoKSA8PSBJTlRfTUFYKQogICAg
ICAgICByZXN1bHQgPSBKU0M6OllhcnI6OmludGVycHJldChkLT5tX3JlZ0V4cEJ5dGVDb2RlLmdl
dCgpLCBzdHIsIHN0YXJ0RnJvbSwgb2Zmc2V0VmVjdG9yKTsKICAgICBlbHNlIHsKLSAgICAgICAg
Ly8gVGhpcyBjb2RlIGNhbid0IGhhbmRsZSB1bnNpZ25lZCBvZmZzZXRzLiBMaW1pdCBvdXIgcHJv
Y2Vzc2luZyB0byBzdHJpbmdzIHdpdGggb2Zmc2V0cyB0aGF0IAorICAgICAgICAvLyBUaGlzIGNv
ZGUgY2FuJ3QgaGFuZGxlIHVuc2lnbmVkIG9mZnNldHMuIExpbWl0IG91ciBwcm9jZXNzaW5nIHRv
IHN0cmluZ3Mgd2l0aCBvZmZzZXRzIHRoYXQKICAgICAgICAgLy8gY2FuIGJlIHJlcHJlc2VudGVk
IGFzIGludHMuCiAgICAgICAgIHJlc3VsdCA9IEpTQzo6WWFycjo6b2Zmc2V0Tm9NYXRjaDsKICAg
ICB9CkBAIC0xNzIsNyArMTcyLDcgQEAgdm9pZCByZXBsYWNlKFN0cmluZyYgc3RyaW5nLCBjb25z
dCBSZWd1bGFyRXhwcmVzc2lvbiYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIHJlcGwKICAgICAgICAg
c3RyaW5nLnJlcGxhY2UoaW5kZXgsIG1hdGNoTGVuZ3RoLCByZXBsYWNlbWVudCk7CiAgICAgICAg
IGluZGV4ICs9IHJlcGxhY2VtZW50Lmxlbmd0aCgpOwogICAgICAgICBpZiAoIW1hdGNoTGVuZ3Ro
KQotICAgICAgICAgICAgYnJlYWs7ICAvLyBBdm9pZCBpbmZpbml0ZSBsb29wIG9uIDAtbGVuZ3Ro
IG1hdGNoZXMsIGUuZy4gW2Etel0qCisgICAgICAgICAgICBicmVhazsgLy8gQXZvaWQgaW5maW5p
dGUgbG9vcCBvbiAwLWxlbmd0aCBtYXRjaGVzLCBlLmcuIFthLXpdKgogICAgIH0KIH0KIApAQCAt
MTgxLDQgKzE4MSw0IEBAIGJvb2wgUmVndWxhckV4cHJlc3Npb246OmlzVmFsaWQoKSBjb25zdAog
ICAgIHJldHVybiBkLT5tX3JlZ0V4cEJ5dGVDb2RlOwogfQogCi19IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCit9IH0gLy8gbmFtZXNwYWNlIEpTQzo6WWFycgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3lhcnIvUmVndWxhckV4cHJlc3Npb24uaApzaW1pbGFyaXR5IGluZGV4IDkwJQpyZW5hbWUg
ZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1JlZ3VsYXJFeHByZXNzaW9uLmgKcmVu
YW1lIHRvIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmgKaW5k
ZXggZjM0NWE1MS4uMDhhYWYzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
dGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJy
L1JlZ3VsYXJFeHByZXNzaW9uLmgKQEAgLTIwLDcgKzIwLDcgQEAKICAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKICAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAogICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAogI2lmbmRlZiBSZWd1bGFyRXhwcmVzc2lvbl9oCkBAIC0yOCwxNCArMjgsMTQgQEAKIAog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCi1uYW1lc3BhY2UgV2ViQ29yZSB7Citu
YW1lc3BhY2UgSlNDIHsgbmFtZXNwYWNlIFlhcnIgewogCiBlbnVtIE11bHRpbGluZU1vZGUgewog
ICAgIE11bHRpbGluZURpc2FibGVkLAogICAgIE11bHRpbGluZUVuYWJsZWQKIH07CiAKLWNsYXNz
IFJlZ3VsYXJFeHByZXNzaW9uIHsKK2NsYXNzIEpTX0VYUE9SVF9QUklWQVRFIFJlZ3VsYXJFeHBy
ZXNzaW9uIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBSZWd1
bGFyRXhwcmVzc2lvbihjb25zdCBTdHJpbmcmLCBUZXh0Q2FzZVNlbnNpdGl2aXR5LCBNdWx0aWxp
bmVNb2RlID0gTXVsdGlsaW5lRGlzYWJsZWQpOwpAQCAtNTEsMTIgKzUxLDEyIEBAIHB1YmxpYzoK
ICAgICBib29sIGlzVmFsaWQoKSBjb25zdDsKIAogcHJpdmF0ZToKLSAgICBjbGFzcyBQcml2YXRl
OyAgICAKKyAgICBjbGFzcyBQcml2YXRlOwogICAgIFJlZlB0cjxQcml2YXRlPiBkOwogfTsKIAot
dm9pZCByZXBsYWNlKFN0cmluZyYsIGNvbnN0IFJlZ3VsYXJFeHByZXNzaW9uJiwgY29uc3QgU3Ry
aW5nJik7Cit2b2lkIEpTX0VYUE9SVF9QUklWQVRFIHJlcGxhY2UoU3RyaW5nJiwgY29uc3QgUmVn
dWxhckV4cHJlc3Npb24mLCBjb25zdCBTdHJpbmcmKTsKIAotfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQorfSB9IC8vIG5hbWVzcGFjZSBKU0M6OllhcnIKIAogI2VuZGlmIC8vIFJlZ3VsYXJFeHByZXNz
aW9uX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZDJmZmY1NC4uYjUzZTYzOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKQEAgLTE1NzIsNyArMTU3Miw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAg
ICBpbnNwZWN0b3IvQ29tbWFuZExpbmVBUElIb3N0LmNwcAogICAgIGluc3BlY3Rvci9Db21tYW5k
TGluZUFQSU1vZHVsZS5jcHAKICAgICBpbnNwZWN0b3IvQ29uc29sZU1lc3NhZ2UuY3BwCi0gICAg
aW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGlscy5jcHAKICAgICBpbnNwZWN0b3IvRE9NRWRpdG9y
LmNwcAogICAgIGluc3BlY3Rvci9ET01QYXRjaFN1cHBvcnQuY3BwCiAgICAgaW5zcGVjdG9yL0lk
ZW50aWZpZXJzRmFjdG9yeS5jcHAKQEAgLTIwNzEsNyArMjA3MCw2IEBAIHNldChXZWJDb3JlX1NP
VVJDRVMKICAgICBwbGF0Zm9ybS90ZXh0L0xvY2FsZVRvU2NyaXB0TWFwcGluZ0RlZmF1bHQuY3Bw
CiAgICAgcGxhdGZvcm0vdGV4dC9QbGF0Zm9ybUxvY2FsZS5jcHAKICAgICBwbGF0Zm9ybS90ZXh0
L1F1b3RlZFByaW50YWJsZS5jcHAKLSAgICBwbGF0Zm9ybS90ZXh0L1JlZ3VsYXJFeHByZXNzaW9u
LmNwcAogICAgIHBsYXRmb3JtL3RleHQvU2VnbWVudGVkU3RyaW5nLmNwcAogICAgIHBsYXRmb3Jt
L3RleHQvVGV4dEJvdW5kYXJpZXMuY3BwCiAgICAgcGxhdGZvcm0vdGV4dC9UZXh0QnJlYWtJdGVy
YXRvci5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0Y2Q2ZDExLi4xNzIwZDBmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDUgKzEsMTAwIEBACiAyMDE0LTAxLTIzICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBs
ZS5jb20+CiAKKyAgICAgICAgTW92ZSBDb250ZW50U2VhcmNoVXRpbHMsIFNjcmlwdEJyZWFrcG9p
bnQsIGFuZCBTY3JpcHREZWJ1Z0xpc3RlbmVyIGludG8gSmF2YVNjcmlwdENvcmUgZm9yIGluc3Bl
Y3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3
NTM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgICAt
IFJlbmFtZSBDb250ZW50U2VhcmNoVXRpbHMgPT4gQ29udGVudFNlYXJjaFV0aWxpdGllcyBhbmQg
bW92ZSB0byBKYXZhU2NyaXB0Q29yZS4KKyAgICAgICAgICAtIE1vdmUgU2NyaXB0QnJlYWtwb2lu
dCBhbmQgU2NyaXB0RGVidWdMaXN0ZW5lciB0byBKYXZhU2NyaXB0Q29yZS4KKyAgICAgICAgICAt
IE1vdmUgdGhlbSBhbGwgdG8gbmFtZXNwYWNlIEluc3BlY3Rvci4KKyAgICAgICAgICAtIFVwZGF0
ZSBidWlsZCBmaWxlcyBhbmQgdXNlcnMgdG8gdGhlIG5ldyBuYW1lcy4KKworICAgICAgICBObyBj
aGFuZ2UgaW4gZnVuY3Rpb25hbGl0eSwganVzdCBtb3ZpbmcgY29kZS4KKworICAgICAgICAqIENN
YWtlTGlzdHMudHh0OgorICAgICAgICAqIEZvcndhcmRpbmdIZWFkZXJzL2luc3BlY3Rvci9Db250
ZW50U2VhcmNoVXRpbGl0aWVzLmg6IEFkZGVkLgorICAgICAgICAqIEZvcndhcmRpbmdIZWFkZXJz
L2luc3BlY3Rvci9TY3JpcHRCcmVha3BvaW50Lmg6IEFkZGVkLgorICAgICAgICAqIEZvcndhcmRp
bmdIZWFkZXJzL2luc3BlY3Rvci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmg6IEFkZGVkLgorICAgICAg
ICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNv
cmUudmN4cHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZp
bHRlcnM6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL1BhZ2VTY3JpcHREZWJ1Z1NlcnZlci5jcHA6CisgICAgICAgICog
YmluZGluZ3MvanMvUGFnZVNjcmlwdERlYnVnU2VydmVyLmg6CisgICAgICAgICogYmluZGluZ3Mv
anMvU2NyaXB0RGVidWdTZXJ2ZXIuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1NjcmlwdERl
YnVnU2VydmVyLmg6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyU2NyaXB0RGVidWdTZXJ2
ZXIuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlclNjcmlwdERlYnVnU2VydmVyLmg6
CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckFsbEluT25lLmNwcDoKKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpzZWFyY2hJbkNvbnRlbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6c291cmNlTWFwVVJMRm9yU2NyaXB0KToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmRpZFBhcnNlU291cmNlKToKKyAg
ICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oOgorICAgICAgICAqIGlu
c3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yUGFnZUFnZW50Ojpzb3VyY2VNYXBVUkxGb3JSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JQYWdlQWdlbnQ6OnNlYXJjaEluUmVzb3VyY2UpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpzZWFyY2hJblJlc291cmNlcyk6CisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6YnVpbGRT
b3VyY2VSYW5nZU9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHlsZVNoZWV0
OjpsaW5lRW5kaW5ncyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHlsZVNoZWV0Rm9y
SW5saW5lU3R5bGU6OmxpbmVFbmRpbmdzKToKKworMjAxNC0wMS0yMyAgSm9zZXBoIFBlY29yYXJv
ICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgUmVndWxhckV4cHJlc3Npb24g
aW50byBKYXZhU2NyaXB0Q29yZSBmb3IgaW5zcGVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjc1MjYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgYXMgYXBwcm9wcmlhdGUgZm9yIHRoZSBt
b3ZlZCBmaWxlIGFuZCBuYW1lc3BhY2UKKyAgICAgICAgY2hhbmdlIGZvciBjbGFzcyBSZWd1bGFy
RXhwcmVzc2lvbi4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEZvcndh
cmRpbmdIZWFkZXJzL3lhcnIvUmVndWxhckV4cHJlc3Npb24uaDogQWRkZWQuCisgICAgICAgICog
R05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKyAgICAgICAg
KiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qOgorICAgICAgICAqIFdlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogZG9tL0RPTUltcGxlbWVudGF0aW9uLmg6Cisg
ICAgICAgICogaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKiBodG1s
L0Jhc2VUZXh0SW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VUZXh0SW5wdXRU
eXBlOjpwYXR0ZXJuTWlzbWF0Y2gpOgorICAgICAgICAqIGh0bWwvRW1haWxJbnB1dFR5cGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6aXNWYWxpZEVtYWlsQWRkcmVzcyk6CisgICAgICAgICogaHRt
bC9JbnB1dFR5cGUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbHMu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlYXJjaFV0aWxzOjpnZXRSZWd1bGFyRXhw
cmVzc2lvbk1hdGNoZXNCeUxpbmVzKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRTZWFyY2hV
dGlsczo6Y3JlYXRlU2VhcmNoUmVnZXgpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlYXJj
aFV0aWxzOjpjb3VudFJlZ3VsYXJFeHByZXNzaW9uTWF0Y2hlcyk6CisgICAgICAgIChXZWJDb3Jl
OjpDb250ZW50U2VhcmNoVXRpbHM6OnNlYXJjaEluVGV4dEJ5TGluZXMpOgorICAgICAgICAqIGlu
c3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbHMuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVj
dG9yRGVidWdnZXJBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjptYXRjaGVzKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmJyZWFrcG9pbnRBY3Rpb25Mb2cp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6YnJlYWtwb2ludEFj
dGlvblNvdW5kKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5o
OgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpzZWFyY2hJblJlc291cmNlcyk6CisgICAgICAg
ICogaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5oOgorICAgICAgICAqIGluc3BlY3Rvci9J
bnNwZWN0b3JSdW50aW1lQWdlbnQuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JS
dW50aW1lQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpzZWxlY3RvcnNGcm9tU291cmNlKToKKyAgICAgICAgKiBp
bnNwZWN0b3IvV29ya2VyRGVidWdnZXJBZ2VudC5jcHA6CisgICAgICAgICogcGFnZS9GcmFtZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVSZWdFeHBGb3JMYWJlbHMpOgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWU6OnNlYXJjaEZvckxhYmVsc0Fib3ZlQ2VsbCk6CisgICAgICAgIChXZWJD
b3JlOjpGcmFtZTo6c2VhcmNoRm9yTGFiZWxzQmVmb3JlRWxlbWVudCk6CisgICAgICAgIChXZWJD
b3JlOjptYXRjaExhYmVsc0FnYWluc3RTdHJpbmcpOgorICAgICAgICAqIHBhZ2UvRnJhbWUuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVu
R0xDb21tb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0Q6OmdldFVu
bWFuZ2xlZEluZm9Mb2cpOgorCisyMDE0LTAxLTIzICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFy
b0BhcHBsZS5jb20+CisKICAgICAgICAgV2ViIEluc3BlY3RvcjogUmVtb3ZlIHJlY29tcGlsZUFs
bEpTRnVuY3Rpb25zIHRpbWVyIGluIFNjcmlwdERlYnVnU2VydmVyCiAgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjc0MDkKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvRm9yd2FyZGluZ0hlYWRlcnMvaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGls
aXRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL2luc3BlY3Rvci9Db250
ZW50U2VhcmNoVXRpbGl0aWVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
OGVlZTEyNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL0ZvcndhcmRpbmdIZWFk
ZXJzL2luc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmgKQEAgLTAsMCArMSw0IEBACisj
aWZuZGVmIFdlYkNvcmVfRldEX0NvbnRlbnRTZWFyY2hVdGlsaXRpZXNfaAorI2RlZmluZSBXZWJD
b3JlX0ZXRF9Db250ZW50U2VhcmNoVXRpbGl0aWVzX2gKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29y
ZS9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmg+CisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL2luc3BlY3Rvci9TY3JpcHRCcmVha3BvaW50LmggYi9T
b3VyY2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9pbnNwZWN0b3IvU2NyaXB0QnJlYWtwb2lu
dC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE5ZGU0MjUKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9pbnNwZWN0b3IvU2Ny
aXB0QnJlYWtwb2ludC5oCkBAIC0wLDAgKzEsNCBAQAorI2lmbmRlZiBXZWJDb3JlX0ZXRF9TY3Jp
cHRCcmVha3BvaW50X2gKKyNkZWZpbmUgV2ViQ29yZV9GV0RfU2NyaXB0QnJlYWtwb2ludF9oCisj
aW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvU2NyaXB0QnJlYWtwb2ludC5oPgorI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9pbnNwZWN0b3IvU2NyaXB0
RGVidWdMaXN0ZW5lci5oIGIvU291cmNlL1dlYkNvcmUvRm9yd2FyZGluZ0hlYWRlcnMvaW5zcGVj
dG9yL1NjcmlwdERlYnVnTGlzdGVuZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5lYzZmZWE3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvRm9yd2FyZGlu
Z0hlYWRlcnMvaW5zcGVjdG9yL1NjcmlwdERlYnVnTGlzdGVuZXIuaApAQCAtMCwwICsxLDQgQEAK
KyNpZm5kZWYgV2ViQ29yZV9GV0RfU2NyaXB0RGVidWdMaXN0ZW5lcl9oCisjZGVmaW5lIFdlYkNv
cmVfRldEX1NjcmlwdERlYnVnTGlzdGVuZXJfaAorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1Nj
cmlwdERlYnVnTGlzdGVuZXIuaD4KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Rm9yd2FyZGluZ0hlYWRlcnMveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5oIGIvU291cmNlL1dlYkNv
cmUvRm9yd2FyZGluZ0hlYWRlcnMveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5OWZhNDYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy95YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmgKQEAg
LTAsMCArMSw0IEBACisjaWZuZGVmIFdlYkNvcmVfRldEX1JlZ3VsYXJFeHByZXNzaW9uX2gKKyNk
ZWZpbmUgV2ViQ29yZV9GV0RfUmVndWxhckV4cHJlc3Npb25faAorI2luY2x1ZGUgPEphdmFTY3Jp
cHRDb3JlL1JlZ3VsYXJFeHByZXNzaW9uLmg+CisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5s
aXN0LmFtCmluZGV4IDBmYzcyMzUuLjY0Zjg3MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L0dOVW1ha2VmaWxlLmxpc3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlz
dC5hbQpAQCAtMzc2NSw4ICszNzY1LDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvQ29uc29sZUFQSVR5cGVzLmggXAogCVNvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9D
b25zb2xlTWVzc2FnZS5oIFwKLQlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvQ29udGVudFNlYXJj
aFV0aWxzLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0NvbnRlbnRTZWFyY2hVdGls
cy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvRE9NRWRpdG9yLmNwcCBcCiAJU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0RPTUVkaXRvci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvRE9NUGF0Y2hTdXBwb3J0LmNwcCBcCkBAIC0zODY0LDEyICszODYyLDEwIEBAIHdlYmNvcmVf
c291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1BhZ2VSdW50aW1lQWdlbnQu
aCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1NjcmlwdEFyZ3VtZW50cy5jcHAgXAogCVNv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9TY3JpcHRBcmd1bWVudHMuaCBcCi0JU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL1NjcmlwdEJyZWFrcG9pbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL1NjcmlwdENhbGxGcmFtZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9TY3Jp
cHRDYWxsRnJhbWUuaCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1NjcmlwdENhbGxTdGFj
ay5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9TY3JpcHRDYWxsU3RhY2suaCBcCi0J
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1NjcmlwdERlYnVnTGlzdGVuZXIuaCBcCiAJU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL1RpbWVsaW5lUmVjb3JkRmFjdG9yeS5jcHAgXAogCVNvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9UaW1lbGluZVJlY29yZEZhY3RvcnkuaCBcCiAJU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL1dvcmtlckNvbnNvbGVBZ2VudC5jcHAgXApAQCAtNTk1MCw4ICs1OTQ2LDYg
QEAgcGxhdGZvcm1fc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9Q
bGF0Zm9ybUxvY2FsZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1F1b3RlZFBy
aW50YWJsZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvUXVvdGVkUHJpbnRh
YmxlLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvUmVndWxhckV4cHJlc3Npb24u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1JlZ3VsYXJFeHByZXNzaW9uLmgg
XAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvU2VnbWVudGVkU3RyaW5nLmNwcCBcCiAJ
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9TZWdtZW50ZWRTdHJpbmcuaCBcCiAJU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9TdHJpbmdXaXRoRGlyZWN0aW9uLmggXApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LmV4cC5pbgppbmRleCBjZGY0ODE4Li43Zjc5NGFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAt
NzAyLDggKzcwMiw2IEBAIF9fWk43V2ViQ29yZTE3SlNET01HbG9iYWxPYmplY3Q2c19pbmZvRQog
X19aTjdXZWJDb3JlMTdNb3VzZVJlbGF0ZWRFdmVudDdvZmZzZXRYRXYKIF9fWk43V2ViQ29yZTE3
TW91c2VSZWxhdGVkRXZlbnQ3b2Zmc2V0WUV2CiBfX1pON1dlYkNvcmUxN1BsYXRmb3JtQ0FGaWx0
ZXJzMTdzZXRGaWx0ZXJzT25MYXllckVQN0NBTGF5ZXJSS05TXzE2RmlsdGVyT3BlcmF0aW9uc0UK
LV9fWk43V2ViQ29yZTE3UmVndWxhckV4cHJlc3Npb25DMUVSS04zV1RGNlN0cmluZ0VOUzFfMTlU
ZXh0Q2FzZVNlbnNpdGl2aXR5RU5TXzEzTXVsdGlsaW5lTW9kZUUKLV9fWk43V2ViQ29yZTE3UmVn
dWxhckV4cHJlc3Npb25EMUV2CiBfX1pON1dlYkNvcmUxN1NRTGl0ZVRyYW5zYWN0aW9uNWJlZ2lu
RXYKIF9fWk43V2ViQ29yZTE3U1FMaXRlVHJhbnNhY3Rpb242Y29tbWl0RXYKIF9fWk43V2ViQ29y
ZTE3U1FMaXRlVHJhbnNhY3Rpb244cm9sbGJhY2tFdgpAQCAtMTA0MSw3ICsxMDM5LDcgQEAgX19a
TjdXZWJDb3JlNUZyYW1lMTRmcmFtZUZvcldpZGdldEVQS05TXzZXaWRnZXRFCiBfX1pON1dlYkNv
cmU1RnJhbWUxN3NldFBhZ2Vab29tRmFjdG9yRWYKIF9fWk43V2ViQ29yZTVGcmFtZTE3c2V0VGV4
dFpvb21GYWN0b3JFZgogX19aTjdXZWJDb3JlNUZyYW1lMjN2aXNpYmxlUG9zaXRpb25Gb3JQb2lu
dEVSS05TXzhJbnRQb2ludEUKLV9fWk43V2ViQ29yZTVGcmFtZTI0c2VhcmNoRm9yTGFiZWxzQWJv
dmVDZWxsRVBOU18xN1JlZ3VsYXJFeHByZXNzaW9uRVBOU18yMEhUTUxUYWJsZUNlbGxFbGVtZW50
RVBtCitfX1pON1dlYkNvcmU1RnJhbWUyNHNlYXJjaEZvckxhYmVsc0Fib3ZlQ2VsbEVQTjNKU0M0
WWFycjE3UmVndWxhckV4cHJlc3Npb25FUE5TXzIwSFRNTFRhYmxlQ2VsbEVsZW1lbnRFUG0KIF9f
Wk43V2ViQ29yZTVGcmFtZTI1c2V0UGFnZUFuZFRleHRab29tRmFjdG9yc0VmZgogX19aTjdXZWJD
b3JlNUZyYW1lMjdyZXNpemVQYWdlUmVjdHNLZWVwaW5nUmF0aW9FUktOU185RmxvYXRTaXplRVMz
XwogX19aTjdXZWJDb3JlNUZyYW1lNmNyZWF0ZUVQTlNfNFBhZ2VFUE5TXzIxSFRNTEZyYW1lT3du
ZXJFbGVtZW50RVBOU18xN0ZyYW1lTG9hZGVyQ2xpZW50RQpAQCAtMTE0Nyw3ICsxMTQ1LDYgQEAg
X19aTjdXZWJDb3JlN1RleHRSdW4yMnNldEFsbG93c1JvdW5kaW5nSGFja3NFYgogX19aTjdXZWJD
b3JlN2Nvb2tpZXNFUEtOU184RG9jdW1lbnRFUktOU18zVVJMRQogX19aTjdXZWJDb3JlN2pzQXJy
YXlFUE4zSlNDOUV4ZWNTdGF0ZUVQTlNfMTdKU0RPTUdsb2JhbE9iamVjdEVOM1dURjEwUGFzc1Jl
ZlB0cklOU18xM0RPTVN0cmluZ0xpc3RFRUUKIF9fWk43V2ViQ29yZTdtYWtlUkdCRWlpaQotX19a
TjdXZWJDb3JlN3JlcGxhY2VFUk4zV1RGNlN0cmluZ0VSS05TXzE3UmVndWxhckV4cHJlc3Npb25F
UktTMV8KIF9fWk43V2ViQ29yZTd0b0ludDY0RVBOM0pTQzlFeGVjU3RhdGVFTlMwXzdKU1ZhbHVl
RU5TXzMwSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uRQogX19aTjdXZWJDb3JlN3RvUmFu
Z2VFTjNKU0M3SlNWYWx1ZUUKIF9fWk43V2ViQ29yZTd0b1VJbnQ4RVBOM0pTQzlFeGVjU3RhdGVF
TlMwXzdKU1ZhbHVlRU5TXzMwSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uRQpAQCAtMTYx
OSw5ICsxNjE2LDYgQEAgX19aTks3V2ViQ29yZTE2VmlzaWJsZVNlbGVjdGlvbjVpc0FsbEVOU18y
N0VkaXRpbmdCb3VuZGFyeUNyb3NzaW5nUnVsZUUKIF9fWk5LN1dlYkNvcmUxN0hUTUxQbHVnSW5F
bGVtZW50MTJwbHVnaW5XaWRnZXRFdgogX19aTks3V2ViQ29yZTE3SFRNTFNlbGVjdEVsZW1lbnQ1
dmFsdWVFdgogX19aTks3V2ViQ29yZTE3SlNET01HbG9iYWxPYmplY3QyMnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHRFdgotX19aTks3V2ViQ29yZTE3UmVndWxhckV4cHJlc3Npb24xM21hdGNoZWRMZW5n
dGhFdgotX19aTks3V2ViQ29yZTE3UmVndWxhckV4cHJlc3Npb241bWF0Y2hFUktOM1dURjZTdHJp
bmdFaVBpCi1fX1pOSzdXZWJDb3JlMTdSZWd1bGFyRXhwcmVzc2lvbjlzZWFyY2hSZXZFUktOM1dU
RjZTdHJpbmdFCiBfX1pOSzdXZWJDb3JlMTdSZXNvdXJjZUVycm9yQmFzZThsYXp5SW5pdEV2CiBf
X1pOSzdXZWJDb3JlMThQbGF0Zm9ybVBhc3RlYm9hcmQxMWNoYW5nZUNvdW50RXYKIF9fWk5LN1dl
YkNvcmUxOFJlbmRlckxheWVyQmFja2luZzExY29udGVudHNCb3hFdgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKaW5kZXggMTNkZmRiMy4uZTc1NmUx
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4
cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
CkBAIC04NDc5LDcgKzg0NzksNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cdGV4dFxMb2NhbGVUb1NjcmlwdE1hcHBpbmdEZWZhdWx0LmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXHRleHRcUGxhdGZvcm1Mb2NhbGUuY3BwIiAvPgogICAg
IDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cdGV4dFxRdW90ZWRQcmludGFibGUuY3Bw
IiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cdGV4dFxSZWd1bGFyRXhw
cmVzc2lvbi5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVx0ZXh0
XFNlZ21lbnRlZFN0cmluZy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xTdHJpbmdUcnVuY2F0b3IuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcU3Vycm9nYXRlUGFpckF3YXJlVGV4dEl0ZXJhdG9y
LmNwcCIgLz4KQEAgLTE3NTg1LDE0ICsxNzU4NCw2IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVp
bGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9u
fFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVp
bGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9u
fHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgIDwvQ2xDb21waWxlPgotICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXENvbnRlbnRTZWFyY2hVdGlscy5jcHAiPgot
ICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAg
ICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZXx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxF
eGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0p
Jz09J1JlbGVhc2VfV2luQ2Fpcm98V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAg
ICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+
Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwk
KFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+
Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwk
KFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgot
ICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXERP
TUVkaXRvci5jcHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVk
RnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmln
dXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21C
dWlsZD4KQEAgLTE5NjE1LDcgKzE5NjA2LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXHRleHRcUGFyc2VyVXRpbGl0aWVzLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVx0ZXh0XFBsYXRmb3JtTG9jYWxlLmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVx0ZXh0XFF1b3RlZFByaW50YWJsZS5oIiAvPgotICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cdGV4dFxSZWd1bGFyRXhwcmVzc2lvbi5oIiAv
PgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cdGV4dFxTZWdtZW50ZWRTdHJp
bmcuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXHRleHRcU3RyaW5n
SGFzaC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cdGV4dFxTdHJp
bmdJbXBsLmgiIC8+CkBAIC0yMDg3Nyw2ICsyMDg2Nyw3IEBACiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxGb3J3YXJkaW5nSGVhZGVyc1xydW50aW1lXE9wZXJhdGlvbnMuaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXEZvcndhcmRpbmdIZWFkZXJzXHJ1bnRpbWVcUHJvdGVjdC5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cRm9yd2FyZGluZ0hlYWRlcnNccnVudGlt
ZVxTdHJpbmdPYmplY3QuaCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXEZvcndhcmRp
bmdIZWFkZXJzXHlhcnJcUmVndWxhckV4cHJlc3Npb24uaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXEZvcndhcmRpbmdIZWFkZXJzXHlhcnJcWWFyci5oIiAvPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cRm9yd2FyZGluZ0hlYWRlcnNceWFyclxZYXJySW50ZXJwcmV0ZXIuaCIg
Lz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXEZvcndhcmRpbmdIZWFkZXJzXHlhcnJcWWFy
clBhdHRlcm4uaCIgLz4KQEAgLTIwOTI2LDcgKzIwOTE3LDYgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXGluc3BlY3RvclxDb21tYW5kTGluZUFQSUhvc3QuaCIgLz4KICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxDb21tYW5kTGluZUFQSU1vZHVsZS5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXENvbnNvbGVNZXNzYWdlLmgiIC8+Ci0g
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcQ29udGVudFNlYXJjaFV0aWxzLmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcRE9NRWRpdG9yLmgiIC8+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcRE9NUGF0Y2hTdXBwb3J0Lmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSWRlbnRpZmllcnNGYWN0
b3J5LmgiIC8+CkBAIC0yMDk3OSwxMCArMjA5NjksOCBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5caW5zcGVjdG9yXFBhZ2VJbmplY3RlZFNjcmlwdE1hbmFnZXIuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxQYWdlUnVudGltZUFnZW50LmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcU2NyaXB0QXJndW1lbnRzLmgiIC8+Ci0g
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcU2NyaXB0QnJlYWtwb2ludC5oIiAv
PgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXFNjcmlwdENhbGxGcmFtZS5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXFNjcmlwdENhbGxTdGFj
ay5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXFNjcmlwdERlYnVn
TGlzdGVuZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxUaW1l
bGluZVJlY29yZEZhY3RvcnkuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3Bl
Y3RvclxXb3JrZXJDb25zb2xlQWdlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XGluc3BlY3RvclxXb3JrZXJEZWJ1Z2dlckFnZW50LmgiIC8+CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggNjI3
NDc5Yi4uY2M2MTBkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMTk1Myw5ICsxOTUzLDYgQEAKICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXHRleHRcUXVvdGVkUHJpbnRhYmxlLmNwcCI+
CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXHRleHQ8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4K
LSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXHRleHRcUmVndWxhckV4cHJlc3Np
b24uY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cdGV4dDwvRmlsdGVyPgotICAgIDwvQ2xD
b21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cdGV4dFxTZWdtZW50
ZWRTdHJpbmcuY3BwIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cdGV4dDwvRmlsdGVyPgogICAg
IDwvQ2xDb21waWxlPgpAQCAtNDczNyw5ICs0NzM0LDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXGluc3BlY3RvclxDb25zb2xlTWVzc2FnZS5jcHAiPgogICAgICAgPEZpbHRlcj5pbnNw
ZWN0b3I8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9
Ii4uXGluc3BlY3RvclxDb250ZW50U2VhcmNoVXRpbHMuY3BwIj4KLSAgICAgIDxGaWx0ZXI+aW5z
cGVjdG9yPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxpbnNwZWN0b3JcRE9NRWRpdG9yLmNwcCI+CiAgICAgICA8RmlsdGVyPmluc3BlY3Rvcjwv
RmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtODc3NCw5ICs4NzY4LDYgQEAKICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXHRleHRcUXVvdGVkUHJpbnRhYmxlLmgiPgogICAg
ICAgPEZpbHRlcj5wbGF0Zm9ybVx0ZXh0PC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVx0ZXh0XFJlZ3VsYXJFeHByZXNzaW9uLmgi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVx0ZXh0PC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVx0ZXh0XFNlZ21lbnRlZFN0cmlu
Zy5oIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cdGV4dDwvRmlsdGVyPgogICAgIDwvQ2xJbmNs
dWRlPgpAQCAtMTIwODYsNiArMTIwNzcsOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
Rm9yd2FyZGluZ0hlYWRlcnNccnVudGltZVxTdHJpbmdPYmplY3QuaCI+CiAgICAgICA8RmlsdGVy
PkZvcndhcmRpbmdIZWFkZXJzXHJ1bnRpbWU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KKyAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXEZvcndhcmRpbmdIZWFkZXJzXHlhcnJcUmVndWxhckV4
cHJlc3Npb24uaCI+CisgICAgICA8RmlsdGVyPkZvcndhcmRpbmdIZWFkZXJzXHlhcnI8L0ZpbHRl
cj4KKyAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXEZvcndhcmRp
bmdIZWFkZXJzXHlhcnJcWWFyci5oIj4KICAgICAgIDxGaWx0ZXI+Rm9yd2FyZGluZ0hlYWRlcnNc
eWFycjwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTIyNzIsOSArMTIyNjYsNiBAQAog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXENvbnNvbGVNZXNzYWdlLmgiPgog
ICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxDb250ZW50U2VhcmNoVXRpbHMuaCI+Ci0g
ICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXERPTUVkaXRvci5oIj4KICAgICAgIDxGaWx0
ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC0xMjQzMSwxOCArMTI0
MjIsMTIgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxTY3JpcHRBcmd1
bWVudHMuaCI+CiAgICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgogICAgIDwvQ2xJbmNs
dWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXFNjcmlwdEJyZWFrcG9p
bnQuaCI+Ci0gICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRl
PgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXFNjcmlwdENhbGxGcmFtZS5o
Ij4KICAgICAgIDxGaWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcU2NyaXB0Q2FsbFN0YWNrLmgiPgog
ICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxTY3JpcHREZWJ1Z0xpc3RlbmVyLmgiPgot
ICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxUaW1lbGluZVJlY29yZEZhY3RvcnkuaCI+
CiAgICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IGI1OGFlMTYuLjA2YjA1ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE5ODAsOCArMTk4MCw2IEBACiAJCTU5MDVBREMwMTMw
MkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTA1QURCRTEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJl
ZVZpZXdlci5oICovOyB9OwogCQk1OTBFMUI0OTExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3Jp
ZW50YXRpb25EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTkwRTFC
NEIxMUU0RUY3MDAwNjlGNzg0IC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTBFMUI0QTEx
RTRFRjcwMDA2OUY3ODQgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCAqLzsg
fTsKLQkJNTkxMDJGQkIxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTEwMkZCOTE0
MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmNwcCAqLzsgfTsKLQkJNTkxMDJG
QkMxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkxMDJGQkExNDMyN0QzQjAwM0M5RDA0
IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oICovOyB9OwogCQk1OTEzQTI0MTEzRDQ5RUJBMDBGNUIw
NUMgLyogSWRlbnRpZmllcnNGYWN0b3J5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDU5MTNBMjNGMTNENDlFQkEwMEY1QjA1QyAvKiBJZGVudGlmaWVy
c0ZhY3RvcnkuY3BwICovOyB9OwogCQk1OTEzQTI0MjEzRDQ5RUJBMDBGNUIwNUMgLyogSWRlbnRp
ZmllcnNGYWN0b3J5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1OTEzQTI0MDEzRDQ5RUJBMDBGNUIwNUMgLyogSWRlbnRpZmllcnNGYWN0b3J5LmggKi87
IH07CiAJCTU5MzA5QTExMTFGNEFFNTgwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVu
dE1vY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTkzMDlBMTAxMUY0QUU1ODAwMjUwNjAzIC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5j
cHAgKi87IH07CkBAIC0yMjgzLDggKzIyODEsNiBAQAogCQk3QUNEODhENDE0QzA4QkQ2MDA4NEVE
RDIgLyogSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBQ0Q4OEQyMTRDMDhCRDYwMDg0RUREMiAvKiBJbnNwZWN0
b3JJbmRleGVkREJBZ2VudC5oICovOyB9OwogCQk3QURFNzIyNjEwQ0JCQjlCMDA2QjNCM0EgLyog
Q29udGV4dE1lbnVQcm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0FERTcyMjUxMENCQkI5QjAwNkIzQjNBIC8qIENvbnRleHRNZW51UHJvdmlk
ZXIuaCAqLzsgfTsKIAkJN0FGMTFBNUExMkU3Mjc0OTAwNjFGMjNDIC8qIEluc3BlY3RvclJ1bnRp
bWVBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
N0FGMTFBNTkxMkU3Mjc0OTAwNjFGMjNDIC8qIEluc3BlY3RvclJ1bnRpbWVBZ2VudC5oICovOyB9
OwotCQk3QUZENEE4QjExMzFDMjc2MDAzNUI4ODMgLyogU2NyaXB0QnJlYWtwb2ludC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGRDRBOEExMTMxQzI3
NjAwMzVCODgzIC8qIFNjcmlwdEJyZWFrcG9pbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk3QUZENEZGNDExMzI3N0I2MDAzNUI4ODMgLyogU2Ny
aXB0RGVidWdMaXN0ZW5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0FGRDRGRjMxMTMyNzdCNjAwMzVCODgzIC8qIFNjcmlwdERlYnVnTGlzdGVuZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QkU3
NDI3MzgxRkE5MDZGQkI0RjBGMkMgLyogSlNTVkdHcmFwaGljc0VsZW1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk1MEM0QzAyQkVEODkzNkY4MThF
MkY5OSAvKiBKU1NWR0dyYXBoaWNzRWxlbWVudC5oICovOyB9OwogCQk3QzJCREQzRDE3QzdGOThD
MDAzOEZGMTUgLyogSlNET01HbG9iYWxPYmplY3RUYXNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDMkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBK
U0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICovOyB9OwogCQk3QzJCREQzRTE3QzdGOThDMDAzOEZG
MTUgLyogSlNET01HbG9iYWxPYmplY3RUYXNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3QzJCREQzQzE3QzdGOThCMDAzOEZGMTUgLyogSlNET01HbG9i
YWxPYmplY3RUYXNrLmggKi87IH07CkBAIC00NTA1LDggKzQ1MDEsNiBAQAogCQlCMkMzREEyNDBE
MDA2QzFEMDBFRjZGMjYgLyogQmlkaUNvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEOUYzMEQwMDZDMUQwMEVGNkYyNiAvKiBCaWRpQ29u
dGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CUIyQzNEQTI1MEQwMDZDMUQwMEVGNkYyNiAvKiBCaWRpUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEOUY0MEQwMDZDMUQwMEVGNkYy
NiAvKiBCaWRpUmVzb2x2ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQlCMkMzREEyQTBEMDA2QzFEMDBFRjZGMjYgLyogQ2hhcnNldERhdGEuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEOUZBMEQw
MDZDMUQwMEVGNkYyNiAvKiBDaGFyc2V0RGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUIyQzNEQTJDMEQwMDZDMUQwMEVGNkYyNiAvKiBSZWd1
bGFyRXhwcmVzc2lvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMkMzRDlGQzBEMDA2QzFEMDBFRjZGMjYgLyogUmVndWxhckV4cHJlc3Npb24uY3Bw
ICovOyB9OwotCQlCMkMzREEyRDBEMDA2QzFEMDBFRjZGMjYgLyogUmVndWxhckV4cHJlc3Npb24u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEOUZE
MEQwMDZDMUQwMEVGNkYyNiAvKiBSZWd1bGFyRXhwcmVzc2lvbi5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUIyQzNEQTJFMEQwMDZDMUQwMEVGNkYy
NiAvKiBTZWdtZW50ZWRTdHJpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjJDM0Q5RkUwRDAwNkMxRDAwRUY2RjI2IC8qIFNlZ21lbnRlZFN0cmlu
Zy5jcHAgKi87IH07CiAJCUIyQzNEQTJGMEQwMDZDMUQwMEVGNkYyNiAvKiBTZWdtZW50ZWRTdHJp
bmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNE
OUZGMEQwMDZDMUQwMEVGNkYyNiAvKiBTZWdtZW50ZWRTdHJpbmcuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCMkMzREEzNDBEMDA2QzFEMDBFRjZG
MjYgLyogVGV4dEJvdW5kYXJpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIyQzNEQTA0MEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0Qm91bmRhcmllcy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC04OTAz
LDggKzg4OTcsNiBAQAogCQk1OTA1QURCRTEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYTUxUcmVlVmlld2VyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBE
ZXZpY2VPcmllbnRhdGlvbkRhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RGV2aWNlT3JpZW50YXRpb25EYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5
MEUxQjRBMTFFNEVGNzAwMDY5Rjc4NCAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEZXZpY2VPcmllbnRh
dGlvbkV2ZW50Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTkxMDJG
QjkxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb250ZW50U2VhcmNoVXRpbHMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwotCQk1OTEwMkZCQTE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVu
dFNlYXJjaFV0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRlbnRT
ZWFyY2hVdGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTEzQTIzRjEzRDQ5
RUJBMDBGNUIwNUMgLyogSWRlbnRpZmllcnNGYWN0b3J5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IElkZW50aWZpZXJzRmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTU5MTNBMjQwMTNENDlFQkEwMEY1QjA1QyAvKiBJZGVudGlmaWVyc0Zh
Y3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSWRlbnRpZmllcnNGYWN0
b3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5MzA5QTEwMTFGNEFFNTgwMDI1
MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTkyMzgsOCArOTIzMCw2IEBACiAJCTdBQ0Q4OEQy
MTRDMDhCRDYwMDg0RUREMiAvKiBJbnNwZWN0b3JJbmRleGVkREJBZ2VudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JJbmRleGVkREJBZ2VudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk3QURFNzIyNTEwQ0JCQjlCMDA2QjNCM0EgLyogQ29udGV4
dE1lbnVQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZXh0
TWVudVByb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRjExQTU5MTJF
NzI3NDkwMDYxRjIzQyAvKiBJbnNwZWN0b3JSdW50aW1lQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yUnVudGltZUFnZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTdBRkQ0QThBMTEzMUMyNzYwMDM1Qjg4MyAvKiBTY3JpcHRCcmVha3Bv
aW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlwdEJyZWFrcG9pbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJN0FGRDRGRjMxMTMyNzdCNjAwMzVCODgz
IC8qIFNjcmlwdERlYnVnTGlzdGVuZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU2NyaXB0RGVidWdMaXN0ZW5lci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3
QzJCREQzQjE3QzdGOThCMDAzOEZGMTUgLyogSlNET01HbG9iYWxPYmplY3RUYXNrLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NR2xvYmFsT2JqZWN0VGFzay5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDMkJERDNDMTdDN0Y5OEIwMDM4RkYx
NSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTdDNTIyRDQ5MTVCNDc3RTgwMDlCN0M5NSAvKiBJbnNwZWN0b3JPdmVybGF5LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3Rvck92ZXJsYXkuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTE2OTAsOCArMTE2ODAsNiBAQAogCQlCMkMz
RDlGMzBEMDA2QzFEMDBFRjZGMjYgLyogQmlkaUNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEJpZGlDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUIyQzNEOUY0MEQwMDZDMUQwMEVGNkYyNiAvKiBCaWRpUmVzb2x2ZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJpZGlSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlCMkMzRDlGQTBEMDA2QzFEMDBFRjZGMjYgLyogQ2hhcnNldERhdGEuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENoYXJzZXREYXRhLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUIyQzNEOUZDMEQwMDZDMUQwMEVGNkYyNiAvKiBSZWd1bGFy
RXhwcmVzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVn
dWxhckV4cHJlc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCMkMzRDlG
RDBEMDA2QzFEMDBFRjZGMjYgLyogUmVndWxhckV4cHJlc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlZ3VsYXJFeHByZXNzaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUIyQzNEOUZFMEQwMDZDMUQwMEVGNkYyNiAvKiBTZWdtZW50ZWRTdHJpbmcu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlZ21lbnRlZFN0cmlu
Zy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyQzNEOUZGMEQwMDZDMUQwMEVG
NkYyNiAvKiBTZWdtZW50ZWRTdHJpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNlZ21lbnRlZFN0cmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMkMz
REEwNDBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dEJvdW5kYXJpZXMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRCb3VuZGFyaWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0xNDgxMiw4ICsxNDgwMCw2IEBACiAJCQkJMkRGMkU5RDQxNjZFMzk3NDAwMzVC
RUYyIC8qIENvbnNvbGVBUElUeXBlcy5oICovLAogCQkJCTQxRjA2MThEMEY1RjA2OTgwMEEwN0VB
QyAvKiBDb25zb2xlTWVzc2FnZS5jcHAgKi8sCiAJCQkJNDFGMDYxOEMwRjVGMDY5ODAwQTA3RUFD
IC8qIENvbnNvbGVNZXNzYWdlLmggKi8sCi0JCQkJNTkxMDJGQjkxNDMyN0QzQjAwM0M5RDA0IC8q
IENvbnRlbnRTZWFyY2hVdGlscy5jcHAgKi8sCi0JCQkJNTkxMDJGQkExNDMyN0QzQjAwM0M5RDA0
IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oICovLAogCQkJCTdBQUJBMjU3MTRCQzYxMzMwMEFBOUEx
MSAvKiBET01FZGl0b3IuY3BwICovLAogCQkJCTdBQUJBMjU4MTRCQzYxMzMwMEFBOUExMSAvKiBE
T01FZGl0b3IuaCAqLywKIAkJCQk3QTU0ODgxNjE0RTQzMkExMDA2QUUwNUEgLyogRE9NUGF0Y2hT
dXBwb3J0LmNwcCAqLywKQEAgLTE0OTE3LDEyICsxNDkwMywxMCBAQAogCQkJCUYzODIwODhEMTQ3
RDM1RjkwMDEwQkMwNiAvKiBQYWdlUnVudGltZUFnZW50LmggKi8sCiAJCQkJRjM5QkU5NTkxMjY3
M0JGNDAwRTBBNjc0IC8qIFNjcmlwdEFyZ3VtZW50cy5jcHAgKi8sCiAJCQkJRjM5QkU5NUExMjY3
M0JGNDAwRTBBNjc0IC8qIFNjcmlwdEFyZ3VtZW50cy5oICovLAotCQkJCTdBRkQ0QThBMTEzMUMy
NzYwMDM1Qjg4MyAvKiBTY3JpcHRCcmVha3BvaW50LmggKi8sCiAJCQkJNDE2RTc1Q0EwRURGOTBD
NzAwMzYwRTFEIC8qIFNjcmlwdENhbGxGcmFtZS5jcHAgKi8sCiAJCQkJNDE2RTc1QzkwRURGOTBD
NzAwMzYwRTFEIC8qIFNjcmlwdENhbGxGcmFtZS5oICovLAogCQkJCTQxNkU3NUJEMEVERjhGRDcw
MDM2MEUxRCAvKiBTY3JpcHRDYWxsU3RhY2suY3BwICovLAogCQkJCTQxNkU3NUJDMEVERjhGRDcw
MDM2MEUxRCAvKiBTY3JpcHRDYWxsU3RhY2suaCAqLywKLQkJCQk3QUZENEZGMzExMzI3N0I2MDAz
NUI4ODMgLyogU2NyaXB0RGVidWdMaXN0ZW5lci5oICovLAogCQkJCTlGQTM3RUVGMTE3MkZENDEw
MEM0Q0Q1NSAvKiBTY3JpcHRQcm9maWxlLmlkbCAqLywKIAkJCQk5RkEzN0VGMDExNzJGRDQxMDBD
NENENTUgLyogU2NyaXB0UHJvZmlsZU5vZGUuaWRsICovLAogCQkJCTc1NTNDRkU3MTA4RjQ3M0Yw
MEVBMjgxRSAvKiBUaW1lbGluZVJlY29yZEZhY3RvcnkuY3BwICovLApAQCAtMjAwMDAsOCArMTk5
ODQsNiBAQAogCQkJCUY1NDRGNzg3MTVDRkIyQTgwMEFGMzNBOCAvKiBQbGF0Zm9ybUxvY2FsZS5o
ICovLAogCQkJCTM3OUUzNzE0MTM3MzZBNjYwMEI5RTkxOSAvKiBRdW90ZWRQcmludGFibGUuY3Bw
ICovLAogCQkJCTM3OUUzNzE1MTM3MzZBNjYwMEI5RTkxOSAvKiBRdW90ZWRQcmludGFibGUuaCAq
LywKLQkJCQlCMkMzRDlGQzBEMDA2QzFEMDBFRjZGMjYgLyogUmVndWxhckV4cHJlc3Npb24uY3Bw
ICovLAotCQkJCUIyQzNEOUZEMEQwMDZDMUQwMEVGNkYyNiAvKiBSZWd1bGFyRXhwcmVzc2lvbi5o
ICovLAogCQkJCUIyQzNEOUZFMEQwMDZDMUQwMEVGNkYyNiAvKiBTZWdtZW50ZWRTdHJpbmcuY3Bw
ICovLAogCQkJCUIyQzNEOUZGMEQwMDZDMUQwMEVGNkYyNiAvKiBTZWdtZW50ZWRTdHJpbmcuaCAq
LywKIAkJCQk5QjZDNDE1MjEzNDQ5NDkwMDAwODVCNjIgLyogU3RyaW5nV2l0aERpcmVjdGlvbi5o
ICovLApAQCAtMjI5MzMsNyArMjI5MTUsNiBAQAogCQkJCUJDNUVCOTgxMEU4MjA3MjUwMEIyNTk2
NSAvKiBDb250ZW50RGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTdCNzkxQTQxNEM2QTYyOTAw
RjIwMkQxIC8qIENvbnRlbnREaXN0cmlidXRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjkxOUEx
RTkxNkIzMzc2NjAwNzg3MjEzIC8qIENvbnRlbnRGaWx0ZXIuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTU5MTAyRkJDMTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTk3QzQ3MURDMTJGOTI1QkQwMDg2MzU0QiAvKiBDb250ZW50U2VjdXJpdHlQ
b2xpY3kuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRDAxNUNBMEY0QjVDNzEwMDRBNjYyRiAvKiBD
b250ZW50VHlwZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTc2MjdCOEUxNEZCM0NFRTAwMkNEQ0Ex
IC8qIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI0OTYy
LDcgKzI0OTQzLDYgQEAKIAkJCQk2Q0RERThEMDE3NzBCQjIyMDAxNkUwNzIgLyogUmVnaW9uT3Zl
cnNldFN0YXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQkyNkI5OTk4RjE4MDNBRTcyMDBEMDExMjEg
LyogUmVnaXN0ZXJBbGxvY2F0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1MDMxQjRDMEE0NEVG
QzcwMEY5OTJFMCAvKiBSZWdpc3RlcmVkRXZlbnRMaXN0ZW5lci5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJQjJDM0RBMkQwRDAwNkMxRDAwRUY2RjI2IC8qIFJlZ3VsYXJFeHByZXNzaW9uLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk5MzMwOUUwMTA5OUU2NDkyMDA1NkU1ODEgLyogUmVtb3ZlQ1NTUHJvcGVy
dHlDb21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQlEMDZDMEQ4RjBDRkQxMTQ2MDA2NUY0M0Yg
LyogUmVtb3ZlRm9ybWF0Q29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlFMDUwOTlF
NjQ5MjAwNTZFNTgxIC8qIFJlbW92ZU5vZGVDb21tYW5kLmggaW4gSGVhZGVycyAqLywKQEAgLTI1
MTY2LDEzICsyNTE0NiwxMSBAQAogCQkJCUJDRUMwMUJFMEMyNzREQUMwMDlGNEVDOSAvKiBTY3Jl
ZW4uaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NEQ4MkMxMTFEMzQ3NDgwMDk3Mjk5MCAvKiBTY3Jp
cHRhYmxlRG9jdW1lbnRQYXJzZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUYzOUJFOTVDMTI2NzNC
RjQwMEUwQTY3NCAvKiBTY3JpcHRBcmd1bWVudHMuaCBpbiBIZWFkZXJzICovLAotCQkJCTdBRkQ0
QThCMTEzMUMyNzYwMDM1Qjg4MyAvKiBTY3JpcHRCcmVha3BvaW50LmggaW4gSGVhZGVycyAqLywK
IAkJCQk0MUYxRDIxRjBFRjM1QzJBMDBEQTg3NTMgLyogU2NyaXB0Q2FjaGVkRnJhbWVEYXRhLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk0MTZFNzVDQjBFREY5MEM3MDAzNjBFMUQgLyogU2NyaXB0Q2Fs
bEZyYW1lLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MTZFNzVCRTBFREY4RkQ3MDAzNjBFMUQgLyog
U2NyaXB0Q2FsbFN0YWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlGMzkyMjQ5RDEyNkYxMUFFMDBB
OTI2RDkgLyogU2NyaXB0Q2FsbFN0YWNrRmFjdG9yeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTNC
NzBENzAwOUVCMEM3QzAwOUQ4NDY4IC8qIFNjcmlwdENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICov
LAotCQkJCTdBRkQ0RkY0MTEzMjc3QjYwMDM1Qjg4MyAvKiBTY3JpcHREZWJ1Z0xpc3RlbmVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk5RjZGQzE5NzExMjJFODJBMDBFODAxOTYgLyogU2NyaXB0RGVi
dWdTZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQ5OThBRUQyMTNGQjIyNEQwMDkwQjFBQSAv
KiBTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTA4QTQ4
NDc4MEU1MjcyQzUwMEMzRkU3NiAvKiBTY3JpcHRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKQEAg
LTI2NTQzLDcgKzI2NTIxLDYgQEAKIAkJCQk1MUQ3MTlEMDE4MTEwNkUwMDAxNkRDNTEgLyogSURC
RXZlbnREaXNwYXRjaGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU3Qjc5MUEzMTRDNkE2Mjkw
MEYyMDJEMSAvKiBDb250ZW50RGlzdHJpYnV0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMjkx
OUExRUIxNkIzMzc4OTAwNzg3MjEzIC8qIENvbnRlbnRGaWx0ZXJNYWMubW0gaW4gU291cmNlcyAq
LywKLQkJCQk1OTEwMkZCQjE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTk3QzQ3MURCMTJGOTI1QkQwMDg2MzU0QiAvKiBDb250ZW50
U2VjdXJpdHlQb2xpY3kuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNDFEMDE1Q0IwRjRCNUM3MTAw
NEE2NjJGIC8qIENvbnRlbnRUeXBlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTk3NjI3QjhEMTRG
QjNDRUUwMDJDRENBMSAvKiBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlci5jcHAgaW4gU291cmNl
cyAqLywKQEAgLTI4MzE1LDcgKzI4MjkyLDYgQEAKIAkJCQlGRDQ1QTk1QTE3NUQ0MTcxMDBDMjFF
QzggLyogUmVjdGFuZ2xlU2hhcGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNBQjQxODExM0Uz
NTZFODAwRDhBQUYzIC8qIFJlZ2lvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTAzMUI0QjBB
NDRFRkM3MDBGOTkyRTAgLyogUmVnaXN0ZXJlZEV2ZW50TGlzdGVuZXIuY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJQjJDM0RBMkMwRDAwNkMxRDAwRUY2RjI2IC8qIFJlZ3VsYXJFeHByZXNzaW9uLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTkzMzA5RTAwMDk5RTY0OTIwMDU2RTU4MSAvKiBSZW1vdmVD
U1NQcm9wZXJ0eUNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRDA2QzBEOTAwQ0ZEMTE0
NjAwNjVGNDNGIC8qIFJlbW92ZUZvcm1hdENvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MDc2MzhBOUExODg0NDg3MjAwRTE1QTFCIC8qIE1lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW0gaW4g
U291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1BhZ2VT
Y3JpcHREZWJ1Z1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9QYWdlU2Ny
aXB0RGVidWdTZXJ2ZXIuY3BwCmluZGV4IDg0MDY3OGYuLjA2YjY2NmQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1BhZ2VTY3JpcHREZWJ1Z1NlcnZlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUGFnZVNjcmlwdERlYnVnU2VydmVyLmNwcApAQCAt
MzAsMTEgKzMwLDEwIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxF
KEpBVkFTQ1JJUFRfREVCVUdHRVIpCi0KICNpbmNsdWRlICJQYWdlU2NyaXB0RGVidWdTZXJ2ZXIu
aCIKIAorI2lmIEVOQUJMRShKQVZBU0NSSVBUX0RFQlVHR0VSKQorCiAjaW5jbHVkZSAiRG9jdW1l
bnQuaCIKICNpbmNsdWRlICJFdmVudExvb3AuaCIKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKQEAg
LTQ0LDcgKzQzLDYgQEAKICNpbmNsdWRlICJQYWdlR3JvdXAuaCIKICNpbmNsdWRlICJQbHVnaW5W
aWV3LmgiCiAjaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgotI2luY2x1ZGUgIlNjcmlwdERl
YnVnTGlzdGVuZXIuaCIKICNpbmNsdWRlICJXaWRnZXQuaCIKICNpbmNsdWRlIDxydW50aW1lL0pT
TG9jay5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CkBAIC01OCw2ICs1Niw3IEBACiAj
ZW5kaWYKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKK3VzaW5nIG5hbWVzcGFjZSBJbnNwZWN0b3I7
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvUGFnZVNjcmlwdERlYnVnU2VydmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9QYWdlU2NyaXB0RGVidWdTZXJ2ZXIuaAppbmRleCA1NjdlZDkxLi40N2ExN2Q5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9QYWdlU2NyaXB0RGVidWdTZXJ2ZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9QYWdlU2NyaXB0RGVidWdTZXJ2ZXIu
aApAQCAtNDgsOCArNDgsOCBAQCBjbGFzcyBQYWdlU2NyaXB0RGVidWdTZXJ2ZXIgOiBwdWJsaWMg
U2NyaXB0RGVidWdTZXJ2ZXIgewogcHVibGljOgogICAgIHN0YXRpYyBQYWdlU2NyaXB0RGVidWdT
ZXJ2ZXImIHNoYXJlZCgpOwogCi0gICAgdm9pZCBhZGRMaXN0ZW5lcihTY3JpcHREZWJ1Z0xpc3Rl
bmVyKiwgUGFnZSopOwotICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIoU2NyaXB0RGVidWdMaXN0ZW5l
ciosIFBhZ2UqLCBib29sIHNraXBSZWNvbXBpbGUpOworICAgIHZvaWQgYWRkTGlzdGVuZXIoSW5z
cGVjdG9yOjpTY3JpcHREZWJ1Z0xpc3RlbmVyKiwgUGFnZSopOworICAgIHZvaWQgcmVtb3ZlTGlz
dGVuZXIoSW5zcGVjdG9yOjpTY3JpcHREZWJ1Z0xpc3RlbmVyKiwgUGFnZSosIGJvb2wgc2tpcFJl
Y29tcGlsZSk7CiAKICAgICB2aXJ0dWFsIHZvaWQgcmVjb21waWxlQWxsSlNGdW5jdGlvbnMoKSBv
dmVycmlkZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0
RGVidWdTZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0RGVidWdT
ZXJ2ZXIuY3BwCmluZGV4IDQwM2RmZTkuLjQ3Y2U2ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1NjcmlwdERlYnVnU2VydmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9TY3JpcHREZWJ1Z1NlcnZlci5jcHAKQEAgLTUxLDYgKzUxLDcgQEAKICNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKK3Vz
aW5nIG5hbWVzcGFjZSBJbnNwZWN0b3I7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0RGVidWdTZXJ2ZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdERlYnVnU2VydmVyLmgKaW5kZXggOTM1NDBh
ZS4uZDQ4ZmQxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0
RGVidWdTZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHREZWJ1
Z1NlcnZlci5oCkBAIC0zMiwxMCArMzIsMTAgQEAKIAogI2lmIEVOQUJMRShKQVZBU0NSSVBUX0RF
QlVHR0VSKQogCi0jaW5jbHVkZSAiU2NyaXB0QnJlYWtwb2ludC5oIgotI2luY2x1ZGUgIlNjcmlw
dERlYnVnTGlzdGVuZXIuaCIKICNpbmNsdWRlIDxiaW5kaW5ncy9TY3JpcHRPYmplY3QuaD4KICNp
bmNsdWRlIDxkZWJ1Z2dlci9EZWJ1Z2dlci5oPgorI2luY2x1ZGUgPGluc3BlY3Rvci9TY3JpcHRC
cmVha3BvaW50Lmg+CisjaW5jbHVkZSA8aW5zcGVjdG9yL1NjcmlwdERlYnVnTGlzdGVuZXIuaD4K
ICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5j
bHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAtNTQsMTMgKzU0LDEzIEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIGNsYXNzIFNjcmlwdERlYnVnU2VydmVyIDogcHVibGljIEpTQzo6RGVidWdnZXIgewogICAg
IFdURl9NQUtFX05PTkNPUFlBQkxFKFNjcmlwdERlYnVnU2VydmVyKTsgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CiBwdWJsaWM6Ci0gICAgSlNDOjpCcmVha3BvaW50SUQgc2V0QnJlYWtwb2ludChK
U0M6OlNvdXJjZUlELCBjb25zdCBTY3JpcHRCcmVha3BvaW50JiwgdW5zaWduZWQqIGFjdHVhbExp
bmVOdW1iZXIsIHVuc2lnbmVkKiBhY3R1YWxDb2x1bW5OdW1iZXIpOworICAgIEpTQzo6QnJlYWtw
b2ludElEIHNldEJyZWFrcG9pbnQoSlNDOjpTb3VyY2VJRCwgY29uc3QgSW5zcGVjdG9yOjpTY3Jp
cHRCcmVha3BvaW50JiwgdW5zaWduZWQqIGFjdHVhbExpbmVOdW1iZXIsIHVuc2lnbmVkKiBhY3R1
YWxDb2x1bW5OdW1iZXIpOwogICAgIHZvaWQgcmVtb3ZlQnJlYWtwb2ludChKU0M6OkJyZWFrcG9p
bnRJRCk7CiAgICAgdm9pZCBjbGVhckJyZWFrcG9pbnRzKCk7CiAKICAgICB2aXJ0dWFsIHZvaWQg
cmVjb21waWxlQWxsSlNGdW5jdGlvbnMoKSA9IDA7CiAKLSAgICBjb25zdCBWZWN0b3I8U2NyaXB0
QnJlYWtwb2ludEFjdGlvbj4mIGdldEFjdGlvbnNGb3JCcmVha3BvaW50KEpTQzo6QnJlYWtwb2lu
dElEKTsKKyAgICBjb25zdCBWZWN0b3I8SW5zcGVjdG9yOjpTY3JpcHRCcmVha3BvaW50QWN0aW9u
PiYgZ2V0QWN0aW9uc0ZvckJyZWFrcG9pbnQoSlNDOjpCcmVha3BvaW50SUQpOwogCiAgICAgY2xh
c3MgVGFzayB7CiAgICAgICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpAQCAtNzAsOCArNzAs
OCBAQCBwdWJsaWM6CiAgICAgfTsKIAogcHJvdGVjdGVkOgotICAgIHR5cGVkZWYgSGFzaFNldDxT
Y3JpcHREZWJ1Z0xpc3RlbmVyKj4gTGlzdGVuZXJTZXQ7Ci0gICAgdHlwZWRlZiB2b2lkIChTY3Jp
cHREZWJ1Z1NlcnZlcjo6KkphdmFTY3JpcHRFeGVjdXRpb25DYWxsYmFjaykoU2NyaXB0RGVidWdM
aXN0ZW5lciopOworICAgIHR5cGVkZWYgSGFzaFNldDxJbnNwZWN0b3I6OlNjcmlwdERlYnVnTGlz
dGVuZXIqPiBMaXN0ZW5lclNldDsKKyAgICB0eXBlZGVmIHZvaWQgKFNjcmlwdERlYnVnU2VydmVy
OjoqSmF2YVNjcmlwdEV4ZWN1dGlvbkNhbGxiYWNrKShJbnNwZWN0b3I6OlNjcmlwdERlYnVnTGlz
dGVuZXIqKTsKIAogICAgIFNjcmlwdERlYnVnU2VydmVyKGJvb2wgaXNJbldvcmtlclRocmVhZCA9
IGZhbHNlKTsKICAgICB+U2NyaXB0RGVidWdTZXJ2ZXIoKTsKQEAgLTg0LDEyICs4NCwxMiBAQCBw
cm90ZWN0ZWQ6CiAKICAgICB2aXJ0dWFsIGJvb2wgaXNDb250ZW50U2NyaXB0KEpTQzo6RXhlY1N0
YXRlKik7CiAKLSAgICBib29sIGV2YWx1YXRlQnJlYWtwb2ludEFjdGlvbihjb25zdCBTY3JpcHRC
cmVha3BvaW50QWN0aW9uJik7CisgICAgYm9vbCBldmFsdWF0ZUJyZWFrcG9pbnRBY3Rpb24oY29u
c3QgSW5zcGVjdG9yOjpTY3JpcHRCcmVha3BvaW50QWN0aW9uJik7CiAKICAgICB2b2lkIGRpc3Bh
dGNoRnVuY3Rpb25Ub0xpc3RlbmVycyhKYXZhU2NyaXB0RXhlY3V0aW9uQ2FsbGJhY2ssIEpTQzo6
SlNHbG9iYWxPYmplY3QqKTsKICAgICB2b2lkIGRpc3BhdGNoRnVuY3Rpb25Ub0xpc3RlbmVycyhj
b25zdCBMaXN0ZW5lclNldCYgbGlzdGVuZXJzLCBKYXZhU2NyaXB0RXhlY3V0aW9uQ2FsbGJhY2sg
Y2FsbGJhY2spOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRQYXVzZShTY3JpcHREZWJ1Z0xpc3RlbmVy
Kik7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENvbnRpbnVlKFNjcmlwdERlYnVnTGlzdGVuZXIqKTsK
KyAgICB2b2lkIGRpc3BhdGNoRGlkUGF1c2UoSW5zcGVjdG9yOjpTY3JpcHREZWJ1Z0xpc3RlbmVy
Kik7CisgICAgdm9pZCBkaXNwYXRjaERpZENvbnRpbnVlKEluc3BlY3Rvcjo6U2NyaXB0RGVidWdM
aXN0ZW5lciopOwogICAgIHZvaWQgZGlzcGF0Y2hEaWRQYXJzZVNvdXJjZShjb25zdCBMaXN0ZW5l
clNldCYgbGlzdGVuZXJzLCBKU0M6OlNvdXJjZVByb3ZpZGVyKiwgYm9vbCBpc0NvbnRlbnRTY3Jp
cHQpOwogICAgIHZvaWQgZGlzcGF0Y2hGYWlsZWRUb1BhcnNlU291cmNlKGNvbnN0IExpc3RlbmVy
U2V0JiBsaXN0ZW5lcnMsIEpTQzo6U291cmNlUHJvdmlkZXIqLCBpbnQgZXJyb3JMaW5lLCBjb25z
dCBTdHJpbmcmIGVycm9yTWVzc2FnZSk7CiAgICAgdm9pZCBkaXNwYXRjaERpZFNhbXBsZVByb2Jl
KEpTQzo6RXhlY1N0YXRlKiwgaW50IHByb2JlSWRlbnRpZmllciwgY29uc3QgRGVwcmVjYXRlZDo6
U2NyaXB0VmFsdWUmIHNhbXBsZSk7CkBAIC05Nyw3ICs5Nyw3IEBAIHByb3RlY3RlZDoKICAgICBi
b29sIG1fZG9uZVByb2Nlc3NpbmdEZWJ1Z2dlckV2ZW50czsKIAogcHJpdmF0ZToKLSAgICB0eXBl
ZGVmIFZlY3RvcjxTY3JpcHRCcmVha3BvaW50QWN0aW9uPiBCcmVha3BvaW50QWN0aW9uczsKKyAg
ICB0eXBlZGVmIFZlY3RvcjxJbnNwZWN0b3I6OlNjcmlwdEJyZWFrcG9pbnRBY3Rpb24+IEJyZWFr
cG9pbnRBY3Rpb25zOwogICAgIHR5cGVkZWYgSGFzaE1hcDxKU0M6OkJyZWFrcG9pbnRJRCwgQnJl
YWtwb2ludEFjdGlvbnM+IEJyZWFrcG9pbnRJRFRvQWN0aW9uc01hcDsKIAogICAgIHZpcnR1YWwg
dm9pZCBzb3VyY2VQYXJzZWQoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OlNvdXJjZVByb3ZpZGVyKiwg
aW50IGVycm9yTGluZSwgY29uc3QgU3RyaW5nJiBlcnJvck1zZykgb3ZlcnJpZGUgZmluYWw7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJTY3JpcHREZWJ1Z1Nl
cnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJTY3JpcHREZWJ1Z1Nl
cnZlci5jcHAKaW5kZXggNjk1MWJmZC4uNTMxOWU0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvV29ya2VyU2NyaXB0RGVidWdTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlclNjcmlwdERlYnVnU2VydmVyLmNwcApAQCAtMzAsMTAg
KzMwLDEwIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKEpBVkFT
Q1JJUFRfREVCVUdHRVIpCiAjaW5jbHVkZSAiV29ya2VyU2NyaXB0RGVidWdTZXJ2ZXIuaCIKIAor
I2lmIEVOQUJMRShKQVZBU0NSSVBUX0RFQlVHR0VSKQorCiAjaW5jbHVkZSAiV29ya2VyRGVidWdn
ZXJBZ2VudC5oIgogI2luY2x1ZGUgIldvcmtlckdsb2JhbFNjb3BlLmgiCiAjaW5jbHVkZSAiV29y
a2VyUnVuTG9vcC5oIgpAQCAtNDEsNiArNDEsOCBAQAogI2luY2x1ZGUgPHJ1bnRpbWUvVk0uaD4K
ICNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgogCit1c2luZyBuYW1lc3BhY2UgSW5zcGVjdG9y
OworCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdvcmtlclNjcmlwdERlYnVnU2VydmVyOjpXb3Jr
ZXJTY3JpcHREZWJ1Z1NlcnZlcihXb3JrZXJHbG9iYWxTY29wZSogY29udGV4dCwgY29uc3QgU3Ry
aW5nJiBtb2RlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2Vy
U2NyaXB0RGVidWdTZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlclNj
cmlwdERlYnVnU2VydmVyLmgKaW5kZXggNzYyZDIxNy4uNjRkZDIyZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyU2NyaXB0RGVidWdTZXJ2ZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJTY3JpcHREZWJ1Z1NlcnZlci5oCkBAIC00
Nyw4ICs0Nyw4IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCByZWNvbXBpbGVBbGxKU0Z1
bmN0aW9ucygpIG92ZXJyaWRlOwogCi0gICAgdm9pZCBhZGRMaXN0ZW5lcihTY3JpcHREZWJ1Z0xp
c3RlbmVyKik7Ci0gICAgdm9pZCByZW1vdmVMaXN0ZW5lcihTY3JpcHREZWJ1Z0xpc3RlbmVyKiwg
Ym9vbCBza2lwUmVjb21waWxlKTsKKyAgICB2b2lkIGFkZExpc3RlbmVyKEluc3BlY3Rvcjo6U2Ny
aXB0RGVidWdMaXN0ZW5lciopOworICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIoSW5zcGVjdG9yOjpT
Y3JpcHREZWJ1Z0xpc3RlbmVyKiwgYm9vbCBza2lwUmVjb21waWxlKTsKIAogICAgIHZvaWQgaW50
ZXJydXB0QW5kUnVuVGFzayhQYXNzT3duUHRyPFNjcmlwdERlYnVnU2VydmVyOjpUYXNrPik7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01JbXBsZW1lbnRhdGlvbi5oIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmgKaW5kZXggYWJhZmNhNS4uNzQ4MDU3
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmgKQEAgLTM4LDcgKzM4LDYg
QEAgY2xhc3MgRG9jdW1lbnRUeXBlOwogY2xhc3MgRnJhbWU7CiBjbGFzcyBIVE1MRG9jdW1lbnQ7
CiBjbGFzcyBVUkw7Ci1jbGFzcyBSZWd1bGFyRXhwcmVzc2lvbjsKIAogdHlwZWRlZiBpbnQgRXhj
ZXB0aW9uQ29kZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2th
YmxlSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNoZWNrYWJsZUlucHV0
VHlwZS5jcHAKaW5kZXggMDE4MGUzYS4uZWI3YWVmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwCkBAIC0zNyw3ICszNyw2IEBACiAjaW5jbHVk
ZSAiSFRNTElucHV0RWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1ZGUg
IktleWJvYXJkRXZlbnQuaCIKLSNpbmNsdWRlICJSZWd1bGFyRXhwcmVzc2lvbi5oIgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZVRl
eHRJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlVGV4dElucHV0VHlwZS5j
cHAKaW5kZXggOWEyNmUxZS4uN2JlZDRiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9CYXNlVGV4dElucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlVGV4
dElucHV0VHlwZS5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKIAogI2luY2x1ZGUgIkhUTUxJbnB1dEVs
ZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKLSNpbmNsdWRlICJSZWd1bGFyRXhwcmVz
c2lvbi5oIgorI2luY2x1ZGUgPHlhcnIvUmVndWxhckV4cHJlc3Npb24uaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCkBAIC00MCwxMiArNDAsMTIgQEAgYm9vbCBCYXNlVGV4dElucHV0VHlwZTo6
aXNUZXh0VHlwZSgpIGNvbnN0CiBib29sIEJhc2VUZXh0SW5wdXRUeXBlOjpwYXR0ZXJuTWlzbWF0
Y2goY29uc3QgU3RyaW5nJiB2YWx1ZSkgY29uc3QKIHsKICAgICBjb25zdCBBdG9taWNTdHJpbmcm
IHJhd1BhdHRlcm4gPSBlbGVtZW50KCkuZmFzdEdldEF0dHJpYnV0ZShwYXR0ZXJuQXR0cik7Ci0g
ICAgaWYgKHJhd1BhdHRlcm4uaXNOdWxsKCkgfHwgdmFsdWUuaXNFbXB0eSgpIHx8ICFSZWd1bGFy
RXhwcmVzc2lvbihyYXdQYXR0ZXJuLCBUZXh0Q2FzZVNlbnNpdGl2ZSkuaXNWYWxpZCgpKQorICAg
IGlmIChyYXdQYXR0ZXJuLmlzTnVsbCgpIHx8IHZhbHVlLmlzRW1wdHkoKSB8fCAhSlNDOjpZYXJy
OjpSZWd1bGFyRXhwcmVzc2lvbihyYXdQYXR0ZXJuLCBUZXh0Q2FzZVNlbnNpdGl2ZSkuaXNWYWxp
ZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgU3RyaW5nIHBhdHRlcm4gPSAiXig/OiIg
KyByYXdQYXR0ZXJuICsgIikkIjsKICAgICBpbnQgbWF0Y2hMZW5ndGggPSAwOwogICAgIGludCB2
YWx1ZUxlbmd0aCA9IHZhbHVlLmxlbmd0aCgpOwotICAgIGludCBtYXRjaE9mZnNldCA9IFJlZ3Vs
YXJFeHByZXNzaW9uKHBhdHRlcm4sIFRleHRDYXNlU2Vuc2l0aXZlKS5tYXRjaCh2YWx1ZSwgMCwg
Jm1hdGNoTGVuZ3RoKTsKKyAgICBpbnQgbWF0Y2hPZmZzZXQgPSBKU0M6OllhcnI6OlJlZ3VsYXJF
eHByZXNzaW9uKHBhdHRlcm4sIFRleHRDYXNlU2Vuc2l0aXZlKS5tYXRjaCh2YWx1ZSwgMCwgJm1h
dGNoTGVuZ3RoKTsKICAgICByZXR1cm4gbWF0Y2hPZmZzZXQgfHwgbWF0Y2hMZW5ndGggIT0gdmFs
dWVMZW5ndGg7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRW1haWxJbnB1
dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9FbWFpbElucHV0VHlwZS5jcHAKaW5kZXgg
ZmE2NzlkYy4uNTcwMjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9FbWFpbElu
cHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9FbWFpbElucHV0VHlwZS5jcHAK
QEAgLTI4LDggKzI4LDggQEAKICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCiAjaW5jbHVk
ZSAiSW5wdXRUeXBlTmFtZXMuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdzLmgiCi0jaW5j
bHVkZSAiUmVndWxhckV4cHJlc3Npb24uaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWls
ZGVyLmg+CisjaW5jbHVkZSA8eWFyci9SZWd1bGFyRXhwcmVzc2lvbi5oPgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIGJvb2wgaXNWYWxpZEVtYWlsQWRk
cmVzcyhjb25zdCBTdHJpbmcmIGFkZHJlc3MpCiAgICAgaWYgKCFhZGRyZXNzTGVuZ3RoKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFJlZ3Vs
YXJFeHByZXNzaW9uLCByZWdFeHAsIChlbWFpbFBhdHRlcm4sIFRleHRDYXNlSW5zZW5zaXRpdmUp
KTsKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEpTQzo6WWFycjo6UmVndWxhckV4cHJl
c3Npb24sIHJlZ0V4cCwgKGVtYWlsUGF0dGVybiwgVGV4dENhc2VJbnNlbnNpdGl2ZSkpOwogCiAg
ICAgaW50IG1hdGNoTGVuZ3RoOwogICAgIGludCBtYXRjaE9mZnNldCA9IHJlZ0V4cC5tYXRjaChh
ZGRyZXNzLCAwLCAmbWF0Y2hMZW5ndGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9JbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCmluZGV4
IDNiZWI1OTkuLjU2YzUzOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRU
eXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKQEAgLTYwLDcg
KzYwLDYgQEAKICNpbmNsdWRlICJQYXNzd29yZElucHV0VHlwZS5oIgogI2luY2x1ZGUgIlJhZGlv
SW5wdXRUeXBlLmgiCiAjaW5jbHVkZSAiUmFuZ2VJbnB1dFR5cGUuaCIKLSNpbmNsdWRlICJSZWd1
bGFyRXhwcmVzc2lvbi5oIgogI2luY2x1ZGUgIlJlbmRlckVsZW1lbnQuaCIKICNpbmNsdWRlICJS
ZW5kZXJUaGVtZS5oIgogI2luY2x1ZGUgIlJlc2V0SW5wdXRUeXBlLmgiCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQWxsSW5PbmUuY3BwIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFsbEluT25lLmNwcAppbmRleCBlY2FjZjE3Li42NjZi
YmE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQWxsSW5P
bmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBbGxJbk9uZS5j
cHAKQEAgLTI4LDcgKzI4LDYgQEAKICNpbmNsdWRlICJDb21tYW5kTGluZUFQSUhvc3QuY3BwIgog
I2luY2x1ZGUgIkNvbW1hbmRMaW5lQVBJTW9kdWxlLmNwcCIKICNpbmNsdWRlICJDb25zb2xlTWVz
c2FnZS5jcHAiCi0jaW5jbHVkZSAiQ29udGVudFNlYXJjaFV0aWxzLmNwcCIKICNpbmNsdWRlICJE
T01FZGl0b3IuY3BwIgogI2luY2x1ZGUgIkRPTVBhdGNoU3VwcG9ydC5jcHAiCiAjaW5jbHVkZSAi
SWRlbnRpZmllcnNGYWN0b3J5LmNwcCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcAppbmRleCAwNDliY2Q2Li4zYjJhZTA2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQu
Y3BwCkBAIC0zMywxNyArMzMsMTcgQEAKICNpZiBFTkFCTEUoSkFWQVNDUklQVF9ERUJVR0dFUikg
JiYgRU5BQkxFKElOU1BFQ1RPUikKIAogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlLmgiCi0jaW5j
bHVkZSAiQ29udGVudFNlYXJjaFV0aWxzLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yUGFnZUFnZW50
LmgiCiAjaW5jbHVkZSAiSW5zdHJ1bWVudGluZ0FnZW50cy5oIgotI2luY2x1ZGUgIlJlZ3VsYXJF
eHByZXNzaW9uLmgiCiAjaW5jbHVkZSAiU2NyaXB0RGVidWdTZXJ2ZXIuaCIKICNpbmNsdWRlIDxi
aW5kaW5ncy9TY3JpcHRPYmplY3QuaD4KICNpbmNsdWRlIDxiaW5kaW5ncy9TY3JpcHRWYWx1ZS5o
PgorI2luY2x1ZGUgPGluc3BlY3Rvci9Db250ZW50U2VhcmNoVXRpbGl0aWVzLmg+CiAjaW5jbHVk
ZSA8aW5zcGVjdG9yL0luamVjdGVkU2NyaXB0Lmg+CiAjaW5jbHVkZSA8aW5zcGVjdG9yL0luamVj
dGVkU2NyaXB0TWFuYWdlci5oPgogI2luY2x1ZGUgPGluc3BlY3Rvci9JbnNwZWN0b3JWYWx1ZXMu
aD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKyNpbmNsdWRlIDx5YXJyL1JlZ3Vs
YXJFeHByZXNzaW9uLmg+CiAKIHVzaW5nIEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6OkFycmF5Owog
dXNpbmcgSW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6RGVidWdnZXI6OkZ1bmN0aW9uRGV0YWlsczsK
QEAgLTE4MCw3ICsxODAsNyBAQCBzdGF0aWMgUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGJ1
aWxkT2JqZWN0Rm9yQnJlYWtwb2ludENvb2tpZShjb25zdCBTdHJpbmcmCiBzdGF0aWMgYm9vbCBt
YXRjaGVzKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIHBhdHRlcm4sIGJvb2wgaXNS
ZWdleCkKIHsKICAgICBpZiAoaXNSZWdleCkgewotICAgICAgICBSZWd1bGFyRXhwcmVzc2lvbiBy
ZWdleChwYXR0ZXJuLCBUZXh0Q2FzZVNlbnNpdGl2ZSk7CisgICAgICAgIEpTQzo6WWFycjo6UmVn
dWxhckV4cHJlc3Npb24gcmVnZXgocGF0dGVybiwgVGV4dENhc2VTZW5zaXRpdmUpOwogICAgICAg
ICByZXR1cm4gcmVnZXgubWF0Y2godXJsKSAhPSAtMTsKICAgICB9CiAgICAgcmV0dXJuIHVybCA9
PSBwYXR0ZXJuOwpAQCAtNDIwLDcgKzQyMCw3IEBAIHZvaWQgSW5zcGVjdG9yRGVidWdnZXJBZ2Vu
dDo6c2VhcmNoSW5Db250ZW50KEVycm9yU3RyaW5nKiBlcnJvciwgY29uc3QgU3RyaW5nJiBzCiAg
ICAgSlNDOjpTb3VyY2VJRCBzb3VyY2VJRCA9IHNjcmlwdElEU3RyLnRvSW50UHRyKCk7CiAgICAg
U2NyaXB0c01hcDo6aXRlcmF0b3IgaXQgPSBtX3NjcmlwdHMuZmluZChzb3VyY2VJRCk7CiAgICAg
aWYgKGl0ICE9IG1fc2NyaXB0cy5lbmQoKSkKLSAgICAgICAgcmVzdWx0cyA9IENvbnRlbnRTZWFy
Y2hVdGlsczo6c2VhcmNoSW5UZXh0QnlMaW5lcyhpdC0+dmFsdWUuc291cmNlLCBxdWVyeSwgY2Fz
ZVNlbnNpdGl2ZSwgaXNSZWdleCk7CisgICAgICAgIHJlc3VsdHMgPSBDb250ZW50U2VhcmNoVXRp
bGl0aWVzOjpzZWFyY2hJblRleHRCeUxpbmVzKGl0LT52YWx1ZS5zb3VyY2UsIHF1ZXJ5LCBjYXNl
U2Vuc2l0aXZlLCBpc1JlZ2V4KTsKICAgICBlbHNlCiAgICAgICAgICplcnJvciA9ICJObyBzY3Jp
cHQgZm9yIGlkOiAiICsgc2NyaXB0SURTdHI7CiB9CkBAIC01OTIsNyArNTkyLDcgQEAgU3RyaW5n
IEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OnNvdXJjZU1hcFVSTEZvclNjcmlwdChjb25zdCBTY3Jp
cHQmIHNjcmlwdCkKICAgICAgICAgfQogICAgIH0KIAotICAgIHJldHVybiBDb250ZW50U2VhcmNo
VXRpbHM6OmZpbmRTY3JpcHRTb3VyY2VNYXBVUkwoc2NyaXB0LnNvdXJjZSk7CisgICAgcmV0dXJu
IENvbnRlbnRTZWFyY2hVdGlsaXRpZXM6OmZpbmRTY3JpcHRTb3VyY2VNYXBVUkwoc2NyaXB0LnNv
dXJjZSk7CiB9CiAKIC8vIEphdmFTY3JpcHREZWJ1Z0xpc3RlbmVyIGZ1bmN0aW9ucwpAQCAtNjAx
LDcgKzYwMSw3IEBAIHZvaWQgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6ZGlkUGFyc2VTb3VyY2Uo
SlNDOjpTb3VyY2VJRCBzb3VyY2VJRCwgY29uc3QgU2NyaXB0CiB7CiAgICAgU2NyaXB0IHNjcmlw
dCA9IGluU2NyaXB0OwogICAgIGlmICghc2NyaXB0LnN0YXJ0TGluZSAmJiAhc2NyaXB0LnN0YXJ0
Q29sdW1uKQotICAgICAgICBzY3JpcHQuc291cmNlVVJMID0gQ29udGVudFNlYXJjaFV0aWxzOjpm
aW5kU2NyaXB0U291cmNlVVJMKHNjcmlwdC5zb3VyY2UpOworICAgICAgICBzY3JpcHQuc291cmNl
VVJMID0gQ29udGVudFNlYXJjaFV0aWxpdGllczo6ZmluZFNjcmlwdFNvdXJjZVVSTChzY3JpcHQu
c291cmNlKTsKICAgICBzY3JpcHQuc291cmNlTWFwcGluZ1VSTCA9IHNvdXJjZU1hcFVSTEZvclNj
cmlwdChzY3JpcHQpOwogCiAgICAgYm9vbCBoYXNTb3VyY2VVUkwgPSAhc2NyaXB0LnNvdXJjZVVS
TC5pc0VtcHR5KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yRGVidWdnZXJBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRl
YnVnZ2VyQWdlbnQuaAppbmRleCBhZGI3NzlhLi5kYmVmNTZjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgKQEAgLTM1LDEyICszNSwx
MiBAQAogI2luY2x1ZGUgIkNvbnNvbGVBUElUeXBlcy5oIgogI2luY2x1ZGUgIkNvbnNvbGVUeXBl
cy5oIgogI2luY2x1ZGUgIkluc3BlY3RvcldlYkFnZW50QmFzZS5oIgotI2luY2x1ZGUgIlNjcmlw
dEJyZWFrcG9pbnQuaCIKLSNpbmNsdWRlICJTY3JpcHREZWJ1Z0xpc3RlbmVyLmgiCiAjaW5jbHVk
ZSA8YmluZGluZ3MvU2NyaXB0VmFsdWUuaD4KICNpbmNsdWRlIDxkZWJ1Z2dlci9EZWJ1Z2dlci5o
PgogI2luY2x1ZGUgPGluc3BlY3Rvci9JbnNwZWN0b3JKU0JhY2tlbmREaXNwYXRjaGVycy5oPgog
I2luY2x1ZGUgPGluc3BlY3Rvci9JbnNwZWN0b3JKU0Zyb250ZW5kRGlzcGF0Y2hlcnMuaD4KKyNp
bmNsdWRlIDxpbnNwZWN0b3IvU2NyaXB0QnJlYWtwb2ludC5oPgorI2luY2x1ZGUgPGluc3BlY3Rv
ci9TY3JpcHREZWJ1Z0xpc3RlbmVyLmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+CkBAIC02Myw3
ICs2Myw3IEBAIGNsYXNzIFNjcmlwdERlYnVnU2VydmVyOwogCiB0eXBlZGVmIFN0cmluZyBFcnJv
clN0cmluZzsKIAotY2xhc3MgSW5zcGVjdG9yRGVidWdnZXJBZ2VudCA6IHB1YmxpYyBJbnNwZWN0
b3JBZ2VudEJhc2UsIHB1YmxpYyBTY3JpcHREZWJ1Z0xpc3RlbmVyLCBwdWJsaWMgSW5zcGVjdG9y
OjpJbnNwZWN0b3JEZWJ1Z2dlckJhY2tlbmREaXNwYXRjaGVySGFuZGxlciB7CitjbGFzcyBJbnNw
ZWN0b3JEZWJ1Z2dlckFnZW50IDogcHVibGljIEluc3BlY3RvckFnZW50QmFzZSwgcHVibGljIElu
c3BlY3Rvcjo6U2NyaXB0RGVidWdMaXN0ZW5lciwgcHVibGljIEluc3BlY3Rvcjo6SW5zcGVjdG9y
RGVidWdnZXJCYWNrZW5kRGlzcGF0Y2hlckhhbmRsZXIgewogICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKEluc3BlY3RvckRlYnVnZ2VyQWdlbnQpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1
YmxpYzoKICAgICBzdGF0aWMgY29uc3QgY2hhciogYmFja3RyYWNlT2JqZWN0R3JvdXA7CkBAIC0x
NDcsMTIgKzE0NywxMiBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBmYWlsZWRUb1BhcnNl
U291cmNlKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIGRhdGEsIGludCBmaXJzdExp
bmUsIGludCBlcnJvckxpbmUsIGNvbnN0IFN0cmluZyYgZXJyb3JNZXNzYWdlKSBvdmVycmlkZSBm
aW5hbDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkU2FtcGxlUHJvYmUoSlNDOjpFeGVjU3RhdGUqLCBp
bnQgcHJvYmVJZGVudGlmaWVyLCBpbnQgaGl0Q291bnQsIGNvbnN0IERlcHJlY2F0ZWQ6OlNjcmlw
dFZhbHVlJiBzYW1wbGUpIG92ZXJyaWRlIGZpbmFsOwogCi0gICAgUGFzc1JlZlB0cjxJbnNwZWN0
b3I6OlR5cGVCdWlsZGVyOjpEZWJ1Z2dlcjo6TG9jYXRpb24+IHJlc29sdmVCcmVha3BvaW50KGNv
bnN0IFN0cmluZyYgYnJlYWtwb2ludElkZW50aWZpZXIsIEpTQzo6U291cmNlSUQsIGNvbnN0IFNj
cmlwdEJyZWFrcG9pbnQmKTsKKyAgICBQYXNzUmVmUHRyPEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6
OkRlYnVnZ2VyOjpMb2NhdGlvbj4gcmVzb2x2ZUJyZWFrcG9pbnQoY29uc3QgU3RyaW5nJiBicmVh
a3BvaW50SWRlbnRpZmllciwgSlNDOjpTb3VyY2VJRCwgY29uc3QgSW5zcGVjdG9yOjpTY3JpcHRC
cmVha3BvaW50Jik7CiAgICAgYm9vbCBhc3NlcnRQYXVzZWQoRXJyb3JTdHJpbmcqKTsKICAgICB2
b2lkIGNsZWFyUmVzb2x2ZWRCcmVha3BvaW50U3RhdGUoKTsKICAgICB2b2lkIGNsZWFyQnJlYWtE
ZXRhaWxzKCk7CiAKLSAgICBib29sIGJyZWFrcG9pbnRBY3Rpb25zRnJvbVByb3RvY29sKEVycm9y
U3RyaW5nKiwgUmVmUHRyPEluc3BlY3Rvcjo6SW5zcGVjdG9yQXJyYXk+JiBhY3Rpb25zLCBWZWN0
b3I8U2NyaXB0QnJlYWtwb2ludEFjdGlvbj4qIHJlc3VsdCk7CisgICAgYm9vbCBicmVha3BvaW50
QWN0aW9uc0Zyb21Qcm90b2NvbChFcnJvclN0cmluZyosIFJlZlB0cjxJbnNwZWN0b3I6Okluc3Bl
Y3RvckFycmF5PiYgYWN0aW9ucywgVmVjdG9yPEluc3BlY3Rvcjo6U2NyaXB0QnJlYWtwb2ludEFj
dGlvbj4qIHJlc3VsdCk7CiAKICAgICBTdHJpbmcgc291cmNlTWFwVVJMRm9yU2NyaXB0KGNvbnN0
IFNjcmlwdCYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yUGFnZUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdl
QWdlbnQuY3BwCmluZGV4IDBlZDBlMTEuLmUzZDBjYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwCkBAIC00MCw3ICs0MCw2IEBACiAjaW5j
bHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUxvYWRlci5o
IgogI2luY2x1ZGUgIkNhY2hlZFNjcmlwdC5oIgotI2luY2x1ZGUgIkNvbnRlbnRTZWFyY2hVdGls
cy5oIgogI2luY2x1ZGUgIkNvb2tpZS5oIgogI2luY2x1ZGUgIkNvb2tpZUphci5oIgogI2luY2x1
ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgiCkBAIC02NSw3ICs2NCw2IEBACiAjaW5jbHVkZSAiTWFp
bkZyYW1lLmgiCiAjaW5jbHVkZSAiTWVtb3J5Q2FjaGUuaCIKICNpbmNsdWRlICJQYWdlLmgiCi0j
aW5jbHVkZSAiUmVndWxhckV4cHJlc3Npb24uaCIKICNpbmNsdWRlICJSZXNvdXJjZUJ1ZmZlci5o
IgogI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdp
bi5oIgpAQCAtNzQsMTIgKzcyLDE0IEBACiAjaW5jbHVkZSAiVGV4dFJlc291cmNlRGVjb2Rlci5o
IgogI2luY2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCiAjaW5jbHVkZSA8YmluZGluZ3Mv
U2NyaXB0VmFsdWUuaD4KKyNpbmNsdWRlIDxpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxpdGll
cy5oPgogI2luY2x1ZGUgPGluc3BlY3Rvci9JbnNwZWN0b3JWYWx1ZXMuaD4KICNpbmNsdWRlIDx3
dGYvQ3VycmVudFRpbWUuaD4KICNpbmNsdWRlIDx3dGYvTGlzdEhhc2hTZXQuaD4KICNpbmNsdWRl
IDx3dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQmFzZTY0Lmg+CiAjaW5jbHVkZSA8
d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgorI2luY2x1ZGUgPHlhcnIvUmVndWxhckV4cHJlc3Np
b24uaD4KIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgJiYgVVNFKENGKQogI2luY2x1ZGUgIkxl
Z2FjeVdlYkFyY2hpdmUuaCIKQEAgLTI3MCw3ICsyNzAsNyBAQCBTdHJpbmcgSW5zcGVjdG9yUGFn
ZUFnZW50Ojpzb3VyY2VNYXBVUkxGb3JSZXNvdXJjZShDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVz
b3VyYwogICAgIFN0cmluZyBjb250ZW50OwogICAgIGJvb2wgYmFzZTY0RW5jb2RlZDsKICAgICBp
ZiAoSW5zcGVjdG9yUGFnZUFnZW50OjpjYWNoZWRSZXNvdXJjZUNvbnRlbnQoY2FjaGVkUmVzb3Vy
Y2UsICZjb250ZW50LCAmYmFzZTY0RW5jb2RlZCkgJiYgIWJhc2U2NEVuY29kZWQpCi0gICAgICAg
IHJldHVybiBDb250ZW50U2VhcmNoVXRpbHM6OmZpbmRTdHlsZXNoZWV0U291cmNlTWFwVVJMKGNv
bnRlbnQpOworICAgICAgICByZXR1cm4gQ29udGVudFNlYXJjaFV0aWxpdGllczo6ZmluZFN0eWxl
c2hlZXRTb3VyY2VNYXBVUkwoY29udGVudCk7CiAKICAgICByZXR1cm4gU3RyaW5nKCk7CiB9CkBA
IC02MDksNyArNjA5LDcgQEAgdm9pZCBJbnNwZWN0b3JQYWdlQWdlbnQ6OnNlYXJjaEluUmVzb3Vy
Y2UoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQsIGMKICAgICBpZiAoIXN1Y2Nl
c3MpCiAgICAgICAgIHJldHVybjsKIAotICAgIHJlc3VsdHMgPSBDb250ZW50U2VhcmNoVXRpbHM6
OnNlYXJjaEluVGV4dEJ5TGluZXMoY29udGVudCwgcXVlcnksIGNhc2VTZW5zaXRpdmUsIGlzUmVn
ZXgpOworICAgIHJlc3VsdHMgPSBDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpzZWFyY2hJblRleHRC
eUxpbmVzKGNvbnRlbnQsIHF1ZXJ5LCBjYXNlU2Vuc2l0aXZlLCBpc1JlZ2V4KTsKIH0KIAogc3Rh
dGljIFBhc3NSZWZQdHI8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6UGFnZTo6U2VhcmNoUmVzdWx0
PiBidWlsZE9iamVjdEZvclNlYXJjaFJlc3VsdChjb25zdCBTdHJpbmcmIGZyYW1lSWQsIGNvbnN0
IFN0cmluZyYgdXJsLCBpbnQgbWF0Y2hlc0NvdW50KQpAQCAtNjI3LDcgKzYyNyw3IEBAIHZvaWQg
SW5zcGVjdG9yUGFnZUFnZW50OjpzZWFyY2hJblJlc291cmNlcyhFcnJvclN0cmluZyosIGNvbnN0
IFN0cmluZyYgdGV4dCwgY29uCiAKICAgICBib29sIGlzUmVnZXggPSBvcHRpb25hbElzUmVnZXgg
PyAqb3B0aW9uYWxJc1JlZ2V4IDogZmFsc2U7CiAgICAgYm9vbCBjYXNlU2Vuc2l0aXZlID0gb3B0
aW9uYWxDYXNlU2Vuc2l0aXZlID8gKm9wdGlvbmFsQ2FzZVNlbnNpdGl2ZSA6IGZhbHNlOwotICAg
IFJlZ3VsYXJFeHByZXNzaW9uIHJlZ2V4ID0gQ29udGVudFNlYXJjaFV0aWxzOjpjcmVhdGVTZWFy
Y2hSZWdleCh0ZXh0LCBjYXNlU2Vuc2l0aXZlLCBpc1JlZ2V4KTsKKyAgICBKU0M6OllhcnI6OlJl
Z3VsYXJFeHByZXNzaW9uIHJlZ2V4ID0gQ29udGVudFNlYXJjaFV0aWxpdGllczo6Y3JlYXRlU2Vh
cmNoUmVnZXgodGV4dCwgY2FzZVNlbnNpdGl2ZSwgaXNSZWdleCk7CiAKICAgICBmb3IgKEZyYW1l
KiBmcmFtZSA9ICZtX3BhZ2UtPm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJl
ZSgpLnRyYXZlcnNlTmV4dCgmbV9wYWdlLT5tYWluRnJhbWUoKSkpIHsKICAgICAgICAgU3RyaW5n
IGNvbnRlbnQ7CkBAIC02MzUsMTMgKzYzNSwxMyBAQCB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6
c2VhcmNoSW5SZXNvdXJjZXMoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIHRleHQsIGNvbgog
ICAgICAgICBmb3IgKFZlY3RvcjxDYWNoZWRSZXNvdXJjZSo+Ojpjb25zdF9pdGVyYXRvciBpdCA9
IGFsbFJlc291cmNlcy5iZWdpbigpOyBpdCAhPSBhbGxSZXNvdXJjZXMuZW5kKCk7ICsraXQpIHsK
ICAgICAgICAgICAgIENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSA9ICppdDsKICAgICAg
ICAgICAgIGlmICh0ZXh0Q29udGVudEZvckNhY2hlZFJlc291cmNlKGNhY2hlZFJlc291cmNlLCAm
Y29udGVudCkpIHsKLSAgICAgICAgICAgICAgICBpbnQgbWF0Y2hlc0NvdW50ID0gQ29udGVudFNl
YXJjaFV0aWxzOjpjb3VudFJlZ3VsYXJFeHByZXNzaW9uTWF0Y2hlcyhyZWdleCwgY29udGVudCk7
CisgICAgICAgICAgICAgICAgaW50IG1hdGNoZXNDb3VudCA9IENvbnRlbnRTZWFyY2hVdGlsaXRp
ZXM6OmNvdW50UmVndWxhckV4cHJlc3Npb25NYXRjaGVzKHJlZ2V4LCBjb250ZW50KTsKICAgICAg
ICAgICAgICAgICBpZiAobWF0Y2hlc0NvdW50KQogICAgICAgICAgICAgICAgICAgICBzZWFyY2hS
ZXN1bHRzLT5hZGRJdGVtKGJ1aWxkT2JqZWN0Rm9yU2VhcmNoUmVzdWx0KGZyYW1lSWQoZnJhbWUp
LCBjYWNoZWRSZXNvdXJjZS0+dXJsKCksIG1hdGNoZXNDb3VudCkpOwogICAgICAgICAgICAgfQog
ICAgICAgICB9CiAgICAgICAgIGlmIChtYWluUmVzb3VyY2VDb250ZW50KGZyYW1lLCBmYWxzZSwg
JmNvbnRlbnQpKSB7Ci0gICAgICAgICAgICBpbnQgbWF0Y2hlc0NvdW50ID0gQ29udGVudFNlYXJj
aFV0aWxzOjpjb3VudFJlZ3VsYXJFeHByZXNzaW9uTWF0Y2hlcyhyZWdleCwgY29udGVudCk7Cisg
ICAgICAgICAgICBpbnQgbWF0Y2hlc0NvdW50ID0gQ29udGVudFNlYXJjaFV0aWxpdGllczo6Y291
bnRSZWd1bGFyRXhwcmVzc2lvbk1hdGNoZXMocmVnZXgsIGNvbnRlbnQpOwogICAgICAgICAgICAg
aWYgKG1hdGNoZXNDb3VudCkKICAgICAgICAgICAgICAgICBzZWFyY2hSZXN1bHRzLT5hZGRJdGVt
KGJ1aWxkT2JqZWN0Rm9yU2VhcmNoUmVzdWx0KGZyYW1lSWQoZnJhbWUpLCBmcmFtZS0+ZG9jdW1l
bnQoKS0+dXJsKCksIG1hdGNoZXNDb3VudCkpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmgKaW5kZXggODNkMTJkNS4uNTcwNjU3NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuaApAQCAt
NjEsNyArNjEsNiBAQCBjbGFzcyBJbnNwZWN0b3JPdmVybGF5OwogY2xhc3MgSW5zdHJ1bWVudGlu
Z0FnZW50czsKIGNsYXNzIFVSTDsKIGNsYXNzIFBhZ2U7Ci1jbGFzcyBSZWd1bGFyRXhwcmVzc2lv
bjsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIGNsYXNzIFRleHRSZXNvdXJjZURlY29kZXI7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcAppbmRl
eCA1MGI1MDAxLi5kNzM5NTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvclN0eWxlU2hlZXQuY3BwCkBAIC0zOSw3ICszOSw2IEBACiAjaW5jbHVkZSAiQ1NTU3R5
bGVSdWxlLmgiCiAjaW5jbHVkZSAiQ1NTU3R5bGVTaGVldC5oIgogI2luY2x1ZGUgIkNTU1N1cHBv
cnRzUnVsZS5oIgotI2luY2x1ZGUgIkNvbnRlbnRTZWFyY2hVdGlscy5oIgogI2luY2x1ZGUgIkNv
bnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAi
RWxlbWVudC5oIgpAQCAtNTAsNyArNDksNiBAQAogI2luY2x1ZGUgIkluc3BlY3RvckNTU0FnZW50
LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yUGFnZUFnZW50LmgiCiAjaW5jbHVkZSAiTm9kZS5oIgot
I2luY2x1ZGUgIlJlZ3VsYXJFeHByZXNzaW9uLmgiCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKICNp
bmNsdWRlICJTdHlsZVByb3BlcnRpZXMuaCIKICNpbmNsdWRlICJTdHlsZVJlc29sdmVyLmgiCkBA
IC01OSwxMSArNTcsMTMgQEAKICNpbmNsdWRlICJTdHlsZVNoZWV0Q29udGVudHMuaCIKICNpbmNs
dWRlICJTdHlsZVNoZWV0TGlzdC5oIgogI2luY2x1ZGUgIldlYktpdENTU0tleWZyYW1lc1J1bGUu
aCIKKyNpbmNsdWRlIDxpbnNwZWN0b3IvQ29udGVudFNlYXJjaFV0aWxpdGllcy5oPgogI2luY2x1
ZGUgPGluc3BlY3Rvci9JbnNwZWN0b3JWYWx1ZXMuaD4KICNpbmNsdWRlIDx3dGYvT3duUHRyLmg+
CiAjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgorI2luY2x1ZGUgPHlhcnIvUmVndWxh
ckV4cHJlc3Npb24uaD4KIAogdXNpbmcgSW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6QXJyYXk7CiB1
c2luZyBXZWJDb3JlOjpSdWxlU291cmNlRGF0YUxpc3Q7CkBAIC0xNTgsOCArMTU4LDggQEAgc3Rh
dGljIFBhc3NSZWZQdHI8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6Q1NTOjpTb3VyY2VSYW5nZT4g
YnVpbGRTb3VyY2VSYW5nZU9iamUKIHsKICAgICBpZiAoIWxpbmVFbmRpbmdzKQogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKLSAgICBUZXh0UG9zaXRpb24gc3RhcnQgPSBDb250ZW50U2VhcmNoVXRp
bHM6OnRleHRQb3NpdGlvbkZyb21PZmZzZXQocmFuZ2Uuc3RhcnQsICpsaW5lRW5kaW5ncyk7Ci0g
ICAgVGV4dFBvc2l0aW9uIGVuZCA9IENvbnRlbnRTZWFyY2hVdGlsczo6dGV4dFBvc2l0aW9uRnJv
bU9mZnNldChyYW5nZS5lbmQsICpsaW5lRW5kaW5ncyk7CisgICAgVGV4dFBvc2l0aW9uIHN0YXJ0
ID0gQ29udGVudFNlYXJjaFV0aWxpdGllczo6dGV4dFBvc2l0aW9uRnJvbU9mZnNldChyYW5nZS5z
dGFydCwgKmxpbmVFbmRpbmdzKTsKKyAgICBUZXh0UG9zaXRpb24gZW5kID0gQ29udGVudFNlYXJj
aFV0aWxpdGllczo6dGV4dFBvc2l0aW9uRnJvbU9mZnNldChyYW5nZS5lbmQsICpsaW5lRW5kaW5n
cyk7CiAKICAgICBSZWZQdHI8SW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6Q1NTOjpTb3VyY2VSYW5n
ZT4gcmVzdWx0ID0gSW5zcGVjdG9yOjpUeXBlQnVpbGRlcjo6Q1NTOjpTb3VyY2VSYW5nZTo6Y3Jl
YXRlKCkKICAgICAgICAgLnNldFN0YXJ0TGluZShzdGFydC5tX2xpbmUuemVyb0Jhc2VkSW50KCkp
CkBAIC0xMDA1LDcgKzEwMDUsNyBAQCBQYXNzUmVmUHRyPEluc3BlY3Rvcjo6VHlwZUJ1aWxkZXI6
OkNTUzo6Q1NTU3R5bGVTaGVldEhlYWRlcj4gSW5zcGVjdG9yU3R5bGVTaGVldAogCiBzdGF0aWMg
UGFzc1JlZlB0cjxJbnNwZWN0b3I6OlR5cGVCdWlsZGVyOjpBcnJheTxTdHJpbmc+PiBzZWxlY3Rv
cnNGcm9tU291cmNlKGNvbnN0IENTU1J1bGVTb3VyY2VEYXRhKiBzb3VyY2VEYXRhLCBjb25zdCBT
dHJpbmcmIHNoZWV0VGV4dCkKIHsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFJlZ3VsYXJFeHBy
ZXNzaW9uLCBjb21tZW50LCAoIi9cXCpbXl0qP1xcKi8iLCBUZXh0Q2FzZVNlbnNpdGl2ZSwgTXVs
dGlsaW5lRW5hYmxlZCkpOworICAgIERFRklORV9TVEFUSUNfTE9DQUwoSlNDOjpZYXJyOjpSZWd1
bGFyRXhwcmVzc2lvbiwgY29tbWVudCwgKCIvXFwqW15dKj9cXCovIiwgVGV4dENhc2VTZW5zaXRp
dmUsIEpTQzo6WWFycjo6TXVsdGlsaW5lRW5hYmxlZCkpOwogICAgIFJlZlB0cjxJbnNwZWN0b3I6
OlR5cGVCdWlsZGVyOjpBcnJheTxTdHJpbmc+PiByZXN1bHQgPSBJbnNwZWN0b3I6OlR5cGVCdWls
ZGVyOjpBcnJheTxTdHJpbmc+OjpjcmVhdGUoKTsKICAgICBjb25zdCBTZWxlY3RvclJhbmdlTGlz
dCYgcmFuZ2VzID0gc291cmNlRGF0YS0+c2VsZWN0b3JSYW5nZXM7CiAgICAgZm9yIChzaXplX3Qg
aSA9IDAsIHNpemUgPSByYW5nZXMuc2l6ZSgpOyBpIDwgc2l6ZTsgKytpKSB7CkBAIC0xMjI1LDcg
KzEyMjUsNyBAQCBQYXNzT3duUHRyPFZlY3RvcjxzaXplX3Q+PiBJbnNwZWN0b3JTdHlsZVNoZWV0
OjpsaW5lRW5kaW5ncygpIGNvbnN0CiB7CiAgICAgaWYgKCFtX3BhcnNlZFN0eWxlU2hlZXQtPmhh
c1RleHQoKSkKICAgICAgICAgcmV0dXJuIFBhc3NPd25QdHI8VmVjdG9yPHNpemVfdD4+KCk7Ci0g
ICAgcmV0dXJuIENvbnRlbnRTZWFyY2hVdGlsczo6bGluZUVuZGluZ3MobV9wYXJzZWRTdHlsZVNo
ZWV0LT50ZXh0KCkpOworICAgIHJldHVybiBDb250ZW50U2VhcmNoVXRpbGl0aWVzOjpsaW5lRW5k
aW5ncyhtX3BhcnNlZFN0eWxlU2hlZXQtPnRleHQoKSk7CiB9CiAKIHVuc2lnbmVkIEluc3BlY3Rv
clN0eWxlU2hlZXQ6OnJ1bGVJbmRleEJ5U3R5bGUoQ1NTU3R5bGVEZWNsYXJhdGlvbiogcGFnZVN0
eWxlKSBjb25zdApAQCAtMTQ5Miw3ICsxNDkyLDcgQEAgYm9vbCBJbnNwZWN0b3JTdHlsZVNoZWV0
Rm9ySW5saW5lU3R5bGU6OnNldFN0eWxlVGV4dChDU1NTdHlsZURlY2xhcmF0aW9uKiBzdHlsZSwK
IAogUGFzc093blB0cjxWZWN0b3I8c2l6ZV90Pj4gSW5zcGVjdG9yU3R5bGVTaGVldEZvcklubGlu
ZVN0eWxlOjpsaW5lRW5kaW5ncygpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIENvbnRlbnRTZWFyY2hV
dGlsczo6bGluZUVuZGluZ3MoZWxlbWVudFN0eWxlVGV4dCgpKTsKKyAgICByZXR1cm4gQ29udGVu
dFNlYXJjaFV0aWxpdGllczo6bGluZUVuZGluZ3MoZWxlbWVudFN0eWxlVGV4dCgpKTsKIH0KIAog
RG9jdW1lbnQqIEluc3BlY3RvclN0eWxlU2hlZXRGb3JJbmxpbmVTdHlsZTo6b3duZXJEb2N1bWVu
dCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VyRGVi
dWdnZXJBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VyRGVidWdnZXJB
Z2VudC5jcHAKaW5kZXggOGYzMzc0Ni4uZjk0OGQ4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL1dvcmtlckRlYnVnZ2VyQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9Xb3JrZXJEZWJ1Z2dlckFnZW50LmNwcApAQCAtMjksMTAgKzI5LDEwIEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdH
RVIpICYmIEVOQUJMRShJTlNQRUNUT1IpCiAjaW5jbHVkZSAiV29ya2VyRGVidWdnZXJBZ2VudC5o
IgogCisjaWYgRU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdHRVIpICYmIEVOQUJMRShJTlNQRUNUT1Ip
CisKICNpbmNsdWRlICJTY3JpcHREZWJ1Z1NlcnZlci5oIgogI2luY2x1ZGUgIldvcmtlckdsb2Jh
bFNjb3BlLmgiCiAjaW5jbHVkZSAiV29ya2VyVGhyZWFkLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0ZyYW1lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCmlu
ZGV4IDFiNWExODguLmU4OWVhYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJh
bWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCkBAIC03NSw3ICs3NSw2
IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VDYWNoZS5oIgogI2luY2x1ZGUg
IlBhZ2VHcm91cC5oIgotI2luY2x1ZGUgIlJlZ3VsYXJFeHByZXNzaW9uLmgiCiAjaW5jbHVkZSAi
UmVuZGVyVGFibGVDZWxsLmgiCiAjaW5jbHVkZSAiUmVuZGVyVGV4dC5oIgogI2luY2x1ZGUgIlJl
bmRlclRleHRDb250cm9sLmgiCkBAIC0xMDgsNiArMTA3LDcgQEAKICNpbmNsdWRlIDx3dGYvUGFz
c093blB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkTGVha0NvdW50ZXIuaD4KICNpbmNs
dWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CisjaW5jbHVkZSA8eWFyci9SZWd1bGFyRXhwcmVzc2lv
bi5oPgogCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogI2luY2x1ZGUgIlJlbmRl
ckxheWVyQ29tcG9zaXRvci5oIgpAQCAtMzE5LDEyICszMTksMTIgQEAgdm9pZCBGcmFtZTo6c2Vu
ZE9yaWVudGF0aW9uQ2hhbmdlRXZlbnQoaW50IG9yaWVudGF0aW9uKQogfQogI2VuZGlmIC8vIEVO
QUJMRShPUklFTlRBVElPTl9FVkVOVFMpCiAKLXN0YXRpYyBQYXNzT3duUHRyPFJlZ3VsYXJFeHBy
ZXNzaW9uPiBjcmVhdGVSZWdFeHBGb3JMYWJlbHMoY29uc3QgVmVjdG9yPFN0cmluZz4mIGxhYmVs
cykKK3N0YXRpYyBQYXNzT3duUHRyPEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb24+IGNyZWF0
ZVJlZ0V4cEZvckxhYmVscyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgbGFiZWxzKQogewogICAgIC8v
IFJFVklFVy0gdmVyc2lvbiBvZiB0aGlzIGNhbGwgaW4gRnJhbWVNYWMubW0gY2FjaGVzIGJhc2Vk
IG9uIHRoZSBOU0FycmF5IHB0cnMgYmVpbmcKICAgICAvLyB0aGUgc2FtZSBhY3Jvc3MgY2FsbHMu
ICBXZSBjYW4ndCBkbyB0aGF0LgogCi0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChSZWd1bGFyRXhw
cmVzc2lvbiwgd29yZFJlZ0V4cCwgKCJcXHciLCBUZXh0Q2FzZVNlbnNpdGl2ZSkpOworICAgIERF
RklORV9TVEFUSUNfTE9DQUwoSlNDOjpZYXJyOjpSZWd1bGFyRXhwcmVzc2lvbiwgd29yZFJlZ0V4
cCwgKCJcXHciLCBUZXh0Q2FzZVNlbnNpdGl2ZSkpOwogICAgIFN0cmluZyBwYXR0ZXJuKCIoIik7
CiAgICAgdW5zaWduZWQgaW50IG51bUxhYmVscyA9IGxhYmVscy5zaXplKCk7CiAgICAgdW5zaWdu
ZWQgaW50IGk7CkBAIC0zNTAsMTAgKzM1MCwxMCBAQCBzdGF0aWMgUGFzc093blB0cjxSZWd1bGFy
RXhwcmVzc2lvbj4gY3JlYXRlUmVnRXhwRm9yTGFiZWxzKGNvbnN0IFZlY3RvcjxTdHJpbmc+Jgog
ICAgICAgICAgICAgcGF0dGVybi5hcHBlbmQoIlxcYiIpOwogICAgIH0KICAgICBwYXR0ZXJuLmFw
cGVuZCgiKSIpOwotICAgIHJldHVybiBhZG9wdFB0cihuZXcgUmVndWxhckV4cHJlc3Npb24ocGF0
dGVybiwgVGV4dENhc2VJbnNlbnNpdGl2ZSkpOworICAgIHJldHVybiBhZG9wdFB0cihuZXcgSlND
OjpZYXJyOjpSZWd1bGFyRXhwcmVzc2lvbihwYXR0ZXJuLCBUZXh0Q2FzZUluc2Vuc2l0aXZlKSk7
CiB9CiAKLVN0cmluZyBGcmFtZTo6c2VhcmNoRm9yTGFiZWxzQWJvdmVDZWxsKFJlZ3VsYXJFeHBy
ZXNzaW9uKiByZWdFeHAsIEhUTUxUYWJsZUNlbGxFbGVtZW50KiBjZWxsLCBzaXplX3QqIHJlc3Vs
dERpc3RhbmNlRnJvbVN0YXJ0T2ZDZWxsKQorU3RyaW5nIEZyYW1lOjpzZWFyY2hGb3JMYWJlbHNB
Ym92ZUNlbGwoSlNDOjpZYXJyOjpSZWd1bGFyRXhwcmVzc2lvbiogcmVnRXhwLCBIVE1MVGFibGVD
ZWxsRWxlbWVudCogY2VsbCwgc2l6ZV90KiByZXN1bHREaXN0YW5jZUZyb21TdGFydE9mQ2VsbCkK
IHsKICAgICBIVE1MVGFibGVDZWxsRWxlbWVudCogYWJvdmVDZWxsID0gY2VsbC0+Y2VsbEFib3Zl
KCk7CiAgICAgaWYgKGFib3ZlQ2VsbCkgewpAQCAtMzgyLDcgKzM4Miw3IEBAIFN0cmluZyBGcmFt
ZTo6c2VhcmNoRm9yTGFiZWxzQWJvdmVDZWxsKFJlZ3VsYXJFeHByZXNzaW9uKiByZWdFeHAsIEhU
TUxUYWJsZUNlbGxFCiAKIFN0cmluZyBGcmFtZTo6c2VhcmNoRm9yTGFiZWxzQmVmb3JlRWxlbWVu
dChjb25zdCBWZWN0b3I8U3RyaW5nPiYgbGFiZWxzLCBFbGVtZW50KiBlbGVtZW50LCBzaXplX3Qq
IHJlc3VsdERpc3RhbmNlLCBib29sKiByZXN1bHRJc0luQ2VsbEFib3ZlKQogewotICAgIE93blB0
cjxSZWd1bGFyRXhwcmVzc2lvbj4gcmVnRXhwKGNyZWF0ZVJlZ0V4cEZvckxhYmVscyhsYWJlbHMp
KTsKKyAgICBPd25QdHI8SlNDOjpZYXJyOjpSZWd1bGFyRXhwcmVzc2lvbj4gcmVnRXhwKGNyZWF0
ZVJlZ0V4cEZvckxhYmVscyhsYWJlbHMpKTsKICAgICAvLyBXZSBzdG9wIHNlYXJjaGluZyBhZnRl
ciB3ZSd2ZSBzZWVuIHRoaXMgbWFueSBjaGFycwogICAgIGNvbnN0IHVuc2lnbmVkIGludCBjaGFy
c1NlYXJjaGVkVGhyZXNob2xkID0gNTAwOwogICAgIC8vIFRoaXMgaXMgdGhlIGFic29sdXRlIG1h
eCB3ZSBzZWFyY2guICBXZSBhbGxvdyBhIGxpdHRsZSBtb3JlIHNsb3AgdGhhbgpAQCAtNDUyLDEw
ICs0NTIsMTAgQEAgc3RhdGljIFN0cmluZyBtYXRjaExhYmVsc0FnYWluc3RTdHJpbmcoY29uc3Qg
VmVjdG9yPFN0cmluZz4mIGxhYmVscywgY29uc3QgU3RyaW4KICAgICBTdHJpbmcgbXV0YWJsZVN0
cmluZ1RvTWF0Y2ggPSBzdHJpbmdUb01hdGNoOwogCiAgICAgLy8gTWFrZSBudW1iZXJzIGFuZCBf
J3MgaW4gZmllbGQgbmFtZXMgYmVoYXZlIGxpa2Ugd29yZCBib3VuZGFyaWVzLCBlLmcuLCAiYWRk
cmVzczIiCi0gICAgcmVwbGFjZShtdXRhYmxlU3RyaW5nVG9NYXRjaCwgUmVndWxhckV4cHJlc3Np
b24oIlxcZCIsIFRleHRDYXNlU2Vuc2l0aXZlKSwgIiAiKTsKKyAgICByZXBsYWNlKG11dGFibGVT
dHJpbmdUb01hdGNoLCBKU0M6OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9uKCJcXGQiLCBUZXh0Q2Fz
ZVNlbnNpdGl2ZSksICIgIik7CiAgICAgbXV0YWJsZVN0cmluZ1RvTWF0Y2gucmVwbGFjZSgnXycs
ICcgJyk7CiAgICAgCi0gICAgT3duUHRyPFJlZ3VsYXJFeHByZXNzaW9uPiByZWdFeHAoY3JlYXRl
UmVnRXhwRm9yTGFiZWxzKGxhYmVscykpOworICAgIE93blB0cjxKU0M6OllhcnI6OlJlZ3VsYXJF
eHByZXNzaW9uPiByZWdFeHAoY3JlYXRlUmVnRXhwRm9yTGFiZWxzKGxhYmVscykpOwogICAgIC8v
IFVzZSB0aGUgbGFyZ2VzdCBtYXRjaCB3ZSBjYW4gZmluZCBpbiB0aGUgd2hvbGUgc3RyaW5nCiAg
ICAgaW50IHBvczsKICAgICBpbnQgbGVuZ3RoOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9GcmFtZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5oCmluZGV4IDc4MmYyNTEu
LmVmZjhlMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmgKQEAgLTYxLDYgKzYxLDEwIEBAIE9CSkNfQ0xBU1Mg
TlNTdHJpbmc7CiB0eXBlZGVmIHN0cnVjdCBIQklUTUFQX18qIEhCSVRNQVA7CiAjZW5kaWYKIAor
bmFtZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBZYXJyIHsKK2NsYXNzIFJlZ3VsYXJFeHByZXNzaW9u
OworfSB9CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIEFuaW1hdGlvbkNvbnRy
b2xsZXI7CkBAIC04MSw3ICs4NSw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBjbGFzcyBN
YWluRnJhbWU7CiAgICAgY2xhc3MgTm9kZTsKICAgICBjbGFzcyBSYW5nZTsKLSAgICBjbGFzcyBS
ZWd1bGFyRXhwcmVzc2lvbjsKICAgICBjbGFzcyBSZW5kZXJMYXllcjsKICAgICBjbGFzcyBSZW5k
ZXJWaWV3OwogICAgIGNsYXNzIFJlbmRlcldpZGdldDsKQEAgLTIzNyw3ICsyNDAsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIERvY3VtZW50KiBkb2N1bWVudEF0UG9pbnQoY29uc3Qg
SW50UG9pbnQmIHdpbmRvd1BvaW50KTsKICAgICAgICAgUGFzc1JlZlB0cjxSYW5nZT4gcmFuZ2VG
b3JQb2ludChjb25zdCBJbnRQb2ludCYgZnJhbWVQb2ludCk7CiAKLSAgICAgICAgU3RyaW5nIHNl
YXJjaEZvckxhYmVsc0Fib3ZlQ2VsbChSZWd1bGFyRXhwcmVzc2lvbiosIEhUTUxUYWJsZUNlbGxF
bGVtZW50Kiwgc2l6ZV90KiByZXN1bHREaXN0YW5jZUZyb21TdGFydE9mQ2VsbCk7CisgICAgICAg
IFN0cmluZyBzZWFyY2hGb3JMYWJlbHNBYm92ZUNlbGwoSlNDOjpZYXJyOjpSZWd1bGFyRXhwcmVz
c2lvbiosIEhUTUxUYWJsZUNlbGxFbGVtZW50Kiwgc2l6ZV90KiByZXN1bHREaXN0YW5jZUZyb21T
dGFydE9mQ2VsbCk7CiAgICAgICAgIFN0cmluZyBzZWFyY2hGb3JMYWJlbHNCZWZvcmVFbGVtZW50
KGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBsYWJlbHMsIEVsZW1lbnQqLCBzaXplX3QqIHJlc3VsdERp
c3RhbmNlLCBib29sKiByZXN1bHRJc0luQ2VsbEFib3ZlKTsKICAgICAgICAgU3RyaW5nIG1hdGNo
TGFiZWxzQWdhaW5zdEVsZW1lbnQoY29uc3QgVmVjdG9yPFN0cmluZz4mIGxhYmVscywgRWxlbWVu
dCopOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVu
Z2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMQ29tbW9uLmNwcApp
bmRleCBiNDExYzA4Li5jMTM1NmEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQz
RE9wZW5HTENvbW1vbi5jcHAKQEAgLTIzLDcgKzIzLDcgQEAKICAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKICAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAogICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8K
IAogI2luY2x1ZGUgImNvbmZpZy5oIgpAQCAtNDcsNyArNDcsNiBAQAogI2luY2x1ZGUgIkludFNp
emUuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIK
LSNpbmNsdWRlICJSZWd1bGFyRXhwcmVzc2lvbi5oIgogI2luY2x1ZGUgIlRlbXBvcmFyeU9wZW5H
TFNldHRpbmcuaCIKICNpbmNsdWRlIDxjc3RyaW5nPgogI2luY2x1ZGUgPHJ1bnRpbWUvQXJyYXlC
dWZmZXIuaD4KQEAgLTU3LDYgKzU2LDcgQEAKICNpbmNsdWRlIDxydW50aW1lL1VpbnQ4QXJyYXku
aD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJp
bmcuaD4KKyNpbmNsdWRlIDx5YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmg+CiAKICNpZiBQTEFURk9S
TShJT1MpCiAjaW1wb3J0IDxPcGVuR0xFUy9FUzIvZ2xleHQuaD4KQEAgLTEzMDcsNyArMTMwNyw3
IEBAIFN0cmluZyBHcmFwaGljc0NvbnRleHQzRDo6Z2V0VW5tYW5nbGVkSW5mb0xvZyhQbGF0Zm9y
bTNET2JqZWN0IHNoYWRlcnNbMl0sIEdDM0RzCiB7CiAgICAgTE9HKFdlYkdMLCAiV2FzOiAlcyIs
IGxvZy51dGY4KCkuZGF0YSgpKTsKIAotICAgIFJlZ3VsYXJFeHByZXNzaW9uIHJlZ0V4cCgid2Vi
Z2xfWzAxMjM0NTY3ODlhYmNkZWZBQkNERUZdKyIsIFRleHRDYXNlU2Vuc2l0aXZlKTsKKyAgICBK
U0M6OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9uIHJlZ0V4cCgid2ViZ2xfWzAxMjM0NTY3ODlhYmNk
ZWZBQkNERUZdKyIsIFRleHRDYXNlU2Vuc2l0aXZlKTsKIAogICAgIFN0cmluZyBwcm9jZXNzZWRM
b2c7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggODg0NGQwMC4uMzk2NmU2OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0No
YW5nZUxvZwpAQCAtMSw1ICsxLDE0IEBACiAyMDE0LTAxLTIzICBKb3NlcGggUGVjb3Jhcm8gIDxw
ZWNvcmFyb0BhcHBsZS5jb20+CiAKKyAgICAgICAgTW92ZSBSZWd1bGFyRXhwcmVzc2lvbiBpbnRv
IEphdmFTY3JpcHRDb3JlIGZvciBpbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzUyNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogV2ViVmlldy9XZWJIVE1MUmVwcmVzZW50YXRpb24ubW06
CisKKzIwMTQtMDEtMjMgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKwog
ICAgICAgICBXZWIgSW5zcGVjdG9yOiBSZW1vdmUgcmVjb21waWxlQWxsSlNGdW5jdGlvbnMgdGlt
ZXIgaW4gU2NyaXB0RGVidWdTZXJ2ZXIKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyNzQwOQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYkhUTUxSZXByZXNlbnRhdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViSFRNTFJlcHJlc2VudGF0aW9uLm1tCmluZGV4IDlkODkzNGEuLmI0NzIxNDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFJlcHJlc2VudGF0aW9uLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFJlcHJlc2VudGF0aW9uLm1t
CkBAIC01NywxNSArNTcsMTYgQEAKICNpbXBvcnQgPFdlYkNvcmUvTUlNRVR5cGVSZWdpc3RyeS5o
PgogI2ltcG9ydCA8V2ViQ29yZS9Ob2RlVHJhdmVyc2FsLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jh
bmdlLmg+Ci0jaW1wb3J0IDxXZWJDb3JlL1JlZ3VsYXJFeHByZXNzaW9uLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1JlbmRlckVsZW1lbnQuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dFJlc291cmNlRGVj
b2Rlci5oPgogI2ltcG9ydCA8V2ViS2l0L0RPTUhUTUxJbnB1dEVsZW1lbnQuaD4KKyNpbXBvcnQg
PHlhcnIvUmVndWxhckV4cHJlc3Npb24uaD4KICNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25zLmg+CiAj
aW1wb3J0IDx3dGYvU3RkTGliRXh0cmFzLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwog
dXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKK3VzaW5nIEpTQzo6WWFycjo6UmVndWxhckV4cHJl
c3Npb247CiAKIEBpbnRlcmZhY2UgV2ViSFRNTFJlcHJlc2VudGF0aW9uUHJpdmF0ZSA6IE5TT2Jq
ZWN0IHsKIEBwdWJsaWMK
</data>

          </attachment>
      

    </bug>

</bugzilla>