<?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>192213</bug_id>
          
          <creation_ts>2018-11-29 20:46:26 -0800</creation_ts>
          <short_desc>[WebGPU] Flesh out WebGPURenderPassDescriptor to match the WebGPU IDL</short_desc>
          <delta_ts>2018-11-30 10:15:01 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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>1483383</commentid>
    <comment_count>0</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2018-11-29 20:46:26 -0800</bug_when>
    <thetext>[WebGPU] Flesh out WebGPURenderPassDescriptor to match the WebGPU IDL</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1483387</commentid>
    <comment_count>1</comment_count>
      <attachid>356122</attachid>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2018-11-29 20:57:05 -0800</bug_when>
    <thetext>Created attachment 356122
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1483388</commentid>
    <comment_count>2</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2018-11-29 20:58:50 -0800</bug_when>
    <thetext>&lt;rdar://problem/46322451&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1483410</commentid>
    <comment_count>3</comment_count>
      <attachid>356134</attachid>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2018-11-29 22:14:40 -0800</bug_when>
    <thetext>Created attachment 356134
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1483575</commentid>
    <comment_count>4</comment_count>
      <attachid>356134</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-30 10:14:59 -0800</bug_when>
    <thetext>Comment on attachment 356134
Patch

Clearing flags on attachment: 356134

Committed r238741: &lt;https://trac.webkit.org/changeset/238741&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1483576</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-30 10:15:01 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>356122</attachid>
            <date>2018-11-29 20:57:05 -0800</date>
            <delta_ts>2018-11-29 22:14:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192213-20181129205704.patch</filename>
            <type>text/plain</type>
            <size>31002</size>
            <attacher name="Justin Fan">justin_fan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NzE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjIxZmRiMzJmY2RlM2Mz
YmI0ZDc1Y2Q3MzY1NzQ4ODA4MjI3ODdmYy4uNDUxZTFhYmQxMzdlZGJmMzdjODFlZGYwYmVjNTc5
OTBmNTE5NTE2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE4LTExLTI5ICBKdXN0
aW4gRmFuICA8anVzdGluX2ZhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkdQVV0gRmxlc2gg
b3V0IFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yIHRvIG1hdGNoIHRoZSBXZWJHUFUgSURMCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTIyMTMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJHUFUgcHJv
dG90eXBlIG5vdyB1c2VzIFdlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9y
IGluIFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yIHRvIG1hdGNoIHRoZSBXZWJHUFUgU2tldGNo
LgorICAgICAgICBXZWJHUFUgZGV2ZWxvcGVyIGNhbiBub3cgYWxzbyBzZXQgdGhlIGNsZWFyQ29s
b3IgaW4gV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuCisKKyAgICAgICAgTm8gbmV3IHRlc3Rz
LiBPbGRlciBXZWJHUFVSZW5kZXJQYXNzKiB0ZXN0cyB1cGRhdGVkLiAKKworICAgICAgICAqIENN
YWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICog
TW9kdWxlcy93ZWJncHUvV2ViR1BVQ29sb3IuaDogQWRkZWQuIFR5cGVkZWYnZCB0byBHUFVDb2xv
ci5oLgorICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbG9yLmlkbDogQWRkZWQuCisg
ICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVQ29tbWFuZEJ1ZmZlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpXZWJHUFVDb21tYW5kQnVmZmVyOjpiZWdpblJlbmRlclBhc3MpOiBVcGRhdGVk
IHRvIGVycm9yIGNoZWNrIGFuZCBzdXBwb3J0IHRoZSBuZXcgc3RydWN0dXJlIG9mIFdlYkdQVVJl
bmRlclBhc3NEZXNjcmlwdG9yLgorICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRl
clBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVs
ZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmlkbDog
QWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0
b3IuaDogCisgICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0
b3IuaWRsOiBVcGRhdGVkIHRvIG1hdGNoIHRoZSBza2V0Y2ggSURMLgorICAgICAgICAqIFNvdXJj
ZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVQ29sb3IuaDogQWRkZWQuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNj
cmlwdG9yLmg6IEFkZGVkLiBCYWNraW5nIHN0cnVjdCBmb3IgV2ViR1BVX18uCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmg6IFVwZGF0ZWQg
dG8gbWF0Y2ggbmV3IFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVSZW5kZXJQYXNzRW5jb2Rlck1ldGFsLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6R1BVUmVuZGVyUGFzc0VuY29kZXI6OmNyZWF0ZSk6IE5vdyBhbHNvIHVz
ZXMgY2xlYXJDb2xvciBzZXQgYnkgZGV2ZWxvcGVyLgorCiAyMDE4LTExLTI5ICBLZWl0aCBSb2xs
aW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggYjE4MTUxN2QwMTc5NGU1YTNhZjJmZjc2ZjU0NTJmODYy
YzIzNjk0ZS4uN2NhNzUxZmYzOWM5YmE4YjI3MjQ5YTc0MzQyNWRjMDdhZWE2OWM1YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKQEAgLTQ1OCwxMiArNDU4LDE0IEBAIHNldChXZWJDb3JlX05PTl9TVkdf
SURMX0ZJTEVTCiAgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVLmlkbAogICAgIE1vZHVsZXMvd2Vi
Z3B1L1dlYkdQVUFkYXB0ZXIuaWRsCiAgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVQWRhcHRlckRl
c2NyaXB0b3IuaWRsCisgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVQ29sb3IuaWRsCiAgICAgTW9k
dWxlcy93ZWJncHUvV2ViR1BVQ29tbWFuZEJ1ZmZlci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9X
ZWJHUFVEZXZpY2UuaWRsCiAgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVUGlwZWxpbmVEZXNjcmlw
dG9yQmFzZS5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9XZWJHUFVQaXBlbGluZVN0YWdlRGVzY3Jp
cHRvci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9XZWJHUFVQcm9ncmFtbWFibGVQYXNzRW5jb2Rl
ci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9XZWJHUFVRdWV1ZS5pZGwKKyAgICBNb2R1bGVzL3dl
YmdwdS9XZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5pZGwKICAgICBN
b2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5pZGwKICAgICBNb2R1bGVz
L3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRW5jb2Rlci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9X
ZWJHUFVSZW5kZXJQaXBlbGluZS5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4
IGFiMDYzZmNjNzdhNTJkYzM4NDgyZDM0ZjU4MjA2YmY4YmU4OTA4OTIuLjNlNTdiMWIwYjgzZDlh
NTAzODg5OTA4NmFkMWU3YzliNDYzNDNiZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZQpAQCAtMzc1LDEyICszNzUsMTQgQEAgSlNfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy93ZWJncHUvV2ViR1BVLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dl
YmdwdS9XZWJHUFVBZGFwdGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9X
ZWJHUFVBZGFwdGVyRGVzY3JpcHRvci5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJn
cHUvV2ViR1BVQ29sb3IuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQ
VUNvbW1hbmRCdWZmZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQ
VURldmljZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJncHUvV2ViR1BVUXVldWUu
aWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVBpcGVsaW5lRGVzY3Jp
cHRvckJhc2UuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVBpcGVs
aW5lU3RhZ2VEZXNjcmlwdG9yLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9X
ZWJHUFVQcm9ncmFtbWFibGVQYXNzRW5jb2Rlci5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxl
cy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9y
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRW5j
b2Rlci5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGlw
ZWxpbmUuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dl
YkdQVUNvbG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVDb2xvci5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjhjYzk2ZGQ2ZmVkMzczYWYxODA4MzMwZjM0OTUyNWZiNjZlOTU3NzEKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVDb2xv
ci5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVO
QUJMRShXRUJHUFUpCisKKyNpbmNsdWRlICJHUFVDb2xvci5oIgorCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK3VzaW5nIFdlYkdQVUNvbG9yID0gR1BVQ29sb3I7CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShXRUJHUFUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVDb2xvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmdwdS9XZWJHUFVDb2xvci5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTYxM2MyYjUxMDZjYWFlZmY1
OGViYzY2Y2IyMjQ0YzJlZjUwYjNkYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbG9yLmlkbApAQCAtMCwwICsxLDM1IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKy8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ncHV3ZWIvZ3B1d2ViL2Jsb2IvbWFzdGVyL2Rlc2ln
bi9za2V0Y2gud2ViaWRsCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJHUFUsCisgICAgRW5hYmxl
ZEF0UnVudGltZT1XZWJHUFUKK10gZGljdGlvbmFyeSBXZWJHUFVDb2xvciB7CisgICAgZmxvYXQg
cjsKKyAgICBmbG9hdCBnOworICAgIGZsb2F0IGI7CisgICAgZmxvYXQgYTsKK307CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVDb21tYW5kQnVmZmVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbW1hbmRCdWZmZXIuY3Bw
CmluZGV4IDRmNzYwNDYzZjIyMDRjYmU4ZDY4YmUxODdmZDIwMGQ5MWVlMGNiZTkuLjBhNGRlMmEx
MzUwYTUzOGEwMmE4MTdiZGM2ZGNkYjk5Mjg5ZTcwMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbW1hbmRCdWZmZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbW1hbmRCdWZmZXIuY3BwCkBAIC01MywxMiAr
NTMsMjIgQEAgV2ViR1BVQ29tbWFuZEJ1ZmZlcjo6V2ViR1BVQ29tbWFuZEJ1ZmZlcihSZWY8R1BV
Q29tbWFuZEJ1ZmZlcj4mJiBidWZmZXIpCiBSZWZQdHI8V2ViR1BVUmVuZGVyUGFzc0VuY29kZXI+
IFdlYkdQVUNvbW1hbmRCdWZmZXI6OmJlZ2luUmVuZGVyUGFzcyhXZWJHUFVSZW5kZXJQYXNzRGVz
Y3JpcHRvciYmIGRlc2NyaXB0b3IpCiB7CiAgICAgLy8gRklYTUU6IEltcHJvdmUgZXJyb3IgY2hl
Y2tpbmcgYXMgV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IgaXMgaW1wbGVtZW50ZWQuCi0gICAg
aWYgKCFkZXNjcmlwdG9yLmF0dGFjaG1lbnQpIHsKLSAgICAgICAgTE9HKFdlYkdQVSwgIldlYkdQ
VUNvbW1hbmRCdWZmZXI6OmNyZWF0ZSgpOiBObyBhdHRhY2htZW50IHNwZWNpZmllZCBmb3IgV2Vi
R1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IhIik7CisgICAgaWYgKGRlc2NyaXB0b3IuY29sb3JBdHRh
Y2htZW50cy5pc0VtcHR5KCkpIHsKKyAgICAgICAgTE9HKFdlYkdQVSwgIldlYkdQVUNvbW1hbmRC
dWZmZXI6OmNyZWF0ZSgpOiBObyBhdHRhY2htZW50cyBzcGVjaWZpZWQgZm9yIFdlYkdQVVJlbmRl
clBhc3NEZXNjcmlwdG9yISIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAg
Ci0gICAgYXV0byBlbmNvZGVyID0gR1BVUmVuZGVyUGFzc0VuY29kZXI6OmNyZWF0ZShtX2NvbW1h
bmRCdWZmZXIuZ2V0KCksIEdQVVJlbmRlclBhc3NEZXNjcmlwdG9yIHsgZGVzY3JpcHRvci5hdHRh
Y2htZW50LT50ZXh0dXJlKCkgfSk7CisKKyAgICBHUFVSZW5kZXJQYXNzRGVzY3JpcHRvciBncHVS
ZW5kZXJQYXNzRGVzY3JpcHRvcjsKKworICAgIGZvciAoY29uc3QgYXV0byYgY29sb3JBdHRhY2ht
ZW50IDogZGVzY3JpcHRvci5jb2xvckF0dGFjaG1lbnRzKSB7CisgICAgICAgIGlmICghY29sb3JB
dHRhY2htZW50LmF0dGFjaG1lbnQpIHsKKyAgICAgICAgICAgIExPRyhXZWJHUFUsICJXZWJHUFVD
b21tYW5kQnVmZmVyOjpjcmVhdGUoKTogSW52YWxpZCBhdHRhY2htZW50IGluIFdlYkdQVVJlbmRl
clBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yISIpOworICAgICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisgICAgICAgIH0KKyAgICAgICAgZ3B1UmVuZGVyUGFzc0Rlc2NyaXB0b3IuY29sb3JB
dHRhY2htZW50cy5hcHBlbmQoR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3Ig
eyBjb2xvckF0dGFjaG1lbnQuYXR0YWNobWVudC0+dGV4dHVyZSgpLCBjb2xvckF0dGFjaG1lbnQu
Y2xlYXJDb2xvciB9KTsKKyAgICB9CisKKyAgICBhdXRvIGVuY29kZXIgPSBHUFVSZW5kZXJQYXNz
RW5jb2Rlcjo6Y3JlYXRlKG1fY29tbWFuZEJ1ZmZlci5nZXQoKSwgV1RGTW92ZShncHVSZW5kZXJQ
YXNzRGVzY3JpcHRvcikpOwogCiAgICAgaWYgKCFlbmNvZGVyKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJl
bmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmFiNzJiNTUzZGYwZTg5Mjc4MDIyNmE0ZGQ1NDYxYmVlNGRmMzYyOTkKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQ
YXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJHUFUpCisKKyNpbmNsdWRlICJXZWJH
UFVDb2xvci5oIgorI2luY2x1ZGUgIldlYkdQVVRleHR1cmVWaWV3LmgiCisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworc3RydWN0IFdlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlw
dG9yIHsKKyAgICBSZWZQdHI8V2ViR1BVVGV4dHVyZVZpZXc+IGF0dGFjaG1lbnQ7CisKKyAgICBX
ZWJHUFVDb2xvciBjbGVhckNvbG9yOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisj
ZW5kaWYgLy8gRU5BQkxFKFdFQkdQVSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFj
aG1lbnREZXNjcmlwdG9yLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41OGM1Y2M4Yzg2M2FiZTZlNjY3ZDc3NjQx
NTc2ZDY4YWQ0ZmQ4NjFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaWRsCkBA
IC0wLDAgKzEsMzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwg
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
bmFsPVdFQkdQVSwKKyAgICBFbmFibGVkQXRSdW50aW1lPVdlYkdQVQorXSBkaWN0aW9uYXJ5IFdl
YkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yIHsKKyAgICBXZWJHUFVUZXh0
dXJlVmlldyBhdHRhY2htZW50OworCisgICAgLy8gTm90IFlldCBJbXBsZW1lbnRlZAorICAgIC8v
IFdlYkdQVUxvYWRPcCBsb2FkT3A7CisgICAgLy8gV2ViR1BVU3RvcmVPcCBzdG9yZU9wOworICAg
IFdlYkdQVUNvbG9yIGNsZWFyQ29sb3I7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmgKaW5kZXggNzQ3
ZTM5ZWYwNzA4NzQ4MDEwZDFkMWM5YmMzMzY1OWExZmQ0YTY5Zi4uYzE5MjMwYzBjZjBiMGRjMmYx
MmZhYWMyMjBlMWE4MzVjMzljNzZiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5oCkBAIC0yNywxMyAr
MjcsMTQgQEAKIAogI2lmIEVOQUJMRShXRUJHUFUpCiAKLSNpbmNsdWRlICJXZWJHUFVUZXh0dXJl
Vmlldy5oIgorI2luY2x1ZGUgIldlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlw
dG9yLmgiCisKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogc3RydWN0IFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yIHsKLSAgICAvLyBGSVhNRTogVGVt
cG9yYXJ5IHNob3J0Y3V0IGltcGxlbWVudGF0aW9uIGZvciBwcm90b3R5cGluZy4KLSAgICBSZWZQ
dHI8V2ViR1BVVGV4dHVyZVZpZXc+IGF0dGFjaG1lbnQ7CisgICAgVmVjdG9yPFdlYkdQVVJlbmRl
clBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yPiBjb2xvckF0dGFjaG1lbnRzOwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaWRsIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaWRsCmluZGV4IDIxZGVh
MmQzN2U3NGNlNTBiNGFlNzM0M2RmZWQwYzIwYTE0ZDhjOWUuLmI3YWRlM2M0YzZiZDA1Zjk0M2Ez
NTU3NTMxMjFjZGYyZGI5NzYzYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5pZGwKQEAgLTI4LDEx
ICsyOCw2IEBACiAgICAgQ29uZGl0aW9uYWw9V0VCR1BVLAogICAgIEVuYWJsZWRBdFJ1bnRpbWU9
V2ViR1BVCiBdIGRpY3Rpb25hcnkgV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IgewotICAgIC8v
IEZJWE1FOiBUZW1wb3Jhcnkgc2hvcnRjdXQgaW1wbGVtZW50YXRpb24gZm9yIHByb3RvdHlwaW5n
LgotICAgIFdlYkdQVVRleHR1cmVWaWV3IGF0dGFjaG1lbnQ7Ci0KLS8qIE5vdCBZZXQgSW1wbGVt
ZW50ZWQ6CiAgICAgc2VxdWVuY2U8V2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2Ny
aXB0b3I+IGNvbG9yQXR0YWNobWVudHM7Ci0gICAgV2ViR1BVUmVuZGVyUGFzc0RlcHRoU3RlbmNp
bEF0dGFjaG1lbnREZXNjcmlwdG9yIGRlcHRoU3RlbmNpbEF0dGFjaG1lbnQ7Ci0qLworICAgIC8v
IFdlYkdQVVJlbmRlclBhc3NEZXB0aFN0ZW5jaWxBdHRhY2htZW50RGVzY3JpcHRvciBkZXB0aFN0
ZW5jaWxBdHRhY2htZW50OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMu
dHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggNzljZGMzZWZhZTIwM2ZhMWUy
MDU0M2EzNmM2NDcyYTc5MGVmM2JmMy4uY2ZlNDY4NzgyMmFiYzMyMzA5OTA0YmExMDM0M2M4ZmE1
MDlkMWYzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTMyMjEsMTIgKzMyMjEsMTQgQEAgSlNXZWJHUFUu
Y3BwCiBKU1dlYkdQVUFkYXB0ZXIuY3BwCiBKU1dlYkdQVUFkYXB0ZXJEZXNjcmlwdG9yLmNwcAog
SlNXZWJHUFVDb21tYW5kQnVmZmVyLmNwcAorSlNXZWJHUFVDb2xvci5jcHAKIEpTV2ViR1BVRGV2
aWNlLmNwcAogSlNXZWJHUFVRdWV1ZS5jcHAKIEpTV2ViR1BVUGlwZWxpbmVEZXNjcmlwdG9yQmFz
ZS5jcHAKIEpTV2ViR1BVUGlwZWxpbmVTdGFnZURlc2NyaXB0b3IuY3BwCiBKU1dlYkdQVVByb2dy
YW1tYWJsZVBhc3NFbmNvZGVyLmNwcAogSlNXZWJHUFVSZW5kZXJpbmdDb250ZXh0LmNwcAorSlNX
ZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5jcHAKIEpTV2ViR1BVUmVu
ZGVyUGFzc0Rlc2NyaXB0b3IuY3BwCiBKU1dlYkdQVVJlbmRlclBhc3NFbmNvZGVyLmNwcAogSlNX
ZWJHUFVSZW5kZXJQaXBlbGluZS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA5YTRmOWM1MmNiZjEwZjg4ZjUxZmQ0YzY4NDBm
YmNmMDk1N2NhYjc1Li5iN2ExYTYyZGQyNTJlYTY1NjM5NTI2ZTRmNzM1ZGViNGNiYTBmNTZhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CkBAIC0xMzc3MSw2ICsxMzc3MSwxMiBAQAogCQlEMDAwRUJBMTExQkRBRkQ0MDBDNDc3MjYgLyog
RnJhbWVMb2FkZXJTdGF0ZU1hY2hpbmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRnJhbWVMb2FkZXJTdGF0ZU1hY2hpbmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRDAwMEVEMjUxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9hZGVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN1YmZyYW1lTG9hZGVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRDAwMEVEMjYxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZy
YW1lTG9hZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN1YmZyYW1lTG9h
ZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwMDFEOUE5MjFCMEM2NzMwMDIz
QjlCQyAvKiBHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlEMDAxRDlBQjIxQjBDN0JGMDAyM0I5QkMgLyogR1BVQ29s
b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gR1BVQ29sb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRDAwMUQ5QUMyMUIwQzgxQTAwMjNCOUJDIC8qIFdlYkdQVUNvbG9yLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFdlYkdQVUNvbG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwMDFE
OUFEMjFCMEM4MUEwMDIzQjlCQyAvKiBXZWJHUFVDb2xvci5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR1BVQ29sb3Iu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMDAxRDlCMDIxQjBDOEE4MDAyM0I5
QkMgLyogV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDAwMUQ5QjEyMUIwQzhBODAwMjNCOUJDIC8qIFdl
YkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJHUFVS
ZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUQwMEY1OTQwMjE2RUNDN0EwMDBENzFEQiAvKiBET01XaW5kb3dXZWJHUFUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRE9NV2luZG93V2ViR1BVLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUQwMEY1OTQxMjE2RUNDN0EwMDBENzFEQiAvKiBET01XaW5kb3dXZWJHUFUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRE9NV2luZG93V2ViR1BVLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJRDAwRjU5NDIyMTZFQ0M3QTAwMEQ3MURCIC8qIERPTVdpbmRvd1dlYkdQ
VS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gRE9NV2luZG93V2ViR1BVLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTE4MTQ2LDYgKzE4MTUyLDcgQEAKIAkJCWNoaWxkcmVuID0gKAogCQkJCUQwODdDRTM3
MjFBQ0E5NDIwMEJERTE3NCAvKiBjb2NvYSAqLywKIAkJCQkzMTJGRjhDRTIxQTRDMzNGMDBFQjE5
OUQgLyogbGVnYWN5ICovLAorCQkJCUQwMDFEOUFCMjFCMEM3QkYwMDIzQjlCQyAvKiBHUFVDb2xv
ci5oICovLAogCQkJCTMxMkZGOEJEMjFBNEMyRjEwMEVCMTk5RCAvKiBHUFVDb21tYW5kQnVmZmVy
LmggKi8sCiAJCQkJMzEyRkY4QkYyMUE0QzJGMTAwRUIxOTlEIC8qIEdQVURldmljZS5jcHAgKi8s
CiAJCQkJMzEyRkY4QkUyMUE0QzJGMTAwRUIxOTlEIC8qIEdQVURldmljZS5oICovLApAQCAtMTgx
NTMsNiArMTgxNjAsNyBAQAogCQkJCTMxMkZGOEMyMjFBNEMyRjMwMEVCMTk5RCAvKiBHUFVQaXBl
bGluZVN0YWdlRGVzY3JpcHRvci5oICovLAogCQkJCUQwMzIxMUNGMjFBQzk1NEUwMDc2M0NGMiAv
KiBHUFVQcm9ncmFtbWFibGVQYXNzRW5jb2Rlci5oICovLAogCQkJCTMxMkZGOEMxMjFBNEMyRjIw
MEVCMTk5RCAvKiBHUFVRdWV1ZS5oICovLAorCQkJCUQwMDFEOUE5MjFCMEM2NzMwMDIzQjlCQyAv
KiBHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oICovLAogCQkJCUQwMzIx
MUQwMjFBQzk1NEYwMDc2M0NGMiAvKiBHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5oICovLAogCQkJ
CUQwMzIxMUNFMjFBQzk1NEUwMDc2M0NGMiAvKiBHUFVSZW5kZXJQYXNzRW5jb2Rlci5oICovLAog
CQkJCTMxMkZGOEI5MjFBNEMyRUYwMEVCMTk5RCAvKiBHUFVSZW5kZXJQaXBlbGluZS5oICovLApA
QCAtMjU2MzQsNiArMjU2NDIsOCBAQAogCQkJCUQwMEY1OTUxMjE2RkZBQzIwMDBENzFEQiAvKiBX
ZWJHUFVBZGFwdGVyLmlkbCAqLywKIAkJCQlEMDJDMjY5MTIxODE0MTZEMDBEODE4RTQgLyogV2Vi
R1BVQWRhcHRlckRlc2NyaXB0b3IuaCAqLywKIAkJCQlEMDJDMjY5MjIxODE0MTZEMDBEODE4RTQg
LyogV2ViR1BVQWRhcHRlckRlc2NyaXB0b3IuaWRsICovLAorCQkJCUQwMDFEOUFDMjFCMEM4MUEw
MDIzQjlCQyAvKiBXZWJHUFVDb2xvci5oICovLAorCQkJCUQwMDFEOUFEMjFCMEM4MUEwMDIzQjlC
QyAvKiBXZWJHUFVDb2xvci5pZGwgKi8sCiAJCQkJRDBFQUNGNzcyMTkzNzIyODAwMEZBNzVDIC8q
IFdlYkdQVUNvbW1hbmRCdWZmZXIuY3BwICovLAogCQkJCUQwRUFDRjc2MjE5MzcyMjgwMDBGQTc1
QyAvKiBXZWJHUFVDb21tYW5kQnVmZmVyLmggKi8sCiAJCQkJRDBFQUNGNzgyMTkzNzIyODAwMEZB
NzVDIC8qIFdlYkdQVUNvbW1hbmRCdWZmZXIuaWRsICovLApAQCAtMjU2NTMsNiArMjU2NjMsOCBA
QAogCQkJCUQwOTNEMjI5MjE3OTU0MTYwMDMyOTIxNyAvKiBXZWJHUFVSZW5kZXJpbmdDb250ZXh0
LmNwcCAqLywKIAkJCQlEMDkzRDIyNTIxNzk1MUQ0MDAzMjkyMTcgLyogV2ViR1BVUmVuZGVyaW5n
Q29udGV4dC5oICovLAogCQkJCUQwOTNEMjI3MjE3OTUxRDQwMDMyOTIxNyAvKiBXZWJHUFVSZW5k
ZXJpbmdDb250ZXh0LmlkbCAqLywKKwkJCQlEMDAxRDlCMDIxQjBDOEE4MDAyM0I5QkMgLyogV2Vi
R1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaCAqLywKKwkJCQlEMDAxRDlC
MTIxQjBDOEE4MDAyM0I5QkMgLyogV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2Ny
aXB0b3IuaWRsICovLAogCQkJCUQwRUFDRjhDMjE5NDAzQzkwMDBGQTc1QyAvKiBXZWJHUFVSZW5k
ZXJQYXNzRGVzY3JpcHRvci5oICovLAogCQkJCUQwRUFDRjhEMjE5NDAzQzkwMDBGQTc1QyAvKiBX
ZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5pZGwgKi8sCiAJCQkJRDBFQUNGOEYyMTk0MEEyMjAw
MEZBNzVDIC8qIFdlYkdQVVJlbmRlclBhc3NFbmNvZGVyLmNwcCAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVDb2xvci5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVUNvbG9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDJkYTUy
NjU2ZGUyM2QyNjI0ZDZhMWI4ZTM1NmJkMjY0YWRjMTYxOQotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVDb2xvci5oCkBAIC0wLDAgKzEs
NDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJHUFUpCisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RydWN0IEdQVUNvbG9yIHsKKyAgICBmbG9hdCByOwor
ICAgIGZsb2F0IGc7CisgICAgZmxvYXQgYjsKKyAgICBmbG9hdCBhOworfTsKKworfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQkdQVSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQYXNzQ29sb3JBdHRh
Y2htZW50RGVzY3JpcHRvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L0dQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjlk
NDYwMmEwYTg4NWFmZDhlYmM4OGY5OTU0ZDRjYjYwZWE4NmU5YQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQYXNzQ29sb3JB
dHRhY2htZW50RGVzY3JpcHRvci5oCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJh
Z21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJHUFUpCisKKyNpbmNsdWRlICJHUFVDb2xvci5oIgor
I2luY2x1ZGUgIkdQVVRleHR1cmUuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3Qg
R1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IgeworICAgIFJlZjxHUFVUZXh0
dXJlPiBhdHRhY2htZW50OworCisgICAgR1BVQ29sb3IgY2xlYXJDb2xvcjsKK307CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShXRUJHUFUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVUmVuZGVyUGFzc0Rlc2Ny
aXB0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQ
YXNzRGVzY3JpcHRvci5oCmluZGV4IDVhMjRkYjM2MzI2NDMwOTc0M2QwZGI5MGQ1MWFjNWE0MTBl
NmUwMTcuLmVkY2U5ZGVlNGI5MjU1MzRjYWYxZGM1OWM4YmRhMjA0MjM1YjYyNDAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQYXNzRGVz
Y3JpcHRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVS
ZW5kZXJQYXNzRGVzY3JpcHRvci5oCkBAIC0yNywxMiArMjcsMTQgQEAKIAogI2lmIEVOQUJMRShX
RUJHUFUpCiAKLSNpbmNsdWRlICJHUFVUZXh0dXJlLmgiCisjaW5jbHVkZSAiR1BVUmVuZGVyUGFz
c0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaCIKKworI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4K
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdHJ1Y3QgR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3Ig
ewotICAgIFJlZjxHUFVUZXh0dXJlPiBhdHRhY2htZW50OworICAgIFZlY3RvcjxHUFVSZW5kZXJQ
YXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvcj4gY29sb3JBdHRhY2htZW50czsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVSZW5kZXJQYXNzRW5jb2Rlck1ldGFsLm1tIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBhc3NFbmNvZGVy
TWV0YWwubW0KaW5kZXggMzhhZGI4NjZiN2E2YWE2YzBhOGZkMmI5N2IyMDI3MzdmMTZjNThjNC4u
MmM1ODJiMGIzMmQ4ZDQxMmQ4Y2Q2NTRhNDY5YWE3ZTZiOWRhN2E0OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBhc3NFbmNv
ZGVyTWV0YWwubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2Nv
Y29hL0dQVVJlbmRlclBhc3NFbmNvZGVyTWV0YWwubW0KQEAgLTQyLDE1ICs0MiwxOCBAQCBSZWZQ
dHI8R1BVUmVuZGVyUGFzc0VuY29kZXI+IEdQVVJlbmRlclBhc3NFbmNvZGVyOjpjcmVhdGUoY29u
c3QgR1BVQ29tbWFuZEJ1ZmZlcgogewogICAgIFBsYXRmb3JtUmVuZGVyUGFzc0VuY29kZXJTbWFy
dFB0ciBtdGxFbmNvZGVyOwogCisgICAgLy8gRklYTUU6IERlZmF1bHQgdG8gY29sb3JBdHRhY2ht
ZW50c1swXSBhbmQgdGhpcyBsb2FkT3AsIHN0b3JlT3AgZm9yIG5vdy4KKyAgICBjb25zdCBhdXRv
JiBhdHRhY2htZW50RGVzY3JpcHRvciA9IGRlc2NyaXB0b3IuY29sb3JBdHRhY2htZW50c1swXTsK
KyAgICBjb25zdCBhdXRvJiBjb2xvciA9IGF0dGFjaG1lbnREZXNjcmlwdG9yLmNsZWFyQ29sb3I7
CisKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiAKICAgICBhdXRvIG10bERlc2Ny
aXB0b3IgPSBhZG9wdE5TKFtNVExSZW5kZXJQYXNzRGVzY3JpcHRvciBuZXddKTsKIAotICAgIC8v
IEZJWE1FOiBEZWZhdWx0IHRvIGNvbG9yQXR0YWNobWVudHNbMF0gYW5kIHRoaXMgbG9hZE9wLCBz
dG9yZU9wLCBjbGVhckNvbG9yIGZvciBub3cuCi0gICAgbXRsRGVzY3JpcHRvci5nZXQoKS5jb2xv
ckF0dGFjaG1lbnRzWzBdLnRleHR1cmUgPSBkZXNjcmlwdG9yLmF0dGFjaG1lbnQtPnBsYXRmb3Jt
VGV4dHVyZSgpOworICAgIG10bERlc2NyaXB0b3IuZ2V0KCkuY29sb3JBdHRhY2htZW50c1swXS50
ZXh0dXJlID0gYXR0YWNobWVudERlc2NyaXB0b3IuYXR0YWNobWVudC0+cGxhdGZvcm1UZXh0dXJl
KCk7CiAgICAgbXRsRGVzY3JpcHRvci5nZXQoKS5jb2xvckF0dGFjaG1lbnRzWzBdLmxvYWRBY3Rp
b24gPSBNVExMb2FkQWN0aW9uQ2xlYXI7CiAgICAgbXRsRGVzY3JpcHRvci5nZXQoKS5jb2xvckF0
dGFjaG1lbnRzWzBdLnN0b3JlQWN0aW9uID0gTVRMU3RvcmVBY3Rpb25TdG9yZTsKLSAgICBtdGxE
ZXNjcmlwdG9yLmdldCgpLmNvbG9yQXR0YWNobWVudHNbMF0uY2xlYXJDb2xvciA9IE1UTENsZWFy
Q29sb3JNYWtlKDAuMzUsIDAuNjUsIDAuODUsIDEuMCk7CisgICAgbXRsRGVzY3JpcHRvci5nZXQo
KS5jb2xvckF0dGFjaG1lbnRzWzBdLmNsZWFyQ29sb3IgPSBNVExDbGVhckNvbG9yTWFrZShjb2xv
ci5yLCBjb2xvci5nLCBjb2xvci5iLCBjb2xvci5hKTsKIAogICAgIG10bEVuY29kZXIgPSByZXRh
aW5QdHIoW2J1ZmZlci5wbGF0Zm9ybUNvbW1hbmRCdWZmZXIoKSByZW5kZXJDb21tYW5kRW5jb2Rl
cldpdGhEZXNjcmlwdG9yOm10bERlc2NyaXB0b3IuZ2V0KCldKTsKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDgyODkwOGUw
OGFhNjFmNjFiZTIzNTFlN2ZmMDJlZmI4ZmUzYTU4MjYuLmNiNGQ4MzlmMzk4ZDhmNWZiOWJlMTVk
MDAzYjM0ZDE3NTUxN2QwZjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxOC0xMS0yOSAgSnVz
dGluIEZhbiAgPGp1c3Rpbl9mYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJHUFVdIEZsZXNo
IG91dCBXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvciB0byBtYXRjaCB0aGUgV2ViR1BVIElETAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyMjEzCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRpbmcg
c29tZSB0ZXN0cyB0byBtYXRjaCB0aGUgdXBkYXRlZCBXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRv
ci4gCisKKyAgICAgICAgKiB3ZWJncHUvanMvYmFzaWMtd2ViZ3B1LWZ1bmN0aW9ucy5qczoKKyAg
ICAgICAgKHJlbmRlcik6CisgICAgICAgICogd2ViZ3B1L3JlbmRlci1jb21tYW5kLWVuY29kaW5n
Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3JlbmRlci1wYXNzZXMuaHRtbDoKKwogMjAxOC0xMS0y
OSAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMjM4MDkwKTogWyBNYWNPUyBXSzEgXSBMYXlvdXQgVGVzdCBpbXBvcnRlZC9ibGluay9j
b21wb3NpdGluZy9zcXVhc2hpbmcvc3F1YXNoaW5nLWludG8tYW5jZXN0b3ItcGFpbnRlZC1sYXll
ci5odG1sIGlzIGZsYWt5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvanMvYmFzaWMt
d2ViZ3B1LWZ1bmN0aW9ucy5qcyBiL0xheW91dFRlc3RzL3dlYmdwdS9qcy9iYXNpYy13ZWJncHUt
ZnVuY3Rpb25zLmpzCmluZGV4IDUwYWEwOGVmYzJkMzhiMjFiZTk1YTJjOTU0OTM1Njg0YTU1ZjRh
YTguLmE5OTYyMTJkMzA2ZTI1MGM0M2QxNGYyMmM1Njg1OGE2NjE1ODBhY2IgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS9qcy9iYXNpYy13ZWJncHUtZnVuY3Rpb25zLmpzCisrKyBiL0xh
eW91dFRlc3RzL3dlYmdwdS9qcy9iYXNpYy13ZWJncHUtZnVuY3Rpb25zLmpzCkBAIC0xMzcsMTAg
KzEzNywxNCBAQCBmdW5jdGlvbiByZW5kZXIoKSB7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
LSAgICAvLyBGSVhNRTogRmxlc2ggb3V0IHRoZSByZXN0IG9mIFdlYkdQVVJlbmRlclBhc3NEZXNj
cmlwdG9yLiAKLSAgICAvLyBEZWZhdWx0IGEgbG9hZE9wLCBzdG9yZU9wLCBhbmQgY2xlYXJDb2xv
ciBpbiB0aGUgaW1wbGVtZW50YXRpb24gZm9yIG5vdy4KKyAgICAvLyBGSVhNRTogRGVmYXVsdCBh
IGxvYWRPcCwgYW5kIHN0b3JlT3AgaW4gdGhlIGltcGxlbWVudGF0aW9uIGZvciBub3cuCisgICAg
Y29uc3QgY29sb3JBdHRhY2htZW50RGVzY3JpcHRvciA9IHsKKyAgICAgICAgYXR0YWNobWVudCA6
IHRleHR1cmVWaWV3LAorICAgICAgICBjbGVhckNvbG9yIDogeyByOjAuMzUsIGc6MC42NSwgYjow
Ljg1LCBhOjEuMCB9CisgICAgfQorCiAgICAgbGV0IHJlbmRlclBhc3NEZXNjcmlwdG9yID0gewot
ICAgICAgICBhdHRhY2htZW50IDogdGV4dHVyZVZpZXcKKyAgICAgICAgY29sb3JBdHRhY2htZW50
cyA6IFtjb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yXQogICAgIH0KIAogICAgIGxldCByZW5kZXJQ
YXNzRW5jb2RlciA9IGNvbW1hbmRCdWZmZXIuYmVnaW5SZW5kZXJQYXNzKHJlbmRlclBhc3NEZXNj
cmlwdG9yKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9yZW5kZXItY29tbWFuZC1l
bmNvZGluZy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1jb21tYW5kLWVuY29kaW5n
Lmh0bWwKaW5kZXggNWY4MjRkZGU5NGUwMmMxMDI2MWNlMTdkMjFlM2Y3NmI1MzU5MTkxZS4uYTJm
NGI4OWU1ODhkYzQyNzNhNzJiNmE0NDA5YzllODkyOThkNWJhMCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3JlbmRlci1jb21tYW5kLWVuY29kaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3JlbmRlci1jb21tYW5kLWVuY29kaW5nLmh0bWwKQEAgLTEyLDEwICsxMiwxNCBA
QAogbGV0IGNvbW1hbmRCdWZmZXIsIHJlbmRlclBhc3NFbmNvZGVyOwogCiBmdW5jdGlvbiBiZWdp
blBhc3MoKSB7Ci0gICAgLy8gRklYTUU6IEZsZXNoIG91dCB0aGUgcmVzdCBvZiBXZWJHUFVSZW5k
ZXJQYXNzRGVzY3JpcHRvci4gCi0gICAgLy8gRGVmYXVsdCBhIGxvYWRPcCwgc3RvcmVPcCwgYW5k
IGNsZWFyQ29sb3IgaW4gdGhlIGltcGxlbWVudGF0aW9uIGZvciBub3cuCi0gICAgY29uc3QgcmVu
ZGVyUGFzc0Rlc2NyaXB0b3IgPSB7Ci0gICAgICAgIGF0dGFjaG1lbnQgOiBjb250ZXh0LmdldE5l
eHRUZXh0dXJlKCkuY3JlYXRlRGVmYXVsdFRleHR1cmVWaWV3KCkKKyAgICAvLyBEZWZhdWx0IGEg
bG9hZE9wLCBzdG9yZU9wIGluIHRoZSBpbXBsZW1lbnRhdGlvbiBmb3Igbm93LgorICAgIGNvbnN0
IGNvbG9yQXR0YWNobWVudERlc2NyaXB0b3IgPSB7CisgICAgICAgIGF0dGFjaG1lbnQgOiBjb250
ZXh0LmdldE5leHRUZXh0dXJlKCkuY3JlYXRlRGVmYXVsdFRleHR1cmVWaWV3KCksCisgICAgICAg
IGNsZWFyQ29sb3IgOiB7IHI6MC4zNSwgZzowLjY1LCBiOjAuODUsIGE6MS4wIH0KKyAgICB9CisK
KyAgICBsZXQgcmVuZGVyUGFzc0Rlc2NyaXB0b3IgPSB7CisgICAgICAgIGNvbG9yQXR0YWNobWVu
dHMgOiBbY29sb3JBdHRhY2htZW50RGVzY3JpcHRvcl0KICAgICB9CiAKICAgICByZW5kZXJQYXNz
RW5jb2RlciA9IGNvbW1hbmRCdWZmZXIuYmVnaW5SZW5kZXJQYXNzKHJlbmRlclBhc3NEZXNjcmlw
dG9yKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9yZW5kZXItcGFzc2VzLmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLXBhc3Nlcy5odG1sCmluZGV4IDI4NmQ0N2ExYmIw
NGI4ZTNjNzNhNjVhY2MzZGNjNWQ5YzljMTcyYWYuLjY1NzFmMGZiMjQ3NWQ0MGRhZjc4MjQwZGMz
MzZhMTkwYTVlNjhkN2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS9yZW5kZXItcGFz
c2VzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1wYXNzZXMuaHRtbApAQCAt
MTAsMTMgKzEwLDE1IEBAIGxldCBjb21tYW5kQnVmZmVyLCByZW5kZXJQYXNzRW5jb2RlcjsKIAog
ZnVuY3Rpb24gc2V0VXBCYXNpY1JlbmRlclBhc3NFbmNvZGVyKCkgewogICAgIGNvbW1hbmRCdWZm
ZXIgPSBkZWZhdWx0RGV2aWNlLmNyZWF0ZUNvbW1hbmRCdWZmZXIoKTsKLSAgICBjb25zdCB0ZXh0
dXJlID0gY29udGV4dC5nZXROZXh0VGV4dHVyZSgpOwotICAgIGNvbnN0IHRleHR1cmVWaWV3ID0g
dGV4dHVyZS5jcmVhdGVEZWZhdWx0VGV4dHVyZVZpZXcoKTsKIAotICAgIC8vIEZJWE1FOiBGbGVz
aCBvdXQgdGhlIHJlc3Qgb2YgV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuIAotICAgIC8vIERl
ZmF1bHQgYSBsb2FkT3AsIHN0b3JlT3AsIGFuZCBjbGVhckNvbG9yIGluIHRoZSBpbXBsZW1lbnRh
dGlvbiBmb3Igbm93LgotICAgIGNvbnN0IHJlbmRlclBhc3NEZXNjcmlwdG9yID0gewotICAgICAg
ICBhdHRhY2htZW50IDogdGV4dHVyZVZpZXcKKyAgICAvLyBEZWZhdWx0IGEgbG9hZE9wLCBzdG9y
ZU9wIGluIHRoZSBpbXBsZW1lbnRhdGlvbiBmb3Igbm93LgorICAgIGNvbnN0IGNvbG9yQXR0YWNo
bWVudERlc2NyaXB0b3IgPSB7CisgICAgICAgIGF0dGFjaG1lbnQgOiBjb250ZXh0LmdldE5leHRU
ZXh0dXJlKCkuY3JlYXRlRGVmYXVsdFRleHR1cmVWaWV3KCksCisgICAgICAgIGNsZWFyQ29sb3Ig
OiB7IHI6MC4zNSwgZzowLjY1LCBiOjAuODUsIGE6MS4wIH0KKyAgICB9CisKKyAgICBsZXQgcmVu
ZGVyUGFzc0Rlc2NyaXB0b3IgPSB7CisgICAgICAgIGNvbG9yQXR0YWNobWVudHMgOiBbY29sb3JB
dHRhY2htZW50RGVzY3JpcHRvcl0KICAgICB9CiAKICAgICByZW5kZXJQYXNzRW5jb2RlciA9IGNv
bW1hbmRCdWZmZXIuYmVnaW5SZW5kZXJQYXNzKHJlbmRlclBhc3NEZXNjcmlwdG9yKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>356134</attachid>
            <date>2018-11-29 22:14:40 -0800</date>
            <delta_ts>2018-11-30 10:14:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192213-20181129221439.patch</filename>
            <type>text/plain</type>
            <size>32004</size>
            <attacher name="Justin Fan">justin_fan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NzE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjIxZmRiMzJmY2RlM2Mz
YmI0ZDc1Y2Q3MzY1NzQ4ODA4MjI3ODdmYy4uNDUxZTFhYmQxMzdlZGJmMzdjODFlZGYwYmVjNTc5
OTBmNTE5NTE2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE4LTExLTI5ICBKdXN0
aW4gRmFuICA8anVzdGluX2ZhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkdQVV0gRmxlc2gg
b3V0IFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yIHRvIG1hdGNoIHRoZSBXZWJHUFUgSURMCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTIyMTMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJHUFUgcHJv
dG90eXBlIG5vdyB1c2VzIFdlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9y
IGluIFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yIHRvIG1hdGNoIHRoZSBXZWJHUFUgU2tldGNo
LgorICAgICAgICBXZWJHUFUgZGV2ZWxvcGVyIGNhbiBub3cgYWxzbyBzZXQgdGhlIGNsZWFyQ29s
b3IgaW4gV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuCisKKyAgICAgICAgTm8gbmV3IHRlc3Rz
LiBPbGRlciBXZWJHUFVSZW5kZXJQYXNzKiB0ZXN0cyB1cGRhdGVkLiAKKworICAgICAgICAqIENN
YWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICog
TW9kdWxlcy93ZWJncHUvV2ViR1BVQ29sb3IuaDogQWRkZWQuIFR5cGVkZWYnZCB0byBHUFVDb2xv
ci5oLgorICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbG9yLmlkbDogQWRkZWQuCisg
ICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVQ29tbWFuZEJ1ZmZlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpXZWJHUFVDb21tYW5kQnVmZmVyOjpiZWdpblJlbmRlclBhc3MpOiBVcGRhdGVk
IHRvIGVycm9yIGNoZWNrIGFuZCBzdXBwb3J0IHRoZSBuZXcgc3RydWN0dXJlIG9mIFdlYkdQVVJl
bmRlclBhc3NEZXNjcmlwdG9yLgorICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRl
clBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVs
ZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmlkbDog
QWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0
b3IuaDogCisgICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0
b3IuaWRsOiBVcGRhdGVkIHRvIG1hdGNoIHRoZSBza2V0Y2ggSURMLgorICAgICAgICAqIFNvdXJj
ZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVQ29sb3IuaDogQWRkZWQuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNj
cmlwdG9yLmg6IEFkZGVkLiBCYWNraW5nIHN0cnVjdCBmb3IgV2ViR1BVX18uCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmg6IFVwZGF0ZWQg
dG8gbWF0Y2ggbmV3IFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVSZW5kZXJQYXNzRW5jb2Rlck1ldGFsLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6R1BVUmVuZGVyUGFzc0VuY29kZXI6OmNyZWF0ZSk6IE5vdyBhbHNvIHVz
ZXMgY2xlYXJDb2xvciBzZXQgYnkgZGV2ZWxvcGVyLgorCiAyMDE4LTExLTI5ICBLZWl0aCBSb2xs
aW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggYjE4MTUxN2QwMTc5NGU1YTNhZjJmZjc2ZjU0NTJmODYy
YzIzNjk0ZS4uN2NhNzUxZmYzOWM5YmE4YjI3MjQ5YTc0MzQyNWRjMDdhZWE2OWM1YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKQEAgLTQ1OCwxMiArNDU4LDE0IEBAIHNldChXZWJDb3JlX05PTl9TVkdf
SURMX0ZJTEVTCiAgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVLmlkbAogICAgIE1vZHVsZXMvd2Vi
Z3B1L1dlYkdQVUFkYXB0ZXIuaWRsCiAgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVQWRhcHRlckRl
c2NyaXB0b3IuaWRsCisgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVQ29sb3IuaWRsCiAgICAgTW9k
dWxlcy93ZWJncHUvV2ViR1BVQ29tbWFuZEJ1ZmZlci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9X
ZWJHUFVEZXZpY2UuaWRsCiAgICAgTW9kdWxlcy93ZWJncHUvV2ViR1BVUGlwZWxpbmVEZXNjcmlw
dG9yQmFzZS5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9XZWJHUFVQaXBlbGluZVN0YWdlRGVzY3Jp
cHRvci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9XZWJHUFVQcm9ncmFtbWFibGVQYXNzRW5jb2Rl
ci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9XZWJHUFVRdWV1ZS5pZGwKKyAgICBNb2R1bGVzL3dl
YmdwdS9XZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5pZGwKICAgICBN
b2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5pZGwKICAgICBNb2R1bGVz
L3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRW5jb2Rlci5pZGwKICAgICBNb2R1bGVzL3dlYmdwdS9X
ZWJHUFVSZW5kZXJQaXBlbGluZS5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4
IGFiMDYzZmNjNzdhNTJkYzM4NDgyZDM0ZjU4MjA2YmY4YmU4OTA4OTIuLjNlNTdiMWIwYjgzZDlh
NTAzODg5OTA4NmFkMWU3YzliNDYzNDNiZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZQpAQCAtMzc1LDEyICszNzUsMTQgQEAgSlNfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy93ZWJncHUvV2ViR1BVLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dl
YmdwdS9XZWJHUFVBZGFwdGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9X
ZWJHUFVBZGFwdGVyRGVzY3JpcHRvci5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJn
cHUvV2ViR1BVQ29sb3IuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQ
VUNvbW1hbmRCdWZmZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQ
VURldmljZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJncHUvV2ViR1BVUXVldWUu
aWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVBpcGVsaW5lRGVzY3Jp
cHRvckJhc2UuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVBpcGVs
aW5lU3RhZ2VEZXNjcmlwdG9yLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9X
ZWJHUFVQcm9ncmFtbWFibGVQYXNzRW5jb2Rlci5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxl
cy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9y
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRW5j
b2Rlci5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGlw
ZWxpbmUuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dl
YkdQVUNvbG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVDb2xvci5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjhjYzk2ZGQ2ZmVkMzczYWYxODA4MzMwZjM0OTUyNWZiNjZlOTU3NzEKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVDb2xv
ci5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVO
QUJMRShXRUJHUFUpCisKKyNpbmNsdWRlICJHUFVDb2xvci5oIgorCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK3VzaW5nIFdlYkdQVUNvbG9yID0gR1BVQ29sb3I7CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShXRUJHUFUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVDb2xvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmdwdS9XZWJHUFVDb2xvci5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTYxM2MyYjUxMDZjYWFlZmY1
OGViYzY2Y2IyMjQ0YzJlZjUwYjNkYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbG9yLmlkbApAQCAtMCwwICsxLDM1IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKy8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ncHV3ZWIvZ3B1d2ViL2Jsb2IvbWFzdGVyL2Rlc2ln
bi9za2V0Y2gud2ViaWRsCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJHUFUsCisgICAgRW5hYmxl
ZEF0UnVudGltZT1XZWJHUFUKK10gZGljdGlvbmFyeSBXZWJHUFVDb2xvciB7CisgICAgZmxvYXQg
cjsKKyAgICBmbG9hdCBnOworICAgIGZsb2F0IGI7CisgICAgZmxvYXQgYTsKK307CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVDb21tYW5kQnVmZmVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbW1hbmRCdWZmZXIuY3Bw
CmluZGV4IDRmNzYwNDYzZjIyMDRjYmU4ZDY4YmUxODdmZDIwMGQ5MWVlMGNiZTkuLjBhNGRlMmEx
MzUwYTUzOGEwMmE4MTdiZGM2ZGNkYjk5Mjg5ZTcwMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbW1hbmRCdWZmZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVUNvbW1hbmRCdWZmZXIuY3BwCkBAIC01MywxMiAr
NTMsMjIgQEAgV2ViR1BVQ29tbWFuZEJ1ZmZlcjo6V2ViR1BVQ29tbWFuZEJ1ZmZlcihSZWY8R1BV
Q29tbWFuZEJ1ZmZlcj4mJiBidWZmZXIpCiBSZWZQdHI8V2ViR1BVUmVuZGVyUGFzc0VuY29kZXI+
IFdlYkdQVUNvbW1hbmRCdWZmZXI6OmJlZ2luUmVuZGVyUGFzcyhXZWJHUFVSZW5kZXJQYXNzRGVz
Y3JpcHRvciYmIGRlc2NyaXB0b3IpCiB7CiAgICAgLy8gRklYTUU6IEltcHJvdmUgZXJyb3IgY2hl
Y2tpbmcgYXMgV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IgaXMgaW1wbGVtZW50ZWQuCi0gICAg
aWYgKCFkZXNjcmlwdG9yLmF0dGFjaG1lbnQpIHsKLSAgICAgICAgTE9HKFdlYkdQVSwgIldlYkdQ
VUNvbW1hbmRCdWZmZXI6OmNyZWF0ZSgpOiBObyBhdHRhY2htZW50IHNwZWNpZmllZCBmb3IgV2Vi
R1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IhIik7CisgICAgaWYgKGRlc2NyaXB0b3IuY29sb3JBdHRh
Y2htZW50cy5pc0VtcHR5KCkpIHsKKyAgICAgICAgTE9HKFdlYkdQVSwgIldlYkdQVUNvbW1hbmRC
dWZmZXI6OmNyZWF0ZSgpOiBObyBhdHRhY2htZW50cyBzcGVjaWZpZWQgZm9yIFdlYkdQVVJlbmRl
clBhc3NEZXNjcmlwdG9yISIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAg
Ci0gICAgYXV0byBlbmNvZGVyID0gR1BVUmVuZGVyUGFzc0VuY29kZXI6OmNyZWF0ZShtX2NvbW1h
bmRCdWZmZXIuZ2V0KCksIEdQVVJlbmRlclBhc3NEZXNjcmlwdG9yIHsgZGVzY3JpcHRvci5hdHRh
Y2htZW50LT50ZXh0dXJlKCkgfSk7CisKKyAgICBHUFVSZW5kZXJQYXNzRGVzY3JpcHRvciBncHVS
ZW5kZXJQYXNzRGVzY3JpcHRvcjsKKworICAgIGZvciAoY29uc3QgYXV0byYgY29sb3JBdHRhY2ht
ZW50IDogZGVzY3JpcHRvci5jb2xvckF0dGFjaG1lbnRzKSB7CisgICAgICAgIGlmICghY29sb3JB
dHRhY2htZW50LmF0dGFjaG1lbnQpIHsKKyAgICAgICAgICAgIExPRyhXZWJHUFUsICJXZWJHUFVD
b21tYW5kQnVmZmVyOjpjcmVhdGUoKTogSW52YWxpZCBhdHRhY2htZW50IGluIFdlYkdQVVJlbmRl
clBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yISIpOworICAgICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisgICAgICAgIH0KKyAgICAgICAgZ3B1UmVuZGVyUGFzc0Rlc2NyaXB0b3IuY29sb3JB
dHRhY2htZW50cy5hcHBlbmQoR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3Ig
eyBjb2xvckF0dGFjaG1lbnQuYXR0YWNobWVudC0+dGV4dHVyZSgpLCBjb2xvckF0dGFjaG1lbnQu
Y2xlYXJDb2xvciB9KTsKKyAgICB9CisKKyAgICBhdXRvIGVuY29kZXIgPSBHUFVSZW5kZXJQYXNz
RW5jb2Rlcjo6Y3JlYXRlKG1fY29tbWFuZEJ1ZmZlci5nZXQoKSwgV1RGTW92ZShncHVSZW5kZXJQ
YXNzRGVzY3JpcHRvcikpOwogCiAgICAgaWYgKCFlbmNvZGVyKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJl
bmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmFiNzJiNTUzZGYwZTg5Mjc4MDIyNmE0ZGQ1NDYxYmVlNGRmMzYyOTkKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQ
YXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJHUFUpCisKKyNpbmNsdWRlICJXZWJH
UFVDb2xvci5oIgorI2luY2x1ZGUgIldlYkdQVVRleHR1cmVWaWV3LmgiCisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworc3RydWN0IFdlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlw
dG9yIHsKKyAgICBSZWZQdHI8V2ViR1BVVGV4dHVyZVZpZXc+IGF0dGFjaG1lbnQ7CisKKyAgICBX
ZWJHUFVDb2xvciBjbGVhckNvbG9yOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisj
ZW5kaWYgLy8gRU5BQkxFKFdFQkdQVSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFj
aG1lbnREZXNjcmlwdG9yLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41OGM1Y2M4Yzg2M2FiZTZlNjY3ZDc3NjQx
NTc2ZDY4YWQ0ZmQ4NjFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaWRsCkBA
IC0wLDAgKzEsMzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwg
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
bmFsPVdFQkdQVSwKKyAgICBFbmFibGVkQXRSdW50aW1lPVdlYkdQVQorXSBkaWN0aW9uYXJ5IFdl
YkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yIHsKKyAgICBXZWJHUFVUZXh0
dXJlVmlldyBhdHRhY2htZW50OworCisgICAgLy8gTm90IFlldCBJbXBsZW1lbnRlZAorICAgIC8v
IFdlYkdQVUxvYWRPcCBsb2FkT3A7CisgICAgLy8gV2ViR1BVU3RvcmVPcCBzdG9yZU9wOworICAg
IFdlYkdQVUNvbG9yIGNsZWFyQ29sb3I7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmgKaW5kZXggNzQ3
ZTM5ZWYwNzA4NzQ4MDEwZDFkMWM5YmMzMzY1OWExZmQ0YTY5Zi4uYzE5MjMwYzBjZjBiMGRjMmYx
MmZhYWMyMjBlMWE4MzVjMzljNzZiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5oCkBAIC0yNywxMyAr
MjcsMTQgQEAKIAogI2lmIEVOQUJMRShXRUJHUFUpCiAKLSNpbmNsdWRlICJXZWJHUFVUZXh0dXJl
Vmlldy5oIgorI2luY2x1ZGUgIldlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlw
dG9yLmgiCisKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogc3RydWN0IFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yIHsKLSAgICAvLyBGSVhNRTogVGVt
cG9yYXJ5IHNob3J0Y3V0IGltcGxlbWVudGF0aW9uIGZvciBwcm90b3R5cGluZy4KLSAgICBSZWZQ
dHI8V2ViR1BVVGV4dHVyZVZpZXc+IGF0dGFjaG1lbnQ7CisgICAgVmVjdG9yPFdlYkdQVVJlbmRl
clBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yPiBjb2xvckF0dGFjaG1lbnRzOwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaWRsIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaWRsCmluZGV4IDIxZGVh
MmQzN2U3NGNlNTBiNGFlNzM0M2RmZWQwYzIwYTE0ZDhjOWUuLmI3YWRlM2M0YzZiZDA1Zjk0M2Ez
NTU3NTMxMjFjZGYyZGI5NzYzYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZ3B1L1dlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5pZGwKQEAgLTI4LDEx
ICsyOCw2IEBACiAgICAgQ29uZGl0aW9uYWw9V0VCR1BVLAogICAgIEVuYWJsZWRBdFJ1bnRpbWU9
V2ViR1BVCiBdIGRpY3Rpb25hcnkgV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IgewotICAgIC8v
IEZJWE1FOiBUZW1wb3Jhcnkgc2hvcnRjdXQgaW1wbGVtZW50YXRpb24gZm9yIHByb3RvdHlwaW5n
LgotICAgIFdlYkdQVVRleHR1cmVWaWV3IGF0dGFjaG1lbnQ7Ci0KLS8qIE5vdCBZZXQgSW1wbGVt
ZW50ZWQ6CiAgICAgc2VxdWVuY2U8V2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2Ny
aXB0b3I+IGNvbG9yQXR0YWNobWVudHM7Ci0gICAgV2ViR1BVUmVuZGVyUGFzc0RlcHRoU3RlbmNp
bEF0dGFjaG1lbnREZXNjcmlwdG9yIGRlcHRoU3RlbmNpbEF0dGFjaG1lbnQ7Ci0qLworICAgIC8v
IFdlYkdQVVJlbmRlclBhc3NEZXB0aFN0ZW5jaWxBdHRhY2htZW50RGVzY3JpcHRvciBkZXB0aFN0
ZW5jaWxBdHRhY2htZW50OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZ3B1L1dlYkdQVVRleHR1cmUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUv
V2ViR1BVVGV4dHVyZS5jcHAKaW5kZXggZWUxZjI0MzRjNmZjMzA3NTg1ZDVhM2RhZmRmMWY4YjRl
NzEyYjQ1Yy4uZDViNGIzYmRjZWI0YmU1ZmYwNDE3MWQxOWRlNDIxZTAyNjEwM2MzYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVVGV4dHVyZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVVGV4dHVyZS5jcHAKQEAgLTI4
LDcgKzI4LDYgQEAKIAogI2lmIEVOQUJMRShXRUJHUFUpCiAKLSNpbmNsdWRlICJHUFVUZXh0dXJl
LmgiCiAjaW5jbHVkZSAiV2ViR1BVVGV4dHVyZVZpZXcuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVVGV4dHVy
ZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVVGV4dHVyZS5oCmluZGV4
IDFkNDRhMzk2MDZhYTg2ZDFlNjU3NjljMDEyOTkwODNlZTY2YTdlYjYuLjExYzA4ZGU0ZDI1ZGMy
Y2JkZWQ5NDE4YjU1YWM3MjViOTEzNjdlNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViZ3B1L1dlYkdQVVRleHR1cmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmdwdS9XZWJHUFVUZXh0dXJlLmgKQEAgLTI3LDEyICsyNywxMyBAQAogCiAjaWYgRU5BQkxF
KFdFQkdQVSkKIAorI2luY2x1ZGUgIkdQVVRleHR1cmUuaCIKKwogI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLWNsYXNzIEdQVVRleHR1cmU7CiBjbGFzcyBXZWJHUFVUZXh0dXJlVmlldzsKIAogY2xhc3Mg
V2ViR1BVVGV4dHVyZSA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYkdQVVRleHR1cmU+IHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNl
cy50eHQKaW5kZXggNzljZGMzZWZhZTIwM2ZhMWUyMDU0M2EzNmM2NDcyYTc5MGVmM2JmMy4uY2Zl
NDY4NzgyMmFiYzMyMzA5OTA0YmExMDM0M2M4ZmE1MDlkMWYzMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAg
LTMyMjEsMTIgKzMyMjEsMTQgQEAgSlNXZWJHUFUuY3BwCiBKU1dlYkdQVUFkYXB0ZXIuY3BwCiBK
U1dlYkdQVUFkYXB0ZXJEZXNjcmlwdG9yLmNwcAogSlNXZWJHUFVDb21tYW5kQnVmZmVyLmNwcAor
SlNXZWJHUFVDb2xvci5jcHAKIEpTV2ViR1BVRGV2aWNlLmNwcAogSlNXZWJHUFVRdWV1ZS5jcHAK
IEpTV2ViR1BVUGlwZWxpbmVEZXNjcmlwdG9yQmFzZS5jcHAKIEpTV2ViR1BVUGlwZWxpbmVTdGFn
ZURlc2NyaXB0b3IuY3BwCiBKU1dlYkdQVVByb2dyYW1tYWJsZVBhc3NFbmNvZGVyLmNwcAogSlNX
ZWJHUFVSZW5kZXJpbmdDb250ZXh0LmNwcAorSlNXZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2ht
ZW50RGVzY3JpcHRvci5jcHAKIEpTV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuY3BwCiBKU1dl
YkdQVVJlbmRlclBhc3NFbmNvZGVyLmNwcAogSlNXZWJHUFVSZW5kZXJQaXBlbGluZS5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
aiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRl
eCA5YTRmOWM1MmNiZjEwZjg4ZjUxZmQ0YzY4NDBmYmNmMDk1N2NhYjc1Li5iN2ExYTYyZGQyNTJl
YTY1NjM5NTI2ZTRmNzM1ZGViNGNiYTBmNTZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMzc3MSw2ICsxMzc3MSwxMiBAQAog
CQlEMDAwRUJBMTExQkRBRkQ0MDBDNDc3MjYgLyogRnJhbWVMb2FkZXJTdGF0ZU1hY2hpbmUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRnJhbWVMb2FkZXJTdGF0ZU1hY2hpbmUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRDAwMEVEMjUxMUMxQjlDRDAwQzQ3NzI2
IC8qIFN1YmZyYW1lTG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFN1YmZyYW1lTG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRDAw
MEVEMjYxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9hZGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFN1YmZyYW1lTG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUQwMDFEOUE5MjFCMEM2NzMwMDIzQjlCQyAvKiBHUFVSZW5kZXJQYXNzQ29sb3JB
dHRhY2htZW50RGVzY3JpcHRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHUFVSZW5kZXJQYXNzQ29sb3JB
dHRhY2htZW50RGVzY3JpcHRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMDAx
RDlBQjIxQjBDN0JGMDAyM0I5QkMgLyogR1BVQ29sb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR1BVQ29s
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDAwMUQ5QUMyMUIwQzgxQTAwMjNC
OUJDIC8qIFdlYkdQVUNvbG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdQVUNvbG9yLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwMDFEOUFEMjFCMEM4MUEwMDIzQjlCQyAvKiBXZWJH
UFVDb2xvci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gV2ViR1BVQ29sb3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlEMDAxRDlCMDIxQjBDOEE4MDAyM0I5QkMgLyogV2ViR1BVUmVuZGVyUGFzc0NvbG9y
QXR0YWNobWVudERlc2NyaXB0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR1BVUmVuZGVyUGFzc0Nv
bG9yQXR0YWNobWVudERlc2NyaXB0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RDAwMUQ5QjEyMUIwQzhBODAwMjNCOUJDIC8qIFdlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1l
bnREZXNjcmlwdG9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVz
Y3JpcHRvci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUQwMEY1OTQwMjE2RUND
N0EwMDBENzFEQiAvKiBET01XaW5kb3dXZWJHUFUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NV2luZG93
V2ViR1BVLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUQwMEY1OTQxMjE2RUNDN0Ew
MDBENzFEQiAvKiBET01XaW5kb3dXZWJHUFUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NV2lu
ZG93V2ViR1BVLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRDAwRjU5NDIyMTZF
Q0M3QTAwMEQ3MURCIC8qIERPTVdpbmRvd1dlYkdQVS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NV2luZG93V2ViR1BV
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE4MTQ2LDYgKzE4MTUyLDcgQEAK
IAkJCWNoaWxkcmVuID0gKAogCQkJCUQwODdDRTM3MjFBQ0E5NDIwMEJERTE3NCAvKiBjb2NvYSAq
LywKIAkJCQkzMTJGRjhDRTIxQTRDMzNGMDBFQjE5OUQgLyogbGVnYWN5ICovLAorCQkJCUQwMDFE
OUFCMjFCMEM3QkYwMDIzQjlCQyAvKiBHUFVDb2xvci5oICovLAogCQkJCTMxMkZGOEJEMjFBNEMy
RjEwMEVCMTk5RCAvKiBHUFVDb21tYW5kQnVmZmVyLmggKi8sCiAJCQkJMzEyRkY4QkYyMUE0QzJG
MTAwRUIxOTlEIC8qIEdQVURldmljZS5jcHAgKi8sCiAJCQkJMzEyRkY4QkUyMUE0QzJGMTAwRUIx
OTlEIC8qIEdQVURldmljZS5oICovLApAQCAtMTgxNTMsNiArMTgxNjAsNyBAQAogCQkJCTMxMkZG
OEMyMjFBNEMyRjMwMEVCMTk5RCAvKiBHUFVQaXBlbGluZVN0YWdlRGVzY3JpcHRvci5oICovLAog
CQkJCUQwMzIxMUNGMjFBQzk1NEUwMDc2M0NGMiAvKiBHUFVQcm9ncmFtbWFibGVQYXNzRW5jb2Rl
ci5oICovLAogCQkJCTMxMkZGOEMxMjFBNEMyRjIwMEVCMTk5RCAvKiBHUFVRdWV1ZS5oICovLAor
CQkJCUQwMDFEOUE5MjFCMEM2NzMwMDIzQjlCQyAvKiBHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2ht
ZW50RGVzY3JpcHRvci5oICovLAogCQkJCUQwMzIxMUQwMjFBQzk1NEYwMDc2M0NGMiAvKiBHUFVS
ZW5kZXJQYXNzRGVzY3JpcHRvci5oICovLAogCQkJCUQwMzIxMUNFMjFBQzk1NEUwMDc2M0NGMiAv
KiBHUFVSZW5kZXJQYXNzRW5jb2Rlci5oICovLAogCQkJCTMxMkZGOEI5MjFBNEMyRUYwMEVCMTk5
RCAvKiBHUFVSZW5kZXJQaXBlbGluZS5oICovLApAQCAtMjU2MzQsNiArMjU2NDIsOCBAQAogCQkJ
CUQwMEY1OTUxMjE2RkZBQzIwMDBENzFEQiAvKiBXZWJHUFVBZGFwdGVyLmlkbCAqLywKIAkJCQlE
MDJDMjY5MTIxODE0MTZEMDBEODE4RTQgLyogV2ViR1BVQWRhcHRlckRlc2NyaXB0b3IuaCAqLywK
IAkJCQlEMDJDMjY5MjIxODE0MTZEMDBEODE4RTQgLyogV2ViR1BVQWRhcHRlckRlc2NyaXB0b3Iu
aWRsICovLAorCQkJCUQwMDFEOUFDMjFCMEM4MUEwMDIzQjlCQyAvKiBXZWJHUFVDb2xvci5oICov
LAorCQkJCUQwMDFEOUFEMjFCMEM4MUEwMDIzQjlCQyAvKiBXZWJHUFVDb2xvci5pZGwgKi8sCiAJ
CQkJRDBFQUNGNzcyMTkzNzIyODAwMEZBNzVDIC8qIFdlYkdQVUNvbW1hbmRCdWZmZXIuY3BwICov
LAogCQkJCUQwRUFDRjc2MjE5MzcyMjgwMDBGQTc1QyAvKiBXZWJHUFVDb21tYW5kQnVmZmVyLmgg
Ki8sCiAJCQkJRDBFQUNGNzgyMTkzNzIyODAwMEZBNzVDIC8qIFdlYkdQVUNvbW1hbmRCdWZmZXIu
aWRsICovLApAQCAtMjU2NTMsNiArMjU2NjMsOCBAQAogCQkJCUQwOTNEMjI5MjE3OTU0MTYwMDMy
OTIxNyAvKiBXZWJHUFVSZW5kZXJpbmdDb250ZXh0LmNwcCAqLywKIAkJCQlEMDkzRDIyNTIxNzk1
MUQ0MDAzMjkyMTcgLyogV2ViR1BVUmVuZGVyaW5nQ29udGV4dC5oICovLAogCQkJCUQwOTNEMjI3
MjE3OTUxRDQwMDMyOTIxNyAvKiBXZWJHUFVSZW5kZXJpbmdDb250ZXh0LmlkbCAqLywKKwkJCQlE
MDAxRDlCMDIxQjBDOEE4MDAyM0I5QkMgLyogV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVu
dERlc2NyaXB0b3IuaCAqLywKKwkJCQlEMDAxRDlCMTIxQjBDOEE4MDAyM0I5QkMgLyogV2ViR1BV
UmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaWRsICovLAogCQkJCUQwRUFDRjhD
MjE5NDAzQzkwMDBGQTc1QyAvKiBXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5oICovLAogCQkJ
CUQwRUFDRjhEMjE5NDAzQzkwMDBGQTc1QyAvKiBXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5p
ZGwgKi8sCiAJCQkJRDBFQUNGOEYyMTk0MEEyMjAwMEZBNzVDIC8qIFdlYkdQVVJlbmRlclBhc3NF
bmNvZGVyLmNwcCAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dwdS9HUFVDb2xvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L0dQVUNvbG9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDJkYTUyNjU2ZGUyM2QyNjI0ZDZhMWI4ZTM1NmJkMjY0
YWRjMTYxOQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dwdS9HUFVDb2xvci5oCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2lmIEVOQUJMRShXRUJHUFUpCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3Ry
dWN0IEdQVUNvbG9yIHsKKyAgICBmbG9hdCByOworICAgIGZsb2F0IGc7CisgICAgZmxvYXQgYjsK
KyAgICBmbG9hdCBhOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8g
RU5BQkxFKFdFQkdQVSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dwdS9HUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1l
bnREZXNjcmlwdG9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjlkNDYwMmEwYTg4NWFmZDhlYmM4OGY5OTU0ZDRj
YjYwZWE4NmU5YQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dwdS9HUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oCkBAIC0w
LDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJH
UFUpCisKKyNpbmNsdWRlICJHUFVDb2xvci5oIgorI2luY2x1ZGUgIkdQVVRleHR1cmUuaCIKKwor
bmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVu
dERlc2NyaXB0b3IgeworICAgIFJlZjxHUFVUZXh0dXJlPiBhdHRhY2htZW50OworCisgICAgR1BV
Q29sb3IgY2xlYXJDb2xvcjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlm
IC8vIEVOQUJMRShXRUJHUFUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9ncHUvR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5oCmluZGV4IDVhMjRk
YjM2MzI2NDMwOTc0M2QwZGI5MGQ1MWFjNWE0MTBlNmUwMTcuLmVkY2U5ZGVlNGI5MjU1MzRjYWYx
ZGM1OWM4YmRhMjA0MjM1YjYyNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5oCkBAIC0y
NywxMiArMjcsMTQgQEAKIAogI2lmIEVOQUJMRShXRUJHUFUpCiAKLSNpbmNsdWRlICJHUFVUZXh0
dXJlLmgiCisjaW5jbHVkZSAiR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3Iu
aCIKKworI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBz
dHJ1Y3QgR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IgewotICAgIFJlZjxHUFVUZXh0dXJlPiBhdHRh
Y2htZW50OworICAgIFZlY3RvcjxHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRv
cj4gY29sb3JBdHRhY2htZW50czsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVSZW5k
ZXJQYXNzRW5jb2Rlck1ldGFsLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3B1L2NvY29hL0dQVVJlbmRlclBhc3NFbmNvZGVyTWV0YWwubW0KaW5kZXggMzhhZGI4NjZiN2E2
YWE2YzBhOGZkMmI5N2IyMDI3MzdmMTZjNThjNC4uMmM1ODJiMGIzMmQ4ZDQxMmQ4Y2Q2NTRhNDY5
YWE3ZTZiOWRhN2E0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3B1L2NvY29hL0dQVVJlbmRlclBhc3NFbmNvZGVyTWV0YWwubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBhc3NFbmNvZGVyTWV0
YWwubW0KQEAgLTQyLDE1ICs0MiwxOCBAQCBSZWZQdHI8R1BVUmVuZGVyUGFzc0VuY29kZXI+IEdQ
VVJlbmRlclBhc3NFbmNvZGVyOjpjcmVhdGUoY29uc3QgR1BVQ29tbWFuZEJ1ZmZlcgogewogICAg
IFBsYXRmb3JtUmVuZGVyUGFzc0VuY29kZXJTbWFydFB0ciBtdGxFbmNvZGVyOwogCisgICAgLy8g
RklYTUU6IERlZmF1bHQgdG8gY29sb3JBdHRhY2htZW50c1swXSBhbmQgdGhpcyBsb2FkT3AsIHN0
b3JlT3AgZm9yIG5vdy4KKyAgICBjb25zdCBhdXRvJiBhdHRhY2htZW50RGVzY3JpcHRvciA9IGRl
c2NyaXB0b3IuY29sb3JBdHRhY2htZW50c1swXTsKKyAgICBjb25zdCBhdXRvJiBjb2xvciA9IGF0
dGFjaG1lbnREZXNjcmlwdG9yLmNsZWFyQ29sb3I7CisKICAgICBCRUdJTl9CTE9DS19PQkpDX0VY
Q0VQVElPTlM7CiAKICAgICBhdXRvIG10bERlc2NyaXB0b3IgPSBhZG9wdE5TKFtNVExSZW5kZXJQ
YXNzRGVzY3JpcHRvciBuZXddKTsKIAotICAgIC8vIEZJWE1FOiBEZWZhdWx0IHRvIGNvbG9yQXR0
YWNobWVudHNbMF0gYW5kIHRoaXMgbG9hZE9wLCBzdG9yZU9wLCBjbGVhckNvbG9yIGZvciBub3cu
Ci0gICAgbXRsRGVzY3JpcHRvci5nZXQoKS5jb2xvckF0dGFjaG1lbnRzWzBdLnRleHR1cmUgPSBk
ZXNjcmlwdG9yLmF0dGFjaG1lbnQtPnBsYXRmb3JtVGV4dHVyZSgpOworICAgIG10bERlc2NyaXB0
b3IuZ2V0KCkuY29sb3JBdHRhY2htZW50c1swXS50ZXh0dXJlID0gYXR0YWNobWVudERlc2NyaXB0
b3IuYXR0YWNobWVudC0+cGxhdGZvcm1UZXh0dXJlKCk7CiAgICAgbXRsRGVzY3JpcHRvci5nZXQo
KS5jb2xvckF0dGFjaG1lbnRzWzBdLmxvYWRBY3Rpb24gPSBNVExMb2FkQWN0aW9uQ2xlYXI7CiAg
ICAgbXRsRGVzY3JpcHRvci5nZXQoKS5jb2xvckF0dGFjaG1lbnRzWzBdLnN0b3JlQWN0aW9uID0g
TVRMU3RvcmVBY3Rpb25TdG9yZTsKLSAgICBtdGxEZXNjcmlwdG9yLmdldCgpLmNvbG9yQXR0YWNo
bWVudHNbMF0uY2xlYXJDb2xvciA9IE1UTENsZWFyQ29sb3JNYWtlKDAuMzUsIDAuNjUsIDAuODUs
IDEuMCk7CisgICAgbXRsRGVzY3JpcHRvci5nZXQoKS5jb2xvckF0dGFjaG1lbnRzWzBdLmNsZWFy
Q29sb3IgPSBNVExDbGVhckNvbG9yTWFrZShjb2xvci5yLCBjb2xvci5nLCBjb2xvci5iLCBjb2xv
ci5hKTsKIAogICAgIG10bEVuY29kZXIgPSByZXRhaW5QdHIoW2J1ZmZlci5wbGF0Zm9ybUNvbW1h
bmRCdWZmZXIoKSByZW5kZXJDb21tYW5kRW5jb2RlcldpdGhEZXNjcmlwdG9yOm10bERlc2NyaXB0
b3IuZ2V0KCldKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDgyODkwOGUwOGFhNjFmNjFiZTIzNTFlN2ZmMDJlZmI4ZmUz
YTU4MjYuLmNiNGQ4MzlmMzk4ZDhmNWZiOWJlMTVkMDAzYjM0ZDE3NTUxN2QwZjAgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNyBAQAorMjAxOC0xMS0yOSAgSnVzdGluIEZhbiAgPGp1c3Rpbl9mYW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFtXZWJHUFVdIEZsZXNoIG91dCBXZWJHUFVSZW5kZXJQYXNzRGVzY3Jp
cHRvciB0byBtYXRjaCB0aGUgV2ViR1BVIElETAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyMjEzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVXBkYXRpbmcgc29tZSB0ZXN0cyB0byBtYXRjaCB0aGUgdXBk
YXRlZCBXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci4gCisKKyAgICAgICAgKiB3ZWJncHUvanMv
YmFzaWMtd2ViZ3B1LWZ1bmN0aW9ucy5qczoKKyAgICAgICAgKHJlbmRlcik6CisgICAgICAgICog
d2ViZ3B1L3JlbmRlci1jb21tYW5kLWVuY29kaW5nLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3Jl
bmRlci1wYXNzZXMuaHRtbDoKKwogMjAxOC0xMS0yOSAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFk
QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjM4MDkwKTogWyBNYWNPUyBXSzEg
XSBMYXlvdXQgVGVzdCBpbXBvcnRlZC9ibGluay9jb21wb3NpdGluZy9zcXVhc2hpbmcvc3F1YXNo
aW5nLWludG8tYW5jZXN0b3ItcGFpbnRlZC1sYXllci5odG1sIGlzIGZsYWt5CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJncHUvanMvYmFzaWMtd2ViZ3B1LWZ1bmN0aW9ucy5qcyBiL0xheW91
dFRlc3RzL3dlYmdwdS9qcy9iYXNpYy13ZWJncHUtZnVuY3Rpb25zLmpzCmluZGV4IDUwYWEwOGVm
YzJkMzhiMjFiZTk1YTJjOTU0OTM1Njg0YTU1ZjRhYTguLmE5OTYyMTJkMzA2ZTI1MGM0M2QxNGYy
MmM1Njg1OGE2NjE1ODBhY2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS9qcy9iYXNp
Yy13ZWJncHUtZnVuY3Rpb25zLmpzCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS9qcy9iYXNpYy13
ZWJncHUtZnVuY3Rpb25zLmpzCkBAIC0xMzcsMTAgKzEzNywxNCBAQCBmdW5jdGlvbiByZW5kZXIo
KSB7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICAvLyBGSVhNRTogRmxlc2ggb3V0IHRo
ZSByZXN0IG9mIFdlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLiAKLSAgICAvLyBEZWZhdWx0IGEg
bG9hZE9wLCBzdG9yZU9wLCBhbmQgY2xlYXJDb2xvciBpbiB0aGUgaW1wbGVtZW50YXRpb24gZm9y
IG5vdy4KKyAgICAvLyBGSVhNRTogRGVmYXVsdCBhIGxvYWRPcCwgYW5kIHN0b3JlT3AgaW4gdGhl
IGltcGxlbWVudGF0aW9uIGZvciBub3cuCisgICAgY29uc3QgY29sb3JBdHRhY2htZW50RGVzY3Jp
cHRvciA9IHsKKyAgICAgICAgYXR0YWNobWVudCA6IHRleHR1cmVWaWV3LAorICAgICAgICBjbGVh
ckNvbG9yIDogeyByOjAuMzUsIGc6MC42NSwgYjowLjg1LCBhOjEuMCB9CisgICAgfQorCiAgICAg
bGV0IHJlbmRlclBhc3NEZXNjcmlwdG9yID0gewotICAgICAgICBhdHRhY2htZW50IDogdGV4dHVy
ZVZpZXcKKyAgICAgICAgY29sb3JBdHRhY2htZW50cyA6IFtjb2xvckF0dGFjaG1lbnREZXNjcmlw
dG9yXQogICAgIH0KIAogICAgIGxldCByZW5kZXJQYXNzRW5jb2RlciA9IGNvbW1hbmRCdWZmZXIu
YmVnaW5SZW5kZXJQYXNzKHJlbmRlclBhc3NEZXNjcmlwdG9yKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS9yZW5kZXItY29tbWFuZC1lbmNvZGluZy5odG1sIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3JlbmRlci1jb21tYW5kLWVuY29kaW5nLmh0bWwKaW5kZXggNWY4MjRkZGU5NGUwMmMx
MDI2MWNlMTdkMjFlM2Y3NmI1MzU5MTkxZS4uODcyZmI4OWFlMjZhOTc2MGRjNDI4MDg1OGM2ZTA2
MjM0MWU3YmZkMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1jb21tYW5k
LWVuY29kaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1jb21tYW5kLWVu
Y29kaW5nLmh0bWwKQEAgLTEyLDEwICsxMiwxNCBAQAogbGV0IGNvbW1hbmRCdWZmZXIsIHJlbmRl
clBhc3NFbmNvZGVyOwogCiBmdW5jdGlvbiBiZWdpblBhc3MoKSB7Ci0gICAgLy8gRklYTUU6IEZs
ZXNoIG91dCB0aGUgcmVzdCBvZiBXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci4gCi0gICAgLy8g
RGVmYXVsdCBhIGxvYWRPcCwgc3RvcmVPcCwgYW5kIGNsZWFyQ29sb3IgaW4gdGhlIGltcGxlbWVu
dGF0aW9uIGZvciBub3cuCi0gICAgY29uc3QgcmVuZGVyUGFzc0Rlc2NyaXB0b3IgPSB7Ci0gICAg
ICAgIGF0dGFjaG1lbnQgOiBjb250ZXh0LmdldE5leHRUZXh0dXJlKCkuY3JlYXRlRGVmYXVsdFRl
eHR1cmVWaWV3KCkKKyAgICAvLyBEZWZhdWx0IGEgbG9hZE9wLCBzdG9yZU9wIGluIHRoZSBpbXBs
ZW1lbnRhdGlvbiBmb3Igbm93LgorICAgIGNvbnN0IGNvbG9yQXR0YWNobWVudERlc2NyaXB0b3Ig
PSB7CisgICAgICAgIGF0dGFjaG1lbnQ6IGNvbnRleHQuZ2V0TmV4dFRleHR1cmUoKS5jcmVhdGVE
ZWZhdWx0VGV4dHVyZVZpZXcoKSwKKyAgICAgICAgY2xlYXJDb2xvcjogeyByOiAwLjM1LCBnOiAw
LjY1LCBiOiAwLjg1LCBhOiAxLjAgfQorICAgIH0KKworICAgIGxldCByZW5kZXJQYXNzRGVzY3Jp
cHRvciA9IHsKKyAgICAgICAgY29sb3JBdHRhY2htZW50cyA6IFtjb2xvckF0dGFjaG1lbnREZXNj
cmlwdG9yXQogICAgIH0KIAogICAgIHJlbmRlclBhc3NFbmNvZGVyID0gY29tbWFuZEJ1ZmZlci5i
ZWdpblJlbmRlclBhc3MocmVuZGVyUGFzc0Rlc2NyaXB0b3IpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3JlbmRlci1wYXNzZXMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS9yZW5k
ZXItcGFzc2VzLmh0bWwKaW5kZXggMjg2ZDQ3YTFiYjA0YjhlM2M3M2E2NWFjYzNkY2M1ZDljOWMx
NzJhZi4uOTZjOTc2ZmQwNGZhNzg2NjUyNmRkZWM1MWE2NzNlYmM3NTc1YzhlMSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1wYXNzZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvcmVuZGVyLXBhc3Nlcy5odG1sCkBAIC0xMCwxMyArMTAsMTUgQEAgbGV0IGNvbW1h
bmRCdWZmZXIsIHJlbmRlclBhc3NFbmNvZGVyOwogCiBmdW5jdGlvbiBzZXRVcEJhc2ljUmVuZGVy
UGFzc0VuY29kZXIoKSB7CiAgICAgY29tbWFuZEJ1ZmZlciA9IGRlZmF1bHREZXZpY2UuY3JlYXRl
Q29tbWFuZEJ1ZmZlcigpOwotICAgIGNvbnN0IHRleHR1cmUgPSBjb250ZXh0LmdldE5leHRUZXh0
dXJlKCk7Ci0gICAgY29uc3QgdGV4dHVyZVZpZXcgPSB0ZXh0dXJlLmNyZWF0ZURlZmF1bHRUZXh0
dXJlVmlldygpOwogCi0gICAgLy8gRklYTUU6IEZsZXNoIG91dCB0aGUgcmVzdCBvZiBXZWJHUFVS
ZW5kZXJQYXNzRGVzY3JpcHRvci4gCi0gICAgLy8gRGVmYXVsdCBhIGxvYWRPcCwgc3RvcmVPcCwg
YW5kIGNsZWFyQ29sb3IgaW4gdGhlIGltcGxlbWVudGF0aW9uIGZvciBub3cuCi0gICAgY29uc3Qg
cmVuZGVyUGFzc0Rlc2NyaXB0b3IgPSB7Ci0gICAgICAgIGF0dGFjaG1lbnQgOiB0ZXh0dXJlVmll
dworICAgIC8vIERlZmF1bHQgYSBsb2FkT3AsIHN0b3JlT3AgaW4gdGhlIGltcGxlbWVudGF0aW9u
IGZvciBub3cuCisgICAgY29uc3QgY29sb3JBdHRhY2htZW50RGVzY3JpcHRvciA9IHsKKyAgICAg
ICAgYXR0YWNobWVudDogY29udGV4dC5nZXROZXh0VGV4dHVyZSgpLmNyZWF0ZURlZmF1bHRUZXh0
dXJlVmlldygpLAorICAgICAgICBjbGVhckNvbG9yOiB7IHI6IDAuMzUsIGc6IDAuNjUsIGI6IDAu
ODUsIGE6IDEuMCB9CisgICAgfQorCisgICAgbGV0IHJlbmRlclBhc3NEZXNjcmlwdG9yID0gewor
ICAgICAgICBjb2xvckF0dGFjaG1lbnRzOiBbY29sb3JBdHRhY2htZW50RGVzY3JpcHRvcl0KICAg
ICB9CiAKICAgICByZW5kZXJQYXNzRW5jb2RlciA9IGNvbW1hbmRCdWZmZXIuYmVnaW5SZW5kZXJQ
YXNzKHJlbmRlclBhc3NEZXNjcmlwdG9yKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>