<?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>8964</bug_id>
          
          <creation_ts>2006-05-17 14:45:41 -0700</creation_ts>
          <short_desc>Autogenerate more HTML classes</short_desc>
          <delta_ts>2006-05-18 01:16:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></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>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>42761</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2006-05-17 14:45:41 -0700</bug_when>
    <thetext>I&apos;ll upload a patch that autogenerates some simple HTML classes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42762</commentid>
    <comment_count>1</comment_count>
      <attachid>8375</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2006-05-17 14:49:11 -0700</bug_when>
    <thetext>Created attachment 8375
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42786</commentid>
    <comment_count>2</comment_count>
      <attachid>8375</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-05-17 21:52:16 -0700</bug_when>
    <thetext>Comment on attachment 8375
Patch

+    return DeprecatedString::number(KURL(href().deprecatedString()).port());

Could be String::number.

Looks good. r=me</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8375</attachid>
            <date>2006-05-17 14:49:11 -0700</date>
            <delta_ts>2006-05-17 21:52:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>autogen-html.txt</filename>
            <type>text/plain</type>
            <size>82060</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">SW5kZXg6IGJpbmRpbmdzL2pzL0pTSFRNTEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gYmluZGluZ3MvanMvSlNIVE1MRWxlbWVudFdyYXBwZXJGYWN0b3J5LmNwcAkocmV2
aXNpb24gMTQ0NTApCisrKyBiaW5kaW5ncy9qcy9KU0hUTUxFbGVtZW50V3JhcHBlckZhY3Rvcnku
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOSwyMSArMTksMzcgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJKU0hUTUxFbGVtZW50V3JhcHBlckZhY3RvcnkuaCIKIAorI2luY2x1ZGUg
IkhUTUxBbmNob3JFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTEFwcGxldEVsZW1lbnQuaCIKICNp
bmNsdWRlICJIVE1MQmFzZUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MQ2FudmFzRWxlbWVudC5o
IgorI2luY2x1ZGUgIkhUTUxEaXZFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTERpcmVjdG9yeUVs
ZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MRExpc3RFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEhl
YWRFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTEh0bWxFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRN
TExpbmtFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE1ldGFFbGVtZW50LmgiCisjaW5jbHVkZSAi
SFRNTE9MaXN0RWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxTdHlsZUVsZW1lbnQuaCIKICNpbmNs
dWRlICJIVE1MVGl0bGVFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTFVMaXN0RWxlbWVudC5oIgog
I2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIkpTSFRNTEFuY2hvckVsZW1lbnQuaCIK
KyNpbmNsdWRlICJKU0hUTUxBcHBsZXRFbGVtZW50LmgiCiAjaW5jbHVkZSAiSlNIVE1MQmFzZUVs
ZW1lbnQuaCIKICNpbmNsdWRlICJKU0hUTUxDYW52YXNFbGVtZW50LmgiCisjaW5jbHVkZSAiSlNI
VE1MRGlyZWN0b3J5RWxlbWVudC5oIgorI2luY2x1ZGUgIkpTSFRNTERpdkVsZW1lbnQuaCIKKyNp
bmNsdWRlICJKU0hUTUxETGlzdEVsZW1lbnQuaCIKICNpbmNsdWRlICJKU0hUTUxIZWFkRWxlbWVu
dC5oIgorI2luY2x1ZGUgIkpTSFRNTEh0bWxFbGVtZW50LmgiCiAjaW5jbHVkZSAiSlNIVE1MTGlu
a0VsZW1lbnQuaCIKICNpbmNsdWRlICJKU0hUTUxNZXRhRWxlbWVudC5oIgorI2luY2x1ZGUgIkpT
SFRNTE9MaXN0RWxlbWVudC5oIgogI2luY2x1ZGUgIkpTSFRNTFN0eWxlRWxlbWVudC5oIgogI2lu
Y2x1ZGUgIkpTSFRNTFRpdGxlRWxlbWVudC5oIgorI2luY2x1ZGUgIkpTSFRNTFVMaXN0RWxlbWVu
dC5oIgogI2luY2x1ZGUgImtqc19odG1sLmgiCiAKIHVzaW5nIG5hbWVzcGFjZSBLSlM7CkBAIC00
NCw2ICs2MCwxNiBAQAogCiB0eXBlZGVmIERPTU5vZGUqICgqQ3JlYXRlSFRNTEVsZW1lbnRXcmFw
cGVyRnVuY3Rpb24pKEV4ZWNTdGF0ZSosIFBhc3NSZWZQdHI8SFRNTEVsZW1lbnQ+KTsKIAorc3Rh
dGljIERPTU5vZGUqIGNyZWF0ZUFuY2hvcldyYXBwZXIoRXhlY1N0YXRlKiBleGVjLCBQYXNzUmVm
UHRyPEhUTUxFbGVtZW50PiBlbGVtZW50KQoreworICAgIHJldHVybiBuZXcgSlNIVE1MQW5jaG9y
RWxlbWVudChleGVjLCBzdGF0aWNfY2FzdDxIVE1MQW5jaG9yRWxlbWVudCo+KGVsZW1lbnQuZ2V0
KCkpKTsKK30KKworc3RhdGljIERPTU5vZGUqIGNyZWF0ZUFwcGxldFdyYXBwZXIoRXhlY1N0YXRl
KiBleGVjLCBQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiBlbGVtZW50KQoreworICAgIHJldHVybiBu
ZXcgSlNIVE1MQXBwbGV0RWxlbWVudChleGVjLCBzdGF0aWNfY2FzdDxIVE1MQXBwbGV0RWxlbWVu
dCo+KGVsZW1lbnQuZ2V0KCkpKTsKK30KKwogc3RhdGljIERPTU5vZGUqIGNyZWF0ZUJhc2VXcmFw
cGVyKEV4ZWNTdGF0ZSogZXhlYywgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gZWxlbWVudCkKIHsK
ICAgICByZXR1cm4gbmV3IEpTSFRNTEJhc2VFbGVtZW50KGV4ZWMsIHN0YXRpY19jYXN0PEhUTUxC
YXNlRWxlbWVudCo+KGVsZW1lbnQuZ2V0KCkpKTsKQEAgLTU0LDExICs4MCwzMSBAQAogICAgIHJl
dHVybiBuZXcgSlNIVE1MQ2FudmFzRWxlbWVudChleGVjLCBzdGF0aWNfY2FzdDxIVE1MQ2FudmFz
RWxlbWVudCo+KGVsZW1lbnQuZ2V0KCkpKTsKIH0KIAorc3RhdGljIERPTU5vZGUqIGNyZWF0ZURp
dldyYXBwZXIoRXhlY1N0YXRlKiBleGVjLCBQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiBlbGVtZW50
KQoreworICAgIHJldHVybiBuZXcgSlNIVE1MRGl2RWxlbWVudChleGVjLCBzdGF0aWNfY2FzdDxI
VE1MRGl2RWxlbWVudCo+KGVsZW1lbnQuZ2V0KCkpKTsKK30KKworc3RhdGljIERPTU5vZGUqIGNy
ZWF0ZURpcmVjdG9yeVdyYXBwZXIoRXhlY1N0YXRlKiBleGVjLCBQYXNzUmVmUHRyPEhUTUxFbGVt
ZW50PiBlbGVtZW50KQoreworICAgIHJldHVybiBuZXcgSlNIVE1MRGlyZWN0b3J5RWxlbWVudChl
eGVjLCBzdGF0aWNfY2FzdDxIVE1MRGlyZWN0b3J5RWxlbWVudCo+KGVsZW1lbnQuZ2V0KCkpKTsK
K30KKworc3RhdGljIERPTU5vZGUqIGNyZWF0ZURMaXN0V3JhcHBlcihFeGVjU3RhdGUqIGV4ZWMs
IFBhc3NSZWZQdHI8SFRNTEVsZW1lbnQ+IGVsZW1lbnQpCit7CisgICAgcmV0dXJuIG5ldyBKU0hU
TUxETGlzdEVsZW1lbnQoZXhlYywgc3RhdGljX2Nhc3Q8SFRNTERMaXN0RWxlbWVudCo+KGVsZW1l
bnQuZ2V0KCkpKTsKK30KKwogc3RhdGljIERPTU5vZGUqIGNyZWF0ZUhlYWRXcmFwcGVyKEV4ZWNT
dGF0ZSogZXhlYywgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gZWxlbWVudCkKIHsKICAgICByZXR1
cm4gbmV3IEpTSFRNTEhlYWRFbGVtZW50KGV4ZWMsIHN0YXRpY19jYXN0PEhUTUxIZWFkRWxlbWVu
dCo+KGVsZW1lbnQuZ2V0KCkpKTsKIH0KIAorc3RhdGljIERPTU5vZGUqIGNyZWF0ZUh0bWxXcmFw
cGVyKEV4ZWNTdGF0ZSogZXhlYywgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gZWxlbWVudCkKK3sK
KyAgICByZXR1cm4gbmV3IEpTSFRNTEh0bWxFbGVtZW50KGV4ZWMsIHN0YXRpY19jYXN0PEhUTUxI
dG1sRWxlbWVudCo+KGVsZW1lbnQuZ2V0KCkpKTsKK30KKwogc3RhdGljIERPTU5vZGUqIGNyZWF0
ZUxpbmtXcmFwcGVyKEV4ZWNTdGF0ZSogZXhlYywgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gZWxl
bWVudCkKIHsKICAgICByZXR1cm4gbmV3IEpTSFRNTExpbmtFbGVtZW50KGV4ZWMsIHN0YXRpY19j
YXN0PEhUTUxMaW5rRWxlbWVudCo+KGVsZW1lbnQuZ2V0KCkpKTsKQEAgLTY5LDYgKzExNSwxMSBA
QAogICAgIHJldHVybiBuZXcgSlNIVE1MTWV0YUVsZW1lbnQoZXhlYywgc3RhdGljX2Nhc3Q8SFRN
TE1ldGFFbGVtZW50Kj4oZWxlbWVudC5nZXQoKSkpOwogfQogCitzdGF0aWMgRE9NTm9kZSogY3Jl
YXRlT0xpc3RXcmFwcGVyKEV4ZWNTdGF0ZSogZXhlYywgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4g
ZWxlbWVudCkKK3sKKyAgICByZXR1cm4gbmV3IEpTSFRNTE9MaXN0RWxlbWVudChleGVjLCBzdGF0
aWNfY2FzdDxIVE1MT0xpc3RFbGVtZW50Kj4oZWxlbWVudC5nZXQoKSkpOworfQorCiBzdGF0aWMg
RE9NTm9kZSogY3JlYXRlU3R5bGVXcmFwcGVyKEV4ZWNTdGF0ZSogZXhlYywgUGFzc1JlZlB0cjxI
VE1MRWxlbWVudD4gZWxlbWVudCkKIHsKICAgICByZXR1cm4gbmV3IEpTSFRNTFN0eWxlRWxlbWVu
dChleGVjLCBzdGF0aWNfY2FzdDxIVE1MU3R5bGVFbGVtZW50Kj4oZWxlbWVudC5nZXQoKSkpOwpA
QCAtNzksMTcgKzEzMCwzMCBAQAogICAgIHJldHVybiBuZXcgSlNIVE1MVGl0bGVFbGVtZW50KGV4
ZWMsIHN0YXRpY19jYXN0PEhUTUxUaXRsZUVsZW1lbnQqPihlbGVtZW50LmdldCgpKSk7CiB9CiAK
K3N0YXRpYyBET01Ob2RlKiBjcmVhdGVVTGlzdFdyYXBwZXIoRXhlY1N0YXRlKiBleGVjLCBQYXNz
UmVmUHRyPEhUTUxFbGVtZW50PiBlbGVtZW50KQoreworICAgIHJldHVybiBuZXcgSlNIVE1MVUxp
c3RFbGVtZW50KGV4ZWMsIHN0YXRpY19jYXN0PEhUTUxVTGlzdEVsZW1lbnQqPihlbGVtZW50Lmdl
dCgpKSk7Cit9CisKIERPTU5vZGUqIGNyZWF0ZUpTV3JhcHBlcihFeGVjU3RhdGUqIGV4ZWMsIFBh
c3NSZWZQdHI8SFRNTEVsZW1lbnQ+IGVsZW1lbnQpCiB7CiAgICAgc3RhdGljIEhhc2hNYXA8V2Vi
Q29yZTo6QXRvbWljU3RyaW5nSW1wbCosIENyZWF0ZUhUTUxFbGVtZW50V3JhcHBlckZ1bmN0aW9u
PiBtYXA7CiAgICAgaWYgKG1hcC5pc0VtcHR5KCkpIHsKKyAgICAgICAgbWFwLnNldChhVGFnLmxv
Y2FsTmFtZSgpLmltcGwoKSwgY3JlYXRlQW5jaG9yV3JhcHBlcik7CisgICAgICAgIG1hcC5zZXQo
YXBwbGV0VGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgY3JlYXRlQXBwbGV0V3JhcHBlcik7CiAgICAg
ICAgIG1hcC5zZXQoYmFzZVRhZy5sb2NhbE5hbWUoKS5pbXBsKCksIGNyZWF0ZUJhc2VXcmFwcGVy
KTsKICAgICAgICAgbWFwLnNldChjYW52YXNUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCBjcmVhdGVD
YW52YXNXcmFwcGVyKTsKKyAgICAgICAgbWFwLnNldChkaXJUYWcubG9jYWxOYW1lKCkuaW1wbCgp
LCBjcmVhdGVEaXJlY3RvcnlXcmFwcGVyKTsKKyAgICAgICAgbWFwLnNldChkaXZUYWcubG9jYWxO
YW1lKCkuaW1wbCgpLCBjcmVhdGVEaXZXcmFwcGVyKTsKKyAgICAgICAgbWFwLnNldChkbFRhZy5s
b2NhbE5hbWUoKS5pbXBsKCksIGNyZWF0ZURMaXN0V3JhcHBlcik7CiAgICAgICAgIG1hcC5zZXQo
aGVhZFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksIGNyZWF0ZUhlYWRXcmFwcGVyKTsKKyAgICAgICAg
bWFwLnNldChodG1sVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgY3JlYXRlSHRtbFdyYXBwZXIpOwog
ICAgICAgICBtYXAuc2V0KGxpbmtUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCBjcmVhdGVMaW5rV3Jh
cHBlcik7CiAgICAgICAgIG1hcC5zZXQobWV0YVRhZy5sb2NhbE5hbWUoKS5pbXBsKCksIGNyZWF0
ZU1ldGFXcmFwcGVyKTsKKyAgICAgICAgbWFwLnNldChvbFRhZy5sb2NhbE5hbWUoKS5pbXBsKCks
IGNyZWF0ZU9MaXN0V3JhcHBlcik7CiAgICAgICAgIG1hcC5zZXQoc3R5bGVUYWcubG9jYWxOYW1l
KCkuaW1wbCgpLCBjcmVhdGVTdHlsZVdyYXBwZXIpOwogICAgICAgICBtYXAuc2V0KHRpdGxlVGFn
LmxvY2FsTmFtZSgpLmltcGwoKSwgY3JlYXRlVGl0bGVXcmFwcGVyKTsKKyAgICAgICAgbWFwLnNl
dCh1bFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksIGNyZWF0ZVVMaXN0V3JhcHBlcik7CiAgICAgfQog
ICAgIENyZWF0ZUhUTUxFbGVtZW50V3JhcHBlckZ1bmN0aW9uIGYgPSBtYXAuZ2V0KGVsZW1lbnQt
PmxvY2FsTmFtZSgpLmltcGwoKSk7CiAgICAgaWYgKGYpCkluZGV4OiBiaW5kaW5ncy9qcy9ranNf
aHRtbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gYmluZGluZ3MvanMva2pzX2h0bWwuY3BwCShyZXZpc2lv
biAxNDQ1MCkKKysrIGJpbmRpbmdzL2pzL2tqc19odG1sLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjUsNyArMjUsNiBAQAogI2luY2x1ZGUgIkRvY0xvYWRlci5oIgogI2luY2x1ZGUgIkV2ZW50TmFt
ZXMuaCIKICNpbmNsdWRlICJGcmFtZS5oIgotI2luY2x1ZGUgIkhUTUxBbmNob3JFbGVtZW50Lmgi
CiAjaW5jbHVkZSAiSFRNTEFwcGxldEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MQXJlYUVsZW1l
bnQuaCIKICNpbmNsdWRlICJIVE1MQmFzZUVsZW1lbnQuaCIKQEAgLTM0LDkgKzMzLDYgQEAKICNp
bmNsdWRlICJIVE1MQm9keUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MQlJFbGVtZW50LmgiCiAj
aW5jbHVkZSAiSFRNTEJ1dHRvbkVsZW1lbnQuaCIKLSNpbmNsdWRlICJIVE1MRGlyZWN0b3J5RWxl
bWVudC5oIgotI2luY2x1ZGUgIkhUTUxEaXZFbGVtZW50LmgiCi0jaW5jbHVkZSAiSFRNTERMaXN0
RWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxEb2N1bWVudC5oIgogI2luY2x1ZGUgIkhUTUxFbWJl
ZEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRmllbGRTZXRFbGVtZW50LmgiCkBAIC02MCw3ICs1
Niw2IEBACiAjaW5jbHVkZSAiSFRNTE1vZEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMu
aCIKICNpbmNsdWRlICJIVE1MT2JqZWN0RWxlbWVudC5oIgotI2luY2x1ZGUgIkhUTUxPTGlzdEVs
ZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MT3B0R3JvdXBFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRN
TE9wdGlvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MT3B0aW9uc0NvbGxlY3Rpb24uaCIKQEAg
LTc5LDcgKzc0LDYgQEAKICNpbmNsdWRlICJIVE1MVGV4dEFyZWFFbGVtZW50LmgiCiAjaW5jbHVk
ZSAiSFRNTFRpdGxlRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxRdW90ZUVsZW1lbnQuaCIKLSNp
bmNsdWRlICJIVE1MVUxpc3RFbGVtZW50LmgiCiAjaW5jbHVkZSAiTmFtZU5vZGVMaXN0LmgiCiAj
aW5jbHVkZSAiUmVuZGVyTGF5ZXIuaCIKICNpbmNsdWRlICJUZXh0LmgiCkBAIC00NTksOCArNDUz
LDYgQEAKIAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1jb25zdCBDbGFzc0luZm8gSlNIVE1MRWxl
bWVudDo6YV9pbmZvID0geyAiSFRNTEFuY2hvckVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5m
bywgJkhUTUxBbmNob3JFbGVtZW50VGFibGUsIDAgfTsKLWNvbnN0IENsYXNzSW5mbyBKU0hUTUxF
bGVtZW50OjphcHBsZXRfaW5mbyA9IHsgIkhUTUxBcHBsZXRFbGVtZW50IiwgJkpTSFRNTEVsZW1l
bnQ6OmluZm8sICZIVE1MQXBwbGV0RWxlbWVudFRhYmxlLCAwIH07CiBjb25zdCBDbGFzc0luZm8g
SlNIVE1MRWxlbWVudDo6YXJlYV9pbmZvID0geyAiSFRNTEFyZWFFbGVtZW50IiwgJkpTSFRNTEVs
ZW1lbnQ6OmluZm8sICZIVE1MQXJlYUVsZW1lbnRUYWJsZSwgMCB9OwogY29uc3QgQ2xhc3NJbmZv
IEpTSFRNTEVsZW1lbnQ6OmJhc2VGb250X2luZm8gPSB7ICJIVE1MQmFzZUZvbnRFbGVtZW50Iiwg
JkpTSFRNTEVsZW1lbnQ6OmluZm8sICZIVE1MQmFzZUZvbnRFbGVtZW50VGFibGUsIDAgfTsKIGNv
bnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50OjpibG9ja1F1b3RlX2luZm8gPSB7ICJIVE1MQmxv
Y2tRdW90ZUVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxCbG9ja1F1b3RlRWxl
bWVudFRhYmxlLCAwIH07CkBAIC00NjksOSArNDYxLDYgQEAKIGNvbnN0IENsYXNzSW5mbyBKU0hU
TUxFbGVtZW50OjpidXR0b25faW5mbyA9IHsgIkhUTUxCdXR0b25FbGVtZW50IiwgJkpTSFRNTEVs
ZW1lbnQ6OmluZm8sICZIVE1MQnV0dG9uRWxlbWVudFRhYmxlLCAwIH07CiBjb25zdCBDbGFzc0lu
Zm8gSlNIVE1MRWxlbWVudDo6Y2FwdGlvbl9pbmZvID0geyAiSFRNTFRhYmxlQ2FwdGlvbkVsZW1l
bnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxUYWJsZUNhcHRpb25FbGVtZW50VGFibGUs
IDAgfTsKIGNvbnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50Ojpjb2xfaW5mbyA9IHsgIkhUTUxU
YWJsZUNvbEVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxUYWJsZUNvbEVsZW1l
bnRUYWJsZSwgMCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTSFRNTEVsZW1lbnQ6OmRpcl9pbmZvID0g
eyAiSFRNTERpcmVjdG9yeUVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxEaXJl
Y3RvcnlFbGVtZW50VGFibGUsIDAgfTsKLWNvbnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50Ojpk
aXZfaW5mbyA9IHsgIkhUTUxEaXZFbGVtZW50IiwgJkpTSFRNTEVsZW1lbnQ6OmluZm8sICZIVE1M
RGl2RWxlbWVudFRhYmxlLCAwIH07Ci1jb25zdCBDbGFzc0luZm8gSlNIVE1MRWxlbWVudDo6ZGxf
aW5mbyA9IHsgIkhUTUxETGlzdEVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxE
TGlzdEVsZW1lbnRUYWJsZSwgMCB9OwogY29uc3QgQ2xhc3NJbmZvIEpTSFRNTEVsZW1lbnQ6OmVt
YmVkX2luZm8gPSB7ICJIVE1MRW1iZWRFbGVtZW50IiwgJkpTSFRNTEVsZW1lbnQ6OmluZm8sICZI
VE1MRW1iZWRFbGVtZW50VGFibGUsIDAgfTsKIGNvbnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50
OjpmaWVsZFNldF9pbmZvID0geyAiSFRNTEZpZWxkU2V0RWxlbWVudCIsICZKU0hUTUxFbGVtZW50
OjppbmZvLCAmSFRNTEZpZWxkU2V0RWxlbWVudFRhYmxlLCAwIH07CiBjb25zdCBDbGFzc0luZm8g
SlNIVE1MRWxlbWVudDo6Zm9udF9pbmZvID0geyAiSFRNTEZvbnRFbGVtZW50IiwgJkpTSFRNTEVs
ZW1lbnQ6OmluZm8sICZIVE1MRm9udEVsZW1lbnRUYWJsZSwgMCB9OwpAQCAtNDgwLDcgKzQ2OSw2
IEBACiBjb25zdCBDbGFzc0luZm8gSlNIVE1MRWxlbWVudDo6ZnJhbWVfaW5mbyA9IHsgIkhUTUxG
cmFtZUVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxGcmFtZUVsZW1lbnRUYWJs
ZSwgMCB9OwogY29uc3QgQ2xhc3NJbmZvIEpTSFRNTEVsZW1lbnQ6OmhlYWRpbmdfaW5mbyA9IHsg
IkhUTUxIZWFkaW5nRWxlbWVudCIsICZKU0hUTUxFbGVtZW50OjppbmZvLCAmSFRNTEhlYWRpbmdF
bGVtZW50VGFibGUsIDAgfTsKIGNvbnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50Ojpocl9pbmZv
ID0geyAiSFRNTEhSRWxlbWVudCIsICZKU0hUTUxFbGVtZW50OjppbmZvLCAmSFRNTEhSRWxlbWVu
dFRhYmxlLCAwIH07Ci1jb25zdCBDbGFzc0luZm8gSlNIVE1MRWxlbWVudDo6aHRtbF9pbmZvID0g
eyAiSFRNTEh0bWxFbGVtZW50IiwgJkpTSFRNTEVsZW1lbnQ6OmluZm8sICZIVE1MSHRtbEVsZW1l
bnRUYWJsZSwgMCB9OwogY29uc3QgQ2xhc3NJbmZvIEpTSFRNTEVsZW1lbnQ6OmlGcmFtZV9pbmZv
ID0geyAiSFRNTElGcmFtZUVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxJRnJh
bWVFbGVtZW50VGFibGUsIDAgfTsKIGNvbnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50OjppbWdf
aW5mbyA9IHsgIkhUTUxJbWFnZUVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxJ
bWFnZUVsZW1lbnRUYWJsZSwgMCB9OwogY29uc3QgQ2xhc3NJbmZvIEpTSFRNTEVsZW1lbnQ6Omlu
Zm8gPSB7ICJIVE1MRWxlbWVudCIsICZKU0VsZW1lbnQ6OmluZm8sICZIVE1MRWxlbWVudFRhYmxl
LCAwIH07CkBAIC00OTQsNyArNDgyLDYgQEAKIGNvbnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50
OjptZW51X2luZm8gPSB7ICJIVE1MTWVudUVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywg
JkhUTUxNZW51RWxlbWVudFRhYmxlLCAwIH07CiBjb25zdCBDbGFzc0luZm8gSlNIVE1MRWxlbWVu
dDo6bW9kX2luZm8gPSB7ICJIVE1MTW9kRWxlbWVudCIsICZKU0hUTUxFbGVtZW50OjppbmZvLCAm
SFRNTE1vZEVsZW1lbnRUYWJsZSwgMCB9OwogY29uc3QgQ2xhc3NJbmZvIEpTSFRNTEVsZW1lbnQ6
Om9iamVjdF9pbmZvID0geyAiSFRNTE9iamVjdEVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5m
bywgJkhUTUxPYmplY3RFbGVtZW50VGFibGUsIDAgfTsKLWNvbnN0IENsYXNzSW5mbyBKU0hUTUxF
bGVtZW50OjpvbF9pbmZvID0geyAiSFRNTE9MaXN0RWxlbWVudCIsICZKU0hUTUxFbGVtZW50Ojpp
bmZvLCAmSFRNTE9MaXN0RWxlbWVudFRhYmxlLCAwIH07CiBjb25zdCBDbGFzc0luZm8gSlNIVE1M
RWxlbWVudDo6b3B0R3JvdXBfaW5mbyA9IHsgIkhUTUxPcHRHcm91cEVsZW1lbnQiLCAmSlNIVE1M
RWxlbWVudDo6aW5mbywgJkhUTUxPcHRHcm91cEVsZW1lbnRUYWJsZSwgMCB9OwogY29uc3QgQ2xh
c3NJbmZvIEpTSFRNTEVsZW1lbnQ6Om9wdGlvbl9pbmZvID0geyAiSFRNTE9wdGlvbkVsZW1lbnQi
LCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxPcHRpb25FbGVtZW50VGFibGUsIDAgfTsKIGNv
bnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50OjpwX2luZm8gPSB7ICJIVE1MUGFyYWdyYXBoRWxl
bWVudCIsICZKU0hUTUxFbGVtZW50OjppbmZvLCAmSFRNTFBhcmFncmFwaEVsZW1lbnRUYWJsZSwg
MCB9OwpAQCAtNTA4LDEzICs0OTUsMTEgQEAKIGNvbnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50
Ojp0YWJsZXNlY3Rpb25faW5mbyA9IHsgIkhUTUxUYWJsZVNlY3Rpb25FbGVtZW50IiwgJkpTSFRN
TEVsZW1lbnQ6OmluZm8sICZIVE1MVGFibGVTZWN0aW9uRWxlbWVudFRhYmxlLCAwIH07CiBjb25z
dCBDbGFzc0luZm8gSlNIVE1MRWxlbWVudDo6dGV4dEFyZWFfaW5mbyA9IHsgIkhUTUxUZXh0QXJl
YUVsZW1lbnQiLCAmSlNIVE1MRWxlbWVudDo6aW5mbywgJkhUTUxUZXh0QXJlYUVsZW1lbnRUYWJs
ZSwgMCB9OwogY29uc3QgQ2xhc3NJbmZvIEpTSFRNTEVsZW1lbnQ6OnRyX2luZm8gPSB7ICJIVE1M
VGFibGVSb3dFbGVtZW50IiwgJkpTSFRNTEVsZW1lbnQ6OmluZm8sICZIVE1MVGFibGVSb3dFbGVt
ZW50VGFibGUsIDAgfTsKLWNvbnN0IENsYXNzSW5mbyBKU0hUTUxFbGVtZW50Ojp1bF9pbmZvID0g
eyAiSFRNTFVMaXN0RWxlbWVudCIsICZKU0hUTUxFbGVtZW50OjppbmZvLCAmSFRNTFVMaXN0RWxl
bWVudFRhYmxlLCAwIH07CiAKIGNvbnN0IENsYXNzSW5mbyogSlNIVE1MRWxlbWVudDo6Y2xhc3NJ
bmZvKCkgY29uc3QKIHsKICAgICBzdGF0aWMgSGFzaE1hcDxXZWJDb3JlOjpBdG9taWNTdHJpbmdJ
bXBsKiwgY29uc3QgQ2xhc3NJbmZvKj4gY2xhc3NJbmZvTWFwOwogICAgIGlmIChjbGFzc0luZm9N
YXAuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGNsYXNzSW5mb01hcC5zZXQoYXBwbGV0VGFnLmxvY2Fs
TmFtZSgpLmltcGwoKSwgJmFwcGxldF9pbmZvKTsKICAgICAgICAgY2xhc3NJbmZvTWFwLnNldChh
cmVhVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJmFyZWFfaW5mbyk7CiAgICAgICAgIGNsYXNzSW5m
b01hcC5zZXQoYmFzZWZvbnRUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmYmFzZUZvbnRfaW5mbyk7
CiAgICAgICAgIGNsYXNzSW5mb01hcC5zZXQoYmxvY2txdW90ZVRhZy5sb2NhbE5hbWUoKS5pbXBs
KCksICZibG9ja1F1b3RlX2luZm8pOwpAQCAtNTI1LDkgKzUxMCw2IEBACiAgICAgICAgIGNsYXNz
SW5mb01hcC5zZXQoY29sVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJmNvbF9pbmZvKTsKICAgICAg
ICAgY2xhc3NJbmZvTWFwLnNldChjb2xncm91cFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZjb2xf
aW5mbyk7CiAgICAgICAgIGNsYXNzSW5mb01hcC5zZXQoZGVsVGFnLmxvY2FsTmFtZSgpLmltcGwo
KSwgJm1vZF9pbmZvKTsKLSAgICAgICAgY2xhc3NJbmZvTWFwLnNldChkaXJUYWcubG9jYWxOYW1l
KCkuaW1wbCgpLCAmZGlyX2luZm8pOwotICAgICAgICBjbGFzc0luZm9NYXAuc2V0KGRpdlRhZy5s
b2NhbE5hbWUoKS5pbXBsKCksICZkaXZfaW5mbyk7Ci0gICAgICAgIGNsYXNzSW5mb01hcC5zZXQo
ZGxUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmZGxfaW5mbyk7CiAgICAgICAgIGNsYXNzSW5mb01h
cC5zZXQoZW1iZWRUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmZW1iZWRfaW5mbyk7CiAgICAgICAg
IGNsYXNzSW5mb01hcC5zZXQoZmllbGRzZXRUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmZmllbGRT
ZXRfaW5mbyk7CiAgICAgICAgIGNsYXNzSW5mb01hcC5zZXQoZm9udFRhZy5sb2NhbE5hbWUoKS5p
bXBsKCksICZmb250X2luZm8pOwpAQCAtNTQxLDcgKzUyMyw2IEBACiAgICAgICAgIGNsYXNzSW5m
b01hcC5zZXQoaDVUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmaGVhZGluZ19pbmZvKTsKICAgICAg
ICAgY2xhc3NJbmZvTWFwLnNldChoNlRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZoZWFkaW5nX2lu
Zm8pOwogICAgICAgICBjbGFzc0luZm9NYXAuc2V0KGhyVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwg
JmhyX2luZm8pOwotICAgICAgICBjbGFzc0luZm9NYXAuc2V0KGh0bWxUYWcubG9jYWxOYW1lKCku
aW1wbCgpLCAmaHRtbF9pbmZvKTsKICAgICAgICAgY2xhc3NJbmZvTWFwLnNldChpZnJhbWVUYWcu
bG9jYWxOYW1lKCkuaW1wbCgpLCAmaUZyYW1lX2luZm8pOwogICAgICAgICBjbGFzc0luZm9NYXAu
c2V0KGltZ1RhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZpbWdfaW5mbyk7CiAgICAgICAgIGNsYXNz
SW5mb01hcC5zZXQoaW5wdXRUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmaW5wdXRfaW5mbyk7CkBA
IC01NTUsNyArNTM2LDYgQEAKICAgICAgICAgY2xhc3NJbmZvTWFwLnNldChtYXJxdWVlVGFnLmxv
Y2FsTmFtZSgpLmltcGwoKSwgJm1hcnF1ZWVfaW5mbyk7CiAgICAgICAgIGNsYXNzSW5mb01hcC5z
ZXQobWVudVRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZtZW51X2luZm8pOwogICAgICAgICBjbGFz
c0luZm9NYXAuc2V0KG9iamVjdFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZvYmplY3RfaW5mbyk7
Ci0gICAgICAgIGNsYXNzSW5mb01hcC5zZXQob2xUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmb2xf
aW5mbyk7CiAgICAgICAgIGNsYXNzSW5mb01hcC5zZXQob3B0Z3JvdXBUYWcubG9jYWxOYW1lKCku
aW1wbCgpLCAmb3B0R3JvdXBfaW5mbyk7CiAgICAgICAgIGNsYXNzSW5mb01hcC5zZXQob3B0aW9u
VGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJm9wdGlvbl9pbmZvKTsKICAgICAgICAgY2xhc3NJbmZv
TWFwLnNldChwVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJnBfaW5mbyk7CkBAIC01NzIsOCArNTUy
LDYgQEAKICAgICAgICAgY2xhc3NJbmZvTWFwLnNldCh0aFRhZy5sb2NhbE5hbWUoKS5pbXBsKCks
ICZ0YWJsZWNlbGxfaW5mbyk7CiAgICAgICAgIGNsYXNzSW5mb01hcC5zZXQodGhlYWRUYWcubG9j
YWxOYW1lKCkuaW1wbCgpLCAmdGFibGVzZWN0aW9uX2luZm8pOwogICAgICAgICBjbGFzc0luZm9N
YXAuc2V0KHRyVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJnRyX2luZm8pOwotICAgICAgICBjbGFz
c0luZm9NYXAuc2V0KHVsVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJnVsX2luZm8pOwotICAgICAg
ICBjbGFzc0luZm9NYXAuc2V0KGFUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmYV9pbmZvKTsKICAg
ICB9CiAgICAgCiAgICAgSFRNTEVsZW1lbnQqIGVsZW1lbnQgPSBzdGF0aWNfY2FzdDxIVE1MRWxl
bWVudCo+KGltcGwoKSk7CkBAIC01ODMsNyArNTYxLDYgQEAKICAgICByZXR1cm4gJmluZm87CiB9
CiAKLWNvbnN0IEpTSFRNTEVsZW1lbnQ6OkFjY2Vzc29ycyBKU0hUTUxFbGVtZW50OjpodG1sX2Fj
Y2Vzc29ycyA9IHsgJkpTSFRNTEVsZW1lbnQ6Omh0bWxHZXR0ZXIsICZKU0hUTUxFbGVtZW50Ojpo
dG1sU2V0dGVyIH07CiBjb25zdCBKU0hUTUxFbGVtZW50OjpBY2Nlc3NvcnMgSlNIVE1MRWxlbWVu
dDo6aXNJbmRleF9hY2Nlc3NvcnMgPSB7ICZKU0hUTUxFbGVtZW50Ojppc0luZGV4R2V0dGVyLCAm
SlNIVE1MRWxlbWVudDo6aXNJbmRleFNldHRlciB9OwogY29uc3QgSlNIVE1MRWxlbWVudDo6QWNj
ZXNzb3JzIEpTSFRNTEVsZW1lbnQ6OmJvZHlfYWNjZXNzb3JzID0geyAmSlNIVE1MRWxlbWVudDo6
Ym9keUdldHRlciwgJkpTSFRNTEVsZW1lbnQ6OmJvZHlTZXR0ZXIgfTsKIGNvbnN0IEpTSFRNTEVs
ZW1lbnQ6OkFjY2Vzc29ycyBKU0hUTUxFbGVtZW50Ojpmb3JtX2FjY2Vzc29ycyA9IHsgJkpTSFRN
TEVsZW1lbnQ6OmZvcm1HZXR0ZXIsICZKU0hUTUxFbGVtZW50Ojpmb3JtU2V0dGVyIH07CkBAIC01
OTYsMTMgKzU3Myw4IEBACiBjb25zdCBKU0hUTUxFbGVtZW50OjpBY2Nlc3NvcnMgSlNIVE1MRWxl
bWVudDo6bGFiZWxfYWNjZXNzb3JzID0geyAmSlNIVE1MRWxlbWVudDo6bGFiZWxHZXR0ZXIsICZK
U0hUTUxFbGVtZW50OjpsYWJlbFNldHRlciB9OwogY29uc3QgSlNIVE1MRWxlbWVudDo6QWNjZXNz
b3JzIEpTSFRNTEVsZW1lbnQ6OmZpZWxkU2V0X2FjY2Vzc29ycyA9IHsgJkpTSFRNTEVsZW1lbnQ6
OmZpZWxkU2V0R2V0dGVyLCAmSlNIVE1MRWxlbWVudDo6ZmllbGRTZXRTZXR0ZXIgfTsKIGNvbnN0
IEpTSFRNTEVsZW1lbnQ6OkFjY2Vzc29ycyBKU0hUTUxFbGVtZW50OjpsZWdlbmRfYWNjZXNzb3Jz
ID0geyAmSlNIVE1MRWxlbWVudDo6bGVnZW5kR2V0dGVyLCAmSlNIVE1MRWxlbWVudDo6bGVnZW5k
U2V0dGVyIH07Ci1jb25zdCBKU0hUTUxFbGVtZW50OjpBY2Nlc3NvcnMgSlNIVE1MRWxlbWVudDo6
dWxfYWNjZXNzb3JzID0geyAmSlNIVE1MRWxlbWVudDo6dUxpc3RHZXR0ZXIsICZKU0hUTUxFbGVt
ZW50Ojp1TGlzdFNldHRlciB9OwotY29uc3QgSlNIVE1MRWxlbWVudDo6QWNjZXNzb3JzIEpTSFRN
TEVsZW1lbnQ6Om9sX2FjY2Vzc29ycyA9IHsgJkpTSFRNTEVsZW1lbnQ6Om9MaXN0R2V0dGVyLCAm
SlNIVE1MRWxlbWVudDo6b0xpc3RTZXR0ZXIgfTsKLWNvbnN0IEpTSFRNTEVsZW1lbnQ6OkFjY2Vz
c29ycyBKU0hUTUxFbGVtZW50OjpkbF9hY2Nlc3NvcnMgPSB7ICZKU0hUTUxFbGVtZW50OjpkTGlz
dEdldHRlciwgJkpTSFRNTEVsZW1lbnQ6OmRMaXN0U2V0dGVyIH07Ci1jb25zdCBKU0hUTUxFbGVt
ZW50OjpBY2Nlc3NvcnMgSlNIVE1MRWxlbWVudDo6ZGlyX2FjY2Vzc29ycyA9IHsgJkpTSFRNTEVs
ZW1lbnQ6OmRpckdldHRlciwgJkpTSFRNTEVsZW1lbnQ6OmRpclNldHRlciB9OwogY29uc3QgSlNI
VE1MRWxlbWVudDo6QWNjZXNzb3JzIEpTSFRNTEVsZW1lbnQ6Om1lbnVfYWNjZXNzb3JzID0geyAm
SlNIVE1MRWxlbWVudDo6bWVudUdldHRlciwgJkpTSFRNTEVsZW1lbnQ6Om1lbnVTZXR0ZXIgfTsK
IGNvbnN0IEpTSFRNTEVsZW1lbnQ6OkFjY2Vzc29ycyBKU0hUTUxFbGVtZW50OjpsaV9hY2Nlc3Nv
cnMgPSB7ICZKU0hUTUxFbGVtZW50OjpsaUdldHRlciwgJkpTSFRNTEVsZW1lbnQ6OmxpU2V0dGVy
IH07Ci1jb25zdCBKU0hUTUxFbGVtZW50OjpBY2Nlc3NvcnMgSlNIVE1MRWxlbWVudDo6ZGl2X2Fj
Y2Vzc29ycyA9IHsgJkpTSFRNTEVsZW1lbnQ6OmRpdkdldHRlciwgJkpTSFRNTEVsZW1lbnQ6OmRp
dlNldHRlciB9OwogY29uc3QgSlNIVE1MRWxlbWVudDo6QWNjZXNzb3JzIEpTSFRNTEVsZW1lbnQ6
OnBfYWNjZXNzb3JzID0geyAmSlNIVE1MRWxlbWVudDo6cGFyYWdyYXBoR2V0dGVyLCAmSlNIVE1M
RWxlbWVudDo6cGFyYWdyYXBoU2V0dGVyIH07CiBjb25zdCBKU0hUTUxFbGVtZW50OjpBY2Nlc3Nv
cnMgSlNIVE1MRWxlbWVudDo6aGVhZGluZ19hY2Nlc3NvcnMgPSB7ICZKU0hUTUxFbGVtZW50Ojpo
ZWFkaW5nR2V0dGVyLCAmSlNIVE1MRWxlbWVudDo6aGVhZGluZ1NldHRlciB9OwogY29uc3QgSlNI
VE1MRWxlbWVudDo6QWNjZXNzb3JzIEpTSFRNTEVsZW1lbnQ6OmJsb2NrUXVvdGVfYWNjZXNzb3Jz
ID0geyAmSlNIVE1MRWxlbWVudDo6YmxvY2tRdW90ZUdldHRlciwgJkpTSFRNTEVsZW1lbnQ6OmJs
b2NrUXVvdGVTZXR0ZXIgfTsKQEAgLTYxMywxMSArNTg1LDkgQEAKIGNvbnN0IEpTSFRNTEVsZW1l
bnQ6OkFjY2Vzc29ycyBKU0hUTUxFbGVtZW50Ojpmb250X2FjY2Vzc29ycyA9IHsgJkpTSFRNTEVs
ZW1lbnQ6OmZvbnRHZXR0ZXIsICZKU0hUTUxFbGVtZW50Ojpmb250U2V0dGVyIH07CiBjb25zdCBK
U0hUTUxFbGVtZW50OjpBY2Nlc3NvcnMgSlNIVE1MRWxlbWVudDo6aHJfYWNjZXNzb3JzID0geyAm
SlNIVE1MRWxlbWVudDo6aHJHZXR0ZXIsICZKU0hUTUxFbGVtZW50OjpoclNldHRlciB9OwogY29u
c3QgSlNIVE1MRWxlbWVudDo6QWNjZXNzb3JzIEpTSFRNTEVsZW1lbnQ6Om1vZF9hY2Nlc3NvcnMg
PSB7ICZKU0hUTUxFbGVtZW50Ojptb2RHZXR0ZXIsICZKU0hUTUxFbGVtZW50Ojptb2RTZXR0ZXIg
fTsKLWNvbnN0IEpTSFRNTEVsZW1lbnQ6OkFjY2Vzc29ycyBKU0hUTUxFbGVtZW50OjphX2FjY2Vz
c29ycyA9IHsgJkpTSFRNTEVsZW1lbnQ6OmFuY2hvckdldHRlciwgJkpTSFRNTEVsZW1lbnQ6OmFu
Y2hvclNldHRlciB9OwogY29uc3QgSlNIVE1MRWxlbWVudDo6QWNjZXNzb3JzIEpTSFRNTEVsZW1l
bnQ6OmltZ19hY2Nlc3NvcnMgPSB7ICZKU0hUTUxFbGVtZW50OjppbWFnZUdldHRlciwgJkpTSFRN
TEVsZW1lbnQ6OmltYWdlU2V0dGVyIH07CiBjb25zdCBKU0hUTUxFbGVtZW50OjpBY2Nlc3NvcnMg
SlNIVE1MRWxlbWVudDo6b2JqZWN0X2FjY2Vzc29ycyA9IHsgJkpTSFRNTEVsZW1lbnQ6Om9iamVj
dEdldHRlciwgJkpTSFRNTEVsZW1lbnQ6Om9iamVjdFNldHRlciB9OwogY29uc3QgSlNIVE1MRWxl
bWVudDo6QWNjZXNzb3JzIEpTSFRNTEVsZW1lbnQ6OnBhcmFtX2FjY2Vzc29ycyA9IHsgJkpTSFRN
TEVsZW1lbnQ6OnBhcmFtR2V0dGVyLCAmSlNIVE1MRWxlbWVudDo6cGFyYW1TZXR0ZXIgfTsKLWNv
bnN0IEpTSFRNTEVsZW1lbnQ6OkFjY2Vzc29ycyBKU0hUTUxFbGVtZW50OjphcHBsZXRfYWNjZXNz
b3JzID0geyAmSlNIVE1MRWxlbWVudDo6YXBwbGV0R2V0dGVyLCAmSlNIVE1MRWxlbWVudDo6YXBw
bGV0U2V0dGVyIH07CiBjb25zdCBKU0hUTUxFbGVtZW50OjpBY2Nlc3NvcnMgSlNIVE1MRWxlbWVu
dDo6ZW1iZWRfYWNjZXNzb3JzID0geyAmSlNIVE1MRWxlbWVudDo6ZW1iZWRHZXR0ZXIsICZKU0hU
TUxFbGVtZW50OjplbWJlZFNldHRlciB9OwogY29uc3QgSlNIVE1MRWxlbWVudDo6QWNjZXNzb3Jz
IEpTSFRNTEVsZW1lbnQ6Om1hcF9hY2Nlc3NvcnMgPSB7ICZKU0hUTUxFbGVtZW50OjptYXBHZXR0
ZXIsICZKU0hUTUxFbGVtZW50OjptYXBTZXR0ZXIgfTsKIGNvbnN0IEpTSFRNTEVsZW1lbnQ6OkFj
Y2Vzc29ycyBKU0hUTUxFbGVtZW50OjphcmVhX2FjY2Vzc29ycyA9IHsgJkpTSFRNTEVsZW1lbnQ6
OmFyZWFHZXR0ZXIsICZKU0hUTUxFbGVtZW50OjphcmVhU2V0dGVyIH07CkBAIC02MzcsOCArNjA3
LDYgQEAKIHsKICAgICBzdGF0aWMgSGFzaE1hcDxXZWJDb3JlOjpBdG9taWNTdHJpbmdJbXBsKiwg
Y29uc3QgQWNjZXNzb3JzKj4gYWNjZXNzb3JNYXA7CiAgICAgaWYgKGFjY2Vzc29yTWFwLmlzRW1w
dHkoKSkgewotICAgICAgICBhY2Nlc3Nvck1hcC5hZGQoYVRhZy5sb2NhbE5hbWUoKS5pbXBsKCks
ICZhX2FjY2Vzc29ycyk7Ci0gICAgICAgIGFjY2Vzc29yTWFwLmFkZChhcHBsZXRUYWcubG9jYWxO
YW1lKCkuaW1wbCgpLCAmYXBwbGV0X2FjY2Vzc29ycyk7CiAgICAgICAgIGFjY2Vzc29yTWFwLmFk
ZChhcmVhVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJmFyZWFfYWNjZXNzb3JzKTsKICAgICAgICAg
YWNjZXNzb3JNYXAuYWRkKGJhc2Vmb250VGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJmJhc2VGb250
X2FjY2Vzc29ycyk7CiAgICAgICAgIGFjY2Vzc29yTWFwLmFkZChibG9ja3F1b3RlVGFnLmxvY2Fs
TmFtZSgpLmltcGwoKSwgJmJsb2NrUXVvdGVfYWNjZXNzb3JzKTsgCkBAIC02NDksOSArNjE3LDYg
QEAKICAgICAgICAgYWNjZXNzb3JNYXAuYWRkKGNvbFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZj
b2xfYWNjZXNzb3JzKTsKICAgICAgICAgYWNjZXNzb3JNYXAuYWRkKGNvbGdyb3VwVGFnLmxvY2Fs
TmFtZSgpLmltcGwoKSwgJmNvbF9hY2Nlc3NvcnMpOwogICAgICAgICBhY2Nlc3Nvck1hcC5hZGQo
ZGVsVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJm1vZF9hY2Nlc3NvcnMpOwotICAgICAgICBhY2Nl
c3Nvck1hcC5hZGQoZGlyVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJmRpcl9hY2Nlc3NvcnMpOwot
ICAgICAgICBhY2Nlc3Nvck1hcC5hZGQoZGl2VGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJmRpdl9h
Y2Nlc3NvcnMpOwotICAgICAgICBhY2Nlc3Nvck1hcC5hZGQoZGxUYWcubG9jYWxOYW1lKCkuaW1w
bCgpLCAmZGxfYWNjZXNzb3JzKTsKICAgICAgICAgYWNjZXNzb3JNYXAuYWRkKGVtYmVkVGFnLmxv
Y2FsTmFtZSgpLmltcGwoKSwgJmVtYmVkX2FjY2Vzc29ycyk7CiAgICAgICAgIGFjY2Vzc29yTWFw
LmFkZChmaWVsZHNldFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZmaWVsZFNldF9hY2Nlc3NvcnMp
OwogICAgICAgICBhY2Nlc3Nvck1hcC5hZGQoZm9udFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZm
b250X2FjY2Vzc29ycyk7CkBAIC02NjUsNyArNjMwLDYgQEAKICAgICAgICAgYWNjZXNzb3JNYXAu
YWRkKGg1VGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJmhlYWRpbmdfYWNjZXNzb3JzKTsKICAgICAg
ICAgYWNjZXNzb3JNYXAuYWRkKGg2VGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJmhlYWRpbmdfYWNj
ZXNzb3JzKTsKICAgICAgICAgYWNjZXNzb3JNYXAuYWRkKGhyVGFnLmxvY2FsTmFtZSgpLmltcGwo
KSwgJmhyX2FjY2Vzc29ycyk7IAotICAgICAgICBhY2Nlc3Nvck1hcC5hZGQoaHRtbFRhZy5sb2Nh
bE5hbWUoKS5pbXBsKCksICZodG1sX2FjY2Vzc29ycyk7CiAgICAgICAgIGFjY2Vzc29yTWFwLmFk
ZChpZnJhbWVUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmaUZyYW1lX2FjY2Vzc29ycyk7CiAgICAg
ICAgIGFjY2Vzc29yTWFwLmFkZChpbWdUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmaW1nX2FjY2Vz
c29ycyk7CiAgICAgICAgIGFjY2Vzc29yTWFwLmFkZChpbnB1dFRhZy5sb2NhbE5hbWUoKS5pbXBs
KCksICZpbnB1dF9hY2Nlc3NvcnMpOwpAQCAtNjc5LDcgKzY0Myw2IEBACiAgICAgICAgIGFjY2Vz
c29yTWFwLmFkZChtYXJxdWVlVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJm1hcnF1ZWVfYWNjZXNz
b3JzKTsKICAgICAgICAgYWNjZXNzb3JNYXAuYWRkKG1lbnVUYWcubG9jYWxOYW1lKCkuaW1wbCgp
LCAmbWVudV9hY2Nlc3NvcnMpOwogICAgICAgICBhY2Nlc3Nvck1hcC5hZGQob2JqZWN0VGFnLmxv
Y2FsTmFtZSgpLmltcGwoKSwgJm9iamVjdF9hY2Nlc3NvcnMpOwotICAgICAgICBhY2Nlc3Nvck1h
cC5hZGQob2xUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAmb2xfYWNjZXNzb3JzKTsKICAgICAgICAg
YWNjZXNzb3JNYXAuYWRkKG9wdGlvblRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZvcHRpb25fYWNj
ZXNzb3JzKTsKICAgICAgICAgYWNjZXNzb3JNYXAuYWRkKG9wdGdyb3VwVGFnLmxvY2FsTmFtZSgp
LmltcGwoKSwgJm9wdEdyb3VwX2FjY2Vzc29ycyk7CiAgICAgICAgIGFjY2Vzc29yTWFwLmFkZChw
VGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJnBfYWNjZXNzb3JzKTsKQEAgLTY5Niw3ICs2NTksNiBA
QAogICAgICAgICBhY2Nlc3Nvck1hcC5hZGQodGhlYWRUYWcubG9jYWxOYW1lKCkuaW1wbCgpLCAm
dGFibGVzZWN0aW9uX2FjY2Vzc29ycyk7CiAgICAgICAgIGFjY2Vzc29yTWFwLmFkZCh0Zm9vdFRh
Zy5sb2NhbE5hbWUoKS5pbXBsKCksICZ0YWJsZXNlY3Rpb25fYWNjZXNzb3JzKTsKICAgICAgICAg
YWNjZXNzb3JNYXAuYWRkKHRyVGFnLmxvY2FsTmFtZSgpLmltcGwoKSwgJnRyX2FjY2Vzc29ycyk7
Ci0gICAgICAgIGFjY2Vzc29yTWFwLmFkZCh1bFRhZy5sb2NhbE5hbWUoKS5pbXBsKCksICZ1bF9h
Y2Nlc3NvcnMpOwogICAgIH0KICAgICAKICAgICBIVE1MRWxlbWVudCogZWxlbWVudCA9IHN0YXRp
Y19jYXN0PEhUTUxFbGVtZW50Kj4oaW1wbCgpKTsKQEAgLTcyNCw5ICs2ODYsNiBAQAogICBjb250
ZW50RWRpdGFibGUgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkVsZW1lbnRDb250ZW50RWRpdGFibGUg
IERvbnREZWxldGUKICAgaXNDb250ZW50RWRpdGFibGUgS0pTOjpKU0hUTUxFbGVtZW50OjpFbGVt
ZW50SXNDb250ZW50RWRpdGFibGUgIERvbnREZWxldGV8UmVhZE9ubHkKIEBlbmQKLUBiZWdpbiBI
VE1MSHRtbEVsZW1lbnRUYWJsZSAxCi0gIHZlcnNpb24gICAgICAgS0pTOjpKU0hUTUxFbGVtZW50
OjpIdG1sVmVyc2lvbiAgIERvbnREZWxldGUKLUBlbmQKIEBiZWdpbiBIVE1MSGVhZEVsZW1lbnRU
YWJsZSAxCiAgIHByb2ZpbGUgICAgICAgS0pTOjpKU0hUTUxFbGVtZW50OjpIZWFkUHJvZmlsZSAg
IERvbnREZWxldGUKIEBlbmQKQEAgLTg5NSwyMSArODU0LDYgQEAKICAgYWxpZ24gICAgICAgICBL
SlM6OkpTSFRNTEVsZW1lbnQ6OkxlZ2VuZEFsaWduICAgICAgICAgICBEb250RGVsZXRlCiAgIGZv
Y3VzICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkxlZ2VuZEZvY3VzICAgICBEb250RGVsZXRlfEZ1
bmN0aW9uIDAKIEBlbmQKLUBiZWdpbiBIVE1MVUxpc3RFbGVtZW50VGFibGUgMgotICBjb21wYWN0
ICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6VUxpc3RDb21wYWN0ICAgICAgICAgIERvbnREZWxl
dGUKLSAgdHlwZSAgICAgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OlVMaXN0VHlwZSAgICAgICAg
ICAgICBEb250RGVsZXRlCi1AZW5kCi1AYmVnaW4gSFRNTE9MaXN0RWxlbWVudFRhYmxlIDMKLSAg
Y29tcGFjdCAgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6Ok9MaXN0Q29tcGFjdCAgICAgICAgICBE
b250RGVsZXRlCi0gIHN0YXJ0ICAgICAgICAgS0pTOjpKU0hUTUxFbGVtZW50OjpPTGlzdFN0YXJ0
ICAgICAgICAgICAgRG9udERlbGV0ZQotICB0eXBlICAgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVu
dDo6T0xpc3RUeXBlICAgICAgICAgICAgIERvbnREZWxldGUKLUBlbmQKLUBiZWdpbiBIVE1MRExp
c3RFbGVtZW50VGFibGUgMQotICBjb21wYWN0ICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6RExp
c3RDb21wYWN0ICAgICAgICAgIERvbnREZWxldGUKLUBlbmQKLUBiZWdpbiBIVE1MRGlyZWN0b3J5
RWxlbWVudFRhYmxlIDEKLSAgY29tcGFjdCAgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkRpcmVj
dG9yeUNvbXBhY3QgICAgICBEb250RGVsZXRlCi1AZW5kCiBAYmVnaW4gSFRNTE1lbnVFbGVtZW50
VGFibGUgMQogICBjb21wYWN0ICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6TWVudUNvbXBhY3Qg
ICAgICAgICAgIERvbnREZWxldGUKIEBlbmQKQEAgLTkxNyw5ICs4NjEsNiBAQAogICB0eXBlICAg
ICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6TElUeXBlICAgICAgICAgICAgICAgIERvbnREZWxl
dGUKICAgdmFsdWUgICAgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkxJVmFsdWUgICAgICAgICAg
ICAgICBEb250RGVsZXRlCiBAZW5kCi1AYmVnaW4gSFRNTERpdkVsZW1lbnRUYWJsZSAxCi0gIGFs
aWduICAgICAgICAgS0pTOjpKU0hUTUxFbGVtZW50OjpEaXZBbGlnbiAgICAgICAgICAgICAgRG9u
dERlbGV0ZQotQGVuZAogQGJlZ2luIEhUTUxQYXJhZ3JhcGhFbGVtZW50VGFibGUgMQogICBhbGln
biAgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6UGFyYWdyYXBoQWxpZ24gICAgICAgIERvbnRE
ZWxldGUKIEBlbmQKQEAgLTk1OCwzMSArODk5LDYgQEAKICAgY2l0ZSAgICAgICAgICBLSlM6OkpT
SFRNTEVsZW1lbnQ6Ok1vZENpdGUgICAgICAgICAgICAgICBEb250RGVsZXRlCiAgIGRhdGVUaW1l
ICAgICAgS0pTOjpKU0hUTUxFbGVtZW50OjpNb2REYXRlVGltZSAgICAgICAgICAgRG9udERlbGV0
ZQogQGVuZAotQGJlZ2luIEhUTUxBbmNob3JFbGVtZW50VGFibGUgMjQKLSAgYWNjZXNzS2V5ICAg
ICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkFuY2hvckFjY2Vzc0tleSAgICAgICBEb250RGVsZXRlCi0g
IGNoYXJzZXQgICAgICAgS0pTOjpKU0hUTUxFbGVtZW50OjpBbmNob3JDaGFyc2V0ICAgICAgICAg
RG9udERlbGV0ZQotICBjb29yZHMgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6QW5jaG9yQ29v
cmRzICAgICAgICAgIERvbnREZWxldGUKLSAgaHJlZiAgICAgICAgICBLSlM6OkpTSFRNTEVsZW1l
bnQ6OkFuY2hvckhyZWYgICAgICAgICAgICBEb250RGVsZXRlCi0gIGhyZWZsYW5nICAgICAgS0pT
OjpKU0hUTUxFbGVtZW50OjpBbmNob3JIcmVmTGFuZyAgICAgICAgRG9udERlbGV0ZQotICBoYXNo
ICAgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6QW5jaG9ySGFzaCAgICAgICAgICAgIERvbnRE
ZWxldGV8UmVhZE9ubHkKLSAgaG9zdCAgICAgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkFuY2hv
ckhvc3QgICAgICAgICAgICBEb250RGVsZXRlfFJlYWRPbmx5Ci0gIGhvc3RuYW1lICAgICAgS0pT
OjpKU0hUTUxFbGVtZW50OjpBbmNob3JIb3N0bmFtZSAgICAgICAgRG9udERlbGV0ZXxSZWFkT25s
eQotICBuYW1lICAgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6QW5jaG9yTmFtZSAgICAgICAg
ICAgIERvbnREZWxldGUKLSAgcGF0aG5hbWUgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkFuY2hv
clBhdGhOYW1lICAgICAgICBEb250RGVsZXRlfFJlYWRPbmx5Ci0gIHBvcnQgICAgICAgICAgS0pT
OjpKU0hUTUxFbGVtZW50OjpBbmNob3JQb3J0ICAgICAgICAgICAgRG9udERlbGV0ZXxSZWFkT25s
eQotICBwcm90b2NvbCAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6QW5jaG9yUHJvdG9jb2wgICAg
ICAgIERvbnREZWxldGV8UmVhZE9ubHkKLSAgcmVsICAgICAgICAgICBLSlM6OkpTSFRNTEVsZW1l
bnQ6OkFuY2hvclJlbCAgICAgICAgICAgICBEb250RGVsZXRlCi0gIHJldiAgICAgICAgICAgS0pT
OjpKU0hUTUxFbGVtZW50OjpBbmNob3JSZXYgICAgICAgICAgICAgRG9udERlbGV0ZQotICBzZWFy
Y2ggICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6QW5jaG9yU2VhcmNoICAgICAgICAgIERvbnRE
ZWxldGV8UmVhZE9ubHkKLSAgc2hhcGUgICAgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkFuY2hv
clNoYXBlICAgICAgICAgICBEb250RGVsZXRlCi0gIHRhYkluZGV4ICAgICAgS0pTOjpKU0hUTUxF
bGVtZW50OjpBbmNob3JUYWJJbmRleCAgICAgICAgRG9udERlbGV0ZQotICB0YXJnZXQgICAgICAg
IEtKUzo6SlNIVE1MRWxlbWVudDo6QW5jaG9yVGFyZ2V0ICAgICAgICAgIERvbnREZWxldGUKLSAg
dGV4dCAgICAgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkFuY2hvclRleHQgICAgICAgICAgICBE
b250RGVsZXRlfFJlYWRPbmx5Ci0gIHR5cGUgICAgICAgICAgS0pTOjpKU0hUTUxFbGVtZW50OjpB
bmNob3JUeXBlICAgICAgICAgICAgRG9udERlbGV0ZQotICBibHVyICAgICAgICAgIEtKUzo6SlNI
VE1MRWxlbWVudDo6QW5jaG9yQmx1ciAgICAgICAgICAgIERvbnREZWxldGV8RnVuY3Rpb24gMAot
ICBmb2N1cyAgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6QW5jaG9yRm9jdXMgICAgICAgICAg
IERvbnREZWxldGV8RnVuY3Rpb24gMAotICB0b1N0cmluZyAgICAgIEtKUzo6SlNIVE1MRWxlbWVu
dDo6QW5jaG9yVG9TdHJpbmcgICAgICAgIERvbnREZWxldGV8RnVuY3Rpb24gMAotQGVuZAogQGJl
Z2luIEhUTUxJbWFnZUVsZW1lbnRUYWJsZSAxNAogICBuYW1lICAgICAgICAgIEtKUzo6SlNIVE1M
RWxlbWVudDo6SW1hZ2VOYW1lICAgICAgICAgICAgIERvbnREZWxldGUKICAgYWxpZ24gICAgICAg
ICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkltYWdlQWxpZ24gICAgICAgICAgICBEb250RGVsZXRlCkBA
IC0xMDI3LDE4ICs5NDMsNiBAQAogICB2YWx1ZSAgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6
UGFyYW1WYWx1ZSAgICAgICAgICAgIERvbnREZWxldGUKICAgdmFsdWVUeXBlICAgICBLSlM6OkpT
SFRNTEVsZW1lbnQ6OlBhcmFtVmFsdWVUeXBlICAgICAgICBEb250RGVsZXRlCiBAZW5kCi1AYmVn
aW4gSFRNTEFwcGxldEVsZW1lbnRUYWJsZSAxMQotICBhbGlnbiAgICAgICAgIEtKUzo6SlNIVE1M
RWxlbWVudDo6QXBwbGV0QWxpZ24gICAgICAgICAgIERvbnREZWxldGUKLSAgYWx0ICAgICAgICAg
ICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkFwcGxldEFsdCAgICAgICAgICAgICBEb250RGVsZXRlCi0g
IGFyY2hpdmUgICAgICAgS0pTOjpKU0hUTUxFbGVtZW50OjpBcHBsZXRBcmNoaXZlICAgICAgICAg
RG9udERlbGV0ZQotICBjb2RlICAgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6QXBwbGV0Q29k
ZSAgICAgICAgICAgIERvbnREZWxldGUKLSAgY29kZUJhc2UgICAgICBLSlM6OkpTSFRNTEVsZW1l
bnQ6OkFwcGxldENvZGVCYXNlICAgICAgICBEb250RGVsZXRlCi0gIGhlaWdodCAgICAgICAgS0pT
OjpKU0hUTUxFbGVtZW50OjpBcHBsZXRIZWlnaHQgICAgICAgICAgRG9udERlbGV0ZQotICBoc3Bh
Y2UgICAgICAgIEtKUzo6SlNIVE1MRWxlbWVudDo6QXBwbGV0SHNwYWNlICAgICAgICAgIERvbnRE
ZWxldGUKLSAgbmFtZSAgICAgICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkFwcGxldE5hbWUgICAg
ICAgICAgICBEb250RGVsZXRlCi0gIG9iamVjdCAgICAgICAgS0pTOjpKU0hUTUxFbGVtZW50OjpB
cHBsZXRPYmplY3QgICAgICAgICAgRG9udERlbGV0ZQotICB2c3BhY2UgICAgICAgIEtKUzo6SlNI
VE1MRWxlbWVudDo6QXBwbGV0VnNwYWNlICAgICAgICAgIERvbnREZWxldGUKLSAgd2lkdGggICAg
ICAgICBLSlM6OkpTSFRNTEVsZW1lbnQ6OkFwcGxldFdpZHRoICAgICAgICAgICBEb250RGVsZXRl
CiBAZW5kCiBAYmVnaW4gSFRNTEVtYmVkRWxlbWVudFRhYmxlIDYKICAgYWxpZ24gICAgICAgICBL
SlM6OkpTSFRNTEVsZW1lbnQ6OkVtYmVkQWxpZ24gICAgICAgICAgIERvbnREZWxldGUKQEAgLTEz
NjQsMTQgKzEyNjgsNiBAQAogICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwogfQogCi1KU1ZhbHVl
ICpKU0hUTUxFbGVtZW50OjpodG1sR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBj
b25zdAotewotICAgIEhUTUxIdG1sRWxlbWVudCYgaHRtbCA9ICpzdGF0aWNfY2FzdDxIVE1MSHRt
bEVsZW1lbnQqPihpbXBsKCkpOwotICAgIGlmICh0b2tlbiA9PSBIdG1sVmVyc2lvbikKLSAgICAg
ICAgcmV0dXJuIGpzU3RyaW5nKGh0bWwudmVyc2lvbigpKTsKLSAgICByZXR1cm4ganNVbmRlZmlu
ZWQoKTsKLX0KLQogSlNWYWx1ZSAqSlNIVE1MRWxlbWVudDo6aXNJbmRleEdldHRlcihFeGVjU3Rh
dGUqIGV4ZWMsIGludCB0b2tlbikgY29uc3QKIHsKICAgICBIVE1MSXNJbmRleEVsZW1lbnQmIGlz
aW5kZXggPSAqc3RhdGljX2Nhc3Q8SFRNTElzSW5kZXhFbGVtZW50Kj4oaW1wbCgpKTsKQEAgLTE1
ODIsNDMgKzE0NzgsNiBAQAogICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwogfQogCi1KU1ZhbHVl
ICpKU0hUTUxFbGVtZW50Ojp1TGlzdEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGludCB0b2tlbikg
Y29uc3QKLXsKLSAgICBIVE1MVUxpc3RFbGVtZW50JiB1TGlzdCA9ICpzdGF0aWNfY2FzdDxIVE1M
VUxpc3RFbGVtZW50Kj4oaW1wbCgpKTsKLSAgICBzd2l0Y2ggKHRva2VuKSB7Ci0gICAgICAgIGNh
c2UgVUxpc3RDb21wYWN0OiAgICAgICAgIHJldHVybiBqc0Jvb2xlYW4odUxpc3QuY29tcGFjdCgp
KTsKLSAgICAgICAgY2FzZSBVTGlzdFR5cGU6ICAgICAgICAgICAgcmV0dXJuIGpzU3RyaW5nKHVM
aXN0LnR5cGUoKSk7Ci0gICAgfQotICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotfQotCi1KU1Zh
bHVlICpKU0hUTUxFbGVtZW50OjpvTGlzdEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGludCB0b2tl
bikgY29uc3QKLXsKLSAgICBIVE1MT0xpc3RFbGVtZW50JiBvTGlzdCA9ICpzdGF0aWNfY2FzdDxI
VE1MT0xpc3RFbGVtZW50Kj4oaW1wbCgpKTsKLSAgICBzd2l0Y2ggKHRva2VuKSB7Ci0gICAgICAg
IGNhc2UgT0xpc3RDb21wYWN0OiAgICAgICAgIHJldHVybiBqc0Jvb2xlYW4ob0xpc3QuY29tcGFj
dCgpKTsKLSAgICAgICAgY2FzZSBPTGlzdFN0YXJ0OiAgICAgICAgICAgcmV0dXJuIGpzTnVtYmVy
KG9MaXN0LnN0YXJ0KCkpOwotICAgICAgICBjYXNlIE9MaXN0VHlwZTogICAgICAgICAgICByZXR1
cm4ganNTdHJpbmcob0xpc3QudHlwZSgpKTsKLSAgICB9Ci0gICAgcmV0dXJuIGpzVW5kZWZpbmVk
KCk7Ci19Ci0KLUpTVmFsdWUgKkpTSFRNTEVsZW1lbnQ6OmRMaXN0R2V0dGVyKEV4ZWNTdGF0ZSog
ZXhlYywgaW50IHRva2VuKSBjb25zdAotewotICAgIEhUTUxETGlzdEVsZW1lbnQmIGRMaXN0ID0g
KnN0YXRpY19jYXN0PEhUTUxETGlzdEVsZW1lbnQqPihpbXBsKCkpOwotICAgIGlmICh0b2tlbiA9
PSBETGlzdENvbXBhY3QpCi0gICAgICAgIHJldHVybiBqc0Jvb2xlYW4oZExpc3QuY29tcGFjdCgp
KTsKLSAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLX0KLQotSlNWYWx1ZSAqSlNIVE1MRWxlbWVu
dDo6ZGlyR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBjb25zdAotewotICAgIEhU
TUxEaXJlY3RvcnlFbGVtZW50JiBkaXIgPSAqc3RhdGljX2Nhc3Q8SFRNTERpcmVjdG9yeUVsZW1l
bnQqPihpbXBsKCkpOwotICAgIGlmICh0b2tlbiA9PSBEaXJlY3RvcnlDb21wYWN0KQotICAgICAg
ICByZXR1cm4ganNCb29sZWFuKGRpci5jb21wYWN0KCkpOwotICAgIHJldHVybiBqc1VuZGVmaW5l
ZCgpOwotfQotCiBKU1ZhbHVlICpKU0hUTUxFbGVtZW50OjptZW51R2V0dGVyKEV4ZWNTdGF0ZSog
ZXhlYywgaW50IHRva2VuKSBjb25zdAogewogICAgIEhUTUxNZW51RWxlbWVudCYgbWVudSA9ICpz
dGF0aWNfY2FzdDxIVE1MTWVudUVsZW1lbnQqPihpbXBsKCkpOwpAQCAtMTYzNywxNCArMTQ5Niw2
IEBACiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiB9CiAKLUpTVmFsdWUgKkpTSFRNTEVsZW1l
bnQ6OmRpdkdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGludCB0b2tlbikgY29uc3QKLXsKLSAgICBI
VE1MRGl2RWxlbWVudCYgZGl2ID0gKnN0YXRpY19jYXN0PEhUTUxEaXZFbGVtZW50Kj4oaW1wbCgp
KTsKLSAgICBpZiAodG9rZW4gPT0gRGl2QWxpZ24pCi0gICAgICAgIHJldHVybiBqc1N0cmluZyhk
aXYuYWxpZ24oKSk7Ci0gICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci19Ci0KIEpTVmFsdWUgKkpT
SFRNTEVsZW1lbnQ6OnBhcmFncmFwaEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGludCB0b2tlbikg
Y29uc3QKIHsKICAgICBIVE1MUGFyYWdyYXBoRWxlbWVudCYgcCA9ICpzdGF0aWNfY2FzdDxIVE1M
UGFyYWdyYXBoRWxlbWVudCo+KGltcGwoKSk7CkBAIC0xNzQwLDQyICsxNTkxLDYgQEAKICAgICBy
ZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIAotSlNWYWx1ZSAqSlNIVE1MRWxlbWVudDo6YW5jaG9y
R2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBjb25zdAotewotICAgIEhUTUxBbmNo
b3JFbGVtZW50JiBhbmNob3IgPSAqc3RhdGljX2Nhc3Q8SFRNTEFuY2hvckVsZW1lbnQqPihpbXBs
KCkpOwotICAgIHN3aXRjaCAodG9rZW4pIHsKLSAgICAgICAgY2FzZSBBbmNob3JBY2Nlc3NLZXk6
ICAgICAgIHJldHVybiBqc1N0cmluZyhhbmNob3IuYWNjZXNzS2V5KCkpOwotICAgICAgICBjYXNl
IEFuY2hvckNoYXJzZXQ6ICAgICAgICAgcmV0dXJuIGpzU3RyaW5nKGFuY2hvci5jaGFyc2V0KCkp
OwotICAgICAgICBjYXNlIEFuY2hvckNvb3JkczogICAgICAgICAgcmV0dXJuIGpzU3RyaW5nKGFu
Y2hvci5jb29yZHMoKSk7Ci0gICAgICAgIGNhc2UgQW5jaG9ySHJlZjogICAgICAgICAgICByZXR1
cm4ganNTdHJpbmcoYW5jaG9yLmhyZWYoKSk7Ci0gICAgICAgIGNhc2UgQW5jaG9ySHJlZkxhbmc6
ICAgICAgICByZXR1cm4ganNTdHJpbmcoYW5jaG9yLmhyZWZsYW5nKCkpOwotICAgICAgICBjYXNl
IEFuY2hvckhhc2g6ICAgICAgICAgICAgcmV0dXJuIGpzU3RyaW5nKCcjJytLVVJMKGFuY2hvci5o
cmVmKCkuZGVwcmVjYXRlZFN0cmluZygpKS5yZWYoKSk7Ci0gICAgICAgIGNhc2UgQW5jaG9ySG9z
dDogICAgICAgICAgICByZXR1cm4ganNTdHJpbmcoS1VSTChhbmNob3IuaHJlZigpLmRlcHJlY2F0
ZWRTdHJpbmcoKSkuaG9zdCgpKTsKLSAgICAgICAgY2FzZSBBbmNob3JIb3N0bmFtZTogewotICAg
ICAgICAgICAgS1VSTCB1cmwoYW5jaG9yLmhyZWYoKS5kZXByZWNhdGVkU3RyaW5nKCkpOwotICAg
ICAgICAgICAgaWYgKHVybC5wb3J0KCk9PTApCi0gICAgICAgICAgICAgICAgcmV0dXJuIGpzU3Ry
aW5nKHVybC5ob3N0KCkpOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJldHVy
biBqc1N0cmluZyh1cmwuaG9zdCgpICsgIjoiICsgRGVwcmVjYXRlZFN0cmluZzo6bnVtYmVyKHVy
bC5wb3J0KCkpKTsKLSAgICAgICAgfQotICAgICAgICBjYXNlIEFuY2hvclBhdGhOYW1lOiAgICAg
ICAgcmV0dXJuIGpzU3RyaW5nKEtVUkwoYW5jaG9yLmhyZWYoKS5kZXByZWNhdGVkU3RyaW5nKCkp
LnBhdGgoKSk7Ci0gICAgICAgIGNhc2UgQW5jaG9yUG9ydDogICAgICAgICAgICByZXR1cm4ganNT
dHJpbmcoRGVwcmVjYXRlZFN0cmluZzo6bnVtYmVyKEtVUkwoYW5jaG9yLmhyZWYoKS5kZXByZWNh
dGVkU3RyaW5nKCkpLnBvcnQoKSkpOwotICAgICAgICBjYXNlIEFuY2hvclByb3RvY29sOiAgICAg
ICAgcmV0dXJuIGpzU3RyaW5nKEtVUkwoYW5jaG9yLmhyZWYoKS5kZXByZWNhdGVkU3RyaW5nKCkp
LnByb3RvY29sKCkrIjoiKTsKLSAgICAgICAgY2FzZSBBbmNob3JTZWFyY2g6ICAgICAgICAgIHJl
dHVybiBqc1N0cmluZyhLVVJMKGFuY2hvci5ocmVmKCkuZGVwcmVjYXRlZFN0cmluZygpKS5xdWVy
eSgpKTsKLSAgICAgICAgY2FzZSBBbmNob3JOYW1lOiAgICAgICAgICAgIHJldHVybiBqc1N0cmlu
ZyhhbmNob3IubmFtZSgpKTsKLSAgICAgICAgY2FzZSBBbmNob3JSZWw6ICAgICAgICAgICAgIHJl
dHVybiBqc1N0cmluZyhhbmNob3IucmVsKCkpOwotICAgICAgICBjYXNlIEFuY2hvclJldjogICAg
ICAgICAgICAgcmV0dXJuIGpzU3RyaW5nKGFuY2hvci5yZXYoKSk7Ci0gICAgICAgIGNhc2UgQW5j
aG9yU2hhcGU6ICAgICAgICAgICByZXR1cm4ganNTdHJpbmcoYW5jaG9yLnNoYXBlKCkpOwotICAg
ICAgICBjYXNlIEFuY2hvclRhYkluZGV4OiAgICAgICAgcmV0dXJuIGpzTnVtYmVyKGFuY2hvci50
YWJJbmRleCgpKTsKLSAgICAgICAgY2FzZSBBbmNob3JUYXJnZXQ6ICAgICAgICAgIHJldHVybiBq
c1N0cmluZyhhbmNob3IudGFyZ2V0KCkpOwotICAgICAgICBjYXNlIEFuY2hvclR5cGU6ICAgICAg
ICAgICAgcmV0dXJuIGpzU3RyaW5nKGFuY2hvci50eXBlKCkpOwotICAgICAgICBjYXNlIEFuY2hv
clRleHQ6Ci0gICAgICAgICAgICBhbmNob3IuZG9jdW1lbnQoKS0+dXBkYXRlTGF5b3V0SWdub3Jl
UGVuZGluZ1N0eWxlc2hlZXRzKCk7Ci0gICAgICAgICAgICByZXR1cm4ganNTdHJpbmcoYW5jaG9y
LmlubmVyVGV4dCgpKTsKLSAgICB9Ci0gICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Ci19Ci0KIEpT
VmFsdWUgKkpTSFRNTEVsZW1lbnQ6OmltYWdlR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRv
a2VuKSBjb25zdAogewogICAgIEhUTUxJbWFnZUVsZW1lbnQmIGltYWdlID0gKnN0YXRpY19jYXN0
PEhUTUxJbWFnZUVsZW1lbnQqPihpbXBsKCkpOwpAQCAtMTgzOSwyNSArMTY1NCw2IEBACiAgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7CiB9CiAKLUpTVmFsdWUgKkpTSFRNTEVsZW1lbnQ6OmFwcGxl
dEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGludCB0b2tlbikgY29uc3QKLXsKLSAgICBIVE1MQXBw
bGV0RWxlbWVudCYgYXBwbGV0ID0gKnN0YXRpY19jYXN0PEhUTUxBcHBsZXRFbGVtZW50Kj4oaW1w
bCgpKTsKLSAgICBzd2l0Y2ggKHRva2VuKSB7Ci0gICAgICAgIGNhc2UgQXBwbGV0QWxpZ246ICAg
ICAgICAgICByZXR1cm4ganNTdHJpbmcoYXBwbGV0LmFsaWduKCkpOwotICAgICAgICBjYXNlIEFw
cGxldEFsdDogICAgICAgICAgICAgcmV0dXJuIGpzU3RyaW5nKGFwcGxldC5hbHQoKSk7Ci0gICAg
ICAgIGNhc2UgQXBwbGV0QXJjaGl2ZTogICAgICAgICByZXR1cm4ganNTdHJpbmcoYXBwbGV0LmFy
Y2hpdmUoKSk7Ci0gICAgICAgIGNhc2UgQXBwbGV0Q29kZTogICAgICAgICAgICByZXR1cm4ganNT
dHJpbmcoYXBwbGV0LmNvZGUoKSk7Ci0gICAgICAgIGNhc2UgQXBwbGV0Q29kZUJhc2U6ICAgICAg
ICByZXR1cm4ganNTdHJpbmcoYXBwbGV0LmNvZGVCYXNlKCkpOwotICAgICAgICBjYXNlIEFwcGxl
dEhlaWdodDogICAgICAgICAgcmV0dXJuIGpzU3RyaW5nKGFwcGxldC5oZWlnaHQoKSk7Ci0gICAg
ICAgIGNhc2UgQXBwbGV0SHNwYWNlOiAgICAgICAgICByZXR1cm4ganNTdHJpbmcoYXBwbGV0Lmhz
cGFjZSgpKTsKLSAgICAgICAgY2FzZSBBcHBsZXROYW1lOiAgICAgICAgICAgIHJldHVybiBqc1N0
cmluZyhhcHBsZXQubmFtZSgpKTsKLSAgICAgICAgY2FzZSBBcHBsZXRPYmplY3Q6ICAgICAgICAg
IHJldHVybiBqc1N0cmluZyhhcHBsZXQub2JqZWN0KCkpOwotICAgICAgICBjYXNlIEFwcGxldFZz
cGFjZTogICAgICAgICAgcmV0dXJuIGpzU3RyaW5nKGFwcGxldC52c3BhY2UoKSk7Ci0gICAgICAg
IGNhc2UgQXBwbGV0V2lkdGg6ICAgICAgICAgICByZXR1cm4ganNTdHJpbmcoYXBwbGV0LndpZHRo
KCkpOwotICAgIH0KLSAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLX0KLQogSlNWYWx1ZSAqSlNI
VE1MRWxlbWVudDo6ZW1iZWRHZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBpbnQgdG9rZW4pIGNvbnN0
CiB7CiAgICAgSFRNTEVtYmVkRWxlbWVudCYgZW1iZWQgPSAqc3RhdGljX2Nhc3Q8SFRNTEVtYmVk
RWxlbWVudCo+KGltcGwoKSk7CkBAIC0yMjg3LDE5ICsyMDgzLDYgQEAKICAgICAgICAgICAgIHJl
dHVybiBqc1VuZGVmaW5lZCgpOwogICAgICAgICB9CiAgICAgfQotICAgIGVsc2UgaWYgKGVsZW1l
bnQuaGFzTG9jYWxOYW1lKGFUYWcpKSB7Ci0gICAgICAgIEhUTUxBbmNob3JFbGVtZW50ICZhbmNo
b3IgPSBzdGF0aWNfY2FzdDxIVE1MQW5jaG9yRWxlbWVudCAmPihlbGVtZW50KTsKLSAgICAgICAg
aWYgKGlkID09IEpTSFRNTEVsZW1lbnQ6OkFuY2hvckJsdXIpIHsKLSAgICAgICAgICAgIGFuY2hv
ci5ibHVyKCk7Ci0gICAgICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICAgICAgfQot
ICAgICAgICBlbHNlIGlmIChpZCA9PSBKU0hUTUxFbGVtZW50OjpBbmNob3JGb2N1cykgewotICAg
ICAgICAgICAgYW5jaG9yLmZvY3VzKCk7Ci0gICAgICAgICAgICByZXR1cm4ganNVbmRlZmluZWQo
KTsKLSAgICAgICAgfQotICAgICAgICBlbHNlIGlmIChpZCA9PSBKU0hUTUxFbGVtZW50OjpBbmNo
b3JUb1N0cmluZykKLSAgICAgICAgICAgIHJldHVybiBqc1N0cmluZyh0aGlzT2JqLT50b1N0cmlu
ZyhleGVjKSk7Ci0gICAgfQogICAgIGVsc2UgaWYgKGVsZW1lbnQuaGFzTG9jYWxOYW1lKHRhYmxl
VGFnKSkgewogICAgICAgICBIVE1MVGFibGVFbGVtZW50ICZ0YWJsZSA9IHN0YXRpY19jYXN0PEhU
TUxUYWJsZUVsZW1lbnQgJj4oZWxlbWVudCk7CiAgICAgICAgIGlmIChpZCA9PSBKU0hUTUxFbGVt
ZW50OjpUYWJsZUNyZWF0ZVRIZWFkKQpAQCAtMjQwMywxMyArMjE4Niw2IEBACiAgICAgbG9va3Vw
UHV0PEpTSFRNTEVsZW1lbnQsIEpTRWxlbWVudD4oZXhlYywgcHJvcGVydHlOYW1lLCB2YWx1ZSwg
YXR0ciwgJkhUTUxFbGVtZW50VGFibGUsIHRoaXMpOwogfQogCi12b2lkIEpTSFRNTEVsZW1lbnQ6
Omh0bWxTZXR0ZXIoRXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4sIEpTVmFsdWUgKnZhbHVlLCBj
b25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cikKLXsKLSAgICBIVE1MSGVhZEVsZW1lbnQgJmhlYWQg
PSAqc3RhdGljX2Nhc3Q8SFRNTEhlYWRFbGVtZW50Kj4oaW1wbCgpKTsKLSAgICBpZiAodG9rZW4g
PT0gSGVhZFByb2ZpbGUpIAotICAgICAgICBoZWFkLnNldFByb2ZpbGUoc3RyKTsKLX0KLQogdm9p
ZCBKU0hUTUxFbGVtZW50Ojppc0luZGV4U2V0dGVyKEV4ZWNTdGF0ZSAqZXhlYywgaW50IHRva2Vu
LCBKU1ZhbHVlICp2YWx1ZSwgY29uc3QgV2ViQ29yZTo6U3RyaW5nJiBzdHIpCiB7CiAgICAgSFRN
TElzSW5kZXhFbGVtZW50JiBpc2luZGV4ID0gKnN0YXRpY19jYXN0PEhUTUxJc0luZGV4RWxlbWVu
dCo+KGltcGwoKSk7CkBAIC0yNTkxLDM5ICsyMzY3LDYgQEAKICAgICB9CiB9CiAKLXZvaWQgSlNI
VE1MRWxlbWVudDo6dUxpc3RTZXR0ZXIoRXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4sIEpTVmFs
dWUgKnZhbHVlLCBjb25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cikKLXsKLSAgICBIVE1MVUxpc3RF
bGVtZW50JiB1TGlzdCA9ICpzdGF0aWNfY2FzdDxIVE1MVUxpc3RFbGVtZW50Kj4oaW1wbCgpKTsK
LSAgICBzd2l0Y2ggKHRva2VuKSB7Ci0gICAgICAgIGNhc2UgVUxpc3RDb21wYWN0OiAgICAgICAg
IHsgdUxpc3Quc2V0Q29tcGFjdCh2YWx1ZS0+dG9Cb29sZWFuKGV4ZWMpKTsgcmV0dXJuOyB9Ci0g
ICAgICAgIGNhc2UgVUxpc3RUeXBlOiAgICAgICAgICAgIHsgdUxpc3Quc2V0VHlwZShzdHIpOyBy
ZXR1cm47IH0KLSAgICB9Ci19Ci0KLXZvaWQgSlNIVE1MRWxlbWVudDo6b0xpc3RTZXR0ZXIoRXhl
Y1N0YXRlICpleGVjLCBpbnQgdG9rZW4sIEpTVmFsdWUgKnZhbHVlLCBjb25zdCBXZWJDb3JlOjpT
dHJpbmcmIHN0cikKLXsKLSAgICBIVE1MT0xpc3RFbGVtZW50JiBvTGlzdCA9ICpzdGF0aWNfY2Fz
dDxIVE1MT0xpc3RFbGVtZW50Kj4oaW1wbCgpKTsKLSAgICBzd2l0Y2ggKHRva2VuKSB7Ci0gICAg
ICAgIGNhc2UgT0xpc3RDb21wYWN0OiAgICAgICAgIHsgb0xpc3Quc2V0Q29tcGFjdCh2YWx1ZS0+
dG9Cb29sZWFuKGV4ZWMpKTsgcmV0dXJuOyB9Ci0gICAgICAgIGNhc2UgT0xpc3RTdGFydDogICAg
ICAgICAgIHsgb0xpc3Quc2V0U3RhcnQodmFsdWUtPnRvSW50MzIoZXhlYykpOyByZXR1cm47IH0K
LSAgICAgICAgY2FzZSBPTGlzdFR5cGU6ICAgICAgICAgICAgeyBvTGlzdC5zZXRUeXBlKHN0cik7
IHJldHVybjsgfQotICAgIH0KLX0KLQotdm9pZCBKU0hUTUxFbGVtZW50OjpkTGlzdFNldHRlcihF
eGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbiwgSlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6
OlN0cmluZyYgc3RyKQotewotICAgIEhUTUxETGlzdEVsZW1lbnQmIGRMaXN0ID0gKnN0YXRpY19j
YXN0PEhUTUxETGlzdEVsZW1lbnQqPihpbXBsKCkpOwotICAgIGlmICh0b2tlbiA9PSBETGlzdENv
bXBhY3QpCi0gICAgICAgIGRMaXN0LnNldENvbXBhY3QodmFsdWUtPnRvQm9vbGVhbihleGVjKSk7
Ci19Ci0KLXZvaWQgSlNIVE1MRWxlbWVudDo6ZGlyU2V0dGVyKEV4ZWNTdGF0ZSAqZXhlYywgaW50
IHRva2VuLCBKU1ZhbHVlICp2YWx1ZSwgY29uc3QgV2ViQ29yZTo6U3RyaW5nJiBzdHIpCi17Ci0g
ICAgSFRNTERpcmVjdG9yeUVsZW1lbnQmIGRpcmVjdG9yeSA9ICpzdGF0aWNfY2FzdDxIVE1MRGly
ZWN0b3J5RWxlbWVudCo+KGltcGwoKSk7Ci0gICAgaWYgKHRva2VuID09IERpcmVjdG9yeUNvbXBh
Y3QpCi0gICAgICAgIGRpcmVjdG9yeS5zZXRDb21wYWN0KHZhbHVlLT50b0Jvb2xlYW4oZXhlYykp
OwotfQotCiB2b2lkIEpTSFRNTEVsZW1lbnQ6Om1lbnVTZXR0ZXIoRXhlY1N0YXRlICpleGVjLCBp
bnQgdG9rZW4sIEpTVmFsdWUgKnZhbHVlLCBjb25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cikKIHsK
ICAgICBIVE1MTWVudUVsZW1lbnQmIG1lbnUgPSAqc3RhdGljX2Nhc3Q8SFRNTE1lbnVFbGVtZW50
Kj4oaW1wbCgpKTsKQEAgLTI2NDAsMTMgKzIzODMsNiBAQAogICAgIH0KIH0KIAotdm9pZCBKU0hU
TUxFbGVtZW50OjpkaXZTZXR0ZXIoRXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4sIEpTVmFsdWUg
KnZhbHVlLCBjb25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cikKLXsKLSAgICBIVE1MRGl2RWxlbWVu
dCYgZGl2ID0gKnN0YXRpY19jYXN0PEhUTUxEaXZFbGVtZW50Kj4oaW1wbCgpKTsKLSAgICBpZiAo
dG9rZW4gPT0gRGl2QWxpZ24pCi0gICAgICAgIGRpdi5zZXRBbGlnbihzdHIpOwotfQotCiB2b2lk
IEpTSFRNTEVsZW1lbnQ6OnBhcmFncmFwaFNldHRlcihFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tl
biwgSlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKQogewogICAgIEhU
TUxQYXJhZ3JhcGhFbGVtZW50JiBwYXJhZ3JhcGggPSAqc3RhdGljX2Nhc3Q8SFRNTFBhcmFncmFw
aEVsZW1lbnQqPihpbXBsKCkpOwpAQCAtMjczMSwyNSArMjQ2Nyw2IEBACiAgICAgfQogfQogCi12
b2lkIEpTSFRNTEVsZW1lbnQ6OmFuY2hvclNldHRlcihFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tl
biwgSlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKQotewotICAgIEhU
TUxBbmNob3JFbGVtZW50JiBhbmNob3IgPSAqc3RhdGljX2Nhc3Q8SFRNTEFuY2hvckVsZW1lbnQq
PihpbXBsKCkpOwotICAgIHN3aXRjaCAodG9rZW4pIHsKLSAgICAgICAgY2FzZSBBbmNob3JBY2Nl
c3NLZXk6ICAgICAgIHsgYW5jaG9yLnNldEFjY2Vzc0tleShzdHIpOyByZXR1cm47IH0KLSAgICAg
ICAgY2FzZSBBbmNob3JDaGFyc2V0OiAgICAgICAgIHsgYW5jaG9yLnNldENoYXJzZXQoc3RyKTsg
cmV0dXJuOyB9Ci0gICAgICAgIGNhc2UgQW5jaG9yQ29vcmRzOiAgICAgICAgICB7IGFuY2hvci5z
ZXRDb29yZHMoc3RyKTsgcmV0dXJuOyB9Ci0gICAgICAgIGNhc2UgQW5jaG9ySHJlZjogICAgICAg
ICAgICB7IGFuY2hvci5zZXRIcmVmKHN0cik7IHJldHVybjsgfQotICAgICAgICBjYXNlIEFuY2hv
ckhyZWZMYW5nOiAgICAgICAgeyBhbmNob3Iuc2V0SHJlZmxhbmcoc3RyKTsgcmV0dXJuOyB9Ci0g
ICAgICAgIGNhc2UgQW5jaG9yTmFtZTogICAgICAgICAgICB7IGFuY2hvci5zZXROYW1lKHN0cik7
IHJldHVybjsgfQotICAgICAgICBjYXNlIEFuY2hvclJlbDogICAgICAgICAgICAgeyBhbmNob3Iu
c2V0UmVsKHN0cik7IHJldHVybjsgfQotICAgICAgICBjYXNlIEFuY2hvclJldjogICAgICAgICAg
ICAgeyBhbmNob3Iuc2V0UmV2KHN0cik7IHJldHVybjsgfQotICAgICAgICBjYXNlIEFuY2hvclNo
YXBlOiAgICAgICAgICAgeyBhbmNob3Iuc2V0U2hhcGUoc3RyKTsgcmV0dXJuOyB9Ci0gICAgICAg
IGNhc2UgQW5jaG9yVGFiSW5kZXg6ICAgICAgICB7IGFuY2hvci5zZXRUYWJJbmRleCh2YWx1ZS0+
dG9JbnQzMihleGVjKSk7IHJldHVybjsgfQotICAgICAgICBjYXNlIEFuY2hvclRhcmdldDogICAg
ICAgICAgeyBhbmNob3Iuc2V0VGFyZ2V0KHN0cik7IHJldHVybjsgfQotICAgICAgICBjYXNlIEFu
Y2hvclR5cGU6ICAgICAgICAgICAgeyBhbmNob3Iuc2V0VHlwZShzdHIpOyByZXR1cm47IH0KLSAg
ICB9Ci19Ci0KIHZvaWQgSlNIVE1MRWxlbWVudDo6aW1hZ2VTZXR0ZXIoRXhlY1N0YXRlICpleGVj
LCBpbnQgdG9rZW4sIEpTVmFsdWUgKnZhbHVlLCBjb25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cikK
IHsKICAgICBIVE1MSW1hZ2VFbGVtZW50JiBpbWFnZSA9ICpzdGF0aWNfY2FzdDxIVE1MSW1hZ2VF
bGVtZW50Kj4oaW1wbCgpKTsKQEAgLTI4MDYsMjQgKzI1MjMsNiBAQAogICAgIH0KIH0KIAotdm9p
ZCBKU0hUTUxFbGVtZW50OjphcHBsZXRTZXR0ZXIoRXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4s
IEpTVmFsdWUgKnZhbHVlLCBjb25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cikKLXsKLSAgICBIVE1M
QXBwbGV0RWxlbWVudCYgYXBwbGV0ID0gKnN0YXRpY19jYXN0PEhUTUxBcHBsZXRFbGVtZW50Kj4o
aW1wbCgpKTsKLSAgICBzd2l0Y2ggKHRva2VuKSB7Ci0gICAgICAgIGNhc2UgQXBwbGV0QWxpZ246
ICAgICAgICAgICB7IGFwcGxldC5zZXRBbGlnbihzdHIpOyByZXR1cm47IH0KLSAgICAgICAgY2Fz
ZSBBcHBsZXRBbHQ6ICAgICAgICAgICAgIHsgYXBwbGV0LnNldEFsdChzdHIpOyByZXR1cm47IH0K
LSAgICAgICAgY2FzZSBBcHBsZXRBcmNoaXZlOiAgICAgICAgIHsgYXBwbGV0LnNldEFyY2hpdmUo
c3RyKTsgcmV0dXJuOyB9Ci0gICAgICAgIGNhc2UgQXBwbGV0Q29kZTogICAgICAgICAgICB7IGFw
cGxldC5zZXRDb2RlKHN0cik7IHJldHVybjsgfQotICAgICAgICBjYXNlIEFwcGxldENvZGVCYXNl
OiAgICAgICAgeyBhcHBsZXQuc2V0Q29kZUJhc2Uoc3RyKTsgcmV0dXJuOyB9Ci0gICAgICAgIGNh
c2UgQXBwbGV0SGVpZ2h0OiAgICAgICAgICB7IGFwcGxldC5zZXRIZWlnaHQoc3RyKTsgcmV0dXJu
OyB9Ci0gICAgICAgIGNhc2UgQXBwbGV0SHNwYWNlOiAgICAgICAgICB7IGFwcGxldC5zZXRIc3Bh
Y2Uoc3RyKTsgcmV0dXJuOyB9Ci0gICAgICAgIGNhc2UgQXBwbGV0TmFtZTogICAgICAgICAgICB7
IGFwcGxldC5zZXROYW1lKHN0cik7IHJldHVybjsgfQotICAgICAgICBjYXNlIEFwcGxldE9iamVj
dDogICAgICAgICAgeyBhcHBsZXQuc2V0T2JqZWN0KHN0cik7IHJldHVybjsgfQotICAgICAgICBj
YXNlIEFwcGxldFZzcGFjZTogICAgICAgICAgeyBhcHBsZXQuc2V0VnNwYWNlKHN0cik7IHJldHVy
bjsgfQotICAgICAgICBjYXNlIEFwcGxldFdpZHRoOiAgICAgICAgICAgeyBhcHBsZXQuc2V0V2lk
dGgoc3RyKTsgcmV0dXJuOyB9Ci0gICAgfQotfQotCiB2b2lkIEpTSFRNTEVsZW1lbnQ6OmVtYmVk
U2V0dGVyKEV4ZWNTdGF0ZSosIGludCB0b2tlbiwgSlNWYWx1ZSosIGNvbnN0IFdlYkNvcmU6OlN0
cmluZyYgc3RyKQogewogICAgIEhUTUxFbWJlZEVsZW1lbnQmIGVtYmVkID0gKnN0YXRpY19jYXN0
PEhUTUxFbWJlZEVsZW1lbnQqPihpbXBsKCkpOwpJbmRleDogYmluZGluZ3MvanMva2pzX2h0bWwu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBiaW5kaW5ncy9qcy9ranNfaHRtbC5oCShyZXZpc2lvbiAxNDQ1MCkK
KysrIGJpbmRpbmdzL2pzL2tqc19odG1sLmgJKHdvcmtpbmcgY29weSkKQEAgLTc4LDEzICs3OCwx
MyBAQAogICAgIHZpcnR1YWwgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8oKSBjb25zdDsKICAg
ICBzdGF0aWMgY29uc3QgQ2xhc3NJbmZvIGluZm87CiAKLSAgICBzdGF0aWMgY29uc3QgQ2xhc3NJ
bmZvIGh0bWxfaW5mbywgaXNJbmRleF9pbmZvLCBib2R5X2luZm8sIGZvcm1faW5mbywKKyAgICBz
dGF0aWMgY29uc3QgQ2xhc3NJbmZvIGlzSW5kZXhfaW5mbywgYm9keV9pbmZvLCBmb3JtX2luZm8s
CiAgICAgICBzZWxlY3RfaW5mbywgb3B0R3JvdXBfaW5mbywgb3B0aW9uX2luZm8sIGlucHV0X2lu
Zm8sIHRleHRBcmVhX2luZm8sCi0gICAgICBidXR0b25faW5mbywgbGFiZWxfaW5mbywgZmllbGRT
ZXRfaW5mbywgbGVnZW5kX2luZm8sIHVsX2luZm8sIG9sX2luZm8sCi0gICAgICBkbF9pbmZvLCBk
aXJfaW5mbywgbWVudV9pbmZvLCBsaV9pbmZvLCBkaXZfaW5mbywgcF9pbmZvLCBoZWFkaW5nX2lu
Zm8sCisgICAgICBidXR0b25faW5mbywgbGFiZWxfaW5mbywgZmllbGRTZXRfaW5mbywgbGVnZW5k
X2luZm8sIAorICAgICAgbWVudV9pbmZvLCBsaV9pbmZvLCBwX2luZm8sIGhlYWRpbmdfaW5mbywK
ICAgICAgIGJsb2NrUXVvdGVfaW5mbywgcV9pbmZvLCBwcmVfaW5mbywgYnJfaW5mbywgYmFzZUZv
bnRfaW5mbywgZm9udF9pbmZvLAotICAgICAgaHJfaW5mbywgbW9kX2luZm8sIGFfaW5mbywgaW1n
X2luZm8sIG9iamVjdF9pbmZvLCBwYXJhbV9pbmZvLAotICAgICAgYXBwbGV0X2luZm8sIGVtYmVk
X2luZm8sIG1hcF9pbmZvLCBhcmVhX2luZm8sIHNjcmlwdF9pbmZvLCB0YWJsZV9pbmZvLAorICAg
ICAgaHJfaW5mbywgbW9kX2luZm8sIGltZ19pbmZvLCBvYmplY3RfaW5mbywgcGFyYW1faW5mbywK
KyAgICAgIGVtYmVkX2luZm8sIG1hcF9pbmZvLCBhcmVhX2luZm8sIHNjcmlwdF9pbmZvLCB0YWJs
ZV9pbmZvLAogICAgICAgY2FwdGlvbl9pbmZvLCBjb2xfaW5mbywgdGFibGVzZWN0aW9uX2luZm8s
IHRyX2luZm8sCiAgICAgICB0YWJsZWNlbGxfaW5mbywgZnJhbWVTZXRfaW5mbywgZnJhbWVfaW5m
bywgaUZyYW1lX2luZm8sIG1hcnF1ZWVfaW5mbzsKIApAQCAtOTMsMTggKzkzLDE2IEBACiAgICAg
dHlwZWRlZiB2b2lkIChKU0hUTUxFbGVtZW50OjoqU2V0dGVyRnVuY3Rpb24pKEV4ZWNTdGF0ZSAq
ZXhlYywgaW50IHRva2VuLCBKU1ZhbHVlICp2YWx1ZSwgY29uc3QgV2ViQ29yZTo6U3RyaW5nJiBz
dHIpOwogICAgIHN0cnVjdCBBY2Nlc3NvcnMgeyBHZXR0ZXJGdW5jdGlvbiBtX2dldHRlcjsgU2V0
dGVyRnVuY3Rpb24gbV9zZXR0ZXI7IH07CiAgICAgY29uc3QgQWNjZXNzb3JzKiBhY2Nlc3NvcnMo
KSBjb25zdDsKLSAgICBzdGF0aWMgY29uc3QgQWNjZXNzb3JzIGh0bWxfYWNjZXNzb3JzLCBpc0lu
ZGV4X2FjY2Vzc29ycywgYm9keV9hY2Nlc3NvcnMsIGZvcm1fYWNjZXNzb3JzLAorICAgIHN0YXRp
YyBjb25zdCBBY2Nlc3NvcnMgaXNJbmRleF9hY2Nlc3NvcnMsIGJvZHlfYWNjZXNzb3JzLCBmb3Jt
X2FjY2Vzc29ycywKICAgICAgIHNlbGVjdF9hY2Nlc3NvcnMsIG9wdEdyb3VwX2FjY2Vzc29ycywg
b3B0aW9uX2FjY2Vzc29ycywgaW5wdXRfYWNjZXNzb3JzLCB0ZXh0QXJlYV9hY2Nlc3NvcnMsCi0g
ICAgICBidXR0b25fYWNjZXNzb3JzLCBsYWJlbF9hY2Nlc3NvcnMsIGZpZWxkU2V0X2FjY2Vzc29y
cywgbGVnZW5kX2FjY2Vzc29ycywgdWxfYWNjZXNzb3JzLCBvbF9hY2Nlc3NvcnMsCi0gICAgICBk
bF9hY2Nlc3NvcnMsIGRpcl9hY2Nlc3NvcnMsIG1lbnVfYWNjZXNzb3JzLCBsaV9hY2Nlc3NvcnMs
IGRpdl9hY2Nlc3NvcnMsIHBfYWNjZXNzb3JzLCBoZWFkaW5nX2FjY2Vzc29ycywKKyAgICAgIGJ1
dHRvbl9hY2Nlc3NvcnMsIGxhYmVsX2FjY2Vzc29ycywgZmllbGRTZXRfYWNjZXNzb3JzLCBsZWdl
bmRfYWNjZXNzb3JzLCAKKyAgICAgIG1lbnVfYWNjZXNzb3JzLCBsaV9hY2Nlc3NvcnMsIHBfYWNj
ZXNzb3JzLCBoZWFkaW5nX2FjY2Vzc29ycywKICAgICAgIGJsb2NrUXVvdGVfYWNjZXNzb3JzLCBx
X2FjY2Vzc29ycywgcHJlX2FjY2Vzc29ycywgYnJfYWNjZXNzb3JzLCBiYXNlRm9udF9hY2Nlc3Nv
cnMsIGZvbnRfYWNjZXNzb3JzLAotICAgICAgaHJfYWNjZXNzb3JzLCBtb2RfYWNjZXNzb3JzLCBh
X2FjY2Vzc29ycywgaW1nX2FjY2Vzc29ycywgb2JqZWN0X2FjY2Vzc29ycywgcGFyYW1fYWNjZXNz
b3JzLAotICAgICAgYXBwbGV0X2FjY2Vzc29ycywgZW1iZWRfYWNjZXNzb3JzLCBtYXBfYWNjZXNz
b3JzLCBhcmVhX2FjY2Vzc29ycywgc2NyaXB0X2FjY2Vzc29ycywgdGFibGVfYWNjZXNzb3JzLAor
ICAgICAgaHJfYWNjZXNzb3JzLCBtb2RfYWNjZXNzb3JzLCBpbWdfYWNjZXNzb3JzLCBvYmplY3Rf
YWNjZXNzb3JzLCBwYXJhbV9hY2Nlc3NvcnMsCisgICAgICBlbWJlZF9hY2Nlc3NvcnMsIG1hcF9h
Y2Nlc3NvcnMsIGFyZWFfYWNjZXNzb3JzLCBzY3JpcHRfYWNjZXNzb3JzLCB0YWJsZV9hY2Nlc3Nv
cnMsCiAgICAgICBjYXB0aW9uX2FjY2Vzc29ycywgY29sX2FjY2Vzc29ycywgdGFibGVzZWN0aW9u
X2FjY2Vzc29ycywgdHJfYWNjZXNzb3JzLAogICAgICAgdGFibGVjZWxsX2FjY2Vzc29ycywgZnJh
bWVTZXRfYWNjZXNzb3JzLCBmcmFtZV9hY2Nlc3NvcnMsIGlGcmFtZV9hY2Nlc3NvcnMsIG1hcnF1
ZWVfYWNjZXNzb3JzOwogCi0gICAgSlNWYWx1ZSAqaHRtbEdldHRlcihFeGVjU3RhdGUqIGV4ZWMs
IGludCB0b2tlbikgY29uc3Q7Ci0gICAgdm9pZCAgaHRtbFNldHRlcihFeGVjU3RhdGUgKmV4ZWMs
IGludCB0b2tlbiwgSlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKTsK
ICAgICBKU1ZhbHVlICppc0luZGV4R2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBj
b25zdDsKICAgICB2b2lkICBpc0luZGV4U2V0dGVyKEV4ZWNTdGF0ZSAqZXhlYywgaW50IHRva2Vu
LCBKU1ZhbHVlICp2YWx1ZSwgY29uc3QgV2ViQ29yZTo6U3RyaW5nJiBzdHIpOwogICAgIEpTVmFs
dWUgKmJvZHlHZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBpbnQgdG9rZW4pIGNvbnN0OwpAQCAtMTI5
LDIwICsxMjcsMTAgQEAKICAgICB2b2lkICBmaWVsZFNldFNldHRlcihFeGVjU3RhdGUgKmV4ZWMs
IGludCB0b2tlbiwgSlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKTsK
ICAgICBKU1ZhbHVlICpsZWdlbmRHZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBpbnQgdG9rZW4pIGNv
bnN0OwogICAgIHZvaWQgIGxlZ2VuZFNldHRlcihFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbiwg
SlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKTsKLSAgICBKU1ZhbHVl
ICp1TGlzdEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGludCB0b2tlbikgY29uc3Q7Ci0gICAgdm9p
ZCAgdUxpc3RTZXR0ZXIoRXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4sIEpTVmFsdWUgKnZhbHVl
LCBjb25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cik7Ci0gICAgSlNWYWx1ZSAqb0xpc3RHZXR0ZXIo
RXhlY1N0YXRlKiBleGVjLCBpbnQgdG9rZW4pIGNvbnN0OwotICAgIHZvaWQgIG9MaXN0U2V0dGVy
KEV4ZWNTdGF0ZSAqZXhlYywgaW50IHRva2VuLCBKU1ZhbHVlICp2YWx1ZSwgY29uc3QgV2ViQ29y
ZTo6U3RyaW5nJiBzdHIpOwotICAgIEpTVmFsdWUgKmRMaXN0R2V0dGVyKEV4ZWNTdGF0ZSogZXhl
YywgaW50IHRva2VuKSBjb25zdDsKLSAgICB2b2lkICBkTGlzdFNldHRlcihFeGVjU3RhdGUgKmV4
ZWMsIGludCB0b2tlbiwgSlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3Ry
KTsKLSAgICBKU1ZhbHVlICpkaXJHZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBpbnQgdG9rZW4pIGNv
bnN0OwotICAgIHZvaWQgIGRpclNldHRlcihFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbiwgSlNW
YWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKTsKICAgICBKU1ZhbHVlICpt
ZW51R2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBjb25zdDsKICAgICB2b2lkICBt
ZW51U2V0dGVyKEV4ZWNTdGF0ZSAqZXhlYywgaW50IHRva2VuLCBKU1ZhbHVlICp2YWx1ZSwgY29u
c3QgV2ViQ29yZTo6U3RyaW5nJiBzdHIpOwogICAgIEpTVmFsdWUgKmxpR2V0dGVyKEV4ZWNTdGF0
ZSogZXhlYywgaW50IHRva2VuKSBjb25zdDsKICAgICB2b2lkICBsaVNldHRlcihFeGVjU3RhdGUg
KmV4ZWMsIGludCB0b2tlbiwgSlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYg
c3RyKTsKLSAgICBKU1ZhbHVlICpkaXZHZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBpbnQgdG9rZW4p
IGNvbnN0OwotICAgIHZvaWQgIGRpdlNldHRlcihFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbiwg
SlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKTsKICAgICBKU1ZhbHVl
ICpwYXJhZ3JhcGhHZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBpbnQgdG9rZW4pIGNvbnN0OwogICAg
IHZvaWQgIHBhcmFncmFwaFNldHRlcihFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbiwgSlNWYWx1
ZSAqdmFsdWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKTsKICAgICBKU1ZhbHVlICpoZWFk
aW5nR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBjb25zdDsKQEAgLTE2MywxNiAr
MTUxLDEyIEBACiAgICAgdm9pZCAgaHJTZXR0ZXIoRXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4s
IEpTVmFsdWUgKnZhbHVlLCBjb25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cik7CiAgICAgSlNWYWx1
ZSAqbW9kR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBjb25zdDsKICAgICB2b2lk
ICBtb2RTZXR0ZXIoRXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4sIEpTVmFsdWUgKnZhbHVlLCBj
b25zdCBXZWJDb3JlOjpTdHJpbmcmIHN0cik7Ci0gICAgSlNWYWx1ZSAqYW5jaG9yR2V0dGVyKEV4
ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBjb25zdDsKLSAgICB2b2lkICBhbmNob3JTZXR0ZXIo
RXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4sIEpTVmFsdWUgKnZhbHVlLCBjb25zdCBXZWJDb3Jl
OjpTdHJpbmcmIHN0cik7CiAgICAgSlNWYWx1ZSAqaW1hZ2VHZXR0ZXIoRXhlY1N0YXRlKiBleGVj
LCBpbnQgdG9rZW4pIGNvbnN0OwogICAgIHZvaWQgIGltYWdlU2V0dGVyKEV4ZWNTdGF0ZSAqZXhl
YywgaW50IHRva2VuLCBKU1ZhbHVlICp2YWx1ZSwgY29uc3QgV2ViQ29yZTo6U3RyaW5nJiBzdHIp
OwogICAgIEpTVmFsdWUgKm9iamVjdEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGludCB0b2tlbikg
Y29uc3Q7CiAgICAgdm9pZCAgb2JqZWN0U2V0dGVyKEV4ZWNTdGF0ZSAqZXhlYywgaW50IHRva2Vu
LCBKU1ZhbHVlICp2YWx1ZSwgY29uc3QgV2ViQ29yZTo6U3RyaW5nJiBzdHIpOwogICAgIEpTVmFs
dWUgKnBhcmFtR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50IHRva2VuKSBjb25zdDsKICAgICB2
b2lkICBwYXJhbVNldHRlcihFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbiwgSlNWYWx1ZSAqdmFs
dWUsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYgc3RyKTsKLSAgICBKU1ZhbHVlICphcHBsZXRHZXR0
ZXIoRXhlY1N0YXRlKiBleGVjLCBpbnQgdG9rZW4pIGNvbnN0OwotICAgIHZvaWQgIGFwcGxldFNl
dHRlcihFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbiwgSlNWYWx1ZSAqdmFsdWUsIGNvbnN0IFdl
YkNvcmU6OlN0cmluZyYgc3RyKTsKICAgICBKU1ZhbHVlICplbWJlZEdldHRlcihFeGVjU3RhdGUq
LCBpbnQgdG9rZW4pIGNvbnN0OwogICAgIHZvaWQgIGVtYmVkU2V0dGVyKEV4ZWNTdGF0ZSosIGlu
dCB0b2tlbiwgSlNWYWx1ZSosIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYpOwogICAgIEpTVmFsdWUg
Km1hcEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGludCB0b2tlbikgY29uc3Q7CkBAIC0yMDIsNyAr
MTg2LDcgQEAKICAgICBKU1ZhbHVlICptYXJxdWVlR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgaW50
IHRva2VuKSBjb25zdDsKICAgICB2b2lkICBtYXJxdWVlU2V0dGVyKEV4ZWNTdGF0ZSAqZXhlYywg
aW50IHRva2VuLCBKU1ZhbHVlICp2YWx1ZSwgY29uc3QgV2ViQ29yZTo6U3RyaW5nJiBzdHIpOwog
Ci0gICAgZW51bSB7IEh0bWxWZXJzaW9uLCBIZWFkUHJvZmlsZSwgTGlua0hyZWYsIExpbmtSZWws
IExpbmtNZWRpYSwKKyAgICBlbnVtIHsgSGVhZFByb2ZpbGUsIExpbmtIcmVmLCBMaW5rUmVsLCBM
aW5rTWVkaWEsCiAgICAgICAgICAgIExpbmtDaGFyc2V0LCBMaW5rRGlzYWJsZWQsIExpbmtIcmVm
TGFuZywgTGlua1JldiwgTGlua1RhcmdldCwgTGlua1R5cGUsCiAgICAgICAgICAgIExpbmtTaGVl
dCwgVGl0bGVUZXh0LCBNZXRhTmFtZSwgTWV0YUh0dHBFcXVpdiwgTWV0YUNvbnRlbnQsIE1ldGFT
Y2hlbWUsCiAgICAgICAgICAgIEJhc2VIcmVmLCBCYXNlVGFyZ2V0LCBJc0luZGV4Rm9ybSwgSXNJ
bmRleFByb21wdCwgU3R5bGVEaXNhYmxlZCwKQEAgLTIyOCwyNSArMjEyLDE4IEBACiAgICAgICAg
ICAgIFRleHRBcmVhQmx1ciwgVGV4dEFyZWFGb2N1cywgQnV0dG9uQmx1ciwgQnV0dG9uRm9jdXMs
IEJ1dHRvbkZvcm0sIEJ1dHRvblRhYkluZGV4LCBCdXR0b25OYW1lLAogICAgICAgICAgICBCdXR0
b25EaXNhYmxlZCwgQnV0dG9uQWNjZXNzS2V5LCBCdXR0b25UeXBlLCBCdXR0b25WYWx1ZSwgTGFi
ZWxIdG1sRm9yLAogICAgICAgICAgICBMYWJlbEZvcm0sIExhYmVsRm9jdXMsIExhYmVsQWNjZXNz
S2V5LCBGaWVsZFNldEZvcm0sIExlZ2VuZEZvcm0sIExlZ2VuZEFjY2Vzc0tleSwKLSAgICAgICAg
ICAgTGVnZW5kQWxpZ24sIExlZ2VuZEZvY3VzLCBVTGlzdFR5cGUsIFVMaXN0Q29tcGFjdCwgT0xp
c3RTdGFydCwgT0xpc3RDb21wYWN0LAotICAgICAgICAgICBPTGlzdFR5cGUsIERMaXN0Q29tcGFj
dCwgRGlyZWN0b3J5Q29tcGFjdCwgTWVudUNvbXBhY3QsIExJVHlwZSwKLSAgICAgICAgICAgTElW
YWx1ZSwgRGl2QWxpZ24sIFBhcmFncmFwaEFsaWduLCBIZWFkaW5nQWxpZ24sIEJsb2NrUXVvdGVD
aXRlLAorICAgICAgICAgICBMZWdlbmRBbGlnbiwgTGVnZW5kRm9jdXMsIE1lbnVDb21wYWN0LCBM
SVR5cGUsCisgICAgICAgICAgIExJVmFsdWUsIFBhcmFncmFwaEFsaWduLCBIZWFkaW5nQWxpZ24s
IEJsb2NrUXVvdGVDaXRlLAogICAgICAgICAgICBRdW90ZUNpdGUsIFByZVdpZHRoLCBQcmVXcmFw
LCBCUkNsZWFyLCBCYXNlRm9udENvbG9yLCBCYXNlRm9udFNpemUsCiAgICAgICAgICAgIEJhc2VG
b250RmFjZSwgRm9udENvbG9yLCBGb250U2l6ZSwgRm9udEZhY2UsIEhSV2lkdGgsIEhSTm9TaGFk
ZSwKLSAgICAgICAgICAgSFJBbGlnbiwgSFJTaXplLCBNb2RDaXRlLCBNb2REYXRlVGltZSwgQW5j
aG9yU2hhcGUsIEFuY2hvclJlbCwKLSAgICAgICAgICAgQW5jaG9yQWNjZXNzS2V5LCBBbmNob3JD
b29yZHMsIEFuY2hvckhyZWYsIEFuY2hvclByb3RvY29sLCBBbmNob3JIb3N0LAotICAgICAgICAg
ICBBbmNob3JDaGFyc2V0LCBBbmNob3JIcmVmTGFuZywgQW5jaG9ySG9zdG5hbWUsIEFuY2hvclR5
cGUsIEFuY2hvckZvY3VzLAotICAgICAgICAgICBBbmNob3JQb3J0LCBBbmNob3JQYXRoTmFtZSwg
QW5jaG9ySGFzaCwgQW5jaG9yU2VhcmNoLCBBbmNob3JOYW1lLAotICAgICAgICAgICBBbmNob3JS
ZXYsIEFuY2hvclRhYkluZGV4LCBBbmNob3JUYXJnZXQsIEFuY2hvclRleHQsIEFuY2hvckJsdXIs
IEFuY2hvclRvU3RyaW5nLCAKKyAgICAgICAgICAgSFJBbGlnbiwgSFJTaXplLCBNb2RDaXRlLCBN
b2REYXRlVGltZSwKICAgICAgICAgICAgSW1hZ2VOYW1lLCBJbWFnZUFsaWduLCBJbWFnZUhzcGFj
ZSwgSW1hZ2VWc3BhY2UsIEltYWdlVXNlTWFwLCBJbWFnZUFsdCwKICAgICAgICAgICAgSW1hZ2VM
b3dTcmMsIEltYWdlV2lkdGgsIEltYWdlSXNNYXAsIEltYWdlQm9yZGVyLCBJbWFnZUhlaWdodCwg
SW1hZ2VDb21wbGV0ZSwKICAgICAgICAgICAgSW1hZ2VMb25nRGVzYywgSW1hZ2VTcmMsIEltYWdl
WCwgSW1hZ2VZLCBPYmplY3RIc3BhY2UsIE9iamVjdEhlaWdodCwgT2JqZWN0QWxpZ24sCiAgICAg
ICAgICAgIE9iamVjdEJvcmRlciwgT2JqZWN0Q29kZSwgT2JqZWN0VHlwZSwgT2JqZWN0VnNwYWNl
LCBPYmplY3RBcmNoaXZlLAogICAgICAgICAgICBPYmplY3REZWNsYXJlLCBPYmplY3RGb3JtLCBP
YmplY3RDb2RlQmFzZSwgT2JqZWN0Q29kZVR5cGUsIE9iamVjdERhdGEsCiAgICAgICAgICAgIE9i
amVjdE5hbWUsIE9iamVjdFN0YW5kYnksIE9iamVjdFRhYkluZGV4LCBPYmplY3RVc2VNYXAsIE9i
amVjdFdpZHRoLCBPYmplY3RDb250ZW50RG9jdW1lbnQsCi0gICAgICAgICAgIFBhcmFtTmFtZSwg
UGFyYW1UeXBlLCBQYXJhbVZhbHVlVHlwZSwgUGFyYW1WYWx1ZSwgQXBwbGV0QXJjaGl2ZSwKLSAg
ICAgICAgICAgQXBwbGV0QWx0LCBBcHBsZXRDb2RlLCBBcHBsZXRXaWR0aCwgQXBwbGV0QWxpZ24s
IEFwcGxldENvZGVCYXNlLAotICAgICAgICAgICBBcHBsZXROYW1lLCBBcHBsZXRIZWlnaHQsIEFw
cGxldEhzcGFjZSwgQXBwbGV0T2JqZWN0LCBBcHBsZXRWc3BhY2UsCisgICAgICAgICAgIFBhcmFt
TmFtZSwgUGFyYW1UeXBlLCBQYXJhbVZhbHVlVHlwZSwgUGFyYW1WYWx1ZSwgCiAgICAgICAgICAg
IEVtYmVkQWxpZ24sIEVtYmVkSGVpZ2h0LCBFbWJlZE5hbWUsIEVtYmVkU3JjLCBFbWJlZFR5cGUs
IEVtYmVkV2lkdGgsCiAgICAgICAgICAgIE1hcEFyZWFzLCBNYXBOYW1lLCBBcmVhSGFzaCwgQXJl
YUhyZWYsIEFyZWFUYXJnZXQsIEFyZWFQb3J0LCBBcmVhU2hhcGUsCiAgICAgICAgICAgIEFyZWFD
b29yZHMsIEFyZWFBbHQsIEFyZWFBY2Nlc3NLZXksIEFyZWFOb0hyZWYsIEFyZWFIb3N0LCBBcmVh
UHJvdG9jb2wsCkluZGV4OiBEZXJpdmVkU291cmNlcy5tYWtlCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIERlcml2
ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDE0NDUwKQorKysgRGVyaXZlZFNvdXJjZXMubWFrZQko
d29ya2luZyBjb3B5KQpAQCAtNjIsMTUgKzYyLDIzIEBACiAgICAgSlNFbGVtZW50LmggXAogICAg
IEpTRXZlbnQuaCBcCiAgICAgSlNFbnRpdHkuaCBcCisJSlNIVE1MQXBwbGV0RWxlbWVudC5oIFwK
KwlKU0hUTUxBbmNob3JFbGVtZW50LmggXAogICAgIEpTSFRNTEJhc2VFbGVtZW50LmggXAogICAg
IEpTSFRNTENhbnZhc0VsZW1lbnQuaCBcCiAgICAgSlNIVE1MRG9jdW1lbnQuaCBcCisJSlNIVE1M
RGlyZWN0b3J5RWxlbWVudC5oIFwKKwlKU0hUTUxEaXZFbGVtZW50LmggXAorCUpTSFRNTERMaXN0
RWxlbWVudC5oIFwKICAgICBKU0hUTUxFbGVtZW50LmggXAogICAgIEpTSFRNTEhlYWRFbGVtZW50
LmggXAorCUpTSFRNTEh0bWxFbGVtZW50LmggXAogICAgIEpTSFRNTExpbmtFbGVtZW50LmggXAog
ICAgIEpTSFRNTE1ldGFFbGVtZW50LmggXAorCUpTSFRNTE9MaXN0RWxlbWVudC5oIFwKICAgICBK
U0hUTUxTdHlsZUVsZW1lbnQuaCBcCiAgICAgSlNIVE1MVGl0bGVFbGVtZW50LmggXAorCUpTSFRN
TFVMaXN0RWxlbWVudC5oIFwKICAgICBKU0tleWJvYXJkRXZlbnQuaCBcCiAgICAgSlNNb3VzZUV2
ZW50LmggXAogICAgIEpTTXV0YXRpb25FdmVudC5oIFwKSW5kZXg6IGh0bWwvSFRNTEh0bWxFbGVt
ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBodG1sL0hUTUxIdG1sRWxlbWVudC5pZGwJKHJldmlzaW9u
IDApCisrKyBodG1sL0hUTUxIdG1sRWxlbWVudC5pZGwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MjggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYgQXBwbGUgQ29tcHV0ZXIsIEluYy4KKyAq
CisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUg
aXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9y
IChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5
IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBi
dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50
eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig
bW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhp
cyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisg
KiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UgLSBT
dWl0ZSAzMzAsCisgKiBCb3N0b24sIE1BIDAyMTExLTEzMDcsIFVTQS4KKyAqLworCittb2R1bGUg
aHRtbCB7CisKKyAgICBpbnRlcmZhY2UgW0xlZ2FjeVBhcmVudD1LSlM6OkpTSFRNTEVsZW1lbnRd
IEhUTUxIdG1sRWxlbWVudCA6IEhUTUxFbGVtZW50IHsKKworICAgICAgICBhdHRyaWJ1dGUgRE9N
U3RyaW5nIHZlcnNpb247CisgICAgICAgIAorICAgIH07CisKK30KSW5kZXg6IGh0bWwvSFRNTEFw
cGxldEVsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGh0bWwvSFRNTEFwcGxldEVsZW1lbnQuaWRs
CShyZXZpc2lvbiAwKQorKysgaHRtbC9IVE1MQXBwbGV0RWxlbWVudC5pZGwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYgQXBwbGUgQ29tcHV0
ZXIsIEluYy4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiBy
ZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo
ZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkg
dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhl
IExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICog
VGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1
c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w
bGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZl
ZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFs
b25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3Qs
IHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1w
bGUgUGxhY2UgLSBTdWl0ZSAzMzAsCisgKiBCb3N0b24sIE1BIDAyMTExLTEzMDcsIFVTQS4KKyAq
LworCittb2R1bGUgaHRtbCB7CisKKyAgICBpbnRlcmZhY2UgW0xlZ2FjeVBhcmVudD1LSlM6OkpT
SFRNTEVsZW1lbnRdIEhUTUxBcHBsZXRFbGVtZW50IDogSFRNTEVsZW1lbnQgeworICAgICAgICBh
dHRyaWJ1dGUgRE9NU3RyaW5nIGFsaWduOworICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFs
dDsKKyAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBhcmNoaXZlOworICAgICAgICBhdHRyaWJ1
dGUgRE9NU3RyaW5nIGNvZGU7CisgICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgY29kZUJhc2U7
CisgICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgaGVpZ2h0OworICAgICAgICBhdHRyaWJ1dGUg
RE9NU3RyaW5nIGhzcGFjZTsKKyAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBuYW1lOworICAg
ICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIG9iamVjdDsKKyAgICAgICAgYXR0cmlidXRlIERPTVN0
cmluZyB2c3BhY2U7CisgICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgd2lkdGg7CisgICAgfTsK
KworfQpJbmRleDogaHRtbC9IVE1MRGlyZWN0b3J5RWxlbWVudC5pZGwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
aHRtbC9IVE1MRGlyZWN0b3J5RWxlbWVudC5pZGwJKHJldmlzaW9uIDApCisrKyBodG1sL0hUTUxE
aXJlY3RvcnlFbGVtZW50LmlkbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAwNiBBcHBsZSBDb21wdXRlciwgSW5jLgorICoKKyAqIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq
IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0
aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0
ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFO
WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu
CisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNl
ZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwKKyAq
IEJvc3RvbiwgTUEgMDIxMTEtMTMwNywgVVNBLgorICovCisKK21vZHVsZSBodG1sIHsKKworICAg
IGludGVyZmFjZSBbTGVnYWN5UGFyZW50PUtKUzo6SlNIVE1MRWxlbWVudF0gSFRNTERpcmVjdG9y
eUVsZW1lbnQgOiBIVE1MRWxlbWVudCB7CisgICAgICAgIGF0dHJpYnV0ZSBib29sZWFuIGNvbXBh
Y3Q7CisgICAgfTsKKworfQpJbmRleDogaHRtbC9IVE1MT0xpc3RFbGVtZW50LmlkbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBodG1sL0hUTUxPTGlzdEVsZW1lbnQuaWRsCShyZXZpc2lvbiAwKQorKysgaHRtbC9I
VE1MT0xpc3RFbGVtZW50LmlkbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyOCBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAwNiBBcHBsZSBDb21wdXRlciwgSW5jLgorICoKKyAqIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq
IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0
aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0
ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFO
WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu
CisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNl
ZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwKKyAq
IEJvc3RvbiwgTUEgMDIxMTEtMTMwNywgVVNBLgorICovCisKK21vZHVsZSBodG1sIHsKKworICAg
IGludGVyZmFjZSBbTGVnYWN5UGFyZW50PUtKUzo6SlNIVE1MRWxlbWVudF0gSFRNTE9MaXN0RWxl
bWVudCA6IEhUTUxFbGVtZW50IHsKKyAgICAgICAgYXR0cmlidXRlIGJvb2xlYW4gY29tcGFjdDsK
KyAgICAgICAgYXR0cmlidXRlIGxvbmcgc3RhcnQ7CisgICAgICAgIGF0dHJpYnV0ZSBET01TdHJp
bmcgdHlwZTsKKyAgICB9OworCit9CkluZGV4OiBodG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBodG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbAkocmV2aXNpb24gMCkKKysr
IGh0bWwvSFRNTEFuY2hvckVsZW1lbnQuaWRsCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUwIEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDA2IEFwcGxlIENvbXB1dGVyLCBJbmMuCisgKgorICog
VGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu
ZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQg
eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBk
aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJ
VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK
KyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4g
IFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUg
ZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGli
cmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhl
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlIC0gU3VpdGUg
MzMwLAorICogQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuCisgKi8KKworbW9kdWxlIGh0bWwg
eworCisgICAgaW50ZXJmYWNlIFtMZWdhY3lQYXJlbnQ9S0pTOjpKU0hUTUxFbGVtZW50XSBIVE1M
QW5jaG9yRWxlbWVudCA6IEhUTUxFbGVtZW50IHsKKyAgICAgICAgYXR0cmlidXRlIERPTVN0cmlu
ZyBhY2Nlc3NLZXk7CisgICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgY2hhcnNldDsKKyAgICAg
ICAgYXR0cmlidXRlIERPTVN0cmluZyBjb29yZHM7CisgICAgICAgIGF0dHJpYnV0ZSBET01TdHJp
bmcgaHJlZjsKKyAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBocmVmbGFuZzsKKyAgICAgICAg
YXR0cmlidXRlIERPTVN0cmluZyBuYW1lOworICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIHJl
bDsKKyAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyByZXY7CisgICAgICAgIGF0dHJpYnV0ZSBE
T01TdHJpbmcgc2hhcGU7CisgICAgICAgIGF0dHJpYnV0ZSBsb25nIHRhYkluZGV4OworICAgICAg
ICBhdHRyaWJ1dGUgRE9NU3RyaW5nIHRhcmdldDsKKyAgICAgICAgYXR0cmlidXRlIERPTVN0cmlu
ZyB0eXBlOworICAgICAgICAKKyAgICAgICAgdm9pZCBibHVyKCk7CisgICAgICAgIHZvaWQgZm9j
dXMoKTsKKyAgICAgICAgCisgICAgICAgIC8vIElFIEV4dGVuc2lvbnMKKyAgICAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIERPTVN0cmluZyBoYXNoOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUg
RE9NU3RyaW5nIGhvc3Q7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgaG9z
dG5hbWU7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgcGF0aG5hbWU7Cisg
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgcG9ydDsKKyAgICAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIERPTVN0cmluZyBwcm90b2NvbDsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIERPTVN0cmluZyBzZWFyY2g7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJp
bmcgdGV4dDsKKyAgICB9OworCit9CkluZGV4OiBodG1sL0hUTUxBbmNob3JFbGVtZW50LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBodG1sL0hUTUxBbmNob3JFbGVtZW50LmNwcAkocmV2aXNpb24gMTQ0NTAp
CisrKyBodG1sL0hUTUxBbmNob3JFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzM4LDQg
KzMzOCw1MCBAQAogICAgIGRvY3VtZW50KCktPnNldEZvY3VzTm9kZSh0aGlzKTsKIH0KIAorU3Ry
aW5nIEhUTUxBbmNob3JFbGVtZW50OjpoYXNoKCkgY29uc3QKK3sKKyAgICByZXR1cm4gJyMnICsg
S1VSTChocmVmKCkuZGVwcmVjYXRlZFN0cmluZygpKS5yZWYoKTsKIH0KKworU3RyaW5nIEhUTUxB
bmNob3JFbGVtZW50Ojpob3N0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gS1VSTChocmVmKCkuZGVw
cmVjYXRlZFN0cmluZygpKS5ob3N0KCk7Cit9CisKK1N0cmluZyBIVE1MQW5jaG9yRWxlbWVudDo6
aG9zdG5hbWUoKSBjb25zdAoreworICAgIEtVUkwgdXJsKGhyZWYoKS5kZXByZWNhdGVkU3RyaW5n
KCkpOworICAgIGlmICh1cmwucG9ydCgpPT0wKQorICAgICAgICByZXR1cm4gdXJsLmhvc3QoKTsK
KyAgICBlbHNlCisgICAgICAgIHJldHVybiB1cmwuaG9zdCgpICsgIjoiICsgRGVwcmVjYXRlZFN0
cmluZzo6bnVtYmVyKHVybC5wb3J0KCkpOworfQorCitTdHJpbmcgSFRNTEFuY2hvckVsZW1lbnQ6
OnBhdGhuYW1lKCkgY29uc3QKK3sKKyAgICByZXR1cm4gS1VSTChocmVmKCkuZGVwcmVjYXRlZFN0
cmluZygpKS5wYXRoKCk7Cit9CisKK1N0cmluZyBIVE1MQW5jaG9yRWxlbWVudDo6cG9ydCgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIERlcHJlY2F0ZWRTdHJpbmc6Om51bWJlcihLVVJMKGhyZWYoKS5k
ZXByZWNhdGVkU3RyaW5nKCkpLnBvcnQoKSk7Cit9CisKK1N0cmluZyBIVE1MQW5jaG9yRWxlbWVu
dDo6cHJvdG9jb2woKSBjb25zdAoreworICAgIHJldHVybiBLVVJMKGhyZWYoKS5kZXByZWNhdGVk
U3RyaW5nKCkpLnByb3RvY29sKCkgKyAiOiI7Cit9CisKK1N0cmluZyBIVE1MQW5jaG9yRWxlbWVu
dDo6c2VhcmNoKCkgY29uc3QKK3sKKyAgICByZXR1cm4gS1VSTChocmVmKCkuZGVwcmVjYXRlZFN0
cmluZygpKS5xdWVyeSgpOworfQorCitTdHJpbmcgSFRNTEFuY2hvckVsZW1lbnQ6OnRleHQoKSBj
b25zdAoreworICAgIGRvY3VtZW50KCktPnVwZGF0ZUxheW91dElnbm9yZVBlbmRpbmdTdHlsZXNo
ZWV0cygpOworICAgIHJldHVybiBpbm5lclRleHQoKTsKK30KKworCit9CkluZGV4OiBodG1sL0hU
TUxVTGlzdEVsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5p
ZGwJKHJldmlzaW9uIDApCisrKyBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsCShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDI3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA2IEFwcGxlIENvbXB1
dGVyLCBJbmMuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4g
cmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0
aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRo
ZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAq
IFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg
dXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt
cGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
IExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2
ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBh
bG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90
LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVt
cGxlIFBsYWNlIC0gU3VpdGUgMzMwLAorICogQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuCisg
Ki8KKworbW9kdWxlIGh0bWwgeworCisgICAgaW50ZXJmYWNlIFtMZWdhY3lQYXJlbnQ9S0pTOjpK
U0hUTUxFbGVtZW50XSBIVE1MVUxpc3RFbGVtZW50IDogSFRNTEVsZW1lbnQgeworICAgICAgICBh
dHRyaWJ1dGUgYm9vbGVhbiBjb21wYWN0OworICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIHR5
cGU7CisgICAgfTsKKworfQpJbmRleDogaHRtbC9IVE1MRExpc3RFbGVtZW50LmlkbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBodG1sL0hUTUxETGlzdEVsZW1lbnQuaWRsCShyZXZpc2lvbiAwKQorKysgaHRtbC9I
VE1MRExpc3RFbGVtZW50LmlkbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAwNiBBcHBsZSBDb21wdXRlciwgSW5jLgorICoKKyAqIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq
IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0
aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0
ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFO
WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu
CisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNl
ZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwKKyAq
IEJvc3RvbiwgTUEgMDIxMTEtMTMwNywgVVNBLgorICovCisKK21vZHVsZSBodG1sIHsKKworICAg
IGludGVyZmFjZSBbTGVnYWN5UGFyZW50PUtKUzo6SlNIVE1MRWxlbWVudF0gSFRNTERMaXN0RWxl
bWVudCA6IEhUTUxFbGVtZW50IHsKKyAgICAgICAgYXR0cmlidXRlIGJvb2xlYW4gY29tcGFjdDsK
KyAgICB9OworCit9CkluZGV4OiBodG1sL0hUTUxEaXZFbGVtZW50LmlkbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBodG1sL0hUTUxEaXZFbGVtZW50LmlkbAkocmV2aXNpb24gMCkKKysrIGh0bWwvSFRNTERpdkVs
ZW1lbnQuaWRsCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDA2IEFwcGxlIENvbXB1dGVyLCBJbmMuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZy
ZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0
IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExp
Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhl
cgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBs
YXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg
aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ
OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElU
WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBM
aWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZ
b3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxl
IENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91
bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlIC0gU3VpdGUgMzMwLAorICogQm9zdG9uLCBN
QSAwMjExMS0xMzA3LCBVU0EuCisgKi8KKworbW9kdWxlIGh0bWwgeworCisgICAgaW50ZXJmYWNl
IFtMZWdhY3lQYXJlbnQ9S0pTOjpKU0hUTUxFbGVtZW50XSBIVE1MRGl2RWxlbWVudCA6IEhUTUxF
bGVtZW50IHsKKyAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBhbGlnbjsKKyAgICB9OworCit9
CkluZGV4OiBodG1sL0hUTUxBbmNob3JFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gaHRtbC9IVE1M
QW5jaG9yRWxlbWVudC5oCShyZXZpc2lvbiAxNDQ1MCkKKysrIGh0bWwvSFRNTEFuY2hvckVsZW1l
bnQuaAkod29ya2luZyBjb3B5KQpAQCAtODgsNiArODgsMTUgQEAKICAgICB2b2lkIGJsdXIoKTsK
ICAgICB2b2lkIGZvY3VzKCk7CiAKKyAgICBTdHJpbmcgaGFzaCgpIGNvbnN0OworICAgIFN0cmlu
ZyBob3N0KCkgY29uc3Q7CisgICAgU3RyaW5nIGhvc3RuYW1lKCkgY29uc3Q7CisgICAgU3RyaW5n
IHBhdGhuYW1lKCkgY29uc3Q7CisgICAgU3RyaW5nIHBvcnQoKSBjb25zdDsKKyAgICBTdHJpbmcg
cHJvdG9jb2woKSBjb25zdDsKKyAgICBTdHJpbmcgc2VhcmNoKCkgY29uc3Q7CisgICAgU3RyaW5n
IHRleHQoKSBjb25zdDsKKyAgICAKIHByb3RlY3RlZDoKICAgICBib29sIG1faGFzVGFyZ2V0IDog
MTsKIH07CkluZGV4OiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxNDQ1MCkK
KysrIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAt
NTcsNiArNTcsMTIgQEAKIAkJMUE0OTRFRDYwQTEyM0YxQTAwRkRBRkMxIC8qIERvY3VtZW50RnJh
Z21lbnQuaWRsIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQTQ5NEVENTBBMTIzRjFBMDBGREFGQzEgLyogRG9jdW1lbnRGcmFnbWVudC5pZGwgKi87IH07
CiAJCTFBNDk0RURFMEExMjNGNEMwMEZEQUZDMSAvKiBKU0RvY3VtZW50RnJhZ21lbnQuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE0OTRFREMwQTEy
M0Y0QzAwRkRBRkMxIC8qIEpTRG9jdW1lbnRGcmFnbWVudC5jcHAgKi87IH07CiAJCTFBNDk0RURG
MEExMjNGNEMwMEZEQUZDMSAvKiBKU0RvY3VtZW50RnJhZ21lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNDk0RUREMEExMjNGNEMwMEZEQUZDMSAv
KiBKU0RvY3VtZW50RnJhZ21lbnQuaCAqLzsgfTsKKwkJMUE0QTJEQkIwQTFCODNBODAwQzgwN0Y4
IC8qIEhUTUxBcHBsZXRFbGVtZW50LmlkbCBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE0QTJEQkEwQTFCODNBODAwQzgwN0Y4IC8qIEhUTUxBcHBsZXRF
bGVtZW50LmlkbCAqLzsgfTsKKwkJMUE0QTJERDQwQTFCODQ1MTAwQzgwN0Y4IC8qIEhUTUxBbmNo
b3JFbGVtZW50LmlkbCBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUE0QTJERDMwQTFCODQ1MTAwQzgwN0Y4IC8qIEhUTUxBbmNob3JFbGVtZW50LmlkbCAq
LzsgfTsKKwkJMUE0QTJERUYwQTFCODUyQTAwQzgwN0Y4IC8qIEpTSFRNTEFuY2hvckVsZW1lbnQu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE0QTJE
RUIwQTFCODUyQTAwQzgwN0Y4IC8qIEpTSFRNTEFuY2hvckVsZW1lbnQuY3BwICovOyB9OworCQkx
QTRBMkRGMDBBMUI4NTJBMDBDODA3RjggLyogSlNIVE1MQW5jaG9yRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE0QTJERUMwQTFCODUyQTAw
QzgwN0Y4IC8qIEpTSFRNTEFuY2hvckVsZW1lbnQuaCAqLzsgfTsKKwkJMUE0QTJERjEwQTFCODUy
QTAwQzgwN0Y4IC8qIEpTSFRNTEFwcGxldEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE0QTJERUQwQTFCODUyQTAwQzgwN0Y4IC8qIEpT
SFRNTEFwcGxldEVsZW1lbnQuY3BwICovOyB9OworCQkxQTRBMkRGMjBBMUI4NTJBMDBDODA3Rjgg
LyogSlNIVE1MQXBwbGV0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUE0QTJERUUwQTFCODUyQTAwQzgwN0Y4IC8qIEpTSFRNTEFwcGxldEVs
ZW1lbnQuaCAqLzsgfTsKIAkJMUE1RDkzOEUwQTBCOUFDQzAwQjExMjFGIC8qIFhQYXRoUGFyc2Vy
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNUQ5
MzhDMEEwQjlBQ0MwMEIxMTIxRiAvKiBYUGF0aFBhcnNlci5jcHAgKi87IH07CiAJCTFBNUQ5MzhG
MEEwQjlBQ0MwMEIxMTIxRiAvKiBYUGF0aFBhcnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1RDkzOEQwQTBCOUFDQzAwQjExMjFGIC8qIFhQYXRo
UGFyc2VyLmggKi87IH07CiAJCTFBNjkzMTc2MEEwQ0Q0RkEwMEMxMjdGRSAvKiBYUGF0aFZhbHVl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTY5MzE3
NDBBMENENEZBMDBDMTI3RkUgLyogWFBhdGhWYWx1ZS5oICovOyB9OwpAQCAtOTksNiArMTA1LDI0
IEBACiAJCTFBNzYyQzdBMEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoUmVzdWx0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTc2MkM3MjBBMDc0RjI2
MDA5ODlGNUIgLyogSlNYUGF0aFJlc3VsdC5oICovOyB9OwogCQkxQTgyMEQ5MTBBMTNFQkE2MDBB
Rjg0M0MgLyogSW1hZ2VEb2N1bWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQTgyMEQ4RjBBMTNFQkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVu
dC5jcHAgKi87IHNldHRpbmdzID0ge0NPTVBJTEVSX0ZMQUdTID0gIi14b2JqZWN0aXZlLWMrKyI7
IH07IH07CiAJCTFBODIwRDkyMEExM0VCQTYwMEFGODQzQyAvKiBJbWFnZURvY3VtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTgyMEQ5MDBBMTNF
QkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oICovOyB9OworCQkxQTg1QjE3RTBBMUIxODM2
MDBEOEM4N0MgLyogSFRNTEh0bWxFbGVtZW50LmlkbCBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE4NUIxN0QwQTFCMTgzNjAwRDhDODdDIC8qIEhUTUxI
dG1sRWxlbWVudC5pZGwgKi87IH07CisJCTFBODVCMThGMEExQjE4QTIwMEQ4Qzg3QyAvKiBKU0hU
TUxIdG1sRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxQTg1QjE4RDBBMUIxOEEyMDBEOEM4N0MgLyogSlNIVE1MSHRtbEVsZW1lbnQuY3Bw
ICovOyB9OworCQkxQTg1QjE5MDBBMUIxOEEyMDBEOEM4N0MgLyogSlNIVE1MSHRtbEVsZW1lbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBODVCMThF
MEExQjE4QTIwMEQ4Qzg3QyAvKiBKU0hUTUxIdG1sRWxlbWVudC5oICovOyB9OworCQkxQTg1QjFD
QzBBMUIyMkRDMDBEOEM4N0MgLyogSFRNTE9MaXN0RWxlbWVudC5pZGwgaW4gUmVzb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBODVCMUNCMEExQjIyREMwMEQ4Qzg3
QyAvKiBIVE1MT0xpc3RFbGVtZW50LmlkbCAqLzsgfTsKKwkJMUE4NUIxRDIwQTFCMjM1QjAwRDhD
ODdDIC8qIEhUTUxETGlzdEVsZW1lbnQuaWRsIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjFEMTBBMUIyMzVCMDBEOEM4N0MgLyogSFRNTERMaXN0
RWxlbWVudC5pZGwgKi87IH07CisJCTFBODVCMUQ2MEExQjIzNkMwMEQ4Qzg3QyAvKiBIVE1MVUxp
c3RFbGVtZW50LmlkbCBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUE4NUIxRDUwQTFCMjM2QzAwRDhDODdDIC8qIEhUTUxVTGlzdEVsZW1lbnQuaWRsICov
OyB9OworCQkxQTg1QjFEQTBBMUIyM0E0MDBEOEM4N0MgLyogSFRNTERpcmVjdG9yeUVsZW1lbnQu
aWRsIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1
QjFEOTBBMUIyM0E0MDBEOEM4N0MgLyogSFRNTERpcmVjdG9yeUVsZW1lbnQuaWRsICovOyB9Owor
CQkxQTg1QjFFNjBBMUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRGlyZWN0b3J5RWxlbWVudC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjFFMDBB
MUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRGlyZWN0b3J5RWxlbWVudC5jcHAgKi87IH07CisJCTFB
ODVCMUU3MEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxEaXJlY3RvcnlFbGVtZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjFFMTBBMUIyNDA1
MDBEOEM4N0MgLyogSlNIVE1MRGlyZWN0b3J5RWxlbWVudC5oICovOyB9OworCQkxQTg1QjFFODBB
MUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRExpc3RFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBODVCMUUyMEExQjI0MDUwMEQ4Qzg3QyAv
KiBKU0hUTUxETGlzdEVsZW1lbnQuY3BwICovOyB9OworCQkxQTg1QjFFOTBBMUIyNDA1MDBEOEM4
N0MgLyogSlNIVE1MRExpc3RFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjFFMzBBMUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRExpc3RF
bGVtZW50LmggKi87IH07CisJCTFBODVCMUVBMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxPTGlz
dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUE4NUIxRTQwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTE9MaXN0RWxlbWVudC5jcHAgKi87
IH07CisJCTFBODVCMUVCMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxPTGlzdEVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBODVCMUU1MEEx
QjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxPTGlzdEVsZW1lbnQuaCAqLzsgfTsKKwkJMUE4NUIyMTAw
QTFCMjU4NzAwRDhDODdDIC8qIEpTSFRNTFVMaXN0RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjIwRTBBMUIyNTg3MDBEOEM4N0Mg
LyogSlNIVE1MVUxpc3RFbGVtZW50LmNwcCAqLzsgfTsKKwkJMUE4NUIyMTEwQTFCMjU4NzAwRDhD
ODdDIC8qIEpTSFRNTFVMaXN0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE4NUIyMEYwQTFCMjU4NzAwRDhDODdDIC8qIEpTSFRNTFVMaXN0
RWxlbWVudC5oICovOyB9OworCQkxQTg1QjJBRTBBMUIyQTZEMDBEOEM4N0MgLyogSFRNTERpdkVs
ZW1lbnQuaWRsIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQTg1QjJBRDBBMUIyQTZEMDBEOEM4N0MgLyogSFRNTERpdkVsZW1lbnQuaWRsICovOyB9Owor
CQkxQTg1QjJCNjBBMUIyQUM3MDBEOEM4N0MgLyogSlNIVE1MRGl2RWxlbWVudC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjJCNDBBMUIyQUM3
MDBEOEM4N0MgLyogSlNIVE1MRGl2RWxlbWVudC5jcHAgKi87IH07CisJCTFBODVCMkI3MEExQjJB
QzcwMEQ4Qzg3QyAvKiBKU0hUTUxEaXZFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjJCNTBBMUIyQUM3MDBEOEM4N0MgLyogSlNIVE1M
RGl2RWxlbWVudC5oICovOyB9OwogCQkxQTlFRjQ1NzBBMUI5NTdEMDAzMzJCNjMgLyogSlNDYW52
YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUE5RUY0NTYwQTFCOTU3RDAwMzMyQjYzIC8qIEpTQ2FudmFz
UmVuZGVyaW5nQ29udGV4dDJEQ3VzdG9tLmNwcCAqLzsgfTsKIAkJNTUwQTBCQzkwODVGNjAzOTAw
NzM1M0Q2IC8qIFF1YWxpZmllZE5hbWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTUwQTBCQzcwODVGNjAzOTAwNzM1M0Q2IC8qIFF1YWxpZmllZE5h
bWUuY3BwICovOyB9OwogCQk1NTBBMEJDQTA4NUY2MDM5MDA3MzUzRDYgLyogUXVhbGlmaWVkTmFt
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTUwQTBC
QzgwODVGNjAzOTAwNzM1M0Q2IC8qIFF1YWxpZmllZE5hbWUuaCAqLzsgfTsKQEAgLTE0MjIsNiAr
MTQ0NiwyMyBAQAogCQlGQUUwNDE5MDA5NzU5NkM5MDAwNTQwQkUgLyogU1ZHSW1hZ2VMb2FkZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZBRTA0MThF
MDk3NTk2QzkwMDA1NDBCRSAvKiBTVkdJbWFnZUxvYWRlci5oICovOyB9OwogLyogRW5kIFBCWEJ1
aWxkRmlsZSBzZWN0aW9uICovCiAKKy8qIEJlZ2luIFBCWEJ1aWxkU3R5bGUgc2VjdGlvbiAqLwor
CQkxQTMzOUU2QjBBMUJDQjM2MDA3RkVGNkUgLyogRGV2ZWxvcG1lbnQgKi8gPSB7CisJCQlpc2Eg
PSBQQlhCdWlsZFN0eWxlOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlDT1BZX1BIQVNFX1NU
UklQID0gTk87CisJCQl9OworCQkJbmFtZSA9IERldmVsb3BtZW50OworCQl9OworCQkxQTMzOUU2
QzBBMUJDQjM2MDA3RkVGNkUgLyogRGVwbG95bWVudCAqLyA9IHsKKwkJCWlzYSA9IFBCWEJ1aWxk
U3R5bGU7CisJCQlidWlsZFNldHRpbmdzID0geworCQkJCUNPUFlfUEhBU0VfU1RSSVAgPSBZRVM7
CisJCQl9OworCQkJbmFtZSA9IERlcGxveW1lbnQ7CisJCX07CisvKiBFbmQgUEJYQnVpbGRTdHls
ZSBzZWN0aW9uICovCisKIC8qIEJlZ2luIFBCWENvbnRhaW5lckl0ZW1Qcm94eSBzZWN0aW9uICov
CiAJCUREMDQxRkYwMDlEOUUzMjUwMDEwQUYyQSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi8g
PSB7CiAJCQlpc2EgPSBQQlhDb250YWluZXJJdGVtUHJveHk7CkBAIC0xNDczLDYgKzE1MTQsMTIg
QEAKIAkJMUE0OTRFRDUwQTEyM0YxQTAwRkRBRkMxIC8qIERvY3VtZW50RnJhZ21lbnQuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IERvY3VtZW50RnJhZ21lbnQuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkxQTQ5NEVEQzBBMTIzRjRDMDBGREFGQzEgLyogSlNEb2N1bWVudEZy
YWdtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RvY3Vt
ZW50RnJhZ21lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTQ5NEVERDBB
MTIzRjRDMDBGREFGQzEgLyogSlNEb2N1bWVudEZyYWdtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0RvY3VtZW50RnJhZ21lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUE0QTJEQkEwQTFCODNBODAwQzgwN0Y4IC8qIEhUTUxBcHBsZXRFbGVtZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MQXBwbGV0RWxlbWVudC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNEEyREQzMEExQjg0NTEwMEM4MDdGOCAvKiBIVE1M
QW5jaG9yRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEFuY2hvckVsZW1l
bnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTRBMkRFQjBBMUI4NTJBMDBD
ODA3RjggLyogSlNIVE1MQW5jaG9yRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNIVE1MQW5jaG9yRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBNEEyREVDMEExQjg1MkEwMEM4MDdGOCAvKiBKU0hUTUxBbmNob3JFbGVt
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxBbmNob3JFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNEEyREVEMEExQjg1MkEwMEM4
MDdGOCAvKiBKU0hUTUxBcHBsZXRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0hUTUxBcHBsZXRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUE0QTJERUUwQTFCODUyQTAwQzgwN0Y4IC8qIEpTSFRNTEFwcGxldEVsZW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTEFwcGxldEVsZW1l
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE1RDkzOEMwQTBCOUFDQzAwQjEx
MjFGIC8qIFhQYXRoUGFyc2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBYUGF0aFBhcnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBNUQ5
MzhEMEEwQjlBQ0MwMEIxMTIxRiAvKiBYUGF0aFBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gWFBhdGhQYXJzZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMUE2OTMxNzQwQTBDRDRGQTAwQzEyN0ZFIC8qIFhQYXRoVmFsdWUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gWFBhdGhWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTUyMCw2ICsxNTY3LDI0IEBACiAJCTFBNzYyQzcyMEEwNzRGMjYwMDk4OUY1QiAv
KiBKU1hQYXRoUmVzdWx0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1hQ
YXRoUmVzdWx0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBODIwRDhGMEExM0VC
QTYwMEFGODQzQyAvKiBJbWFnZURvY3VtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBJbWFnZURvY3VtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMUE4MjBEOTAwQTEzRUJBNjAwQUY4NDNDIC8qIEltYWdlRG9jdW1lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlRG9jdW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIxN0QwQTFCMTgzNjAwRDhDODdDIC8qIEhUTUxIdG1sRWxl
bWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEh0bWxFbGVtZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIxOEQwQTFCMThBMjAwRDhDODdDIC8qIEpT
SFRNTEh0bWxFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0hUTUxIdG1sRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFB
ODVCMThFMEExQjE4QTIwMEQ4Qzg3QyAvKiBKU0hUTUxIdG1sRWxlbWVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MSHRtbEVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIxQ0IwQTFCMjJEQzAwRDhDODdDIC8qIEhUTUxPTGlzdEVs
ZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxPTGlzdEVsZW1lbnQuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg1QjFEMTBBMUIyMzVCMDBEOEM4N0MgLyog
SFRNTERMaXN0RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTERMaXN0RWxl
bWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBODVCMUQ1MEExQjIzNkMw
MEQ4Qzg3QyAvKiBIVE1MVUxpc3RFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBI
VE1MVUxpc3RFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIx
RDkwQTFCMjNBNDAwRDhDODdDIC8qIEhUTUxEaXJlY3RvcnlFbGVtZW50LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBIVE1MRGlyZWN0b3J5RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBODVCMUUwMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxEaXJlY3RvcnlF
bGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxE
aXJlY3RvcnlFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIx
RTEwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTERpcmVjdG9yeUVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTERpcmVjdG9yeUVsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIxRTIwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRN
TERMaXN0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNIVE1MRExpc3RFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4
NUIxRTMwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTERMaXN0RWxlbWVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MRExpc3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFBODVCMUU0MEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxPTGlz
dEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRN
TE9MaXN0RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBODVCMUU1
MEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxPTGlzdEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTE9MaXN0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQTg1QjIwRTBBMUIyNTg3MDBEOEM4N0MgLyogSlNIVE1MVUxpc3RFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxVTGlz
dEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg1QjIwRjBBMUIy
NTg3MDBEOEM4N0MgLyogSlNIVE1MVUxpc3RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0hUTUxVTGlzdEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMUE4NUIyQUQwQTFCMkE2RDAwRDhDODdDIC8qIEhUTUxEaXZFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MRGl2RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFBODVCMkI0MEExQjJBQzcwMEQ4Qzg3QyAvKiBKU0hUTUxEaXZFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxEaXZF
bGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIyQjUwQTFCMkFD
NzAwRDhDODdDIC8qIEpTSFRNTERpdkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTSFRNTERpdkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMUE5RUY0NTYwQTFCOTU3RDAwMzMyQjYzIC8qIEpTQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJE
Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ2FudmFz
UmVuZGVyaW5nQ29udGV4dDJEQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMkQ5MDY2MEIwNjY1RDkzNzAwNkI2RjFBIC8qIENsaXBib2FyZE1hYy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDbGlwYm9hcmRNYWMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CiAJ
CTJEOTA2NjBDMDY2NUQ5MzcwMDZCNkYxQSAvKiBDbGlwYm9hcmRNYWMubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBDbGlwYm9hcmRN
YWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAw
OyB9OwpAQCAtMzIzOCwyNCArMzMwMyw0MCBAQAogCQkJCTY1REYzMjJFMDlEMUREQkMwMDBCRTMy
NSAvKiBKU0VudGl0eS5oICovLAogCQkJCTE0RTgzNzgzMDlGODVEMUMwMEI4NUFFNCAvKiBKU0V2
ZW50LmNwcCAqLywKIAkJCQkxNEU4Mzc4RDA5Rjg1RDRGMDBCODVBRTQgLyogSlNFdmVudC5oICov
LAorCQkJCTFBNEEyREVCMEExQjg1MkEwMEM4MDdGOCAvKiBKU0hUTUxBbmNob3JFbGVtZW50LmNw
cCAqLywKKwkJCQkxQTRBMkRFQzBBMUI4NTJBMDBDODA3RjggLyogSlNIVE1MQW5jaG9yRWxlbWVu
dC5oICovLAorCQkJCTFBNEEyREVEMEExQjg1MkEwMEM4MDdGOCAvKiBKU0hUTUxBcHBsZXRFbGVt
ZW50LmNwcCAqLywKKwkJCQkxQTRBMkRFRTBBMUI4NTJBMDBDODA3RjggLyogSlNIVE1MQXBwbGV0
RWxlbWVudC5oICovLAogCQkJCUE4MEU3QjA4MEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxCYXNl
RWxlbWVudC5jcHAgKi8sCiAJCQkJQTgwRTdCMDcwQTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTEJh
c2VFbGVtZW50LmggKi8sCiAJCQkJOTM4RTY2NUYwOUYwOUI4MTAwOEE0OEVDIC8qIEpTSFRNTENh
bnZhc0VsZW1lbnQuY3BwICovLAogCQkJCTkzOEU2NjYxMDlGMDlCODcwMDhBNDhFQyAvKiBKU0hU
TUxDYW52YXNFbGVtZW50LmggKi8sCisJCQkJMUE4NUIxRTAwQTFCMjQwNTAwRDhDODdDIC8qIEpT
SFRNTERpcmVjdG9yeUVsZW1lbnQuY3BwICovLAorCQkJCTFBODVCMUUxMEExQjI0MDUwMEQ4Qzg3
QyAvKiBKU0hUTUxEaXJlY3RvcnlFbGVtZW50LmggKi8sCisJCQkJMUE4NUIyQjQwQTFCMkFDNzAw
RDhDODdDIC8qIEpTSFRNTERpdkVsZW1lbnQuY3BwICovLAorCQkJCTFBODVCMkI1MEExQjJBQzcw
MEQ4Qzg3QyAvKiBKU0hUTUxEaXZFbGVtZW50LmggKi8sCisJCQkJMUE4NUIxRTIwQTFCMjQwNTAw
RDhDODdDIC8qIEpTSFRNTERMaXN0RWxlbWVudC5jcHAgKi8sCisJCQkJMUE4NUIxRTMwQTFCMjQw
NTAwRDhDODdDIC8qIEpTSFRNTERMaXN0RWxlbWVudC5oICovLAogCQkJCTFBNDk0RTMyMEExMjM1
OEEwMEZEQUZDMSAvKiBKU0hUTUxEb2N1bWVudC5jcHAgKi8sCiAJCQkJMUE0OTRFMzMwQTEyMzU4
QjAwRkRBRkMxIC8qIEpTSFRNTERvY3VtZW50LmggKi8sCiAJCQkJMUE0OTRCRjgwQTEyMkY0NDAw
RkRBRkMxIC8qIEpTSFRNTEVsZW1lbnQuY3BwICovLAogCQkJCTFBNDk0QkY5MEExMjJGNDQwMEZE
QUZDMSAvKiBKU0hUTUxFbGVtZW50LmggKi8sCiAJCQkJQTgwRTdCMEEwQTE5RDYwNjAwN0ZCOEM1
IC8qIEpTSFRNTEhlYWRFbGVtZW50LmNwcCAqLywKIAkJCQlBODBFN0IwQjBBMTlENjA2MDA3RkI4
QzUgLyogSlNIVE1MSGVhZEVsZW1lbnQuaCAqLywKKwkJCQkxQTg1QjE4RDBBMUIxOEEyMDBEOEM4
N0MgLyogSlNIVE1MSHRtbEVsZW1lbnQuY3BwICovLAorCQkJCTFBODVCMThFMEExQjE4QTIwMEQ4
Qzg3QyAvKiBKU0hUTUxIdG1sRWxlbWVudC5oICovLAogCQkJCUE4MEU3QjA2MEExOUQ2MDYwMDdG
QjhDNSAvKiBKU0hUTUxMaW5rRWxlbWVudC5jcHAgKi8sCiAJCQkJQTgwRTdCMDMwQTE5RDYwNjAw
N0ZCOEM1IC8qIEpTSFRNTExpbmtFbGVtZW50LmggKi8sCiAJCQkJQTgwRTdBMTUwQTE5QzNENjAw
N0ZCOEM1IC8qIEpTSFRNTE1ldGFFbGVtZW50LmNwcCAqLywKIAkJCQlBODBFN0ExNjBBMTlDM0Q2
MDA3RkI4QzUgLyogSlNIVE1MTWV0YUVsZW1lbnQuaCAqLywKKwkJCQkxQTg1QjFFNDBBMUIyNDA1
MDBEOEM4N0MgLyogSlNIVE1MT0xpc3RFbGVtZW50LmNwcCAqLywKKwkJCQkxQTg1QjFFNTBBMUIy
NDA1MDBEOEM4N0MgLyogSlNIVE1MT0xpc3RFbGVtZW50LmggKi8sCiAJCQkJQTgwRTdCMDUwQTE5
RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTFN0eWxlRWxlbWVudC5jcHAgKi8sCiAJCQkJQTgwRTdCMDQw
QTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTFN0eWxlRWxlbWVudC5oICovLAogCQkJCUE4MEU3QjA5
MEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxUaXRsZUVsZW1lbnQuY3BwICovLAogCQkJCUE4MEU3
QjAyMEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxUaXRsZUVsZW1lbnQuaCAqLywKKwkJCQkxQTg1
QjIwRTBBMUIyNTg3MDBEOEM4N0MgLyogSlNIVE1MVUxpc3RFbGVtZW50LmNwcCAqLywKKwkJCQkx
QTg1QjIwRjBBMUIyNTg3MDBEOEM4N0MgLyogSlNIVE1MVUxpc3RFbGVtZW50LmggKi8sCiAJCQkJ
QTg2NjI5Q0UwOURBMkI0NzAwOTYzM0E1IC8qIEpTS2V5Ym9hcmRFdmVudC5jcHAgKi8sCiAJCQkJ
QTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E1IC8qIEpTS2V5Ym9hcmRFdmVudC5oICovLAogCQkJCUE4
NjYyOUNDMDlEQTJCNDcwMDk2MzNBNSAvKiBKU01vdXNlRXZlbnQuY3BwICovLApAQCAtMzU4Miw4
ICszNjYzLDEwIEBACiAJCQkJQTgxMzZEMzYwOTczQThFNzAwRDc0NDYzIC8qIEZvcm1EYXRhTGlz
dC5oICovLAogCQkJCUE4Q0ZGNzlBMEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MQW5jaG9yRWxlbWVu
dC5jcHAgKi8sCiAJCQkJQThDRkY3QTEwQTE1Njk3ODAwMEE0MjM0IC8qIEhUTUxBbmNob3JFbGVt
ZW50LmggKi8sCisJCQkJMUE0QTJERDMwQTFCODQ1MTAwQzgwN0Y4IC8qIEhUTUxBbmNob3JFbGVt
ZW50LmlkbCAqLywKIAkJCQlBODcxRDQ1NDBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTEFwcGxldEVs
ZW1lbnQuY3BwICovLAogCQkJCUE4NzFENDUzMEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MQXBwbGV0
RWxlbWVudC5oICovLAorCQkJCTFBNEEyREJBMEExQjgzQTgwMEM4MDdGOCAvKiBIVE1MQXBwbGV0
RWxlbWVudC5pZGwgKi8sCiAJCQkJQThFQTdEMjcwQTE5Mzg1NTAwQThFRjVGIC8qIEhUTUxBcmVh
RWxlbWVudC5jcHAgKi8sCiAJCQkJQThFQTdEMjYwQTE5Mzg1NTAwQThFRjVGIC8qIEhUTUxBcmVh
RWxlbWVudC5oICovLAogCQkJCUE4NzFEQzFFMEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MQmFzZUVs
ZW1lbnQuY3BwICovLApAQCAtMzYwNiwxMCArMzY4OSwxMyBAQAogCQkJCUE4REYzRkM4MDk3RkEw
RkIwMDUyOTgxQiAvKiBIVE1MQ29sbGVjdGlvbi5oICovLAogCQkJCUE4RUE3OUVEMEExOTE2REYw
MEE4RUY1RiAvKiBIVE1MRGlyZWN0b3J5RWxlbWVudC5jcHAgKi8sCiAJCQkJQThFQTc5RUUwQTE5
MTZERjAwQThFRjVGIC8qIEhUTUxEaXJlY3RvcnlFbGVtZW50LmggKi8sCisJCQkJMUE4NUIxRDkw
QTFCMjNBNDAwRDhDODdDIC8qIEhUTUxEaXJlY3RvcnlFbGVtZW50LmlkbCAqLywKIAkJCQlBOEVB
N0NBMzBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTERpdkVsZW1lbnQuY3BwICovLAogCQkJCUE4RUE3
Q0E5MEExOTJCOUMwMEE4RUY1RiAvKiBIVE1MRGl2RWxlbWVudC5oICovLAorCQkJCTFBODVCMkFE
MEExQjJBNkQwMEQ4Qzg3QyAvKiBIVE1MRGl2RWxlbWVudC5pZGwgKi8sCiAJCQkJQThFQTc5RTkw
QTE5MTZERjAwQThFRjVGIC8qIEhUTUxETGlzdEVsZW1lbnQuY3BwICovLAogCQkJCUE4RUE3OUVC
MEExOTE2REYwMEE4RUY1RiAvKiBIVE1MRExpc3RFbGVtZW50LmggKi8sCisJCQkJMUE4NUIxRDEw
QTFCMjM1QjAwRDhDODdDIC8qIEhUTUxETGlzdEVsZW1lbnQuaWRsICovLAogCQkJCUY1MjNEMjNC
MDJERTQzOTYwMTg2MzVDQSAvKiBIVE1MRG9jdW1lbnQuY3BwICovLAogCQkJCUY1MjNEMjNDMDJE
RTQzOTYwMTg2MzVDQSAvKiBIVE1MRG9jdW1lbnQuaCAqLywKIAkJCQkxQTQ5NEUyOTBBMTIzNTQz
MDBGREFGQzEgLyogSFRNTERvY3VtZW50LmlkbCAqLywKQEAgLTM2NDMsNiArMzcyOSw3IEBACiAJ
CQkJQThFQTdDQTEwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxIUkVsZW1lbnQuaCAqLywKIAkJCQlB
ODcxREUxQTBBMTUyQUM4MDBCMTJBNjggLyogSFRNTEh0bWxFbGVtZW50LmNwcCAqLywKIAkJCQlB
ODcxREUxQjBBMTUyQUM4MDBCMTJBNjggLyogSFRNTEh0bWxFbGVtZW50LmggKi8sCisJCQkJMUE4
NUIxN0QwQTFCMTgzNjAwRDhDODdDIC8qIEhUTUxIdG1sRWxlbWVudC5pZGwgKi8sCiAJCQkJQTg3
MURFMTgwQTE1MkFDODAwQjEyQTY4IC8qIEhUTUxJRnJhbWVFbGVtZW50LmNwcCAqLywKIAkJCQlB
ODcxREUxRTBBMTUyQUM4MDBCMTJBNjggLyogSFRNTElGcmFtZUVsZW1lbnQuaCAqLywKIAkJCQlB
OEVBN0QyOTBBMTkzODU1MDBBOEVGNUYgLyogSFRNTEltYWdlRWxlbWVudC5jcHAgKi8sCkBAIC0z
NjgzLDYgKzM3NzAsNyBAQAogCQkJCUE4NzFENDUwMEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MT2Jq
ZWN0RWxlbWVudC5oICovLAogCQkJCUE4RUE3OUVGMEExOTE2REYwMEE4RUY1RiAvKiBIVE1MT0xp
c3RFbGVtZW50LmNwcCAqLywKIAkJCQlBOEVBNzlFNTBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTE9M
aXN0RWxlbWVudC5oICovLAorCQkJCTFBODVCMUNCMEExQjIyREMwMEQ4Qzg3QyAvKiBIVE1MT0xp
c3RFbGVtZW50LmlkbCAqLywKIAkJCQlBODEzNjlDMzA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTE9w
dEdyb3VwRWxlbWVudC5jcHAgKi8sCiAJCQkJQTgxMzY5QzIwOTczNzRGNTAwRDc0NDYzIC8qIEhU
TUxPcHRHcm91cEVsZW1lbnQuaCAqLywKIAkJCQlBODEzNjlDMTA5NzM3NEY1MDBENzQ0NjMgLyog
SFRNTE9wdGlvbkVsZW1lbnQuY3BwICovLApAQCAtMzczMyw2ICszODIxLDcgQEAKIAkJCQlGNTIz
RDI1MzAyREU0Mzk2MDE4NjM1Q0EgLyogSFRNTFRva2VuaXplci5oICovLAogCQkJCUE4RUE3OUU3
MEExOTE2REYwMEE4RUY1RiAvKiBIVE1MVUxpc3RFbGVtZW50LmNwcCAqLywKIAkJCQlBOEVBNzlF
NjBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTFVMaXN0RWxlbWVudC5oICovLAorCQkJCTFBODVCMUQ1
MEExQjIzNkMwMEQ4Qzg3QyAvKiBIVE1MVUxpc3RFbGVtZW50LmlkbCAqLywKIAkJCSk7CiAJCQlw
YXRoID0gaHRtbDsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC01NzAzLDYgKzU3OTIs
MTQgQEAKIAkJCQlBODBFN0IwRTBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MU3R5bGVFbGVtZW50
LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODBFN0IxMTBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1M
QmFzZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MEU3QjE1MEExOUQ2MDYwMDdGQjhD
NSAvKiBKU0hUTUxIZWFkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE4NUIxOTAwQTFC
MThBMjAwRDhDODdDIC8qIEpTSFRNTEh0bWxFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkx
QTg1QjFFNzBBMUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRGlyZWN0b3J5RWxlbWVudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMUE4NUIxRTkwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTERMaXN0RWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE4NUIxRUIwQTFCMjQwNTAwRDhDODdDIC8qIEpT
SFRNTE9MaXN0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE4NUIyMTEwQTFCMjU4NzAw
RDhDODdDIC8qIEpTSFRNTFVMaXN0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE4NUIy
QjcwQTFCMkFDNzAwRDhDODdDIC8qIEpTSFRNTERpdkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTFBNEEyREYwMEExQjg1MkEwMEM4MDdGOCAvKiBKU0hUTUxBbmNob3JFbGVtZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQkxQTRBMkRGMjBBMUI4NTJBMDBDODA3RjggLyogSlNIVE1MQXBwbGV0
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQ
b3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBAIC01NzM2LDYgKzU4MzMsMTIgQEAKIAkJMDg2N0Q2
OTBGRTg0MDI4RkMwMkFBQzA3IC8qIFByb2plY3Qgb2JqZWN0ICovID0gewogCQkJaXNhID0gUEJY
UHJvamVjdDsKIAkJCWJ1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSAxNDlDMjg0MzA4OTAyQjExMDA4
QTlFRkMgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhQcm9qZWN0ICJXZWJDb3Jl
IiAqLzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQl9OworCQkJYnVpbGRTdHlsZXMgPSAoCisJ
CQkJMUEzMzlFNkIwQTFCQ0IzNjAwN0ZFRjZFIC8qIERldmVsb3BtZW50ICovLAorCQkJCTFBMzM5
RTZDMEExQkNCMzYwMDdGRUY2RSAvKiBEZXBsb3ltZW50ICovLAorCQkJKTsKIAkJCWhhc1NjYW5u
ZWRGb3JFbmNvZGluZ3MgPSAxOwogCQkJa25vd25SZWdpb25zID0gKAogCQkJCUVuZ2xpc2gsCkBA
IC01ODA0LDYgKzU5MDcsMTQgQEAKIAkJCQlBODBFN0FCNTBBMTlEMUYxMDA3RkI4QzUgLyogSFRN
TExpbmtFbGVtZW50LmlkbCBpbiBSZXNvdXJjZXMgKi8sCiAJCQkJQTgwRTdBQjYwQTE5RDFGMTAw
N0ZCOEM1IC8qIEhUTUxIZWFkRWxlbWVudC5pZGwgaW4gUmVzb3VyY2VzICovLAogCQkJCUE4MEU3
QUI3MEExOUQxRjEwMDdGQjhDNSAvKiBIVE1MU3R5bGVFbGVtZW50LmlkbCBpbiBSZXNvdXJjZXMg
Ki8sCisJCQkJMUE4NUIxN0UwQTFCMTgzNjAwRDhDODdDIC8qIEhUTUxIdG1sRWxlbWVudC5pZGwg
aW4gUmVzb3VyY2VzICovLAorCQkJCTFBODVCMUNDMEExQjIyREMwMEQ4Qzg3QyAvKiBIVE1MT0xp
c3RFbGVtZW50LmlkbCBpbiBSZXNvdXJjZXMgKi8sCisJCQkJMUE4NUIxRDIwQTFCMjM1QjAwRDhD
ODdDIC8qIEhUTUxETGlzdEVsZW1lbnQuaWRsIGluIFJlc291cmNlcyAqLywKKwkJCQkxQTg1QjFE
NjBBMUIyMzZDMDBEOEM4N0MgLyogSFRNTFVMaXN0RWxlbWVudC5pZGwgaW4gUmVzb3VyY2VzICov
LAorCQkJCTFBODVCMURBMEExQjIzQTQwMEQ4Qzg3QyAvKiBIVE1MRGlyZWN0b3J5RWxlbWVudC5p
ZGwgaW4gUmVzb3VyY2VzICovLAorCQkJCTFBODVCMkFFMEExQjJBNkQwMEQ4Qzg3QyAvKiBIVE1M
RGl2RWxlbWVudC5pZGwgaW4gUmVzb3VyY2VzICovLAorCQkJCTFBNEEyREJCMEExQjgzQTgwMEM4
MDdGOCAvKiBIVE1MQXBwbGV0RWxlbWVudC5pZGwgaW4gUmVzb3VyY2VzICovLAorCQkJCTFBNEEy
REQ0MEExQjg0NTEwMEM4MDdGOCAvKiBIVE1MQW5jaG9yRWxlbWVudC5pZGwgaW4gUmVzb3VyY2Vz
ICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwog
CQl9OwpAQCAtNjQ4Niw2ICs2NTk3LDE0IEBACiAJCQkJQTgwRTdCMTIwQTE5RDYwNjAwN0ZCOEM1
IC8qIEpTSFRNTEJhc2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4MEU3QjEzMEEx
OUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxUaXRsZUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQTgwRTdCMTQwQTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTEhlYWRFbGVtZW50LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTFBODVCMThGMEExQjE4QTIwMEQ4Qzg3QyAvKiBKU0hUTUxIdG1sRWxl
bWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQTg1QjFFNjBBMUIyNDA1MDBEOEM4N0MgLyog
SlNIVE1MRGlyZWN0b3J5RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQTg1QjFFODBB
MUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRExpc3RFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTFBODVCMUVBMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxPTGlzdEVsZW1lbnQuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJMUE4NUIyMTAwQTFCMjU4NzAwRDhDODdDIC8qIEpTSFRNTFVMaXN0
RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQTg1QjJCNjBBMUIyQUM3MDBEOEM4N0Mg
LyogSlNIVE1MRGl2RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxQTRBMkRFRjBBMUI4
NTJBMDBDODA3RjggLyogSlNIVE1MQW5jaG9yRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQkxQTRBMkRGMTBBMUI4NTJBMDBDODA3RjggLyogSlNIVE1MQXBwbGV0RWxlbWVudC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlCQzZEQjQ3NDBBMUE5MEZCMDBFNUNEMTQgLyogR2x5cGhNYXAuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQkM2REI0RDQwQTFBRkVFRjAwRTVDRDE0IC8qIEdseXBoTWFw
TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBOUVGNDU3MEExQjk1N0QwMDMzMkI2MyAvKiBK
U0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyREN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKSW5kZXg6
IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDE0NDUwKQorKysg
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNTMgQEAKKzIwMDYtMDUtMTcgIEFu
ZGVycyBDYXJsc3NvbiAgPGFjYXJsc3NvbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgQWRkIG5l
dyBmaWxlcy4KKyAgICAgICAgCisgICAgICAgICogYmluZGluZ3MvanMvSlNIVE1MRWxlbWVudFdy
YXBwZXJGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUFuY2hvcldyYXBwZXIp
OgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQXBwbGV0V3JhcHBlcik6CisgICAgICAgIChXZWJD
b3JlOjpjcmVhdGVEaXZXcmFwcGVyKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZURpcmVjdG9y
eVdyYXBwZXIpOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlRExpc3RXcmFwcGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OmNyZWF0ZUh0bWxXcmFwcGVyKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0
ZU9MaXN0V3JhcHBlcik6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVVTGlzdFdyYXBwZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlSlNXcmFwcGVyKToKKyAgICAgICAgQWRkIHdyYXBwZXJz
LgorICAgICAgICAKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9ranNfaHRtbC5jcHA6CisgICAgICAg
IChLSlM6Oik6CisgICAgICAgIChLSlM6OkpTSFRNTEVsZW1lbnQ6OmNsYXNzSW5mbyk6CisgICAg
ICAgIChLSlM6OkpTSFRNTEVsZW1lbnQ6OmFjY2Vzc29ycyk6CisgICAgICAgIChLSlM6OkhUTUxF
bGVtZW50RnVuY3Rpb246OmNhbGxBc0Z1bmN0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9r
anNfaHRtbC5oOgorICAgICAgICAoS0pTOjpKU0hUTUxFbGVtZW50OjopOgorICAgICAgICBEZWxl
dGUgdGhlIG9sZCBpbXBsZW1lbnRhdGlvbnMuCisgICAgICAgIAorICAgICAgICAqIGh0bWwvSFRN
TEFuY2hvckVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEFuY2hvckVsZW1lbnQ6
Omhhc2gpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEFuY2hvckVsZW1lbnQ6Omhvc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEFuY2hvckVsZW1lbnQ6Omhvc3RuYW1lKToKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxBbmNob3JFbGVtZW50OjpwYXRobmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MQW5jaG9yRWxlbWVudDo6cG9ydCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MQW5jaG9yRWxl
bWVudDo6cHJvdG9jb2wpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEFuY2hvckVsZW1lbnQ6OnNl
YXJjaCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MQW5jaG9yRWxlbWVudDo6dGV4dCk6CisgICAg
ICAgICogaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5oOgorICAgICAgICBBZGQgc29tZSBuZXcgYWNj
ZXNzb3IgbWV0aG9kcyB3aGljaCB1c2VkIHRvIGJlIGluIGtqc19odG1sLmNwcC4KKyAgICAgICAg
CisgICAgICAgICogaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5pZGw6IEFkZGVkLgorICAgICAgICAq
IGh0bWwvSFRNTEFwcGxldEVsZW1lbnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0hUTUxE
TGlzdEVsZW1lbnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0hUTUxEaXJlY3RvcnlFbGVt
ZW50LmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9IVE1MRGl2RWxlbWVudC5pZGw6IEFkZGVk
LgorICAgICAgICAqIGh0bWwvSFRNTEh0bWxFbGVtZW50LmlkbDogQWRkZWQuCisgICAgICAgICog
aHRtbC9IVE1MT0xpc3RFbGVtZW50LmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9IVE1MVUxp
c3RFbGVtZW50LmlkbDogQWRkZWQuCisKIDIwMDYtMDUtMTcgIERhdmlkIEh5YXR0ICA8aHlhdHRA
YXBwbGUuY29tPgogCiAgICAgICAgIEZpeCBmb3IgODk1NCwgc2VwYXJhdGUgdGhlIGdseXBoIG1h
cCBvdXQgaW50byBpdHMgb3duIGZpbGVzIGFuZCBtYWtlIGl0Cg==
</data>
<flag name="review"
          id="2371"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>