<?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>236505</bug_id>
          
          <creation_ts>2022-02-11 07:13:07 -0800</creation_ts>
          <short_desc>WebGL GPUP OpenGL context is not used even if WebGL via Metal is deselected</short_desc>
          <delta_ts>2022-03-01 06:33:29 -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>WebGL</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=236382</see_also>
          <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>
          
          <blocked>217211</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kimmo Kinnunen">kkinnunen</reporter>
          <assigned_to name="Kimmo Kinnunen">kkinnunen</assigned_to>
          <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jonlee</cc>
    
    <cc>kbr</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1840340</commentid>
    <comment_count>0</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-02-11 07:13:07 -0800</bug_when>
    <thetext>WebGL GPUP OpenGL context is not used even if WebGL via Metal is deselected

when useMetal attribute was added, it wasn&apos;t added to the serialisation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1840815</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-12 19:47:23 -0800</bug_when>
    <thetext>&lt;rdar://problem/88862936&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841037</commentid>
    <comment_count>2</comment_count>
      <attachid>451828</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-02-13 11:22:37 -0800</bug_when>
    <thetext>Created attachment 451828
wip</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841244</commentid>
    <comment_count>3</comment_count>
      <attachid>451900</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-02-14 07:23:51 -0800</bug_when>
    <thetext>Created attachment 451900
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1846595</commentid>
    <comment_count>4</comment_count>
      <attachid>453380</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-02-28 04:00:03 -0800</bug_when>
    <thetext>Created attachment 453380
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1846611</commentid>
    <comment_count>5</comment_count>
      <attachid>453385</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-02-28 05:35:43 -0800</bug_when>
    <thetext>Created attachment 453385
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1846694</commentid>
    <comment_count>6</comment_count>
      <attachid>453408</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-02-28 10:43:17 -0800</bug_when>
    <thetext>Created attachment 453408
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1846701</commentid>
    <comment_count>7</comment_count>
      <attachid>453408</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-02-28 10:48:15 -0800</bug_when>
    <thetext>Comment on attachment 453408
Patch

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

&gt; Source/WebCore/platform/graphics/GraphicsContextGLAttributes.h:80
&gt; +#if ENABLE(GPU_PROCESS)

Is there harm in leaving these functions in, even if !ENABLE(GPU_PROCESS)? I generally view #ifs as worse than leaving in unused functions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1846997</commentid>
    <comment_count>8</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-03-01 05:41:00 -0800</bug_when>
    <thetext>&gt; Is there harm in leaving these functions in, even if !ENABLE(GPU_PROCESS)? I generally view #ifs as worse than leaving in unused functions.

I think it&apos;s the project style to use the ifdefs?
The old code also had the ifdefs, as has other similar code.

I&apos;d like if the project moved to style with less ifdefs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847008</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-01 06:33:26 -0800</bug_when>
    <thetext>Committed r290643 (247916@main): &lt;https://commits.webkit.org/247916@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 453408.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>451828</attachid>
            <date>2022-02-13 11:22:37 -0800</date>
            <delta_ts>2022-02-14 07:23:47 -0800</delta_ts>
            <desc>wip</desc>
            <filename>bug-236505-20220213212235.patch</filename>
            <type>text/plain</type>
            <size>11895</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5NTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzFlMjU4YWU4M2U5YzVl
YWVmNDUzZTA2ZTlkMGQ1NmZhNTg1Yjk3Yi4uNjhlMjM1MjI2Njg3YzFkNzgwNDBhMTk0NGUxNzEz
ODA0ZDcxYTJmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAyLTEzICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgR1BVUCBP
cGVuR0wgY29udGV4dCBpcyBub3QgdXNlZCBldmVuIGlmIFdlYkdMIHZpYSBNZXRhbCBpcyBkZXNl
bGVjdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzY1MDUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBF
bmNvZGUsIGRlY29kZSBhbHNvIGB1c2VNZXRhbGAgcHJvcGVydHkuCisKKyAgICAgICAgVGVzdHM6
IHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi5odG1sCisgICAgICAgICAgICAgICB3ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZGVjb2RlKToKKwogMjAyMi0wMi0xMSAg
S2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgogCiAgICAgICAgIEludHJvZHVj
ZSBhIFJlbW90ZU1lZGlhU2FtcGxlUHJveHkgdG8gcmVwcmVzZW50IGNhcHR1cmVkIHZpZGVvIGZy
YW1lcyB1c2VkIGluIE1lZGlhIFN0cmVhbXMgYW5kIHByZXNlbnQgaW4gR1BVUApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0xBdHRy
aWJ1dGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRl
eHRHTEF0dHJpYnV0ZXMuaAppbmRleCBmMDYxM2NlYjNlZDIwMTllZjBjNDdiMmYzMTljYTZhNjZk
MGU4MzYyLi4wZjA2MmRhNTJlOGUxMDVkNWU3MGNkZjI1OGJkODM4YmU1M2YxZjQ5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTEF0
dHJpYnV0ZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHRHTEF0dHJpYnV0ZXMuaApAQCAtNzcsMTAgKzc3LDggQEAgc3RydWN0IEdyYXBoaWNz
Q29udGV4dEdMQXR0cmlidXRlcyB7CiAgICAgfQogCiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQot
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIEVuY29kZXI+Ci0gICAgdm9pZCBlbmNvZGUoRW5jb2RlciYp
IGNvbnN0OwotICAgIHRlbXBsYXRlPHR5cGVuYW1lIERlY29kZXI+Ci0gICAgc3RhdGljIHN0ZDo6
b3B0aW9uYWw8R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzPiBkZWNvZGUoRGVjb2RlciYpOwor
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIEVuY29kZXI+IHZvaWQgZW5jb2RlKEVuY29kZXImKSBjb25z
dDsKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBEZWNvZGVyPiBzdGF0aWMgc3RkOjpvcHRpb25hbDxH
cmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM+IGRlY29kZShEZWNvZGVyJik7CiAjZW5kaWYKIH07
CiAKQEAgLTkwLDE5ICs4OCwxOSBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyPgogdm9pZCBH
cmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25z
dAogewogICAgIGVuY29kZXIgPDwgYWxwaGEKLSAgICAgICAgICAgIDw8IGRlcHRoCi0gICAgICAg
ICAgICA8PCBzdGVuY2lsCi0gICAgICAgICAgICA8PCBhbnRpYWxpYXMKLSAgICAgICAgICAgIDw8
IHByZW11bHRpcGxpZWRBbHBoYQotICAgICAgICAgICAgPDwgcHJlc2VydmVEcmF3aW5nQnVmZmVy
Ci0gICAgICAgICAgICA8PCBmYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0Ci0gICAgICAgICAg
ICA8PCBwb3dlclByZWZlcmVuY2UKLSAgICAgICAgICAgIDw8IHNoYXJlUmVzb3VyY2VzCi0gICAg
ICAgICAgICA8PCBub0V4dGVuc2lvbnMKLSAgICAgICAgICAgIDw8IGRldmljZVBpeGVsUmF0aW8K
LSAgICAgICAgICAgIDw8IGluaXRpYWxQb3dlclByZWZlcmVuY2UKLSAgICAgICAgICAgIDw8IHdl
YkdMVmVyc2lvbgotICAgICAgICAgICAgPDwgZm9yY2VSZXF1ZXN0Rm9ySGlnaFBlcmZvcm1hbmNl
R1BVOworICAgICAgICA8PCBkZXB0aAorICAgICAgICA8PCBzdGVuY2lsCisgICAgICAgIDw8IGFu
dGlhbGlhcworICAgICAgICA8PCBwcmVtdWx0aXBsaWVkQWxwaGEKKyAgICAgICAgPDwgcHJlc2Vy
dmVEcmF3aW5nQnVmZmVyCisgICAgICAgIDw8IGZhaWxJZk1ham9yUGVyZm9ybWFuY2VDYXZlYXQK
KyAgICAgICAgPDwgcG93ZXJQcmVmZXJlbmNlCisgICAgICAgIDw8IHNoYXJlUmVzb3VyY2VzCisg
ICAgICAgIDw8IG5vRXh0ZW5zaW9ucworICAgICAgICA8PCBkZXZpY2VQaXhlbFJhdGlvCisgICAg
ICAgIDw8IGluaXRpYWxQb3dlclByZWZlcmVuY2UKKyAgICAgICAgPDwgd2ViR0xWZXJzaW9uCisg
ICAgICAgIDw8IGZvcmNlUmVxdWVzdEZvckhpZ2hQZXJmb3JtYW5jZUdQVTsKICNpZiBQTEFURk9S
TShDT0NPQSkKICAgICBlbmNvZGVyIDw8IHVzZU1ldGFsOwogI2VuZGlmCkBAIC0xMTQsNDQgKzEx
Miw0OSBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZW5jb2RlKEVuY29kZXIm
IGVuY29kZXIpIGNvbnN0CiB0ZW1wbGF0ZTx0eXBlbmFtZSBEZWNvZGVyPgogc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM+IEdyYXBoaWNzQ29udGV4dEdM
QXR0cmlidXRlczo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCiB7Ci0gICAgR3JhcGhpY3NDb250
ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXM7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShhdHRy
aWJ1dGVzLmFscGhhKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuZGVwdGgpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxs
b3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5zdGVuY2lsKSkKLSAgICAg
ICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0
ZXMuYW50aWFsaWFzKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMucHJlbXVsdGlwbGllZEFscGhhKSkKLSAgICAgICAgcmV0
dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMucHJl
c2VydmVEcmF3aW5nQnVmZmVyKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBp
ZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuZmFpbElmTWFqb3JQZXJmb3JtYW5jZUNhdmVh
dCkpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShhdHRyaWJ1dGVzLnBvd2VyUHJlZmVyZW5jZSkpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShhdHRyaWJ1dGVzLnNoYXJlUmVzb3VyY2VzKSkK
LSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0
dHJpYnV0ZXMubm9FeHRlbnNpb25zKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuZGV2aWNlUGl4ZWxSYXRpbykpCi0gICAg
ICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShhdHRyaWJ1
dGVzLmluaXRpYWxQb3dlclByZWZlcmVuY2UpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy53ZWJHTFZlcnNpb24pKQotICAg
ICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmli
dXRlcy5mb3JjZVJlcXVlc3RGb3JIaWdoUGVyZm9ybWFuY2VHUFUpKQotICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OworICAgIGF1dG8gYWxwaGEgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxi
b29sPigpOworICAgIGF1dG8gZGVwdGggPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigp
OworICAgIGF1dG8gc3RlbmNpbCA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7Cisg
ICAgYXV0byBhbnRpYWxpYXMgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAg
IGF1dG8gcHJlbXVsdGlwbGllZEFscGhhID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4o
KTsKKyAgICBhdXRvIHByZXNlcnZlRHJhd2luZ0J1ZmZlciA9IGRlY29kZXIudGVtcGxhdGUgZGVj
b2RlPGJvb2w+KCk7CisgICAgYXV0byBmYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0ID0gZGVj
b2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIHBvd2VyUHJlZmVyZW5jZSA9
IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPFBvd2VyUHJlZmVyZW5jZT4oKTsKKyAgICBhdXRvIHNo
YXJlUmVzb3VyY2VzID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRv
IG5vRXh0ZW5zaW9ucyA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0
byBkZXZpY2VQaXhlbFJhdGlvID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAg
ICBhdXRvIGluaXRpYWxQb3dlclByZWZlcmVuY2UgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxi
b29sPigpOworICAgIGF1dG8gd2ViR0xWZXJzaW9uID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8
V2ViR0xWZXJzaW9uPigpOworICAgIGF1dG8gZm9yY2VSZXF1ZXN0Rm9ySGlnaFBlcmZvcm1hbmNl
R1BVID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKICNpZiBQTEFURk9STShDT0NP
QSkKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMudXNlTWV0YWwpKQotICAgICAg
ICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgIGF1dG8gdXNlTWV0YWwgPSBkZWNvZGVyLnRlbXBs
YXRlIGRlY29kZTxib29sPigpOwogI2VuZGlmCiAjaWYgRU5BQkxFKFdFQlhSKQotICAgIGlmICgh
ZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy54ckNvbXBhdGlibGUpKQotICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OworICAgIGF1dG8geHJDb21wYXRpYmxlID0gZGVjb2Rlci50ZW1wbGF0ZSBk
ZWNvZGU8Ym9vbD4oKTsKKyNlbmRpZgorICAgIGlmICghZGVjb2Rlci5pc1ZhbGlkKCkpCisgICAg
ICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlcyB7CisgICAgICAgICphbHBoYSwKKyAgICAgICAgKmRlcHRoLAorICAgICAgICAqc3Rl
bmNpbCwKKyAgICAgICAgKmFudGlhbGlhcywKKyAgICAgICAgKnByZXNlcnZlRHJhd2luZ0J1ZmZl
ciwKKyAgICAgICAgKmZhaWxJZk1ham9yUGVyZm9ybWFuY2VDYXZlYXQsCisgICAgICAgICpwb3dl
clByZWZlcmVuY2UsCisgICAgICAgICpzaGFyZVJlc291cmNlcywKKyAgICAgICAgKm5vRXh0ZW5z
aW9ucywKKyAgICAgICAgKmRldmljZVBpeGVsUmF0aW8sCisgICAgICAgICppbml0aWFsUG93ZXJQ
cmVmZXJlbmNlLAorICAgICAgICAqd2ViR0xWZXJzaW9uLAorICAgICAgICAqZm9yY2VSZXF1ZXN0
Rm9ySGlnaFBlcmZvcm1hbmNlR1BVLAorI2lmIFBMQVRGT1JNKENPQ09BKQorICAgICAgICAqdXNl
TWV0YWwsCisjZW5kaWYKKyNpZiBFTkFCTEUoV0VCWFIpCisgICAgICAgICp4ckNvbXBhdGlibGUK
ICNlbmRpZgotICAgIHJldHVybiBhdHRyaWJ1dGVzOworICAgIH07CiB9CiAKICNlbmRpZgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDU0ZGUxM2YwOWQ3MzNkMzdmMDhjMDBlYzIxMjY2YWIxNTgzMWNiYjguLjJhYzdjYjZjNDFm
ZDIwZDM3NDhhOTJjNzA3N2ExNWFmNzAxODFhNDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAy
Mi0wMi0xMyAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgorCisgICAgICAg
IFdlYkdMIEdQVVAgT3BlbkdMIGNvbnRleHQgaXMgbm90IHVzZWQgZXZlbiBpZiBXZWJHTCB2aWEg
TWV0YWwgaXMgZGVzZWxlY3RlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM2NTA1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiB3ZWJnbC9yZXNvdXJjZXMvd2ViZ2wtdmlhLW1ldGFsLWZsYWcuanM6IEFk
ZGVkLgorICAgICAgICAocnVuVGVzdCk6CisgICAgICAgICogd2ViZ2wvd2ViZ2wtdmlhLW1ldGFs
LWZsYWctb2ZmLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViZ2wvd2ViZ2wtdmlh
LW1ldGFsLWZsYWctb2ZmLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmdsL3dlYmdsLXZpYS1t
ZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViZ2wvd2ViZ2wt
dmlhLW1ldGFsLWZsYWctb24uaHRtbDogQWRkZWQuCisKIDIwMjItMDItMTEgIEtpbW1vIEtpbm51
bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBJbnRyb2R1Y2UgYSBSZW1vdGVN
ZWRpYVNhbXBsZVByb3h5IHRvIHJlcHJlc2VudCBjYXB0dXJlZCB2aWRlbyBmcmFtZXMgdXNlZCBp
biBNZWRpYSBTdHJlYW1zIGFuZCBwcmVzZW50IGluIEdQVVAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3dlYmdsL3Jlc291cmNlcy93ZWJnbC12aWEtbWV0YWwtZmxhZy5qcyBiL0xheW91dFRlc3Rz
L3dlYmdsL3Jlc291cmNlcy93ZWJnbC12aWEtbWV0YWwtZmxhZy5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ODU1
MjhjOTA1NDliMmJiYTZhM2JjNmU4YzFiYzI1NWI1NWUwZDhjCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViZ2wvcmVzb3VyY2VzL3dlYmdsLXZpYS1tZXRhbC1mbGFnLmpzCkBAIC0w
LDAgKzEsMjggQEAKKyJ1c2Ugc3RyaWN0IjsKKworbGV0IHN1YmNhc2VzID0gW107Citmb3IgKGxl
dCBjb250ZXh0VHlwZSBvZiBbICJ3ZWJnbCIsICJ3ZWJnbDIiIF0pIHsKKyAgICBzdWJjYXNlcy5w
dXNoKHsgY29udGV4dFR5cGUgfSk7Cit9CisKK2Z1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgZm9y
IChsZXQgc3ViY2FzZSBvZiBzdWJjYXNlcykgeworICAgICAgICBsZXQgY2FudmFzID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7CisgICAgICAgIGxldCBnbCA9IGNhbnZhcy5nZXRD
b250ZXh0KHN1YmNhc2UuY29udGV4dFR5cGUpOworICAgICAgICBpZiAoIWdsKSB7CisgICAgICAg
ICAgICBkZWJ1ZyhgJHtzdWJjYXNlLmNvbnRleHRUeXBlfTogTm90IHN1cHBvcnRlZC5gKTsKKyAg
ICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICAgIGxldCBzaGFkZXIgPSBnbC5j
cmVhdGVTaGFkZXIoZ2wuRlJBR01FTlRfU0hBREVSKTsKKyAgICAgICAgZ2wuc2hhZGVyU291cmNl
KHNoYWRlciwgInZvaWQgbWFpbigpIHsgZ2xfRnJhZ0NvbG9yID0gdmVjNChnbF9GcmFnQ29vcmQu
eCwgMC4wLCAwLjAsIDEuMCk7IH0iKTsKKyAgICAgICAgZ2wuY29tcGlsZVNoYWRlcihzaGFkZXIp
OworICAgICAgICBsZXQgc3JjID0gZ2wuZ2V0RXh0ZW5zaW9uKCJXRUJHTF9kZWJ1Z19zaGFkZXJz
IikuZ2V0VHJhbnNsYXRlZFNoYWRlclNvdXJjZShzaGFkZXIpOworICAgICAgICBjb25zb2xlLmxv
ZyhzcmMpOworICAgICAgICBsZXQgdHlwZSA9ICJVbmtub3duIjsKKyAgICAgICAgaWYgKHNyYy5p
bmRleE9mKCJmcmFnbWVudCBBTkdMRV9GcmFnbWVudE91dCBtYWluIikgPj0gMCkKKyAgICAgICAg
ICAgIHR5cGUgPSAiTWV0YWwiOworICAgICAgICBpZiAoc3JjLmluZGV4T2YoInZvaWQgbWFpbigp
IikgPj0gMCkKKyAgICAgICAgICAgIHR5cGUgPSAiT3BlbkdMIjsKKyAgICAgICAgZGVidWcoYCR7
c3ViY2FzZS5jb250ZXh0VHlwZX06IERldGVjdGVkIGNvbnRleHQgaW1wbGVtZW50YXRpb246ICR7
dHlwZX1gKTsKKyAgICB9Cit9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uM2UzYjc5NzhiMjU5YzliZWYzMzk2OWJhMDhjYWUyOTZiZTViNGJkNQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFn
LW9mZi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMyBAQAorVGhpcyB0ZXN0IGVuc3VyZXMgdGhh
dCBXZWJHTFVzaW5nTWV0YWw9ZmFsc2Ugd29ya3MuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworVEVTVCBDT01QTEVURTogMSBQQVNTLCAwIEZBSUwKKworCit3ZWJnbDogRGV0ZWN0ZWQg
Y29udGV4dCBpbXBsZW1lbnRhdGlvbjogT3BlbkdMCit3ZWJnbDI6IERldGVjdGVkIGNvbnRleHQg
aW1wbGVtZW50YXRpb246IE9wZW5HTAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZp
YS1tZXRhbC1mbGFnLW9mZi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFs
LWZsYWctb2ZmLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmM3MTg3NDQyZTgxMDQ3MDE4Y2UwNTRjMTE5NWFj
NzJlN2FhZDE1YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZp
YS1tZXRhbC1mbGFnLW9mZi5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPjwh
LS0gd2Via2l0LXRlc3QtcnVubmVyIFsgV2ViR0xVc2luZ01ldGFsPWZhbHNlIF0gLS0+Cis8aHRt
bD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHRpdGxlPldlYktpdCB0ZXN0IFdl
YkdMVXNpbmdNZXRhbD10cnVlPC90aXRsZT4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
cmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIi8+
Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2pz
L3dlYmdsLXRlc3QtdXRpbHMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy93
ZWJnbC12aWEtbWV0YWwtZmxhZy5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYg
aWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlw
dD4KKyJ1c2Ugc3RyaWN0IjsKK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IFdl
YkdMVXNpbmdNZXRhbD1mYWxzZSB3b3Jrcy4iKTsKKworZGVidWcoIiIpOworcnVuVGVzdCgpOwor
Cit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
InJlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2pzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12
aWEtbWV0YWwtZmxhZy1vbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12
aWEtbWV0YWwtZmxhZy1vbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQ3N2U4OWY2ZmQxYjg4
N2RlYTZkN2VlZWUzMDdlYzhmNzAwNTA1YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEz
IEBACitUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IFdlYkdMVXNpbmdNZXRhbD10cnVlIHdvcmtzLgor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1RFU1QgQ09NUExFVEU6IDEgUEFTUywgMCBG
QUlMCisKKword2ViZ2w6IERldGVjdGVkIGNvbnRleHQgaW1wbGVtZW50YXRpb246IE9wZW5HTAor
d2ViZ2wyOiBEZXRlY3RlZCBjb250ZXh0IGltcGxlbWVudGF0aW9uOiBPcGVuR0wKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjczM2Q0
NjgwOTAzY2JkNTg2NmJiYjI4YWQ0MWZmMTYxZGNjZjQ0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb24uaHRtbApAQCAtMCwwICsxLDI1
IEBACis8IURPQ1RZUEUgaHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIFdlYkdMVXNpbmdN
ZXRhbD10cnVlIF0gLS0+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgor
PHRpdGxlPldlYktpdCB0ZXN0IFdlYkdMVXNpbmdNZXRhbD10cnVlPC90aXRsZT4KKzxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIi8+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3Rf
ZmlsZXMvanMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNl
cy93ZWJnbF90ZXN0X2ZpbGVzL2pzL3dlYmdsLXRlc3QtdXRpbHMuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy93ZWJnbC12aWEtbWV0YWwtZmxhZy5qcyI+PC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNv
bnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKyJ1c2Ugc3RyaWN0IjsKK2Rlc2NyaXB0aW9uKCJUaGlz
IHRlc3QgZW5zdXJlcyB0aGF0IFdlYkdMVXNpbmdNZXRhbD10cnVlIHdvcmtzLiIpOworCitkZWJ1
ZygiIik7CitydW5UZXN0KCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>451900</attachid>
            <date>2022-02-14 07:23:51 -0800</date>
            <delta_ts>2022-02-28 03:59:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236505-20220214172349.patch</filename>
            <type>text/plain</type>
            <size>15905</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5NzM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjFhOThjNjgxYWI3MGE1
OTAyYThiZGRlZjJkZDg4M2YzNzhkNjhlYi4uNDJmYzk4ZGIyNzI5NzZjMTkwZGI4ZjY4N2FlOTg3
MzQ2NzE2NWE1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAyLTEzICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgR1BVUCBP
cGVuR0wgY29udGV4dCBpcyBub3QgdXNlZCBldmVuIGlmIFdlYkdMIHZpYSBNZXRhbCBpcyBkZXNl
bGVjdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzY1MDUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBF
bmNvZGUsIGRlY29kZSBhbHNvIGB1c2VNZXRhbGAgcHJvcGVydHkuCisKKyAgICAgICAgVGVzdHM6
IHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi5odG1sCisgICAgICAgICAgICAgICB3ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZGVjb2RlKToKKwogMjAyMi0wMi0xNCAg
QWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ11bSUZDXSBGaXgg
ZmFzdC9pbmxpbmUvaGlkcGktb3V0bGluZS1hdXRvLXdpdGgtYm9yZGVyLXJhZGl1cy12ZXJ0aWNh
bC1ydGwuaHRtbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaAppbmRleCBjYjk5ZmIxNjE3ZGJj
NmFhOTcyOTFjODgxOWY4NDVjYmRjZjdmZjU3Li4wZjA2MmRhNTJlOGUxMDVkNWU3MGNkZjI1OGJk
ODM4YmU1M2YxZjQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaApAQCAtMjYsNiArMjYs
NyBAQAogI3ByYWdtYSBvbmNlCiAKICNpZiBFTkFCTEUoV0VCR0wpCisjaW5jbHVkZSA8b3B0aW9u
YWw+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNzQsOCArNzUsMTE2IEBAIHN0cnVjdCBH
cmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMgewogICAgICAgICAgICAgcmV0dXJuIFBvd2VyUHJl
ZmVyZW5jZTo6SGlnaFBlcmZvcm1hbmNlOwogICAgICAgICByZXR1cm4gcG93ZXJQcmVmZXJlbmNl
OwogICAgIH0KKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKKyAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7CisgICAgdGVtcGxhdGU8dHlw
ZW5hbWUgRGVjb2Rlcj4gc3RhdGljIHN0ZDo6b3B0aW9uYWw8R3JhcGhpY3NDb250ZXh0R0xBdHRy
aWJ1dGVzPiBkZWNvZGUoRGVjb2RlciYpOworI2VuZGlmCit9OworCisjaWYgRU5BQkxFKEdQVV9Q
Uk9DRVNTKQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyPgordm9pZCBHcmFwaGljc0NvbnRl
eHRHTEF0dHJpYnV0ZXM6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAoreworICAgIGVu
Y29kZXIgPDwgYWxwaGEKKyAgICAgICAgPDwgZGVwdGgKKyAgICAgICAgPDwgc3RlbmNpbAorICAg
ICAgICA8PCBhbnRpYWxpYXMKKyAgICAgICAgPDwgcHJlbXVsdGlwbGllZEFscGhhCisgICAgICAg
IDw8IHByZXNlcnZlRHJhd2luZ0J1ZmZlcgorICAgICAgICA8PCBmYWlsSWZNYWpvclBlcmZvcm1h
bmNlQ2F2ZWF0CisgICAgICAgIDw8IHBvd2VyUHJlZmVyZW5jZQorICAgICAgICA8PCBzaGFyZVJl
c291cmNlcworICAgICAgICA8PCBub0V4dGVuc2lvbnMKKyAgICAgICAgPDwgZGV2aWNlUGl4ZWxS
YXRpbworICAgICAgICA8PCBpbml0aWFsUG93ZXJQcmVmZXJlbmNlCisgICAgICAgIDw8IHdlYkdM
VmVyc2lvbgorICAgICAgICA8PCBmb3JjZVJlcXVlc3RGb3JIaWdoUGVyZm9ybWFuY2VHUFU7Cisj
aWYgUExBVEZPUk0oQ09DT0EpCisgICAgZW5jb2RlciA8PCB1c2VNZXRhbDsKKyNlbmRpZgorI2lm
IEVOQUJMRShXRUJYUikKKyAgICBlbmNvZGVyIDw8IHhyQ29tcGF0aWJsZTsKKyNlbmRpZgorfQor
Cit0ZW1wbGF0ZTx0eXBlbmFtZSBEZWNvZGVyPgorc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXM+IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZGVj
b2RlKERlY29kZXImIGRlY29kZXIpCit7CisgICAgYXV0byBhbHBoYSA9IGRlY29kZXIudGVtcGxh
dGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byBkZXB0aCA9IGRlY29kZXIudGVtcGxhdGUgZGVj
b2RlPGJvb2w+KCk7CisgICAgYXV0byBzdGVuY2lsID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8
Ym9vbD4oKTsKKyAgICBhdXRvIGFudGlhbGlhcyA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJv
b2w+KCk7CisgICAgYXV0byBwcmVtdWx0aXBsaWVkQWxwaGEgPSBkZWNvZGVyLnRlbXBsYXRlIGRl
Y29kZTxib29sPigpOworICAgIGF1dG8gcHJlc2VydmVEcmF3aW5nQnVmZmVyID0gZGVjb2Rlci50
ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIGZhaWxJZk1ham9yUGVyZm9ybWFuY2VD
YXZlYXQgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAgIGF1dG8gcG93ZXJQ
cmVmZXJlbmNlID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8UG93ZXJQcmVmZXJlbmNlPigpOwor
ICAgIGF1dG8gc2hhcmVSZXNvdXJjZXMgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigp
OworICAgIGF1dG8gbm9FeHRlbnNpb25zID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4o
KTsKKyAgICBhdXRvIGRldmljZVBpeGVsUmF0aW8gPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxi
b29sPigpOworICAgIGF1dG8gaW5pdGlhbFBvd2VyUHJlZmVyZW5jZSA9IGRlY29kZXIudGVtcGxh
dGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byB3ZWJHTFZlcnNpb24gPSBkZWNvZGVyLnRlbXBs
YXRlIGRlY29kZTxXZWJHTFZlcnNpb24+KCk7CisgICAgYXV0byBmb3JjZVJlcXVlc3RGb3JIaWdo
UGVyZm9ybWFuY2VHUFUgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworI2lmIFBM
QVRGT1JNKENPQ09BKQorICAgIGF1dG8gdXNlTWV0YWwgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29k
ZTxib29sPigpOworI2VuZGlmCisjaWYgRU5BQkxFKFdFQlhSKQorICAgIGF1dG8geHJDb21wYXRp
YmxlID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyNlbmRpZgorICAgIGlmICgh
ZGVjb2Rlci5pc1ZhbGlkKCkpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgcmV0
dXJuIEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyB7CisgICAgICAgICphbHBoYSwKKyAgICAg
ICAgKmRlcHRoLAorICAgICAgICAqc3RlbmNpbCwKKyAgICAgICAgKmFudGlhbGlhcywKKyAgICAg
ICAgKnByZXNlcnZlRHJhd2luZ0J1ZmZlciwKKyAgICAgICAgKmZhaWxJZk1ham9yUGVyZm9ybWFu
Y2VDYXZlYXQsCisgICAgICAgICpwb3dlclByZWZlcmVuY2UsCisgICAgICAgICpzaGFyZVJlc291
cmNlcywKKyAgICAgICAgKm5vRXh0ZW5zaW9ucywKKyAgICAgICAgKmRldmljZVBpeGVsUmF0aW8s
CisgICAgICAgICppbml0aWFsUG93ZXJQcmVmZXJlbmNlLAorICAgICAgICAqd2ViR0xWZXJzaW9u
LAorICAgICAgICAqZm9yY2VSZXF1ZXN0Rm9ySGlnaFBlcmZvcm1hbmNlR1BVLAorI2lmIFBMQVRG
T1JNKENPQ09BKQorICAgICAgICAqdXNlTWV0YWwsCisjZW5kaWYKKyNpZiBFTkFCTEUoV0VCWFIp
CisgICAgICAgICp4ckNvbXBhdGlibGUKKyNlbmRpZgorICAgIH07Cit9CisKKyNlbmRpZgorCit9
CisKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCituYW1lc3BhY2UgV1RGIHsKKwordGVtcGxhdGUg
PD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xQb3dlclByZWZl
cmVuY2U+IHsKKyAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAgIFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlLAorICAgIFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMUG93ZXJQcmVmZXJlbmNlOjpEZWZhdWx0LAorICAgIFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMUG93ZXJQcmVmZXJlbmNlOjpMb3dQb3dlciwKKyAgICBXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTFBvd2VyUHJlZmVyZW5jZTo6SGlnaFBlcmZvcm1hbmNlCisgICAgPjsKK307CisKK3Rl
bXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMV2Vi
R0xWZXJzaW9uPiB7CisgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlczwKKyAgICBXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHRHTFdlYkdMVmVyc2lvbiwKKyAgICBXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTFdlYkdMVmVyc2lvbjo6V2ViR0wxCisjaWYgRU5BQkxFKFdFQkdMMikKKyAgICAsIFdl
YkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMV2ViR0xWZXJzaW9uOjpXZWJHTDIKKyNlbmRpZgorICAg
ID47CiB9OwogCiB9CiAKKyNlbmRpZgorCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKaW5kZXggOTk4N2Ix
YTg0NzY4ZjI3Mzg2M2RjMGIxYTU1MzkxNTNjNDk4MTc4My4uMjdhMDMzZjcwY2RlNDFmMmFmZGEx
MmIwYTE4NWQ3MTE0YjQwZDEwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
Q29yZUFyZ3VtZW50Q29kZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3Jl
QXJndW1lbnRDb2RlcnMuY3BwCkBAIC0zMTk5LDYxICszMTk5LDYgQEAgc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpDRE1JbnN0YW5jZVNlc3Npb246Ok1lc3NhZ2U+ICBBcmd1bWVudENvZGVyPFdlYkNv
cmU6OkNETUkKICNlbmRpZiAvLyBFTkFCTEUoRU5DUllQVEVEX01FRElBKQogCiAjaWYgRU5BQkxF
KEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VCR0wpCi12b2lkIEFyZ3VtZW50Q29kZXI8V2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzPjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIs
IGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcykK
LXsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMuYWxwaGE7Ci0gICAgZW5jb2RlciA8PCBhdHRy
aWJ1dGVzLmRlcHRoOwotICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5zdGVuY2lsOwotICAgIGVu
Y29kZXIgPDwgYXR0cmlidXRlcy5hbnRpYWxpYXM7Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVz
LnByZW11bHRpcGxpZWRBbHBoYTsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMucHJlc2VydmVE
cmF3aW5nQnVmZmVyOwotICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5mYWlsSWZNYWpvclBlcmZv
cm1hbmNlQ2F2ZWF0OwotICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5wb3dlclByZWZlcmVuY2U7
Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLnNoYXJlUmVzb3VyY2VzOwotICAgIGVuY29kZXIg
PDwgYXR0cmlidXRlcy53ZWJHTFZlcnNpb247Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLm5v
RXh0ZW5zaW9uczsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMuZGV2aWNlUGl4ZWxSYXRpbzsK
LSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMuaW5pdGlhbFBvd2VyUHJlZmVyZW5jZTsKLSNpZiBF
TkFCTEUoV0VCWFIpCi0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLnhyQ29tcGF0aWJsZTsKLSNl
bmRpZgotfQotCi1zdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmli
dXRlcz4gQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM+
OjpkZWNvZGUoRGVjb2RlciYgZGVjb2RlcikKLXsKLSAgICBHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMgYXR0cmlidXRlczsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuYWxw
aGEpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNv
ZGUoYXR0cmlidXRlcy5kZXB0aCkpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Ci0gICAg
aWYgKCFkZWNvZGVyLmRlY29kZShhdHRyaWJ1dGVzLnN0ZW5jaWwpKQotICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5hbnRpYWxp
YXMpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNv
ZGUoYXR0cmlidXRlcy5wcmVtdWx0aXBsaWVkQWxwaGEpKQotICAgICAgICByZXR1cm4gc3RkOjpu
dWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5wcmVzZXJ2ZURyYXdp
bmdCdWZmZXIpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUoYXR0cmlidXRlcy5mYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0KSkKLSAgICAg
ICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0
ZXMucG93ZXJQcmVmZXJlbmNlKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBp
ZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuc2hhcmVSZXNvdXJjZXMpKQotICAgICAgICBy
ZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy53
ZWJHTFZlcnNpb24pKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVj
b2Rlci5kZWNvZGUoYXR0cmlidXRlcy5ub0V4dGVuc2lvbnMpKQotICAgICAgICByZXR1cm4gc3Rk
OjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5kZXZpY2VQaXhl
bFJhdGlvKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKGF0dHJpYnV0ZXMuaW5pdGlhbFBvd2VyUHJlZmVyZW5jZSkpCi0gICAgICAgIHJldHVy
biBzdGQ6Om51bGxvcHQ7Ci0jaWYgRU5BQkxFKFdFQlhSKQotICAgIGlmICghZGVjb2Rlci5kZWNv
ZGUoYXR0cmlidXRlcy54ckNvbXBhdGlibGUpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OwotI2VuZGlmCi0gICAgcmV0dXJuIGF0dHJpYnV0ZXM7Ci19CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IEVuY29kZXI+CiB2b2lkIEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6
OkFjdGl2ZUluZm8+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0R0w6OkFjdGl2ZUluZm8mIGFjdGl2ZUluZm8pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCmluZGV4IDYxNWRlMDY5YWE0OWJmMDVjYTkx
OGZiZGQzMjhlMDJhOTNiZmJmOWYuLmM5ZjYxMDRmNGQxZTIzZThlM2Q3NDNjYmE1NzI3MWU3NTll
N2UzODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENv
ZGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5o
CkBAIC04Nyw3ICs4Nyw2IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VC
R0wpCiAjaW5jbHVkZSAiQXJyYXlSZWZlcmVuY2UuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBo
aWNzQ29udGV4dEdMLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzVHlwZXNHTC5oPgogI2VuZGlmCiAK
QEAgLTIxNiwxMCArMjE1LDYgQEAgc3RydWN0IE1lZGlhQ29uc3RyYWludHM7CiBzdHJ1Y3QgU2Vy
aWFsaXplZEF0dGFjaG1lbnREYXRhOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoR1BVX1BST0NFU1Mp
ICYmIEVOQUJMRShXRUJHTCkKLXN0cnVjdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM7Ci0j
ZW5kaWYKLQogbmFtZXNwYWNlIERPTUNhY2hlRW5naW5lIHsKIHN0cnVjdCBDYWNoZUluZm87CiBz
dHJ1Y3QgUmVjb3JkOwpAQCAtODAwLDExICs3OTUsNiBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1
bWVudENvZGVyPFdlYkNvcmU6OlBheW1lbnRJbnN0YWxsbWVudENvbmZpZ3VyYXRpb24+IHsKIAog
I2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKFdFQkdMKQogCi10ZW1wbGF0ZTw+IHN0
cnVjdCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcz4g
ewotICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0xBdHRyaWJ1dGVzJik7Ci0gICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8V2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzPiBkZWNvZGUoRGVjb2RlciYpOwotfTsKLQog
dGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TDo6QWN0aXZlSW5mbz4gewogICAgIHRlbXBsYXRlPHR5cGVuYW1lIEVuY29kZXI+CiAgICAgc3Rh
dGljIHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TDo6QWN0aXZlSW5mbyYpOwpAQCAtOTgxLDI1ICs5NzEsNiBAQCB0ZW1wbGF0ZSA8PiBzdHJ1Y3Qg
RW51bVRyYWl0czxXZWJDb3JlOjpDRE1JbnN0YW5jZTo6SERDUFN0YXR1cz4gewogCiAjaWYgRU5B
QkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VCR0wpCiAKLXRlbXBsYXRlIDw+IHN0cnVjdCBF
bnVtVHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlPiB7Ci0g
ICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlcyA8Ci0gICAgV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0R0xQb3dlclByZWZlcmVuY2UsCi0gICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xQb3dl
clByZWZlcmVuY2U6OkRlZmF1bHQsCi0gICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xQb3dl
clByZWZlcmVuY2U6Okxvd1Bvd2VyLAotICAgIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMUG93
ZXJQcmVmZXJlbmNlOjpIaWdoUGVyZm9ybWFuY2UKLSAgICA+OwotfTsKLQotdGVtcGxhdGUgPD4g
c3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb24+
IHsKLSAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzIDwKLSAgICBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTFdlYkdMVmVyc2lvbiwKLSAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFdl
YkdMVmVyc2lvbjo6V2ViR0wxCi0jaWYgRU5BQkxFKFdFQkdMMikKLSAgICAsIFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMV2ViR0xWZXJzaW9uOjpXZWJHTDIKLSNlbmRpZgotICAgID47Ci19Owot
CiB0ZW1wbGF0ZSA8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TDo6U2ltdWxhdGVkRXZlbnRGb3JUZXN0aW5nPiB7CiAgICAgdXNpbmcgdmFsdWVzID0gRW51bVZh
bHVlczwKICAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6U2ltdWxhdGVkRXZlbnRGb3JU
ZXN0aW5nLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IDAxNWMwY2E2YzMzYzkyMjNmMzU2N2I0ZDhkMjFjNjVlMjNhODQ1OGYu
LmE2NzMzNzEzYjE1YTM0MWY3YWY5OWU2MDY4MjE4ZWFhZjc2MjgwZTcgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNyBAQAorMjAyMi0wMi0xMyAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29t
PgorCisgICAgICAgIFdlYkdMIEdQVVAgT3BlbkdMIGNvbnRleHQgaXMgbm90IHVzZWQgZXZlbiBp
ZiBXZWJHTCB2aWEgTWV0YWwgaXMgZGVzZWxlY3RlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM2NTA1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWJnbC9yZXNvdXJjZXMvd2ViZ2wtdmlhLW1ldGFs
LWZsYWcuanM6IEFkZGVkLgorICAgICAgICAocnVuVGVzdCk6CisgICAgICAgICogd2ViZ2wvd2Vi
Z2wtdmlhLW1ldGFsLWZsYWctb2ZmLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2Vi
Z2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmds
L3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
d2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb24uaHRtbDogQWRkZWQuCisKIDIwMjItMDItMTQg
IEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW21vZGVsXSBy
ZWZhY3RvciBtb2RlbCBkb2N1bWVudCB0ZXN0cyB0byB1c2UgYSBzaGFyZWQgdGVzdGluZyBmdW5j
dGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ2wvcmVzb3VyY2VzL3dlYmdsLXZpYS1t
ZXRhbC1mbGFnLmpzIGIvTGF5b3V0VGVzdHMvd2ViZ2wvcmVzb3VyY2VzL3dlYmdsLXZpYS1tZXRh
bC1mbGFnLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4NTUyOGM5MDU0OWIyYmJhNmEzYmM2ZThjMWJjMjU1YjU1
ZTBkOGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJnbC9yZXNvdXJjZXMvd2Vi
Z2wtdmlhLW1ldGFsLWZsYWcuanMKQEAgLTAsMCArMSwyOCBAQAorInVzZSBzdHJpY3QiOworCits
ZXQgc3ViY2FzZXMgPSBbXTsKK2ZvciAobGV0IGNvbnRleHRUeXBlIG9mIFsgIndlYmdsIiwgIndl
YmdsMiIgXSkgeworICAgIHN1YmNhc2VzLnB1c2goeyBjb250ZXh0VHlwZSB9KTsKK30KKworZnVu
Y3Rpb24gcnVuVGVzdCgpIHsKKyAgICBmb3IgKGxldCBzdWJjYXNlIG9mIHN1YmNhc2VzKSB7Cisg
ICAgICAgIGxldCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKTsKKyAg
ICAgICAgbGV0IGdsID0gY2FudmFzLmdldENvbnRleHQoc3ViY2FzZS5jb250ZXh0VHlwZSk7Cisg
ICAgICAgIGlmICghZ2wpIHsKKyAgICAgICAgICAgIGRlYnVnKGAke3N1YmNhc2UuY29udGV4dFR5
cGV9OiBOb3Qgc3VwcG9ydGVkLmApOworICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0K
KyAgICAgICAgbGV0IHNoYWRlciA9IGdsLmNyZWF0ZVNoYWRlcihnbC5GUkFHTUVOVF9TSEFERVIp
OworICAgICAgICBnbC5zaGFkZXJTb3VyY2Uoc2hhZGVyLCAidm9pZCBtYWluKCkgeyBnbF9GcmFn
Q29sb3IgPSB2ZWM0KGdsX0ZyYWdDb29yZC54LCAwLjAsIDAuMCwgMS4wKTsgfSIpOworICAgICAg
ICBnbC5jb21waWxlU2hhZGVyKHNoYWRlcik7CisgICAgICAgIGxldCBzcmMgPSBnbC5nZXRFeHRl
bnNpb24oIldFQkdMX2RlYnVnX3NoYWRlcnMiKS5nZXRUcmFuc2xhdGVkU2hhZGVyU291cmNlKHNo
YWRlcik7CisgICAgICAgIGNvbnNvbGUubG9nKHNyYyk7CisgICAgICAgIGxldCB0eXBlID0gIlVu
a25vd24iOworICAgICAgICBpZiAoc3JjLmluZGV4T2YoImZyYWdtZW50IEFOR0xFX0ZyYWdtZW50
T3V0IG1haW4iKSA+PSAwKQorICAgICAgICAgICAgdHlwZSA9ICJNZXRhbCI7CisgICAgICAgIGlm
IChzcmMuaW5kZXhPZigidm9pZCBtYWluKCkiKSA+PSAwKQorICAgICAgICAgICAgdHlwZSA9ICJP
cGVuR0wiOworICAgICAgICBkZWJ1ZyhgJHtzdWJjYXNlLmNvbnRleHRUeXBlfTogRGV0ZWN0ZWQg
Y29udGV4dCBpbXBsZW1lbnRhdGlvbjogJHt0eXBlfWApOworICAgIH0KK30KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEt
bWV0YWwtZmxhZy1vZmYtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlh
LW1ldGFsLWZsYWctb2ZmLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZTNiNzk3OGIyNTljOWJl
ZjMzOTY5YmEwOGNhZTI5NmJlNWI0YmQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEz
IEBACitUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IFdlYkdMVXNpbmdNZXRhbD1mYWxzZSB3b3Jrcy4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitURVNUIENPTVBMRVRFOiAxIFBBU1MsIDAg
RkFJTAorCisKK3dlYmdsOiBEZXRlY3RlZCBjb250ZXh0IGltcGxlbWVudGF0aW9uOiBPcGVuR0wK
K3dlYmdsMjogRGV0ZWN0ZWQgY29udGV4dCBpbXBsZW1lbnRhdGlvbjogT3BlbkdMCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLmh0bWwgYi9MYXlvdXRU
ZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vZmYuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ODI4
YTQ2NDk3ZGIyZGY3MTM0ZDlhN2E5NWI2NmMwOTVjMWZmNjA0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLmh0bWwKQEAgLTAsMCAr
MSwyNSBAQAorPCFET0NUWVBFIGh0bWw+PCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBXZWJHTFVz
aW5nTWV0YWw9ZmFsc2UgV2ViR0xVc2luZ01ldGFsPXRydWUgcnVuU2luZ2x5PXRydWUgXSAtLT4K
KzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8dGl0bGU+V2ViS2l0IHRl
c3QgV2ViR0xVc2luZ01ldGFsPXRydWU8L3RpdGxlPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSJyZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5j
c3MiLz4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmls
ZXMvanMvd2ViZ2wtdGVzdC11dGlscy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3Vy
Y2VzL3dlYmdsLXZpYS1tZXRhbC1mbGFnLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8
c2NyaXB0PgorInVzZSBzdHJpY3QiOworZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBlbnN1cmVzIHRo
YXQgV2ViR0xVc2luZ01ldGFsPWZhbHNlIHdvcmtzLiIpOworCitkZWJ1ZygiIik7CitydW5UZXN0
KCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdsL3dl
YmdsLXZpYS1tZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmdsL3dl
YmdsLXZpYS1tZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZDc3ZTg5ZjZm
ZDFiODg3ZGVhNmQ3ZWVlZTMwN2VjOGY3MDA1MDVhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTMgQEAKK1RoaXMgdGVzdCBlbnN1cmVzIHRoYXQgV2ViR0xVc2luZ01ldGFsPXRydWUgd29y
a3MuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworVEVTVCBDT01QTEVURTogMSBQQVNT
LCAwIEZBSUwKKworCit3ZWJnbDogRGV0ZWN0ZWQgY29udGV4dCBpbXBsZW1lbnRhdGlvbjogT3Bl
bkdMCit3ZWJnbDI6IERldGVjdGVkIGNvbnRleHQgaW1wbGVtZW50YXRpb246IE9wZW5HTAorUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9uLmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYy
NzhhYTk3MjlkOTEwNzNhNGU1YmNjNjBiMDBiYzE1ZTc4ZjgyNjcKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCkBAIC0wLDAg
KzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPjwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgV2ViR0xV
c2luZ01ldGFsPXRydWUgcnVuU2luZ2x5PXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+Cis8bWV0
YSBjaGFyc2V0PSJ1dGYtOCI+Cis8dGl0bGU+V2ViS2l0IHRlc3QgV2ViR0xVc2luZ01ldGFsPXRy
dWU8L3RpdGxlPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvd2ViZ2xf
dGVzdF9maWxlcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiLz4KKzxzY3JpcHQgc3JjPSJy
ZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvd2ViZ2wtdGVzdC11dGls
cy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsLXZpYS1tZXRhbC1m
bGFnLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24i
PjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0PgorInVzZSBzdHJpY3Qi
OworZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgV2ViR0xVc2luZ01ldGFsPXRy
dWUgd29ya3MuIik7CisKK2RlYnVnKCIiKTsKK3J1blRlc3QoKTsKKwordmFyIHN1Y2Nlc3NmdWxs
eVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2xf
dGVzdF9maWxlcy9qcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453380</attachid>
            <date>2022-02-28 04:00:03 -0800</date>
            <delta_ts>2022-02-28 05:35:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236505-20220228140001.patch</filename>
            <type>text/plain</type>
            <size>16226</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDExNzNkYWI4NDY3ZTEx
N2FlODE3Y2M0YWFkMGVlNjA4OWEwZDE3Yi4uYzYzNjk4NThkYWIxOWM2NmQ1ZGFiMzM1ZjA5YjIz
OThlZGJmYTgwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAyLTI4ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgR1BVUCBP
cGVuR0wgY29udGV4dCBpcyBub3QgdXNlZCBldmVuIGlmIFdlYkdMIHZpYSBNZXRhbCBpcyBkZXNl
bGVjdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzY1MDUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBF
bmNvZGUsIGRlY29kZSBhbHNvIGB1c2VNZXRhbGAgcHJvcGVydHkuCisKKyAgICAgICAgVGVzdHM6
IHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi5odG1sCisgICAgICAgICAgICAgICB3ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZGVjb2RlKToKKwogMjAyMi0wMi0yOCAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0FU
U1BJXSBBbHdheXMgZXhwb3NlIHRhYmxlIGNlbGxzIChsYXlvdXQgYW5kIENTUykgdGhhdCBoYXZl
IHJlbmRlcmVkIHRleHQgY29udGVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaAppbmRleCBj
Yjk5ZmIxNjE3ZGJjNmFhOTcyOTFjODgxOWY4NDVjYmRjZjdmZjU3Li40YWY0Nzc3NGI4OTc5ZDM2
ZTQ4MGE3N2I3YzIyOTZlMzU5ZjA4YmQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaApA
QCAtMjYsNiArMjYsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpZiBFTkFCTEUoV0VCR0wpCisjaW5j
bHVkZSA8b3B0aW9uYWw+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNzQsOCArNzUsMTE3
IEBAIHN0cnVjdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMgewogICAgICAgICAgICAgcmV0
dXJuIFBvd2VyUHJlZmVyZW5jZTo6SGlnaFBlcmZvcm1hbmNlOwogICAgICAgICByZXR1cm4gcG93
ZXJQcmVmZXJlbmNlOwogICAgIH0KKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKKyAgICB0ZW1w
bGF0ZTx0eXBlbmFtZSBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7CisgICAg
dGVtcGxhdGU8dHlwZW5hbWUgRGVjb2Rlcj4gc3RhdGljIHN0ZDo6b3B0aW9uYWw8R3JhcGhpY3ND
b250ZXh0R0xBdHRyaWJ1dGVzPiBkZWNvZGUoRGVjb2RlciYpOworI2VuZGlmCit9OworCisjaWYg
RU5BQkxFKEdQVV9QUk9DRVNTKQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyPgordm9pZCBH
cmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25z
dAoreworICAgIGVuY29kZXIgPDwgYWxwaGEKKyAgICAgICAgPDwgZGVwdGgKKyAgICAgICAgPDwg
c3RlbmNpbAorICAgICAgICA8PCBhbnRpYWxpYXMKKyAgICAgICAgPDwgcHJlbXVsdGlwbGllZEFs
cGhhCisgICAgICAgIDw8IHByZXNlcnZlRHJhd2luZ0J1ZmZlcgorICAgICAgICA8PCBmYWlsSWZN
YWpvclBlcmZvcm1hbmNlQ2F2ZWF0CisgICAgICAgIDw8IHBvd2VyUHJlZmVyZW5jZQorICAgICAg
ICA8PCBzaGFyZVJlc291cmNlcworICAgICAgICA8PCBub0V4dGVuc2lvbnMKKyAgICAgICAgPDwg
ZGV2aWNlUGl4ZWxSYXRpbworICAgICAgICA8PCBpbml0aWFsUG93ZXJQcmVmZXJlbmNlCisgICAg
ICAgIDw8IHdlYkdMVmVyc2lvbgorICAgICAgICA8PCBmb3JjZVJlcXVlc3RGb3JIaWdoUGVyZm9y
bWFuY2VHUFU7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgZW5jb2RlciA8PCB1c2VNZXRhbDsK
KyNlbmRpZgorI2lmIEVOQUJMRShXRUJYUikKKyAgICBlbmNvZGVyIDw8IHhyQ29tcGF0aWJsZTsK
KyNlbmRpZgorfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBEZWNvZGVyPgorc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM+IEdyYXBoaWNzQ29udGV4dEdMQXR0
cmlidXRlczo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCit7CisgICAgYXV0byBhbHBoYSA9IGRl
Y29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byBkZXB0aCA9IGRlY29kZXIu
dGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byBzdGVuY2lsID0gZGVjb2Rlci50ZW1w
bGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIGFudGlhbGlhcyA9IGRlY29kZXIudGVtcGxh
dGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byBwcmVtdWx0aXBsaWVkQWxwaGEgPSBkZWNvZGVy
LnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAgIGF1dG8gcHJlc2VydmVEcmF3aW5nQnVmZmVy
ID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIGZhaWxJZk1ham9y
UGVyZm9ybWFuY2VDYXZlYXQgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAg
IGF1dG8gcG93ZXJQcmVmZXJlbmNlID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8UG93ZXJQcmVm
ZXJlbmNlPigpOworICAgIGF1dG8gc2hhcmVSZXNvdXJjZXMgPSBkZWNvZGVyLnRlbXBsYXRlIGRl
Y29kZTxib29sPigpOworICAgIGF1dG8gbm9FeHRlbnNpb25zID0gZGVjb2Rlci50ZW1wbGF0ZSBk
ZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIGRldmljZVBpeGVsUmF0aW8gPSBkZWNvZGVyLnRlbXBs
YXRlIGRlY29kZTxmbG9hdD4oKTsKKyAgICBhdXRvIGluaXRpYWxQb3dlclByZWZlcmVuY2UgPSBk
ZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxQb3dlclByZWZlcmVuY2U+KCk7CisgICAgYXV0byB3ZWJH
TFZlcnNpb24gPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxXZWJHTFZlcnNpb24+KCk7CisgICAg
YXV0byBmb3JjZVJlcXVlc3RGb3JIaWdoUGVyZm9ybWFuY2VHUFUgPSBkZWNvZGVyLnRlbXBsYXRl
IGRlY29kZTxib29sPigpOworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGF1dG8gdXNlTWV0YWwg
PSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworI2VuZGlmCisjaWYgRU5BQkxFKFdF
QlhSKQorICAgIGF1dG8geHJDb21wYXRpYmxlID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9v
bD4oKTsKKyNlbmRpZgorICAgIGlmICghZGVjb2Rlci5pc1ZhbGlkKCkpCisgICAgICAgIHJldHVy
biBzdGQ6Om51bGxvcHQ7CisgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyB7
CisgICAgICAgICphbHBoYSwKKyAgICAgICAgKmRlcHRoLAorICAgICAgICAqc3RlbmNpbCwKKyAg
ICAgICAgKmFudGlhbGlhcywKKyAgICAgICAgKnByZW11bHRpcGxpZWRBbHBoYSwKKyAgICAgICAg
KnByZXNlcnZlRHJhd2luZ0J1ZmZlciwKKyAgICAgICAgKmZhaWxJZk1ham9yUGVyZm9ybWFuY2VD
YXZlYXQsCisgICAgICAgICpwb3dlclByZWZlcmVuY2UsCisgICAgICAgICpzaGFyZVJlc291cmNl
cywKKyAgICAgICAgKm5vRXh0ZW5zaW9ucywKKyAgICAgICAgKmRldmljZVBpeGVsUmF0aW8sCisg
ICAgICAgICppbml0aWFsUG93ZXJQcmVmZXJlbmNlLAorICAgICAgICAqd2ViR0xWZXJzaW9uLAor
ICAgICAgICAqZm9yY2VSZXF1ZXN0Rm9ySGlnaFBlcmZvcm1hbmNlR1BVLAorI2lmIFBMQVRGT1JN
KENPQ09BKQorICAgICAgICAqdXNlTWV0YWwsCisjZW5kaWYKKyNpZiBFTkFCTEUoV0VCWFIpCisg
ICAgICAgICp4ckNvbXBhdGlibGUKKyNlbmRpZgorICAgIH07Cit9CisKKyNlbmRpZgorCit9CisK
KyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCituYW1lc3BhY2UgV1RGIHsKKwordGVtcGxhdGUgPD4g
c3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xQb3dlclByZWZlcmVu
Y2U+IHsKKyAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAgIFdlYkNvcmU6OkdyYXBo
aWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlLAorICAgIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dEdMUG93ZXJQcmVmZXJlbmNlOjpEZWZhdWx0LAorICAgIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dEdMUG93ZXJQcmVmZXJlbmNlOjpMb3dQb3dlciwKKyAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTFBvd2VyUHJlZmVyZW5jZTo6SGlnaFBlcmZvcm1hbmNlCisgICAgPjsKK307CisKK3RlbXBs
YXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMV2ViR0xW
ZXJzaW9uPiB7CisgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlczwKKyAgICBXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHRHTFdlYkdMVmVyc2lvbiwKKyAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTFdlYkdMVmVyc2lvbjo6V2ViR0wxCisjaWYgRU5BQkxFKFdFQkdMMikKKyAgICAsIFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMV2ViR0xWZXJzaW9uOjpXZWJHTDIKKyNlbmRpZgorICAgID47
CiB9OwogCiB9CiAKKyNlbmRpZgorCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKaW5kZXggOTk4N2IxYTg0
NzY4ZjI3Mzg2M2RjMGIxYTU1MzkxNTNjNDk4MTc4My4uMjdhMDMzZjcwY2RlNDFmMmFmZGExMmIw
YTE4NWQ3MTE0YjQwZDEwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29y
ZUFyZ3VtZW50Q29kZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJn
dW1lbnRDb2RlcnMuY3BwCkBAIC0zMTk5LDYxICszMTk5LDYgQEAgc3RkOjpvcHRpb25hbDxXZWJD
b3JlOjpDRE1JbnN0YW5jZVNlc3Npb246Ok1lc3NhZ2U+ICBBcmd1bWVudENvZGVyPFdlYkNvcmU6
OkNETUkKICNlbmRpZiAvLyBFTkFCTEUoRU5DUllQVEVEX01FRElBKQogCiAjaWYgRU5BQkxFKEdQ
VV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VCR0wpCi12b2lkIEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzPjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIsIGNv
bnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYgYXR0cmlidXRlcykKLXsK
LSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMuYWxwaGE7Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1
dGVzLmRlcHRoOwotICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5zdGVuY2lsOwotICAgIGVuY29k
ZXIgPDwgYXR0cmlidXRlcy5hbnRpYWxpYXM7Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLnBy
ZW11bHRpcGxpZWRBbHBoYTsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMucHJlc2VydmVEcmF3
aW5nQnVmZmVyOwotICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5mYWlsSWZNYWpvclBlcmZvcm1h
bmNlQ2F2ZWF0OwotICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5wb3dlclByZWZlcmVuY2U7Ci0g
ICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLnNoYXJlUmVzb3VyY2VzOwotICAgIGVuY29kZXIgPDwg
YXR0cmlidXRlcy53ZWJHTFZlcnNpb247Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLm5vRXh0
ZW5zaW9uczsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMuZGV2aWNlUGl4ZWxSYXRpbzsKLSAg
ICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMuaW5pdGlhbFBvd2VyUHJlZmVyZW5jZTsKLSNpZiBFTkFC
TEUoV0VCWFIpCi0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLnhyQ29tcGF0aWJsZTsKLSNlbmRp
ZgotfQotCi1zdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRl
cz4gQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM+Ojpk
ZWNvZGUoRGVjb2RlciYgZGVjb2RlcikKLXsKLSAgICBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0
ZXMgYXR0cmlidXRlczsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuYWxwaGEp
KQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
YXR0cmlidXRlcy5kZXB0aCkpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Ci0gICAgaWYg
KCFkZWNvZGVyLmRlY29kZShhdHRyaWJ1dGVzLnN0ZW5jaWwpKQotICAgICAgICByZXR1cm4gc3Rk
OjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5hbnRpYWxpYXMp
KQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
YXR0cmlidXRlcy5wcmVtdWx0aXBsaWVkQWxwaGEpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxs
b3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5wcmVzZXJ2ZURyYXdpbmdC
dWZmZXIpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUoYXR0cmlidXRlcy5mYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0KSkKLSAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMu
cG93ZXJQcmVmZXJlbmNlKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAo
IWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuc2hhcmVSZXNvdXJjZXMpKQotICAgICAgICByZXR1
cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy53ZWJH
TFZlcnNpb24pKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUoYXR0cmlidXRlcy5ub0V4dGVuc2lvbnMpKQotICAgICAgICByZXR1cm4gc3RkOjpu
dWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5kZXZpY2VQaXhlbFJh
dGlvKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKGF0dHJpYnV0ZXMuaW5pdGlhbFBvd2VyUHJlZmVyZW5jZSkpCi0gICAgICAgIHJldHVybiBz
dGQ6Om51bGxvcHQ7Ci0jaWYgRU5BQkxFKFdFQlhSKQotICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
YXR0cmlidXRlcy54ckNvbXBhdGlibGUpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0Owot
I2VuZGlmCi0gICAgcmV0dXJuIGF0dHJpYnV0ZXM7Ci19CiAKIHRlbXBsYXRlPHR5cGVuYW1lIEVu
Y29kZXI+CiB2b2lkIEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6OkFj
dGl2ZUluZm8+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0w6OkFjdGl2ZUluZm8mIGFjdGl2ZUluZm8pCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCmluZGV4IDZlMjdhNzg3MjAyMTcxYmJjZWRiYjY0
ODM5MjBhN2U3OWJkNTgwYmYuLjc0ZTMzMDBjMGM2ZTQ4ZDJjNzIyMDlkZDllNGE0MmQ4YTM5NDU4
ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCkBA
IC04Nyw3ICs4Nyw2IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VCR0wp
CiAjaW5jbHVkZSAiQXJyYXlSZWZlcmVuY2UuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNz
Q29udGV4dEdMLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0
ZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzVHlwZXNHTC5oPgogI2VuZGlmCiAKQEAg
LTIxOCwxMCArMjE3LDYgQEAgc3RydWN0IE1lZGlhQ29uc3RyYWludHM7CiBzdHJ1Y3QgU2VyaWFs
aXplZEF0dGFjaG1lbnREYXRhOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYm
IEVOQUJMRShXRUJHTCkKLXN0cnVjdCBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM7Ci0jZW5k
aWYKLQogbmFtZXNwYWNlIERPTUNhY2hlRW5naW5lIHsKIHN0cnVjdCBDYWNoZUluZm87CiBzdHJ1
Y3QgUmVjb3JkOwpAQCAtODAyLDExICs3OTcsNiBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVu
dENvZGVyPFdlYkNvcmU6OlBheW1lbnRJbnN0YWxsbWVudENvbmZpZ3VyYXRpb24+IHsKIAogI2lm
IEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKFdFQkdMKQogCi10ZW1wbGF0ZTw+IHN0cnVj
dCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcz4gewot
ICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0xBdHRyaWJ1dGVzJik7Ci0gICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzPiBkZWNvZGUoRGVjb2RlciYpOwotfTsKLQogdGVt
cGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6
QWN0aXZlSW5mbz4gewogICAgIHRlbXBsYXRlPHR5cGVuYW1lIEVuY29kZXI+CiAgICAgc3RhdGlj
IHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6
QWN0aXZlSW5mbyYpOwpAQCAtOTkyLDI1ICs5ODIsNiBAQCB0ZW1wbGF0ZSA8PiBzdHJ1Y3QgRW51
bVRyYWl0czxXZWJDb3JlOjpDRE1JbnN0YW5jZTo6SERDUFN0YXR1cz4gewogCiAjaWYgRU5BQkxF
KEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VCR0wpCiAKLXRlbXBsYXRlIDw+IHN0cnVjdCBFbnVt
VHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlPiB7Ci0gICAg
dXNpbmcgdmFsdWVzID0gRW51bVZhbHVlcyA8Ci0gICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0
R0xQb3dlclByZWZlcmVuY2UsCi0gICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xQb3dlclBy
ZWZlcmVuY2U6OkRlZmF1bHQsCi0gICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xQb3dlclBy
ZWZlcmVuY2U6Okxvd1Bvd2VyLAotICAgIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMUG93ZXJQ
cmVmZXJlbmNlOjpIaWdoUGVyZm9ybWFuY2UKLSAgICA+OwotfTsKLQotdGVtcGxhdGUgPD4gc3Ry
dWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb24+IHsK
LSAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzIDwKLSAgICBXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTFdlYkdMVmVyc2lvbiwKLSAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFdlYkdM
VmVyc2lvbjo6V2ViR0wxCi0jaWYgRU5BQkxFKFdFQkdMMikKLSAgICAsIFdlYkNvcmU6OkdyYXBo
aWNzQ29udGV4dEdMV2ViR0xWZXJzaW9uOjpXZWJHTDIKLSNlbmRpZgotICAgID47Ci19OwotCiB0
ZW1wbGF0ZSA8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6
U2ltdWxhdGVkRXZlbnRGb3JUZXN0aW5nPiB7CiAgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVl
czwKICAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6U2ltdWxhdGVkRXZlbnRGb3JUZXN0
aW5nLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IDNlZmM0YjMxMmY2NTcwMDYxYmI0YmEyYzVjMGQwMTI1YmI5YzE1YzIuLjdl
NjEyYWNkNDU3ZmUyOGQ0NGY1MDhiYTNmNjNkZGVjMGVhNDZiZjggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NyBAQAorMjAyMi0wMi0yOCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgor
CisgICAgICAgIFdlYkdMIEdQVVAgT3BlbkdMIGNvbnRleHQgaXMgbm90IHVzZWQgZXZlbiBpZiBX
ZWJHTCB2aWEgTWV0YWwgaXMgZGVzZWxlY3RlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM2NTA1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiB3ZWJnbC9yZXNvdXJjZXMvd2ViZ2wtdmlhLW1ldGFsLWZs
YWcuanM6IEFkZGVkLgorICAgICAgICAocnVuVGVzdCk6CisgICAgICAgICogd2ViZ2wvd2ViZ2wt
dmlhLW1ldGFsLWZsYWctb2ZmLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViZ2wv
d2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmdsL3dl
YmdsLXZpYS1tZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2Vi
Z2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb24uaHRtbDogQWRkZWQuCisKIDIwMjItMDItMjggIENh
cmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtBVFNQ
SV0gQWx3YXlzIGV4cG9zZSB0YWJsZSBjZWxscyAobGF5b3V0IGFuZCBDU1MpIHRoYXQgaGF2ZSBy
ZW5kZXJlZCB0ZXh0IGNvbnRlbnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdsL3Jlc291
cmNlcy90ZXN0LXNoYWRlci1pbXBsZW1lbnRhdGlvbi1sYW5ndWFnZS5qcyBiL0xheW91dFRlc3Rz
L3dlYmdsL3Jlc291cmNlcy90ZXN0LXNoYWRlci1pbXBsZW1lbnRhdGlvbi1sYW5ndWFnZS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5kOWMwZThiMWY5NjI3ZjRiODkxODYxNDFkMGZjNDBjYTczOWRhNGNhCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ2wvcmVzb3VyY2VzL3Rlc3Qtc2hhZGVyLWlt
cGxlbWVudGF0aW9uLWxhbmd1YWdlLmpzCkBAIC0wLDAgKzEsMjcgQEAKKyJ1c2Ugc3RyaWN0IjsK
KworbGV0IHN1YmNhc2VzID0gW107Citmb3IgKGxldCBjb250ZXh0VHlwZSBvZiBbICJ3ZWJnbCIs
ICJ3ZWJnbDIiIF0pIHsKKyAgICBzdWJjYXNlcy5wdXNoKHsgY29udGV4dFR5cGUgfSk7Cit9CisK
K2Z1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgZm9yIChjb25zdCBzdWJjYXNlIG9mIHN1YmNhc2Vz
KSB7CisgICAgICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZh
cyIpOworICAgICAgICBjb25zdCBnbCA9IGNhbnZhcy5nZXRDb250ZXh0KHN1YmNhc2UuY29udGV4
dFR5cGUpOworICAgICAgICBpZiAoIWdsKSB7CisgICAgICAgICAgICB0ZXN0UGFzc2VkKGAke3N1
YmNhc2UuY29udGV4dFR5cGV9OiBOb3Qgc3VwcG9ydGVkLmApOworICAgICAgICAgICAgY29udGlu
dWU7CisgICAgICAgIH0KKyAgICAgICAgY29uc3Qgc2hhZGVyID0gZ2wuY3JlYXRlU2hhZGVyKGds
LkZSQUdNRU5UX1NIQURFUik7CisgICAgICAgIGdsLnNoYWRlclNvdXJjZShzaGFkZXIsICJ2b2lk
IG1haW4oKSB7IGdsX0ZyYWdDb2xvciA9IHZlYzQoZ2xfRnJhZ0Nvb3JkLngsIDAuMCwgMC4wLCAx
LjApOyB9Iik7CisgICAgICAgIGdsLmNvbXBpbGVTaGFkZXIoc2hhZGVyKTsKKyAgICAgICAgY29u
c3Qgc3JjID0gZ2wuZ2V0RXh0ZW5zaW9uKCJXRUJHTF9kZWJ1Z19zaGFkZXJzIikuZ2V0VHJhbnNs
YXRlZFNoYWRlclNvdXJjZShzaGFkZXIpOworICAgICAgICBsZXQgdHlwZSA9ICJVbmtub3duIjsK
KyAgICAgICAgaWYgKHNyYy5zZWFyY2goL15mcmFnbWVudCBBTkdMRV9GcmFnbWVudE91dCBtYWlu
L20pID49IDApCisgICAgICAgICAgICB0eXBlID0gIk1ldGFsIjsKKyAgICAgICAgaWYgKHNyYy5z
ZWFyY2goL152b2lkIG1haW4oKS9tKSA+PSAwKQorICAgICAgICAgICAgdHlwZSA9ICJPcGVuR0wi
OworICAgICAgICB0ZXN0UGFzc2VkKGAke3N1YmNhc2UuY29udGV4dFR5cGV9OiBEZXRlY3RlZCBz
aGFkZXIgaW1wbGVtZW50YXRpb24gbGFuZ3VhZ2U6ICR7dHlwZX1gKTsKKyAgICB9Cit9ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ2wvd2Vi
Z2wtdmlhLW1ldGFsLWZsYWctb2ZmLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmdsL3dl
YmdsLXZpYS1tZXRhbC1mbGFnLW9mZi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWQzNGViZGJh
MzU0NjNmNjAyYWNiYmUzMDhjNWE4MGYwY2ZlZjc4NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMyBAQAorVGhpcyB0ZXN0IG91dHB1dHMgV2ViR0wgR0xTTCBpbXBsZW1lbnRhdGlvbiBs
YW5ndWFnZSB3aGVuIHVzaW5nIFdlYkdMVXNpbmdNZXRhbD1mYWxzZS4KKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCitURVNUIENPTVBMRVRFOiAzIFBBU1MsIDAgRkFJTAorCisKK1BBU1Mg
d2ViZ2w6IERldGVjdGVkIHNoYWRlciBpbXBsZW1lbnRhdGlvbiBsYW5ndWFnZTogT3BlbkdMCitQ
QVNTIHdlYmdsMjogRGV0ZWN0ZWQgc2hhZGVyIGltcGxlbWVudGF0aW9uIGxhbmd1YWdlOiBPcGVu
R0wKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vZmYuaHRt
bCBiL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmY5ZDVkMWEzODczYWYzZmJmZjg5MzYwMTA1Yjc0NWRmODA3ZmNjMTkKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vZmYuaHRt
bApAQCAtMCwwICsxLDI1IEBACis8IURPQ1RZUEUgaHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5l
ciBbIFdlYkdMVXNpbmdNZXRhbD1mYWxzZSBydW5TaW5nbHk9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8
aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzx0aXRsZT5XZWJLaXQgdGVzdCBXZWJHTFVz
aW5nTWV0YWw9ZmFsc2U8L3RpdGxlPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNv
dXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiLz4KKzxz
Y3JpcHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvd2Vi
Z2wtdGVzdC11dGlscy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3Qt
c2hhZGVyLWltcGxlbWVudGF0aW9uLWxhbmd1YWdlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Cis8c2NyaXB0PgorInVzZSBzdHJpY3QiOworZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBvdXRw
dXRzIFdlYkdMIEdMU0wgaW1wbGVtZW50YXRpb24gbGFuZ3VhZ2Ugd2hlbiB1c2luZyBXZWJHTFVz
aW5nTWV0YWw9ZmFsc2UuIik7CisKK2RlYnVnKCIiKTsKK3J1blRlc3QoKTsKKwordmFyIHN1Y2Nl
c3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
d2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZs
YWctb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZs
YWctb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZkODgwMjRkMzY4YjBlN2EyNDZlZDExZGI5
NjViMGQ2NGFmODkzZGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJnbC93ZWJn
bC12aWEtbWV0YWwtZmxhZy1vbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMyBAQAorVGhpcyB0
ZXN0IG91dHB1dHMgV2ViR0wgR0xTTCBpbXBsZW1lbnRhdGlvbiBsYW5ndWFnZSB3aGVuIHVzaW5n
IFdlYkdMVXNpbmdNZXRhbD10cnVlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1RF
U1QgQ09NUExFVEU6IDMgUEFTUywgMCBGQUlMCisKKworUEFTUyB3ZWJnbDogRGV0ZWN0ZWQgc2hh
ZGVyIGltcGxlbWVudGF0aW9uIGxhbmd1YWdlOiBNZXRhbAorUEFTUyB3ZWJnbDI6IERldGVjdGVk
IHNoYWRlciBpbXBsZW1lbnRhdGlvbiBsYW5ndWFnZTogTWV0YWwKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ2wv
d2ViZ2wtdmlhLW1ldGFsLWZsYWctb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYmIyMDFhMGQyZDFkMzll
YzA2MTExNzk5M2IyNjcxZTkzZTRkOTFhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb24uaHRtbApAQCAtMCwwICsxLDI1IEBACis8IURP
Q1RZUEUgaHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIFdlYkdMVXNpbmdNZXRhbD10cnVl
IHJ1blNpbmdseT10cnVlIF0gLS0+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0idXRm
LTgiPgorPHRpdGxlPldlYktpdCB0ZXN0IFdlYkdMVXNpbmdNZXRhbD10cnVlPC90aXRsZT4KKzxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvcmVz
b3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIi8+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmds
X3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJl
c291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2pzL3dlYmdsLXRlc3QtdXRpbHMuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LXNoYWRlci1pbXBsZW1lbnRhdGlvbi1sYW5n
dWFnZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9u
Ij48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKyJ1c2Ugc3RyaWN0
IjsKK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3Qgb3V0cHV0cyBXZWJHTCBHTFNMIGltcGxlbWVudGF0
aW9uIGxhbmd1YWdlIHdoZW4gdXNpbmcgV2ViR0xVc2luZ01ldGFsPXRydWUuIik7CisKK2RlYnVn
KCIiKTsKK3J1blRlc3QoKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453385</attachid>
            <date>2022-02-28 05:35:43 -0800</date>
            <delta_ts>2022-02-28 10:43:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236505-20220228153541.patch</filename>
            <type>text/plain</type>
            <size>16947</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2M3NTdkMDIwMDc2MTUx
ZWUzZjlmNTIzODE3NzhhYWMxNzQ2OTVkMi4uZjY1ZGU3MGFhMDMzZWE5Y2RkNjhjMDFlYjQyMTVl
NGRhODBiZTc0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAyLTI4ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgR1BVUCBP
cGVuR0wgY29udGV4dCBpcyBub3QgdXNlZCBldmVuIGlmIFdlYkdMIHZpYSBNZXRhbCBpcyBkZXNl
bGVjdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzY1MDUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBF
bmNvZGUsIGRlY29kZSBhbHNvIGB1c2VNZXRhbGAgcHJvcGVydHkuCisKKyAgICAgICAgVGVzdHM6
IHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi5odG1sCisgICAgICAgICAgICAgICB3ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZGVjb2RlKToKKwogMjAyMi0wMi0yOCAg
S2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgogCiAgICAgICAgIEdyYXBoaWNz
Q29udGV4dEdMIHJlbGF0ZWQgaW5jbHVkZXMgYXJlIGluY29uc2lzdGVudCwgc2xvd2luZyB0aGUg
YnVpbGQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggYmE5MmQxZDZhNjc4MTJiY2YxOWRhOGY3OTBlYmQ3MzQwNDIzNWE2
Zi4uMzEzMzY5MDIxNjYzMmQyYzk4ZmUwNjFhNDM5MDI1YjNmMzc3YTc1MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxMyBAQAorMjAyMi0wMi0yOCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBw
bGUuY29tPgorCisgICAgICAgIFdlYkdMIEdQVVAgT3BlbkdMIGNvbnRleHQgaXMgbm90IHVzZWQg
ZXZlbiBpZiBXZWJHTCB2aWEgTWV0YWwgaXMgZGVzZWxlY3RlZAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM2NTA1CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzLmNwcDoKKyAgICAgICAgKiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmg6CisKIDIw
MjItMDItMjggIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KIAogICAgICAg
ICBHcmFwaGljc0NvbnRleHRHTCByZWxhdGVkIGluY2x1ZGVzIGFyZSBpbmNvbnNpc3RlbnQsIHNs
b3dpbmcgdGhlIGJ1aWxkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcy5oCmluZGV4IGNiOTlmYjE2
MTdkYmM2YWE5NzI5MWM4ODE5Zjg0NWNiZGNmN2ZmNTcuLjI3ODIyNTQwMDZhNGJlMDg4Y2Q5MDkw
N2IwNjlmOTY1NjIwYTNiMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcy5oCkBAIC0yNiw2
ICsyNiw4IEBACiAjcHJhZ21hIG9uY2UKIAogI2lmIEVOQUJMRShXRUJHTCkKKyNpbmNsdWRlIDxv
cHRpb25hbD4KKyNpbmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKQEAgLTc0LDggKzc2LDExNyBAQCBzdHJ1Y3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1
dGVzIHsKICAgICAgICAgICAgIHJldHVybiBQb3dlclByZWZlcmVuY2U6OkhpZ2hQZXJmb3JtYW5j
ZTsKICAgICAgICAgcmV0dXJuIHBvd2VyUHJlZmVyZW5jZTsKICAgICB9CisKKyNpZiBFTkFCTEUo
R1BVX1BST0NFU1MpCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgRW5jb2Rlcj4gdm9pZCBlbmNvZGUo
RW5jb2RlciYpIGNvbnN0OworICAgIHRlbXBsYXRlPHR5cGVuYW1lIERlY29kZXI+IHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcz4gZGVjb2RlKERlY29kZXIm
KTsKKyNlbmRpZgorfTsKKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKKwordGVtcGxhdGU8dHlw
ZW5hbWUgRW5jb2Rlcj4KK3ZvaWQgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzOjplbmNvZGUo
RW5jb2RlciYgZW5jb2RlcikgY29uc3QKK3sKKyAgICBlbmNvZGVyIDw8IGFscGhhCisgICAgICAg
IDw8IGRlcHRoCisgICAgICAgIDw8IHN0ZW5jaWwKKyAgICAgICAgPDwgYW50aWFsaWFzCisgICAg
ICAgIDw8IHByZW11bHRpcGxpZWRBbHBoYQorICAgICAgICA8PCBwcmVzZXJ2ZURyYXdpbmdCdWZm
ZXIKKyAgICAgICAgPDwgZmFpbElmTWFqb3JQZXJmb3JtYW5jZUNhdmVhdAorICAgICAgICA8PCBw
b3dlclByZWZlcmVuY2UKKyAgICAgICAgPDwgc2hhcmVSZXNvdXJjZXMKKyAgICAgICAgPDwgbm9F
eHRlbnNpb25zCisgICAgICAgIDw8IGRldmljZVBpeGVsUmF0aW8KKyAgICAgICAgPDwgaW5pdGlh
bFBvd2VyUHJlZmVyZW5jZQorICAgICAgICA8PCB3ZWJHTFZlcnNpb24KKyAgICAgICAgPDwgZm9y
Y2VSZXF1ZXN0Rm9ySGlnaFBlcmZvcm1hbmNlR1BVOworI2lmIFBMQVRGT1JNKENPQ09BKQorICAg
IGVuY29kZXIgPDwgdXNlTWV0YWw7CisjZW5kaWYKKyNpZiBFTkFCTEUoV0VCWFIpCisgICAgZW5j
b2RlciA8PCB4ckNvbXBhdGlibGU7CisjZW5kaWYKK30KKwordGVtcGxhdGU8dHlwZW5hbWUgRGVj
b2Rlcj4KK3N0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVz
PiBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM6OmRlY29kZShEZWNvZGVyJiBkZWNvZGVyKQor
eworICAgIGF1dG8gYWxwaGEgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAg
IGF1dG8gZGVwdGggPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAgIGF1dG8g
c3RlbmNpbCA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byBhbnRp
YWxpYXMgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAgIGF1dG8gcHJlbXVs
dGlwbGllZEFscGhhID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRv
IHByZXNlcnZlRHJhd2luZ0J1ZmZlciA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7
CisgICAgYXV0byBmYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0ID0gZGVjb2Rlci50ZW1wbGF0
ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIHBvd2VyUHJlZmVyZW5jZSA9IGRlY29kZXIudGVt
cGxhdGUgZGVjb2RlPFBvd2VyUHJlZmVyZW5jZT4oKTsKKyAgICBhdXRvIHNoYXJlUmVzb3VyY2Vz
ID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIG5vRXh0ZW5zaW9u
cyA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byBkZXZpY2VQaXhl
bFJhdGlvID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8ZmxvYXQ+KCk7CisgICAgYXV0byBpbml0
aWFsUG93ZXJQcmVmZXJlbmNlID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8UG93ZXJQcmVmZXJl
bmNlPigpOworICAgIGF1dG8gd2ViR0xWZXJzaW9uID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8
V2ViR0xWZXJzaW9uPigpOworICAgIGF1dG8gZm9yY2VSZXF1ZXN0Rm9ySGlnaFBlcmZvcm1hbmNl
R1BVID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyNpZiBQTEFURk9STShDT0NP
QSkKKyAgICBhdXRvIHVzZU1ldGFsID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsK
KyNlbmRpZgorI2lmIEVOQUJMRShXRUJYUikKKyAgICBhdXRvIHhyQ29tcGF0aWJsZSA9IGRlY29k
ZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisjZW5kaWYKKyAgICBpZiAoIWRlY29kZXIuaXNW
YWxpZCgpKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgIHJldHVybiBHcmFwaGlj
c0NvbnRleHRHTEF0dHJpYnV0ZXMgeworICAgICAgICAqYWxwaGEsCisgICAgICAgICpkZXB0aCwK
KyAgICAgICAgKnN0ZW5jaWwsCisgICAgICAgICphbnRpYWxpYXMsCisgICAgICAgICpwcmVtdWx0
aXBsaWVkQWxwaGEsCisgICAgICAgICpwcmVzZXJ2ZURyYXdpbmdCdWZmZXIsCisgICAgICAgICpm
YWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0LAorICAgICAgICAqcG93ZXJQcmVmZXJlbmNlLAor
ICAgICAgICAqc2hhcmVSZXNvdXJjZXMsCisgICAgICAgICpub0V4dGVuc2lvbnMsCisgICAgICAg
ICpkZXZpY2VQaXhlbFJhdGlvLAorICAgICAgICAqaW5pdGlhbFBvd2VyUHJlZmVyZW5jZSwKKyAg
ICAgICAgKndlYkdMVmVyc2lvbiwKKyAgICAgICAgKmZvcmNlUmVxdWVzdEZvckhpZ2hQZXJmb3Jt
YW5jZUdQVSwKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICAgICAgKnVzZU1ldGFsLAorI2VuZGlm
CisjaWYgRU5BQkxFKFdFQlhSKQorICAgICAgICAqeHJDb21wYXRpYmxlCisjZW5kaWYKKyAgICB9
OworfQorCisjZW5kaWYKKworfQorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorbmFtZXNwYWNl
IFdURiB7CisKK3RlbXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMUG93ZXJQcmVmZXJlbmNlPiB7CisgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVl
czwKKyAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFBvd2VyUHJlZmVyZW5jZSwKKyAgICBX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFBvd2VyUHJlZmVyZW5jZTo6RGVmYXVsdCwKKyAgICBX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFBvd2VyUHJlZmVyZW5jZTo6TG93UG93ZXIsCisgICAg
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xQb3dlclByZWZlcmVuY2U6OkhpZ2hQZXJmb3JtYW5j
ZQorICAgID47Cit9OworCit0ZW1wbGF0ZSA8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHRHTFdlYkdMVmVyc2lvbj4geworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1W
YWx1ZXM8CisgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb24sCisgICAg
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb246OldlYkdMMQorI2lmIEVOQUJM
RShXRUJHTDIpCisgICAgLCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFdlYkdMVmVyc2lvbjo6
V2ViR0wyCisjZW5kaWYKKyAgICA+OwogfTsKIAogfQogCisjZW5kaWYKKwogI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1
bWVudENvZGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2Rl
cnMuY3BwCmluZGV4IDk5ODdiMWE4NDc2OGYyNzM4NjNkYzBiMWE1NTM5MTUzYzQ5ODE3ODMuLjI3
YTAzM2Y3MGNkZTQxZjJhZmRhMTJiMGExODVkNzExNGI0MGQxMDYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcApAQCAtMzE5OSw2MSArMzE5OSw2
IEBAIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6Q0RNSW5zdGFuY2VTZXNzaW9uOjpNZXNzYWdlPiAg
QXJndW1lbnRDb2RlcjxXZWJDb3JlOjpDRE1JCiAjZW5kaWYgLy8gRU5BQkxFKEVOQ1JZUFRFRF9N
RURJQSkKIAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKFdFQkdMKQotdm9pZCBB
cmd1bWVudENvZGVyPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcz46OmVuY29k
ZShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMmIGF0dHJpYnV0ZXMpCi17Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLmFscGhhOwot
ICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5kZXB0aDsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0
ZXMuc3RlbmNpbDsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMuYW50aWFsaWFzOwotICAgIGVu
Y29kZXIgPDwgYXR0cmlidXRlcy5wcmVtdWx0aXBsaWVkQWxwaGE7Ci0gICAgZW5jb2RlciA8PCBh
dHRyaWJ1dGVzLnByZXNlcnZlRHJhd2luZ0J1ZmZlcjsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0
ZXMuZmFpbElmTWFqb3JQZXJmb3JtYW5jZUNhdmVhdDsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0
ZXMucG93ZXJQcmVmZXJlbmNlOwotICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5zaGFyZVJlc291
cmNlczsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMud2ViR0xWZXJzaW9uOwotICAgIGVuY29k
ZXIgPDwgYXR0cmlidXRlcy5ub0V4dGVuc2lvbnM7Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVz
LmRldmljZVBpeGVsUmF0aW87Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLmluaXRpYWxQb3dl
clByZWZlcmVuY2U7Ci0jaWYgRU5BQkxFKFdFQlhSKQotICAgIGVuY29kZXIgPDwgYXR0cmlidXRl
cy54ckNvbXBhdGlibGU7Ci0jZW5kaWYKLX0KLQotc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXM+IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0xBdHRyaWJ1dGVzPjo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCi17Ci0gICAgR3Jh
cGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXM7Ci0gICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShhdHRyaWJ1dGVzLmFscGhhKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuZGVwdGgpKQotICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5zdGVuY2ls
KSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KGF0dHJpYnV0ZXMuYW50aWFsaWFzKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMucHJlbXVsdGlwbGllZEFscGhhKSkKLSAg
ICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJp
YnV0ZXMucHJlc2VydmVEcmF3aW5nQnVmZmVyKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9w
dDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuZmFpbElmTWFqb3JQZXJmb3Jt
YW5jZUNhdmVhdCkpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Ci0gICAgaWYgKCFkZWNv
ZGVyLmRlY29kZShhdHRyaWJ1dGVzLnBvd2VyUHJlZmVyZW5jZSkpCi0gICAgICAgIHJldHVybiBz
dGQ6Om51bGxvcHQ7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShhdHRyaWJ1dGVzLnNoYXJlUmVz
b3VyY2VzKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKGF0dHJpYnV0ZXMud2ViR0xWZXJzaW9uKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVs
bG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMubm9FeHRlbnNpb25zKSkK
LSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0
dHJpYnV0ZXMuZGV2aWNlUGl4ZWxSYXRpbykpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7
Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShhdHRyaWJ1dGVzLmluaXRpYWxQb3dlclByZWZlcmVu
Y2UpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotI2lmIEVOQUJMRShXRUJYUikKLSAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMueHJDb21wYXRpYmxlKSkKLSAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSNlbmRpZgotICAgIHJldHVybiBhdHRyaWJ1dGVzOwotfQog
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyPgogdm9pZCBBcmd1bWVudENvZGVyPFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMOjpBY3RpdmVJbmZvPjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIs
IGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpBY3RpdmVJbmZvJiBhY3RpdmVJbmZv
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJz
LmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAppbmRleCA2
ZTI3YTc4NzIwMjE3MWJiY2VkYmI2NDgzOTIwYTdlNzliZDU4MGJmLi43NGUzMzAwYzBjNmU0OGQy
YzcyMjA5ZGQ5ZTRhNDJkOGEzOTQ1OGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJD
b3JlQXJndW1lbnRDb2RlcnMuaApAQCAtODcsNyArODcsNiBAQAogI2lmIEVOQUJMRShHUFVfUFJP
Q0VTUykgJiYgRU5BQkxFKFdFQkdMKQogI2luY2x1ZGUgIkFycmF5UmVmZXJlbmNlLmgiCiAjaW5j
bHVkZSA8V2ViQ29yZS9HcmFwaGljc0NvbnRleHRHTC5oPgotI2luY2x1ZGUgPFdlYkNvcmUvR3Jh
cGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc1R5
cGVzR0wuaD4KICNlbmRpZgogCkBAIC0yMTgsMTAgKzIxNyw2IEBAIHN0cnVjdCBNZWRpYUNvbnN0
cmFpbnRzOwogc3RydWN0IFNlcmlhbGl6ZWRBdHRhY2htZW50RGF0YTsKICNlbmRpZgogCi0jaWYg
RU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VCR0wpCi1zdHJ1Y3QgR3JhcGhpY3NDb250
ZXh0R0xBdHRyaWJ1dGVzOwotI2VuZGlmCi0KIG5hbWVzcGFjZSBET01DYWNoZUVuZ2luZSB7CiBz
dHJ1Y3QgQ2FjaGVJbmZvOwogc3RydWN0IFJlY29yZDsKQEAgLTgwMiwxMSArNzk3LDYgQEAgdGVt
cGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpQYXltZW50SW5zdGFsbG1lbnRD
b25maWd1cmF0aW9uPiB7CiAKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShXRUJH
TCkKIAotdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTEF0dHJpYnV0ZXM+IHsKLSAgICBzdGF0aWMgdm9pZCBlbmNvZGUoRW5jb2RlciYsIGNv
bnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYpOwotICAgIHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcz4gZGVjb2Rl
KERlY29kZXImKTsKLX07Ci0KIHRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0w6OkFjdGl2ZUluZm8+IHsKICAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBFbmNvZGVyPgogICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0w6OkFjdGl2ZUluZm8mKTsKQEAgLTk5MiwyNSArOTgyLDYgQEAg
dGVtcGxhdGUgPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6Q0RNSW5zdGFuY2U6OkhEQ1BT
dGF0dXM+IHsKIAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKFdFQkdMKQogCi10
ZW1wbGF0ZSA8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFBv
d2VyUHJlZmVyZW5jZT4gewotICAgIHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXMgPAotICAgIFdl
YkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlLAotICAgIFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlOjpEZWZhdWx0LAotICAgIFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlOjpMb3dQb3dlciwKLSAgICBXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHRHTFBvd2VyUHJlZmVyZW5jZTo6SGlnaFBlcmZvcm1hbmNlCi0gICAgPjsK
LX07Ci0KLXRlbXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMV2ViR0xWZXJzaW9uPiB7Ci0gICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlcyA8Ci0g
ICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb24sCi0gICAgV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb246OldlYkdMMQotI2lmIEVOQUJMRShXRUJHTDIp
Ci0gICAgLCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFdlYkdMVmVyc2lvbjo6V2ViR0wyCi0j
ZW5kaWYKLSAgICA+OwotfTsKLQogdGVtcGxhdGUgPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0w6OlNpbXVsYXRlZEV2ZW50Rm9yVGVzdGluZz4gewogICAgIHVz
aW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CiAgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6
OlNpbXVsYXRlZEV2ZW50Rm9yVGVzdGluZywKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzZWZjNGIzMTJmNjU3MDA2MWJiNGJh
MmM1YzBkMDEyNWJiOWMxNWMyLi4zZmJkMDNlN2M4ZmI5YzY4YTY1M2EyYTZiNzE4NTlhOTRmMWQ3
Y2YzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjItMDItMjggIEtpbW1vIEtpbm51bmVuICA8
a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBXZWJHTCBHUFVQIE9wZW5HTCBjb250ZXh0
IGlzIG5vdCB1c2VkIGV2ZW4gaWYgV2ViR0wgdmlhIE1ldGFsIGlzIGRlc2VsZWN0ZWQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjUwNQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViZ2wvcmVzb3Vy
Y2VzL3Rlc3Qtc2hhZGVyLWltcGxlbWVudGF0aW9uLWxhbmd1YWdlLmpzOiBBZGRlZC4KKyAgICAg
ICAgKHJ1blRlc3QpOgorICAgICAgICAqIHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFn
LW9mZi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1v
bi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1m
bGFnLW9uLmh0bWw6IEFkZGVkLgorCiAyMDIyLTAyLTI4ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAg
PGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbQVRTUEldIEFsd2F5cyBleHBvc2UgdGFi
bGUgY2VsbHMgKGxheW91dCBhbmQgQ1NTKSB0aGF0IGhhdmUgcmVuZGVyZWQgdGV4dCBjb250ZW50
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJnbC9yZXNvdXJjZXMvdGVzdC1zaGFkZXItaW1w
bGVtZW50YXRpb24tbGFuZ3VhZ2UuanMgYi9MYXlvdXRUZXN0cy93ZWJnbC9yZXNvdXJjZXMvdGVz
dC1zaGFkZXItaW1wbGVtZW50YXRpb24tbGFuZ3VhZ2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDljMGU4YjFm
OTYyN2Y0Yjg5MTg2MTQxZDBmYzQwY2E3MzlkYTRjYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL3dlYmdsL3Jlc291cmNlcy90ZXN0LXNoYWRlci1pbXBsZW1lbnRhdGlvbi1sYW5ndWFn
ZS5qcwpAQCAtMCwwICsxLDI3IEBACisidXNlIHN0cmljdCI7CisKK2xldCBzdWJjYXNlcyA9IFtd
OworZm9yIChsZXQgY29udGV4dFR5cGUgb2YgWyAid2ViZ2wiLCAid2ViZ2wyIiBdKSB7CisgICAg
c3ViY2FzZXMucHVzaCh7IGNvbnRleHRUeXBlIH0pOworfQorCitmdW5jdGlvbiBydW5UZXN0KCkg
eworICAgIGZvciAoY29uc3Qgc3ViY2FzZSBvZiBzdWJjYXNlcykgeworICAgICAgICBjb25zdCBj
YW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKTsKKyAgICAgICAgY29uc3Qg
Z2wgPSBjYW52YXMuZ2V0Q29udGV4dChzdWJjYXNlLmNvbnRleHRUeXBlKTsKKyAgICAgICAgaWYg
KCFnbCkgeworICAgICAgICAgICAgdGVzdFBhc3NlZChgJHtzdWJjYXNlLmNvbnRleHRUeXBlfTog
Tm90IHN1cHBvcnRlZC5gKTsKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAg
ICAgIGNvbnN0IHNoYWRlciA9IGdsLmNyZWF0ZVNoYWRlcihnbC5GUkFHTUVOVF9TSEFERVIpOwor
ICAgICAgICBnbC5zaGFkZXJTb3VyY2Uoc2hhZGVyLCAidm9pZCBtYWluKCkgeyBnbF9GcmFnQ29s
b3IgPSB2ZWM0KGdsX0ZyYWdDb29yZC54LCAwLjAsIDAuMCwgMS4wKTsgfSIpOworICAgICAgICBn
bC5jb21waWxlU2hhZGVyKHNoYWRlcik7CisgICAgICAgIGNvbnN0IHNyYyA9IGdsLmdldEV4dGVu
c2lvbigiV0VCR0xfZGVidWdfc2hhZGVycyIpLmdldFRyYW5zbGF0ZWRTaGFkZXJTb3VyY2Uoc2hh
ZGVyKTsKKyAgICAgICAgbGV0IHR5cGUgPSAiVW5rbm93biI7CisgICAgICAgIGlmIChzcmMuc2Vh
cmNoKC9eZnJhZ21lbnQgQU5HTEVfRnJhZ21lbnRPdXQgbWFpbi9tKSA+PSAwKQorICAgICAgICAg
ICAgdHlwZSA9ICJNZXRhbCI7CisgICAgICAgIGlmIChzcmMuc2VhcmNoKC9edm9pZCBtYWluKCkv
bSkgPj0gMCkKKyAgICAgICAgICAgIHR5cGUgPSAiT3BlbkdMIjsKKyAgICAgICAgdGVzdFBhc3Nl
ZChgJHtzdWJjYXNlLmNvbnRleHRUeXBlfTogRGV0ZWN0ZWQgc2hhZGVyIGltcGxlbWVudGF0aW9u
IGxhbmd1YWdlOiAke3R5cGV9YCk7CisgICAgfQorfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9m
Zi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1v
ZmYtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVkMzRlYmRiYTM1NDYzZjYwMmFjYmJlMzA4YzVh
ODBmMGNmZWY3ODUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12
aWEtbWV0YWwtZmxhZy1vZmYtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTMgQEAKK1RoaXMgdGVz
dCBvdXRwdXRzIFdlYkdMIEdMU0wgaW1wbGVtZW50YXRpb24gbGFuZ3VhZ2Ugd2hlbiB1c2luZyBX
ZWJHTFVzaW5nTWV0YWw9ZmFsc2UuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworVEVT
VCBDT01QTEVURTogMyBQQVNTLCAwIEZBSUwKKworCitQQVNTIHdlYmdsOiBEZXRlY3RlZCBzaGFk
ZXIgaW1wbGVtZW50YXRpb24gbGFuZ3VhZ2U6IE9wZW5HTAorUEFTUyB3ZWJnbDI6IERldGVjdGVk
IHNoYWRlciBpbXBsZW1lbnRhdGlvbiBsYW5ndWFnZTogT3BlbkdMCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vZmYuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mOWQ1ZDFhMzg3M2Fm
M2ZiZmY4OTM2MDEwNWI3NDVkZjgwN2ZjYzE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLmh0bWwKQEAgLTAsMCArMSwyNSBAQAor
PCFET0NUWVBFIGh0bWw+PCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBXZWJHTFVzaW5nTWV0YWw9
ZmFsc2UgcnVuU2luZ2x5PXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0
PSJ1dGYtOCI+Cis8dGl0bGU+V2ViS2l0IHRlc3QgV2ViR0xVc2luZ01ldGFsPWZhbHNlPC90aXRs
ZT4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmls
ZXMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIi8+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2Vz
L3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9InJlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2pzL3dlYmdsLXRlc3QtdXRpbHMuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LXNoYWRlci1pbXBsZW1lbnRhdGlv
bi1sYW5ndWFnZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2Ny
aXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKyJ1c2Ug
c3RyaWN0IjsKK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3Qgb3V0cHV0cyBXZWJHTCBHTFNMIGltcGxl
bWVudGF0aW9uIGxhbmd1YWdlIHdoZW4gdXNpbmcgV2ViR0xVc2luZ01ldGFsPWZhbHNlLiIpOwor
CitkZWJ1ZygiIik7CitydW5UZXN0KCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVl
OworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42ZDg4MDI0ZDM2OGIwZTdhMjQ2ZWQxMWRiOTY1YjBkNjRhZjg5M2RkCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb24t
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTMgQEAKK1RoaXMgdGVzdCBvdXRwdXRzIFdlYkdMIEdM
U0wgaW1wbGVtZW50YXRpb24gbGFuZ3VhZ2Ugd2hlbiB1c2luZyBXZWJHTFVzaW5nTWV0YWw9dHJ1
ZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitURVNUIENPTVBMRVRFOiAzIFBBU1Ms
IDAgRkFJTAorCisKK1BBU1Mgd2ViZ2w6IERldGVjdGVkIHNoYWRlciBpbXBsZW1lbnRhdGlvbiBs
YW5ndWFnZTogTWV0YWwKK1BBU1Mgd2ViZ2wyOiBEZXRlY3RlZCBzaGFkZXIgaW1wbGVtZW50YXRp
b24gbGFuZ3VhZ2U6IE1ldGFsCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1l
dGFsLWZsYWctb24uaHRtbCBiL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFn
LW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZGJiMjAxYTBkMmQxZDM5ZWMwNjExMTc5OTNiMjY3MWU5M2U0
ZDkxYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRh
bC1mbGFnLW9uLmh0bWwKQEAgLTAsMCArMSwyNSBAQAorPCFET0NUWVBFIGh0bWw+PCEtLSB3ZWJr
aXQtdGVzdC1ydW5uZXIgWyBXZWJHTFVzaW5nTWV0YWw9dHJ1ZSBydW5TaW5nbHk9dHJ1ZSBdIC0t
PgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzx0aXRsZT5XZWJLaXQg
dGVzdCBXZWJHTFVzaW5nTWV0YWw9dHJ1ZTwvdGl0bGU+Cis8bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9InJlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyIvPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2pzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2xfdGVzdF9m
aWxlcy9qcy93ZWJnbC10ZXN0LXV0aWxzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNv
dXJjZXMvdGVzdC1zaGFkZXItaW1wbGVtZW50YXRpb24tbGFuZ3VhZ2UuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisidXNlIHN0cmljdCI7CitkZXNjcmlwdGlvbigiVGhp
cyB0ZXN0IG91dHB1dHMgV2ViR0wgR0xTTCBpbXBsZW1lbnRhdGlvbiBsYW5ndWFnZSB3aGVuIHVz
aW5nIFdlYkdMVXNpbmdNZXRhbD10cnVlLiIpOworCitkZWJ1ZygiIik7CitydW5UZXN0KCk7CisK
K3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453408</attachid>
            <date>2022-02-28 10:43:17 -0800</date>
            <delta_ts>2022-03-01 06:33:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236505-20220228204316.patch</filename>
            <type>text/plain</type>
            <size>18469</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjQ1ZmQ3NTdjYjNmYzBi
OGY3N2U4ZWEyNmE0OGVjYTdiNTQyOGUwZC4uOTlmNjUxYTNjMWYyZjMzZGI2YTAxNTFhNTA1MWI0
ZTBmZGRiZDM4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAyLTI4ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgR1BVUCBP
cGVuR0wgY29udGV4dCBpcyBub3QgdXNlZCBldmVuIGlmIFdlYkdMIHZpYSBNZXRhbCBpcyBkZXNl
bGVjdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzY1MDUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBF
bmNvZGUsIGRlY29kZSBhbHNvIGB1c2VNZXRhbGAgcHJvcGVydHkuCisKKyAgICAgICAgVGVzdHM6
IHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi5odG1sCisgICAgICAgICAgICAgICB3ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczo6ZGVjb2RlKToKKwogMjAyMi0wMi0yOCAg
S2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgogCiAgICAgICAgIEdyYXBoaWNz
Q29udGV4dEdMIHJlbGF0ZWQgaW5jbHVkZXMgYXJlIGluY29uc2lzdGVudCwgc2xvd2luZyB0aGUg
YnVpbGQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggMmE4MzA2ZjMzMTc2NzJjOGUyNTRkN2ZhNjJlNTY0MTgxNjRhMmZk
Ni4uOTA3NmM1N2VhZjBlNWI5MjY1M2JmNzg5ZGQ2YTkzMjgxM2ViODcwNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxMyBAQAorMjAyMi0wMi0yOCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBw
bGUuY29tPgorCisgICAgICAgIFdlYkdMIEdQVVAgT3BlbkdMIGNvbnRleHQgaXMgbm90IHVzZWQg
ZXZlbiBpZiBXZWJHTCB2aWEgTWV0YWwgaXMgZGVzZWxlY3RlZAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM2NTA1CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzLmNwcDoKKyAgICAgICAgKiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmg6CisKIDIw
MjItMDItMjggIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KIAogICAgICAg
ICBHcmFwaGljc0NvbnRleHRHTCByZWxhdGVkIGluY2x1ZGVzIGFyZSBpbmNvbnNpc3RlbnQsIHNs
b3dpbmcgdGhlIGJ1aWxkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcy5oCmluZGV4IGNiOTlmYjE2
MTdkYmM2YWE5NzI5MWM4ODE5Zjg0NWNiZGNmN2ZmNTcuLjI3ODIyNTQwMDZhNGJlMDg4Y2Q5MDkw
N2IwNjlmOTY1NjIwYTNiMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcy5oCkBAIC0yNiw2
ICsyNiw4IEBACiAjcHJhZ21hIG9uY2UKIAogI2lmIEVOQUJMRShXRUJHTCkKKyNpbmNsdWRlIDxv
cHRpb25hbD4KKyNpbmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKQEAgLTc0LDggKzc2LDExNyBAQCBzdHJ1Y3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1
dGVzIHsKICAgICAgICAgICAgIHJldHVybiBQb3dlclByZWZlcmVuY2U6OkhpZ2hQZXJmb3JtYW5j
ZTsKICAgICAgICAgcmV0dXJuIHBvd2VyUHJlZmVyZW5jZTsKICAgICB9CisKKyNpZiBFTkFCTEUo
R1BVX1BST0NFU1MpCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgRW5jb2Rlcj4gdm9pZCBlbmNvZGUo
RW5jb2RlciYpIGNvbnN0OworICAgIHRlbXBsYXRlPHR5cGVuYW1lIERlY29kZXI+IHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcz4gZGVjb2RlKERlY29kZXIm
KTsKKyNlbmRpZgorfTsKKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKKwordGVtcGxhdGU8dHlw
ZW5hbWUgRW5jb2Rlcj4KK3ZvaWQgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzOjplbmNvZGUo
RW5jb2RlciYgZW5jb2RlcikgY29uc3QKK3sKKyAgICBlbmNvZGVyIDw8IGFscGhhCisgICAgICAg
IDw8IGRlcHRoCisgICAgICAgIDw8IHN0ZW5jaWwKKyAgICAgICAgPDwgYW50aWFsaWFzCisgICAg
ICAgIDw8IHByZW11bHRpcGxpZWRBbHBoYQorICAgICAgICA8PCBwcmVzZXJ2ZURyYXdpbmdCdWZm
ZXIKKyAgICAgICAgPDwgZmFpbElmTWFqb3JQZXJmb3JtYW5jZUNhdmVhdAorICAgICAgICA8PCBw
b3dlclByZWZlcmVuY2UKKyAgICAgICAgPDwgc2hhcmVSZXNvdXJjZXMKKyAgICAgICAgPDwgbm9F
eHRlbnNpb25zCisgICAgICAgIDw8IGRldmljZVBpeGVsUmF0aW8KKyAgICAgICAgPDwgaW5pdGlh
bFBvd2VyUHJlZmVyZW5jZQorICAgICAgICA8PCB3ZWJHTFZlcnNpb24KKyAgICAgICAgPDwgZm9y
Y2VSZXF1ZXN0Rm9ySGlnaFBlcmZvcm1hbmNlR1BVOworI2lmIFBMQVRGT1JNKENPQ09BKQorICAg
IGVuY29kZXIgPDwgdXNlTWV0YWw7CisjZW5kaWYKKyNpZiBFTkFCTEUoV0VCWFIpCisgICAgZW5j
b2RlciA8PCB4ckNvbXBhdGlibGU7CisjZW5kaWYKK30KKwordGVtcGxhdGU8dHlwZW5hbWUgRGVj
b2Rlcj4KK3N0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVz
PiBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXM6OmRlY29kZShEZWNvZGVyJiBkZWNvZGVyKQor
eworICAgIGF1dG8gYWxwaGEgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAg
IGF1dG8gZGVwdGggPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAgIGF1dG8g
c3RlbmNpbCA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byBhbnRp
YWxpYXMgPSBkZWNvZGVyLnRlbXBsYXRlIGRlY29kZTxib29sPigpOworICAgIGF1dG8gcHJlbXVs
dGlwbGllZEFscGhhID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRv
IHByZXNlcnZlRHJhd2luZ0J1ZmZlciA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7
CisgICAgYXV0byBmYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0ID0gZGVjb2Rlci50ZW1wbGF0
ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIHBvd2VyUHJlZmVyZW5jZSA9IGRlY29kZXIudGVt
cGxhdGUgZGVjb2RlPFBvd2VyUHJlZmVyZW5jZT4oKTsKKyAgICBhdXRvIHNoYXJlUmVzb3VyY2Vz
ID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyAgICBhdXRvIG5vRXh0ZW5zaW9u
cyA9IGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisgICAgYXV0byBkZXZpY2VQaXhl
bFJhdGlvID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8ZmxvYXQ+KCk7CisgICAgYXV0byBpbml0
aWFsUG93ZXJQcmVmZXJlbmNlID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8UG93ZXJQcmVmZXJl
bmNlPigpOworICAgIGF1dG8gd2ViR0xWZXJzaW9uID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8
V2ViR0xWZXJzaW9uPigpOworICAgIGF1dG8gZm9yY2VSZXF1ZXN0Rm9ySGlnaFBlcmZvcm1hbmNl
R1BVID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKKyNpZiBQTEFURk9STShDT0NP
QSkKKyAgICBhdXRvIHVzZU1ldGFsID0gZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsK
KyNlbmRpZgorI2lmIEVOQUJMRShXRUJYUikKKyAgICBhdXRvIHhyQ29tcGF0aWJsZSA9IGRlY29k
ZXIudGVtcGxhdGUgZGVjb2RlPGJvb2w+KCk7CisjZW5kaWYKKyAgICBpZiAoIWRlY29kZXIuaXNW
YWxpZCgpKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgIHJldHVybiBHcmFwaGlj
c0NvbnRleHRHTEF0dHJpYnV0ZXMgeworICAgICAgICAqYWxwaGEsCisgICAgICAgICpkZXB0aCwK
KyAgICAgICAgKnN0ZW5jaWwsCisgICAgICAgICphbnRpYWxpYXMsCisgICAgICAgICpwcmVtdWx0
aXBsaWVkQWxwaGEsCisgICAgICAgICpwcmVzZXJ2ZURyYXdpbmdCdWZmZXIsCisgICAgICAgICpm
YWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0LAorICAgICAgICAqcG93ZXJQcmVmZXJlbmNlLAor
ICAgICAgICAqc2hhcmVSZXNvdXJjZXMsCisgICAgICAgICpub0V4dGVuc2lvbnMsCisgICAgICAg
ICpkZXZpY2VQaXhlbFJhdGlvLAorICAgICAgICAqaW5pdGlhbFBvd2VyUHJlZmVyZW5jZSwKKyAg
ICAgICAgKndlYkdMVmVyc2lvbiwKKyAgICAgICAgKmZvcmNlUmVxdWVzdEZvckhpZ2hQZXJmb3Jt
YW5jZUdQVSwKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICAgICAgKnVzZU1ldGFsLAorI2VuZGlm
CisjaWYgRU5BQkxFKFdFQlhSKQorICAgICAgICAqeHJDb21wYXRpYmxlCisjZW5kaWYKKyAgICB9
OworfQorCisjZW5kaWYKKworfQorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorbmFtZXNwYWNl
IFdURiB7CisKK3RlbXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMUG93ZXJQcmVmZXJlbmNlPiB7CisgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVl
czwKKyAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFBvd2VyUHJlZmVyZW5jZSwKKyAgICBX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFBvd2VyUHJlZmVyZW5jZTo6RGVmYXVsdCwKKyAgICBX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFBvd2VyUHJlZmVyZW5jZTo6TG93UG93ZXIsCisgICAg
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xQb3dlclByZWZlcmVuY2U6OkhpZ2hQZXJmb3JtYW5j
ZQorICAgID47Cit9OworCit0ZW1wbGF0ZSA8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHRHTFdlYkdMVmVyc2lvbj4geworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1W
YWx1ZXM8CisgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb24sCisgICAg
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb246OldlYkdMMQorI2lmIEVOQUJM
RShXRUJHTDIpCisgICAgLCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFdlYkdMVmVyc2lvbjo6
V2ViR0wyCisjZW5kaWYKKyAgICA+OwogfTsKIAogfQogCisjZW5kaWYKKwogI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1
bWVudENvZGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2Rl
cnMuY3BwCmluZGV4IDk5ODdiMWE4NDc2OGYyNzM4NjNkYzBiMWE1NTM5MTUzYzQ5ODE3ODMuLjI3
YTAzM2Y3MGNkZTQxZjJhZmRhMTJiMGExODVkNzExNGI0MGQxMDYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcApAQCAtMzE5OSw2MSArMzE5OSw2
IEBAIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6Q0RNSW5zdGFuY2VTZXNzaW9uOjpNZXNzYWdlPiAg
QXJndW1lbnRDb2RlcjxXZWJDb3JlOjpDRE1JCiAjZW5kaWYgLy8gRU5BQkxFKEVOQ1JZUFRFRF9N
RURJQSkKIAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKFdFQkdMKQotdm9pZCBB
cmd1bWVudENvZGVyPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcz46OmVuY29k
ZShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTEF0dHJp
YnV0ZXMmIGF0dHJpYnV0ZXMpCi17Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLmFscGhhOwot
ICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5kZXB0aDsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0
ZXMuc3RlbmNpbDsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMuYW50aWFsaWFzOwotICAgIGVu
Y29kZXIgPDwgYXR0cmlidXRlcy5wcmVtdWx0aXBsaWVkQWxwaGE7Ci0gICAgZW5jb2RlciA8PCBh
dHRyaWJ1dGVzLnByZXNlcnZlRHJhd2luZ0J1ZmZlcjsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0
ZXMuZmFpbElmTWFqb3JQZXJmb3JtYW5jZUNhdmVhdDsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0
ZXMucG93ZXJQcmVmZXJlbmNlOwotICAgIGVuY29kZXIgPDwgYXR0cmlidXRlcy5zaGFyZVJlc291
cmNlczsKLSAgICBlbmNvZGVyIDw8IGF0dHJpYnV0ZXMud2ViR0xWZXJzaW9uOwotICAgIGVuY29k
ZXIgPDwgYXR0cmlidXRlcy5ub0V4dGVuc2lvbnM7Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVz
LmRldmljZVBpeGVsUmF0aW87Ci0gICAgZW5jb2RlciA8PCBhdHRyaWJ1dGVzLmluaXRpYWxQb3dl
clByZWZlcmVuY2U7Ci0jaWYgRU5BQkxFKFdFQlhSKQotICAgIGVuY29kZXIgPDwgYXR0cmlidXRl
cy54ckNvbXBhdGlibGU7Ci0jZW5kaWYKLX0KLQotc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTEF0dHJpYnV0ZXM+IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0xBdHRyaWJ1dGVzPjo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCi17Ci0gICAgR3Jh
cGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dHJpYnV0ZXM7Ci0gICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShhdHRyaWJ1dGVzLmFscGhhKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuZGVwdGgpKQotICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXR0cmlidXRlcy5zdGVuY2ls
KSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KGF0dHJpYnV0ZXMuYW50aWFsaWFzKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMucHJlbXVsdGlwbGllZEFscGhhKSkKLSAg
ICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJp
YnV0ZXMucHJlc2VydmVEcmF3aW5nQnVmZmVyKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9w
dDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMuZmFpbElmTWFqb3JQZXJmb3Jt
YW5jZUNhdmVhdCkpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Ci0gICAgaWYgKCFkZWNv
ZGVyLmRlY29kZShhdHRyaWJ1dGVzLnBvd2VyUHJlZmVyZW5jZSkpCi0gICAgICAgIHJldHVybiBz
dGQ6Om51bGxvcHQ7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShhdHRyaWJ1dGVzLnNoYXJlUmVz
b3VyY2VzKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKGF0dHJpYnV0ZXMud2ViR0xWZXJzaW9uKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVs
bG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMubm9FeHRlbnNpb25zKSkK
LSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0
dHJpYnV0ZXMuZGV2aWNlUGl4ZWxSYXRpbykpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7
Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShhdHRyaWJ1dGVzLmluaXRpYWxQb3dlclByZWZlcmVu
Y2UpKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotI2lmIEVOQUJMRShXRUJYUikKLSAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKGF0dHJpYnV0ZXMueHJDb21wYXRpYmxlKSkKLSAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSNlbmRpZgotICAgIHJldHVybiBhdHRyaWJ1dGVzOwotfQog
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyPgogdm9pZCBBcmd1bWVudENvZGVyPFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMOjpBY3RpdmVJbmZvPjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIs
IGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpBY3RpdmVJbmZvJiBhY3RpdmVJbmZv
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJz
LmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAppbmRleCA2
ZTI3YTc4NzIwMjE3MWJiY2VkYmI2NDgzOTIwYTdlNzliZDU4MGJmLi43NGUzMzAwYzBjNmU0OGQy
YzcyMjA5ZGQ5ZTRhNDJkOGEzOTQ1OGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJD
b3JlQXJndW1lbnRDb2RlcnMuaApAQCAtODcsNyArODcsNiBAQAogI2lmIEVOQUJMRShHUFVfUFJP
Q0VTUykgJiYgRU5BQkxFKFdFQkdMKQogI2luY2x1ZGUgIkFycmF5UmVmZXJlbmNlLmgiCiAjaW5j
bHVkZSA8V2ViQ29yZS9HcmFwaGljc0NvbnRleHRHTC5oPgotI2luY2x1ZGUgPFdlYkNvcmUvR3Jh
cGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc1R5
cGVzR0wuaD4KICNlbmRpZgogCkBAIC0yMTgsMTAgKzIxNyw2IEBAIHN0cnVjdCBNZWRpYUNvbnN0
cmFpbnRzOwogc3RydWN0IFNlcmlhbGl6ZWRBdHRhY2htZW50RGF0YTsKICNlbmRpZgogCi0jaWYg
RU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoV0VCR0wpCi1zdHJ1Y3QgR3JhcGhpY3NDb250
ZXh0R0xBdHRyaWJ1dGVzOwotI2VuZGlmCi0KIG5hbWVzcGFjZSBET01DYWNoZUVuZ2luZSB7CiBz
dHJ1Y3QgQ2FjaGVJbmZvOwogc3RydWN0IFJlY29yZDsKQEAgLTgwMiwxMSArNzk3LDYgQEAgdGVt
cGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpQYXltZW50SW5zdGFsbG1lbnRD
b25maWd1cmF0aW9uPiB7CiAKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShXRUJH
TCkKIAotdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHRHTEF0dHJpYnV0ZXM+IHsKLSAgICBzdGF0aWMgdm9pZCBlbmNvZGUoRW5jb2RlciYsIGNv
bnN0IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyYpOwotICAgIHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcz4gZGVjb2Rl
KERlY29kZXImKTsKLX07Ci0KIHRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0w6OkFjdGl2ZUluZm8+IHsKICAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBFbmNvZGVyPgogICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0w6OkFjdGl2ZUluZm8mKTsKQEAgLTk5MiwyNSArOTgyLDYgQEAg
dGVtcGxhdGUgPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6Q0RNSW5zdGFuY2U6OkhEQ1BT
dGF0dXM+IHsKIAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKFdFQkdMKQogCi10
ZW1wbGF0ZSA8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFBv
d2VyUHJlZmVyZW5jZT4gewotICAgIHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXMgPAotICAgIFdl
YkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlLAotICAgIFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlOjpEZWZhdWx0LAotICAgIFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMUG93ZXJQcmVmZXJlbmNlOjpMb3dQb3dlciwKLSAgICBXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHRHTFBvd2VyUHJlZmVyZW5jZTo6SGlnaFBlcmZvcm1hbmNlCi0gICAgPjsK
LX07Ci0KLXRlbXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMV2ViR0xWZXJzaW9uPiB7Ci0gICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlcyA8Ci0g
ICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb24sCi0gICAgV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xXZWJHTFZlcnNpb246OldlYkdMMQotI2lmIEVOQUJMRShXRUJHTDIp
Ci0gICAgLCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTFdlYkdMVmVyc2lvbjo6V2ViR0wyCi0j
ZW5kaWYKLSAgICA+OwotfTsKLQogdGVtcGxhdGUgPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0R0w6OlNpbXVsYXRlZEV2ZW50Rm9yVGVzdGluZz4gewogICAgIHVz
aW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CiAgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6
OlNpbXVsYXRlZEV2ZW50Rm9yVGVzdGluZywKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzZWZjNGIzMTJmNjU3MDA2MWJiNGJh
MmM1YzBkMDEyNWJiOWMxNWMyLi4zZmJkMDNlN2M4ZmI5YzY4YTY1M2EyYTZiNzE4NTlhOTRmMWQ3
Y2YzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjItMDItMjggIEtpbW1vIEtpbm51bmVuICA8
a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBXZWJHTCBHUFVQIE9wZW5HTCBjb250ZXh0
IGlzIG5vdCB1c2VkIGV2ZW4gaWYgV2ViR0wgdmlhIE1ldGFsIGlzIGRlc2VsZWN0ZWQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjUwNQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViZ2wvcmVzb3Vy
Y2VzL3Rlc3Qtc2hhZGVyLWltcGxlbWVudGF0aW9uLWxhbmd1YWdlLmpzOiBBZGRlZC4KKyAgICAg
ICAgKHJ1blRlc3QpOgorICAgICAgICAqIHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9mZi1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFn
LW9mZi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1v
bi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYmdsL3dlYmdsLXZpYS1tZXRhbC1m
bGFnLW9uLmh0bWw6IEFkZGVkLgorCiAyMDIyLTAyLTI4ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAg
PGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbQVRTUEldIEFsd2F5cyBleHBvc2UgdGFi
bGUgY2VsbHMgKGxheW91dCBhbmQgQ1NTKSB0aGF0IGhhdmUgcmVuZGVyZWQgdGV4dCBjb250ZW50
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggODg1NzE3
MzFkYTc3M2YyZTBkZTJkMDExZjFhMzkxYWQxNTdmZGFiYi4uMjQ2Y2FhMzI5ZmIxNWJkNTRkYWNl
NzQ4ZWZiYWUzNDY3ZWM5NGY1YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xp
Yi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4
cGVjdGF0aW9ucwpAQCAtMTQyMSw2ICsxNDIxLDkgQEAgd2Via2l0Lm9yZy9iLzE2OTkxNyB3ZWJn
bC8xLjAuMy9jb25mb3JtYW5jZS9yZW5kZXJidWZmZXJzL2ZyYW1lYnVmZmVyLW9iamVjdC1hdHQK
IHdlYmtpdC5vcmcvYi8xNjk5MTcgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvcmVuZGVyaW5nL3Bv
aW50LW5vLWF0dHJpYnV0ZXMuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2OTkxNyB3
ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXh0dXJlLWNvcHlpbmctZmVlZGJhY2st
bG9vcHMuaHRtbCBbIEZhaWx1cmUgXQogCisjIE5vdCBhcHBsaWNhYmxlLgord2ViZ2wvd2ViZ2wt
dmlhLW1ldGFsLWZsYWctb24uaHRtbCBbIFNraXAgXQord2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZs
YWctb2ZmLmh0bWwgWyBTa2lwIF0KIAogIy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8K
ICMgRW5kIG9mIFdlYkdMLXJlbGF0ZWQgYnVncwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dp
bmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNDg3NzJkOGRiNjcwODIxMTkwZWRiMjY1ZWNl
NGRhNDNlOWY4YmQ0Yy4uYTI2OWNjOGE0Mzc3NzM0NDY1M2Q0Nzk3NjBiNDdiMTA4MWZlN2FlZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9u
cworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCkBA
IC0yMTA5LDMgKzIxMDksNyBAQCBmYXN0L3RleHQvd29yZC1zcGFjaW5nLXJ0bC5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCiBmYXN0L3RleHQva2VybmluZy13aXRoLVRleHRMYXlvdXQuaHRtbCBb
IEltYWdlT25seUZhaWx1cmUgXQogaHR0cC90ZXN0cy9saXN0cy9saXN0LW5ldy1wYXJlbnQtbm8t
c2libGluZy1hcHBlbmQuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9qcy1wcm9taXNlL2pzLXByb21p
c2UtaW52YWxpZC1jb250ZXh0LWFjY2Vzcy5odG1sIFsgRmFpbHVyZSBdCisKKyMgTm90IGFwcGxp
Y2FibGUuCit3ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sIFsgU2tpcCBdCit3ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vZmYuaHRtbCBbIFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViZ2wvcmVzb3VyY2VzL3Rlc3Qtc2hhZGVyLWltcGxlbWVudGF0aW9uLWxhbmd1
YWdlLmpzIGIvTGF5b3V0VGVzdHMvd2ViZ2wvcmVzb3VyY2VzL3Rlc3Qtc2hhZGVyLWltcGxlbWVu
dGF0aW9uLWxhbmd1YWdlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ5YzBlOGIxZjk2MjdmNGI4OTE4NjE0MWQw
ZmM0MGNhNzM5ZGE0Y2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJnbC9yZXNv
dXJjZXMvdGVzdC1zaGFkZXItaW1wbGVtZW50YXRpb24tbGFuZ3VhZ2UuanMKQEAgLTAsMCArMSwy
NyBAQAorInVzZSBzdHJpY3QiOworCitsZXQgc3ViY2FzZXMgPSBbXTsKK2ZvciAobGV0IGNvbnRl
eHRUeXBlIG9mIFsgIndlYmdsIiwgIndlYmdsMiIgXSkgeworICAgIHN1YmNhc2VzLnB1c2goeyBj
b250ZXh0VHlwZSB9KTsKK30KKworZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBmb3IgKGNvbnN0
IHN1YmNhc2Ugb2Ygc3ViY2FzZXMpIHsKKyAgICAgICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiY2FudmFzIik7CisgICAgICAgIGNvbnN0IGdsID0gY2FudmFzLmdldENv
bnRleHQoc3ViY2FzZS5jb250ZXh0VHlwZSk7CisgICAgICAgIGlmICghZ2wpIHsKKyAgICAgICAg
ICAgIHRlc3RQYXNzZWQoYCR7c3ViY2FzZS5jb250ZXh0VHlwZX06IE5vdCBzdXBwb3J0ZWQuYCk7
CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorICAgICAgICBjb25zdCBzaGFkZXIg
PSBnbC5jcmVhdGVTaGFkZXIoZ2wuRlJBR01FTlRfU0hBREVSKTsKKyAgICAgICAgZ2wuc2hhZGVy
U291cmNlKHNoYWRlciwgInZvaWQgbWFpbigpIHsgZ2xfRnJhZ0NvbG9yID0gdmVjNChnbF9GcmFn
Q29vcmQueCwgMC4wLCAwLjAsIDEuMCk7IH0iKTsKKyAgICAgICAgZ2wuY29tcGlsZVNoYWRlcihz
aGFkZXIpOworICAgICAgICBjb25zdCBzcmMgPSBnbC5nZXRFeHRlbnNpb24oIldFQkdMX2RlYnVn
X3NoYWRlcnMiKS5nZXRUcmFuc2xhdGVkU2hhZGVyU291cmNlKHNoYWRlcik7CisgICAgICAgIGxl
dCB0eXBlID0gIlVua25vd24iOworICAgICAgICBpZiAoc3JjLnNlYXJjaCgvXmZyYWdtZW50IEFO
R0xFX0ZyYWdtZW50T3V0IG1haW4vbSkgPj0gMCkKKyAgICAgICAgICAgIHR5cGUgPSAiTWV0YWwi
OworICAgICAgICBpZiAoc3JjLnNlYXJjaCgvXnZvaWQgbWFpbigpL20pID49IDApCisgICAgICAg
ICAgICB0eXBlID0gIk9wZW5HTCI7CisgICAgICAgIHRlc3RQYXNzZWQoYCR7c3ViY2FzZS5jb250
ZXh0VHlwZX06IERldGVjdGVkIHNoYWRlciBpbXBsZW1lbnRhdGlvbiBsYW5ndWFnZTogJHt0eXBl
fWApOworICAgIH0KK30KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vZmYtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2ZmLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi41ZDM0ZWJkYmEzNTQ2M2Y2MDJhY2JiZTMwOGM1YTgwZjBjZmVmNzg1Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFsLWZsYWctb2Zm
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEzIEBACitUaGlzIHRlc3Qgb3V0cHV0cyBXZWJHTCBH
TFNMIGltcGxlbWVudGF0aW9uIGxhbmd1YWdlIHdoZW4gdXNpbmcgV2ViR0xVc2luZ01ldGFsPWZh
bHNlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1RFU1QgQ09NUExFVEU6IDMgUEFT
UywgMCBGQUlMCisKKworUEFTUyB3ZWJnbDogRGV0ZWN0ZWQgc2hhZGVyIGltcGxlbWVudGF0aW9u
IGxhbmd1YWdlOiBPcGVuR0wKK1BBU1Mgd2ViZ2wyOiBEZXRlY3RlZCBzaGFkZXIgaW1wbGVtZW50
YXRpb24gbGFuZ3VhZ2U6IE9wZW5HTAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZp
YS1tZXRhbC1mbGFnLW9mZi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ2wvd2ViZ2wtdmlhLW1ldGFs
LWZsYWctb2ZmLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjlkNWQxYTM4NzNhZjNmYmZmODkzNjAxMDViNzQ1
ZGY4MDdmY2MxOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZp
YS1tZXRhbC1mbGFnLW9mZi5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPjwh
LS0gd2Via2l0LXRlc3QtcnVubmVyIFsgV2ViR0xVc2luZ01ldGFsPWZhbHNlIHJ1blNpbmdseT10
cnVlIF0gLS0+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHRpdGxl
PldlYktpdCB0ZXN0IFdlYkdMVXNpbmdNZXRhbD1mYWxzZTwvdGl0bGU+Cis8bGluayByZWw9InN0
eWxlc2hlZXQiIGhyZWY9InJlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL3Jlc291cmNlcy9qcy10
ZXN0LXN0eWxlLmNzcyIvPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVz
L2pzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2Vi
Z2xfdGVzdF9maWxlcy9qcy93ZWJnbC10ZXN0LXV0aWxzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSJyZXNvdXJjZXMvdGVzdC1zaGFkZXItaW1wbGVtZW50YXRpb24tbGFuZ3VhZ2UuanMiPjwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisidXNlIHN0cmljdCI7CitkZXNjcmlw
dGlvbigiVGhpcyB0ZXN0IG91dHB1dHMgV2ViR0wgR0xTTCBpbXBsZW1lbnRhdGlvbiBsYW5ndWFn
ZSB3aGVuIHVzaW5nIFdlYkdMVXNpbmdNZXRhbD1mYWxzZS4iKTsKKworZGVidWcoIiIpOworcnVu
VGVzdCgpOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2pzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJn
bC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmQ4ODAy
NGQzNjhiMGU3YTI0NmVkMTFkYjk2NWIwZDY0YWY4OTNkZAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9uLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEzIEBACitUaGlzIHRlc3Qgb3V0cHV0cyBXZWJHTCBHTFNMIGltcGxlbWVudGF0aW9u
IGxhbmd1YWdlIHdoZW4gdXNpbmcgV2ViR0xVc2luZ01ldGFsPXRydWUuCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworVEVTVCBDT01QTEVURTogMyBQQVNTLCAwIEZBSUwKKworCitQQVNT
IHdlYmdsOiBEZXRlY3RlZCBzaGFkZXIgaW1wbGVtZW50YXRpb24gbGFuZ3VhZ2U6IE1ldGFsCitQ
QVNTIHdlYmdsMjogRGV0ZWN0ZWQgc2hhZGVyIGltcGxlbWVudGF0aW9uIGxhbmd1YWdlOiBNZXRh
bAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdsL3dlYmdsLXZpYS1tZXRhbC1mbGFnLW9uLmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmRiYjIwMWEwZDJkMWQzOWVjMDYxMTE3OTkzYjI2NzFlOTNlNGQ5MWEKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy93ZWJnbC93ZWJnbC12aWEtbWV0YWwtZmxhZy1vbi5odG1sCkBA
IC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPjwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsg
V2ViR0xVc2luZ01ldGFsPXRydWUgcnVuU2luZ2x5PXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+
Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8dGl0bGU+V2ViS2l0IHRlc3QgV2ViR0xVc2luZ01l
dGFsPXRydWU8L3RpdGxlPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMv
d2ViZ2xfdGVzdF9maWxlcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiLz4KKzxzY3JpcHQg
c3JjPSJyZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvd2ViZ2wtdGVz
dC11dGlscy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3Qtc2hhZGVy
LWltcGxlbWVudGF0aW9uLWxhbmd1YWdlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8
c2NyaXB0PgorInVzZSBzdHJpY3QiOworZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBvdXRwdXRzIFdl
YkdMIEdMU0wgaW1wbGVtZW50YXRpb24gbGFuZ3VhZ2Ugd2hlbiB1c2luZyBXZWJHTFVzaW5nTWV0
YWw9dHJ1ZS4iKTsKKworZGVidWcoIiIpOworcnVuVGVzdCgpOworCit2YXIgc3VjY2Vzc2Z1bGx5
UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy93ZWJnbF90
ZXN0X2ZpbGVzL2pzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>