<?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>194048</bug_id>
          
          <creation_ts>2019-01-30 14:32:19 -0800</creation_ts>
          <short_desc>[WebGPU] Support GPUDepthStencilStateDescriptor</short_desc>
          <delta_ts>2019-01-30 18:15:14 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebGPU</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Justin Fan">justin_fan</reporter>
          <assigned_to name="Justin Fan">justin_fan</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1500192</commentid>
    <comment_count>0</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-01-30 14:32:19 -0800</bug_when>
    <thetext>[WebGPU] Support GPUDepthStencilStateDescriptor</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1500194</commentid>
    <comment_count>1</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-01-30 14:32:56 -0800</bug_when>
    <thetext>&lt;rdar://problem/46289645&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1500208</commentid>
    <comment_count>2</comment_count>
      <attachid>360626</attachid>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-01-30 14:47:52 -0800</bug_when>
    <thetext>Created attachment 360626
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1500214</commentid>
    <comment_count>3</comment_count>
      <attachid>360626</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-01-30 14:56:35 -0800</bug_when>
    <thetext>Comment on attachment 360626
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=360626&amp;action=review

&gt; Source/WebCore/Modules/webgpu/WebGPUCompareFunction.h:34
&gt; +using WebGPUCompareFunction = GPUCompareFunction;

I wonder if we even need the ImplementedAs in this case, since we&apos;re actually using exactly the same thing.

&gt; Source/WebCore/Modules/webgpu/WebGPUDepthStencilStateDescriptor.h:34
&gt; +using WebGPUDepthStencilStateDescriptor = GPUDepthStencilStateDescriptor;

Same here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1500255</commentid>
    <comment_count>4</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-01-30 16:07:43 -0800</bug_when>
    <thetext>(In reply to Dean Jackson from comment #3)
&gt; Comment on attachment 360626 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=360626&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/webgpu/WebGPUCompareFunction.h:34
&gt; &gt; +using WebGPUCompareFunction = GPUCompareFunction;
&gt; 
&gt; I wonder if we even need the ImplementedAs in this case, since we&apos;re
&gt; actually using exactly the same thing.
&gt; 
&gt; &gt; Source/WebCore/Modules/webgpu/WebGPUDepthStencilStateDescriptor.h:34
&gt; &gt; +using WebGPUDepthStencilStateDescriptor = GPUDepthStencilStateDescriptor;
&gt; 
&gt; Same here.


Same. I&apos;m all for just using the GPU* versions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1500299</commentid>
    <comment_count>5</comment_count>
      <attachid>360650</attachid>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-01-30 17:03:39 -0800</bug_when>
    <thetext>Created attachment 360650
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1500336</commentid>
    <comment_count>6</comment_count>
      <attachid>360650</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-01-30 18:15:12 -0800</bug_when>
    <thetext>Comment on attachment 360650
Patch for landing

Clearing flags on attachment: 360650

Committed r240748: &lt;https://trac.webkit.org/changeset/240748&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1500337</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-01-30 18:15:14 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>360626</attachid>
            <date>2019-01-30 14:47:52 -0800</date>
            <delta_ts>2019-01-30 17:03:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-194048-20190130144751.patch</filename>
            <type>text/plain</type>
            <size>34971</size>
            <attacher name="Justin Fan">justin_fan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQwNjg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWVkMzE4NGVmYzI4OTdk
YmU5YThjZmRkMGIxMzExNzZkNmU1YTZlZS4uMTIwZjJkMDMwNjdjZmM4YmYwODI2NjY2MzI2YjMx
ZTA3OTM4YTAxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDE5LTAxLTMwICBKdXN0
aW4gRmFuICA8anVzdGluX2ZhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkdQVV0gU3VwcG9y
dCBHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NDA0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBHUFVEZXB0aFN0ZW5jaWxTdGF0ZURl
c2NyaXB0b3IgdG8gc3BlY2lmeSBhIE1UTERlcHRoU3RlbmNpbFN0YXRlIHRoYXQgY2FuIGJlIHNl
dCBvbiB0aGUgY29tbWFuZCBlbmNvZGVyLgorCisgICAgICAgIEV4aXN0aW5nIHRlc3RzIGNvdmVy
IGNoYW5nZXMgdG8gcGlwZWxpbmUuIEJlaGF2aW9yIGRvZXMgbm90IGNoYW5nZSBhcyBEZXB0aFN0
ZW5jaWxTdGF0ZSBoYXMgbm8gZWZmZWN0IAorICAgICAgICB3aXRob3V0IGEgZGVwdGggdGV4dHVy
ZSBhdHRhY2hlZC4KKworICAgICAgICBOZXcgaW50ZXJmYWNlIGZpbGVzIGFkZGVkOgorICAgICAg
ICAqIE1vZHVsZXMvd2ViZ3B1L0dQVUNvbXBhcmVGdW5jdGlvbi5pZGw6CisgICAgICAgICogTW9k
dWxlcy93ZWJncHUvR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yLmlkbDoKKyAgICAgICAg
KiBNb2R1bGVzL3dlYmdwdS9XZWJHUFVDb21wYXJlRnVuY3Rpb24uaDoKKyAgICAgICAgKiBNb2R1
bGVzL3dlYmdwdS9XZWJHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVQ29tcGFyZUZ1bmN0aW9uLmg6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5oOgor
CisgICAgICAgIE1vZGlmaWNhdGlvbnM6CisgICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BV
RGV2aWNlLmNwcDogSW5jbHVkZSBkZXB0aFN0ZW5jaWxTdGF0ZSB3aGVuIGNyZWF0aW5nIHBpcGVs
aW5lLgorICAgICAgICAoV2ViQ29yZTo6V2ViR1BVRGV2aWNlOjpjcmVhdGVSZW5kZXJQaXBlbGlu
ZSBjb25zdCk6CisgICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGlwZWxpbmVE
ZXNjcmlwdG9yLmg6IEFkZCBkZXB0aFN0ZW5jaWxTdGF0ZSB0byB0aGUgZGVzY3JpcHRvci4KKyAg
ICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IuaWRs
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVUmVuZGVyUGlwZWxp
bmUuaDogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpHUFVSZW5kZXJQaXBlbGluZTo6ZGVwdGhT
dGVuY2lsU3RhdGUgY29uc3QpOiBHZXR0ZXIuCisgICAgICAgIChXZWJDb3JlOjpHUFVSZW5kZXJQ
aXBlbGluZTo6cGxhdGZvcm1SZW5kZXJQaXBlbGluZSBjb25zdCk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5oOiBVcGRhdGUgY29u
c3RydWN0b3IgdG8gdGFrZSBkZXB0aFN0ZW5jaWxTdGF0ZS4KKyAgICAgICAgKFdlYkNvcmU6OkdQ
VVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvcjo6R1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVUmVuZGVyUGFzc0VuY29k
ZXJNZXRhbC5tbTogU2V0dGluZyBwaXBlbGluZSBhbHNvIHNldHMgdGhlIGluY2x1ZGVkIGRlcHRo
U3RlbmNpbFN0YXRlLgorICAgICAgICAoV2ViQ29yZTo6R1BVUmVuZGVyUGFzc0VuY29kZXI6OnNl
dFBpcGVsaW5lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVUmVu
ZGVyUGlwZWxpbmVNZXRhbC5tbTogQ29udmVydCBEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3Ig
dG8gTVRMRGVwdGhTdGVuY2lsU3RhdGUuCisgICAgICAgIChXZWJDb3JlOjp2YWxpZGF0ZUFuZENv
bnZlcnREZXB0aENvbXBhcmVGdW5jdGlvblRvTXRsKToKKyAgICAgICAgKFdlYkNvcmU6OnRyeUNy
ZWF0ZU10bERlcHRoU3RlbmNpbFN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OnRyeUNyZWF0ZU10
bFJlbmRlclBpcGVsaW5lU3RhdGUpOiBSZWZhY3RvcmVkIGxvZ2ljIG91dCBvZiBHUFVSZW5kZXJQ
aXBlbGluZTo6Y3JlYXRlLgorICAgICAgICAoV2ViQ29yZTo6R1BVUmVuZGVyUGlwZWxpbmU6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpHUFVSZW5kZXJQaXBlbGluZTo6R1BVUmVuZGVyUGlw
ZWxpbmUpOgorCisgICAgICAgIEFkZGVkIHN5bWJvbHMgZm9yIENvbXBhcmVGdW5jdGlvbiwgRGVw
dGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yIHRvIHRoZSBwcm9qZWN0OgorICAgICAgICAqIENNYWtl
TGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogU291
cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
CiAyMDE5LTAxLTI5ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJFR1JFU1NJT04ocjI0MDU1Myk6IFtpT1NdIENyYXNoIGluIFNjcm9sbGluZ1RyZWU6
OnVwZGF0ZVRyZWVGcm9tU3RhdGVOb2RlIHdoZW4gYXR0ZW1wdGluZyB0byBsb2cgaW4gdG8gaWNs
b3VkLmNvbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA0ODJjZjZmZDU5Y2MzOWFkMzEyNjgwMTgy
ZjgwN2Y4Njk2Njk1NzAwLi5kMzU1ZTdiMmEwNjk1YzMxNzVjM2RhZDZlNjU1MjYxMzdlZTJjMTFh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtNDYyLDYgKzQ2Miw4IEBAIHNldChXZWJDb3JlX05P
Tl9TVkdfSURMX0ZJTEVTCiAgICAgTW9kdWxlcy93ZWJkcml2ZXIvTmF2aWdhdG9yV2ViRHJpdmVy
LmlkbAogCiAgICAgTW9kdWxlcy93ZWJncHUvRE9NV2luZG93V2ViR1BVLmlkbAorICAgIE1vZHVs
ZXMvd2ViZ3B1L0dQVUNvbXBhcmVGdW5jdGlvbi5pZGwKKyAgICBNb2R1bGVzL3dlYmdwdS9HUFVE
ZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaWRsCiAgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BV
LmlkbAogICAgIE1vZHVsZXMvd2ViZ3B1L1dlYkdQVUFkYXB0ZXIuaWRsCiAgICAgTW9kdWxlcy93
ZWJncHUvV2ViR1BVQWRhcHRlckRlc2NyaXB0b3IuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZQppbmRleCBjZDY3NTc2NjRlZWM1ZTBjNjA5YWIyZjY5MTIwYzg0YWFlOWZkNjg3Li4wMWQ5
M2VlODlhZjBjOTRiZGEyY2Y1MWFhYjk3OWU2NDAxY2I1ZmFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLm1ha2UKQEAgLTM3Miw2ICszNzIsOCBAQCBKU19CSU5ESU5HX0lETFMgPSBcCiAgICAg
JChXZWJDb3JlKS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFj
ay5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJkcml2ZXIvTmF2aWdhdG9yV2ViRHJp
dmVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9ET01XaW5kb3dXZWJHUFUu
aWRsIFwKKyAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L0dQVUNvbXBhcmVGdW5jdGlvbi5p
ZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJncHUvR1BVRGVwdGhTdGVuY2lsU3RhdGVE
ZXNjcmlwdG9yLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFUuaWRs
IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUFkYXB0ZXIuaWRsIFwKICAg
ICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUFkYXB0ZXJEZXNjcmlwdG9yLmlkbCBc
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9HUFVDb21wYXJlRnVu
Y3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvR1BVQ29tcGFyZUZ1bmN0
aW9uLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5lZjlhNzI2MTlhNzY2YjRiM2Y1OGU2NjhlMjk2NmJkNDIzNWFh
MWNkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvR1BV
Q29tcGFyZUZ1bmN0aW9uLmlkbApAQCAtMCwwICsxLDQwIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKy8vIGh0dHBz
Oi8vZ2l0aHViLmNvbS9ncHV3ZWIvZ3B1d2ViL2Jsb2IvbWFzdGVyL2Rlc2lnbi9za2V0Y2gud2Vi
aWRsCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJHUFUsCisgICAgRW5hYmxlZEF0UnVudGltZT1X
ZWJHUFUsCisgICAgSW1wbGVtZW50ZWRBcz1XZWJHUFVDb21wYXJlRnVuY3Rpb24KK10gZW51bSBH
UFVDb21wYXJlRnVuY3Rpb24geworICAgICJuZXZlciIsCisgICAgImxlc3MiLAorICAgICJlcXVh
bCIsCisgICAgImxlc3MtZXF1YWwiLAorICAgICJncmVhdGVyIiwKKyAgICAibm90LWVxdWFsIiwK
KyAgICAiZ3JlYXRlci1lcXVhbCIsCisgICAgImFsd2F5cyIKK307CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9HUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3Iu
aWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvR1BVRGVwdGhTdGVuY2lsU3RhdGVE
ZXNjcmlwdG9yLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZWJhNTU3ZWU3MjJjYWIyMzg0MGJhYWVjY2E4MGFh
MGRhYzVkMDlhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJn
cHUvR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yLmlkbApAQCAtMCwwICsxLDQyIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKy8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ncHV3ZWIvZ3B1d2ViL2Jsb2IvbWFzdGVy
L2Rlc2lnbi9za2V0Y2gud2ViaWRsCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJHUFUsCisgICAg
RW5hYmxlZEF0UnVudGltZT1XZWJHUFUsCisgICAgSW1wbGVtZW50ZWRBcz1XZWJHUFVEZXB0aFN0
ZW5jaWxTdGF0ZURlc2NyaXB0b3IKK10gZGljdGlvbmFyeSBHUFVEZXB0aFN0ZW5jaWxTdGF0ZURl
c2NyaXB0b3IgeworICAgIGJvb2xlYW4gZGVwdGhXcml0ZUVuYWJsZWQ7CisgICAgR1BVQ29tcGFy
ZUZ1bmN0aW9uIGRlcHRoQ29tcGFyZTsKKworLyogTm90IFlldCBJbXBsZW1lbnRlZAorICAgIEdQ
VVN0ZW5jaWxTdGF0ZUZhY2VEZXNjcmlwdG9yIHN0ZW5jaWxGcm9udDsKKyAgICBHUFVTdGVuY2ls
U3RhdGVGYWNlRGVzY3JpcHRvciBzdGVuY2lsQmFjazsKKworICAgIHUzMiBzdGVuY2lsUmVhZE1h
c2s7CisgICAgdTMyIHN0ZW5jaWxXcml0ZU1hc2s7CisqLworfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbXBhcmVGdW5jdGlvbi5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVQ29tcGFyZUZ1bmN0aW9uLmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZWU1ZmU5YzdhNDE5ZmNjZmM4ZDNmZjFkNjQ0MTFlN2Y5MDAzZGYzZgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbXBhcmVGdW5jdGlv
bi5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVO
QUJMRShXRUJHUFUpCisKKyNpbmNsdWRlICJHUFVDb21wYXJlRnVuY3Rpb24uaCIKKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCit1c2luZyBXZWJHUFVDb21wYXJlRnVuY3Rpb24gPSBHUFVDb21wYXJl
RnVuY3Rpb247CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShX
RUJHUFUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVE
ZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
Z3B1L1dlYkdQVURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ1Zjgz
MmM0MGIyYTYxNGM5MzAwNWVjNzkwYjU3OGZlMjFkMmJiYzAKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2Ny
aXB0b3IuaApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNp
ZiBFTkFCTEUoV0VCR1BVKQorCisjaW5jbHVkZSAiR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlw
dG9yLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordXNpbmcgV2ViR1BVRGVwdGhTdGVuY2ls
U3RhdGVEZXNjcmlwdG9yID0gR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yOworCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCR1BVKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVURldmljZS5jcHAKaW5kZXggNzBhZGVjODMw
NmZlYTIzMzc3NTI4ZGFkZTdiYjg4YWIyYzJiZDA3Mi4uMGQ5OGUxM2RiM2Y3ODgxNWEzZDQxZjk0
MjdiZWVlNTI1ZmNhMzM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJn
cHUvV2ViR1BVRGV2aWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9X
ZWJHUFVEZXZpY2UuY3BwCkBAIC0xNjUsNyArMTY1LDcgQEAgUmVmUHRyPFdlYkdQVVJlbmRlclBp
cGVsaW5lPiBXZWJHUFVEZXZpY2U6OmNyZWF0ZVJlbmRlclBpcGVsaW5lKFdlYkdQVVJlbmRlclBp
cGUKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCi0gICAgaWYgKGF1dG8gcGlwZWxp
bmUgPSBtX2RldmljZS0+Y3JlYXRlUmVuZGVyUGlwZWxpbmUoR1BVUmVuZGVyUGlwZWxpbmVEZXNj
cmlwdG9yIHsgV1RGTW92ZShwaXBlbGluZUxheW91dCksIFdURk1vdmUoKnZlcnRleFN0YWdlKSwg
V1RGTW92ZSgqZnJhZ21lbnRTdGFnZSksIGRlc2NyaXB0b3IucHJpbWl0aXZlVG9wb2xvZ3ksIFdU
Rk1vdmUoZGVzY3JpcHRvci5pbnB1dFN0YXRlKSB9KSkKKyAgICBpZiAoYXV0byBwaXBlbGluZSA9
IG1fZGV2aWNlLT5jcmVhdGVSZW5kZXJQaXBlbGluZShHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0
b3IgeyBXVEZNb3ZlKHBpcGVsaW5lTGF5b3V0KSwgV1RGTW92ZSgqdmVydGV4U3RhZ2UpLCBXVEZN
b3ZlKCpmcmFnbWVudFN0YWdlKSwgZGVzY3JpcHRvci5wcmltaXRpdmVUb3BvbG9neSwgV1RGTW92
ZShkZXNjcmlwdG9yLmRlcHRoU3RlbmNpbFN0YXRlKSwgV1RGTW92ZShkZXNjcmlwdG9yLmlucHV0
U3RhdGUpIH0pKQogICAgICAgICByZXR1cm4gV2ViR1BVUmVuZGVyUGlwZWxpbmU6OmNyZWF0ZShw
aXBlbGluZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBpcGVsaW5l
RGVzY3JpcHRvci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVy
UGlwZWxpbmVEZXNjcmlwdG9yLmgKaW5kZXggYzEyZjc1OGE3YmZjZTg5YWFhMTRjNjFkMjA1Y2Vm
OTNmZDlhMDM0Yi4uYmU0ZTVmMmVmOGMyM2Y0NGRjMmZlYWYxZjllYmIyZmNjNGE4ODJkYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGlwZWxp
bmVEZXNjcmlwdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BV
UmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yLmgKQEAgLTI4LDYgKzI4LDcgQEAKICNpZiBFTkFCTEUo
V0VCR1BVKQogCiAjaW5jbHVkZSAiR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yLmgiCisjaW5j
bHVkZSAiV2ViR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yLmgiCiAjaW5jbHVkZSAiV2Vi
R1BVSW5wdXRTdGF0ZURlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJXZWJHUFVQaXBlbGluZURlc2Ny
aXB0b3JCYXNlLmgiCiAjaW5jbHVkZSAiV2ViR1BVUGlwZWxpbmVTdGFnZURlc2NyaXB0b3IuaCIK
QEAgLTQwLDYgKzQxLDcgQEAgc3RydWN0IFdlYkdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvciA6
IFdlYkdQVVBpcGVsaW5lRGVzY3JpcHRvckJhc2UgewogICAgIFdlYkdQVVBpcGVsaW5lU3RhZ2VE
ZXNjcmlwdG9yIHZlcnRleFN0YWdlOwogICAgIFdlYkdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlwdG9y
IGZyYWdtZW50U3RhZ2U7CiAgICAgUHJpbWl0aXZlVG9wb2xvZ3kgcHJpbWl0aXZlVG9wb2xvZ3k7
CisgICAgV2ViR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yIGRlcHRoU3RlbmNpbFN0YXRl
OwogICAgIFdlYkdQVUlucHV0U3RhdGVEZXNjcmlwdG9yIGlucHV0U3RhdGU7CiB9OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQaXBlbGlu
ZURlc2NyaXB0b3IuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVu
ZGVyUGlwZWxpbmVEZXNjcmlwdG9yLmlkbAppbmRleCBmZGRiNjI4ZGZhNDBiOTA1MmY3OTg5MjE4
NTYwODAyNGVlMzkwOTU1Li4xMmJkNzFkMzczOTQ5YWE0YmY4NWVlZDY5MmQzZTBjMGJhN2Q4ZWI5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQ
aXBlbGluZURlc2NyaXB0b3IuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1
L1dlYkdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5pZGwKQEAgLTQwLDEwICs0MCwxMCBAQCBl
bnVtIFdlYkdQVVByaW1pdGl2ZVRvcG9sb2d5IHsKICAgICBXZWJHUFVQaXBlbGluZVN0YWdlRGVz
Y3JpcHRvciBmcmFnbWVudFN0YWdlOwogCiAgICAgV2ViR1BVUHJpbWl0aXZlVG9wb2xvZ3kgcHJp
bWl0aXZlVG9wb2xvZ3k7CisgICAgR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yIGRlcHRo
U3RlbmNpbFN0YXRlOwogICAgIFdlYkdQVUlucHV0U3RhdGVEZXNjcmlwdG9yIGlucHV0U3RhdGU7
CiAvKiBUbyBCZSBJbXBsZW1lbnRlZDoKICAgICBzZXF1ZW5jZTxXZWJHUFVCbGVuZFN0YXRlRGVz
Y3JpcHRvcj4gYmxlbmRTdGF0ZXM7Ci0gICAgV2ViR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlw
dG9yIGRlcHRoU3RlbmNpbFN0YXRlOwogICAgIFdlYkdQVUF0dGFjaG1lbnRzU3RhdGVEZXNjcmlw
dG9yIGF0dGFjaG1lbnRzU3RhdGU7CiAgICAgLy8gVE9ETyBvdGhlciBwcm9wZXJ0aWVzCiAqLwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAppbmRleCBlMDczODQxYTY5NDU3YzA3ZmE3NTdhOTU2YjMzYTJlZDhiYzU2Y2Q3
Li5jMjdkOTE3MzMwOTQyYmQ4MDhkZjIyZGQ5NzY2MjI0MGMxYWM1OTQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dApAQCAtMjc2Miw2ICsyNzYyLDggQEAgSlNGaWxsTW9kZS5jcHAKIEpTRm9jdXNFdmVudC5jcHAK
IEpTRm9udEZhY2UuY3BwCiBKU0ZvbnRGYWNlU2V0LmNwcAorSlNHUFVDb21wYXJlRnVuY3Rpb24u
Y3BwCitKU0dQVURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5jcHAKIEpTR2Fpbk5vZGUuY3Bw
CiBKU0dlb2xvY2F0aW9uLmNwcAogSlNHZW9wb3NpdGlvbi5jcHAKQEAgLTMzMDMsOCArMzMwNSw4
IEBAIEpTV2ViR1BVQnVmZmVyLmNwcAogSlNXZWJHUFVCdWZmZXJCaW5kaW5nLmNwcAogSlNXZWJH
UFVCdWZmZXJEZXNjcmlwdG9yLmNwcAogSlNXZWJHUFVCdWZmZXJVc2FnZS5jcHAKLUpTV2ViR1BV
Q29tbWFuZEJ1ZmZlci5jcHAKIEpTV2ViR1BVQ29sb3IuY3BwCitKU1dlYkdQVUNvbW1hbmRCdWZm
ZXIuY3BwCiBKU1dlYkdQVURldmljZS5jcHAKIEpTV2ViR1BVSW5kZXhGb3JtYXQuY3BwCiBKU1dl
YkdQVUlucHV0U3RhdGVEZXNjcmlwdG9yLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGUzYzc1ZThjODYzMzU3NGQ4OWU4NGJj
MGFiYmYxZjEwMzhhYmQzMGMuLmJkY2I1NTJiNTNlYWJmODVhMTgxOWI1Mzg3OTQ1ODY0ZTQ3NGVl
ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTE0MDEyLDYgKzE0MDEyLDEyIEBACiAJCUQwMzIxMUNGMjFBQzk1NEUwMDc2M0NG
MiAvKiBHUFVQcm9ncmFtbWFibGVQYXNzRW5jb2Rlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHUFVQcm9n
cmFtbWFibGVQYXNzRW5jb2Rlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlEMDMy
MTFEMDIxQUM5NTRGMDA3NjNDRjIgLyogR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJRDAzNkREOEQyMDhGRkMwQzAwRjlGNEIyIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVBU1RDLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwM0M4NDlBMjFGRkM2NjcwMDAyMjI3RiAvKiBHUFVEZXB0
aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR1BVRGVwdGhTdGVuY2ls
U3RhdGVEZXNjcmlwdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwM0M4NDlD
MjFGRkM3RkMwMDAyMjI3RiAvKiBHUFVDb21wYXJlRnVuY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
R1BVQ29tcGFyZUZ1bmN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwM0M4
NDlEMjFGRkNGMDAwMDAyMjI3RiAvKiBXZWJHUFVDb21wYXJlRnVuY3Rpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViR1BVQ29tcGFyZUZ1bmN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUQwM0M4NDlFMjFGRkNGMDAwMDAyMjI3RiAvKiBHUFVDb21wYXJlRnVuY3Rpb24uaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IEdQVUNvbXBhcmVGdW5jdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUQwM0M4NEExMjFGRkQ3MjMwMDAyMjI3RiAvKiBXZWJHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2Ny
aXB0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9y
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwM0M4NEEyMjFGRkQ3MjMwMDAyMjI3
RiAvKiBHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEdQVURlcHRoU3Rl
bmNpbFN0YXRlRGVzY3JpcHRvci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUQw
NDVBRDFEMjE2ODIzMEIwMDBBNkU5QiAvKiBXZWJNZXRhbExheWVyLm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViTWV0YWxMYXllci5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJRDA0NUFEMUUyMTY4MjQ0OTAwMEE2RTlCIC8qIEpTV2ViTWV0YWxS
ZW5kZXJQYXNzQXR0YWNobWVudERlc2NyaXB0b3JDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNXZWJNZXRhbFJlbmRlclBhc3NBdHRhY2htZW50RGVzY3JpcHRvckN1c3RvbS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUQwNDVBRDFGMjE2ODI0NDkwMDBBNkU5QiAvKiBK
U1dlYk1ldGFsUmVuZGVyaW5nQ29udGV4dEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U1dlYk1ldGFsUmVuZGVyaW5nQ29udGV4dEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0xODQ0Myw2ICsxODQ0OSw4IEBACiAJCQkJRDBEODY0ODcyMUI2NENBQTAwM0M5
ODNDIC8qIEdQVUJ1ZmZlckRlc2NyaXB0b3IuaCAqLywKIAkJCQlEMDAxRDlBQjIxQjBDN0JGMDAy
M0I5QkMgLyogR1BVQ29sb3IuaCAqLywKIAkJCQkzMTJGRjhCRDIxQTRDMkYxMDBFQjE5OUQgLyog
R1BVQ29tbWFuZEJ1ZmZlci5oICovLAorCQkJCUQwM0M4NDlDMjFGRkM3RkMwMDAyMjI3RiAvKiBH
UFVDb21wYXJlRnVuY3Rpb24uaCAqLywKKwkJCQlEMDNDODQ5QTIxRkZDNjY3MDAwMjIyN0YgLyog
R1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yLmggKi8sCiAJCQkJMzEyRkY4QkYyMUE0QzJG
MTAwRUIxOTlEIC8qIEdQVURldmljZS5jcHAgKi8sCiAJCQkJMzEyRkY4QkUyMUE0QzJGMTAwRUIx
OTlEIC8qIEdQVURldmljZS5oICovLAogCQkJCUQwRDg2NDk5MjFCQTFCMUYwMDNDOTgzQyAvKiBH
UFVJbnB1dFN0YXRlRGVzY3JpcHRvci5oICovLApAQCAtMjYwMjMsNiArMjYwMzEsOCBAQAogCQkJ
CUQwMEY1OTQxMjE2RUNDN0EwMDBENzFEQiAvKiBET01XaW5kb3dXZWJHUFUuY3BwICovLAogCQkJ
CUQwMEY1OTQwMjE2RUNDN0EwMDBENzFEQiAvKiBET01XaW5kb3dXZWJHUFUuaCAqLywKIAkJCQlE
MDBGNTk0MjIxNkVDQzdBMDAwRDcxREIgLyogRE9NV2luZG93V2ViR1BVLmlkbCAqLywKKwkJCQlE
MDNDODQ5RTIxRkZDRjAwMDAwMjIyN0YgLyogR1BVQ29tcGFyZUZ1bmN0aW9uLmlkbCAqLywKKwkJ
CQlEMDNDODRBMjIxRkZENzIzMDAwMjIyN0YgLyogR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlw
dG9yLmlkbCAqLywKIAkJCQlEMDBGNTk0NzIxNkVGRTU0MDAwRDcxREIgLyogV2ViR1BVLmNwcCAq
LywKIAkJCQlEMDBGNTk0NjIxNkVGRTU0MDAwRDcxREIgLyogV2ViR1BVLmggKi8sCiAJCQkJRDAw
RjU5NDgyMTZFRkU1NDAwMEQ3MURCIC8qIFdlYkdQVS5pZGwgKi8sCkBAIC0yNjA1OSw2ICsyNjA2
OSw4IEBACiAJCQkJRDBFQUNGNzcyMTkzNzIyODAwMEZBNzVDIC8qIFdlYkdQVUNvbW1hbmRCdWZm
ZXIuY3BwICovLAogCQkJCUQwRUFDRjc2MjE5MzcyMjgwMDBGQTc1QyAvKiBXZWJHUFVDb21tYW5k
QnVmZmVyLmggKi8sCiAJCQkJRDBFQUNGNzgyMTkzNzIyODAwMEZBNzVDIC8qIFdlYkdQVUNvbW1h
bmRCdWZmZXIuaWRsICovLAorCQkJCUQwM0M4NDlEMjFGRkNGMDAwMDAyMjI3RiAvKiBXZWJHUFVD
b21wYXJlRnVuY3Rpb24uaCAqLywKKwkJCQlEMDNDODRBMTIxRkZENzIzMDAwMjIyN0YgLyogV2Vi
R1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yLmggKi8sCiAJCQkJRDAwRjU5NTMyMTcwMUQ4
QzAwMEQ3MURCIC8qIFdlYkdQVURldmljZS5jcHAgKi8sCiAJCQkJRDAwRjU5NTIyMTcwMUQ4QzAw
MEQ3MURCIC8qIFdlYkdQVURldmljZS5oICovLAogCQkJCUQwMEY1OTU0MjE3MDFEOEMwMDBENzFE
QiAvKiBXZWJHUFVEZXZpY2UuaWRsICovLApAQCAtMzEwNDcsNiArMzEwNTksNyBAQAogCQkJCUJD
QkI4QUI5MTNGMUFGQjAwMDczNERGMCAvKiBQT0RJbnRlcnZhbC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQkNCQjhBQkExM0YxQUZCMDAwNzM0REYwIC8qIFBPREludGVydmFsVHJlZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQkNCQjhBQkIxM0YxQUZCMDAwNzM0REYwIC8qIFBPRFJlZEJsYWNrVHJlZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNzFCNUFCMjYyMUYxRDlGNDAwMzc2RTVDIC8qIFBvaW50ZXJD
YXB0dXJlQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE3RDNGRjMyMTU1OTlGNDAw
MzRFM0I5IC8qIFBvaW50ZXJFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJCMUY3MTcwRDAw
Q0FBODAwNEFFQTY0IC8qIFBvaW50ZXJFdmVudHNIaXRSdWxlcy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJM0ZGODEzQTcxREJBODY0MDAwOUJGMDAxIC8qIFBvaW50ZXJMb2NrQ29udHJvbGxlci5oIGlu
IEhlYWRlcnMgKi8sCkBAIC0zMTk2OCw3ICszMTk4MSw2IEBACiAJCQkJMjZFOTQ0REQxQUM0QjRF
QTAwN0I4NUI1IC8qIFRlcm0uaCBpbiBIZWFkZXJzICovLAogCQkJCTY1NTBCNkE2MDk5REYwMjcw
MDkwRDc4MSAvKiBUZXh0LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUxNzA5OUU2NDkyMDA1
NkU1ODEgLyogVGV4dEFmZmluaXR5LmggaW4gSGVhZGVycyAqLywKLQkJCQk3MUI1QUIyNjIxRjFE
OUY0MDAzNzZFNUMgLyogUG9pbnRlckNhcHR1cmVDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlDRTdCMkRCNTE1ODZBQkFEMDA5OEIzRkEgLyogVGV4dEFsdGVybmF0aXZlV2l0aFJhbmdl
LmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjU0RENFNjE4ODEwNTFEMDAzRUVEQkIgLyogVGV4dEF1
dG9TaXppbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyQzNEQTM0MEQwMDZDMUQwMEVGNkYyNiAv
KiBUZXh0Qm91bmRhcmllcy5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVQ29tcGFyZUZ1bmN0aW9uLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVQ29tcGFyZUZ1bmN0aW9uLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZGRlOWY2NWM3NDBmOWFmODA4ZTYzNmUzOGVlZjk3NTRmNTkyM2U2NwotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVDb21wYXJl
RnVuY3Rpb24uaApAQCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE5IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisK
KyNpZiBFTkFCTEUoV0VCR1BVKQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2VudW0gY2xhc3Mg
R1BVQ29tcGFyZUZ1bmN0aW9uIHsKKyAgICBOZXZlciwKKyAgICBMZXNzLAorICAgIEVxdWFsLAor
ICAgIExlc3NFcXVhbCwKKyAgICBHcmVhdGVyLAorICAgIE5vdEVxdWFsLAorICAgIEdyZWF0ZXJF
cXVhbCwKKyAgICBBbHdheXMKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlm
IC8vIEVOQUJMRShXRUJHUFUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9ncHUvR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9y
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNGE0N2QwM2IzNjJhNjg4YjJkNzkxMGM3ZmIxNzliYjFlOTllMDZlNAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9H
UFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaApAQCAtMCwwICsxLDQxIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI3ByYWdtYSBvbmNlCisKKyNpZiBFTkFCTEUoV0VCR1BVKQorCisjaW5jbHVkZSAiR1BV
Q29tcGFyZUZ1bmN0aW9uLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RydWN0IEdQVURl
cHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvciB7CisgICAgYm9vbCBkZXB0aFdyaXRlRW5hYmxlZDsK
KyAgICBHUFVDb21wYXJlRnVuY3Rpb24gZGVwdGhDb21wYXJlOworfTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQkdQVSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQaXBlbGluZS5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBpcGVsaW5lLmgKaW5k
ZXggYjMwMmUzNDJlNzczMDlhNGFhMmQ5Mjc3YjgwZjE3MzVkYmE2ZDg3MS4uNWI1YjljMGZkNjAx
YjY3NjVhODJmYmMzOWIyMDcyODc3YmRjZTEyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBpcGVsaW5lLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBpcGVsaW5lLmgKQEAgLTI4LDEy
ICsyOCwxNCBAQAogI2lmIEVOQUJMRShXRUJHUFUpCiAKICNpbmNsdWRlICJHUFVSZW5kZXJQaXBl
bGluZURlc2NyaXB0b3IuaCIKLQogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVk
ZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIAorI2lmIFVTRShN
RVRBTCkKK09CSkNfUFJPVE9DT0woTVRMRGVwdGhTdGVuY2lsU3RhdGUpOwogT0JKQ19QUk9UT0NP
TChNVExSZW5kZXJQaXBlbGluZVN0YXRlKTsKKyNlbmRpZiAvLyBVU0UoTUVUQUwpCiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIApAQCAtNDcsMTMgKzQ5LDE4IEBAIGNsYXNzIEdQVVJlbmRlclBpcGVs
aW5lIDogcHVibGljIFJlZkNvdW50ZWQ8R1BVUmVuZGVyUGlwZWxpbmU+IHsKIHB1YmxpYzoKICAg
ICBzdGF0aWMgUmVmUHRyPEdQVVJlbmRlclBpcGVsaW5lPiBjcmVhdGUoY29uc3QgR1BVRGV2aWNl
JiwgR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yJiYpOwogCisjaWYgVVNFKE1FVEFMKQorICAg
IE1UTERlcHRoU3RlbmNpbFN0YXRlICpkZXB0aFN0ZW5jaWxTdGF0ZSgpIGNvbnN0IHsgcmV0dXJu
IG1fZGVwdGhTdGVuY2lsU3RhdGUuZ2V0KCk7IH0KKyNlbmRpZgogICAgIFBsYXRmb3JtUmVuZGVy
UGlwZWxpbmUqIHBsYXRmb3JtUmVuZGVyUGlwZWxpbmUoKSBjb25zdCB7IHJldHVybiBtX3BsYXRm
b3JtUmVuZGVyUGlwZWxpbmUuZ2V0KCk7IH0KLQogICAgIFByaW1pdGl2ZVRvcG9sb2d5IHByaW1p
dGl2ZVRvcG9sb2d5KCkgY29uc3QgeyByZXR1cm4gbV9wcmltaXRpdmVUb3BvbG9neTsgfQogCiBw
cml2YXRlOgotICAgIEdQVVJlbmRlclBpcGVsaW5lKFBsYXRmb3JtUmVuZGVyUGlwZWxpbmVTbWFy
dFB0ciYmLCBHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3ImJik7CisjaWYgVVNFKE1FVEFMKQor
ICAgIEdQVVJlbmRlclBpcGVsaW5lKFJldGFpblB0cjxNVExEZXB0aFN0ZW5jaWxTdGF0ZT4mJiwg
UGxhdGZvcm1SZW5kZXJQaXBlbGluZVNtYXJ0UHRyJiYsIEdQVVJlbmRlclBpcGVsaW5lRGVzY3Jp
cHRvciYmKTsKIAorICAgIFJldGFpblB0cjxNVExEZXB0aFN0ZW5jaWxTdGF0ZT4gbV9kZXB0aFN0
ZW5jaWxTdGF0ZTsKKyNlbmRpZiAvLyBVU0UoTUVUQUwpCiAgICAgUGxhdGZvcm1SZW5kZXJQaXBl
bGluZVNtYXJ0UHRyIG1fcGxhdGZvcm1SZW5kZXJQaXBlbGluZTsKICAgICBSZWZQdHI8R1BVUGlw
ZWxpbmVMYXlvdXQ+IG1fbGF5b3V0OwogICAgIFByaW1pdGl2ZVRvcG9sb2d5IG1fcHJpbWl0aXZl
VG9wb2xvZ3k7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9n
cHUvR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9ncHUvR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yLmgKaW5kZXggMzIxNjgz
M2Q5MDdjZjI0OGQzOTdiNGRjODIzOGQ0NTExNTNhZDRlNS4uNjI3NTMxYjc2YmIyN2VjNmQyNWJm
NDZiMzhiYTFiZGU5NGE3NmMwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3Iu
aApAQCAtMjcsNiArMjcsNyBAQAogCiAjaWYgRU5BQkxFKFdFQkdQVSkKIAorI2luY2x1ZGUgIkdQ
VURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5oIgogI2luY2x1ZGUgIkdQVUlucHV0U3RhdGVE
ZXNjcmlwdG9yLmgiCiAjaW5jbHVkZSAiR1BVUGlwZWxpbmVEZXNjcmlwdG9yQmFzZS5oIgogI2lu
Y2x1ZGUgIkdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlwdG9yLmgiCkBAIC00NCwxMSArNDUsMTIgQEAg
c3RydWN0IEdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvciA6IEdQVVBpcGVsaW5lRGVzY3JpcHRv
ckJhc2UgewogICAgICAgICBUcmlhbmdsZVN0cmlwCiAgICAgfTsKIAotICAgIEdQVVJlbmRlclBp
cGVsaW5lRGVzY3JpcHRvcihSZWZQdHI8R1BVUGlwZWxpbmVMYXlvdXQ+JiYgbGF5b3V0LCBHUFVQ
aXBlbGluZVN0YWdlRGVzY3JpcHRvciYmIHZlcnRleCwgR1BVUGlwZWxpbmVTdGFnZURlc2NyaXB0
b3ImJiBmcmFnbWVudCwgUHJpbWl0aXZlVG9wb2xvZ3kgdG9wb2xvZ3ksIEdQVUlucHV0U3RhdGVE
ZXNjcmlwdG9yJiYgaW5wdXQpCisgICAgR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yKFJlZlB0
cjxHUFVQaXBlbGluZUxheW91dD4mJiBsYXlvdXQsIEdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlwdG9y
JiYgdmVydGV4LCBHUFVQaXBlbGluZVN0YWdlRGVzY3JpcHRvciYmIGZyYWdtZW50LCBQcmltaXRp
dmVUb3BvbG9neSB0b3BvbG9neSwgR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yJiYgZGVw
dGgsIEdQVUlucHV0U3RhdGVEZXNjcmlwdG9yJiYgaW5wdXQpCiAgICAgICAgIDogR1BVUGlwZWxp
bmVEZXNjcmlwdG9yQmFzZSB7IFdURk1vdmUobGF5b3V0KSB9CiAgICAgICAgICwgdmVydGV4U3Rh
Z2UoV1RGTW92ZSh2ZXJ0ZXgpKQogICAgICAgICAsIGZyYWdtZW50U3RhZ2UoV1RGTW92ZShmcmFn
bWVudCkpCiAgICAgICAgICwgcHJpbWl0aXZlVG9wb2xvZ3kodG9wb2xvZ3kpCisgICAgICAgICwg
ZGVwdGhTdGVuY2lsU3RhdGUoV1RGTW92ZShkZXB0aCkpCiAgICAgICAgICwgaW5wdXRTdGF0ZShX
VEZNb3ZlKGlucHV0KSkKICAgICB7CiAgICAgfQpAQCAtNTYsNiArNTgsNyBAQCBzdHJ1Y3QgR1BV
UmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yIDogR1BVUGlwZWxpbmVEZXNjcmlwdG9yQmFzZSB7CiAg
ICAgR1BVUGlwZWxpbmVTdGFnZURlc2NyaXB0b3IgdmVydGV4U3RhZ2U7CiAgICAgR1BVUGlwZWxp
bmVTdGFnZURlc2NyaXB0b3IgZnJhZ21lbnRTdGFnZTsKICAgICBQcmltaXRpdmVUb3BvbG9neSBw
cmltaXRpdmVUb3BvbG9neTsKKyAgICBHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IgZGVw
dGhTdGVuY2lsU3RhdGU7CiAgICAgR1BVSW5wdXRTdGF0ZURlc2NyaXB0b3IgaW5wdXRTdGF0ZTsK
IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9j
b2NvYS9HUFVSZW5kZXJQYXNzRW5jb2Rlck1ldGFsLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBhc3NFbmNvZGVyTWV0YWwubW0KaW5kZXgg
NTk0YTMzNzBhODQ0OWYxZDdiOWYyZDc4ZmE4MmY3Zjk5MjY3MjQ3ZS4uYWVjNDBlNDc5ZDcxYThj
ODA4MmM2MDliNmQyMzFjNTE2YzI4ZmRiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBhc3NFbmNvZGVyTWV0YWwubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBh
c3NFbmNvZGVyTWV0YWwubW0KQEAgLTgwLDcgKzgwLDE1IEBAIFBsYXRmb3JtUHJvZ3JhbW1hYmxl
UGFzc0VuY29kZXIgKkdQVVJlbmRlclBhc3NFbmNvZGVyOjpwbGF0Zm9ybVBhc3NFbmNvZGVyKCkg
Y29uCiAKIHZvaWQgR1BVUmVuZGVyUGFzc0VuY29kZXI6OnNldFBpcGVsaW5lKFJlZjxHUFVSZW5k
ZXJQaXBlbGluZT4mJiBwaXBlbGluZSkKIHsKKyAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElP
TlM7CisKKyAgICBpZiAocGlwZWxpbmUtPmRlcHRoU3RlbmNpbFN0YXRlKCkpCisgICAgICAgIFtt
X3BsYXRmb3JtUmVuZGVyUGFzc0VuY29kZXIgc2V0RGVwdGhTdGVuY2lsU3RhdGU6cGlwZWxpbmUt
PmRlcHRoU3RlbmNpbFN0YXRlKCldOworCiAgICAgW21fcGxhdGZvcm1SZW5kZXJQYXNzRW5jb2Rl
ciBzZXRSZW5kZXJQaXBlbGluZVN0YXRlOnBpcGVsaW5lLT5wbGF0Zm9ybVJlbmRlclBpcGVsaW5l
KCldOworCisgICAgRU5EX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKKwogICAgIG1fcGlwZWxpbmUg
PSBXVEZNb3ZlKHBpcGVsaW5lKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBpcGVsaW5lTWV0YWwubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVUmVuZGVyUGlwZWxpbmVN
ZXRhbC5tbQppbmRleCBiNGU4NzYwYjVjY2NkMjEyODI0MTRlMDllYWY1NmI1YzBmNzE5MjY4Li41
ODg2MGViYTVjOGJiNzBkMGVjZjI3NjgxNWUyYjgyNmNmNWI2NjhkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVUmVuZGVyUGlwZWxpbmVN
ZXRhbC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2Ev
R1BVUmVuZGVyUGlwZWxpbmVNZXRhbC5tbQpAQCAtMzYsNiArMzYsNzUgQEAKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCitzdGF0aWMgT3B0aW9uYWw8TVRMQ29tcGFyZUZ1bmN0aW9uPiB2YWxpZGF0
ZUFuZENvbnZlcnREZXB0aENvbXBhcmVGdW5jdGlvblRvTXRsKEdQVUNvbXBhcmVGdW5jdGlvbiBm
dW5jKQoreworICAgIHN3aXRjaCAoZnVuYykgeworICAgIGNhc2UgR1BVQ29tcGFyZUZ1bmN0aW9u
OjpOZXZlcjoKKyAgICAgICAgcmV0dXJuIE1UTENvbXBhcmVGdW5jdGlvbk5ldmVyOworICAgIGNh
c2UgR1BVQ29tcGFyZUZ1bmN0aW9uOjpMZXNzOgorICAgICAgICByZXR1cm4gTVRMQ29tcGFyZUZ1
bmN0aW9uTGVzczsKKyAgICBjYXNlIEdQVUNvbXBhcmVGdW5jdGlvbjo6RXF1YWw6CisgICAgICAg
IHJldHVybiBNVExDb21wYXJlRnVuY3Rpb25FcXVhbDsKKyAgICBjYXNlIEdQVUNvbXBhcmVGdW5j
dGlvbjo6TGVzc0VxdWFsOgorICAgICAgICByZXR1cm4gTVRMQ29tcGFyZUZ1bmN0aW9uTGVzc0Vx
dWFsOworICAgIGNhc2UgR1BVQ29tcGFyZUZ1bmN0aW9uOjpHcmVhdGVyOgorICAgICAgICByZXR1
cm4gTVRMQ29tcGFyZUZ1bmN0aW9uR3JlYXRlcjsKKyAgICBjYXNlIEdQVUNvbXBhcmVGdW5jdGlv
bjo6Tm90RXF1YWw6CisgICAgICAgIHJldHVybiBNVExDb21wYXJlRnVuY3Rpb25Ob3RFcXVhbDsK
KyAgICBjYXNlIEdQVUNvbXBhcmVGdW5jdGlvbjo6R3JlYXRlckVxdWFsOgorICAgICAgICByZXR1
cm4gTVRMQ29tcGFyZUZ1bmN0aW9uR3JlYXRlckVxdWFsOworICAgIGNhc2UgR1BVQ29tcGFyZUZ1
bmN0aW9uOjpBbHdheXM6CisgICAgICAgIHJldHVybiBNVExDb21wYXJlRnVuY3Rpb25BbHdheXM7
CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKyAgICB9Cit9CisK
K3N0YXRpYyBSZXRhaW5QdHI8TVRMRGVwdGhTdGVuY2lsU3RhdGU+IHRyeUNyZWF0ZU10bERlcHRo
U3RlbmNpbFN0YXRlKGNvbnN0IGNoYXIqIGNvbnN0IGZ1bmN0aW9uTmFtZSwgY29uc3QgR1BVRGVw
dGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yJiBkZXNjcmlwdG9yLCBjb25zdCBHUFVEZXZpY2UmIGRl
dmljZSkKK3sKKyNpZiBMT0dfRElTQUJMRUQKKyAgICBVTlVTRURfUEFSQU0oZnVuY3Rpb25OYW1l
KTsKKyNlbmRpZgorICAgIFJldGFpblB0cjxNVExEZXB0aFN0ZW5jaWxEZXNjcmlwdG9yPiBtdGxE
ZXNjcmlwdG9yOworCisgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOworCisgICAgbXRs
RGVzY3JpcHRvciA9IGFkb3B0TlMoW01UTERlcHRoU3RlbmNpbERlc2NyaXB0b3IgbmV3XSk7CisK
KyAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOworCisgICAgaWYgKCFtdGxEZXNjcmlwdG9y
KSB7CisgICAgICAgIExPRyhXZWJHUFUsICIlczogVW5hYmxlIHRvIGNyZWF0ZSBNVExEZXB0aFN0
ZW5jaWxEZXNjcmlwdG9yISIsIGZ1bmN0aW9uTmFtZSk7CisgICAgICAgIHJldHVybiBudWxscHRy
OworICAgIH0KKworICAgIGF1dG8gbXRsRGVwdGhDb21wYXJlID0gdmFsaWRhdGVBbmRDb252ZXJ0
RGVwdGhDb21wYXJlRnVuY3Rpb25Ub010bChkZXNjcmlwdG9yLmRlcHRoQ29tcGFyZSk7CisgICAg
aWYgKCFtdGxEZXB0aENvbXBhcmUpIHsKKyAgICAgICAgTE9HKFdlYkdQVSwgIiVzOiBJbnZhbGlk
IEdQVUNvbXBhcmVGdW5jdGlvbiBpbiBHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IhIiwg
ZnVuY3Rpb25OYW1lKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorCisgICAgbXRs
RGVzY3JpcHRvci5nZXQoKS5kZXB0aENvbXBhcmVGdW5jdGlvbiA9ICptdGxEZXB0aENvbXBhcmU7
CisgICAgbXRsRGVzY3JpcHRvci5nZXQoKS5kZXB0aFdyaXRlRW5hYmxlZCA9IGRlc2NyaXB0b3Iu
ZGVwdGhXcml0ZUVuYWJsZWQ7CisKKyAgICAvLyBGSVhNRTogSW1wbGVtZW50IGJhY2svZnJvbnRG
YWNlU3RlbmNpbC4KKworICAgIFJldGFpblB0cjxNVExEZXB0aFN0ZW5jaWxTdGF0ZT4gc3RhdGU7
CisKKyAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CisKKyAgICBzdGF0ZSA9IGFkb3B0
TlMoW2RldmljZS5wbGF0Zm9ybURldmljZSgpIG5ld0RlcHRoU3RlbmNpbFN0YXRlV2l0aERlc2Ny
aXB0b3I6bXRsRGVzY3JpcHRvci5nZXQoKV0pOworCisgICAgRU5EX0JMT0NLX09CSkNfRVhDRVBU
SU9OUzsKKworICAgIGlmICghc3RhdGUpIHsKKyAgICAgICAgTE9HKFdlYkdQVSwgIiVzOiBFcnJv
ciBjcmVhdGluZyBNVExEZXB0aFN0ZW5jaWxTdGF0ZSEiLCBmdW5jdGlvbk5hbWUpOworICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICByZXR1cm4gc3RhdGU7Cit9CisKIHN0YXRp
YyBib29sIHNldEZ1bmN0aW9uc0ZvclBpcGVsaW5lRGVzY3JpcHRvcihjb25zdCBjaGFyKiBjb25z
dCBmdW5jdGlvbk5hbWUsIE1UTFJlbmRlclBpcGVsaW5lRGVzY3JpcHRvciAqbXRsRGVzY3JpcHRv
ciwgY29uc3QgR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yJiBkZXNjcmlwdG9yKQogewogI2lm
IExPR19ESVNBQkxFRApAQCAtMTc1LDE1ICsyNDQsOCBAQCBzdGF0aWMgYm9vbCBzZXRJbnB1dFN0
YXRlRm9yUGlwZWxpbmVEZXNjcmlwdG9yKGNvbnN0IGNoYXIqIGNvbnN0IGZ1bmN0aW9uTmFtZSwg
TQogICAgIHJldHVybiB0cnVlOwogfQogCi1SZWZQdHI8R1BVUmVuZGVyUGlwZWxpbmU+IEdQVVJl
bmRlclBpcGVsaW5lOjpjcmVhdGUoY29uc3QgR1BVRGV2aWNlJiBkZXZpY2UsIEdQVVJlbmRlclBp
cGVsaW5lRGVzY3JpcHRvciYmIGRlc2NyaXB0b3IpCitzdGF0aWMgUmV0YWluUHRyPE1UTFJlbmRl
clBpcGVsaW5lU3RhdGU+IHRyeUNyZWF0ZU10bFJlbmRlclBpcGVsaW5lU3RhdGUoY29uc3QgY2hh
ciogY29uc3QgZnVuY3Rpb25OYW1lLCBjb25zdCBHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3Im
IGRlc2NyaXB0b3IsIGNvbnN0IEdQVURldmljZSYgZGV2aWNlKQogewotICAgIGNvbnN0IGNoYXIq
IGNvbnN0IGZ1bmN0aW9uTmFtZSA9ICJHUFVSZW5kZXJQaXBlbGluZTo6Y3JlYXRlKCkiOwotCi0g
ICAgaWYgKCFkZXZpY2UucGxhdGZvcm1EZXZpY2UoKSkgewotICAgICAgICBMT0coV2ViR1BVLCAi
JXM6IEludmFsaWQgR1BVRGV2aWNlISIsIGZ1bmN0aW9uTmFtZSk7Ci0gICAgICAgIHJldHVybiBu
dWxscHRyOwotICAgIH0KLQogICAgIFJldGFpblB0cjxNVExSZW5kZXJQaXBlbGluZURlc2NyaXB0
b3I+IG10bERlc2NyaXB0b3I7CiAKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CkBA
IC0yMTIsNyArMjc0LDcgQEAgUmVmUHRyPEdQVVJlbmRlclBpcGVsaW5lPiBHUFVSZW5kZXJQaXBl
bGluZTo6Y3JlYXRlKGNvbnN0IEdQVURldmljZSYgZGV2aWNlLCBHUFUKICAgICAvLyBGSVhNRTog
R2V0IHRoZSBwaXhlbEZvcm1hdCBhcyBjb25maWd1cmVkIGZvciB0aGUgY29udGV4dC9DQU1ldGFs
TGF5ZXIuCiAgICAgbXRsRGVzY3JpcHRvci5nZXQoKS5jb2xvckF0dGFjaG1lbnRzWzBdLnBpeGVs
Rm9ybWF0ID0gTVRMUGl4ZWxGb3JtYXRCR1JBOFVub3JtOwogCi0gICAgUGxhdGZvcm1SZW5kZXJQ
aXBlbGluZVNtYXJ0UHRyIHBpcGVsaW5lOworICAgIFJldGFpblB0cjxNVExSZW5kZXJQaXBlbGlu
ZVN0YXRlPiBwaXBlbGluZTsKIAogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKIApA
QCAtMjIzLDE0ICsyODUsMzEgQEAgUmVmUHRyPEdQVVJlbmRlclBpcGVsaW5lPiBHUFVSZW5kZXJQ
aXBlbGluZTo6Y3JlYXRlKGNvbnN0IEdQVURldmljZSYgZGV2aWNlLCBHUFUKIAogICAgIEVORF9C
TE9DS19PQkpDX0VYQ0VQVElPTlM7CiAKKyAgICByZXR1cm4gcGlwZWxpbmU7Cit9CisKK1JlZlB0
cjxHUFVSZW5kZXJQaXBlbGluZT4gR1BVUmVuZGVyUGlwZWxpbmU6OmNyZWF0ZShjb25zdCBHUFVE
ZXZpY2UmIGRldmljZSwgR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yJiYgZGVzY3JpcHRvcikK
K3sKKyAgICBjb25zdCBjaGFyKiBjb25zdCBmdW5jdGlvbk5hbWUgPSAiR1BVUmVuZGVyUGlwZWxp
bmU6OmNyZWF0ZSgpIjsKKworICAgIGlmICghZGV2aWNlLnBsYXRmb3JtRGV2aWNlKCkpIHsKKyAg
ICAgICAgTE9HKFdlYkdQVSwgIiVzOiBJbnZhbGlkIEdQVURldmljZSEiLCBmdW5jdGlvbk5hbWUp
OworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICAvLyBEZXB0aCBTdGVuY2ls
IHN0YXRlIGlzIHNlcGFyYXRlIGZyb20gdGhlIHJlbmRlciBwaXBlbGluZSBzdGF0ZSBpbiBNZXRh
bC4KKyAgICBhdXRvIGRlcHRoU3RlbmNpbCA9IHRyeUNyZWF0ZU10bERlcHRoU3RlbmNpbFN0YXRl
KGZ1bmN0aW9uTmFtZSwgZGVzY3JpcHRvci5kZXB0aFN0ZW5jaWxTdGF0ZSwgZGV2aWNlKTsKKwor
ICAgIGF1dG8gcGlwZWxpbmUgPSB0cnlDcmVhdGVNdGxSZW5kZXJQaXBlbGluZVN0YXRlKGZ1bmN0
aW9uTmFtZSwgZGVzY3JpcHRvciwgZGV2aWNlKTsKICAgICBpZiAoIXBpcGVsaW5lKQogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKIAotICAgIHJldHVybiBhZG9wdFJlZihuZXcgR1BVUmVuZGVyUGlw
ZWxpbmUoV1RGTW92ZShwaXBlbGluZSksIFdURk1vdmUoZGVzY3JpcHRvcikpKTsKKyAgICByZXR1
cm4gYWRvcHRSZWYobmV3IEdQVVJlbmRlclBpcGVsaW5lKFdURk1vdmUoZGVwdGhTdGVuY2lsKSwg
V1RGTW92ZShwaXBlbGluZSksIFdURk1vdmUoZGVzY3JpcHRvcikpKTsKIH0KIAotR1BVUmVuZGVy
UGlwZWxpbmU6OkdQVVJlbmRlclBpcGVsaW5lKFBsYXRmb3JtUmVuZGVyUGlwZWxpbmVTbWFydFB0
ciYmIHBpcGVsaW5lLCBHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3ImJiBkZXNjcmlwdG9yKQot
ICAgIDogbV9wbGF0Zm9ybVJlbmRlclBpcGVsaW5lKFdURk1vdmUocGlwZWxpbmUpKQorR1BVUmVu
ZGVyUGlwZWxpbmU6OkdQVVJlbmRlclBpcGVsaW5lKFJldGFpblB0cjxNVExEZXB0aFN0ZW5jaWxT
dGF0ZT4mJiBkZXB0aFN0ZW5jaWwsIFJldGFpblB0cjxNVExSZW5kZXJQaXBlbGluZVN0YXRlPiYm
IHBpcGVsaW5lLCBHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3ImJiBkZXNjcmlwdG9yKQorICAg
IDogbV9kZXB0aFN0ZW5jaWxTdGF0ZShXVEZNb3ZlKGRlcHRoU3RlbmNpbCkpCisgICAgLCBtX3Bs
YXRmb3JtUmVuZGVyUGlwZWxpbmUoV1RGTW92ZShwaXBlbGluZSkpCiAgICAgLCBtX2xheW91dChX
VEZNb3ZlKGRlc2NyaXB0b3IubGF5b3V0KSkKICAgICAsIG1fcHJpbWl0aXZlVG9wb2xvZ3koZGVz
Y3JpcHRvci5wcmltaXRpdmVUb3BvbG9neSkKIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>360650</attachid>
            <date>2019-01-30 17:03:39 -0800</date>
            <delta_ts>2019-01-30 18:15:12 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-194048-20190130170338.patch</filename>
            <type>text/plain</type>
            <size>34330</size>
            <attacher name="Justin Fan">justin_fan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQwNjg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWVkMzE4NGVmYzI4OTdk
YmU5YThjZmRkMGIxMzExNzZkNmU1YTZlZS4uNzdmZDU1ZDlkYjkwZjZiNDlmN2ZiMGY1ODJmZTU0
YTM0NTY1NDg0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDE5LTAxLTMwICBKdXN0
aW4gRmFuICA8anVzdGluX2ZhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkdQVV0gU3VwcG9y
dCBHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NDA0OAorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NDYyODk2NDU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorCisgICAgICAg
IEltcGxlbWVudCBHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IgdG8gc3BlY2lmeSBhIE1U
TERlcHRoU3RlbmNpbFN0YXRlIHRoYXQgaXMgc2V0IG9uIHRoZSBjb21tYW5kIGVuY29kZXIuCisK
KyAgICAgICAgRXhpc3RpbmcgdGVzdHMgY292ZXIgY2hhbmdlcyB0byBwaXBlbGluZS4gQmVoYXZp
b3IgZG9lcyBub3QgY2hhbmdlIGFzIERlcHRoU3RlbmNpbFN0YXRlIGhhcyBubyBlZmZlY3QgCisg
ICAgICAgIHdpdGhvdXQgYSBkZXB0aCB0ZXh0dXJlIGF0dGFjaGVkLgorCisgICAgICAgIE5ldyBp
bnRlcmZhY2UgZmlsZXMgYWRkZWQ6CisgICAgICAgICogTW9kdWxlcy93ZWJncHUvR1BVQ29tcGFy
ZUZ1bmN0aW9uLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9HUFVEZXB0aFN0ZW5jaWxT
dGF0ZURlc2NyaXB0b3IuaWRsOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVD
b21wYXJlRnVuY3Rpb24uaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVRGVw
dGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yLmg6CisKKyAgICAgICAgTW9kaWZpY2F0aW9uczoKKyAg
ICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XZWJHUFVEZXZpY2UuY3BwOiBJbmNsdWRlIGRlcHRoU3Rl
bmNpbFN0YXRlIHdoZW4gY3JlYXRpbmcgcGlwZWxpbmUuCisgICAgICAgIChXZWJDb3JlOjpXZWJH
UFVEZXZpY2U6OmNyZWF0ZVJlbmRlclBpcGVsaW5lIGNvbnN0KToKKyAgICAgICAgKiBNb2R1bGVz
L3dlYmdwdS9XZWJHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IuaDogQWRkIGRlcHRoU3RlbmNp
bFN0YXRlIHRvIHRoZSBkZXNjcmlwdG9yLgorICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dlYkdQ
VVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5pZGw6IERpdHRvLgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQaXBlbGluZS5oOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OkdQVVJlbmRlclBpcGVsaW5lOjpkZXB0aFN0ZW5jaWxTdGF0ZSBjb25zdCk6IEdldHRlci4K
KyAgICAgICAgKFdlYkNvcmU6OkdQVVJlbmRlclBpcGVsaW5lOjpwbGF0Zm9ybVJlbmRlclBpcGVs
aW5lIGNvbnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVUmVuZGVyUGlw
ZWxpbmVEZXNjcmlwdG9yLmg6IFVwZGF0ZSBjb25zdHJ1Y3RvciB0byB0YWtlIGRlcHRoU3RlbmNp
bFN0YXRlLgorICAgICAgICAoV2ViQ29yZTo6R1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yOjpH
UFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2dwdS9jb2NvYS9HUFVSZW5kZXJQYXNzRW5jb2Rlck1ldGFsLm1tOiBTZXR0aW5nIHBpcGVsaW5l
IGFsc28gc2V0cyB0aGUgaW5jbHVkZWQgZGVwdGhTdGVuY2lsU3RhdGUuCisgICAgICAgIChXZWJD
b3JlOjpHUFVSZW5kZXJQYXNzRW5jb2Rlcjo6c2V0UGlwZWxpbmUpOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVSZW5kZXJQaXBlbGluZU1ldGFsLm1tOiBDb252ZXJ0
IERlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvciB0byBNVExEZXB0aFN0ZW5jaWxTdGF0ZS4KKyAg
ICAgICAgKFdlYkNvcmU6OnZhbGlkYXRlQW5kQ29udmVydERlcHRoQ29tcGFyZUZ1bmN0aW9uVG9N
dGwpOgorICAgICAgICAoV2ViQ29yZTo6dHJ5Q3JlYXRlTXRsRGVwdGhTdGVuY2lsU3RhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6dHJ5Q3JlYXRlTXRsUmVuZGVyUGlwZWxpbmVTdGF0ZSk6IFJlZmFj
dG9yZWQgbG9naWMgb3V0IG9mIEdQVVJlbmRlclBpcGVsaW5lOjpjcmVhdGUuCisgICAgICAgIChX
ZWJDb3JlOjpHUFVSZW5kZXJQaXBlbGluZTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkdQ
VVJlbmRlclBpcGVsaW5lOjpHUFVSZW5kZXJQaXBlbGluZSk6CisKKyAgICAgICAgQWRkZWQgc3lt
Ym9scyBmb3IgQ29tcGFyZUZ1bmN0aW9uLCBEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IgdG8g
dGhlIHByb2plY3Q6CisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogRGVyaXZl
ZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9X
ZWJHUFVEZXZpY2UuaWRsOiBDbGVhbmVkIHVwIElETCB0byBtYXRjaCBjdXJyZW50IHZlcnNpb24u
CisKIDIwMTktMDEtMjkgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAK
ICAgICAgICAgUkVHUkVTU0lPTihyMjQwNTUzKTogW2lPU10gQ3Jhc2ggaW4gU2Nyb2xsaW5nVHJl
ZTo6dXBkYXRlVHJlZUZyb21TdGF0ZU5vZGUgd2hlbiBhdHRlbXB0aW5nIHRvIGxvZyBpbiB0byBp
Y2xvdWQuY29tCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1Nv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDQ4MmNmNmZkNTljYzM5YWQzMTI2ODAx
ODJmODA3Zjg2OTY2OTU3MDAuLmQzNTVlN2IyYTA2OTVjMzE3NWMzZGFkNmU2NTUyNjEzN2VlMmMx
MWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC00NjIsNiArNDYyLDggQEAgc2V0KFdlYkNvcmVf
Tk9OX1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL3dlYmRyaXZlci9OYXZpZ2F0b3JXZWJEcml2
ZXIuaWRsCiAKICAgICBNb2R1bGVzL3dlYmdwdS9ET01XaW5kb3dXZWJHUFUuaWRsCisgICAgTW9k
dWxlcy93ZWJncHUvR1BVQ29tcGFyZUZ1bmN0aW9uLmlkbAorICAgIE1vZHVsZXMvd2ViZ3B1L0dQ
VURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9XZWJH
UFUuaWRsCiAgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVQWRhcHRlci5pZGwKICAgICBNb2R1bGVz
L3dlYmdwdS9XZWJHUFVBZGFwdGVyRGVzY3JpcHRvci5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCmluZGV4IGNkNjc1NzY2NGVlYzVlMGM2MDlhYjJmNjkxMjBjODRhYWU5ZmQ2ODcuLjAx
ZDkzZWU4OWFmMGM5NGJkYTJjZjUxYWFiOTc5ZTY0MDFjYjVmYWYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZQpAQCAtMzcyLDYgKzM3Miw4IEBAIEpTX0JJTkRJTkdfSURMUyA9IFwKICAg
ICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxi
YWNrLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmRyaXZlci9OYXZpZ2F0b3JXZWJE
cml2ZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L0RPTVdpbmRvd1dlYkdQ
VS5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJncHUvR1BVQ29tcGFyZUZ1bmN0aW9u
LmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9HUFVEZXB0aFN0ZW5jaWxTdGF0
ZURlc2NyaXB0b3IuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVS5p
ZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJncHUvV2ViR1BVQWRhcHRlci5pZGwgXAog
ICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJncHUvV2ViR1BVQWRhcHRlckRlc2NyaXB0b3IuaWRs
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L0dQVUNvbXBhcmVG
dW5jdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9HUFVDb21wYXJlRnVu
Y3Rpb24uaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMyOTIyNTk5OTNlMmNmNzk5ZGI4MmMzY2RmMDg0NmE5NzYz
M2Y1N2MKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9H
UFVDb21wYXJlRnVuY3Rpb24uaWRsCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworLy8gaHR0
cHM6Ly9naXRodWIuY29tL2dwdXdlYi9ncHV3ZWIvYmxvYi9tYXN0ZXIvZGVzaWduL3NrZXRjaC53
ZWJpZGwKKworWworICAgIENvbmRpdGlvbmFsPVdFQkdQVSwKKyAgICBFbmFibGVkQXRSdW50aW1l
PVdlYkdQVQorXSBlbnVtIEdQVUNvbXBhcmVGdW5jdGlvbiB7CisgICAgIm5ldmVyIiwKKyAgICAi
bGVzcyIsCisgICAgImVxdWFsIiwKKyAgICAibGVzcy1lcXVhbCIsCisgICAgImdyZWF0ZXIiLAor
ICAgICJub3QtZXF1YWwiLAorICAgICJncmVhdGVyLWVxdWFsIiwKKyAgICAiYWx3YXlzIgorfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L0dQVURlcHRoU3RlbmNp
bFN0YXRlRGVzY3JpcHRvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9HUFVE
ZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk0NzQ1YjIxNWYxNGE1
ZGYzOTU4YTFjNzlhYzE3NTY3NDRhYTRhMzYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmdwdS9HUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaWRsCkBA
IC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworLy8gaHR0cHM6Ly9naXRodWIuY29tL2dwdXdlYi9n
cHV3ZWIvYmxvYi9tYXN0ZXIvZGVzaWduL3NrZXRjaC53ZWJpZGwKKworWworICAgIENvbmRpdGlv
bmFsPVdFQkdQVSwKKyAgICBFbmFibGVkQXRSdW50aW1lPVdlYkdQVQorXSBkaWN0aW9uYXJ5IEdQ
VURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvciB7CisgICAgYm9vbGVhbiBkZXB0aFdyaXRlRW5h
YmxlZDsKKyAgICBHUFVDb21wYXJlRnVuY3Rpb24gZGVwdGhDb21wYXJlOworCisvKiBOb3QgWWV0
IEltcGxlbWVudGVkCisgICAgR1BVU3RlbmNpbFN0YXRlRmFjZURlc2NyaXB0b3Igc3RlbmNpbEZy
b250OworICAgIEdQVVN0ZW5jaWxTdGF0ZUZhY2VEZXNjcmlwdG9yIHN0ZW5jaWxCYWNrOworCisg
ICAgdTMyIHN0ZW5jaWxSZWFkTWFzazsKKyAgICB1MzIgc3RlbmNpbFdyaXRlTWFzazsKKyovCit9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVURldmljZS5jcHAKaW5k
ZXggNzBhZGVjODMwNmZlYTIzMzc3NTI4ZGFkZTdiYjg4YWIyYzJiZDA3Mi4uMGQ5OGUxM2RiM2Y3
ODgxNWEzZDQxZjk0MjdiZWVlNTI1ZmNhMzM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmdwdS9XZWJHUFVEZXZpY2UuY3BwCkBAIC0xNjUsNyArMTY1LDcgQEAgUmVmUHRyPFdl
YkdQVVJlbmRlclBpcGVsaW5lPiBXZWJHUFVEZXZpY2U6OmNyZWF0ZVJlbmRlclBpcGVsaW5lKFdl
YkdQVVJlbmRlclBpcGUKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCi0gICAgaWYg
KGF1dG8gcGlwZWxpbmUgPSBtX2RldmljZS0+Y3JlYXRlUmVuZGVyUGlwZWxpbmUoR1BVUmVuZGVy
UGlwZWxpbmVEZXNjcmlwdG9yIHsgV1RGTW92ZShwaXBlbGluZUxheW91dCksIFdURk1vdmUoKnZl
cnRleFN0YWdlKSwgV1RGTW92ZSgqZnJhZ21lbnRTdGFnZSksIGRlc2NyaXB0b3IucHJpbWl0aXZl
VG9wb2xvZ3ksIFdURk1vdmUoZGVzY3JpcHRvci5pbnB1dFN0YXRlKSB9KSkKKyAgICBpZiAoYXV0
byBwaXBlbGluZSA9IG1fZGV2aWNlLT5jcmVhdGVSZW5kZXJQaXBlbGluZShHUFVSZW5kZXJQaXBl
bGluZURlc2NyaXB0b3IgeyBXVEZNb3ZlKHBpcGVsaW5lTGF5b3V0KSwgV1RGTW92ZSgqdmVydGV4
U3RhZ2UpLCBXVEZNb3ZlKCpmcmFnbWVudFN0YWdlKSwgZGVzY3JpcHRvci5wcmltaXRpdmVUb3Bv
bG9neSwgV1RGTW92ZShkZXNjcmlwdG9yLmRlcHRoU3RlbmNpbFN0YXRlKSwgV1RGTW92ZShkZXNj
cmlwdG9yLmlucHV0U3RhdGUpIH0pKQogICAgICAgICByZXR1cm4gV2ViR1BVUmVuZGVyUGlwZWxp
bmU6OmNyZWF0ZShwaXBlbGluZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICByZXR1cm4gbnVsbHB0
cjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVURl
dmljZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVEZXZpY2UuaWRs
CmluZGV4IGYyYjY3NzRjZDBkZTk0N2JiNTRlODQ5MjY2Zjc2YWJmOGQ3NDMwZWUuLjJjODZiM2M4
MGIwYjFiMjg0OTVkYjQ5YThlZmFmOWZhMWRjMGQ3MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVURldmljZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNlLmlkbApAQCAtMjksOCArMjksNiBAQAogICAgIEVu
YWJsZWRBdFJ1bnRpbWU9V2ViR1BVLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0g
aW50ZXJmYWNlIFdlYkdQVURldmljZSB7Ci0gICAgLy8gcmVhZG9ubHkgYXR0cmlidXRlIFdlYkdQ
VUV4dGVuc2lvbnMgZXh0ZW5zaW9uczsKLSAgICAvLyByZWFkb25seSBhdHRyaWJ1dGUgV2ViR1BV
TGltaXRzIGxpbWl0czsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgV2ViR1BVQWRhcHRlciBhZGFw
dGVyOwogCiAgICAgV2ViR1BVQnVmZmVyIGNyZWF0ZUJ1ZmZlcihXZWJHUFVCdWZmZXJEZXNjcmlw
dG9yIGRlc2NyaXB0b3IpOwpAQCAtNDgsMTggKzQ2LDE1IEBACiAgICAgV2ViR1BVUXVldWUgZ2V0
UXVldWUoKTsKIAogICAgIC8vIEZJWE1FOiBVbmltcGxlbWVudGVkLgorICAgIC8vIHJlYWRvbmx5
IGF0dHJpYnV0ZSBXZWJHUFVFeHRlbnNpb25zIGV4dGVuc2lvbnM7CisgICAgLy8gcmVhZG9ubHkg
YXR0cmlidXRlIFdlYkdQVUxpbWl0cyBsaW1pdHM7CisKICAgICAvLyBXZWJHUFVUZXh0dXJlIGNy
ZWF0ZVRleHR1cmUoV2ViR1BVVGV4dHVyZURlc2NyaXB0b3IgZGVzY3JpcHRvcik7CiAgICAgLy8g
V2ViR1BVU2FtcGxlciBjcmVhdGVTYW1wbGVyKFdlYkdQVVNhbXBsZXJEZXNjcmlwdG9yIGRlc2Ny
aXB0b3IpOwotICAgIC8vCi0gICAgLy8gV2ViR1BVQmluZEdyb3VwIGNyZWF0ZUJpbmRHcm91cChX
ZWJHUFVCaW5kR3JvdXBEZXNjcmlwdG9yIGRlc2NyaXB0b3IpOwotICAgIC8vCi0gICAgLy8gV2Vi
R1BVQmxlbmRTdGF0ZSBjcmVhdGVCbGVuZFN0YXRlKFdlYkdQVUJsZW5kU3RhdGVEZXNjcmlwdG9y
IGRlc2NyaXB0b3IpOwotICAgIC8vIFdlYkdQVURlcHRoU3RlbmNpbFN0YXRlIGNyZWF0ZURlcHRo
U3RlbmNpbFN0YXRlKFdlYkdQVURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvciBkZXNjcmlwdG9y
KTsKLSAgICAvLyBXZWJHUFVJbnB1dFN0YXRlIGNyZWF0ZUlucHV0U3RhdGUoV2ViR1BVSW5wdXRT
dGF0ZURlc2NyaXB0b3IgZGVzY3JpcHRvcik7Ci0gICAgLy8gV2ViR1BVQXR0YWNobWVudFN0YXRl
IGNyZWF0ZUF0dGFjaG1lbnRTdGF0ZShXZWJHUFVBdHRhY2htZW50U3RhdGVEZXNjcmlwdG9yIGRl
c2NyaXB0b3IpOworCiAgICAgLy8gV2ViR1BVQ29tcHV0ZVBpcGVsaW5lIGNyZWF0ZUNvbXB1dGVQ
aXBlbGluZShXZWJHUFVDb21wdXRlUGlwZWxpbmVEZXNjcmlwdG9yIGRlc2NyaXB0b3IpOwogICAg
IC8vIFdlYkdQVUZlbmNlIGNyZWF0ZUZlbmNlKFdlYkdQVUZlbmNlRGVzY3JpcHRvciBkZXNjcmlw
dG9yKTsKLSAgICAvLworCiAgICAgLy8gYXR0cmlidXRlIFdlYkdQVUxvZ0NhbGxiYWNrIG9uTG9n
OwogICAgIC8vIFdlYkdQVU9iamVjdFN0YXR1c1F1ZXJ5IGdldE9iamVjdFN0YXR1cyhTdGF0dXNh
YmxlT2JqZWN0IHN0YXR1c2FibGVPYmplY3QpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9y
LmgKaW5kZXggYzEyZjc1OGE3YmZjZTg5YWFhMTRjNjFkMjA1Y2VmOTNmZDlhMDM0Yi4uMDRlYTY4
ODJiZTgxMWE2NTgyY2ZkNThhMWQzMWNmZWNlYTM4NjEwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGlwZWxpbmVEZXNj
cmlwdG9yLmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2lmIEVOQUJMRShXRUJHUFUpCiAKKyNpbmNs
dWRlICJHUFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJHUFVSZW5k
ZXJQaXBlbGluZURlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJXZWJHUFVJbnB1dFN0YXRlRGVzY3Jp
cHRvci5oIgogI2luY2x1ZGUgIldlYkdQVVBpcGVsaW5lRGVzY3JpcHRvckJhc2UuaCIKQEAgLTQw
LDYgKzQxLDcgQEAgc3RydWN0IFdlYkdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvciA6IFdlYkdQ
VVBpcGVsaW5lRGVzY3JpcHRvckJhc2UgewogICAgIFdlYkdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlw
dG9yIHZlcnRleFN0YWdlOwogICAgIFdlYkdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlwdG9yIGZyYWdt
ZW50U3RhZ2U7CiAgICAgUHJpbWl0aXZlVG9wb2xvZ3kgcHJpbWl0aXZlVG9wb2xvZ3k7CisgICAg
R1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yIGRlcHRoU3RlbmNpbFN0YXRlOwogICAgIFdl
YkdQVUlucHV0U3RhdGVEZXNjcmlwdG9yIGlucHV0U3RhdGU7CiB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0
b3IuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGlwZWxp
bmVEZXNjcmlwdG9yLmlkbAppbmRleCBmZGRiNjI4ZGZhNDBiOTA1MmY3OTg5MjE4NTYwODAyNGVl
MzkwOTU1Li4xMmJkNzFkMzczOTQ5YWE0YmY4NWVlZDY5MmQzZTBjMGJhN2Q4ZWI5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQaXBlbGluZURl
c2NyaXB0b3IuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJl
bmRlclBpcGVsaW5lRGVzY3JpcHRvci5pZGwKQEAgLTQwLDEwICs0MCwxMCBAQCBlbnVtIFdlYkdQ
VVByaW1pdGl2ZVRvcG9sb2d5IHsKICAgICBXZWJHUFVQaXBlbGluZVN0YWdlRGVzY3JpcHRvciBm
cmFnbWVudFN0YWdlOwogCiAgICAgV2ViR1BVUHJpbWl0aXZlVG9wb2xvZ3kgcHJpbWl0aXZlVG9w
b2xvZ3k7CisgICAgR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yIGRlcHRoU3RlbmNpbFN0
YXRlOwogICAgIFdlYkdQVUlucHV0U3RhdGVEZXNjcmlwdG9yIGlucHV0U3RhdGU7CiAvKiBUbyBC
ZSBJbXBsZW1lbnRlZDoKICAgICBzZXF1ZW5jZTxXZWJHUFVCbGVuZFN0YXRlRGVzY3JpcHRvcj4g
YmxlbmRTdGF0ZXM7Ci0gICAgV2ViR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yIGRlcHRo
U3RlbmNpbFN0YXRlOwogICAgIFdlYkdQVUF0dGFjaG1lbnRzU3RhdGVEZXNjcmlwdG9yIGF0dGFj
aG1lbnRzU3RhdGU7CiAgICAgLy8gVE9ETyBvdGhlciBwcm9wZXJ0aWVzCiAqLwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dAppbmRleCBlMDczODQxYTY5NDU3YzA3ZmE3NTdhOTU2YjMzYTJlZDhiYzU2Y2Q3Li5jMjdkOTE3
MzMwOTQyYmQ4MDhkZjIyZGQ5NzY2MjI0MGMxYWM1OTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMjc2
Miw2ICsyNzYyLDggQEAgSlNGaWxsTW9kZS5jcHAKIEpTRm9jdXNFdmVudC5jcHAKIEpTRm9udEZh
Y2UuY3BwCiBKU0ZvbnRGYWNlU2V0LmNwcAorSlNHUFVDb21wYXJlRnVuY3Rpb24uY3BwCitKU0dQ
VURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5jcHAKIEpTR2Fpbk5vZGUuY3BwCiBKU0dlb2xv
Y2F0aW9uLmNwcAogSlNHZW9wb3NpdGlvbi5jcHAKQEAgLTMzMDMsOCArMzMwNSw4IEBAIEpTV2Vi
R1BVQnVmZmVyLmNwcAogSlNXZWJHUFVCdWZmZXJCaW5kaW5nLmNwcAogSlNXZWJHUFVCdWZmZXJE
ZXNjcmlwdG9yLmNwcAogSlNXZWJHUFVCdWZmZXJVc2FnZS5jcHAKLUpTV2ViR1BVQ29tbWFuZEJ1
ZmZlci5jcHAKIEpTV2ViR1BVQ29sb3IuY3BwCitKU1dlYkdQVUNvbW1hbmRCdWZmZXIuY3BwCiBK
U1dlYkdQVURldmljZS5jcHAKIEpTV2ViR1BVSW5kZXhGb3JtYXQuY3BwCiBKU1dlYkdQVUlucHV0
U3RhdGVEZXNjcmlwdG9yLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGUzYzc1ZThjODYzMzU3NGQ4OWU4NGJjMGFiYmYxZjEw
MzhhYmQzMGMuLjZlYWQ3M2M5ODk0OTc2MmUyMjU0MDAyODgzNzgwYWRmNGU3YTZhOWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTE2MDgsNyArMTYwOCw3IEBACiAJCTUxRjY0NTY5MUY0NTM5QjkwMEI1NERFRCAvKiBTZXJ2aWNl
V29ya2VySm9iRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTFGNjQ1NjYxRjQ1Mzk5RjAwQjU0REVEIC8qIFNlcnZpY2VXb3JrZXJKb2JEYXRhLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTFGNjQ1
NkExRjQ1MzlDMDAwQjU0REVEIC8qIFNlcnZpY2VXb3JrZXJKb2JUeXBlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUY2NDU2NTFGNDUzOTlGMDBCNTRE
RUQgLyogU2VydmljZVdvcmtlckpvYlR5cGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk1MUY2NDU5NzFGNEE2ODZGMDBCNTRERUQgLyogU1dTZXJ2
ZXJSZWdpc3RyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUxRjY0NTk0MUY0QTY4NEYwMEI1NERFRCAvKiBTV1NlcnZlclJlZ2lzdHJhdGlvbi5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTUxRjY0
NUQ1MUZFQ0RCQ0UwMEI1NERFRCAvKiBQcm9jZXNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUY2NDVEMzFGRUNEQkM4MDBCNTRERUQgLyogUHJvY2Vz
cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUx
RjY0NUQ1MUZFQ0RCQ0UwMEI1NERFRCAvKiBQcm9jZXNzSWRlbnRpZmllci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFGNjQ1RDMxRkVDREJDODAwQjU0
REVEIC8qIFByb2Nlc3NJZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTFGNjQ1RTAxRkY0NTk0RTAwQjU0REVEIC8qIE1lc3NhZ2VQ
b3J0SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTFGNjQ1REUxRkY0NTk0QjAwQjU0REVEIC8qIE1lc3NhZ2VQb3J0SWRlbnRpZmllci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUxRjc5
OEYwMUJFODgwRTcwMDhBRTQ5MSAvKiBJREJJbmRleEluZm8uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRjc5OEVDMUJFODgwRDMwMDhBRTQ5MSAvKiBJ
REJJbmRleEluZm8uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk1MUY4ODZDMDFGMzI5MjMxMDBDMTkzRUYgLyogSlNOYXZpZ2F0b3JTZXJ2aWNlV29y
a2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUY4
ODZCRjFGMzI5MjA3MDBDMTkzRUYgLyogSlNOYXZpZ2F0b3JTZXJ2aWNlV29ya2VyLmggKi87IH07
CkBAIC0xNDAxMiw2ICsxNDAxMiwxMCBAQAogCQlEMDMyMTFDRjIxQUM5NTRFMDA3NjNDRjIgLyog
R1BVUHJvZ3JhbW1hYmxlUGFzc0VuY29kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR1BVUHJvZ3JhbW1h
YmxlUGFzc0VuY29kZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRDAzMjExRDAy
MUFDOTU0RjAwNzYzQ0YyIC8qIEdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUQwMzZERDhEMjA4RkZDMEMwMEY5RjRCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNU
Qy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlEMDNDODQ5QTIxRkZDNjY3MDAwMjIyN0YgLyogR1BVRGVwdGhTdGVu
Y2lsU3RhdGVEZXNjcmlwdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdQVURlcHRoU3RlbmNpbFN0YXRl
RGVzY3JpcHRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMDNDODQ5QzIxRkZD
N0ZDMDAwMjIyN0YgLyogR1BVQ29tcGFyZUZ1bmN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdQVUNv
bXBhcmVGdW5jdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMDNDODQ5RTIx
RkZDRjAwMDAwMjIyN0YgLyogR1BVQ29tcGFyZUZ1bmN0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBHUFVDb21wYXJl
RnVuY3Rpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMDNDODRBMjIxRkZE
NzIzMDAwMjIyN0YgLyogR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBH
UFVEZXB0aFN0ZW5jaWxTdGF0ZURlc2NyaXB0b3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlEMDQ1QUQxRDIxNjgyMzBCMDAwQTZFOUIgLyogV2ViTWV0YWxMYXllci5tbSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYk1ldGFsTGF5ZXIubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUQwNDVBRDFFMjE2ODI0NDkwMDBBNkU5QiAvKiBK
U1dlYk1ldGFsUmVuZGVyUGFzc0F0dGFjaG1lbnREZXNjcmlwdG9yQ3VzdG9tLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTV2ViTWV0YWxSZW5kZXJQYXNzQXR0YWNobWVudERlc2NyaXB0b3JDdXN0
b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlEMDQ1QUQxRjIxNjgyNDQ5MDAw
QTZFOUIgLyogSlNXZWJNZXRhbFJlbmRlcmluZ0NvbnRleHRDdXN0b20uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNXZWJNZXRhbFJlbmRlcmluZ0NvbnRleHRDdXN0b20uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTg0NDMsNiArMTg0NDcsOCBAQAogCQkJCUQwRDg2NDg3MjFC
NjRDQUEwMDNDOTgzQyAvKiBHUFVCdWZmZXJEZXNjcmlwdG9yLmggKi8sCiAJCQkJRDAwMUQ5QUIy
MUIwQzdCRjAwMjNCOUJDIC8qIEdQVUNvbG9yLmggKi8sCiAJCQkJMzEyRkY4QkQyMUE0QzJGMTAw
RUIxOTlEIC8qIEdQVUNvbW1hbmRCdWZmZXIuaCAqLywKKwkJCQlEMDNDODQ5QzIxRkZDN0ZDMDAw
MjIyN0YgLyogR1BVQ29tcGFyZUZ1bmN0aW9uLmggKi8sCisJCQkJRDAzQzg0OUEyMUZGQzY2NzAw
MDIyMjdGIC8qIEdQVURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5oICovLAogCQkJCTMxMkZG
OEJGMjFBNEMyRjEwMEVCMTk5RCAvKiBHUFVEZXZpY2UuY3BwICovLAogCQkJCTMxMkZGOEJFMjFB
NEMyRjEwMEVCMTk5RCAvKiBHUFVEZXZpY2UuaCAqLywKIAkJCQlEMEQ4NjQ5OTIxQkExQjFGMDAz
Qzk4M0MgLyogR1BVSW5wdXRTdGF0ZURlc2NyaXB0b3IuaCAqLywKQEAgLTI2MDIzLDYgKzI2MDI5
LDggQEAKIAkJCQlEMDBGNTk0MTIxNkVDQzdBMDAwRDcxREIgLyogRE9NV2luZG93V2ViR1BVLmNw
cCAqLywKIAkJCQlEMDBGNTk0MDIxNkVDQzdBMDAwRDcxREIgLyogRE9NV2luZG93V2ViR1BVLmgg
Ki8sCiAJCQkJRDAwRjU5NDIyMTZFQ0M3QTAwMEQ3MURCIC8qIERPTVdpbmRvd1dlYkdQVS5pZGwg
Ki8sCisJCQkJRDAzQzg0OUUyMUZGQ0YwMDAwMDIyMjdGIC8qIEdQVUNvbXBhcmVGdW5jdGlvbi5p
ZGwgKi8sCisJCQkJRDAzQzg0QTIyMUZGRDcyMzAwMDIyMjdGIC8qIEdQVURlcHRoU3RlbmNpbFN0
YXRlRGVzY3JpcHRvci5pZGwgKi8sCiAJCQkJRDAwRjU5NDcyMTZFRkU1NDAwMEQ3MURCIC8qIFdl
YkdQVS5jcHAgKi8sCiAJCQkJRDAwRjU5NDYyMTZFRkU1NDAwMEQ3MURCIC8qIFdlYkdQVS5oICov
LAogCQkJCUQwMEY1OTQ4MjE2RUZFNTQwMDBENzFEQiAvKiBXZWJHUFUuaWRsICovLApAQCAtMzEw
NDcsNiArMzEwNTUsNyBAQAogCQkJCUJDQkI4QUI5MTNGMUFGQjAwMDczNERGMCAvKiBQT0RJbnRl
cnZhbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCQjhBQkExM0YxQUZCMDAwNzM0REYwIC8qIFBP
REludGVydmFsVHJlZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCQjhBQkIxM0YxQUZCMDAwNzM0
REYwIC8qIFBPRFJlZEJsYWNrVHJlZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzFCNUFCMjYyMUYx
RDlGNDAwMzc2RTVDIC8qIFBvaW50ZXJDYXB0dXJlQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMzE3RDNGRjMyMTU1OTlGNDAwMzRFM0I5IC8qIFBvaW50ZXJFdmVudC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQjJCMUY3MTcwRDAwQ0FBODAwNEFFQTY0IC8qIFBvaW50ZXJFdmVudHNIaXRS
dWxlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJM0ZGODEzQTcxREJBODY0MDAwOUJGMDAxIC8qIFBv
aW50ZXJMb2NrQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCkBAIC0zMTA3MSw3ICszMTA4MCw3
IEBACiAJCQkJQTEwREJGNDcxOEY5MjMxNzAwMEQ3MEM2IC8qIFByZXZpZXdMb2FkZXJDbGllbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCUU0NjA1RkVDMjE2NjQ4MDkwMEU1MzA0NiAvKiBQcmV3YXJt
SW5mb3JtYXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUI3MUZFNkRGMTEwOTFDQjMwMERBRUY3
NyAvKiBQcmludENvbnRleHQuaCBpbiBIZWFkZXJzICovLAotCQkJCTUxRjY0NUQ1MUZFQ0RCQ0Uw
MEI1NERFRCAvKiBQcm9jZXNzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUY2NDVENTFGRUNEQkNF
MDBCNTRERUQgLyogUHJvY2Vzc0lkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4RUE3
RUJDMEExOTQ1RDAwMEE4RUY1RiAvKiBQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaCBpbiBIZWFkZXJz
ICovLAogCQkJCUU0MjA1MDE3MjE0MTkwMUIwMDY2RUYzQiAvKiBQcm9jZXNzV2FybWluZy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJRTQ0NjEzRUMwQ0Q2ODFCNTAwRkFEQTc1IC8qIFByb2dyZXNzRXZl
bnQuaCBpbiBIZWFkZXJzICovLApAQCAtMzE5NjgsNyArMzE5NzcsNiBAQAogCQkJCTI2RTk0NERE
MUFDNEI0RUEwMDdCODVCNSAvKiBUZXJtLmggaW4gSGVhZGVycyAqLywKIAkJCQk2NTUwQjZBNjA5
OURGMDI3MDA5MEQ3ODEgLyogVGV4dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlFMTcwOTlF
NjQ5MjAwNTZFNTgxIC8qIFRleHRBZmZpbml0eS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNzFCNUFC
MjYyMUYxRDlGNDAwMzc2RTVDIC8qIFBvaW50ZXJDYXB0dXJlQ29udHJvbGxlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0U3QjJEQjUxNTg2QUJBRDAwOThCM0ZBIC8qIFRleHRBbHRlcm5hdGl2ZVdp
dGhSYW5nZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY1NERDRTYxODgxMDUxRDAwM0VFREJCIC8q
IFRleHRBdXRvU2l6aW5nLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMkMzREEzNDBEMDA2QzFEMDBF
RjZGMjYgLyogVGV4dEJvdW5kYXJpZXMuaCBpbiBIZWFkZXJzICovLApAQCAtMzI4MjQsNyArMzI4
MzIsNiBAQAogCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKIAkJCWZpbGVzID0gKAog
CQkJCUE5Nzg3Q0I0MUY1RjVDNjYwMEM1NTFDNiAvKiBBY2Nlc3NpYmlsaXR5TWVkaWFPYmplY3Qu
Y3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNkIwQTA3RjMyMUZBNEI1QzAwRDU3MzkxIC8qIEFkQ2xp
Y2tBdHRyaWJ1dGlvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUE3OTVDODE4ODhCQ0I1MDAz
ODJGOTAgLyogQU5HTEVJbnN0YW5jZWRBcnJheXMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNDkw
NzA3RTYxMjE5QzA0MzAwRDkwRTUxIC8qIEFOR0xFV2ViS2l0QnJpZGdlLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUNEMEVFRTBFMTQ3NDNGMzkwMDNFQUZBMiAvKiBBdWRpb0Rlc3RpbmF0aW9uSU9T
LmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3B1L0dQVUNvbXBhcmVGdW5jdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3B1L0dQVUNvbXBhcmVGdW5jdGlvbi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRkZTlmNjVj
NzQwZjlhZjgwOGU2MzZlMzhlZWY5NzU0ZjU5MjNlNjcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVQ29tcGFyZUZ1bmN0aW9uLmgKQEAg
LTAsMCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKFdF
QkdQVSkKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitlbnVtIGNsYXNzIEdQVUNvbXBhcmVGdW5j
dGlvbiB7CisgICAgTmV2ZXIsCisgICAgTGVzcywKKyAgICBFcXVhbCwKKyAgICBMZXNzRXF1YWws
CisgICAgR3JlYXRlciwKKyAgICBOb3RFcXVhbCwKKyAgICBHcmVhdGVyRXF1YWwsCisgICAgQWx3
YXlzCit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VC
R1BVKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQ
VURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3B1L0dQVURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvci5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjRhNDdkMDNiMzYyYTY4OGIyZDc5MTBjN2ZiMTc5YmIxZTk5ZTA2ZTQKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVRGVwdGhTdGVuY2ls
U3RhdGVEZXNjcmlwdG9yLmgKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEg
b25jZQorCisjaWYgRU5BQkxFKFdFQkdQVSkKKworI2luY2x1ZGUgIkdQVUNvbXBhcmVGdW5jdGlv
bi5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0cnVjdCBHUFVEZXB0aFN0ZW5jaWxTdGF0
ZURlc2NyaXB0b3IgeworICAgIGJvb2wgZGVwdGhXcml0ZUVuYWJsZWQ7CisgICAgR1BVQ29tcGFy
ZUZ1bmN0aW9uIGRlcHRoQ29tcGFyZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwor
I2VuZGlmIC8vIEVOQUJMRShXRUJHUFUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9ncHUvR1BVUmVuZGVyUGlwZWxpbmUuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQaXBlbGluZS5oCmluZGV4IGIzMDJlMzQyZTc3
MzA5YTRhYTJkOTI3N2I4MGYxNzM1ZGJhNmQ4NzEuLjViNWI5YzBmZDYwMWI2NzY1YTgyZmJjMzli
MjA3Mjg3N2JkY2UxMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dwdS9HUFVSZW5kZXJQaXBlbGluZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQaXBlbGluZS5oCkBAIC0yOCwxMiArMjgsMTQgQEAKICNp
ZiBFTkFCTEUoV0VCR1BVKQogCiAjaW5jbHVkZSAiR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9y
LmgiCi0KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKKyNpZiBVU0UoTUVUQUwpCitPQkpDX1BS
T1RPQ09MKE1UTERlcHRoU3RlbmNpbFN0YXRlKTsKIE9CSkNfUFJPVE9DT0woTVRMUmVuZGVyUGlw
ZWxpbmVTdGF0ZSk7CisjZW5kaWYgLy8gVVNFKE1FVEFMKQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKQEAgLTQ3LDEzICs0OSwxOCBAQCBjbGFzcyBHUFVSZW5kZXJQaXBlbGluZSA6IHB1YmxpYyBS
ZWZDb3VudGVkPEdQVVJlbmRlclBpcGVsaW5lPiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZlB0
cjxHUFVSZW5kZXJQaXBlbGluZT4gY3JlYXRlKGNvbnN0IEdQVURldmljZSYsIEdQVVJlbmRlclBp
cGVsaW5lRGVzY3JpcHRvciYmKTsKIAorI2lmIFVTRShNRVRBTCkKKyAgICBNVExEZXB0aFN0ZW5j
aWxTdGF0ZSAqZGVwdGhTdGVuY2lsU3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2RlcHRoU3RlbmNp
bFN0YXRlLmdldCgpOyB9CisjZW5kaWYKICAgICBQbGF0Zm9ybVJlbmRlclBpcGVsaW5lKiBwbGF0
Zm9ybVJlbmRlclBpcGVsaW5lKCkgY29uc3QgeyByZXR1cm4gbV9wbGF0Zm9ybVJlbmRlclBpcGVs
aW5lLmdldCgpOyB9Ci0KICAgICBQcmltaXRpdmVUb3BvbG9neSBwcmltaXRpdmVUb3BvbG9neSgp
IGNvbnN0IHsgcmV0dXJuIG1fcHJpbWl0aXZlVG9wb2xvZ3k7IH0KIAogcHJpdmF0ZToKLSAgICBH
UFVSZW5kZXJQaXBlbGluZShQbGF0Zm9ybVJlbmRlclBpcGVsaW5lU21hcnRQdHImJiwgR1BVUmVu
ZGVyUGlwZWxpbmVEZXNjcmlwdG9yJiYpOworI2lmIFVTRShNRVRBTCkKKyAgICBHUFVSZW5kZXJQ
aXBlbGluZShSZXRhaW5QdHI8TVRMRGVwdGhTdGVuY2lsU3RhdGU+JiYsIFBsYXRmb3JtUmVuZGVy
UGlwZWxpbmVTbWFydFB0ciYmLCBHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3ImJik7CiAKKyAg
ICBSZXRhaW5QdHI8TVRMRGVwdGhTdGVuY2lsU3RhdGU+IG1fZGVwdGhTdGVuY2lsU3RhdGU7Cisj
ZW5kaWYgLy8gVVNFKE1FVEFMKQogICAgIFBsYXRmb3JtUmVuZGVyUGlwZWxpbmVTbWFydFB0ciBt
X3BsYXRmb3JtUmVuZGVyUGlwZWxpbmU7CiAgICAgUmVmUHRyPEdQVVBpcGVsaW5lTGF5b3V0PiBt
X2xheW91dDsKICAgICBQcmltaXRpdmVUb3BvbG9neSBtX3ByaW1pdGl2ZVRvcG9sb2d5OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBp
cGVsaW5lRGVzY3JpcHRvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L0dQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5oCmluZGV4IDMyMTY4MzNkOTA3Y2YyNDhkMzk3
YjRkYzgyMzhkNDUxMTUzYWQ0ZTUuLjYyNzUzMWI3NmJiMjdlYzZkMjViZjQ2YjM4YmExYmRlOTRh
NzZjMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9H
UFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9ncHUvR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yLmgKQEAgLTI3LDYgKzI3
LDcgQEAKIAogI2lmIEVOQUJMRShXRUJHUFUpCiAKKyNpbmNsdWRlICJHUFVEZXB0aFN0ZW5jaWxT
dGF0ZURlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJHUFVJbnB1dFN0YXRlRGVzY3JpcHRvci5oIgog
I2luY2x1ZGUgIkdQVVBpcGVsaW5lRGVzY3JpcHRvckJhc2UuaCIKICNpbmNsdWRlICJHUFVQaXBl
bGluZVN0YWdlRGVzY3JpcHRvci5oIgpAQCAtNDQsMTEgKzQ1LDEyIEBAIHN0cnVjdCBHUFVSZW5k
ZXJQaXBlbGluZURlc2NyaXB0b3IgOiBHUFVQaXBlbGluZURlc2NyaXB0b3JCYXNlIHsKICAgICAg
ICAgVHJpYW5nbGVTdHJpcAogICAgIH07CiAKLSAgICBHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0
b3IoUmVmUHRyPEdQVVBpcGVsaW5lTGF5b3V0PiYmIGxheW91dCwgR1BVUGlwZWxpbmVTdGFnZURl
c2NyaXB0b3ImJiB2ZXJ0ZXgsIEdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlwdG9yJiYgZnJhZ21lbnQs
IFByaW1pdGl2ZVRvcG9sb2d5IHRvcG9sb2d5LCBHUFVJbnB1dFN0YXRlRGVzY3JpcHRvciYmIGlu
cHV0KQorICAgIEdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvcihSZWZQdHI8R1BVUGlwZWxpbmVM
YXlvdXQ+JiYgbGF5b3V0LCBHUFVQaXBlbGluZVN0YWdlRGVzY3JpcHRvciYmIHZlcnRleCwgR1BV
UGlwZWxpbmVTdGFnZURlc2NyaXB0b3ImJiBmcmFnbWVudCwgUHJpbWl0aXZlVG9wb2xvZ3kgdG9w
b2xvZ3ksIEdQVURlcHRoU3RlbmNpbFN0YXRlRGVzY3JpcHRvciYmIGRlcHRoLCBHUFVJbnB1dFN0
YXRlRGVzY3JpcHRvciYmIGlucHV0KQogICAgICAgICA6IEdQVVBpcGVsaW5lRGVzY3JpcHRvckJh
c2UgeyBXVEZNb3ZlKGxheW91dCkgfQogICAgICAgICAsIHZlcnRleFN0YWdlKFdURk1vdmUodmVy
dGV4KSkKICAgICAgICAgLCBmcmFnbWVudFN0YWdlKFdURk1vdmUoZnJhZ21lbnQpKQogICAgICAg
ICAsIHByaW1pdGl2ZVRvcG9sb2d5KHRvcG9sb2d5KQorICAgICAgICAsIGRlcHRoU3RlbmNpbFN0
YXRlKFdURk1vdmUoZGVwdGgpKQogICAgICAgICAsIGlucHV0U3RhdGUoV1RGTW92ZShpbnB1dCkp
CiAgICAgewogICAgIH0KQEAgLTU2LDYgKzU4LDcgQEAgc3RydWN0IEdQVVJlbmRlclBpcGVsaW5l
RGVzY3JpcHRvciA6IEdQVVBpcGVsaW5lRGVzY3JpcHRvckJhc2UgewogICAgIEdQVVBpcGVsaW5l
U3RhZ2VEZXNjcmlwdG9yIHZlcnRleFN0YWdlOwogICAgIEdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlw
dG9yIGZyYWdtZW50U3RhZ2U7CiAgICAgUHJpbWl0aXZlVG9wb2xvZ3kgcHJpbWl0aXZlVG9wb2xv
Z3k7CisgICAgR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yIGRlcHRoU3RlbmNpbFN0YXRl
OwogICAgIEdQVUlucHV0U3RhdGVEZXNjcmlwdG9yIGlucHV0U3RhdGU7CiB9OwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVUmVuZGVy
UGFzc0VuY29kZXJNZXRhbC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dw
dS9jb2NvYS9HUFVSZW5kZXJQYXNzRW5jb2Rlck1ldGFsLm1tCmluZGV4IDU5NGEzMzcwYTg0NDlm
MWQ3YjlmMmQ3OGZhODJmN2Y5OTI2NzI0N2UuLmFlYzQwZTQ3OWQ3MWE4YzgwODJjNjA5YjZkMjMx
YzUxNmMyOGZkYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dwdS9jb2NvYS9HUFVSZW5kZXJQYXNzRW5jb2Rlck1ldGFsLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVSZW5kZXJQYXNzRW5jb2Rlck1ldGFs
Lm1tCkBAIC04MCw3ICs4MCwxNSBAQCBQbGF0Zm9ybVByb2dyYW1tYWJsZVBhc3NFbmNvZGVyICpH
UFVSZW5kZXJQYXNzRW5jb2Rlcjo6cGxhdGZvcm1QYXNzRW5jb2RlcigpIGNvbgogCiB2b2lkIEdQ
VVJlbmRlclBhc3NFbmNvZGVyOjpzZXRQaXBlbGluZShSZWY8R1BVUmVuZGVyUGlwZWxpbmU+JiYg
cGlwZWxpbmUpCiB7CisgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOworCisgICAgaWYg
KHBpcGVsaW5lLT5kZXB0aFN0ZW5jaWxTdGF0ZSgpKQorICAgICAgICBbbV9wbGF0Zm9ybVJlbmRl
clBhc3NFbmNvZGVyIHNldERlcHRoU3RlbmNpbFN0YXRlOnBpcGVsaW5lLT5kZXB0aFN0ZW5jaWxT
dGF0ZSgpXTsKKwogICAgIFttX3BsYXRmb3JtUmVuZGVyUGFzc0VuY29kZXIgc2V0UmVuZGVyUGlw
ZWxpbmVTdGF0ZTpwaXBlbGluZS0+cGxhdGZvcm1SZW5kZXJQaXBlbGluZSgpXTsKKworICAgIEVO
RF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CisKICAgICBtX3BpcGVsaW5lID0gV1RGTW92ZShwaXBl
bGluZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dwdS9jb2NvYS9HUFVSZW5kZXJQaXBlbGluZU1ldGFsLm1tIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBpcGVsaW5lTWV0YWwubW0KaW5kZXgg
YjRlODc2MGI1Y2NjZDIxMjgyNDE0ZTA5ZWFmNTZiNWMwZjcxOTI2OC4uNTg4NjBlYmE1YzhiYjcw
ZDBlY2YyNzY4MTVlMmI4MjZjZjViNjY4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBpcGVsaW5lTWV0YWwubW0KKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBpcGVs
aW5lTWV0YWwubW0KQEAgLTM2LDYgKzM2LDc1IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAor
c3RhdGljIE9wdGlvbmFsPE1UTENvbXBhcmVGdW5jdGlvbj4gdmFsaWRhdGVBbmRDb252ZXJ0RGVw
dGhDb21wYXJlRnVuY3Rpb25Ub010bChHUFVDb21wYXJlRnVuY3Rpb24gZnVuYykKK3sKKyAgICBz
d2l0Y2ggKGZ1bmMpIHsKKyAgICBjYXNlIEdQVUNvbXBhcmVGdW5jdGlvbjo6TmV2ZXI6CisgICAg
ICAgIHJldHVybiBNVExDb21wYXJlRnVuY3Rpb25OZXZlcjsKKyAgICBjYXNlIEdQVUNvbXBhcmVG
dW5jdGlvbjo6TGVzczoKKyAgICAgICAgcmV0dXJuIE1UTENvbXBhcmVGdW5jdGlvbkxlc3M7Cisg
ICAgY2FzZSBHUFVDb21wYXJlRnVuY3Rpb246OkVxdWFsOgorICAgICAgICByZXR1cm4gTVRMQ29t
cGFyZUZ1bmN0aW9uRXF1YWw7CisgICAgY2FzZSBHUFVDb21wYXJlRnVuY3Rpb246Okxlc3NFcXVh
bDoKKyAgICAgICAgcmV0dXJuIE1UTENvbXBhcmVGdW5jdGlvbkxlc3NFcXVhbDsKKyAgICBjYXNl
IEdQVUNvbXBhcmVGdW5jdGlvbjo6R3JlYXRlcjoKKyAgICAgICAgcmV0dXJuIE1UTENvbXBhcmVG
dW5jdGlvbkdyZWF0ZXI7CisgICAgY2FzZSBHUFVDb21wYXJlRnVuY3Rpb246Ok5vdEVxdWFsOgor
ICAgICAgICByZXR1cm4gTVRMQ29tcGFyZUZ1bmN0aW9uTm90RXF1YWw7CisgICAgY2FzZSBHUFVD
b21wYXJlRnVuY3Rpb246OkdyZWF0ZXJFcXVhbDoKKyAgICAgICAgcmV0dXJuIE1UTENvbXBhcmVG
dW5jdGlvbkdyZWF0ZXJFcXVhbDsKKyAgICBjYXNlIEdQVUNvbXBhcmVGdW5jdGlvbjo6QWx3YXlz
OgorICAgICAgICByZXR1cm4gTVRMQ29tcGFyZUZ1bmN0aW9uQWx3YXlzOworICAgIGRlZmF1bHQ6
CisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisgICAgfQorfQorCitzdGF0aWMgUmV0YWlu
UHRyPE1UTERlcHRoU3RlbmNpbFN0YXRlPiB0cnlDcmVhdGVNdGxEZXB0aFN0ZW5jaWxTdGF0ZShj
b25zdCBjaGFyKiBjb25zdCBmdW5jdGlvbk5hbWUsIGNvbnN0IEdQVURlcHRoU3RlbmNpbFN0YXRl
RGVzY3JpcHRvciYgZGVzY3JpcHRvciwgY29uc3QgR1BVRGV2aWNlJiBkZXZpY2UpCit7CisjaWYg
TE9HX0RJU0FCTEVECisgICAgVU5VU0VEX1BBUkFNKGZ1bmN0aW9uTmFtZSk7CisjZW5kaWYKKyAg
ICBSZXRhaW5QdHI8TVRMRGVwdGhTdGVuY2lsRGVzY3JpcHRvcj4gbXRsRGVzY3JpcHRvcjsKKwor
ICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKKworICAgIG10bERlc2NyaXB0b3IgPSBh
ZG9wdE5TKFtNVExEZXB0aFN0ZW5jaWxEZXNjcmlwdG9yIG5ld10pOworCisgICAgRU5EX0JMT0NL
X09CSkNfRVhDRVBUSU9OUzsKKworICAgIGlmICghbXRsRGVzY3JpcHRvcikgeworICAgICAgICBM
T0coV2ViR1BVLCAiJXM6IFVuYWJsZSB0byBjcmVhdGUgTVRMRGVwdGhTdGVuY2lsRGVzY3JpcHRv
ciEiLCBmdW5jdGlvbk5hbWUpOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAg
ICBhdXRvIG10bERlcHRoQ29tcGFyZSA9IHZhbGlkYXRlQW5kQ29udmVydERlcHRoQ29tcGFyZUZ1
bmN0aW9uVG9NdGwoZGVzY3JpcHRvci5kZXB0aENvbXBhcmUpOworICAgIGlmICghbXRsRGVwdGhD
b21wYXJlKSB7CisgICAgICAgIExPRyhXZWJHUFUsICIlczogSW52YWxpZCBHUFVDb21wYXJlRnVu
Y3Rpb24gaW4gR1BVRGVwdGhTdGVuY2lsU3RhdGVEZXNjcmlwdG9yISIsIGZ1bmN0aW9uTmFtZSk7
CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKworICAgIG10bERlc2NyaXB0b3IuZ2V0
KCkuZGVwdGhDb21wYXJlRnVuY3Rpb24gPSAqbXRsRGVwdGhDb21wYXJlOworICAgIG10bERlc2Ny
aXB0b3IuZ2V0KCkuZGVwdGhXcml0ZUVuYWJsZWQgPSBkZXNjcmlwdG9yLmRlcHRoV3JpdGVFbmFi
bGVkOworCisgICAgLy8gRklYTUU6IEltcGxlbWVudCBiYWNrL2Zyb250RmFjZVN0ZW5jaWwuCisK
KyAgICBSZXRhaW5QdHI8TVRMRGVwdGhTdGVuY2lsU3RhdGU+IHN0YXRlOworCisgICAgQkVHSU5f
QkxPQ0tfT0JKQ19FWENFUFRJT05TOworCisgICAgc3RhdGUgPSBhZG9wdE5TKFtkZXZpY2UucGxh
dGZvcm1EZXZpY2UoKSBuZXdEZXB0aFN0ZW5jaWxTdGF0ZVdpdGhEZXNjcmlwdG9yOm10bERlc2Ny
aXB0b3IuZ2V0KCldKTsKKworICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CisKKyAgICBp
ZiAoIXN0YXRlKSB7CisgICAgICAgIExPRyhXZWJHUFUsICIlczogRXJyb3IgY3JlYXRpbmcgTVRM
RGVwdGhTdGVuY2lsU3RhdGUhIiwgZnVuY3Rpb25OYW1lKTsKKyAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgfQorCisgICAgcmV0dXJuIHN0YXRlOworfQorCiBzdGF0aWMgYm9vbCBzZXRGdW5j
dGlvbnNGb3JQaXBlbGluZURlc2NyaXB0b3IoY29uc3QgY2hhciogY29uc3QgZnVuY3Rpb25OYW1l
LCBNVExSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IgKm10bERlc2NyaXB0b3IsIGNvbnN0IEdQVVJl
bmRlclBpcGVsaW5lRGVzY3JpcHRvciYgZGVzY3JpcHRvcikKIHsKICNpZiBMT0dfRElTQUJMRUQK
QEAgLTE3NSwxNSArMjQ0LDggQEAgc3RhdGljIGJvb2wgc2V0SW5wdXRTdGF0ZUZvclBpcGVsaW5l
RGVzY3JpcHRvcihjb25zdCBjaGFyKiBjb25zdCBmdW5jdGlvbk5hbWUsIE0KICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAotUmVmUHRyPEdQVVJlbmRlclBpcGVsaW5lPiBHUFVSZW5kZXJQaXBlbGluZTo6
Y3JlYXRlKGNvbnN0IEdQVURldmljZSYgZGV2aWNlLCBHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0
b3ImJiBkZXNjcmlwdG9yKQorc3RhdGljIFJldGFpblB0cjxNVExSZW5kZXJQaXBlbGluZVN0YXRl
PiB0cnlDcmVhdGVNdGxSZW5kZXJQaXBlbGluZVN0YXRlKGNvbnN0IGNoYXIqIGNvbnN0IGZ1bmN0
aW9uTmFtZSwgY29uc3QgR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yJiBkZXNjcmlwdG9yLCBj
b25zdCBHUFVEZXZpY2UmIGRldmljZSkKIHsKLSAgICBjb25zdCBjaGFyKiBjb25zdCBmdW5jdGlv
bk5hbWUgPSAiR1BVUmVuZGVyUGlwZWxpbmU6OmNyZWF0ZSgpIjsKLQotICAgIGlmICghZGV2aWNl
LnBsYXRmb3JtRGV2aWNlKCkpIHsKLSAgICAgICAgTE9HKFdlYkdQVSwgIiVzOiBJbnZhbGlkIEdQ
VURldmljZSEiLCBmdW5jdGlvbk5hbWUpOwotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICB9
Ci0KICAgICBSZXRhaW5QdHI8TVRMUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yPiBtdGxEZXNjcmlw
dG9yOwogCiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOwpAQCAtMjEyLDcgKzI3NCw3
IEBAIFJlZlB0cjxHUFVSZW5kZXJQaXBlbGluZT4gR1BVUmVuZGVyUGlwZWxpbmU6OmNyZWF0ZShj
b25zdCBHUFVEZXZpY2UmIGRldmljZSwgR1BVCiAgICAgLy8gRklYTUU6IEdldCB0aGUgcGl4ZWxG
b3JtYXQgYXMgY29uZmlndXJlZCBmb3IgdGhlIGNvbnRleHQvQ0FNZXRhbExheWVyLgogICAgIG10
bERlc2NyaXB0b3IuZ2V0KCkuY29sb3JBdHRhY2htZW50c1swXS5waXhlbEZvcm1hdCA9IE1UTFBp
eGVsRm9ybWF0QkdSQThVbm9ybTsKIAotICAgIFBsYXRmb3JtUmVuZGVyUGlwZWxpbmVTbWFydFB0
ciBwaXBlbGluZTsKKyAgICBSZXRhaW5QdHI8TVRMUmVuZGVyUGlwZWxpbmVTdGF0ZT4gcGlwZWxp
bmU7CiAKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiAKQEAgLTIyMywxNCArMjg1
LDMxIEBAIFJlZlB0cjxHUFVSZW5kZXJQaXBlbGluZT4gR1BVUmVuZGVyUGlwZWxpbmU6OmNyZWF0
ZShjb25zdCBHUFVEZXZpY2UmIGRldmljZSwgR1BVCiAKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENF
UFRJT05TOwogCisgICAgcmV0dXJuIHBpcGVsaW5lOworfQorCitSZWZQdHI8R1BVUmVuZGVyUGlw
ZWxpbmU+IEdQVVJlbmRlclBpcGVsaW5lOjpjcmVhdGUoY29uc3QgR1BVRGV2aWNlJiBkZXZpY2Us
IEdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvciYmIGRlc2NyaXB0b3IpCit7CisgICAgY29uc3Qg
Y2hhciogY29uc3QgZnVuY3Rpb25OYW1lID0gIkdQVVJlbmRlclBpcGVsaW5lOjpjcmVhdGUoKSI7
CisKKyAgICBpZiAoIWRldmljZS5wbGF0Zm9ybURldmljZSgpKSB7CisgICAgICAgIExPRyhXZWJH
UFUsICIlczogSW52YWxpZCBHUFVEZXZpY2UhIiwgZnVuY3Rpb25OYW1lKTsKKyAgICAgICAgcmV0
dXJuIG51bGxwdHI7CisgICAgfQorCisgICAgLy8gRGVwdGggU3RlbmNpbCBzdGF0ZSBpcyBzZXBh
cmF0ZSBmcm9tIHRoZSByZW5kZXIgcGlwZWxpbmUgc3RhdGUgaW4gTWV0YWwuCisgICAgYXV0byBk
ZXB0aFN0ZW5jaWwgPSB0cnlDcmVhdGVNdGxEZXB0aFN0ZW5jaWxTdGF0ZShmdW5jdGlvbk5hbWUs
IGRlc2NyaXB0b3IuZGVwdGhTdGVuY2lsU3RhdGUsIGRldmljZSk7CisKKyAgICBhdXRvIHBpcGVs
aW5lID0gdHJ5Q3JlYXRlTXRsUmVuZGVyUGlwZWxpbmVTdGF0ZShmdW5jdGlvbk5hbWUsIGRlc2Ny
aXB0b3IsIGRldmljZSk7CiAgICAgaWYgKCFwaXBlbGluZSkKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEdQVVJlbmRlclBpcGVsaW5lKFdURk1vdmUo
cGlwZWxpbmUpLCBXVEZNb3ZlKGRlc2NyaXB0b3IpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5l
dyBHUFVSZW5kZXJQaXBlbGluZShXVEZNb3ZlKGRlcHRoU3RlbmNpbCksIFdURk1vdmUocGlwZWxp
bmUpLCBXVEZNb3ZlKGRlc2NyaXB0b3IpKSk7CiB9CiAKLUdQVVJlbmRlclBpcGVsaW5lOjpHUFVS
ZW5kZXJQaXBlbGluZShQbGF0Zm9ybVJlbmRlclBpcGVsaW5lU21hcnRQdHImJiBwaXBlbGluZSwg
R1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yJiYgZGVzY3JpcHRvcikKLSAgICA6IG1fcGxhdGZv
cm1SZW5kZXJQaXBlbGluZShXVEZNb3ZlKHBpcGVsaW5lKSkKK0dQVVJlbmRlclBpcGVsaW5lOjpH
UFVSZW5kZXJQaXBlbGluZShSZXRhaW5QdHI8TVRMRGVwdGhTdGVuY2lsU3RhdGU+JiYgZGVwdGhT
dGVuY2lsLCBSZXRhaW5QdHI8TVRMUmVuZGVyUGlwZWxpbmVTdGF0ZT4mJiBwaXBlbGluZSwgR1BV
UmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yJiYgZGVzY3JpcHRvcikKKyAgICA6IG1fZGVwdGhTdGVu
Y2lsU3RhdGUoV1RGTW92ZShkZXB0aFN0ZW5jaWwpKQorICAgICwgbV9wbGF0Zm9ybVJlbmRlclBp
cGVsaW5lKFdURk1vdmUocGlwZWxpbmUpKQogICAgICwgbV9sYXlvdXQoV1RGTW92ZShkZXNjcmlw
dG9yLmxheW91dCkpCiAgICAgLCBtX3ByaW1pdGl2ZVRvcG9sb2d5KGRlc2NyaXB0b3IucHJpbWl0
aXZlVG9wb2xvZ3kpCiB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>