<?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>164157</bug_id>
          
          <creation_ts>2016-10-28 15:37:00 -0700</creation_ts>
          <short_desc>[DOMJIT] Rename CallDOM to CallDOMGetter</short_desc>
          <delta_ts>2016-10-28 16:00:06 -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>WebKit 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="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1245832</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-10-28 15:37:00 -0700</bug_when>
    <thetext>[DOMJIT] Rename CallDOM to CallDOMGetter</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1245833</commentid>
    <comment_count>1</comment_count>
      <attachid>293231</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-10-28 15:38:34 -0700</bug_when>
    <thetext>Created attachment 293231
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1245835</commentid>
    <comment_count>2</comment_count>
      <attachid>293231</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2016-10-28 15:42:23 -0700</bug_when>
    <thetext>Comment on attachment 293231
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1245845</commentid>
    <comment_count>3</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-10-28 16:00:06 -0700</bug_when>
    <thetext>Committed r208077: &lt;http://trac.webkit.org/changeset/208077&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>293231</attachid>
            <date>2016-10-28 15:38:34 -0700</date>
            <delta_ts>2016-10-28 15:42:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-164157-20161029073443.patch</filename>
            <type>text/plain</type>
            <size>54590</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA4MDc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
NzdhNGY2MmY4NGU0ZmRiZDY1MWZiMjc0ZDY0NDkzM2JhNzRkNmI3Li4yNDA3NzdkOTdhYmJlMGJi
ODczNzZlNzAzZWU3MmFiMmZmZDMxNmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSw2MSBAQAogMjAxNi0xMC0yOCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KIAorICAgICAgICBbRE9NSklUXSBSZW5hbWUgQ2FsbERPTSB0byBDYWxsRE9NR2V0dGVy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQxNTcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW5hbWUg
Q2FsbERPTSB0byBDYWxsRE9NR2V0dGVyIHRvIHJlcHJlc2VudCB0aGF0CisgICAgICAgIHRoaXMg
aXMgdXNlZCBmb3IgRE9NSklUIGdldHRlciBleHBsaWNpdGx5LgorICAgICAgICBDYWxsRE9NIHdp
bGwgYmUgdXNlZCBmb3IgRE9NIGZ1bmN0aW9ucyAobGlrZSBlbGVtZW50LmdldEF0dHJpYnV0ZSgp
KSBsYXRlci4KKworICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisgICAgICAgICogYnl0ZWNvZGUvUG9seW1vcnBoaWNBY2Nlc3MuY3BwOgorICAgICAg
ICAoSlNDOjpBY2Nlc3NDYXNlOjplbWl0RE9NSklUR2V0dGVyKToKKyAgICAgICAgKiBkZmcvREZH
QWJzdHJhY3RJbnRlcnByZXRlcklubGluZXMuaDoKKyAgICAgICAgKEpTQzo6REZHOjpBYnN0cmFj
dEludGVycHJldGVyPEFic3RyYWN0U3RhdGVUeXBlPjo6ZXhlY3V0ZUVmZmVjdHMpOgorICAgICAg
ICAqIGRmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6Ymxlc3ND
YWxsRE9NR2V0dGVyKToKKyAgICAgICAgKEpTQzo6REZHOjpCeXRlQ29kZVBhcnNlcjo6aGFuZGxl
RE9NSklUR2V0dGVyKToKKyAgICAgICAgKEpTQzo6REZHOjpibGVzc0NhbGxET00pOiBEZWxldGVk
LgorICAgICAgICAqIGRmZy9ERkdDbG9iYmVyaXplLmg6CisgICAgICAgIChKU0M6OkRGRzo6Y2xv
YmJlcml6ZSk6CisgICAgICAgICogZGZnL0RGR0RvZXNHQy5jcHA6CisgICAgICAgIChKU0M6OkRG
Rzo6ZG9lc0dDKToKKyAgICAgICAgKiBkZmcvREZHRml4dXBQaGFzZS5jcHA6CisgICAgICAgIChK
U0M6OkRGRzo6Rml4dXBQaGFzZTo6Zml4dXBOb2RlKToKKyAgICAgICAgKiBkZmcvREZHR3JhcGgu
aDoKKyAgICAgICAgKiBkZmcvREZHTm9kZS5oOgorICAgICAgICAoSlNDOjpERkc6Ok5vZGU6Omhh
c0hlYXBQcmVkaWN0aW9uKToKKyAgICAgICAgKEpTQzo6REZHOjpOb2RlOjpoYXNDYWxsRE9NR2V0
dGVyRGF0YSk6CisgICAgICAgIChKU0M6OkRGRzo6Tm9kZTo6Y2FsbERPTUdldHRlckRhdGEpOgor
ICAgICAgICAoSlNDOjpERkc6Ok5vZGU6Omhhc0NhbGxET01EYXRhKTogRGVsZXRlZC4KKyAgICAg
ICAgKEpTQzo6REZHOjpOb2RlOjpjYWxsRE9NRGF0YSk6IERlbGV0ZWQuCisgICAgICAgICogZGZn
L0RGR05vZGVUeXBlLmg6CisgICAgICAgICogZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBo
YXNlLmNwcDoKKyAgICAgICAgKiBkZmcvREZHU2FmZVRvRXhlY3V0ZS5oOgorICAgICAgICAoSlND
OjpERkc6OnNhZmVUb0V4ZWN1dGUpOgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVC5j
cHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVDYWxsRE9NR2V0
dGVyKToKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZUNhbGxET00p
OiBEZWxldGVkLgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oOgorICAgICAgICAq
IGRmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTcGVj
dWxhdGl2ZUpJVDo6Y29tcGlsZSk6CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQu
Y3BwOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpjb21waWxlKToKKyAgICAg
ICAgKiBkb21qaXQvRE9NSklUQ2FsbERPTUdldHRlclBhdGNocG9pbnQuaDogUmVuYW1lZCBmcm9t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kb21qaXQvRE9NSklUQ2FsbERPTVBhdGNocG9pbnQuaC4K
KyAgICAgICAgKEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludDo6Y3JlYXRlKToK
KyAgICAgICAgKiBkb21qaXQvRE9NSklUR2V0dGVyU2V0dGVyLmg6CisgICAgICAgICogZnRsL0ZU
TENhcGFiaWxpdGllcy5jcHA6CisgICAgICAgIChKU0M6OkZUTDo6Y2FuQ29tcGlsZSk6CisgICAg
ICAgICogZnRsL0ZUTExvd2VyREZHVG9CMy5jcHA6CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpM
b3dlckRGR1RvQjM6OmNvbXBpbGVOb2RlKToKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxvd2Vy
REZHVG9CMzo6Y29tcGlsZUNhbGxET01HZXR0ZXIpOgorICAgICAgICAoSlNDOjpGVEw6OkRGRzo6
TG93ZXJERkdUb0IzOjpjb21waWxlQ2FsbERPTSk6IERlbGV0ZWQuCisgICAgICAgICoganNjLmNw
cDoKKworMjAxNi0xMC0yOCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4K
KwogICAgICAgICBVbnJldmlld2VkLCBidWlsZCBmaXggaW4gQ0xvb3AgYnVpbGRzIGFmdGVyIHIy
MDgwNjMuCiAKICAgICAgICAgSW5jbHVkZSByZXF1aXJlZCBoZWFkZXJzLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4
IDZhZDAzMmJiNWIyMjA5M2ExODM5MjBkYWZmYThlN2I3ZWFlOWY3YWUuLjE0NTVlYzk4MjAxMjQ5
MjBiOGZhNzU2NDZlYjE5YjNlYWJkYzQxODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAor
MjAxNi0xMC0yOCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAg
ICAgICBbRE9NSklUXSBSZW5hbWUgQ2FsbERPTSB0byBDYWxsRE9NR2V0dGVyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQxNTcKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBiZWhhdmlvciBjaGFuZ2Uu
CisKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAg
ICAgKEdlbmVyYXRlSGVhZGVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RE9NSklULmg6CisgICAgICAgICogZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnREb2N1bWVudEVsZW1lbnRET01KSVQ6OmNhbGxET01H
ZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnREb2N1bWVudEVsZW1lbnRET01KSVQ6
OmNhbGxET00pOiBEZWxldGVkLgorICAgICAgICAqIGRvbWppdC9KU05vZGVET01KSVQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ2FsbERPTUdldHRlckZvck9mZnNldEFjY2Vzcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpOb2RlRmlyc3RDaGlsZERPTUpJVDo6Y2FsbERPTUdldHRlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpOb2RlTGFzdENoaWxkRE9NSklUOjpjYWxsRE9NR2V0dGVyKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok5vZGVOZXh0U2libGluZ0RPTUpJVDo6Y2FsbERPTUdldHRlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpOb2RlUHJldmlvdXNTaWJsaW5nRE9NSklUOjpjYWxsRE9NR2V0dGVy
KToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVQYXJlbnROb2RlRE9NSklUOjpjYWxsRE9NR2V0dGVy
KToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVOb2RlVHlwZURPTUpJVDo6Y2FsbERPTUdldHRlcik6
CisgICAgICAgIChXZWJDb3JlOjpOb2RlT3duZXJEb2N1bWVudERPTUpJVDo6Y2FsbERPTUdldHRl
cik6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVDYWxsRE9NRm9yT2Zmc2V0QWNjZXNzKTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVGaXJzdENoaWxkRE9NSklUOjpjYWxsRE9NKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVMYXN0Q2hpbGRET01KSVQ6OmNhbGxET00p
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Tm9kZU5leHRTaWJsaW5nRE9NSklUOjpjYWxs
RE9NKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVQcmV2aW91c1NpYmxpbmdET01K
SVQ6OmNhbGxET00pOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Tm9kZVBhcmVudE5vZGVE
T01KSVQ6OmNhbGxET00pOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Tm9kZU5vZGVUeXBl
RE9NSklUOjpjYWxsRE9NKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVPd25lckRv
Y3VtZW50RE9NSklUOjpjYWxsRE9NKTogRGVsZXRlZC4KKwogMjAxNi0xMC0yOCAgRGF2ZSBIeWF0
dCAgPGh5YXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBbQ1NTIFBhcnNlcl0gRml4IGZvbnQtZmFt
aWx5IHBhcnNpbmcgaW5zaWRlIEBmb250LWZhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
aW5kZXggYmJkMzVkNTY1YThjYTZlOWQxMGU2NTU0ODJhMTQxZWQ4NWEyZGRhNy4uNDM1NWJkYjI1
Yjg2MmMyNzQ3YTQyZDlhMDhlODE3NjVhMzNjZGQ0YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTIxNzksNyArMjE3OSw3IEBACiAJCUUzM0Y1MDg3MUI4NDQ5RUYwMDQxMzg1NiAv
KiBKU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmx1dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMzRjUwODYxQjg0NDlFRjAwNDEzODU2IC8qIEpT
SW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3IubHV0LmggKi87IH07CiAJCUUzNEVEQkY3MURCNUZG
QzkwMERDODdBNSAvKiBGcmFtZVRyYWNlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEUzNEVEQkY2MURCNUZGQzEwMERDODdBNSAvKiBGcmFtZVRyYWNl
cnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlF
MzU0NjIyQjFCNjA2NUQxMDA1NDUzODYgLyogQ29uc3RydWN0QWJpbGl0eS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1NDYyMkExQjYwNjVEMTAwNTQ1
Mzg2IC8qIENvbnN0cnVjdEFiaWxpdHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwotCQlFMzU1NUI4QTFEQUUwM0E1MDBGMzY5MjEgLyogRE9NSklUQ2Fs
bERPTVBhdGNocG9pbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUzNTU1Qjg5MURBRTAzQTIwMEYzNjkyMSAvKiBET01KSVRDYWxsRE9NUGF0Y2hwb2lu
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUz
NTU1QjhBMURBRTAzQTUwMEYzNjkyMSAvKiBET01KSVRDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1NTVCODkx
REFFMDNBMjAwRjM2OTIxIC8qIERPTUpJVENhbGxET01HZXR0ZXJQYXRjaHBvaW50LmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTM1NUYzNTIxQjdE
Qzg1MzAwQzUwREM1IC8qIE1vZHVsZUxvYWRlclByb3RvdHlwZS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzU1RjM1MDFCN0RDODUzMDBDNTBEQzUg
LyogTW9kdWxlTG9hZGVyUHJvdG90eXBlLmNwcCAqLzsgfTsKIAkJRTM1NUYzNTMxQjdEQzg1MzAw
QzUwREM1IC8qIE1vZHVsZUxvYWRlclByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1NUYzNTExQjdEQzg1MzAwQzUwREM1IC8qIE1vZHVs
ZUxvYWRlclByb3RvdHlwZS5oICovOyB9OwogCQlFMzVDQTE1MzFEQkMzQTVDMDBGODM1MTYgLyog
RE9NSklUSGVhcFJhbmdlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzNUNBMTUxMURCQzNBNTYwMEY4MzUxNiAvKiBET01KSVRIZWFwUmFuZ2UuY3Bw
ICovOyB9OwpAQCAtNDU3NSw3ICs0NTc1LDcgQEAKIAkJRTMzRjUwODgxQjg0NEExQTAwNDEzODU2
IC8qIEludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5q
YXZhc2NyaXB0OyBwYXRoID0gSW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3IuanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNEVEQkY2MURCNUZGQzEwMERDODdBNSAvKiBGcmFtZVRy
YWNlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRnJhbWVUcmFjZXJzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNTQ2MjJBMUI2MDY1RDEwMDU0NTM4NiAv
KiBDb25zdHJ1Y3RBYmlsaXR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENv
bnN0cnVjdEFiaWxpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJRTM1NTVCODkx
REFFMDNBMjAwRjM2OTIxIC8qIERPTUpJVENhbGxET01QYXRjaHBvaW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTUpJVENhbGxET01QYXRjaHBvaW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzNTU1Qjg5MURBRTAzQTIwMEYzNjkyMSAvKiBET01KSVRD
YWxsRE9NR2V0dGVyUGF0Y2hwb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBET01KSVRDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlFMzU1RjM1MDFCN0RDODUzMDBDNTBEQzUgLyogTW9kdWxlTG9hZGVyUHJvdG90eXBl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vZHVsZUxvYWRlclBy
b3RvdHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNTVGMzUxMUI3REM4
NTMwMEM1MERDNSAvKiBNb2R1bGVMb2FkZXJQcm90b3R5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTW9kdWxlTG9hZGVyUHJvdG90eXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUUzNUNBMTRGMURCQzNBNTYwMEY4MzUxNiAvKiBET01KSVRBYnN0cmFjdEhl
YXAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NSklUQWJzdHJh
Y3RIZWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTc0NzYsNyArNzQ3Niw3
IEBACiAJCQljaGlsZHJlbiA9ICgKIAkJCQlFMzVDQTE0RjFEQkMzQTU2MDBGODM1MTYgLyogRE9N
SklUQWJzdHJhY3RIZWFwLmNwcCAqLywKIAkJCQlFMzVDQTE1MDFEQkMzQTU2MDBGODM1MTYgLyog
RE9NSklUQWJzdHJhY3RIZWFwLmggKi8sCi0JCQkJRTM1NTVCODkxREFFMDNBMjAwRjM2OTIxIC8q
IERPTUpJVENhbGxET01QYXRjaHBvaW50LmggKi8sCisJCQkJRTM1NTVCODkxREFFMDNBMjAwRjM2
OTIxIC8qIERPTUpJVENhbGxET01HZXR0ZXJQYXRjaHBvaW50LmggKi8sCiAJCQkJRTNDNzlDQUEx
REI5QTRENjAwRDFFQ0E0IC8qIERPTUpJVEVmZmVjdC5oICovLAogCQkJCUUzRkY3NTJGMUQ5Q0VB
MTIwMEM3RTE2RCAvKiBET01KSVRHZXR0ZXJTZXR0ZXIuaCAqLywKIAkJCQlFMzVDQTE1MTFEQkMz
QTU2MDBGODM1MTYgLyogRE9NSklUSGVhcFJhbmdlLmNwcCAqLywKQEAgLTgzOTYsNyArODM5Niw3
IEBACiAJCQkJQTdDMUVBRjAxNzk4N0FCNjAwMjk5REIyIC8qIENMb29wU3RhY2tJbmxpbmVzLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCQzE4QzQyNzBFMTZGNUNEMDBCMzQ0NjAgLyogSlNTdHJpbmcu
aCBpbiBIZWFkZXJzICovLAogCQkJCTg2RTg1NTM5MTExQjk5NjgwMDFBRjUxRSAvKiBKU1N0cmlu
Z0J1aWxkZXIuaCBpbiBIZWFkZXJzICovLAotCQkJCUUzNTU1QjhBMURBRTAzQTUwMEYzNjkyMSAv
KiBET01KSVRDYWxsRE9NUGF0Y2hwb2ludC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTM1NTVCOEEx
REFFMDNBNTAwRjM2OTIxIC8qIERPTUpJVENhbGxET01HZXR0ZXJQYXRjaHBvaW50LmggaW4gSGVh
ZGVycyAqLywKIAkJCQk3MEVDMEVDMzFBQTBEN0RBMDBCNkFBRkEgLyogSlNTdHJpbmdJdGVyYXRv
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYwNzBBNDcxRDU0M0E4QjAwNkU3MjMyIC8qIENlbGxD
b250YWluZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTI2MDBCNUE3MTUyQkFBQTcwMDkxRUU1RiAv
KiBKU1N0cmluZ0pvaW5lci5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvUG9seW1vcnBoaWNBY2Nlc3MuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2J5dGVjb2RlL1BvbHltb3JwaGljQWNjZXNzLmNwcAppbmRleCA4NDcxMjhiNWYx
MGU5YTcyOGM3ZmZmODhjMjg4YzU2Mzc2OWZjZjQ3Li44OWFkOWM2ZmYzMzliMWYwODA2YjI0YTRj
NzY0YTlkNGUzZmI5M2MwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNv
ZGUvUG9seW1vcnBoaWNBY2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9Qb2x5bW9ycGhpY0FjY2Vzcy5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKICNpbmNsdWRlICJD
Q2FsbEhlbHBlcnMuaCIKICNpbmNsdWRlICJDb2RlQmxvY2suaCIKICNpbmNsdWRlICJET01KSVRB
Y2Nlc3NDYXNlUGF0Y2hwb2ludFBhcmFtcy5oIgotI2luY2x1ZGUgIkRPTUpJVENhbGxET01QYXRj
aHBvaW50LmgiCisjaW5jbHVkZSAiRE9NSklUQ2FsbERPTUdldHRlclBhdGNocG9pbnQuaCIKICNp
bmNsdWRlICJEaXJlY3RBcmd1bWVudHMuaCIKICNpbmNsdWRlICJHZXR0ZXJTZXR0ZXIuaCIKICNp
bmNsdWRlICJIZWFwLmgiCkBAIC0xNDMyLDcgKzE0MzIsNyBAQCB2b2lkIEFjY2Vzc0Nhc2U6OmVt
aXRET01KSVRHZXR0ZXIoQWNjZXNzR2VuZXJhdGlvblN0YXRlJiBzdGF0ZSwgR1BSUmVnIGJhc2VG
b3JHZQogICAgIEdQUlJlZyBzY3JhdGNoR1BSID0gc3RhdGUuc2NyYXRjaEdQUjsKIAogICAgIC8v
IFdlIGNvbnN0cnVjdCB0aGUgZW52aXJvbm1lbnQgdGhhdCBjYW4gZXhlY3V0ZSB0aGUgRE9NSklU
OjpQYXRjaHBvaW50IGhlcmUuCi0gICAgUmVmPERPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IHBh
dGNocG9pbnQgPSBtX3JhcmVEYXRhLT5kb21KSVQtPmNhbGxET00oKTsKKyAgICBSZWY8RE9NSklU
OjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gcGF0Y2hwb2ludCA9IG1fcmFyZURhdGEtPmRvbUpJ
VC0+Y2FsbERPTUdldHRlcigpOwogCiAgICAgVmVjdG9yPEdQUlJlZz4gZ3BTY3JhdGNoOwogICAg
IFZlY3RvcjxGUFJSZWc+IGZwU2NyYXRjaDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHQWJzdHJhY3RJbnRlcnByZXRlcklubGluZXMuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHQWJzdHJhY3RJbnRlcnByZXRlcklubGluZXMuaAppbmRleCA1ZDJjODEx
NDI3NzFhNDlkOWFhZjUzZjcxMzFkNDJiOGUyYjM1NTE0Li43YWZjODYwMWFhNTFmMzZkZWZjNmNm
MjAyMWQzMmE4ZjRlNjgyMmM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0Fic3RyYWN0SW50ZXJwcmV0ZXJJbmxpbmVzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdBYnN0cmFjdEludGVycHJldGVySW5saW5lcy5oCkBAIC0yMjg5LDEyICsyMjg5
LDEyIEBAIGJvb2wgQWJzdHJhY3RJbnRlcnByZXRlcjxBYnN0cmFjdFN0YXRlVHlwZT46OmV4ZWN1
dGVFZmZlY3RzKHVuc2lnbmVkIGNsb2JiZXJMaW1pCiAgICAgICAgIGZpbHRlckNsYXNzSW5mbyh2
YWx1ZSwgbm9kZS0+Y2xhc3NJbmZvKCkpOwogICAgICAgICBicmVhazsKICAgICB9Ci0gICAgY2Fz
ZSBDYWxsRE9NOiB7Ci0gICAgICAgIENhbGxET01EYXRhKiBjYWxsRE9NRGF0YSA9IG5vZGUtPmNh
bGxET01EYXRhKCk7Ci0gICAgICAgIERPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQqIHBhdGNocG9p
bnQgPSBjYWxsRE9NRGF0YS0+cGF0Y2hwb2ludDsKKyAgICBjYXNlIENhbGxET01HZXR0ZXI6IHsK
KyAgICAgICAgQ2FsbERPTUdldHRlckRhdGEqIGNhbGxET01HZXR0ZXJEYXRhID0gbm9kZS0+Y2Fs
bERPTUdldHRlckRhdGEoKTsKKyAgICAgICAgRE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2lu
dCogcGF0Y2hwb2ludCA9IGNhbGxET01HZXR0ZXJEYXRhLT5wYXRjaHBvaW50OwogICAgICAgICBp
ZiAocGF0Y2hwb2ludC0+ZWZmZWN0LndyaXRlcykKICAgICAgICAgICAgIGNsb2JiZXJXb3JsZChu
b2RlLT5vcmlnaW4uc2VtYW50aWMsIGNsb2JiZXJMaW1pdCk7Ci0gICAgICAgIGZvck5vZGUobm9k
ZSkuc2V0VHlwZShtX2dyYXBoLCBjYWxsRE9NRGF0YS0+ZG9tSklULT5yZXN1bHRUeXBlKCkpOwor
ICAgICAgICBmb3JOb2RlKG5vZGUpLnNldFR5cGUobV9ncmFwaCwgY2FsbERPTUdldHRlckRhdGEt
PmRvbUpJVC0+cmVzdWx0VHlwZSgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIGNhc2Ug
Q2hlY2tBcnJheTogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdC
eXRlQ29kZVBhcnNlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2Rl
UGFyc2VyLmNwcAppbmRleCAwNjAzMTY4ZDkyMTRjMzRiMTRjY2I3MTBjOTMwZGU0ZDI4YzI4MTY5
Li5hOGVjMmFmMDZhYWY5YmE1MmUzZmQwNjVkMjY0NmVhNWI4MTBiZmQ4IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcApAQCAtMjY3Myw5ICsy
NjczLDkgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6aGFuZGxlSW50cmluc2ljR2V0dGVyKGludCBy
ZXN1bHRPcGVyYW5kLCBjb25zdCBHZXRCeUlkVmFyaWEKICAgICBSRUxFQVNFX0FTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwogfQogCi1zdGF0aWMgdm9pZCBibGVzc0NhbGxET00oTm9kZSogbm9kZSkKK3N0
YXRpYyB2b2lkIGJsZXNzQ2FsbERPTUdldHRlcihOb2RlKiBub2RlKQogewotICAgIERPTUpJVDo6
Q2FsbERPTVBhdGNocG9pbnQqIHBhdGNocG9pbnQgPSBub2RlLT5jYWxsRE9NRGF0YSgpLT5wYXRj
aHBvaW50OworICAgIERPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQqIHBhdGNocG9pbnQg
PSBub2RlLT5jYWxsRE9NR2V0dGVyRGF0YSgpLT5wYXRjaHBvaW50OwogICAgIGlmICghcGF0Y2hw
b2ludC0+ZWZmZWN0Lm11c3RHZW5lcmF0ZSgpKQogICAgICAgICBub2RlLT5jbGVhckZsYWdzKE5v
ZGVNdXN0R2VuZXJhdGUpOwogfQpAQCAtMjY5OCwyMiArMjY5OCwyMiBAQCBib29sIEJ5dGVDb2Rl
UGFyc2VyOjpoYW5kbGVET01KSVRHZXR0ZXIoaW50IHJlc3VsdE9wZXJhbmQsIGNvbnN0IEdldEJ5
SWRWYXJpYW50JgogICAgIC8vIFdlIGRvIG5vdCBuZWVkIHRvIGVtaXQgQ2hlY2tDZWxsIHRoaW5n
eSBoZXJlLiBXaGVuIHRoZSBjdXN0b20gYWNjZXNzb3IgaXMgcmVwbGFjZWQgdG8gZGlmZmVyZW50
IG9uZSwgU3RydWN0dXJlIHRyYW5zaXRpb24gb2NjdXJzLgogICAgIGFkZFRvR3JhcGgoQ2hlY2tE
T00sIE9wSW5mbyhjaGVja0RPTVBhdGNocG9pbnQucHRyKCkpLCBPcEluZm8oZG9tSklULT50aGlz
Q2xhc3NJbmZvKCkpLCB0aGlzTm9kZSk7CiAKLSAgICBDYWxsRE9NRGF0YSogY2FsbERPTURhdGEg
PSBtX2dyYXBoLm1fY2FsbERPTURhdGEuYWRkKCk7Ci0gICAgUmVmPERPTUpJVDo6Q2FsbERPTVBh
dGNocG9pbnQ+IGNhbGxET01QYXRjaHBvaW50ID0gZG9tSklULT5jYWxsRE9NKCk7Ci0gICAgbV9n
cmFwaC5tX2RvbUpJVFBhdGNocG9pbnRzLmFwcGVuZChjYWxsRE9NUGF0Y2hwb2ludC5wdHIoKSk7
CisgICAgQ2FsbERPTUdldHRlckRhdGEqIGNhbGxET01HZXR0ZXJEYXRhID0gbV9ncmFwaC5tX2Nh
bGxET01HZXR0ZXJEYXRhLmFkZCgpOworICAgIFJlZjxET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRj
aHBvaW50PiBjYWxsRE9NR2V0dGVyUGF0Y2hwb2ludCA9IGRvbUpJVC0+Y2FsbERPTUdldHRlcigp
OworICAgIG1fZ3JhcGgubV9kb21KSVRQYXRjaHBvaW50cy5hcHBlbmQoY2FsbERPTUdldHRlclBh
dGNocG9pbnQucHRyKCkpOwogCi0gICAgY2FsbERPTURhdGEtPmRvbUpJVCA9IGRvbUpJVDsKLSAg
ICBjYWxsRE9NRGF0YS0+cGF0Y2hwb2ludCA9IGNhbGxET01QYXRjaHBvaW50LnB0cigpOworICAg
IGNhbGxET01HZXR0ZXJEYXRhLT5kb21KSVQgPSBkb21KSVQ7CisgICAgY2FsbERPTUdldHRlckRh
dGEtPnBhdGNocG9pbnQgPSBjYWxsRE9NR2V0dGVyUGF0Y2hwb2ludC5wdHIoKTsKIAotICAgIE5v
ZGUqIGNhbGxET01Ob2RlID0gbnVsbHB0cjsKKyAgICBOb2RlKiBjYWxsRE9NR2V0dGVyTm9kZSA9
IG51bGxwdHI7CiAgICAgLy8gR2xvYmFsT2JqZWN0IG9mIHRoaXNOb2RlIGlzIGFsd2F5cyB1c2Vk
IHRvIGNyZWF0ZSBhIERPTVdyYXBwZXIuCi0gICAgaWYgKGNhbGxET01QYXRjaHBvaW50LT5yZXF1
aXJlR2xvYmFsT2JqZWN0KSB7CisgICAgaWYgKGNhbGxET01HZXR0ZXJQYXRjaHBvaW50LT5yZXF1
aXJlR2xvYmFsT2JqZWN0KSB7CiAgICAgICAgIE5vZGUqIGdsb2JhbE9iamVjdCA9IGFkZFRvR3Jh
cGgoR2V0R2xvYmFsT2JqZWN0LCB0aGlzTm9kZSk7Ci0gICAgICAgIGNhbGxET01Ob2RlID0gYWRk
VG9HcmFwaChDYWxsRE9NLCBPcEluZm8oY2FsbERPTURhdGEpLCBPcEluZm8ocHJlZGljdGlvbiks
IHRoaXNOb2RlLCBnbG9iYWxPYmplY3QpOworICAgICAgICBjYWxsRE9NR2V0dGVyTm9kZSA9IGFk
ZFRvR3JhcGgoQ2FsbERPTUdldHRlciwgT3BJbmZvKGNhbGxET01HZXR0ZXJEYXRhKSwgT3BJbmZv
KHByZWRpY3Rpb24pLCB0aGlzTm9kZSwgZ2xvYmFsT2JqZWN0KTsKICAgICB9IGVsc2UKLSAgICAg
ICAgY2FsbERPTU5vZGUgPSBhZGRUb0dyYXBoKENhbGxET00sIE9wSW5mbyhjYWxsRE9NRGF0YSks
IE9wSW5mbyhwcmVkaWN0aW9uKSwgdGhpc05vZGUpOwotICAgIGJsZXNzQ2FsbERPTShjYWxsRE9N
Tm9kZSk7Ci0gICAgc2V0KFZpcnR1YWxSZWdpc3RlcihyZXN1bHRPcGVyYW5kKSwgY2FsbERPTU5v
ZGUpOworICAgICAgICBjYWxsRE9NR2V0dGVyTm9kZSA9IGFkZFRvR3JhcGgoQ2FsbERPTUdldHRl
ciwgT3BJbmZvKGNhbGxET01HZXR0ZXJEYXRhKSwgT3BJbmZvKHByZWRpY3Rpb24pLCB0aGlzTm9k
ZSk7CisgICAgYmxlc3NDYWxsRE9NR2V0dGVyKGNhbGxET01HZXR0ZXJOb2RlKTsKKyAgICBzZXQo
VmlydHVhbFJlZ2lzdGVyKHJlc3VsdE9wZXJhbmQpLCBjYWxsRE9NR2V0dGVyTm9kZSk7CiAgICAg
cmV0dXJuIHRydWU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHQ2xvYmJlcml6ZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDbG9iYmVyaXpl
LmgKaW5kZXggMGJlODFhZWJhMjMzOTQyMWQyNTk2ZDc4NmI0MTE0NjQ4NjM1NzBmZS4uNjY1N2Rh
ODZhNDgxNzc2Y2U4NjI4ZWY5MmE1YjI1Y2JhMDgwM2NlMiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdDbG9iYmVyaXplLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdDbG9iYmVyaXplLmgKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRlICJERkdI
ZWFwTG9jYXRpb24uaCIKICNpbmNsdWRlICJERkdMYXp5Tm9kZS5oIgogI2luY2x1ZGUgIkRGR1B1
cmVWYWx1ZS5oIgotI2luY2x1ZGUgIkRPTUpJVENhbGxET01QYXRjaHBvaW50LmgiCisjaW5jbHVk
ZSAiRE9NSklUQ2FsbERPTUdldHRlclBhdGNocG9pbnQuaCIKIAogbmFtZXNwYWNlIEpTQyB7IG5h
bWVzcGFjZSBERkcgewogCkBAIC05MDgsOCArOTA4LDggQEAgdm9pZCBjbG9iYmVyaXplKEdyYXBo
JiBncmFwaCwgTm9kZSogbm9kZSwgY29uc3QgUmVhZEZ1bmN0b3ImIHJlYWQsIGNvbnN0IFdyaXRl
RnUKICAgICAgICAgZGVmKFB1cmVWYWx1ZShub2RlLCBub2RlLT5jbGFzc0luZm8oKSkpOwogICAg
ICAgICByZXR1cm47CiAKLSAgICBjYXNlIENhbGxET006IHsKLSAgICAgICAgRE9NSklUOjpDYWxs
RE9NUGF0Y2hwb2ludCogcGF0Y2hwb2ludCA9IG5vZGUtPmNhbGxET01EYXRhKCktPnBhdGNocG9p
bnQ7CisgICAgY2FzZSBDYWxsRE9NR2V0dGVyOiB7CisgICAgICAgIERPTUpJVDo6Q2FsbERPTUdl
dHRlclBhdGNocG9pbnQqIHBhdGNocG9pbnQgPSBub2RlLT5jYWxsRE9NR2V0dGVyRGF0YSgpLT5w
YXRjaHBvaW50OwogICAgICAgICBET01KSVQ6OkVmZmVjdCBlZmZlY3QgPSBwYXRjaHBvaW50LT5l
ZmZlY3Q7CiAgICAgICAgIGlmIChlZmZlY3QucmVhZHMpIHsKICAgICAgICAgICAgIGlmIChlZmZl
Y3QucmVhZHMgPT0gRE9NSklUOjpIZWFwUmFuZ2U6OnRvcCgpKQpAQCAtOTI2LDcgKzkyNiw3IEBA
IHZvaWQgY2xvYmJlcml6ZShHcmFwaCYgZ3JhcGgsIE5vZGUqIG5vZGUsIGNvbnN0IFJlYWRGdW5j
dG9yJiByZWFkLCBjb25zdCBXcml0ZUZ1CiAgICAgICAgIGlmIChlZmZlY3QuZGVmKSB7CiAgICAg
ICAgICAgICBET01KSVQ6OkhlYXBSYW5nZSByYW5nZSA9IGVmZmVjdC5kZWYudmFsdWUoKTsKICAg
ICAgICAgICAgIGlmIChyYW5nZSA9PSBET01KSVQ6OkhlYXBSYW5nZTo6bm9uZSgpKQotICAgICAg
ICAgICAgICAgIGRlZihQdXJlVmFsdWUobm9kZSwgbm9kZS0+Y2FsbERPTURhdGEoKS0+ZG9tSklU
KSk7CisgICAgICAgICAgICAgICAgZGVmKFB1cmVWYWx1ZShub2RlLCBub2RlLT5jYWxsRE9NR2V0
dGVyRGF0YSgpLT5kb21KSVQpKTsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAg
IC8vIERlZiB3aXRoIGhlYXAgbG9jYXRpb24uIFdlIGRvIG5vdCBpbmNsdWRlICJHbG9iYWxPYmpl
Y3QiIGZvciB0aGF0IHNpbmNlIHRoaXMgaW5mb3JtYXRpb24gaXMgaW5jbHVkZWQgaW4gdGhlIGJh
c2Ugbm9kZS4KICAgICAgICAgICAgICAgICAvLyBGSVhNRTogV2hlbiBzdXBwb3J0aW5nIHRoZSBv
dGhlciBub2RlcyBsaWtlIGdldEVsZW1lbnRCeUlkKCJzdHJpbmciKSwgd2Ugc2hvdWxkIGluY2x1
ZGUgdGhlIGJhc2UgYW5kIHRoZSBpZCBzdHJpbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR0RvZXNHQy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R0RvZXNHQy5jcHAKaW5kZXggZjM1YjY2Y2UxN2U0MDM5ODJkMDI4YWYzODJiOTFiZDYwODU3ZWFl
NC4uMDc3YzcxNTJlODQ1MTNmMzZmMDMzOTM5ZmJhYTk2NzQ1YzM4YWEwNCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdEb2VzR0MuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHRG9lc0dDLmNwcApAQCAtMjk4LDcgKzI5OCw3IEBAIGJvb2wgZG9l
c0dDKEdyYXBoJiBncmFwaCwgTm9kZSogbm9kZSkKICAgICBjYXNlIFN0cmluZ1JlcGxhY2VSZWdF
eHA6CiAgICAgY2FzZSBDcmVhdGVSZXN0OgogICAgIGNhc2UgVG9Mb3dlckNhc2U6Ci0gICAgY2Fz
ZSBDYWxsRE9NOgorICAgIGNhc2UgQ2FsbERPTUdldHRlcjoKICAgICAgICAgcmV0dXJuIHRydWU7
CiAgICAgICAgIAogICAgIGNhc2UgTXVsdGlQdXRCeU9mZnNldDoKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFzZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0ZpeHVwUGhhc2UuY3BwCmluZGV4IGRiYzEwMTc1MjI2NDVlMDlmZTlhYzQ0
MTYzOGI2YzFmZTViM2M3MWEuLmM1OWQzZDliMGNmODEwMDJhNDY5ZTYyYTQ2NGEwNDM0ZmE2ZjEz
NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFzZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdGaXh1cFBoYXNlLmNwcApAQCAt
MTcxMCw4ICsxNzEwLDggQEAgY2xhc3MgRml4dXBQaGFzZSA6IHB1YmxpYyBQaGFzZSB7CiAgICAg
ICAgICAgICBmaXhFZGdlPENlbGxVc2U+KG5vZGUtPmNoaWxkMSgpKTsKICAgICAgICAgICAgIGJy
ZWFrOwogCi0gICAgICAgIGNhc2UgQ2FsbERPTTogewotICAgICAgICAgICAgRE9NSklUOjpDYWxs
RE9NUGF0Y2hwb2ludCogcGF0Y2hwb2ludCA9IG5vZGUtPmNhbGxET01EYXRhKCktPnBhdGNocG9p
bnQ7CisgICAgICAgIGNhc2UgQ2FsbERPTUdldHRlcjogeworICAgICAgICAgICAgRE9NSklUOjpD
YWxsRE9NR2V0dGVyUGF0Y2hwb2ludCogcGF0Y2hwb2ludCA9IG5vZGUtPmNhbGxET01HZXR0ZXJE
YXRhKCktPnBhdGNocG9pbnQ7CiAgICAgICAgICAgICBmaXhFZGdlPENlbGxVc2U+KG5vZGUtPmNo
aWxkMSgpKTsgLy8gRE9NLgogICAgICAgICAgICAgaWYgKHBhdGNocG9pbnQtPnJlcXVpcmVHbG9i
YWxPYmplY3QpCiAgICAgICAgICAgICAgICAgZml4RWRnZTxLbm93bkNlbGxVc2U+KG5vZGUtPmNo
aWxkMigpKTsgLy8gR2xvYmFsT2JqZWN0LgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdHcmFwaC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdHcmFwaC5o
CmluZGV4IGY5NTdmNWNmYmQ3ODhlZGQ2MjY4OTVmZjFkZTM1MDcxMzZkMTQxODAuLjdkNGViYzc1
NzNiMmM1MDEyODFjMTJlZTNjZTE4ZTcyYmI5ZTQ3YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHR3JhcGguaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0dyYXBoLmgKQEAgLTkwMSw3ICs5MDEsNyBAQCBjbGFzcyBHcmFwaCA6IHB1YmxpYyB2aXJ0
dWFsIFNjYW5uYWJsZSB7CiAgICAgQmFnPExvYWRWYXJhcmdzRGF0YT4gbV9sb2FkVmFyYXJnc0Rh
dGE7CiAgICAgQmFnPFN0YWNrQWNjZXNzRGF0YT4gbV9zdGFja0FjY2Vzc0RhdGE7CiAgICAgQmFn
PExhenlKU1ZhbHVlPiBtX2xhenlKU1ZhbHVlczsKLSAgICBCYWc8Q2FsbERPTURhdGE+IG1fY2Fs
bERPTURhdGE7CisgICAgQmFnPENhbGxET01HZXR0ZXJEYXRhPiBtX2NhbGxET01HZXR0ZXJEYXRh
OwogICAgIFZlY3RvcjxJbmxpbmVWYXJpYWJsZURhdGEsIDQ+IG1faW5saW5lVmFyaWFibGVEYXRh
OwogICAgIEhhc2hNYXA8Q29kZUJsb2NrKiwgc3RkOjp1bmlxdWVfcHRyPEZ1bGxCeXRlY29kZUxp
dmVuZXNzPj4gbV9ieXRlY29kZUxpdmVuZXNzOwogICAgIEhhc2hNYXA8Q29kZUJsb2NrKiwgc3Rk
Ojp1bmlxdWVfcHRyPEJ5dGVjb2RlS2lsbHM+PiBtX2J5dGVjb2RlS2lsbHM7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR05vZGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHTm9kZS5oCmluZGV4IDBkMWE0YjU1ODE0MzcyOWFhOGMzMjJmMjg0NjE4M2Qx
ZDQzNjRkM2IuLmZmMzhjODdhNDNmNWI2MWFhYmIzNmI5ZDk1MzE5ZmNhODg2Y2ExZDggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHTm9kZS5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHTm9kZS5oCkBAIC02MSw3ICs2MSw3IEBAIG5hbWVzcGFjZSBK
U0MgewogbmFtZXNwYWNlIERPTUpJVCB7CiBjbGFzcyBHZXR0ZXJTZXR0ZXI7CiBjbGFzcyBQYXRj
aHBvaW50OwotY2xhc3MgQ2FsbERPTVBhdGNocG9pbnQ7CitjbGFzcyBDYWxsRE9NR2V0dGVyUGF0
Y2hwb2ludDsKIH0KIAogbmFtZXNwYWNlIFByb2ZpbGVyIHsKQEAgLTIzMiw5ICsyMzIsOSBAQCBz
dHJ1Y3QgU3RhY2tBY2Nlc3NEYXRhIHsKICAgICBGbHVzaGVkQXQgZmx1c2hlZEF0KCkgeyByZXR1
cm4gRmx1c2hlZEF0KGZvcm1hdCwgbWFjaGluZUxvY2FsKTsgfQogfTsKIAotc3RydWN0IENhbGxE
T01EYXRhIHsKK3N0cnVjdCBDYWxsRE9NR2V0dGVyRGF0YSB7CiAgICAgRE9NSklUOjpHZXR0ZXJT
ZXR0ZXIqIGRvbUpJVCB7IG51bGxwdHIgfTsKLSAgICBET01KSVQ6OkNhbGxET01QYXRjaHBvaW50
KiBwYXRjaHBvaW50IHsgbnVsbHB0ciB9OworICAgIERPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNo
cG9pbnQqIHBhdGNocG9pbnQgeyBudWxscHRyIH07CiB9OwogCiAvLyA9PT0gTm9kZSA9PT0KQEAg
LTE0NTksNyArMTQ1OSw3IEBAIHN0cnVjdCBOb2RlIHsKICAgICAgICAgY2FzZSBTdHJpbmdSZXBs
YWNlUmVnRXhwOgogICAgICAgICBjYXNlIFRvTnVtYmVyOgogICAgICAgICBjYXNlIExvYWRGcm9t
SlNNYXBCdWNrZXQ6Ci0gICAgICAgIGNhc2UgQ2FsbERPTToKKyAgICAgICAgY2FzZSBDYWxsRE9N
R2V0dGVyOgogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0yMzQyLDE1ICsyMzQyLDE1IEBAIHN0cnVjdCBOb2Rl
IHsKICAgICAgICAgcmV0dXJuIG1fb3BJbmZvLmFzPERPTUpJVDo6UGF0Y2hwb2ludCo+KCk7CiAg
ICAgfQogCi0gICAgYm9vbCBoYXNDYWxsRE9NRGF0YSgpIGNvbnN0CisgICAgYm9vbCBoYXNDYWxs
RE9NR2V0dGVyRGF0YSgpIGNvbnN0CiAgICAgewotICAgICAgICByZXR1cm4gb3AoKSA9PSBDYWxs
RE9NOworICAgICAgICByZXR1cm4gb3AoKSA9PSBDYWxsRE9NR2V0dGVyOwogICAgIH0KIAotICAg
IENhbGxET01EYXRhKiBjYWxsRE9NRGF0YSgpCisgICAgQ2FsbERPTUdldHRlckRhdGEqIGNhbGxE
T01HZXR0ZXJEYXRhKCkKICAgICB7Ci0gICAgICAgIEFTU0VSVChoYXNDYWxsRE9NRGF0YSgpKTsK
LSAgICAgICAgcmV0dXJuIG1fb3BJbmZvLmFzPENhbGxET01EYXRhKj4oKTsKKyAgICAgICAgQVNT
RVJUKGhhc0NhbGxET01HZXR0ZXJEYXRhKCkpOworICAgICAgICByZXR1cm4gbV9vcEluZm8uYXM8
Q2FsbERPTUdldHRlckRhdGEqPigpOwogICAgIH0KIAogICAgIGJvb2wgaGFzQ2xhc3NJbmZvKCkg
Y29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHTm9kZVR5cGUu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHTm9kZVR5cGUuaAppbmRleCA3NWFhNjJl
MTI1NjcwYTM1Y2MwOGYyMTdkM2MxNzQ3Y2IwNGYwOTM0Li5mNjA3MGY4NjYyYzRhZGQ1ZDk1Mjc4
ZTY3YTc2YjQ5YWY2Y2QyYzcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR05vZGVUeXBlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdOb2RlVHlw
ZS5oCkBAIC00MDQsNyArNDA0LDcgQEAgbmFtZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBERkcgewog
ICAgIG1hY3JvKFRvTG93ZXJDYXNlLCBOb2RlUmVzdWx0SlMpIFwKICAgICAvKiBOb2RlcyBmb3Ig
RE9NIEpJVCAqL1wKICAgICBtYWNybyhDaGVja0RPTSwgTm9kZU11c3RHZW5lcmF0ZSkgXAotICAg
IG1hY3JvKENhbGxET00sIE5vZGVSZXN1bHRKUyB8IE5vZGVNdXN0R2VuZXJhdGUpIFwKKyAgICBt
YWNybyhDYWxsRE9NR2V0dGVyLCBOb2RlUmVzdWx0SlMgfCBOb2RlTXVzdEdlbmVyYXRlKSBcCiAK
IC8vIFRoaXMgZW51bSBnZW5lcmF0ZXMgYSBtb25vdG9uaWNhbGx5IGluY3JlYXNpbmcgaWQgZm9y
IGFsbCBOb2RlIHR5cGVzLAogLy8gYW5kIGlzIHVzZWQgYnkgdGhlIHN1YnNlcXVlbnQgZW51bSB0
byBmaWxsIG91dCB0aGUgaWQgKGFzIGFjY2Vzc2VkIHZpYSB0aGUgTm9kZUlkTWFzaykuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlv
blBoYXNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGljdGlvblByb3Bh
Z2F0aW9uUGhhc2UuY3BwCmluZGV4IGUxMTQyOGM3OTA1M2E5NzRiNjUxYjRhM2VkYmEyNWY5ZWE2
OGU3NGQuLjFkNmZjNWM5YjlhZDRhODg3MTkwNjIxZmI5ZjgzMzAxZmYzNWE2ZGYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGljdGlvblByb3BhZ2F0aW9uUGhh
c2UuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGljdGlvblByb3Bh
Z2F0aW9uUGhhc2UuY3BwCkBAIC03MDksNyArNzA5LDcgQEAgY2xhc3MgUHJlZGljdGlvblByb3Bh
Z2F0aW9uUGhhc2UgOiBwdWJsaWMgUGhhc2UgewogICAgICAgICBjYXNlIEdldEZyb21Bcmd1bWVu
dHM6CiAgICAgICAgIGNhc2UgTG9hZEZyb21KU01hcEJ1Y2tldDoKICAgICAgICAgY2FzZSBUb051
bWJlcjoKLSAgICAgICAgY2FzZSBDYWxsRE9NOiB7CisgICAgICAgIGNhc2UgQ2FsbERPTUdldHRl
cjogewogICAgICAgICAgICAgc2V0UHJlZGljdGlvbihtX2N1cnJlbnROb2RlLT5nZXRIZWFwUHJl
ZGljdGlvbigpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NhZmVUb0V4ZWN1dGUuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHU2FmZVRvRXhlY3V0ZS5oCmluZGV4IDY5YmJlMTFlNWRhZTY3YTcx
NTg3MjIxZWExNTY5ODFhYzNjM2Y1MmQuLjljNjQ5NWQ4NWEyYjdjMTAxMGQzNGIxOTE2YzdmMzcz
MDJiNTFkZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU2FmZVRv
RXhlY3V0ZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU2FmZVRvRXhlY3V0
ZS5oCkBAIC0yMTgsNyArMjE4LDcgQEAgYm9vbCBzYWZlVG9FeGVjdXRlKEFic3RyYWN0U3RhdGVU
eXBlJiBzdGF0ZSwgR3JhcGgmIGdyYXBoLCBOb2RlKiBub2RlKQogICAgIGNhc2UgQ2hlY2tTdHJ1
Y3R1cmU6CiAgICAgY2FzZSBHZXRFeGVjdXRhYmxlOgogICAgIGNhc2UgR2V0QnV0dGVyZmx5Ogot
ICAgIGNhc2UgQ2FsbERPTToKKyAgICBjYXNlIENhbGxET01HZXR0ZXI6CiAgICAgY2FzZSBDaGVj
a0RPTToKICAgICBjYXNlIENoZWNrQXJyYXk6CiAgICAgY2FzZSBBcnJheWlmeToKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAKaW5kZXggNmNjZmZi
NWRmN2ZjYmE3NzIzYTZjZDZkNjljNGY1ZTJkMDBlYjNkYy4uNThjMTE5ZGExODI2ZmVhOTMwN2Yx
YjU2ZTEwMzU4NWM1MjBiZTFjMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdTcGVjdWxhdGl2ZUpJVC5jcHAKQEAgLTcyMjMsOSArNzIyMyw5IEBAIHN0YXRpYyB2b2lkIGFs
bG9jYXRlVGVtcG9yYXJ5UmVnaXN0ZXJzRm9yUGF0Y2hwb2ludChTcGVjdWxhdGl2ZUpJVCogaml0
LCBWZWN0b3I8CiAgICAgfQogfQogCi12b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlQ2FsbERP
TShOb2RlKiBub2RlKQordm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZUNhbGxET01HZXR0ZXIo
Tm9kZSogbm9kZSkKIHsKLSAgICBET01KSVQ6OkNhbGxET01QYXRjaHBvaW50KiBwYXRjaHBvaW50
ID0gbm9kZS0+Y2FsbERPTURhdGEoKS0+cGF0Y2hwb2ludDsKKyAgICBET01KSVQ6OkNhbGxET01H
ZXR0ZXJQYXRjaHBvaW50KiBwYXRjaHBvaW50ID0gbm9kZS0+Y2FsbERPTUdldHRlckRhdGEoKS0+
cGF0Y2hwb2ludDsKIAogICAgIFZlY3RvcjxHUFJSZWc+IGdwU2NyYXRjaDsKICAgICBWZWN0b3I8
RlBSUmVnPiBmcFNjcmF0Y2g7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1NwZWN1bGF0aXZlSklULmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1
bGF0aXZlSklULmgKaW5kZXggYjQwNDViMjBlMmJkMjA3MmZkMGViNjk2MmNkZTQ0MjRkNzRlNjYw
ZS4uYTZmY2ZiNGNmZDliN2RlMGI5NWQyM2ZlMmEzYmI3MjMzMjAyZWE4ZSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQuaApAQCAtMjU2MCw3ICsyNTYw
LDcgQEAgY2xhc3MgU3BlY3VsYXRpdmVKSVQgewogICAgIHZvaWQgY29tcGlsZUFsbG9jYXRlUHJv
cGVydHlTdG9yYWdlKE5vZGUqKTsKICAgICB2b2lkIGNvbXBpbGVSZWFsbG9jYXRlUHJvcGVydHlT
dG9yYWdlKE5vZGUqKTsKICAgICB2b2lkIGNvbXBpbGVHZXRCdXR0ZXJmbHkoTm9kZSopOwotICAg
IHZvaWQgY29tcGlsZUNhbGxET00oTm9kZSopOworICAgIHZvaWQgY29tcGlsZUNhbGxET01HZXR0
ZXIoTm9kZSopOwogICAgIHZvaWQgY29tcGlsZUNoZWNrRE9NKE5vZGUqKTsKICAgICAKICNpZiBV
U0UoSlNWQUxVRTMyXzY0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
U3BlY3VsYXRpdmVKSVQzMl82NC5jcHAKaW5kZXggNDU4YTI5MjlmNTlhNjZkNGJhZGIxYTRiYTJj
NWY3OGI4NzU4MzE0Yy4uNzYyNGZlNzBiZTZlZDRmMDNmYTU3MDU1ZDk3MjQzNDkzOWIwN2QyNyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMy
XzY0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklU
MzJfNjQuY3BwCkBAIC01NTU0LDggKzU1NTQsOCBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21w
aWxlKE5vZGUqIG5vZGUpCiAgICAgICAgIGJyZWFrOwogICAgIH0KIAotICAgIGNhc2UgQ2FsbERP
TToKLSAgICAgICAgY29tcGlsZUNhbGxET00obm9kZSk7CisgICAgY2FzZSBDYWxsRE9NR2V0dGVy
OgorICAgICAgICBjb21waWxlQ2FsbERPTUdldHRlcihub2RlKTsKICAgICAgICAgYnJlYWs7CiAK
ICAgICBjYXNlIENoZWNrRE9NOgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
U3BlY3VsYXRpdmVKSVQ2NC5jcHAKaW5kZXggZDE4NWI5ZDYwMjdjMWVjYTEyZjExNTFmOTM0MjMx
YWM3N2E5YTk2MS4uYWFlYzg5M2M2N2RkYWQzYjFhZGJlZjZjZTBmMjVkOTVjNzEzZjU4MSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3Bw
CkBAIC01Njg1LDggKzU2ODUsOCBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUq
IG5vZGUpCiAgICAgICAgIGNvbXBpbGVNYXRlcmlhbGl6ZU5ld09iamVjdChub2RlKTsKICAgICAg
ICAgYnJlYWs7CiAKLSAgICBjYXNlIENhbGxET006Ci0gICAgICAgIGNvbXBpbGVDYWxsRE9NKG5v
ZGUpOworICAgIGNhc2UgQ2FsbERPTUdldHRlcjoKKyAgICAgICAgY29tcGlsZUNhbGxET01HZXR0
ZXIobm9kZSk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBDaGVja0RPTToKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kb21qaXQvRE9NSklUQ2FsbERPTUdldHRlclBhdGNo
cG9pbnQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kb21qaXQvRE9NSklUQ2FsbERPTUdldHRl
clBhdGNocG9pbnQuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMWMyZGQxM2MwMmIwNTAxZGE4OTVmM2U2YzhhZGQ0
OGJjNWVlZGUzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RvbWpp
dC9ET01KSVRDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludC5oCkBAIC0wLDAgKzEsNTcgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2lmIEVOQUJMRShKSVQpCisKKyNpbmNsdWRlICJET01KSVRFZmZlY3QuaCIKKyNpbmNsdWRlICJE
T01KSVRQYXRjaHBvaW50LmgiCisjaW5jbHVkZSAiUmVnaXN0ZXJTZXQuaCIKKworbmFtZXNwYWNl
IEpTQyB7IG5hbWVzcGFjZSBET01KSVQgeworCitjbGFzcyBDYWxsRE9NR2V0dGVyUGF0Y2hwb2lu
dCA6IHB1YmxpYyBQYXRjaHBvaW50IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPENhbGxET01H
ZXR0ZXJQYXRjaHBvaW50PiBjcmVhdGUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgQ2FsbERPTUdldHRlclBhdGNocG9pbnQoKSk7CisgICAgfQorCisgICAgLy8gVG8gbG9v
ayB1cCBET01XcmFwcGVyIGNhY2hlLCBHbG9iYWxPYmplY3QgaXMgcmVxdWlyZWQuCisgICAgLy8g
RklYTUU6IExhdGVyLCB3ZSB3aWxsIGV4dGVuZCB0aGlzIHBhdGNocG9pbnQgdG8gcmVwcmVzZW50
IHRoZSByZXN1bHQgdHlwZSBieSBET01KSVQ6OlNpZ25hdHVyZS4KKyAgICAvLyBBbmQgYWZ0ZXIg
dGhhdCwgd2Ugd2lsbCBhdXRvbWF0aWNhbGx5IHBhc3MgYSBnbG9iYWwgb2JqZWN0IHdoZW4gdGhl
IHJlc3VsdCB0eXBlIGluY2x1ZGVzIGEgRE9NIHdyYXBwZXIgdGhpbmcuCisgICAgLy8gaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mjk4MAorICAgIGJvb2wgcmVxdWly
ZUdsb2JhbE9iamVjdCB7IHRydWUgfTsKKworICAgIEVmZmVjdCBlZmZlY3QgeyB9OworCitwcml2
YXRlOgorICAgIENhbGxET01HZXR0ZXJQYXRjaHBvaW50KCkgPSBkZWZhdWx0OworfTsKKworfSB9
CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RvbWppdC9ET01K
SVRDYWxsRE9NUGF0Y2hwb2ludC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RvbWppdC9ET01K
SVRDYWxsRE9NUGF0Y2hwb2ludC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0ZWRi
MjMzMmE3YTlkN2Q0MmIxMGE0MTQ2ZjkwYTgxMjI0NmFjNWQzLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kb21qaXQv
RE9NSklUQ2FsbERPTVBhdGNocG9pbnQuaAorKysgL2Rldi9udWxsCkBAIC0xLDU3ICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0g
KiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jcHJhZ21hIG9u
Y2UKLQotI2lmIEVOQUJMRShKSVQpCi0KLSNpbmNsdWRlICJET01KSVRFZmZlY3QuaCIKLSNpbmNs
dWRlICJET01KSVRQYXRjaHBvaW50LmgiCi0jaW5jbHVkZSAiUmVnaXN0ZXJTZXQuaCIKLQotbmFt
ZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBET01KSVQgewotCi1jbGFzcyBDYWxsRE9NUGF0Y2hwb2lu
dCA6IHB1YmxpYyBQYXRjaHBvaW50IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPENhbGxET01Q
YXRjaHBvaW50PiBjcmVhdGUoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
Q2FsbERPTVBhdGNocG9pbnQoKSk7Ci0gICAgfQotCi0gICAgLy8gVG8gbG9vayB1cCBET01XcmFw
cGVyIGNhY2hlLCBHbG9iYWxPYmplY3QgaXMgcmVxdWlyZWQuCi0gICAgLy8gRklYTUU6IExhdGVy
LCB3ZSB3aWxsIGV4dGVuZCB0aGlzIHBhdGNocG9pbnQgdG8gcmVwcmVzZW50IHRoZSByZXN1bHQg
dHlwZSBieSBET01KSVQ6OlNpZ25hdHVyZS4KLSAgICAvLyBBbmQgYWZ0ZXIgdGhhdCwgd2Ugd2ls
bCBhdXRvbWF0aWNhbGx5IHBhc3MgYSBnbG9iYWwgb2JqZWN0IHdoZW4gdGhlIHJlc3VsdCB0eXBl
IGluY2x1ZGVzIGEgRE9NIHdyYXBwZXIgdGhpbmcuCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mjk4MAotICAgIGJvb2wgcmVxdWlyZUdsb2JhbE9iamVj
dCB7IHRydWUgfTsKLQotICAgIEVmZmVjdCBlZmZlY3QgeyB9OwotCi1wcml2YXRlOgotICAgIENh
bGxET01QYXRjaHBvaW50KCkgPSBkZWZhdWx0OwotfTsKLQotfSB9Ci0KLSNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RvbWppdC9ET01KSVRHZXR0ZXJTZXR0ZXIuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kb21qaXQvRE9NSklUR2V0dGVyU2V0dGVyLmgKaW5kZXgg
NWFkMDNjZTdmYWI5Zjk2OGQyYmIxM2JmMmM2MWE1NmNiN2U3NmZiZC4uYjk0Zjg3YWVjMTE0NWRk
OGI5MGFkM2I3MTM5Nzg3ZWNjNDBiYzU1OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RvbWppdC9ET01KSVRHZXR0ZXJTZXR0ZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZG9taml0L0RPTUpJVEdldHRlclNldHRlci5oCkBAIC0yNSw3ICsyNSw3IEBACiAKICNwcmFn
bWEgb25jZQogCi0jaW5jbHVkZSAiRE9NSklUQ2FsbERPTVBhdGNocG9pbnQuaCIKKyNpbmNsdWRl
ICJET01KSVRDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludC5oIgogI2luY2x1ZGUgIlByb3BlcnR5U2xv
dC5oIgogI2luY2x1ZGUgIlB1dFByb3BlcnR5U2xvdC5oIgogI2luY2x1ZGUgIlNwZWN1bGF0ZWRU
eXBlLmgiCkBAIC01Myw3ICs1Myw3IEBAIGNsYXNzIEdldHRlclNldHRlciB7CiAgICAgU3BlY3Vs
YXRlZFR5cGUgcmVzdWx0VHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzdWx0VHlwZTsgfQogCiAj
aWYgRU5BQkxFKEpJVCkKLSAgICB2aXJ0dWFsIFJlZjxET01KSVQ6OkNhbGxET01QYXRjaHBvaW50
PiBjYWxsRE9NKCkgPSAwOworICAgIHZpcnR1YWwgUmVmPERPTUpJVDo6Q2FsbERPTUdldHRlclBh
dGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSA9IDA7CiAgICAgdmlydHVhbCBSZWY8RE9NSklUOjpQ
YXRjaHBvaW50PiBjaGVja0RPTSgpID0gMDsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZnRsL0ZUTENhcGFiaWxpdGllcy5jcHAKaW5kZXggZWY1ZjNmMWFmMDFmZWI1ZjA5Y2U1
NGMxNDAwMGI1YTVhZjZjNDg5Zi4uZGUxYjI4ODI1NmRlZWFmZDVlNDkzZjhlNGQ2OGZiY2ExMzlj
OTlmMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExDYXBhYmlsaXRp
ZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMQ2FwYWJpbGl0aWVzLmNw
cApAQCAtMjcxLDcgKzI3MSw3IEBAIGlubGluZSBDYXBhYmlsaXR5TGV2ZWwgY2FuQ29tcGlsZShO
b2RlKiBub2RlKQogICAgIGNhc2UgRGVmaW5lQWNjZXNzb3JQcm9wZXJ0eToKICAgICBjYXNlIFRv
TG93ZXJDYXNlOgogICAgIGNhc2UgQ2hlY2tET006Ci0gICAgY2FzZSBDYWxsRE9NOgorICAgIGNh
c2UgQ2FsbERPTUdldHRlcjoKICAgICAgICAgLy8gVGhlc2UgYXJlIE9LLgogICAgICAgICBicmVh
azsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1Rv
QjMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCmlu
ZGV4IDhjYTQ0Zjg1MTYyYTI1MmQ5YWEyZThiZWUwZDI1ZTg3OTU5ZDZhZTkuLmE4ZjllZGJlMzNi
NDczZTk3NWM0YWZkYTAxYjdmN2M2NjM1NDVmZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAKQEAgLTEwNTcsOCArMTA1Nyw4IEBAIGNsYXNzIExv
d2VyREZHVG9CMyB7CiAgICAgICAgIGNhc2UgQ2hlY2tET006CiAgICAgICAgICAgICBjb21waWxl
Q2hlY2tET00oKTsKICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIENhbGxET006Ci0g
ICAgICAgICAgICBjb21waWxlQ2FsbERPTSgpOworICAgICAgICBjYXNlIENhbGxET01HZXR0ZXI6
CisgICAgICAgICAgICBjb21waWxlQ2FsbERPTUdldHRlcigpOwogICAgICAgICAgICAgYnJlYWs7
CiAKICAgICAgICAgY2FzZSBQaGFudG9tTG9jYWw6CkBAIC05MDYyLDkgKzkwNjIsOSBAQCBjbGFz
cyBMb3dlckRGR1RvQjMgewogICAgICAgICBwYXRjaHBvaW50LT5lZmZlY3RzID0gRWZmZWN0czo6
Zm9yQ2hlY2soKTsKICAgICB9CiAKLSAgICB2b2lkIGNvbXBpbGVDYWxsRE9NKCkKKyAgICB2b2lk
IGNvbXBpbGVDYWxsRE9NR2V0dGVyKCkKICAgICB7Ci0gICAgICAgIERPTUpJVDo6Q2FsbERPTVBh
dGNocG9pbnQqIGRvbUpJVCA9IG1fbm9kZS0+Y2FsbERPTURhdGEoKS0+cGF0Y2hwb2ludDsKKyAg
ICAgICAgRE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludCogZG9tSklUID0gbV9ub2RlLT5j
YWxsRE9NR2V0dGVyRGF0YSgpLT5wYXRjaHBvaW50OwogCiAgICAgICAgIEVkZ2UmIGJhc2VFZGdl
ID0gbV9ub2RlLT5jaGlsZDEoKTsKICAgICAgICAgTFZhbHVlIGJhc2UgPSBsb3dDZWxsKGJhc2VF
ZGdlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXggY2ZjYzAxNTk3N2MxNDQ2OWVlNGI2MTcxNWNk
YzE4ODk0ZWYxNjJiYi4uNzQ4MDM2M2ZlOWU3MDhlYzVhMGQwNTgzM2MzN2Q5YjY0ZGZmNTBlZiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTYzMiw5ICs2MzIsOSBAQCBjbGFzcyBET01KSVRHZXR0
ZXIgOiBwdWJsaWMgRE9NSklUTm9kZSB7CiAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGpzTnVtYmVyKHN0YXRpY19jYXN0PERPTUpJVEdldHRlcio+KHBvaW50ZXIpLT52YWx1ZSgp
KSk7CiAgICAgICAgIH0KIAotICAgICAgICBSZWY8RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4g
Y2FsbERPTSgpIG92ZXJyaWRlCisgICAgICAgIFJlZjxET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRj
aHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGUKICAgICAgICAgewotICAgICAgICAgICAg
UmVmPERPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IHBhdGNocG9pbnQgPSBET01KSVQ6OkNhbGxE
T01QYXRjaHBvaW50OjpjcmVhdGUoKTsKKyAgICAgICAgICAgIFJlZjxET01KSVQ6OkNhbGxET01H
ZXR0ZXJQYXRjaHBvaW50PiBwYXRjaHBvaW50ID0gRE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hw
b2ludDo6Y3JlYXRlKCk7CiAgICAgICAgICAgICBwYXRjaHBvaW50LT5yZXF1aXJlR2xvYmFsT2Jq
ZWN0ID0gZmFsc2U7CiAgICAgICAgICAgICBwYXRjaHBvaW50LT5zZXRHZW5lcmF0b3IoWz1dKEND
YWxsSGVscGVycyYgaml0LCBET01KSVQ6OlBhdGNocG9pbnRQYXJhbXMmIHBhcmFtcykgewogICAg
ICAgICAgICAgICAgIEpTVmFsdWVSZWdzIHJlc3VsdHMgPSBwYXJhbXNbMF0uanNWYWx1ZVJlZ3Mo
KTsKQEAgLTcyNSw5ICs3MjUsOSBAQCBjbGFzcyBET01KSVRHZXR0ZXJDb21wbGV4IDogcHVibGlj
IERPTUpJVE5vZGUgewogICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc051bWJl
cihvYmplY3QtPnZhbHVlKCkpKTsKICAgICAgICAgfQogCi0gICAgICAgIFJlZjxET01KSVQ6OkNh
bGxET01QYXRjaHBvaW50PiBjYWxsRE9NKCkgb3ZlcnJpZGUKKyAgICAgICAgUmVmPERPTUpJVDo6
Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZQogICAgICAg
ICB7Ci0gICAgICAgICAgICBSZWZQdHI8RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gcGF0Y2hw
b2ludCA9IERPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ6OmNyZWF0ZSgpOworICAgICAgICAgICAg
UmVmUHRyPERPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+IHBhdGNocG9pbnQgPSBET01K
SVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50OjpjcmVhdGUoKTsKICAgICAgICAgICAgIHN0YXRp
Y19hc3NlcnQoR1BSSW5mbzo6bnVtYmVyT2ZSZWdpc3RlcnMgPj0gNCwgIk51bWJlciBvZiByZWdp
c3RlcnMgc2hvdWxkIGJlIGxhcmdlciBvciBlcXVhbCB0byA0LiIpOwogICAgICAgICAgICAgcGF0
Y2hwb2ludC0+bnVtR1BTY3JhdGNoUmVnaXN0ZXJzID0gR1BSSW5mbzo6bnVtYmVyT2ZSZWdpc3Rl
cnMgLSA0OwogICAgICAgICAgICAgcGF0Y2hwb2ludC0+bnVtRlBTY3JhdGNoUmVnaXN0ZXJzID0g
MzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
SlMucG0KaW5kZXggMDMzNGIwMTNmMzUyM2I2MzQwMTMxNTJhOTc1NTUxZDM5YTM5Yjc4OS4uNGM5
YTdmMDVlMDQyOGU0MzI1N2M5NTdiZTYwNWU2N2EzYmVlODJjMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTE3NDksNyAr
MTc0OSw3IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgIiAgICAkZG9tSklUQ2xhc3NOYW1lKCk7XG4iKTsKICAgICAgICAgICAgIHB1c2goQGhl
YWRlckNvbnRlbnQsICIjaWYgRU5BQkxFKEpJVClcbiIpOwogICAgICAgICAgICAgcHVzaChAaGVh
ZGVyQ29udGVudCwgIiAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkg
b3ZlcnJpZGU7XG4iKTsKLSAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgUmVm
PEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2FsbERPTSgpIG92ZXJyaWRlO1xuIik7
CisgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIFJlZjxKU0M6OkRPTUpJVDo6
Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTtcbiIpOwog
ICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiNlbmRpZlxuIik7CiAgICAgICAgICAg
ICBwdXNoKEBoZWFkZXJDb250ZW50LCAifTtcblxuIik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01KSVQuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01KSVQuaApp
bmRleCA2NDJjNmZkMDIyZmQ3NDM3MTU1MTA4NzVhYzdmNzg4ZjA3YmI2YmE2Li4yNjA5NmE5NWQx
MWJlMTQ4YmUwMDI4NWRhZmY0NzI2ZGZhNGMwM2I0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RE9NSklULmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5oCkBAIC03NCw3ICs3
NCw3IEBAIGNsYXNzIFRlc3RET01KSVRBbnlBdHRyRE9NSklUIDogcHVibGljIEpTQzo6RE9NSklU
OjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RET01KSVRBbnlBdHRyRE9NSklUKCk7CiAjaWYgRU5B
QkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkgb3Zl
cnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2FsbERPTSgp
IG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+
IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAtODQsNyArODQsNyBA
QCBjbGFzcyBUZXN0RE9NSklUQm9vbGVhbkF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6
OkdldHRlclNldHRlciB7CiAgICAgVGVzdERPTUpJVEJvb2xlYW5BdHRyRE9NSklUKCk7CiAjaWYg
RU5BQkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkg
b3ZlcnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2FsbERP
TSgpIG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9p
bnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAtOTQsNyArOTQs
NyBAQCBjbGFzcyBUZXN0RE9NSklUQnl0ZUF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6
OkdldHRlclNldHRlciB7CiAgICAgVGVzdERPTUpJVEJ5dGVBdHRyRE9NSklUKCk7CiAjaWYgRU5B
QkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkgb3Zl
cnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2FsbERPTSgp
IG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+
IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAtMTA0LDcgKzEwNCw3
IEBAIGNsYXNzIFRlc3RET01KSVRPY3RldEF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6
OkdldHRlclNldHRlciB7CiAgICAgVGVzdERPTUpJVE9jdGV0QXR0ckRPTUpJVCgpOwogI2lmIEVO
QUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBjaGVja0RPTSgpIG92
ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IGNhbGxET00o
KSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50
PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIH07CiAKQEAgLTExNCw3ICsxMTQs
NyBAQCBjbGFzcyBUZXN0RE9NSklUU2hvcnRBdHRyRE9NSklUIDogcHVibGljIEpTQzo6RE9NSklU
OjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RET01KSVRTaG9ydEF0dHJET01KSVQoKTsKICNpZiBF
TkFCTEUoSklUKQogICAgIFJlZjxKU0M6OkRPTUpJVDo6UGF0Y2hwb2ludD4gY2hlY2tET00oKSBv
dmVycmlkZTsKLSAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01QYXRjaHBvaW50PiBjYWxsRE9N
KCkgb3ZlcnJpZGU7CisgICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2lu
dD4gY2FsbERPTUdldHRlcigpIG92ZXJyaWRlOwogI2VuZGlmCiB9OwogCkBAIC0xMjQsNyArMTI0
LDcgQEAgY2xhc3MgVGVzdERPTUpJVFVuc2lnbmVkU2hvcnRBdHRyRE9NSklUIDogcHVibGljIEpT
Qzo6RE9NSklUOjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RET01KSVRVbnNpZ25lZFNob3J0QXR0
ckRPTUpJVCgpOwogI2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBv
aW50PiBjaGVja0RPTSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBh
dGNocG9pbnQ+IGNhbGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxE
T01HZXR0ZXJQYXRjaHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIH07
CiAKQEAgLTEzNCw3ICsxMzQsNyBAQCBjbGFzcyBUZXN0RE9NSklUTG9uZ0F0dHJET01KSVQgOiBw
dWJsaWMgSlNDOjpET01KSVQ6OkdldHRlclNldHRlciB7CiAgICAgVGVzdERPTUpJVExvbmdBdHRy
RE9NSklUKCk7CiAjaWYgRU5BQkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9p
bnQ+IGNoZWNrRE9NKCkgb3ZlcnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0
Y2hwb2ludD4gY2FsbERPTSgpIG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERP
TUdldHRlclBhdGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsK
IApAQCAtMTQ0LDcgKzE0NCw3IEBAIGNsYXNzIFRlc3RET01KSVRVbnNpZ25lZExvbmdBdHRyRE9N
SklUIDogcHVibGljIEpTQzo6RE9NSklUOjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RET01KSVRV
bnNpZ25lZExvbmdBdHRyRE9NSklUKCk7CiAjaWYgRU5BQkxFKEpJVCkKICAgICBSZWY8SlNDOjpE
T01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkgb3ZlcnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9N
SklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2FsbERPTSgpIG92ZXJyaWRlOworICAgIFJlZjxKU0M6
OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlk
ZTsKICNlbmRpZgogfTsKIApAQCAtMTU0LDcgKzE1NCw3IEBAIGNsYXNzIFRlc3RET01KSVRMb25n
TG9uZ0F0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6OkdldHRlclNldHRlciB7CiAgICAg
VGVzdERPTUpJVExvbmdMb25nQXR0ckRPTUpJVCgpOwogI2lmIEVOQUJMRShKSVQpCiAgICAgUmVm
PEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBjaGVja0RPTSgpIG92ZXJyaWRlOwotICAgIFJlZjxK
U0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IGNhbGxET00oKSBvdmVycmlkZTsKKyAgICBS
ZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBjYWxsRE9NR2V0dGVyKCkg
b3ZlcnJpZGU7CiAjZW5kaWYKIH07CiAKQEAgLTE2NCw3ICsxNjQsNyBAQCBjbGFzcyBUZXN0RE9N
SklUVW5zaWduZWRMb25nTG9uZ0F0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6OkdldHRl
clNldHRlciB7CiAgICAgVGVzdERPTUpJVFVuc2lnbmVkTG9uZ0xvbmdBdHRyRE9NSklUKCk7CiAj
aWYgRU5BQkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9N
KCkgb3ZlcnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2Fs
bERPTSgpIG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNo
cG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAtMTc0LDcg
KzE3NCw3IEBAIGNsYXNzIFRlc3RET01KSVRGbG9hdEF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpE
T01KSVQ6OkdldHRlclNldHRlciB7CiAgICAgVGVzdERPTUpJVEZsb2F0QXR0ckRPTUpJVCgpOwog
I2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBjaGVja0RP
TSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IGNh
bGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRj
aHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIH07CiAKQEAgLTE4NCw3
ICsxODQsNyBAQCBjbGFzcyBUZXN0RE9NSklUVW5yZXN0cmljdGVkRmxvYXRBdHRyRE9NSklUIDog
cHVibGljIEpTQzo6RE9NSklUOjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RET01KSVRVbnJlc3Ry
aWN0ZWRGbG9hdEF0dHJET01KSVQoKTsKICNpZiBFTkFCTEUoSklUKQogICAgIFJlZjxKU0M6OkRP
TUpJVDo6UGF0Y2hwb2ludD4gY2hlY2tET00oKSBvdmVycmlkZTsKLSAgICBSZWY8SlNDOjpET01K
SVQ6OkNhbGxET01QYXRjaHBvaW50PiBjYWxsRE9NKCkgb3ZlcnJpZGU7CisgICAgUmVmPEpTQzo6
RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gY2FsbERPTUdldHRlcigpIG92ZXJyaWRl
OwogI2VuZGlmCiB9OwogCkBAIC0xOTQsNyArMTk0LDcgQEAgY2xhc3MgVGVzdERPTUpJVERvdWJs
ZUF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6OkdldHRlclNldHRlciB7CiAgICAgVGVz
dERPTUpJVERvdWJsZUF0dHJET01KSVQoKTsKICNpZiBFTkFCTEUoSklUKQogICAgIFJlZjxKU0M6
OkRPTUpJVDo6UGF0Y2hwb2ludD4gY2hlY2tET00oKSBvdmVycmlkZTsKLSAgICBSZWY8SlNDOjpE
T01KSVQ6OkNhbGxET01QYXRjaHBvaW50PiBjYWxsRE9NKCkgb3ZlcnJpZGU7CisgICAgUmVmPEpT
Qzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gY2FsbERPTUdldHRlcigpIG92ZXJy
aWRlOwogI2VuZGlmCiB9OwogCkBAIC0yMDQsNyArMjA0LDcgQEAgY2xhc3MgVGVzdERPTUpJVFVu
cmVzdHJpY3RlZERvdWJsZUF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6OkdldHRlclNl
dHRlcgogICAgIFRlc3RET01KSVRVbnJlc3RyaWN0ZWREb3VibGVBdHRyRE9NSklUKCk7CiAjaWYg
RU5BQkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkg
b3ZlcnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2FsbERP
TSgpIG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9p
bnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAtMjE0LDcgKzIx
NCw3IEBAIGNsYXNzIFRlc3RET01KSVREb21TdHJpbmdBdHRyRE9NSklUIDogcHVibGljIEpTQzo6
RE9NSklUOjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RET01KSVREb21TdHJpbmdBdHRyRE9NSklU
KCk7CiAjaWYgRU5BQkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNo
ZWNrRE9NKCkgb3ZlcnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2lu
dD4gY2FsbERPTSgpIG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRl
clBhdGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAt
MjI0LDcgKzIyNCw3IEBAIGNsYXNzIFRlc3RET01KSVRCeXRlU3RyaW5nQXR0ckRPTUpJVCA6IHB1
YmxpYyBKU0M6OkRPTUpJVDo6R2V0dGVyU2V0dGVyIHsKICAgICBUZXN0RE9NSklUQnl0ZVN0cmlu
Z0F0dHJET01KSVQoKTsKICNpZiBFTkFCTEUoSklUKQogICAgIFJlZjxKU0M6OkRPTUpJVDo6UGF0
Y2hwb2ludD4gY2hlY2tET00oKSBvdmVycmlkZTsKLSAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxE
T01QYXRjaHBvaW50PiBjYWxsRE9NKCkgb3ZlcnJpZGU7CisgICAgUmVmPEpTQzo6RE9NSklUOjpD
YWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gY2FsbERPTUdldHRlcigpIG92ZXJyaWRlOwogI2VuZGlm
CiB9OwogCkBAIC0yMzQsNyArMjM0LDcgQEAgY2xhc3MgVGVzdERPTUpJVFVzdlN0cmluZ0F0dHJE
T01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6OkdldHRlclNldHRlciB7CiAgICAgVGVzdERPTUpJ
VFVzdlN0cmluZ0F0dHJET01KSVQoKTsKICNpZiBFTkFCTEUoSklUKQogICAgIFJlZjxKU0M6OkRP
TUpJVDo6UGF0Y2hwb2ludD4gY2hlY2tET00oKSBvdmVycmlkZTsKLSAgICBSZWY8SlNDOjpET01K
SVQ6OkNhbGxET01QYXRjaHBvaW50PiBjYWxsRE9NKCkgb3ZlcnJpZGU7CisgICAgUmVmPEpTQzo6
RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gY2FsbERPTUdldHRlcigpIG92ZXJyaWRl
OwogI2VuZGlmCiB9OwogCkBAIC0yNDQsNyArMjQ0LDcgQEAgY2xhc3MgVGVzdERPTUpJVE5vZGVB
dHRyRE9NSklUIDogcHVibGljIEpTQzo6RE9NSklUOjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RE
T01KSVROb2RlQXR0ckRPTUpJVCgpOwogI2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9N
SklUOjpQYXRjaHBvaW50PiBjaGVja0RPTSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJ
VDo6Q2FsbERPTVBhdGNocG9pbnQ+IGNhbGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpE
T01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7
CiAjZW5kaWYKIH07CiAKQEAgLTI1NCw3ICsyNTQsNyBAQCBjbGFzcyBUZXN0RE9NSklUQm9vbGVh
bk51bGxhYmxlQXR0ckRPTUpJVCA6IHB1YmxpYyBKU0M6OkRPTUpJVDo6R2V0dGVyU2V0dGVyIHsK
ICAgICBUZXN0RE9NSklUQm9vbGVhbk51bGxhYmxlQXR0ckRPTUpJVCgpOwogI2lmIEVOQUJMRShK
SVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBjaGVja0RPTSgpIG92ZXJyaWRl
OwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IGNhbGxET00oKSBvdmVy
cmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBjYWxs
RE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIH07CiAKQEAgLTI2NCw3ICsyNjQsNyBAQCBj
bGFzcyBUZXN0RE9NSklUQnl0ZU51bGxhYmxlQXR0ckRPTUpJVCA6IHB1YmxpYyBKU0M6OkRPTUpJ
VDo6R2V0dGVyU2V0dGVyIHsKICAgICBUZXN0RE9NSklUQnl0ZU51bGxhYmxlQXR0ckRPTUpJVCgp
OwogI2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBjaGVj
a0RPTSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+
IGNhbGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQ
YXRjaHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIH07CiAKQEAgLTI3
NCw3ICsyNzQsNyBAQCBjbGFzcyBUZXN0RE9NSklUT2N0ZXROdWxsYWJsZUF0dHJET01KSVQgOiBw
dWJsaWMgSlNDOjpET01KSVQ6OkdldHRlclNldHRlciB7CiAgICAgVGVzdERPTUpJVE9jdGV0TnVs
bGFibGVBdHRyRE9NSklUKCk7CiAjaWYgRU5BQkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6
OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkgb3ZlcnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpD
YWxsRE9NUGF0Y2hwb2ludD4gY2FsbERPTSgpIG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJ
VDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNl
bmRpZgogfTsKIApAQCAtMjg0LDcgKzI4NCw3IEBAIGNsYXNzIFRlc3RET01KSVRTaG9ydE51bGxh
YmxlQXR0ckRPTUpJVCA6IHB1YmxpYyBKU0M6OkRPTUpJVDo6R2V0dGVyU2V0dGVyIHsKICAgICBU
ZXN0RE9NSklUU2hvcnROdWxsYWJsZUF0dHJET01KSVQoKTsKICNpZiBFTkFCTEUoSklUKQogICAg
IFJlZjxKU0M6OkRPTUpJVDo6UGF0Y2hwb2ludD4gY2hlY2tET00oKSBvdmVycmlkZTsKLSAgICBS
ZWY8SlNDOjpET01KSVQ6OkNhbGxET01QYXRjaHBvaW50PiBjYWxsRE9NKCkgb3ZlcnJpZGU7Cisg
ICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gY2FsbERPTUdldHRl
cigpIG92ZXJyaWRlOwogI2VuZGlmCiB9OwogCkBAIC0yOTQsNyArMjk0LDcgQEAgY2xhc3MgVGVz
dERPTUpJVFVuc2lnbmVkU2hvcnROdWxsYWJsZUF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01K
SVQ6OkdldHRlclNldHQKICAgICBUZXN0RE9NSklUVW5zaWduZWRTaG9ydE51bGxhYmxlQXR0ckRP
TUpJVCgpOwogI2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50
PiBjaGVja0RPTSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNo
cG9pbnQ+IGNhbGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01H
ZXR0ZXJQYXRjaHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIH07CiAK
QEAgLTMwNCw3ICszMDQsNyBAQCBjbGFzcyBUZXN0RE9NSklUTG9uZ051bGxhYmxlQXR0ckRPTUpJ
VCA6IHB1YmxpYyBKU0M6OkRPTUpJVDo6R2V0dGVyU2V0dGVyIHsKICAgICBUZXN0RE9NSklUTG9u
Z051bGxhYmxlQXR0ckRPTUpJVCgpOwogI2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9N
SklUOjpQYXRjaHBvaW50PiBjaGVja0RPTSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJ
VDo6Q2FsbERPTVBhdGNocG9pbnQ+IGNhbGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpE
T01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7
CiAjZW5kaWYKIH07CiAKQEAgLTMxNCw3ICszMTQsNyBAQCBjbGFzcyBUZXN0RE9NSklUVW5zaWdu
ZWRMb25nTnVsbGFibGVBdHRyRE9NSklUIDogcHVibGljIEpTQzo6RE9NSklUOjpHZXR0ZXJTZXR0
ZQogICAgIFRlc3RET01KSVRVbnNpZ25lZExvbmdOdWxsYWJsZUF0dHJET01KSVQoKTsKICNpZiBF
TkFCTEUoSklUKQogICAgIFJlZjxKU0M6OkRPTUpJVDo6UGF0Y2hwb2ludD4gY2hlY2tET00oKSBv
dmVycmlkZTsKLSAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01QYXRjaHBvaW50PiBjYWxsRE9N
KCkgb3ZlcnJpZGU7CisgICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2lu
dD4gY2FsbERPTUdldHRlcigpIG92ZXJyaWRlOwogI2VuZGlmCiB9OwogCkBAIC0zMjQsNyArMzI0
LDcgQEAgY2xhc3MgVGVzdERPTUpJVExvbmdMb25nTnVsbGFibGVBdHRyRE9NSklUIDogcHVibGlj
IEpTQzo6RE9NSklUOjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RET01KSVRMb25nTG9uZ051bGxh
YmxlQXR0ckRPTUpJVCgpOwogI2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQ
YXRjaHBvaW50PiBjaGVja0RPTSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2Fs
bERPTVBhdGNocG9pbnQ+IGNhbGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6
OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5k
aWYKIH07CiAKQEAgLTMzNCw3ICszMzQsNyBAQCBjbGFzcyBUZXN0RE9NSklUVW5zaWduZWRMb25n
TG9uZ051bGxhYmxlQXR0ckRPTUpJVCA6IHB1YmxpYyBKU0M6OkRPTUpJVDo6R2V0dGVyUwogICAg
IFRlc3RET01KSVRVbnNpZ25lZExvbmdMb25nTnVsbGFibGVBdHRyRE9NSklUKCk7CiAjaWYgRU5B
QkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkgb3Zl
cnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2FsbERPTSgp
IG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+
IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAtMzQ0LDcgKzM0NCw3
IEBAIGNsYXNzIFRlc3RET01KSVRGbG9hdE51bGxhYmxlQXR0ckRPTUpJVCA6IHB1YmxpYyBKU0M6
OkRPTUpJVDo6R2V0dGVyU2V0dGVyIHsKICAgICBUZXN0RE9NSklURmxvYXROdWxsYWJsZUF0dHJE
T01KSVQoKTsKICNpZiBFTkFCTEUoSklUKQogICAgIFJlZjxKU0M6OkRPTUpJVDo6UGF0Y2hwb2lu
dD4gY2hlY2tET00oKSBvdmVycmlkZTsKLSAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01QYXRj
aHBvaW50PiBjYWxsRE9NKCkgb3ZlcnJpZGU7CisgICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9N
R2V0dGVyUGF0Y2hwb2ludD4gY2FsbERPTUdldHRlcigpIG92ZXJyaWRlOwogI2VuZGlmCiB9Owog
CkBAIC0zNTQsNyArMzU0LDcgQEAgY2xhc3MgVGVzdERPTUpJVFVucmVzdHJpY3RlZEZsb2F0TnVs
bGFibGVBdHRyRE9NSklUIDogcHVibGljIEpTQzo6RE9NSklUOjpHZXR0ZXIKICAgICBUZXN0RE9N
SklUVW5yZXN0cmljdGVkRmxvYXROdWxsYWJsZUF0dHJET01KSVQoKTsKICNpZiBFTkFCTEUoSklU
KQogICAgIFJlZjxKU0M6OkRPTUpJVDo6UGF0Y2hwb2ludD4gY2hlY2tET00oKSBvdmVycmlkZTsK
LSAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01QYXRjaHBvaW50PiBjYWxsRE9NKCkgb3ZlcnJp
ZGU7CisgICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gY2FsbERP
TUdldHRlcigpIG92ZXJyaWRlOwogI2VuZGlmCiB9OwogCkBAIC0zNjQsNyArMzY0LDcgQEAgY2xh
c3MgVGVzdERPTUpJVERvdWJsZU51bGxhYmxlQXR0ckRPTUpJVCA6IHB1YmxpYyBKU0M6OkRPTUpJ
VDo6R2V0dGVyU2V0dGVyIHsKICAgICBUZXN0RE9NSklURG91YmxlTnVsbGFibGVBdHRyRE9NSklU
KCk7CiAjaWYgRU5BQkxFKEpJVCkKICAgICBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNo
ZWNrRE9NKCkgb3ZlcnJpZGU7Ci0gICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2lu
dD4gY2FsbERPTSgpIG92ZXJyaWRlOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRl
clBhdGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBvdmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAt
Mzc0LDcgKzM3NCw3IEBAIGNsYXNzIFRlc3RET01KSVRVbnJlc3RyaWN0ZWREb3VibGVOdWxsYWJs
ZUF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6OkdldHRlCiAgICAgVGVzdERPTUpJVFVu
cmVzdHJpY3RlZERvdWJsZU51bGxhYmxlQXR0ckRPTUpJVCgpOwogI2lmIEVOQUJMRShKSVQpCiAg
ICAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBjaGVja0RPTSgpIG92ZXJyaWRlOwotICAg
IFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IGNhbGxET00oKSBvdmVycmlkZTsK
KyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBjYWxsRE9NR2V0
dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIH07CiAKQEAgLTM4NCw3ICszODQsNyBAQCBjbGFzcyBU
ZXN0RE9NSklURG9tU3RyaW5nTnVsbGFibGVBdHRyRE9NSklUIDogcHVibGljIEpTQzo6RE9NSklU
OjpHZXR0ZXJTZXR0ZXIgewogICAgIFRlc3RET01KSVREb21TdHJpbmdOdWxsYWJsZUF0dHJET01K
SVQoKTsKICNpZiBFTkFCTEUoSklUKQogICAgIFJlZjxKU0M6OkRPTUpJVDo6UGF0Y2hwb2ludD4g
Y2hlY2tET00oKSBvdmVycmlkZTsKLSAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01QYXRjaHBv
aW50PiBjYWxsRE9NKCkgb3ZlcnJpZGU7CisgICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0
dGVyUGF0Y2hwb2ludD4gY2FsbERPTUdldHRlcigpIG92ZXJyaWRlOwogI2VuZGlmCiB9OwogCkBA
IC0zOTQsNyArMzk0LDcgQEAgY2xhc3MgVGVzdERPTUpJVEJ5dGVTdHJpbmdOdWxsYWJsZUF0dHJE
T01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6OkdldHRlclNldHRlcgogICAgIFRlc3RET01KSVRC
eXRlU3RyaW5nTnVsbGFibGVBdHRyRE9NSklUKCk7CiAjaWYgRU5BQkxFKEpJVCkKICAgICBSZWY8
SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IGNoZWNrRE9NKCkgb3ZlcnJpZGU7Ci0gICAgUmVmPEpT
Qzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gY2FsbERPTSgpIG92ZXJyaWRlOworICAgIFJl
ZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+IGNhbGxET01HZXR0ZXIoKSBv
dmVycmlkZTsKICNlbmRpZgogfTsKIApAQCAtNDA0LDcgKzQwNCw3IEBAIGNsYXNzIFRlc3RET01K
SVRVc3ZTdHJpbmdOdWxsYWJsZUF0dHJET01KSVQgOiBwdWJsaWMgSlNDOjpET01KSVQ6OkdldHRl
clNldHRlciB7CiAgICAgVGVzdERPTUpJVFVzdlN0cmluZ051bGxhYmxlQXR0ckRPTUpJVCgpOwog
I2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBjaGVja0RP
TSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IGNh
bGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRj
aHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIH07CiAKQEAgLTQxNCw3
ICs0MTQsNyBAQCBjbGFzcyBUZXN0RE9NSklUTm9kZU51bGxhYmxlQXR0ckRPTUpJVCA6IHB1Ymxp
YyBKU0M6OkRPTUpJVDo6R2V0dGVyU2V0dGVyIHsKICAgICBUZXN0RE9NSklUTm9kZU51bGxhYmxl
QXR0ckRPTUpJVCgpOwogI2lmIEVOQUJMRShKSVQpCiAgICAgUmVmPEpTQzo6RE9NSklUOjpQYXRj
aHBvaW50PiBjaGVja0RPTSgpIG92ZXJyaWRlOwotICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERP
TVBhdGNocG9pbnQ+IGNhbGxET00oKSBvdmVycmlkZTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNh
bGxET01HZXR0ZXJQYXRjaHBvaW50PiBjYWxsRE9NR2V0dGVyKCkgb3ZlcnJpZGU7CiAjZW5kaWYK
IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9KU0RvY3VtZW50RE9NSklU
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9KU0RvY3VtZW50RE9NSklULmNwcAppbmRleCA3
NDljNmRkOTRiZjIwYzkxNTVhMjkzZDY0YWNlNmQzYzMzZDUwZTYwLi45YjQ4ZDlmZGE1OGE2MmQw
N2ZiMjNhYWI0NTZiZjk0YjdlZDhmYzJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb21q
aXQvSlNEb2N1bWVudERPTUpJVC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9taml0L0pTRG9j
dW1lbnRET01KSVQuY3BwCkBAIC00NiwxMCArNDYsMTAgQEAgUmVmPEpTQzo6RE9NSklUOjpQYXRj
aHBvaW50PiBEb2N1bWVudERvY3VtZW50RWxlbWVudERPTUpJVDo6Y2hlY2tET00oKQogICAgIHJl
dHVybiBET01KSVQ6OmNoZWNrRE9NPERvY3VtZW50PigpOwogfQogCi1SZWY8SlNDOjpET01KSVQ6
OkNhbGxET01QYXRjaHBvaW50PiBEb2N1bWVudERvY3VtZW50RWxlbWVudERPTUpJVDo6Y2FsbERP
TSgpCitSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBEb2N1bWVudERv
Y3VtZW50RWxlbWVudERPTUpJVDo6Y2FsbERPTUdldHRlcigpCiB7CiAgICAgY29uc3QgYXV0byYg
aGVhcCA9IERPTUpJVDo6QWJzdHJhY3RIZWFwUmVwb3NpdG9yeTo6c2hhcmVkKCk7Ci0gICAgUmVm
PEpTQzo6RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gcGF0Y2hwb2ludCA9IEpTQzo6RE9NSklU
OjpDYWxsRE9NUGF0Y2hwb2ludDo6Y3JlYXRlKCk7CisgICAgUmVmPEpTQzo6RE9NSklUOjpDYWxs
RE9NR2V0dGVyUGF0Y2hwb2ludD4gcGF0Y2hwb2ludCA9IEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0
dGVyUGF0Y2hwb2ludDo6Y3JlYXRlKCk7CiAgICAgcGF0Y2hwb2ludC0+bnVtR1BTY3JhdGNoUmVn
aXN0ZXJzID0gMTsKICAgICBwYXRjaHBvaW50LT5zZXRHZW5lcmF0b3IoWz1dKENDYWxsSGVscGVy
cyYgaml0LCBKU0M6OkRPTUpJVDo6UGF0Y2hwb2ludFBhcmFtcyYgcGFyYW1zKSB7CiAgICAgICAg
IEpTVmFsdWVSZWdzIHJlc3VsdCA9IHBhcmFtc1swXS5qc1ZhbHVlUmVncygpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9taml0L0pTTm9kZURPTUpJVC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb21qaXQvSlNOb2RlRE9NSklULmNwcAppbmRleCBjMDUxNjVlYzNmMjM1Y2ViNDBhNjdjZjAx
Njk1MTJjYWY2MzZjM2RjLi4xZDc5MDFlYzQxZDdhY2VmMWQwZDc4ZjYxMzI2ZmJlOGExM2E5MWJm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb21qaXQvSlNOb2RlRE9NSklULmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb21qaXQvSlNOb2RlRE9NSklULmNwcApAQCAtNDQsOSArNDQsOSBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBlbnVtIGNsYXNzIElzQ29udGFpbmVyR3VhcmRSZXF1aXJl
bWVudCB7IFJlcXVpcmVkLCBOb3RSZXF1aXJlZCB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBXcmFw
cGVkTm9kZT4KLXN0YXRpYyBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01QYXRjaHBvaW50PiBjcmVh
dGVDYWxsRE9NRm9yT2Zmc2V0QWNjZXNzKHB0cmRpZmZfdCBvZmZzZXQsIElzQ29udGFpbmVyR3Vh
cmRSZXF1aXJlbWVudCBpc0NvbnRhaW5lckd1YXJkUmVxdWlyZW1lbnQpCitzdGF0aWMgUmVmPEpT
Qzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gY3JlYXRlQ2FsbERPTUdldHRlckZv
ck9mZnNldEFjY2VzcyhwdHJkaWZmX3Qgb2Zmc2V0LCBJc0NvbnRhaW5lckd1YXJkUmVxdWlyZW1l
bnQgaXNDb250YWluZXJHdWFyZFJlcXVpcmVtZW50KQogewotICAgIFJlZjxKU0M6OkRPTUpJVDo6
Q2FsbERPTVBhdGNocG9pbnQ+IHBhdGNocG9pbnQgPSBKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNo
cG9pbnQ6OmNyZWF0ZSgpOworICAgIFJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNo
cG9pbnQ+IHBhdGNocG9pbnQgPSBKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ6
OmNyZWF0ZSgpOwogICAgIHBhdGNocG9pbnQtPm51bUdQU2NyYXRjaFJlZ2lzdGVycyA9IDE7CiAg
ICAgcGF0Y2hwb2ludC0+c2V0R2VuZXJhdG9yKFs9XShDQ2FsbEhlbHBlcnMmIGppdCwgSlNDOjpE
T01KSVQ6OlBhdGNocG9pbnRQYXJhbXMmIHBhcmFtcykgewogICAgICAgICBKU1ZhbHVlUmVncyBy
ZXN1bHQgPSBwYXJhbXNbMF0uanNWYWx1ZVJlZ3MoKTsKQEAgLTgxLDEwICs4MSwxMCBAQCBSZWY8
SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IE5vZGVGaXJzdENoaWxkRE9NSklUOjpjaGVja0RPTSgp
CiAgICAgcmV0dXJuIERPTUpJVDo6Y2hlY2tET008Tm9kZT4oKTsKIH0KIAotUmVmPEpTQzo6RE9N
SklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gTm9kZUZpcnN0Q2hpbGRET01KSVQ6OmNhbGxET00oKQor
UmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gTm9kZUZpcnN0Q2hpbGRE
T01KSVQ6OmNhbGxET01HZXR0ZXIoKQogewogICAgIGNvbnN0IGF1dG8mIGhlYXAgPSBET01KSVQ6
OkFic3RyYWN0SGVhcFJlcG9zaXRvcnk6OnNoYXJlZCgpOwotICAgIGF1dG8gcGF0Y2hwb2ludCA9
IGNyZWF0ZUNhbGxET01Gb3JPZmZzZXRBY2Nlc3M8Tm9kZT4oQ0FTVF9PRkZTRVQoTm9kZSosIENv
bnRhaW5lck5vZGUqKSArIENvbnRhaW5lck5vZGU6OmZpcnN0Q2hpbGRNZW1vcnlPZmZzZXQoKSwg
SXNDb250YWluZXJHdWFyZFJlcXVpcmVtZW50OjpSZXF1aXJlZCk7CisgICAgYXV0byBwYXRjaHBv
aW50ID0gY3JlYXRlQ2FsbERPTUdldHRlckZvck9mZnNldEFjY2VzczxOb2RlPihDQVNUX09GRlNF
VChOb2RlKiwgQ29udGFpbmVyTm9kZSopICsgQ29udGFpbmVyTm9kZTo6Zmlyc3RDaGlsZE1lbW9y
eU9mZnNldCgpLCBJc0NvbnRhaW5lckd1YXJkUmVxdWlyZW1lbnQ6OlJlcXVpcmVkKTsKICAgICBw
YXRjaHBvaW50LT5lZmZlY3QgPSBKU0M6OkRPTUpJVDo6RWZmZWN0Ojpmb3JEZWYoaGVhcC5Ob2Rl
X2ZpcnN0Q2hpbGQpOwogICAgIHJldHVybiBwYXRjaHBvaW50OwogfQpAQCAtOTQsMTAgKzk0LDEw
IEBAIFJlZjxKU0M6OkRPTUpJVDo6UGF0Y2hwb2ludD4gTm9kZUxhc3RDaGlsZERPTUpJVDo6Y2hl
Y2tET00oKQogICAgIHJldHVybiBET01KSVQ6OmNoZWNrRE9NPE5vZGU+KCk7CiB9CiAKLVJlZjxK
U0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IE5vZGVMYXN0Q2hpbGRET01KSVQ6OmNhbGxE
T00oKQorUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gTm9kZUxhc3RD
aGlsZERPTUpJVDo6Y2FsbERPTUdldHRlcigpCiB7CiAgICAgY29uc3QgYXV0byYgaGVhcCA9IERP
TUpJVDo6QWJzdHJhY3RIZWFwUmVwb3NpdG9yeTo6c2hhcmVkKCk7Ci0gICAgYXV0byBwYXRjaHBv
aW50ID0gY3JlYXRlQ2FsbERPTUZvck9mZnNldEFjY2VzczxOb2RlPihDQVNUX09GRlNFVChOb2Rl
KiwgQ29udGFpbmVyTm9kZSopICsgQ29udGFpbmVyTm9kZTo6bGFzdENoaWxkTWVtb3J5T2Zmc2V0
KCksIElzQ29udGFpbmVyR3VhcmRSZXF1aXJlbWVudDo6UmVxdWlyZWQpOworICAgIGF1dG8gcGF0
Y2hwb2ludCA9IGNyZWF0ZUNhbGxET01HZXR0ZXJGb3JPZmZzZXRBY2Nlc3M8Tm9kZT4oQ0FTVF9P
RkZTRVQoTm9kZSosIENvbnRhaW5lck5vZGUqKSArIENvbnRhaW5lck5vZGU6Omxhc3RDaGlsZE1l
bW9yeU9mZnNldCgpLCBJc0NvbnRhaW5lckd1YXJkUmVxdWlyZW1lbnQ6OlJlcXVpcmVkKTsKICAg
ICBwYXRjaHBvaW50LT5lZmZlY3QgPSBKU0M6OkRPTUpJVDo6RWZmZWN0Ojpmb3JEZWYoaGVhcC5O
b2RlX2xhc3RDaGlsZCk7CiAgICAgcmV0dXJuIHBhdGNocG9pbnQ7CiB9CkBAIC0xMDcsMTAgKzEw
NywxMCBAQCBSZWY8SlNDOjpET01KSVQ6OlBhdGNocG9pbnQ+IE5vZGVOZXh0U2libGluZ0RPTUpJ
VDo6Y2hlY2tET00oKQogICAgIHJldHVybiBET01KSVQ6OmNoZWNrRE9NPE5vZGU+KCk7CiB9CiAK
LVJlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IE5vZGVOZXh0U2libGluZ0RPTUpJ
VDo6Y2FsbERPTSgpCitSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBO
b2RlTmV4dFNpYmxpbmdET01KSVQ6OmNhbGxET01HZXR0ZXIoKQogewogICAgIGNvbnN0IGF1dG8m
IGhlYXAgPSBET01KSVQ6OkFic3RyYWN0SGVhcFJlcG9zaXRvcnk6OnNoYXJlZCgpOwotICAgIGF1
dG8gcGF0Y2hwb2ludCA9IGNyZWF0ZUNhbGxET01Gb3JPZmZzZXRBY2Nlc3M8Tm9kZT4oTm9kZTo6
bmV4dFNpYmxpbmdNZW1vcnlPZmZzZXQoKSwgSXNDb250YWluZXJHdWFyZFJlcXVpcmVtZW50OjpO
b3RSZXF1aXJlZCk7CisgICAgYXV0byBwYXRjaHBvaW50ID0gY3JlYXRlQ2FsbERPTUdldHRlckZv
ck9mZnNldEFjY2VzczxOb2RlPihOb2RlOjpuZXh0U2libGluZ01lbW9yeU9mZnNldCgpLCBJc0Nv
bnRhaW5lckd1YXJkUmVxdWlyZW1lbnQ6Ok5vdFJlcXVpcmVkKTsKICAgICBwYXRjaHBvaW50LT5l
ZmZlY3QgPSBKU0M6OkRPTUpJVDo6RWZmZWN0Ojpmb3JEZWYoaGVhcC5Ob2RlX25leHRTaWJsaW5n
KTsKICAgICByZXR1cm4gcGF0Y2hwb2ludDsKIH0KQEAgLTEyMCwxMCArMTIwLDEwIEBAIFJlZjxK
U0M6OkRPTUpJVDo6UGF0Y2hwb2ludD4gTm9kZVByZXZpb3VzU2libGluZ0RPTUpJVDo6Y2hlY2tE
T00oKQogICAgIHJldHVybiBET01KSVQ6OmNoZWNrRE9NPE5vZGU+KCk7CiB9CiAKLVJlZjxKU0M6
OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IE5vZGVQcmV2aW91c1NpYmxpbmdET01KSVQ6OmNh
bGxET00oKQorUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gTm9kZVBy
ZXZpb3VzU2libGluZ0RPTUpJVDo6Y2FsbERPTUdldHRlcigpCiB7CiAgICAgY29uc3QgYXV0byYg
aGVhcCA9IERPTUpJVDo6QWJzdHJhY3RIZWFwUmVwb3NpdG9yeTo6c2hhcmVkKCk7Ci0gICAgYXV0
byBwYXRjaHBvaW50ID0gY3JlYXRlQ2FsbERPTUZvck9mZnNldEFjY2VzczxOb2RlPihOb2RlOjpw
cmV2aW91c1NpYmxpbmdNZW1vcnlPZmZzZXQoKSwgSXNDb250YWluZXJHdWFyZFJlcXVpcmVtZW50
OjpOb3RSZXF1aXJlZCk7CisgICAgYXV0byBwYXRjaHBvaW50ID0gY3JlYXRlQ2FsbERPTUdldHRl
ckZvck9mZnNldEFjY2VzczxOb2RlPihOb2RlOjpwcmV2aW91c1NpYmxpbmdNZW1vcnlPZmZzZXQo
KSwgSXNDb250YWluZXJHdWFyZFJlcXVpcmVtZW50OjpOb3RSZXF1aXJlZCk7CiAgICAgcGF0Y2hw
b2ludC0+ZWZmZWN0ID0gSlNDOjpET01KSVQ6OkVmZmVjdDo6Zm9yRGVmKGhlYXAuTm9kZV9wcmV2
aW91c1NpYmxpbmcpOwogICAgIHJldHVybiBwYXRjaHBvaW50OwogfQpAQCAtMTMzLDEwICsxMzMs
MTAgQEAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBOb2RlUGFyZW50Tm9kZURPTUpJVDo6
Y2hlY2tET00oKQogICAgIHJldHVybiBET01KSVQ6OmNoZWNrRE9NPE5vZGU+KCk7CiB9CiAKLVJl
ZjxKU0M6OkRPTUpJVDo6Q2FsbERPTVBhdGNocG9pbnQ+IE5vZGVQYXJlbnROb2RlRE9NSklUOjpj
YWxsRE9NKCkKK1JlZjxKU0M6OkRPTUpJVDo6Q2FsbERPTUdldHRlclBhdGNocG9pbnQ+IE5vZGVQ
YXJlbnROb2RlRE9NSklUOjpjYWxsRE9NR2V0dGVyKCkKIHsKICAgICBjb25zdCBhdXRvJiBoZWFw
ID0gRE9NSklUOjpBYnN0cmFjdEhlYXBSZXBvc2l0b3J5OjpzaGFyZWQoKTsKLSAgICBhdXRvIHBh
dGNocG9pbnQgPSBjcmVhdGVDYWxsRE9NRm9yT2Zmc2V0QWNjZXNzPENvbnRhaW5lck5vZGU+KE5v
ZGU6OnBhcmVudE5vZGVNZW1vcnlPZmZzZXQoKSwgSXNDb250YWluZXJHdWFyZFJlcXVpcmVtZW50
OjpOb3RSZXF1aXJlZCk7CisgICAgYXV0byBwYXRjaHBvaW50ID0gY3JlYXRlQ2FsbERPTUdldHRl
ckZvck9mZnNldEFjY2VzczxDb250YWluZXJOb2RlPihOb2RlOjpwYXJlbnROb2RlTWVtb3J5T2Zm
c2V0KCksIElzQ29udGFpbmVyR3VhcmRSZXF1aXJlbWVudDo6Tm90UmVxdWlyZWQpOwogICAgIHBh
dGNocG9pbnQtPmVmZmVjdCA9IEpTQzo6RE9NSklUOjpFZmZlY3Q6OmZvckRlZihoZWFwLk5vZGVf
cGFyZW50Tm9kZSk7CiAgICAgcmV0dXJuIHBhdGNocG9pbnQ7CiB9CkBAIC0xNDYsOSArMTQ2LDkg
QEAgUmVmPEpTQzo6RE9NSklUOjpQYXRjaHBvaW50PiBOb2RlTm9kZVR5cGVET01KSVQ6OmNoZWNr
RE9NKCkKICAgICByZXR1cm4gRE9NSklUOjpjaGVja0RPTTxOb2RlPigpOwogfQogCi1SZWY8SlND
OjpET01KSVQ6OkNhbGxET01QYXRjaHBvaW50PiBOb2RlTm9kZVR5cGVET01KSVQ6OmNhbGxET00o
KQorUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0Y2hwb2ludD4gTm9kZU5vZGVUeXBl
RE9NSklUOjpjYWxsRE9NR2V0dGVyKCkKIHsKLSAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01Q
YXRjaHBvaW50PiBwYXRjaHBvaW50ID0gSlNDOjpET01KSVQ6OkNhbGxET01QYXRjaHBvaW50Ojpj
cmVhdGUoKTsKKyAgICBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBw
YXRjaHBvaW50ID0gSlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50OjpjcmVhdGUo
KTsKICAgICBwYXRjaHBvaW50LT5lZmZlY3QgPSBKU0M6OkRPTUpJVDo6RWZmZWN0Ojpmb3JQdXJl
KCk7CiAgICAgcGF0Y2hwb2ludC0+cmVxdWlyZUdsb2JhbE9iamVjdCA9IGZhbHNlOwogICAgIHBh
dGNocG9pbnQtPnNldEdlbmVyYXRvcihbPV0oQ0NhbGxIZWxwZXJzJiBqaXQsIEpTQzo6RE9NSklU
OjpQYXRjaHBvaW50UGFyYW1zJiBwYXJhbXMpIHsKQEAgLTE2NywxMCArMTY3LDEwIEBAIFJlZjxK
U0M6OkRPTUpJVDo6UGF0Y2hwb2ludD4gTm9kZU93bmVyRG9jdW1lbnRET01KSVQ6OmNoZWNrRE9N
KCkKICAgICByZXR1cm4gRE9NSklUOjpjaGVja0RPTTxOb2RlPigpOwogfQogCi1SZWY8SlNDOjpE
T01KSVQ6OkNhbGxET01QYXRjaHBvaW50PiBOb2RlT3duZXJEb2N1bWVudERPTUpJVDo6Y2FsbERP
TSgpCitSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJQYXRjaHBvaW50PiBOb2RlT3duZXJE
b2N1bWVudERPTUpJVDo6Y2FsbERPTUdldHRlcigpCiB7CiAgICAgY29uc3QgYXV0byYgaGVhcCA9
IERPTUpJVDo6QWJzdHJhY3RIZWFwUmVwb3NpdG9yeTo6c2hhcmVkKCk7Ci0gICAgUmVmPEpTQzo6
RE9NSklUOjpDYWxsRE9NUGF0Y2hwb2ludD4gcGF0Y2hwb2ludCA9IEpTQzo6RE9NSklUOjpDYWxs
RE9NUGF0Y2hwb2ludDo6Y3JlYXRlKCk7CisgICAgUmVmPEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0
dGVyUGF0Y2hwb2ludD4gcGF0Y2hwb2ludCA9IEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyUGF0
Y2hwb2ludDo6Y3JlYXRlKCk7CiAgICAgcGF0Y2hwb2ludC0+bnVtR1BTY3JhdGNoUmVnaXN0ZXJz
ID0gMTsKICAgICBwYXRjaHBvaW50LT5zZXRHZW5lcmF0b3IoWz1dKENDYWxsSGVscGVycyYgaml0
LCBKU0M6OkRPTUpJVDo6UGF0Y2hwb2ludFBhcmFtcyYgcGFyYW1zKSB7CiAgICAgICAgIEpTVmFs
dWVSZWdzIHJlc3VsdCA9IHBhcmFtc1swXS5qc1ZhbHVlUmVncygpOwo=
</data>
<flag name="review"
          id="316144"
          type_id="1"
          status="+"
          setter="keith_miller"
    />
          </attachment>
      

    </bug>

</bugzilla>