<?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>216270</bug_id>
          
          <creation_ts>2020-09-08 03:52:26 -0700</creation_ts>
          <short_desc>[GStreamer] Update Flatpak SDK to 1.18.0</short_desc>
          <delta_ts>2020-09-16 00:11:18 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</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>
          <dependson>216558</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Philippe Normand">pnormand</reporter>
          <assigned_to name="Philippe Normand">pnormand</assigned_to>
          <cc>webkit-bug-importer</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1686527</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-09-08 03:52:26 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686937</commentid>
    <comment_count>1</comment_count>
      <attachid>408323</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-09-09 03:49:26 -0700</bug_when>
    <thetext>Created attachment 408323
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689024</commentid>
    <comment_count>2</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-09-16 00:10:49 -0700</bug_when>
    <thetext>Committed r267139: &lt;https://trac.webkit.org/changeset/267139&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689025</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-16 00:11:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/68970354&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408323</attachid>
            <date>2020-09-09 03:49:26 -0700</date>
            <delta_ts>2020-09-15 03:06:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216270-20200909034924.patch</filename>
            <type>text/plain</type>
            <size>60008</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NzI2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNTMwY2Y4NGRmNzBhZTVjNjQ0ZjNmZjI2MDdmZjYwNTY0
ZjViZGQ3MS4uOWRjZjVmYWEwYzYzNWIzMmI3ODIxZTM0NTU1NGZkY2EzODc0Mjc2MiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4
IEBACisyMDIwLTA5LTA5ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4K
KworICAgICAgICBbR1N0cmVhbWVyXSBVcGRhdGUgRmxhdHBhayBTREsgdG8gMS4xOC4wCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYyNzAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgdG8gR1N0
cmVhbWVyIDEuMTguMCwgcmVtb3ZpbmcgdGhlIHBhdGNoZXMgbm93IGJlaW5nIHNoaXBwZWQgaW4g
dGhpcyByZWxlYXNlLgorCisgICAgICAgICogYnVpbGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdC1s
aWJhdi5ic3Q6CisgICAgICAgICogYnVpbGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdC1wbHVnaW5z
LWJhZC5ic3Q6CisgICAgICAgICogYnVpbGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdC1wbHVnaW5z
LWJhc2UuYnN0OgorICAgICAgICAqIGJ1aWxkc3RyZWFtL2VsZW1lbnRzL3Nkay9nc3QtcGx1Z2lu
cy1nb29kLmJzdDoKKyAgICAgICAgKiBidWlsZHN0cmVhbS9lbGVtZW50cy9zZGsvZ3N0LXBsdWdp
bnMtdWdseS5ic3Q6CisgICAgICAgICogYnVpbGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdHJlYW1l
ci5ic3Q6CisgICAgICAgICogYnVpbGRzdHJlYW0vcGF0Y2hlcy9nc3QtbGliYXYtc3RvcC1jYWNo
aW5nLWNvZGVjcy5wYXRjaDogUmVtb3ZlZC4KKyAgICAgICAgKiBidWlsZHN0cmVhbS9wYXRjaGVz
L2dzdC1wbHVnaW5zLWJhZC0wMDAxLWgyNjRwYXJzZS1Qb3N0LWEtV0FSTklORy13aGVuLWRhdGEt
aXMtYnJva2VuLnBhdGNoOiBSZW1vdmVkLgorICAgICAgICAqIGJ1aWxkc3RyZWFtL3BhdGNoZXMv
Z3N0LXBsdWdpbnMtYmFzZS0wMDAxLWdsdXBsb2FkLUZpeC1mYWxsYmFjay1mcm9tLWRpcmVjdC1k
bWFidWYtdG8tZG1hYnVmLXUucGF0Y2g6IFJlbW92ZWQuCisgICAgICAgICogYnVpbGRzdHJlYW0v
cGF0Y2hlcy9nc3QtcGx1Z2lucy1iYXNlLTAwMDEtb2dnc3RyZWFtLVdvcmthcm91bmQtZm9yLWJy
b2tlbi1QQVItaW4tVlA4LUJPUy5wYXRjaDogUmVtb3ZlZC4KKyAgICAgICAgKiBidWlsZHN0cmVh
bS9wYXRjaGVzL2dzdC1wbHVnaW5zLWJhc2UtMDAwMS1wbGF5YmluLUhhbmRsZS1lcnJvci1tZXNz
YWdlLXdpdGgtcmVkaXJlY3Rpb24taW5kaWNhLnBhdGNoOiBSZW1vdmVkLgorICAgICAgICAqIGJ1
aWxkc3RyZWFtL3BhdGNoZXMvZ3N0LXBsdWdpbnMtYmFzZS0wMDAyLWdsdXBsb2FkLWZpeC1zZWdm
YXVsdC5wYXRjaDogUmVtb3ZlZC4KKyAgICAgICAgKiBidWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1w
bHVnaW5zLWJhc2UtMDAwMy1nbGJhc2VmaWx0ZXItYWRkLXN1cHBvcnQtZm9yLWNoYW5naW5nLXRo
ZS1kaXNwbGF5LnBhdGNoOiBSZW1vdmVkLgorICAgICAgICAqIGJ1aWxkc3RyZWFtL3BhdGNoZXMv
Z3N0LXBsdWdpbnMtZ29vZC1xdGRlbXV4LVNwZWNpZnktUkVESVJFQ1QtaW5mb3JtYXRpb24taW4t
ZXJyb3ItbWVzc2FnLnBhdGNoOiBSZW1vdmVkLgorICAgICAgICAqIGJ1aWxkc3RyZWFtL3BhdGNo
ZXMvbGliYXYtMDAwMS1nc3RhdnZpZGRlYy1MaW1pdC1kZWZhdWx0LW51bWJlci1vZi1kZWNvZGVy
LXRocmVhZHMucGF0Y2g6IFJlbW92ZWQuCisKIDIwMjAtMDktMDggIFBoaWxpcHBlIE5vcm1hbmQg
IDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtGbGF0cGFrIFNES10gRm9sbG93LXVw
IGZpeGVzIGZvciAwLjMgYnJhbmNoCmRpZmYgLS1naXQgYS9Ub29scy9idWlsZHN0cmVhbS9lbGVt
ZW50cy9zZGsvZ3N0LWxpYmF2LmJzdCBiL1Rvb2xzL2J1aWxkc3RyZWFtL2VsZW1lbnRzL3Nkay9n
c3QtbGliYXYuYnN0CmluZGV4IGUwMGU2N2NiMDYwYThkNmNkNmU4Y2FiMmIyMTg4NmIyMWY4YTNh
YjQuLjNkOTdmZTU5ODQ3OWY0M2Y5MDI4MGMyNzliNDk5NGUxYmMzMzgwMmYgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL2J1aWxkc3RyZWFtL2VsZW1lbnRzL3Nkay9nc3QtbGliYXYuYnN0CisrKyBiL1Rvb2xz
L2J1aWxkc3RyZWFtL2VsZW1lbnRzL3Nkay9nc3QtbGliYXYuYnN0CkBAIC0xLDEzICsxLDggQEAK
IGtpbmQ6IG1lc29uCiBzb3VyY2VzOgogLSBraW5kOiB0YXIKLSAgdXJsOiBnc3RfZG93bmxvYWRz
OmdzdC1saWJhdi9nc3QtbGliYXYtMS4xNi4yLnRhci54egotICByZWY6IGM3MjRmNjEyNzAwYzE1
YTkzM2M3MzU2ZmJlYWJiMGJiOTU3MWZiNTUzOGY4YjFiNTRkNGQyZDk0MTg4ZGVlZjIKLS0ga2lu
ZDogcGF0Y2gKLSAgcGF0aDogcGF0Y2hlcy9saWJhdi0wMDAxLWdzdGF2dmlkZGVjLUxpbWl0LWRl
ZmF1bHQtbnVtYmVyLW9mLWRlY29kZXItdGhyZWFkcy5wYXRjaAotLSBraW5kOiBwYXRjaAotICBw
YXRoOiBwYXRjaGVzL2dzdC1saWJhdi1zdG9wLWNhY2hpbmctY29kZWNzLnBhdGNoCi0KKyAgdXJs
OiBnc3RfZG93bmxvYWRzOmdzdC1saWJhdi9nc3QtbGliYXYtMS4xOC4wLnRhci54egorICByZWY6
IDQyZjkzZjVjZTlhM2ZjMjIwNTFlNWY3ODNhNDU3NGI1NmViZjIxM2YzMzFmNzVkY2JjMzU1MjQ1
OWJkM2EwNmEKIGJ1aWxkLWRlcGVuZHM6CiAtIGZyZWVkZXNrdG9wLXNkay5ic3Q6cHVibGljLXN0
YWNrcy9idWlsZHN5c3RlbS1tZXNvbi5ic3QKIC0gZnJlZWRlc2t0b3Atc2RrLmJzdDpjb21wb25l
bnRzL25hc20uYnN0CkBAIC0xOCw4ICsxMyw5IEBAIGRlcGVuZHM6CiAtIGZyZWVkZXNrdG9wLXNk
ay5ic3Q6Ym9vdHN0cmFwLWltcG9ydC5ic3QKIAogdmFyaWFibGVzOgotICBtZXNvbi1sb2NhbDog
fAotICAgICctRGNfYXJncz0tRFRSSVBMRVQ9XCIle2djY190cmlwbGV0fVwiJworICBtZXNvbi1s
b2NhbDogPi0KKyAgICAtRGNfYXJncz0tRFRSSVBMRVQ9XCIle2djY190cmlwbGV0fVwiCisgICAg
LURkb2M9ZGlzYWJsZWQKIAogcHVibGljOgogICBic3Q6CmRpZmYgLS1naXQgYS9Ub29scy9idWls
ZHN0cmVhbS9lbGVtZW50cy9zZGsvZ3N0LXBsdWdpbnMtYmFkLmJzdCBiL1Rvb2xzL2J1aWxkc3Ry
ZWFtL2VsZW1lbnRzL3Nkay9nc3QtcGx1Z2lucy1iYWQuYnN0CmluZGV4IDdlM2U1NjlmN2IzMzlk
M2E2ZmY3MmM2MjYyMjA5NzRlNjAxMzc0ZDUuLjE4YWI0Y2ViODk5YjNkNjA5ZGRlNGMyZGE2MTU5
NzY3Yjc2MzA2MjkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL2J1aWxkc3RyZWFtL2VsZW1lbnRzL3Nkay9n
c3QtcGx1Z2lucy1iYWQuYnN0CisrKyBiL1Rvb2xzL2J1aWxkc3RyZWFtL2VsZW1lbnRzL3Nkay9n
c3QtcGx1Z2lucy1iYWQuYnN0CkBAIC0xLDExICsxLDggQEAKIGtpbmQ6IG1lc29uCiBzb3VyY2Vz
OgogLSBraW5kOiB0YXIKLSAgdXJsOiBnc3RfZG93bmxvYWRzOmdzdC1wbHVnaW5zLWJhZC9nc3Qt
cGx1Z2lucy1iYWQtMS4xNi4yLnRhci54egotICByZWY6IGYxY2I3YWEyMzg5NTY5YTUzNDM2NjFh
YWU0NzNmMGE5NDBhOTBiODcyMDAxODI0YmM0N2ZhODA3MmEwNDFlNzQKLS0ga2luZDogcGF0Y2gK
LSAgcGF0aDogcGF0Y2hlcy9nc3QtcGx1Z2lucy1iYWQtMDAwMS1oMjY0cGFyc2UtUG9zdC1hLVdB
Uk5JTkctd2hlbi1kYXRhLWlzLWJyb2tlbi5wYXRjaAotCisgIHVybDogZ3N0X2Rvd25sb2Fkczpn
c3QtcGx1Z2lucy1iYWQvZ3N0LXBsdWdpbnMtYmFkLTEuMTguMC50YXIueHoKKyAgcmVmOiBmMzgy
YWIxY2FkZGQ2NGFhYTdhY2I3YzQ3ODc0ODdmNjNmZDM5YmQwZmRlOWM3NTc2NTVjYmFhNDU3YzEx
ODVmCiBidWlsZC1kZXBlbmRzOgogLSBmcmVlZGVza3RvcC1zZGsuYnN0OnB1YmxpYy1zdGFja3Mv
YnVpbGRzeXN0ZW0tbWVzb24uYnN0CiBkZXBlbmRzOgpAQCAtNDAsNiArMzcsNyBAQCB2YXJpYWJs
ZXM6CiAgICAgLURpbnRyb3NwZWN0aW9uPWRpc2FibGVkCiAgICAgLURleGFtcGxlcz1kaXNhYmxl
ZAogICAgIC1EYXNzcmVuZGVyPWRpc2FibGVkCisgICAgLURhdnRwPWRpc2FibGVkCiAgICAgLURi
bHVlej1kaXNhYmxlZAogICAgIC1EYnMyYj1kaXNhYmxlZAogICAgIC1EY2hyb21hcHJpbnQ9ZGlz
YWJsZWQKQEAgLTUyLDYgKzUwLDcgQEAgdmFyaWFibGVzOgogICAgIC1EZGVja2xpbms9ZGlzYWJs
ZWQKICAgICAtRGRpcmVjdGZiPWRpc2FibGVkCiAgICAgLURkaXJlY3Rzb3VuZD1kaXNhYmxlZAor
ICAgIC1EZG9jPWRpc2FibGVkCiAgICAgLURkdHM9ZGlzYWJsZWQKICAgICAtRGR2Yj1kaXNhYmxl
ZAogICAgIC1EZmFhYz1kaXNhYmxlZApAQCAtNjYsNiArNjUsOCBAQCB2YXJpYWJsZXM6CiAgICAg
LURsaWJkZTI2NT1kaXNhYmxlZAogICAgIC1EbGlibW1zPWRpc2FibGVkCiAgICAgLURsdjI9ZGlz
YWJsZWQKKyAgICAtRG1hZ2ljbGVhcD1kaXNhYmxlZAorICAgIC1EbWljcm9kbnM9ZGlzYWJsZWQK
ICAgICAtRG1vZHBsdWc9ZGlzYWJsZWQKICAgICAtRG1wZWcyZW5jPWRpc2FibGVkCiAgICAgLURt
cGxleD1kaXNhYmxlZApAQCAtODMsNyArODQsNiBAQCB2YXJpYWJsZXM6CiAgICAgLURvcGVubXB0
PWRpc2FibGVkCiAgICAgLURvcGVubmkyPWRpc2FibGVkCiAgICAgLURvcGVuc2xlcz1kaXNhYmxl
ZAotICAgIC1Eb3BlbnNsZXM9ZGlzYWJsZWQKICAgICAtRHJlc2luZHZkPWRpc2FibGVkCiAgICAg
LURyc3ZnPWRpc2FibGVkCiAgICAgLURydG1wPWRpc2FibGVkCkBAIC05MiwxNSArOTIsMTggQEAg
dmFyaWFibGVzOgogICAgIC1Ec291bmR0b3VjaD1kaXNhYmxlZAogICAgIC1Ec3BhbmRzcD1kaXNh
YmxlZAogICAgIC1Ec3J0PWRpc2FibGVkCisgICAgLURzdnRoZXZjZW5jPWRpc2FibGVkCiAgICAg
LUR0ZWxldGV4dD1kaXNhYmxlZAogICAgIC1EdGlueWFsc2E9ZGlzYWJsZWQKICAgICAtRHR0bWw9
ZGlzYWJsZWQKKyAgICAtRHZhPWRpc2FibGVkCiAgICAgLUR2YWFjZW5jPWRpc2FibGVkCiAgICAg
LUR2ZHBhdT1kaXNhYmxlZAogICAgIC1Edm9hYWNlbmM9ZGlzYWJsZWQKICAgICAtRHZvYW1yd2Jl
bmM9ZGlzYWJsZWQKICAgICAtRHZ1bGthbj1kaXNhYmxlZAogICAgIC1Ed2FzYXBpPWRpc2FibGVk
CisgICAgLUR3YXNhcGkyPWRpc2FibGVkCiAgICAgLUR3ZWJwPWRpc2FibGVkCiAgICAgLUR3ZWJy
dGNkc3A9ZGlzYWJsZWQKICAgICAtRHdpbGRtaWRpPWRpc2FibGVkCkBAIC0xMDksNyArMTEyLDgg
QEAgdmFyaWFibGVzOgogICAgIC1Ed3BlPWRpc2FibGVkCiAgICAgLUR4MjY1PWRpc2FibGVkCiAg
ICAgLUR6YmFyPWRpc2FibGVkCi0gICAgCisgICAgLUR6eGluZz1kaXNhYmxlZAorCiBwdWJsaWM6
CiAgIGJzdDoKICAgICBzcGxpdC1ydWxlczoKZGlmZiAtLWdpdCBhL1Rvb2xzL2J1aWxkc3RyZWFt
L2VsZW1lbnRzL3Nkay9nc3QtcGx1Z2lucy1iYXNlLmJzdCBiL1Rvb2xzL2J1aWxkc3RyZWFtL2Vs
ZW1lbnRzL3Nkay9nc3QtcGx1Z2lucy1iYXNlLmJzdAppbmRleCA4MThkOWU4MzM5OTQwMWJhMGE0
Y2Q3YTA3M2VkNDRjMDRhNzkzYzM4Li4xYWQ2YWZhZDQ0YTlhMWViZDgzYWFmMTczM2FlNWFjOTEw
OWY2YWZhIDEwMDY0NAotLS0gYS9Ub29scy9idWlsZHN0cmVhbS9lbGVtZW50cy9zZGsvZ3N0LXBs
dWdpbnMtYmFzZS5ic3QKKysrIGIvVG9vbHMvYnVpbGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdC1w
bHVnaW5zLWJhc2UuYnN0CkBAIC0xLDE5ICsxLDggQEAKIGtpbmQ6IG1lc29uCiBzb3VyY2VzOgog
LSBraW5kOiB0YXIKLSAgdXJsOiBnc3RfZG93bmxvYWRzOmdzdC1wbHVnaW5zLWJhc2UvZ3N0LXBs
dWdpbnMtYmFzZS0xLjE2LjIudGFyLnh6Ci0gIHJlZjogYjEzZTczZTJmZTc0YTQxNjY1NTJmOTU3
N2MzZGNiMjRiZWQwNzcwMjFiOWM3ZmE2MDBkOTEwZWM2OTg3ODE2YQotLSBraW5kOiBwYXRjaAot
ICBwYXRoOiBwYXRjaGVzL2dzdC1wbHVnaW5zLWJhc2UtMDAwMS1wbGF5YmluLUhhbmRsZS1lcnJv
ci1tZXNzYWdlLXdpdGgtcmVkaXJlY3Rpb24taW5kaWNhLnBhdGNoCi0tIGtpbmQ6IHBhdGNoCi0g
IHBhdGg6IHBhdGNoZXMvZ3N0LXBsdWdpbnMtYmFzZS0wMDAxLWdsdXBsb2FkLUZpeC1mYWxsYmFj
ay1mcm9tLWRpcmVjdC1kbWFidWYtdG8tZG1hYnVmLXUucGF0Y2gKLS0ga2luZDogcGF0Y2gKLSAg
cGF0aDogcGF0Y2hlcy9nc3QtcGx1Z2lucy1iYXNlLTAwMDItZ2x1cGxvYWQtZml4LXNlZ2ZhdWx0
LnBhdGNoCi0tIGtpbmQ6IHBhdGNoCi0gIHBhdGg6IHBhdGNoZXMvZ3N0LXBsdWdpbnMtYmFzZS0w
MDAzLWdsYmFzZWZpbHRlci1hZGQtc3VwcG9ydC1mb3ItY2hhbmdpbmctdGhlLWRpc3BsYXkucGF0
Y2gKLS0ga2luZDogcGF0Y2gKLSAgcGF0aDogcGF0Y2hlcy9nc3QtcGx1Z2lucy1iYXNlLTAwMDEt
b2dnc3RyZWFtLVdvcmthcm91bmQtZm9yLWJyb2tlbi1QQVItaW4tVlA4LUJPUy5wYXRjaAotCisg
IHVybDogZ3N0X2Rvd25sb2Fkczpnc3QtcGx1Z2lucy1iYXNlL2dzdC1wbHVnaW5zLWJhc2UtMS4x
OC4wLnRhci54egorICByZWY6IDc2MmFiZGQxYTk1MDgwOWExY2VhNjJmZmY3Zjg2YjVmN2Q2YmQ1
ZjY4NDFlM2U1ODVjNzAwYjgyM2NkYjc4OTcKIGJ1aWxkLWRlcGVuZHM6CiAtIGZyZWVkZXNrdG9w
LXNkay5ic3Q6cHVibGljLXN0YWNrcy9idWlsZHN5c3RlbS1tZXNvbi5ic3QKIGRlcGVuZHM6CkBA
IC00NCw2ICszMyw3IEBAIHZhcmlhYmxlczoKICAgICAtRHRyZW1vcj1kaXNhYmxlZAogICAgIC1E
ZXhhbXBsZXM9ZGlzYWJsZWQKICAgICAtRGd0a19kb2M9ZGlzYWJsZWQKKyAgICAtRGRvYz1kaXNh
YmxlZAogICAgIC1EdGVzdHM9ZGlzYWJsZWQKIAogcHVibGljOgpkaWZmIC0tZ2l0IGEvVG9vbHMv
YnVpbGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdC1wbHVnaW5zLWdvb2QuYnN0IGIvVG9vbHMvYnVp
bGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdC1wbHVnaW5zLWdvb2QuYnN0CmluZGV4IDEyNGFiZTQx
NzNlMGI0NjczMTUxNjE1YzIxZTNmYmUwZjIxMTg0YWUuLjk5ZDJmZTRiYTkyNDAyNjBjZmQ0MGRi
M2ZmZGMwNTA0YzZhMDc2YzQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL2J1aWxkc3RyZWFtL2VsZW1lbnRz
L3Nkay9nc3QtcGx1Z2lucy1nb29kLmJzdAorKysgYi9Ub29scy9idWlsZHN0cmVhbS9lbGVtZW50
cy9zZGsvZ3N0LXBsdWdpbnMtZ29vZC5ic3QKQEAgLTEsMTEgKzEsOCBAQAoga2luZDogbWVzb24K
IHNvdXJjZXM6CiAtIGtpbmQ6IHRhcgotICB1cmw6IGdzdF9kb3dubG9hZHM6Z3N0LXBsdWdpbnMt
Z29vZC9nc3QtcGx1Z2lucy1nb29kLTEuMTYuMi50YXIueHoKLSAgcmVmOiA0MGJiM2JhZmRhMjVj
MGI3MzljOGZjMzZlNDgzODBmY2NmNjFjNGQzZjgzNzQ3ZTk3YWMzZjliMDE3MWIxMzE5Ci0tIGtp
bmQ6IHBhdGNoCi0gIHBhdGg6IHBhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC1xdGRlbXV4LVNwZWNp
ZnktUkVESVJFQ1QtaW5mb3JtYXRpb24taW4tZXJyb3ItbWVzc2FnLnBhdGNoCi0KKyAgdXJsOiBn
c3RfZG93bmxvYWRzOmdzdC1wbHVnaW5zLWdvb2QvZ3N0LXBsdWdpbnMtZ29vZC0xLjE4LjAudGFy
Lnh6CisgIHJlZjogNjMyOWJjMzc3YTNhZmVhNWNmMWFiMzI5YTkxY2M0YTkwNmYwNzU3ODE3ODBk
MWVkYzU5ZThiZWE4YzFhOGJhYwogYnVpbGQtZGVwZW5kczoKIC0gZnJlZWRlc2t0b3Atc2RrLmJz
dDpwdWJsaWMtc3RhY2tzL2J1aWxkc3lzdGVtLW1lc29uLmJzdAogZGVwZW5kczoKQEAgLTI2LDYg
KzIzLDcgQEAgZGVwZW5kczoKIC0gZnJlZWRlc2t0b3Atc2RrLmJzdDpjb21wb25lbnRzL2xpYnB1
bHNlLmJzdAogLSBmcmVlZGVza3RvcC1zZGsuYnN0OmNvbXBvbmVudHMvbGlidnB4LmJzdAogLSBm
cmVlZGVza3RvcC1zZGsuYnN0OmNvbXBvbmVudHMvbXBnMTIzLmJzdAorLSBmcmVlZGVza3RvcC1z
ZGsuYnN0OmNvbXBvbmVudHMvbmFzbS5ic3QKIC0gZnJlZWRlc2t0b3Atc2RrLmJzdDpjb21wb25l
bnRzL29yYy5ic3QKIC0gZnJlZWRlc2t0b3Atc2RrLmJzdDpjb21wb25lbnRzL3NwZWV4LmJzdAog
LSBmcmVlZGVza3RvcC1zZGsuYnN0OmNvbXBvbmVudHMvd2F2cGFjay5ic3QKQEAgLTM0LDExICsz
MiwxMiBAQCB2YXJpYWJsZXM6CiAgIG1lc29uLWxvY2FsOiA+LQogICAgIC1EcGFja2FnZS1vcmln
aW49IndlYmtpdC1zZGsiCiAgICAgLURhYWxpYj1kaXNhYmxlZAorICAgIC1EZG9jPWRpc2FibGVk
CiAgICAgLURqYWNrPWRpc2FibGVkCiAgICAgLURsaWJjYWNhPWRpc2FibGVkCiAgICAgLURkdj1k
aXNhYmxlZAogICAgIC1EZHYxMzk0PWRpc2FibGVkCi0gICAgLURxdDU9ZGlzYWJsZWQKKyAgICAt
RHJwaWNhbXNyYz1kaXNhYmxlZAogICAgIC1Ec2hvdXQyPWRpc2FibGVkCiAgICAgLUR0YWdsaWI9
ZGlzYWJsZWQKICAgICAtRHR3b2xhbWU9ZGlzYWJsZWQKZGlmZiAtLWdpdCBhL1Rvb2xzL2J1aWxk
c3RyZWFtL2VsZW1lbnRzL3Nkay9nc3QtcGx1Z2lucy11Z2x5LmJzdCBiL1Rvb2xzL2J1aWxkc3Ry
ZWFtL2VsZW1lbnRzL3Nkay9nc3QtcGx1Z2lucy11Z2x5LmJzdAppbmRleCA5NWM5MDYzYjk0NTll
NDc0MTJjOTFjMDRiMDA2NmU1NmY1NWJkMjQ0Li40MWM5NmI5ZTNlMjkxNWI2YTI2MWQwYTU5MWVi
NDQzNGU0NmEwZTAyIDEwMDY0NAotLS0gYS9Ub29scy9idWlsZHN0cmVhbS9lbGVtZW50cy9zZGsv
Z3N0LXBsdWdpbnMtdWdseS5ic3QKKysrIGIvVG9vbHMvYnVpbGRzdHJlYW0vZWxlbWVudHMvc2Rr
L2dzdC1wbHVnaW5zLXVnbHkuYnN0CkBAIC0xLDkgKzEsOCBAQAoga2luZDogbWVzb24KIHNvdXJj
ZXM6CiAtIGtpbmQ6IHRhcgotICB1cmw6IGdzdF9kb3dubG9hZHM6Z3N0LXBsdWdpbnMtdWdseS9n
c3QtcGx1Z2lucy11Z2x5LTEuMTYuMi50YXIueHoKLSAgcmVmOiA1NTAwNDE1Yjg2NWU4YjYyNzc1
ZDQ3NDJjYmI5ZjM3MTQ2YTUwY2FlY2ZjMGU3YTZmYzAxNjBkM2M1NjBmYmNhCi0KKyAgdXJsOiBn
c3RfZG93bmxvYWRzOmdzdC1wbHVnaW5zLXVnbHkvZ3N0LXBsdWdpbnMtdWdseS0xLjE4LjAudGFy
Lnh6CisgIHJlZjogNjg2NjQ0ZTQ1ZTA4MjU4YWUyNDBjNDUxOTM3NjY2OGFkOGQzNGVhNmQwZjZh
YjU1NjQ3M2MzMTdiZmI3ZTA4MgogYnVpbGQtZGVwZW5kczoKIC0gZnJlZWRlc2t0b3Atc2RrLmJz
dDpwdWJsaWMtc3RhY2tzL2J1aWxkc3lzdGVtLW1lc29uLmJzdAogZGVwZW5kczoKZGlmZiAtLWdp
dCBhL1Rvb2xzL2J1aWxkc3RyZWFtL2VsZW1lbnRzL3Nkay9nc3RyZWFtZXIuYnN0IGIvVG9vbHMv
YnVpbGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdHJlYW1lci5ic3QKaW5kZXggNWIyOTAxMDU3NWIx
MDI5ODg1MzkwNjE1NTQ5ODJkYWNiNDc2NjIwMi4uZTQ4OWZmMGNhYjljYjFkMzA4ZTk5MGE2NTFi
NjFkZTFkMjRlNGJiYSAxMDA2NDQKLS0tIGEvVG9vbHMvYnVpbGRzdHJlYW0vZWxlbWVudHMvc2Rr
L2dzdHJlYW1lci5ic3QKKysrIGIvVG9vbHMvYnVpbGRzdHJlYW0vZWxlbWVudHMvc2RrL2dzdHJl
YW1lci5ic3QKQEAgLTEsOSArMSw4IEBACiBraW5kOiBtZXNvbgogc291cmNlczoKIC0ga2luZDog
dGFyCi0gIHVybDogZ3N0X2Rvd25sb2Fkczpnc3RyZWFtZXIvZ3N0cmVhbWVyLTEuMTYuMi50YXIu
eHoKLSAgcmVmOiBlM2YwNDQyNDY3ODNmZDY4NTQzOTY0NzM3M2ZhMTNiYTE0ZjdhYjBiMzQ2ZWFk
ZDA2NDM3MDkyZjg0MTllOTRlCi0KKyAgdXJsOiBnc3RfZG93bmxvYWRzOmdzdHJlYW1lci9nc3Ry
ZWFtZXItMS4xOC4wLnRhci54egorICByZWY6IDBmZjA5MjQ1YjA2YzBhZWI1ZDlhMTU2ZWRjYWIw
ODhhN2U4MjEzYTBiZjljODRhMWZmMDMxOGY5YzAwYzc4MDUKIGJ1aWxkLWRlcGVuZHM6CiAtIGZy
ZWVkZXNrdG9wLXNkay5ic3Q6Y29tcG9uZW50cy9nb2JqZWN0LWludHJvc3BlY3Rpb24uYnN0CiAt
IGZyZWVkZXNrdG9wLXNkay5ic3Q6cHVibGljLXN0YWNrcy9idWlsZHN5c3RlbS1tZXNvbi5ic3QK
QEAgLTI2LDYgKzI1LDcgQEAgdmFyaWFibGVzOgogICAgIC1EZGJnaGVscD1kaXNhYmxlZAogICAg
IC1EYmFzaC1jb21wbGV0aW9uPWRpc2FibGVkCiAgICAgLURndGtfZG9jPWRpc2FibGVkCisgICAg
LURkb2M9ZGlzYWJsZWQKICAgICAtRHBhY2thZ2Utb3JpZ2luPSJ3ZWJraXQtc2RrIgogCiBwdWJs
aWM6CmRpZmYgLS1naXQgYS9Ub29scy9idWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1saWJhdi1zdG9w
LWNhY2hpbmctY29kZWNzLnBhdGNoIGIvVG9vbHMvYnVpbGRzdHJlYW0vcGF0Y2hlcy9nc3QtbGli
YXYtc3RvcC1jYWNoaW5nLWNvZGVjcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggODc4YzYyOWU0MDhkNzc5YTlkMjc5N2Q2YWQyMmY1ZGFhNjQ1NWQwNC4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9idWlsZHN0cmVhbS9wYXRj
aGVzL2dzdC1saWJhdi1zdG9wLWNhY2hpbmctY29kZWNzLnBhdGNoCisrKyAvZGV2L251bGwKQEAg
LTEsMzAgKzAsMCBAQAotRnJvbSAyYzM3MWYxN2FmMTY5NWJkNDJmNTcyZDVjY2RiODM3MTUyYjhi
NjdhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogVGhvbWFzIENvbGRyaWNrIDxvdGhr
bzk3QGdtYWlsLmNvbT4KLURhdGU6IFRodSwgOCBOb3YgMjAxOCAxNzo0Njo1MyArMDAwMAotU3Vi
amVjdDogW1BBVENIXSBnc3QtbGliYXYtc3RvcC1jYWNoaW5nLWNvZGVjcwotCi0tLS0KLSBleHQv
bGliYXYvZ3N0YXYuYyB8IDE2ICsrKysrKysrKysrKysrKysKLSAxIGZpbGUgY2hhbmdlZCwgMTYg
aW5zZXJ0aW9ucygrKQotCi1kaWZmIC0tZ2l0IGEvZXh0L2xpYmF2L2dzdGF2LmMgYi9leHQvbGli
YXYvZ3N0YXYuYwotaW5kZXggMmE4ODIzMC4uYmZkMTlhMSAxMDA2NDQKLS0tLSBhL2V4dC9saWJh
di9nc3Rhdi5jCi0rKysgYi9leHQvbGliYXYvZ3N0YXYuYwotQEAgLTE1NSw2ICsxNTUsMTMgQEAg
cGx1Z2luX2luaXQgKEdzdFBsdWdpbiAqIHBsdWdpbikKLSAgIC8qIGJ1aWxkIGdsb2JhbCBmZm1w
ZWcgcGFyYW0vcHJvcGVydHkgaW5mbyAqLwotICAgZ3N0X2ZmbXBlZ19jZmdfaW5pdCAoKTsKLSAK
LSsgIGdzdF9wbHVnaW5fYWRkX2RlcGVuZGVuY3lfc2ltcGxlIChwbHVnaW4sIE5VTEwsCi0rICAg
ICAgIi9hcHAvbGliLyIgVFJJUExFVCAiL2ZmbXBlZzovYXBwL2xpYi9mZm1wZWc6L3Vzci9saWIv
IiBUUklQTEVUICI6L3Vzci9sb2NhbC9saWI6L3Vzci9saWIvIiBUUklQTEVUICIvZmZtcGVnIiwK
LSsgICAgICAibGliYXZjb2RlYy5zby41OCwiCi0rICAgICAgImxpYmF2Zm9ybWF0LnNvLjU4LCIK
LSsgICAgICAibGlic3dzY2FsZS5zby41IiwKLSsgICAgICBHU1RfUExVR0lOX0RFUEVOREVOQ1lf
RkxBR19OT05FKTsKLSsKLSAgIGdzdF9mZm1wZWdhdWRlbmNfcmVnaXN0ZXIgKHBsdWdpbik7Ci0g
ICBnc3RfZmZtcGVndmlkZW5jX3JlZ2lzdGVyIChwbHVnaW4pOwotICAgZ3N0X2ZmbXBlZ2F1ZGRl
Y19yZWdpc3RlciAocGx1Z2luKTsKLS0tIAotMi4xOS4xCi0KZGlmZiAtLWdpdCBhL1Rvb2xzL2J1
aWxkc3RyZWFtL3BhdGNoZXMvZ3N0LXBsdWdpbnMtYmFkLTAwMDEtaDI2NHBhcnNlLVBvc3QtYS1X
QVJOSU5HLXdoZW4tZGF0YS1pcy1icm9rZW4ucGF0Y2ggYi9Ub29scy9idWlsZHN0cmVhbS9wYXRj
aGVzL2dzdC1wbHVnaW5zLWJhZC0wMDAxLWgyNjRwYXJzZS1Qb3N0LWEtV0FSTklORy13aGVuLWRh
dGEtaXMtYnJva2VuLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYjNiM2Vl
Nzg5NDY0ZmZlY2VjN2FhMzYyZWMyOGFkMmIyN2JjZTExLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL2J1aWxkc3RyZWFtL3BhdGNoZXMvZ3N0LXBs
dWdpbnMtYmFkLTAwMDEtaDI2NHBhcnNlLVBvc3QtYS1XQVJOSU5HLXdoZW4tZGF0YS1pcy1icm9r
ZW4ucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi1Gcm9tIDQ3NTYyOGMyMGU1
NDhhMThjNTVlNmJkOGU5YzNlM2E3M2NmNzE5MmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1G
cm9tOiBUaGliYXVsdCBTYXVuaWVyIDx0c2F1bmllckBpZ2FsaWEuY29tPgotRGF0ZTogRnJpLCAz
MSBNYXkgMjAxOSAxMDoxMjo1NCAtMDQwMAotU3ViamVjdDogW1BBVENIXSBoMjY0cGFyc2U6IFBv
c3QgYSBXQVJOSU5HIHdoZW4gZGF0YSBpcyBicm9rZW4KLQotLS0tCi0gZ3N0L3ZpZGVvcGFyc2Vy
cy9nc3RoMjY0cGFyc2UuYyB8IDIgKysKLSAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp
Ci0KLWRpZmYgLS1naXQgYS9nc3QvdmlkZW9wYXJzZXJzL2dzdGgyNjRwYXJzZS5jIGIvZ3N0L3Zp
ZGVvcGFyc2Vycy9nc3RoMjY0cGFyc2UuYwotaW5kZXggNDFhMzFlYWZhLi5mYTY0NjcxZGUgMTAw
NjQ0Ci0tLS0gYS9nc3QvdmlkZW9wYXJzZXJzL2dzdGgyNjRwYXJzZS5jCi0rKysgYi9nc3Qvdmlk
ZW9wYXJzZXJzL2dzdGgyNjRwYXJzZS5jCi1AQCAtMTMxMyw2ICsxMzEzLDggQEAgZ3N0X2gyNjRf
cGFyc2VfaGFuZGxlX2ZyYW1lIChHc3RCYXNlUGFyc2UgKiBwYXJzZSwKLSAgICAgICAgIC8qIGJy
b2tlbiBuYWwgYXQgc3RhcnQgLT4gYXJyYW5nZSB0byBza2lwIGl0LAotICAgICAgICAgICogb3Ro
ZXJ3aXNlIGhhdmUgaXQgdGVybWluYXRlIGN1cnJlbnQgYXUKLSAgICAgICAgICAqIChhbmQgc28g
aXQgd2lsbCBiZSBza2lwcGVkIG9uIG5leHQgZnJhbWUgcm91bmQpICovCi0rICAgICAgICBHU1Rf
RUxFTUVOVF9XQVJOSU5HIChoMjY0cGFyc2UsIFNUUkVBTSwgREVDT0RFLAotKyAgICAgICAgICAg
IChOVUxMKSwgKCJCcm9rZW4gYml0IHN0cmVhbSIpKTsKLSAgICAgICAgIGlmIChjdXJyZW50X29m
ZiA9PSAwKSB7Ci0gICAgICAgICAgIEdTVF9ERUJVR19PQkpFQ1QgKGgyNjRwYXJzZSwgInNraXBw
aW5nIGJyb2tlbiBuYWwiKTsKLSAgICAgICAgICAgKnNraXBzaXplID0gbmFsdS5vZmZzZXQ7Ci0t
LSAKLTIuMjEuMAotCmRpZmYgLS1naXQgYS9Ub29scy9idWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1w
bHVnaW5zLWJhc2UtMDAwMS1nbHVwbG9hZC1GaXgtZmFsbGJhY2stZnJvbS1kaXJlY3QtZG1hYnVm
LXRvLWRtYWJ1Zi11LnBhdGNoIGIvVG9vbHMvYnVpbGRzdHJlYW0vcGF0Y2hlcy9nc3QtcGx1Z2lu
cy1iYXNlLTAwMDEtZ2x1cGxvYWQtRml4LWZhbGxiYWNrLWZyb20tZGlyZWN0LWRtYWJ1Zi10by1k
bWFidWYtdS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2Q4ZDAwMmU0NzE1
MDE1NDA1ZGMwYWFiNDYxZjBkYTI0MjM2OTgyZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9idWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1wbHVnaW5z
LWJhc2UtMDAwMS1nbHVwbG9hZC1GaXgtZmFsbGJhY2stZnJvbS1kaXJlY3QtZG1hYnVmLXRvLWRt
YWJ1Zi11LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTc1ICswLDAgQEAKLUZyb20gNmNlYWYx
MTE4NzBiMzFiZmY5MjJlYTM1ZmU5NDNkODUzZTQ0YWZhMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIw
MDEKLUZyb206IENocmlzIExvcmQgPGNsb3JkQGlnYWxpYS5jb20+Ci1EYXRlOiBNb24sIDkgTWFy
IDIwMjAgMTA6MjE6NTMgKzAwMDAKLVN1YmplY3Q6IFtQQVRDSCAxLzJdIGdsdXBsb2FkOiBGaXgg
ZmFsbGJhY2sgZnJvbSBkaXJlY3QgZG1hYnVmIHRvIGRtYWJ1ZgotIHVwbG9hZCBtZXRob2QKLQot
SW4gdGhlIHNpdHVhdGlvbiB0aGF0IHRoZSBkaXJlY3QgZG1hYnVmIHBhdGggaXMgY2hvc2VuLCBi
dXQgd2l0aCBhbgotdW5zdXBwb3J0ZWQgdGV4dHVyZSBmb3JtYXQsIHRoaXMgY2F1c2VzIGFjY2Vw
dCB0byBmYWlsIHJhdGhlciB0aGFuCi1jb250aW51ZSBhbmQgZmFpbCBhdCB0aGUgdXBsb2FkIHN0
YWdlLiBJdCBpcyBhbHNvIHBvc3NpYmx5IG5lY2Vzc2FyeSB0bwotcmVjb25maWd1cmUgYWZ0ZXIg
ZmFsbGluZyBiYWNrIGZyb20gZGlyZWN0IHRvIG5vbi1kaXJlY3QgZG1hYnVmIHVwbG9hZAotcGF0
aHMuCi0tLS0KLSBnc3QtbGlicy9nc3QvZ2wvZWdsL2dzdGVnbGltYWdlLmMgICAgICAgICB8IDI5
ICsrKysrKysrKysrKysrLS0tLS0KLSBnc3QtbGlicy9nc3QvZ2wvZWdsL2dzdGVnbGltYWdlX3By
aXZhdGUuaCB8IDM1ICsrKysrKysrKysrKysrKysrKysrKysrCi0gZ3N0LWxpYnMvZ3N0L2dsL2dz
dGdsdXBsb2FkLmMgICAgICAgICAgICAgfCAxNyArKysrKysrKystLQotIDMgZmlsZXMgY2hhbmdl
ZCwgNzIgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKLSBjcmVhdGUgbW9kZSAxMDA2NDQg
Z3N0LWxpYnMvZ3N0L2dsL2VnbC9nc3RlZ2xpbWFnZV9wcml2YXRlLmgKLQotZGlmZiAtLWdpdCBh
L2dzdC1saWJzL2dzdC9nbC9lZ2wvZ3N0ZWdsaW1hZ2UuYyBiL2dzdC1saWJzL2dzdC9nbC9lZ2wv
Z3N0ZWdsaW1hZ2UuYwotaW5kZXggODVmYmVmYTZlLi4xM2UyMDRkY2QgMTAwNjQ0Ci0tLS0gYS9n
c3QtbGlicy9nc3QvZ2wvZWdsL2dzdGVnbGltYWdlLmMKLSsrKyBiL2dzdC1saWJzL2dzdC9nbC9l
Z2wvZ3N0ZWdsaW1hZ2UuYwotQEAgLTM5LDYgKzM5LDcgQEAKLSAjZW5kaWYKLSAKLSAjaW5jbHVk
ZSAiZ3N0ZWdsaW1hZ2UuaCIKLSsjaW5jbHVkZSAiZ3N0ZWdsaW1hZ2VfcHJpdmF0ZS5oIgotIAot
ICNpbmNsdWRlIDxzdHJpbmcuaD4KLSAKLUBAIC02NzMsOCArNjc0LDIwIEBAIF9kcm1fZGlyZWN0
X2ZvdXJjY19mcm9tX2luZm8gKEdzdFZpZGVvSW5mbyAqIGluZm8pCi0gICB9Ci0gfQotIAotLXN0
YXRpYyBnYm9vbGVhbgotLV9nc3RfZWdsX2ltYWdlX2NoZWNrX2RtYWJ1Zl9kaXJlY3QgKEdzdEdM
Q29udGV4dCAqIGNvbnRleHQsIGludCBmb3VyY2MpCi0rLyoKLSsgKiBnc3RfZWdsX2ltYWdlX2No
ZWNrX2RtYWJ1Zl9kaXJlY3Q6Ci0rICogQGNvbnRleHQ6IGEgI0dzdEdMQ29udGV4dCAobXVzdCBi
ZSBhbiBFR0wgY29udGV4dCkKLSsgKiBAaW5faW5mbzogYSAjR3N0VmlkZW9JbmZvCi0rICogQHRh
cmdldDogYSAjR3N0R0xUZXh0dXJlVGFyZ2V0Ci0rICoKLSsgKiBDaGVja3Mgd2hldGhlciB0aGUg
dmlkZW8gZm9ybWF0IHNwZWNpZmllZCBieSB0aGUgZ2l2ZW4gI0dzdFZpZGVvSW5mbyBpcyBhCi0r
ICogc3VwcG9ydGVkIHRleHR1cmUgZm9ybWF0IGZvciB0aGUgZ2l2ZW4gdGFyZ2V0LgotKyAqCi0r
ICogUmV0dXJuczogJVRSVUUgaWYgdGhlIGZvcm1hdCBpcyBzdXBwb3J0ZWQuCi0rICovCi0rZ2Jv
b2xlYW4KLStnc3RfZWdsX2ltYWdlX2NoZWNrX2RtYWJ1Zl9kaXJlY3QgKEdzdEdMQ29udGV4dCAq
IGNvbnRleHQsCi0rICAgIEdzdFZpZGVvSW5mbyAqIGluX2luZm8pCi0gewotICAgRUdMRGlzcGxh
eSBlZ2xfZGlzcGxheSA9IEVHTF9ERUZBVUxUX0RJU1BMQVk7Ci0gICBHc3RHTERpc3BsYXlFR0wg
KmRpc3BsYXlfZWdsOwotQEAgLTY4NCw2ICs2OTcsNyBAQCBfZ3N0X2VnbF9pbWFnZV9jaGVja19k
bWFidWZfZGlyZWN0IChHc3RHTENvbnRleHQgKiBjb250ZXh0LCBpbnQgZm91cmNjKQotICAgRUdM
Qm9vbGVhbiAqZXh0ZXJuYWxfb25seTsKLSAgIGludCBudW1fbW9kaWZpZXJzOwotICAgZ2Jvb2xl
YW4gcmV0OwotKyAgaW50IGZvdXJjYzsKLSAgIGludCBpOwotIAotICAgRUdMQm9vbGVhbiAoKmdz
dF9lZ2xRdWVyeURtYUJ1ZkZvcm1hdHNFWFQpIChFR0xEaXNwbGF5IGRweSwKLUBAIC02OTIsNiAr
NzA2LDEwIEBAIF9nc3RfZWdsX2ltYWdlX2NoZWNrX2RtYWJ1Zl9kaXJlY3QgKEdzdEdMQ29udGV4
dCAqIGNvbnRleHQsIGludCBmb3VyY2MpCi0gICAgICAgaW50IGZvcm1hdCwgaW50IG1heF9tb2Rp
ZmllcnMsIEVHTHVpbnQ2NEtIUiAqIG1vZGlmaWVycywKLSAgICAgICBFR0xCb29sZWFuICogZXh0
ZXJuYWxfb25seSwgaW50ICpudW1fbW9kaWZpZXJzKTsKLSAKLSsgIGZvdXJjYyA9IF9kcm1fZGly
ZWN0X2ZvdXJjY19mcm9tX2luZm8gKGluX2luZm8pOwotKyAgaWYgKGZvdXJjYyA9PSAtMSkKLSsg
ICAgcmV0dXJuIEZBTFNFOwotKwotICAgZ3N0X2VnbFF1ZXJ5RG1hQnVmRm9ybWF0c0VYVCA9Ci0g
ICAgICAgZ3N0X2dsX2NvbnRleHRfZ2V0X3Byb2NfYWRkcmVzcyAoY29udGV4dCwgImVnbFF1ZXJ5
RG1hQnVmRm9ybWF0c0VYVCIpOwotICAgZ3N0X2VnbFF1ZXJ5RG1hQnVmTW9kaWZpZXJzRVhUID0K
LUBAIC04MTIsMTMgKzgzMCwxMCBAQCBnc3RfZWdsX2ltYWdlX2Zyb21fZG1hYnVmX2RpcmVjdCAo
R3N0R0xDb250ZXh0ICogY29udGV4dCwKLSAgIGd1aW50cHRyIGF0dHJpYnNbNDFdOyAgICAgICAg
IC8qIDYgKyAxMCAqIDMgKyA0ICsgMSAqLwotICAgZ2ludCBhdHRpID0gMDsKLSAKLS0gIGZvdXJj
YyA9IF9kcm1fZGlyZWN0X2ZvdXJjY19mcm9tX2luZm8gKGluX2luZm8pOwotLSAgaWYgKGZvdXJj
YyA9PSAtMSkKLS0gICAgcmV0dXJuIE5VTEw7Ci0tCi0tICBpZiAoIV9nc3RfZWdsX2ltYWdlX2No
ZWNrX2RtYWJ1Zl9kaXJlY3QgKGNvbnRleHQsIGZvdXJjYykpCi0rICBpZiAoIWdzdF9lZ2xfaW1h
Z2VfY2hlY2tfZG1hYnVmX2RpcmVjdCAoY29udGV4dCwgaW5faW5mbykpCi0gICAgIHJldHVybiBO
VUxMOwotIAotKyAgZm91cmNjID0gX2RybV9kaXJlY3RfZm91cmNjX2Zyb21faW5mbyAoaW5faW5m
byk7Ci0gICB3aXRoX21vZGlmaWVycyA9IGdzdF9nbF9jb250ZXh0X2NoZWNrX2ZlYXR1cmUgKGNv
bnRleHQsCi0gICAgICAgIkVHTF9FWFRfaW1hZ2VfZG1hX2J1Zl9pbXBvcnRfd2l0aF9tb2RpZmll
cnMiKTsKLSAKLWRpZmYgLS1naXQgYS9nc3QtbGlicy9nc3QvZ2wvZWdsL2dzdGVnbGltYWdlX3By
aXZhdGUuaCBiL2dzdC1saWJzL2dzdC9nbC9lZ2wvZ3N0ZWdsaW1hZ2VfcHJpdmF0ZS5oCi1uZXcg
ZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwLi44MzI2YmRkMDUKLS0tLSAvZGV2L251
bGwKLSsrKyBiL2dzdC1saWJzL2dzdC9nbC9lZ2wvZ3N0ZWdsaW1hZ2VfcHJpdmF0ZS5oCi1AQCAt
MCwwICsxLDM1IEBACi0rLyoKLSsgKiBHU3RyZWFtZXIKLSsgKiBDb3B5cmlnaHQgKEMpIDIwMjAg
SWdhbGlhIFMuTC4KLSsgKgotKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3Ug
Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKLSsgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1z
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwotKyAqIExpY2Vuc2UgYXMgcHVibGlz
aGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotKyAqIHZlcnNpb24g
MiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K
LSsgKgotKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0
IHdpbGwgYmUgdXNlZnVsLAotKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBl
dmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCi0rICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKLSsgKiBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLSsgKgotKyAqIFlvdSBzaG91
bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
Ci0rICogTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0
aGUKLSsgKiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBG
aWZ0aCBGbG9vciwKLSsgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KLSsgKi8KLSsKLSsj
aWZuZGVmIF9HU1RfRUdMX0lNQUdFX1BSSVZBVEVfSF8KLSsjZGVmaW5lIF9HU1RfRUdMX0lNQUdF
X1BSSVZBVEVfSF8KLSsKLSsjaW5jbHVkZSA8Z3N0L2dsL2dzdGdsX2Z3ZC5oPgotKyNpbmNsdWRl
IDxnc3QvZ2wvZ3N0Z2xmb3JtYXQuaD4KLSsKLStHX0JFR0lOX0RFQ0xTCi0rCi0rR19HTlVDX0lO
VEVSTkFMCi0rZ2Jvb2xlYW4gICAgICAgICAgICAgICAgZ3N0X2VnbF9pbWFnZV9jaGVja19kbWFi
dWZfZGlyZWN0ICAgICAgIChHc3RHTENvbnRleHQgKiBjb250ZXh0LAotKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3N0Vmlk
ZW9JbmZvICogaW5faW5mbyk7Ci0rCi0rR19FTkRfREVDTFMKLSsKLSsjZW5kaWYgLyogX0dTVF9F
R0xfSU1BR0VfUFJJVkFURV9IXyAqLwotZGlmZiAtLWdpdCBhL2dzdC1saWJzL2dzdC9nbC9nc3Rn
bHVwbG9hZC5jIGIvZ3N0LWxpYnMvZ3N0L2dsL2dzdGdsdXBsb2FkLmMKLWluZGV4IGUzZTAyZWJi
Ny4uN2QxOWY2ODNhIDEwMDY0NAotLS0tIGEvZ3N0LWxpYnMvZ3N0L2dsL2dzdGdsdXBsb2FkLmMK
LSsrKyBiL2dzdC1saWJzL2dzdC9nbC9nc3RnbHVwbG9hZC5jCi1AQCAtMzAsNiArMzAsNyBAQAot
IAotICNpZiBHU1RfR0xfSEFWRV9QTEFURk9STV9FR0wKLSAjaW5jbHVkZSAiZWdsL2dzdGVnbGlt
YWdlLmgiCi0rI2luY2x1ZGUgImVnbC9nc3RlZ2xpbWFnZV9wcml2YXRlLmgiCi0gI2luY2x1ZGUg
ImVnbC9nc3RnbG1lbW9yeWVnbC5oIgotICNpbmNsdWRlICJlZ2wvZ3N0Z2xjb250ZXh0X2VnbC5o
IgotICNlbmRpZgotQEAgLTY5MSw5ICs2OTIsMTIgQEAgX2RtYV9idWZfdXBsb2FkX2FjY2VwdCAo
Z3BvaW50ZXIgaW1wbCwgR3N0QnVmZmVyICogYnVmZmVyLCBHc3RDYXBzICogaW5fY2FwcywKLSAg
ICAgZmRbaV0gPSBnc3RfZG1hYnVmX21lbW9yeV9nZXRfZmQgKG1lbXNbaV0pOwotICAgfQotIAot
LSAgaWYgKGRtYWJ1Zi0+ZGlyZWN0KQotKyAgaWYgKGRtYWJ1Zi0+ZGlyZWN0KSB7Ci0rICAgIC8q
IENoZWNrIGlmIHRoaXMgZm9ybWF0IGlzIHN1cHBvcnRlZCBieSB0aGUgZHJpdmVyICovCi0gICAg
IGRtYWJ1Zi0+bl9tZW0gPSAxOwotLSAgZWxzZQotKyAgICBpZiAoIWdzdF9lZ2xfaW1hZ2VfY2hl
Y2tfZG1hYnVmX2RpcmVjdCAoZG1hYnVmLT51cGxvYWQtPmNvbnRleHQsIGluX2luZm8pKQotKyAg
ICAgIHJldHVybiBGQUxTRTsKLSsgIH0gZWxzZQotICAgICBkbWFidWYtPm5fbWVtID0gbl9wbGFu
ZXM7Ci0gCi0gICAvKiBOb3cgY3JlYXRlIGFuIEVHTEltYWdlIGZvciBlYWNoIGRtYWJ1ZnMgKi8K
LUBAIC03NTUsNiArNzU5LDE1IEBAIF9kbWFfYnVmX3VwbG9hZF9wZXJmb3JtIChncG9pbnRlciBp
bXBsLCBHc3RCdWZmZXIgKiBidWZmZXIsIEdzdEJ1ZmZlciAqKiBvdXRidWYpCi0gewotICAgc3Ry
dWN0IERtYWJ1ZlVwbG9hZCAqZG1hYnVmID0gaW1wbDsKLSAKLSsgIC8qIFRoZSBkaXJlY3QgcGF0
aCBzZXRzIHNpbmtwYWQgY2FwcyB0byBSR0JBIGJ1dCB0aGlzIG1heSBiZSBpbmNvcnJlY3QgZm9y
Ci0rICAgKiB0aGUgbm9uLWRpcmVjdCBwYXRoLCBpZiB0aGF0IHBhdGggZmFpbHMgdG8gYWNjZXB0
LiBJbiB0aGF0IGNhc2UsIHdlIG5lZWQKLSsgICAqIHRvIHJlY29uZmlndXJlLgotKyAgICovCi0r
ICBpZiAoIWRtYWJ1Zi0+ZGlyZWN0ICYmCi0rICAgICAgR1NUX1ZJREVPX0lORk9fRk9STUFUICgm
ZG1hYnVmLT51cGxvYWQtPnByaXYtPmluX2luZm8pICE9Ci0rICAgICAgR1NUX1ZJREVPX0lORk9f
Rk9STUFUICgmZG1hYnVmLT5vdXRfaW5mbykpCi0rICAgIHJldHVybiBHU1RfR0xfVVBMT0FEX1JF
Q09ORklHVVJFOwotKwotICAgZ3N0X2dsX2NvbnRleHRfdGhyZWFkX2FkZCAoZG1hYnVmLT51cGxv
YWQtPmNvbnRleHQsCi0gICAgICAgKEdzdEdMQ29udGV4dFRocmVhZEZ1bmMpIF9kbWFfYnVmX3Vw
bG9hZF9wZXJmb3JtX2dsX3RocmVhZCwgZG1hYnVmKTsKLSAKLS0tIAotMi4yNS4xCi0KZGlmZiAt
LWdpdCBhL1Rvb2xzL2J1aWxkc3RyZWFtL3BhdGNoZXMvZ3N0LXBsdWdpbnMtYmFzZS0wMDAxLW9n
Z3N0cmVhbS1Xb3JrYXJvdW5kLWZvci1icm9rZW4tUEFSLWluLVZQOC1CT1MucGF0Y2ggYi9Ub29s
cy9idWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1wbHVnaW5zLWJhc2UtMDAwMS1vZ2dzdHJlYW0tV29y
a2Fyb3VuZC1mb3ItYnJva2VuLVBBUi1pbi1WUDgtQk9TLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA1MTU3NjU2OTFhNDNmZmY3MTg4M2RhMzQ3Nzk3YjI4YjVkMGIyNmZjLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL2J1aWxk
c3RyZWFtL3BhdGNoZXMvZ3N0LXBsdWdpbnMtYmFzZS0wMDAxLW9nZ3N0cmVhbS1Xb3JrYXJvdW5k
LWZvci1icm9rZW4tUEFSLWluLVZQOC1CT1MucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzMiAr
MCwwIEBACi1Gcm9tIDJlNDAzNzllN2FjZTljNDNkOWVkZWJlOTU1NmIzN2I1NDFjNjdkYTcgTW9u
IFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwaGlsbkBpZ2Fs
aWEuY29tPgotRGF0ZTogTW9uLCAxMyBKYW4gMjAyMCAwOTowNjowMiArMDAwMAotU3ViamVjdDog
W1BBVENIXSBvZ2dzdHJlYW06IFdvcmthcm91bmQgZm9yIGJyb2tlbiBQQVIgaW4gVlA4IEJPUwot
Ci1TaW1pbGFyaWx5IHRvIHRoZSBUaGVvcmEgbWFwcGluZywgcHJvY2VzcyAwOk4sIE46MCBhbmQg
MDowIHBpeGVsIGFzcGVjdCByYXRpb3MKLWFzIDE6MS4KLQotRml4ZXMgIzcxOQotLS0tCi0gZXh0
L29nZy9nc3RvZ2dzdHJlYW0uYyB8IDUgKysrKysKLSAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRp
b25zKCspCi0KLWRpZmYgLS1naXQgYS9leHQvb2dnL2dzdG9nZ3N0cmVhbS5jIGIvZXh0L29nZy9n
c3RvZ2dzdHJlYW0uYwotaW5kZXggY2RiNmZhNmFkLi4zODk0YWU3NDEgMTAwNjQ0Ci0tLS0gYS9l
eHQvb2dnL2dzdG9nZ3N0cmVhbS5jCi0rKysgYi9leHQvb2dnL2dzdG9nZ3N0cmVhbS5jCi1AQCAt
Njc3LDYgKzY3NywxMSBAQCBzZXR1cF92cDhfbWFwcGVyIChHc3RPZ2dTdHJlYW0gKiBwYWQsIG9n
Z19wYWNrZXQgKiBwYWNrZXQpCi0gICBwYWQtPm5faGVhZGVyX3BhY2tldHMgPSAyOwotICAgcGFk
LT5mcmFtZV9zaXplID0gMTsKLSAKLSsgIC8qIFBBUiBvZiAwOk4sIE46MCBhbmQgMDowIGlzIG5v
dCBleHBsaWNpdGVseSBhbGxvd2VkLCBidXQgdGhlIGJlc3Qgd2UgY2FuIGRvCi0rICAgKiBoZXJl
IGlzIHRvIG1hcCB0byAxOjEgc28gdGhhdCBjYXBzIG5lZ290aWF0aW9uIGRvZXNuJ3QgYnJlYWsg
ZG93bnN0cmVhbS4gKi8KLSsgIGlmIChwYXJfbiA9PSAwIHx8IHBhcl9kID09IDApCi0rICAgIHBh
cl9uID0gcGFyX2QgPSAxOwotKwotICAgcGFkLT5jYXBzID0gZ3N0X2NhcHNfbmV3X3NpbXBsZSAo
InZpZGVvL3gtdnA4IiwKLSAgICAgICAid2lkdGgiLCBHX1RZUEVfSU5ULCB3aWR0aCwKLSAgICAg
ICAiaGVpZ2h0IiwgR19UWVBFX0lOVCwgaGVpZ2h0LAotLS0gCi0yLjI2LjIKLQpkaWZmIC0tZ2l0
IGEvVG9vbHMvYnVpbGRzdHJlYW0vcGF0Y2hlcy9nc3QtcGx1Z2lucy1iYXNlLTAwMDEtcGxheWJp
bi1IYW5kbGUtZXJyb3ItbWVzc2FnZS13aXRoLXJlZGlyZWN0aW9uLWluZGljYS5wYXRjaCBiL1Rv
b2xzL2J1aWxkc3RyZWFtL3BhdGNoZXMvZ3N0LXBsdWdpbnMtYmFzZS0wMDAxLXBsYXliaW4tSGFu
ZGxlLWVycm9yLW1lc3NhZ2Utd2l0aC1yZWRpcmVjdGlvbi1pbmRpY2EucGF0Y2gKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNiMjUwNmRhMzQ5NjczYjNkZDFhMzZlOTgwOWY4NTcwOWIw
Y2Q3OTYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvVG9v
bHMvYnVpbGRzdHJlYW0vcGF0Y2hlcy9nc3QtcGx1Z2lucy1iYXNlLTAwMDEtcGxheWJpbi1IYW5k
bGUtZXJyb3ItbWVzc2FnZS13aXRoLXJlZGlyZWN0aW9uLWluZGljYS5wYXRjaAorKysgL2Rldi9u
dWxsCkBAIC0xLDEwMCArMCwwIEBACi1Gcm9tIDZlNTAzYjZlMzQwMDBhMThhNDlkMjk2NmRmMmMw
MWMyZWYxNGJkNWMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBUaGliYXVsdCBTYXVu
aWVyIDx0c2F1bmllckBpZ2FsaWEuY29tPgotRGF0ZTogVHVlLCAzIFNlcCAyMDE5IDE2OjAzOjQ5
IC0wNDAwCi1TdWJqZWN0OiBbUEFUQ0hdIHBsYXliaW46IEhhbmRsZSBlcnJvciBtZXNzYWdlIHdp
dGggcmVkaXJlY3Rpb24gaW5kaWNhdGlvbgotCi1UaGVyZSBhcmUgaW4gdGhlIHdpbGQgKG1wNCkg
c3RyZWFtcyB0aGF0IGJhc2ljYWxseSBjb250YWluIG5vIHRyYWNrcwotYnV0IGRvIGhhdmUgYSBy
ZWRpcmVjdCBpbmZvWzBdLCBpbiB3aGljaCBjYXNlLCBxdGRlbXV4IHdvbid0IGJlIGFibGUKLXRv
IGV4cG9zZSBhbnkgcGFkICh0aGVyZSBhcmUgbm8gdHJhY2tzKSBzbyBjYW4ndCBwb3N0IGFueXRo
aW5nIGJ1dAotYW4gZXJyb3Igb24gdGhlIGJ1cywgYXM6Ci0gIC0gaXQgY2FuJ3Qgc2VuZCBFT1Mg
ZG93bnN0cmVhbSwgaXQgaGFzIG5vIHBhZCwKLSAgLSBwb3N0aW5nIGFuIEVPUyBtZXNzYWdlIHdp
bGwgYmUgdXNlbGVzcyBhcyBQQVVTRUQgc3RhdGUgY2FuJ3QgYmUKLSAgICByZWFjaGVkIGFuZCB0
aGVyZSBpcyBubyBzaW5rIGluIHRoZSBwaXBlbGluZSBtZWFuaW5nIEdzdEJpbiB3aWxsCi0gICAg
c2ltcGx5IGlnbm9yZSBpdAotCi1JbiB0aGF0IGNhc2UsIGN1cnJlbnRseSB0aGUgYXBwbGljYXRp
b24gY291bGQgdHJ5IHRvIGhhbmRsZSB0aGF0IGJ1dCBpdAotaXMgcHJldHR5IGNvbXBsZXggYXMg
aXQgd2lsbCBnZXQgdGhlIFJFRElSRUNUIG1lc3NhZ2Ugb24gdGhlIGJ1cyBhdAotd2hpY2ggcG9p
bnQgaXQgY291bGQgc2V0IHRoZSBVUkwgYnV0IHBsYXliaW4gd2lsbCBpZ25vcmUgaXQsIGFzCi1p
dCB3aWxsIG9ubHkgYmUgZm9yIHRoZSBuZXh0IEVPUywgaXQgdGh1cyBuZWVkIHRvIHNldCB0aGUg
cGlwZWxpbmUgdG8KLU5VTEwgKFJFQURZIHdvbid0IGRvIGFzIGl0IGlzIGFscmVhZHkgaW4gUkVB
RFkgYXQgdGhhdCBwb2ludCkuIEFuZCBpdAotbmVlZHMgdG8gZmlndXJlIG91dCB0aGUgZm9sbG93
aW5nIEVSUk9SIG1lc3NhZ2Ugb24gdGhlIGJ1cyBuZWVkcyB0byBiZQotaWdub3JlZCwgd2hpY2gg
aXMgbm90IHJlYWxseSBzaW1wbGUuCi0KLVRoZSBhcHByb2FjaCBoZXJlIGlzIHRvIGFsbG93IGVs
ZW1lbnQgdG8gYWRkIGRldGFpbHMgdG8gdGhlIEVSUk9SCi1tZXNzYWdlIHdpdGggYSBgcmVkaXJl
Y3QtbG9jYXRpb25gIGZpZWxkIHdoaWNoIGVsZW1lbnRzIGxpa2UgcGxheWJpbiBoYW5kbGUKLWFu
ZCB1c2UgcmlnaHQgYXdheS4KLQotV2UgY291bGQgYWxzbyB1c2UgdGhlIGVsZW1lbnQgJ3JlZGly
ZWN0JyBtZXNzYWdlIGluIHBsYXliaW4sIGJ1dCB0aGUKLWlzc3VlIHdpdGggdGhhdCBhcHByb2Fj
aCBpcyB0aGF0IHRoZSBlbGVtZW50IHdpbGwgc3RpbGwgZW1pdCB0aGUgRVJST1IKLW1lc3NhZ2Ug
b24gdGhlIGJ1cywgbGVhZGluZyB0byB3cm9uZyBiZWhhdmlvdXIuIFRoYXQgY2FuJ3QgYmUgYXZv
aWRlZAotc2luY2UgaW4gdGhlIGNhc2UgdGhlIGFwcC9wYXJlbnQgcGlwZWxpbmUgaXMgbm90IGhh
bmRsaW5nIHRoZSByZWRpcmVjdAotaW5zdHJ1Y3Rpb24sIHRoZSBFUlJPUiBtZXNzYWdlIGlzIG5l
Y2Vzc2FyeSAoYW5kIHRoZXJlIGlzIG5vIHdheSB0bwotZGV0ZWN0IHRoYXQgdGhlIG1lc3NhZ2Ug
aGFzIGJlZW4gImhhbmRsZWQiIGZyb20gdGhlIGVsZW1lbnQgZW1pdHRpbmcgdGhlCi1yZWRpcmVj
dCkuCi0KLVswXTogaHR0cDovL21vdmlldHJhaWxlcnMuYXBwbGUuY29tL21vdmllcy9wYXJhbW91
bnQvdGVybWluYXRvci1kYXJrLWZhdGUvdGVybWluYXRvci1kYXJrLWZhdGUtdHJhaWxlci0yXzQ4
MHAubW92Ci0tLS0KLSBnc3QvcGxheWJhY2svZ3N0cGxheWJpbjIuYyB8IDQwICsrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrCi0gMSBmaWxlIGNoYW5nZWQsIDQwIGluc2VydGlv
bnMoKykKLQotZGlmZiAtLWdpdCBhL2dzdC9wbGF5YmFjay9nc3RwbGF5YmluMi5jIGIvZ3N0L3Bs
YXliYWNrL2dzdHBsYXliaW4yLmMKLWluZGV4IGM4YmZkMzg4ZS4uNjk5N2E5NTdjIDEwMDY0NAot
LS0tIGEvZ3N0L3BsYXliYWNrL2dzdHBsYXliaW4yLmMKLSsrKyBiL2dzdC9wbGF5YmFjay9nc3Rw
bGF5YmluMi5jCi1AQCAtMTcwLDYgKzE3MCwxMCBAQAotICAqIHR5cGUuIFRoZSBuZXcgbG9jYXRp
b24gbWF5IGJlIGEgcmVsYXRpdmUgb3IgYW4gYWJzb2x1dGUgVVJJLiBFeGFtcGxlcwotICAqIGZv
ciBzdWNoIHJlZGlyZWN0cyBjYW4gYmUgZm91bmQgaW4gbWFueSBxdWlja3RpbWUgbW92aWUgdHJh
aWxlcnMuCi0gICoKLSsgKiBOT1RFOiBwbGF5YmluIHdpbGwgaW50ZXJuYWxseSBoYW5kbGUgdGhl
IHJlZGlyZWN0IG1lc3NhZ2VzIGluIHRoZSBjYXNlCi0rICogdGhhdCB0aGUgcmVkaXJlY3Rpbmcg
c3RyZWFtIGRvZXNuJ3QgY29udGFpbiBhbnkgdHJhY2tzIGFuZCB0aHVzCi0rICogbmVlZHMgdG8g
cmVwb3J0IGFuIGVycm9yIG1lc3NhZ2Ugb24gdGhlIGJ1cy4KLSsgKgotICAqICMjIEV4YW1wbGVz
Ci0gICogfFsKLSAgKiBnc3QtbGF1bmNoLTEuMCAtdiBwbGF5YmluIHVyaT1maWxlOi8vL3BhdGgv
dG8vc29tZWZpbGUubXA0Ci1AQCAtMzAyNSw2ICszMDI5LDQyIEBAIGdzdF9wbGF5X2Jpbl9oYW5k
bGVfbWVzc2FnZSAoR3N0QmluICogYmluLCBHc3RNZXNzYWdlICogbXNnKQotICAgICAgICAgICBu
b19tb3JlX3BhZHNfY2IgKE5VTEwsIGdyb3VwKTsKLSAgICAgICAgIH0KLSAgICAgICB9Ci0rICAg
IH0gZWxzZSB7Ci0rICAgICAgY29uc3QgR3N0U3RydWN0dXJlICpkZXRhaWxzID0gTlVMTDsKLSsK
LSsgICAgICBnc3RfbWVzc2FnZV9wYXJzZV9lcnJvcl9kZXRhaWxzIChtc2csICZkZXRhaWxzKTsK
LSsgICAgICBpZiAoZGV0YWlscyAmJiBnc3Rfc3RydWN0dXJlX2hhc19maWVsZCAoZGV0YWlscywg
InJlZGlyZWN0LWxvY2F0aW9uIikpIHsKLSsgICAgICAgIGdjaGFyICp1cmkgPSBOVUxMOwotKyAg
ICAgICAgY29uc3QgZ2NoYXIgKmxvY2F0aW9uID0KLSsgICAgICAgICAgICBnc3Rfc3RydWN0dXJl
X2dldF9zdHJpbmcgKChHc3RTdHJ1Y3R1cmUgKikgZGV0YWlscywKLSsgICAgICAgICAgICAicmVk
aXJlY3QtbG9jYXRpb24iKTsKLSsKLSsgICAgICAgIGlmIChnc3RfdXJpX2lzX3ZhbGlkIChsb2Nh
dGlvbikpIHsKLSsgICAgICAgICAgdXJpID0gZ19zdHJkdXAgKGxvY2F0aW9uKTsKLSsgICAgICAg
IH0gZWxzZSB7Ci0rICAgICAgICAgIHVyaSA9IGdzdF91cmlfam9pbl9zdHJpbmdzIChncm91cC0+
dXJpLCBsb2NhdGlvbik7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBpZiAoZ19zdHJjbXAwICh1
cmksIGdyb3VwLT51cmkpKSB7Ci0rICAgICAgICAgIEdTVF9QTEFZX0JJTl9MT0NLIChwbGF5Ymlu
KTsKLSsgICAgICAgICAgaWYgKHBsYXliaW4tPm5leHRfZ3JvdXAgJiYgcGxheWJpbi0+bmV4dF9n
cm91cC0+dmFsaWQpIHsKLSsgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUIChwbGF5YmluLAot
KyAgICAgICAgICAgICAgICAiVXNlciBhbHJlYWR5IHNldHVwIG5leHQgdXJpICVzLCB1c2luZyBp
dCIsCi0rICAgICAgICAgICAgICAgIHBsYXliaW4tPm5leHRfZ3JvdXAtPnVyaSk7Ci0rICAgICAg
ICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAgR1NUX0RFQlVHX09CSkVDVCAocGxheWJpbiwKLSsg
ICAgICAgICAgICAgICAgIlVzaW5nIG5ld2x5IGNvbmZpZ3VyZWQgcmVkaXJlY3QgVVJJOiAlcyIs
IHVyaSk7Ci0rICAgICAgICAgICAgZ3N0X3BsYXlfYmluX3NldF91cmkgKHBsYXliaW4sIHVyaSk7
Ci0rICAgICAgICAgIH0KLSsgICAgICAgICAgR1NUX1BMQVlfQklOX1VOTE9DSyAocGxheWJpbik7
Ci0rCi0rICAgICAgICAgIHNldHVwX25leHRfc291cmNlIChwbGF5YmluLCBHU1RfU1RBVEVfUEFV
U0VEKTsKLSsgICAgICAgICAgZ3N0X21lc3NhZ2VfdW5yZWYgKG1zZyk7Ci0rICAgICAgICAgIG1z
ZyA9IE5VTEw7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBnX2ZyZWUgKHVyaSk7Ci0rICAgICAg
fQotICAgICB9Ci0gICB9Ci0gCi0tLSAKLTIuMjEuMAotCmRpZmYgLS1naXQgYS9Ub29scy9idWls
ZHN0cmVhbS9wYXRjaGVzL2dzdC1wbHVnaW5zLWJhc2UtMDAwMi1nbHVwbG9hZC1maXgtc2VnZmF1
bHQucGF0Y2ggYi9Ub29scy9idWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1wbHVnaW5zLWJhc2UtMDAw
Mi1nbHVwbG9hZC1maXgtc2VnZmF1bHQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDM1ODNkNWE4YmU4ODA4M2FmZTg3ZmVhM2U0ZjE5MmYwNDQyMzZkYmUuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvVG9vbHMvYnVpbGRzdHJlYW0vcGF0
Y2hlcy9nc3QtcGx1Z2lucy1iYXNlLTAwMDItZ2x1cGxvYWQtZml4LXNlZ2ZhdWx0LnBhdGNoCisr
KyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBAQAotRnJvbSBhOTFhYjc5MDg5NTVhYTU3ZjRjOWNh
NTI3NjVkN2NiZTFjZjVlNzFmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogSGFpaGFv
IFhpYW5nIDxoYWloYW8ueGlhbmdAaW50ZWwuY29tPgotRGF0ZTogVGh1LCAyNiBNYXIgMjAyMCAx
Mzo0Njo1NiArMDgwMAotU3ViamVjdDogW1BBVENIIDIvMl0gZ2x1cGxvYWQ6IGZpeCBzZWdmYXVs
dAotCi1XaXRob3V0IHRoaXMgZml4LCBpdCBpcyBwb3NzaWJsZSB0aGF0IG91dGJ1ZiBpcyBub3Qg
aW5pdGlhbGl6ZWQsIHdoaWNoCi13aWxsIHJlc3VsdCBpbiBzZWdmYXVsdCB3aGVuIGNhbGwgZ3N0
X2J1ZmZlcl9yZXBsYWNlICgmb3V0YnVmLCBOVUxMKS4gSW4KLWFkZGl0aW9uLCB0aGUgcGF0Y2gg
Zml4ZXMgcG90ZW50aWFsIG1lbW9yeSBsZWFrIGluIHJlc3RhcnQgcGF0aC4KLQotVGhlIHNlZ2Zh
dWx0IGNhbiBiZSByZXByb2R1Y2VkIGJ5IHRoZSBwaXBlbGluZSBiZWxvdzoKLQotR1NUX0dMX1BM
QVRGT1JNPWVnbCBcCi1nc3QtbGF1bmNoLTEuMCB2aWRlb3Rlc3RzcmMgISBtc2RraDI2NWVuYyAh
IG1zZGtoMjY1ZGVjICEgXAotJ3ZpZGVvL3gtcmF3KG1lbW9yeTpETUFCdWYpJyAhIGdsaW1hZ2Vz
aW5rCi0KLWh0dHBzOi8vZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZy9nc3RyZWFtZXIvZ3N0LXBsdWdp
bnMtYmFzZS8tL21lcmdlX3JlcXVlc3RzLzYxOQotLS0tCi0gZ3N0LWxpYnMvZ3N0L2dsL2dzdGds
dXBsb2FkLmMgfCA1ICsrKystCi0gMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBk
ZWxldGlvbigtKQotCi1kaWZmIC0tZ2l0IGEvZ3N0LWxpYnMvZ3N0L2dsL2dzdGdsdXBsb2FkLmMg
Yi9nc3QtbGlicy9nc3QvZ2wvZ3N0Z2x1cGxvYWQuYwotaW5kZXggN2QxOWY2ODNhLi4yZWYwMGE0
OWIgMTAwNjQ0Ci0tLS0gYS9nc3QtbGlicy9nc3QvZ2wvZ3N0Z2x1cGxvYWQuYwotKysrIGIvZ3N0
LWxpYnMvZ3N0L2dsL2dzdGdsdXBsb2FkLmMKLUBAIC0xOTc1LDcgKzE5NzUsNyBAQCBnc3RfZ2xf
dXBsb2FkX3BlcmZvcm1fd2l0aF9idWZmZXIgKEdzdEdMVXBsb2FkICogdXBsb2FkLCBHc3RCdWZm
ZXIgKiBidWZmZXIsCi0gICAgIEdzdEJ1ZmZlciAqKiBvdXRidWZfcHRyKQotIHsKLSAgIEdzdEdM
VXBsb2FkUmV0dXJuIHJldCA9IEdTVF9HTF9VUExPQURfRVJST1I7Ci0tICBHc3RCdWZmZXIgKm91
dGJ1ZjsKLSsgIEdzdEJ1ZmZlciAqb3V0YnVmID0gTlVMTDsKLSAgIGdwb2ludGVyIGxhc3RfaW1w
bCA9IHVwbG9hZC0+cHJpdi0+bWV0aG9kX2ltcGw7Ci0gCi0gICBnX3JldHVybl92YWxfaWZfZmFp
bCAoR1NUX0lTX0dMX1VQTE9BRCAodXBsb2FkKSwgRkFMU0UpOwotQEAgLTIwMTYsNiArMjAxNiw4
IEBAIHJlc3RhcnQ6Ci0gICAgICAgICBicmVhazsKLSAgICAgICB9Ci0gICAgIH0KLSsKLSsgICAg
Z3N0X2J1ZmZlcl9yZXBsYWNlICgmb3V0YnVmLCBOVUxMKTsKLSAgICAgZ290byByZXN0YXJ0Owot
ICAgfSBlbHNlIGlmIChyZXQgPT0gR1NUX0dMX1VQTE9BRF9ET05FIHx8IHJldCA9PSBHU1RfR0xf
VVBMT0FEX1JFQ09ORklHVVJFKSB7Ci0gICAgIGlmIChsYXN0X2ltcGwgIT0gdXBsb2FkLT5wcml2
LT5tZXRob2RfaW1wbCkgewotQEAgLTIwMzAsNiArMjAzMiw3IEBAIHJlc3RhcnQ6Ci0gICAgIC8q
IHdlIGFyZSBkb25lICovCi0gICB9IGVsc2UgewotICAgICB1cGxvYWQtPnByaXYtPm1ldGhvZF9p
bXBsID0gTlVMTDsKLSsgICAgZ3N0X2J1ZmZlcl9yZXBsYWNlICgmb3V0YnVmLCBOVUxMKTsKLSAg
ICAgTkVYVF9NRVRIT0Q7Ci0gICB9Ci0gCi0tLSAKLTIuMjUuMQotCmRpZmYgLS1naXQgYS9Ub29s
cy9idWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1wbHVnaW5zLWJhc2UtMDAwMy1nbGJhc2VmaWx0ZXIt
YWRkLXN1cHBvcnQtZm9yLWNoYW5naW5nLXRoZS1kaXNwbGF5LnBhdGNoIGIvVG9vbHMvYnVpbGRz
dHJlYW0vcGF0Y2hlcy9nc3QtcGx1Z2lucy1iYXNlLTAwMDMtZ2xiYXNlZmlsdGVyLWFkZC1zdXBw
b3J0LWZvci1jaGFuZ2luZy10aGUtZGlzcGxheS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNWUyNzk4MjhlNDQ4ZDVmMDEyZWE3NTI5N2VmNTk4NjQ3ZjBmZGNmMC4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9idWlsZHN0cmVh
bS9wYXRjaGVzL2dzdC1wbHVnaW5zLWJhc2UtMDAwMy1nbGJhc2VmaWx0ZXItYWRkLXN1cHBvcnQt
Zm9yLWNoYW5naW5nLXRoZS1kaXNwbGF5LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNjYwICsw
LDAgQEAKLUZyb20gNTZkOWZiMTNmOTNhYmJmNWFhNWFmODFlMzlhZTczNjQyMDE2ZmU5NSBNb24g
U2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IE1hdHRoZXcgV2F0ZXJzIDxtYXR0aGV3QGNlbnRy
aWN1bGFyLmNvbT4KLURhdGU6IFdlZCwgNSBGZWIgMjAyMCAxMjoyNjo1NCArMTEwMAotU3ViamVj
dDogW1BBVENIXSBnbGJhc2VmaWx0ZXI6IGFkZCBzdXBwb3J0IGZvciBjaGFuZ2luZyB0aGUgZGlz
cGxheQotCi1FYWNoIGVsZW1lbnQgd2lsbCByZW1vdmUgaXRzIHVzYWdlIG9mIHRoZSBvbGQgZGlz
cGxheSBhbmQgY29udGV4dCBhbmQKLXRyeSB0byByZXRyaWV2ZSBhIG5ldyBHTCBjb250ZXh0Lgot
LS0tCi0gZXh0L2dsL2dzdGdsY29sb3Jjb252ZXJ0ZWxlbWVudC5jIHwgIDQ0ICsrKystLS0KLSBn
c3QtbGlicy9nc3QvZ2wvZ3N0Z2xiYXNlZmlsdGVyLmMgfCAxOTUgKysrKysrKysrKysrKysrKysr
KysrKy0tLS0tLS0tCi0gZ3N0LWxpYnMvZ3N0L2dsL2dzdGdsYmFzZWZpbHRlci5oIHwgICA0ICsK
LSB0ZXN0cy9jaGVjay9lbGVtZW50cy9nbGZpbHRlci5jICAgfCAxMzEgKysrKysrKysrKysrKysr
KysrKysKLSB0ZXN0cy9jaGVjay9tZXNvbi5idWlsZCAgICAgICAgICAgfCAgIDEgKwotIDUgZmls
ZXMgY2hhbmdlZCwgMzEwIGluc2VydGlvbnMoKyksIDY1IGRlbGV0aW9ucygtKQotIGNyZWF0ZSBt
b2RlIDEwMDY0NCB0ZXN0cy9jaGVjay9lbGVtZW50cy9nbGZpbHRlci5jCi0KLWRpZmYgLS1naXQg
YS9leHQvZ2wvZ3N0Z2xjb2xvcmNvbnZlcnRlbGVtZW50LmMgYi9leHQvZ2wvZ3N0Z2xjb2xvcmNv
bnZlcnRlbGVtZW50LmMKLWluZGV4IDI1ZTdkYWFiOS4uMjU2ZTVlZjVhIDEwMDY0NAotLS0tIGEv
ZXh0L2dsL2dzdGdsY29sb3Jjb252ZXJ0ZWxlbWVudC5jCi0rKysgYi9leHQvZ2wvZ3N0Z2xjb2xv
cmNvbnZlcnRlbGVtZW50LmMKLUBAIC0zNiwxNSArMzYsMTQgQEAgR19ERUZJTkVfVFlQRV9XSVRI
X0NPREUgKEdzdEdMQ29sb3JDb252ZXJ0RWxlbWVudCwgZ3N0X2dsX2NvbG9yX2NvbnZlcnRfZWxl
bWVudCwKLSAgICAgICAgICJnbGNvbnZlcnRlbGVtZW50IiwgMCwgImNvbnZlcnQiKTsKLSAgICAg
KTsKLSAKLS1zdGF0aWMgZ2Jvb2xlYW4gZ3N0X2dsX2NvbG9yX2NvbnZlcnRfZWxlbWVudF9zZXRf
Y2FwcyAoR3N0QmFzZVRyYW5zZm9ybSAqIGJ0LAotLSAgICBHc3RDYXBzICogaW5fY2FwcywgR3N0
Q2FwcyAqIG91dF9jYXBzKTsKLStzdGF0aWMgZ2Jvb2xlYW4gZ3N0X2dsX2NvbG9yX2NvbnZlcnRf
ZWxlbWVudF9nbF9zZXRfY2FwcyAoR3N0R0xCYXNlRmlsdGVyICoKLSsgICAgYmFzZV9maWx0ZXIs
IEdzdENhcHMgKiBpbl9jYXBzLCBHc3RDYXBzICogb3V0X2NhcHMpOwotIHN0YXRpYyBHc3RDYXBz
ICpnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50X3RyYW5zZm9ybV9jYXBzIChHc3RCYXNlVHJh
bnNmb3JtICoKLSAgICAgYnQsIEdzdFBhZERpcmVjdGlvbiBkaXJlY3Rpb24sIEdzdENhcHMgKiBj
YXBzLCBHc3RDYXBzICogZmlsdGVyKTsKLSBzdGF0aWMgZ2Jvb2xlYW4gZ3N0X2dsX2NvbG9yX2Nv
bnZlcnRfZWxlbWVudF9nZXRfdW5pdF9zaXplIChHc3RCYXNlVHJhbnNmb3JtICoKLSAgICAgdHJh
bnMsIEdzdENhcHMgKiBjYXBzLCBnc2l6ZSAqIHNpemUpOwotLXN0YXRpYyBnYm9vbGVhbgotLWdz
dF9nbF9jb2xvcl9jb252ZXJ0X2VsZW1lbnRfZmlsdGVyX21ldGEgKEdzdEJhc2VUcmFuc2Zvcm0g
KiB0cmFucywKLS0gICAgR3N0UXVlcnkgKiBxdWVyeSwgR1R5cGUgYXBpLCBjb25zdCBHc3RTdHJ1
Y3R1cmUgKiBwYXJhbXMpOwotK3N0YXRpYyBnYm9vbGVhbiBnc3RfZ2xfY29sb3JfY29udmVydF9l
bGVtZW50X2ZpbHRlcl9tZXRhIChHc3RCYXNlVHJhbnNmb3JtICoKLSsgICAgdHJhbnMsIEdzdFF1
ZXJ5ICogcXVlcnksIEdUeXBlIGFwaSwgY29uc3QgR3N0U3RydWN0dXJlICogcGFyYW1zKTsKLSBz
dGF0aWMgZ2Jvb2xlYW4gZ3N0X2dsX2NvbG9yX2NvbnZlcnRfZWxlbWVudF9kZWNpZGVfYWxsb2Nh
dGlvbiAoR3N0QmFzZVRyYW5zZm9ybQotICAgICAqIHRyYW5zLCBHc3RRdWVyeSAqIHF1ZXJ5KTsK
LSBzdGF0aWMgR3N0Rmxvd1JldHVybgotQEAgLTUyLDggKzUxLDggQEAgZ3N0X2dsX2NvbG9yX2Nv
bnZlcnRfZWxlbWVudF9wcmVwYXJlX291dHB1dF9idWZmZXIgKEdzdEJhc2VUcmFuc2Zvcm0gKiBi
dCwKLSAgICAgR3N0QnVmZmVyICogaW5idWYsIEdzdEJ1ZmZlciAqKiBvdXRidWYpOwotIHN0YXRp
YyBHc3RGbG93UmV0dXJuIGdzdF9nbF9jb2xvcl9jb252ZXJ0X2VsZW1lbnRfdHJhbnNmb3JtIChH
c3RCYXNlVHJhbnNmb3JtICoKLSAgICAgYnQsIEdzdEJ1ZmZlciAqIGluYnVmLCBHc3RCdWZmZXIg
KiBvdXRidWYpOwotLXN0YXRpYyBHc3RDYXBzICpnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50
X2ZpeGF0ZV9jYXBzIChHc3RCYXNlVHJhbnNmb3JtICoKLS0gICAgYnQsIEdzdFBhZERpcmVjdGlv
biBkaXJlY3Rpb24sIEdzdENhcHMgKiBjYXBzLCBHc3RDYXBzICogb3RoZXJjYXBzKTsKLStzdGF0
aWMgR3N0Q2FwcyAqZ3N0X2dsX2NvbG9yX2NvbnZlcnRfZWxlbWVudF9maXhhdGVfY2FwcyAoR3N0
QmFzZVRyYW5zZm9ybSAqIGJ0LAotKyAgICBHc3RQYWREaXJlY3Rpb24gZGlyZWN0aW9uLCBHc3RD
YXBzICogY2FwcywgR3N0Q2FwcyAqIG90aGVyY2Fwcyk7Ci0gc3RhdGljIEdzdFN0YXRlQ2hhbmdl
UmV0dXJuCi0gZ3N0X2dsX2NvbG9yX2NvbnZlcnRfZWxlbWVudF9jaGFuZ2Vfc3RhdGUgKEdzdEVs
ZW1lbnQgKiBlbGVtZW50LAotICAgICBHc3RTdGF0ZUNoYW5nZSB0cmFuc2l0aW9uKTsKLUBAIC03
MCwzNCArNjksMzMgQEAgR1NUX1NUQVRJQ19QQURfVEVNUExBVEUgKCJzaW5rIiwKLSAgICAgR1NU
X1BBRF9BTFdBWVMsCi0gICAgIEdTVF9TVEFUSUNfQ0FQUyAoR1NUX0dMX0NPTE9SX0NPTlZFUlRf
VklERU9fQ0FQUykpOwotIAotLXN0YXRpYyBnYm9vbGVhbgotLWdzdF9nbF9jb2xvcl9jb252ZXJ0
X2VsZW1lbnRfc3RvcCAoR3N0QmFzZVRyYW5zZm9ybSAqIGJ0KQotK3N0YXRpYyB2b2lkCi0rZ3N0
X2dsX2NvbG9yX2NvbnZlcnRfZWxlbWVudF9nbF9zdG9wIChHc3RHTEJhc2VGaWx0ZXIgKiBmaWx0
ZXIpCi0gewotLSAgR3N0R0xDb2xvckNvbnZlcnRFbGVtZW50ICpjb252ZXJ0ID0gR1NUX0dMX0NP
TE9SX0NPTlZFUlRfRUxFTUVOVCAoYnQpOwotKyAgR3N0R0xDb2xvckNvbnZlcnRFbGVtZW50ICpj
b252ZXJ0ID0gR1NUX0dMX0NPTE9SX0NPTlZFUlRfRUxFTUVOVCAoZmlsdGVyKTsKLSAKLSAgIGlm
IChjb252ZXJ0LT5jb252ZXJ0KSB7Ci0gICAgIGdzdF9vYmplY3RfdW5yZWYgKGNvbnZlcnQtPmNv
bnZlcnQpOwotICAgICBjb252ZXJ0LT5jb252ZXJ0ID0gTlVMTDsKLSAgIH0KLSAKLS0gIHJldHVy
biBHU1RfQkFTRV9UUkFOU0ZPUk1fQ0xBU1MgKHBhcmVudF9jbGFzcyktPnN0b3AgKGJ0KTsKLSsg
IEdTVF9HTF9CQVNFX0ZJTFRFUl9DTEFTUyAocGFyZW50X2NsYXNzKS0+Z2xfc3RvcCAoZmlsdGVy
KTsKLSB9Ci0gCi0gc3RhdGljIHZvaWQKLSBnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50X2Ns
YXNzX2luaXQgKEdzdEdMQ29sb3JDb252ZXJ0RWxlbWVudENsYXNzICoga2xhc3MpCi0gewotKyAg
R3N0R0xCYXNlRmlsdGVyQ2xhc3MgKmZpbHRlcl9jbGFzcyA9IEdTVF9HTF9CQVNFX0ZJTFRFUl9D
TEFTUyAoa2xhc3MpOwotICAgR3N0QmFzZVRyYW5zZm9ybUNsYXNzICpidF9jbGFzcyA9IEdTVF9C
QVNFX1RSQU5TRk9STV9DTEFTUyAoa2xhc3MpOwotICAgR3N0RWxlbWVudENsYXNzICplbGVtZW50
X2NsYXNzID0gR1NUX0VMRU1FTlRfQ0xBU1MgKGtsYXNzKTsKLSAKLSAgIGJ0X2NsYXNzLT50cmFu
c2Zvcm1fY2FwcyA9IGdzdF9nbF9jb2xvcl9jb252ZXJ0X2VsZW1lbnRfdHJhbnNmb3JtX2NhcHM7
Ci0tICBidF9jbGFzcy0+c2V0X2NhcHMgPSBnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50X3Nl
dF9jYXBzOwotICAgYnRfY2xhc3MtPmdldF91bml0X3NpemUgPSBnc3RfZ2xfY29sb3JfY29udmVy
dF9lbGVtZW50X2dldF91bml0X3NpemU7Ci0gICBidF9jbGFzcy0+ZmlsdGVyX21ldGEgPSBnc3Rf
Z2xfY29sb3JfY29udmVydF9lbGVtZW50X2ZpbHRlcl9tZXRhOwotICAgYnRfY2xhc3MtPmRlY2lk
ZV9hbGxvY2F0aW9uID0gZ3N0X2dsX2NvbG9yX2NvbnZlcnRfZWxlbWVudF9kZWNpZGVfYWxsb2Nh
dGlvbjsKLSAgIGJ0X2NsYXNzLT5wcmVwYXJlX291dHB1dF9idWZmZXIgPQotICAgICAgIGdzdF9n
bF9jb2xvcl9jb252ZXJ0X2VsZW1lbnRfcHJlcGFyZV9vdXRwdXRfYnVmZmVyOwotICAgYnRfY2xh
c3MtPnRyYW5zZm9ybSA9IGdzdF9nbF9jb2xvcl9jb252ZXJ0X2VsZW1lbnRfdHJhbnNmb3JtOwot
LSAgYnRfY2xhc3MtPnN0b3AgPSBnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50X3N0b3A7Ci0g
ICBidF9jbGFzcy0+Zml4YXRlX2NhcHMgPSBnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50X2Zp
eGF0ZV9jYXBzOwotIAotICAgYnRfY2xhc3MtPnBhc3N0aHJvdWdoX29uX3NhbWVfY2FwcyA9IFRS
VUU7Ci1AQCAtMTEzLDYgKzExMSw5IEBAIGdzdF9nbF9jb2xvcl9jb252ZXJ0X2VsZW1lbnRfY2xh
c3NfaW5pdCAoR3N0R0xDb2xvckNvbnZlcnRFbGVtZW50Q2xhc3MgKiBrbGFzcykKLSAgICAgICAi
T3BlbkdMIGNvbG9yIGNvbnZlcnRlciIsICJGaWx0ZXIvQ29udmVydGVyL1ZpZGVvIiwKLSAgICAg
ICAiQ29udmVydHMgYmV0d2VlbiBjb2xvciBzcGFjZXMgdXNpbmcgT3BlbkdMIHNoYWRlcnMiLAot
ICAgICAgICJNYXR0aGV3IFdhdGVycyA8bWF0dGhld0BjZW50cmljdWxhci5jb20+Iik7Ci0rCi0r
ICBmaWx0ZXJfY2xhc3MtPmdsX3N0b3AgPSBnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50X2ds
X3N0b3A7Ci0rICBmaWx0ZXJfY2xhc3MtPmdsX3NldF9jYXBzID0gZ3N0X2dsX2NvbG9yX2NvbnZl
cnRfZWxlbWVudF9nbF9zZXRfY2FwczsKLSB9Ci0gCi0gc3RhdGljIHZvaWQKLUBAIC0xMjMsMTAg
KzEyNCwxNCBAQCBnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50X2luaXQgKEdzdEdMQ29sb3JD
b252ZXJ0RWxlbWVudCAqIGNvbnZlcnQpCi0gfQotIAotIHN0YXRpYyBnYm9vbGVhbgotLWdzdF9n
bF9jb2xvcl9jb252ZXJ0X2VsZW1lbnRfc2V0X2NhcHMgKEdzdEJhc2VUcmFuc2Zvcm0gKiBidCwK
LStnc3RfZ2xfY29sb3JfY29udmVydF9lbGVtZW50X2dsX3NldF9jYXBzIChHc3RHTEJhc2VGaWx0
ZXIgKiBiYXNlX2ZpbHRlciwKLSAgICAgR3N0Q2FwcyAqIGluX2NhcHMsIEdzdENhcHMgKiBvdXRf
Y2FwcykKLSB7Ci0tICBHc3RHTENvbG9yQ29udmVydEVsZW1lbnQgKmNvbnZlcnQgPSBHU1RfR0xf
Q09MT1JfQ09OVkVSVF9FTEVNRU5UIChidCk7Ci0rICBHc3RHTENvbG9yQ29udmVydEVsZW1lbnQg
KmNvbnZlcnQgPQotKyAgICAgIEdTVF9HTF9DT0xPUl9DT05WRVJUX0VMRU1FTlQgKGJhc2VfZmls
dGVyKTsKLSsKLSsgIGlmICghY29udmVydC0+Y29udmVydCAmJiBiYXNlX2ZpbHRlci0+Y29udGV4
dCkKLSsgICAgY29udmVydC0+Y29udmVydCA9IGdzdF9nbF9jb2xvcl9jb252ZXJ0X25ldyAoYmFz
ZV9maWx0ZXItPmNvbnRleHQpOwotIAotICAgaWYgKCFnc3RfZ2xfY29sb3JfY29udmVydF9zZXRf
Y2FwcyAoY29udmVydC0+Y29udmVydCwgaW5fY2Fwcywgb3V0X2NhcHMpKQotICAgICByZXR1cm4g
RkFMU0U7Ci1AQCAtMTQxLDE2ICsxNDYsMjEgQEAgZ3N0X2dsX2NvbG9yX2NvbnZlcnRfZWxlbWVu
dF90cmFuc2Zvcm1fY2FwcyAoR3N0QmFzZVRyYW5zZm9ybSAqIGJ0LAotICAgR3N0R0xDb2xvckNv
bnZlcnRFbGVtZW50ICpjb252ZXJ0ID0gR1NUX0dMX0NPTE9SX0NPTlZFUlRfRUxFTUVOVCAoYnQp
OwotICAgR3N0R0xCYXNlRmlsdGVyICpiYXNlX2ZpbHRlciA9IEdTVF9HTF9CQVNFX0ZJTFRFUiAo
YnQpOwotICAgR3N0R0xDb250ZXh0ICpjb250ZXh0OwotKyAgR3N0Q2FwcyAqcmV0OwotIAotICAg
aWYgKGJhc2VfZmlsdGVyLT5kaXNwbGF5ICYmICFnc3RfZ2xfYmFzZV9maWx0ZXJfZmluZF9nbF9j
b250ZXh0IChiYXNlX2ZpbHRlcikpCi0gICAgIHJldHVybiBOVUxMOwotIAotLSAgY29udGV4dCA9
IEdTVF9HTF9CQVNFX0ZJTFRFUiAoYnQpLT5jb250ZXh0OwotKyAgY29udGV4dCA9IGdzdF9nbF9i
YXNlX2ZpbHRlcl9nZXRfZ2xfY29udGV4dCAoYmFzZV9maWx0ZXIpOwotIAotICAgaWYgKCFjb252
ZXJ0LT5jb252ZXJ0ICYmIGNvbnRleHQpCi0gICAgIGNvbnZlcnQtPmNvbnZlcnQgPSBnc3RfZ2xf
Y29sb3JfY29udmVydF9uZXcgKGNvbnRleHQpOwotIAotLSAgcmV0dXJuIGdzdF9nbF9jb2xvcl9j
b252ZXJ0X3RyYW5zZm9ybV9jYXBzIChjb250ZXh0LCBkaXJlY3Rpb24sIGNhcHMsIGZpbHRlcik7
Ci0rICByZXQgPSBnc3RfZ2xfY29sb3JfY29udmVydF90cmFuc2Zvcm1fY2FwcyAoY29udGV4dCwg
ZGlyZWN0aW9uLCBjYXBzLCBmaWx0ZXIpOwotKwotKyAgZ3N0X2NsZWFyX29iamVjdCAoJmNvbnRl
eHQpOwotKwotKyAgcmV0dXJuIHJldDsKLSB9Ci0gCi0gc3RhdGljIGdib29sZWFuCi1kaWZmIC0t
Z2l0IGEvZ3N0LWxpYnMvZ3N0L2dsL2dzdGdsYmFzZWZpbHRlci5jIGIvZ3N0LWxpYnMvZ3N0L2ds
L2dzdGdsYmFzZWZpbHRlci5jCi1pbmRleCAxNTVkOTAwMmIuLjFkNTdiNDA1MSAxMDA2NDQKLS0t
LSBhL2dzdC1saWJzL2dzdC9nbC9nc3RnbGJhc2VmaWx0ZXIuYwotKysrIGIvZ3N0LWxpYnMvZ3N0
L2dsL2dzdGdsYmFzZWZpbHRlci5jCi1AQCAtNDgsNiArNDgsOSBAQCBzdHJ1Y3QgX0dzdEdMQmFz
ZUZpbHRlclByaXZhdGUKLSAKLSAgIGdib29sZWFuIGdsX3Jlc3VsdDsKLSAgIGdib29sZWFuIGds
X3N0YXJ0ZWQ7Ci0rCi0rICBHUmVjTXV0ZXggY29udGV4dF9sb2NrOwotKyAgZ2Jvb2xlYW4gbmV3
X2dsX2NvbnRleHQ7Ci0gfTsKLSAKLSAvKiBQcm9wZXJ0aWVzICovCi1AQCAtOTEsNiArOTQsOCBA
QCBzdGF0aWMgdm9pZCBnc3RfZ2xfYmFzZV9maWx0ZXJfZ2xfc3RvcCAoR3N0R0xDb250ZXh0ICog
Y29udGV4dCwgZ3BvaW50ZXIgZGF0YSk7Ci0gc3RhdGljIGdib29sZWFuIGdzdF9nbF9iYXNlX2Zp
bHRlcl9kZWZhdWx0X2dsX3N0YXJ0IChHc3RHTEJhc2VGaWx0ZXIgKiBmaWx0ZXIpOwotIHN0YXRp
YyB2b2lkIGdzdF9nbF9iYXNlX2ZpbHRlcl9kZWZhdWx0X2dsX3N0b3AgKEdzdEdMQmFzZUZpbHRl
ciAqIGZpbHRlcik7Ci0gCi0rc3RhdGljIGdib29sZWFuIGdzdF9nbF9iYXNlX2ZpbHRlcl9maW5k
X2dsX2NvbnRleHRfdW5sb2NrZWQgKEdzdEdMQmFzZUZpbHRlciAqCi0rICAgIGZpbHRlcik7Ci0g
c3RhdGljIHZvaWQKLSBnc3RfZ2xfYmFzZV9maWx0ZXJfY2xhc3NfaW5pdCAoR3N0R0xCYXNlRmls
dGVyQ2xhc3MgKiBrbGFzcykKLSB7Ci1AQCAtMTMxLDYgKzEzNiw4IEBAIGdzdF9nbF9iYXNlX2Zp
bHRlcl9pbml0IChHc3RHTEJhc2VGaWx0ZXIgKiBmaWx0ZXIpCi0gICBnc3RfYmFzZV90cmFuc2Zv
cm1fc2V0X3Fvc19lbmFibGVkIChHU1RfQkFTRV9UUkFOU0ZPUk0gKGZpbHRlciksIFRSVUUpOwot
IAotICAgZmlsdGVyLT5wcml2ID0gZ3N0X2dsX2Jhc2VfZmlsdGVyX2dldF9pbnN0YW5jZV9wcml2
YXRlIChmaWx0ZXIpOwotKwotKyAgZ19yZWNfbXV0ZXhfaW5pdCAoJmZpbHRlci0+cHJpdi0+Y29u
dGV4dF9sb2NrKTsKLSB9Ci0gCi0gc3RhdGljIHZvaWQKLUBAIC0xNDEsNiArMTQ4LDggQEAgZ3N0
X2dsX2Jhc2VfZmlsdGVyX2ZpbmFsaXplIChHT2JqZWN0ICogb2JqZWN0KQotICAgZ3N0X2NhcHNf
cmVwbGFjZSAoJmZpbHRlci0+aW5fY2FwcywgTlVMTCk7Ci0gICBnc3RfY2Fwc19yZXBsYWNlICgm
ZmlsdGVyLT5vdXRfY2FwcywgTlVMTCk7Ci0gCi0rICBnX3JlY19tdXRleF9jbGVhciAoJmZpbHRl
ci0+cHJpdi0+Y29udGV4dF9sb2NrKTsKLSsKLSAgIEdfT0JKRUNUX0NMQVNTIChwYXJlbnRfY2xh
c3MpLT5maW5hbGl6ZSAob2JqZWN0KTsKLSB9Ci0gCi1AQCAtMTcxLDMyICsxODAsMzAgQEAgZ3N0
X2dsX2Jhc2VfZmlsdGVyX2dldF9wcm9wZXJ0eSAoR09iamVjdCAqIG9iamVjdCwgZ3VpbnQgcHJv
cF9pZCwKLSAgIH0KLSB9Ci0gCi0tc3RhdGljIHZvaWQKLS1nc3RfZ2xfYmFzZV9maWx0ZXJfc2V0
X2NvbnRleHQgKEdzdEVsZW1lbnQgKiBlbGVtZW50LCBHc3RDb250ZXh0ICogY29udGV4dCkKLS17
Ci0tICBHc3RHTEJhc2VGaWx0ZXIgKmZpbHRlciA9IEdTVF9HTF9CQVNFX0ZJTFRFUiAoZWxlbWVu
dCk7Ci0tICBHc3RHTEJhc2VGaWx0ZXJDbGFzcyAqZmlsdGVyX2NsYXNzID0gR1NUX0dMX0JBU0Vf
RklMVEVSX0dFVF9DTEFTUyAoZmlsdGVyKTsKLS0KLS0gIEdTVF9PQkpFQ1RfTE9DSyAoZmlsdGVy
KTsKLS0gIGdzdF9nbF9oYW5kbGVfc2V0X2NvbnRleHQgKGVsZW1lbnQsIGNvbnRleHQsICZmaWx0
ZXItPmRpc3BsYXksCi0tICAgICAgJmZpbHRlci0+cHJpdi0+b3RoZXJfY29udGV4dCk7Ci0tICBp
ZiAoZmlsdGVyLT5kaXNwbGF5KQotLSAgICBnc3RfZ2xfZGlzcGxheV9maWx0ZXJfZ2xfYXBpIChm
aWx0ZXItPmRpc3BsYXksCi0tICAgICAgICBmaWx0ZXJfY2xhc3MtPnN1cHBvcnRlZF9nbF9hcGkp
OwotLSAgR1NUX09CSkVDVF9VTkxPQ0sgKGZpbHRlcik7Ci0tCi0tICBHU1RfRUxFTUVOVF9DTEFT
UyAocGFyZW50X2NsYXNzKS0+c2V0X2NvbnRleHQgKGVsZW1lbnQsIGNvbnRleHQpOwotLX0KLS0K
LSBzdGF0aWMgZ2Jvb2xlYW4KLSBfZmluZF9sb2NhbF9nbF9jb250ZXh0IChHc3RHTEJhc2VGaWx0
ZXIgKiBmaWx0ZXIpCi0gewotKyAgR3N0R0xDb250ZXh0ICpjb250ZXh0ID0gZmlsdGVyLT5jb250
ZXh0OwotKwotICAgaWYgKGdzdF9nbF9xdWVyeV9sb2NhbF9nbF9jb250ZXh0IChHU1RfRUxFTUVO
VCAoZmlsdGVyKSwgR1NUX1BBRF9TUkMsCi0tICAgICAgICAgICZmaWx0ZXItPmNvbnRleHQpKQot
LSAgICByZXR1cm4gVFJVRTsKLSsgICAgICAgICAgJmNvbnRleHQpKSB7Ci0rICAgIGlmIChjb250
ZXh0LT5kaXNwbGF5ID09IGZpbHRlci0+ZGlzcGxheSkgewotKyAgICAgIGZpbHRlci0+Y29udGV4
dCA9IGNvbnRleHQ7Ci0rICAgICAgcmV0dXJuIFRSVUU7Ci0rICAgIH0KLSsgICAgaWYgKGNvbnRl
eHQgIT0gZmlsdGVyLT5jb250ZXh0KQotKyAgICAgIGdzdF9jbGVhcl9vYmplY3QgKCZjb250ZXh0
KTsKLSsgIH0KLSsgIGNvbnRleHQgPSBmaWx0ZXItPmNvbnRleHQ7Ci0gICBpZiAoZ3N0X2dsX3F1
ZXJ5X2xvY2FsX2dsX2NvbnRleHQgKEdTVF9FTEVNRU5UIChmaWx0ZXIpLCBHU1RfUEFEX1NJTkss
Ci0tICAgICAgICAgICZmaWx0ZXItPmNvbnRleHQpKQotLSAgICByZXR1cm4gVFJVRTsKLSsgICAg
ICAgICAgJmNvbnRleHQpKSB7Ci0rICAgIGlmIChjb250ZXh0LT5kaXNwbGF5ID09IGZpbHRlci0+
ZGlzcGxheSkgewotKyAgICAgIGZpbHRlci0+Y29udGV4dCA9IGNvbnRleHQ7Ci0rICAgICAgcmV0
dXJuIFRSVUU7Ci0rICAgIH0KLSsgICAgaWYgKGNvbnRleHQgIT0gZmlsdGVyLT5jb250ZXh0KQot
KyAgICAgIGdzdF9jbGVhcl9vYmplY3QgKCZjb250ZXh0KTsKLSsgIH0KLSAgIHJldHVybiBGQUxT
RTsKLSB9Ci0gCi1AQCAtMjExLDcgKzIxOCw5IEBAIGdzdF9nbF9iYXNlX2ZpbHRlcl9xdWVyeSAo
R3N0QmFzZVRyYW5zZm9ybSAqIHRyYW5zLCBHc3RQYWREaXJlY3Rpb24gZGlyZWN0aW9uLAotICAg
ICB7Ci0gICAgICAgaWYgKGRpcmVjdGlvbiA9PSBHU1RfUEFEX1NJTksKLSAgICAgICAgICAgJiYg
Z3N0X2Jhc2VfdHJhbnNmb3JtX2lzX3Bhc3N0aHJvdWdoICh0cmFucykpIHsKLSsgICAgICAgIGdf
cmVjX211dGV4X2xvY2sgKCZmaWx0ZXItPnByaXYtPmNvbnRleHRfbG9jayk7Ci0gICAgICAgICBf
ZmluZF9sb2NhbF9nbF9jb250ZXh0IChmaWx0ZXIpOwotKyAgICAgICAgZ19yZWNfbXV0ZXhfdW5s
b2NrICgmZmlsdGVyLT5wcml2LT5jb250ZXh0X2xvY2spOwotIAotICAgICAgICAgcmV0dXJuIGdz
dF9wYWRfcGVlcl9xdWVyeSAoR1NUX0JBU0VfVFJBTlNGT1JNX1NSQ19QQUQgKHRyYW5zKSwgcXVl
cnkpOwotICAgICAgIH0KLUBAIC0yMjAsMTAgKzIyOSwxMCBAQCBnc3RfZ2xfYmFzZV9maWx0ZXJf
cXVlcnkgKEdzdEJhc2VUcmFuc2Zvcm0gKiB0cmFucywgR3N0UGFkRGlyZWN0aW9uIGRpcmVjdGlv
biwKLSAgICAgY2FzZSBHU1RfUVVFUllfQ09OVEVYVDoKLSAgICAgewotICAgICAgIGdib29sZWFu
IHJldDsKLS0gICAgICBHU1RfT0JKRUNUX0xPQ0sgKGZpbHRlcik7Ci0rICAgICAgZ19yZWNfbXV0
ZXhfbG9jayAoJmZpbHRlci0+cHJpdi0+Y29udGV4dF9sb2NrKTsKLSAgICAgICByZXQgPSBnc3Rf
Z2xfaGFuZGxlX2NvbnRleHRfcXVlcnkgKChHc3RFbGVtZW50ICopIGZpbHRlciwgcXVlcnksCi0g
ICAgICAgICAgIGZpbHRlci0+ZGlzcGxheSwgZmlsdGVyLT5jb250ZXh0LCBmaWx0ZXItPnByaXYt
Pm90aGVyX2NvbnRleHQpOwotLSAgICAgIEdTVF9PQkpFQ1RfVU5MT0NLIChmaWx0ZXIpOwotKyAg
ICAgIGdfcmVjX211dGV4X3VubG9jayAoJmZpbHRlci0+cHJpdi0+Y29udGV4dF9sb2NrKTsKLSAg
ICAgICBpZiAocmV0KQotICAgICAgICAgcmV0dXJuIFRSVUU7Ci0gICAgICAgYnJlYWs7Ci1AQCAt
MjM5LDE3ICsyNDgsMTQgQEAgZ3N0X2dsX2Jhc2VfZmlsdGVyX3F1ZXJ5IChHc3RCYXNlVHJhbnNm
b3JtICogdHJhbnMsIEdzdFBhZERpcmVjdGlvbiBkaXJlY3Rpb24sCi0gc3RhdGljIHZvaWQKLSBn
c3RfZ2xfYmFzZV9maWx0ZXJfcmVzZXQgKEdzdEdMQmFzZUZpbHRlciAqIGZpbHRlcikKLSB7Ci0t
ICBHc3RHTEJhc2VGaWx0ZXJDbGFzcyAqZmlsdGVyX2NsYXNzID0gR1NUX0dMX0JBU0VfRklMVEVS
X0dFVF9DTEFTUyAoZmlsdGVyKTsKLS0KLSsgIGdfcmVjX211dGV4X2xvY2sgKCZmaWx0ZXItPnBy
aXYtPmNvbnRleHRfbG9jayk7Ci0gICBpZiAoZmlsdGVyLT5jb250ZXh0KSB7Ci0tICAgIGlmIChm
aWx0ZXJfY2xhc3MtPmdsX3N0b3AgIT0gTlVMTCkgewotLSAgICAgIGdzdF9nbF9jb250ZXh0X3Ro
cmVhZF9hZGQgKGZpbHRlci0+Y29udGV4dCwgZ3N0X2dsX2Jhc2VfZmlsdGVyX2dsX3N0b3AsCi0t
ICAgICAgICAgIGZpbHRlcik7Ci0tICAgIH0KLS0KLSsgICAgZ3N0X2dsX2NvbnRleHRfdGhyZWFk
X2FkZCAoZmlsdGVyLT5jb250ZXh0LCBnc3RfZ2xfYmFzZV9maWx0ZXJfZ2xfc3RvcCwKLSsgICAg
ICAgIGZpbHRlcik7Ci0gICAgIGdzdF9vYmplY3RfdW5yZWYgKGZpbHRlci0+Y29udGV4dCk7Ci0g
ICAgIGZpbHRlci0+Y29udGV4dCA9IE5VTEw7Ci0gICB9Ci0rICBnX3JlY19tdXRleF91bmxvY2sg
KCZmaWx0ZXItPnByaXYtPmNvbnRleHRfbG9jayk7Ci0gfQotIAotIHN0YXRpYyBnYm9vbGVhbgot
QEAgLTI4MCw2ICsyODYsNyBAQCBnc3RfZ2xfYmFzZV9maWx0ZXJfZ2xfc3RhcnQgKEdzdEdMQ29u
dGV4dCAqIGNvbnRleHQsIGdwb2ludGVyIGRhdGEpCi0gICBHc3RHTEJhc2VGaWx0ZXIgKmZpbHRl
ciA9IEdTVF9HTF9CQVNFX0ZJTFRFUiAoZGF0YSk7Ci0gICBHc3RHTEJhc2VGaWx0ZXJDbGFzcyAq
ZmlsdGVyX2NsYXNzID0gR1NUX0dMX0JBU0VfRklMVEVSX0dFVF9DTEFTUyAoZmlsdGVyKTsKLSAK
LSsgIEdTVF9JTkZPX09CSkVDVCAoZmlsdGVyLCAic3RhcnRpbmciKTsKLSAgIGdzdF9nbF9pbnNl
cnRfZGVidWdfbWFya2VyIChmaWx0ZXItPmNvbnRleHQsCi0gICAgICAgInN0YXJ0aW5nIGVsZW1l
bnQgJXMiLCBHU1RfT0JKRUNUX05BTUUgKGZpbHRlcikpOwotIAotQEAgLTI5Nyw2ICszMDQsNyBA
QCBnc3RfZ2xfYmFzZV9maWx0ZXJfZ2xfc3RvcCAoR3N0R0xDb250ZXh0ICogY29udGV4dCwgZ3Bv
aW50ZXIgZGF0YSkKLSAgIEdzdEdMQmFzZUZpbHRlciAqZmlsdGVyID0gR1NUX0dMX0JBU0VfRklM
VEVSIChkYXRhKTsKLSAgIEdzdEdMQmFzZUZpbHRlckNsYXNzICpmaWx0ZXJfY2xhc3MgPSBHU1Rf
R0xfQkFTRV9GSUxURVJfR0VUX0NMQVNTIChmaWx0ZXIpOwotIAotKyAgR1NUX0lORk9fT0JKRUNU
IChmaWx0ZXIsICJzdG9wcGluZyIpOwotICAgZ3N0X2dsX2luc2VydF9kZWJ1Z19tYXJrZXIgKGZp
bHRlci0+Y29udGV4dCwKLSAgICAgICAic3RvcHBpbmcgZWxlbWVudCAlcyIsIEdTVF9PQkpFQ1Rf
TkFNRSAoZmlsdGVyKSk7Ci0gCi1AQCAtMzExLDMzICszMTksNTMgQEAgX2dsX3NldF9jYXBzIChH
c3RHTENvbnRleHQgKiBjb250ZXh0LCBHc3RHTEJhc2VGaWx0ZXIgKiBmaWx0ZXIpCi0gewotICAg
R3N0R0xCYXNlRmlsdGVyQ2xhc3MgKmZpbHRlcl9jbGFzcyA9IEdTVF9HTF9CQVNFX0ZJTFRFUl9H
RVRfQ0xBU1MgKGZpbHRlcik7Ci0gCi0rICBHU1RfSU5GT19PQkpFQ1QgKGZpbHRlciwgInNldCBH
TCBjYXBzIGlucHV0ICUiIEdTVF9QVFJfRk9STUFULAotKyAgICAgIGZpbHRlci0+aW5fY2Fwcyk7
Ci0rICBHU1RfSU5GT19PQkpFQ1QgKGZpbHRlciwgInNldCBHTCBjYXBzIG91dHB1dCAlIiBHU1Rf
UFRSX0ZPUk1BVCwKLSsgICAgICBmaWx0ZXItPm91dF9jYXBzKTsKLSsKLSAgIGlmIChmaWx0ZXJf
Y2xhc3MtPmdsX3NldF9jYXBzKQotICAgICBmaWx0ZXItPnByaXYtPmdsX3Jlc3VsdCA9Ci0gICAg
ICAgICBmaWx0ZXJfY2xhc3MtPmdsX3NldF9jYXBzIChmaWx0ZXIsIGZpbHRlci0+aW5fY2Fwcywg
ZmlsdGVyLT5vdXRfY2Fwcyk7Ci0gfQotIAotIHN0YXRpYyBnYm9vbGVhbgotLWdzdF9nbF9iYXNl
X2ZpbHRlcl9kZWNpZGVfYWxsb2NhdGlvbiAoR3N0QmFzZVRyYW5zZm9ybSAqIHRyYW5zLAotLSAg
ICBHc3RRdWVyeSAqIHF1ZXJ5KQotK2dsX3NldF9jYXBzX3VubG9ja2VkIChHc3RHTEJhc2VGaWx0
ZXIgKiBmaWx0ZXIpCi0gewotLSAgR3N0R0xCYXNlRmlsdGVyICpmaWx0ZXIgPSBHU1RfR0xfQkFT
RV9GSUxURVIgKHRyYW5zKTsKLSAgIEdzdEdMQmFzZUZpbHRlckNsYXNzICpmaWx0ZXJfY2xhc3Mg
PSBHU1RfR0xfQkFTRV9GSUxURVJfR0VUX0NMQVNTIChmaWx0ZXIpOwotIAotLSAgaWYgKCFnc3Rf
Z2xfYmFzZV9maWx0ZXJfZmluZF9nbF9jb250ZXh0IChmaWx0ZXIpKQotLSAgICByZXR1cm4gRkFM
U0U7Ci0tCi0gICBpZiAoZmlsdGVyX2NsYXNzLT5nbF9zZXRfY2FwcykgewotICAgICBnc3RfZ2xf
Y29udGV4dF90aHJlYWRfYWRkIChmaWx0ZXItPmNvbnRleHQsCi0gICAgICAgICAoR3N0R0xDb250
ZXh0VGhyZWFkRnVuYykgX2dsX3NldF9jYXBzLCBmaWx0ZXIpOwotLSAgICBpZiAoIWZpbHRlci0+
cHJpdi0+Z2xfcmVzdWx0KQotLSAgICAgIGdvdG8gZXJyb3I7Ci0rICAgIHJldHVybiBmaWx0ZXIt
PnByaXYtPmdsX3Jlc3VsdDsKLSAgIH0KLSAKLSsgIHJldHVybiBUUlVFOwotK30KLSsKLStzdGF0
aWMgZ2Jvb2xlYW4KLStnc3RfZ2xfYmFzZV9maWx0ZXJfZGVjaWRlX2FsbG9jYXRpb24gKEdzdEJh
c2VUcmFuc2Zvcm0gKiB0cmFucywKLSsgICAgR3N0UXVlcnkgKiBxdWVyeSkKLSt7Ci0rICBHc3RH
TEJhc2VGaWx0ZXIgKmZpbHRlciA9IEdTVF9HTF9CQVNFX0ZJTFRFUiAodHJhbnMpOwotKwotKyAg
Z19yZWNfbXV0ZXhfbG9jayAoJmZpbHRlci0+cHJpdi0+Y29udGV4dF9sb2NrKTsKLSsgIGlmICgh
Z3N0X2dsX2Jhc2VfZmlsdGVyX2ZpbmRfZ2xfY29udGV4dF91bmxvY2tlZCAoZmlsdGVyKSkgewot
KyAgICBnX3JlY19tdXRleF91bmxvY2sgKCZmaWx0ZXItPnByaXYtPmNvbnRleHRfbG9jayk7Ci0r
ICAgIHJldHVybiBGQUxTRTsKLSsgIH0KLSsKLSsgIGlmICghZ2xfc2V0X2NhcHNfdW5sb2NrZWQg
KGZpbHRlcikpCi0rICAgIGdvdG8gZXJyb3I7Ci0rCi0rICBnX3JlY19tdXRleF91bmxvY2sgKCZm
aWx0ZXItPnByaXYtPmNvbnRleHRfbG9jayk7Ci0rCi0gICByZXR1cm4gR1NUX0JBU0VfVFJBTlNG
T1JNX0NMQVNTIChwYXJlbnRfY2xhc3MpLT5kZWNpZGVfYWxsb2NhdGlvbiAodHJhbnMsCi0gICAg
ICAgcXVlcnkpOwotIAotIGVycm9yOgotICAgewotKyAgICBnX3JlY19tdXRleF91bmxvY2sgKCZm
aWx0ZXItPnByaXYtPmNvbnRleHRfbG9jayk7Ci0gICAgIEdTVF9FTEVNRU5UX0VSUk9SICh0cmFu
cywgTElCUkFSWSwgSU5JVCwKLSAgICAgICAgICgiU3ViY2xhc3MgZmFpbGVkIHRvIGluaXRpYWxp
emUuIiksIChOVUxMKSk7Ci0gICAgIHJldHVybiBGQUxTRTsKLUBAIC0zODksNiArNDE3LDcgQEAg
Z3N0X2dsX2Jhc2VfZmlsdGVyX2NoYW5nZV9zdGF0ZSAoR3N0RWxlbWVudCAqIGVsZW1lbnQsCi0g
Ci0gICBzd2l0Y2ggKHRyYW5zaXRpb24pIHsKLSAgICAgY2FzZSBHU1RfU1RBVEVfQ0hBTkdFX1JF
QURZX1RPX05VTEw6Ci0rICAgICAgZ19yZWNfbXV0ZXhfbG9jayAoJmZpbHRlci0+cHJpdi0+Y29u
dGV4dF9sb2NrKTsKLSAgICAgICBpZiAoZmlsdGVyLT5wcml2LT5vdGhlcl9jb250ZXh0KSB7Ci0g
ICAgICAgICBnc3Rfb2JqZWN0X3VucmVmIChmaWx0ZXItPnByaXYtPm90aGVyX2NvbnRleHQpOwot
ICAgICAgICAgZmlsdGVyLT5wcml2LT5vdGhlcl9jb250ZXh0ID0gTlVMTDsKLUBAIC00MDMsNiAr
NDMyLDcgQEAgZ3N0X2dsX2Jhc2VfZmlsdGVyX2NoYW5nZV9zdGF0ZSAoR3N0RWxlbWVudCAqIGVs
ZW1lbnQsCi0gICAgICAgICBnc3Rfb2JqZWN0X3VucmVmIChmaWx0ZXItPmNvbnRleHQpOwotICAg
ICAgICAgZmlsdGVyLT5jb250ZXh0ID0gTlVMTDsKLSAgICAgICB9Ci0rICAgICAgZ19yZWNfbXV0
ZXhfdW5sb2NrICgmZmlsdGVyLT5wcml2LT5jb250ZXh0X2xvY2spOwotICAgICAgIGJyZWFrOwot
ICAgICBkZWZhdWx0OgotICAgICAgIGJyZWFrOwotQEAgLTQxMSwyMSArNDQxLDQ5IEBAIGdzdF9n
bF9iYXNlX2ZpbHRlcl9jaGFuZ2Vfc3RhdGUgKEdzdEVsZW1lbnQgKiBlbGVtZW50LAotICAgcmV0
dXJuIHJldDsKLSB9Ci0gCi0tLyoqCi0tICogZ3N0X2dsX2Jhc2VfZmlsdGVyX2ZpbmRfZ2xfY29u
dGV4dDoKLS0gKiBAZmlsdGVyOiBhICNHc3RHTEJhc2VGaWx0ZXIKLS0gKgotLSAqIFJldHVybnM6
IFdoZXRoZXIgYW4gT3BlbkdMIGNvbnRleHQgY291bGQgYmUgcmV0cmlldmVkIG9yIGNyZWF0ZWQg
c3VjY2Vzc2Z1bGx5Ci0tICoKLS0gKiBTaW5jZTogMS4xNgotLSAqLwotLWdib29sZWFuCi0tZ3N0
X2dsX2Jhc2VfZmlsdGVyX2ZpbmRfZ2xfY29udGV4dCAoR3N0R0xCYXNlRmlsdGVyICogZmlsdGVy
KQotK3N0YXRpYyB2b2lkCi0rZ3N0X2dsX2Jhc2VfZmlsdGVyX3NldF9jb250ZXh0IChHc3RFbGVt
ZW50ICogZWxlbWVudCwgR3N0Q29udGV4dCAqIGNvbnRleHQpCi0rewotKyAgR3N0R0xCYXNlRmls
dGVyICpmaWx0ZXIgPSBHU1RfR0xfQkFTRV9GSUxURVIgKGVsZW1lbnQpOwotKyAgR3N0R0xCYXNl
RmlsdGVyQ2xhc3MgKmZpbHRlcl9jbGFzcyA9IEdTVF9HTF9CQVNFX0ZJTFRFUl9HRVRfQ0xBU1Mg
KGZpbHRlcik7Ci0rICBHc3RHTERpc3BsYXkgKm9sZF9kaXNwbGF5LCAqbmV3X2Rpc3BsYXk7Ci0r
Ci0rICBnX3JlY19tdXRleF9sb2NrICgmZmlsdGVyLT5wcml2LT5jb250ZXh0X2xvY2spOwotKyAg
b2xkX2Rpc3BsYXkgPSBmaWx0ZXItPmRpc3BsYXkgPyBnc3Rfb2JqZWN0X3JlZiAoZmlsdGVyLT5k
aXNwbGF5KSA6IE5VTEw7Ci0rICBnc3RfZ2xfaGFuZGxlX3NldF9jb250ZXh0IChlbGVtZW50LCBj
b250ZXh0LCAmZmlsdGVyLT5kaXNwbGF5LAotKyAgICAgICZmaWx0ZXItPnByaXYtPm90aGVyX2Nv
bnRleHQpOwotKyAgaWYgKGZpbHRlci0+ZGlzcGxheSkKLSsgICAgZ3N0X2dsX2Rpc3BsYXlfZmls
dGVyX2dsX2FwaSAoZmlsdGVyLT5kaXNwbGF5LAotKyAgICAgICAgZmlsdGVyX2NsYXNzLT5zdXBw
b3J0ZWRfZ2xfYXBpKTsKLSsgIG5ld19kaXNwbGF5ID0gZmlsdGVyLT5kaXNwbGF5ID8gZ3N0X29i
amVjdF9yZWYgKGZpbHRlci0+ZGlzcGxheSkgOiBOVUxMOwotKwotKyAgaWYgKG9sZF9kaXNwbGF5
ICYmIG5ld19kaXNwbGF5KSB7Ci0rICAgIGlmIChvbGRfZGlzcGxheSAhPSBuZXdfZGlzcGxheSkg
ewotKyAgICAgIGdzdF9jbGVhcl9vYmplY3QgKCZmaWx0ZXItPmNvbnRleHQpOwotKyAgICAgIGlm
IChnc3RfZ2xfYmFzZV9maWx0ZXJfZmluZF9nbF9jb250ZXh0X3VubG9ja2VkIChmaWx0ZXIpKSB7
Ci0rICAgICAgICBpZiAoZmlsdGVyLT5pbl9jYXBzICYmIGZpbHRlci0+b3V0X2NhcHMpIHsKLSsg
ICAgICAgICAgZ2xfc2V0X2NhcHNfdW5sb2NrZWQgKGZpbHRlcik7Ci0rICAgICAgICB9Ci0rICAg
ICAgfQotKyAgICB9Ci0rICB9Ci0rICBnX3JlY19tdXRleF91bmxvY2sgKCZmaWx0ZXItPnByaXYt
PmNvbnRleHRfbG9jayk7Ci0rICBnc3RfY2xlYXJfb2JqZWN0ICgmb2xkX2Rpc3BsYXkpOwotKyAg
Z3N0X2NsZWFyX29iamVjdCAoJm5ld19kaXNwbGF5KTsKLSsKLSsgIEdTVF9FTEVNRU5UX0NMQVNT
IChwYXJlbnRfY2xhc3MpLT5zZXRfY29udGV4dCAoZWxlbWVudCwgY29udGV4dCk7Ci0rfQotKwot
K3N0YXRpYyBnYm9vbGVhbgotK2dzdF9nbF9iYXNlX2ZpbHRlcl9maW5kX2dsX2NvbnRleHRfdW5s
b2NrZWQgKEdzdEdMQmFzZUZpbHRlciAqIGZpbHRlcikKLSB7Ci0gICBHc3RHTEJhc2VGaWx0ZXJD
bGFzcyAqZmlsdGVyX2NsYXNzID0gR1NUX0dMX0JBU0VfRklMVEVSX0dFVF9DTEFTUyAoZmlsdGVy
KTsKLSAgIEdFcnJvciAqZXJyb3IgPSBOVUxMOwotICAgZ2Jvb2xlYW4gbmV3X2NvbnRleHQgPSBG
QUxTRTsKLSAKLSsgIEdTVF9ERUJVR19PQkpFQ1QgKGZpbHRlciwgImF0dGVtcHRpbmcgdG8gZmlu
ZCBhbiBPcGVuR0wgY29udGV4dCwgZXhpc3RpbmcgJSIKLSsgICAgICBHU1RfUFRSX0ZPUk1BVCwg
ZmlsdGVyLT5jb250ZXh0KTsKLSsKLSAgIGlmICghZmlsdGVyLT5jb250ZXh0KQotICAgICBuZXdf
Y29udGV4dCA9IFRSVUU7Ci0gCi1AQCAtNDQ5LDYgKzUwNyw4IEBAIGdzdF9nbF9iYXNlX2ZpbHRl
cl9maW5kX2dsX2NvbnRleHQgKEdzdEdMQmFzZUZpbHRlciAqIGZpbHRlcikKLSAgICAgfSB3aGls
ZSAoIWdzdF9nbF9kaXNwbGF5X2FkZF9jb250ZXh0IChmaWx0ZXItPmRpc3BsYXksIGZpbHRlci0+
Y29udGV4dCkpOwotICAgICBHU1RfT0JKRUNUX1VOTE9DSyAoZmlsdGVyLT5kaXNwbGF5KTsKLSAg
IH0KLSsgIEdTVF9JTkZPX09CSkVDVCAoZmlsdGVyLCAiZm91bmQgT3BlbkdMIGNvbnRleHQgJSIg
R1NUX1BUUl9GT1JNQVQsCi0rICAgICAgZmlsdGVyLT5jb250ZXh0KTsKLSAKLSAgIGlmIChuZXdf
Y29udGV4dCB8fCAhZmlsdGVyLT5wcml2LT5nbF9zdGFydGVkKSB7Ci0gICAgIGlmIChmaWx0ZXIt
PnByaXYtPmdsX3N0YXJ0ZWQpCi1AQCAtNDk5LDMgKzU1OSw0MiBAQCBlcnJvcjoKLSAgICAgcmV0
dXJuIEZBTFNFOwotICAgfQotIH0KLSsKLSsvKioKLSsgKiBnc3RfZ2xfYmFzZV9maWx0ZXJfZmlu
ZF9nbF9jb250ZXh0OgotKyAqIEBmaWx0ZXI6IGEgI0dzdEdMQmFzZUZpbHRlcgotKyAqCi0rICog
UmV0dXJuczogV2hldGhlciBhbiBPcGVuR0wgY29udGV4dCBjb3VsZCBiZSByZXRyaWV2ZWQgb3Ig
Y3JlYXRlZCBzdWNjZXNzZnVsbHkKLSsgKgotKyAqIFNpbmNlOiAxLjE2Ci0rICovCi0rZ2Jvb2xl
YW4KLStnc3RfZ2xfYmFzZV9maWx0ZXJfZmluZF9nbF9jb250ZXh0IChHc3RHTEJhc2VGaWx0ZXIg
KiBmaWx0ZXIpCi0rewotKyAgZ2Jvb2xlYW4gcmV0OwotKyAgZ19yZWNfbXV0ZXhfbG9jayAoJmZp
bHRlci0+cHJpdi0+Y29udGV4dF9sb2NrKTsKLSsgIHJldCA9IGdzdF9nbF9iYXNlX2ZpbHRlcl9m
aW5kX2dsX2NvbnRleHRfdW5sb2NrZWQgKGZpbHRlcik7Ci0rICBnX3JlY19tdXRleF91bmxvY2sg
KCZmaWx0ZXItPnByaXYtPmNvbnRleHRfbG9jayk7Ci0rICByZXR1cm4gcmV0OwotK30KLSsKLSsv
KioKLSsgKiBnc3RfZ2xfYmFzZV9maWx0ZXJfZ2V0X2dsX2NvbnRleHQ6Ci0rICogQGZpbHRlcjog
YSAjR3N0R0xCYXNlRmlsdGVyCi0rICoKLSsgKiBSZXR1cm5zOiAodHJhbnNmZXIgZnVsbCkgKG51
bGxhYmxlKTogdGhlICNHc3RHTENvbnRleHQgZm91bmQgYnkgQGZpbHRlcgotKyAqCi0rICogU2lu
Y2U6IDEuMTgKLSsgKi8KLStHc3RHTENvbnRleHQgKgotK2dzdF9nbF9iYXNlX2ZpbHRlcl9nZXRf
Z2xfY29udGV4dCAoR3N0R0xCYXNlRmlsdGVyICogZmlsdGVyKQotK3sKLSsgIEdzdEdMQ29udGV4
dCAqcmV0OwotKwotKyAgZ19yZXR1cm5fdmFsX2lmX2ZhaWwgKEdTVF9JU19HTF9CQVNFX0ZJTFRF
UiAoZmlsdGVyKSwgTlVMTCk7Ci0rCi0rICBnX3JlY19tdXRleF9sb2NrICgmZmlsdGVyLT5wcml2
LT5jb250ZXh0X2xvY2spOwotKyAgcmV0ID0gZmlsdGVyLT5jb250ZXh0ID8gZ3N0X29iamVjdF9y
ZWYgKGZpbHRlci0+Y29udGV4dCkgOiBOVUxMOwotKyAgZ19yZWNfbXV0ZXhfdW5sb2NrICgmZmls
dGVyLT5wcml2LT5jb250ZXh0X2xvY2spOwotKyAgcmV0dXJuIHJldDsKLSt9Ci1kaWZmIC0tZ2l0
IGEvZ3N0LWxpYnMvZ3N0L2dsL2dzdGdsYmFzZWZpbHRlci5oIGIvZ3N0LWxpYnMvZ3N0L2dsL2dz
dGdsYmFzZWZpbHRlci5oCi1pbmRleCAxNTM2MWFkZTEuLjU3ZmIzZGY1YiAxMDA2NDQKLS0tLSBh
L2dzdC1saWJzL2dzdC9nbC9nc3RnbGJhc2VmaWx0ZXIuaAotKysrIGIvZ3N0LWxpYnMvZ3N0L2ds
L2dzdGdsYmFzZWZpbHRlci5oCi1AQCAtNzAsNiArNzAsOCBAQCBzdHJ1Y3QgX0dzdEdMQmFzZUZp
bHRlcgotICAqIEBnbF9zdGFydDogY2FsbGVkIGluIHRoZSBHTCB0aHJlYWQgdG8gc2V0dXAgdGhl
IGVsZW1lbnQgR0wgc3RhdGUuCi0gICogQGdsX3N0b3A6IGNhbGxlZCBpbiB0aGUgR0wgdGhyZWFk
IHRvIHNldHVwIHRoZSBlbGVtZW50IEdMIHN0YXRlLgotICAqIEBnbF9zZXRfY2FwczogY2FsbGVk
IGluIHRoZSBHTCB0aHJlYWQgd2hlbiBjYXBzIGFyZSBzZXQgb24gQGZpbHRlci4KLSsgKiAgICAg
ICAgICAgICAgIE5vdGU6IHRoaXMgd2lsbCBhbHNvIGJlIGNhbGxlZCB3aGVuIGNoYW5naW5nIE9w
ZW5HTCBjb250ZXh0cwotKyAqICAgICAgICAgICAgICAgd2hlcmUgI0dzdEJhc2VUcmFuc2Zvcm06
OnNldF9jYXBzIG1heSBub3QuCi0gICoKLSAgKiBUaGUgYmFzZSBjbGFzcyBmb3IgR1N0cmVhbWVy
IEdMIEZpbHRlci4KLSAgKi8KLUBAIC05MCw2ICs5Miw4IEBAIHN0cnVjdCBfR3N0R0xCYXNlRmls
dGVyQ2xhc3MKLSAKLSBHU1RfR0xfQVBJCi0gZ2Jvb2xlYW4gICAgICAgIGdzdF9nbF9iYXNlX2Zp
bHRlcl9maW5kX2dsX2NvbnRleHQgICAgICAgICAgKEdzdEdMQmFzZUZpbHRlciAqIGZpbHRlcik7
Ci0rR1NUX0dMX0FQSQotK0dzdEdMQ29udGV4dCAqICBnc3RfZ2xfYmFzZV9maWx0ZXJfZ2V0X2ds
X2NvbnRleHQgICAgICAgICAgIChHc3RHTEJhc2VGaWx0ZXIgKiBmaWx0ZXIpOwotIAotIEdfRU5E
X0RFQ0xTCi0gCi1kaWZmIC0tZ2l0IGEvdGVzdHMvY2hlY2svZWxlbWVudHMvZ2xmaWx0ZXIuYyBi
L3Rlc3RzL2NoZWNrL2VsZW1lbnRzL2dsZmlsdGVyLmMKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1p
bmRleCAwMDAwMDAwMDAuLjBkOGQ2NzY4NwotLS0tIC9kZXYvbnVsbAotKysrIGIvdGVzdHMvY2hl
Y2svZWxlbWVudHMvZ2xmaWx0ZXIuYwotQEAgLTAsMCArMSwxMzEgQEAKLSsvKiBHU3RyZWFtZXIK
LSsgKgotKyAqIENvcHlyaWdodCAoQykgMjAxOSBNYXR0aGV3IFdhdGVycyA8bWF0dGhld0BjZW50
cmljdWxhci5jb20+Ci0rICoKLSsgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91
IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0rICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJt
cyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKLSsgKiBMaWNlbnNlIGFzIHB1Ymxp
c2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKLSsgKiB2ZXJzaW9u
IDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u
Ci0rICoKLSsgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBp
dCB3aWxsIGJlIHVzZWZ1bCwKLSsgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQg
ZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgotKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCi0rICogTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0rICoKLSsgKiBZb3Ugc2hv
dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YwotKyAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8g
dGhlCi0rICogRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwg
RmlmdGggRmxvb3IsCi0rICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCi0rICovCi0rCi0r
Ci0rI2lmZGVmIEhBVkVfQ09ORklHX0gKLSsjaW5jbHVkZSAiY29uZmlnLmgiCi0rI2VuZGlmCi0r
Ci0rI2luY2x1ZGUgPGdzdC9nc3QuaD4KLSsjaW5jbHVkZSA8Z3N0L2dsL2dsLmg+Ci0rI2luY2x1
ZGUgPGdzdC9jaGVjay9nc3RjaGVjay5oPgotKyNpbmNsdWRlIDxnc3QvY2hlY2svZ3N0aGFybmVz
cy5oPgotKwotK3N0YXRpYyB2b2lkCi0rcmVwbGFjZV9kaXNwbGF5IChHc3RIYXJuZXNzICogaCkK
LSt7Ci0rICBHc3RDb250ZXh0ICpuZXdfY29udGV4dDsKLSsgIEdzdEdMRGlzcGxheSAqbmV3X2Rp
c3BsYXk7Ci0rICBHc3RHTENvbnRleHQgKmV4cGVjdGVkLCAqZ2xfY29udGV4dDsKLSsgIEdzdEJ1
ZmZlciAqYnVmOwotKwotKyAgLyogcmVwbGFjZXMgdGhlIEdzdEdMRGlzcGxheSB1c2VkIGJ5IEBo
IHdpdGggdmVyaWZpY2F0aW9uICovCi0rCi0rICBidWYgPSBnc3RfaGFybmVzc19jcmVhdGVfYnVm
ZmVyIChoLCA0KTsKLSsgIGJ1ZiA9IGdzdF9oYXJuZXNzX3B1c2hfYW5kX3B1bGwgKGgsIGJ1Zik7
Ci0rICBmYWlsX3VubGVzcyAoYnVmICE9IE5VTEwpOwotKyAgZ3N0X2NsZWFyX2J1ZmZlciAoJmJ1
Zik7Ci0rCi0rICBnX29iamVjdF9nZXQgKEdfT0JKRUNUIChoLT5lbGVtZW50KSwgImNvbnRleHQi
LCAmZ2xfY29udGV4dCwgTlVMTCk7Ci0rICBmYWlsX3VubGVzcyAoZ2xfY29udGV4dCAhPSBOVUxM
KTsKLSsgIGdzdF9jbGVhcl9vYmplY3QgKCZnbF9jb250ZXh0KTsKLSsKLSsgIG5ld19kaXNwbGF5
ID0gZ3N0X2dsX2Rpc3BsYXlfbmV3ICgpOwotKyAgZmFpbF91bmxlc3MgKGdzdF9nbF9kaXNwbGF5
X2NyZWF0ZV9jb250ZXh0IChuZXdfZGlzcGxheSwgTlVMTCwgJmV4cGVjdGVkLAotKyAgICAgICAg
ICBOVUxMKSk7Ci0rICBmYWlsX3VubGVzcyAoZXhwZWN0ZWQgIT0gTlVMTCk7Ci0rICBnc3RfZ2xf
ZGlzcGxheV9hZGRfY29udGV4dCAobmV3X2Rpc3BsYXksIGV4cGVjdGVkKTsKLSsKLSsgIG5ld19j
b250ZXh0ID0gZ3N0X2NvbnRleHRfbmV3IChHU1RfR0xfRElTUExBWV9DT05URVhUX1RZUEUsIFRS
VUUpOwotKyAgZ3N0X2NvbnRleHRfc2V0X2dsX2Rpc3BsYXkgKG5ld19jb250ZXh0LCBuZXdfZGlz
cGxheSk7Ci0rCi0rICBnc3RfZWxlbWVudF9zZXRfY29udGV4dCAoaC0+ZWxlbWVudCwgbmV3X2Nv
bnRleHQpOwotKyAgZ3N0X2NvbnRleHRfdW5yZWYgKG5ld19jb250ZXh0KTsKLSsgIG5ld19jb250
ZXh0ID0gTlVMTDsKLSsKLSsgIGJ1ZiA9IGdzdF9oYXJuZXNzX2NyZWF0ZV9idWZmZXIgKGgsIDQp
OwotKyAgYnVmID0gZ3N0X2hhcm5lc3NfcHVzaF9hbmRfcHVsbCAoaCwgYnVmKTsKLSsgIGZhaWxf
dW5sZXNzIChidWYgIT0gTlVMTCk7Ci0rICBnc3RfY2xlYXJfYnVmZmVyICgmYnVmKTsKLSsKLSsg
IGdfb2JqZWN0X2dldCAoR19PQkpFQ1QgKGgtPmVsZW1lbnQpLCAiY29udGV4dCIsICZnbF9jb250
ZXh0LCBOVUxMKTsKLSsgIGZhaWxfdW5sZXNzIChnbF9jb250ZXh0ICE9IE5VTEwpOwotKwotKyAg
ZmFpbF91bmxlc3MgKGdsX2NvbnRleHQgPT0gZXhwZWN0ZWQpOwotKyAgZmFpbF91bmxlc3MgKG5l
d19kaXNwbGF5ID09IGdsX2NvbnRleHQtPmRpc3BsYXkpOwotKwotKyAgZ3N0X29iamVjdF91bnJl
ZiAoZXhwZWN0ZWQpOwotKyAgZ3N0X29iamVjdF91bnJlZiAoZ2xfY29udGV4dCk7Ci0rICBnc3Rf
b2JqZWN0X3VucmVmIChuZXdfZGlzcGxheSk7Ci0rfQotKwotK0dTVF9TVEFSVF9URVNUICh0ZXN0
X2dsdXBsb2FkX2Rpc3BsYXlfcmVwbGFjZSkKLSt7Ci0rICBHc3RIYXJuZXNzICp1cGxvYWQ7Ci0r
Ci0rICB1cGxvYWQgPSBnc3RfaGFybmVzc19uZXcgKCJnbHVwbG9hZCIpOwotKyAgZ3N0X2hhcm5l
c3Nfc2V0X2NhcHNfc3RyICh1cGxvYWQsICJ2aWRlby94LXJhdyxmb3JtYXQ9UkdCQSx3aWR0aD0x
LGhlaWdodD0xIiwKLSsgICAgICAidmlkZW8veC1yYXcobWVtb3J5OkdMTWVtb3J5KSxmb3JtYXQ9
UkdCQSx3aWR0aD0xLGhlaWdodD0xIik7Ci0rCi0rICByZXBsYWNlX2Rpc3BsYXkgKHVwbG9hZCk7
Ci0rCi0rICBnc3RfaGFybmVzc190ZWFyZG93biAodXBsb2FkKTsKLSt9Ci0rCi0rR1NUX0VORF9U
RVNUOwotKwotK0dTVF9TVEFSVF9URVNUICh0ZXN0X2dsY29sb3Jjb252ZXJ0X2Rpc3BsYXlfcmVw
bGFjZSkKLSt7Ci0rICBHc3RIYXJuZXNzICpjb252ZXJ0OwotKwotKyAgY29udmVydCA9IGdzdF9o
YXJuZXNzX25ldyAoImdsY29sb3Jjb252ZXJ0Iik7Ci0rICBnc3RfaGFybmVzc19zZXRfY2Fwc19z
dHIgKGNvbnZlcnQsCi0rICAgICAgInZpZGVvL3gtcmF3KG1lbW9yeTpHTE1lbW9yeSksZm9ybWF0
PVJHQkEsd2lkdGg9MSxoZWlnaHQ9MSx0ZXh0dXJlLXRhcmdldD0yRCIsCi0rICAgICAgInZpZGVv
L3gtcmF3KG1lbW9yeTpHTE1lbW9yeSksZm9ybWF0PVJHQkEsd2lkdGg9MSxoZWlnaHQ9MSx0ZXh0
dXJlLXRhcmdldD0yRCIpOwotKwotKyAgcmVwbGFjZV9kaXNwbGF5IChjb252ZXJ0KTsKLSsKLSsg
IGdzdF9oYXJuZXNzX3RlYXJkb3duIChjb252ZXJ0KTsKLSt9Ci0rCi0rR1NUX0VORF9URVNUOwot
KwotK3N0YXRpYyBTdWl0ZSAqCi0rZ2xmaWx0ZXJfc3VpdGUgKHZvaWQpCi0rewotKyAgU3VpdGUg
KnMgPSBzdWl0ZV9jcmVhdGUgKCJnbGZpbHRlciIpOwotKyAgVENhc2UgKnRjID0gdGNhc2VfY3Jl
YXRlICgiZ2VuZXJhbCIpOwotKwotKyAgdGNhc2VfYWRkX3Rlc3QgKHRjLCB0ZXN0X2dsdXBsb2Fk
X2Rpc3BsYXlfcmVwbGFjZSk7Ci0rICB0Y2FzZV9hZGRfdGVzdCAodGMsIHRlc3RfZ2xjb2xvcmNv
bnZlcnRfZGlzcGxheV9yZXBsYWNlKTsKLSsgIHN1aXRlX2FkZF90Y2FzZSAocywgdGMpOwotKwot
KyAgcmV0dXJuIHM7Ci0rfQotKwotK2ludAotK21haW4gKGludCBhcmdjLCBjaGFyICoqYXJndikK
LSt7Ci0rICBTdWl0ZSAqczsKLSsgIGdfc2V0ZW52ICgiR1NUX0dMX1hJTklUVEhSRUFEUyIsICIx
IiwgVFJVRSk7Ci0rICBnc3RfY2hlY2tfaW5pdCAoJmFyZ2MsICZhcmd2KTsKLSsgIHMgPSBnbGZp
bHRlcl9zdWl0ZSAoKTsKLSsgIHJldHVybiBnc3RfY2hlY2tfcnVuX3N1aXRlIChzLCAiZ2xmaWx0
ZXIiLCBfX0ZJTEVfXyk7Ci0rfQotZGlmZiAtLWdpdCBhL3Rlc3RzL2NoZWNrL21lc29uLmJ1aWxk
IGIvdGVzdHMvY2hlY2svbWVzb24uYnVpbGQKLWluZGV4IDMxZmI2N2YxNS4uYzNmNWJkZDlhIDEw
MDY0NAotLS0tIGEvdGVzdHMvY2hlY2svbWVzb24uYnVpbGQKLSsrKyBiL3Rlc3RzL2NoZWNrL21l
c29uLmJ1aWxkCi1AQCAtOTksNiArOTksNyBAQCBpZiBidWlsZF9nc3RnbCBhbmQgaG9zdF9tYWNo
aW5lLnN5c3RlbSgpICE9ICd3aW5kb3dzJwotICAgICBbICdlbGVtZW50cy9nbGltYWdlc2luay5j
Jywgbm90IGJ1aWxkX2dzdGdsLCBbZ3N0Z2xfZGVwXV0sCi0gICAgIFsgJ2VsZW1lbnRzL2dsYmlu
LmMnLCBub3QgYnVpbGRfZ3N0Z2wgXSwKLSAgICAgWyAncGlwZWxpbmVzL2dsLWxhdW5jaC1saW5l
cy5jJywgbm90IGJ1aWxkX2dzdGdsIF0sCi0rICAgIFsgJ2VsZW1lbnRzL2dsZmlsdGVyLmMnLCBu
b3QgYnVpbGRfZ3N0Z2wsIFtnc3RnbF9kZXBdXSwKLSAgIF0KLSBlbmRpZgotIAotLS0gCi0yLjI1
LjQKLQpkaWZmIC0tZ2l0IGEvVG9vbHMvYnVpbGRzdHJlYW0vcGF0Y2hlcy9nc3QtcGx1Z2lucy1n
b29kLXF0ZGVtdXgtU3BlY2lmeS1SRURJUkVDVC1pbmZvcm1hdGlvbi1pbi1lcnJvci1tZXNzYWcu
cGF0Y2ggYi9Ub29scy9idWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtcXRkZW11
eC1TcGVjaWZ5LVJFRElSRUNULWluZm9ybWF0aW9uLWluLWVycm9yLW1lc3NhZy5wYXRjaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTg3M2E3ZTMwYTM1YjQ4ODRlNDM1YTQzNTY3NDMw
MGJjZDEwOGIyOS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Ub29scy9idWlsZHN0cmVhbS9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtcXRkZW11eC1TcGVj
aWZ5LVJFRElSRUNULWluZm9ybWF0aW9uLWluLWVycm9yLW1lc3NhZy5wYXRjaAorKysgL2Rldi9u
dWxsCkBAIC0xLDE0MCArMCwwIEBACi1Gcm9tIGE1NTU3NmQxZmQyNWM3ZDY3NjYxNjMwZmM5NDM2
NzkwODgwMmE0OTYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBUaGliYXVsdCBTYXVu
aWVyIDx0c2F1bmllckBpZ2FsaWEuY29tPgotRGF0ZTogVHVlLCAzIFNlcCAyMDE5IDE2OjQ2OjMw
IC0wNDAwCi1TdWJqZWN0OiBbUEFUQ0hdIHF0ZGVtdXg6IFNwZWNpZnkgUkVESVJFQ1QgaW5mb3Jt
YXRpb24gaW4gZXJyb3IgbWVzc2FnZQotCi1UaGVyZSBhcmUgaW4gdGhlIHdpbGQgKG1wNCkgc3Ry
ZWFtcyB0aGF0IGJhc2ljYWxseSBjb250YWluIG5vIHRyYWNrcwotYnV0IGRvIGhhdmUgYSByZWRp
cmVjdCBpbmZvWzBdLCBpbiB3aGljaCBjYXNlLCB3ZSB3b24ndCBiZSBhYmxlCi10byBleHBvc2Ug
YW55IHBhZCAodGhlcmUgYXJlIG5vIHRyYWNrcykgc28gd2UgY2FuJ3QgcG9zdCBhbnl0aGluZyBi
dXQKLWFuIGVycm9yIG9uIHRoZSBidXMsIGFzOgotCi0tIGl0IGNhbid0IHNlbmQgRU9TIGRvd25z
dHJlYW0sIGl0IGhhcyBubyBwYWQsCi0tIHBvc3RpbmcgYW4gRU9TIG1lc3NhZ2Ugd2lsbCBiZSB1
c2VsZXNzIGFzIFBBVVNFRCBzdGF0ZSBjYW4ndCBiZQotICByZWFjaGVkIGFuZCB0aGVyZSBpcyBu
byBzaW5rIGluIHRoZSBwaXBlbGluZSBtZWFuaW5nIEdzdEJpbiB3aWxsCi0gIHNpbXBseSBpZ25v
cmUgaXQKLQotVGhlIGFwcHJvYWNoIGhlcmUgaXMgdG8gdG8gYWRkIGRldGFpbHMgdG8gdGhlIEVS
Uk9SIG1lc3NhZ2Ugd2l0aCBhCi1gcmVkaXJlY3QtbG9jYXRpb25gIGZpZWxkIHdoaWNoIGVsZW1l
bnRzIGxpa2UgcGxheWJpbiBoYW5kbGUgYW5kIHVzZSByaWdodAotYXdheS4KLQotWzBdOiBodHRw
Oi8vbW92aWV0cmFpbGVycy5hcHBsZS5jb20vbW92aWVzL3BhcmFtb3VudC90ZXJtaW5hdG9yLWRh
cmstZmF0ZS90ZXJtaW5hdG9yLWRhcmstZmF0ZS10cmFpbGVyLTJfNDgwcC5tb3YKLS0tLQotIGdz
dC9pc29tcDQvcXRkZW11eC5jIHwgMzIgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0K
LSBnc3QvaXNvbXA0L3F0ZGVtdXguaCB8ICAyICstCi0gMiBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNl
cnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvZ3N0L2lzb21wNC9xdGRl
bXV4LmMgYi9nc3QvaXNvbXA0L3F0ZGVtdXguYwotaW5kZXggYmE0ZDQzNjQ4Li44YTZiZjA4Yzcg
MTAwNjQ0Ci0tLS0gYS9nc3QvaXNvbXA0L3F0ZGVtdXguYwotKysrIGIvZ3N0L2lzb21wNC9xdGRl
bXV4LmMKLUBAIC01MjYsNiArNTI2LDcgQEAgR1NUX1NUQVRJQ19QQURfVEVNUExBVEUgKCJzdWJ0
aXRsZV8ldSIsCi0gR19ERUZJTkVfVFlQRSAoR3N0UVREZW11eCwgZ3N0X3F0ZGVtdXgsIEdTVF9U
WVBFX0VMRU1FTlQpOwotIAotIHN0YXRpYyB2b2lkIGdzdF9xdGRlbXV4X2Rpc3Bvc2UgKEdPYmpl
Y3QgKiBvYmplY3QpOwotK3N0YXRpYyB2b2lkIGdzdF9xdGRlbXV4X2ZpbmFsaXplIChHT2JqZWN0
ICogb2JqZWN0KTsKLSAKLSBzdGF0aWMgZ3VpbnQzMgotIGdzdF9xdGRlbXV4X2ZpbmRfaW5kZXhf
bGluZWFyIChHc3RRVERlbXV4ICogcXRkZW11eCwgUXREZW11eFN0cmVhbSAqIHN0ciwKLUBAIC02
MjgsNiArNjI5LDcgQEAgZ3N0X3F0ZGVtdXhfY2xhc3NfaW5pdCAoR3N0UVREZW11eENsYXNzICog
a2xhc3MpCi0gICBwYXJlbnRfY2xhc3MgPSBnX3R5cGVfY2xhc3NfcGVla19wYXJlbnQgKGtsYXNz
KTsKLSAKLSAgIGdvYmplY3RfY2xhc3MtPmRpc3Bvc2UgPSBnc3RfcXRkZW11eF9kaXNwb3NlOwot
KyAgZ29iamVjdF9jbGFzcy0+ZmluYWxpemUgPSBnc3RfcXRkZW11eF9maW5hbGl6ZTsKLSAKLSAg
IGdzdGVsZW1lbnRfY2xhc3MtPmNoYW5nZV9zdGF0ZSA9IEdTVF9ERUJVR19GVU5DUFRSIChnc3Rf
cXRkZW11eF9jaGFuZ2Vfc3RhdGUpOwotICNpZiAwCi1AQCAtNjgzLDYgKzY4NSwxNiBAQCBnc3Rf
cXRkZW11eF9pbml0IChHc3RRVERlbXV4ICogcXRkZW11eCkKLSAgIGdzdF9xdGRlbXV4X3Jlc2V0
IChxdGRlbXV4LCBUUlVFKTsKLSB9Ci0gCi0rc3RhdGljIHZvaWQKLStnc3RfcXRkZW11eF9maW5h
bGl6ZSAoR09iamVjdCAqIG9iamVjdCkKLSt7Ci0rICBHc3RRVERlbXV4ICpxdGRlbXV4ID0gR1NU
X1FUREVNVVggKG9iamVjdCk7Ci0rCi0rICBnX2ZyZWUgKHF0ZGVtdXgtPnJlZGlyZWN0X2xvY2F0
aW9uKTsKLSsKLSsgIEdfT0JKRUNUX0NMQVNTIChwYXJlbnRfY2xhc3MpLT5maW5hbGl6ZSAob2Jq
ZWN0KTsKLSt9Ci0rCi0gc3RhdGljIHZvaWQKLSBnc3RfcXRkZW11eF9kaXNwb3NlIChHT2JqZWN0
ICogb2JqZWN0KQotIHsKLUBAIC03MTEsMTAgKzcyMywxMSBAQCBnc3RfcXRkZW11eF9kaXNwb3Nl
IChHT2JqZWN0ICogb2JqZWN0KQotIHN0YXRpYyB2b2lkCi0gZ3N0X3F0ZGVtdXhfcG9zdF9ub19w
bGF5YWJsZV9zdHJlYW1fZXJyb3IgKEdzdFFURGVtdXggKiBxdGRlbXV4KQotIHsKLS0gIGlmIChx
dGRlbXV4LT5wb3N0ZWRfcmVkaXJlY3QpIHsKLS0gICAgR1NUX0VMRU1FTlRfRVJST1IgKHF0ZGVt
dXgsIFNUUkVBTSwgREVNVVgsCi0rICBpZiAocXRkZW11eC0+cmVkaXJlY3RfbG9jYXRpb24pIHsK
LSsgICAgR1NUX0VMRU1FTlRfRVJST1JfV0lUSF9ERVRBSUxTIChxdGRlbXV4LCBTVFJFQU0sIERF
TVVYLAotICAgICAgICAgKF8oIlRoaXMgZmlsZSBjb250YWlucyBubyBwbGF5YWJsZSBzdHJlYW1z
LiIpKSwKLS0gICAgICAgICgibm8ga25vd24gc3RyZWFtcyBmb3VuZCwgYSByZWRpcmVjdCBtZXNz
YWdlIGhhcyBiZWVuIHBvc3RlZCIpKTsKLSsgICAgICAgICgibm8ga25vd24gc3RyZWFtcyBmb3Vu
ZCwgYSByZWRpcmVjdCBtZXNzYWdlIGhhcyBiZWVuIHBvc3RlZCIpLAotKyAgICAgICAgKCJyZWRp
cmVjdC1sb2NhdGlvbiIsIEdfVFlQRV9TVFJJTkcsIHF0ZGVtdXgtPnJlZGlyZWN0X2xvY2F0aW9u
LCBOVUxMKSk7Ci0gICB9IGVsc2UgewotICAgICBHU1RfRUxFTUVOVF9FUlJPUiAocXRkZW11eCwg
U1RSRUFNLCBERU1VWCwKLSAgICAgICAgIChfKCJUaGlzIGZpbGUgY29udGFpbnMgbm8gcGxheWFi
bGUgc3RyZWFtcy4iKSksCi1AQCAtMjExMSw3ICsyMTI0LDcgQEAgZ3N0X3F0ZGVtdXhfcmVzZXQg
KEdzdFFURGVtdXggKiBxdGRlbXV4LCBnYm9vbGVhbiBoYXJkKQotICAgICBxdGRlbXV4LT5uZWVk
ZWRieXRlcyA9IDE2OwotICAgICBxdGRlbXV4LT50b2Ryb3AgPSAwOwotICAgICBxdGRlbXV4LT5w
dWxsYmFzZWQgPSBGQUxTRTsKLS0gICAgcXRkZW11eC0+cG9zdGVkX3JlZGlyZWN0ID0gRkFMU0U7
Ci0rICAgIGdfY2xlYXJfcG9pbnRlciAoJnF0ZGVtdXgtPnJlZGlyZWN0X2xvY2F0aW9uLCBnX2Zy
ZWUpOwotICAgICBxdGRlbXV4LT5maXJzdF9tZGF0ID0gLTE7Ci0gICAgIHF0ZGVtdXgtPmhlYWRl
cl9zaXplID0gMDsKLSAgICAgcXRkZW11eC0+bWRhdG9mZnNldCA9IC0xOwotQEAgLTYwNjUsMTEg
KzYwNzgsMTIgQEAgZ3N0X3F0ZGVtdXhfZGVjb3JhdGVfYW5kX3B1c2hfYnVmZmVyIChHc3RRVERl
bXV4ICogcXRkZW11eCwKLSAgICAgZ3N0X2J1ZmZlcl91bm1hcCAoYnVmLCAmbWFwKTsKLSAgICAg
aWYgKHVybCAhPSBOVUxMICYmIHN0cmxlbiAodXJsKSAhPSAwKSB7Ci0gICAgICAgLyogd2UgaGF2
ZSBSVFNQIHJlZGlyZWN0IG5vdyAqLwotKyAgICAgIGdfZnJlZSAocXRkZW11eC0+cmVkaXJlY3Rf
bG9jYXRpb24pOwotKyAgICAgIHF0ZGVtdXgtPnJlZGlyZWN0X2xvY2F0aW9uID0gZ19zdHJkdXAg
KHVybCk7Ci0gICAgICAgZ3N0X2VsZW1lbnRfcG9zdF9tZXNzYWdlIChHU1RfRUxFTUVOVF9DQVNU
IChxdGRlbXV4KSwKLSAgICAgICAgICAgZ3N0X21lc3NhZ2VfbmV3X2VsZW1lbnQgKEdTVF9PQkpF
Q1RfQ0FTVCAocXRkZW11eCksCi0gICAgICAgICAgICAgICBnc3Rfc3RydWN0dXJlX25ldyAoInJl
ZGlyZWN0IiwKLSAgICAgICAgICAgICAgICAgICAibmV3LWxvY2F0aW9uIiwgR19UWVBFX1NUUklO
RywgdXJsLCBOVUxMKSkpOwotLSAgICAgIHF0ZGVtdXgtPnBvc3RlZF9yZWRpcmVjdCA9IFRSVUU7
Ci0gICAgIH0gZWxzZSB7Ci0gICAgICAgR1NUX1dBUk5JTkdfT0JKRUNUIChxdGRlbXV4LCAiUmVk
aXJlY3QgVVJJIG9mIHN0cmVhbSBpcyBlbXB0eSwgbm90ICIKLSAgICAgICAgICAgInBvc3Rpbmci
KTsKLUBAIC0xMjkxNSw3ICsxMjkyOSw5IEBAIHF0ZGVtdXhfZXhwb3NlX3N0cmVhbXMgKEdzdFFU
RGVtdXggKiBxdGRlbXV4KQotICAgICAgICAgICAgICJuZXctbG9jYXRpb24iLCBHX1RZUEVfU1RS
SU5HLAotICAgICAgICAgICAgIFFUREVNVVhfTlRIX1NUUkVBTSAocXRkZW11eCwgMCktPnJlZGly
ZWN0X3VyaSwgTlVMTCkpOwotICAgICBnc3RfZWxlbWVudF9wb3N0X21lc3NhZ2UgKEdTVF9FTEVN
RU5UX0NBU1QgKHF0ZGVtdXgpLCBtKTsKLS0gICAgcXRkZW11eC0+cG9zdGVkX3JlZGlyZWN0ID0g
VFJVRTsKLSsgICAgZ19mcmVlIChxdGRlbXV4LT5yZWRpcmVjdF9sb2NhdGlvbik7Ci0rICAgIHF0
ZGVtdXgtPnJlZGlyZWN0X2xvY2F0aW9uID0KLSsgICAgICAgIGdfc3RyZHVwIChRVERFTVVYX05U
SF9TVFJFQU0gKHF0ZGVtdXgsIDApLT5yZWRpcmVjdF91cmkpOwotICAgfQotIAotICAgZ19wdHJf
YXJyYXlfZm9yZWFjaCAocXRkZW11eC0+YWN0aXZlX3N0cmVhbXMsCi1AQCAtMTM5NjgsOSArMTM5
ODQsMTEgQEAgcXRkZW11eF9wcm9jZXNzX3JlZGlyZWN0cyAoR3N0UVREZW11eCAqIHF0ZGVtdXgs
IEdMaXN0ICogcmVmZXJlbmNlcykKLSAgIGdfbGlzdF9mcmVlIChyZWZlcmVuY2VzKTsKLSAKLSAg
IEdTVF9JTkZPX09CSkVDVCAocXRkZW11eCwgInBvc3RpbmcgcmVkaXJlY3QgbWVzc2FnZTogJSIg
R1NUX1BUUl9GT1JNQVQsIHMpOwotKyAgZ19mcmVlIChxdGRlbXV4LT5yZWRpcmVjdF9sb2NhdGlv
bik7Ci0rICBxdGRlbXV4LT5yZWRpcmVjdF9sb2NhdGlvbiA9Ci0rICAgICAgZ19zdHJkdXAgKGdz
dF9zdHJ1Y3R1cmVfZ2V0X3N0cmluZyAocywgIm5ldy1sb2NhdGlvbiIpKTsKLSAgIG1zZyA9IGdz
dF9tZXNzYWdlX25ld19lbGVtZW50IChHU1RfT0JKRUNUX0NBU1QgKHF0ZGVtdXgpLCBzKTsKLSAg
IGdzdF9lbGVtZW50X3Bvc3RfbWVzc2FnZSAoR1NUX0VMRU1FTlRfQ0FTVCAocXRkZW11eCksIG1z
Zyk7Ci0tICBxdGRlbXV4LT5wb3N0ZWRfcmVkaXJlY3QgPSBUUlVFOwotIH0KLSAKLSAvKiBsb29r
IGZvciByZWRpcmVjdCBub2RlcywgY29sbGVjdCBhbGwgcmVkaXJlY3QgaW5mb3JtYXRpb24gYW5k
Ci1kaWZmIC0tZ2l0IGEvZ3N0L2lzb21wNC9xdGRlbXV4LmggYi9nc3QvaXNvbXA0L3F0ZGVtdXgu
aAotaW5kZXggZjk3MzFiMmI4Li5jNWU4NWM3MjEgMTAwNjQ0Ci0tLS0gYS9nc3QvaXNvbXA0L3F0
ZGVtdXguaAotKysrIGIvZ3N0L2lzb21wNC9xdGRlbXV4LmgKLUBAIC02OSw3ICs2OSw3IEBAIHN0
cnVjdCBfR3N0UVREZW11eCB7Ci0gICAvKiBUUlVFIGlmIHB1bGwtYmFzZWQgKi8KLSAgIGdib29s
ZWFuIHB1bGxiYXNlZDsKLSAKLS0gIGdib29sZWFuIHBvc3RlZF9yZWRpcmVjdDsKLSsgIGdjaGFy
ICpyZWRpcmVjdF9sb2NhdGlvbjsKLSAKLSAgIC8qIFByb3RlY3QgcGFkIGV4cG9zaW5nIGZyb20g
Zmx1c2ggZXZlbnQgKi8KLSAgIEdNdXRleCBleHBvc2VfbG9jazsKLS0tIAotMi4yMS4wCi0KZGlm
ZiAtLWdpdCBhL1Rvb2xzL2J1aWxkc3RyZWFtL3BhdGNoZXMvbGliYXYtMDAwMS1nc3RhdnZpZGRl
Yy1MaW1pdC1kZWZhdWx0LW51bWJlci1vZi1kZWNvZGVyLXRocmVhZHMucGF0Y2ggYi9Ub29scy9i
dWlsZHN0cmVhbS9wYXRjaGVzL2xpYmF2LTAwMDEtZ3N0YXZ2aWRkZWMtTGltaXQtZGVmYXVsdC1u
dW1iZXItb2YtZGVjb2Rlci10aHJlYWRzLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA1YTRhMGE0ZDllYWNiZTk4YmFkZGViMjExMGI0NjE2MzRlNDMwMzRiLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL2J1aWxkc3RyZWFtL3Bh
dGNoZXMvbGliYXYtMDAwMS1nc3RhdnZpZGRlYy1MaW1pdC1kZWZhdWx0LW51bWJlci1vZi1kZWNv
ZGVyLXRocmVhZHMucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0MiArMCwwIEBACi1Gcm9tIGI3
ZDQ1MGIxMTgzNGQwYTUxMGZkY2I2NjFjZTEwNTg2MDMzOGUyZDYgTW9uIFNlcCAxNyAwMDowMDow
MCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/QWxpY2lhPTIwQm95YT0yMEdhcmM9QzM9QURhPz0gPG50
cnJnY0BnbWFpbC5jb20+Ci1EYXRlOiBUaHUsIDE5IERlYyAyMDE5IDE3OjU4OjU2ICswMTAwCi1T
dWJqZWN0OiBbUEFUQ0hdIGdzdGF2dmlkZGVjOiBMaW1pdCBkZWZhdWx0IG51bWJlciBvZiBkZWNv
ZGVyIHRocmVhZHMKLQotV2hlbiB0aGUgYG1heC10aHJlYWRzYCBwcm9wZXJ0eSBpcyBub3Qgc3Bl
Y2lmaWVkLCBHU3RyZWFtZXIgZGVmYXVsdHMgdG8KLXRoZSBhbW91bnQgb2YgQ1BVIHRocmVhZHMg
aW4gdGhlIHN5c3RlbS4KLQotVGhlIG51bWJlciBvZiB0aHJlYWRzIHVzZWQgaW4gYXZkZWMgaGFz
IGEgZGlyZWN0IGltcGFjdCBvbiB0aGUgbGF0ZW5jeQotb2YgdGhlIGRlY29kZXIsIHdoaWNoIGlz
IG9mIGFzIG1hbnkgZnJhbWVzIGFzIHRocmVhZHMuIFRoZXJlZm9yZSwgYmlnCi1udW1iZXJzIG9m
IHRocmVhZHMgY2FuIG1ha2UgbGF0ZW5jeSBsZXZlbHMgdGhhdCBjYW4gYmUgcHJvYmxlbWF0aWMg
aW4KLXNvbWUgYXBwbGljYXRpb25zLgotCi1Gb3IgdGhpcyByZWFzb24sIGZmbXBlZyBlbWl0cyBh
IHdhcm5pbmcgd2hlbiBtb3JlIHRoYW4gMTYgdGhyZWFkcyBhcmUKLXJlcXVlc3RlZC4KLQotVGhp
cyBwYXRjaCBsaW1pdHMgdGhlIGRlZmF1bHQgbnVtYmVyIG9mIHRocmVhZHMgdG8gMTYuIFRoaXMg
YWZmZWN0cyBvbmx5Ci1jb21wdXRlcnMgd2l0aCBtb3JlIHRoYW4gMTYgQ1BVIHRocmVhZHMgd2hl
biB1c2luZyBhdnZpZGRlYyB3aXRob3V0Ci1zZXR0aW5nIGBtYXgtdGhyZWFkc2AuCi0KLUJhY2tw
b3J0IGZvciAxLjE2LjEuCi0tLS0KLSBleHQvbGliYXYvZ3N0YXZ2aWRkZWMuYyB8IDMgKystCi0g
MSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQotCi1kaWZmIC0t
Z2l0IGEvZXh0L2xpYmF2L2dzdGF2dmlkZGVjLmMgYi9leHQvbGliYXYvZ3N0YXZ2aWRkZWMuYwot
aW5kZXggNjUwZGUyZC4uZWRkZTkzNCAxMDA2NDQKLS0tLSBhL2V4dC9saWJhdi9nc3RhdnZpZGRl
Yy5jCi0rKysgYi9leHQvbGliYXYvZ3N0YXZ2aWRkZWMuYwotQEAgLTQ5NCw3ICs0OTQsOCBAQAot
IAotICAgICBpZiAoZmZtcGVnZGVjLT5tYXhfdGhyZWFkcyA9PSAwKSB7Ci0gICAgICAgaWYgKCEo
b2NsYXNzLT5pbl9wbHVnaW4tPmNhcGFiaWxpdGllcyAmIEFWX0NPREVDX0NBUF9BVVRPX1RIUkVB
RFMpKQotLSAgICAgICAgZmZtcGVnZGVjLT5jb250ZXh0LT50aHJlYWRfY291bnQgPSBnc3RfZmZt
cGVnX2F1dG9fbWF4X3RocmVhZHMgKCk7Ci0rICAgICAgICBmZm1wZWdkZWMtPmNvbnRleHQtPnRo
cmVhZF9jb3VudCA9Ci0rICAgICAgICAgICAgTUlOIChnc3RfZmZtcGVnX2F1dG9fbWF4X3RocmVh
ZHMgKCksIDE2KTsKLSAgICAgICBlbHNlCi0gICAgICAgICBmZm1wZWdkZWMtPmNvbnRleHQtPnRo
cmVhZF9jb3VudCA9IDA7Ci0gICAgIH0gZWxzZQotLS0gCi0yLjIzLjAKLQo=
</data>
<flag name="review"
          id="423711"
          type_id="1"
          status="+"
          setter="zan"
    />
          </attachment>
      

    </bug>

</bugzilla>