<?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>140318</bug_id>
          
          <creation_ts>2015-01-09 14:49:26 -0800</creation_ts>
          <short_desc>Remove more sync database code</short_desc>
          <delta_ts>2015-01-09 15:33:40 -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>New Bugs</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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>bfulgham</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1060289</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-01-09 14:49:26 -0800</bug_when>
    <thetext>Remove more sync database code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1060290</commentid>
    <comment_count>1</comment_count>
      <attachid>244374</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-01-09 14:51:00 -0800</bug_when>
    <thetext>Created attachment 244374
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1060296</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-01-09 15:15:35 -0800</bug_when>
    <thetext>Committed r178209: &lt;http://trac.webkit.org/changeset/178209&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1060303</commentid>
    <comment_count>3</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-01-09 15:33:40 -0800</bug_when>
    <thetext>Broke the Windows build again:

     1&gt;..\bindings\js\JSBindingsAllInOne.cpp(117): fatal error C1083: Cannot open include file: &apos;JSSQLTransactionSyncCustom.cpp&apos;: No such file or directory</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>244374</attachid>
            <date>2015-01-09 14:51:00 -0800</date>
            <delta_ts>2015-01-09 14:58:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140318-20150109145104.patch</filename>
            <type>text/plain</type>
            <size>120084</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc4MTkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzdkYjA4MjZiNmQ0Y2Ex
YzI2NWFkNzc2NGNhMmQ0YTA4ZTY0ZWJkNi4uMWNjMzI5Nzc1MjNmMmU0NGMyYTFhZjkxOTAzZjFl
YzZjZTM5YmQ4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQwIEBACiAyMDE1LTAxLTA5ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgUmVtb3ZlIG1vcmUg
c3luYyBkYXRhYmFzZSBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDAzMTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1h
a2U6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZUJhY2tlbmRTeW5jLmNw
cDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlQmFja2Vu
ZFN5bmMuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNl
Q2FsbGJhY2suaDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlQ2FsbGJh
Y2suaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VNYW5hZ2VyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkRhdGFiYXNlTWFuYWdlcjo6b3BlbkRhdGFiYXNlU3luYyk6
IERlbGV0ZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZU1hbmFnZXIu
aDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlU2VydmVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRhdGFiYXNlU2VydmVyOjpjcmVhdGVEYXRhYmFzZSk6CisgICAgICAg
ICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVN5bmMuY3BwOiBSZW1vdmVkLgorICAgICAg
ICAqIE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmg6IFJlbW92ZWQuCisgICAgICAg
ICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVN5bmMuaWRsOiBSZW1vdmVkLgorICAgICAg
ICAqIE1vZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50U3luYy5jcHA6IFJlbW92ZWQuCisg
ICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxTdGF0ZW1lbnRTeW5jLmg6IFJlbW92ZWQu
CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5j
LmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0
aW9uQmFja2VuZFN5bmMuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNl
L1NRTFRyYW5zYWN0aW9uU3luYy5jcHA6IFJlbW92ZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJk
YXRhYmFzZS9TUUxUcmFuc2FjdGlvblN5bmMuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVz
L3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5pZGw6IFJlbW92ZWQuCisgICAgICAgICog
TW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5oOiBSZW1vdmVk
LgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJh
Y2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHBy
b2o6CisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzOgor
ICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9KU1NRTFRyYW5zYWN0aW9uU3luY0N1c3RvbS5jcHA6IFJlbW92ZWQuCisKKzIw
MTUtMDEtMDkgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAgICAg
ICBUcnkgdG8gdHJpZ2dlciBhIHJlYnVpbGQgb2YgZ2VuZXJhdGVkIEpTIGJpbmRpbmdzLgogCiAg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlz
dHMudHh0CmluZGV4IGJhYmJlZWNhNDFjMTUwODhhMjJiN2ViZGVkZTdmYzYyZDVkNmEzNDQuLmFk
OTRhZDJjNTEzMTI1ZTQ1OTA1YzJhOThmNWY3MDUyZmYxNGZlYTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0CkBAIC0zMDIsNyArMzAyLDYgQEAgc2V0KFdlYkNvcmVfTk9OX1NWR19JRExfRklMRVMKICAg
ICBNb2R1bGVzL3dlYmRhdGFiYXNlL0RPTVdpbmRvd1dlYkRhdGFiYXNlLmlkbAogICAgIE1vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuaWRsCiAgICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRh
YmFzZUNhbGxiYWNrLmlkbAotICAgIE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlk
bAogICAgIE1vZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXJyb3IuaWRsCiAgICAgTW9kdWxlcy93ZWJk
YXRhYmFzZS9TUUxFeGNlcHRpb24uaWRsCiAgICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1
bHRTZXQuaWRsCkBAIC0zMTIsOCArMzExLDYgQEAgc2V0KFdlYkNvcmVfTk9OX1NWR19JRExfRklM
RVMKICAgICBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmlkbAogICAgIE1vZHVs
ZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25DYWxsYmFjay5pZGwKICAgICBNb2R1bGVzL3dl
YmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjay5pZGwKLSAgICBNb2R1bGVzL3dl
YmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5pZGwKLSAgICBNb2R1bGVzL3dlYmRhdGFiYXNl
L1NRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrLmlkbAogCiAgICAgTW9kdWxlcy93ZWJzb2NrZXRz
L0Nsb3NlRXZlbnQuaWRsCiAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldC5pZGwKQEAg
LTk1NCwxMiArOTUxLDEwIEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBNb2R1bGVzL3dlYmRh
dGFiYXNlL0RhdGFiYXNlQmFja2VuZC5jcHAKICAgICBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFi
YXNlQmFja2VuZEJhc2UuY3BwCiAgICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZUJhY2tl
bmRDb250ZXh0LmNwcAotICAgIE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VCYWNrZW5kU3lu
Yy5jcHAKICAgICBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlQmFzZS5jcHAKICAgICBNb2R1
bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlQ29udGV4dC5jcHAKICAgICBNb2R1bGVzL3dlYmRhdGFi
YXNlL0RhdGFiYXNlTWFuYWdlci5jcHAKICAgICBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNl
U2VydmVyLmNwcAotICAgIE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmNwcAogICAg
IE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VUYXNrLmNwcAogICAgIE1vZHVsZXMvd2ViZGF0
YWJhc2UvRGF0YWJhc2VUaHJlYWQuY3BwCiAgICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFz
ZVRyYWNrZXIuY3BwCkBAIC05NjksMTQgKzk2NCwxMSBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAg
ICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXRSb3dMaXN0LmNwcAogICAgIE1vZHVs
ZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50LmNwcAogICAgIE1vZHVsZXMvd2ViZGF0YWJhc2Uv
U1FMU3RhdGVtZW50QmFja2VuZC5jcHAKLSAgICBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFN0YXRl
bWVudFN5bmMuY3BwCiAgICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5jcHAK
ICAgICBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uQmFja2VuZC5jcHAKLSAgICBN
b2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMuY3BwCiAgICAgTW9k
dWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkNsaWVudC5jcHAKICAgICBNb2R1bGVzL3dl
YmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uQ29vcmRpbmF0b3IuY3BwCiAgICAgTW9kdWxlcy93ZWJk
YXRhYmFzZS9TUUxUcmFuc2FjdGlvblN0YXRlTWFjaGluZS5jcHAKLSAgICBNb2R1bGVzL3dlYmRh
dGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5jcHAKIAogICAgIE1vZHVsZXMvd2Vic29ja2V0cy9U
aHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5jcHAKICAgICBNb2R1bGVzL3dlYnNvY2tldHMvVGhy
ZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyLmNwcApAQCAtMTEzNiw3ICsxMTI4
LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGJpbmRpbmdzL2pzL0pTUmVxdWVzdEFuaW1h
dGlvbkZyYW1lQ2FsbGJhY2tDdXN0b20uY3BwCiAgICAgYmluZGluZ3MvanMvSlNTUUxSZXN1bHRT
ZXRSb3dMaXN0Q3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTU1FMVHJhbnNhY3Rpb25DdXN0
b20uY3BwCi0gICAgYmluZGluZ3MvanMvSlNTUUxUcmFuc2FjdGlvblN5bmNDdXN0b20uY3BwCiAg
ICAgYmluZGluZ3MvanMvSlNTVkdFbGVtZW50SW5zdGFuY2VDdXN0b20uY3BwCiAgICAgYmluZGlu
Z3MvanMvSlNTVkdMZW5ndGhDdXN0b20uY3BwCiAgICAgYmluZGluZ3MvanMvSlNTVkdQYXRoU2Vn
Q3VzdG9tLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNThhNDkyMGU4MWM5
YmQ1Nzg3OThkMTAyNjZhYzFmNmI0MGQ5NmQ5NS4uNzI4ZmZjMGZhMGU0YjFjMGIwODRmZGEyNTRk
ZGM4OTZkMjFkNmRiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0xOTcsNyAr
MTk3LDYgQEAgTk9OX1NWR19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL0RPTVdpbmRvd1dlYkRhdGFiYXNlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9N
b2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL0RhdGFiYXNlQ2FsbGJhY2suaWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL1NRTEVycm9yLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmRh
dGFiYXNlL1NRTEV4Y2VwdGlvbi5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJkYXRh
YmFzZS9TUUxSZXN1bHRTZXQuaWRsIFwKQEAgLTIwNyw4ICsyMDYsNiBAQCBOT05fU1ZHX0JJTkRJ
TkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNh
Y3Rpb24uaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNh
Y3Rpb25DYWxsYmFjay5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJkYXRhYmFzZS9T
UUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaWRsIFwKLSAgICAkKFdlYkNvcmUpL01vZHVsZXMv
d2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25TeW5jLmlkbCBcCi0gICAgJChXZWJDb3JlKS9Nb2R1
bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrLmlkbCBcCiAgICAgJChX
ZWJDb3JlKS9Nb2R1bGVzL3dlYnNvY2tldHMvQ2xvc2VFdmVudC5pZGwgXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldC5pZGwgXAogICAgICQoV2ViQ29yZSkvY3J5
cHRvL0NyeXB0b0tleS5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJkYXRhYmFzZS9EYXRhYmFzZUJhY2tlbmRTeW5jLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VCYWNrZW5kU3luYy5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGEyOWI0ODNiOTJjZTM5NmJkZWQ3NDZmMzNjNDExODlmYjNlYjZiMjkuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZUJhY2tlbmRTeW5jLmNwcAorKysgL2Rldi9u
dWxsCkBAIC0xLDYyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRhdGFiYXNlQmFja2Vu
ZFN5bmMuaCIKLQotI2lmIEVOQUJMRShTUUxfREFUQUJBU0UpCi0KLSNpbmNsdWRlICJEYXRhYmFz
ZUJhY2tlbmRDb250ZXh0LmgiCi0jaW5jbHVkZSAiRGF0YWJhc2VUcmFja2VyLmgiCi0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotRGF0YWJhc2VCYWNrZW5kU3luYzo6RGF0YWJhc2VCYWNrZW5kU3lu
YyhQYXNzUmVmUHRyPERhdGFiYXNlQmFja2VuZENvbnRleHQ+IGRhdGFiYXNlQ29udGV4dCwgY29u
c3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGV4cGVjdGVkVmVyc2lvbiwgY29uc3QgU3Ry
aW5nJiBkaXNwbGF5TmFtZSwgdW5zaWduZWQgbG9uZyBlc3RpbWF0ZWRTaXplKQotICAgIDogRGF0
YWJhc2VCYWNrZW5kQmFzZShkYXRhYmFzZUNvbnRleHQsIG5hbWUsIGV4cGVjdGVkVmVyc2lvbiwg
ZGlzcGxheU5hbWUsIGVzdGltYXRlZFNpemUsIERhdGFiYXNlVHlwZTo6U3luYykKLXsKLX0KLQot
RGF0YWJhc2VCYWNrZW5kU3luYzo6fkRhdGFiYXNlQmFja2VuZFN5bmMoKQotewotICAgIC8vIFNR
TGl0ZSBpcyAibXVsdGktdGhyZWFkIHNhZmUiLCBidXQgZWFjaCBkYXRhYmFzZSBoYW5kbGUgY2Fu
IG9ubHkgYmUgdXNlZAotICAgIC8vIG9uIGEgc2luZ2xlIHRocmVhZCBhdCBhIHRpbWUuCi0gICAg
Ly8KLSAgICAvLyBGb3IgRGF0YWJhc2VCYWNrZW5kU3luYywgd2Ugb3BlbiB0aGUgU1FMaXRlIGRh
dGFiYXNlIG9uIHRoZSBzY3JpcHQgY29udGV4dAotICAgIC8vIHRocmVhZC4gQW5kIGhlbmNlIHdl
IHNob3VsZCBhbHNvIGNsb3NlIGl0IG9uIHRoYXQgc2FtZSB0aHJlYWQuIFRoaXMgbWVhbnMKLSAg
ICAvLyB0aGF0IHRoZSBTUUxpdGUgZGF0YWJhc2UgbmVlZCB0byBiZSBjbG9zZWQgaGVyZSBpbiB0
aGUgZGVzdHJ1Y3Rvci4KLQotICAgIEFTU0VSVChtX2RhdGFiYXNlQ29udGV4dC0+aXNDb250ZXh0
VGhyZWFkKCkpOwotICAgIGlmIChvcGVuZWQoKSkKLSAgICAgICAgY2xvc2VEYXRhYmFzZSgpOwot
fQotCi1ib29sIERhdGFiYXNlQmFja2VuZFN5bmM6Om9wZW5BbmRWZXJpZnlWZXJzaW9uKGJvb2wg
c2V0VmVyc2lvbkluTmV3RGF0YWJhc2UsIERhdGFiYXNlRXJyb3ImIGVycm9yLCBTdHJpbmcmIGVy
cm9yTWVzc2FnZSkKLXsKLSAgICByZXR1cm4gcGVyZm9ybU9wZW5BbmRWZXJpZnkoc2V0VmVyc2lv
bkluTmV3RGF0YWJhc2UsIGVycm9yLCBlcnJvck1lc3NhZ2UpOwotfQotCi19IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoU1FMX0RBVEFCQVNFKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZUJhY2tlbmRTeW5jLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlQmFja2VuZFN5bmMu
aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTk3NmY3ZjE4ZGNmMjVkOTY5ZDhkOTQz
MDBjYmJlYjAwZDFlYTZlYS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlQmFja2Vu
ZFN5bmMuaAorKysgL2Rldi9udWxsCkBAIC0xLDYwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4gCi0gKi8KLQotI2lmbmRlZiBEYXRhYmFzZUJhY2tlbmRTeW5j
X2gKLSNkZWZpbmUgRGF0YWJhc2VCYWNrZW5kU3luY19oCi0KLSNpZiBFTkFCTEUoU1FMX0RBVEFC
QVNFKQotCi0jaW5jbHVkZSAiRGF0YWJhc2VCYWNrZW5kQmFzZS5oIgotI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIERhdGFiYXNl
U2VydmVyOwotCi0vLyBGSVhNRTogVGhpcyBpbXBsZW1lbnRhdGlvbiBvZiBEYXRhYmFzZUJhY2tl
bmRTeW5jIGlzIG9ubHkgYSBwbGFjZSBob2xkZXIKLS8vIGZvciB0aGUgc3BsaXQgb3V0IG9mIHRo
ZSBEYXRhYmFzZVN5bmMgYmFja2VuZCB0byBiZSBkb25lIGxhdGVyLiBUaGlzCi0vLyBwbGFjZSBo
b2xkZXIgaXMgbmVlZGVkIHRvIGFsbG93IG90aGVyIGNvZGUgdGhhdCBuZWVkIHRvIHJlZmVyZW5j
ZSB0aGUKLS8vIERhdGFiYXNlQmFja2VuZFN5bmMgdG8gZG8gc28gYmVmb3JlIHRoZSBwcm9wZXIg
YmFja2VuZCBzcGxpdCBpcwotLy8gYXZhaWxhYmxlLiBUaGlzIHNob3VsZCBiZSByZXBsYWNlZCB3
aXRoIHRoZSBhY3R1YWwgaW1wbGVtZW50YXRpb24gbGF0ZXIuCi0KLWNsYXNzIERhdGFiYXNlQmFj
a2VuZFN5bmMgOiBwdWJsaWMgRGF0YWJhc2VCYWNrZW5kQmFzZSB7Ci1wdWJsaWM6Ci0gICAgdmly
dHVhbCB+RGF0YWJhc2VCYWNrZW5kU3luYygpOwotCi0gICAgdmlydHVhbCBib29sIG9wZW5BbmRW
ZXJpZnlWZXJzaW9uKGJvb2wgc2V0VmVyc2lvbkluTmV3RGF0YWJhc2UsIERhdGFiYXNlRXJyb3Im
LCBTdHJpbmcmIGVycm9yTWVzc2FnZSk7Ci0KLXByb3RlY3RlZDoKLSAgICBEYXRhYmFzZUJhY2tl
bmRTeW5jKFBhc3NSZWZQdHI8RGF0YWJhc2VCYWNrZW5kQ29udGV4dD4sIGNvbnN0IFN0cmluZyYg
bmFtZSwgY29uc3QgU3RyaW5nJiBleHBlY3RlZFZlcnNpb24sIGNvbnN0IFN0cmluZyYgZGlzcGxh
eU5hbWUsIHVuc2lnbmVkIGxvbmcgZXN0aW1hdGVkU2l6ZSk7Ci0KLSAgICBmcmllbmQgY2xhc3Mg
RGF0YWJhc2VTZXJ2ZXI7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoU1FMX0RBVEFCQVNFKQotCi0jZW5kaWYgLy8gRGF0YWJhc2VCYWNrZW5kU3luY19o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNl
Q2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VD
YWxsYmFjay5oCmluZGV4IGJmYTdiYzYyNzUyMmZiNmM4MzBlZDY5MDQ0OTljZmYyMTRhZjhmNDYu
LjRjZWQ3MGNmNDkxMGY1MDY1ZWEyNzhkNWI4OWM5OWQ5ZmExMzk2N2YgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VDYWxsYmFjay5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VDYWxsYmFjay5oCkBA
IC00NCw3ICs0NCw2IEBAIGNsYXNzIERhdGFiYXNlQ2FsbGJhY2sgOiBwdWJsaWMgVGhyZWFkU2Fm
ZVJlZkNvdW50ZWQ8RGF0YWJhc2VDYWxsYmFjaz4gewogcHVibGljOgogICAgIHZpcnR1YWwgfkRh
dGFiYXNlQ2FsbGJhY2soKSB7IH0KICAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoRGF0YWJh
c2UqKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KERhdGFiYXNlU3luYyopID0g
MDsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvRGF0YWJhc2VDYWxsYmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL0RhdGFiYXNlQ2FsbGJhY2suaWRsCmluZGV4IDVjM2Q3NWMwNGNmYmYxYzI0ODQ5YzViNzAy
NjBhZmNhYmIwYmYxMTIuLmZmNmVhODlkNzE3OTJiMTI4NjU3ZTc2Y2JhMjgzMzRjZDE0YTQwN2Mg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VD
YWxsYmFjay5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRh
YmFzZUNhbGxiYWNrLmlkbApAQCAtMzAsNSArMzAsNCBAQAogICAgIENvbmRpdGlvbmFsPVNRTF9E
QVRBQkFTRSwKIF0gY2FsbGJhY2sgaW50ZXJmYWNlIERhdGFiYXNlQ2FsbGJhY2sgewogICAgIGJv
b2xlYW4gaGFuZGxlRXZlbnQoRGF0YWJhc2UgZGF0YWJhc2UpOwotICAgIGJvb2xlYW4gaGFuZGxl
RXZlbnQoRGF0YWJhc2VTeW5jIGRhdGFiYXNlKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlTWFuYWdlci5jcHAKaW5kZXggNTBlZjAw
OTg5NmMxMDZjOTM3ZmY4NTY4MjdhZmIwMjMxOWI3MzZkNi4uMmY5NDU1MTgzZDc2MDVlYTlmNTcy
ZmMxOTlmNzExNTIyNjI1NjBkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJkYXRhYmFzZS9EYXRhYmFzZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VNYW5hZ2VyLmNwcApAQCAtMzMsMTEgKzMzLDkgQEAKICNp
bmNsdWRlICJEYXRhYmFzZUJhY2tlbmQuaCIKICNpbmNsdWRlICJEYXRhYmFzZUJhY2tlbmRCYXNl
LmgiCiAjaW5jbHVkZSAiRGF0YWJhc2VCYWNrZW5kQ29udGV4dC5oIgotI2luY2x1ZGUgIkRhdGFi
YXNlQmFja2VuZFN5bmMuaCIKICNpbmNsdWRlICJEYXRhYmFzZUNhbGxiYWNrLmgiCiAjaW5jbHVk
ZSAiRGF0YWJhc2VDb250ZXh0LmgiCiAjaW5jbHVkZSAiRGF0YWJhc2VTdHJhdGVneS5oIgotI2lu
Y2x1ZGUgIkRhdGFiYXNlU3luYy5oIgogI2luY2x1ZGUgIkRhdGFiYXNlVGFzay5oIgogI2luY2x1
ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JEYXRhYmFzZUluc3RydW1l
bnRhdGlvbi5oIgpAQCAtMzIwLDMxICszMTgsNiBAQCBQYXNzUmVmUHRyPERhdGFiYXNlPiBEYXRh
YmFzZU1hbmFnZXI6Om9wZW5EYXRhYmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZQog
ICAgIHJldHVybiBkYXRhYmFzZS5yZWxlYXNlKCk7CiB9CiAKLVBhc3NSZWZQdHI8RGF0YWJhc2VT
eW5jPiBEYXRhYmFzZU1hbmFnZXI6Om9wZW5EYXRhYmFzZVN5bmMoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogY29udGV4dCwKLSAgICBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZXhw
ZWN0ZWRWZXJzaW9uLCBjb25zdCBTdHJpbmcmIGRpc3BsYXlOYW1lLAotICAgIHVuc2lnbmVkIGxv
bmcgZXN0aW1hdGVkU2l6ZSwgUGFzc1JlZlB0cjxEYXRhYmFzZUNhbGxiYWNrPiBjcmVhdGlvbkNh
bGxiYWNrLCBEYXRhYmFzZUVycm9yJiBlcnJvcikKLXsKLSAgICBBU1NFUlQoY29udGV4dC0+aXND
b250ZXh0VGhyZWFkKCkpOwotICAgIEFTU0VSVChlcnJvciA9PSBEYXRhYmFzZUVycm9yOjpOb25l
KTsKLQotICAgIGJvb2wgc2V0VmVyc2lvbkluTmV3RGF0YWJhc2UgPSAhY3JlYXRpb25DYWxsYmFj
azsKLSAgICBTdHJpbmcgZXJyb3JNZXNzYWdlOwotICAgIFJlZlB0cjxEYXRhYmFzZUJhY2tlbmRC
YXNlPiBiYWNrZW5kID0gb3BlbkRhdGFiYXNlQmFja2VuZChjb250ZXh0LCBEYXRhYmFzZVR5cGU6
OlN5bmMsIG5hbWUsCi0gICAgICAgIGV4cGVjdGVkVmVyc2lvbiwgZGlzcGxheU5hbWUsIGVzdGlt
YXRlZFNpemUsIHNldFZlcnNpb25Jbk5ld0RhdGFiYXNlLCBlcnJvciwgZXJyb3JNZXNzYWdlKTsK
LSAgICBpZiAoIWJhY2tlbmQpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgUmVmUHRyPERhdGFi
YXNlU3luYz4gZGF0YWJhc2UgPSBEYXRhYmFzZVN5bmM6OmNyZWF0ZShjb250ZXh0LCBiYWNrZW5k
KTsKLQotICAgIGlmIChiYWNrZW5kLT5pc05ldygpICYmIGNyZWF0aW9uQ2FsbGJhY2suZ2V0KCkp
IHsKLSAgICAgICAgTE9HKFN0b3JhZ2VBUEksICJJbnZva2luZyB0aGUgY3JlYXRpb24gY2FsbGJh
Y2sgZm9yIGRhdGFiYXNlICVwXG4iLCBkYXRhYmFzZS5nZXQoKSk7Ci0gICAgICAgIGNyZWF0aW9u
Q2FsbGJhY2stPmhhbmRsZUV2ZW50KGRhdGFiYXNlLmdldCgpKTsKLSAgICB9Ci0KLSAgICBBU1NF
UlQoZGF0YWJhc2UpOwotICAgIHJldHVybiBkYXRhYmFzZS5yZWxlYXNlKCk7Ci19Ci0KIGJvb2wg
RGF0YWJhc2VNYW5hZ2VyOjpoYXNPcGVuRGF0YWJhc2VzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnRleHQpCiB7CiAgICAgUmVmUHRyPERhdGFiYXNlQ29udGV4dD4gZGF0YWJhc2VDb250ZXh0
ID0gZXhpc3RpbmdEYXRhYmFzZUNvbnRleHRGb3IoY29udGV4dCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlTWFuYWdlci5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZU1hbmFnZXIuaAppbmRleCA1YjA2
M2JhNWZmZjViYTAwNzhjN2U4YjE5NTAzZjIxODNjOGYzMzZkLi4yYTQ4ZTdkYmIzYTE5MjIwZGQ0
ZTIwM2MwMDAxYjkxNDliMmM0YzdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL0RhdGFiYXNlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VNYW5hZ2VyLmgKQEAgLTg0LDcgKzg0LDYgQEAgcHVibGlj
OgogICAgIHN0YXRpYyBFeGNlcHRpb25Db2RlIGV4Y2VwdGlvbkNvZGVGb3JEYXRhYmFzZUVycm9y
KERhdGFiYXNlRXJyb3IpOwogCiAgICAgUGFzc1JlZlB0cjxEYXRhYmFzZT4gb3BlbkRhdGFiYXNl
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmlu
ZyYgZXhwZWN0ZWRWZXJzaW9uLCBjb25zdCBTdHJpbmcmIGRpc3BsYXlOYW1lLCB1bnNpZ25lZCBs
b25nIGVzdGltYXRlZFNpemUsIFBhc3NSZWZQdHI8RGF0YWJhc2VDYWxsYmFjaz4sIERhdGFiYXNl
RXJyb3ImKTsKLSAgICBQYXNzUmVmUHRyPERhdGFiYXNlU3luYz4gb3BlbkRhdGFiYXNlU3luYyhT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcm
IGV4cGVjdGVkVmVyc2lvbiwgY29uc3QgU3RyaW5nJiBkaXNwbGF5TmFtZSwgdW5zaWduZWQgbG9u
ZyBlc3RpbWF0ZWRTaXplLCBQYXNzUmVmUHRyPERhdGFiYXNlQ2FsbGJhY2s+LCBEYXRhYmFzZUVy
cm9yJik7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBib29sIGhhc09wZW5EYXRhYmFzZXMoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCopOwogICAgIHZvaWQgc3RvcERhdGFiYXNlcyhTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiwgRGF0YWJhc2VUYXNrU3luY2hyb25pemVyKik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlU2VydmVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTZXJ2ZXIuY3BwCmluZGV4IDdm
MmNiM2Y4ZWIxYWE3YzVjMjQwMTdiNzRjMzlkODlkM2YxODA4MGUuLjVlMWZlZWRkMDAyMTQ2NTBl
ZDNkMzdhMmRkNWE1OWM0MWEyMDkyMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTZXJ2ZXIuY3BwCkBAIC0zMSw4ICszMSw2IEBACiAj
aW5jbHVkZSAiRGF0YWJhc2UuaCIKICNpbmNsdWRlICJEYXRhYmFzZUJhY2tlbmQuaCIKICNpbmNs
dWRlICJEYXRhYmFzZUJhY2tlbmRDb250ZXh0LmgiCi0jaW5jbHVkZSAiRGF0YWJhc2VCYWNrZW5k
U3luYy5oIgotI2luY2x1ZGUgIkRhdGFiYXNlU3luYy5oIgogI2luY2x1ZGUgIkRhdGFiYXNlVHJh
Y2tlci5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xNDgsNyArMTQ2LDggQEAgUGFzc1Jl
ZlB0cjxEYXRhYmFzZUJhY2tlbmRCYXNlPiBEYXRhYmFzZVNlcnZlcjo6Y3JlYXRlRGF0YWJhc2Uo
UmVmUHRyPERhdGFiYXNlQmEKICAgICAgICAgZGF0YWJhc2UgPSBhZG9wdFJlZihuZXcgRGF0YWJh
c2UoYmFja2VuZENvbnRleHQsIG5hbWUsIGV4cGVjdGVkVmVyc2lvbiwgZGlzcGxheU5hbWUsIGVz
dGltYXRlZFNpemUpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBEYXRhYmFzZVR5cGU6OlN5
bmM6Ci0gICAgICAgIGRhdGFiYXNlID0gYWRvcHRSZWYobmV3IERhdGFiYXNlU3luYyhiYWNrZW5k
Q29udGV4dCwgbmFtZSwgZXhwZWN0ZWRWZXJzaW9uLCBkaXNwbGF5TmFtZSwgZXN0aW1hdGVkU2l6
ZSkpOworICAgICAgICAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgY2FzZS4KKyAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CiAgICAgfQogCiAgICAgaWYgKCFkYXRhYmFzZS0+b3BlbkFuZFZlcmlm
eVZlcnNpb24oc2V0VmVyc2lvbkluTmV3RGF0YWJhc2UsIGVycm9yLCBlcnJvck1lc3NhZ2UpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVN5
bmMuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVN5bmMu
Y3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NjIyYmMxZjg5MGJjODE0MzQzZTZi
NjU3OTViMGZiYmVkN2I0ZDlmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5j
LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDE3NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlCi0gKiBtZXQ6Ci0gKgotICogICAgICogUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
LSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKLSAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLSAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqIGRpc3RyaWJ1dGlvbi4KLSAq
ICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBp
dHMKLSAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tCi0gKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0g
KiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QKLSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIkRhdGFiYXNlU3luYy5oIgotCi0jaWYgRU5BQkxFKFNRTF9EQVRBQkFTRSkKLQot
I2luY2x1ZGUgIkRhdGFiYXNlQmFja2VuZENvbnRleHQuaCIKLSNpbmNsdWRlICJEYXRhYmFzZUJh
Y2tlbmRTeW5jLmgiCi0jaW5jbHVkZSAiRGF0YWJhc2VDYWxsYmFjay5oIgotI2luY2x1ZGUgIkRh
dGFiYXNlQ29udGV4dC5oIgotI2luY2x1ZGUgIkRhdGFiYXNlTWFuYWdlci5oIgotI2luY2x1ZGUg
IkRhdGFiYXNlVHJhY2tlci5oIgotI2luY2x1ZGUgIkxvZ2dpbmcuaCIKLSNpbmNsdWRlICJTUUxF
eGNlcHRpb24uaCIKLSNpbmNsdWRlICJTUUxUcmFuc2FjdGlvblN5bmMuaCIKLSNpbmNsdWRlICJT
UUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5oIgotI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQuaCIKLSNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgotI2luY2x1ZGUgPHd0Zi9QYXNz
UmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L0NT
dHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1QYXNzUmVmUHRyPERhdGFiYXNlU3lu
Yz4gRGF0YWJhc2VTeW5jOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQ
dHI8RGF0YWJhc2VCYWNrZW5kQmFzZT4gYmFja2VuZCkKLXsKLSAgICByZXR1cm4gc3RhdGljX2Nh
c3Q8RGF0YWJhc2VTeW5jKj4oYmFja2VuZC5nZXQoKSk7Ci19Ci0KLURhdGFiYXNlU3luYzo6RGF0
YWJhc2VTeW5jKFBhc3NSZWZQdHI8RGF0YWJhc2VCYWNrZW5kQ29udGV4dD4gZGF0YWJhc2VDb250
ZXh0LAotICAgIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBleHBlY3RlZFZlcnNp
b24sIGNvbnN0IFN0cmluZyYgZGlzcGxheU5hbWUsIHVuc2lnbmVkIGxvbmcgZXN0aW1hdGVkU2l6
ZSkKLSAgICA6IERhdGFiYXNlQmFzZShkYXRhYmFzZUNvbnRleHQtPnNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKSkKLSAgICAsIERhdGFiYXNlQmFja2VuZFN5bmMoZGF0YWJhc2VDb250ZXh0LCBuYW1l
LCBleHBlY3RlZFZlcnNpb24sIGRpc3BsYXlOYW1lLCBlc3RpbWF0ZWRTaXplKQotewotICAgIHNl
dEZyb250ZW5kKHRoaXMpOwotfQotCi1EYXRhYmFzZVN5bmM6On5EYXRhYmFzZVN5bmMoKQotewot
ICAgIEFTU0VSVChtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPmlzQ29udGV4dFRocmVhZCgpKTsK
LX0KLQotUGFzc1JlZlB0cjxEYXRhYmFzZUJhY2tlbmRTeW5jPiBEYXRhYmFzZVN5bmM6OmJhY2tl
bmQoKQotewotICAgIHJldHVybiB0aGlzOwotfQotCi12b2lkIERhdGFiYXNlU3luYzo6Y2hhbmdl
VmVyc2lvbihjb25zdCBTdHJpbmcmIG9sZFZlcnNpb24sIGNvbnN0IFN0cmluZyYgbmV3VmVyc2lv
biwgUGFzc1JlZlB0cjxTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjaz4gY2hhbmdlVmVyc2lvbkNh
bGxiYWNrLCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBBU1NFUlQobV9zY3JpcHRFeGVjdXRp
b25Db250ZXh0LT5pc0NvbnRleHRUaHJlYWQoKSk7Ci0KLSAgICBpZiAoc3FsaXRlRGF0YWJhc2Uo
KS50cmFuc2FjdGlvbkluUHJvZ3Jlc3MoKSkgewotICAgICAgICBzZXRMYXN0RXJyb3JNZXNzYWdl
KCJ1bmFibGUgdG8gY2hhbmdlVmVyc2lvbiBmcm9tIHdpdGhpbiBhIHRyYW5zYWN0aW9uIik7Ci0g
ICAgICAgIGVjID0gU1FMRXhjZXB0aW9uOjpEQVRBQkFTRV9FUlI7Ci0gICAgICAgIHJldHVybjsK
LSAgICB9Ci0KLSAgICBSZWZQdHI8U1FMVHJhbnNhY3Rpb25TeW5jPiB0cmFuc2FjdGlvbiA9IFNR
TFRyYW5zYWN0aW9uU3luYzo6Y3JlYXRlKHRoaXMsIGNoYW5nZVZlcnNpb25DYWxsYmFjaywgZmFs
c2UpOwotICAgIGlmICgoZWMgPSB0cmFuc2FjdGlvbi0+YmVnaW4oKSkpIHsKLSAgICAgICAgQVNT
RVJUKCFsYXN0RXJyb3JNZXNzYWdlKCkuaXNFbXB0eSgpKTsKLSAgICAgICAgcmV0dXJuOwotICAg
IH0KLQotICAgIFN0cmluZyBhY3R1YWxWZXJzaW9uOwotICAgIGlmICghZ2V0VmVyc2lvbkZyb21E
YXRhYmFzZShhY3R1YWxWZXJzaW9uKSkgewotICAgICAgICBzZXRMYXN0RXJyb3JNZXNzYWdlKCJ1
bmFibGUgdG8gcmVhZCB0aGUgY3VycmVudCB2ZXJzaW9uIiwgc3FsaXRlRGF0YWJhc2UoKS5sYXN0
RXJyb3IoKSwgc3FsaXRlRGF0YWJhc2UoKS5sYXN0RXJyb3JNc2coKSk7Ci0gICAgICAgIGVjID0g
U1FMRXhjZXB0aW9uOjpVTktOT1dOX0VSUjsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAg
IGlmIChhY3R1YWxWZXJzaW9uICE9IG9sZFZlcnNpb24pIHsKLSAgICAgICAgc2V0TGFzdEVycm9y
TWVzc2FnZSgiY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBkYXRhYmFzZSBhbmQgYG9sZFZlcnNpb25g
IGFyZ3VtZW50IGRvIG5vdCBtYXRjaCIpOwotICAgICAgICBlYyA9IFNRTEV4Y2VwdGlvbjo6VkVS
U0lPTl9FUlI7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBpZiAoKGVjID0gdHJhbnNh
Y3Rpb24tPmV4ZWN1dGUoKSkpIHsKLSAgICAgICAgQVNTRVJUKCFsYXN0RXJyb3JNZXNzYWdlKCku
aXNFbXB0eSgpKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIGlmICghc2V0VmVyc2lv
bkluRGF0YWJhc2UobmV3VmVyc2lvbikpIHsKLSAgICAgICAgc2V0TGFzdEVycm9yTWVzc2FnZSgi
dW5hYmxlIHRvIHNldCB0aGUgbmV3IHZlcnNpb24iLCBzcWxpdGVEYXRhYmFzZSgpLmxhc3RFcnJv
cigpLCBzcWxpdGVEYXRhYmFzZSgpLmxhc3RFcnJvck1zZygpKTsKLSAgICAgICAgZWMgPSBTUUxF
eGNlcHRpb246OlVOS05PV05fRVJSOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgaWYg
KChlYyA9IHRyYW5zYWN0aW9uLT5jb21taXQoKSkpIHsKLSAgICAgICAgQVNTRVJUKCFsYXN0RXJy
b3JNZXNzYWdlKCkuaXNFbXB0eSgpKTsKLSAgICAgICAgc2V0Q2FjaGVkVmVyc2lvbihvbGRWZXJz
aW9uKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIHNldEV4cGVjdGVkVmVyc2lvbihu
ZXdWZXJzaW9uKTsKLSAgICBzZXRMYXN0RXJyb3JNZXNzYWdlKCIiKTsKLX0KLQotdm9pZCBEYXRh
YmFzZVN5bmM6OnRyYW5zYWN0aW9uKFBhc3NSZWZQdHI8U1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJh
Y2s+IGNhbGxiYWNrLCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBydW5UcmFuc2FjdGlvbihj
YWxsYmFjaywgZmFsc2UsIGVjKTsKLX0KLQotdm9pZCBEYXRhYmFzZVN5bmM6OnJlYWRUcmFuc2Fj
dGlvbihQYXNzUmVmUHRyPFNRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrPiBjYWxsYmFjaywgRXhj
ZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgcnVuVHJhbnNhY3Rpb24oY2FsbGJhY2ssIHRydWUsIGVj
KTsKLX0KLQotdm9pZCBEYXRhYmFzZVN5bmM6OnJ1blRyYW5zYWN0aW9uKFBhc3NSZWZQdHI8U1FM
VHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2s+IGNhbGxiYWNrLCBib29sIHJlYWRPbmx5LCBFeGNlcHRp
b25Db2RlJiBlYykKLXsKLSAgICBBU1NFUlQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5pc0Nv
bnRleHRUaHJlYWQoKSk7Ci0KLSAgICBpZiAoc3FsaXRlRGF0YWJhc2UoKS50cmFuc2FjdGlvbklu
UHJvZ3Jlc3MoKSkgewotICAgICAgICBzZXRMYXN0RXJyb3JNZXNzYWdlKCJ1bmFibGUgdG8gc3Rh
cnQgYSB0cmFuc2FjdGlvbiBmcm9tIHdpdGhpbiBhIHRyYW5zYWN0aW9uIik7Ci0gICAgICAgIGVj
ID0gU1FMRXhjZXB0aW9uOjpEQVRBQkFTRV9FUlI7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0K
LSAgICBSZWZQdHI8U1FMVHJhbnNhY3Rpb25TeW5jPiB0cmFuc2FjdGlvbiA9IFNRTFRyYW5zYWN0
aW9uU3luYzo6Y3JlYXRlKHRoaXMsIGNhbGxiYWNrLCByZWFkT25seSk7Ci0gICAgaWYgKChlYyA9
IHRyYW5zYWN0aW9uLT5iZWdpbigpKSB8fCAoZWMgPSB0cmFuc2FjdGlvbi0+ZXhlY3V0ZSgpKSB8
fCAoZWMgPSB0cmFuc2FjdGlvbi0+Y29tbWl0KCkpKSB7Ci0gICAgICAgIEFTU0VSVCghbGFzdEVy
cm9yTWVzc2FnZSgpLmlzRW1wdHkoKSk7Ci0gICAgICAgIHRyYW5zYWN0aW9uLT5yb2xsYmFjaygp
OwotICAgIH0KLQotICAgIHNldExhc3RFcnJvck1lc3NhZ2UoIiIpOwotfQotCi12b2lkIERhdGFi
YXNlU3luYzo6bWFya0FzRGVsZXRlZEFuZENsb3NlKCkKLXsKLSAgICAvLyBGSVhNRTogbmVlZCB0
byBkbyBzb21ldGhpbmcgc2ltaWxhciB0byBjbG9zZUltbWVkaWF0ZWx5KCksIGJ1dCBpbiBhIHN5
bmMgd2F5Ci19Ci0KLXZvaWQgRGF0YWJhc2VTeW5jOjpjbG9zZUltbWVkaWF0ZWx5KCkKLXsKLSAg
ICBBU1NFUlQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5pc0NvbnRleHRUaHJlYWQoKSk7Ci0K
LSAgICBpZiAoIW9wZW5lZCgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBsb2dFcnJvck1lc3Nh
Z2UoImZvcmNpYmx5IGNsb3NpbmcgZGF0YWJhc2UiKTsKLSAgICBjbG9zZURhdGFiYXNlKCk7Ci19
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShTUUxfREFUQUJB
U0UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFi
YXNlU3luYy5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVN5
bmMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDExOWI1YmJlNGUzYjRjYmVlZjAz
NGUwN2U1MGNlOWJhMTcxYzQ2Ni4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlU3lu
Yy5oCisrKyAvZGV2L251bGwKQEAgLTEsODkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQotICogbWV0OgotICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAg
ICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRz
Ci0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICog
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
Ci0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgRGF0YWJhc2VTeW5jX2gK
LSNkZWZpbmUgRGF0YWJhc2VTeW5jX2gKLQotI2lmIEVOQUJMRShTUUxfREFUQUJBU0UpCi0KLSNp
bmNsdWRlICJEYXRhYmFzZUJhY2tlbmRTeW5jLmgiCi0jaW5jbHVkZSAiRGF0YWJhc2VCYXNlLmgi
Ci0jaW5jbHVkZSAiRGF0YWJhc2VCYXNpY1R5cGVzLmgiCi0jaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUg
ewotCi1jbGFzcyBEYXRhYmFzZUNhbGxiYWNrOwotY2xhc3MgU1FMVHJhbnNhY3Rpb25TeW5jOwot
Y2xhc3MgU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2s7Ci0KLS8vIEluc3RhbmNlcyBvZiB0aGlz
IGNsYXNzIHNob3VsZCBiZSBjcmVhdGVkIGFuZCB1c2VkIG9ubHkgb24gdGhlIHdvcmtlcidzIGNv
bnRleHQgdGhyZWFkLgotY2xhc3MgRGF0YWJhc2VTeW5jIDogcHVibGljIERhdGFiYXNlQmFzZSwg
cHVibGljIERhdGFiYXNlQmFja2VuZFN5bmMgewotcHVibGljOgotICAgIHZpcnR1YWwgfkRhdGFi
YXNlU3luYygpOwotCi0gICAgdm9pZCBjaGFuZ2VWZXJzaW9uKGNvbnN0IFN0cmluZyYgb2xkVmVy
c2lvbiwgY29uc3QgU3RyaW5nJiBuZXdWZXJzaW9uLCBQYXNzUmVmUHRyPFNRTFRyYW5zYWN0aW9u
U3luY0NhbGxiYWNrPiwgRXhjZXB0aW9uQ29kZSYpOwotICAgIHZvaWQgdHJhbnNhY3Rpb24oUGFz
c1JlZlB0cjxTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjaz4sIEV4Y2VwdGlvbkNvZGUmKTsKLSAg
ICB2b2lkIHJlYWRUcmFuc2FjdGlvbihQYXNzUmVmUHRyPFNRTFRyYW5zYWN0aW9uU3luY0NhbGxi
YWNrPiwgRXhjZXB0aW9uQ29kZSYpOwotCi0gICAgdmlydHVhbCB2b2lkIG1hcmtBc0RlbGV0ZWRB
bmRDbG9zZSgpOwotICAgIHZpcnR1YWwgdm9pZCBjbG9zZUltbWVkaWF0ZWx5KCk7Ci0KLSAgICBj
b25zdCBTdHJpbmcmIGxhc3RFcnJvck1lc3NhZ2UoKSBjb25zdCB7IHJldHVybiBtX2xhc3RFcnJv
ck1lc3NhZ2U7IH0KLSAgICB2b2lkIHNldExhc3RFcnJvck1lc3NhZ2UoY29uc3QgU3RyaW5nJiBt
ZXNzYWdlKSB7IG1fbGFzdEVycm9yTWVzc2FnZSA9IG1lc3NhZ2U7IH0KLSAgICB2b2lkIHNldExh
c3RFcnJvck1lc3NhZ2UoY29uc3QgY2hhciogbWVzc2FnZSwgaW50IHNxbGl0ZUNvZGUpCi0gICAg
ewotICAgICAgICBzZXRMYXN0RXJyb3JNZXNzYWdlKFN0cmluZzo6Zm9ybWF0KCIlcyAoJWQpIiwg
bWVzc2FnZSwgc3FsaXRlQ29kZSkpOwotICAgIH0KLSAgICB2b2lkIHNldExhc3RFcnJvck1lc3Nh
Z2UoY29uc3QgY2hhciogbWVzc2FnZSwgaW50IHNxbGl0ZUNvZGUsIGNvbnN0IGNoYXIqIHNxbGl0
ZU1lc3NhZ2UpCi0gICAgewotICAgICAgICBzZXRMYXN0RXJyb3JNZXNzYWdlKFN0cmluZzo6Zm9y
bWF0KCIlcyAoJWQsICVzKSIsIG1lc3NhZ2UsIHNxbGl0ZUNvZGUsIHNxbGl0ZU1lc3NhZ2UpKTsK
LSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgRGF0YWJhc2VTeW5jKFBhc3NSZWZQdHI8RGF0YWJhc2VC
YWNrZW5kQ29udGV4dD4sIGNvbnN0IFN0cmluZyYgbmFtZSwKLSAgICAgICAgY29uc3QgU3RyaW5n
JiBleHBlY3RlZFZlcnNpb24sIGNvbnN0IFN0cmluZyYgZGlzcGxheU5hbWUsIHVuc2lnbmVkIGxv
bmcgZXN0aW1hdGVkU2l6ZSk7Ci0gICAgUGFzc1JlZlB0cjxEYXRhYmFzZUJhY2tlbmRTeW5jPiBi
YWNrZW5kKCk7Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8RGF0YWJhc2VTeW5jPiBjcmVhdGUoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8RGF0YWJhc2VCYWNrZW5kQmFzZT4pOwot
Ci0gICAgdm9pZCBydW5UcmFuc2FjdGlvbihQYXNzUmVmUHRyPFNRTFRyYW5zYWN0aW9uU3luY0Nh
bGxiYWNrPiwgYm9vbCByZWFkT25seSwgRXhjZXB0aW9uQ29kZSYpOwotCi0gICAgU3RyaW5nIG1f
bGFzdEVycm9yTWVzc2FnZTsKLQotICAgIGZyaWVuZCBjbGFzcyBEYXRhYmFzZU1hbmFnZXI7Ci0g
ICAgZnJpZW5kIGNsYXNzIERhdGFiYXNlU2VydmVyOyAvLyBGSVhNRTogcmVtb3ZlIHRoaXMgd2hl
biB0aGUgYmFja2VuZCBoYXMgYmVlbiBzcGxpdCBvdXQuCi19OwotCi19IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoU1FMX0RBVEFCQVNFKQotCi0jZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlkbApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjgwNDM3ZTY1YjM1NTYyYmM1NTU3ZWMwMWUx
NjI2MGQ5ZDQ0MDkzNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlU3luYy5pZGwK
KysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEw
IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlCi0gKiBtZXQ6Ci0gKgotICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKLSAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIKLSAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqIGRpc3RyaWJ1dGlvbi4KLSAqICAgICAq
IE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKLSAq
IGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tCi0gKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLSAq
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotWwotICAgIE5vSW50ZXJmYWNlT2JqZWN0LAot
ICAgIENvbmRpdGlvbmFsPVNRTF9EQVRBQkFTRSwKLV0gaW50ZXJmYWNlIERhdGFiYXNlU3luYyB7
Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyB2ZXJzaW9uOwotICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgbGFzdEVycm9yTWVzc2FnZTsKLSAgICBbUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIGNoYW5nZVZlcnNpb24oRE9NU3RyaW5nIG9sZFZlcnNpb24sIERPTVN0cmluZyBu
ZXdWZXJzaW9uLCBvcHRpb25hbCBTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjayBjYWxsYmFjayk7
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB0cmFuc2FjdGlvbihTUUxUcmFuc2FjdGlvblN5
bmNDYWxsYmFjayBjYWxsYmFjayk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCByZWFkVHJh
bnNhY3Rpb24oU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2sgY2FsbGJhY2spOwotfTsKLQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxTdGF0ZW1lbnRT
eW5jLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50
U3luYy5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYwYjc1MTUxOGRhZWI1YWNh
YzdkOGIwOGJkOTJkYmM5MGQxYTFiNWEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxTdGF0
ZW1lbnRTeW5jLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDEzNyArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDA3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHly
aWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICogMy4gIE5laXRoZXIgdGhlIG5hbWUgb2YgQXBwbGUgSW5jLiAoIkFwcGxlIikg
bm9yIHRoZSBuYW1lcyBvZgotICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKLSAqICAgICBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAi
QVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIlNRTFN0YXRlbWVudFN5bmMuaCIKLQotI2lmIEVOQUJMRShTUUxfREFUQUJBU0Up
Ci0KLSNpbmNsdWRlICJEYXRhYmFzZVN5bmMuaCIKLSNpbmNsdWRlICJTUUxFeGNlcHRpb24uaCIK
LSNpbmNsdWRlICJTUUxSZXN1bHRTZXQuaCIKLSNpbmNsdWRlICJTUUxWYWx1ZS5oIgotI2luY2x1
ZGUgIlNRTGl0ZURhdGFiYXNlLmgiCi0jaW5jbHVkZSAiU1FMaXRlU3RhdGVtZW50LmgiCi0jaW5j
bHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotU1FMU3RhdGVtZW50U3luYzo6U1FMU3RhdGVtZW50U3luYyhjb25z
dCBTdHJpbmcmIHN0YXRlbWVudCwgY29uc3QgVmVjdG9yPFNRTFZhbHVlPiYgYXJndW1lbnRzLCBp
bnQgcGVybWlzc2lvbnMpCi0gICAgOiBtX3N0YXRlbWVudChzdGF0ZW1lbnQpCi0gICAgLCBtX2Fy
Z3VtZW50cyhhcmd1bWVudHMpCi0gICAgLCBtX3Blcm1pc3Npb25zKHBlcm1pc3Npb25zKQotewot
ICAgIEFTU0VSVCghbV9zdGF0ZW1lbnQuaXNFbXB0eSgpKTsKLX0KLQotUGFzc1JlZlB0cjxTUUxS
ZXN1bHRTZXQ+IFNRTFN0YXRlbWVudFN5bmM6OmV4ZWN1dGUoRGF0YWJhc2VTeW5jKiBkYiwgRXhj
ZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgZGItPnNldEF1dGhvcml6ZXJQZXJtaXNzaW9ucyhtX3Bl
cm1pc3Npb25zKTsKLQotICAgIFNRTGl0ZURhdGFiYXNlKiBkYXRhYmFzZSA9ICZkYi0+c3FsaXRl
RGF0YWJhc2UoKTsKLQotICAgIFNRTGl0ZVN0YXRlbWVudCBzdGF0ZW1lbnQoKmRhdGFiYXNlLCBt
X3N0YXRlbWVudCk7Ci0gICAgaW50IHJlc3VsdCA9IHN0YXRlbWVudC5wcmVwYXJlKCk7Ci0gICAg
aWYgKHJlc3VsdCAhPSBTUUxSZXN1bHRPaykgewotICAgICAgICBlYyA9IChyZXN1bHQgPT0gU1FM
UmVzdWx0SW50ZXJydXB0ID8gU1FMRXhjZXB0aW9uOjpEQVRBQkFTRV9FUlIgOiBTUUxFeGNlcHRp
b246OlNZTlRBWF9FUlIpOwotICAgICAgICBkYi0+c2V0TGFzdEVycm9yTWVzc2FnZSgiY291bGQg
bm90IHByZXBhcmUgc3RhdGVtZW50IiwgcmVzdWx0LCBkYXRhYmFzZS0+bGFzdEVycm9yTXNnKCkp
OwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICBpZiAoc3RhdGVtZW50LmJpbmRQYXJh
bWV0ZXJDb3VudCgpICE9IG1fYXJndW1lbnRzLnNpemUoKSkgewotICAgICAgICBlYyA9IChkYi0+
aXNJbnRlcnJ1cHRlZCgpPyBTUUxFeGNlcHRpb246OkRBVEFCQVNFX0VSUiA6IFNRTEV4Y2VwdGlv
bjo6U1lOVEFYX0VSUik7Ci0gICAgICAgIGRiLT5zZXRMYXN0RXJyb3JNZXNzYWdlKCJudW1iZXIg
b2YgJz8ncyBpbiBzdGF0ZW1lbnQgc3RyaW5nIGRvZXMgbm90IG1hdGNoIGFyZ3VtZW50IGNvdW50
Iik7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLQotICAgIGZvciAodW5zaWduZWQgaSA9IDA7
IGkgPCBtX2FyZ3VtZW50cy5zaXplKCk7ICsraSkgewotICAgICAgICByZXN1bHQgPSBzdGF0ZW1l
bnQuYmluZFZhbHVlKGkgKyAxLCBtX2FyZ3VtZW50c1tpXSk7Ci0gICAgICAgIGlmIChyZXN1bHQg
PT0gU1FMUmVzdWx0RnVsbCkgewotICAgICAgICAgICAgZWMgPSBTUUxFeGNlcHRpb246OlFVT1RB
X0VSUjsKLSAgICAgICAgICAgIGRiLT5zZXRMYXN0RXJyb3JNZXNzYWdlKCJ0aGVyZSB3YXMgbm90
IGVub3VnaCByZW1haW5pbmcgc3RvcmFnZSBzcGFjZSIpOwotICAgICAgICAgICAgcmV0dXJuIDA7
Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAocmVzdWx0ICE9IFNRTFJlc3VsdE9rKSB7Ci0gICAg
ICAgICAgICBlYyA9IFNRTEV4Y2VwdGlvbjo6REFUQUJBU0VfRVJSOwotICAgICAgICAgICAgZGIt
PnNldExhc3RFcnJvck1lc3NhZ2UoImNvdWxkIG5vdCBiaW5kIHZhbHVlIiwgcmVzdWx0LCBkYXRh
YmFzZS0+bGFzdEVycm9yTXNnKCkpOwotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIH0K
LSAgICB9Ci0KLSAgICBSZWZQdHI8U1FMUmVzdWx0U2V0PiByZXN1bHRTZXQgPSBTUUxSZXN1bHRT
ZXQ6OmNyZWF0ZSgpOwotCi0gICAgLy8gU3RlcCBzbyB3ZSBjYW4gZmV0Y2ggdGhlIGNvbHVtbiBu
YW1lcy4KLSAgICByZXN1bHQgPSBzdGF0ZW1lbnQuc3RlcCgpOwotICAgIGlmIChyZXN1bHQgPT0g
U1FMUmVzdWx0Um93KSB7Ci0gICAgICAgIGludCBjb2x1bW5Db3VudCA9IHN0YXRlbWVudC5jb2x1
bW5Db3VudCgpOwotICAgICAgICBTUUxSZXN1bHRTZXRSb3dMaXN0KiByb3dzID0gcmVzdWx0U2V0
LT5yb3dzKCk7Ci0KLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBjb2x1bW5Db3VudDsgaSsr
KQotICAgICAgICAgICAgcm93cy0+YWRkQ29sdW1uKHN0YXRlbWVudC5nZXRDb2x1bW5OYW1lKGkp
KTsKLQotICAgICAgICBkbyB7Ci0gICAgICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IGNvbHVt
bkNvdW50OyBpKyspCi0gICAgICAgICAgICAgICAgcm93cy0+YWRkUmVzdWx0KHN0YXRlbWVudC5n
ZXRDb2x1bW5WYWx1ZShpKSk7Ci0KLSAgICAgICAgICAgIHJlc3VsdCA9IHN0YXRlbWVudC5zdGVw
KCk7Ci0gICAgICAgIH0gd2hpbGUgKHJlc3VsdCA9PSBTUUxSZXN1bHRSb3cpOwotCi0gICAgICAg
IGlmIChyZXN1bHQgIT0gU1FMUmVzdWx0RG9uZSkgewotICAgICAgICAgICAgZWMgPSBTUUxFeGNl
cHRpb246OkRBVEFCQVNFX0VSUjsKLSAgICAgICAgICAgIGRiLT5zZXRMYXN0RXJyb3JNZXNzYWdl
KCJjb3VsZCBub3QgaXRlcmF0ZSByZXN1bHRzIiwgcmVzdWx0LCBkYXRhYmFzZS0+bGFzdEVycm9y
TXNnKCkpOwotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgaWYg
KHJlc3VsdCA9PSBTUUxSZXN1bHREb25lKSB7Ci0gICAgICAgIC8vIERpZG4ndCBmaW5kIGFueXRo
aW5nLCBvciB3YXMgYW4gaW5zZXJ0LgotICAgICAgICBpZiAoZGItPmxhc3RBY3Rpb25XYXNJbnNl
cnQoKSkKLSAgICAgICAgICAgIHJlc3VsdFNldC0+c2V0SW5zZXJ0SWQoZGF0YWJhc2UtPmxhc3RJ
bnNlcnRSb3dJRCgpKTsKLSAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PSBTUUxSZXN1bHRGdWxsKSB7
Ci0gICAgICAgIC8vIFF1b3RhIGVycm9yLCB0aGUgZGVsZWdhdGUgd2lsbCBiZSBhc2tlZCBmb3Ig
bW9yZSBzcGFjZSBhbmQgdGhpcyBzdGF0ZW1lbnQgbWlnaHQgYmUgcmUtcnVuLgotICAgICAgICBl
YyA9IFNRTEV4Y2VwdGlvbjo6UVVPVEFfRVJSOwotICAgICAgICBkYi0+c2V0TGFzdEVycm9yTWVz
c2FnZSgidGhlcmUgd2FzIG5vdCBlbm91Z2ggcmVtYWluaW5nIHN0b3JhZ2Ugc3BhY2UiKTsKLSAg
ICAgICAgcmV0dXJuIDA7Ci0gICAgfSBlbHNlIGlmIChyZXN1bHQgPT0gU1FMUmVzdWx0Q29uc3Ry
YWludCkgewotICAgICAgICBlYyA9IFNRTEV4Y2VwdGlvbjo6Q09OU1RSQUlOVF9FUlI7Ci0gICAg
ICAgIGRiLT5zZXRMYXN0RXJyb3JNZXNzYWdlKCJzdGF0ZW1lbnQgZmFpbGVkIGR1ZSB0byBhIGNv
bnN0cmFpbnQgZmFpbHVyZSIpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9IGVsc2UgewotICAg
ICAgICBlYyA9IFNRTEV4Y2VwdGlvbjo6REFUQUJBU0VfRVJSOwotICAgICAgICBkYi0+c2V0TGFz
dEVycm9yTWVzc2FnZSgiY291bGQgbm90IGV4ZWN1dGUgc3RhdGVtZW50IiwgcmVzdWx0LCBkYXRh
YmFzZS0+bGFzdEVycm9yTXNnKCkpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICBy
ZXN1bHRTZXQtPnNldFJvd3NBZmZlY3RlZChkYXRhYmFzZS0+bGFzdENoYW5nZXMoKSk7Ci0gICAg
cmV0dXJuIHJlc3VsdFNldC5yZWxlYXNlKCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShTUUxfREFUQUJBU0UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFN0YXRlbWVudFN5bmMuaCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50U3luYy5oCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAzMjc4Yjk1ODdiOGE4ZDYzMjhhMjA4ODc2MjY5ZDc2YTBiY2Q0NGZm
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50U3luYy5oCisrKyAvZGV2L251
bGwKQEAgLTEsNjMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQotICogbWV0OgotICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCi0gKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQotICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0g
KiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgU1FMU3RhdGVtZW50U3luY19oCi0jZGVmaW5lIFNR
TFN0YXRlbWVudFN5bmNfaAotCi0jaWYgRU5BQkxFKFNRTF9EQVRBQkFTRSkKLQotI2luY2x1ZGUg
IkRhdGFiYXNlQmFzaWNUeXBlcy5oIgotI2luY2x1ZGUgIlNRTFZhbHVlLmgiCi0jaW5jbHVkZSA8
d3RmL0ZvcndhcmQuaD4KLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0jaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgRGF0YWJhc2VT
eW5jOwotY2xhc3MgU1FMUmVzdWx0U2V0OwotCi1jbGFzcyBTUUxTdGF0ZW1lbnRTeW5jIHsKLXB1
YmxpYzoKLSAgICBTUUxTdGF0ZW1lbnRTeW5jKGNvbnN0IFN0cmluZyYgc3RhdGVtZW50LCBjb25z
dCBWZWN0b3I8U1FMVmFsdWU+JiBhcmd1bWVudHMsIGludCBwZXJtaXNzaW9ucyk7Ci0KLSAgICBQ
YXNzUmVmUHRyPFNRTFJlc3VsdFNldD4gZXhlY3V0ZShEYXRhYmFzZVN5bmMqLCBFeGNlcHRpb25D
b2RlJik7Ci0KLXByaXZhdGU6Ci0gICAgU3RyaW5nIG1fc3RhdGVtZW50OwotICAgIFZlY3RvcjxT
UUxWYWx1ZT4gbV9hcmd1bWVudHM7Ci0gICAgaW50IG1fcGVybWlzc2lvbnM7Ci19OwotCi19IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoU1FMX0RBVEFCQVNFKQotCi0j
ZW5kaWYgLy8gU1FMU3RhdGVtZW50U3luY19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jLmNw
cApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2M3NmI4YTQ2ZjhiYzE5OWRlMGFlZDFh
NWZmODc2MWUwYWE5NzNhMC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9u
QmFja2VuZFN5bmMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMjM3ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENv
cHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0gKiBtZXQ6Ci0gKgotICogICAgICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLSAqIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqIGRpc3RyaWJ1
dGlvbi4KLSAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBu
YW1lcyBvZiBpdHMKLSAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0gKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwK
LSAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIlNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMuaCIKLQotI2lmIEVO
QUJMRShTUUxfREFUQUJBU0UpCi0KLSNpbmNsdWRlICJEYXRhYmFzZUF1dGhvcml6ZXIuaCIKLSNp
bmNsdWRlICJEYXRhYmFzZUJhY2tlbmRDb250ZXh0LmgiCi0jaW5jbHVkZSAiRGF0YWJhc2VTeW5j
LmgiCi0jaW5jbHVkZSAiU1FMRXhjZXB0aW9uLmgiCi0jaW5jbHVkZSAiU1FMUmVzdWx0U2V0Lmgi
Ci0jaW5jbHVkZSAiU1FMU3RhdGVtZW50U3luYy5oIgotI2luY2x1ZGUgIlNRTFRyYW5zYWN0aW9u
Q2xpZW50LmgiCi0jaW5jbHVkZSAiU1FMVHJhbnNhY3Rpb25TeW5jLmgiCi0jaW5jbHVkZSAiU1FM
VHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJTUUxWYWx1ZS5oIgotI2luY2x1
ZGUgIlNRTGl0ZVRyYW5zYWN0aW9uLmgiCi0jaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4
dC5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5o
PgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLVNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmM6OlNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMo
RGF0YWJhc2VTeW5jKiBkYiwgUGFzc1JlZlB0cjxTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjaz4g
Y2FsbGJhY2ssIGJvb2wgcmVhZE9ubHkpCi0gICAgOiBtX2RhdGFiYXNlKGRiKQotICAgICwgbV9j
YWxsYmFjayhjYWxsYmFjaykKLSAgICAsIG1fcmVhZE9ubHkocmVhZE9ubHkpCi0gICAgLCBtX2hh
c1ZlcnNpb25NaXNtYXRjaChmYWxzZSkKLSAgICAsIG1fbW9kaWZpZWREYXRhYmFzZShmYWxzZSkK
LSAgICAsIG1fdHJhbnNhY3Rpb25DbGllbnQoc3RkOjptYWtlX3VuaXF1ZTxTUUxUcmFuc2FjdGlv
bkNsaWVudD4oKSkKLXsKLSAgICBBU1NFUlQobV9kYXRhYmFzZS0+c2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpLT5pc0NvbnRleHRUaHJlYWQoKSk7Ci19Ci0KLVNRTFRyYW5zYWN0aW9uQmFja2VuZFN5
bmM6On5TUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jKCkKLXsKLSAgICBBU1NFUlQobV9kYXRhYmFz
ZS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5pc0NvbnRleHRUaHJlYWQoKSk7Ci0gICAgaWYg
KG1fc3FsaXRlVHJhbnNhY3Rpb24gJiYgbV9zcWxpdGVUcmFuc2FjdGlvbi0+aW5Qcm9ncmVzcygp
KQotICAgICAgICByb2xsYmFjaygpOwotfQotCi1QYXNzUmVmUHRyPFNRTFJlc3VsdFNldD4gU1FM
VHJhbnNhY3Rpb25CYWNrZW5kU3luYzo6ZXhlY3V0ZVNRTChjb25zdCBTdHJpbmcmIHNxbFN0YXRl
bWVudCwgY29uc3QgVmVjdG9yPFNRTFZhbHVlPiYgYXJndW1lbnRzLCBFeGNlcHRpb25Db2RlJiBl
YykKLXsKLSAgICBBU1NFUlQobV9kYXRhYmFzZS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5p
c0NvbnRleHRUaHJlYWQoKSk7Ci0KLSAgICBtX2RhdGFiYXNlLT5zZXRMYXN0RXJyb3JNZXNzYWdl
KCIiKTsKLQotICAgIGlmICghbV9kYXRhYmFzZS0+b3BlbmVkKCkpIHsKLSAgICAgICAgbV9kYXRh
YmFzZS0+c2V0TGFzdEVycm9yTWVzc2FnZSgiY2Fubm90IGV4ZWN1dGVTUUwgYmVjYXVzZSB0aGUg
ZGF0YWJhc2UgaXMgbm90IG9wZW4iKTsKLSAgICAgICAgZWMgPSBTUUxFeGNlcHRpb246OlVOS05P
V05fRVJSOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICBpZiAobV9oYXNWZXJzaW9u
TWlzbWF0Y2gpIHsKLSAgICAgICAgbV9kYXRhYmFzZS0+c2V0TGFzdEVycm9yTWVzc2FnZSgiY2Fu
bm90IGV4ZWN1dGVTUUwgYmVjYXVzZSB0aGVyZSBpcyBhIHZlcnNpb24gbWlzbWF0Y2giKTsKLSAg
ICAgICAgZWMgPSBTUUxFeGNlcHRpb246OlZFUlNJT05fRVJSOwotICAgICAgICByZXR1cm4gMDsK
LSAgICB9Ci0KLSAgICBpZiAoc3FsU3RhdGVtZW50LmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJu
IDA7Ci0KLSAgICBpbnQgcGVybWlzc2lvbnMgPSBEYXRhYmFzZUF1dGhvcml6ZXI6OlJlYWRXcml0
ZU1hc2s7Ci0gICAgaWYgKCFtX2RhdGFiYXNlLT5kYXRhYmFzZUNvbnRleHQoKS0+YWxsb3dEYXRh
YmFzZUFjY2VzcygpKQotICAgICAgICBwZXJtaXNzaW9ucyB8PSBEYXRhYmFzZUF1dGhvcml6ZXI6
Ok5vQWNjZXNzTWFzazsKLSAgICBlbHNlIGlmIChtX3JlYWRPbmx5KQotICAgICAgICBwZXJtaXNz
aW9ucyB8PSBEYXRhYmFzZUF1dGhvcml6ZXI6OlJlYWRPbmx5TWFzazsKLQotICAgIFNRTFN0YXRl
bWVudFN5bmMgc3RhdGVtZW50KHNxbFN0YXRlbWVudCwgYXJndW1lbnRzLCBwZXJtaXNzaW9ucyk7
Ci0KLSAgICBtX2RhdGFiYXNlLT5yZXNldEF1dGhvcml6ZXIoKTsKLSAgICBib29sIHJldHJ5U3Rh
dGVtZW50ID0gdHJ1ZTsKLSAgICBSZWZQdHI8U1FMUmVzdWx0U2V0PiByZXN1bHRTZXQ7Ci0gICAg
d2hpbGUgKHJldHJ5U3RhdGVtZW50KSB7Ci0gICAgICAgIHJldHJ5U3RhdGVtZW50ID0gZmFsc2U7
Ci0gICAgICAgIHJlc3VsdFNldCA9IHN0YXRlbWVudC5leGVjdXRlKG1fZGF0YWJhc2UuZ2V0KCks
IGVjKTsKLSAgICAgICAgaWYgKCFyZXN1bHRTZXQpIHsKLSAgICAgICAgICAgIGlmIChtX3NxbGl0
ZVRyYW5zYWN0aW9uLT53YXNSb2xsZWRCYWNrQnlTcWxpdGUoKSkKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gMDsKLQotICAgICAgICAgICAgaWYgKGVjID09IFNRTEV4Y2VwdGlvbjo6UVVPVEFfRVJS
KSB7Ci0gICAgICAgICAgICAgICAgaWYgKG1fdHJhbnNhY3Rpb25DbGllbnQtPmRpZEV4Y2VlZFF1
b3RhKGRhdGFiYXNlKCkpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGVjID0gMDsKLSAgICAgICAg
ICAgICAgICAgICAgcmV0cnlTdGF0ZW1lbnQgPSB0cnVlOwotICAgICAgICAgICAgICAgIH0gZWxz
ZSB7Ci0gICAgICAgICAgICAgICAgICAgIG1fZGF0YWJhc2UtPnNldExhc3RFcnJvck1lc3NhZ2Uo
InRoZXJlIHdhcyBub3QgZW5vdWdoIHJlbWFpbmluZyBzdG9yYWdlIHNwYWNlIik7Ci0gICAgICAg
ICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0K
LSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChtX2RhdGFiYXNlLT5sYXN0QWN0aW9uQ2hhbmdl
ZERhdGFiYXNlKCkpCi0gICAgICAgIG1fbW9kaWZpZWREYXRhYmFzZSA9IHRydWU7Ci0KLSAgICBy
ZXR1cm4gcmVzdWx0U2V0LnJlbGVhc2UoKTsKLX0KLQotRXhjZXB0aW9uQ29kZSBTUUxUcmFuc2Fj
dGlvbkJhY2tlbmRTeW5jOjpiZWdpbigpCi17Ci0gICAgQVNTRVJUKG1fZGF0YWJhc2UtPnNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQoKS0+aXNDb250ZXh0VGhyZWFkKCkpOwotICAgIGlmICghbV9kYXRh
YmFzZS0+b3BlbmVkKCkpIHsKLSAgICAgICAgbV9kYXRhYmFzZS0+c2V0TGFzdEVycm9yTWVzc2Fn
ZSgiY2Fubm90IGJlZ2luIHRyYW5zYWN0aW9uIGJlY2F1c2UgdGhlIGRhdGFiYXNlIGlzIG5vdCBv
cGVuIik7Ci0gICAgICAgIHJldHVybiBTUUxFeGNlcHRpb246OlVOS05PV05fRVJSOwotICAgIH0K
LQotICAgIEFTU0VSVCghbV9kYXRhYmFzZS0+c3FsaXRlRGF0YWJhc2UoKS50cmFuc2FjdGlvbklu
UHJvZ3Jlc3MoKSk7Ci0KLSAgICAvLyBTZXQgdGhlIG1heGltdW0gdXNhZ2UgZm9yIHRoaXMgdHJh
bnNhY3Rpb24gaWYgdGhpcyB0cmFuc2FjdGlvbnMgaXMgbm90IHJlYWQtb25seS4KLSAgICBpZiAo
IW1fcmVhZE9ubHkpCi0gICAgICAgIG1fZGF0YWJhc2UtPnNxbGl0ZURhdGFiYXNlKCkuc2V0TWF4
aW11bVNpemUobV9kYXRhYmFzZS0+bWF4aW11bVNpemUoKSk7Ci0KLSAgICBBU1NFUlQoIW1fc3Fs
aXRlVHJhbnNhY3Rpb24pOwotICAgIG1fc3FsaXRlVHJhbnNhY3Rpb24gPSBzdGQ6Om1ha2VfdW5p
cXVlPFNRTGl0ZVRyYW5zYWN0aW9uPihtX2RhdGFiYXNlLT5zcWxpdGVEYXRhYmFzZSgpLCBtX3Jl
YWRPbmx5KTsKLQotICAgIG1fZGF0YWJhc2UtPnJlc2V0RGVsZXRlcygpOwotICAgIG1fZGF0YWJh
c2UtPmRpc2FibGVBdXRob3JpemVyKCk7Ci0gICAgbV9zcWxpdGVUcmFuc2FjdGlvbi0+YmVnaW4o
KTsKLSAgICBtX2RhdGFiYXNlLT5lbmFibGVBdXRob3JpemVyKCk7Ci0KLSAgICAvLyBDaGVjayBp
ZiBiZWdpbigpIHN1Y2NlZWRlZC4KLSAgICBpZiAoIW1fc3FsaXRlVHJhbnNhY3Rpb24tPmluUHJv
Z3Jlc3MoKSkgewotICAgICAgICBBU1NFUlQoIW1fZGF0YWJhc2UtPnNxbGl0ZURhdGFiYXNlKCku
dHJhbnNhY3Rpb25JblByb2dyZXNzKCkpOwotICAgICAgICBtX2RhdGFiYXNlLT5zZXRMYXN0RXJy
b3JNZXNzYWdlKCJ1bmFibGUgdG8gYmVnaW4gdHJhbnNhY3Rpb24iLAotICAgICAgICAgICAgbV9k
YXRhYmFzZS0+c3FsaXRlRGF0YWJhc2UoKS5sYXN0RXJyb3IoKSwgbV9kYXRhYmFzZS0+c3FsaXRl
RGF0YWJhc2UoKS5sYXN0RXJyb3JNc2coKSk7Ci0gICAgICAgIG1fc3FsaXRlVHJhbnNhY3Rpb24g
PSBudWxscHRyOwotICAgICAgICByZXR1cm4gU1FMRXhjZXB0aW9uOjpEQVRBQkFTRV9FUlI7Ci0g
ICAgfQotCi0gICAgLy8gTm90ZTogV2UgaW50ZW50aW9uYWxseSByZXRyaWV2ZSB0aGUgYWN0dWFs
IHZlcnNpb24gZXZlbiB3aXRoIGFuIGVtcHR5IGV4cGVjdGVkIHZlcnNpb24uCi0gICAgLy8gSW4g
bXVsdGktcHJvY2VzcyBicm93c2Vycywgd2UgdGFrZSB0aGlzIG9wcG9ydGludXRpeSB0byB1cGRh
dGUgdGhlIGNhY2hlZCB2YWx1ZSBmb3IKLSAgICAvLyB0aGUgYWN0dWFsIHZlcnNpb24uIEluIHNp
bmdsZS1wcm9jZXNzIGJyb3dzZXJzLCB0aGlzIGlzIGp1c3QgYSBtYXAgbG9va3VwLgotICAgIFN0
cmluZyBhY3R1YWxWZXJzaW9uOwotICAgIGlmICghbV9kYXRhYmFzZS0+Z2V0QWN0dWFsVmVyc2lv
bkZvclRyYW5zYWN0aW9uKGFjdHVhbFZlcnNpb24pKSB7Ci0gICAgICAgIG1fZGF0YWJhc2UtPnNl
dExhc3RFcnJvck1lc3NhZ2UoInVuYWJsZSB0byByZWFkIHZlcnNpb24iLAotICAgICAgICAgICAg
bV9kYXRhYmFzZS0+c3FsaXRlRGF0YWJhc2UoKS5sYXN0RXJyb3IoKSwgbV9kYXRhYmFzZS0+c3Fs
aXRlRGF0YWJhc2UoKS5sYXN0RXJyb3JNc2coKSk7Ci0gICAgICAgIHJvbGxiYWNrKCk7Ci0gICAg
ICAgIHJldHVybiBTUUxFeGNlcHRpb246OkRBVEFCQVNFX0VSUjsKLSAgICB9Ci0gICAgbV9oYXNW
ZXJzaW9uTWlzbWF0Y2ggPSAhbV9kYXRhYmFzZS0+ZXhwZWN0ZWRWZXJzaW9uKCkuaXNFbXB0eSgp
ICYmIChtX2RhdGFiYXNlLT5leHBlY3RlZFZlcnNpb24oKSAhPSBhY3R1YWxWZXJzaW9uKTsKLSAg
ICByZXR1cm4gMDsKLX0KLQotRXhjZXB0aW9uQ29kZSBTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5j
OjpleGVjdXRlKCkKLXsKLSAgICBBU1NFUlQobV9kYXRhYmFzZS0+c2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpLT5pc0NvbnRleHRUaHJlYWQoKSk7Ci0gICAgaWYgKCFtX2RhdGFiYXNlLT5vcGVuZWQo
KSB8fCAobV9jYWxsYmFjayAmJiAhbV9jYWxsYmFjay0+aGFuZGxlRXZlbnQoU1FMVHJhbnNhY3Rp
b25TeW5jOjpmcm9tKHRoaXMpKSkpIHsKLSAgICAgICAgaWYgKG1fZGF0YWJhc2UtPmxhc3RFcnJv
ck1lc3NhZ2UoKS5pc0VtcHR5KCkpCi0gICAgICAgICAgICBtX2RhdGFiYXNlLT5zZXRMYXN0RXJy
b3JNZXNzYWdlKCJmYWlsZWQgdG8gZXhlY3V0ZSB0cmFuc2FjdGlvbiBjYWxsYmFjayIpOwotICAg
ICAgICBtX2NhbGxiYWNrID0gMDsKLSAgICAgICAgcmV0dXJuIFNRTEV4Y2VwdGlvbjo6VU5LTk9X
Tl9FUlI7Ci0gICAgfQotCi0gICAgbV9jYWxsYmFjayA9IDA7Ci0gICAgcmV0dXJuIDA7Ci19Ci0K
LUV4Y2VwdGlvbkNvZGUgU1FMVHJhbnNhY3Rpb25CYWNrZW5kU3luYzo6Y29tbWl0KCkKLXsKLSAg
ICBBU1NFUlQobV9kYXRhYmFzZS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5pc0NvbnRleHRU
aHJlYWQoKSk7Ci0gICAgaWYgKCFtX2RhdGFiYXNlLT5vcGVuZWQoKSkgewotICAgICAgICBtX2Rh
dGFiYXNlLT5zZXRMYXN0RXJyb3JNZXNzYWdlKCJ1bmFibGUgdG8gY29tbWl0IHRyYW5zYWN0aW9u
IGJlY2F1c2UgdGhlIGRhdGFiYXNlIGlzIG5vdCBvcGVuLiIpOwotICAgICAgICByZXR1cm4gU1FM
RXhjZXB0aW9uOjpVTktOT1dOX0VSUjsKLSAgICB9Ci0KLSAgICBBU1NFUlQobV9zcWxpdGVUcmFu
c2FjdGlvbik7Ci0KLSAgICBtX2RhdGFiYXNlLT5kaXNhYmxlQXV0aG9yaXplcigpOwotICAgIG1f
c3FsaXRlVHJhbnNhY3Rpb24tPmNvbW1pdCgpOwotICAgIG1fZGF0YWJhc2UtPmVuYWJsZUF1dGhv
cml6ZXIoKTsKLQotICAgIC8vIElmIHRoZSBjb21taXQgZmFpbGVkLCB0aGUgdHJhbnNhY3Rpb24g
d2lsbCBzdGlsbCBiZSBtYXJrZWQgYXMgImluIHByb2dyZXNzIgotICAgIGlmIChtX3NxbGl0ZVRy
YW5zYWN0aW9uLT5pblByb2dyZXNzKCkpIHsKLSAgICAgICAgbV9kYXRhYmFzZS0+c2V0TGFzdEVy
cm9yTWVzc2FnZSgidW5hYmxlIHRvIGNvbW1pdCB0cmFuc2FjdGlvbiIsCi0gICAgICAgICAgICBt
X2RhdGFiYXNlLT5zcWxpdGVEYXRhYmFzZSgpLmxhc3RFcnJvcigpLCBtX2RhdGFiYXNlLT5zcWxp
dGVEYXRhYmFzZSgpLmxhc3RFcnJvck1zZygpKTsKLSAgICAgICAgcmV0dXJuIFNRTEV4Y2VwdGlv
bjo6REFUQUJBU0VfRVJSOwotICAgIH0KLQotICAgIG1fc3FsaXRlVHJhbnNhY3Rpb24gPSBudWxs
cHRyOwotCi0gICAgLy8gVmFjdXVtIHRoZSBkYXRhYmFzZSBpZiBhbnl0aGluZyB3YXMgZGVsZXRl
ZC4KLSAgICBpZiAobV9kYXRhYmFzZS0+aGFkRGVsZXRlcygpKQotICAgICAgICBtX2RhdGFiYXNl
LT5pbmNyZW1lbnRhbFZhY3V1bUlmTmVlZGVkKCk7Ci0KLSAgICAvLyBUaGUgY29tbWl0IHdhcyBz
dWNjZXNzZnVsLiBJZiB0aGUgdHJhbnNhY3Rpb24gbW9kaWZpZWQgdGhpcyBkYXRhYmFzZSwgbm90
aWZ5IHRoZSBkZWxlZ2F0ZXMuCi0gICAgaWYgKG1fbW9kaWZpZWREYXRhYmFzZSkKLSAgICAgICAg
bV90cmFuc2FjdGlvbkNsaWVudC0+ZGlkQ29tbWl0V3JpdGVUcmFuc2FjdGlvbihkYXRhYmFzZSgp
KTsKLSAgICByZXR1cm4gMDsKLX0KLQotdm9pZCBTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jOjpy
b2xsYmFjaygpCi17Ci0gICAgQVNTRVJUKG1fZGF0YWJhc2UtPnNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKS0+aXNDb250ZXh0VGhyZWFkKCkpOwotICAgIG1fZGF0YWJhc2UtPmRpc2FibGVBdXRob3Jp
emVyKCk7Ci0gICAgaWYgKG1fc3FsaXRlVHJhbnNhY3Rpb24pIHsKLSAgICAgICAgbV9zcWxpdGVU
cmFuc2FjdGlvbi0+cm9sbGJhY2soKTsKLSAgICAgICAgbV9zcWxpdGVUcmFuc2FjdGlvbiA9IG51
bGxwdHI7Ci0gICAgfQotICAgIG1fZGF0YWJhc2UtPmVuYWJsZUF1dGhvcml6ZXIoKTsKLQotICAg
IEFTU0VSVCghbV9kYXRhYmFzZS0+c3FsaXRlRGF0YWJhc2UoKS50cmFuc2FjdGlvbkluUHJvZ3Jl
c3MoKSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShT
UUxfREFUQUJBU0UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL1NRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNrZW5kU3luYy5oCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyNWE2NTI2ZTA3MDgxYjE2OWI5NDk1M2Q1NTE3MGQyYjY1MmY4MGYzLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNrZW5kU3luYy5oCisrKyAv
ZGV2L251bGwKQEAgLTEsODcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICogUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICog
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVpdGhl
ciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQot
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmNf
aAotI2RlZmluZSBTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jX2gKLQotI2lmIEVOQUJMRShTUUxf
REFUQUJBU0UpCi0KLSNpbmNsdWRlICJEYXRhYmFzZUJhc2ljVHlwZXMuaCIKLSNpbmNsdWRlIDxt
ZW1vcnk+Ci0jaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBEYXRhYmFzZVN5bmM7Ci1jbGFz
cyBTUUxSZXN1bHRTZXQ7Ci1jbGFzcyBTUUxUcmFuc2FjdGlvbkNsaWVudDsKLWNsYXNzIFNRTFRy
YW5zYWN0aW9uU3luY0NhbGxiYWNrOwotY2xhc3MgU1FMVmFsdWU7Ci1jbGFzcyBTUUxpdGVUcmFu
c2FjdGlvbjsKLQotLy8gSW5zdGFuY2VzIG9mIHRoaXMgY2xhc3Mgc2hvdWxkIGJlIGNyZWF0ZWQg
YW5kIHVzZWQgb25seSBvbiB0aGUgd29ya2VyJ3MgY29udGV4dCB0aHJlYWQuCi1jbGFzcyBTUUxU
cmFuc2FjdGlvbkJhY2tlbmRTeW5jIDogcHVibGljIFJlZkNvdW50ZWQ8U1FMVHJhbnNhY3Rpb25C
YWNrZW5kU3luYz4gewotcHVibGljOgotICAgIH5TUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jKCk7
Ci0KLSAgICBQYXNzUmVmUHRyPFNRTFJlc3VsdFNldD4gZXhlY3V0ZVNRTChjb25zdCBTdHJpbmcm
IHNxbFN0YXRlbWVudCwgY29uc3QgVmVjdG9yPFNRTFZhbHVlPiYgYXJndW1lbnRzLCBFeGNlcHRp
b25Db2RlJik7Ci0KLSAgICBEYXRhYmFzZVN5bmMqIGRhdGFiYXNlKCkgeyByZXR1cm4gbV9kYXRh
YmFzZS5nZXQoKTsgfQotICAgIGJvb2wgaXNSZWFkT25seSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVh
ZE9ubHk7IH0KLQotICAgIEV4Y2VwdGlvbkNvZGUgYmVnaW4oKTsKLSAgICBFeGNlcHRpb25Db2Rl
IGV4ZWN1dGUoKTsKLSAgICBFeGNlcHRpb25Db2RlIGNvbW1pdCgpOwotICAgIHZvaWQgcm9sbGJh
Y2soKTsKLQotcHJpdmF0ZToKLSAgICBTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jKERhdGFiYXNl
U3luYyosIFBhc3NSZWZQdHI8U1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2s+LCBib29sIHJlYWRP
bmx5KTsKLQotICAgIFJlZlB0cjxEYXRhYmFzZVN5bmM+IG1fZGF0YWJhc2U7Ci0gICAgUmVmUHRy
PFNRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrPiBtX2NhbGxiYWNrOwotICAgIGJvb2wgbV9yZWFk
T25seTsKLSAgICBib29sIG1faGFzVmVyc2lvbk1pc21hdGNoOwotCi0gICAgYm9vbCBtX21vZGlm
aWVkRGF0YWJhc2U7Ci0gICAgc3RkOjp1bmlxdWVfcHRyPFNRTFRyYW5zYWN0aW9uQ2xpZW50PiBt
X3RyYW5zYWN0aW9uQ2xpZW50OwotICAgIHN0ZDo6dW5pcXVlX3B0cjxTUUxpdGVUcmFuc2FjdGlv
bj4gbV9zcWxpdGVUcmFuc2FjdGlvbjsKLQotICAgIGZyaWVuZCBjbGFzcyBTUUxUcmFuc2FjdGlv
blN5bmM7IC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBvbmNlIHRoZSBmcm9udC1lbmQgaGFzIGJlZW4g
cHJvcGVybHkgaXNvbGF0ZWQuCi19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZgotCi0jZW5kaWYgLy8gU1FMVHJhbnNhY3Rpb25CYWNrZW5kU3luY19oCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5j
cHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY0NDNjOWEwNTE0YmY3ZjU4MWI0MWQ4
YTIwNmU3MGQyNzk1NzNhOTIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlv
blN5bmMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNjEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0
IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZQotICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgot
ICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9m
IGl0cwotICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
LSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVAotICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiU1FMVHJhbnNhY3Rpb25TeW5jLmgiCi0KLSNpZiBFTkFCTEUoU1FMX0RBVEFC
QVNFKQotCi0jaW5jbHVkZSAiRGF0YWJhc2VTeW5jLmgiCi0jaW5jbHVkZSAiU1FMVHJhbnNhY3Rp
b25TeW5jQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCi0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotUGFzc1JlZlB0cjxTUUxUcmFuc2FjdGlvblN5bmM+IFNR
TFRyYW5zYWN0aW9uU3luYzo6Y3JlYXRlKERhdGFiYXNlU3luYyogZGIsIFBhc3NSZWZQdHI8U1FM
VHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2s+IGNhbGxiYWNrLCBib29sIHJlYWRPbmx5KQotewotICAg
IHJldHVybiBhZG9wdFJlZihuZXcgU1FMVHJhbnNhY3Rpb25TeW5jKGRiLCBjYWxsYmFjaywgcmVh
ZE9ubHkpKTsKLX0KLQotU1FMVHJhbnNhY3Rpb25TeW5jOjpTUUxUcmFuc2FjdGlvblN5bmMoRGF0
YWJhc2VTeW5jKiBkYiwgUGFzc1JlZlB0cjxTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjaz4gY2Fs
bGJhY2ssIGJvb2wgcmVhZE9ubHkpCi0gICAgOiBTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jKGRi
LCBjYWxsYmFjaywgcmVhZE9ubHkpCi17Ci0gICAgQVNTRVJUKG1fZGF0YWJhc2UtPnNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoKS0+aXNDb250ZXh0VGhyZWFkKCkpOwotfQotCi1TUUxUcmFuc2FjdGlv
blN5bmMqIFNRTFRyYW5zYWN0aW9uU3luYzo6ZnJvbShTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5j
KiBiYWNrZW5kKQotewotICAgIHJldHVybiBzdGF0aWNfY2FzdDxTUUxUcmFuc2FjdGlvblN5bmMq
PihiYWNrZW5kKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKFNRTF9EQVRBQkFTRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
ZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25TeW5jLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA3ODQ3M2Y4NTFmMmE2YTIyMmYwNDU2NzExZWEzMjVmZmUzNjMyM2FmLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25TeW5jLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1
NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0Ogot
ICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0g
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpZm5kZWYgU1FMVHJhbnNhY3Rpb25TeW5jX2gKLSNkZWZpbmUgU1FMVHJhbnNhY3Rp
b25TeW5jX2gKLQotI2lmIEVOQUJMRShTUUxfREFUQUJBU0UpCi0KLSNpbmNsdWRlICJTUUxUcmFu
c2FjdGlvbkJhY2tlbmRTeW5jLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotLy8gSW5zdGFu
Y2VzIG9mIHRoaXMgY2xhc3Mgc2hvdWxkIGJlIGNyZWF0ZWQgYW5kIHVzZWQgb25seSBvbiB0aGUg
d29ya2VyJ3MgY29udGV4dCB0aHJlYWQuCi1jbGFzcyBTUUxUcmFuc2FjdGlvblN5bmMgOiBwdWJs
aWMgU1FMVHJhbnNhY3Rpb25CYWNrZW5kU3luYyB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NS
ZWZQdHI8U1FMVHJhbnNhY3Rpb25TeW5jPiBjcmVhdGUoRGF0YWJhc2VTeW5jKiwgUGFzc1JlZlB0
cjxTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjaz4sIGJvb2wgcmVhZE9ubHkgPSBmYWxzZSk7Ci0K
LSAgICBzdGF0aWMgU1FMVHJhbnNhY3Rpb25TeW5jKiBmcm9tKFNRTFRyYW5zYWN0aW9uQmFja2Vu
ZFN5bmMqKTsKLQotcHJpdmF0ZToKLSAgICBTUUxUcmFuc2FjdGlvblN5bmMoRGF0YWJhc2VTeW5j
KiwgUGFzc1JlZlB0cjxTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjaz4sIGJvb2wgcmVhZE9ubHkp
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKLQotI2VuZGlmIC8vIFNR
TFRyYW5zYWN0aW9uU3luY19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5pZGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGIyNWNkMzI4ZDE5YTU0MzA0N2VhOGU0NjI4OWRkZDViODg4ZTc2NWYuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvblN5bmMuaWRsCisrKyAvZGV2L251bGwK
QEAgLTEsMzcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQot
ICogbWV0OgotICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyCi0gKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBu
YW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQot
ICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwK
LSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotICovCi0KLVsKLSAgICBOb0ludGVyZmFjZU9iamVjdCwKLSAgICBDb25kaXRpb25h
bD1TUUxfREFUQUJBU0UsCi0gICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKLV0gaW50ZXJm
YWNlIFNRTFRyYW5zYWN0aW9uU3luYyB7Ci0gICAgW0N1c3RvbV0gU1FMUmVzdWx0U2V0IGV4ZWN1
dGVTcWwoRE9NU3RyaW5nIHNxbFN0YXRlbWVudCwgT2JqZWN0QXJyYXkgYXJndW1lbnRzKTsKLX07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5z
YWN0aW9uU3luY0NhbGxiYWNrLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNl
L1NRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDBjNWY4ZmQ2MzE4OGMzYmUxMTZhNzkyMjRhZGVlYTkwMDZlMzE4NTQuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5oCisrKyAvZGV2L251bGwK
QEAgLTEsNTMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQot
ICogbWV0OgotICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyCi0gKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBu
YW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQot
ICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwK
LSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2tfaAotI2Rl
ZmluZSBTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFja19oCi0KLSNpZiBFTkFCTEUoU1FMX0RBVEFC
QVNFKQotCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUg
ewotCi1jbGFzcyBTUUxUcmFuc2FjdGlvblN5bmM7Ci0KLS8vIEluc3RhbmNlcyBvZiB0aGlzIGNs
YXNzIHNob3VsZCBiZSBjcmVhdGVkIGFuZCB1c2VkIG9ubHkgb24gdGhlIHdvcmtlcidzIGNvbnRl
eHQgdGhyZWFkLgotY2xhc3MgU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2sgOiBwdWJsaWMgUmVm
Q291bnRlZDxTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjaz4gewotcHVibGljOgotICAgIHZpcnR1
YWwgflNRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrKCkgeyB9Ci0gICAgdmlydHVhbCBib29sIGhh
bmRsZUV2ZW50KFNRTFRyYW5zYWN0aW9uU3luYyopID0gMDsKLX07Ci0KLX0KLQotI2VuZGlmCi0K
LSNlbmRpZiAvLyBTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFja19oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNr
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25T
eW5jQ2FsbGJhY2suaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjNWI1ZTFlZDUw
ODhlYmJjMjJjNmI4OWMyY2E2YTA1M2EyYTI0NjUwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2Uv
U1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2suaWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzUgKzAs
MCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0OgotICoK
LSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2ds
ZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAot
ICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICov
Ci0KLVsKLSAgICBDb25kaXRpb25hbD1TUUxfREFUQUJBU0UsCi1dIGNhbGxiYWNrIGludGVyZmFj
ZSBTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjayB7Ci0gICAgYm9vbGVhbiBoYW5kbGVFdmVudChT
UUxUcmFuc2FjdGlvblN5bmMgdHJhbnNhY3Rpb24pOwotfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4IDMyNzBkMGE4NjlhMjZmODIyZDA4
MTc0NjQ0OTY0YzllNWJlYmUyNjcuLmVjYzgxNzBlYTFiYzE0MmY0NjAyYjMxOWQwNDE3MWQyYjZi
ZWZlZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3Jl
LnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4
cHJvagpAQCAtMTM3OSwyMCArMTM3OSw2IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMy
JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCci
PnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRl
Y3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRGF0YWJhc2VTeW5jLmNwcCI+
Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwk
KFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAg
ICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhj
bHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9
PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAg
PEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAg
ICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAg
ICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAg
ICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8
RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdSZWxlYXNlfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1
ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0n
UmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAg
PEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAg
ICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAg
ICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxh
dGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAg
PC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWls
ZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNv
dXJjZXNcSlNEYXRhVHJhbnNmZXIuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25k
aXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1
ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9u
PSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNs
dWRlZEZyb21CdWlsZD4KQEAgLTQwMjUsMjAgKzQwMTEsNiBAQAogICAgICAgPEV4Y2x1ZGVkRnJv
bUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVj
dGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJv
bUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVj
dGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KLSAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRm
b3JtQXJjaGl0ZWN0dXJlKVxXZWJDb3JlXERlcml2ZWRTb3VyY2VzXEpTU1FMVHJhbnNhY3Rpb25T
eW5jLmNwcCI+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1
aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0g
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1
aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+
Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwk
KFBsYXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAg
ICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0
Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21C
dWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRp
b24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21C
dWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRp
b24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIkKENvbmZpZ3Vy
YXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlc
RGVyaXZlZFNvdXJjZXNcSlNTdG9yYWdlLmNwcCI+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQg
Q29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMici
PnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+CkBAIC02ODAwLDEyICs2NzcyLDEwIEBACiAgICAgPENsQ29tcGls
ZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXERhdGFiYXNlQmFja2VuZC5jcHAiIC8+
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXERhdGFiYXNl
QmFja2VuZEJhc2UuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3
ZWJkYXRhYmFzZVxEYXRhYmFzZUJhY2tlbmRDb250ZXh0LmNwcCIgLz4KLSAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcRGF0YWJhc2VCYWNrZW5kU3luYy5jcHAi
IC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXERhdGFi
YXNlQmFzZS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRh
dGFiYXNlXERhdGFiYXNlQ29udGV4dC5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
LlxNb2R1bGVzXHdlYmRhdGFiYXNlXERhdGFiYXNlTWFuYWdlci5jcHAiIC8+CiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXERhdGFiYXNlU2VydmVyLmNwcCIg
Lz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcRGF0YWJh
c2VTeW5jLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0
YWJhc2VcRGF0YWJhc2VUYXNrLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1v
ZHVsZXNcd2ViZGF0YWJhc2VcRGF0YWJhc2VUaHJlYWQuY3BwIiAvPgogICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxEYXRhYmFzZVRyYWNrZXIuY3BwIiAvPgpA
QCAtNjgxNiwxNCArNjc4NiwxMSBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxl
c1x3ZWJkYXRhYmFzZVxTUUxSZXN1bHRTZXRSb3dMaXN0LmNwcCIgLz4KICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcU1FMU3RhdGVtZW50LmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcU1FMU3RhdGVtZW50
QmFja2VuZC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRh
dGFiYXNlXFNRTFN0YXRlbWVudFN5bmMuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2FjdGlvbi5jcHAiIC8+CiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0aW9uQmFja2Vu
ZC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNl
XFNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVk
ZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2FjdGlvbkNsaWVudC5jcHAiIC8+CiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0
aW9uQ29vcmRpbmF0b3IuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxl
c1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2FjdGlvblN0YXRlTWFjaGluZS5jcHAiIC8+Ci0gICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0aW9uU3lu
Yy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNc
VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVk
ZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50
V3JhcHBlci5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNv
Y2tldHNcV2ViU29ja2V0LmNwcCIgLz4KQEAgLTE3MzU0LDIwICsxNzMyMSw2IEBACiAgICAgICA8
RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8
RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgIDwvQ2xD
b21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcSlNTUUxUcmFu
c2FjdGlvblN5bmNDdXN0b20uY3BwIj4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSIn
JChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZp
Z3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3x4NjQnIj50cnVlPC9F
eGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnU3VmZml4fFdpbjMyJyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSIn
JChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHx4NjQnIj50cnVlPC9F
eGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249Iick
KENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj50cnVlPC9FeGNs
dWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPnRydWU8
L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8
L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9F
eGNsdWRlZEZyb21CdWlsZD4KLSAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXGJpbmRpbmdzXGpzXEpTUlRDSWNlQ2FuZGlkYXRlQ3VzdG9tLmNwcCI+CiAgICAgICA8
RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3Jt
KSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1
ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0n
RGVidWd8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CkBAIC0xODM3Nyw3ICsxODMzMCw2
IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2Jq
JChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlND
U1NWYWx1ZUxpc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlv
bkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU0N1c3RvbUV2ZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIk
KENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9q
ZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNEYXRhYmFzZS5oIiAvPgotICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1
cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRGF0YWJhc2VTeW5jLmgiIC8+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0
Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNEYXRhVHJh
bnNmZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxk
RGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291
cmNlc1xKU0RhdGFUcmFuc2Zlckl0ZW0uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQo
Q29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2pl
Y3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmgiIC8+CkBAIC0x
ODU3OCw3ICsxODUzMCw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRp
b25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVy
aXZlZFNvdXJjZXNcSlNTUUxSZXN1bHRTZXQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFBy
b2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1NRTFJlc3VsdFNldFJvd0xpc3QuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRm
b3JtQXJjaGl0ZWN0dXJlKVxXZWJDb3JlXERlcml2ZWRTb3VyY2VzXEpTU1FMVHJhbnNhY3Rpb24u
aCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxv
YmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVxXZWJDb3JlXERlcml2ZWRTb3VyY2VzXEpTU1FMVHJh
bnNhY3Rpb25TeW5jLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRp
b25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVy
aXZlZFNvdXJjZXNcSlNTdG9yYWdlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENv
bmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0
TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNTdG9yYWdlRXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0
dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1N0b3JhZ2VJbmZvLmgiIC8+CkBA
IC0xOTA5MCw3ICsxOTA0MSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVz
XHdlYmRhdGFiYXNlXERhdGFiYXNlRXJyb3IuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcRGF0YWJhc2VNYW5hZ2VyLmgiIC8+CiAgICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXERhdGFiYXNlU2VydmVyLmgiIC8+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXERhdGFiYXNl
U3luYy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFz
ZVxEYXRhYmFzZVRhc2suaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNc
d2ViZGF0YWJhc2VcRGF0YWJhc2VUaHJlYWQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcRGF0YWJhc2VUcmFja2VyLmgiIC8+CkBAIC0xOTExNSw4
ICsxOTA2NSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFi
YXNlXFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjay5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2FjdGlvblN0YXRlLmgiIC8+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0
aW9uU3RhdGVNYWNoaW5lLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVz
XHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0aW9uU3luYy5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXENsb3Nl
RXZlbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2Vic29ja2V0
c1xUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50
V3JhcHBlci5oIiAvPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvai5maWx0ZXJzIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCmluZGV4IGQwY2JkMWEyZmQzYzdmMmVhMDFkODNjYjMx
YmM3ZGI4NjdlODFmMGQuLjZiYTY3Y2EzM2E5YzE4ODY4ZGQxODk2MTcyZjc4YmM5MmVhMDkzMTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHBy
b2ouZmlsdGVycworKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52
Y3hwcm9qLmZpbHRlcnMKQEAgLTQ3Nyw5ICs0NzcsNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVk
ZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxEYXRhYmFzZUJhY2tlbmRDb250ZXh0LmNwcCI+CiAg
ICAgICA8RmlsdGVyPk1vZHVsZXNcd2ViZGF0YWJhc2U8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGls
ZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcRGF0YWJh
c2VCYWNrZW5kU3luYy5jcHAiPgotICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRhdGFiYXNlPC9G
aWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1
bGVzXHdlYmRhdGFiYXNlXERhdGFiYXNlQmFzZS5jcHAiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVz
XHdlYmRhdGFiYXNlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC00OTIsOSArNDg5LDYg
QEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcRGF0YWJh
c2VTZXJ2ZXIuY3BwIj4KICAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3
ZWJkYXRhYmFzZVxEYXRhYmFzZVN5bmMuY3BwIj4KLSAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJk
YXRhYmFzZTwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVk
ZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxEYXRhYmFzZVRhc2suY3BwIj4KICAgICAgIDxGaWx0
ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtNTI1
LDE4ICs1MTksMTIgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0
YWJhc2VcU1FMU3RhdGVtZW50QmFja2VuZC5jcHAiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdl
YmRhdGFiYXNlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFN0YXRlbWVudFN5bmMuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgog
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2Fj
dGlvbi5jcHAiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRhdGFiYXNlPC9GaWx0ZXI+CiAg
ICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRh
dGFiYXNlXFNRTFRyYW5zYWN0aW9uQmFja2VuZC5jcHAiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVz
XHdlYmRhdGFiYXNlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMu
Y3BwIj4KLSAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgotICAgIDwv
Q2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFz
ZVxTUUxUcmFuc2FjdGlvbkNsaWVudC5jcHAiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRh
dGFiYXNlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC01NDYsOSArNTM0LDYgQEAKICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcU1FMVHJhbnNhY3Rp
b25TdGF0ZU1hY2hpbmUuY3BwIj4KICAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwv
RmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9k
dWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2FjdGlvblN5bmMuY3BwIj4KLSAgICAgIDxGaWx0ZXI+
TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFRocmVhZGFibGVXZWJTb2NrZXRD
aGFubmVsLmNwcCI+CiAgICAgICA8RmlsdGVyPk1vZHVsZXNcd2Vic29ja2V0czwvRmlsdGVyPgog
ICAgIDwvQ2xDb21waWxlPgpAQCAtNDQ2NCw5ICs0NDQ5LDYgQEAKICAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXEpTU1FMVHJhbnNhY3Rpb25DdXN0b20uY3BwIj4KICAgICAg
IDxGaWx0ZXI+YmluZGluZ3NcanM8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXEpTU1FMVHJhbnNhY3Rpb25TeW5jQ3VzdG9t
LmNwcCI+Ci0gICAgICA8RmlsdGVyPmJpbmRpbmdzXGpzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBp
bGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xKU1JUQ0ljZUNhbmRp
ZGF0ZUN1c3RvbS5jcHAiPgogICAgICAgPEZpbHRlcj5iaW5kaW5nc1xqczwvRmlsdGVyPgogICAg
IDwvQ2xDb21waWxlPgpAQCAtNTI5MCw5ICs1MjcyLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1
ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwk
KFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0RhdGFiYXNlLmNwcCI+CiAgICAgICA8Rmls
dGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hp
dGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNEYXRhYmFzZVN5bmMuY3Bw
Ij4KLSAgICAgIDxGaWx0ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGls
ZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmok
KFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0Rh
dGFUcmFuc2Zlci5jcHAiPgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgog
ICAgIDwvQ2xDb21waWxlPgpAQCAtNTgzMyw5ICs1ODEyLDYgQEAKICAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJl
KVxXZWJDb3JlXERlcml2ZWRTb3VyY2VzXEpTU1FMVHJhbnNhY3Rpb24uY3BwIj4KICAgICAgIDxG
aWx0ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xD
b21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJj
aGl0ZWN0dXJlKVxXZWJDb3JlXERlcml2ZWRTb3VyY2VzXEpTU1FMVHJhbnNhY3Rpb25TeW5jLmNw
cCI+Ci0gICAgICA8RmlsdGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBp
bGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2Jq
JChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNT
dG9yYWdlLmNwcCI+CiAgICAgICA8RmlsdGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+CiAgICAg
PC9DbENvbXBpbGU+CkBAIC03NDI1LDkgKzc0MDEsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxEYXRhYmFzZUJhY2tlbmRDb250ZXh0LmgiPgogICAg
ICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRhdGFiYXNlPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXERhdGFiYXNl
QmFja2VuZFN5bmMuaCI+Ci0gICAgICA8RmlsdGVyPk1vZHVsZXNcd2ViZGF0YWJhc2U8L0ZpbHRl
cj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNc
d2ViZGF0YWJhc2VcRGF0YWJhc2VCYXNlLmgiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRh
dGFiYXNlPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC03NDQ5LDkgKzc0MjIsNiBAQAog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxEYXRhYmFzZVNl
cnZlci5oIj4KICAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgogICAg
IDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRh
YmFzZVxEYXRhYmFzZVN5bmMuaCI+Ci0gICAgICA8RmlsdGVyPk1vZHVsZXNcd2ViZGF0YWJhc2U8
L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1v
ZHVsZXNcd2ViZGF0YWJhc2VcRGF0YWJhc2VUYXNrLmgiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVz
XHdlYmRhdGFiYXNlPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC03NDk0LDE4ICs3NDY0
LDEyIEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNR
TFN0YXRlbWVudEVycm9yQ2FsbGJhY2suaCI+CiAgICAgICA8RmlsdGVyPk1vZHVsZXNcd2ViZGF0
YWJhc2U8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcU1FMU3RhdGVtZW50U3luYy5oIj4KLSAgICAgIDxGaWx0
ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2FjdGlvbi5o
Ij4KICAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgogICAgIDwvQ2xJ
bmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxT
UUxUcmFuc2FjdGlvbkJhY2tlbmQuaCI+CiAgICAgICA8RmlsdGVyPk1vZHVsZXNcd2ViZGF0YWJh
c2U8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XE1vZHVsZXNcd2ViZGF0YWJhc2VcU1FMVHJhbnNhY3Rpb25CYWNrZW5kU3luYy5oIj4KLSAgICAg
IDxGaWx0ZXI+TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2Fj
dGlvbkNhbGxiYWNrLmgiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRhdGFiYXNlPC9GaWx0
ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC03NTI0LDEyICs3NDg4LDYgQEAKICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcU1FMVHJhbnNhY3Rpb25TdGF0ZU1h
Y2hpbmUuaCI+CiAgICAgICA8RmlsdGVyPk1vZHVsZXNcd2ViZGF0YWJhc2U8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0
YWJhc2VcU1FMVHJhbnNhY3Rpb25TeW5jLmgiPgotICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRh
dGFiYXNlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrLmgiPgot
ICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRhdGFiYXNlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1
ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcQ2xvc2VF
dmVudC5oIj4KICAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0ZXI+CiAgICAg
PC9DbEluY2x1ZGU+CkBAIC0xMzIxMSw5ICsxMzE2OSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlc
JChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNEYXRhYmFzZS5oIj4KICAgICAgIDxGaWx0
ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0
ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0RhdGFiYXNlU3luYy5oIj4K
LSAgICAgIDxGaWx0ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBs
YXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0RhdGFU
cmFuc2Zlci5oIj4KICAgICAgIDxGaWx0ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRlcj4KICAgICA8
L0NsSW5jbHVkZT4KQEAgLTEzNzQ4LDkgKzEzNzAzLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVxX
ZWJDb3JlXERlcml2ZWRTb3VyY2VzXEpTU1FMVHJhbnNhY3Rpb24uaCI+CiAgICAgICA8RmlsdGVy
PkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVj
dHVyZSlcV2ViQ29yZVxEZXJpdmVkU291cmNlc1xKU1NRTFRyYW5zYWN0aW9uU3luYy5oIj4KLSAg
ICAgIDxGaWx0ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRm
b3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1N0b3JhZ2Uu
aCI+CiAgICAgICA8RmlsdGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1
ZGU+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKaW5kZXggYjM4MTdkNjU3MTVkM2MzNTA4MjkzNzMwNmEyMjZhZjRjZTJiYjZkYy4uNDA3OTgz
MDA0ODRhNWI3MThmYWVkYzdiZjc5MTJmMjg3NDNkOTdjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzYwNiw4ICszNjA2LDYg
QEAKIAkJOTdCQzZBMjcxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQ29udGV4dC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNjlFNTE1MDVG
MDgxMDAxQjc0QUMgLyogRGF0YWJhc2VDb250ZXh0LmNwcCAqLzsgfTsKIAkJOTdCQzZBMjgxNTA1
RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdCQzY5RTYxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFi
YXNlQ29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTk3QkM2QTI5MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZURldGFpbHMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QkM2OUU3MTUwNUYw
ODEwMDFCNzRBQyAvKiBEYXRhYmFzZURldGFpbHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk5N0JDNkEyQTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0
YWJhc2VTeW5jLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk3QkM2OUU4MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVN5bmMuY3BwICovOyB9Owot
CQk5N0JDNkEyQjE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VTeW5jLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNjlFOTE1MDVGMDgxMDAxQjc0
QUMgLyogRGF0YWJhc2VTeW5jLmggKi87IH07CiAJCTk3QkM2QTJEMTUwNUYwODEwMDFCNzRBQyAv
KiBEYXRhYmFzZVRhc2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTdCQzY5RUIxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlVGFzay5jcHAgKi87
IH07CiAJCTk3QkM2QTJFMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRhc2suaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QkM2OUVDMTUwNUYwODEw
MDFCNzRBQyAvKiBEYXRhYmFzZVRhc2suaCAqLzsgfTsKIAkJOTdCQzZBMkYxNTA1RjA4MTAwMUI3
NEFDIC8qIERhdGFiYXNlVGhyZWFkLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDk3QkM2OUVEMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRocmVh
ZC5jcHAgKi87IH07CkBAIC0zNjI3LDggKzM2MjUsNiBAQAogCQk5N0JDNkE0ODE1MDVGMDgxMDAx
Qjc0QUMgLyogU1FMU3RhdGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5N0JDNkEwNjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3RhdGVtZW50Lmgg
Ki87IH07CiAJCTk3QkM2QTQ5MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnRDYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdCQzZB
MDcxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFN0YXRlbWVudENhbGxiYWNrLmggKi87IH07CiAJCTk3
QkM2QTRCMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkEwOTE1MDVG
MDgxMDAxQjc0QUMgLyogU1FMU3RhdGVtZW50RXJyb3JDYWxsYmFjay5oICovOyB9OwotCQk5N0JD
NkE0RDE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3RhdGVtZW50U3luYy5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkEwQjE1MDVGMDgxMDAxQjc0
QUMgLyogU1FMU3RhdGVtZW50U3luYy5jcHAgKi87IH07Ci0JCTk3QkM2QTRFMTUwNUYwODEwMDFC
NzRBQyAvKiBTUUxTdGF0ZW1lbnRTeW5jLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkEwQzE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3RhdGVtZW50
U3luYy5oICovOyB9OwogCQk5N0JDNkE0RjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rp
b24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdC
QzZBMEQxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uLmNwcCAqLzsgfTsKIAkJOTdC
QzZBNTAxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkEwRTE1MDVGMDgxMDAxQjc0QUMg
LyogU1FMVHJhbnNhY3Rpb24uaCAqLzsgfTsKIAkJOTdCQzZBNTIxNTA1RjA4MTAwMUI3NEFDIC8q
IFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDk3QkM2QTEwMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlv
bkNhbGxiYWNrLmggKi87IH07CkBAIC0zNjM3LDkgKzM2MzMsNiBAQAogCQk5N0JDNkE1NjE1MDVG
MDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkExNDE1MDVGMDgxMDAxQjc0
QUMgLyogU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvci5jcHAgKi87IH07CiAJCTk3QkM2QTU3MTUw
NUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNvb3JkaW5hdG9yLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkExNTE1MDVGMDgxMDAxQjc0
QUMgLyogU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvci5oICovOyB9OwogCQk5N0JDNkE1ODE1MDVG
MDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkExNjE1MDVGMDgxMDAxQjc0
QUMgLyogU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrLmggKi87IH07Ci0JCTk3QkM2QTVBMTUw
NUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvblN5bmMuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdCQzZBMTgxNTA1RjA4MTAwMUI3NEFDIC8q
IFNRTFRyYW5zYWN0aW9uU3luYy5jcHAgKi87IH07Ci0JCTk3QkM2QTVCMTUwNUYwODEwMDFCNzRB
QyAvKiBTUUxUcmFuc2FjdGlvblN5bmMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDk3QkM2QTE5MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlv
blN5bmMuaCAqLzsgfTsKLQkJOTdCQzZBNUQxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0
aW9uU3luY0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5N0JDNkExQjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25TeW5jQ2Fs
bGJhY2suaCAqLzsgfTsKIAkJOTdCQzg0ODMxMjM2RkQ5MzAwMEM2MTYxIC8qIFRleHREb2N1bWVu
dFBhcnNlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5N0JDODQ4MTEyMzZGRDkzMDAwQzYxNjEgLyogVGV4dERvY3VtZW50UGFyc2VyLmNwcCAqLzsg
fTsKIAkJOTdCQzg0ODQxMjM2RkQ5MzAwMEM2MTYxIC8qIFRleHREb2N1bWVudFBhcnNlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdCQzg0ODIxMjM2
RkQ5MzAwMEM2MTYxIC8qIFRleHREb2N1bWVudFBhcnNlci5oICovOyB9OwogCQk5N0JDODQ5QjEy
MzcwQTRCMDAwQzYxNjEgLyogSFRNTElucHV0U3RyZWFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDODQ5QTEyMzcwQTRCMDAwQzYxNjEgLyogSFRN
TElucHV0U3RyZWFtLmggKi87IH07CkBAIC00OTgyLDE5ICs0OTc1LDEyIEBACiAJCUI1MzIwRDZC
MTIyQTI0RTkwMDJEMTQ0MCAvKiBGb250UGxhdGZvcm1EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTMyMEQ2OTEyMkEyNEU5MDAyRDE0NDAgLyog
Rm9udFBsYXRmb3JtRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCUI1MzIwRDZDMTIyQTI0RTkwMDJEMTQ0MCAvKiBGb250UGxhdGZvcm1EYXRh
Q29jb2EubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
NTMyMEQ2QTEyMkEyNEU5MDAyRDE0NDAgLyogRm9udFBsYXRmb3JtRGF0YUNvY29hLm1tICovOyB9
OwogCQlCNTQzQjg1NzE3RUI3NThGMDAzQkU5M0EgLyogU1ZHUHJvcGVydHlJbmZvLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI1NDNCODU2MTdFQjc1
OEYwMDNCRTkzQSAvKiBTVkdQcm9wZXJ0eUluZm8uY3BwICovOyB9OwotCQlCNTVENUFBNDExOTEz
MUZDMDBCQ0MzMTUgLyogSlNTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjU1RDVBQTIxMTkxMzFGQzAwQkND
MzE1IC8qIEpTU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2suaCAqLzsgfTsKLQkJQjU1RDVBQTUx
MTkxMzFGQzAwQkNDMzE1IC8qIEpTU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2suY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjU1RDVBQTMxMTkxMzFG
QzAwQkNDMzE1IC8qIEpTU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2suY3BwICovOyB9OwotCQlC
NTVENUFBOTExOTEzMjUwMDBCQ0MzMTUgLyogSlNTUUxUcmFuc2FjdGlvblN5bmNDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjU1RDVBQTcx
MTkxMzI1MDAwQkNDMzE1IC8qIEpTU1FMVHJhbnNhY3Rpb25TeW5jQ3VzdG9tLmNwcCAqLzsgfTsK
IAkJQjU2MkRCNjAxN0QzQ0Q2MzAwMTBBRjk2IC8qIEhUTUxFbGVtZW50VHlwZUhlbHBlcnMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI1NjJEQjVFMTdE
M0NENTYwMDEwQUY5NiAvKiBIVE1MRWxlbWVudFR5cGVIZWxwZXJzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQjU2MkRCNjExN0QzQ0Q2NjAwMTBB
Rjk2IC8qIFNWR0VsZW1lbnRUeXBlSGVscGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjU2MkRCNUYxN0QzQ0Q1NjAwMTBBRjk2IC8qIFNWR0VsZW1l
bnRUeXBlSGVscGVycy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CiAJCUI1NjU3NkU4MTdEQTk0RTIwMEE1NkJEQyAvKiBET01Db25zdHJ1Y3RvcldpdGhE
b2N1bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjU2NTc2RTcxN0RBOTRFMjAwQTU2QkRDIC8qIERPTUNvbnN0cnVjdG9yV2l0aERvY3VtZW50Lmgg
Ki87IH07CiAJCUI1NjU3OUI1MTgyNEQxMkEwMEU3OUYyMyAvKiBSZW5kZXJDaGlsZEl0ZXJhdG9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTY1NzlC
NDE4MjREMTJBMDBFNzlGMjMgLyogUmVuZGVyQ2hpbGRJdGVyYXRvci5oICovOyB9OwogCQlCNTdD
QjUyRDE4MkEzRUVEMDA3OUE2NDcgLyogSW5saW5lRWxlbWVudEJveC5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTdDQjUyQzE4MkEzRUVEMDA3OUE2
NDcgLyogSW5saW5lRWxlbWVudEJveC5jcHAgKi87IH07CiAJCUI1N0NCNTJFMTgyQTNFRkMwMDc5
QTY0NyAvKiBJbmxpbmVFbGVtZW50Qm94LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCNTdDQjUyQjE4MkEzN0Y2MDA3OUE2NDcgLyogSW5saW5lRWxlbWVu
dEJveC5oICovOyB9OwotCQlCNThDRUI2OTExOTEzNjA3MDAyQTY3OTAgLyogSlNEYXRhYmFzZVN5
bmMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI1OENF
QjY3MTE5MTM2MDcwMDJBNjc5MCAvKiBKU0RhdGFiYXNlU3luYy5oICovOyB9OwotCQlCNThDRUI2
QTExOTEzNjA3MDAyQTY3OTAgLyogSlNEYXRhYmFzZVN5bmMuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjU4Q0VCNjgxMTkxMzYwNzAwMkE2NzkwIC8q
IEpTRGF0YWJhc2VTeW5jLmNwcCAqLzsgfTsKLQkJQjU4Q0VCNkQxMTkxMzYxQzAwMkE2NzkwIC8q
IEpTU1FMVHJhbnNhY3Rpb25TeW5jLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCNThDRUI2QjExOTEzNjFDMDAyQTY3OTAgLyogSlNTUUxUcmFuc2FjdGlv
blN5bmMuaCAqLzsgfTsKLQkJQjU4Q0VCNkUxMTkxMzYxQzAwMkE2NzkwIC8qIEpTU1FMVHJhbnNh
Y3Rpb25TeW5jLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEI1OENFQjZDMTE5MTM2MUMwMDJBNjc5MCAvKiBKU1NRTFRyYW5zYWN0aW9uU3luYy5jcHAg
Ki87IH07CiAJCUI1OTVGRjQ3MTgyNENFRTMwMEZGNTFDRCAvKiBSZW5kZXJJdGVyYXRvci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjU5NUZGNDYxODI0
Q0VFMzAwRkY1MUNEIC8qIFJlbmRlckl0ZXJhdG9yLmggKi87IH07CiAJCUI1OURENjk5MTE5MDI5
RTUwMDdFOTY4NCAvKiBKU0RhdGFiYXNlQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI1OURENjk3MTE5MDI5RTUwMDdFOTY4NCAvKiBKU0Rh
dGFiYXNlQ2FsbGJhY2suaCAqLzsgfTsKIAkJQjU5REQ2OUExMTkwMjlFNTAwN0U5Njg0IC8qIEpT
RGF0YWJhc2VDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCNTlERDY5ODExOTAyOUU1MDA3RTk2ODQgLyogSlNEYXRhYmFzZUNhbGxiYWNr
LmNwcCAqLzsgfTsKQEAgLTY2NzMsOCArNjY1OSw2IEBACiAJCUZFMTE1RkFCMTY3OTg4Q0QwMDI0
OTEzNCAvKiBBYnN0cmFjdERhdGFiYXNlU2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTExNUZBOTE2Nzk4OENEMDAyNDkxMzQgLyogQWJzdHJh
Y3REYXRhYmFzZVNlcnZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCUZFMTZDRkQzMTY5RDFERUQwMEQzQTBDNyAvKiBEYXRhYmFzZUJhY2tlbmQu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUxNkNG
Q0YxNjlEMURFQzAwRDNBMEM3IC8qIERhdGFiYXNlQmFja2VuZC5jcHAgKi87IH07CiAJCUZFMTZD
RkQ0MTY5RDFERUQwMEQzQTBDNyAvKiBEYXRhYmFzZUJhY2tlbmQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMTZDRkQwMTY5RDFERUMwMEQzQTBDNyAv
KiBEYXRhYmFzZUJhY2tlbmQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwotCQlGRTE2Q0ZENTE2OUQxREVEMDBEM0EwQzcgLyogRGF0YWJhc2VCYWNrZW5k
U3luYy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
RTE2Q0ZEMTE2OUQxREVDMDBEM0EwQzcgLyogRGF0YWJhc2VCYWNrZW5kU3luYy5jcHAgKi87IH07
Ci0JCUZFMTZDRkQ2MTY5RDFERUQwMEQzQTBDNyAvKiBEYXRhYmFzZUJhY2tlbmRTeW5jLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTE2Q0ZEMjE2OUQx
REVDMDBEM0EwQzcgLyogRGF0YWJhc2VCYWNrZW5kU3luYy5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUZFMzM3MUEyMTY3QzExRDQwMEVEQjc1MiAv
KiBEYXRhYmFzZUJhc2ljVHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEZFMzM3MUEwMTY3QzExRDQwMEVEQjc1MiAvKiBEYXRhYmFzZUJhc2ljVHlw
ZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlG
RTM2RkQxNTE2Qzc4MjY1MDBGODg3QzEgLyogQ2hhbmdlVmVyc2lvbkRhdGEuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMzZGRDExMTZDNzgyNjQwMEY4
ODdDMSAvKiBDaGFuZ2VWZXJzaW9uRGF0YS5oICovOyB9OwogCQlGRTM2RkQxNjE2Qzc4MjY1MDBG
ODg3QzEgLyogU1FMVHJhbnNhY3Rpb25TdGF0ZU1hY2hpbmUuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUzNkZEMTIxNkM3ODI2NDAwRjg4N0MxIC8q
IFNRTFRyYW5zYWN0aW9uU3RhdGVNYWNoaW5lLmNwcCAqLzsgfTsKQEAgLTY3MDAsOCArNjY4NCw2
IEBACiAJCUZFOEE2NzQ4MTZDREQxOUUwMDkzMEJGOCAvKiBTUUxTdGF0ZW1lbnRCYWNrZW5kLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRThBNjc0NjE2
Q0REMTlFMDA5MzBCRjggLyogU1FMU3RhdGVtZW50QmFja2VuZC5oICovOyB9OwogCQlGRTlFODlG
QjE2RTJEQzA1MDBBOTA4RjggLyogT3JpZ2luTG9jay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTlFODlGOTE2RTJEQzA0MDBBOTA4RjggLyogT3Jp
Z2luTG9jay5jcHAgKi87IH07CiAJCUZFOUU4OUZDMTZFMkRDMDUwMEE5MDhGOCAvKiBPcmlnaW5M
b2NrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTlF
ODlGQTE2RTJEQzA0MDBBOTA4RjggLyogT3JpZ2luTG9jay5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUZFQUQ3RDg3MTZDMzM5RUUwMEQ0NjcwQiAv
KiBTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFQUQ3RDg1MTZDMzM5RUUwMEQ0NjcwQiAvKiBTUUxUcmFu
c2FjdGlvbkJhY2tlbmRTeW5jLmNwcCAqLzsgfTsKLQkJRkVBRDdEODgxNkMzMzlFRTAwRDQ2NzBC
IC8qIFNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFQUQ3RDg2MTZDMzM5RUUwMEQ0NjcwQiAvKiBTUUxUcmFu
c2FjdGlvbkJhY2tlbmRTeW5jLmggKi87IH07CiAJCUZFQUY2NjU0MTY3OTcwMzIwMDYyRDBDNSAv
KiBEYXRhYmFzZVNlcnZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRkVBRjY2NTMxNjc5NzAwNzAwNjJEMEM1IC8qIERhdGFiYXNlU2VydmVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRkVCMjZEMjgx
NjdBOEYyQTAwRkREMjZCIC8qIERhdGFiYXNlU2VydmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFQjI2RDI3MTY3QThGMkEwMEZERDI2QiAvKiBE
YXRhYmFzZVNlcnZlci5jcHAgKi87IH07CiAJCUZFQkM1RjMxMTZCRDBDQzMwMDY1OUJEMyAvKiBE
YXRhYmFzZUJhc2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRkVCQzVGMkYxNkJEMENDMzAwNjU5QkQzIC8qIERhdGFiYXNlQmFzZS5jcHAgKi87IH07
CkBAIC0xMDc5OCw5ICsxMDc4MCw2IEBACiAJCTk3QkM2OUU1MTUwNUYwODEwMDFCNzRBQyAvKiBE
YXRhYmFzZUNvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RGF0YWJhc2VDb250ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdCQzY5
RTYxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQ29udGV4dC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBEYXRhYmFzZUNvbnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTdCQzY5RTcxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlRGV0YWlscy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRhYmFzZURldGFpbHMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJOTdCQzY5RTgxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFi
YXNlU3luYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEYXRhYmFz
ZVN5bmMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk5N0JDNjlFOTE1MDVGMDgx
MDAxQjc0QUMgLyogRGF0YWJhc2VTeW5jLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERhdGFiYXNlU3luYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk5N0JDNjlF
QTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VTeW5jLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBEYXRhYmFzZVN5bmMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5N0JD
NjlFQjE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUYXNrLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFiYXNlVGFzay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTk3QkM2OUVDMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRhc2suaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0YWJhc2VUYXNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3QkM2OUVEMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFz
ZVRocmVhZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEYXRhYmFz
ZVRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDgyNiw4ICsxMDgw
NSw2IEBACiAJCTk3QkM2QTA4MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnRDYWxsYmFj
ay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1FMU3RhdGVtZW50Q2FsbGJhY2suaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5N0JDNkEwOTE1MDVGMDgxMDAxQjc0QUMgLyog
U1FMU3RhdGVtZW50RXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTk3QkM2QTBBMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnRFcnJvckNhbGxi
YWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNr
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJOTdCQzZBMEIxNTA1RjA4MTAwMUI3
NEFDIC8qIFNRTFN0YXRlbWVudFN5bmMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU1FMU3RhdGVtZW50U3luYy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCTk3QkM2QTBDMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnRTeW5jLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFN0YXRlbWVudFN5bmMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdCQzZBMEQxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5z
YWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNRTFRyYW5z
YWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdCQzZBMEUxNTA1RjA4
MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNRTFRyYW5zYWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3
QkM2QTBGMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbi5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gU1FMVHJhbnNhY3Rpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMTA4MzksMTEgKzEwODE2LDYgQEAKIAkJOTdCQzZBMTUxNTA1RjA4MTAwMUI3NEFDIC8q
IFNRTFRyYW5zYWN0aW9uQ29vcmRpbmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk5N0JDNkExNjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25FcnJvckNh
bGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFRyYW5zYWN0aW9u
RXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5N0JDNkExNzE1
MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwotCQk5N0JDNkExODE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJh
bnNhY3Rpb25TeW5jLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNR
TFRyYW5zYWN0aW9uU3luYy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTk3QkM2
QTE5MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvblN5bmMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU1FMVHJhbnNhY3Rpb25TeW5jLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTk3QkM2QTFBMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlv
blN5bmMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNRTFRyYW5zYWN0aW9uU3luYy5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTk3QkM2QTFCMTUwNUYwODEwMDFCNzRBQyAv
KiBTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQk5N0JDNkExQzE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25TeW5j
Q2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNRTFRyYW5zYWN0aW9uU3luY0Nh
bGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdCQzg0ODExMjM2RkQ5
MzAwMEM2MTYxIC8qIFRleHREb2N1bWVudFBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBUZXh0RG9jdW1lbnRQYXJzZXIuY3BwOyBwYXRoID0gcGFyc2VyL1Rl
eHREb2N1bWVudFBhcnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3QkM4
NDgyMTIzNkZEOTMwMDBDNjE2MSAvKiBUZXh0RG9jdW1lbnRQYXJzZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gVGV4dERvY3VtZW50UGFyc2VyLmg7IHBhdGggPSBwYXJzZXIv
VGV4dERvY3VtZW50UGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3QkM4
NDlBMTIzNzBBNEIwMDBDNjE2MSAvKiBIVE1MSW5wdXRTdHJlYW0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gSFRNTElucHV0U3RyZWFtLmg7IHBhdGggPSBwYXJzZXIvSFRNTElu
cHV0U3RyZWFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMjQwMiw5ICsxMjM3
NCw2IEBACiAJCUI1MzIwRDY5MTIyQTI0RTkwMDJEMTQ0MCAvKiBGb250UGxhdGZvcm1EYXRhLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRQbGF0Zm9ybURhdGEuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjUzMjBENkExMjJBMjRFOTAwMkQxNDQwIC8qIEZv
bnRQbGF0Zm9ybURhdGFDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEZvbnRQbGF0Zm9ybURhdGFDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQjU0M0I4NTYxN0VCNzU4RjAwM0JFOTNBIC8qIFNWR1Byb3BlcnR5SW5mby5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdQcm9wZXJ0eUluZm8uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCNTVENUFBMjExOTEzMUZDMDBCQ0MzMTUgLyog
SlNTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1NRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCUI1NUQ1QUEzMTE5MTMxRkMwMEJDQzMxNSAvKiBKU1NRTFRyYW5zYWN0aW9u
U3luY0NhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
U1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQlCNTVENUFBNzExOTEzMjUwMDBCQ0MzMTUgLyogSlNTUUxUcmFuc2FjdGlvblN5bmNDdXN0
b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTUUxUcmFuc2Fj
dGlvblN5bmNDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCNTYyREI1
RTE3RDNDRDU2MDAxMEFGOTYgLyogSFRNTEVsZW1lbnRUeXBlSGVscGVycy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBIVE1MRWxlbWVudFR5cGVIZWxwZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUI1NjJEQjVGMTdEM0NENTYwMDEwQUY5NiAvKiBTVkdFbGVtZW50VHlwZUhlbHBlcnMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU1ZHRWxlbWVudFR5cGVIZWxwZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUI1NjU3NkU0MTdEQTU5OUYwMEE1NkJEQyAvKiBKU01haW5UaHJlYWRFeGVj
U3RhdGVJbnN0cnVtZW50YXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNNYWluVGhyZWFkRXhlY1N0YXRlSW5zdHJ1bWVudGF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0xMjQxMiwxMCArMTIzODEsNiBAQAogCQlCNTY1NzlCNDE4MjREMTJBMDBF
NzlGMjMgLyogUmVuZGVyQ2hpbGRJdGVyYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBSZW5kZXJDaGlsZEl0ZXJhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUI1N0NCNTJCMTgyQTM3RjYwMDc5QTY0NyAvKiBJbmxpbmVFbGVtZW50Qm94LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUVsZW1lbnRCb3guaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjU3Q0I1MkMxODJBM0VFRDAwNzlBNjQ3IC8qIElubGluZUVs
ZW1lbnRCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5saW5l
RWxlbWVudEJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUI1OENFQjY3MTE5
MTM2MDcwMDJBNjc5MCAvKiBKU0RhdGFiYXNlU3luYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0RhdGFiYXNlU3luYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQlCNThDRUI2ODExOTEzNjA3MDAyQTY3OTAgLyogSlNEYXRhYmFzZVN5bmMuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEYXRhYmFzZVN5bmMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwotCQlCNThDRUI2QjExOTEzNjFDMDAyQTY3OTAgLyogSlNTUUxU
cmFuc2FjdGlvblN5bmMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTUUxU
cmFuc2FjdGlvblN5bmMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQjU4Q0VCNkMx
MTkxMzYxQzAwMkE2NzkwIC8qIEpTU1FMVHJhbnNhY3Rpb25TeW5jLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1FMVHJhbnNhY3Rpb25TeW5jLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjU5NUZGNDYxODI0Q0VFMzAwRkY1MUNEIC8qIFJlbmRl
ckl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckl0ZXJh
dG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUI1OURENjk3MTE5MDI5RTUwMDdF
OTY4NCAvKiBKU0RhdGFiYXNlQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNEYXRhYmFzZUNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUI1OURENjk4MTE5MDI5RTUwMDdFOTY4NCAvKiBKU0RhdGFiYXNlQ2FsbGJhY2suY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEYXRhYmFzZUNhbGxiYWNrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE0Mjg2LDggKzE0MjUxLDYgQEAKIAkJRkUx
MTVGQTkxNjc5ODhDRDAwMjQ5MTM0IC8qIEFic3RyYWN0RGF0YWJhc2VTZXJ2ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWJzdHJhY3REYXRhYmFzZVNlcnZlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRTE2Q0ZDRjE2OUQxREVDMDBEM0EwQzcgLyogRGF0
YWJhc2VCYWNrZW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERh
dGFiYXNlQmFja2VuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZFMTZDRkQw
MTY5RDFERUMwMEQzQTBDNyAvKiBEYXRhYmFzZUJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRGF0YWJhc2VCYWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCUZFMTZDRkQxMTY5RDFERUMwMEQzQTBDNyAvKiBEYXRhYmFzZUJhY2tlbmRTeW5jLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFiYXNlQmFja2VuZFN5
bmMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlGRTE2Q0ZEMjE2OUQxREVDMDBE
M0EwQzcgLyogRGF0YWJhc2VCYWNrZW5kU3luYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBEYXRhYmFzZUJhY2tlbmRTeW5jLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUZFMzM3MUEwMTY3QzExRDQwMEVEQjc1MiAvKiBEYXRhYmFzZUJhc2ljVHlwZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0YWJhc2VCYXNpY1R5cGVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZFMzZGRDExMTZDNzgyNjQwMEY4ODdDMSAvKiBDaGFu
Z2VWZXJzaW9uRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDaGFuZ2VW
ZXJzaW9uRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRTM2RkQxMjE2Qzc4
MjY0MDBGODg3QzEgLyogU1FMVHJhbnNhY3Rpb25TdGF0ZU1hY2hpbmUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1FMVHJhbnNhY3Rpb25TdGF0ZU1hY2hpbmUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTQzMTMsOCArMTQyNzYsNiBAQAogCQlG
RThBNjc0NjE2Q0REMTlFMDA5MzBCRjggLyogU1FMU3RhdGVtZW50QmFja2VuZC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTUUxTdGF0ZW1lbnRCYWNrZW5kLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZFOUU4OUY5MTZFMkRDMDQwMEE5MDhGOCAvKiBPcmlnaW5M
b2NrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9yaWdpbkxvY2su
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRTlFODlGQTE2RTJEQzA0MDBBOTA4
RjggLyogT3JpZ2luTG9jay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPcmln
aW5Mb2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZFQUQ3RDg1MTZDMzM5RUUw
MEQ0NjcwQiAvKiBTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlGRUFEN0Q4NjE2QzMzOUVFMDBENDY3MEIgLyogU1FM
VHJhbnNhY3Rpb25CYWNrZW5kU3luYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTUUxUcmFuc2FjdGlvbkJhY2tlbmRTeW5jLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUZFQUY2NjUzMTY3OTcwMDcwMDYyRDBDNSAvKiBEYXRhYmFzZVNlcnZlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRhYmFzZVNlcnZlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlGRUIyNkQyNzE2N0E4RjJBMDBGREQyNkIgLyogRGF0YWJhc2VTZXJ2
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGF0YWJhc2VTZXJ2
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRUJDNUYyRjE2QkQwQ0MzMDA2
NTlCRDMgLyogRGF0YWJhc2VCYXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IERhdGFiYXNlQmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0x
ODM1OSw4ICsxODMyMCw2IEBACiAJCQkJOTdCQzY5RDcxNTA1RjA3NjAwMUI3NEFDIC8qIERhdGFi
YXNlQmFja2VuZEJhc2UuaCAqLywKIAkJCQlGRTZGNkFBRDE2OUUwNTc1MDBGQzMwQTIgLyogRGF0
YWJhc2VCYWNrZW5kQ29udGV4dC5jcHAgKi8sCiAJCQkJRkU2RjZBQUUxNjlFMDU3NTAwRkMzMEEy
IC8qIERhdGFiYXNlQmFja2VuZENvbnRleHQuaCAqLywKLQkJCQlGRTE2Q0ZEMTE2OUQxREVDMDBE
M0EwQzcgLyogRGF0YWJhc2VCYWNrZW5kU3luYy5jcHAgKi8sCi0JCQkJRkUxNkNGRDIxNjlEMURF
QzAwRDNBMEM3IC8qIERhdGFiYXNlQmFja2VuZFN5bmMuaCAqLywKIAkJCQlGRUJDNUYyRjE2QkQw
Q0MzMDA2NTlCRDMgLyogRGF0YWJhc2VCYXNlLmNwcCAqLywKIAkJCQlGRUJDNUYzMDE2QkQwQ0Mz
MDA2NTlCRDMgLyogRGF0YWJhc2VCYXNlLmggKi8sCiAJCQkJRkUzMzcxQTAxNjdDMTFENDAwRURC
NzUyIC8qIERhdGFiYXNlQmFzaWNUeXBlcy5oICovLApAQCAtMTgzNzUsOSArMTgzMzQsNiBAQAog
CQkJCTk3QkM2OUYxMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZU1hbmFnZXJDbGllbnQuaCAq
LywKIAkJCQlGRUIyNkQyNzE2N0E4RjJBMDBGREQyNkIgLyogRGF0YWJhc2VTZXJ2ZXIuY3BwICov
LAogCQkJCUZFQUY2NjUzMTY3OTcwMDcwMDYyRDBDNSAvKiBEYXRhYmFzZVNlcnZlci5oICovLAot
CQkJCTk3QkM2OUU4MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVN5bmMuY3BwICovLAotCQkJ
CTk3QkM2OUU5MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVN5bmMuaCAqLywKLQkJCQk5N0JD
NjlFQTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VTeW5jLmlkbCAqLywKIAkJCQk5N0JDNjlF
QjE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUYXNrLmNwcCAqLywKIAkJCQk5N0JDNjlFQzE1
MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUYXNrLmggKi8sCiAJCQkJOTdCQzY5RUQxNTA1RjA4
MTAwMUI3NEFDIC8qIERhdGFiYXNlVGhyZWFkLmNwcCAqLywKQEAgLTE4NDA5LDE1ICsxODM2NSwx
MSBAQAogCQkJCTk3QkM2QTA4MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnRDYWxsYmFj
ay5pZGwgKi8sCiAJCQkJOTdCQzZBMDkxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFN0YXRlbWVudEVy
cm9yQ2FsbGJhY2suaCAqLywKIAkJCQk5N0JDNkEwQTE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3Rh
dGVtZW50RXJyb3JDYWxsYmFjay5pZGwgKi8sCi0JCQkJOTdCQzZBMEIxNTA1RjA4MTAwMUI3NEFD
IC8qIFNRTFN0YXRlbWVudFN5bmMuY3BwICovLAotCQkJCTk3QkM2QTBDMTUwNUYwODEwMDFCNzRB
QyAvKiBTUUxTdGF0ZW1lbnRTeW5jLmggKi8sCiAJCQkJOTdCQzZBMEQxNTA1RjA4MTAwMUI3NEFD
IC8qIFNRTFRyYW5zYWN0aW9uLmNwcCAqLywKIAkJCQk5N0JDNkEwRTE1MDVGMDgxMDAxQjc0QUMg
LyogU1FMVHJhbnNhY3Rpb24uaCAqLywKIAkJCQk5N0JDNkEwRjE1MDVGMDgxMDAxQjc0QUMgLyog
U1FMVHJhbnNhY3Rpb24uaWRsICovLAogCQkJCUZFRTE4MTExMTZDMzE5RTgwMDA4NDg0OSAvKiBT
UUxUcmFuc2FjdGlvbkJhY2tlbmQuY3BwICovLAogCQkJCUZFRTE4MTEyMTZDMzE5RTgwMDA4NDg0
OSAvKiBTUUxUcmFuc2FjdGlvbkJhY2tlbmQuaCAqLywKLQkJCQlGRUFEN0Q4NTE2QzMzOUVFMDBE
NDY3MEIgLyogU1FMVHJhbnNhY3Rpb25CYWNrZW5kU3luYy5jcHAgKi8sCi0JCQkJRkVBRDdEODYx
NkMzMzlFRTAwRDQ2NzBCIC8qIFNRTFRyYW5zYWN0aW9uQmFja2VuZFN5bmMuaCAqLywKIAkJCQk5
N0JDNkExMDE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25DYWxsYmFjay5oICovLAog
CQkJCTk3QkM2QTExMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNhbGxiYWNrLmlk
bCAqLywKIAkJCQk5N0JDNkExMjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25DbGll
bnQuY3BwICovLApAQCAtMTg0MjksMTEgKzE4MzgxLDYgQEAKIAkJCQlGRTM2RkQxNDE2Qzc4MjY0
MDBGODg3QzEgLyogU1FMVHJhbnNhY3Rpb25TdGF0ZS5oICovLAogCQkJCUZFMzZGRDEyMTZDNzgy
NjQwMEY4ODdDMSAvKiBTUUxUcmFuc2FjdGlvblN0YXRlTWFjaGluZS5jcHAgKi8sCiAJCQkJRkUz
NkZEMTMxNkM3ODI2NDAwRjg4N0MxIC8qIFNRTFRyYW5zYWN0aW9uU3RhdGVNYWNoaW5lLmggKi8s
Ci0JCQkJOTdCQzZBMTgxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uU3luYy5jcHAg
Ki8sCi0JCQkJOTdCQzZBMTkxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uU3luYy5o
ICovLAotCQkJCTk3QkM2QTFBMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvblN5bmMu
aWRsICovLAotCQkJCTk3QkM2QTFCMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvblN5
bmNDYWxsYmFjay5oICovLAotCQkJCTk3QkM2QTFDMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFu
c2FjdGlvblN5bmNDYWxsYmFjay5pZGwgKi8sCiAJCQkpOwogCQkJcGF0aCA9IHdlYmRhdGFiYXNl
OwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTE5NTczLDggKzE5NTIwLDYgQEAKIAkJ
CQkxQUU4MkY4RTBDQUFGQTlEMDAyMjM3QUUgLyogSlNEYXRhYmFzZS5oICovLAogCQkJCUI1OURE
Njk4MTE5MDI5RTUwMDdFOTY4NCAvKiBKU0RhdGFiYXNlQ2FsbGJhY2suY3BwICovLAogCQkJCUI1
OURENjk3MTE5MDI5RTUwMDdFOTY4NCAvKiBKU0RhdGFiYXNlQ2FsbGJhY2suaCAqLywKLQkJCQlC
NThDRUI2ODExOTEzNjA3MDAyQTY3OTAgLyogSlNEYXRhYmFzZVN5bmMuY3BwICovLAotCQkJCUI1
OENFQjY3MTE5MTM2MDcwMDJBNjc5MCAvKiBKU0RhdGFiYXNlU3luYy5oICovLAogCQkJCTUxMUVG
MkE4MTdGMEZDNDgwMEU0RkExNiAvKiBKU0lEQkFueS5jcHAgKi8sCiAJCQkJQzU4NUE2NjUxMUQ0
RkIwNzAwNEMzRTRCIC8qIEpTSURCQW55LmggKi8sCiAJCQkJNTExRUYyQTkxN0YwRkM0ODAwRTRG
QTE2IC8qIEpTSURCQ3Vyc29yLmNwcCAqLywKQEAgLTE5NjE3LDEwICsxOTU2Miw2IEBACiAJCQkJ
QjU5REQ2OUIxMTkwMkE0MjAwN0U5Njg0IC8qIEpTU1FMVHJhbnNhY3Rpb25DYWxsYmFjay5oICov
LAogCQkJCUI1OURENkEwMTE5MDJBNTIwMDdFOTY4NCAvKiBKU1NRTFRyYW5zYWN0aW9uRXJyb3JD
YWxsYmFjay5jcHAgKi8sCiAJCQkJQjU5REQ2OUYxMTkwMkE1MjAwN0U5Njg0IC8qIEpTU1FMVHJh
bnNhY3Rpb25FcnJvckNhbGxiYWNrLmggKi8sCi0JCQkJQjU4Q0VCNkMxMTkxMzYxQzAwMkE2Nzkw
IC8qIEpTU1FMVHJhbnNhY3Rpb25TeW5jLmNwcCAqLywKLQkJCQlCNThDRUI2QjExOTEzNjFDMDAy
QTY3OTAgLyogSlNTUUxUcmFuc2FjdGlvblN5bmMuaCAqLywKLQkJCQlCNTVENUFBMzExOTEzMUZD
MDBCQ0MzMTUgLyogSlNTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5jcHAgKi8sCi0JCQkJQjU1
RDVBQTIxMTkxMzFGQzAwQkNDMzE1IC8qIEpTU1FMVHJhbnNhY3Rpb25TeW5jQ2FsbGJhY2suaCAq
LywKIAkJCQk1MUUzRjlENDBEQTA1RTFEMDAyNTA5MTEgLyogSlNTdG9yYWdlLmNwcCAqLywKIAkJ
CQk1MUUzRjlENTBEQTA1RTFEMDAyNTA5MTEgLyogSlNTdG9yYWdlLmggKi8sCiAJCQkJNTFFMEJB
RTgwREE1NUQ0QTAwQTlFNDE3IC8qIEpTU3RvcmFnZUV2ZW50LmNwcCAqLywKQEAgLTIxMTA1LDcg
KzIxMDQ2LDYgQEAKIAkJCQkwN0RDNUZEMzE3RDNFRUU5MDA5OUY4OTAgLyogSlNSVENTdGF0c1Jl
c3BvbnNlQ3VzdG9tLmNwcCAqLywKIAkJCQk1MURDRTgwMTBDQUM5RjFDMDA0ODgzNTggLyogSlNT
UUxSZXN1bHRTZXRSb3dMaXN0Q3VzdG9tLmNwcCAqLywKIAkJCQkxQUQyMzE2RDBDRDI2OUU3MDBD
MUYxOTQgLyogSlNTUUxUcmFuc2FjdGlvbkN1c3RvbS5jcHAgKi8sCi0JCQkJQjU1RDVBQTcxMTkx
MzI1MDAwQkNDMzE1IC8qIEpTU1FMVHJhbnNhY3Rpb25TeW5jQ3VzdG9tLmNwcCAqLywKIAkJCQk1
MUQwQzUxNTBEQUE5MEI3MDAzQjM4MzEgLyogSlNTdG9yYWdlQ3VzdG9tLmNwcCAqLywKIAkJCQlC
Qzk4QTI3QzBDMEM5OTUwMDA0QkVCRjcgLyogSlNTdHlsZVNoZWV0Q3VzdG9tLmNwcCAqLywKIAkJ
CQlBRDcyNkZFQzE2RDlGNEI5MDAzQTRFNkQgLyogSlNTdHlsZVNoZWV0Q3VzdG9tLmggKi8sCkBA
IC0yMzg2Nyw3ICsyMzgwNyw2IEBACiAJCQkJRkUxNkNGRDQxNjlEMURFRDAwRDNBMEM3IC8qIERh
dGFiYXNlQmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdCQzY5REIxNTA1RjA3NjAwMUI3
NEFDIC8qIERhdGFiYXNlQmFja2VuZEJhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFNkY2QUIw
MTY5RTA1NzUwMEZDMzBBMiAvKiBEYXRhYmFzZUJhY2tlbmRDb250ZXh0LmggaW4gSGVhZGVycyAq
LywKLQkJCQlGRTE2Q0ZENjE2OUQxREVEMDBEM0EwQzcgLyogRGF0YWJhc2VCYWNrZW5kU3luYy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJRkVCQzVGMzIxNkJEMENDMzAwNjU5QkQzIC8qIERhdGFiYXNl
QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkUzMzcxQTIxNjdDMTFENDAwRURCNzUyIC8qIERh
dGFiYXNlQmFzaWNUeXBlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdCQzZBMjUxNTA1RjA4MTAw
MUI3NEFDIC8qIERhdGFiYXNlQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLApAQCAtMjM4NzgsNyAr
MjM4MTcsNiBAQAogCQkJCTk3QkM2QTMzMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZU1hbmFn
ZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFQUY2NjU0MTY3OTcwMzIwMDYyRDBDNSAv
KiBEYXRhYmFzZVNlcnZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkVERUY4NDIxNjc5NzEwODAw
MEU0NDRBIC8qIERhdGFiYXNlU3RyYXRlZ3kuaCBpbiBIZWFkZXJzICovLAotCQkJCTk3QkM2QTJC
MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVN5bmMuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3
QkM2QTJFMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRhc2suaCBpbiBIZWFkZXJzICovLAog
CQkJCTk3QkM2QTMwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRocmVhZC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTdCQzZBMzIxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlVHJhY2tlci5o
IGluIEhlYWRlcnMgKi8sCkBAIC0yNDg4Myw3ICsyNDgyMSw2IEBACiAJCQkJRTEwQjkzN0MwQjcz
QzAwQTAwM0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQkxQUU4MkY5MDBDQUFGQTlEMDAyMjM3QUUgLyogSlNEYXRhYmFzZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQjU5REQ2OTkxMTkwMjlFNTAwN0U5Njg0IC8qIEpTRGF0YWJhc2VDYWxsYmFjay5o
IGluIEhlYWRlcnMgKi8sCi0JCQkJQjU4Q0VCNjkxMTkxMzYwNzAwMkE2NzkwIC8qIEpTRGF0YWJh
c2VTeW5jLmggaW4gSGVhZGVycyAqLywKIAkJCQlCRTYxMDM5RTE4QTlENjVBMDBERDUwRDcgLyog
SlNEYXRhQ3VlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0E4M0U1MDBEN0NFMUU5MDAzNDIxQTgg
LyogSlNEYXRhVHJhbnNmZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNjJBNDU4MTAxMTQ2NDcw
MERGRjNFRCAvKiBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmggaW4gSGVhZGVycyAqLywK
QEAgLTI1MTU3LDggKzI1MDk0LDYgQEAKIAkJCQlCQzgyNDMyQTBEMENFOEEyMDA0NjBDOEYgLyog
SlNTUUxUcmFuc2FjdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjU5REQ2OUQxMTkwMkE0MjAw
N0U5Njg0IC8qIEpTU1FMVHJhbnNhY3Rpb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QjU5REQ2QTExMTkwMkE1MjAwN0U5Njg0IC8qIEpTU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKLQkJCQlCNThDRUI2RDExOTEzNjFDMDAyQTY3OTAgLyogSlNTUUxU
cmFuc2FjdGlvblN5bmMuaCBpbiBIZWFkZXJzICovLAotCQkJCUI1NUQ1QUE0MTE5MTMxRkMwMEJD
QzMxNSAvKiBKU1NRTFRyYW5zYWN0aW9uU3luY0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk1MUUwQkFFQjBEQTU1RDRBMDBBOUU0MTcgLyogSlNTdG9yYWdlRXZlbnQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTg5RjYwQ0RBMTU4MDlENzYwMDc1RTE1NyAvKiBKU1N0b3JhZ2VJbmZvLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRkY1MDI2QTEwMkJBOTQzMDA2NkYzOUEgLyogSlNTdHlsZU1lZGlh
LmggaW4gSGVhZGVycyAqLywKQEAgLTI2MTk2LDE4ICsyNjEzMSwxNCBAQAogCQkJCUZFOEE2NzQ4
MTZDREQxOUUwMDkzMEJGOCAvKiBTUUxTdGF0ZW1lbnRCYWNrZW5kLmggaW4gSGVhZGVycyAqLywK
IAkJCQk5N0JDNkE0OTE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3RhdGVtZW50Q2FsbGJhY2suaCBp
biBIZWFkZXJzICovLAogCQkJCTk3QkM2QTRCMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1l
bnRFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKLQkJCQk5N0JDNkE0RTE1MDVGMDgxMDAx
Qjc0QUMgLyogU1FMU3RhdGVtZW50U3luYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdCQzZBNTAx
NTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlG
RUUxODExNDE2QzMxOUU4MDAwODQ4NDkgLyogU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmggaW4gSGVh
ZGVycyAqLywKLQkJCQlGRUFEN0Q4ODE2QzMzOUVFMDBENDY3MEIgLyogU1FMVHJhbnNhY3Rpb25C
YWNrZW5kU3luYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdCQzZBNTIxNTA1RjA4MTAwMUI3NEFD
IC8qIFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCTk3QkM2QTU1
MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJOTdCQzZBNTcxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uQ29vcmRpbmF0
b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3QkM2QTU4MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxU
cmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUZFMzZGRDE4MTZD
NzgyNjUwMEY4ODdDMSAvKiBTUUxUcmFuc2FjdGlvblN0YXRlLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlGRTM2RkQxNzE2Qzc4MjY1MDBGODg3QzEgLyogU1FMVHJhbnNhY3Rpb25TdGF0ZU1hY2hpbmUu
aCBpbiBIZWFkZXJzICovLAotCQkJCTk3QkM2QTVCMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFu
c2FjdGlvblN5bmMuaCBpbiBIZWFkZXJzICovLAotCQkJCTk3QkM2QTVEMTUwNUYwODEwMDFCNzRB
QyAvKiBTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUEy
RTZFNUEwQ0M1NTIxMzAwNEEyMDYyIC8qIFNRTFZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5
M0YxOTk2MzA4MjQ1RTU5MDAxRTlBQkMgLyogU1NMS2V5R2VuZXJhdG9yLmggaW4gSGVhZGVycyAq
LywKIAkJCQkyNkI5OTk5MTE4MDNCM0M5MDBEMDExMjEgLyogU3RhY2tBbGxvY2F0b3IuaCBpbiBI
ZWFkZXJzICovLApAQCAtMjc1ODEsMTMgKzI3NTEyLDExIEBACiAJCQkJRkUxNkNGRDMxNjlEMURF
RDAwRDNBMEM3IC8qIERhdGFiYXNlQmFja2VuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0JD
NjlEQTE1MDVGMDc2MDAxQjc0QUMgLyogRGF0YWJhc2VCYWNrZW5kQmFzZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlGRTZGNkFBRjE2OUUwNTc1MDBGQzMwQTIgLyogRGF0YWJhc2VCYWNrZW5kQ29u
dGV4dC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlGRTE2Q0ZENTE2OUQxREVEMDBEM0EwQzcgLyog
RGF0YWJhc2VCYWNrZW5kU3luYy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRUJDNUYzMTE2QkQw
Q0MzMDA2NTlCRDMgLyogRGF0YWJhc2VCYXNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTk3QkM2
QTI3MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZUNvbnRleHQuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJRkU0NTZGMTgxNjc3RDc0RTAwNUVEREY5IC8qIERhdGFiYXNlTWFuYWdlci5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlGRUIyNkQyODE2N0E4RjJBMDBGREQyNkIgLyogRGF0YWJhc2VTZXJ2
ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkVERUY4NDExNjc5NzEwODAwMEU0NDRBIC8qIERh
dGFiYXNlU3RyYXRlZ3kuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJOTdCQzZBMkExNTA1RjA4MTAw
MUI3NEFDIC8qIERhdGFiYXNlU3luYy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0JDNkEyRDE1
MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUYXNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTk3
QkM2QTJGMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRocmVhZC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk5N0JDNkEzMTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUcmFja2VyLmNwcCBp
biBTb3VyY2VzICovLApAQCAtMjgzNzQsNyArMjgzMDMsNiBAQAogCQkJCUUxMEI5M0MzMEI3M0My
OTEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNSZXNvbHZlci5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkxQUU4MkY4RjBDQUFGQTlEMDAyMjM3QUUgLyogSlNEYXRhYmFzZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlCNTlERDY5QTExOTAyOUU1MDA3RTk2ODQgLyogSlNEYXRhYmFzZUNhbGxiYWNr
LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUI1OENFQjZBMTE5MTM2MDcwMDJBNjc5MCAvKiBKU0Rh
dGFiYXNlU3luYy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCRTYxMDM5RDE4QTlENjUyMDBERDUw
RDcgLyogSlNEYXRhQ3VlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA3RkJERTJDMThGRUQxNzgw
MDFBN0NGRiAvKiBKU0RhdGFDdWVDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNBODNF
NEYwRDdDRTFFOTAwMzQyMUE4IC8qIEpTRGF0YVRyYW5zZmVyLmNwcCBpbiBTb3VyY2VzICovLApA
QCAtMjg3MjUsOSArMjg2NTMsNiBAQAogCQkJCUI1OURENjlFMTE5MDJBNDIwMDdFOTY4NCAvKiBK
U1NRTFRyYW5zYWN0aW9uQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFEMjMxNkUw
Q0QyNjlFNzAwQzFGMTk0IC8qIEpTU1FMVHJhbnNhY3Rpb25DdXN0b20uY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQjU5REQ2QTIxMTkwMkE1MjAwN0U5Njg0IC8qIEpTU1FMVHJhbnNhY3Rpb25FcnJv
ckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUI1OENFQjZFMTE5MTM2MUMwMDJBNjc5
MCAvKiBKU1NRTFRyYW5zYWN0aW9uU3luYy5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlCNTVENUFB
NTExOTEzMUZDMDBCQ0MzMTUgLyogSlNTUUxUcmFuc2FjdGlvblN5bmNDYWxsYmFjay5jcHAgaW4g
U291cmNlcyAqLywKLQkJCQlCNTVENUFBOTExOTEzMjUwMDBCQ0MzMTUgLyogSlNTUUxUcmFuc2Fj
dGlvblN5bmNDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFFM0Y5RDYwREEwNUUxRDAw
MjUwOTExIC8qIEpTU3RvcmFnZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MUQwQzUxNjBEQUE5
MEI3MDAzQjM4MzEgLyogSlNTdG9yYWdlQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUx
RTBCQUVBMERBNTVENEEwMEE5RTQxNyAvKiBKU1N0b3JhZ2VFdmVudC5jcHAgaW4gU291cmNlcyAq
LywKQEAgLTI5NjM5LDE1ICsyOTU2NCwxMiBAQAogCQkJCTk3QkM2QTQ0MTUwNUYwODEwMDFCNzRB
QyAvKiBTUUxSZXN1bHRTZXRSb3dMaXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTk3QkM2QTQ3
MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
RkU4QTY3NDcxNkNERDE5RTAwOTMwQkY4IC8qIFNRTFN0YXRlbWVudEJhY2tlbmQuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJOTdCQzZBNEQxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFN0YXRlbWVudFN5
bmMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdCQzZBNEYxNTA1RjA4MTAwMUI3NEFDIC8qIFNR
TFRyYW5zYWN0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJENEY5NkY1MUExRUNDMjQwMDk4
QkY4OCAvKiBUZXh0SW5kaWNhdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFRTE4MTEzMTZD
MzE5RTgwMDA4NDg0OSAvKiBTUUxUcmFuc2FjdGlvbkJhY2tlbmQuY3BwIGluIFNvdXJjZXMgKi8s
Ci0JCQkJRkVBRDdEODcxNkMzMzlFRTAwRDQ2NzBCIC8qIFNRTFRyYW5zYWN0aW9uQmFja2VuZFN5
bmMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdCQzZBNTQxNTA1RjA4MTAwMUI3NEFDIC8qIFNR
TFRyYW5zYWN0aW9uQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTk3QkM2QTU2MTUwNUYw
ODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNvb3JkaW5hdG9yLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUZFMzZGRDE2MTZDNzgyNjUwMEY4ODdDMSAvKiBTUUxUcmFuc2FjdGlvblN0YXRlTWFj
aGluZS5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk5N0JDNkE1QTE1MDVGMDgxMDAxQjc0QUMgLyog
U1FMVHJhbnNhY3Rpb25TeW5jLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBMkU2RTU5MENDNTUy
MTMwMDRBMjA2MiAvKiBTUUxWYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0NDc2NTMxQjEz
MzE3MDk5MDAwNkI3ODkgLyogU1NMS2V5R2VuZXJhdG9ySU9TLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTkzRjE5QUU2MDgyNDVFNTkwMDFFOUFCQyAvKiBTU0xLZXlHZW5lcmF0b3JNYWMuY3BwIGlu
IFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1NR
TFRyYW5zYWN0aW9uU3luY0N1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1NRTFRyYW5zYWN0aW9uU3luY0N1c3RvbS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDIxZGM1MWUzN2ZkOWUzNjBhYWFiNDcxOWYwOTE5NDgxYzdjYzUwZWIuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNTUUxUcmFuc2FjdGlvblN5bmNDdXN0b20uY3BwCisrKyAvZGV2L251bGwKQEAgLTEs
OTkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gIE5laXRoZXIgdGhlIG5hbWUg
b2YgQXBwbGUgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgotICogICAgIGl0cyBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQKLSAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKLSAq
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKFNRTF9EQVRBQkFTRSkKLQotI2lu
Y2x1ZGUgIkpTU1FMVHJhbnNhY3Rpb25TeW5jLmgiCi0KLSNpbmNsdWRlICJFeGNlcHRpb25Db2Rl
LmgiCi0jaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCi0jaW5jbHVkZSAiSlNTUUxSZXN1bHRTZXQu
aCIKLSNpbmNsdWRlICJTUUxSZXN1bHRTZXQuaCIKLSNpbmNsdWRlICJTUUxWYWx1ZS5oIgotCi11
c2luZyBuYW1lc3BhY2UgSlNDOwotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUpTVmFsdWUgSlNT
UUxUcmFuc2FjdGlvblN5bmM6OmV4ZWN1dGVTcWwoRXhlY1N0YXRlKiBleGVjKQotewotICAgIGlm
ICghZXhlYy0+YXJndW1lbnRDb3VudCgpKSB7Ci0gICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVj
LCBTWU5UQVhfRVJSKTsKLSAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci0gICAgfQotCi0g
ICAgU3RyaW5nIHNxbFN0YXRlbWVudCA9IGV4ZWMtPnVuY2hlY2tlZEFyZ3VtZW50KDApLnRvU3Ry
aW5nKGV4ZWMpLT52YWx1ZShleGVjKTsKLSAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCi0g
ICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotCi0gICAgLy8gTm93IGFzc2VtYmxlIHRoZSBs
aXN0IG9mIFNRTCBhcmd1bWVudHMKLSAgICBWZWN0b3I8U1FMVmFsdWU+IHNxbFZhbHVlczsKLSAg
ICBpZiAoIWV4ZWMtPmFyZ3VtZW50KDEpLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKLSAgICAgICAg
SlNPYmplY3QqIG9iamVjdCA9IGV4ZWMtPmFyZ3VtZW50KDEpLmdldE9iamVjdCgpOwotICAgICAg
ICBpZiAoIW9iamVjdCkgewotICAgICAgICAgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIFRZUEVf
TUlTTUFUQ0hfRVJSKTsKLSAgICAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgICAg
ICB9Ci0KLSAgICAgICAgSlNWYWx1ZSBsZW5ndGhWYWx1ZSA9IG9iamVjdC0+Z2V0KGV4ZWMsIGV4
ZWMtPnByb3BlcnR5TmFtZXMoKS5sZW5ndGgpOwotICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0
aW9uKCkpCi0gICAgICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICAgICAgdW5zaWdu
ZWQgbGVuZ3RoID0gbGVuZ3RoVmFsdWUudG9VSW50MzIoZXhlYyk7Ci0gICAgICAgIGlmIChleGVj
LT5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotCi0g
ICAgICAgIGZvciAodW5zaWduZWQgaSA9IDAgOyBpIDwgbGVuZ3RoOyArK2kpIHsKLSAgICAgICAg
ICAgIEpTVmFsdWUgdmFsdWUgPSBvYmplY3QtPmdldChleGVjLCBpKTsKLSAgICAgICAgICAgIGlm
IChleGVjLT5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgICAgICAgICByZXR1cm4ganNVbmRlZmlu
ZWQoKTsKLQotICAgICAgICAgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpCi0gICAg
ICAgICAgICAgICAgc3FsVmFsdWVzLmFwcGVuZChTUUxWYWx1ZSgpKTsKLSAgICAgICAgICAgIGVs
c2UgaWYgKHZhbHVlLmlzTnVtYmVyKCkpCi0gICAgICAgICAgICAgICAgc3FsVmFsdWVzLmFwcGVu
ZCh2YWx1ZS5hc051bWJlcigpKTsKLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAg
IC8vIENvbnZlcnQgdGhlIGFyZ3VtZW50IHRvIGEgc3RyaW5nIGFuZCBhcHBlbmQgaXQKLSAgICAg
ICAgICAgICAgICBzcWxWYWx1ZXMuYXBwZW5kKHZhbHVlLnRvU3RyaW5nKGV4ZWMpLT52YWx1ZShl
eGVjKSk7Ci0gICAgICAgICAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQotICAgICAg
ICAgICAgICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgfQotICAgIH0KLQotICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwotICAgIEpTVmFsdWUgcmVz
dWx0ID0gdG9KUyhleGVjLCBnbG9iYWxPYmplY3QoKSwgV1RGOjpnZXRQdHIobV9pbXBsLT5leGVj
dXRlU1FMKHNxbFN0YXRlbWVudCwgc3FsVmFsdWVzLCBlYykpKTsKLSAgICBzZXRET01FeGNlcHRp
b24oZXhlYywgZWMpOwotCi0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFNRTF9EQVRBQkFTRSkK
</data>
<flag name="review"
          id="269299"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>