<?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>231427</bug_id>
          
          <creation_ts>2021-10-08 07:26:16 -0700</creation_ts>
          <short_desc>CA Accelerated compositing compositor should not refer to WebGLLayer for contents provided layers</short_desc>
          <delta_ts>2021-11-15 05:43:10 -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>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>CONFIGURATION CHANGED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>231009</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kimmo Kinnunen">kkinnunen</reporter>
          <assigned_to name="Kimmo Kinnunen">kkinnunen</assigned_to>
          <cc>annulen</cc>
    
    <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kbr</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1802030</commentid>
    <comment_count>0</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-10-08 07:26:16 -0700</bug_when>
    <thetext>CA Accelerated compositing compositor should not refer to WebGLLayer for contents provided layers

If it does, all contents provided layers need to be subclasses of WebGLLayer

UI side compositing for WebGL needs a hosted CA layer.
This layer cannot be the sole layer in the layer hierarchy, because the layer also needs to capture setBounds and send it to the GPU Process CALayer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802038</commentid>
    <comment_count>1</comment_count>
      <attachid>440607</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-10-08 07:36:13 -0700</bug_when>
    <thetext>Created attachment 440607
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802039</commentid>
    <comment_count>2</comment_count>
      <attachid>440608</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-10-08 07:37:38 -0700</bug_when>
    <thetext>Created attachment 440608
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802042</commentid>
    <comment_count>3</comment_count>
      <attachid>440609</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-10-08 07:41:14 -0700</bug_when>
    <thetext>Created attachment 440609
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802046</commentid>
    <comment_count>4</comment_count>
      <attachid>440611</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-10-08 07:43:39 -0700</bug_when>
    <thetext>Created attachment 440611
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802584</commentid>
    <comment_count>5</comment_count>
      <attachid>440777</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-10-11 05:28:10 -0700</bug_when>
    <thetext>Created attachment 440777
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802700</commentid>
    <comment_count>6</comment_count>
      <attachid>440777</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-11 11:09:23 -0700</bug_when>
    <thetext>Comment on attachment 440777
Patch

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

&gt; Source/WebCore/platform/graphics/ca/cocoa/WebContentsProviderLayer.h:34
&gt; +@interface WebContentsProviderLayer : CALayer {
&gt; +}

Get rid of random curly braces

&gt; Source/WebCore/platform/graphics/ca/cocoa/WebContentsProviderLayer.mm:35
&gt; +    for (CALayer* layer in self.sublayers)
&gt; +        layer.frame = bounds;

This is pretty surprising behavior to have generically; usually I would expect this to be up to each subclass (and probably in -layoutSublayers). Alternatively like smfr suggested, use -autoresizingMask

&gt; Source/WebCore/platform/graphics/cocoa/WebGLLayer.mm:59
&gt; +    contentsLayer.get().transform = CATransform3DScale(CATransform3DIdentity, 1, -1, 1);

`[x set*:]` instead of .get(). (https://trac.webkit.org/changeset/283706/webkit)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1804780</commentid>
    <comment_count>7</comment_count>
      <attachid>440777</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-10-15 06:21:15 -0700</bug_when>
    <thetext>Comment on attachment 440777
Patch

probably not needed in this form</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1804800</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-15 07:27:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/84300467&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440607</attachid>
            <date>2021-10-08 07:36:13 -0700</date>
            <delta_ts>2021-10-08 07:37:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231427-20211008173611.patch</filename>
            <type>text/plain</type>
            <size>18249</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNTQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk2ZjZmNTE4NDI2ZDRl
MjQxYWFlNTRmNDQ3MjU5YjU3NjVlOGY5Mi4uNDBiNmU1ZjAyYTdlMTVlYzVmNzkwNDQ5MGNjNDJi
MjYwZDYwMmQ0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTEwLTA4ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgQ0EgQWNjZWxlcmF0
ZWQgY29tcG9zaXRpbmcgY29tcG9zaXRvciBzaG91bGQgbm90IHJlZmVyIHRvIFdlYkdMTGF5ZXIg
Zm9yIGNvbnRlbnRzIHByb3ZpZGVkIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDI3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgaW50ZXJtZWRpYXRlIGxheWVyIFdlYkNvbnRlbnRz
UHJvdmlkZXJMYXllci4gVGhpcyBjYW4gaW4gZnV0dXJlIHNlcnZlIGZvciB0d28KKyAgICAgICAg
cHVycG9zZXM6CisgICAgICAgICAtIEhvbGQgYSBob3N0ZWQgQ0FMYXllciBmb3IgdGhlIFdlYkdM
IENBTGF5ZXIgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgIC0gQ2FwdHVyZSBzZXRCb3VuZHMgb24g
dGhlIGNvbnRlbnRzIGxheWVyIGFuZCByZXNpemUgdGhlIEdQVSBwcm9jZXNzIHNpZGUgV2ViR0wg
Q0FMYXllcgorICAgICAgICAgICBhY2NvcmRpbmdseS4KKworICAgICAgICBGaXhlcyBhbHNvIHRo
ZSBkaXNjcmVwYW5jeSB3aGVyZSBXZWJHTExheWVyIHRyYW5zZm9ybSgpIHdvdWxkIHJldHVybiBk
aWZmZXJlbnQgdmFsdWUgdGhhbgorICAgICAgICB3aGF0IHNldFRyYW5zZm9ybSgpIHNldC4gVGhp
cyB3b3VsZCBjb25mdXNlIFBsYXRmb3JtQ0FMYXllciBjbG9uaW5nLCBpZiBXZWJHTCBldmVyIHdv
dWxkCisgICAgICAgIHN1cHBvcnQgdGhhdC4gVGhpcyBhcHBsaWVzIGFsc28gdG8gYW5jaG9yUG9p
bnQuCisKKyAgICAgICAgUmVtb3ZlcyBjYWxsIHRvIFtzZWxmIHJlbG9hZFZhbHVlRm9yS2V5UGF0
aDpAImNvbnRlbnRzIl0sIGl0IGlzIG5vdCBuZWVkZWQuCisgICAgICAgIFdlIGFsd2F5cyBhc3Np
Z24gYSBuZXcgZGlzcGxheSBidWZmZXIgSU9TdXJmYWNlIGluc3RlYWQgb2YgdXBkYXRpbmcgdGhl
IGV4aXN0aW5nIC5jb250ZW50cyBJCisgICAgICAgIE9TdXJmYWNlIGJlaGluZCBDQUxheWVyJ3Mg
YmFjay4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGEgcmVmYWN0b3IuCisKKyAgICAgICAgKiBQ
bGF0Zm9ybU1hYy5jbWFrZToKKyAgICAgICAgKiBTb3VyY2VzQ29jb2EudHh0OgorICAgICAgICAq
IFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbToKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtQ0FMYXllckNvY29hOjpsYXllclR5cGVGb3JQbGF0Zm9ybUxheWVyKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5
ZXIuaDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViQ29u
dGVudHNQcm92aWRlckxheWVyLm1tOiBBZGRlZC4KKyAgICAgICAgKC1bV2ViQ29udGVudHNQcm92
aWRlckxheWVyIHNldEJvdW5kczpdKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2Nv
YS9XZWJHTExheWVyLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xM
YXllci5tbToKKyAgICAgICAgKC1bV2ViR0xMYXllciBpbml0V2l0aERldmljZVBpeGVsUmF0aW86
Y29udGVudHNPcGFxdWU6XSk6CisgICAgICAgICgtW1dlYkdMTGF5ZXIgcHJlcGFyZUZvckRpc3Bs
YXldKToKKyAgICAgICAgKC1bV2ViR0xMYXllciBkaXNwbGF5TGF5ZXI6XSk6CisgICAgICAgICgt
W1dlYkdMTGF5ZXIgc2V0VHJhbnNmb3JtOl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJHTExh
eWVyIHNldEFuY2hvclBvaW50Ol0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJHTExheWVyIGRp
c3BsYXldKTogRGVsZXRlZC4KKwogMjAyMS0wOS0zMCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVu
ZW5AYXBwbGUuY29tPgogCiAgICAgICAgIFNjb3BlZEVHTERlZmF1bHREaXNwbGF5IHNob3VsZCBi
ZSByZW1vdmVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU1hYy5jbWFrZSBi
L1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtlCmluZGV4IGJjZmNlYjc5MzEzZWMwNWMz
NTRjNWZlZmUzNGFiNTEwYWIzM2U3MTcuLjk4NjA1YTkyZTRlM2M5MDEyNTgzN2JmYjM4NDhmZmMw
MDU3YzBlOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtlCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtlCkBAIC02MzcsNiArNjM3LDcgQEAg
bGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAKICAgICBwbGF0
Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBQW5pbWF0aW9uQ29jb2EuaAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLmgKKyAgICBwbGF0
Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIuaAogCiAgICAg
cGxhdGZvcm0vZ3JhcGhpY3MvY2cvQ29sb3JTcGFjZUNHLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1NvdXJjZXNDb2NvYS50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2EudHh0
CmluZGV4IGE0YzBhNzYyN2MzNzgxZGZjZDA0OTA2ZmM1MjMzMDljOTA3MzBjMmMuLjUzY2ExMDFk
ODAzMDMyMzY4MDhhNWVlN2Q2YzI1ZTVlMzM0MzAzZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1NvdXJjZXNDb2NvYS50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlc0NvY29hLnR4
dApAQCAtMzMwLDYgKzMzMCw3IEBAIHBsYXRmb3JtL2dyYXBoaWNzL2NhL1RyYW5zZm9ybWF0aW9u
TWF0cml4Q0EuY3BwCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBQW5pbWF0
aW9uQ29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FGaWx0ZXJz
Q29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29h
Lm1tCitwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIu
bW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlN5c3RlbUJhY2tkcm9wTGF5ZXIubW0K
IHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlRpbGVkQmFja2luZ0xheWVyLm1tCiBwbGF0
Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJWaWRlb0NvbnRhaW5lckxheWVyLm1tCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYWFl
MTE4NGM1ZjdmNzI0Nzg1OWIxM2E2YTQ5Yjk0ZWQxZDY4ZDIzYS4uOGI4ZjA5ZTE5NTZlMmQzN2Iy
MzRlMmM5MTNlMjU5ZDkxNGJlOTU5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjM1Niw2ICsyMzU2LDcgQEAKIAkJN0I2MDk0
REQyNzBDNDRCRDAwNjQ4MzVDIC8qIEFOR0xFVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QkIzNEExNjI1MzQ1Q0IyMDAwMjlEMDggLyog
QU5HTEVVdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQk3QjZEQzgxOTI1NzEyRTkyMDAzODBDNzAgLyogR3JhcGhpY3NDb250ZXh0R0xJ
T1N1cmZhY2VTd2FwQ2hhaW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdCNkRDODE3MjU3MTJFOTIwMDM4MEM3MCAvKiBHcmFwaGljc0NvbnRleHRHTElP
U3VyZmFjZVN3YXBDaGFpbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTdCNzMxMUZCMjVDMDkyQjcwMDNCMjc5NiAvKiBTY29wZWRIaWdoUGVyZm9y
bWFuY2VHUFVSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA3QjczMTFGQTI1QzA5MkI3MDAzQjI3OTYgLyogU2NvcGVkSGlnaFBlcmZvcm1hbmNl
R1BVUmVxdWVzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTdCNzM4RDMyMjcxMDc5NkUwMDA2NTg5NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCNzM4
RDJGMjcxMDc5NjUwMDA2NTg5NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QjhFRDVGMDI2RjBD
MTNEMDA4QUMwMjMgLyogQ1ZVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDdCOEVENUVEMjZGMEMxMjMwMDhBQzAyMyAvKiBDVlV0aWxpdGll
cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdC
OTA0MTcwMjU1MDExNDIwMDZFRUI4QyAvKiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5QmFz
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0I5MDQx
NkUyNTUwMTEwOTAwNkVFQjhDIC8qIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0JCMzRB
NDgyNTM3NzZDQTAwMDI5RDA4IC8qIEdyYXBoaWNzQ29udGV4dEdMSW1hZ2VFeHRyYWN0b3IuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCQjM0QTQ1MjUz
Nzc2QzYwMDAyOUQwOCAvKiBHcmFwaGljc0NvbnRleHRHTEltYWdlRXh0cmFjdG9yLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTEwNjUxLDYgKzEw
NjUyLDggQEAKIAkJN0I2REM4MTUyNTcxMkU5MTAwMzgwQzcwIC8qIEdyYXBoaWNzQ29udGV4dEdM
SU9TdXJmYWNlU3dhcENoYWluLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJN0I2REM4MTcyNTcxMkU5MjAwMzgwQzcwIC8qIEdyYXBoaWNzQ29u
dGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTdCNzMxMUZBMjVDMDkyQjcwMDNCMjc5NiAvKiBTY29wZWRIaWdoUGVy
Zm9ybWFuY2VHUFVSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNj
b3BlZEhpZ2hQZXJmb3JtYW5jZUdQVVJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJN0I3MzhEMkYyNzEwNzk2NTAwMDY1ODk3IC8qIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0I3MzhEMzEyNzEwNzk2NTAwMDY1ODk3IC8qIFdlYkNvbnRl
bnRzUHJvdmlkZXJMYXllci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkNvbnRlbnRzUHJv
dmlkZXJMYXllci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0I4RUQ1RUQyNkYw
QzEyMzAwOEFDMDIzIC8qIENWVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENWVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdCOEVE
NUVGMjZGMEMxMjMwMDhBQzAyMyAvKiBDVlV0aWxpdGllcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IENWVXRpbGl0aWVzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk3QjkwNDE2RTI1NTAxMTA5MDA2RUVCOEMgLyogUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eUJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQ
cm94eUJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwNDI4LDYgKzIwNDMx
LDggQEAKIAkJCQk0OTU4NzgyMDEyQTU3RERGMDA3MjM4QUMgLyogUGxhdGZvcm1DQUxheWVyQ29j
b2EubW0gKi8sCiAJCQkJMzFERUE0NTQxQjM5RjREOTAwRjc3MTc4IC8qIFdlYlN5c3RlbUJhY2tk
cm9wTGF5ZXIuaCAqLywKIAkJCQkzMURFQTQ1MzFCMzlGNEQ5MDBGNzcxNzggLyogV2ViU3lzdGVt
QmFja2Ryb3BMYXllci5tbSAqLywKKwkJCQk3QjczOEQyRjI3MTA3OTY1MDAwNjU4OTcgLyogV2Vi
Q29udGVudHNQcm92aWRlckxheWVyLmggKi8sCisJCQkJN0I3MzhEMzEyNzEwNzk2NTAwMDY1ODk3
IC8qIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5tbSAqLywKIAkJCQkwRjU4MEZBMTE0OTY5Mzkx
MDBGQjVCRDggLyogV2ViVGlsZWRCYWNraW5nTGF5ZXIuaCAqLywKIAkJCQkwRjU4MEZBMjE0OTY5
MzkxMDBGQjVCRDggLyogV2ViVGlsZWRCYWNraW5nTGF5ZXIubW0gKi8sCiAJCQkJQ0Q4QjMxQTEy
Mzc5REM4MzAwODgzRkRFIC8qIFdlYlZpZGVvQ29udGFpbmVyTGF5ZXIuaCAqLywKQEAgLTMxNDUw
LDYgKzMxNDU1LDcgQEAKIAkJCQlFN0UwMzU3MjI0RDRFMTk2MDA4REZFRkIgLyogQW5hbHlzZXJP
cHRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQkyN0UzQzgwODI1N0Y1RTZFMDBDOTg2QUIgLyog
QU5HTEVIZWFkZXJzLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUE3OTVDNzE4ODhCQ0IyMDAzODJG
OTAgLyogQU5HTEVJbnN0YW5jZWRBcnJheXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTdCNjA5NERE
MjcwQzQ0QkQwMDY0ODM1QyAvKiBBTkdMRVV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NDlFOTEyQUIwRUZBQzkwNjAwOUQwQ0FGIC8qIEFuaW1hdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNzFFRkNFREMyMDJCMzhBOTAwRDdDNDExIC8qIEFuaW1hdGlvbkVmZmVjdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNzFFMkM0MjYyMUM5MzUyODAwMjRGOEM4IC8qIEFuaW1hdGlvbkVmZmVjdFBo
YXNlLmggaW4gSGVhZGVycyAqLywKQEAgLTMyNjA0LDYgKzMyNjEwLDcgQEAKIAkJCQlCQzRBNTMy
RjI1NjA1N0NEMDAyOEM1OTIgLyogRm9udExvYWRUaW1pbmdPdmVycmlkZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMDg0NTY4MDgxMkI5MERBNjAwOTYwQTlGIC8qIEZvbnRNZXRyaWNzLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkxQzdBNkVCNTI2RjVEOEY1MDA5NkQ4QzcgLyogRm9udFBhbGV0dGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTdCNzM4RDMyMjcxMDc5NkUwMDA2NTg5NyAvKiBXZWJDb250ZW50
c1Byb3ZpZGVyTGF5ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTFDNUUxREE4MjZGOTRCOTAwMEUw
N0FGMSAvKiBGb250UGFsZXR0ZVZhbHVlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjUzMjBENkIx
MjJBMjRFOTAwMkQxNDQwIC8qIEZvbnRQbGF0Zm9ybURhdGEuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTM3MUY0RkZDMEQyNUU3RjMwMEVDRTBENSAvKiBGb250UmFuZ2VzLmggaW4gSGVhZGVycyAqLywK
QEAgLTM1Njg0LDcgKzM1NjkxLDYgQEAKIAkJCQkwRjU0REQwODE4ODFENUY1MDAzRUVEQkIgLyog
VG91Y2guaCBpbiBIZWFkZXJzICovLAogCQkJCTcxQjdFRTBEMjFCNUM2ODcwMDMxQzFFRiAvKiBU
b3VjaEFjdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY1NEREMDkxODgxRDVGNTAwM0VFREJC
IC8qIFRvdWNoRXZlbnQuaCBpbiBIZWFkZXJzICovLAotCQkJCTdCNjA5NEREMjcwQzQ0QkQwMDY0
ODM1QyAvKiBBTkdMRVV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY1NEREMEExODgx
RDVGNTAwM0VFREJCIC8qIFRvdWNoTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDcwMzM0RDcx
NDU5RkZENTAwOEQ4RDQ1IC8qIFRyYWNrQmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkU4OEUw
QzIxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuaCBpbiBIZWFkZXJzICovLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZv
cm1DQUxheWVyQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9j
b2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbQppbmRleCBjMDhiYjA3NDk0NjEyNmRmNTY5YTg0
MWQwYjU2MWZhOTY3NTdhMzY0Li45NTZiN2JlZTdhODExMTcyNDQ3ZGM3NjE0ZmRhZjQ3NjQ2MTQ1
MzBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2Nv
YS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbQpAQCAtMzksOCArMzksOCBA
QAogI2ltcG9ydCAiVGlsZUNvbnRyb2xsZXIuaCIKICNpbXBvcnQgIlRpbGVkQmFja2luZy5oIgog
I2ltcG9ydCAiV2ViQWN0aW9uRGlzYWJsaW5nQ0FMYXllckRlbGVnYXRlLmgiCisjaW1wb3J0ICJX
ZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCIKICNpbXBvcnQgIldlYkNvcmVDQUxheWVyRXh0cmFz
LmgiCi0jaW1wb3J0ICJXZWJHTExheWVyLmgiCiAjaW1wb3J0ICJXZWJWaWRlb0NvbnRhaW5lckxh
eWVyLmgiCiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaD4KICNpbXBvcnQg
PHd0Zi9Tb2Z0TGlua2luZy5oPgpAQCAtMjExLDcgKzIxMSw3IEBAIFBsYXRmb3JtQ0FMYXllcjo6
TGF5ZXJUeXBlIFBsYXRmb3JtQ0FMYXllckNvY29hOjpsYXllclR5cGVGb3JQbGF0Zm9ybUxheWVy
KFBsYXRmCiAgICAgICAgICYmIFsoV2ViVmlkZW9Db250YWluZXJMYXllciopbGF5ZXIgcGxheWVy
TGF5ZXJdKQogICAgICAgICByZXR1cm4gTGF5ZXJUeXBlQVZQbGF5ZXJMYXllcjsKIAotICAgIGlm
IChbbGF5ZXIgaXNLaW5kT2ZDbGFzczpbV2ViR0xMYXllciBjbGFzc11dKQorICAgIGlmIChbbGF5
ZXIgaXNLaW5kT2ZDbGFzczpbV2ViQ29udGVudHNQcm92aWRlckxheWVyIGNsYXNzXV0pCiAgICAg
ICAgIHJldHVybiBMYXllclR5cGVDb250ZW50c1Byb3ZpZGVkTGF5ZXI7CiAKICAgICByZXR1cm4g
TGF5ZXJUeXBlQ3VzdG9tOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2EvY29jb2EvV2ViQ29udGVudHNQcm92aWRlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4xYjAwOWI4YTEwNDRhNDY2NjJkYjYyNjUxMjk1YTY2MTJiMzU1NzI4Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2Ev
V2ViQ29udGVudHNQcm92aWRlckxheWVyLmgKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpbXBvcnQgPFF1YXJ0ekNvcmUvQ0FMYXllci5oPgorCisvLyBMYXllciB0aGF0IGNhbiBiZSBz
ZXQgYXMgdGhlIHRhcmdldCBvZiBHcmFwaGljc0xheWVyOjpzZXRDb250ZW50c1BsYXRmb3JtTGF5
ZXIoKS4KKy8vIEJ5IGRlZmF1bHQgcmVzaXplcyBhbGwgdGhlIHN1YmxheWVycyB0byB0aGUgc2Ft
ZSBzaXplIGFzIHRoZSBsYXllciBpdHNlbGYuCisvLyBXaGVuIGhvc3RpbmcgcmVtb3RlIGxheWVy
cywgY2xpZW50cyBhcmUgZXhwZWN0ZWQgdG8gc3ViY2xhc3MgdGhpcyBhbmQgb3ZlcnJpZGUKKy8v
IHJlbGV2YW50IENBTGF5ZXIgbWV0aG9kcyBzdWNoIGFzIFtDQUxheWVyLnNldEJvdW5kc10gdG8g
cGFzcyB0aGUgaW5mb3JtYXRpb24gdG8KKy8vIHRoZSByZW1vdGUgbGF5ZXIuCitAaW50ZXJmYWNl
IFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllciA6IENBTGF5ZXIgeworfQorCitAZW5kCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50
c1Byb3ZpZGVyTGF5ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9j
b2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGZiMWM3NTEwMDNi
NjM1NGUyOTUxZjZiNDM2MWE3ZjVlOTkxZDk3NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5tbQpAQCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgiCisj
aW1wb3J0ICJXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCIKKworQGltcGxlbWVudGF0aW9uIFdl
YkNvbnRlbnRzUHJvdmlkZXJMYXllcgorCistICh2b2lkKXNldEJvdW5kczooQ0dSZWN0KWJvdW5k
cworeworICAgIFtzdXBlciBzZXRCb3VuZHM6Ym91bmRzXTsKKyAgICBmb3IgKENBTGF5ZXIqIGxh
eWVyIGluIHNlbGYuc3VibGF5ZXJzKQorICAgICAgICBsYXllci5mcmFtZSA9IGJvdW5kczsKK30K
KworQGVuZAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
b2NvYS9XZWJHTExheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2Nv
YS9XZWJHTExheWVyLmgKaW5kZXggMTQ0YzVhNDI0YTdhM2U0NjM0Yjg2NGIzYmYyMDcwMTcyNjYy
NDU1ZC4uMTA2ZWQyMTE2NzgwYTYxNGRhM2Q1NzMxMTJhNGRlYWE2OTIwNzFkMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIuaApA
QCAtMjQsMTUgKzI0LDEzIEBACiAgKi8KIAogI2ltcG9ydCAiR3JhcGhpY3NDb250ZXh0R0xJT1N1
cmZhY2VTd2FwQ2hhaW4uaCIKLSNpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29yZS5oPgotI2lt
cG9ydCA8bWVtb3J5PgotI2ltcG9ydCA8d3RmL05ha2VkUHRyLmg+CisjaW1wb3J0ICJXZWJDb250
ZW50c1Byb3ZpZGVyTGF5ZXIuaCIKIAogQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfQkVH
SU4KIAogLy8gQSBsYXllciBjbGFzcyBpbXBsZW1lbnRpbmcgZnJvbnQgYnVmZmVyIG1hbmFnZW1l
bnQgb2YgYSAzLWJ1ZmZlcmluZyBzd2FwCiAvLyBjaGFpbiBvZiBJT1N1cmZhY2VzLgotQGludGVy
ZmFjZSBXZWJHTExheWVyIDogQ0FMYXllcgorQGludGVyZmFjZSBXZWJHTExheWVyIDogV2ViQ29u
dGVudHNQcm92aWRlckxheWVyIDxDQUxheWVyRGVsZWdhdGU+CiAKIC0gKGlkKWluaXRXaXRoRGV2
aWNlUGl4ZWxSYXRpbzooZmxvYXQpZGV2aWNlUGl4ZWxSYXRpbyBjb250ZW50c09wYXF1ZTooYm9v
bCljb250ZW50c09wYXF1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KaW5kZXggYTZlOWNmZjUwM2EzZDJmYjY2NWNiNzAw
MzQ1MWFmNTFkZjQ2Nzg5My4uYjM0OWI2OTA3ZThiMTY1MzViNTIwMjUxNTZiMTljZGJmNDQ3NWQy
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2Vi
R0xMYXllci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9X
ZWJHTExheWVyLm1tCkBAIC00NSw2ICs0NSw3IEBAIHByaXZhdGU6CiB9OwogCiBAaW1wbGVtZW50
YXRpb24gV2ViR0xMYXllciB7CisgICAgUmV0YWluUHRyPENBTGF5ZXI+IF9jb250ZW50c0xheWVy
OwogICAgIEJPT0wgX3ByZXBhcmVkRm9yRGlzcGxheTsKICAgICBzdGQ6Om9wdGlvbmFsPFdlYkdM
TGF5ZXJTd2FwQ2hhaW4+IF9zd2FwQ2hhaW47CiB9CkBAIC01MiwyOSArNTMsMTggQEAgcHJpdmF0
ZToKIC0gKGlkKWluaXRXaXRoRGV2aWNlUGl4ZWxSYXRpbzooZmxvYXQpZGV2aWNlUGl4ZWxSYXRp
byBjb250ZW50c09wYXF1ZTooYm9vbCljb250ZW50c09wYXF1ZQogewogICAgIHNlbGYgPSBbc3Vw
ZXIgaW5pdF07Ci0gICAgc2VsZi50cmFuc2Zvcm0gPSBDQVRyYW5zZm9ybTNESWRlbnRpdHk7Ci0g
ICAgc2VsZi5jb250ZW50c09wYXF1ZSA9IGNvbnRlbnRzT3BhcXVlOwotICAgIHNlbGYuY29udGVu
dHNTY2FsZSA9IGRldmljZVBpeGVsUmF0aW87CiAgICAgX3N3YXBDaGFpbi5lbXBsYWNlKHNlbGYp
OworICAgIGF1dG8gY29udGVudHNMYXllciA9IGFkb3B0TlMoW1tDQUxheWVyIGFsbG9jXSBpbml0
XSk7CisgICAgLy8gT3BlbkdMIGNvb3JkaW5hdGUtc3lzdGVtIGhhcyAoMCwgMCkgaW4gYm90dG9t
LWxlZnQgY29ybmVyLCBzbyB5LWZsaXAgdGhlIGNvbnRlbnQgbGF5ZXIuCisgICAgY29udGVudHNM
YXllci5nZXQoKS50cmFuc2Zvcm0gPSBDQVRyYW5zZm9ybTNEU2NhbGUoQ0FUcmFuc2Zvcm0zRElk
ZW50aXR5LCAxLCAtMSwgMSk7CisgICAgY29udGVudHNMYXllci5nZXQoKS5jb250ZW50c09wYXF1
ZSA9IGNvbnRlbnRzT3BhcXVlOworICAgIGNvbnRlbnRzTGF5ZXIuZ2V0KCkuY29udGVudHNTY2Fs
ZSA9IGRldmljZVBpeGVsUmF0aW87CisgICAgY29udGVudHNMYXllci5nZXQoKS5kZWxlZ2F0ZSA9
IHNlbGY7CisgICAgX2NvbnRlbnRzTGF5ZXIgPSBXVEZNb3ZlKGNvbnRlbnRzTGF5ZXIpOworICAg
IFtzZWxmIGFkZFN1YmxheWVyOl9jb250ZW50c0xheWVyLmdldCgpXTsKICAgICByZXR1cm4gc2Vs
ZjsKIH0KIAotLy8gV2hlbiB1c2luZyBhbiBJT1N1cmZhY2UgYXMgbGF5ZXIgY29udGVudHMsIHdl
IG5lZWQgdG8gZmxpcCB0aGUKLS8vIGxheWVyIHRvIHRha2UgaW50byBhY2NvdW50IHRoYXQgdGhl
IElPU3VyZmFjZSBwcm92aWRlcyBjb250ZW50Ci0vLyBpbiBZLXVwLiBUaGlzIG1lYW5zIHRoYXQg
YW55IGluY29taW5nIHRyYW5zZm9ybSAodW5saWtlbHksIHNpbmNlCi0vLyB0aGlzIGlzIGEgY29u
dGVudHMgbGF5ZXIpIGFuZCBhbmNob3IgcG9pbnQgbXVzdCBhZGQgYSBZIHNjYWxlIG9mCi0vLyAt
MSBhbmQgbWFrZSBzdXJlIHRoZSB0cmFuc2Zvcm0gaGFwcGVucyBmcm9tIHRoZSB0b3AuCi0KLS0g
KHZvaWQpc2V0VHJhbnNmb3JtOihDQVRyYW5zZm9ybTNEKXQKLXsKLSAgICBbc3VwZXIgc2V0VHJh
bnNmb3JtOkNBVHJhbnNmb3JtM0RTY2FsZSh0LCAxLCAtMSwgMSldOwotfQotCi0tICh2b2lkKXNl
dEFuY2hvclBvaW50OihDR1BvaW50KXAKLXsKLSAgICBbc3VwZXIgc2V0QW5jaG9yUG9pbnQ6Q0dQ
b2ludE1ha2UocC54LCAxLjAgLSBwLnkpXTsKLX0KLQogLSAoV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4mKSBzd2FwQ2hhaW4KIHsKICAgICByZXR1cm4gX3N3YXBD
aGFpbi52YWx1ZSgpOwpAQCAtODIsMjEgKzcyLDIxIEBAIHByaXZhdGU6CiAKIC0gKHZvaWQpcHJl
cGFyZUZvckRpc3BsYXkKIHsKLSAgICBbc2VsZiBzZXROZWVkc0Rpc3BsYXldOworICAgIFtfY29u
dGVudHNMYXllciBzZXROZWVkc0Rpc3BsYXldOwogICAgIF9wcmVwYXJlZEZvckRpc3BsYXkgPSBZ
RVM7CiB9CiAKLS0gKHZvaWQpZGlzcGxheQorLSAodm9pZClkaXNwbGF5TGF5ZXI6KENBTGF5ZXIg
KilsYXllcgogeworICAgIEFTU0VSVF9VTlVTRUQobGF5ZXIsIGxheWVyID09IF9jb250ZW50c0xh
eWVyKTsKICAgICBpZiAoX3N3YXBDaGFpbi0+ZGlzcGxheVN1cmZhY2UoKSAmJiBfcHJlcGFyZWRG
b3JEaXNwbGF5KSB7Ci0gICAgICAgIHNlbGYuY29udGVudHMgPSBfc3dhcENoYWluLT5kaXNwbGF5
U3VyZmFjZSgpLT5hc0xheWVyQ29udGVudHMoKTsKLSAgICAgICAgW3NlbGYgcmVsb2FkVmFsdWVG
b3JLZXlQYXRoOkAiY29udGVudHMiXTsKKyAgICAgICAgX2NvbnRlbnRzTGF5ZXIuZ2V0KCkuY29u
dGVudHMgPSBfc3dhcENoYWluLT5kaXNwbGF5U3VyZmFjZSgpLT5hc0xheWVyQ29udGVudHMoKTsK
KyAgICAgICAgX3ByZXBhcmVkRm9yRGlzcGxheSA9IE5POworICAgIH0KKyAgICBpZiAoYXV0byBw
bGF0Zm9ybUNBTGF5ZXIgPSBXZWJDb3JlOjpQbGF0Zm9ybUNBTGF5ZXI6OnBsYXRmb3JtQ0FMYXll
ckZvckxheWVyKChfX2JyaWRnZSB2b2lkKilzZWxmKSkgeworICAgICAgICBpZiAoYXV0byBvd25l
ciA9IHBsYXRmb3JtQ0FMYXllci0+b3duZXIoKSkKKyAgICAgICAgICAgIG93bmVyLT5wbGF0Zm9y
bUNBTGF5ZXJMYXllckRpZERpc3BsYXkocGxhdGZvcm1DQUxheWVyLmdldCgpKTsKICAgICB9Ci0g
ICAgYXV0byBsYXllciA9IFdlYkNvcmU6OlBsYXRmb3JtQ0FMYXllcjo6cGxhdGZvcm1DQUxheWVy
Rm9yTGF5ZXIoKF9fYnJpZGdlIHZvaWQqKXNlbGYpOwotICAgIGlmIChsYXllciAmJiBsYXllci0+
b3duZXIoKSkKLSAgICAgICAgbGF5ZXItPm93bmVyKCktPnBsYXRmb3JtQ0FMYXllckxheWVyRGlk
RGlzcGxheShsYXllci5nZXQoKSk7Ci0KLSAgICBfcHJlcGFyZWRGb3JEaXNwbGF5ID0gTk87CiB9
CiAKIEBlbmQK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440608</attachid>
            <date>2021-10-08 07:37:38 -0700</date>
            <delta_ts>2021-10-08 07:41:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231427-20211008173736.patch</filename>
            <type>text/plain</type>
            <size>18282</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNTQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk2ZjZmNTE4NDI2ZDRl
MjQxYWFlNTRmNDQ3MjU5YjU3NjVlOGY5Mi4uODU3NmQ1ZGVmMDBhNGE1ZTU3ZjljNTQzZjI2OTEy
ZGZiODA3YmFmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTEwLTA4ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgQ0EgQWNjZWxlcmF0
ZWQgY29tcG9zaXRpbmcgY29tcG9zaXRvciBzaG91bGQgbm90IHJlZmVyIHRvIFdlYkdMTGF5ZXIg
Zm9yIGNvbnRlbnRzIHByb3ZpZGVkIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDI3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgaW50ZXJtZWRpYXRlIGxheWVyIFdlYkNvbnRlbnRz
UHJvdmlkZXJMYXllci4gVGhpcyBjYW4gaW4gZnV0dXJlIHNlcnZlIGZvciB0d28KKyAgICAgICAg
cHVycG9zZXM6CisgICAgICAgICAtIEhvbGQgYSBob3N0ZWQgQ0FMYXllciBmb3IgdGhlIFdlYkdM
IENBTGF5ZXIgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgIC0gQ2FwdHVyZSBzZXRCb3VuZHMgb24g
dGhlIGNvbnRlbnRzIGxheWVyIGFuZCByZXNpemUgdGhlIEdQVSBwcm9jZXNzIHNpZGUgV2ViR0wg
Q0FMYXllcgorICAgICAgICAgICBhY2NvcmRpbmdseS4KKworICAgICAgICBGaXhlcyBhbHNvIHRo
ZSBkaXNjcmVwYW5jeSB3aGVyZSBXZWJHTExheWVyIHRyYW5zZm9ybSgpIHdvdWxkIHJldHVybiBk
aWZmZXJlbnQgdmFsdWUgdGhhbgorICAgICAgICB3aGF0IHNldFRyYW5zZm9ybSgpIHNldC4gVGhp
cyB3b3VsZCBjb25mdXNlIFBsYXRmb3JtQ0FMYXllciBjbG9uaW5nLCBpZiBXZWJHTCBldmVyIHdv
dWxkCisgICAgICAgIHN1cHBvcnQgdGhhdC4gVGhpcyBhcHBsaWVzIGFsc28gdG8gYW5jaG9yUG9p
bnQuCisKKyAgICAgICAgUmVtb3ZlcyBjYWxsIHRvIFtzZWxmIHJlbG9hZFZhbHVlRm9yS2V5UGF0
aDpAImNvbnRlbnRzIl0sIGl0IGlzIG5vdCBuZWVkZWQuCisgICAgICAgIFdlIGFsd2F5cyBhc3Np
Z24gYSBuZXcgZGlzcGxheSBidWZmZXIgSU9TdXJmYWNlIGluc3RlYWQgb2YgdXBkYXRpbmcgdGhl
IGV4aXN0aW5nIC5jb250ZW50cworICAgICAgICBJT1N1cmZhY2UgYmVoaW5kIENBTGF5ZXIncyBi
YWNrLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYSByZWZhY3Rvci4KKworICAgICAgICAqIFBs
YXRmb3JtTWFjLmNtYWtlOgorICAgICAgICAqIFNvdXJjZXNDb2NvYS50eHQ6CisgICAgICAgICog
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6UGxhdGZvcm1DQUxheWVyQ29jb2E6OmxheWVyVHlwZUZvclBsYXRmb3JtTGF5ZXIpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250
ZW50c1Byb3ZpZGVyTGF5ZXIubW06IEFkZGVkLgorICAgICAgICAoLVtXZWJDb250ZW50c1Byb3Zp
ZGVyTGF5ZXIgc2V0Qm91bmRzOl0pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29h
L1dlYkdMTGF5ZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExh
eWVyLm1tOgorICAgICAgICAoLVtXZWJHTExheWVyIGluaXRXaXRoRGV2aWNlUGl4ZWxSYXRpbzpj
b250ZW50c09wYXF1ZTpdKToKKyAgICAgICAgKC1bV2ViR0xMYXllciBwcmVwYXJlRm9yRGlzcGxh
eV0pOgorICAgICAgICAoLVtXZWJHTExheWVyIGRpc3BsYXlMYXllcjpdKToKKyAgICAgICAgKC1b
V2ViR0xMYXllciBzZXRUcmFuc2Zvcm06XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkdMTGF5
ZXIgc2V0QW5jaG9yUG9pbnQ6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkdMTGF5ZXIgZGlz
cGxheV0pOiBEZWxldGVkLgorCiAyMDIxLTA5LTMwICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5l
bkBhcHBsZS5jb20+CiAKICAgICAgICAgU2NvcGVkRUdMRGVmYXVsdERpc3BsYXkgc2hvdWxkIGJl
IHJlbW92ZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtlIGIv
U291cmNlL1dlYkNvcmUvUGxhdGZvcm1NYWMuY21ha2UKaW5kZXggYmNmY2ViNzkzMTNlYzA1YzM1
NGM1ZmVmZTM0YWI1MTBhYjMzZTcxNy4uOTg2MDVhOTJlNGUzYzkwMTI1ODM3YmZiMzg0OGZmYzAw
NTdjMGU5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1NYWMuY21ha2UKKysr
IGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1NYWMuY21ha2UKQEAgLTYzNyw2ICs2MzcsNyBAQCBs
aXN0KEFQUEVORCBXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKIAogICAgIHBsYXRm
b3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FBbmltYXRpb25Db2NvYS5oCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZvcm1DQUxheWVyQ29jb2EuaAorICAgIHBsYXRm
b3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5oCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViVmlkZW9Db250YWluZXJMYXllci5oCiAKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9jZy9Db2xvclNwYWNlQ0cuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvU291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNDb2NvYS50eHQK
aW5kZXggYTRjMGE3NjI3YzM3ODFkZmNkMDQ5MDZmYzUyMzMwOWM5MDczMGMyYy4uNTNjYTEwMWQ4
MDMwMzIzNjgwOGE1ZWU3ZDZjMjVlNWUzMzQzMDNkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvU291cmNlc0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2EudHh0
CkBAIC0zMzAsNiArMzMwLDcgQEAgcGxhdGZvcm0vZ3JhcGhpY3MvY2EvVHJhbnNmb3JtYXRpb25N
YXRyaXhDQS5jcHAKIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FBbmltYXRp
b25Db2NvYS5tbQogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZvcm1DQUZpbHRlcnND
b2NvYS5tbQogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZvcm1DQUxheWVyQ29jb2Eu
bW0KK3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5t
bQogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViU3lzdGVtQmFja2Ryb3BMYXllci5tbQog
cGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViVGlsZWRCYWNraW5nTGF5ZXIubW0KIHBsYXRm
b3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIubW0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBhYWUx
MTg0YzVmN2Y3MjQ3ODU5YjEzYTZhNDliOTRlZDFkNjhkMjNhLi5jODUwN2IyNzRlOGQwMjg5M2Uz
Zjg5MGQwM2Y3MjU4NGE3ZGEwNjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMzU2LDYgKzIzNTYsNyBAQAogCQk3QjYwOTRE
RDI3MEM0NEJEMDA2NDgzNUMgLyogQU5HTEVVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCQjM0QTE2MjUzNDVDQjIwMDAyOUQwOCAvKiBB
TkdMRVV0aWxpdGllcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CiAJCTdCNkRDODE5MjU3MTJFOTIwMDM4MEM3MCAvKiBHcmFwaGljc0NvbnRleHRHTElP
U3VyZmFjZVN3YXBDaGFpbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0I2REM4MTcyNTcxMkU5MjAwMzgwQzcwIC8qIEdyYXBoaWNzQ29udGV4dEdMSU9T
dXJmYWNlU3dhcENoYWluLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJN0I3MzExRkIyNUMwOTJCNzAwM0IyNzk2IC8qIFNjb3BlZEhpZ2hQZXJmb3Jt
YW5jZUdQVVJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDdCNzMxMUZBMjVDMDkyQjcwMDNCMjc5NiAvKiBTY29wZWRIaWdoUGVyZm9ybWFuY2VH
UFVSZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJN0I3MzhEMzIyNzEwNzk2RTAwMDY1ODk3IC8qIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0I3MzhE
MkYyNzEwNzk2NTAwMDY1ODk3IC8qIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdCOEVENUYwMjZGMEMx
M0QwMDhBQzAyMyAvKiBDVlV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gN0I4RUQ1RUQyNkYwQzEyMzAwOEFDMDIzIC8qIENWVXRpbGl0aWVz
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0I5
MDQxNzAyNTUwMTE0MjAwNkVFQjhDIC8qIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QjkwNDE2
RTI1NTAxMTA5MDA2RUVCOEMgLyogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2UuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QkIzNEE0
ODI1Mzc3NkNBMDAwMjlEMDggLyogR3JhcGhpY3NDb250ZXh0R0xJbWFnZUV4dHJhY3Rvci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0JCMzRBNDUyNTM3
NzZDNjAwMDI5RDA4IC8qIEdyYXBoaWNzQ29udGV4dEdMSW1hZ2VFeHRyYWN0b3IuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTA2NTEsNiArMTA2
NTIsOCBAQAogCQk3QjZEQzgxNTI1NzEyRTkxMDAzODBDNzAgLyogR3JhcGhpY3NDb250ZXh0R0xJ
T1N1cmZhY2VTd2FwQ2hhaW4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3QjZEQzgxNzI1NzEyRTkyMDAzODBDNzAgLyogR3JhcGhpY3NDb250
ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0I3MzExRkEyNUMwOTJCNzAwM0IyNzk2IC8qIFNjb3BlZEhpZ2hQZXJm
b3JtYW5jZUdQVVJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nv
cGVkSGlnaFBlcmZvcm1hbmNlR1BVUmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3QjczOEQyRjI3MTA3OTY1MDAwNjU4OTcgLyogV2ViQ29udGVudHNQcm92aWRlckxheWVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3QjczOEQzMTI3MTA3OTY1MDAwNjU4OTcgLyogV2ViQ29udGVu
dHNQcm92aWRlckxheWVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQ29udGVudHNQcm92
aWRlckxheWVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QjhFRDVFRDI2RjBD
MTIzMDA4QUMwMjMgLyogQ1ZVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ1ZVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0I4RUQ1
RUYyNkYwQzEyMzAwOEFDMDIzIC8qIENWVXRpbGl0aWVzLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gQ1ZVdGlsaXRpZXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTdCOTA0MTZFMjU1MDExMDkwMDZFRUI4QyAvKiBSZW1vdGVHcmFwaGljc0NvbnRl
eHRHTFByb3h5QmFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFBy
b3h5QmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjA0MjYsNiArMjA0Mjks
OCBAQAogCQkJCTBGMTMxNjNGMTZFRDBDREUwMDM1Q0MwNCAvKiBQbGF0Zm9ybUNBRmlsdGVyc0Nv
Y29hLm1tICovLAogCQkJCTJENzBCQTEyMTgwNzREREYwMDAxOTA4QSAvKiBQbGF0Zm9ybUNBTGF5
ZXJDb2NvYS5oICovLAogCQkJCTQ5NTg3ODIwMTJBNTdEREYwMDcyMzhBQyAvKiBQbGF0Zm9ybUNB
TGF5ZXJDb2NvYS5tbSAqLywKKwkJCQk3QjczOEQyRjI3MTA3OTY1MDAwNjU4OTcgLyogV2ViQ29u
dGVudHNQcm92aWRlckxheWVyLmggKi8sCisJCQkJN0I3MzhEMzEyNzEwNzk2NTAwMDY1ODk3IC8q
IFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5tbSAqLywKIAkJCQkzMURFQTQ1NDFCMzlGNEQ5MDBG
NzcxNzggLyogV2ViU3lzdGVtQmFja2Ryb3BMYXllci5oICovLAogCQkJCTMxREVBNDUzMUIzOUY0
RDkwMEY3NzE3OCAvKiBXZWJTeXN0ZW1CYWNrZHJvcExheWVyLm1tICovLAogCQkJCTBGNTgwRkEx
MTQ5NjkzOTEwMEZCNUJEOCAvKiBXZWJUaWxlZEJhY2tpbmdMYXllci5oICovLApAQCAtMzE0NTAs
NiArMzE0NTUsNyBAQAogCQkJCUU3RTAzNTcyMjRENEUxOTYwMDhERkVGQiAvKiBBbmFseXNlck9w
dGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTI3RTNDODA4MjU3RjVFNkUwMEM5ODZBQiAvKiBB
TkdMRUhlYWRlcnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQTc5NUM3MTg4OEJDQjIwMDM4MkY5
MCAvKiBBTkdMRUluc3RhbmNlZEFycmF5cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0I2MDk0REQy
NzBDNDRCRDAwNjQ4MzVDIC8qIEFOR0xFVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKIAkJCQk0
OUU5MTJBQjBFRkFDOTA2MDA5RDBDQUYgLyogQW5pbWF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk3MUVGQ0VEQzIwMkIzOEE5MDBEN0M0MTEgLyogQW5pbWF0aW9uRWZmZWN0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQk3MUUyQzQyNjIxQzkzNTI4MDAyNEY4QzggLyogQW5pbWF0aW9uRWZmZWN0UGhh
c2UuaCBpbiBIZWFkZXJzICovLApAQCAtMzU2ODQsNyArMzU2OTAsNiBAQAogCQkJCTBGNTRERDA4
MTg4MUQ1RjUwMDNFRURCQiAvKiBUb3VjaC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzFCN0VFMEQy
MUI1QzY4NzAwMzFDMUVGIC8qIFRvdWNoQWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjU0
REQwOTE4ODFENUY1MDAzRUVEQkIgLyogVG91Y2hFdmVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
N0I2MDk0REQyNzBDNDRCRDAwNjQ4MzVDIC8qIEFOR0xFVXRpbGl0aWVzLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwRjU0REQwQTE4ODFENUY1MDAzRUVEQkIgLyogVG91Y2hMaXN0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQkwNzAzMzRENzE0NTlGRkQ1MDA4RDhENDUgLyogVHJhY2tCYXNlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCRTg4RTBDMjE3MTVDRTI2MDA2NThEOTggLyogVHJhY2tMaXN0QmFzZS5o
IGluIEhlYWRlcnMgKi8sCkBAIC0zNTgzNyw2ICszNTg0Miw3IEBACiAJCQkJMUYzNkVBOUMxRTIx
QkExNzAwNjIxRTI1IC8qIFdlYkJhY2tncm91bmRUYXNrQ29udHJvbGxlci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQTVCODFDQjUxRkFBNDQ2MjAwMzdEMUU2IC8qIFdlYkNvbnNvbGVBZ2VudC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJOUJCQTJDQUIxRjY3OUUwQzAwRkQxQzFFIC8qIFdlYkNvbnRlbnRS
ZWFkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTdCNzM4RDMyMjcxMDc5NkUwMDA2NTg5NyAvKiBX
ZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxOUJFNzU5MUJD
N0Y0MkIwMEUxQzg1QiAvKiBXZWJDb3JlQnVpbHRpbk5hbWVzLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkyRDNFRjQ0QTE5MTc5MTVDMDAwMzQxODQgLyogV2ViQ29yZUNBTGF5ZXJFeHRyYXMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTUxNUY3OTU0MUNGQ0EzRDUwMENDRUQ5MyAvKiBXZWJDb3JlQ3Jvc3NU
aHJlYWRDb3BpZXIuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZvcm1DQUxheWVyQ29jb2EubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2Nv
YS5tbQppbmRleCBjMDhiYjA3NDk0NjEyNmRmNTY5YTg0MWQwYjU2MWZhOTY3NTdhMzY0Li45NTZi
N2JlZTdhODExMTcyNDQ3ZGM3NjE0ZmRhZjQ3NjQ2MTQ1MzBmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9y
bUNBTGF5ZXJDb2NvYS5tbQpAQCAtMzksOCArMzksOCBAQAogI2ltcG9ydCAiVGlsZUNvbnRyb2xs
ZXIuaCIKICNpbXBvcnQgIlRpbGVkQmFja2luZy5oIgogI2ltcG9ydCAiV2ViQWN0aW9uRGlzYWJs
aW5nQ0FMYXllckRlbGVnYXRlLmgiCisjaW1wb3J0ICJXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIu
aCIKICNpbXBvcnQgIldlYkNvcmVDQUxheWVyRXh0cmFzLmgiCi0jaW1wb3J0ICJXZWJHTExheWVy
LmgiCiAjaW1wb3J0ICJXZWJWaWRlb0NvbnRhaW5lckxheWVyLmgiCiAjaW1wb3J0IDxwYWwvc3Bp
L2NvY29hL1F1YXJ0ekNvcmVTUEkuaD4KICNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgpAQCAt
MjExLDcgKzIxMSw3IEBAIFBsYXRmb3JtQ0FMYXllcjo6TGF5ZXJUeXBlIFBsYXRmb3JtQ0FMYXll
ckNvY29hOjpsYXllclR5cGVGb3JQbGF0Zm9ybUxheWVyKFBsYXRmCiAgICAgICAgICYmIFsoV2Vi
VmlkZW9Db250YWluZXJMYXllciopbGF5ZXIgcGxheWVyTGF5ZXJdKQogICAgICAgICByZXR1cm4g
TGF5ZXJUeXBlQVZQbGF5ZXJMYXllcjsKIAotICAgIGlmIChbbGF5ZXIgaXNLaW5kT2ZDbGFzczpb
V2ViR0xMYXllciBjbGFzc11dKQorICAgIGlmIChbbGF5ZXIgaXNLaW5kT2ZDbGFzczpbV2ViQ29u
dGVudHNQcm92aWRlckxheWVyIGNsYXNzXV0pCiAgICAgICAgIHJldHVybiBMYXllclR5cGVDb250
ZW50c1Byb3ZpZGVkTGF5ZXI7CiAKICAgICByZXR1cm4gTGF5ZXJUeXBlQ3VzdG9tOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViQ29udGVu
dHNQcm92aWRlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9j
b2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYjAwOWI4YTEwNDRh
NDY2NjJkYjYyNjUxMjk1YTY2MTJiMzU1NzI4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViQ29udGVudHNQcm92aWRlckxheWVy
LmgKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgPFF1YXJ0ekNvcmUvQ0FM
YXllci5oPgorCisvLyBMYXllciB0aGF0IGNhbiBiZSBzZXQgYXMgdGhlIHRhcmdldCBvZiBHcmFw
aGljc0xheWVyOjpzZXRDb250ZW50c1BsYXRmb3JtTGF5ZXIoKS4KKy8vIEJ5IGRlZmF1bHQgcmVz
aXplcyBhbGwgdGhlIHN1YmxheWVycyB0byB0aGUgc2FtZSBzaXplIGFzIHRoZSBsYXllciBpdHNl
bGYuCisvLyBXaGVuIGhvc3RpbmcgcmVtb3RlIGxheWVycywgY2xpZW50cyBhcmUgZXhwZWN0ZWQg
dG8gc3ViY2xhc3MgdGhpcyBhbmQgb3ZlcnJpZGUKKy8vIHJlbGV2YW50IENBTGF5ZXIgbWV0aG9k
cyBzdWNoIGFzIFtDQUxheWVyLnNldEJvdW5kc10gdG8gcGFzcyB0aGUgaW5mb3JtYXRpb24gdG8K
Ky8vIHRoZSByZW1vdGUgbGF5ZXIuCitAaW50ZXJmYWNlIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ciA6IENBTGF5ZXIgeworfQorCitAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVy
TGF5ZXIubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOGZiMWM3NTEwMDNiNjM1NGUyOTUxZjZiNDM2MWE3ZjVlOTkx
ZDk3NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5tbQpAQCAtMCwwICsxLDM5IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJXZWJDb250ZW50c1Byb3Zp
ZGVyTGF5ZXIuaCIKKworQGltcGxlbWVudGF0aW9uIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllcgor
CistICh2b2lkKXNldEJvdW5kczooQ0dSZWN0KWJvdW5kcworeworICAgIFtzdXBlciBzZXRCb3Vu
ZHM6Ym91bmRzXTsKKyAgICBmb3IgKENBTGF5ZXIqIGxheWVyIGluIHNlbGYuc3VibGF5ZXJzKQor
ICAgICAgICBsYXllci5mcmFtZSA9IGJvdW5kczsKK30KKworQGVuZAorCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLmgKaW5kZXggMTQ0
YzVhNDI0YTdhM2U0NjM0Yjg2NGIzYmYyMDcwMTcyNjYyNDU1ZC4uMTA2ZWQyMTE2NzgwYTYxNGRh
M2Q1NzMxMTJhNGRlYWE2OTIwNzFkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIuaApAQCAtMjQsMTUgKzI0LDEzIEBACiAgKi8K
IAogI2ltcG9ydCAiR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCIKLSNpbXBv
cnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29yZS5oPgotI2ltcG9ydCA8bWVtb3J5PgotI2ltcG9ydCA8
d3RmL05ha2VkUHRyLmg+CisjaW1wb3J0ICJXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCIKIAog
QUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfQkVHSU4KIAogLy8gQSBsYXllciBjbGFzcyBp
bXBsZW1lbnRpbmcgZnJvbnQgYnVmZmVyIG1hbmFnZW1lbnQgb2YgYSAzLWJ1ZmZlcmluZyBzd2Fw
CiAvLyBjaGFpbiBvZiBJT1N1cmZhY2VzLgotQGludGVyZmFjZSBXZWJHTExheWVyIDogQ0FMYXll
cgorQGludGVyZmFjZSBXZWJHTExheWVyIDogV2ViQ29udGVudHNQcm92aWRlckxheWVyIDxDQUxh
eWVyRGVsZWdhdGU+CiAKIC0gKGlkKWluaXRXaXRoRGV2aWNlUGl4ZWxSYXRpbzooZmxvYXQpZGV2
aWNlUGl4ZWxSYXRpbyBjb250ZW50c09wYXF1ZTooYm9vbCljb250ZW50c09wYXF1ZTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXll
ci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIu
bW0KaW5kZXggYTZlOWNmZjUwM2EzZDJmYjY2NWNiNzAwMzQ1MWFmNTFkZjQ2Nzg5My4uYjM0OWI2
OTA3ZThiMTY1MzViNTIwMjUxNTZiMTljZGJmNDQ3NWQyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLm1tCkBAIC00NSw2ICs0
NSw3IEBAIHByaXZhdGU6CiB9OwogCiBAaW1wbGVtZW50YXRpb24gV2ViR0xMYXllciB7CisgICAg
UmV0YWluUHRyPENBTGF5ZXI+IF9jb250ZW50c0xheWVyOwogICAgIEJPT0wgX3ByZXBhcmVkRm9y
RGlzcGxheTsKICAgICBzdGQ6Om9wdGlvbmFsPFdlYkdMTGF5ZXJTd2FwQ2hhaW4+IF9zd2FwQ2hh
aW47CiB9CkBAIC01MiwyOSArNTMsMTggQEAgcHJpdmF0ZToKIC0gKGlkKWluaXRXaXRoRGV2aWNl
UGl4ZWxSYXRpbzooZmxvYXQpZGV2aWNlUGl4ZWxSYXRpbyBjb250ZW50c09wYXF1ZTooYm9vbClj
b250ZW50c09wYXF1ZQogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07Ci0gICAgc2VsZi50cmFu
c2Zvcm0gPSBDQVRyYW5zZm9ybTNESWRlbnRpdHk7Ci0gICAgc2VsZi5jb250ZW50c09wYXF1ZSA9
IGNvbnRlbnRzT3BhcXVlOwotICAgIHNlbGYuY29udGVudHNTY2FsZSA9IGRldmljZVBpeGVsUmF0
aW87CiAgICAgX3N3YXBDaGFpbi5lbXBsYWNlKHNlbGYpOworICAgIGF1dG8gY29udGVudHNMYXll
ciA9IGFkb3B0TlMoW1tDQUxheWVyIGFsbG9jXSBpbml0XSk7CisgICAgLy8gT3BlbkdMIGNvb3Jk
aW5hdGUtc3lzdGVtIGhhcyAoMCwgMCkgaW4gYm90dG9tLWxlZnQgY29ybmVyLCBzbyB5LWZsaXAg
dGhlIGNvbnRlbnQgbGF5ZXIuCisgICAgY29udGVudHNMYXllci5nZXQoKS50cmFuc2Zvcm0gPSBD
QVRyYW5zZm9ybTNEU2NhbGUoQ0FUcmFuc2Zvcm0zRElkZW50aXR5LCAxLCAtMSwgMSk7CisgICAg
Y29udGVudHNMYXllci5nZXQoKS5jb250ZW50c09wYXF1ZSA9IGNvbnRlbnRzT3BhcXVlOworICAg
IGNvbnRlbnRzTGF5ZXIuZ2V0KCkuY29udGVudHNTY2FsZSA9IGRldmljZVBpeGVsUmF0aW87Cisg
ICAgY29udGVudHNMYXllci5nZXQoKS5kZWxlZ2F0ZSA9IHNlbGY7CisgICAgX2NvbnRlbnRzTGF5
ZXIgPSBXVEZNb3ZlKGNvbnRlbnRzTGF5ZXIpOworICAgIFtzZWxmIGFkZFN1YmxheWVyOl9jb250
ZW50c0xheWVyLmdldCgpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIAotLy8gV2hlbiB1c2luZyBh
biBJT1N1cmZhY2UgYXMgbGF5ZXIgY29udGVudHMsIHdlIG5lZWQgdG8gZmxpcCB0aGUKLS8vIGxh
eWVyIHRvIHRha2UgaW50byBhY2NvdW50IHRoYXQgdGhlIElPU3VyZmFjZSBwcm92aWRlcyBjb250
ZW50Ci0vLyBpbiBZLXVwLiBUaGlzIG1lYW5zIHRoYXQgYW55IGluY29taW5nIHRyYW5zZm9ybSAo
dW5saWtlbHksIHNpbmNlCi0vLyB0aGlzIGlzIGEgY29udGVudHMgbGF5ZXIpIGFuZCBhbmNob3Ig
cG9pbnQgbXVzdCBhZGQgYSBZIHNjYWxlIG9mCi0vLyAtMSBhbmQgbWFrZSBzdXJlIHRoZSB0cmFu
c2Zvcm0gaGFwcGVucyBmcm9tIHRoZSB0b3AuCi0KLS0gKHZvaWQpc2V0VHJhbnNmb3JtOihDQVRy
YW5zZm9ybTNEKXQKLXsKLSAgICBbc3VwZXIgc2V0VHJhbnNmb3JtOkNBVHJhbnNmb3JtM0RTY2Fs
ZSh0LCAxLCAtMSwgMSldOwotfQotCi0tICh2b2lkKXNldEFuY2hvclBvaW50OihDR1BvaW50KXAK
LXsKLSAgICBbc3VwZXIgc2V0QW5jaG9yUG9pbnQ6Q0dQb2ludE1ha2UocC54LCAxLjAgLSBwLnkp
XTsKLX0KLQogLSAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4m
KSBzd2FwQ2hhaW4KIHsKICAgICByZXR1cm4gX3N3YXBDaGFpbi52YWx1ZSgpOwpAQCAtODIsMjEg
KzcyLDIxIEBAIHByaXZhdGU6CiAKIC0gKHZvaWQpcHJlcGFyZUZvckRpc3BsYXkKIHsKLSAgICBb
c2VsZiBzZXROZWVkc0Rpc3BsYXldOworICAgIFtfY29udGVudHNMYXllciBzZXROZWVkc0Rpc3Bs
YXldOwogICAgIF9wcmVwYXJlZEZvckRpc3BsYXkgPSBZRVM7CiB9CiAKLS0gKHZvaWQpZGlzcGxh
eQorLSAodm9pZClkaXNwbGF5TGF5ZXI6KENBTGF5ZXIgKilsYXllcgogeworICAgIEFTU0VSVF9V
TlVTRUQobGF5ZXIsIGxheWVyID09IF9jb250ZW50c0xheWVyKTsKICAgICBpZiAoX3N3YXBDaGFp
bi0+ZGlzcGxheVN1cmZhY2UoKSAmJiBfcHJlcGFyZWRGb3JEaXNwbGF5KSB7Ci0gICAgICAgIHNl
bGYuY29udGVudHMgPSBfc3dhcENoYWluLT5kaXNwbGF5U3VyZmFjZSgpLT5hc0xheWVyQ29udGVu
dHMoKTsKLSAgICAgICAgW3NlbGYgcmVsb2FkVmFsdWVGb3JLZXlQYXRoOkAiY29udGVudHMiXTsK
KyAgICAgICAgX2NvbnRlbnRzTGF5ZXIuZ2V0KCkuY29udGVudHMgPSBfc3dhcENoYWluLT5kaXNw
bGF5U3VyZmFjZSgpLT5hc0xheWVyQ29udGVudHMoKTsKKyAgICAgICAgX3ByZXBhcmVkRm9yRGlz
cGxheSA9IE5POworICAgIH0KKyAgICBpZiAoYXV0byBwbGF0Zm9ybUNBTGF5ZXIgPSBXZWJDb3Jl
OjpQbGF0Zm9ybUNBTGF5ZXI6OnBsYXRmb3JtQ0FMYXllckZvckxheWVyKChfX2JyaWRnZSB2b2lk
KilzZWxmKSkgeworICAgICAgICBpZiAoYXV0byBvd25lciA9IHBsYXRmb3JtQ0FMYXllci0+b3du
ZXIoKSkKKyAgICAgICAgICAgIG93bmVyLT5wbGF0Zm9ybUNBTGF5ZXJMYXllckRpZERpc3BsYXko
cGxhdGZvcm1DQUxheWVyLmdldCgpKTsKICAgICB9Ci0gICAgYXV0byBsYXllciA9IFdlYkNvcmU6
OlBsYXRmb3JtQ0FMYXllcjo6cGxhdGZvcm1DQUxheWVyRm9yTGF5ZXIoKF9fYnJpZGdlIHZvaWQq
KXNlbGYpOwotICAgIGlmIChsYXllciAmJiBsYXllci0+b3duZXIoKSkKLSAgICAgICAgbGF5ZXIt
Pm93bmVyKCktPnBsYXRmb3JtQ0FMYXllckxheWVyRGlkRGlzcGxheShsYXllci5nZXQoKSk7Ci0K
LSAgICBfcHJlcGFyZWRGb3JEaXNwbGF5ID0gTk87CiB9CiAKIEBlbmQK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440609</attachid>
            <date>2021-10-08 07:41:14 -0700</date>
            <delta_ts>2021-10-08 07:43:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231427-20211008174112.patch</filename>
            <type>text/plain</type>
            <size>17348</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNzk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzlhOTYyZjhjZGI5ODM0
NjMxNDBhMDEzYTZjYTkyNzM1OTE2Mzk3YS4uMzIxY2FmYzdhNjQwMGEyOWE5MGQ1MzcxYjU5Njg2
ZTM2ZmFiYmI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTEwLTA4ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgQ0EgQWNjZWxlcmF0
ZWQgY29tcG9zaXRpbmcgY29tcG9zaXRvciBzaG91bGQgbm90IHJlZmVyIHRvIFdlYkdMTGF5ZXIg
Zm9yIGNvbnRlbnRzIHByb3ZpZGVkIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDI3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgaW50ZXJtZWRpYXRlIGxheWVyIFdlYkNvbnRlbnRz
UHJvdmlkZXJMYXllci4gVGhpcyBjYW4gaW4gZnV0dXJlIHNlcnZlIGZvciB0d28KKyAgICAgICAg
cHVycG9zZXM6CisgICAgICAgICAtIEhvbGQgYSBob3N0ZWQgQ0FMYXllciBmb3IgdGhlIFdlYkdM
IENBTGF5ZXIgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgIC0gQ2FwdHVyZSBzZXRCb3VuZHMgb24g
dGhlIGNvbnRlbnRzIGxheWVyIGFuZCByZXNpemUgdGhlIEdQVSBwcm9jZXNzIHNpZGUgV2ViR0wg
Q0FMYXllcgorICAgICAgICAgICBhY2NvcmRpbmdseS4KKworICAgICAgICBGaXhlcyBhbHNvIHRo
ZSBkaXNjcmVwYW5jeSB3aGVyZSBXZWJHTExheWVyIHRyYW5zZm9ybSgpIHdvdWxkIHJldHVybiBk
aWZmZXJlbnQgdmFsdWUgdGhhbgorICAgICAgICB3aGF0IHNldFRyYW5zZm9ybSgpIHNldC4gVGhp
cyB3b3VsZCBjb25mdXNlIFBsYXRmb3JtQ0FMYXllciBjbG9uaW5nLCBpZiBXZWJHTCBldmVyIHdv
dWxkCisgICAgICAgIHN1cHBvcnQgdGhhdC4gVGhpcyBhcHBsaWVzIGFsc28gdG8gYW5jaG9yUG9p
bnQuCisKKyAgICAgICAgUmVtb3ZlcyBjYWxsIHRvIFtzZWxmIHJlbG9hZFZhbHVlRm9yS2V5UGF0
aDpAImNvbnRlbnRzIl0sIGl0IGlzIG5vdCBuZWVkZWQuCisgICAgICAgIFdlIGFsd2F5cyBhc3Np
Z24gYSBuZXcgZGlzcGxheSBidWZmZXIgSU9TdXJmYWNlIGluc3RlYWQgb2YgdXBkYXRpbmcgdGhl
IGV4aXN0aW5nIC5jb250ZW50cworICAgICAgICBJT1N1cmZhY2UgYmVoaW5kIENBTGF5ZXIncyBi
YWNrLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYSByZWZhY3Rvci4KKworICAgICAgICAqIFBs
YXRmb3JtTWFjLmNtYWtlOgorICAgICAgICAqIFNvdXJjZXNDb2NvYS50eHQ6CisgICAgICAgICog
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6UGxhdGZvcm1DQUxheWVyQ29jb2E6OmxheWVyVHlwZUZvclBsYXRmb3JtTGF5ZXIpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250
ZW50c1Byb3ZpZGVyTGF5ZXIubW06IEFkZGVkLgorICAgICAgICAoLVtXZWJDb250ZW50c1Byb3Zp
ZGVyTGF5ZXIgc2V0Qm91bmRzOl0pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29h
L1dlYkdMTGF5ZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExh
eWVyLm1tOgorICAgICAgICAoLVtXZWJHTExheWVyIGluaXRXaXRoRGV2aWNlUGl4ZWxSYXRpbzpj
b250ZW50c09wYXF1ZTpdKToKKyAgICAgICAgKC1bV2ViR0xMYXllciBwcmVwYXJlRm9yRGlzcGxh
eV0pOgorICAgICAgICAoLVtXZWJHTExheWVyIGRpc3BsYXlMYXllcjpdKToKKyAgICAgICAgKC1b
V2ViR0xMYXllciBzZXRUcmFuc2Zvcm06XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkdMTGF5
ZXIgc2V0QW5jaG9yUG9pbnQ6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkdMTGF5ZXIgZGlz
cGxheV0pOiBEZWxldGVkLgorCiAyMDIxLTEwLTA4ICBUeWxlciBXaWxjb2NrICA8dHlsZXJfd0Bh
cHBsZS5jb20+CiAKICAgICAgICAgQVg6IEV4cG9zZSB0aGUgVVJMIGF0dHJpYnV0ZSBvZiA8dmlk
ZW8+IGVsZW1lbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU1hYy5jbWFr
ZSBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtlCmluZGV4IGJjZmNlYjc5MzEzZWMw
NWMzNTRjNWZlZmUzNGFiNTEwYWIzM2U3MTcuLjk4NjA1YTkyZTRlM2M5MDEyNTgzN2JmYjM4NDhm
ZmMwMDU3YzBlOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtlCkBAIC02MzcsNiArNjM3LDcg
QEAgbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBQW5pbWF0aW9uQ29jb2EuaAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLmgKKyAgICBw
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIuaAogCiAg
ICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2cvQ29sb3JTcGFjZUNHLmgKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1NvdXJjZXNDb2NvYS50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2Eu
dHh0CmluZGV4IGE0YzBhNzYyN2MzNzgxZGZjZDA0OTA2ZmM1MjMzMDljOTA3MzBjMmMuLjUzY2Ex
MDFkODAzMDMyMzY4MDhhNWVlN2Q2YzI1ZTVlMzM0MzAzZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1NvdXJjZXNDb2NvYS50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlc0NvY29h
LnR4dApAQCAtMzMwLDYgKzMzMCw3IEBAIHBsYXRmb3JtL2dyYXBoaWNzL2NhL1RyYW5zZm9ybWF0
aW9uTWF0cml4Q0EuY3BwCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBQW5p
bWF0aW9uQ29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FGaWx0
ZXJzQ29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNv
Y29hLm1tCitwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5
ZXIubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlN5c3RlbUJhY2tkcm9wTGF5ZXIu
bW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlRpbGVkQmFja2luZ0xheWVyLm1tCiBw
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJWaWRlb0NvbnRhaW5lckxheWVyLm1tCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXgg
NjgyMzhlNzM3YjllYTQ4OWU4NTQ4Y2NlZmE5YzFmZWJkZjY4NDRjNy4uM2Y3NmI5OGQwODNkOWYz
NWRjNWJhOTMxMDZhMTE2ZGFiZGRiZmQ4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjM1Niw2ICsyMzU2LDcgQEAKIAkJN0I2
MDk0REQyNzBDNDRCRDAwNjQ4MzVDIC8qIEFOR0xFVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QkIzNEExNjI1MzQ1Q0IyMDAwMjlEMDgg
LyogQU5HTEVVdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQk3QjZEQzgxOTI1NzEyRTkyMDAzODBDNzAgLyogR3JhcGhpY3NDb250ZXh0
R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDdCNkRDODE3MjU3MTJFOTIwMDM4MEM3MCAvKiBHcmFwaGljc0NvbnRleHRH
TElPU3VyZmFjZVN3YXBDaGFpbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCTdCNzMxMUZCMjVDMDkyQjcwMDNCMjc5NiAvKiBTY29wZWRIaWdoUGVy
Zm9ybWFuY2VHUFVSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QjczMTFGQTI1QzA5MkI3MDAzQjI3OTYgLyogU2NvcGVkSGlnaFBlcmZvcm1h
bmNlR1BVUmVxdWVzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTdCNzM4RDMyMjcxMDc5NkUwMDA2NTg5NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVy
TGF5ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdC
NzM4RDJGMjcxMDc5NjUwMDA2NTg5NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QjhFRDVGMDI2
RjBDMTNEMDA4QUMwMjMgLyogQ1ZVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCOEVENUVEMjZGMEMxMjMwMDhBQzAyMyAvKiBDVlV0aWxp
dGllcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTdCOTA0MTcwMjU1MDExNDIwMDZFRUI4QyAvKiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
QmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0I5
MDQxNkUyNTUwMTEwOTAwNkVFQjhDIC8qIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0JC
MzRBNDgyNTM3NzZDQTAwMDI5RDA4IC8qIEdyYXBoaWNzQ29udGV4dEdMSW1hZ2VFeHRyYWN0b3Iu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCQjM0QTQ1
MjUzNzc2QzYwMDAyOUQwOCAvKiBHcmFwaGljc0NvbnRleHRHTEltYWdlRXh0cmFjdG9yLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTEwNjYxLDYg
KzEwNjYyLDggQEAKIAkJN0I2REM4MTUyNTcxMkU5MTAwMzgwQzcwIC8qIEdyYXBoaWNzQ29udGV4
dEdMSU9TdXJmYWNlU3dhcENoYWluLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0I2REM4MTcyNTcxMkU5MjAwMzgwQzcwIC8qIEdyYXBoaWNz
Q29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTdCNzMxMUZBMjVDMDkyQjcwMDNCMjc5NiAvKiBTY29wZWRIaWdo
UGVyZm9ybWFuY2VHUFVSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNjb3BlZEhpZ2hQZXJmb3JtYW5jZUdQVVJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJN0I3MzhEMkYyNzEwNzk2NTAwMDY1ODk3IC8qIFdlYkNvbnRlbnRzUHJvdmlkZXJM
YXllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0I3MzhEMzEyNzEwNzk2NTAwMDY1ODk3IC8qIFdlYkNv
bnRlbnRzUHJvdmlkZXJMYXllci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkNvbnRlbnRz
UHJvdmlkZXJMYXllci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0I4RUQ1RUQy
NkYwQzEyMzAwOEFDMDIzIC8qIENWVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IENWVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdC
OEVENUVGMjZGMEMxMjMwMDhBQzAyMyAvKiBDVlV0aWxpdGllcy5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IENWVXRpbGl0aWVzLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk3QjkwNDE2RTI1NTAxMTA5MDA2RUVCOEMgLyogUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xQcm94eUJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eUJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwNDcwLDYgKzIw
NDczLDggQEAKIAkJCQkwRjEzMTYzRjE2RUQwQ0RFMDAzNUNDMDQgLyogUGxhdGZvcm1DQUZpbHRl
cnNDb2NvYS5tbSAqLywKIAkJCQkyRDcwQkExMjE4MDc0RERGMDAwMTkwOEEgLyogUGxhdGZvcm1D
QUxheWVyQ29jb2EuaCAqLywKIAkJCQk0OTU4NzgyMDEyQTU3RERGMDA3MjM4QUMgLyogUGxhdGZv
cm1DQUxheWVyQ29jb2EubW0gKi8sCisJCQkJN0I3MzhEMkYyNzEwNzk2NTAwMDY1ODk3IC8qIFdl
YkNvbnRlbnRzUHJvdmlkZXJMYXllci5oICovLAorCQkJCTdCNzM4RDMxMjcxMDc5NjUwMDA2NTg5
NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIubW0gKi8sCiAJCQkJMzFERUE0NTQxQjM5RjRE
OTAwRjc3MTc4IC8qIFdlYlN5c3RlbUJhY2tkcm9wTGF5ZXIuaCAqLywKIAkJCQkzMURFQTQ1MzFC
MzlGNEQ5MDBGNzcxNzggLyogV2ViU3lzdGVtQmFja2Ryb3BMYXllci5tbSAqLywKIAkJCQkwRjU4
MEZBMTE0OTY5MzkxMDBGQjVCRDggLyogV2ViVGlsZWRCYWNraW5nTGF5ZXIuaCAqLywKQEAgLTM1
ODk5LDYgKzM1OTA0LDcgQEAKIAkJCQkxRjM2RUE5QzFFMjFCQTE3MDA2MjFFMjUgLyogV2ViQmFj
a2dyb3VuZFRhc2tDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNUI4MUNCNTFGQUE0
NDYyMDAzN0QxRTYgLyogV2ViQ29uc29sZUFnZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk5QkJB
MkNBQjFGNjc5RTBDMDBGRDFDMUUgLyogV2ViQ29udGVudFJlYWRlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJN0I3MzhEMzIyNzEwNzk2RTAwMDY1ODk3IC8qIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE5QkU3NTkxQkM3RjQyQjAwRTFDODVCIC8qIFdlYkNv
cmVCdWlsdGluTmFtZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEM0VGNDRBMTkxNzkxNUMwMDAz
NDE4NCAvKiBXZWJDb3JlQ0FMYXllckV4dHJhcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE1Rjc5
NTQxQ0ZDQTNENTAwQ0NFRDkzIC8qIFdlYkNvcmVDcm9zc1RocmVhZENvcGllci5oIGluIEhlYWRl
cnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9j
b2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tCmluZGV4IGMwOGJiMDc0OTQ2
MTI2ZGY1NjlhODQxZDBiNTYxZmE5Njc1N2EzNjQuLjk1NmI3YmVlN2E4MTExNzI0NDdkYzc2MTRm
ZGFmNDc2NDYxNDUzMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tCkBAIC0z
OSw4ICszOSw4IEBACiAjaW1wb3J0ICJUaWxlQ29udHJvbGxlci5oIgogI2ltcG9ydCAiVGlsZWRC
YWNraW5nLmgiCiAjaW1wb3J0ICJXZWJBY3Rpb25EaXNhYmxpbmdDQUxheWVyRGVsZWdhdGUuaCIK
KyNpbXBvcnQgIldlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5oIgogI2ltcG9ydCAiV2ViQ29yZUNB
TGF5ZXJFeHRyYXMuaCIKLSNpbXBvcnQgIldlYkdMTGF5ZXIuaCIKICNpbXBvcnQgIldlYlZpZGVv
Q29udGFpbmVyTGF5ZXIuaCIKICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvUXVhcnR6Q29yZVNQSS5o
PgogI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CkBAIC0yMTEsNyArMjExLDcgQEAgUGxhdGZv
cm1DQUxheWVyOjpMYXllclR5cGUgUGxhdGZvcm1DQUxheWVyQ29jb2E6OmxheWVyVHlwZUZvclBs
YXRmb3JtTGF5ZXIoUGxhdGYKICAgICAgICAgJiYgWyhXZWJWaWRlb0NvbnRhaW5lckxheWVyKils
YXllciBwbGF5ZXJMYXllcl0pCiAgICAgICAgIHJldHVybiBMYXllclR5cGVBVlBsYXllckxheWVy
OwogCi0gICAgaWYgKFtsYXllciBpc0tpbmRPZkNsYXNzOltXZWJHTExheWVyIGNsYXNzXV0pCisg
ICAgaWYgKFtsYXllciBpc0tpbmRPZkNsYXNzOltXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIgY2xh
c3NdXSkKICAgICAgICAgcmV0dXJuIExheWVyVHlwZUNvbnRlbnRzUHJvdmlkZWRMYXllcjsKIAog
ICAgIHJldHVybiBMYXllclR5cGVDdXN0b207CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlk
ZXJMYXllci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFiMDA5YjhhMTA0NGE0NjY2MmRiNjI2NTEyOTVhNjYxMmIz
NTU3MjgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaApAQCAtMCwwICsxLDM2IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2ltcG9ydCA8UXVhcnR6Q29yZS9DQUxheWVyLmg+CisKKy8vIExheWVyIHRo
YXQgY2FuIGJlIHNldCBhcyB0aGUgdGFyZ2V0IG9mIEdyYXBoaWNzTGF5ZXI6OnNldENvbnRlbnRz
UGxhdGZvcm1MYXllcigpLgorLy8gQnkgZGVmYXVsdCByZXNpemVzIGFsbCB0aGUgc3VibGF5ZXJz
IHRvIHRoZSBzYW1lIHNpemUgYXMgdGhlIGxheWVyIGl0c2VsZi4KKy8vIFdoZW4gaG9zdGluZyBy
ZW1vdGUgbGF5ZXJzLCBjbGllbnRzIGFyZSBleHBlY3RlZCB0byBzdWJjbGFzcyB0aGlzIGFuZCBv
dmVycmlkZQorLy8gcmVsZXZhbnQgQ0FMYXllciBtZXRob2RzIHN1Y2ggYXMgW0NBTGF5ZXIuc2V0
Qm91bmRzXSB0byBwYXNzIHRoZSBpbmZvcm1hdGlvbiB0bworLy8gdGhlIHJlbW90ZSBsYXllci4K
K0BpbnRlcmZhY2UgV2ViQ29udGVudHNQcm92aWRlckxheWVyIDogQ0FMYXllciB7Cit9CisKK0Bl
bmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29h
L1dlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5tbQpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
ZmIxYzc1MTAwM2I2MzU0ZTI5NTFmNmI0MzYxYTdmNWU5OTFkOTc3Ci0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViQ29udGVudHNQ
cm92aWRlckxheWVyLm1tCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJj
b25maWcuaCIKKyNpbXBvcnQgIldlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5oIgorCitAaW1wbGVt
ZW50YXRpb24gV2ViQ29udGVudHNQcm92aWRlckxheWVyCisKKy0gKHZvaWQpc2V0Qm91bmRzOihD
R1JlY3QpYm91bmRzCit7CisgICAgW3N1cGVyIHNldEJvdW5kczpib3VuZHNdOworICAgIGZvciAo
Q0FMYXllciogbGF5ZXIgaW4gc2VsZi5zdWJsYXllcnMpCisgICAgICAgIGxheWVyLmZyYW1lID0g
Ym91bmRzOworfQorCitAZW5kCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIuaAppbmRleCAxNDRjNWE0MjRhN2EzZTQ2MzRiODY0YjNi
ZjIwNzAxNzI2NjI0NTVkLi4xMDZlZDIxMTY3ODBhNjE0ZGEzZDU3MzExMmE0ZGVhYTY5MjA3MWQw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJH
TExheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2Vi
R0xMYXllci5oCkBAIC0yNCwxNSArMjQsMTMgQEAKICAqLwogCiAjaW1wb3J0ICJHcmFwaGljc0Nv
bnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oIgotI2ltcG9ydCA8UXVhcnR6Q29yZS9RdWFydHpD
b3JlLmg+Ci0jaW1wb3J0IDxtZW1vcnk+Ci0jaW1wb3J0IDx3dGYvTmFrZWRQdHIuaD4KKyNpbXBv
cnQgIldlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5oIgogCiBBTExPV19ERVBSRUNBVEVEX0RFQ0xB
UkFUSU9OU19CRUdJTgogCiAvLyBBIGxheWVyIGNsYXNzIGltcGxlbWVudGluZyBmcm9udCBidWZm
ZXIgbWFuYWdlbWVudCBvZiBhIDMtYnVmZmVyaW5nIHN3YXAKIC8vIGNoYWluIG9mIElPU3VyZmFj
ZXMuCi1AaW50ZXJmYWNlIFdlYkdMTGF5ZXIgOiBDQUxheWVyCitAaW50ZXJmYWNlIFdlYkdMTGF5
ZXIgOiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIgPENBTGF5ZXJEZWxlZ2F0ZT4KIAogLSAoaWQp
aW5pdFdpdGhEZXZpY2VQaXhlbFJhdGlvOihmbG9hdClkZXZpY2VQaXhlbFJhdGlvIGNvbnRlbnRz
T3BhcXVlOihib29sKWNvbnRlbnRzT3BhcXVlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLm1tIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQppbmRleCBhNmU5Y2ZmNTAzYTNk
MmZiNjY1Y2I3MDAzNDUxYWY1MWRmNDY3ODkzLi5iMzQ5YjY5MDdlOGIxNjUzNWI1MjAyNTE1NmIx
OWNkYmY0NDc1ZDJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb2NvYS9XZWJHTExheWVyLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KQEAgLTQ1LDYgKzQ1LDcgQEAgcHJpdmF0ZToKIH07CiAK
IEBpbXBsZW1lbnRhdGlvbiBXZWJHTExheWVyIHsKKyAgICBSZXRhaW5QdHI8Q0FMYXllcj4gX2Nv
bnRlbnRzTGF5ZXI7CiAgICAgQk9PTCBfcHJlcGFyZWRGb3JEaXNwbGF5OwogICAgIHN0ZDo6b3B0
aW9uYWw8V2ViR0xMYXllclN3YXBDaGFpbj4gX3N3YXBDaGFpbjsKIH0KQEAgLTUyLDI5ICs1Mywx
OCBAQCBwcml2YXRlOgogLSAoaWQpaW5pdFdpdGhEZXZpY2VQaXhlbFJhdGlvOihmbG9hdClkZXZp
Y2VQaXhlbFJhdGlvIGNvbnRlbnRzT3BhcXVlOihib29sKWNvbnRlbnRzT3BhcXVlCiB7CiAgICAg
c2VsZiA9IFtzdXBlciBpbml0XTsKLSAgICBzZWxmLnRyYW5zZm9ybSA9IENBVHJhbnNmb3JtM0RJ
ZGVudGl0eTsKLSAgICBzZWxmLmNvbnRlbnRzT3BhcXVlID0gY29udGVudHNPcGFxdWU7Ci0gICAg
c2VsZi5jb250ZW50c1NjYWxlID0gZGV2aWNlUGl4ZWxSYXRpbzsKICAgICBfc3dhcENoYWluLmVt
cGxhY2Uoc2VsZik7CisgICAgYXV0byBjb250ZW50c0xheWVyID0gYWRvcHROUyhbW0NBTGF5ZXIg
YWxsb2NdIGluaXRdKTsKKyAgICAvLyBPcGVuR0wgY29vcmRpbmF0ZS1zeXN0ZW0gaGFzICgwLCAw
KSBpbiBib3R0b20tbGVmdCBjb3JuZXIsIHNvIHktZmxpcCB0aGUgY29udGVudCBsYXllci4KKyAg
ICBjb250ZW50c0xheWVyLmdldCgpLnRyYW5zZm9ybSA9IENBVHJhbnNmb3JtM0RTY2FsZShDQVRy
YW5zZm9ybTNESWRlbnRpdHksIDEsIC0xLCAxKTsKKyAgICBjb250ZW50c0xheWVyLmdldCgpLmNv
bnRlbnRzT3BhcXVlID0gY29udGVudHNPcGFxdWU7CisgICAgY29udGVudHNMYXllci5nZXQoKS5j
b250ZW50c1NjYWxlID0gZGV2aWNlUGl4ZWxSYXRpbzsKKyAgICBjb250ZW50c0xheWVyLmdldCgp
LmRlbGVnYXRlID0gc2VsZjsKKyAgICBfY29udGVudHNMYXllciA9IFdURk1vdmUoY29udGVudHNM
YXllcik7CisgICAgW3NlbGYgYWRkU3VibGF5ZXI6X2NvbnRlbnRzTGF5ZXIuZ2V0KCldOwogICAg
IHJldHVybiBzZWxmOwogfQogCi0vLyBXaGVuIHVzaW5nIGFuIElPU3VyZmFjZSBhcyBsYXllciBj
b250ZW50cywgd2UgbmVlZCB0byBmbGlwIHRoZQotLy8gbGF5ZXIgdG8gdGFrZSBpbnRvIGFjY291
bnQgdGhhdCB0aGUgSU9TdXJmYWNlIHByb3ZpZGVzIGNvbnRlbnQKLS8vIGluIFktdXAuIFRoaXMg
bWVhbnMgdGhhdCBhbnkgaW5jb21pbmcgdHJhbnNmb3JtICh1bmxpa2VseSwgc2luY2UKLS8vIHRo
aXMgaXMgYSBjb250ZW50cyBsYXllcikgYW5kIGFuY2hvciBwb2ludCBtdXN0IGFkZCBhIFkgc2Nh
bGUgb2YKLS8vIC0xIGFuZCBtYWtlIHN1cmUgdGhlIHRyYW5zZm9ybSBoYXBwZW5zIGZyb20gdGhl
IHRvcC4KLQotLSAodm9pZClzZXRUcmFuc2Zvcm06KENBVHJhbnNmb3JtM0QpdAotewotICAgIFtz
dXBlciBzZXRUcmFuc2Zvcm06Q0FUcmFuc2Zvcm0zRFNjYWxlKHQsIDEsIC0xLCAxKV07Ci19Ci0K
LS0gKHZvaWQpc2V0QW5jaG9yUG9pbnQ6KENHUG9pbnQpcAotewotICAgIFtzdXBlciBzZXRBbmNo
b3JQb2ludDpDR1BvaW50TWFrZShwLngsIDEuMCAtIHAueSldOwotfQotCiAtIChXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbiYpIHN3YXBDaGFpbgogewogICAgIHJl
dHVybiBfc3dhcENoYWluLnZhbHVlKCk7CkBAIC04MiwyMSArNzIsMjEgQEAgcHJpdmF0ZToKIAog
LSAodm9pZClwcmVwYXJlRm9yRGlzcGxheQogewotICAgIFtzZWxmIHNldE5lZWRzRGlzcGxheV07
CisgICAgW19jb250ZW50c0xheWVyIHNldE5lZWRzRGlzcGxheV07CiAgICAgX3ByZXBhcmVkRm9y
RGlzcGxheSA9IFlFUzsKIH0KIAotLSAodm9pZClkaXNwbGF5CistICh2b2lkKWRpc3BsYXlMYXll
cjooQ0FMYXllciAqKWxheWVyCiB7CisgICAgQVNTRVJUX1VOVVNFRChsYXllciwgbGF5ZXIgPT0g
X2NvbnRlbnRzTGF5ZXIpOwogICAgIGlmIChfc3dhcENoYWluLT5kaXNwbGF5U3VyZmFjZSgpICYm
IF9wcmVwYXJlZEZvckRpc3BsYXkpIHsKLSAgICAgICAgc2VsZi5jb250ZW50cyA9IF9zd2FwQ2hh
aW4tPmRpc3BsYXlTdXJmYWNlKCktPmFzTGF5ZXJDb250ZW50cygpOwotICAgICAgICBbc2VsZiBy
ZWxvYWRWYWx1ZUZvcktleVBhdGg6QCJjb250ZW50cyJdOworICAgICAgICBfY29udGVudHNMYXll
ci5nZXQoKS5jb250ZW50cyA9IF9zd2FwQ2hhaW4tPmRpc3BsYXlTdXJmYWNlKCktPmFzTGF5ZXJD
b250ZW50cygpOworICAgICAgICBfcHJlcGFyZWRGb3JEaXNwbGF5ID0gTk87CisgICAgfQorICAg
IGlmIChhdXRvIHBsYXRmb3JtQ0FMYXllciA9IFdlYkNvcmU6OlBsYXRmb3JtQ0FMYXllcjo6cGxh
dGZvcm1DQUxheWVyRm9yTGF5ZXIoKF9fYnJpZGdlIHZvaWQqKXNlbGYpKSB7CisgICAgICAgIGlm
IChhdXRvIG93bmVyID0gcGxhdGZvcm1DQUxheWVyLT5vd25lcigpKQorICAgICAgICAgICAgb3du
ZXItPnBsYXRmb3JtQ0FMYXllckxheWVyRGlkRGlzcGxheShwbGF0Zm9ybUNBTGF5ZXIuZ2V0KCkp
OwogICAgIH0KLSAgICBhdXRvIGxheWVyID0gV2ViQ29yZTo6UGxhdGZvcm1DQUxheWVyOjpwbGF0
Zm9ybUNBTGF5ZXJGb3JMYXllcigoX19icmlkZ2Ugdm9pZCopc2VsZik7Ci0gICAgaWYgKGxheWVy
ICYmIGxheWVyLT5vd25lcigpKQotICAgICAgICBsYXllci0+b3duZXIoKS0+cGxhdGZvcm1DQUxh
eWVyTGF5ZXJEaWREaXNwbGF5KGxheWVyLmdldCgpKTsKLQotICAgIF9wcmVwYXJlZEZvckRpc3Bs
YXkgPSBOTzsKIH0KIAogQGVuZAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440611</attachid>
            <date>2021-10-08 07:43:39 -0700</date>
            <delta_ts>2021-10-11 05:28:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231427-20211008174337.patch</filename>
            <type>text/plain</type>
            <size>17349</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNzk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzlhOTYyZjhjZGI5ODM0
NjMxNDBhMDEzYTZjYTkyNzM1OTE2Mzk3YS4uMzIxY2FmYzdhNjQwMGEyOWE5MGQ1MzcxYjU5Njg2
ZTM2ZmFiYmI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTEwLTA4ICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgQ0EgQWNjZWxlcmF0
ZWQgY29tcG9zaXRpbmcgY29tcG9zaXRvciBzaG91bGQgbm90IHJlZmVyIHRvIFdlYkdMTGF5ZXIg
Zm9yIGNvbnRlbnRzIHByb3ZpZGVkIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDI3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgaW50ZXJtZWRpYXRlIGxheWVyIFdlYkNvbnRlbnRz
UHJvdmlkZXJMYXllci4gVGhpcyBjYW4gaW4gZnV0dXJlIHNlcnZlIGZvciB0d28KKyAgICAgICAg
cHVycG9zZXM6CisgICAgICAgICAtIEhvbGQgYSBob3N0ZWQgQ0FMYXllciBmb3IgdGhlIFdlYkdM
IENBTGF5ZXIgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgIC0gQ2FwdHVyZSBzZXRCb3VuZHMgb24g
dGhlIGNvbnRlbnRzIGxheWVyIGFuZCByZXNpemUgdGhlIEdQVSBwcm9jZXNzIHNpZGUgV2ViR0wg
Q0FMYXllcgorICAgICAgICAgICBhY2NvcmRpbmdseS4KKworICAgICAgICBGaXhlcyBhbHNvIHRo
ZSBkaXNjcmVwYW5jeSB3aGVyZSBXZWJHTExheWVyIHRyYW5zZm9ybSgpIHdvdWxkIHJldHVybiBk
aWZmZXJlbnQgdmFsdWUgdGhhbgorICAgICAgICB3aGF0IHNldFRyYW5zZm9ybSgpIHNldC4gVGhp
cyB3b3VsZCBjb25mdXNlIFBsYXRmb3JtQ0FMYXllciBjbG9uaW5nLCBpZiBXZWJHTCBldmVyIHdv
dWxkCisgICAgICAgIHN1cHBvcnQgdGhhdC4gVGhpcyBhcHBsaWVzIGFsc28gdG8gYW5jaG9yUG9p
bnQuCisKKyAgICAgICAgUmVtb3ZlcyBjYWxsIHRvIFtzZWxmIHJlbG9hZFZhbHVlRm9yS2V5UGF0
aDpAImNvbnRlbnRzIl0sIGl0IGlzIG5vdCBuZWVkZWQuCisgICAgICAgIFdlIGFsd2F5cyBhc3Np
Z24gYSBuZXcgZGlzcGxheSBidWZmZXIgSU9TdXJmYWNlIGluc3RlYWQgb2YgdXBkYXRpbmcgdGhl
IGV4aXN0aW5nIC5jb250ZW50cworICAgICAgICBJT1N1cmZhY2UgYmVoaW5kIENBTGF5ZXIncyBi
YWNrLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYSByZWZhY3Rvci4KKworICAgICAgICAqIFBs
YXRmb3JtTWFjLmNtYWtlOgorICAgICAgICAqIFNvdXJjZXNDb2NvYS50eHQ6CisgICAgICAgICog
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6UGxhdGZvcm1DQUxheWVyQ29jb2E6OmxheWVyVHlwZUZvclBsYXRmb3JtTGF5ZXIpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250
ZW50c1Byb3ZpZGVyTGF5ZXIubW06IEFkZGVkLgorICAgICAgICAoLVtXZWJDb250ZW50c1Byb3Zp
ZGVyTGF5ZXIgc2V0Qm91bmRzOl0pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29h
L1dlYkdMTGF5ZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExh
eWVyLm1tOgorICAgICAgICAoLVtXZWJHTExheWVyIGluaXRXaXRoRGV2aWNlUGl4ZWxSYXRpbzpj
b250ZW50c09wYXF1ZTpdKToKKyAgICAgICAgKC1bV2ViR0xMYXllciBwcmVwYXJlRm9yRGlzcGxh
eV0pOgorICAgICAgICAoLVtXZWJHTExheWVyIGRpc3BsYXlMYXllcjpdKToKKyAgICAgICAgKC1b
V2ViR0xMYXllciBzZXRUcmFuc2Zvcm06XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkdMTGF5
ZXIgc2V0QW5jaG9yUG9pbnQ6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkdMTGF5ZXIgZGlz
cGxheV0pOiBEZWxldGVkLgorCiAyMDIxLTEwLTA4ICBUeWxlciBXaWxjb2NrICA8dHlsZXJfd0Bh
cHBsZS5jb20+CiAKICAgICAgICAgQVg6IEV4cG9zZSB0aGUgVVJMIGF0dHJpYnV0ZSBvZiA8dmlk
ZW8+IGVsZW1lbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU1hYy5jbWFr
ZSBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtlCmluZGV4IGJjZmNlYjc5MzEzZWMw
NWMzNTRjNWZlZmUzNGFiNTEwYWIzM2U3MTcuLjk4NjA1YTkyZTRlM2M5MDEyNTgzN2JmYjM4NDhm
ZmMwMDU3YzBlOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTWFjLmNtYWtlCkBAIC02MzcsNiArNjM3LDcg
QEAgbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBQW5pbWF0aW9uQ29jb2EuaAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLmgKKyAgICBw
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIuaAogCiAg
ICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2cvQ29sb3JTcGFjZUNHLmgKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1NvdXJjZXNDb2NvYS50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2Eu
dHh0CmluZGV4IGE0YzBhNzYyN2MzNzgxZGZjZDA0OTA2ZmM1MjMzMDljOTA3MzBjMmMuLjUzY2Ex
MDFkODAzMDMyMzY4MDhhNWVlN2Q2YzI1ZTVlMzM0MzAzZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1NvdXJjZXNDb2NvYS50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlc0NvY29h
LnR4dApAQCAtMzMwLDYgKzMzMCw3IEBAIHBsYXRmb3JtL2dyYXBoaWNzL2NhL1RyYW5zZm9ybWF0
aW9uTWF0cml4Q0EuY3BwCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBQW5p
bWF0aW9uQ29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FGaWx0
ZXJzQ29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNv
Y29hLm1tCitwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5
ZXIubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlN5c3RlbUJhY2tkcm9wTGF5ZXIu
bW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlRpbGVkQmFja2luZ0xheWVyLm1tCiBw
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJWaWRlb0NvbnRhaW5lckxheWVyLm1tCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXgg
NjgyMzhlNzM3YjllYTQ4OWU4NTQ4Y2NlZmE5YzFmZWJkZjY4NDRjNy4uM2Y3NmI5OGQwODNkOWYz
NWRjNWJhOTMxMDZhMTE2ZGFiZGRiZmQ4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjM1Niw2ICsyMzU2LDcgQEAKIAkJN0I2
MDk0REQyNzBDNDRCRDAwNjQ4MzVDIC8qIEFOR0xFVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QkIzNEExNjI1MzQ1Q0IyMDAwMjlEMDgg
LyogQU5HTEVVdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQk3QjZEQzgxOTI1NzEyRTkyMDAzODBDNzAgLyogR3JhcGhpY3NDb250ZXh0
R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDdCNkRDODE3MjU3MTJFOTIwMDM4MEM3MCAvKiBHcmFwaGljc0NvbnRleHRH
TElPU3VyZmFjZVN3YXBDaGFpbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCTdCNzMxMUZCMjVDMDkyQjcwMDNCMjc5NiAvKiBTY29wZWRIaWdoUGVy
Zm9ybWFuY2VHUFVSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QjczMTFGQTI1QzA5MkI3MDAzQjI3OTYgLyogU2NvcGVkSGlnaFBlcmZvcm1h
bmNlR1BVUmVxdWVzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTdCNzM4RDMyMjcxMDc5NkUwMDA2NTg5NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVy
TGF5ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdC
NzM4RDJGMjcxMDc5NjUwMDA2NTg5NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QjhFRDVGMDI2
RjBDMTNEMDA4QUMwMjMgLyogQ1ZVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCOEVENUVEMjZGMEMxMjMwMDhBQzAyMyAvKiBDVlV0aWxp
dGllcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTdCOTA0MTcwMjU1MDExNDIwMDZFRUI4QyAvKiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
QmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0I5
MDQxNkUyNTUwMTEwOTAwNkVFQjhDIC8qIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0JC
MzRBNDgyNTM3NzZDQTAwMDI5RDA4IC8qIEdyYXBoaWNzQ29udGV4dEdMSW1hZ2VFeHRyYWN0b3Iu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCQjM0QTQ1
MjUzNzc2QzYwMDAyOUQwOCAvKiBHcmFwaGljc0NvbnRleHRHTEltYWdlRXh0cmFjdG9yLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTEwNjYxLDYg
KzEwNjYyLDggQEAKIAkJN0I2REM4MTUyNTcxMkU5MTAwMzgwQzcwIC8qIEdyYXBoaWNzQ29udGV4
dEdMSU9TdXJmYWNlU3dhcENoYWluLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0I2REM4MTcyNTcxMkU5MjAwMzgwQzcwIC8qIEdyYXBoaWNz
Q29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTdCNzMxMUZBMjVDMDkyQjcwMDNCMjc5NiAvKiBTY29wZWRIaWdo
UGVyZm9ybWFuY2VHUFVSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNjb3BlZEhpZ2hQZXJmb3JtYW5jZUdQVVJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJN0I3MzhEMkYyNzEwNzk2NTAwMDY1ODk3IC8qIFdlYkNvbnRlbnRzUHJvdmlkZXJM
YXllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0I3MzhEMzEyNzEwNzk2NTAwMDY1ODk3IC8qIFdlYkNv
bnRlbnRzUHJvdmlkZXJMYXllci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkNvbnRlbnRz
UHJvdmlkZXJMYXllci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0I4RUQ1RUQy
NkYwQzEyMzAwOEFDMDIzIC8qIENWVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IENWVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdC
OEVENUVGMjZGMEMxMjMwMDhBQzAyMyAvKiBDVlV0aWxpdGllcy5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IENWVXRpbGl0aWVzLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk3QjkwNDE2RTI1NTAxMTA5MDA2RUVCOEMgLyogUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0xQcm94eUJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eUJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwNDcwLDYgKzIw
NDczLDggQEAKIAkJCQkwRjEzMTYzRjE2RUQwQ0RFMDAzNUNDMDQgLyogUGxhdGZvcm1DQUZpbHRl
cnNDb2NvYS5tbSAqLywKIAkJCQkyRDcwQkExMjE4MDc0RERGMDAwMTkwOEEgLyogUGxhdGZvcm1D
QUxheWVyQ29jb2EuaCAqLywKIAkJCQk0OTU4NzgyMDEyQTU3RERGMDA3MjM4QUMgLyogUGxhdGZv
cm1DQUxheWVyQ29jb2EubW0gKi8sCisJCQkJN0I3MzhEMkYyNzEwNzk2NTAwMDY1ODk3IC8qIFdl
YkNvbnRlbnRzUHJvdmlkZXJMYXllci5oICovLAorCQkJCTdCNzM4RDMxMjcxMDc5NjUwMDA2NTg5
NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIubW0gKi8sCiAJCQkJMzFERUE0NTQxQjM5RjRE
OTAwRjc3MTc4IC8qIFdlYlN5c3RlbUJhY2tkcm9wTGF5ZXIuaCAqLywKIAkJCQkzMURFQTQ1MzFC
MzlGNEQ5MDBGNzcxNzggLyogV2ViU3lzdGVtQmFja2Ryb3BMYXllci5tbSAqLywKIAkJCQkwRjU4
MEZBMTE0OTY5MzkxMDBGQjVCRDggLyogV2ViVGlsZWRCYWNraW5nTGF5ZXIuaCAqLywKQEAgLTM1
ODk5LDYgKzM1OTA0LDcgQEAKIAkJCQkxRjM2RUE5QzFFMjFCQTE3MDA2MjFFMjUgLyogV2ViQmFj
a2dyb3VuZFRhc2tDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNUI4MUNCNTFGQUE0
NDYyMDAzN0QxRTYgLyogV2ViQ29uc29sZUFnZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk5QkJB
MkNBQjFGNjc5RTBDMDBGRDFDMUUgLyogV2ViQ29udGVudFJlYWRlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJN0I3MzhEMzIyNzEwNzk2RTAwMDY1ODk3IC8qIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE5QkU3NTkxQkM3RjQyQjAwRTFDODVCIC8qIFdlYkNv
cmVCdWlsdGluTmFtZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEM0VGNDRBMTkxNzkxNUMwMDAz
NDE4NCAvKiBXZWJDb3JlQ0FMYXllckV4dHJhcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE1Rjc5
NTQxQ0ZDQTNENTAwQ0NFRDkzIC8qIFdlYkNvcmVDcm9zc1RocmVhZENvcGllci5oIGluIEhlYWRl
cnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9j
b2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tCmluZGV4IGMwOGJiMDc0OTQ2
MTI2ZGY1NjlhODQxZDBiNTYxZmE5Njc1N2EzNjQuLjk1NmI3YmVlN2E4MTExNzI0NDdkYzc2MTRm
ZGFmNDc2NDYxNDUzMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tCkBAIC0z
OSw4ICszOSw4IEBACiAjaW1wb3J0ICJUaWxlQ29udHJvbGxlci5oIgogI2ltcG9ydCAiVGlsZWRC
YWNraW5nLmgiCiAjaW1wb3J0ICJXZWJBY3Rpb25EaXNhYmxpbmdDQUxheWVyRGVsZWdhdGUuaCIK
KyNpbXBvcnQgIldlYkNvbnRlbnRzUHJvdmlkZXJMYXllci5oIgogI2ltcG9ydCAiV2ViQ29yZUNB
TGF5ZXJFeHRyYXMuaCIKLSNpbXBvcnQgIldlYkdMTGF5ZXIuaCIKICNpbXBvcnQgIldlYlZpZGVv
Q29udGFpbmVyTGF5ZXIuaCIKICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvUXVhcnR6Q29yZVNQSS5o
PgogI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CkBAIC0yMTEsNyArMjExLDcgQEAgUGxhdGZv
cm1DQUxheWVyOjpMYXllclR5cGUgUGxhdGZvcm1DQUxheWVyQ29jb2E6OmxheWVyVHlwZUZvclBs
YXRmb3JtTGF5ZXIoUGxhdGYKICAgICAgICAgJiYgWyhXZWJWaWRlb0NvbnRhaW5lckxheWVyKils
YXllciBwbGF5ZXJMYXllcl0pCiAgICAgICAgIHJldHVybiBMYXllclR5cGVBVlBsYXllckxheWVy
OwogCi0gICAgaWYgKFtsYXllciBpc0tpbmRPZkNsYXNzOltXZWJHTExheWVyIGNsYXNzXV0pCisg
ICAgaWYgKFtsYXllciBpc0tpbmRPZkNsYXNzOltXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIgY2xh
c3NdXSkKICAgICAgICAgcmV0dXJuIExheWVyVHlwZUNvbnRlbnRzUHJvdmlkZWRMYXllcjsKIAog
ICAgIHJldHVybiBMYXllclR5cGVDdXN0b207CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlk
ZXJMYXllci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAyNTlhZDI5YjlmOTQ2MzdkYjg4YmI1YzQ1MDAwNDIyMDZi
ODYzMzUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaApAQCAtMCwwICsxLDM2IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2ltcG9ydCA8UXVhcnR6Q29yZS9DQUxheWVyLmg+CisKKy8vIExheWVyIHRo
YXQgY2FuIGJlIHNldCBhcyB0aGUgdGFyZ2V0IG9mIEdyYXBoaWNzTGF5ZXI6OnNldENvbnRlbnRz
UGxhdGZvcm1MYXllcigpLgorLy8gQnkgZGVmYXVsdCByZXNpemVzIGFsbCB0aGUgc3VibGF5ZXJz
IHRvIHRoZSBzYW1lIHNpemUgYXMgdGhlIGxheWVyIGl0c2VsZi4KKy8vIFdoZW4gaG9zdGluZyBy
ZW1vdGUgbGF5ZXJzLCBjbGllbnRzIGFyZSBleHBlY3RlZCB0byBzdWJjbGFzcyB0aGlzIGFuZCBv
dmVycmlkZQorLy8gcmVsZXZhbnQgQ0FMYXllciBtZXRob2RzIHN1Y2ggYXMgLVtDQUxheWVyIHNl
dEJvdW5kc10gdG8gcGFzcyB0aGUgaW5mb3JtYXRpb24gdG8KKy8vIHRoZSByZW1vdGUgbGF5ZXIu
CitAaW50ZXJmYWNlIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllciA6IENBTGF5ZXIgeworfQorCitA
ZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2Nv
YS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIubW0KbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OGZiMWM3NTEwMDNiNjM1NGUyOTUxZjZiNDM2MWE3ZjVlOTkxZDk3NwotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRz
UHJvdmlkZXJMYXllci5tbQpAQCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAi
Y29uZmlnLmgiCisjaW1wb3J0ICJXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCIKKworQGltcGxl
bWVudGF0aW9uIFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllcgorCistICh2b2lkKXNldEJvdW5kczoo
Q0dSZWN0KWJvdW5kcworeworICAgIFtzdXBlciBzZXRCb3VuZHM6Ym91bmRzXTsKKyAgICBmb3Ig
KENBTGF5ZXIqIGxheWVyIGluIHNlbGYuc3VibGF5ZXJzKQorICAgICAgICBsYXllci5mcmFtZSA9
IGJvdW5kczsKK30KKworQGVuZAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jb2NvYS9XZWJHTExheWVyLmgKaW5kZXggMTQ0YzVhNDI0YTdhM2U0NjM0Yjg2NGIz
YmYyMDcwMTcyNjYyNDU1ZC4uMTA2ZWQyMTE2NzgwYTYxNGRhM2Q1NzMxMTJhNGRlYWE2OTIwNzFk
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2Vi
R0xMYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dl
YkdMTGF5ZXIuaApAQCAtMjQsMTUgKzI0LDEzIEBACiAgKi8KIAogI2ltcG9ydCAiR3JhcGhpY3ND
b250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCIKLSNpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6
Q29yZS5oPgotI2ltcG9ydCA8bWVtb3J5PgotI2ltcG9ydCA8d3RmL05ha2VkUHRyLmg+CisjaW1w
b3J0ICJXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCIKIAogQUxMT1dfREVQUkVDQVRFRF9ERUNM
QVJBVElPTlNfQkVHSU4KIAogLy8gQSBsYXllciBjbGFzcyBpbXBsZW1lbnRpbmcgZnJvbnQgYnVm
ZmVyIG1hbmFnZW1lbnQgb2YgYSAzLWJ1ZmZlcmluZyBzd2FwCiAvLyBjaGFpbiBvZiBJT1N1cmZh
Y2VzLgotQGludGVyZmFjZSBXZWJHTExheWVyIDogQ0FMYXllcgorQGludGVyZmFjZSBXZWJHTExh
eWVyIDogV2ViQ29udGVudHNQcm92aWRlckxheWVyIDxDQUxheWVyRGVsZWdhdGU+CiAKIC0gKGlk
KWluaXRXaXRoRGV2aWNlUGl4ZWxSYXRpbzooZmxvYXQpZGV2aWNlUGl4ZWxSYXRpbyBjb250ZW50
c09wYXF1ZTooYm9vbCljb250ZW50c09wYXF1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KaW5kZXggYTZlOWNmZjUwM2Ez
ZDJmYjY2NWNiNzAwMzQ1MWFmNTFkZjQ2Nzg5My4uYjM0OWI2OTA3ZThiMTY1MzViNTIwMjUxNTZi
MTljZGJmNDQ3NWQyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY29jb2EvV2ViR0xMYXllci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jb2NvYS9XZWJHTExheWVyLm1tCkBAIC00NSw2ICs0NSw3IEBAIHByaXZhdGU6CiB9Owog
CiBAaW1wbGVtZW50YXRpb24gV2ViR0xMYXllciB7CisgICAgUmV0YWluUHRyPENBTGF5ZXI+IF9j
b250ZW50c0xheWVyOwogICAgIEJPT0wgX3ByZXBhcmVkRm9yRGlzcGxheTsKICAgICBzdGQ6Om9w
dGlvbmFsPFdlYkdMTGF5ZXJTd2FwQ2hhaW4+IF9zd2FwQ2hhaW47CiB9CkBAIC01MiwyOSArNTMs
MTggQEAgcHJpdmF0ZToKIC0gKGlkKWluaXRXaXRoRGV2aWNlUGl4ZWxSYXRpbzooZmxvYXQpZGV2
aWNlUGl4ZWxSYXRpbyBjb250ZW50c09wYXF1ZTooYm9vbCljb250ZW50c09wYXF1ZQogewogICAg
IHNlbGYgPSBbc3VwZXIgaW5pdF07Ci0gICAgc2VsZi50cmFuc2Zvcm0gPSBDQVRyYW5zZm9ybTNE
SWRlbnRpdHk7Ci0gICAgc2VsZi5jb250ZW50c09wYXF1ZSA9IGNvbnRlbnRzT3BhcXVlOwotICAg
IHNlbGYuY29udGVudHNTY2FsZSA9IGRldmljZVBpeGVsUmF0aW87CiAgICAgX3N3YXBDaGFpbi5l
bXBsYWNlKHNlbGYpOworICAgIGF1dG8gY29udGVudHNMYXllciA9IGFkb3B0TlMoW1tDQUxheWVy
IGFsbG9jXSBpbml0XSk7CisgICAgLy8gT3BlbkdMIGNvb3JkaW5hdGUtc3lzdGVtIGhhcyAoMCwg
MCkgaW4gYm90dG9tLWxlZnQgY29ybmVyLCBzbyB5LWZsaXAgdGhlIGNvbnRlbnQgbGF5ZXIuCisg
ICAgY29udGVudHNMYXllci5nZXQoKS50cmFuc2Zvcm0gPSBDQVRyYW5zZm9ybTNEU2NhbGUoQ0FU
cmFuc2Zvcm0zRElkZW50aXR5LCAxLCAtMSwgMSk7CisgICAgY29udGVudHNMYXllci5nZXQoKS5j
b250ZW50c09wYXF1ZSA9IGNvbnRlbnRzT3BhcXVlOworICAgIGNvbnRlbnRzTGF5ZXIuZ2V0KCku
Y29udGVudHNTY2FsZSA9IGRldmljZVBpeGVsUmF0aW87CisgICAgY29udGVudHNMYXllci5nZXQo
KS5kZWxlZ2F0ZSA9IHNlbGY7CisgICAgX2NvbnRlbnRzTGF5ZXIgPSBXVEZNb3ZlKGNvbnRlbnRz
TGF5ZXIpOworICAgIFtzZWxmIGFkZFN1YmxheWVyOl9jb250ZW50c0xheWVyLmdldCgpXTsKICAg
ICByZXR1cm4gc2VsZjsKIH0KIAotLy8gV2hlbiB1c2luZyBhbiBJT1N1cmZhY2UgYXMgbGF5ZXIg
Y29udGVudHMsIHdlIG5lZWQgdG8gZmxpcCB0aGUKLS8vIGxheWVyIHRvIHRha2UgaW50byBhY2Nv
dW50IHRoYXQgdGhlIElPU3VyZmFjZSBwcm92aWRlcyBjb250ZW50Ci0vLyBpbiBZLXVwLiBUaGlz
IG1lYW5zIHRoYXQgYW55IGluY29taW5nIHRyYW5zZm9ybSAodW5saWtlbHksIHNpbmNlCi0vLyB0
aGlzIGlzIGEgY29udGVudHMgbGF5ZXIpIGFuZCBhbmNob3IgcG9pbnQgbXVzdCBhZGQgYSBZIHNj
YWxlIG9mCi0vLyAtMSBhbmQgbWFrZSBzdXJlIHRoZSB0cmFuc2Zvcm0gaGFwcGVucyBmcm9tIHRo
ZSB0b3AuCi0KLS0gKHZvaWQpc2V0VHJhbnNmb3JtOihDQVRyYW5zZm9ybTNEKXQKLXsKLSAgICBb
c3VwZXIgc2V0VHJhbnNmb3JtOkNBVHJhbnNmb3JtM0RTY2FsZSh0LCAxLCAtMSwgMSldOwotfQot
Ci0tICh2b2lkKXNldEFuY2hvclBvaW50OihDR1BvaW50KXAKLXsKLSAgICBbc3VwZXIgc2V0QW5j
aG9yUG9pbnQ6Q0dQb2ludE1ha2UocC54LCAxLjAgLSBwLnkpXTsKLX0KLQogLSAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4mKSBzd2FwQ2hhaW4KIHsKICAgICBy
ZXR1cm4gX3N3YXBDaGFpbi52YWx1ZSgpOwpAQCAtODIsMjEgKzcyLDIxIEBAIHByaXZhdGU6CiAK
IC0gKHZvaWQpcHJlcGFyZUZvckRpc3BsYXkKIHsKLSAgICBbc2VsZiBzZXROZWVkc0Rpc3BsYXld
OworICAgIFtfY29udGVudHNMYXllciBzZXROZWVkc0Rpc3BsYXldOwogICAgIF9wcmVwYXJlZEZv
ckRpc3BsYXkgPSBZRVM7CiB9CiAKLS0gKHZvaWQpZGlzcGxheQorLSAodm9pZClkaXNwbGF5TGF5
ZXI6KENBTGF5ZXIgKilsYXllcgogeworICAgIEFTU0VSVF9VTlVTRUQobGF5ZXIsIGxheWVyID09
IF9jb250ZW50c0xheWVyKTsKICAgICBpZiAoX3N3YXBDaGFpbi0+ZGlzcGxheVN1cmZhY2UoKSAm
JiBfcHJlcGFyZWRGb3JEaXNwbGF5KSB7Ci0gICAgICAgIHNlbGYuY29udGVudHMgPSBfc3dhcENo
YWluLT5kaXNwbGF5U3VyZmFjZSgpLT5hc0xheWVyQ29udGVudHMoKTsKLSAgICAgICAgW3NlbGYg
cmVsb2FkVmFsdWVGb3JLZXlQYXRoOkAiY29udGVudHMiXTsKKyAgICAgICAgX2NvbnRlbnRzTGF5
ZXIuZ2V0KCkuY29udGVudHMgPSBfc3dhcENoYWluLT5kaXNwbGF5U3VyZmFjZSgpLT5hc0xheWVy
Q29udGVudHMoKTsKKyAgICAgICAgX3ByZXBhcmVkRm9yRGlzcGxheSA9IE5POworICAgIH0KKyAg
ICBpZiAoYXV0byBwbGF0Zm9ybUNBTGF5ZXIgPSBXZWJDb3JlOjpQbGF0Zm9ybUNBTGF5ZXI6OnBs
YXRmb3JtQ0FMYXllckZvckxheWVyKChfX2JyaWRnZSB2b2lkKilzZWxmKSkgeworICAgICAgICBp
ZiAoYXV0byBvd25lciA9IHBsYXRmb3JtQ0FMYXllci0+b3duZXIoKSkKKyAgICAgICAgICAgIG93
bmVyLT5wbGF0Zm9ybUNBTGF5ZXJMYXllckRpZERpc3BsYXkocGxhdGZvcm1DQUxheWVyLmdldCgp
KTsKICAgICB9Ci0gICAgYXV0byBsYXllciA9IFdlYkNvcmU6OlBsYXRmb3JtQ0FMYXllcjo6cGxh
dGZvcm1DQUxheWVyRm9yTGF5ZXIoKF9fYnJpZGdlIHZvaWQqKXNlbGYpOwotICAgIGlmIChsYXll
ciAmJiBsYXllci0+b3duZXIoKSkKLSAgICAgICAgbGF5ZXItPm93bmVyKCktPnBsYXRmb3JtQ0FM
YXllckxheWVyRGlkRGlzcGxheShsYXllci5nZXQoKSk7Ci0KLSAgICBfcHJlcGFyZWRGb3JEaXNw
bGF5ID0gTk87CiB9CiAKIEBlbmQK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440777</attachid>
            <date>2021-10-11 05:28:10 -0700</date>
            <delta_ts>2021-10-15 06:21:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231427-20211011152808.patch</filename>
            <type>text/plain</type>
            <size>17523</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzODg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWJhMDA2NDYzZjNkOGRk
NzAxZTg2ODJlNGIzZmJiZjY5NGVkNWVkMC4uNmQ0ZDc2OTQyYjYzZmUyYTRmMDdhYTE4ZmRiZmU2
Yzc4YjYyOWY0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTEwLTExICBLaW1t
byBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgQ0EgQWNjZWxlcmF0
ZWQgY29tcG9zaXRpbmcgY29tcG9zaXRvciBzaG91bGQgbm90IHJlZmVyIHRvIFdlYkdMTGF5ZXIg
Zm9yIGNvbnRlbnRzIHByb3ZpZGVkIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDI3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgaW50ZXJtZWRpYXRlIGxheWVyIFdlYkNvbnRlbnRz
UHJvdmlkZXJMYXllci4gVGhpcyBjYW4gaW4gZnV0dXJlIHNlcnZlIGZvciB0d28KKyAgICAgICAg
cHVycG9zZXM6CisgICAgICAgICAtIEhvbGQgYSBob3N0ZWQgQ0FMYXllciBmb3IgdGhlIFdlYkdM
IENBTGF5ZXIgaW4gR1BVIHByb2Nlc3MKKyAgICAgICAgIC0gQ2FwdHVyZSBzZXRCb3VuZHMgb24g
dGhlIGNvbnRlbnRzIGxheWVyIGFuZCByZXNpemUgdGhlIEdQVSBwcm9jZXNzIHNpZGUgV2ViR0wg
Q0FMYXllcgorICAgICAgICAgICBhY2NvcmRpbmdseS4KKworICAgICAgICBGaXhlcyBhbHNvIHRo
ZSBkaXNjcmVwYW5jeSB3aGVyZSBXZWJHTExheWVyIHRyYW5zZm9ybSgpIHdvdWxkIHJldHVybiBk
aWZmZXJlbnQgdmFsdWUgdGhhbgorICAgICAgICB3aGF0IHNldFRyYW5zZm9ybSgpIHNldC4gVGhp
cyB3b3VsZCBjb25mdXNlIFBsYXRmb3JtQ0FMYXllciBjbG9uaW5nLCBpZiBXZWJHTCBldmVyIHdv
dWxkCisgICAgICAgIHN1cHBvcnQgdGhhdC4gVGhpcyBhcHBsaWVzIGFsc28gdG8gYW5jaG9yUG9p
bnQuCisKKyAgICAgICAgUmVtb3ZlcyBjYWxsIHRvIFtzZWxmIHJlbG9hZFZhbHVlRm9yS2V5UGF0
aDpAImNvbnRlbnRzIl0sIGl0IGlzIG5vdCBuZWVkZWQuCisgICAgICAgIFdlIGFsd2F5cyBhc3Np
Z24gYSBuZXcgZGlzcGxheSBidWZmZXIgSU9TdXJmYWNlIGluc3RlYWQgb2YgdXBkYXRpbmcgdGhl
IGV4aXN0aW5nIC5jb250ZW50cworICAgICAgICBJT1N1cmZhY2UgYmVoaW5kIENBTGF5ZXIncyBi
YWNrLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYSByZWZhY3Rvci4KKworICAgICAgICAqIFBs
YXRmb3JtTWFjLmNtYWtlOgorICAgICAgICAqIFNvdXJjZXNDb2NvYS50eHQ6CisgICAgICAgICog
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6UGxhdGZvcm1DQUxheWVyQ29jb2E6OmxheWVyVHlwZUZvclBsYXRmb3JtTGF5ZXIpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYkNvbnRlbnRzUHJvdmlkZXJMYXll
ci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250
ZW50c1Byb3ZpZGVyTGF5ZXIubW06IEFkZGVkLgorICAgICAgICAoLVtXZWJDb250ZW50c1Byb3Zp
ZGVyTGF5ZXIgc2V0Qm91bmRzOl0pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29h
L1dlYkdMTGF5ZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExh
eWVyLm1tOgorICAgICAgICAoLVtXZWJHTExheWVyIGluaXRXaXRoRGV2aWNlUGl4ZWxSYXRpbzpj
b250ZW50c09wYXF1ZTpdKToKKyAgICAgICAgKC1bV2ViR0xMYXllciBwcmVwYXJlRm9yRGlzcGxh
eV0pOgorICAgICAgICAoLVtXZWJHTExheWVyIGRpc3BsYXlMYXllcjpdKToKKyAgICAgICAgKC1b
V2ViR0xMYXllciBzZXRUcmFuc2Zvcm06XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkdMTGF5
ZXIgc2V0QW5jaG9yUG9pbnQ6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkdMTGF5ZXIgZGlz
cGxheV0pOiBEZWxldGVkLgorCiAyMDIxLTEwLTEwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBw
bGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBpdGVyYXRpbmcgRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1NYWMuY21h
a2UgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU1hYy5jbWFrZQppbmRleCBiY2ZjZWI3OTMxM2Vj
MDVjMzU0YzVmZWZlMzRhYjUxMGFiMzNlNzE3Li45ODYwNWE5MmU0ZTNjOTAxMjU4MzdiZmIzODQ4
ZmZjMDA1N2MwZTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU1hYy5jbWFr
ZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAtNjM3LDYgKzYzNyw3
IEBAIGxpc3QoQVBQRU5EIFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogCiAgICAg
cGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZvcm1DQUFuaW1hdGlvbkNvY29hLmgKICAg
ICBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5oCisgICAg
cGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViQ29udGVudHNQcm92aWRlckxheWVyLmgKICAg
ICBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJWaWRlb0NvbnRhaW5lckxheWVyLmgKIAog
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL2NnL0NvbG9yU3BhY2VDRy5oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2EudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlc0NvY29h
LnR4dAppbmRleCBhNGMwYTc2MjdjMzc4MWRmY2QwNDkwNmZjNTIzMzA5YzkwNzMwYzJjLi41M2Nh
MTAxZDgwMzAzMjM2ODA4YTVlZTdkNmMyNWU1ZTMzNDMwM2RmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzQ29jb2EudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNDb2Nv
YS50eHQKQEAgLTMzMCw2ICszMzAsNyBAQCBwbGF0Zm9ybS9ncmFwaGljcy9jYS9UcmFuc2Zvcm1h
dGlvbk1hdHJpeENBLmNwcAogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZvcm1DQUFu
aW1hdGlvbkNvY29hLm1tCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBRmls
dGVyc0NvY29hLm1tCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJD
b2NvYS5tbQorcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViQ29udGVudHNQcm92aWRlckxh
eWVyLm1tCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJTeXN0ZW1CYWNrZHJvcExheWVy
Lm1tCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJUaWxlZEJhY2tpbmdMYXllci5tbQog
cGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViVmlkZW9Db250YWluZXJMYXllci5tbQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IGZhY2IzYmRkMDI4Y2YyZDA2ZjBmZjE4ZWUwMjk2Mzc4NzYwNDMxNzIuLjU3OWQ4MGYzMTgzOGIy
ZjcyZGU2NTM0YzljNTkzOTI5NjBhZjNiY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIzNTYsNiArMjM1Niw3IEBACiAJCTdC
NjA5NEREMjcwQzQ0QkQwMDY0ODM1QyAvKiBBTkdMRVV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0JCMzRBMTYyNTM0NUNCMjAwMDI5RDA4
IC8qIEFOR0xFVXRpbGl0aWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJN0I2REM4MTkyNTcxMkU5MjAwMzgwQzcwIC8qIEdyYXBoaWNzQ29udGV4
dEdMSU9TdXJmYWNlU3dhcENoYWluLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QjZEQzgxNzI1NzEyRTkyMDAzODBDNzAgLyogR3JhcGhpY3NDb250ZXh0
R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQk3QjczMTFGQjI1QzA5MkI3MDAzQjI3OTYgLyogU2NvcGVkSGlnaFBl
cmZvcm1hbmNlR1BVUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0I3MzExRkEyNUMwOTJCNzAwM0IyNzk2IC8qIFNjb3BlZEhpZ2hQZXJmb3Jt
YW5jZUdQVVJlcXVlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk3QjczOEQzMjI3MTA3OTZFMDAwNjU4OTcgLyogV2ViQ29udGVudHNQcm92aWRl
ckxheWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
QjczOEQyRjI3MTA3OTY1MDAwNjU4OTcgLyogV2ViQ29udGVudHNQcm92aWRlckxheWVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0I4RUQ1RjAy
NkYwQzEzRDAwOEFDMDIzIC8qIENWVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QjhFRDVFRDI2RjBDMTIzMDA4QUMwMjMgLyogQ1ZVdGls
aXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQk3QjkwNDE3MDI1NTAxMTQyMDA2RUVCOEMgLyogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94
eUJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdC
OTA0MTZFMjU1MDExMDkwMDZFRUI4QyAvKiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5QmFz
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdC
QjM0QTQ4MjUzNzc2Q0EwMDAyOUQwOCAvKiBHcmFwaGljc0NvbnRleHRHTEltYWdlRXh0cmFjdG9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QkIzNEE0
NTI1Mzc3NkM2MDAwMjlEMDggLyogR3JhcGhpY3NDb250ZXh0R0xJbWFnZUV4dHJhY3Rvci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xMDY4Miw2
ICsxMDY4Myw4IEBACiAJCTdCNkRDODE1MjU3MTJFOTEwMDM4MEM3MCAvKiBHcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdCNkRDODE3MjU3MTJFOTIwMDM4MEM3MCAvKiBHcmFwaGlj
c0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk3QjczMTFGQTI1QzA5MkI3MDAzQjI3OTYgLyogU2NvcGVkSGln
aFBlcmZvcm1hbmNlR1BVUmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTY29wZWRIaWdoUGVyZm9ybWFuY2VHUFVSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdCNzM4RDJGMjcxMDc5NjUwMDA2NTg5NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVy
TGF5ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29udGVudHNQcm92aWRlckxheWVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdCNzM4RDMxMjcxMDc5NjUwMDA2NTg5NyAvKiBXZWJD
b250ZW50c1Byb3ZpZGVyTGF5ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJDb250ZW50
c1Byb3ZpZGVyTGF5ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdCOEVENUVE
MjZGMEMxMjMwMDhBQzAyMyAvKiBDVlV0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDVlV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3
QjhFRDVFRjI2RjBDMTIzMDA4QUMwMjMgLyogQ1ZVdGlsaXRpZXMubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBDVlV0aWxpdGllcy5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0I5MDQxNkUyNTUwMTEwOTAwNkVFQjhDIC8qIFJlbW90ZUdyYXBoaWNz
Q29udGV4dEdMUHJveHlCYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbW90ZUdyYXBoaWNzQ29udGV4
dEdMUHJveHlCYXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yMDUzMiw2ICsy
MDUzNSw4IEBACiAJCQkJMEYxMzE2M0YxNkVEMENERTAwMzVDQzA0IC8qIFBsYXRmb3JtQ0FGaWx0
ZXJzQ29jb2EubW0gKi8sCiAJCQkJMkQ3MEJBMTIxODA3NERERjAwMDE5MDhBIC8qIFBsYXRmb3Jt
Q0FMYXllckNvY29hLmggKi8sCiAJCQkJNDk1ODc4MjAxMkE1N0RERjAwNzIzOEFDIC8qIFBsYXRm
b3JtQ0FMYXllckNvY29hLm1tICovLAorCQkJCTdCNzM4RDJGMjcxMDc5NjUwMDA2NTg5NyAvKiBX
ZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCAqLywKKwkJCQk3QjczOEQzMTI3MTA3OTY1MDAwNjU4
OTcgLyogV2ViQ29udGVudHNQcm92aWRlckxheWVyLm1tICovLAogCQkJCTMxREVBNDU0MUIzOUY0
RDkwMEY3NzE3OCAvKiBXZWJTeXN0ZW1CYWNrZHJvcExheWVyLmggKi8sCiAJCQkJMzFERUE0NTMx
QjM5RjREOTAwRjc3MTc4IC8qIFdlYlN5c3RlbUJhY2tkcm9wTGF5ZXIubW0gKi8sCiAJCQkJMEY1
ODBGQTExNDk2OTM5MTAwRkI1QkQ4IC8qIFdlYlRpbGVkQmFja2luZ0xheWVyLmggKi8sCkBAIC0z
NTk5Nyw2ICszNjAwMiw3IEBACiAJCQkJMUYzNkVBOUMxRTIxQkExNzAwNjIxRTI1IC8qIFdlYkJh
Y2tncm91bmRUYXNrQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTVCODFDQjUxRkFB
NDQ2MjAwMzdEMUU2IC8qIFdlYkNvbnNvbGVBZ2VudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOUJC
QTJDQUIxRjY3OUUwQzAwRkQxQzFFIC8qIFdlYkNvbnRlbnRSZWFkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTdCNzM4RDMyMjcxMDc5NkUwMDA2NTg5NyAvKiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxOUJFNzU5MUJDN0Y0MkIwMEUxQzg1QiAvKiBXZWJD
b3JlQnVpbHRpbk5hbWVzLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDNFRjQ0QTE5MTc5MTVDMDAw
MzQxODQgLyogV2ViQ29yZUNBTGF5ZXJFeHRyYXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNUY3
OTU0MUNGQ0EzRDUwMENDRUQ5MyAvKiBXZWJDb3JlQ3Jvc3NUaHJlYWRDb3BpZXIuaCBpbiBIZWFk
ZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Ev
Y29jb2EvUGxhdGZvcm1DQUxheWVyQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbQppbmRleCBjMDhiYjA3NDk0
NjEyNmRmNTY5YTg0MWQwYjU2MWZhOTY3NTdhMzY0Li45NTZiN2JlZTdhODExMTcyNDQ3ZGM3NjE0
ZmRhZjQ3NjQ2MTQ1MzBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbQpAQCAt
MzksOCArMzksOCBAQAogI2ltcG9ydCAiVGlsZUNvbnRyb2xsZXIuaCIKICNpbXBvcnQgIlRpbGVk
QmFja2luZy5oIgogI2ltcG9ydCAiV2ViQWN0aW9uRGlzYWJsaW5nQ0FMYXllckRlbGVnYXRlLmgi
CisjaW1wb3J0ICJXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIuaCIKICNpbXBvcnQgIldlYkNvcmVD
QUxheWVyRXh0cmFzLmgiCi0jaW1wb3J0ICJXZWJHTExheWVyLmgiCiAjaW1wb3J0ICJXZWJWaWRl
b0NvbnRhaW5lckxheWVyLmgiCiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEku
aD4KICNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgpAQCAtMjExLDcgKzIxMSw3IEBAIFBsYXRm
b3JtQ0FMYXllcjo6TGF5ZXJUeXBlIFBsYXRmb3JtQ0FMYXllckNvY29hOjpsYXllclR5cGVGb3JQ
bGF0Zm9ybUxheWVyKFBsYXRmCiAgICAgICAgICYmIFsoV2ViVmlkZW9Db250YWluZXJMYXllciop
bGF5ZXIgcGxheWVyTGF5ZXJdKQogICAgICAgICByZXR1cm4gTGF5ZXJUeXBlQVZQbGF5ZXJMYXll
cjsKIAotICAgIGlmIChbbGF5ZXIgaXNLaW5kT2ZDbGFzczpbV2ViR0xMYXllciBjbGFzc11dKQor
ICAgIGlmIChbbGF5ZXIgaXNLaW5kT2ZDbGFzczpbV2ViQ29udGVudHNQcm92aWRlckxheWVyIGNs
YXNzXV0pCiAgICAgICAgIHJldHVybiBMYXllclR5cGVDb250ZW50c1Byb3ZpZGVkTGF5ZXI7CiAK
ICAgICByZXR1cm4gTGF5ZXJUeXBlQ3VzdG9tOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViQ29udGVudHNQcm92aWRlckxheWVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50c1Byb3Zp
ZGVyTGF5ZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMjU5YWQyOWI5Zjk0NjM3ZGI4OGJiNWM0NTAwMDQyMjA2
Yjg2MzM1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2EvY29jb2EvV2ViQ29udGVudHNQcm92aWRlckxheWVyLmgKQEAgLTAsMCArMSwzNiBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpbXBvcnQgPFF1YXJ0ekNvcmUvQ0FMYXllci5oPgorCisvLyBMYXllciB0
aGF0IGNhbiBiZSBzZXQgYXMgdGhlIHRhcmdldCBvZiBHcmFwaGljc0xheWVyOjpzZXRDb250ZW50
c1BsYXRmb3JtTGF5ZXIoKS4KKy8vIEJ5IGRlZmF1bHQgcmVzaXplcyBhbGwgdGhlIHN1YmxheWVy
cyB0byB0aGUgc2FtZSBzaXplIGFzIHRoZSBsYXllciBpdHNlbGYuCisvLyBXaGVuIGhvc3Rpbmcg
cmVtb3RlIGxheWVycywgY2xpZW50cyBhcmUgZXhwZWN0ZWQgdG8gc3ViY2xhc3MgdGhpcyBhbmQg
b3ZlcnJpZGUKKy8vIHJlbGV2YW50IENBTGF5ZXIgbWV0aG9kcyBzdWNoIGFzIC1bQ0FMYXllciBz
ZXRCb3VuZHNdIHRvIHBhc3MgdGhlIGluZm9ybWF0aW9uIHRvCisvLyB0aGUgcmVtb3RlIGxheWVy
LgorQGludGVyZmFjZSBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIgOiBDQUxheWVyIHsKK30KKwor
QGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29j
b2EvV2ViQ29udGVudHNQcm92aWRlckxheWVyLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2EvY29jb2EvV2ViQ29udGVudHNQcm92aWRlckxheWVyLm1tCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjhmYjFjNzUxMDAzYjYzNTRlMjk1MWY2YjQzNjFhN2Y1ZTk5MWQ5NzcKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJDb250ZW50
c1Byb3ZpZGVyTGF5ZXIubW0KQEAgLTAsMCArMSwzOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQg
ImNvbmZpZy5oIgorI2ltcG9ydCAiV2ViQ29udGVudHNQcm92aWRlckxheWVyLmgiCisKK0BpbXBs
ZW1lbnRhdGlvbiBXZWJDb250ZW50c1Byb3ZpZGVyTGF5ZXIKKworLSAodm9pZClzZXRCb3VuZHM6
KENHUmVjdClib3VuZHMKK3sKKyAgICBbc3VwZXIgc2V0Qm91bmRzOmJvdW5kc107CisgICAgZm9y
IChDQUxheWVyKiBsYXllciBpbiBzZWxmLnN1YmxheWVycykKKyAgICAgICAgbGF5ZXIuZnJhbWUg
PSBib3VuZHM7Cit9CisKK0BlbmQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5oCmluZGV4IDE0NGM1YTQyNGE3YTNlNDYzNGI4NjRi
M2JmMjA3MDE3MjY2MjQ1NWQuLjEwNmVkMjExNjc4MGE2MTRkYTNkNTczMTEyYTRkZWFhNjkyMDcx
ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dl
YkdMTGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9X
ZWJHTExheWVyLmgKQEAgLTI0LDE1ICsyNCwxMyBAQAogICovCiAKICNpbXBvcnQgIkdyYXBoaWNz
Q29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmgiCi0jaW1wb3J0IDxRdWFydHpDb3JlL1F1YXJ0
ekNvcmUuaD4KLSNpbXBvcnQgPG1lbW9yeT4KLSNpbXBvcnQgPHd0Zi9OYWtlZFB0ci5oPgorI2lt
cG9ydCAiV2ViQ29udGVudHNQcm92aWRlckxheWVyLmgiCiAKIEFMTE9XX0RFUFJFQ0FURURfREVD
TEFSQVRJT05TX0JFR0lOCiAKIC8vIEEgbGF5ZXIgY2xhc3MgaW1wbGVtZW50aW5nIGZyb250IGJ1
ZmZlciBtYW5hZ2VtZW50IG9mIGEgMy1idWZmZXJpbmcgc3dhcAogLy8gY2hhaW4gb2YgSU9TdXJm
YWNlcy4KLUBpbnRlcmZhY2UgV2ViR0xMYXllciA6IENBTGF5ZXIKK0BpbnRlcmZhY2UgV2ViR0xM
YXllciA6IFdlYkNvbnRlbnRzUHJvdmlkZXJMYXllciA8Q0FMYXllckRlbGVnYXRlPgogCiAtIChp
ZClpbml0V2l0aERldmljZVBpeGVsUmF0aW86KGZsb2F0KWRldmljZVBpeGVsUmF0aW8gY29udGVu
dHNPcGFxdWU6KGJvb2wpY29udGVudHNPcGFxdWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLm1tCmluZGV4IGE2ZTljZmY1MDNh
M2QyZmI2NjVjYjcwMDM0NTFhZjUxZGY0Njc4OTMuLmYyMDg2MTRmYzFmYzgwNzYyMmQyZjI0Njc2
ZjEzMWU0NGRkNDVmNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvY29hL1dlYkdMTGF5ZXIubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQpAQCAtNDUsNiArNDUsNyBAQCBwcml2YXRlOgogfTsK
IAogQGltcGxlbWVudGF0aW9uIFdlYkdMTGF5ZXIgeworICAgIFJldGFpblB0cjxDQUxheWVyPiBf
Y29udGVudHNMYXllcjsKICAgICBCT09MIF9wcmVwYXJlZEZvckRpc3BsYXk7CiAgICAgc3RkOjpv
cHRpb25hbDxXZWJHTExheWVyU3dhcENoYWluPiBfc3dhcENoYWluOwogfQpAQCAtNTIsMjkgKzUz
LDE4IEBAIHByaXZhdGU6CiAtIChpZClpbml0V2l0aERldmljZVBpeGVsUmF0aW86KGZsb2F0KWRl
dmljZVBpeGVsUmF0aW8gY29udGVudHNPcGFxdWU6KGJvb2wpY29udGVudHNPcGFxdWUKIHsKICAg
ICBzZWxmID0gW3N1cGVyIGluaXRdOwotICAgIHNlbGYudHJhbnNmb3JtID0gQ0FUcmFuc2Zvcm0z
RElkZW50aXR5OwotICAgIHNlbGYuY29udGVudHNPcGFxdWUgPSBjb250ZW50c09wYXF1ZTsKLSAg
ICBzZWxmLmNvbnRlbnRzU2NhbGUgPSBkZXZpY2VQaXhlbFJhdGlvOwogICAgIF9zd2FwQ2hhaW4u
ZW1wbGFjZShzZWxmKTsKKyAgICBhdXRvIGNvbnRlbnRzTGF5ZXIgPSBhZG9wdE5TKFtbQ0FMYXll
ciBhbGxvY10gaW5pdF0pOworICAgIC8vIE9wZW5HTCBjb29yZGluYXRlLXN5c3RlbSBoYXMgKDAs
IDApIGluIGJvdHRvbS1sZWZ0IGNvcm5lciwgc28geS1mbGlwIHRoZSBjb250ZW50IGxheWVyLgor
ICAgIGNvbnRlbnRzTGF5ZXIuZ2V0KCkudHJhbnNmb3JtID0gQ0FUcmFuc2Zvcm0zRFNjYWxlKENB
VHJhbnNmb3JtM0RJZGVudGl0eSwgMSwgLTEsIDEpOworICAgIGNvbnRlbnRzTGF5ZXIuZ2V0KCku
Y29udGVudHNPcGFxdWUgPSBjb250ZW50c09wYXF1ZTsKKyAgICBjb250ZW50c0xheWVyLmdldCgp
LmNvbnRlbnRzU2NhbGUgPSBkZXZpY2VQaXhlbFJhdGlvOworICAgIGNvbnRlbnRzTGF5ZXIuZ2V0
KCkuZGVsZWdhdGUgPSBzZWxmOworICAgIF9jb250ZW50c0xheWVyID0gV1RGTW92ZShjb250ZW50
c0xheWVyKTsKKyAgICBbc2VsZiBhZGRTdWJsYXllcjpfY29udGVudHNMYXllci5nZXQoKV07CiAg
ICAgcmV0dXJuIHNlbGY7CiB9CiAKLS8vIFdoZW4gdXNpbmcgYW4gSU9TdXJmYWNlIGFzIGxheWVy
IGNvbnRlbnRzLCB3ZSBuZWVkIHRvIGZsaXAgdGhlCi0vLyBsYXllciB0byB0YWtlIGludG8gYWNj
b3VudCB0aGF0IHRoZSBJT1N1cmZhY2UgcHJvdmlkZXMgY29udGVudAotLy8gaW4gWS11cC4gVGhp
cyBtZWFucyB0aGF0IGFueSBpbmNvbWluZyB0cmFuc2Zvcm0gKHVubGlrZWx5LCBzaW5jZQotLy8g
dGhpcyBpcyBhIGNvbnRlbnRzIGxheWVyKSBhbmQgYW5jaG9yIHBvaW50IG11c3QgYWRkIGEgWSBz
Y2FsZSBvZgotLy8gLTEgYW5kIG1ha2Ugc3VyZSB0aGUgdHJhbnNmb3JtIGhhcHBlbnMgZnJvbSB0
aGUgdG9wLgotCi0tICh2b2lkKXNldFRyYW5zZm9ybTooQ0FUcmFuc2Zvcm0zRCl0Ci17Ci0gICAg
W3N1cGVyIHNldFRyYW5zZm9ybTpDQVRyYW5zZm9ybTNEU2NhbGUodCwgMSwgLTEsIDEpXTsKLX0K
LQotLSAodm9pZClzZXRBbmNob3JQb2ludDooQ0dQb2ludClwCi17Ci0gICAgW3N1cGVyIHNldEFu
Y2hvclBvaW50OkNHUG9pbnRNYWtlKHAueCwgMS4wIC0gcC55KV07Ci19Ci0KIC0gKFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluJikgc3dhcENoYWluCiB7CiAgICAg
cmV0dXJuIF9zd2FwQ2hhaW4udmFsdWUoKTsKQEAgLTgyLDIxICs3MiwyOCBAQCBwcml2YXRlOgog
CiAtICh2b2lkKXByZXBhcmVGb3JEaXNwbGF5CiB7Ci0gICAgW3NlbGYgc2V0TmVlZHNEaXNwbGF5
XTsKKyAgICBbX2NvbnRlbnRzTGF5ZXIgc2V0TmVlZHNEaXNwbGF5XTsKICAgICBfcHJlcGFyZWRG
b3JEaXNwbGF5ID0gWUVTOwogfQogCi0tICh2b2lkKWRpc3BsYXkKKy0gKHZvaWQpZGlzcGxheUxh
eWVyOihDQUxheWVyICopbGF5ZXIKIHsKKyAgICBBU1NFUlRfVU5VU0VEKGxheWVyLCBsYXllciA9
PSBfY29udGVudHNMYXllcik7CiAgICAgaWYgKF9zd2FwQ2hhaW4tPmRpc3BsYXlTdXJmYWNlKCkg
JiYgX3ByZXBhcmVkRm9yRGlzcGxheSkgewotICAgICAgICBzZWxmLmNvbnRlbnRzID0gX3N3YXBD
aGFpbi0+ZGlzcGxheVN1cmZhY2UoKS0+YXNMYXllckNvbnRlbnRzKCk7Ci0gICAgICAgIFtzZWxm
IHJlbG9hZFZhbHVlRm9yS2V5UGF0aDpAImNvbnRlbnRzIl07CisgICAgICAgIF9jb250ZW50c0xh
eWVyLmdldCgpLmNvbnRlbnRzID0gX3N3YXBDaGFpbi0+ZGlzcGxheVN1cmZhY2UoKS0+YXNMYXll
ckNvbnRlbnRzKCk7CisgICAgICAgIF9wcmVwYXJlZEZvckRpc3BsYXkgPSBOTzsKKyAgICB9Cisg
ICAgaWYgKGF1dG8gcGxhdGZvcm1DQUxheWVyID0gV2ViQ29yZTo6UGxhdGZvcm1DQUxheWVyOjpw
bGF0Zm9ybUNBTGF5ZXJGb3JMYXllcigoX19icmlkZ2Ugdm9pZCopc2VsZikpIHsKKyAgICAgICAg
aWYgKGF1dG8gb3duZXIgPSBwbGF0Zm9ybUNBTGF5ZXItPm93bmVyKCkpCisgICAgICAgICAgICBv
d25lci0+cGxhdGZvcm1DQUxheWVyTGF5ZXJEaWREaXNwbGF5KHBsYXRmb3JtQ0FMYXllci5nZXQo
KSk7CiAgICAgfQotICAgIGF1dG8gbGF5ZXIgPSBXZWJDb3JlOjpQbGF0Zm9ybUNBTGF5ZXI6OnBs
YXRmb3JtQ0FMYXllckZvckxheWVyKChfX2JyaWRnZSB2b2lkKilzZWxmKTsKLSAgICBpZiAobGF5
ZXIgJiYgbGF5ZXItPm93bmVyKCkpCi0gICAgICAgIGxheWVyLT5vd25lcigpLT5wbGF0Zm9ybUNB
TGF5ZXJMYXllckRpZERpc3BsYXkobGF5ZXIuZ2V0KCkpOworfQogCi0gICAgX3ByZXBhcmVkRm9y
RGlzcGxheSA9IE5POworLSAoaWQ8Q0FBY3Rpb24+KWFjdGlvbkZvckxheWVyOihDQUxheWVyICop
bGF5ZXIgZm9yS2V5OihOU1N0cmluZyAqKWV2ZW50Cit7CisgICAgVU5VU0VEX1BBUkFNKGxheWVy
KTsKKyAgICBVTlVTRURfUEFSQU0oZXZlbnQpOworICAgIHJldHVybiAoaWQ8Q0FBY3Rpb24+KVtO
U051bGwgbnVsbF07CiB9CiAKIEBlbmQK
</data>

          </attachment>
      

    </bug>

</bugzilla>