<?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>147755</bug_id>
          
          <creation_ts>2015-08-06 16:24:13 -0700</creation_ts>
          <short_desc>Rename SQLStatementBackend to SQLStatement</short_desc>
          <delta_ts>2015-08-06 16:35:24 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1115529</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-06 16:24:13 -0700</bug_when>
    <thetext>Rename SQLStatementBackend to SQLStatement</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1115533</commentid>
    <comment_count>1</comment_count>
      <attachid>258420</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-06 16:26:32 -0700</bug_when>
    <thetext>Created attachment 258420
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1115536</commentid>
    <comment_count>2</comment_count>
      <attachid>258420</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-08-06 16:30:56 -0700</bug_when>
    <thetext>Comment on attachment 258420
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1115541</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-06 16:35:24 -0700</bug_when>
    <thetext>Committed r188089: &lt;http://trac.webkit.org/changeset/188089&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>258420</attachid>
            <date>2015-08-06 16:26:32 -0700</date>
            <delta_ts>2015-08-06 16:30:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147755-20150806162622.patch</filename>
            <type>text/plain</type>
            <size>35103</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg4MDgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzkzNjYzMWYzMjJiNGEy
MWM1NGU0NTkzNGE4MTlkODk0MzJhZjE5Zi4uZjA2MzU5ZTE1YjdjNzU5ZGRiMDRjNWE1NzMyYTAw
ZWJlOTAzNjI2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQzIEBACisyMDE1LTA4LTA2ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuYW1lIFNRTFN0
YXRlbWVudEJhY2tlbmQgdG8gU1FMU3RhdGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDc3NTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIE1vZHVs
ZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50Lmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFN0YXRlbWVudEJhY2tlbmQuaC4KKyAgICAgICAgKFdl
YkNvcmU6OlNRTFN0YXRlbWVudDo6aGFzU3RhdGVtZW50Q2FsbGJhY2spOgorICAgICAgICAoV2Vi
Q29yZTo6U1FMU3RhdGVtZW50OjpoYXNTdGF0ZW1lbnRFcnJvckNhbGxiYWNrKToKKyAgICAgICAg
KiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFN0YXRlbWVudEJhY2tlbmQuY3BwOiBSZW1vdmVkLgor
ICAgICAgICAoV2ViQ29yZTo6U1FMU3RhdGVtZW50QmFja2VuZDo6U1FMU3RhdGVtZW50QmFja2Vu
ZCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTUUxTdGF0ZW1lbnRCYWNrZW5kOjp+U1FM
U3RhdGVtZW50QmFja2VuZCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTUUxTdGF0ZW1l
bnRCYWNrZW5kOjpzcWxFcnJvcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTUUxTdGF0
ZW1lbnRCYWNrZW5kOjpzcWxSZXN1bHRTZXQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6
U1FMU3RhdGVtZW50QmFja2VuZDo6ZXhlY3V0ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3Jl
OjpTUUxTdGF0ZW1lbnRCYWNrZW5kOjpwZXJmb3JtQ2FsbGJhY2spOiBEZWxldGVkLgorICAgICAg
ICAoV2ViQ29yZTo6U1FMU3RhdGVtZW50QmFja2VuZDo6c2V0RGF0YWJhc2VEZWxldGVkRXJyb3Ip
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U1FMU3RhdGVtZW50QmFja2VuZDo6c2V0VmVy
c2lvbk1pc21hdGNoZWRFcnJvcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTUUxTdGF0
ZW1lbnRCYWNrZW5kOjpzZXRGYWlsdXJlRHVlVG9RdW90YSk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpTUUxTdGF0ZW1lbnRCYWNrZW5kOjpjbGVhckZhaWx1cmVEdWVUb1F1b3RhKTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNRTFN0YXRlbWVudEJhY2tlbmQ6Omxhc3RFeGVjdXRp
b25GYWlsZWREdWVUb1F1b3RhKTogRGVsZXRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFi
YXNlL1NRTFN0YXRlbWVudEJhY2tlbmQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNRTFN0YXRlbWVu
dEJhY2tlbmQ6Omhhc1N0YXRlbWVudENhbGxiYWNrKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlNRTFN0YXRlbWVudEJhY2tlbmQ6Omhhc1N0YXRlbWVudEVycm9yQ2FsbGJhY2spOiBEZWxl
dGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb24uY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U1FMVHJhbnNhY3Rpb246OmRlbGl2ZXJTdGF0ZW1lbnRDYWxsYmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpTUUxUcmFuc2FjdGlvbjo6ZXhlY3V0ZVNRTCk6CisgICAg
ICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpjdXJyZW50U3RhdGVtZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OlNRTFRyYW5zYWN0aW9uQmFja2VuZDo6ZW5xdWV1ZVN0YXRlbWVu
dEJhY2tlbmQpOgorICAgICAgICAoV2ViQ29yZTo6U1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpleGVj
dXRlU1FMKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uQmFj
a2VuZC5oOgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2o6CisgICAg
ICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzOgorICAgICAgICAq
IFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAxNS0wOC0wNiAgQW5kZXJz
IENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIE1lcmdlIFNRTFN0YXRl
bWVudCBpbnRvIFNRTFN0YXRlbWVudEJhY2tlbmQKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE0Nzc1NAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGRk
ZWNhYmM0MmQwNTUyNzMyZDBkNDg3NWU0ZDYzYTc5YTk1NTZmMDUuLjYzNTE4YWU1MmQ4N2I5YWRj
ZGU2NTNlZjcwZTBkMWVlMjBhMmEyMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xMDEzLDcg
KzEwMTMsNyBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9T
UUxFeGNlcHRpb24uY3BwCiAgICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXQuY3Bw
CiAgICAgTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXRSb3dMaXN0LmNwcAotICAgIE1v
ZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50QmFja2VuZC5jcHAKKyAgICBNb2R1bGVzL3dl
YmRhdGFiYXNlL1NRTFN0YXRlbWVudC5jcHAKICAgICBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRy
YW5zYWN0aW9uLmNwcAogICAgIE1vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNr
ZW5kLmNwcAogICAgIE1vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25DbGllbnQuY3Bw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFN0YXRl
bWVudC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxTdGF0ZW1lbnQu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4zNzQ2MDJkYjk5ZjExYTVhZWU3YWRjYTY0OWMyNjRiZmU4Y2YwZGRiCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxT
dGF0ZW1lbnQuaApAQCAtMCwwICsxLDgxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA3LCAy
MDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
IDMuICBOZWl0aGVyIHRoZSBuYW1lIG9mIEFwcGxlIEluYy4gKCJBcHBsZSIpIG5vciB0aGUgbmFt
ZXMgb2YKKyAqICAgICBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICog
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7ICAgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKyNpZm5kZWYgU1FMU3RhdGVtZW50X2gKKyNkZWZpbmUg
U1FMU3RhdGVtZW50X2gKKworI2luY2x1ZGUgIlNRTENhbGxiYWNrV3JhcHBlci5oIgorI2luY2x1
ZGUgIlNRTFN0YXRlbWVudENhbGxiYWNrLmgiCisjaW5jbHVkZSAiU1FMU3RhdGVtZW50RXJyb3JD
YWxsYmFjay5oIgorI2luY2x1ZGUgIlNRTFZhbHVlLmgiCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRGF0YWJhc2U7CitjbGFzcyBTUUxF
cnJvcjsKK2NsYXNzIFNRTFJlc3VsdFNldDsKK2NsYXNzIFNRTFRyYW5zYWN0aW9uQmFja2VuZDsK
KworY2xhc3MgU1FMU3RhdGVtZW50IHsKK3B1YmxpYzoKKyAgICBTUUxTdGF0ZW1lbnQoRGF0YWJh
c2UmLCBjb25zdCBTdHJpbmcmLCBjb25zdCBWZWN0b3I8U1FMVmFsdWU+JiwgUGFzc1JlZlB0cjxT
UUxTdGF0ZW1lbnRDYWxsYmFjaz4sIFBhc3NSZWZQdHI8U1FMU3RhdGVtZW50RXJyb3JDYWxsYmFj
az4sIGludCBwZXJtaXNzaW9ucyk7CisgICAgflNRTFN0YXRlbWVudCgpOworCisgICAgYm9vbCBl
eGVjdXRlKERhdGFiYXNlJik7CisgICAgYm9vbCBsYXN0RXhlY3V0aW9uRmFpbGVkRHVlVG9RdW90
YSgpIGNvbnN0OworCisgICAgYm9vbCBoYXNTdGF0ZW1lbnRDYWxsYmFjaygpIGNvbnN0IHsgcmV0
dXJuIG1fc3RhdGVtZW50Q2FsbGJhY2tXcmFwcGVyLmhhc0NhbGxiYWNrKCk7IH0KKyAgICBib29s
IGhhc1N0YXRlbWVudEVycm9yQ2FsbGJhY2soKSBjb25zdCB7IHJldHVybiBtX3N0YXRlbWVudEVy
cm9yQ2FsbGJhY2tXcmFwcGVyLmhhc0NhbGxiYWNrKCk7IH0KKyAgICBib29sIHBlcmZvcm1DYWxs
YmFjayhTUUxUcmFuc2FjdGlvbiopOworCisgICAgdm9pZCBzZXREYXRhYmFzZURlbGV0ZWRFcnJv
cigpOworICAgIHZvaWQgc2V0VmVyc2lvbk1pc21hdGNoZWRFcnJvcigpOworCisgICAgUGFzc1Jl
ZlB0cjxTUUxFcnJvcj4gc3FsRXJyb3IoKSBjb25zdDsKKyAgICBQYXNzUmVmUHRyPFNRTFJlc3Vs
dFNldD4gc3FsUmVzdWx0U2V0KCkgY29uc3Q7CisKK3ByaXZhdGU6CisgICAgdm9pZCBzZXRGYWls
dXJlRHVlVG9RdW90YSgpOworICAgIHZvaWQgY2xlYXJGYWlsdXJlRHVlVG9RdW90YSgpOworCisg
ICAgU3RyaW5nIG1fc3RhdGVtZW50OworICAgIFZlY3RvcjxTUUxWYWx1ZT4gbV9hcmd1bWVudHM7
CisgICAgU1FMQ2FsbGJhY2tXcmFwcGVyPFNRTFN0YXRlbWVudENhbGxiYWNrPiBtX3N0YXRlbWVu
dENhbGxiYWNrV3JhcHBlcjsKKyAgICBTUUxDYWxsYmFja1dyYXBwZXI8U1FMU3RhdGVtZW50RXJy
b3JDYWxsYmFjaz4gbV9zdGF0ZW1lbnRFcnJvckNhbGxiYWNrV3JhcHBlcjsKKworICAgIFJlZlB0
cjxTUUxFcnJvcj4gbV9lcnJvcjsKKyAgICBSZWZQdHI8U1FMUmVzdWx0U2V0PiBtX3Jlc3VsdFNl
dDsKKworICAgIGludCBtX3Blcm1pc3Npb25zOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQorCisjZW5kaWYgLy8gU1FMU3RhdGVtZW50X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50QmFja2VuZC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFN0YXRlbWVudEJhY2tlbmQuY3BwCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2ZjU5ZmViOTE3OWFjYjMyMjkzN2Q2ZTJlMzJlNTY3Zjhl
Yzc0MmVjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50QmFja2VuZC5jcHAK
KysrIC9kZXYvbnVsbApAQCAtMSwyNTQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAw
NywgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBsZSBJbmMuICgiQXBwbGUiKSBub3IgdGhl
IG5hbWVzIG9mCi0gKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIg
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsK
LSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
IlNRTFN0YXRlbWVudEJhY2tlbmQuaCIKLQotI2luY2x1ZGUgIkRhdGFiYXNlLmgiCi0jaW5jbHVk
ZSAiTG9nZ2luZy5oIgotI2luY2x1ZGUgIlNRTEVycm9yLmgiCi0jaW5jbHVkZSAiU1FMUmVzdWx0
U2V0LmgiCi0jaW5jbHVkZSAiU1FMU3RhdGVtZW50Q2FsbGJhY2suaCIKLSNpbmNsdWRlICJTUUxT
dGF0ZW1lbnRFcnJvckNhbGxiYWNrLmgiCi0jaW5jbHVkZSAiU1FMVmFsdWUuaCIKLSNpbmNsdWRl
ICJTUUxpdGVEYXRhYmFzZS5oIgotI2luY2x1ZGUgIlNRTGl0ZVN0YXRlbWVudC5oIgotI2luY2x1
ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KLQotCi0vLyBUaGUgTGlmZS1DeWNsZSBvZiBhIFNRTFN0
YXRlbWVudCBpLmUuIFdobydzIGtlZXBpbmcgdGhlIFNRTFN0YXRlbWVudCBhbGl2ZT8gCi0vLyA9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLy8gVGhlIFJlZlB0ciBjaGFpbiBnb2VzIHNvbWV0aGluZyBsaWtl
IHRoaXM6Ci0vLwotLy8gICAgIEF0IGJpcnRoIChpbiBTUUxUcmFuc2FjdGlvbkJhY2tlbmQ6OmV4
ZWN1dGVTUUwoKSk6Ci0vLyAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLy8gICAgIFNRTFRyYW5zYWN0aW9uQmFja2VuZCAgICAgICAgICAgLy8g
RGVxdWU8UmVmUHRyPFNRTFN0YXRlbWVudEJhY2tlbmQ+PiBtX3N0YXRlbWVudFF1ZXVlIHBvaW50
cyB0byAuLi4KLS8vICAgICAtLT4gU1FMU3RhdGVtZW50QmFja2VuZCAgICAgICAgIC8vIHN0ZDo6
dW5pcXVlX3B0cjxTUUxTdGF0ZW1lbnQ+IG1fZnJvbnRlbmQgcG9pbnRzIHRvIC4uLgotLy8gICAg
ICAgICAtLT4gU1FMU3RhdGVtZW50Ci0vLwotLy8gICAgIEFmdGVyIGdyYWJiaW5nIHRoZSBzdGF0
ZW1lbnQgZm9yIGV4ZWN1dGlvbiAoaW4gU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpnZXROZXh0U3Rh
dGVtZW50KCkpOgotLy8gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0vLyAg
ICAgU1FMVHJhbnNhY3Rpb25CYWNrZW5kICAgICAgICAgICAvLyBSZWZQdHI8U1FMU3RhdGVtZW50
QmFja2VuZD4gbV9jdXJyZW50U3RhdGVtZW50QmFja2VuZCBwb2ludHMgdG8gLi4uCi0vLyAgICAg
LS0+IFNRTFN0YXRlbWVudEJhY2tlbmQgICAgICAgICAvLyBzdGQ6OnVuaXF1ZV9wdHI8U1FMU3Rh
dGVtZW50PiBtX2Zyb250ZW5kIHBvaW50cyB0byAuLi4KLS8vICAgICAgICAgLS0+IFNRTFN0YXRl
bWVudAotLy8KLS8vICAgICBUaGVuIHdlIGV4ZWN1dGUgdGhlIHN0YXRlbWVudCBpbiBTUUxUcmFu
c2FjdGlvbkJhY2tlbmQ6OnJ1bkN1cnJlbnRTdGF0ZW1lbnRBbmRHZXROZXh0U3RhdGUoKS4KLS8v
ICAgICBBbmQgd2UgY2FsbGJhY2sgdG8gdGhlIHNjcmlwdCBpbiBTUUxUcmFuc2FjdGlvbjo6ZGVs
aXZlclN0YXRlbWVudENhbGxiYWNrKCkgaWYKLS8vICAgICBuZWNlc3NhcnkuCi0vLyAgICAgLSBJ
bnNpZGUgU1FMVHJhbnNhY3Rpb246OmRlbGl2ZXJTdGF0ZW1lbnRDYWxsYmFjaygpLCB3ZSBvcGVy
YXRlIG9uIGEgcmF3IFNRTFN0YXRlbWVudCouCi0vLyAgICAgICBUaGlzIHBvaW50ZXIgaXMgdmFs
aWQgYmVjYXVzZSBpdCBpcyBvd25lZCBieSBTUUxUcmFuc2FjdGlvbkJhY2tlbmQncwotLy8gICAg
ICAgU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjptX2N1cnJlbnRTdGF0ZW1lbnRCYWNrZW5kLgotLy8K
LS8vICAgICBBZnRlciB3ZSdyZSBkb25lIGV4ZWN1dGluZyB0aGUgc3RhdGVtZW50IChpbiBTUUxU
cmFuc2FjdGlvbkJhY2tlbmQ6OmdldE5leHRTdGF0ZW1lbnQoKSk6Ci0vLyAgICAgPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0vLyAgICAgV2hlbiB3ZSdyZSBkb25lIGV4ZWN1dGluZywg
d2UnbGwgZ3JhYiB0aGUgbmV4dCBzdGF0ZW1lbnQuIEJ1dCBiZWZvcmUgd2UKLS8vICAgICBkbyB0
aGF0LCBnZXROZXh0U3RhdGVtZW50KCkgbnVsbGlmeSBTUUxUcmFuc2FjdGlvbkJhY2tlbmQ6Om1f
Y3VycmVudFN0YXRlbWVudEJhY2tlbmQuCi0vLyAgICAgVGhpcyB3aWxsIHRyaWdnZXIgdGhlIGRl
bGV0aW9uIG9mIHRoZSBTUUxTdGF0ZW1lbnRCYWNrZW5kIGFuZCBTUUxTdGF0ZW1lbnQuCi0vLwot
Ly8gICAgIE5vdGU6IHVubGlrZSB3aXRoIFNRTFRyYW5zYWN0aW9uLCB0aGVyZSBpcyBubyBKUyBy
ZXByZXNlbnRhdGlvbiBvZiBTUUxTdGF0ZW1lbnQuCi0vLyAgICAgSGVuY2UsIHRoZXJlIGlzIG5v
IEdDIGRlcGVuZGVuY3kgYXQgcGxheSBoZXJlLgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVNR
TFN0YXRlbWVudEJhY2tlbmQ6OlNRTFN0YXRlbWVudEJhY2tlbmQoRGF0YWJhc2UmIGRhdGFiYXNl
LCBjb25zdCBTdHJpbmcmIHN0YXRlbWVudCwgY29uc3QgVmVjdG9yPFNRTFZhbHVlPiYgYXJndW1l
bnRzLCBQYXNzUmVmUHRyPFNRTFN0YXRlbWVudENhbGxiYWNrPiBjYWxsYmFjaywgUGFzc1JlZlB0
cjxTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBpbnQgcGVybWlzc2lv
bnMpCi0gICAgOiBtX3N0YXRlbWVudChzdGF0ZW1lbnQuaXNvbGF0ZWRDb3B5KCkpCi0gICAgLCBt
X2FyZ3VtZW50cyhhcmd1bWVudHMpCi0gICAgLCBtX3N0YXRlbWVudENhbGxiYWNrV3JhcHBlcihj
YWxsYmFjaywgZGF0YWJhc2Uuc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQotICAgICwgbV9zdGF0
ZW1lbnRFcnJvckNhbGxiYWNrV3JhcHBlcihlcnJvckNhbGxiYWNrLCBkYXRhYmFzZS5zY3JpcHRF
eGVjdXRpb25Db250ZXh0KCkpCi0gICAgLCBtX3Blcm1pc3Npb25zKHBlcm1pc3Npb25zKQotewot
fQotCi1TUUxTdGF0ZW1lbnRCYWNrZW5kOjp+U1FMU3RhdGVtZW50QmFja2VuZCgpCi17Ci19Ci0K
LVBhc3NSZWZQdHI8U1FMRXJyb3I+IFNRTFN0YXRlbWVudEJhY2tlbmQ6OnNxbEVycm9yKCkgY29u
c3QKLXsKLSAgICByZXR1cm4gbV9lcnJvcjsKLX0KLQotUGFzc1JlZlB0cjxTUUxSZXN1bHRTZXQ+
IFNRTFN0YXRlbWVudEJhY2tlbmQ6OnNxbFJlc3VsdFNldCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IG1fcmVzdWx0U2V0OwotfQotCi1ib29sIFNRTFN0YXRlbWVudEJhY2tlbmQ6OmV4ZWN1dGUoRGF0
YWJhc2UmIGRiKQotewotICAgIEFTU0VSVCghbV9yZXN1bHRTZXQpOwotCi0gICAgLy8gSWYgd2Un
cmUgcmUtcnVubmluZyB0aGlzIHN0YXRlbWVudCBhZnRlciBhIHF1b3RhIHZpb2xhdGlvbiwgd2Ug
bmVlZCB0byBjbGVhciB0aGF0IGVycm9yIG5vdwotICAgIGNsZWFyRmFpbHVyZUR1ZVRvUXVvdGEo
KTsKLQotICAgIC8vIFRoaXMgdHJhbnNhY3Rpb24gbWlnaHQgaGF2ZSBiZWVuIG1hcmtlZCBiYWQg
d2hpbGUgaXQgd2FzIGJlaW5nIHNldCB1cCBvbiB0aGUgbWFpbiB0aHJlYWQsCi0gICAgLy8gc28g
aWYgdGhlcmUgaXMgc3RpbGwgYW4gZXJyb3IsIHJldHVybiBmYWxzZS4KLSAgICBpZiAobV9lcnJv
cikKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgZGIuc2V0QXV0aG9yaXplclBlcm1pc3Np
b25zKG1fcGVybWlzc2lvbnMpOwotCi0gICAgU1FMaXRlRGF0YWJhc2UmIGRhdGFiYXNlID0gZGIu
c3FsaXRlRGF0YWJhc2UoKTsKLQotICAgIFNRTGl0ZVN0YXRlbWVudCBzdGF0ZW1lbnQoZGF0YWJh
c2UsIG1fc3RhdGVtZW50KTsKLSAgICBpbnQgcmVzdWx0ID0gc3RhdGVtZW50LnByZXBhcmUoKTsK
LQotICAgIGlmIChyZXN1bHQgIT0gU1FMSVRFX09LKSB7Ci0gICAgICAgIExPRyhTdG9yYWdlQVBJ
LCAiVW5hYmxlIHRvIHZlcmlmeSBjb3JyZWN0bmVzcyBvZiBzdGF0ZW1lbnQgJXMgLSBlcnJvciAl
aSAoJXMpIiwgbV9zdGF0ZW1lbnQuYXNjaWkoKS5kYXRhKCksIHJlc3VsdCwgZGF0YWJhc2UubGFz
dEVycm9yTXNnKCkpOwotICAgICAgICBpZiAocmVzdWx0ID09IFNRTElURV9JTlRFUlJVUFQpCi0g
ICAgICAgICAgICBtX2Vycm9yID0gU1FMRXJyb3I6OmNyZWF0ZShTUUxFcnJvcjo6REFUQUJBU0Vf
RVJSLCAiY291bGQgbm90IHByZXBhcmUgc3RhdGVtZW50IiwgcmVzdWx0LCAiaW50ZXJydXB0ZWQi
KTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgbV9lcnJvciA9IFNRTEVycm9yOjpjcmVhdGUo
U1FMRXJyb3I6OlNZTlRBWF9FUlIsICJjb3VsZCBub3QgcHJlcGFyZSBzdGF0ZW1lbnQiLCByZXN1
bHQsIGRhdGFiYXNlLmxhc3RFcnJvck1zZygpKTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAg
IH0KLQotICAgIC8vIEZJWE1FOiBJZiB0aGUgc3RhdGVtZW50IHVzZXMgdGhlID8jIyMgc3ludGF4
IHN1cHBvcnRlZCBieSBzcWxpdGUsIHRoZSBiaW5kIHBhcmFtZXRlciBjb3VudCBpcyB2ZXJ5IGxp
a2VseSBvZmYgZnJvbSB0aGUgbnVtYmVyIG9mIHF1ZXN0aW9uIG1hcmtzLgotICAgIC8vIElmIHRo
aXMgaXMgdGhlIGNhc2UsIHRoZXkgbWlnaHQgYmUgdHJ5aW5nIHRvIGRvIHNvbWV0aGluZyBmaXNo
eSBvciBtYWxpY2lvdXMKLSAgICBpZiAoc3RhdGVtZW50LmJpbmRQYXJhbWV0ZXJDb3VudCgpICE9
IG1fYXJndW1lbnRzLnNpemUoKSkgewotICAgICAgICBMT0coU3RvcmFnZUFQSSwgIkJpbmQgcGFy
YW1ldGVyIGNvdW50IGRvZXNuJ3QgbWF0Y2ggbnVtYmVyIG9mIHF1ZXN0aW9uIG1hcmtzIik7Ci0g
ICAgICAgIG1fZXJyb3IgPSBTUUxFcnJvcjo6Y3JlYXRlKFNRTEVycm9yOjpTWU5UQVhfRVJSLCAi
bnVtYmVyIG9mICc/J3MgaW4gc3RhdGVtZW50IHN0cmluZyBkb2VzIG5vdCBtYXRjaCBhcmd1bWVu
dCBjb3VudCIpOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotCi0gICAgZm9yICh1bnNp
Z25lZCBpID0gMDsgaSA8IG1fYXJndW1lbnRzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIHJlc3Vs
dCA9IHN0YXRlbWVudC5iaW5kVmFsdWUoaSArIDEsIG1fYXJndW1lbnRzW2ldKTsKLSAgICAgICAg
aWYgKHJlc3VsdCA9PSBTUUxJVEVfRlVMTCkgewotICAgICAgICAgICAgc2V0RmFpbHVyZUR1ZVRv
UXVvdGEoKTsKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgfQotCi0gICAgICAg
IGlmIChyZXN1bHQgIT0gU1FMSVRFX09LKSB7Ci0gICAgICAgICAgICBMT0coU3RvcmFnZUFQSSwg
IkZhaWxlZCB0byBiaW5kIHZhbHVlIGluZGV4ICVpIHRvIHN0YXRlbWVudCBmb3IgcXVlcnkgJyVz
JyIsIGkgKyAxLCBtX3N0YXRlbWVudC5hc2NpaSgpLmRhdGEoKSk7Ci0gICAgICAgICAgICBtX2Vy
cm9yID0gU1FMRXJyb3I6OmNyZWF0ZShTUUxFcnJvcjo6REFUQUJBU0VfRVJSLCAiY291bGQgbm90
IGJpbmQgdmFsdWUiLCByZXN1bHQsIGRhdGFiYXNlLmxhc3RFcnJvck1zZygpKTsKLSAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIFJlZlB0cjxTUUxSZXN1
bHRTZXQ+IHJlc3VsdFNldCA9IFNRTFJlc3VsdFNldDo6Y3JlYXRlKCk7Ci0KLSAgICAvLyBTdGVw
IHNvIHdlIGNhbiBmZXRjaCB0aGUgY29sdW1uIG5hbWVzLgotICAgIHJlc3VsdCA9IHN0YXRlbWVu
dC5zdGVwKCk7Ci0gICAgc3dpdGNoIChyZXN1bHQpIHsKLSAgICBjYXNlIFNRTElURV9ST1c6IHsK
LSAgICAgICAgaW50IGNvbHVtbkNvdW50ID0gc3RhdGVtZW50LmNvbHVtbkNvdW50KCk7Ci0gICAg
ICAgIFNRTFJlc3VsdFNldFJvd0xpc3QqIHJvd3MgPSByZXN1bHRTZXQtPnJvd3MoKTsKLQotICAg
ICAgICBmb3IgKGludCBpID0gMDsgaSA8IGNvbHVtbkNvdW50OyBpKyspCi0gICAgICAgICAgICBy
b3dzLT5hZGRDb2x1bW4oc3RhdGVtZW50LmdldENvbHVtbk5hbWUoaSkpOwotCi0gICAgICAgIGRv
IHsKLSAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgY29sdW1uQ291bnQ7IGkrKykKLSAg
ICAgICAgICAgICAgICByb3dzLT5hZGRSZXN1bHQoc3RhdGVtZW50LmdldENvbHVtblZhbHVlKGkp
KTsKLQotICAgICAgICAgICAgcmVzdWx0ID0gc3RhdGVtZW50LnN0ZXAoKTsKLSAgICAgICAgfSB3
aGlsZSAocmVzdWx0ID09IFNRTElURV9ST1cpOwotCi0gICAgICAgIGlmIChyZXN1bHQgIT0gU1FM
SVRFX0RPTkUpIHsKLSAgICAgICAgICAgIG1fZXJyb3IgPSBTUUxFcnJvcjo6Y3JlYXRlKFNRTEVy
cm9yOjpEQVRBQkFTRV9FUlIsICJjb3VsZCBub3QgaXRlcmF0ZSByZXN1bHRzIiwgcmVzdWx0LCBk
YXRhYmFzZS5sYXN0RXJyb3JNc2coKSk7Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
ICAgIH0KLSAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIGNhc2UgU1FMSVRFX0RPTkU6IHsKLSAg
ICAgICAgLy8gRGlkbid0IGZpbmQgYW55dGhpbmcsIG9yIHdhcyBhbiBpbnNlcnQKLSAgICAgICAg
aWYgKGRiLmxhc3RBY3Rpb25XYXNJbnNlcnQoKSkKLSAgICAgICAgICAgIHJlc3VsdFNldC0+c2V0
SW5zZXJ0SWQoZGF0YWJhc2UubGFzdEluc2VydFJvd0lEKCkpOwotICAgICAgICBicmVhazsKLSAg
ICB9Ci0gICAgY2FzZSBTUUxJVEVfRlVMTDoKLSAgICAgICAgLy8gUmV0dXJuIHRoZSBRdW90YSBl
cnJvciAtIHRoZSBkZWxlZ2F0ZSB3aWxsIGJlIGFza2VkIGZvciBtb3JlIHNwYWNlIGFuZCB0aGlz
IHN0YXRlbWVudCBtaWdodCBiZSByZS1ydW4KLSAgICAgICAgc2V0RmFpbHVyZUR1ZVRvUXVvdGEo
KTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGNhc2UgU1FMSVRFX0NPTlNUUkFJTlQ6Ci0g
ICAgICAgIG1fZXJyb3IgPSBTUUxFcnJvcjo6Y3JlYXRlKFNRTEVycm9yOjpDT05TVFJBSU5UX0VS
UiwgImNvdWxkIG5vdCBleGVjdXRlIHN0YXRlbWVudCBkdWUgdG8gYSBjb25zdGFpbnQgZmFpbHVy
ZSIsIHJlc3VsdCwgZGF0YWJhc2UubGFzdEVycm9yTXNnKCkpOwotICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgbV9lcnJvciA9IFNRTEVycm9yOjpjcmVhdGUoU1FM
RXJyb3I6OkRBVEFCQVNFX0VSUiwgImNvdWxkIG5vdCBleGVjdXRlIHN0YXRlbWVudCIsIHJlc3Vs
dCwgZGF0YWJhc2UubGFzdEVycm9yTXNnKCkpOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
fQotCi0gICAgLy8gRklYTUU6IElmIHRoZSBzcGVjIGFsbG93cyB0cmlnZ2VycywgYW5kIHdlIHdh
bnQgdG8gYmUgImFjY3VyYXRlIiBpbiBhIGRpZmZlcmVudCB3YXksIHdlJ2QgdXNlCi0gICAgLy8g
c3FsaXRlM190b3RhbF9jaGFuZ2VzKCkgaGVyZSBpbnN0ZWFkIG9mIHNxbGl0ZTNfY2hhbmdlZCwg
YmVjYXVzZSB0aGF0IGluY2x1ZGVzIHJvd3MgbW9kaWZpZWQgZnJvbSB3aXRoaW4gYSB0cmlnZ2Vy
Ci0gICAgLy8gRm9yIG5vdywgdGhpcyBzZWVtcyBzdWZmaWNpZW50Ci0gICAgcmVzdWx0U2V0LT5z
ZXRSb3dzQWZmZWN0ZWQoZGF0YWJhc2UubGFzdENoYW5nZXMoKSk7Ci0KLSAgICBtX3Jlc3VsdFNl
dCA9IHJlc3VsdFNldDsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBTUUxTdGF0ZW1lbnRC
YWNrZW5kOjpwZXJmb3JtQ2FsbGJhY2soU1FMVHJhbnNhY3Rpb24qIHRyYW5zYWN0aW9uKQotewot
ICAgIEFTU0VSVCh0cmFuc2FjdGlvbik7Ci0KLSAgICBib29sIGNhbGxiYWNrRXJyb3IgPSBmYWxz
ZTsKLQotICAgIFJlZlB0cjxTUUxTdGF0ZW1lbnRDYWxsYmFjaz4gY2FsbGJhY2sgPSBtX3N0YXRl
bWVudENhbGxiYWNrV3JhcHBlci51bndyYXAoKTsKLSAgICBSZWZQdHI8U1FMU3RhdGVtZW50RXJy
b3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjayA9IG1fc3RhdGVtZW50RXJyb3JDYWxsYmFja1dyYXBw
ZXIudW53cmFwKCk7Ci0gICAgUmVmUHRyPFNRTEVycm9yPiBlcnJvciA9IHNxbEVycm9yKCk7Ci0K
LSAgICAvLyBDYWxsIHRoZSBhcHByb3ByaWF0ZSBzdGF0ZW1lbnQgY2FsbGJhY2sgYW5kIHRyYWNr
IGlmIGl0IHJlc3VsdGVkIGluIGFuIGVycm9yLAotICAgIC8vIGJlY2F1c2UgdGhlbiB3ZSBuZWVk
IHRvIGp1bXAgdG8gdGhlIHRyYW5zYWN0aW9uIGVycm9yIGNhbGxiYWNrLgotICAgIGlmIChlcnJv
cikgewotICAgICAgICBpZiAoZXJyb3JDYWxsYmFjaykKLSAgICAgICAgICAgIGNhbGxiYWNrRXJy
b3IgPSBlcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudCh0cmFuc2FjdGlvbiwgZXJyb3IuZ2V0KCkp
OwotICAgIH0gZWxzZSBpZiAoY2FsbGJhY2spIHsKLSAgICAgICAgUmVmUHRyPFNRTFJlc3VsdFNl
dD4gcmVzdWx0U2V0ID0gc3FsUmVzdWx0U2V0KCk7Ci0gICAgICAgIGNhbGxiYWNrRXJyb3IgPSAh
Y2FsbGJhY2stPmhhbmRsZUV2ZW50KHRyYW5zYWN0aW9uLCByZXN1bHRTZXQuZ2V0KCkpOwotICAg
IH0KLQotICAgIHJldHVybiBjYWxsYmFja0Vycm9yOwotfQotCi12b2lkIFNRTFN0YXRlbWVudEJh
Y2tlbmQ6OnNldERhdGFiYXNlRGVsZXRlZEVycm9yKCkKLXsKLSAgICBBU1NFUlQoIW1fZXJyb3Ig
JiYgIW1fcmVzdWx0U2V0KTsKLSAgICBtX2Vycm9yID0gU1FMRXJyb3I6OmNyZWF0ZShTUUxFcnJv
cjo6VU5LTk9XTl9FUlIsICJ1bmFibGUgdG8gZXhlY3V0ZSBzdGF0ZW1lbnQsIGJlY2F1c2UgdGhl
IHVzZXIgZGVsZXRlZCB0aGUgZGF0YWJhc2UiKTsKLX0KLQotdm9pZCBTUUxTdGF0ZW1lbnRCYWNr
ZW5kOjpzZXRWZXJzaW9uTWlzbWF0Y2hlZEVycm9yKCkKLXsKLSAgICBBU1NFUlQoIW1fZXJyb3Ig
JiYgIW1fcmVzdWx0U2V0KTsKLSAgICBtX2Vycm9yID0gU1FMRXJyb3I6OmNyZWF0ZShTUUxFcnJv
cjo6VkVSU0lPTl9FUlIsICJjdXJyZW50IHZlcnNpb24gb2YgdGhlIGRhdGFiYXNlIGFuZCBgb2xk
VmVyc2lvbmAgYXJndW1lbnQgZG8gbm90IG1hdGNoIik7Ci19Ci0KLXZvaWQgU1FMU3RhdGVtZW50
QmFja2VuZDo6c2V0RmFpbHVyZUR1ZVRvUXVvdGEoKQotewotICAgIEFTU0VSVCghbV9lcnJvciAm
JiAhbV9yZXN1bHRTZXQpOwotICAgIG1fZXJyb3IgPSBTUUxFcnJvcjo6Y3JlYXRlKFNRTEVycm9y
OjpRVU9UQV9FUlIsICJ0aGVyZSB3YXMgbm90IGVub3VnaCByZW1haW5pbmcgc3RvcmFnZSBzcGFj
ZSwgb3IgdGhlIHN0b3JhZ2UgcXVvdGEgd2FzIHJlYWNoZWQgYW5kIHRoZSB1c2VyIGRlY2xpbmVk
IHRvIGFsbG93IG1vcmUgc3BhY2UiKTsKLX0KLQotdm9pZCBTUUxTdGF0ZW1lbnRCYWNrZW5kOjpj
bGVhckZhaWx1cmVEdWVUb1F1b3RhKCkKLXsKLSAgICBpZiAobGFzdEV4ZWN1dGlvbkZhaWxlZER1
ZVRvUXVvdGEoKSkKLSAgICAgICAgbV9lcnJvciA9IG51bGxwdHI7Ci19Ci0KLWJvb2wgU1FMU3Rh
dGVtZW50QmFja2VuZDo6bGFzdEV4ZWN1dGlvbkZhaWxlZER1ZVRvUXVvdGEoKSBjb25zdAotewot
ICAgIHJldHVybiBtX2Vycm9yICYmIG1fZXJyb3ItPmNvZGUoKSA9PSBTUUxFcnJvcjo6UVVPVEFf
RVJSOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFN0YXRlbWVudEJhY2tlbmQuaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50QmFja2VuZC5oCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmODlhZWI5ZDU4NDE0ZmMwM2YyODk1ZDI1NDE0ZTZlZDgz
MTQ3YzA1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMU3RhdGVtZW50QmFja2VuZC5oCisr
KyAvZGV2L251bGwKQEAgLTEsODEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNywg
MjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBsZSBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5h
bWVzIG9mCi0gKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5E
IEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyAgIE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5ECi0gKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0jaWZuZGVmIFNRTFN0YXRlbWVudEJhY2tlbmRfaAot
I2RlZmluZSBTUUxTdGF0ZW1lbnRCYWNrZW5kX2gKLQotI2luY2x1ZGUgIlNRTENhbGxiYWNrV3Jh
cHBlci5oIgotI2luY2x1ZGUgIlNRTFN0YXRlbWVudENhbGxiYWNrLmgiCi0jaW5jbHVkZSAiU1FM
U3RhdGVtZW50RXJyb3JDYWxsYmFjay5oIgotI2luY2x1ZGUgIlNRTFZhbHVlLmgiCi0jaW5jbHVk
ZSA8d3RmL0ZvcndhcmQuaD4KLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0jaW5jbHVkZSA8d3Rm
L3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgRGF0YWJh
c2U7Ci1jbGFzcyBTUUxFcnJvcjsKLWNsYXNzIFNRTFJlc3VsdFNldDsKLWNsYXNzIFNRTFRyYW5z
YWN0aW9uQmFja2VuZDsKLQotY2xhc3MgU1FMU3RhdGVtZW50QmFja2VuZCB7Ci1wdWJsaWM6Ci0g
ICAgU1FMU3RhdGVtZW50QmFja2VuZChEYXRhYmFzZSYsIGNvbnN0IFN0cmluZyYsIGNvbnN0IFZl
Y3RvcjxTUUxWYWx1ZT4mLCBQYXNzUmVmUHRyPFNRTFN0YXRlbWVudENhbGxiYWNrPiwgUGFzc1Jl
ZlB0cjxTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrPiwgaW50IHBlcm1pc3Npb25zKTsKLSAgICB+
U1FMU3RhdGVtZW50QmFja2VuZCgpOwotCi0gICAgYm9vbCBleGVjdXRlKERhdGFiYXNlJik7Ci0g
ICAgYm9vbCBsYXN0RXhlY3V0aW9uRmFpbGVkRHVlVG9RdW90YSgpIGNvbnN0OwotCi0gICAgYm9v
bCBoYXNTdGF0ZW1lbnRDYWxsYmFjaygpIGNvbnN0IHsgcmV0dXJuIG1fc3RhdGVtZW50Q2FsbGJh
Y2tXcmFwcGVyLmhhc0NhbGxiYWNrKCk7IH0KLSAgICBib29sIGhhc1N0YXRlbWVudEVycm9yQ2Fs
bGJhY2soKSBjb25zdCB7IHJldHVybiBtX3N0YXRlbWVudEVycm9yQ2FsbGJhY2tXcmFwcGVyLmhh
c0NhbGxiYWNrKCk7IH0KLSAgICBib29sIHBlcmZvcm1DYWxsYmFjayhTUUxUcmFuc2FjdGlvbiop
OwotCi0gICAgdm9pZCBzZXREYXRhYmFzZURlbGV0ZWRFcnJvcigpOwotICAgIHZvaWQgc2V0VmVy
c2lvbk1pc21hdGNoZWRFcnJvcigpOwotCi0gICAgUGFzc1JlZlB0cjxTUUxFcnJvcj4gc3FsRXJy
b3IoKSBjb25zdDsKLSAgICBQYXNzUmVmUHRyPFNRTFJlc3VsdFNldD4gc3FsUmVzdWx0U2V0KCkg
Y29uc3Q7Ci0KLXByaXZhdGU6Ci0gICAgdm9pZCBzZXRGYWlsdXJlRHVlVG9RdW90YSgpOwotICAg
IHZvaWQgY2xlYXJGYWlsdXJlRHVlVG9RdW90YSgpOwotCi0gICAgU3RyaW5nIG1fc3RhdGVtZW50
OwotICAgIFZlY3RvcjxTUUxWYWx1ZT4gbV9hcmd1bWVudHM7Ci0gICAgU1FMQ2FsbGJhY2tXcmFw
cGVyPFNRTFN0YXRlbWVudENhbGxiYWNrPiBtX3N0YXRlbWVudENhbGxiYWNrV3JhcHBlcjsKLSAg
ICBTUUxDYWxsYmFja1dyYXBwZXI8U1FMU3RhdGVtZW50RXJyb3JDYWxsYmFjaz4gbV9zdGF0ZW1l
bnRFcnJvckNhbGxiYWNrV3JhcHBlcjsKLQotICAgIFJlZlB0cjxTUUxFcnJvcj4gbV9lcnJvcjsK
LSAgICBSZWZQdHI8U1FMUmVzdWx0U2V0PiBtX3Jlc3VsdFNldDsKLQotICAgIGludCBtX3Blcm1p
c3Npb25zOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gU1FMU3Rh
dGVtZW50QmFja2VuZF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRh
dGFiYXNlL1NRTFRyYW5zYWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0
YWJhc2UvU1FMVHJhbnNhY3Rpb24uY3BwCmluZGV4IDljMGMzM2IzNzk4MDcyOTI0NzRmNDJiOTA2
OThmMzQzNjc5NDA4ZmIuLmY5NWU4NTA2NTM2ODBhNThkZmZhMjdkYjgwMGJjNjAwMDk3OThkNmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNh
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJh
bnNhY3Rpb24uY3BwCkBAIC0zNSw3ICszNSw3IEBACiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5o
IgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlICJTUUxFcnJvci5oIgotI2luY2x1ZGUg
IlNRTFN0YXRlbWVudEJhY2tlbmQuaCIKKyNpbmNsdWRlICJTUUxTdGF0ZW1lbnQuaCIKICNpbmNs
dWRlICJTUUxTdGF0ZW1lbnRDYWxsYmFjay5oIgogI2luY2x1ZGUgIlNRTFN0YXRlbWVudEVycm9y
Q2FsbGJhY2suaCIKICNpbmNsdWRlICJTUUxUcmFuc2FjdGlvbkJhY2tlbmQuaCIKQEAgLTE4NSw3
ICsxODUsNyBAQCBTUUxUcmFuc2FjdGlvblN0YXRlIFNRTFRyYW5zYWN0aW9uOjpkZWxpdmVyU3Rh
dGVtZW50Q2FsbGJhY2soKQogICAgIC8vIE90aGVyd2lzZSwgY29udGludWUgdG8gbG9vcCB0aHJv
dWdoIHRoZSBzdGF0ZW1lbnQgcXVldWUKICAgICBtX2V4ZWN1dGVTcWxBbGxvd2VkID0gdHJ1ZTsK
IAotICAgIFNRTFN0YXRlbWVudEJhY2tlbmQqIGN1cnJlbnRTdGF0ZW1lbnQgPSBtX2JhY2tlbmQt
PmN1cnJlbnRTdGF0ZW1lbnQoKTsKKyAgICBTUUxTdGF0ZW1lbnQqIGN1cnJlbnRTdGF0ZW1lbnQg
PSBtX2JhY2tlbmQtPmN1cnJlbnRTdGF0ZW1lbnQoKTsKICAgICBBU1NFUlQoY3VycmVudFN0YXRl
bWVudCk7CiAKICAgICBib29sIHJlc3VsdCA9IGN1cnJlbnRTdGF0ZW1lbnQtPnBlcmZvcm1DYWxs
YmFjayh0aGlzKTsKQEAgLTI1OCw3ICsyNTgsNyBAQCB2b2lkIFNRTFRyYW5zYWN0aW9uOjpleGVj
dXRlU1FMKGNvbnN0IFN0cmluZyYgc3FsU3RhdGVtZW50LCBjb25zdCBWZWN0b3I8U1FMVmFsdQog
ICAgIGVsc2UgaWYgKG1fcmVhZE9ubHkpCiAgICAgICAgIHBlcm1pc3Npb25zIHw9IERhdGFiYXNl
QXV0aG9yaXplcjo6UmVhZE9ubHlNYXNrOwogCi0gICAgYXV0byBzdGF0ZW1lbnQgPSBzdGQ6Om1h
a2VfdW5pcXVlPFNRTFN0YXRlbWVudEJhY2tlbmQ+KG1fZGF0YWJhc2UsIHNxbFN0YXRlbWVudCwg
YXJndW1lbnRzLCBXVEY6Om1vdmUoY2FsbGJhY2spLCBXVEY6Om1vdmUoY2FsbGJhY2tFcnJvciks
IHBlcm1pc3Npb25zKTsKKyAgICBhdXRvIHN0YXRlbWVudCA9IHN0ZDo6bWFrZV91bmlxdWU8U1FM
U3RhdGVtZW50PihtX2RhdGFiYXNlLCBzcWxTdGF0ZW1lbnQsIGFyZ3VtZW50cywgV1RGOjptb3Zl
KGNhbGxiYWNrKSwgV1RGOjptb3ZlKGNhbGxiYWNrRXJyb3IpLCBwZXJtaXNzaW9ucyk7CiAgICAg
bV9iYWNrZW5kLT5leGVjdXRlU1FMKFdURjo6bW92ZShzdGF0ZW1lbnQpKTsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkJh
Y2tlbmQuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2Fj
dGlvbkJhY2tlbmQuY3BwCmluZGV4IDNlZDczYzEwZGI5N2RjZjI1M2VjMDEyMjQxNGM2NzNiZDZj
NmU1M2IuLmFlYmExYTExOGNlYjNjMjNhMWQwMzU0M2ViMjUwMTg2ODY2NTFhYzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNr
ZW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5z
YWN0aW9uQmFja2VuZC5jcHAKQEAgLTM4LDcgKzM4LDcgQEAKICNpbmNsdWRlICJMb2dnaW5nLmgi
CiAjaW5jbHVkZSAiT3JpZ2luTG9jay5oIgogI2luY2x1ZGUgIlNRTEVycm9yLmgiCi0jaW5jbHVk
ZSAiU1FMU3RhdGVtZW50QmFja2VuZC5oIgorI2luY2x1ZGUgIlNRTFN0YXRlbWVudC5oIgogI2lu
Y2x1ZGUgIlNRTFN0YXRlbWVudENhbGxiYWNrLmgiCiAjaW5jbHVkZSAiU1FMU3RhdGVtZW50RXJy
b3JDYWxsYmFjay5oIgogI2luY2x1ZGUgIlNRTFRyYW5zYWN0aW9uLmgiCkBAIC00MjMsNyArNDIz
LDcgQEAgdm9pZCBTUUxUcmFuc2FjdGlvbkJhY2tlbmQ6OmRvQ2xlYW51cCgpCiAgICAgbV93cmFw
cGVyID0gbnVsbHB0cjsKIH0KIAotU1FMU3RhdGVtZW50QmFja2VuZCogU1FMVHJhbnNhY3Rpb25C
YWNrZW5kOjpjdXJyZW50U3RhdGVtZW50KCkKK1NRTFN0YXRlbWVudCogU1FMVHJhbnNhY3Rpb25C
YWNrZW5kOjpjdXJyZW50U3RhdGVtZW50KCkKIHsKICAgICByZXR1cm4gbV9jdXJyZW50U3RhdGVt
ZW50QmFja2VuZC5nZXQoKTsKIH0KQEAgLTQ2Myw3ICs0NjMsNyBAQCBTUUxUcmFuc2FjdGlvbkJh
Y2tlbmQ6OlN0YXRlRnVuY3Rpb24gU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpzdGF0ZUZ1bmN0aW9u
Rm9yKFNRTAogICAgIHJldHVybiBzdGF0ZUZ1bmN0aW9uc1tzdGF0aWNfY2FzdDxpbnQ+KHN0YXRl
KV07CiB9CiAKLXZvaWQgU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjplbnF1ZXVlU3RhdGVtZW50QmFj
a2VuZChzdGQ6OnVuaXF1ZV9wdHI8U1FMU3RhdGVtZW50QmFja2VuZD4gc3RhdGVtZW50QmFja2Vu
ZCkKK3ZvaWQgU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjplbnF1ZXVlU3RhdGVtZW50QmFja2VuZChz
dGQ6OnVuaXF1ZV9wdHI8U1FMU3RhdGVtZW50PiBzdGF0ZW1lbnRCYWNrZW5kKQogewogICAgIE11
dGV4TG9ja2VyIGxvY2tlcihtX3N0YXRlbWVudE11dGV4KTsKICAgICBtX3N0YXRlbWVudFF1ZXVl
LmFwcGVuZChXVEY6Om1vdmUoc3RhdGVtZW50QmFja2VuZCkpOwpAQCAtNTIzLDcgKzUyMyw3IEBA
IGJvb2wgU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpzaG91bGRQZXJmb3JtV2hpbGVQYXVzZWQoKSBj
b25zdAogfQogI2VuZGlmCiAKLXZvaWQgU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpleGVjdXRlU1FM
KHN0ZDo6dW5pcXVlX3B0cjxTUUxTdGF0ZW1lbnRCYWNrZW5kPiBzdGF0ZW1lbnRCYWNrZW5kKQor
dm9pZCBTUUxUcmFuc2FjdGlvbkJhY2tlbmQ6OmV4ZWN1dGVTUUwoc3RkOjp1bmlxdWVfcHRyPFNR
TFN0YXRlbWVudD4gc3RhdGVtZW50QmFja2VuZCkKIHsKICAgICBpZiAobV9kYXRhYmFzZS0+ZGVs
ZXRlZCgpKQogICAgICAgICBzdGF0ZW1lbnRCYWNrZW5kLT5zZXREYXRhYmFzZURlbGV0ZWRFcnJv
cigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxU
cmFuc2FjdGlvbkJhY2tlbmQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2Uv
U1FMVHJhbnNhY3Rpb25CYWNrZW5kLmgKaW5kZXggY2FjOGMyZmUyYjVkZDVjMTkyNjNmYzhjMjZk
OTk0NjhjNzNhMjBkNC4uZTBiZDRkMzdiMzhiOTA4NDUxMzkyZTQwYTZhNzIyZjFkOTE4MzQyNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2Fj
dGlvbkJhY2tlbmQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TFRyYW5zYWN0aW9uQmFja2VuZC5oCkBAIC00Miw3ICs0Miw3IEBAIGNsYXNzIERhdGFiYXNlOwog
Y2xhc3MgT3JpZ2luTG9jazsKIGNsYXNzIFNRTEVycm9yOwogY2xhc3MgU1FMaXRlVHJhbnNhY3Rp
b247Ci1jbGFzcyBTUUxTdGF0ZW1lbnRCYWNrZW5kOworY2xhc3MgU1FMU3RhdGVtZW50OwogY2xh
c3MgU1FMVHJhbnNhY3Rpb247CiBjbGFzcyBTUUxUcmFuc2FjdGlvbkJhY2tlbmQ7CiBjbGFzcyBT
UUxWYWx1ZTsKQEAgLTc2LDE2ICs3NiwxNiBAQCBwdWJsaWM6CiAgICAgLy8gQVBJcyBjYWxsZWQg
ZnJvbSB0aGUgZnJvbnRlbmQgcHVibGlzaGVkIHZpYSBTUUxUcmFuc2FjdGlvbkJhY2tlbmQ6CiAg
ICAgdm9pZCByZXF1ZXN0VHJhbnNpdFRvU3RhdGUoU1FMVHJhbnNhY3Rpb25TdGF0ZSk7CiAgICAg
UGFzc1JlZlB0cjxTUUxFcnJvcj4gdHJhbnNhY3Rpb25FcnJvcigpOwotICAgIFNRTFN0YXRlbWVu
dEJhY2tlbmQqIGN1cnJlbnRTdGF0ZW1lbnQoKTsKKyAgICBTUUxTdGF0ZW1lbnQqIGN1cnJlbnRT
dGF0ZW1lbnQoKTsKICAgICB2b2lkIHNldFNob3VsZFJldHJ5Q3VycmVudFN0YXRlbWVudChib29s
KTsKLSAgICB2b2lkIGV4ZWN1dGVTUUwoc3RkOjp1bmlxdWVfcHRyPFNRTFN0YXRlbWVudEJhY2tl
bmQ+KTsKKyAgICB2b2lkIGV4ZWN1dGVTUUwoc3RkOjp1bmlxdWVfcHRyPFNRTFN0YXRlbWVudD4p
OwogICAgIAogcHJpdmF0ZToKICAgICBTUUxUcmFuc2FjdGlvbkJhY2tlbmQoRGF0YWJhc2UqLCBQ
YXNzUmVmUHRyPFNRTFRyYW5zYWN0aW9uPiwgUGFzc1JlZlB0cjxTUUxUcmFuc2FjdGlvbldyYXBw
ZXI+LCBib29sIHJlYWRPbmx5KTsKIAogICAgIHZvaWQgZG9DbGVhbnVwKCk7CiAKLSAgICB2b2lk
IGVucXVldWVTdGF0ZW1lbnRCYWNrZW5kKHN0ZDo6dW5pcXVlX3B0cjxTUUxTdGF0ZW1lbnRCYWNr
ZW5kPik7CisgICAgdm9pZCBlbnF1ZXVlU3RhdGVtZW50QmFja2VuZChzdGQ6OnVuaXF1ZV9wdHI8
U1FMU3RhdGVtZW50Pik7CiAKICAgICAvLyBTdGF0ZSBNYWNoaW5lIGZ1bmN0aW9uczoKICAgICB2
aXJ0dWFsIFN0YXRlRnVuY3Rpb24gc3RhdGVGdW5jdGlvbkZvcihTUUxUcmFuc2FjdGlvblN0YXRl
KSBvdmVycmlkZTsKQEAgLTExMiw3ICsxMTIsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVsZWFz
ZU9yaWdpbkxvY2tJZk5lZWRlZCgpOwogCiAgICAgUmVmUHRyPFNRTFRyYW5zYWN0aW9uPiBtX2Zy
b250ZW5kOyAvLyBIYXMgYSByZWZlcmVuY2UgY3ljbGUsIGFuZCB3aWxsIGJyZWFrIGluIGRvQ2xl
YW51cCgpLgotICAgIHN0ZDo6dW5pcXVlX3B0cjxTUUxTdGF0ZW1lbnRCYWNrZW5kPiBtX2N1cnJl
bnRTdGF0ZW1lbnRCYWNrZW5kOworICAgIHN0ZDo6dW5pcXVlX3B0cjxTUUxTdGF0ZW1lbnQ+IG1f
Y3VycmVudFN0YXRlbWVudEJhY2tlbmQ7CiAKICAgICBSZWZQdHI8RGF0YWJhc2U+IG1fZGF0YWJh
c2U7CiAgICAgUmVmUHRyPFNRTFRyYW5zYWN0aW9uV3JhcHBlcj4gbV93cmFwcGVyOwpAQCAtMTI4
LDcgKzEyOCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2hhc1ZlcnNpb25NaXNtYXRjaDsKIAog
ICAgIE11dGV4IG1fc3RhdGVtZW50TXV0ZXg7Ci0gICAgRGVxdWU8c3RkOjp1bmlxdWVfcHRyPFNR
TFN0YXRlbWVudEJhY2tlbmQ+PiBtX3N0YXRlbWVudFF1ZXVlOworICAgIERlcXVlPHN0ZDo6dW5p
cXVlX3B0cjxTUUxTdGF0ZW1lbnQ+PiBtX3N0YXRlbWVudFF1ZXVlOwogCiAgICAgc3RkOjp1bmlx
dWVfcHRyPFNRTGl0ZVRyYW5zYWN0aW9uPiBtX3NxbGl0ZVRyYW5zYWN0aW9uOwogICAgIFJlZlB0
cjxPcmlnaW5Mb2NrPiBtX29yaWdpbkxvY2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3hwcm9qL1dlYkNvcmUudmN4cHJvagppbmRleCA2MDQ4ZWM1NjNhYzM5MmM4OWZhMmJkYTY2NDIy
ODVhYWVlOTY4ZDY5Li5kNDQ5ODRjNzRlZWRhMDk2ZmU2MGIzMDVmNzhkZDlhMjk1M2RkZWRiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKQEAg
LTY4MTksNyArNjgxOSw3IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdl
YmRhdGFiYXNlXFNRTEV4Y2VwdGlvbi5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
LlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFJlc3VsdFNldC5jcHAiIC8+CiAgICAgPENsQ29tcGls
ZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFJlc3VsdFNldFJvd0xpc3QuY3Bw
IiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxT
dGF0ZW1lbnRCYWNrZW5kLmNwcCIgLz4KKyAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVs
ZXNcd2ViZGF0YWJhc2VcU1FMU3RhdGVtZW50LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcU1FMVHJhbnNhY3Rpb24uY3BwIiAvPgogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxUcmFuc2FjdGlvbkJh
Y2tlbmQuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRh
YmFzZVxTUUxUcmFuc2FjdGlvbkNsaWVudC5jcHAiIC8+CkBAIC0yMDU2MSw3ICsyMDU2MSw3IEBA
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTEV4Y2Vw
dGlvbi5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFz
ZVxTUUxSZXN1bHRTZXQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNc
d2ViZGF0YWJhc2VcU1FMUmVzdWx0U2V0Um93TGlzdC5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxTdGF0ZW1lbnRCYWNrZW5kLmgiIC8+Cisg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFN0YXRlbWVu
dC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxT
UUxTdGF0ZW1lbnRDYWxsYmFjay5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9k
dWxlc1x3ZWJkYXRhYmFzZVxTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrLmgiIC8+CiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0aW9uLmgi
IC8+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52
Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52
Y3hwcm9qLmZpbHRlcnMKaW5kZXggMjhkYmZiNWUxNDY4MDIyNDE0ZThjYWNiY2NiODJkODJhZWRj
Y2IyYi4uNGFjZGRlMWI1ZWIxMmFiYmY2NTRlZTExNGNmOTlhNmE2ZmZjNmVlZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJz
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmls
dGVycwpAQCAtNTE2LDcgKzUxNiw3IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1
bGVzXHdlYmRhdGFiYXNlXFNRTFJlc3VsdFNldFJvd0xpc3QuY3BwIj4KICAgICAgIDxGaWx0ZXI+
TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxTdGF0ZW1lbnRCYWNrZW5k
LmNwcCI+CisgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNR
TFN0YXRlbWVudC5jcHAiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRhdGFiYXNlPC9GaWx0
ZXI+CiAgICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVz
XHdlYmRhdGFiYXNlXFNRTFRyYW5zYWN0aW9uLmNwcCI+CkBAIC03NDg3LDcgKzc0ODcsNyBAQAog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxSZXN1bHRT
ZXRSb3dMaXN0LmgiPgogICAgICAgPEZpbHRlcj5Nb2R1bGVzXHdlYmRhdGFiYXNlPC9GaWx0ZXI+
CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdl
YmRhdGFiYXNlXFNRTFN0YXRlbWVudEJhY2tlbmQuaCI+CisgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXFNRTFN0YXRlbWVudC5oIj4KICAgICAgIDxGaWx0ZXI+
TW9kdWxlc1x3ZWJkYXRhYmFzZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxTUUxTdGF0ZW1lbnRDYWxsYmFj
ay5oIj4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCA3ZGJiZmVkYjllYWQzMDhmNDM2YzIzNGRiYzI3MjIzOGFmMzRmOGNiLi5jNTQw
ZDhhNDkzYjA0NTAzZGJhODBiMjNhMWJkMmYwYjllY2I5YzVlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC02ODMzLDggKzY4MzMs
OCBAQAogCQlGRTgwREE2NjBFOUM0NzAzMDAwRDZGNzUgLyogSlNHZW9wb3NpdGlvbi5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkU4MERBNjIwRTlDNDcw
MzAwMEQ2Rjc1IC8qIEpTR2VvcG9zaXRpb24uaCAqLzsgfTsKIAkJRkU4MERBNzEwRTlDNDcyRjAw
MEQ2Rjc1IC8qIEpTUG9zaXRpb25FcnJvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGRTgwREE2RDBFOUM0NzJGMDAwRDZGNzUgLyogSlNQb3NpdGlv
bkVycm9yLmNwcCAqLzsgfTsKIAkJRkU4MERBNzIwRTlDNDcyRjAwMEQ2Rjc1IC8qIEpTUG9zaXRp
b25FcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RkU4MERBNkUwRTlDNDcyRjAwMEQ2Rjc1IC8qIEpTUG9zaXRpb25FcnJvci5oICovOyB9OwotCQlG
RThBNjc0NzE2Q0REMTlFMDA5MzBCRjggLyogU1FMU3RhdGVtZW50QmFja2VuZC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRThBNjc0NTE2Q0REMTlF
MDA5MzBCRjggLyogU1FMU3RhdGVtZW50QmFja2VuZC5jcHAgKi87IH07Ci0JCUZFOEE2NzQ4MTZD
REQxOUUwMDkzMEJGOCAvKiBTUUxTdGF0ZW1lbnRCYWNrZW5kLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRThBNjc0NjE2Q0REMTlFMDA5MzBCRjggLyog
U1FMU3RhdGVtZW50QmFja2VuZC5oICovOyB9OworCQlGRThBNjc0NzE2Q0REMTlFMDA5MzBCRjgg
LyogU1FMU3RhdGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEZFOEE2NzQ1MTZDREQxOUUwMDkzMEJGOCAvKiBTUUxTdGF0ZW1lbnQuY3BwICov
OyB9OworCQlGRThBNjc0ODE2Q0REMTlFMDA5MzBCRjggLyogU1FMU3RhdGVtZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRThBNjc0NjE2Q0REMTlF
MDA5MzBCRjggLyogU1FMU3RhdGVtZW50LmggKi87IH07CiAJCUZFOUU4OUZCMTZFMkRDMDUwMEE5
MDhGOCAvKiBPcmlnaW5Mb2NrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEZFOUU4OUY5MTZFMkRDMDQwMEE5MDhGOCAvKiBPcmlnaW5Mb2NrLmNwcCAq
LzsgfTsKIAkJRkU5RTg5RkMxNkUyREMwNTAwQTkwOEY4IC8qIE9yaWdpbkxvY2suaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFOUU4OUZBMTZFMkRDMDQw
MEE5MDhGOCAvKiBPcmlnaW5Mb2NrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJRkVBRjY2NTQxNjc5NzAzMjAwNjJEMEM1IC8qIERhdGFiYXNlU2Vy
dmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRUFG
NjY1MzE2Nzk3MDA3MDA2MkQwQzUgLyogRGF0YWJhc2VTZXJ2ZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTQ1OTQsOCArMTQ1OTQsOCBAQAog
CQlGRTgwREE2MjBFOUM0NzAzMDAwRDZGNzUgLyogSlNHZW9wb3NpdGlvbi5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU0dlb3Bvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUZFODBEQTZEMEU5QzQ3MkYwMDBENkY3NSAvKiBKU1Bvc2l0aW9uRXJyb3Iu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQb3NpdGlvbkVycm9y
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkU4MERBNkUwRTlDNDcyRjAwMEQ2
Rjc1IC8qIEpTUG9zaXRpb25FcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU1Bvc2l0aW9uRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJRkU4QTY3
NDUxNkNERDE5RTAwOTMwQkY4IC8qIFNRTFN0YXRlbWVudEJhY2tlbmQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1FMU3RhdGVtZW50QmFja2VuZC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZFOEE2NzQ2MTZDREQxOUUwMDkzMEJGOCAvKiBTUUxT
dGF0ZW1lbnRCYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFN0
YXRlbWVudEJhY2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkU4QTY3NDUx
NkNERDE5RTAwOTMwQkY4IC8qIFNRTFN0YXRlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTUUxTdGF0ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGRThBNjc0NjE2Q0REMTlFMDA5MzBCRjggLyogU1FMU3RhdGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFN0YXRlbWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlGRTlFODlGOTE2RTJEQzA0MDBBOTA4RjggLyogT3JpZ2luTG9jay5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBPcmlnaW5Mb2NrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkU5RTg5RkExNkUyREMwNDAwQTkwOEY4IC8q
IE9yaWdpbkxvY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT3JpZ2luTG9j
ay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRUFGNjY1MzE2Nzk3MDA3MDA2MkQw
QzUgLyogRGF0YWJhc2VTZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RGF0YWJhc2VTZXJ2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE4ODA2LDgg
KzE4ODA2LDggQEAKIAkJCQk5N0JDNkEwMjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMUmVzdWx0U2V0
Um93TGlzdC5jcHAgKi8sCiAJCQkJOTdCQzZBMDMxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFJlc3Vs
dFNldFJvd0xpc3QuaCAqLywKIAkJCQk5N0JDNkEwNDE1MDVGMDgxMDAxQjc0QUMgLyogU1FMUmVz
dWx0U2V0Um93TGlzdC5pZGwgKi8sCi0JCQkJRkU4QTY3NDUxNkNERDE5RTAwOTMwQkY4IC8qIFNR
TFN0YXRlbWVudEJhY2tlbmQuY3BwICovLAotCQkJCUZFOEE2NzQ2MTZDREQxOUUwMDkzMEJGOCAv
KiBTUUxTdGF0ZW1lbnRCYWNrZW5kLmggKi8sCisJCQkJRkU4QTY3NDUxNkNERDE5RTAwOTMwQkY4
IC8qIFNRTFN0YXRlbWVudC5jcHAgKi8sCisJCQkJRkU4QTY3NDYxNkNERDE5RTAwOTMwQkY4IC8q
IFNRTFN0YXRlbWVudC5oICovLAogCQkJCTk3QkM2QTA3MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxT
dGF0ZW1lbnRDYWxsYmFjay5oICovLAogCQkJCTk3QkM2QTA4MTUwNUYwODEwMDFCNzRBQyAvKiBT
UUxTdGF0ZW1lbnRDYWxsYmFjay5pZGwgKi8sCiAJCQkJOTdCQzZBMDkxNTA1RjA4MTAwMUI3NEFD
IC8qIFNRTFN0YXRlbWVudEVycm9yQ2FsbGJhY2suaCAqLywKQEAgLTI2NzIwLDcgKzI2NzIwLDcg
QEAKIAkJCQkxQTIyNDY0RTBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlVHJhbnNhY3Rpb24uaCBp
biBIZWFkZXJzICovLAogCQkJCTk3QkM2QTQyMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxSZXN1bHRT
ZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3QkM2QTQ1MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxS
ZXN1bHRTZXRSb3dMaXN0LmggaW4gSGVhZGVycyAqLywKLQkJCQlGRThBNjc0ODE2Q0REMTlFMDA5
MzBCRjggLyogU1FMU3RhdGVtZW50QmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkU4QTY3
NDgxNkNERDE5RTAwOTMwQkY4IC8qIFNRTFN0YXRlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
OTdCQzZBNDkxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFN0YXRlbWVudENhbGxiYWNrLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk5N0JDNkE0QjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3RhdGVtZW50RXJy
b3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdCQzZBNTAxNTA1RjA4MTAwMUI3NEFD
IC8qIFNRTFRyYW5zYWN0aW9uLmggaW4gSGVhZGVycyAqLywKQEAgLTMwMTg4LDcgKzMwMTg4LDcg
QEAKIAkJCQkxQTIyNDY0RDBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlVHJhbnNhY3Rpb24uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJOTdCQzZBNDExNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFJlc3Vs
dFNldC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0JDNkE0NDE1MDVGMDgxMDAxQjc0QUMgLyog
U1FMUmVzdWx0U2V0Um93TGlzdC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlGRThBNjc0NzE2Q0RE
MTlFMDA5MzBCRjggLyogU1FMU3RhdGVtZW50QmFja2VuZC5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQlGRThBNjc0NzE2Q0REMTlFMDA5MzBCRjggLyogU1FMU3RhdGVtZW50LmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTk3QkM2QTRGMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbi5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlGRUUxODExMzE2QzMxOUU4MDAwODQ4NDkgLyogU1FMVHJhbnNh
Y3Rpb25CYWNrZW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTk3QkM2QTU0MTUwNUYwODEwMDFC
NzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNsaWVudC5jcHAgaW4gU291cmNlcyAqLywK
</data>
<flag name="review"
          id="283601"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>