<?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>236787</bug_id>
          
          <creation_ts>2022-02-17 09:57:04 -0800</creation_ts>
          <short_desc>[Cocoa] Make AVFoundationSPI.h robust against changes in system headers</short_desc>
          <delta_ts>2022-02-18 12:31:31 -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>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dino</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jean-yves.avenard</cc>
    
    <cc>peng.liu6</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1842942</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-02-17 09:57:04 -0800</bug_when>
    <thetext>[Cocoa] Make AVFoundationSPI.h robust against changes in system headers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842953</commentid>
    <comment_count>1</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-02-17 10:06:41 -0800</bug_when>
    <thetext>&lt;rdar://89076606&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842955</commentid>
    <comment_count>2</comment_count>
      <attachid>452382</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-02-17 10:10:32 -0800</bug_when>
    <thetext>Created attachment 452382
[fast-cq] Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843125</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-02-17 14:42:39 -0800</bug_when>
    <thetext>Committed r290076 (247433@main): &lt;https://commits.webkit.org/247433@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 452382.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843441</commentid>
    <comment_count>4</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-02-18 09:03:09 -0800</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843442</commentid>
    <comment_count>5</comment_count>
      <attachid>452523</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-02-18 09:03:11 -0800</bug_when>
    <thetext>Created attachment 452523
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843449</commentid>
    <comment_count>6</comment_count>
      <attachid>452526</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-02-18 09:22:25 -0800</bug_when>
    <thetext>Created attachment 452526
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843460</commentid>
    <comment_count>7</comment_count>
      <attachid>452528</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-02-18 09:33:14 -0800</bug_when>
    <thetext>Created attachment 452528
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843465</commentid>
    <comment_count>8</comment_count>
      <attachid>452531</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2022-02-18 09:48:33 -0800</bug_when>
    <thetext>Created attachment 452531
[fast-cq] Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843563</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-02-18 12:31:23 -0800</bug_when>
    <thetext>Committed r290153 (247492@main): &lt;https://commits.webkit.org/247492@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 452531.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452382</attachid>
            <date>2022-02-17 10:10:32 -0800</date>
            <delta_ts>2022-02-18 09:03:06 -0800</delta_ts>
            <desc>[fast-cq] Patch</desc>
            <filename>bug-236787-20220217101031.patch</filename>
            <type>text/plain</type>
            <size>4701</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5ODkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGZmY2MxMTgwYjYzZTkxMTY2ZWRlNzI5
M2FhMjQ5NTljYmMxYmYxNjcuLmYyMWFlMzMyODEwZTNiZjVjMTg3MTkwZTkxZTFmNjk4MDc1YTQw
NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjItMDItMTcgIEplciBOb2JsZSAgPGplci5ub2Js
ZUBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBNYWtlIEFWRm91bmRhdGlvblNQSS5oIHJv
YnVzdCBhZ2FpbnN0IGNoYW5nZXMgaW4gc3lzdGVtIGhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjc4NworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtSGF2ZS5oOgorCiAy
MDIyLTAyLTA3ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtD
b2NvYV0gQWRvcHQgLXN0cmVhbURhdGFQYXJzZXI6ZGlkUHJvdmlkZUNvbnRlbnRLZXlTcGVjaWZp
ZXI6Zm9yVHJhY2tJRDogZGVsZWdhdGUgY2FsbGJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IDE3
ZjM5YjNlODllZjIxODQxNzQ2NWFkYmNjYTgzNjBmYzc2MGViNTUuLmI0YTViNmEzOTc0OGY2Mjhm
NzQ5ZWRjMmVmYjI5YjZjODI2Y2FlMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDIyLTAyLTE3ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAg
ICAgIFtDb2NvYV0gTWFrZSBBVkZvdW5kYXRpb25TUEkuaCByb2J1c3QgYWdhaW5zdCBjaGFuZ2Vz
IGluIHN5c3RlbSBoZWFkZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzY3ODcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBPbmx5IHJlLWRlY2xhcmUgY2xhc3NlcyBhbmQgYWRkIGNhdGVnb3JpZXMgZm9y
IG5vbi1BcHBsZSBJbnRlcm5hbCBidWlsZHMsIG9yIHdoZW4gdGhvc2UKKyAgICAgICAgZGVmaW5p
dGlvbnMgd291bGQgYmUgbWlzc2luZyBmcm9tIHN5c3RlbSBoZWFkZXJzLiBUaGUgcHJlc2VuY2Ug
b2YgdGhlIGNsYXNzZXMgYW5kIHRoZWlyCisgICAgICAgIG1ldGhvZHMgYXJlIGFscmVhZHkgY2hl
Y2tlZCBhdCBydW50aW1lLCBzbyB0aGlzIGlzIGEgYnVpbGQtb25seSBjaGFuZ2UuCisKKyAgICAg
ICAgKiBwYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oOgorCiAyMDIyLTAyLTE1ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRml4IGlu
dGVybmFsIEJpZyBTdXIgYnVpbGQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
SGF2ZS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1IYXZlLmgKaW5kZXggMDQyY2JhODY1ZmJj
M2JhODA4MmZkZmM5ZDFlMTE3ZGFmNzU0MzQ5Ni4uODU5MGE1ZmU2ZTNjNmNkMWY3MDUzY2QyMTBj
YjViNWYxMzA4NWI5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1IYXZlLmgK
KysrIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1IYXZlLmgKQEAgLTM4OCw2ICszODgsMTggQEAK
ICNkZWZpbmUgSEFWRV9BVkNPTlRFTlRLRVlTRVNTSU9OIDEKICNlbmRpZgogCisjaWYgKFBMQVRG
T1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01BWF9BTExPV0VEID49IDEwMTUwNCkgXAor
ICAgIHx8ICgoKFBMQVRGT1JNKElPUykgJiYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9S
KSkgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01BWF9B
TExPV0VEID49IDEzMDQwMCkgXAorICAgIHx8IChQTEFURk9STShXQVRDSE9TKSAmJiAhUExBVEZP
Uk0oSU9TX0ZBTUlMWV9TSU1VTEFUT1IpICYmIF9fV0FUQ0hfT1NfVkVSU0lPTl9NQVhfQUxMT1dF
RCA+PSA2MDQwMCkgXAorICAgIHx8IChQTEFURk9STShBUFBMRVRWKSAmJiAhUExBVEZPUk0oSU9T
X0ZBTUlMWV9TSU1VTEFUT1IpICYmIF9fVFZfT1NfVkVSU0lPTl9NQVhfQUxMT1dFRCA+PSAxMzA0
MDApCisjZGVmaW5lIEhBVkVfQVZDT05URU5US0VZUkVQT1JUR1JPVVAgMQorI2VuZGlmCisKKyNp
ZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEx
MDAwMCkgXAorICAgIHx8ICgoKFBMQVRGT1JNKElPUykgJiYgIVBMQVRGT1JNKElPU19GQU1JTFlf
U0lNVUxBVE9SKSkgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpKSAmJiBfX0lQSE9ORV9PU19WRVJT
SU9OX01JTl9SRVFVSVJFRCA+PSAxNDAwMDApCisjZGVmaW5lIEhBVkVfQVZDT05URU5US0VZU0VT
U0lPTldJTExPVVRQVVRCRU9CU0NVUkVEIDEKKyNlbmRpZgorCiAjaWYgKFBMQVRGT1JNKE1BQykg
JiYgX19NQUNfT1NfWF9WRVJTSU9OX01BWF9BTExPV0VEID49IDExMDMwMCkgXAogICAgIHx8ICgo
KFBMQVRGT1JNKElPUykgJiYgIVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKSkgfHwgUExB
VEZPUk0oTUFDQ0FUQUxZU1QpKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01BWF9BTExPV0VEID49
IDE0MDUwMCkgXAogICAgIHx8IChQTEFURk9STShXQVRDSE9TKSAmJiAhUExBVEZPUk0oSU9TX0ZB
TUlMWV9TSU1VTEFUT1IpICYmIF9fV0FUQ0hfT1NfVkVSU0lPTl9NQVhfQUxMT1dFRCA+PSA3MDQw
MCkgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3Vu
ZGF0aW9uU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVkZvdW5kYXRp
b25TUEkuaAppbmRleCA0ZjljYmU2ZDNkMjdlYzdkMWEzZGQ3ZTFkODI3NzBlMzcxODg0MTQ5Li5j
MmRmNmNjMGUyM2RiMGI1M2FlOTQwYWUyOWU4YTYyYjA4MzFjNGJkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVkZvdW5kYXRpb25TUEkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVkZvdW5kYXRpb25TUEkuaApAQCAtMzcsNiAr
MzcsNyBAQAogCiAjaW1wb3J0IDxBVkZvdW5kYXRpb24vQVZBc3NldENhY2hlX1ByaXZhdGUuaD4K
ICNpbXBvcnQgPEFWRm91bmRhdGlvbi9BVkNhcHR1cmVTZXNzaW9uX1ByaXZhdGUuaD4KKyNpbXBv
cnQgPEFWRm91bmRhdGlvbi9BVkNvbnRlbnRLZXlTZXNzaW9uX1ByaXZhdGUuaD4KICNpbXBvcnQg
PEFWRm91bmRhdGlvbi9BVk1lZGlhU2VsZWN0aW9uR3JvdXBfUHJpdmF0ZS5oPgogI2ltcG9ydCA8
QVZGb3VuZGF0aW9uL0FWT3V0cHV0Q29udGV4dF9Qcml2YXRlLmg+CiAjaW1wb3J0IDxBVkZvdW5k
YXRpb24vQVZPdXRwdXREZXZpY2UuaD4KQEAgLTIyNCw2ICsyMjUsOCBAQCBOU19BU1NVTUVfTk9O
TlVMTF9FTkQKICNpbXBvcnQgPEFWRm91bmRhdGlvbi9BVlBsYXllckxheWVyLmg+CiAKICNpZiBI
QVZFKEFWQ09OVEVOVEtFWVNFU1NJT04pCisKKyNpZiAhVVNFKEFQUExFX0lOVEVSTkFMX1NESykg
fHwgIUhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiBAaW50ZXJmYWNlIEFWQ29udGVudEtl
eVJlcG9ydEdyb3VwIDogTlNPYmplY3QKIEBwcm9wZXJ0eSAocmVhZG9ubHksIG51bGxhYmxlKSBO
U0RhdGEgKmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXI7CiAtICh2b2lkKWV4cGly
ZTsKQEAgLTIzNSwxNCArMjM4LDE3IEBAIE5TX0FTU1VNRV9OT05OVUxMX0VORAogQHByb3BlcnR5
IChyZWFkb25seSwgbnVsbGFibGUpIEFWQ29udGVudEtleVJlcG9ydEdyb3VwICpkZWZhdWx0Q29u
dGVudEtleUdyb3VwOwogLSAobm9ubnVsbCBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCAqKW1ha2VD
b250ZW50S2V5R3JvdXA7CiBAZW5kCisjZW5kaWYKIAorI2lmICFVU0UoQVBQTEVfSU5URVJOQUxf
U0RLKSB8fCAhSEFWRShBVkNPTlRFTlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCiBA
aW50ZXJmYWNlIEFWQ29udGVudEtleVJlcXVlc3QgKE91dHB1dE9ic2N1cmVkKQogTlNfQVNTVU1F
X05PTk5VTExfQkVHSU4KIC0gKEJPT0wpd2lsbE91dHB1dEJlT2JzY3VyZWREdWVUb0luc3VmZmlj
aWVudEV4dGVybmFsUHJvdGVjdGlvbkZvckRpc3BsYXlzOihOU0FycmF5PE5TTnVtYmVyICo+ICop
ZGlzcGxheXM7CiBOU19BU1NVTUVfTk9OTlVMTF9FTkQKIEBlbmQKKyNlbmRpZgogCi0jaWYgSEFW
RShBVkNPTlRFTlRLRVlSRVFVRVNUX1BFTkRJTkdfUFJPVEVDVElPTl9TVEFUVVMpCisjaWYgIVVT
RShBUFBMRV9JTlRFUk5BTF9TREspIHx8ICFIQVZFKEFWQ09OVEVOVEtFWVJFUVVFU1RfUEVORElO
R19QUk9URUNUSU9OX1NUQVRVUykKIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIEFWRXh0ZXJu
YWxDb250ZW50UHJvdGVjdGlvblN0YXR1cykgewogICAgIEFWRXh0ZXJuYWxDb250ZW50UHJvdGVj
dGlvblN0YXR1c1BlbmRpbmcgICAgICA9IDAsCiAgICAgQVZFeHRlcm5hbENvbnRlbnRQcm90ZWN0
aW9uU3RhdHVzU3VmZmljaWVudCAgID0gMSwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452523</attachid>
            <date>2022-02-18 09:03:11 -0800</date>
            <delta_ts>2022-02-18 09:37:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236787-20220218090310.patch</filename>
            <type>text/plain</type>
            <size>13979</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMDM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWU2ZThhMTAyMmU2Nzg2
NTI4NjEzZGJlYzkzNDE1NDBiODRhMDg4MS4uZmY3YjIyODI5NjI0NzZjMjZkNmM4MjQ3ODdmMDNh
MjdiYjIzZWZiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIyLTAyLTE4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gTWFrZSBBVkZv
dW5kYXRpb25TUEkuaCByb2J1c3QgYWdhaW5zdCBjaGFuZ2VzIGluIHN5c3RlbSBoZWFkZXJzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3ODcKKyAg
ICAgICAgPHJkYXI6Ly84OTA3NjYwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBXcmFwIGNhbGwtc2l0ZXMgaW4gI2lmIEhBVkUoKSBtYWNyb3MuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5j
ZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3Rh
bmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpjb250ZW50S2V5U2Vzc2lvbik6CisgICAgICAg
IChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6c2Vzc2lvbkZv
clJlcXVlc3QgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5zdGFuY2VTZXNzaW9uRmFp
clBsYXlTdHJlYW1pbmdBVkZPYmpDOjpyZXF1ZXN0TGljZW5zZSk6CisgICAgICAgIChXZWJDb3Jl
OjpDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnJlbW92ZVNlc3Np
b25EYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RN
SW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpwcm90ZWN0aW9uU3RhdHVz
Rm9yRGlzcGxheUlEIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlU2Vzc2lv
bkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZW5zdXJlU2Vzc2lvbk9yR3JvdXApOgorCiAyMDIy
LTAyLTE3ICBNYXR0IFdvb2Ryb3cgIDxtYXR0d29vZHJvd0BhcHBsZS5jb20+CiAKICAgICAgICAg
Rml4IGFicy1wb3MgYnJlYWR0aCBpc3N1ZSB3aGVuIHVzaW5nICdhdXRvJwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VM
b2cKaW5kZXggMTk3YTA2ODZlNzUwNmQ1MmNlMGI3YzliNjQyYmZhNDE2YTJkYzhhMy4uOTUxNTQ5
Y2MzNjUwNjg1ZWZhMTE3YTFiMWM2YTYyNzUxYTBjYTE2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjYgQEAKKzIwMjItMDItMTggIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5j
b20+CisKKyAgICAgICAgW0NvY29hXSBNYWtlIEFWRm91bmRhdGlvblNQSS5oIHJvYnVzdCBhZ2Fp
bnN0IGNoYW5nZXMgaW4gc3lzdGVtIGhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjc4NworICAgICAgICA8cmRhcjovLzg5MDc2NjA2Pgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZvbGxvdy11
cDogYnVpbGQgcHJvYmxlbXMgc3RpbGwgcGVyc2lzdCBvbiBjZXJ0YWluIHBsYXRmb3Jtcywgc28g
dGhlICJyb2J1c3RuZXNzIgorICAgICAgICBjaGFuZ2VzIG1hZGUgcHJldmlvdXNseSB3ZXJlIG5v
dCByb2J1c3QgZW5vdWdoLiBUaGUgZ3VhcmRzIGluIEFWRm91bmRhdGlvblNQSS5oIHdlcmUKKyAg
ICAgICAgaW50ZW5kZWQgdG8gZW5zdXJlIHRoZSBkZWZpbml0aW9ucyB3ZXJlIHByZXNlbnQgZXZl
biBvbiBidWlsZHMgd2hlcmUgdGhlIG9mZmljaWFsIEFQSQorICAgICAgICBpcyBub3Qgc3VwcG9y
dGVkLiBIb3dldmVyLCBqdXN0IGJlY2F1c2UgdGhlIEFQSSBpcyBub3Qgc3VwcG9ydGVkIGRvZXMg
bm90IG1lYW4gaXQncyBub3QKKyAgICAgICAgcHJlc2VudCwgd2hpY2ggbGVhZHMgdG8gZHVwbGlj
YXRlLWludGVyZmFjZSBidWlsZCBlcnJvcnMuCisKKyAgICAgICAgRml4IHRoZSBBVkZvdW5kYXRp
b25TUEkuaCBwcmFnbWFzIHRvIG9ubHkgZGVmaW5lIHRoZSBjbGFzc2VzIGFuZCBtZXRob2RzIHdo
ZXJlIHRob3NlCisgICAgICAgIG9iamVjdHMgYXJlIHN1cHBvcnRlZCwgYW5kIGluIHBhcmFsbGVs
LCB3cmFwIGltcGxlbWVudGF0aW9ucyB3aGljaCB1c2UgdGhvc2Ugb2JqZWN0cworICAgICAgICBp
biB0aG9zZSBzYW1lIGd1YXJkcyAobWFraW5nIHRoZXNlIGNoZWNrcyBjb21waWxlLXRpbWUgaW4g
YWRkaXRpb24gdG8gcnVudGltZSkuCisKKyAgICAgICAgTW92ZSB0aGUgZGVjbGFyYXRpb25zIGlu
c2lkZSB0aGUgI2Vsc2UgKElPVywgIVVTRShBUFBMRV9JTlRFUk5BTF9TREspKSBibG9jayBhYm92
ZSwKKyAgICAgICAgYW5kIHdyYXAgZWFjaCBkZWNsYXJhdGlvbiBpbiB0aGUgY29ycmVjdCBIQVZF
KCkgbWFjcm8uCisKKyAgICAgICAgKiBwYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oOgor
CiAyMDIyLTAyLTE1ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAK
ICAgICAgICAgW1dlYkdQVV0gVXBkYXRlIElETHMgYW5kIHN0dWJzIHRvIGxhdGVzdCB2ZXJzaW9u
IG9mIHRoZSBzcGVjCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2Nv
YS9BVkZvdW5kYXRpb25TUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FW
Rm91bmRhdGlvblNQSS5oCmluZGV4IGMyZGY2Y2MwZTIzZGIwYjUzYWU5NDBhZTI5ZThhNjJiMDgz
MWM0YmQuLmEyZDMzMmJlNzllMWVlZWMzZTcxZTE0NjI3NWFmODZhZDE2YzBhOTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oCkBA
IC0yNywxMCArMjcsNiBAQAogI2ltcG9ydCA8d3RmL1BsYXRmb3JtLmg+CiAjaW1wb3J0IDx3dGYv
U29mdExpbmtpbmcuaD4KIAotI2lmIEhBVkUoQVZDT05URU5US0VZU0VTU0lPTikKLSNpbXBvcnQg
PEFWRm91bmRhdGlvbi9BVkNvbnRlbnRLZXlTZXNzaW9uLmg+Ci0jZW5kaWYKLQogI2ltcG9ydCA8
cGFsL3NwaS9jb2NvYS9UQ0NTUEkuaD4KIAogI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCkBA
IC0yMjAsMTMgKzIxNiwxMCBAQCBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgogQGVuZAogTlNfQVNT
VU1FX05PTk5VTExfRU5ECiAKLSNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotCi0j
aW1wb3J0IDxBVkZvdW5kYXRpb24vQVZQbGF5ZXJMYXllci5oPgotCiAjaWYgSEFWRShBVkNPTlRF
TlRLRVlTRVNTSU9OKQorI2ltcG9ydCA8QVZGb3VuZGF0aW9uL0FWQ29udGVudEtleVNlc3Npb24u
aD4KIAotI2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShBVkNPTlRFTlRLRVlS
RVBPUlRHUk9VUCkKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogQGludGVyZmFj
ZSBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCA6IE5TT2JqZWN0CiBAcHJvcGVydHkgKHJlYWRvbmx5
LCBudWxsYWJsZSkgTlNEYXRhICpjb250ZW50UHJvdGVjdGlvblNlc3Npb25JZGVudGlmaWVyOwog
LSAodm9pZClleHBpcmU7CkBAIC0yNDAsNyArMjMzLDcgQEAgTlNfQVNTVU1FX05PTk5VTExfRU5E
CiBAZW5kCiAjZW5kaWYKIAotI2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShB
VkNPTlRFTlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCisjaWYgSEFWRShBVkNPTlRF
TlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCiBAaW50ZXJmYWNlIEFWQ29udGVudEtl
eVJlcXVlc3QgKE91dHB1dE9ic2N1cmVkKQogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIC0gKEJP
T0wpd2lsbE91dHB1dEJlT2JzY3VyZWREdWVUb0luc3VmZmljaWVudEV4dGVybmFsUHJvdGVjdGlv
bkZvckRpc3BsYXlzOihOU0FycmF5PE5TTnVtYmVyICo+ICopZGlzcGxheXM7CkBAIC0yNDgsNyAr
MjQxLDcgQEAgTlNfQVNTVU1FX05PTk5VTExfRU5ECiBAZW5kCiAjZW5kaWYKIAotI2lmICFVU0Uo
QVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShBVkNPTlRFTlRLRVlSRVFVRVNUX1BFTkRJTkdf
UFJPVEVDVElPTl9TVEFUVVMpCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVFVRVNUX1BFTkRJTkdf
UFJPVEVDVElPTl9TVEFUVVMpCiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBBVkV4dGVybmFs
Q29udGVudFByb3RlY3Rpb25TdGF0dXMpIHsKICAgICBBVkV4dGVybmFsQ29udGVudFByb3RlY3Rp
b25TdGF0dXNQZW5kaW5nICAgICAgPSAwLAogICAgIEFWRXh0ZXJuYWxDb250ZW50UHJvdGVjdGlv
blN0YXR1c1N1ZmZpY2llbnQgICA9IDEsCkBAIC0yNjIsNiArMjU1LDEwIEBAIHR5cGVkZWYgTlNf
RU5VTShOU0ludGVnZXIsIEFWRXh0ZXJuYWxDb250ZW50UHJvdGVjdGlvblN0YXR1cykgewogCiAj
ZW5kaWYgLy8gSEFWRShBVkNPTlRFTlRLRVlTRVNTSU9OKQogCisjZW5kaWYgLy8gVVNFKEFQUExF
X0lOVEVSTkFMX1NESykKKworI2ltcG9ydCA8QVZGb3VuZGF0aW9uL0FWUGxheWVyTGF5ZXIuaD4K
KwogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpICYmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQog
TlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBpbnRlcmZhY2UgQVZTdHJlYW1EYXRhUGFyc2VyIChB
VlN0cmVhbURhdGFQYXJzZXJQcml2YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVh
bWluZ0FWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbQppbmRleCA1
ODAyNTFlMTEwMmRjYzMyY2EzYWQ5OTM0MzgzOGE3YTI5OTFmYzIwLi5hMTY0YWNiMjhlMGUzMTdl
NTJmNGQ5YThhYmFlMmZjYjQ2YzlkZjE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbQpAQCAt
MTQ2LDYgKzE0Niw3IEBAIC0gKHZvaWQpY29udGVudEtleVNlc3Npb25Db250ZW50UHJvdGVjdGlv
blNlc3Npb25JZGVudGlmaWVyRGlkQ2hhbmdlOihBVkNvbnRlbnRLCiAgICAgICAgIF9wYXJlbnQt
PnNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChzZXNzaW9uLmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lv
bklkZW50aWZpZXIpOwogfQogCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKIC0g
KHZvaWQpY29udGVudEtleVNlc3Npb246KEFWQ29udGVudEtleVNlc3Npb24gKilzZXNzaW9uIGNv
bnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXJEaWRDaGFuZ2VGb3JLZXlHcm91cDoobnVs
bGFibGUgQVZDb250ZW50S2V5UmVwb3J0R3JvdXAgKilyZXBvcnRHcm91cAogewogICAgIC8vIEZJ
WE1FOiBSZW1vdmUgYWZ0ZXIgcmRhcjovLzU3NDMwNzQ3IGlzIGZpeGVkCkBAIC0xNTgsNiArMTU5
LDcgQEAgLSAodm9pZCljb250ZW50S2V5U2Vzc2lvbjooQVZDb250ZW50S2V5U2Vzc2lvbiAqKXNl
c3Npb24gY29udGVudFByb3RlY3Rpb25TZXNzaW8KICAgICBpZiAoX3BhcmVudCkKICAgICAgICAg
X3BhcmVudC0+Z3JvdXBTZXNzaW9uSWRlbnRpZmllckNoYW5nZWQocmVwb3J0R3JvdXAsIHJlcG9y
dEdyb3VwLmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXIpOwogfQorI2VuZGlmCiAK
IC0gKHZvaWQpY29udGVudEtleVNlc3Npb246KEFWQ29udGVudEtleVNlc3Npb24gKilzZXNzaW9u
IGV4dGVybmFsUHJvdGVjdGlvblN0YXR1c0RpZENoYW5nZUZvckNvbnRlbnRLZXlSZXF1ZXN0OihB
VkNvbnRlbnRLZXlSZXF1ZXN0ICopa2V5UmVxdWVzdAogewpAQCAtMjQ3LDggKzI0OSwxMCBAQCBB
VkNvbnRlbnRLZXlTZXNzaW9uKiBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6
Y29udGVudEtleVNlc3Npb24oKQogICAgIGlmICghUEFMOjpjYW5Mb2FkX0FWRm91bmRhdGlvbl9B
VkNvbnRlbnRLZXlTeXN0ZW1GYWlyUGxheVN0cmVhbWluZygpKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiAgICAgaWYgKCFQQUw6
OmdldEFWQ29udGVudEtleVJlcG9ydEdyb3VwQ2xhc3MoKSkKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisjZW5kaWYKIAogICAgIGF1dG8gc3RvcmFnZVVSTCA9IHRoaXMtPnN0b3JhZ2VVUkwoKTsK
ICAgICBpZiAoIXBlcnNpc3RlbnRTdGF0ZUFsbG93ZWQoKSB8fCAhc3RvcmFnZVVSTCkKQEAgLTQ0
MCw2ICs0NDQsNyBAQCBjb25zdCBTdHJpbmcmIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdB
VkZPYmpDOjprZXlTeXN0ZW0oKSBjb25zdAogICAgIHJldHVybiBrZXlTeXN0ZW07CiB9CiAKKyNp
ZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogc3RhdGljIEFWQ29udGVudEtleVJlcG9y
dEdyb3VwKiBncm91cEZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVxdWVzdCkKIHsK
ICAgICBBU1NFUlQoW3JlcXVlc3QgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihvcHRpb25z
KV0pOwpAQCAtNDQ4LDYgKzQ1Myw3IEBAIHN0YXRpYyBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCog
Z3JvdXBGb3JSZXF1ZXN0KEFWQ29udGVudEtleVJlcXVlc3QqIHJlcXVlc3QpCiAgICAgQUxMT1df
TkVXX0FQSV9XSVRIT1VUX0dVQVJEU19FTkQKICAgICByZXR1cm4gZ3JvdXA7CiB9CisjZW5kaWYK
IAogdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJl
cXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCAqcmVxdWVzdCkKIHsKQEAgLTU0Miw2ICs1NDgsNyBA
QCB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uSWRlbnRp
ZmllckNoYW5nZWQoTlNEYXRhICopCiAgICAgLy8gc2Vzc2lvbiBpZGVudGlmaWVycy4KIH0KIAor
I2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiB2b2lkIENETUluc3RhbmNlRmFpclBs
YXlTdHJlYW1pbmdBVkZPYmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRl
bnRLZXlSZXBvcnRHcm91cCogZ3JvdXAsIE5TRGF0YSAqc2Vzc2lvbklkZW50aWZpZXIpCiB7CiAg
ICAgaWYgKGdyb3VwID09IFttX3Nlc3Npb24gZGVmYXVsdENvbnRlbnRLZXlHcm91cF0pIHsKQEAg
LTU1Nyw2ICs1NjQsNyBAQCB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpD
Ojpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRlbgogICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwogICAgIEVSUk9SX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVSLCAiLSBu
byByZXNwb25zaWJsZSBzZXNzaW9uOyBkcm9wcGluZyIpOwogfQorI2VuZGlmCiAKIHZvaWQgQ0RN
SW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6Om91dHB1dE9ic2N1cmVkRHVlVG9JbnN1
ZmZpY2llbnRFeHRlcm5hbFByb3RlY3Rpb25DaGFuZ2VkKGJvb2wgb2JzY3VyZWQpCiB7CkBAIC02
MDMsOSArNjExLDE0IEBAIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2Jq
QyogQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6CiAgICAgaWYgKGluZGV4ICE9
IG5vdEZvdW5kKQogICAgICAgICByZXR1cm4gbV9zZXNzaW9uc1tpbmRleF0uZ2V0KCk7CiAKKyNp
ZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogICAgIHJldHVybiBzZXNzaW9uRm9yR3Jv
dXAoZ3JvdXBGb3JSZXF1ZXN0KHJlcXVlc3QpKTsKKyNlbHNlCisgICAgcmV0dXJuIG51bGxwdHI7
CisjZW5kaWYKIH0KIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiBDRE1JbnN0
YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIENETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uRm9yR3JvdXAoQVZDb250ZW50S2V5UmVwb3J0R3JvdXAq
IGdyb3VwKSBjb25zdAogewogICAgIGF1dG8gaW5kZXggPSBtX3Nlc3Npb25zLmZpbmRJZihbZ3Jv
dXBdIChhdXRvIHNlc3Npb24pIHsKQEAgLTYxNiw2ICs2MjksNyBAQCBDRE1JbnN0YW5jZVNlc3Np
b25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdB
VkZPYmpDOgogICAgICAgICByZXR1cm4gbV9zZXNzaW9uc1tpbmRleF0uZ2V0KCk7CiAgICAgcmV0
dXJuIG51bGxwdHI7CiB9CisjZW5kaWYKIAogYm9vbCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6aXNBbnlLZXlVc2FibGUoY29uc3QgS2V5cyYga2V5cykgY29uc3QKIHsKQEAg
LTcyNSwxMSArNzM5LDEzIEBAIHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1p
bmdBVkZPYmpDOjpyZXF1ZXN0TGljZW5zZShMaWNlbnNlVHlwZSBsaWNlCiAKICAgICBpZiAoYXV0
byB1bmV4cGVjdGVkUmVxdWVzdCA9IG1faW5zdGFuY2UtPnRha2VVbmV4cGVjdGVkS2V5UmVxdWVz
dEZvckluaXRpYWxpemF0aW9uRGF0YShpbml0RGF0YVR5cGUsIGluaXREYXRhKSkgewogICAgICAg
ICBERUJVR19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIiBmb3VuZCB1bmV4cGVjdGVk
UmVxdWVzdCBtYXRjaGluZyBpbml0RGF0YSIpOworI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JU
R1JPVVApCiAgICAgICAgIGlmIChtX2dyb3VwKSB7CiAgICAgICAgICAgICBBTExPV19ORVdfQVBJ
X1dJVEhPVVRfR1VBUkRTX0JFR0lOCiAgICAgICAgICAgICBbbV9ncm91cCBhc3NvY2lhdGVDb250
ZW50S2V5UmVxdWVzdDp1bmV4cGVjdGVkUmVxdWVzdC5nZXQoKV07CiAgICAgICAgICAgICBBTExP
V19ORVdfQVBJX1dJVEhPVVRfR1VBUkRTX0VORAogICAgICAgICB9CisjZW5kaWYKICAgICAgICAg
bV9yZXF1ZXN0TGljZW5zZUNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayk7CiAgICAgICAgIGRp
ZFByb3ZpZGVSZXF1ZXN0KHVuZXhwZWN0ZWRSZXF1ZXN0LmdldCgpKTsKICAgICAgICAgcmV0dXJu
OwpAQCAtNzU3LDEzICs3NzMsMTYgQEAgdm9pZCBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0
cmVhbWluZ0FWRk9iakM6OnJlcXVlc3RMaWNlbnNlKExpY2Vuc2VUeXBlIGxpY2UKICAgICBERUJV
R19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIiBwcm9jZXNzaW5nIHJlcXVlc3QiKTsK
ICAgICBtX3JlcXVlc3RMaWNlbnNlQ2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKTsKIAorI2lm
IEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiAgICAgaWYgKG1fZ3JvdXApIHsKICAgICAg
ICAgYXV0byogb3B0aW9ucyA9IEB7IENvbnRlbnRLZXlSZXBvcnRHcm91cEtleTogbV9ncm91cC5n
ZXQoKSwgSW5pdGlhbGl6YXRpb25EYXRhVHlwZUtleTogKE5TU3RyaW5nKilpbml0RGF0YVR5cGUg
fTsKICAgICAgICAgW21fZ3JvdXAgcHJvY2Vzc0NvbnRlbnRLZXlSZXF1ZXN0V2l0aElkZW50aWZp
ZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXphdGlvbkRhdGE6aW5pdGlhbGl6YXRpb25EYXRh
LmdldCgpIG9wdGlvbnM6b3B0aW9uc107Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgYXV0byogb3B0
aW9ucyA9IEB7IEluaXRpYWxpemF0aW9uRGF0YVR5cGVLZXk6IChOU1N0cmluZyopaW5pdERhdGFU
eXBlIH07Ci0gICAgICAgIFttX3Nlc3Npb24gcHJvY2Vzc0NvbnRlbnRLZXlSZXF1ZXN0V2l0aElk
ZW50aWZpZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXphdGlvbkRhdGE6aW5pdGlhbGl6YXRp
b25EYXRhLmdldCgpIG9wdGlvbnM6b3B0aW9uc107CisgICAgICAgIHJldHVybjsKICAgICB9Cisj
ZW5kaWYKKworICAgIGF1dG8qIG9wdGlvbnMgPSBAeyBJbml0aWFsaXphdGlvbkRhdGFUeXBlS2V5
OiAoTlNTdHJpbmcqKWluaXREYXRhVHlwZSB9OworICAgIFttX3Nlc3Npb24gcHJvY2Vzc0NvbnRl
bnRLZXlSZXF1ZXN0V2l0aElkZW50aWZpZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXphdGlv
bkRhdGE6aW5pdGlhbGl6YXRpb25EYXRhLmdldCgpIG9wdGlvbnM6b3B0aW9uc107CiB9CiAKIHN0
YXRpYyBib29sIGlzRXF1YWwoY29uc3QgRnJhZ21lbnRlZFNoYXJlZEJ1ZmZlciYgZGF0YSwgY29u
c3QgU3RyaW5nJiB2YWx1ZSkKQEAgLTEwMTEsOSArMTAzMCwxMSBAQCB2b2lkIENETUluc3RhbmNl
U2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Y2xvc2VTZXNzaW9uKGNvbnN0IFN0cmlu
ZyYsIENsbwogCiB2b2lkIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2Jq
Qzo6cmVtb3ZlU2Vzc2lvbkRhdGEoY29uc3QgU3RyaW5nJiBzZXNzaW9uSWQsIExpY2Vuc2VUeXBl
IGxpY2Vuc2VUeXBlLCBSZW1vdmVTZXNzaW9uRGF0YUNhbGxiYWNrJiYgY2FsbGJhY2spCiB7Cisj
aWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKICAgICBpZiAobV9ncm91cCkKICAgICAg
ICAgW21fZ3JvdXAgZXhwaXJlXTsKICAgICBlbHNlCisjZW5kaWYKICAgICAgICAgW21fc2Vzc2lv
biBleHBpcmVdOwogCiAgICAgaWYgKGxpY2Vuc2VUeXBlID09IExpY2Vuc2VUeXBlOjpQZXJzaXN0
ZW50VXNhZ2VSZWNvcmQpIHsKQEAgLTExMzIsNyArMTE1MywxMyBAQCB2b2lkIENETUluc3RhbmNl
U2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QoQVZDb250
ZW50S2V5UgogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgICAgICAgICBp
ZiAobV9zZXNzaW9uSWQuaXNFbXB0eSgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGF1dG8gc2Vz
c2lvbklEID0gbV9ncm91cCA/IG1fZ3JvdXAuZ2V0KCkuY29udGVudFByb3RlY3Rpb25TZXNzaW9u
SWRlbnRpZmllciA6IG1fc2Vzc2lvbi5nZXQoKS5jb250ZW50UHJvdGVjdGlvblNlc3Npb25JZGVu
dGlmaWVyOworICAgICAgICAgICAgICAgICAgICBOU0RhdGEgKnNlc3Npb25JRCA9IG51bGxwdHI7
CisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKKyAgICAgICAgICAgICAgICAgICAg
aWYgKG1fZ3JvdXApCisgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uSUQgPSBtX2dyb3Vw
LmdldCgpLmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXI7CisgICAgICAgICAgICAg
ICAgICAgIGVsc2UKKyNlbmRpZgorICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbklEID0g
bV9zZXNzaW9uLmdldCgpLmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXI7CiAgICAg
ICAgICAgICAgICAgICAgIHNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChzZXNzaW9uSUQpOwogICAg
ICAgICAgICAgICAgIH0KIApAQCAtMTQxNSwxMCArMTQ0MiwxMiBAQCB2b2lkIENETUluc3RhbmNl
U2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6c2Vzc2lvbklkZW50aWZpZXJDaGFuZ2Vk
KE5TRGF0YQogICAgICAgICBtX2NsaWVudC0+c2Vzc2lvbklkQ2hhbmdlZChtX3Nlc3Npb25JZCk7
CiB9CiAKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogdm9pZCBDRE1JbnN0YW5j
ZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6Omdyb3VwU2Vzc2lvbklkZW50aWZpZXJD
aGFuZ2VkKEFWQ29udGVudEtleVJlcG9ydEdyb3VwKiwgTlNEYXRhICpzZXNzaW9uSWRlbnRpZmll
cikKIHsKICAgICBzZXNzaW9uSWRlbnRpZmllckNoYW5nZWQoc2Vzc2lvbklkZW50aWZpZXIpOwog
fQorI2VuZGlmCiAKIHN0YXRpYyBhdXRvIHJlcXVlc3RTdGF0dXNUb0NETVN0YXR1cyhBVkNvbnRl
bnRLZXlSZXF1ZXN0U3RhdHVzIHN0YXR1cykKIHsKQEAgLTE1MDcsNiArMTUzNiw3IEBAIHN0ZDo6
b3B0aW9uYWw8Q0RNS2V5U3RhdHVzPiBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWlu
Z0FWRk9iakM6OnByb3RlY3RpCiAgICAgfQogI2VuZGlmCiAKKyNpZiBIQVZFKEFWQ09OVEVOVEtF
WVNFU1NJT05XSUxMT1VUUFVUQkVPQlNDVVJFRCkKICAgICAvLyBGSVhNRTogQVZGb3VuZGF0aW9u
IHJlcXVpcmVzIGEgY29ubmVjdGlvbiB0byB0aGUgV2luZG93U2VydmVyIGluIG9yZGVyIHRvIHF1
ZXJ5IHRoZSBIRENQIHN0YXR1cyBvZiBpbmRpdmlkdWFsCiAgICAgLy8gZGlzcGxheXMuIFBhc3Np
bmcgaW4gYW4gZW1wdHkgTlNBcnJheSB3aWxsIGNhdXNlIEFWRm91bmRhdGlvbiB0byBmYWxsIGJh
Y2sgdG8gYSAibWluaW11bSBzdXBwb3J0ZWQgSERDUCBsZXZlbCIKICAgICAvLyBhY3Jvc3MgYWxs
IGRpc3BsYXlzLiBSZXBsYWNlIHRoZSBiZWxvdyB3aXRoIGV4cGxpY2l0IEFQSXMgdG8gcXVlcnkg
dGhlIHBlci1kaXNwbGF5IEhEQ1Agc3RhdHVzIGluIHRoZSBVSVByb2Nlc3MKQEAgLTE1MjUsNiAr
MTU1NSw3IEBAIHN0ZDo6b3B0aW9uYWw8Q0RNS2V5U3RhdHVzPiBDRE1JbnN0YW5jZVNlc3Npb25G
YWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnByb3RlY3RpCiAgICAgICAgIEFMV0FZU19MT0dfSUZf
UE9TU0lCTEUoTE9HSURFTlRJRklFUiwgInJlcXVlc3QgeyAiLCBrZXlJRHNGb3JSZXF1ZXN0KHJl
cXVlc3QpLCAiIH0gd2lsbE91dHB1dEJlT2JzY3VyZWQuLi5mb3JEaXNwbGF5czpbIG5pbCBdID0g
Iiwgb2JzY3VyZWQgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKICAgICAgICAgcmV0dXJuIG9ic2N1cmVk
ID8gQ0RNS2V5U3RhdHVzOjpPdXRwdXRSZXN0cmljdGVkIDogQ0RNS2V5U3RhdHVzOjpVc2FibGU7
CiAgICAgfQorI2VuZGlmCiAKICAgICAvLyBPbmx5IHVzZSB0aGUgbm9uLXJlcXVlc3Qtc3BlY2lm
aWMgIm91dHB1dE9ic2N1cmVkRHVlVG9JbnN1ZmZpY2llbnRFeHRlcm5hbFByb3RlY3Rpb24iIHN0
YXR1cyBpZgogICAgIC8vIEFWQ29udGVudEtleVJlcXVlc3RzIGRvIG5vdCBzdXBwb3J0IHRoZSBm
aW5lciBncmFpbmVkICItd2lsbE91dHB1dEJlT2JzY3VyZWQuLi4iIEFQSS4KQEAgLTE1NDgsMTMg
KzE1NzksMTggQEAgdm9pZCBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9i
akM6OnVwZGF0ZVByb3RlY3Rpb25TdGF0dXNGb3JEaXNwbGEKIAogYm9vbCBDRE1JbnN0YW5jZVNl
c3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmVuc3VyZVNlc3Npb25Pckdyb3VwKCkKIHsK
LSAgICBpZiAobV9zZXNzaW9uIHx8IG1fZ3JvdXApCisgICAgaWYgKG1fc2Vzc2lvbikKKyAgICAg
ICAgcmV0dXJuIHRydWU7CisKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQorICAg
IGlmIChtX2dyb3VwKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAogICAgIGlmIChhdXRvKiBzZXNz
aW9uID0gbV9pbnN0YW5jZS0+Y29udGVudEtleVNlc3Npb24oKSkgewogICAgICAgICBtX2dyb3Vw
ID0gW3Nlc3Npb24gbWFrZUNvbnRlbnRLZXlHcm91cF07CiAgICAgICAgIHJldHVybiB0cnVlOwog
ICAgIH0KKyNlbmRpZgogCiAgICAgYXV0byBzdG9yYWdlVVJMID0gbV9pbnN0YW5jZS0+c3RvcmFn
ZVVSTCgpOwogICAgIGlmICghbV9pbnN0YW5jZS0+cGVyc2lzdGVudFN0YXRlQWxsb3dlZCgpIHx8
ICFzdG9yYWdlVVJMKQo=
</data>
<flag name="commit-queue"
          id="479601"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452526</attachid>
            <date>2022-02-18 09:22:25 -0800</date>
            <delta_ts>2022-02-18 09:33:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236787-20220218092224.patch</filename>
            <type>text/plain</type>
            <size>14110</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMDM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWU2ZThhMTAyMmU2Nzg2
NTI4NjEzZGJlYzkzNDE1NDBiODRhMDg4MS4uNWRjMDdmZWE4MWUyZGJhMDFmYmU4Njc0Nzc2NDk4
YjhkMTJjODZjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIyLTAyLTE4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gTWFrZSBBVkZv
dW5kYXRpb25TUEkuaCByb2J1c3QgYWdhaW5zdCBjaGFuZ2VzIGluIHN5c3RlbSBoZWFkZXJzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3ODcKKyAg
ICAgICAgPHJkYXI6Ly84OTA3NjYwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxz
b24uCisKKyAgICAgICAgV3JhcCBjYWxsLXNpdGVzIGluICNpZiBIQVZFKCkgbWFjcm9zLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5j
ZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Y29udGVudEtleVNlc3Npb24pOgorICAgICAgICAo
V2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnNlc3Npb25Gb3JS
ZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlU2Vzc2lvbkZhaXJQ
bGF5U3RyZWFtaW5nQVZGT2JqQzo6cmVxdWVzdExpY2Vuc2UpOgorICAgICAgICAoV2ViQ29yZTo6
Q0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpyZW1vdmVTZXNzaW9u
RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVh
bWluZ0FWRk9iakM6OmRpZFByb3ZpZGVSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNETUlu
c3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6cHJvdGVjdGlvblN0YXR1c0Zv
ckRpc3BsYXlJRCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZVNlc3Npb25G
YWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmVuc3VyZVNlc3Npb25Pckdyb3VwKToKKwogMjAyMi0w
Mi0xNyAgTWF0dCBXb29kcm93ICA8bWF0dHdvb2Ryb3dAYXBwbGUuY29tPgogCiAgICAgICAgIEZp
eCBhYnMtcG9zIGJyZWFkdGggaXNzdWUgd2hlbiB1c2luZyAnYXV0bycKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CmluZGV4IDE5N2EwNjg2ZTc1MDZkNTJjZTBiN2M5YjY0MmJmYTQxNmEyZGM4YTMuLjIxNmUyZjgz
NDI0Nzg0ZjZmMmFkMTA0NWJmOTY0MTQ5YmExNWFiZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI2IEBACisyMDIyLTAyLTE4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29t
PgorCisgICAgICAgIFtDb2NvYV0gTWFrZSBBVkZvdW5kYXRpb25TUEkuaCByb2J1c3QgYWdhaW5z
dCBjaGFuZ2VzIGluIHN5c3RlbSBoZWFkZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3ODcKKyAgICAgICAgPHJkYXI6Ly84OTA3NjYwNj4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgRm9sbG93LXVwOiBi
dWlsZCBwcm9ibGVtcyBzdGlsbCBwZXJzaXN0IG9uIGNlcnRhaW4gcGxhdGZvcm1zLCBzbyB0aGUg
InJvYnVzdG5lc3MiCisgICAgICAgIGNoYW5nZXMgbWFkZSBwcmV2aW91c2x5IHdlcmUgbm90IHJv
YnVzdCBlbm91Z2guIFRoZSBndWFyZHMgaW4gQVZGb3VuZGF0aW9uU1BJLmggd2VyZQorICAgICAg
ICBpbnRlbmRlZCB0byBlbnN1cmUgdGhlIGRlZmluaXRpb25zIHdlcmUgcHJlc2VudCBldmVuIG9u
IGJ1aWxkcyB3aGVyZSB0aGUgb2ZmaWNpYWwgQVBJCisgICAgICAgIGlzIG5vdCBzdXBwb3J0ZWQu
IEhvd2V2ZXIsIGp1c3QgYmVjYXVzZSB0aGUgQVBJIGlzIG5vdCBzdXBwb3J0ZWQgZG9lcyBub3Qg
bWVhbiBpdCdzIG5vdAorICAgICAgICBwcmVzZW50LCB3aGljaCBsZWFkcyB0byBkdXBsaWNhdGUt
aW50ZXJmYWNlIGJ1aWxkIGVycm9ycy4KKworICAgICAgICBGaXggdGhlIEFWRm91bmRhdGlvblNQ
SS5oIHByYWdtYXMgdG8gb25seSBkZWZpbmUgdGhlIGNsYXNzZXMgYW5kIG1ldGhvZHMgd2hlcmUg
dGhvc2UKKyAgICAgICAgb2JqZWN0cyBhcmUgc3VwcG9ydGVkLCBhbmQgaW4gcGFyYWxsZWwsIHdy
YXAgaW1wbGVtZW50YXRpb25zIHdoaWNoIHVzZSB0aG9zZSBvYmplY3RzCisgICAgICAgIGluIHRo
b3NlIHNhbWUgZ3VhcmRzIChtYWtpbmcgdGhlc2UgY2hlY2tzIGNvbXBpbGUtdGltZSBpbiBhZGRp
dGlvbiB0byBydW50aW1lKS4KKworICAgICAgICBNb3ZlIHRoZSBkZWNsYXJhdGlvbnMgaW5zaWRl
IHRoZSAjZWxzZSAoSU9XLCAhVVNFKEFQUExFX0lOVEVSTkFMX1NESykpIGJsb2NrIGFib3ZlLAor
ICAgICAgICBhbmQgd3JhcCBlYWNoIGRlY2xhcmF0aW9uIGluIHRoZSBjb3JyZWN0IEhBVkUoKSBt
YWNyby4KKworICAgICAgICAqIHBhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmg6CisKIDIw
MjItMDItMTUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbV2ViR1BVXSBVcGRhdGUgSURMcyBhbmQgc3R1YnMgdG8gbGF0ZXN0IHZlcnNpb24gb2Yg
dGhlIHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FW
Rm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3Vu
ZGF0aW9uU1BJLmgKaW5kZXggYzJkZjZjYzBlMjNkYjBiNTNhZTk0MGFlMjllOGE2MmIwODMxYzRi
ZC4uYTkyODdkNTI1N2QwNDQ5YWI4OTc0MmNjMDlkNjA4YjFlMTljZWI1YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAgLTIy
MCwxMyArMjIwLDkgQEAgTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBlbmQKIE5TX0FTU1VNRV9O
T05OVUxMX0VORAogCi0jZW5kaWYgLy8gVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLQotI2ltcG9y
dCA8QVZGb3VuZGF0aW9uL0FWUGxheWVyTGF5ZXIuaD4KLQogI2lmIEhBVkUoQVZDT05URU5US0VZ
U0VTU0lPTikKIAotI2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShBVkNPTlRF
TlRLRVlSRVBPUlRHUk9VUCkKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogQGlu
dGVyZmFjZSBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCA6IE5TT2JqZWN0CiBAcHJvcGVydHkgKHJl
YWRvbmx5LCBudWxsYWJsZSkgTlNEYXRhICpjb250ZW50UHJvdGVjdGlvblNlc3Npb25JZGVudGlm
aWVyOwogLSAodm9pZClleHBpcmU7CkBAIC0yNDAsNyArMjM2LDcgQEAgTlNfQVNTVU1FX05PTk5V
TExfRU5ECiBAZW5kCiAjZW5kaWYKIAotI2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAh
SEFWRShBVkNPTlRFTlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCisjaWYgSEFWRShB
VkNPTlRFTlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCiBAaW50ZXJmYWNlIEFWQ29u
dGVudEtleVJlcXVlc3QgKE91dHB1dE9ic2N1cmVkKQogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4K
IC0gKEJPT0wpd2lsbE91dHB1dEJlT2JzY3VyZWREdWVUb0luc3VmZmljaWVudEV4dGVybmFsUHJv
dGVjdGlvbkZvckRpc3BsYXlzOihOU0FycmF5PE5TTnVtYmVyICo+ICopZGlzcGxheXM7CkBAIC0y
NDgsNyArMjQ0LDcgQEAgTlNfQVNTVU1FX05PTk5VTExfRU5ECiBAZW5kCiAjZW5kaWYKIAotI2lm
ICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShBVkNPTlRFTlRLRVlSRVFVRVNUX1BF
TkRJTkdfUFJPVEVDVElPTl9TVEFUVVMpCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVFVRVNUX1BF
TkRJTkdfUFJPVEVDVElPTl9TVEFUVVMpCiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBBVkV4
dGVybmFsQ29udGVudFByb3RlY3Rpb25TdGF0dXMpIHsKICAgICBBVkV4dGVybmFsQ29udGVudFBy
b3RlY3Rpb25TdGF0dXNQZW5kaW5nICAgICAgPSAwLAogICAgIEFWRXh0ZXJuYWxDb250ZW50UHJv
dGVjdGlvblN0YXR1c1N1ZmZpY2llbnQgICA9IDEsCkBAIC0yNjIsNiArMjU4LDEwIEBAIHR5cGVk
ZWYgTlNfRU5VTShOU0ludGVnZXIsIEFWRXh0ZXJuYWxDb250ZW50UHJvdGVjdGlvblN0YXR1cykg
ewogCiAjZW5kaWYgLy8gSEFWRShBVkNPTlRFTlRLRVlTRVNTSU9OKQogCisjZW5kaWYgLy8gVVNF
KEFQUExFX0lOVEVSTkFMX1NESykKKworI2ltcG9ydCA8QVZGb3VuZGF0aW9uL0FWUGxheWVyTGF5
ZXIuaD4KKwogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpICYmICFVU0UoQVBQTEVfSU5URVJOQUxf
U0RLKQogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBpbnRlcmZhY2UgQVZTdHJlYW1EYXRhUGFy
c2VyIChBVlN0cmVhbURhdGFQYXJzZXJQcml2YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxh
eVN0cmVhbWluZ0FWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbQpp
bmRleCA1ODAyNTFlMTEwMmRjYzMyY2EzYWQ5OTM0MzgzOGE3YTI5OTFmYzIwLi4xN2M0MGI2MTRm
NjhjODQzNGY2ZGY2NTAzNjQ3Zjc2MGMxZjJhNzlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5
U3RyZWFtaW5nQVZGT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5t
bQpAQCAtNTAsNyArNTAsOSBAQAogI2ltcG9ydCA8cGFsL2NvY29hL0FWRm91bmRhdGlvblNvZnRM
aW5rLmg+CiAKIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IEluaXRpYWxpemF0aW9uRGF0YVR5cGVL
ZXkgPSBAIkluaXRpYWxpemF0aW9uRGF0YVR5cGUiOworI2lmIEhBVkUoQVZDT05URU5US0VZUkVQ
T1JUR1JPVVApCiBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBDb250ZW50S2V5UmVwb3J0R3JvdXBL
ZXkgPSBAIkNvbnRlbnRLZXlSZXBvcnRHcm91cCI7CisjZW5kaWYKIHN0YXRpYyBjb25zdCBOU0lu
dGVnZXIgU2VjdXJpdHlMZXZlbEVycm9yID0gLTQyODExOwogCiBAaW50ZXJmYWNlIFdlYkNvcmVG
UFNDb250ZW50S2V5U2Vzc2lvbkRlbGVnYXRlIDogTlNPYmplY3Q8QVZDb250ZW50S2V5U2Vzc2lv
bkRlbGVnYXRlPiB7CkBAIC0xNDYsNiArMTQ4LDcgQEAgLSAodm9pZCljb250ZW50S2V5U2Vzc2lv
bkNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXJEaWRDaGFuZ2U6KEFWQ29udGVudEsK
ICAgICAgICAgX3BhcmVudC0+c2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKHNlc3Npb24uY29udGVu
dFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmllcik7CiB9CiAKKyNpZiBIQVZFKEFWQ09OVEVOVEtF
WVJFUE9SVEdST1VQKQogLSAodm9pZCljb250ZW50S2V5U2Vzc2lvbjooQVZDb250ZW50S2V5U2Vz
c2lvbiAqKXNlc3Npb24gY29udGVudFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmllckRpZENoYW5n
ZUZvcktleUdyb3VwOihudWxsYWJsZSBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCAqKXJlcG9ydEdy
b3VwCiB7CiAgICAgLy8gRklYTUU6IFJlbW92ZSBhZnRlciByZGFyOi8vNTc0MzA3NDcgaXMgZml4
ZWQKQEAgLTE1OCw2ICsxNjEsNyBAQCAtICh2b2lkKWNvbnRlbnRLZXlTZXNzaW9uOihBVkNvbnRl
bnRLZXlTZXNzaW9uICopc2Vzc2lvbiBjb250ZW50UHJvdGVjdGlvblNlc3NpbwogICAgIGlmIChf
cGFyZW50KQogICAgICAgICBfcGFyZW50LT5ncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChy
ZXBvcnRHcm91cCwgcmVwb3J0R3JvdXAuY29udGVudFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmll
cik7CiB9CisjZW5kaWYKIAogLSAodm9pZCljb250ZW50S2V5U2Vzc2lvbjooQVZDb250ZW50S2V5
U2Vzc2lvbiAqKXNlc3Npb24gZXh0ZXJuYWxQcm90ZWN0aW9uU3RhdHVzRGlkQ2hhbmdlRm9yQ29u
dGVudEtleVJlcXVlc3Q6KEFWQ29udGVudEtleVJlcXVlc3QgKilrZXlSZXF1ZXN0CiB7CkBAIC0y
NDcsOCArMjUxLDEwIEBAIEFWQ29udGVudEtleVNlc3Npb24qIENETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDOjpjb250ZW50S2V5U2Vzc2lvbigpCiAgICAgaWYgKCFQQUw6OmNhbkxv
YWRfQVZGb3VuZGF0aW9uX0FWQ29udGVudEtleVN5c3RlbUZhaXJQbGF5U3RyZWFtaW5nKCkpCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9V
UCkKICAgICBpZiAoIVBBTDo6Z2V0QVZDb250ZW50S2V5UmVwb3J0R3JvdXBDbGFzcygpKQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKyNlbmRpZgogCiAgICAgYXV0byBzdG9yYWdlVVJMID0gdGhp
cy0+c3RvcmFnZVVSTCgpOwogICAgIGlmICghcGVyc2lzdGVudFN0YXRlQWxsb3dlZCgpIHx8ICFz
dG9yYWdlVVJMKQpAQCAtNDQwLDYgKzQ0Niw3IEBAIGNvbnN0IFN0cmluZyYgQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmtleVN5c3RlbSgpIGNvbnN0CiAgICAgcmV0dXJuIGtl
eVN5c3RlbTsKIH0KIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiBzdGF0aWMg
QVZDb250ZW50S2V5UmVwb3J0R3JvdXAqIGdyb3VwRm9yUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1
ZXN0KiByZXF1ZXN0KQogewogICAgIEFTU0VSVChbcmVxdWVzdCByZXNwb25kc1RvU2VsZWN0b3I6
QHNlbGVjdG9yKG9wdGlvbnMpXSk7CkBAIC00NDgsNiArNDU1LDcgQEAgc3RhdGljIEFWQ29udGVu
dEtleVJlcG9ydEdyb3VwKiBncm91cEZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVx
dWVzdCkKICAgICBBTExPV19ORVdfQVBJX1dJVEhPVVRfR1VBUkRTX0VORAogICAgIHJldHVybiBn
cm91cDsKIH0KKyNlbmRpZgogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZP
YmpDOjpkaWRQcm92aWRlUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1ZXN0ICpyZXF1ZXN0KQogewpA
QCAtNTQyLDYgKzU1MCw3IEBAIHZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9i
akM6OnNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChOU0RhdGEgKikKICAgICAvLyBzZXNzaW9uIGlk
ZW50aWZpZXJzLgogfQogCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKIHZvaWQg
Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6Omdyb3VwU2Vzc2lvbklkZW50aWZp
ZXJDaGFuZ2VkKEFWQ29udGVudEtleVJlcG9ydEdyb3VwKiBncm91cCwgTlNEYXRhICpzZXNzaW9u
SWRlbnRpZmllcikKIHsKICAgICBpZiAoZ3JvdXAgPT0gW21fc2Vzc2lvbiBkZWZhdWx0Q29udGVu
dEtleUdyb3VwXSkgewpAQCAtNTU3LDYgKzU2Niw3IEBAIHZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxh
eVN0cmVhbWluZ0FWRk9iakM6Omdyb3VwU2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKEFWQ29udGVu
CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgRVJST1JfTE9HX0lGX1BPU1NJQkxFKExP
R0lERU5USUZJRVIsICItIG5vIHJlc3BvbnNpYmxlIHNlc3Npb247IGRyb3BwaW5nIik7CiB9Cisj
ZW5kaWYKIAogdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6b3V0cHV0
T2JzY3VyZWREdWVUb0luc3VmZmljaWVudEV4dGVybmFsUHJvdGVjdGlvbkNoYW5nZWQoYm9vbCBv
YnNjdXJlZCkKIHsKQEAgLTYwMyw5ICs2MTMsMTQgQEAgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBs
YXlTdHJlYW1pbmdBVkZPYmpDKiBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzoK
ICAgICBpZiAoaW5kZXggIT0gbm90Rm91bmQpCiAgICAgICAgIHJldHVybiBtX3Nlc3Npb25zW2lu
ZGV4XS5nZXQoKTsKIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiAgICAgcmV0
dXJuIHNlc3Npb25Gb3JHcm91cChncm91cEZvclJlcXVlc3QocmVxdWVzdCkpOworI2Vsc2UKKyAg
ICByZXR1cm4gbnVsbHB0cjsKKyNlbmRpZgogfQogCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBP
UlRHUk9VUCkKIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQyogQ0RN
SW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnNlc3Npb25Gb3JHcm91cChBVkNvbnRl
bnRLZXlSZXBvcnRHcm91cCogZ3JvdXApIGNvbnN0CiB7CiAgICAgYXV0byBpbmRleCA9IG1fc2Vz
c2lvbnMuZmluZElmKFtncm91cF0gKGF1dG8gc2Vzc2lvbikgewpAQCAtNjE2LDYgKzYzMSw3IEBA
IENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQyogQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakM6CiAgICAgICAgIHJldHVybiBtX3Nlc3Npb25zW2luZGV4
XS5nZXQoKTsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KKyNlbmRpZgogCiBib29sIENETUluc3Rh
bmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjppc0FueUtleVVzYWJsZShjb25zdCBLZXlzJiBr
ZXlzKSBjb25zdAogewpAQCAtNzI1LDExICs3NDEsMTMgQEAgdm9pZCBDRE1JbnN0YW5jZVNlc3Np
b25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnJlcXVlc3RMaWNlbnNlKExpY2Vuc2VUeXBlIGxp
Y2UKIAogICAgIGlmIChhdXRvIHVuZXhwZWN0ZWRSZXF1ZXN0ID0gbV9pbnN0YW5jZS0+dGFrZVVu
ZXhwZWN0ZWRLZXlSZXF1ZXN0Rm9ySW5pdGlhbGl6YXRpb25EYXRhKGluaXREYXRhVHlwZSwgaW5p
dERhdGEpKSB7CiAgICAgICAgIERFQlVHX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVSLCAi
IGZvdW5kIHVuZXhwZWN0ZWRSZXF1ZXN0IG1hdGNoaW5nIGluaXREYXRhIik7CisjaWYgSEFWRShB
VkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKICAgICAgICAgaWYgKG1fZ3JvdXApIHsKICAgICAgICAg
ICAgIEFMTE9XX05FV19BUElfV0lUSE9VVF9HVUFSRFNfQkVHSU4KICAgICAgICAgICAgIFttX2dy
b3VwIGFzc29jaWF0ZUNvbnRlbnRLZXlSZXF1ZXN0OnVuZXhwZWN0ZWRSZXF1ZXN0LmdldCgpXTsK
ICAgICAgICAgICAgIEFMTE9XX05FV19BUElfV0lUSE9VVF9HVUFSRFNfRU5ECiAgICAgICAgIH0K
KyNlbmRpZgogICAgICAgICBtX3JlcXVlc3RMaWNlbnNlQ2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxi
YWNrKTsKICAgICAgICAgZGlkUHJvdmlkZVJlcXVlc3QodW5leHBlY3RlZFJlcXVlc3QuZ2V0KCkp
OwogICAgICAgICByZXR1cm47CkBAIC03NTcsMTMgKzc3NSwxNiBAQCB2b2lkIENETUluc3RhbmNl
U2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6cmVxdWVzdExpY2Vuc2UoTGljZW5zZVR5
cGUgbGljZQogICAgIERFQlVHX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVSLCAiIHByb2Nl
c3NpbmcgcmVxdWVzdCIpOwogICAgIG1fcmVxdWVzdExpY2Vuc2VDYWxsYmFjayA9IFdURk1vdmUo
Y2FsbGJhY2spOwogCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKICAgICBpZiAo
bV9ncm91cCkgewogICAgICAgICBhdXRvKiBvcHRpb25zID0gQHsgQ29udGVudEtleVJlcG9ydEdy
b3VwS2V5OiBtX2dyb3VwLmdldCgpLCBJbml0aWFsaXphdGlvbkRhdGFUeXBlS2V5OiAoTlNTdHJp
bmcqKWluaXREYXRhVHlwZSB9OwogICAgICAgICBbbV9ncm91cCBwcm9jZXNzQ29udGVudEtleVJl
cXVlc3RXaXRoSWRlbnRpZmllcjppZGVudGlmaWVyLmdldCgpIGluaXRpYWxpemF0aW9uRGF0YTpp
bml0aWFsaXphdGlvbkRhdGEuZ2V0KCkgb3B0aW9uczpvcHRpb25zXTsKLSAgICB9IGVsc2Ugewot
ICAgICAgICBhdXRvKiBvcHRpb25zID0gQHsgSW5pdGlhbGl6YXRpb25EYXRhVHlwZUtleTogKE5T
U3RyaW5nKilpbml0RGF0YVR5cGUgfTsKLSAgICAgICAgW21fc2Vzc2lvbiBwcm9jZXNzQ29udGVu
dEtleVJlcXVlc3RXaXRoSWRlbnRpZmllcjppZGVudGlmaWVyLmdldCgpIGluaXRpYWxpemF0aW9u
RGF0YTppbml0aWFsaXphdGlvbkRhdGEuZ2V0KCkgb3B0aW9uczpvcHRpb25zXTsKKyAgICAgICAg
cmV0dXJuOwogICAgIH0KKyNlbmRpZgorCisgICAgYXV0byogb3B0aW9ucyA9IEB7IEluaXRpYWxp
emF0aW9uRGF0YVR5cGVLZXk6IChOU1N0cmluZyopaW5pdERhdGFUeXBlIH07CisgICAgW21fc2Vz
c2lvbiBwcm9jZXNzQ29udGVudEtleVJlcXVlc3RXaXRoSWRlbnRpZmllcjppZGVudGlmaWVyLmdl
dCgpIGluaXRpYWxpemF0aW9uRGF0YTppbml0aWFsaXphdGlvbkRhdGEuZ2V0KCkgb3B0aW9uczpv
cHRpb25zXTsKIH0KIAogc3RhdGljIGJvb2wgaXNFcXVhbChjb25zdCBGcmFnbWVudGVkU2hhcmVk
QnVmZmVyJiBkYXRhLCBjb25zdCBTdHJpbmcmIHZhbHVlKQpAQCAtMTAxMSw5ICsxMDMyLDExIEBA
IHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpjbG9zZVNl
c3Npb24oY29uc3QgU3RyaW5nJiwgQ2xvCiAKIHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBs
YXlTdHJlYW1pbmdBVkZPYmpDOjpyZW1vdmVTZXNzaW9uRGF0YShjb25zdCBTdHJpbmcmIHNlc3Np
b25JZCwgTGljZW5zZVR5cGUgbGljZW5zZVR5cGUsIFJlbW92ZVNlc3Npb25EYXRhQ2FsbGJhY2sm
JiBjYWxsYmFjaykKIHsKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogICAgIGlm
IChtX2dyb3VwKQogICAgICAgICBbbV9ncm91cCBleHBpcmVdOwogICAgIGVsc2UKKyNlbmRpZgog
ICAgICAgICBbbV9zZXNzaW9uIGV4cGlyZV07CiAKICAgICBpZiAobGljZW5zZVR5cGUgPT0gTGlj
ZW5zZVR5cGU6OlBlcnNpc3RlbnRVc2FnZVJlY29yZCkgewpAQCAtMTEzMiw3ICsxMTU1LDEzIEBA
IHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpkaWRQcm92
aWRlUmVxdWVzdChBVkNvbnRlbnRLZXlSCiAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKIAog
ICAgICAgICAgICAgICAgIGlmIChtX3Nlc3Npb25JZC5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAg
ICAgICAgICAgYXV0byBzZXNzaW9uSUQgPSBtX2dyb3VwID8gbV9ncm91cC5nZXQoKS5jb250ZW50
UHJvdGVjdGlvblNlc3Npb25JZGVudGlmaWVyIDogbV9zZXNzaW9uLmdldCgpLmNvbnRlbnRQcm90
ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXI7CisgICAgICAgICAgICAgICAgICAgIE5TRGF0YSAqc2Vz
c2lvbklEID0gbnVsbHB0cjsKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQorICAg
ICAgICAgICAgICAgICAgICBpZiAobV9ncm91cCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNl
c3Npb25JRCA9IG1fZ3JvdXAuZ2V0KCkuY29udGVudFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmll
cjsKKyAgICAgICAgICAgICAgICAgICAgZWxzZQorI2VuZGlmCisgICAgICAgICAgICAgICAgICAg
ICAgICBzZXNzaW9uSUQgPSBtX3Nlc3Npb24uZ2V0KCkuY29udGVudFByb3RlY3Rpb25TZXNzaW9u
SWRlbnRpZmllcjsKICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbklkZW50aWZpZXJDaGFuZ2Vk
KHNlc3Npb25JRCk7CiAgICAgICAgICAgICAgICAgfQogCkBAIC0xNDE1LDEwICsxNDQ0LDEyIEBA
IHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9u
SWRlbnRpZmllckNoYW5nZWQoTlNEYXRhCiAgICAgICAgIG1fY2xpZW50LT5zZXNzaW9uSWRDaGFu
Z2VkKG1fc2Vzc2lvbklkKTsKIH0KIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVAp
CiB2b2lkIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Z3JvdXBT
ZXNzaW9uSWRlbnRpZmllckNoYW5nZWQoQVZDb250ZW50S2V5UmVwb3J0R3JvdXAqLCBOU0RhdGEg
KnNlc3Npb25JZGVudGlmaWVyKQogewogICAgIHNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChzZXNz
aW9uSWRlbnRpZmllcik7CiB9CisjZW5kaWYKIAogc3RhdGljIGF1dG8gcmVxdWVzdFN0YXR1c1Rv
Q0RNU3RhdHVzKEFWQ29udGVudEtleVJlcXVlc3RTdGF0dXMgc3RhdHVzKQogewpAQCAtMTUwNyw2
ICsxNTM4LDcgQEAgc3RkOjpvcHRpb25hbDxDRE1LZXlTdGF0dXM+IENETUluc3RhbmNlU2Vzc2lv
bkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6cHJvdGVjdGkKICAgICB9CiAjZW5kaWYKIAorI2lm
IEhBVkUoQVZDT05URU5US0VZU0VTU0lPTldJTExPVVRQVVRCRU9CU0NVUkVEKQogICAgIC8vIEZJ
WE1FOiBBVkZvdW5kYXRpb24gcmVxdWlyZXMgYSBjb25uZWN0aW9uIHRvIHRoZSBXaW5kb3dTZXJ2
ZXIgaW4gb3JkZXIgdG8gcXVlcnkgdGhlIEhEQ1Agc3RhdHVzIG9mIGluZGl2aWR1YWwKICAgICAv
LyBkaXNwbGF5cy4gUGFzc2luZyBpbiBhbiBlbXB0eSBOU0FycmF5IHdpbGwgY2F1c2UgQVZGb3Vu
ZGF0aW9uIHRvIGZhbGwgYmFjayB0byBhICJtaW5pbXVtIHN1cHBvcnRlZCBIRENQIGxldmVsIgog
ICAgIC8vIGFjcm9zcyBhbGwgZGlzcGxheXMuIFJlcGxhY2UgdGhlIGJlbG93IHdpdGggZXhwbGlj
aXQgQVBJcyB0byBxdWVyeSB0aGUgcGVyLWRpc3BsYXkgSERDUCBzdGF0dXMgaW4gdGhlIFVJUHJv
Y2VzcwpAQCAtMTUyNSw2ICsxNTU3LDcgQEAgc3RkOjpvcHRpb25hbDxDRE1LZXlTdGF0dXM+IENE
TUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6cHJvdGVjdGkKICAgICAg
ICAgQUxXQVlTX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVSLCAicmVxdWVzdCB7ICIsIGtl
eUlEc0ZvclJlcXVlc3QocmVxdWVzdCksICIgfSB3aWxsT3V0cHV0QmVPYnNjdXJlZC4uLmZvckRp
c3BsYXlzOlsgbmlsIF0gPSAiLCBvYnNjdXJlZCA/ICJ0cnVlIiA6ICJmYWxzZSIpOwogICAgICAg
ICByZXR1cm4gb2JzY3VyZWQgPyBDRE1LZXlTdGF0dXM6Ok91dHB1dFJlc3RyaWN0ZWQgOiBDRE1L
ZXlTdGF0dXM6OlVzYWJsZTsKICAgICB9CisjZW5kaWYKIAogICAgIC8vIE9ubHkgdXNlIHRoZSBu
b24tcmVxdWVzdC1zcGVjaWZpYyAib3V0cHV0T2JzY3VyZWREdWVUb0luc3VmZmljaWVudEV4dGVy
bmFsUHJvdGVjdGlvbiIgc3RhdHVzIGlmCiAgICAgLy8gQVZDb250ZW50S2V5UmVxdWVzdHMgZG8g
bm90IHN1cHBvcnQgdGhlIGZpbmVyIGdyYWluZWQgIi13aWxsT3V0cHV0QmVPYnNjdXJlZC4uLiIg
QVBJLgpAQCAtMTU0OCwxMyArMTU4MSwxOCBAQCB2b2lkIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQ
bGF5U3RyZWFtaW5nQVZGT2JqQzo6dXBkYXRlUHJvdGVjdGlvblN0YXR1c0ZvckRpc3BsYQogCiBi
b29sIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZW5zdXJlU2Vz
c2lvbk9yR3JvdXAoKQogewotICAgIGlmIChtX3Nlc3Npb24gfHwgbV9ncm91cCkKKyAgICBpZiAo
bV9zZXNzaW9uKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworI2lmIEhBVkUoQVZDT05URU5US0VZ
UkVQT1JUR1JPVVApCisgICAgaWYgKG1fZ3JvdXApCiAgICAgICAgIHJldHVybiB0cnVlOwogCiAg
ICAgaWYgKGF1dG8qIHNlc3Npb24gPSBtX2luc3RhbmNlLT5jb250ZW50S2V5U2Vzc2lvbigpKSB7
CiAgICAgICAgIG1fZ3JvdXAgPSBbc2Vzc2lvbiBtYWtlQ29udGVudEtleUdyb3VwXTsKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAgICAgfQorI2VuZGlmCiAKICAgICBhdXRvIHN0b3JhZ2VVUkwgPSBt
X2luc3RhbmNlLT5zdG9yYWdlVVJMKCk7CiAgICAgaWYgKCFtX2luc3RhbmNlLT5wZXJzaXN0ZW50
U3RhdGVBbGxvd2VkKCkgfHwgIXN0b3JhZ2VVUkwpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452528</attachid>
            <date>2022-02-18 09:33:14 -0800</date>
            <delta_ts>2022-02-18 09:48:30 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-236787-20220218093313.patch</filename>
            <type>text/plain</type>
            <size>14281</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMDM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWU2ZThhMTAyMmU2Nzg2
NTI4NjEzZGJlYzkzNDE1NDBiODRhMDg4MS4uNWRjMDdmZWE4MWUyZGJhMDFmYmU4Njc0Nzc2NDk4
YjhkMTJjODZjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIyLTAyLTE4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gTWFrZSBBVkZv
dW5kYXRpb25TUEkuaCByb2J1c3QgYWdhaW5zdCBjaGFuZ2VzIGluIHN5c3RlbSBoZWFkZXJzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3ODcKKyAg
ICAgICAgPHJkYXI6Ly84OTA3NjYwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxz
b24uCisKKyAgICAgICAgV3JhcCBjYWxsLXNpdGVzIGluICNpZiBIQVZFKCkgbWFjcm9zLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5j
ZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Y29udGVudEtleVNlc3Npb24pOgorICAgICAgICAo
V2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnNlc3Npb25Gb3JS
ZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlU2Vzc2lvbkZhaXJQ
bGF5U3RyZWFtaW5nQVZGT2JqQzo6cmVxdWVzdExpY2Vuc2UpOgorICAgICAgICAoV2ViQ29yZTo6
Q0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpyZW1vdmVTZXNzaW9u
RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVh
bWluZ0FWRk9iakM6OmRpZFByb3ZpZGVSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNETUlu
c3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6cHJvdGVjdGlvblN0YXR1c0Zv
ckRpc3BsYXlJRCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZVNlc3Npb25G
YWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmVuc3VyZVNlc3Npb25Pckdyb3VwKToKKwogMjAyMi0w
Mi0xNyAgTWF0dCBXb29kcm93ICA8bWF0dHdvb2Ryb3dAYXBwbGUuY29tPgogCiAgICAgICAgIEZp
eCBhYnMtcG9zIGJyZWFkdGggaXNzdWUgd2hlbiB1c2luZyAnYXV0bycKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CmluZGV4IDE5N2EwNjg2ZTc1MDZkNTJjZTBiN2M5YjY0MmJmYTQxNmEyZGM4YTMuLjIxNmUyZjgz
NDI0Nzg0ZjZmMmFkMTA0NWJmOTY0MTQ5YmExNWFiZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI2IEBACisyMDIyLTAyLTE4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29t
PgorCisgICAgICAgIFtDb2NvYV0gTWFrZSBBVkZvdW5kYXRpb25TUEkuaCByb2J1c3QgYWdhaW5z
dCBjaGFuZ2VzIGluIHN5c3RlbSBoZWFkZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3ODcKKyAgICAgICAgPHJkYXI6Ly84OTA3NjYwNj4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgRm9sbG93LXVwOiBi
dWlsZCBwcm9ibGVtcyBzdGlsbCBwZXJzaXN0IG9uIGNlcnRhaW4gcGxhdGZvcm1zLCBzbyB0aGUg
InJvYnVzdG5lc3MiCisgICAgICAgIGNoYW5nZXMgbWFkZSBwcmV2aW91c2x5IHdlcmUgbm90IHJv
YnVzdCBlbm91Z2guIFRoZSBndWFyZHMgaW4gQVZGb3VuZGF0aW9uU1BJLmggd2VyZQorICAgICAg
ICBpbnRlbmRlZCB0byBlbnN1cmUgdGhlIGRlZmluaXRpb25zIHdlcmUgcHJlc2VudCBldmVuIG9u
IGJ1aWxkcyB3aGVyZSB0aGUgb2ZmaWNpYWwgQVBJCisgICAgICAgIGlzIG5vdCBzdXBwb3J0ZWQu
IEhvd2V2ZXIsIGp1c3QgYmVjYXVzZSB0aGUgQVBJIGlzIG5vdCBzdXBwb3J0ZWQgZG9lcyBub3Qg
bWVhbiBpdCdzIG5vdAorICAgICAgICBwcmVzZW50LCB3aGljaCBsZWFkcyB0byBkdXBsaWNhdGUt
aW50ZXJmYWNlIGJ1aWxkIGVycm9ycy4KKworICAgICAgICBGaXggdGhlIEFWRm91bmRhdGlvblNQ
SS5oIHByYWdtYXMgdG8gb25seSBkZWZpbmUgdGhlIGNsYXNzZXMgYW5kIG1ldGhvZHMgd2hlcmUg
dGhvc2UKKyAgICAgICAgb2JqZWN0cyBhcmUgc3VwcG9ydGVkLCBhbmQgaW4gcGFyYWxsZWwsIHdy
YXAgaW1wbGVtZW50YXRpb25zIHdoaWNoIHVzZSB0aG9zZSBvYmplY3RzCisgICAgICAgIGluIHRo
b3NlIHNhbWUgZ3VhcmRzIChtYWtpbmcgdGhlc2UgY2hlY2tzIGNvbXBpbGUtdGltZSBpbiBhZGRp
dGlvbiB0byBydW50aW1lKS4KKworICAgICAgICBNb3ZlIHRoZSBkZWNsYXJhdGlvbnMgaW5zaWRl
IHRoZSAjZWxzZSAoSU9XLCAhVVNFKEFQUExFX0lOVEVSTkFMX1NESykpIGJsb2NrIGFib3ZlLAor
ICAgICAgICBhbmQgd3JhcCBlYWNoIGRlY2xhcmF0aW9uIGluIHRoZSBjb3JyZWN0IEhBVkUoKSBt
YWNyby4KKworICAgICAgICAqIHBhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmg6CisKIDIw
MjItMDItMTUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbV2ViR1BVXSBVcGRhdGUgSURMcyBhbmQgc3R1YnMgdG8gbGF0ZXN0IHZlcnNpb24gb2Yg
dGhlIHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FW
Rm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3Vu
ZGF0aW9uU1BJLmgKaW5kZXggYzJkZjZjYzBlMjNkYjBiNTNhZTk0MGFlMjllOGE2MmIwODMxYzRi
ZC4uYTkyODdkNTI1N2QwNDQ5YWI4OTc0MmNjMDlkNjA4YjFlMTljZWI1YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAgLTIy
MCwxMyArMjIwLDkgQEAgTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBlbmQKIE5TX0FTU1VNRV9O
T05OVUxMX0VORAogCi0jZW5kaWYgLy8gVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLQotI2ltcG9y
dCA8QVZGb3VuZGF0aW9uL0FWUGxheWVyTGF5ZXIuaD4KLQogI2lmIEhBVkUoQVZDT05URU5US0VZ
U0VTU0lPTikKIAotI2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShBVkNPTlRF
TlRLRVlSRVBPUlRHUk9VUCkKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogQGlu
dGVyZmFjZSBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCA6IE5TT2JqZWN0CiBAcHJvcGVydHkgKHJl
YWRvbmx5LCBudWxsYWJsZSkgTlNEYXRhICpjb250ZW50UHJvdGVjdGlvblNlc3Npb25JZGVudGlm
aWVyOwogLSAodm9pZClleHBpcmU7CkBAIC0yNDAsNyArMjM2LDcgQEAgTlNfQVNTVU1FX05PTk5V
TExfRU5ECiBAZW5kCiAjZW5kaWYKIAotI2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAh
SEFWRShBVkNPTlRFTlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCisjaWYgSEFWRShB
VkNPTlRFTlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCiBAaW50ZXJmYWNlIEFWQ29u
dGVudEtleVJlcXVlc3QgKE91dHB1dE9ic2N1cmVkKQogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4K
IC0gKEJPT0wpd2lsbE91dHB1dEJlT2JzY3VyZWREdWVUb0luc3VmZmljaWVudEV4dGVybmFsUHJv
dGVjdGlvbkZvckRpc3BsYXlzOihOU0FycmF5PE5TTnVtYmVyICo+ICopZGlzcGxheXM7CkBAIC0y
NDgsNyArMjQ0LDcgQEAgTlNfQVNTVU1FX05PTk5VTExfRU5ECiBAZW5kCiAjZW5kaWYKIAotI2lm
ICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShBVkNPTlRFTlRLRVlSRVFVRVNUX1BF
TkRJTkdfUFJPVEVDVElPTl9TVEFUVVMpCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVFVRVNUX1BF
TkRJTkdfUFJPVEVDVElPTl9TVEFUVVMpCiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBBVkV4
dGVybmFsQ29udGVudFByb3RlY3Rpb25TdGF0dXMpIHsKICAgICBBVkV4dGVybmFsQ29udGVudFBy
b3RlY3Rpb25TdGF0dXNQZW5kaW5nICAgICAgPSAwLAogICAgIEFWRXh0ZXJuYWxDb250ZW50UHJv
dGVjdGlvblN0YXR1c1N1ZmZpY2llbnQgICA9IDEsCkBAIC0yNjIsNiArMjU4LDEwIEBAIHR5cGVk
ZWYgTlNfRU5VTShOU0ludGVnZXIsIEFWRXh0ZXJuYWxDb250ZW50UHJvdGVjdGlvblN0YXR1cykg
ewogCiAjZW5kaWYgLy8gSEFWRShBVkNPTlRFTlRLRVlTRVNTSU9OKQogCisjZW5kaWYgLy8gVVNF
KEFQUExFX0lOVEVSTkFMX1NESykKKworI2ltcG9ydCA8QVZGb3VuZGF0aW9uL0FWUGxheWVyTGF5
ZXIuaD4KKwogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpICYmICFVU0UoQVBQTEVfSU5URVJOQUxf
U0RLKQogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBpbnRlcmZhY2UgQVZTdHJlYW1EYXRhUGFy
c2VyIChBVlN0cmVhbURhdGFQYXJzZXJQcml2YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxh
eVN0cmVhbWluZ0FWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbQpp
bmRleCA1ODAyNTFlMTEwMmRjYzMyY2EzYWQ5OTM0MzgzOGE3YTI5OTFmYzIwLi5iMGIzMjI5NjJk
ZWZlZjljNTAxNTIwMGIwNDY4MTU4OGM5NTllZThiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5
U3RyZWFtaW5nQVZGT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5t
bQpAQCAtNTAsNyArNTAsOSBAQAogI2ltcG9ydCA8cGFsL2NvY29hL0FWRm91bmRhdGlvblNvZnRM
aW5rLmg+CiAKIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IEluaXRpYWxpemF0aW9uRGF0YVR5cGVL
ZXkgPSBAIkluaXRpYWxpemF0aW9uRGF0YVR5cGUiOworI2lmIEhBVkUoQVZDT05URU5US0VZUkVQ
T1JUR1JPVVApCiBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBDb250ZW50S2V5UmVwb3J0R3JvdXBL
ZXkgPSBAIkNvbnRlbnRLZXlSZXBvcnRHcm91cCI7CisjZW5kaWYKIHN0YXRpYyBjb25zdCBOU0lu
dGVnZXIgU2VjdXJpdHlMZXZlbEVycm9yID0gLTQyODExOwogCiBAaW50ZXJmYWNlIFdlYkNvcmVG
UFNDb250ZW50S2V5U2Vzc2lvbkRlbGVnYXRlIDogTlNPYmplY3Q8QVZDb250ZW50S2V5U2Vzc2lv
bkRlbGVnYXRlPiB7CkBAIC0xNDYsNiArMTQ4LDcgQEAgLSAodm9pZCljb250ZW50S2V5U2Vzc2lv
bkNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXJEaWRDaGFuZ2U6KEFWQ29udGVudEsK
ICAgICAgICAgX3BhcmVudC0+c2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKHNlc3Npb24uY29udGVu
dFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmllcik7CiB9CiAKKyNpZiBIQVZFKEFWQ09OVEVOVEtF
WVJFUE9SVEdST1VQKQogLSAodm9pZCljb250ZW50S2V5U2Vzc2lvbjooQVZDb250ZW50S2V5U2Vz
c2lvbiAqKXNlc3Npb24gY29udGVudFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmllckRpZENoYW5n
ZUZvcktleUdyb3VwOihudWxsYWJsZSBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCAqKXJlcG9ydEdy
b3VwCiB7CiAgICAgLy8gRklYTUU6IFJlbW92ZSBhZnRlciByZGFyOi8vNTc0MzA3NDcgaXMgZml4
ZWQKQEAgLTE1OCw2ICsxNjEsNyBAQCAtICh2b2lkKWNvbnRlbnRLZXlTZXNzaW9uOihBVkNvbnRl
bnRLZXlTZXNzaW9uICopc2Vzc2lvbiBjb250ZW50UHJvdGVjdGlvblNlc3NpbwogICAgIGlmIChf
cGFyZW50KQogICAgICAgICBfcGFyZW50LT5ncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChy
ZXBvcnRHcm91cCwgcmVwb3J0R3JvdXAuY29udGVudFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmll
cik7CiB9CisjZW5kaWYKIAogLSAodm9pZCljb250ZW50S2V5U2Vzc2lvbjooQVZDb250ZW50S2V5
U2Vzc2lvbiAqKXNlc3Npb24gZXh0ZXJuYWxQcm90ZWN0aW9uU3RhdHVzRGlkQ2hhbmdlRm9yQ29u
dGVudEtleVJlcXVlc3Q6KEFWQ29udGVudEtleVJlcXVlc3QgKilrZXlSZXF1ZXN0CiB7CkBAIC0y
NDcsOCArMjUxLDEwIEBAIEFWQ29udGVudEtleVNlc3Npb24qIENETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDOjpjb250ZW50S2V5U2Vzc2lvbigpCiAgICAgaWYgKCFQQUw6OmNhbkxv
YWRfQVZGb3VuZGF0aW9uX0FWQ29udGVudEtleVN5c3RlbUZhaXJQbGF5U3RyZWFtaW5nKCkpCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9V
UCkKICAgICBpZiAoIVBBTDo6Z2V0QVZDb250ZW50S2V5UmVwb3J0R3JvdXBDbGFzcygpKQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKyNlbmRpZgogCiAgICAgYXV0byBzdG9yYWdlVVJMID0gdGhp
cy0+c3RvcmFnZVVSTCgpOwogICAgIGlmICghcGVyc2lzdGVudFN0YXRlQWxsb3dlZCgpIHx8ICFz
dG9yYWdlVVJMKQpAQCAtNDQwLDYgKzQ0Niw3IEBAIGNvbnN0IFN0cmluZyYgQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmtleVN5c3RlbSgpIGNvbnN0CiAgICAgcmV0dXJuIGtl
eVN5c3RlbTsKIH0KIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiBzdGF0aWMg
QVZDb250ZW50S2V5UmVwb3J0R3JvdXAqIGdyb3VwRm9yUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1
ZXN0KiByZXF1ZXN0KQogewogICAgIEFTU0VSVChbcmVxdWVzdCByZXNwb25kc1RvU2VsZWN0b3I6
QHNlbGVjdG9yKG9wdGlvbnMpXSk7CkBAIC00NDgsNiArNDU1LDcgQEAgc3RhdGljIEFWQ29udGVu
dEtleVJlcG9ydEdyb3VwKiBncm91cEZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVx
dWVzdCkKICAgICBBTExPV19ORVdfQVBJX1dJVEhPVVRfR1VBUkRTX0VORAogICAgIHJldHVybiBn
cm91cDsKIH0KKyNlbmRpZgogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZP
YmpDOjpkaWRQcm92aWRlUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1ZXN0ICpyZXF1ZXN0KQogewpA
QCAtNTQ0LDYgKzU1Miw3IEBAIHZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9i
akM6OnNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChOU0RhdGEgKikKIAogdm9pZCBDRE1JbnN0YW5j
ZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Z3JvdXBTZXNzaW9uSWRlbnRpZmllckNoYW5nZWQo
QVZDb250ZW50S2V5UmVwb3J0R3JvdXAqIGdyb3VwLCBOU0RhdGEgKnNlc3Npb25JZGVudGlmaWVy
KQogeworI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiAgICAgaWYgKGdyb3VwID09
IFttX3Nlc3Npb24gZGVmYXVsdENvbnRlbnRLZXlHcm91cF0pIHsKICAgICAgICAgSU5GT19MT0df
SUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIi0gZGVmYXVsdCB1bnVzZWQgZ3JvdXAgaWRlbnRp
ZmllciBjaGFuZ2VkOyBkcm9wcGluZyIpOwogICAgICAgICByZXR1cm47CkBAIC01NTYsNiArNTY1
LDEwIEBAIHZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6Omdyb3VwU2Vz
c2lvbklkZW50aWZpZXJDaGFuZ2VkKEFWQ29udGVuCiAKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKICAgICBFUlJPUl9MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIi0gbm8gcmVzcG9u
c2libGUgc2Vzc2lvbjsgZHJvcHBpbmciKTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGdyb3Vw
KTsKKyAgICBVTlVTRURfUEFSQU0oc2Vzc2lvbklkZW50aWZpZXIpOworI2VuZGlmCiB9CiAKIHZv
aWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6Om91dHB1dE9ic2N1cmVkRHVl
VG9JbnN1ZmZpY2llbnRFeHRlcm5hbFByb3RlY3Rpb25DaGFuZ2VkKGJvb2wgb2JzY3VyZWQpCkBA
IC02MDMsOSArNjE2LDE0IEBAIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZG
T2JqQyogQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6CiAgICAgaWYgKGluZGV4
ICE9IG5vdEZvdW5kKQogICAgICAgICByZXR1cm4gbV9zZXNzaW9uc1tpbmRleF0uZ2V0KCk7CiAK
KyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogICAgIHJldHVybiBzZXNzaW9uRm9y
R3JvdXAoZ3JvdXBGb3JSZXF1ZXN0KHJlcXVlc3QpKTsKKyNlbHNlCisgICAgcmV0dXJuIG51bGxw
dHI7CisjZW5kaWYKIH0KIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiBDRE1J
bnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIENETUluc3RhbmNlRmFpclBs
YXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uRm9yR3JvdXAoQVZDb250ZW50S2V5UmVwb3J0R3Jv
dXAqIGdyb3VwKSBjb25zdAogewogICAgIGF1dG8gaW5kZXggPSBtX3Nlc3Npb25zLmZpbmRJZihb
Z3JvdXBdIChhdXRvIHNlc3Npb24pIHsKQEAgLTYxNiw2ICs2MzQsNyBAQCBDRE1JbnN0YW5jZVNl
c3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1p
bmdBVkZPYmpDOgogICAgICAgICByZXR1cm4gbV9zZXNzaW9uc1tpbmRleF0uZ2V0KCk7CiAgICAg
cmV0dXJuIG51bGxwdHI7CiB9CisjZW5kaWYKIAogYm9vbCBDRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQzo6aXNBbnlLZXlVc2FibGUoY29uc3QgS2V5cyYga2V5cykgY29uc3QKIHsK
QEAgLTcyNSwxMSArNzQ0LDEzIEBAIHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDOjpyZXF1ZXN0TGljZW5zZShMaWNlbnNlVHlwZSBsaWNlCiAKICAgICBpZiAo
YXV0byB1bmV4cGVjdGVkUmVxdWVzdCA9IG1faW5zdGFuY2UtPnRha2VVbmV4cGVjdGVkS2V5UmVx
dWVzdEZvckluaXRpYWxpemF0aW9uRGF0YShpbml0RGF0YVR5cGUsIGluaXREYXRhKSkgewogICAg
ICAgICBERUJVR19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIiBmb3VuZCB1bmV4cGVj
dGVkUmVxdWVzdCBtYXRjaGluZyBpbml0RGF0YSIpOworI2lmIEhBVkUoQVZDT05URU5US0VZUkVQ
T1JUR1JPVVApCiAgICAgICAgIGlmIChtX2dyb3VwKSB7CiAgICAgICAgICAgICBBTExPV19ORVdf
QVBJX1dJVEhPVVRfR1VBUkRTX0JFR0lOCiAgICAgICAgICAgICBbbV9ncm91cCBhc3NvY2lhdGVD
b250ZW50S2V5UmVxdWVzdDp1bmV4cGVjdGVkUmVxdWVzdC5nZXQoKV07CiAgICAgICAgICAgICBB
TExPV19ORVdfQVBJX1dJVEhPVVRfR1VBUkRTX0VORAogICAgICAgICB9CisjZW5kaWYKICAgICAg
ICAgbV9yZXF1ZXN0TGljZW5zZUNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayk7CiAgICAgICAg
IGRpZFByb3ZpZGVSZXF1ZXN0KHVuZXhwZWN0ZWRSZXF1ZXN0LmdldCgpKTsKICAgICAgICAgcmV0
dXJuOwpAQCAtNzU3LDEzICs3NzgsMTYgQEAgdm9pZCBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxh
eVN0cmVhbWluZ0FWRk9iakM6OnJlcXVlc3RMaWNlbnNlKExpY2Vuc2VUeXBlIGxpY2UKICAgICBE
RUJVR19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIiBwcm9jZXNzaW5nIHJlcXVlc3Qi
KTsKICAgICBtX3JlcXVlc3RMaWNlbnNlQ2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKTsKIAor
I2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiAgICAgaWYgKG1fZ3JvdXApIHsKICAg
ICAgICAgYXV0byogb3B0aW9ucyA9IEB7IENvbnRlbnRLZXlSZXBvcnRHcm91cEtleTogbV9ncm91
cC5nZXQoKSwgSW5pdGlhbGl6YXRpb25EYXRhVHlwZUtleTogKE5TU3RyaW5nKilpbml0RGF0YVR5
cGUgfTsKICAgICAgICAgW21fZ3JvdXAgcHJvY2Vzc0NvbnRlbnRLZXlSZXF1ZXN0V2l0aElkZW50
aWZpZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXphdGlvbkRhdGE6aW5pdGlhbGl6YXRpb25E
YXRhLmdldCgpIG9wdGlvbnM6b3B0aW9uc107Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgYXV0byog
b3B0aW9ucyA9IEB7IEluaXRpYWxpemF0aW9uRGF0YVR5cGVLZXk6IChOU1N0cmluZyopaW5pdERh
dGFUeXBlIH07Ci0gICAgICAgIFttX3Nlc3Npb24gcHJvY2Vzc0NvbnRlbnRLZXlSZXF1ZXN0V2l0
aElkZW50aWZpZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXphdGlvbkRhdGE6aW5pdGlhbGl6
YXRpb25EYXRhLmdldCgpIG9wdGlvbnM6b3B0aW9uc107CisgICAgICAgIHJldHVybjsKICAgICB9
CisjZW5kaWYKKworICAgIGF1dG8qIG9wdGlvbnMgPSBAeyBJbml0aWFsaXphdGlvbkRhdGFUeXBl
S2V5OiAoTlNTdHJpbmcqKWluaXREYXRhVHlwZSB9OworICAgIFttX3Nlc3Npb24gcHJvY2Vzc0Nv
bnRlbnRLZXlSZXF1ZXN0V2l0aElkZW50aWZpZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXph
dGlvbkRhdGE6aW5pdGlhbGl6YXRpb25EYXRhLmdldCgpIG9wdGlvbnM6b3B0aW9uc107CiB9CiAK
IHN0YXRpYyBib29sIGlzRXF1YWwoY29uc3QgRnJhZ21lbnRlZFNoYXJlZEJ1ZmZlciYgZGF0YSwg
Y29uc3QgU3RyaW5nJiB2YWx1ZSkKQEAgLTEwMTEsOSArMTAzNSwxMSBAQCB2b2lkIENETUluc3Rh
bmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Y2xvc2VTZXNzaW9uKGNvbnN0IFN0
cmluZyYsIENsbwogCiB2b2lkIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZG
T2JqQzo6cmVtb3ZlU2Vzc2lvbkRhdGEoY29uc3QgU3RyaW5nJiBzZXNzaW9uSWQsIExpY2Vuc2VU
eXBlIGxpY2Vuc2VUeXBlLCBSZW1vdmVTZXNzaW9uRGF0YUNhbGxiYWNrJiYgY2FsbGJhY2spCiB7
CisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKICAgICBpZiAobV9ncm91cCkKICAg
ICAgICAgW21fZ3JvdXAgZXhwaXJlXTsKICAgICBlbHNlCisjZW5kaWYKICAgICAgICAgW21fc2Vz
c2lvbiBleHBpcmVdOwogCiAgICAgaWYgKGxpY2Vuc2VUeXBlID09IExpY2Vuc2VUeXBlOjpQZXJz
aXN0ZW50VXNhZ2VSZWNvcmQpIHsKQEAgLTExMzIsNyArMTE1OCwxMyBAQCB2b2lkIENETUluc3Rh
bmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QoQVZD
b250ZW50S2V5UgogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgICAgICAg
ICBpZiAobV9zZXNzaW9uSWQuaXNFbXB0eSgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGF1dG8g
c2Vzc2lvbklEID0gbV9ncm91cCA/IG1fZ3JvdXAuZ2V0KCkuY29udGVudFByb3RlY3Rpb25TZXNz
aW9uSWRlbnRpZmllciA6IG1fc2Vzc2lvbi5nZXQoKS5jb250ZW50UHJvdGVjdGlvblNlc3Npb25J
ZGVudGlmaWVyOworICAgICAgICAgICAgICAgICAgICBOU0RhdGEgKnNlc3Npb25JRCA9IG51bGxw
dHI7CisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKG1fZ3JvdXApCisgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uSUQgPSBtX2dy
b3VwLmdldCgpLmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXI7CisgICAgICAgICAg
ICAgICAgICAgIGVsc2UKKyNlbmRpZgorICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbklE
ID0gbV9zZXNzaW9uLmdldCgpLmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXI7CiAg
ICAgICAgICAgICAgICAgICAgIHNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChzZXNzaW9uSUQpOwog
ICAgICAgICAgICAgICAgIH0KIApAQCAtMTQxNyw3ICsxNDQ5LDEyIEBAIHZvaWQgQ0RNSW5zdGFu
Y2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uSWRlbnRpZmllckNoYW5n
ZWQoTlNEYXRhCiAKIHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZP
YmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRlbnRLZXlSZXBvcnRHcm91
cCosIE5TRGF0YSAqc2Vzc2lvbklkZW50aWZpZXIpCiB7CisjaWYgSEFWRShBVkNPTlRFTlRLRVlS
RVBPUlRHUk9VUCkKICAgICBzZXNzaW9uSWRlbnRpZmllckNoYW5nZWQoc2Vzc2lvbklkZW50aWZp
ZXIpOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZ3JvdXApOworICAgIFVOVVNFRF9QQVJBTShz
ZXNzaW9uSWRlbnRpZmllcik7CisjZW5kaWYKIH0KIAogc3RhdGljIGF1dG8gcmVxdWVzdFN0YXR1
c1RvQ0RNU3RhdHVzKEFWQ29udGVudEtleVJlcXVlc3RTdGF0dXMgc3RhdHVzKQpAQCAtMTUwNyw2
ICsxNTQ0LDcgQEAgc3RkOjpvcHRpb25hbDxDRE1LZXlTdGF0dXM+IENETUluc3RhbmNlU2Vzc2lv
bkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6cHJvdGVjdGkKICAgICB9CiAjZW5kaWYKIAorI2lm
IEhBVkUoQVZDT05URU5US0VZU0VTU0lPTldJTExPVVRQVVRCRU9CU0NVUkVEKQogICAgIC8vIEZJ
WE1FOiBBVkZvdW5kYXRpb24gcmVxdWlyZXMgYSBjb25uZWN0aW9uIHRvIHRoZSBXaW5kb3dTZXJ2
ZXIgaW4gb3JkZXIgdG8gcXVlcnkgdGhlIEhEQ1Agc3RhdHVzIG9mIGluZGl2aWR1YWwKICAgICAv
LyBkaXNwbGF5cy4gUGFzc2luZyBpbiBhbiBlbXB0eSBOU0FycmF5IHdpbGwgY2F1c2UgQVZGb3Vu
ZGF0aW9uIHRvIGZhbGwgYmFjayB0byBhICJtaW5pbXVtIHN1cHBvcnRlZCBIRENQIGxldmVsIgog
ICAgIC8vIGFjcm9zcyBhbGwgZGlzcGxheXMuIFJlcGxhY2UgdGhlIGJlbG93IHdpdGggZXhwbGlj
aXQgQVBJcyB0byBxdWVyeSB0aGUgcGVyLWRpc3BsYXkgSERDUCBzdGF0dXMgaW4gdGhlIFVJUHJv
Y2VzcwpAQCAtMTUyNSw2ICsxNTYzLDcgQEAgc3RkOjpvcHRpb25hbDxDRE1LZXlTdGF0dXM+IENE
TUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6cHJvdGVjdGkKICAgICAg
ICAgQUxXQVlTX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVSLCAicmVxdWVzdCB7ICIsIGtl
eUlEc0ZvclJlcXVlc3QocmVxdWVzdCksICIgfSB3aWxsT3V0cHV0QmVPYnNjdXJlZC4uLmZvckRp
c3BsYXlzOlsgbmlsIF0gPSAiLCBvYnNjdXJlZCA/ICJ0cnVlIiA6ICJmYWxzZSIpOwogICAgICAg
ICByZXR1cm4gb2JzY3VyZWQgPyBDRE1LZXlTdGF0dXM6Ok91dHB1dFJlc3RyaWN0ZWQgOiBDRE1L
ZXlTdGF0dXM6OlVzYWJsZTsKICAgICB9CisjZW5kaWYKIAogICAgIC8vIE9ubHkgdXNlIHRoZSBu
b24tcmVxdWVzdC1zcGVjaWZpYyAib3V0cHV0T2JzY3VyZWREdWVUb0luc3VmZmljaWVudEV4dGVy
bmFsUHJvdGVjdGlvbiIgc3RhdHVzIGlmCiAgICAgLy8gQVZDb250ZW50S2V5UmVxdWVzdHMgZG8g
bm90IHN1cHBvcnQgdGhlIGZpbmVyIGdyYWluZWQgIi13aWxsT3V0cHV0QmVPYnNjdXJlZC4uLiIg
QVBJLgpAQCAtMTU0OCwxMyArMTU4NywxOCBAQCB2b2lkIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQ
bGF5U3RyZWFtaW5nQVZGT2JqQzo6dXBkYXRlUHJvdGVjdGlvblN0YXR1c0ZvckRpc3BsYQogCiBi
b29sIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZW5zdXJlU2Vz
c2lvbk9yR3JvdXAoKQogewotICAgIGlmIChtX3Nlc3Npb24gfHwgbV9ncm91cCkKKyAgICBpZiAo
bV9zZXNzaW9uKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworI2lmIEhBVkUoQVZDT05URU5US0VZ
UkVQT1JUR1JPVVApCisgICAgaWYgKG1fZ3JvdXApCiAgICAgICAgIHJldHVybiB0cnVlOwogCiAg
ICAgaWYgKGF1dG8qIHNlc3Npb24gPSBtX2luc3RhbmNlLT5jb250ZW50S2V5U2Vzc2lvbigpKSB7
CiAgICAgICAgIG1fZ3JvdXAgPSBbc2Vzc2lvbiBtYWtlQ29udGVudEtleUdyb3VwXTsKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAgICAgfQorI2VuZGlmCiAKICAgICBhdXRvIHN0b3JhZ2VVUkwgPSBt
X2luc3RhbmNlLT5zdG9yYWdlVVJMKCk7CiAgICAgaWYgKCFtX2luc3RhbmNlLT5wZXJzaXN0ZW50
U3RhdGVBbGxvd2VkKCkgfHwgIXN0b3JhZ2VVUkwpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452531</attachid>
            <date>2022-02-18 09:48:33 -0800</date>
            <delta_ts>2022-02-18 12:31:28 -0800</delta_ts>
            <desc>[fast-cq] Patch for landing</desc>
            <filename>bug-236787-20220218094833.patch</filename>
            <type>text/plain</type>
            <size>14255</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMDM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWU2ZThhMTAyMmU2Nzg2
NTI4NjEzZGJlYzkzNDE1NDBiODRhMDg4MS4uNWRjMDdmZWE4MWUyZGJhMDFmYmU4Njc0Nzc2NDk4
YjhkMTJjODZjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIyLTAyLTE4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gTWFrZSBBVkZv
dW5kYXRpb25TUEkuaCByb2J1c3QgYWdhaW5zdCBjaGFuZ2VzIGluIHN5c3RlbSBoZWFkZXJzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3ODcKKyAg
ICAgICAgPHJkYXI6Ly84OTA3NjYwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxz
b24uCisKKyAgICAgICAgV3JhcCBjYWxsLXNpdGVzIGluICNpZiBIQVZFKCkgbWFjcm9zLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5j
ZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Y29udGVudEtleVNlc3Npb24pOgorICAgICAgICAo
V2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnNlc3Npb25Gb3JS
ZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlU2Vzc2lvbkZhaXJQ
bGF5U3RyZWFtaW5nQVZGT2JqQzo6cmVxdWVzdExpY2Vuc2UpOgorICAgICAgICAoV2ViQ29yZTo6
Q0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpyZW1vdmVTZXNzaW9u
RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVh
bWluZ0FWRk9iakM6OmRpZFByb3ZpZGVSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNETUlu
c3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6cHJvdGVjdGlvblN0YXR1c0Zv
ckRpc3BsYXlJRCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZVNlc3Npb25G
YWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmVuc3VyZVNlc3Npb25Pckdyb3VwKToKKwogMjAyMi0w
Mi0xNyAgTWF0dCBXb29kcm93ICA8bWF0dHdvb2Ryb3dAYXBwbGUuY29tPgogCiAgICAgICAgIEZp
eCBhYnMtcG9zIGJyZWFkdGggaXNzdWUgd2hlbiB1c2luZyAnYXV0bycKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CmluZGV4IDE5N2EwNjg2ZTc1MDZkNTJjZTBiN2M5YjY0MmJmYTQxNmEyZGM4YTMuLjIxNmUyZjgz
NDI0Nzg0ZjZmMmFkMTA0NWJmOTY0MTQ5YmExNWFiZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI2IEBACisyMDIyLTAyLTE4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29t
PgorCisgICAgICAgIFtDb2NvYV0gTWFrZSBBVkZvdW5kYXRpb25TUEkuaCByb2J1c3QgYWdhaW5z
dCBjaGFuZ2VzIGluIHN5c3RlbSBoZWFkZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzY3ODcKKyAgICAgICAgPHJkYXI6Ly84OTA3NjYwNj4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgRm9sbG93LXVwOiBi
dWlsZCBwcm9ibGVtcyBzdGlsbCBwZXJzaXN0IG9uIGNlcnRhaW4gcGxhdGZvcm1zLCBzbyB0aGUg
InJvYnVzdG5lc3MiCisgICAgICAgIGNoYW5nZXMgbWFkZSBwcmV2aW91c2x5IHdlcmUgbm90IHJv
YnVzdCBlbm91Z2guIFRoZSBndWFyZHMgaW4gQVZGb3VuZGF0aW9uU1BJLmggd2VyZQorICAgICAg
ICBpbnRlbmRlZCB0byBlbnN1cmUgdGhlIGRlZmluaXRpb25zIHdlcmUgcHJlc2VudCBldmVuIG9u
IGJ1aWxkcyB3aGVyZSB0aGUgb2ZmaWNpYWwgQVBJCisgICAgICAgIGlzIG5vdCBzdXBwb3J0ZWQu
IEhvd2V2ZXIsIGp1c3QgYmVjYXVzZSB0aGUgQVBJIGlzIG5vdCBzdXBwb3J0ZWQgZG9lcyBub3Qg
bWVhbiBpdCdzIG5vdAorICAgICAgICBwcmVzZW50LCB3aGljaCBsZWFkcyB0byBkdXBsaWNhdGUt
aW50ZXJmYWNlIGJ1aWxkIGVycm9ycy4KKworICAgICAgICBGaXggdGhlIEFWRm91bmRhdGlvblNQ
SS5oIHByYWdtYXMgdG8gb25seSBkZWZpbmUgdGhlIGNsYXNzZXMgYW5kIG1ldGhvZHMgd2hlcmUg
dGhvc2UKKyAgICAgICAgb2JqZWN0cyBhcmUgc3VwcG9ydGVkLCBhbmQgaW4gcGFyYWxsZWwsIHdy
YXAgaW1wbGVtZW50YXRpb25zIHdoaWNoIHVzZSB0aG9zZSBvYmplY3RzCisgICAgICAgIGluIHRo
b3NlIHNhbWUgZ3VhcmRzIChtYWtpbmcgdGhlc2UgY2hlY2tzIGNvbXBpbGUtdGltZSBpbiBhZGRp
dGlvbiB0byBydW50aW1lKS4KKworICAgICAgICBNb3ZlIHRoZSBkZWNsYXJhdGlvbnMgaW5zaWRl
IHRoZSAjZWxzZSAoSU9XLCAhVVNFKEFQUExFX0lOVEVSTkFMX1NESykpIGJsb2NrIGFib3ZlLAor
ICAgICAgICBhbmQgd3JhcCBlYWNoIGRlY2xhcmF0aW9uIGluIHRoZSBjb3JyZWN0IEhBVkUoKSBt
YWNyby4KKworICAgICAgICAqIHBhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmg6CisKIDIw
MjItMDItMTUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbV2ViR1BVXSBVcGRhdGUgSURMcyBhbmQgc3R1YnMgdG8gbGF0ZXN0IHZlcnNpb24gb2Yg
dGhlIHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FW
Rm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3Vu
ZGF0aW9uU1BJLmgKaW5kZXggYzJkZjZjYzBlMjNkYjBiNTNhZTk0MGFlMjllOGE2MmIwODMxYzRi
ZC4uYTkyODdkNTI1N2QwNDQ5YWI4OTc0MmNjMDlkNjA4YjFlMTljZWI1YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAgLTIy
MCwxMyArMjIwLDkgQEAgTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBlbmQKIE5TX0FTU1VNRV9O
T05OVUxMX0VORAogCi0jZW5kaWYgLy8gVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLQotI2ltcG9y
dCA8QVZGb3VuZGF0aW9uL0FWUGxheWVyTGF5ZXIuaD4KLQogI2lmIEhBVkUoQVZDT05URU5US0VZ
U0VTU0lPTikKIAotI2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShBVkNPTlRF
TlRLRVlSRVBPUlRHUk9VUCkKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogQGlu
dGVyZmFjZSBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCA6IE5TT2JqZWN0CiBAcHJvcGVydHkgKHJl
YWRvbmx5LCBudWxsYWJsZSkgTlNEYXRhICpjb250ZW50UHJvdGVjdGlvblNlc3Npb25JZGVudGlm
aWVyOwogLSAodm9pZClleHBpcmU7CkBAIC0yNDAsNyArMjM2LDcgQEAgTlNfQVNTVU1FX05PTk5V
TExfRU5ECiBAZW5kCiAjZW5kaWYKIAotI2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAh
SEFWRShBVkNPTlRFTlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCisjaWYgSEFWRShB
VkNPTlRFTlRLRVlTRVNTSU9OV0lMTE9VVFBVVEJFT0JTQ1VSRUQpCiBAaW50ZXJmYWNlIEFWQ29u
dGVudEtleVJlcXVlc3QgKE91dHB1dE9ic2N1cmVkKQogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4K
IC0gKEJPT0wpd2lsbE91dHB1dEJlT2JzY3VyZWREdWVUb0luc3VmZmljaWVudEV4dGVybmFsUHJv
dGVjdGlvbkZvckRpc3BsYXlzOihOU0FycmF5PE5TTnVtYmVyICo+ICopZGlzcGxheXM7CkBAIC0y
NDgsNyArMjQ0LDcgQEAgTlNfQVNTVU1FX05PTk5VTExfRU5ECiBAZW5kCiAjZW5kaWYKIAotI2lm
ICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSB8fCAhSEFWRShBVkNPTlRFTlRLRVlSRVFVRVNUX1BF
TkRJTkdfUFJPVEVDVElPTl9TVEFUVVMpCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVFVRVNUX1BF
TkRJTkdfUFJPVEVDVElPTl9TVEFUVVMpCiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBBVkV4
dGVybmFsQ29udGVudFByb3RlY3Rpb25TdGF0dXMpIHsKICAgICBBVkV4dGVybmFsQ29udGVudFBy
b3RlY3Rpb25TdGF0dXNQZW5kaW5nICAgICAgPSAwLAogICAgIEFWRXh0ZXJuYWxDb250ZW50UHJv
dGVjdGlvblN0YXR1c1N1ZmZpY2llbnQgICA9IDEsCkBAIC0yNjIsNiArMjU4LDEwIEBAIHR5cGVk
ZWYgTlNfRU5VTShOU0ludGVnZXIsIEFWRXh0ZXJuYWxDb250ZW50UHJvdGVjdGlvblN0YXR1cykg
ewogCiAjZW5kaWYgLy8gSEFWRShBVkNPTlRFTlRLRVlTRVNTSU9OKQogCisjZW5kaWYgLy8gVVNF
KEFQUExFX0lOVEVSTkFMX1NESykKKworI2ltcG9ydCA8QVZGb3VuZGF0aW9uL0FWUGxheWVyTGF5
ZXIuaD4KKwogI2lmIEVOQUJMRShNRURJQV9TT1VSQ0UpICYmICFVU0UoQVBQTEVfSU5URVJOQUxf
U0RLKQogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBpbnRlcmZhY2UgQVZTdHJlYW1EYXRhUGFy
c2VyIChBVlN0cmVhbURhdGFQYXJzZXJQcml2YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxh
eVN0cmVhbWluZ0FWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbQpp
bmRleCA1ODAyNTFlMTEwMmRjYzMyY2EzYWQ5OTM0MzgzOGE3YTI5OTFmYzIwLi5lODQwZmM3MjEw
MmE5MzEwMmYzY2QxNmY2NzdiOGI1ZTJjOTc4ODllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5
U3RyZWFtaW5nQVZGT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5t
bQpAQCAtNTAsNyArNTAsOSBAQAogI2ltcG9ydCA8cGFsL2NvY29hL0FWRm91bmRhdGlvblNvZnRM
aW5rLmg+CiAKIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IEluaXRpYWxpemF0aW9uRGF0YVR5cGVL
ZXkgPSBAIkluaXRpYWxpemF0aW9uRGF0YVR5cGUiOworI2lmIEhBVkUoQVZDT05URU5US0VZUkVQ
T1JUR1JPVVApCiBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBDb250ZW50S2V5UmVwb3J0R3JvdXBL
ZXkgPSBAIkNvbnRlbnRLZXlSZXBvcnRHcm91cCI7CisjZW5kaWYKIHN0YXRpYyBjb25zdCBOU0lu
dGVnZXIgU2VjdXJpdHlMZXZlbEVycm9yID0gLTQyODExOwogCiBAaW50ZXJmYWNlIFdlYkNvcmVG
UFNDb250ZW50S2V5U2Vzc2lvbkRlbGVnYXRlIDogTlNPYmplY3Q8QVZDb250ZW50S2V5U2Vzc2lv
bkRlbGVnYXRlPiB7CkBAIC0xNDYsNiArMTQ4LDcgQEAgLSAodm9pZCljb250ZW50S2V5U2Vzc2lv
bkNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXJEaWRDaGFuZ2U6KEFWQ29udGVudEsK
ICAgICAgICAgX3BhcmVudC0+c2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKHNlc3Npb24uY29udGVu
dFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmllcik7CiB9CiAKKyNpZiBIQVZFKEFWQ09OVEVOVEtF
WVJFUE9SVEdST1VQKQogLSAodm9pZCljb250ZW50S2V5U2Vzc2lvbjooQVZDb250ZW50S2V5U2Vz
c2lvbiAqKXNlc3Npb24gY29udGVudFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmllckRpZENoYW5n
ZUZvcktleUdyb3VwOihudWxsYWJsZSBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCAqKXJlcG9ydEdy
b3VwCiB7CiAgICAgLy8gRklYTUU6IFJlbW92ZSBhZnRlciByZGFyOi8vNTc0MzA3NDcgaXMgZml4
ZWQKQEAgLTE1OCw2ICsxNjEsNyBAQCAtICh2b2lkKWNvbnRlbnRLZXlTZXNzaW9uOihBVkNvbnRl
bnRLZXlTZXNzaW9uICopc2Vzc2lvbiBjb250ZW50UHJvdGVjdGlvblNlc3NpbwogICAgIGlmIChf
cGFyZW50KQogICAgICAgICBfcGFyZW50LT5ncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChy
ZXBvcnRHcm91cCwgcmVwb3J0R3JvdXAuY29udGVudFByb3RlY3Rpb25TZXNzaW9uSWRlbnRpZmll
cik7CiB9CisjZW5kaWYKIAogLSAodm9pZCljb250ZW50S2V5U2Vzc2lvbjooQVZDb250ZW50S2V5
U2Vzc2lvbiAqKXNlc3Npb24gZXh0ZXJuYWxQcm90ZWN0aW9uU3RhdHVzRGlkQ2hhbmdlRm9yQ29u
dGVudEtleVJlcXVlc3Q6KEFWQ29udGVudEtleVJlcXVlc3QgKilrZXlSZXF1ZXN0CiB7CkBAIC0y
NDcsOCArMjUxLDEwIEBAIEFWQ29udGVudEtleVNlc3Npb24qIENETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDOjpjb250ZW50S2V5U2Vzc2lvbigpCiAgICAgaWYgKCFQQUw6OmNhbkxv
YWRfQVZGb3VuZGF0aW9uX0FWQ29udGVudEtleVN5c3RlbUZhaXJQbGF5U3RyZWFtaW5nKCkpCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9V
UCkKICAgICBpZiAoIVBBTDo6Z2V0QVZDb250ZW50S2V5UmVwb3J0R3JvdXBDbGFzcygpKQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKyNlbmRpZgogCiAgICAgYXV0byBzdG9yYWdlVVJMID0gdGhp
cy0+c3RvcmFnZVVSTCgpOwogICAgIGlmICghcGVyc2lzdGVudFN0YXRlQWxsb3dlZCgpIHx8ICFz
dG9yYWdlVVJMKQpAQCAtNDQwLDYgKzQ0Niw3IEBAIGNvbnN0IFN0cmluZyYgQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmtleVN5c3RlbSgpIGNvbnN0CiAgICAgcmV0dXJuIGtl
eVN5c3RlbTsKIH0KIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiBzdGF0aWMg
QVZDb250ZW50S2V5UmVwb3J0R3JvdXAqIGdyb3VwRm9yUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1
ZXN0KiByZXF1ZXN0KQogewogICAgIEFTU0VSVChbcmVxdWVzdCByZXNwb25kc1RvU2VsZWN0b3I6
QHNlbGVjdG9yKG9wdGlvbnMpXSk7CkBAIC00NDgsNiArNDU1LDcgQEAgc3RhdGljIEFWQ29udGVu
dEtleVJlcG9ydEdyb3VwKiBncm91cEZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVx
dWVzdCkKICAgICBBTExPV19ORVdfQVBJX1dJVEhPVVRfR1VBUkRTX0VORAogICAgIHJldHVybiBn
cm91cDsKIH0KKyNlbmRpZgogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZP
YmpDOjpkaWRQcm92aWRlUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1ZXN0ICpyZXF1ZXN0KQogewpA
QCAtNTQ0LDYgKzU1Miw3IEBAIHZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9i
akM6OnNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChOU0RhdGEgKikKIAogdm9pZCBDRE1JbnN0YW5j
ZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Z3JvdXBTZXNzaW9uSWRlbnRpZmllckNoYW5nZWQo
QVZDb250ZW50S2V5UmVwb3J0R3JvdXAqIGdyb3VwLCBOU0RhdGEgKnNlc3Npb25JZGVudGlmaWVy
KQogeworI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiAgICAgaWYgKGdyb3VwID09
IFttX3Nlc3Npb24gZGVmYXVsdENvbnRlbnRLZXlHcm91cF0pIHsKICAgICAgICAgSU5GT19MT0df
SUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIi0gZGVmYXVsdCB1bnVzZWQgZ3JvdXAgaWRlbnRp
ZmllciBjaGFuZ2VkOyBkcm9wcGluZyIpOwogICAgICAgICByZXR1cm47CkBAIC01NTYsNiArNTY1
LDEwIEBAIHZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6Omdyb3VwU2Vz
c2lvbklkZW50aWZpZXJDaGFuZ2VkKEFWQ29udGVuCiAKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKICAgICBFUlJPUl9MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIi0gbm8gcmVzcG9u
c2libGUgc2Vzc2lvbjsgZHJvcHBpbmciKTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGdyb3Vw
KTsKKyAgICBVTlVTRURfUEFSQU0oc2Vzc2lvbklkZW50aWZpZXIpOworI2VuZGlmCiB9CiAKIHZv
aWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6Om91dHB1dE9ic2N1cmVkRHVl
VG9JbnN1ZmZpY2llbnRFeHRlcm5hbFByb3RlY3Rpb25DaGFuZ2VkKGJvb2wgb2JzY3VyZWQpCkBA
IC02MDMsOSArNjE2LDE0IEBAIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZG
T2JqQyogQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6CiAgICAgaWYgKGluZGV4
ICE9IG5vdEZvdW5kKQogICAgICAgICByZXR1cm4gbV9zZXNzaW9uc1tpbmRleF0uZ2V0KCk7CiAK
KyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQogICAgIHJldHVybiBzZXNzaW9uRm9y
R3JvdXAoZ3JvdXBGb3JSZXF1ZXN0KHJlcXVlc3QpKTsKKyNlbHNlCisgICAgcmV0dXJuIG51bGxw
dHI7CisjZW5kaWYKIH0KIAorI2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiBDRE1J
bnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIENETUluc3RhbmNlRmFpclBs
YXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uRm9yR3JvdXAoQVZDb250ZW50S2V5UmVwb3J0R3Jv
dXAqIGdyb3VwKSBjb25zdAogewogICAgIGF1dG8gaW5kZXggPSBtX3Nlc3Npb25zLmZpbmRJZihb
Z3JvdXBdIChhdXRvIHNlc3Npb24pIHsKQEAgLTYxNiw2ICs2MzQsNyBAQCBDRE1JbnN0YW5jZVNl
c3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1p
bmdBVkZPYmpDOgogICAgICAgICByZXR1cm4gbV9zZXNzaW9uc1tpbmRleF0uZ2V0KCk7CiAgICAg
cmV0dXJuIG51bGxwdHI7CiB9CisjZW5kaWYKIAogYm9vbCBDRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQzo6aXNBbnlLZXlVc2FibGUoY29uc3QgS2V5cyYga2V5cykgY29uc3QKIHsK
QEAgLTcyNSwxMSArNzQ0LDEzIEBAIHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDOjpyZXF1ZXN0TGljZW5zZShMaWNlbnNlVHlwZSBsaWNlCiAKICAgICBpZiAo
YXV0byB1bmV4cGVjdGVkUmVxdWVzdCA9IG1faW5zdGFuY2UtPnRha2VVbmV4cGVjdGVkS2V5UmVx
dWVzdEZvckluaXRpYWxpemF0aW9uRGF0YShpbml0RGF0YVR5cGUsIGluaXREYXRhKSkgewogICAg
ICAgICBERUJVR19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIiBmb3VuZCB1bmV4cGVj
dGVkUmVxdWVzdCBtYXRjaGluZyBpbml0RGF0YSIpOworI2lmIEhBVkUoQVZDT05URU5US0VZUkVQ
T1JUR1JPVVApCiAgICAgICAgIGlmIChtX2dyb3VwKSB7CiAgICAgICAgICAgICBBTExPV19ORVdf
QVBJX1dJVEhPVVRfR1VBUkRTX0JFR0lOCiAgICAgICAgICAgICBbbV9ncm91cCBhc3NvY2lhdGVD
b250ZW50S2V5UmVxdWVzdDp1bmV4cGVjdGVkUmVxdWVzdC5nZXQoKV07CiAgICAgICAgICAgICBB
TExPV19ORVdfQVBJX1dJVEhPVVRfR1VBUkRTX0VORAogICAgICAgICB9CisjZW5kaWYKICAgICAg
ICAgbV9yZXF1ZXN0TGljZW5zZUNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayk7CiAgICAgICAg
IGRpZFByb3ZpZGVSZXF1ZXN0KHVuZXhwZWN0ZWRSZXF1ZXN0LmdldCgpKTsKICAgICAgICAgcmV0
dXJuOwpAQCAtNzU3LDEzICs3NzgsMTYgQEAgdm9pZCBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxh
eVN0cmVhbWluZ0FWRk9iakM6OnJlcXVlc3RMaWNlbnNlKExpY2Vuc2VUeXBlIGxpY2UKICAgICBE
RUJVR19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIiBwcm9jZXNzaW5nIHJlcXVlc3Qi
KTsKICAgICBtX3JlcXVlc3RMaWNlbnNlQ2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKTsKIAor
I2lmIEhBVkUoQVZDT05URU5US0VZUkVQT1JUR1JPVVApCiAgICAgaWYgKG1fZ3JvdXApIHsKICAg
ICAgICAgYXV0byogb3B0aW9ucyA9IEB7IENvbnRlbnRLZXlSZXBvcnRHcm91cEtleTogbV9ncm91
cC5nZXQoKSwgSW5pdGlhbGl6YXRpb25EYXRhVHlwZUtleTogKE5TU3RyaW5nKilpbml0RGF0YVR5
cGUgfTsKICAgICAgICAgW21fZ3JvdXAgcHJvY2Vzc0NvbnRlbnRLZXlSZXF1ZXN0V2l0aElkZW50
aWZpZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXphdGlvbkRhdGE6aW5pdGlhbGl6YXRpb25E
YXRhLmdldCgpIG9wdGlvbnM6b3B0aW9uc107Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgYXV0byog
b3B0aW9ucyA9IEB7IEluaXRpYWxpemF0aW9uRGF0YVR5cGVLZXk6IChOU1N0cmluZyopaW5pdERh
dGFUeXBlIH07Ci0gICAgICAgIFttX3Nlc3Npb24gcHJvY2Vzc0NvbnRlbnRLZXlSZXF1ZXN0V2l0
aElkZW50aWZpZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXphdGlvbkRhdGE6aW5pdGlhbGl6
YXRpb25EYXRhLmdldCgpIG9wdGlvbnM6b3B0aW9uc107CisgICAgICAgIHJldHVybjsKICAgICB9
CisjZW5kaWYKKworICAgIGF1dG8qIG9wdGlvbnMgPSBAeyBJbml0aWFsaXphdGlvbkRhdGFUeXBl
S2V5OiAoTlNTdHJpbmcqKWluaXREYXRhVHlwZSB9OworICAgIFttX3Nlc3Npb24gcHJvY2Vzc0Nv
bnRlbnRLZXlSZXF1ZXN0V2l0aElkZW50aWZpZXI6aWRlbnRpZmllci5nZXQoKSBpbml0aWFsaXph
dGlvbkRhdGE6aW5pdGlhbGl6YXRpb25EYXRhLmdldCgpIG9wdGlvbnM6b3B0aW9uc107CiB9CiAK
IHN0YXRpYyBib29sIGlzRXF1YWwoY29uc3QgRnJhZ21lbnRlZFNoYXJlZEJ1ZmZlciYgZGF0YSwg
Y29uc3QgU3RyaW5nJiB2YWx1ZSkKQEAgLTEwMTEsOSArMTAzNSwxMSBAQCB2b2lkIENETUluc3Rh
bmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Y2xvc2VTZXNzaW9uKGNvbnN0IFN0
cmluZyYsIENsbwogCiB2b2lkIENETUluc3RhbmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZG
T2JqQzo6cmVtb3ZlU2Vzc2lvbkRhdGEoY29uc3QgU3RyaW5nJiBzZXNzaW9uSWQsIExpY2Vuc2VU
eXBlIGxpY2Vuc2VUeXBlLCBSZW1vdmVTZXNzaW9uRGF0YUNhbGxiYWNrJiYgY2FsbGJhY2spCiB7
CisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKICAgICBpZiAobV9ncm91cCkKICAg
ICAgICAgW21fZ3JvdXAgZXhwaXJlXTsKICAgICBlbHNlCisjZW5kaWYKICAgICAgICAgW21fc2Vz
c2lvbiBleHBpcmVdOwogCiAgICAgaWYgKGxpY2Vuc2VUeXBlID09IExpY2Vuc2VUeXBlOjpQZXJz
aXN0ZW50VXNhZ2VSZWNvcmQpIHsKQEAgLTExMzIsNyArMTE1OCwxMyBAQCB2b2lkIENETUluc3Rh
bmNlU2Vzc2lvbkZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QoQVZD
b250ZW50S2V5UgogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgICAgICAg
ICBpZiAobV9zZXNzaW9uSWQuaXNFbXB0eSgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGF1dG8g
c2Vzc2lvbklEID0gbV9ncm91cCA/IG1fZ3JvdXAuZ2V0KCkuY29udGVudFByb3RlY3Rpb25TZXNz
aW9uSWRlbnRpZmllciA6IG1fc2Vzc2lvbi5nZXQoKS5jb250ZW50UHJvdGVjdGlvblNlc3Npb25J
ZGVudGlmaWVyOworICAgICAgICAgICAgICAgICAgICBOU0RhdGEgKnNlc3Npb25JRCA9IG51bGxw
dHI7CisjaWYgSEFWRShBVkNPTlRFTlRLRVlSRVBPUlRHUk9VUCkKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKG1fZ3JvdXApCisgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uSUQgPSBtX2dy
b3VwLmdldCgpLmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXI7CisgICAgICAgICAg
ICAgICAgICAgIGVsc2UKKyNlbmRpZgorICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbklE
ID0gbV9zZXNzaW9uLmdldCgpLmNvbnRlbnRQcm90ZWN0aW9uU2Vzc2lvbklkZW50aWZpZXI7CiAg
ICAgICAgICAgICAgICAgICAgIHNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChzZXNzaW9uSUQpOwog
ICAgICAgICAgICAgICAgIH0KIApAQCAtMTQxNyw3ICsxNDQ5LDExIEBAIHZvaWQgQ0RNSW5zdGFu
Y2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uSWRlbnRpZmllckNoYW5n
ZWQoTlNEYXRhCiAKIHZvaWQgQ0RNSW5zdGFuY2VTZXNzaW9uRmFpclBsYXlTdHJlYW1pbmdBVkZP
YmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRlbnRLZXlSZXBvcnRHcm91
cCosIE5TRGF0YSAqc2Vzc2lvbklkZW50aWZpZXIpCiB7CisjaWYgSEFWRShBVkNPTlRFTlRLRVlS
RVBPUlRHUk9VUCkKICAgICBzZXNzaW9uSWRlbnRpZmllckNoYW5nZWQoc2Vzc2lvbklkZW50aWZp
ZXIpOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oc2Vzc2lvbklkZW50aWZpZXIpOworI2VuZGlm
CiB9CiAKIHN0YXRpYyBhdXRvIHJlcXVlc3RTdGF0dXNUb0NETVN0YXR1cyhBVkNvbnRlbnRLZXlS
ZXF1ZXN0U3RhdHVzIHN0YXR1cykKQEAgLTE1MDcsNiArMTU0Myw3IEBAIHN0ZDo6b3B0aW9uYWw8
Q0RNS2V5U3RhdHVzPiBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6
OnByb3RlY3RpCiAgICAgfQogI2VuZGlmCiAKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVNFU1NJT05X
SUxMT1VUUFVUQkVPQlNDVVJFRCkKICAgICAvLyBGSVhNRTogQVZGb3VuZGF0aW9uIHJlcXVpcmVz
IGEgY29ubmVjdGlvbiB0byB0aGUgV2luZG93U2VydmVyIGluIG9yZGVyIHRvIHF1ZXJ5IHRoZSBI
RENQIHN0YXR1cyBvZiBpbmRpdmlkdWFsCiAgICAgLy8gZGlzcGxheXMuIFBhc3NpbmcgaW4gYW4g
ZW1wdHkgTlNBcnJheSB3aWxsIGNhdXNlIEFWRm91bmRhdGlvbiB0byBmYWxsIGJhY2sgdG8gYSAi
bWluaW11bSBzdXBwb3J0ZWQgSERDUCBsZXZlbCIKICAgICAvLyBhY3Jvc3MgYWxsIGRpc3BsYXlz
LiBSZXBsYWNlIHRoZSBiZWxvdyB3aXRoIGV4cGxpY2l0IEFQSXMgdG8gcXVlcnkgdGhlIHBlci1k
aXNwbGF5IEhEQ1Agc3RhdHVzIGluIHRoZSBVSVByb2Nlc3MKQEAgLTE1MjUsNiArMTU2Miw3IEBA
IHN0ZDo6b3B0aW9uYWw8Q0RNS2V5U3RhdHVzPiBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0
cmVhbWluZ0FWRk9iakM6OnByb3RlY3RpCiAgICAgICAgIEFMV0FZU19MT0dfSUZfUE9TU0lCTEUo
TE9HSURFTlRJRklFUiwgInJlcXVlc3QgeyAiLCBrZXlJRHNGb3JSZXF1ZXN0KHJlcXVlc3QpLCAi
IH0gd2lsbE91dHB1dEJlT2JzY3VyZWQuLi5mb3JEaXNwbGF5czpbIG5pbCBdID0gIiwgb2JzY3Vy
ZWQgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKICAgICAgICAgcmV0dXJuIG9ic2N1cmVkID8gQ0RNS2V5
U3RhdHVzOjpPdXRwdXRSZXN0cmljdGVkIDogQ0RNS2V5U3RhdHVzOjpVc2FibGU7CiAgICAgfQor
I2VuZGlmCiAKICAgICAvLyBPbmx5IHVzZSB0aGUgbm9uLXJlcXVlc3Qtc3BlY2lmaWMgIm91dHB1
dE9ic2N1cmVkRHVlVG9JbnN1ZmZpY2llbnRFeHRlcm5hbFByb3RlY3Rpb24iIHN0YXR1cyBpZgog
ICAgIC8vIEFWQ29udGVudEtleVJlcXVlc3RzIGRvIG5vdCBzdXBwb3J0IHRoZSBmaW5lciBncmFp
bmVkICItd2lsbE91dHB1dEJlT2JzY3VyZWQuLi4iIEFQSS4KQEAgLTE1NDgsMTMgKzE1ODYsMTgg
QEAgdm9pZCBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnVwZGF0
ZVByb3RlY3Rpb25TdGF0dXNGb3JEaXNwbGEKIAogYm9vbCBDRE1JbnN0YW5jZVNlc3Npb25GYWly
UGxheVN0cmVhbWluZ0FWRk9iakM6OmVuc3VyZVNlc3Npb25Pckdyb3VwKCkKIHsKLSAgICBpZiAo
bV9zZXNzaW9uIHx8IG1fZ3JvdXApCisgICAgaWYgKG1fc2Vzc2lvbikKKyAgICAgICAgcmV0dXJu
IHRydWU7CisKKyNpZiBIQVZFKEFWQ09OVEVOVEtFWVJFUE9SVEdST1VQKQorICAgIGlmIChtX2dy
b3VwKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAogICAgIGlmIChhdXRvKiBzZXNzaW9uID0gbV9p
bnN0YW5jZS0+Y29udGVudEtleVNlc3Npb24oKSkgewogICAgICAgICBtX2dyb3VwID0gW3Nlc3Np
b24gbWFrZUNvbnRlbnRLZXlHcm91cF07CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KKyNl
bmRpZgogCiAgICAgYXV0byBzdG9yYWdlVVJMID0gbV9pbnN0YW5jZS0+c3RvcmFnZVVSTCgpOwog
ICAgIGlmICghbV9pbnN0YW5jZS0+cGVyc2lzdGVudFN0YXRlQWxsb3dlZCgpIHx8ICFzdG9yYWdl
VVJMKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>