<?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>237043</bug_id>
          
          <creation_ts>2022-02-22 09:42:27 -0800</creation_ts>
          <short_desc>[WebAuthn] userHandle not marked nullable in _WKWebAuthenticationAssertionResponse</short_desc>
          <delta_ts>2022-02-23 10:21:20 -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>WebKit Misc.</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="pascoe@apple.com">pascoe</reporter>
          <assigned_to name="pascoe@apple.com">pascoe</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1844754</commentid>
    <comment_count>0</comment_count>
    <who name="pascoe@apple.com">pascoe</who>
    <bug_when>2022-02-22 09:42:27 -0800</bug_when>
    <thetext>This is causing issues where the userHandle is actually null. This is allowed by the WebAuthn spec: https://www.w3.org/TR/webauthn-2/#dom-authenticatorassertionresponse-userhandle</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844755</commentid>
    <comment_count>1</comment_count>
    <who name="pascoe@apple.com">pascoe</who>
    <bug_when>2022-02-22 09:42:44 -0800</bug_when>
    <thetext>rdar://89275844</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844775</commentid>
    <comment_count>2</comment_count>
      <attachid>452882</attachid>
    <who name="pascoe@apple.com">pascoe</who>
    <bug_when>2022-02-22 10:18:41 -0800</bug_when>
    <thetext>Created attachment 452882
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844865</commentid>
    <comment_count>3</comment_count>
      <attachid>452901</attachid>
    <who name="pascoe@apple.com">pascoe</who>
    <bug_when>2022-02-22 13:58:58 -0800</bug_when>
    <thetext>Created attachment 452901
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844880</commentid>
    <comment_count>4</comment_count>
    <who name="pascoe@apple.com">pascoe</who>
    <bug_when>2022-02-22 14:47:57 -0800</bug_when>
    <thetext>rdar://89317740</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844881</commentid>
    <comment_count>5</comment_count>
      <attachid>452904</attachid>
    <who name="pascoe@apple.com">pascoe</who>
    <bug_when>2022-02-22 14:49:19 -0800</bug_when>
    <thetext>Created attachment 452904
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1845191</commentid>
    <comment_count>6</comment_count>
      <attachid>452904</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-02-23 10:00:21 -0800</bug_when>
    <thetext>Comment on attachment 452904
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1845205</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-02-23 10:21:16 -0800</bug_when>
    <thetext>Committed r290381 (247696@main): &lt;https://commits.webkit.org/247696@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 452904.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452882</attachid>
            <date>2022-02-22 10:18:41 -0800</date>
            <delta_ts>2022-02-22 13:58:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237043-20220222101840.patch</filename>
            <type>text/plain</type>
            <size>7455</size>
            <attacher name="pascoe@apple.com">pascoe</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGJiY2IzNjE0ZWI5YTVlN2Fl
Mzg1MGFhYWY0NDg0NmQwZjNlMWE0ZDcuLmFiMzRkMDc4MmUzMmMyZjYxOTI3ZjE1ODk3ZDA3ZmY4
ZWI4NmU2NWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjItMDItMjIgIEogUGFzY29l
ICA8al9wYXNjb2VAYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJBdXRobl0gdXNlckhhbmRsZSBu
b3QgbWFya2VkIG51bGxhYmxlIGluIF9XS1dlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0aW9uUmVzcG9u
c2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzA0
MworICAgICAgICByZGFyOi8vODkyNzU4NDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAg
ICogUGxhdGZvcm0vc3BpL0NvY29hL0F1dGhlbnRpY2F0aW9uU2VydmljZXNDb3JlU1BJLmg6Cisg
ICAgICAgIFVwZGF0ZSBmb3J3YXJkIGRlY2xhcmVkIFNQSSwgcmVmbGVjdGluZyB1c2VySGFuZGxl
IGFzIG51bGxhYmxlLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2ViQXV0aGVu
dGljYXRpb25Bc3NlcnRpb25SZXNwb25zZS5oOgorICAgICAgICBVcGRhdGUgdXNlckhhbmRsZSBw
cm9wZXJ0eSB0byBudWxsLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2ViQXV0
aGVudGljYXRpb25QYW5lbC5tbToKKyAgICAgICAgKGdldEFsbExvY2FsQXV0aGVudGljYXRvckNy
ZWRlbnRpYWxzSW1wbCk6CisKIDIwMjItMDItMjEgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5A
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gUmVtb3ZlIHJlc291cmNlIGFjY2VzcyBpbiBz
YW5kYm94IGZvciBvbGRlciBPUyB2ZXJzaW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Q
bGF0Zm9ybS9zcGkvQ29jb2EvQXV0aGVudGljYXRpb25TZXJ2aWNlc0NvcmVTUEkuaCBiL1NvdXJj
ZS9XZWJLaXQvUGxhdGZvcm0vc3BpL0NvY29hL0F1dGhlbnRpY2F0aW9uU2VydmljZXNDb3JlU1BJ
LmgKaW5kZXggMzdhZDMxYmI2ZjQxNTM2MzZjMDQ2OTAwNDZlN2EyNWRkYjI4MzQwNi4uNDI0OTkw
ZmE3YmQxNDc1MjA1MjEwN2ZjM2FkMjE4NGM4NTFkNTMyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9QbGF0Zm9ybS9zcGkvQ29jb2EvQXV0aGVudGljYXRpb25TZXJ2aWNlc0NvcmVTUEkuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9Db2NvYS9BdXRoZW50aWNhdGlvblNlcnZp
Y2VzQ29yZVNQSS5oCkBAIC0yMjEsNyArMjIxLDcgQEAgdHlwZWRlZiBOU19PUFRJT05TKE5TVUlu
dGVnZXIsIEFTQ0NyZWRlbnRpYWxSZXF1ZXN0VHlwZXMpIHsKIAogQHByb3BlcnR5IChub25hdG9t
aWMsIHJlYWRvbmx5LCBjb3B5KSBOU1N0cmluZyAqbmFtZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWlj
LCByZWFkb25seSwgY29weSkgTlNTdHJpbmcgKmRpc3BsYXlOYW1lOwotQHByb3BlcnR5IChub25h
dG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU0RhdGEgKnVzZXJIYW5kbGU7CitAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHksIG51bGxhYmxlLCBjb3B5KSBOU0RhdGEgKnVzZXJIYW5kbGU7CiBA
cHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgaXNSZWdpc3RyYXRpb25SZXF1ZXN0
OwogCiArIChpbnN0YW5jZXR5cGUpbmV3IE5TX1VOQVZBSUxBQkxFOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0
aW9uUmVzcG9uc2UuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJB
dXRoZW50aWNhdGlvbkFzc2VydGlvblJlc3BvbnNlLmgKaW5kZXggMjZjNTZkZTM3OTg0MDkwODQ0
MWQ2MDZlZTM1YTdjZjliMzg3YmVlMS4uZTJlZmMzOTFiN2YzZjNmMDEyM2UxYmQxMTYwZTk1MGUx
NWFkZjExZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19X
S1dlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0aW9uUmVzcG9uc2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2ViQXV0aGVudGljYXRpb25Bc3NlcnRpb25SZXNwb25z
ZS5oCkBAIC0zNSw3ICszNSw3IEBAIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvcygxMS4wKSwgaW9z
KDE0LjApKQogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGNvcHkpIE5TU3RyaW5n
ICpuYW1lOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU1N0cmluZyAq
ZGlzcGxheU5hbWU7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGNvcHkpIE5TRGF0
YSAqdXNlckhhbmRsZTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgbnVsbGFibGUs
IGNvcHkpIE5TRGF0YSAqdXNlckhhbmRsZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25s
eSkgQk9PTCBzeW5jaHJvbml6YWJsZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwg
Y29weSkgTlNTdHJpbmcgKmdyb3VwOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBj
b3B5KSBOU0RhdGEgKmNyZWRlbnRpYWxJRDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW0KaW5k
ZXggMGY2OTA5MzFlNGQzNWNiOWE2MjQ4NTM3ZGE4ZTk0ODllOWI3Njk4NC4uZGMyMWE3ZmMwNjZi
OTM3YWZjZjEyMjg2NWJhOTVmY2U4YjBjYzBkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW0KKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwu
bW0KQEAgLTI3NiwxMiArMjc2LDYgQEAgc3RhdGljIFJldGFpblB0cjxOU0FycmF5PiBnZXRBbGxM
b2NhbEF1dGhlbnRpY2F0b3JDcmVkZW50aWFsc0ltcGwoTlNTdHJpbmcgKmFjY2UKICAgICAgICAg
fQogICAgICAgICBhdXRvJiB1c2VybmFtZSA9IGl0LT5zZWNvbmQuZ2V0U3RyaW5nKCk7CiAKLSAg
ICAgICAgaXQgPSByZXNwb25zZU1hcC5maW5kKGNib3I6OkNCT1JWYWx1ZShmaWRvOjprRW50aXR5
SWRNYXBLZXkpKTsKLSAgICAgICAgaWYgKGl0ID09IHJlc3BvbnNlTWFwLmVuZCgpIHx8ICFpdC0+
c2Vjb25kLmlzQnl0ZVN0cmluZygpKSB7Ci0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICB9Ci0gICAgICAgIGF1dG8m
IHVzZXJIYW5kbGUgPSBpdC0+c2Vjb25kLmdldEJ5dGVTdHJpbmcoKTsKIAogICAgICAgICBhdXRv
IGNyZWRlbnRpYWwgPSBhZG9wdE5TKFtbTlNNdXRhYmxlRGljdGlvbmFyeSBhbGxvY10gaW5pdFdp
dGhPYmplY3RzQW5kS2V5czoKICAgICAgICAgICAgIHVzZXJuYW1lLCBfV0tMb2NhbEF1dGhlbnRp
Y2F0b3JDcmVkZW50aWFsTmFtZUtleSwKQEAgLTI4OSw5ICsyODMsMTQgQEAgc3RhdGljIFJldGFp
blB0cjxOU0FycmF5PiBnZXRBbGxMb2NhbEF1dGhlbnRpY2F0b3JDcmVkZW50aWFsc0ltcGwoTlNT
dHJpbmcgKmFjY2UKICAgICAgICAgICAgIGF0dHJpYnV0ZXNbYnJpZGdlX2Nhc3Qoa1NlY0F0dHJM
YWJlbCldLCBfV0tMb2NhbEF1dGhlbnRpY2F0b3JDcmVkZW50aWFsUmVseWluZ1BhcnR5SURLZXks
CiAgICAgICAgICAgICBhdHRyaWJ1dGVzW2JyaWRnZV9jYXN0KGtTZWNBdHRyTW9kaWZpY2F0aW9u
RGF0ZSldLCBfV0tMb2NhbEF1dGhlbnRpY2F0b3JDcmVkZW50aWFsTGFzdE1vZGlmaWNhdGlvbkRh
dGVLZXksCiAgICAgICAgICAgICBhdHRyaWJ1dGVzW2JyaWRnZV9jYXN0KGtTZWNBdHRyQ3JlYXRp
b25EYXRlKV0sIF9XS0xvY2FsQXV0aGVudGljYXRvckNyZWRlbnRpYWxDcmVhdGlvbkRhdGVLZXks
Ci0gICAgICAgICAgICBhZG9wdE5TKFtbTlNEYXRhIGFsbG9jXSBpbml0V2l0aEJ5dGVzOnVzZXJI
YW5kbGUuZGF0YSgpIGxlbmd0aDp1c2VySGFuZGxlLnNpemUoKV0pLmdldCgpLCBfV0tMb2NhbEF1
dGhlbnRpY2F0b3JDcmVkZW50aWFsVXNlckhhbmRsZUtleSwKICAgICAgICAgICAgIG5pbAogICAg
ICAgICBdKTsKKyAgICAgICAgaXQgPSByZXNwb25zZU1hcC5maW5kKGNib3I6OkNCT1JWYWx1ZShm
aWRvOjprRW50aXR5SWRNYXBLZXkpKTsKKyAgICAgICAgaWYgKGl0ICE9IHJlc3BvbnNlTWFwLmVu
ZCgpICYmIGl0LT5zZWNvbmQuaXNCeXRlU3RyaW5nKCkpIHsKKyAgICAgICAgICAgIGF1dG8mIHVz
ZXJIYW5kbGUgPSBpdC0+c2Vjb25kLmdldEJ5dGVTdHJpbmcoKTsKKyAgICAgICAgICAgIFtjcmVk
ZW50aWFsIHNldE9iamVjdDphZG9wdE5TKFtbTlNEYXRhIGFsbG9jXSBpbml0V2l0aEJ5dGVzOnVz
ZXJIYW5kbGUuZGF0YSgpIGxlbmd0aDp1c2VySGFuZGxlLnNpemUoKV0pLmdldCgpIGZvcktleTpf
V0tMb2NhbEF1dGhlbnRpY2F0b3JDcmVkZW50aWFsVXNlckhhbmRsZUtleV07CisgICAgICAgIH0K
KwogICAgICAgICB1cGRhdGVDcmVkZW50aWFsSWZOZWNlc3NhcnkoY3JlZGVudGlhbC5nZXQoKSwg
YXR0cmlidXRlcyk7CiAKICAgICAgICAgaXQgPSByZXNwb25zZU1hcC5maW5kKGNib3I6OkNCT1JW
YWx1ZShmaWRvOjprRGlzcGxheU5hbWVNYXBLZXkpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBjOGRlNWM3ZTUwMzFjMWY3MTgwZDJmYzJkNjAx
MGY0YTM1NDNiNzE5Li44ZjZkYjQwNmMyMmM4ODVmZDk2ODRlYzhkYmVhNTgzZGYxNDllMzhlIDEw
MDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTYgQEAKKzIwMjItMDItMjIgIEogUGFzY29lICA8al9wYXNjb2VAYXBwbGUuY29tPgorCisg
ICAgICAgIFtXZWJBdXRobl0gdXNlckhhbmRsZSBub3QgbWFya2VkIG51bGxhYmxlIGluIF9XS1dl
YkF1dGhlbnRpY2F0aW9uQXNzZXJ0aW9uUmVzcG9uc2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzA0MworICAgICAgICByZGFyOi8vODkyNzU4NDQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDcmVhdGUg
dGVzdCB0byBjaGVjayBmb3IgbnVsbCB1c2VySGFuZGxlLgorCisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tOgorICAg
ICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisKIDIwMjItMDItMTcgIEpvbmF0aGFuIEJlZGFy
ZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFtydW4td2Via2l0LXRlc3RzXSBVc2Ug
UHl0aG9uIDMgKFBhcnQgMSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Q29jb2EvX1dLV2ViQXV0aGVudGljYXRpb25QYW5lbC5tbSBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLV2ViQXV0aGVudGljYXRpb25QYW5lbC5tbQppbmRl
eCA5NDcxNTgxYjVhNWQxMTBlN2JjOTY5ZDJjM2MwZDA4N2FlN2U3NDBhLi42Mzk1NWQ4NWUyNTIz
YWE4MGQ3ZDViODY2YTVjZTFiMDNkZGM5ZGRjIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW0KKysrIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50aWNhdGlv
blBhbmVsLm1tCkBAIC0yMTI4LDYgKzIxMjgsMzQgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBh
bmVsLCBHZXRBc3NlcnRpb25MQUNsaWVudERhdGFIYXNoKQogICAgIFV0aWw6OnJ1bigmd2ViQXV0
aGVudGljYXRpb25QYW5lbFJhbik7CiB9CiAKK1RFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwg
R2V0QXNzZXJ0aW9uTnVsbFVzZXJIYW5kbGUpCit7CisgICAgcmVzZXQoKTsKKworICAgIEFTU0VS
VF9UUlVFKGFkZEtleVRvS2V5Y2hhaW4odGVzdEVTMjU2UHJpdmF0ZUtleUJhc2U2NCwgImV4YW1w
bGUuY29tIiwgIm9XUnVZVzFsYkUxRElFNXZMVWhoYm1Sc1pRPT0iKSk7IC8vIHsibmFtZSI6ICJN
QyBOby1IYW5kbGUifQorCisgICAgdWludDhfdCBoYXNoW10gPSB7IDB4MDEsIDB4MDIsIDB4MDMs
IDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4
MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIs
IDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4
MDQgfTsKKyAgICBOU0RhdGEgKm5zSGFzaCA9IFtOU0RhdGEgZGF0YVdpdGhCeXRlczpoYXNoIGxl
bmd0aDpzaXplb2YoaGFzaCldOworCisgICAgYXV0byBvcHRpb25zID0gYWRvcHROUyhbW19XS1B1
YmxpY0tleUNyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucyBhbGxvY10gaW5pdF0pOworICAgIFtvcHRp
b25zIHNldFJlbHlpbmdQYXJ0eUlkZW50aWZpZXI6QCJleGFtcGxlLmNvbSJdOworCisgICAgYXV0
byBwYW5lbCA9IGFkb3B0TlMoW1tfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsIGFsbG9jXSBpbml0
XSk7CisgICAgW3BhbmVsIHNldE1vY2tDb25maWd1cmF0aW9uOkB7IH1dOworICAgIGF1dG8gZGVs
ZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxEZWxlZ2F0ZSBhbGxv
Y10gaW5pdF0pOworICAgIFtwYW5lbCBzZXREZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisKKyAg
ICBbcGFuZWwgZ2V0QXNzZXJ0aW9uV2l0aENsaWVudERhdGFIYXNoOm5zSGFzaCBvcHRpb25zOm9w
dGlvbnMuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihfV0tBdXRoZW50aWNhdG9yQXNzZXJ0aW9u
UmVzcG9uc2UgKnJlc3BvbnNlLCBOU0Vycm9yICplcnJvcikgeworICAgICAgICB3ZWJBdXRoZW50
aWNhdGlvblBhbmVsUmFuID0gdHJ1ZTsKKyAgICAgICAgY2xlYW5VcEtleWNoYWluKCJleGFtcGxl
LmNvbSIpOworCisgICAgICAgIEVYUEVDVF9OVUxMKGVycm9yKTsKKworICAgICAgICBFWFBFQ1Rf
TlVMTChyZXNwb25zZS51c2VySGFuZGxlKTsKKyAgICB9XTsKKyAgICBVdGlsOjpydW4oJndlYkF1
dGhlbnRpY2F0aW9uUGFuZWxSYW4pOworfQorCiBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWws
IEdldEFzc2VydGlvbkNyb3NzUGxhdGZvcm0pCiB7CiAgICAgcmVzZXQoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452901</attachid>
            <date>2022-02-22 13:58:58 -0800</date>
            <delta_ts>2022-02-22 14:49:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237043-20220222135857.patch</filename>
            <type>text/plain</type>
            <size>10273</size>
            <attacher name="pascoe@apple.com">pascoe</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMzMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJmYjRhYmExMWRiNWVkYjhm
MjM2M2VhNDFjYTFhOGQ0MDE1NDc3NTAuLjJmNDQ0MTVlM2U1MGY1YzRlZTRiMjlhOGZjYzE2MWE2
YWNhNWNkOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjItMDItMjIgIEogUGFzY29l
ICA8al9wYXNjb2VAYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJBdXRobl0gdXNlckhhbmRsZSBu
b3QgbWFya2VkIG51bGxhYmxlIGluIF9XS1dlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0aW9uUmVzcG9u
c2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzA0
MworICAgICAgICByZGFyOi8vODkyNzU4NDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGRlZCBBUEkgdGVzdHMuCisKKyAgICAgICAgKiBQbGF0Zm9y
bS9zcGkvQ29jb2EvQXV0aGVudGljYXRpb25TZXJ2aWNlc0NvcmVTUEkuaDoKKyAgICAgICAgVXBk
YXRlIGZvcndhcmQgZGVjbGFyZWQgU1BJLCByZWZsZWN0aW5nIHVzZXJIYW5kbGUgYXMgbnVsbGFi
bGUuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBdXRoZW50aWNhdG9yQXNzZXJ0
aW9uUmVzcG9uc2VJbnRlcm5hbC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
V2ViQXV0aGVudGljYXRpb25Bc3NlcnRpb25SZXNwb25zZS5oOgorICAgICAgICBVcGRhdGUgdXNl
ckhhbmRsZSBwcm9wZXJ0eSB0byBudWxsLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLV2ViQXV0aGVudGljYXRpb25QYW5lbC5tbToKKyAgICAgICAgKGdldEFsbExvY2FsQXV0aGVu
dGljYXRvckNyZWRlbnRpYWxzSW1wbCk6CisKIDIwMjItMDItMjIgIEZ1amlpIEhpcm9ub3JpICA8
SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAgICAgICAgW1dpbkNhaXJvXVtXSzJdIGFuaW1h
dGlvbnMvYmFja2dyb3VuZC1wb3NpdGlvbi5odG1sIGlzIHRpbWluZyBvdXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL0NvY29hL0F1dGhlbnRpY2F0aW9uU2VydmljZXND
b3JlU1BJLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9Db2NvYS9BdXRoZW50aWNhdGlv
blNlcnZpY2VzQ29yZVNQSS5oCmluZGV4IDM3YWQzMWJiNmY0MTUzNjM2YzA0NjkwMDQ2ZTdhMjVk
ZGIyODM0MDYuLjQyNDk5MGZhN2JkMTQ3NTIwNTIxMDdmYzNhZDIxODRjODUxZDUzMjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL0NvY29hL0F1dGhlbnRpY2F0aW9uU2Vy
dmljZXNDb3JlU1BJLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvQ29jb2EvQXV0
aGVudGljYXRpb25TZXJ2aWNlc0NvcmVTUEkuaApAQCAtMjIxLDcgKzIyMSw3IEBAIHR5cGVkZWYg
TlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBBU0NDcmVkZW50aWFsUmVxdWVzdFR5cGVzKSB7CiAKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgY29weSkgTlNTdHJpbmcgKm5hbWU7CiBAcHJv
cGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGNvcHkpIE5TU3RyaW5nICpkaXNwbGF5TmFtZTsK
LUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgY29weSkgTlNEYXRhICp1c2VySGFuZGxl
OworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBudWxsYWJsZSwgY29weSkgTlNEYXRh
ICp1c2VySGFuZGxlOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09MIGlzUmVn
aXN0cmF0aW9uUmVxdWVzdDsKIAogKyAoaW5zdGFuY2V0eXBlKW5ldyBOU19VTkFWQUlMQUJMRTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBdXRoZW50
aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2VJbnRlcm5hbC5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0NvY29hL19XS0F1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZUludGVybmFsLmgK
aW5kZXggZjQ4OTM4OTVmNjI0ODhlMjQxMzZlN2ZmNDhlYzE3MTYzMjkwZDE4Zi4uNGFiMjQyMzhl
ZDY1NDZhZDhkZDgyNzIwNmZlZTI3YmFhODZiOTdjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0F1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZUlu
dGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0F1dGhl
bnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZUludGVybmFsLmgKQEAgLTM0LDcgKzM0LDcgQEAgTlNf
QVNTVU1FX05PTk5VTExfQkVHSU4KIAogQGludGVyZmFjZSBfV0tBdXRoZW50aWNhdG9yQXNzZXJ0
aW9uUmVzcG9uc2UgKCkKIAotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ2xpZW50RGF0YUpTT046
KE5TRGF0YSAqKWNsaWVudERhdGFKU09OIHJhd0lkOihOU0RhdGEgKilyYXdJZCBleHRlbnNpb25z
OihSZXRhaW5QdHI8X1dLQXV0aGVudGljYXRpb25FeHRlbnNpb25zQ2xpZW50T3V0cHV0cz4mJill
eHRlbnNpb25zIGF1dGhlbnRpY2F0b3JEYXRhOihOU0RhdGEgKilhdXRoZW50aWNhdG9yRGF0YSBz
aWduYXR1cmU6KE5TRGF0YSAqKXNpZ25hdHVyZSB1c2VySGFuZGxlOihOU0RhdGEgKil1c2VySGFu
ZGxlIGF0dGFjaG1lbnQ6KF9XS0F1dGhlbnRpY2F0b3JBdHRhY2htZW50KWF0dGFjaG1lbnQ7Cist
IChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDbGllbnREYXRhSlNPTjooTlNEYXRhICopY2xpZW50RGF0
YUpTT04gcmF3SWQ6KE5TRGF0YSAqKXJhd0lkIGV4dGVuc2lvbnM6KFJldGFpblB0cjxfV0tBdXRo
ZW50aWNhdGlvbkV4dGVuc2lvbnNDbGllbnRPdXRwdXRzPiYmKWV4dGVuc2lvbnMgYXV0aGVudGlj
YXRvckRhdGE6KE5TRGF0YSAqKWF1dGhlbnRpY2F0b3JEYXRhIHNpZ25hdHVyZTooTlNEYXRhICop
c2lnbmF0dXJlIHVzZXJIYW5kbGU6KE5TRGF0YSAqIF9OdWxsYWJsZSl1c2VySGFuZGxlIGF0dGFj
aG1lbnQ6KF9XS0F1dGhlbnRpY2F0b3JBdHRhY2htZW50KWF0dGFjaG1lbnQ7CiAKIEBlbmQKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhl
bnRpY2F0aW9uQXNzZXJ0aW9uUmVzcG9uc2UuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvbkFzc2VydGlvblJlc3BvbnNlLmgKaW5kZXggMjZj
NTZkZTM3OTg0MDkwODQ0MWQ2MDZlZTM1YTdjZjliMzg3YmVlMS4uZTJlZmMzOTFiN2YzZjNmMDEy
M2UxYmQxMTYwZTk1MGUxNWFkZjExZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0aW9uUmVzcG9uc2UuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2ViQXV0aGVudGljYXRpb25B
c3NlcnRpb25SZXNwb25zZS5oCkBAIC0zNSw3ICszNSw3IEBAIFdLX0NMQVNTX0FWQUlMQUJMRSht
YWNvcygxMS4wKSwgaW9zKDE0LjApKQogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHks
IGNvcHkpIE5TU3RyaW5nICpuYW1lOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBj
b3B5KSBOU1N0cmluZyAqZGlzcGxheU5hbWU7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9u
bHksIGNvcHkpIE5TRGF0YSAqdXNlckhhbmRsZTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFk
b25seSwgbnVsbGFibGUsIGNvcHkpIE5TRGF0YSAqdXNlckhhbmRsZTsKIEBwcm9wZXJ0eSAobm9u
YXRvbWljLCByZWFkb25seSkgQk9PTCBzeW5jaHJvbml6YWJsZTsKIEBwcm9wZXJ0eSAobm9uYXRv
bWljLCByZWFkb25seSwgY29weSkgTlNTdHJpbmcgKmdyb3VwOwogQHByb3BlcnR5IChub25hdG9t
aWMsIHJlYWRvbmx5LCBjb3B5KSBOU0RhdGEgKmNyZWRlbnRpYWxJRDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVs
Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRpY2F0
aW9uUGFuZWwubW0KaW5kZXggMGY2OTA5MzFlNGQzNWNiOWE2MjQ4NTM3ZGE4ZTk0ODllOWI3Njk4
NC4uODkwM2U5NDAzMGZkMjYyMGYzODI5MDdmYTgzYTU3YTZjMWQwNWE1YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uUGFu
ZWwubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhl
bnRpY2F0aW9uUGFuZWwubW0KQEAgLTI3NiwyMiArMjc2LDIxIEBAIHN0YXRpYyBSZXRhaW5QdHI8
TlNBcnJheT4gZ2V0QWxsTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbHNJbXBsKE5TU3RyaW5n
ICphY2NlCiAgICAgICAgIH0KICAgICAgICAgYXV0byYgdXNlcm5hbWUgPSBpdC0+c2Vjb25kLmdl
dFN0cmluZygpOwogCi0gICAgICAgIGl0ID0gcmVzcG9uc2VNYXAuZmluZChjYm9yOjpDQk9SVmFs
dWUoZmlkbzo6a0VudGl0eUlkTWFwS2V5KSk7Ci0gICAgICAgIGlmIChpdCA9PSByZXNwb25zZU1h
cC5lbmQoKSB8fCAhaXQtPnNlY29uZC5pc0J5dGVTdHJpbmcoKSkgewotICAgICAgICAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAg
fQotICAgICAgICBhdXRvJiB1c2VySGFuZGxlID0gaXQtPnNlY29uZC5nZXRCeXRlU3RyaW5nKCk7
Ci0KICAgICAgICAgYXV0byBjcmVkZW50aWFsID0gYWRvcHROUyhbW05TTXV0YWJsZURpY3Rpb25h
cnkgYWxsb2NdIGluaXRXaXRoT2JqZWN0c0FuZEtleXM6CiAgICAgICAgICAgICB1c2VybmFtZSwg
X1dLTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbE5hbWVLZXksCiAgICAgICAgICAgICBhdHRy
aWJ1dGVzW2JyaWRnZV9jYXN0KGtTZWNBdHRyQXBwbGljYXRpb25MYWJlbCldLCBfV0tMb2NhbEF1
dGhlbnRpY2F0b3JDcmVkZW50aWFsSURLZXksCiAgICAgICAgICAgICBhdHRyaWJ1dGVzW2JyaWRn
ZV9jYXN0KGtTZWNBdHRyTGFiZWwpXSwgX1dLTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbFJl
bHlpbmdQYXJ0eUlES2V5LAogICAgICAgICAgICAgYXR0cmlidXRlc1ticmlkZ2VfY2FzdChrU2Vj
QXR0ck1vZGlmaWNhdGlvbkRhdGUpXSwgX1dLTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbExh
c3RNb2RpZmljYXRpb25EYXRlS2V5LAogICAgICAgICAgICAgYXR0cmlidXRlc1ticmlkZ2VfY2Fz
dChrU2VjQXR0ckNyZWF0aW9uRGF0ZSldLCBfV0tMb2NhbEF1dGhlbnRpY2F0b3JDcmVkZW50aWFs
Q3JlYXRpb25EYXRlS2V5LAotICAgICAgICAgICAgYWRvcHROUyhbW05TRGF0YSBhbGxvY10gaW5p
dFdpdGhCeXRlczp1c2VySGFuZGxlLmRhdGEoKSBsZW5ndGg6dXNlckhhbmRsZS5zaXplKCldKS5n
ZXQoKSwgX1dLTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbFVzZXJIYW5kbGVLZXksCiAgICAg
ICAgICAgICBuaWwKICAgICAgICAgXSk7CisgICAgICAgIGl0ID0gcmVzcG9uc2VNYXAuZmluZChj
Ym9yOjpDQk9SVmFsdWUoZmlkbzo6a0VudGl0eUlkTWFwS2V5KSk7CisgICAgICAgIGlmIChpdCAh
PSByZXNwb25zZU1hcC5lbmQoKSAmJiBpdC0+c2Vjb25kLmlzQnl0ZVN0cmluZygpKSB7CisgICAg
ICAgICAgICBhdXRvJiB1c2VySGFuZGxlID0gaXQtPnNlY29uZC5nZXRCeXRlU3RyaW5nKCk7Cisg
ICAgICAgICAgICBbY3JlZGVudGlhbCBzZXRPYmplY3Q6YWRvcHROUyhbW05TRGF0YSBhbGxvY10g
aW5pdFdpdGhCeXRlczp1c2VySGFuZGxlLmRhdGEoKSBsZW5ndGg6dXNlckhhbmRsZS5zaXplKCld
KS5nZXQoKSBmb3JLZXk6X1dLTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbFVzZXJIYW5kbGVL
ZXldOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIFtjcmVkZW50aWFsIHNldE9iamVjdDpb
TlNOdWxsIG51bGxdIGZvcktleTpfV0tMb2NhbEF1dGhlbnRpY2F0b3JDcmVkZW50aWFsVXNlckhh
bmRsZUtleV07CisKICAgICAgICAgdXBkYXRlQ3JlZGVudGlhbElmTmVjZXNzYXJ5KGNyZWRlbnRp
YWwuZ2V0KCksIGF0dHJpYnV0ZXMpOwogCiAgICAgICAgIGl0ID0gcmVzcG9uc2VNYXAuZmluZChj
Ym9yOjpDQk9SVmFsdWUoZmlkbzo6a0Rpc3BsYXlOYW1lTWFwS2V5KSk7CmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNGQ3NWE0NTc5OTFiZWU5Njc5
ZWEwM2QxZTk3Y2ViY2RjNDYyMDdjYy4uNGFmOGM1M2U5YTE5MjJiNWY1Y2MxN2NmMTUwZDc2MDQ3
Y2JlNDU0MiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE2IEBACisyMDIyLTAyLTIyICBKIFBhc2NvZSAgPGpfcGFzY29lQGFwcGxl
LmNvbT4KKworICAgICAgICBbV2ViQXV0aG5dIHVzZXJIYW5kbGUgbm90IG1hcmtlZCBudWxsYWJs
ZSBpbiBfV0tXZWJBdXRoZW50aWNhdGlvbkFzc2VydGlvblJlc3BvbnNlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzcwNDMKKyAgICAgICAgcmRhcjov
Lzg5Mjc1ODQ0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQ3JlYXRlIHRlc3QgdG8gY2hlY2sgZm9yIG51bGwgdXNlckhhbmRsZS4KKworICAgICAgICAq
IFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLV2ViQXV0aGVudGljYXRpb25QYW5l
bC5tbToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorCiAyMDIyLTAyLTIyICBKb25h
dGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KIAogICAgICAgICBbZ2l0LXdlYmtpdF0g
TGluayB0byBHaXRIdWIgd2lraQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGIvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tCmlu
ZGV4IDk0NzE1ODFiNWE1ZDExMGU3YmM5NjlkMmMzYzBkMDg3YWU3ZTc0MGEuLjMwZGQwOWYwZGJi
MDFkNDcxNzFiOWM0YzFiYzczYTdjOTVhMTU2YTIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLV2ViQXV0aGVudGljYXRpb25QYW5lbC5tbQorKysg
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL19XS1dlYkF1dGhlbnRpY2F0
aW9uUGFuZWwubW0KQEAgLTgxLDYgKzgxLDcgQEAgc3RhdGljIFN0cmluZyB0ZXN0RVMyNTZQcml2
YXRlS2V5QmFzZTY0ID0KICAgICAiUEg3NmMwK1dGT3paS3NsUHl5RnNlNGdvR0lXMlI3azlWSExQ
RVpsNW5mbkJnRVZGaDV6ZXYrL3hwSFFJdnVxNiIKICAgICAiUlE9PSI7CiBzdGF0aWMgU3RyaW5n
IHRlc3RVc2VyRW50aXR5QnVuZGxlQmFzZTY0ID0gIm9tSnBaRW9BQVFJREJBVUdCd2dKWkc1aGJX
VmtTbTlvYmc9PSI7IC8vIHsgImlkIjogaCcwMDAxMDIwMzA0MDUwNjA3MDgwOScsICJuYW1lIjog
IkpvaG4iIH0KK3N0YXRpYyBTdHJpbmcgdGVzdFVzZXJFbnRpdHlCdW5kbGVOb1VzZXJIYW5kbGVC
YXNlNjQgPSAib1dSdVlXMWxiRTFESUU1dkxVaGhibVJzWlE9PSI7IC8vIHsibmFtZSI6ICJNQyBO
by1IYW5kbGUifQogc3RhdGljIFN0cmluZyB3ZWJBdXRoZW50aWNhdGlvblBhbmVsU2VsZWN0ZWRD
cmVkZW50aWFsTmFtZTsKIHN0YXRpYyBTdHJpbmcgdGVzdFdlYktpdEFQSUFjY2Vzc0dyb3VwID0g
ImNvbS5hcHBsZS5UZXN0V2ViS2l0QVBJIjsKIHN0YXRpYyBTdHJpbmcgdGVzdFdlYktpdEFQSUFs
dGVybmF0ZUFjY2Vzc0dyb3VwID0gImNvbS5hcHBsZS5UZXN0V2ViS2l0QVBJQWx0ZXJuYXRlIjsK
QEAgLTIxMjgsNiArMjEyOSwzNCBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFz
c2VydGlvbkxBQ2xpZW50RGF0YUhhc2gpCiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlv
blBhbmVsUmFuKTsKIH0KIAorVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBHZXRBc3NlcnRp
b25OdWxsVXNlckhhbmRsZSkKK3sKKyAgICByZXNldCgpOworCisgICAgQVNTRVJUX1RSVUUoYWRk
S2V5VG9LZXljaGFpbih0ZXN0RVMyNTZQcml2YXRlS2V5QmFzZTY0LCAiZXhhbXBsZS5jb20iLCB0
ZXN0VXNlckVudGl0eUJ1bmRsZU5vVXNlckhhbmRsZUJhc2U2NCkpOworCisgICAgdWludDhfdCBo
YXNoW10gPSB7IDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQs
IDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4
MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMs
IDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQgfTsKKyAgICBOU0RhdGEgKm5zSGFzaCA9IFtO
U0RhdGEgZGF0YVdpdGhCeXRlczpoYXNoIGxlbmd0aDpzaXplb2YoaGFzaCldOworCisgICAgYXV0
byBvcHRpb25zID0gYWRvcHROUyhbW19XS1B1YmxpY0tleUNyZWRlbnRpYWxSZXF1ZXN0T3B0aW9u
cyBhbGxvY10gaW5pdF0pOworICAgIFtvcHRpb25zIHNldFJlbHlpbmdQYXJ0eUlkZW50aWZpZXI6
QCJleGFtcGxlLmNvbSJdOworCisgICAgYXV0byBwYW5lbCA9IGFkb3B0TlMoW1tfV0tXZWJBdXRo
ZW50aWNhdGlvblBhbmVsIGFsbG9jXSBpbml0XSk7CisgICAgW3BhbmVsIHNldE1vY2tDb25maWd1
cmF0aW9uOkB7IH1dOworICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhl
bnRpY2F0aW9uUGFuZWxEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOworICAgIFtwYW5lbCBzZXREZWxl
Z2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisKKyAgICBbcGFuZWwgZ2V0QXNzZXJ0aW9uV2l0aENsaWVu
dERhdGFIYXNoOm5zSGFzaCBvcHRpb25zOm9wdGlvbnMuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6
XihfV0tBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UgKnJlc3BvbnNlLCBOU0Vycm9yICpl
cnJvcikgeworICAgICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuID0gdHJ1ZTsKKyAgICAg
ICAgY2xlYW5VcEtleWNoYWluKCJleGFtcGxlLmNvbSIpOworCisgICAgICAgIEVYUEVDVF9OVUxM
KGVycm9yKTsKKworICAgICAgICBFWFBFQ1RfTlVMTChyZXNwb25zZS51c2VySGFuZGxlKTsKKyAg
ICB9XTsKKyAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOworfQorCiBU
RVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFzc2VydGlvbkNyb3NzUGxhdGZvcm0pCiB7
CiAgICAgcmVzZXQoKTsKQEAgLTIxODUsNiArMjIxNCwyNCBAQCBURVNUKFdlYkF1dGhlbnRpY2F0
aW9uUGFuZWwsIEdldEFsbENyZWRlbnRpYWwpCiAgICAgY2xlYW5VcEtleWNoYWluKCJleGFtcGxl
LmNvbSIpOwogfQogCitURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFsbENyZWRlbnRp
YWxOdWxsVXNlckhhbmRsZSkKK3sKKyAgICByZXNldCgpOworCisgICAgQVNTRVJUX1RSVUUoYWRk
S2V5VG9LZXljaGFpbih0ZXN0RVMyNTZQcml2YXRlS2V5QmFzZTY0LCAiZXhhbXBsZS5jb20iLCB0
ZXN0VXNlckVudGl0eUJ1bmRsZU5vVXNlckhhbmRsZUJhc2U2NCkpOworCisgICAgYXV0byBhZnRl
ciA9IGFkb3B0TlMoW1tOU0RhdGUgYWxsb2NdIGluaXRdKTsKKworICAgIGF1dG8gKmNyZWRlbnRp
YWxzID0gW19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwgZ2V0QWxsTG9jYWxBdXRoZW50aWNhdG9y
Q3JlZGVudGlhbHNXaXRoQWNjZXNzR3JvdXA6QCJjb20uYXBwbGUuVGVzdFdlYktpdEFQSSJdOwor
ICAgIEVYUEVDVF9OT1RfTlVMTChjcmVkZW50aWFscyk7CisgICAgRVhQRUNUX0VRKFtjcmVkZW50
aWFscyBjb3VudF0sIDFsdSk7CisKKyAgICBFWFBFQ1RfTk9UX05VTEwoW2NyZWRlbnRpYWxzIGZp
cnN0T2JqZWN0XSk7CisgICAgRVhQRUNUX0VRKFtjcmVkZW50aWFscyBmaXJzdE9iamVjdF1bX1dL
TG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbFVzZXJIYW5kbGVLZXldLCBbTlNOdWxsIG51bGxd
KTsKKworICAgIGNsZWFuVXBLZXljaGFpbigiZXhhbXBsZS5jb20iKTsKK30KKwogVEVTVChXZWJB
dXRoZW50aWNhdGlvblBhbmVsLCBHZXRBbGxDcmVkZW50aWFsV2l0aERpc3BsYXlOYW1lKQogewog
ICAgIHJlc2V0KCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452904</attachid>
            <date>2022-02-22 14:49:19 -0800</date>
            <delta_ts>2022-02-23 10:21:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237043-20220222144918.patch</filename>
            <type>text/plain</type>
            <size>17536</size>
            <attacher name="pascoe@apple.com">pascoe</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMzMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGJjZWUxYTYwMzAwYzMz
YzMzMzM1Y2E1N2ZlOTY4ZTQ5Y2MzNGFmNy4uOWY2NjBlYzQyMGQ0MjUwZTBkN2YwMThjYWQxNDNj
MjVlNGYxNGRlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAyLTIyICBKIFBh
c2NvZSAgPGpfcGFzY29lQGFwcGxlLmNvbT4KKworICAgICAgICBbV2ViQXV0aG5dIHVzZXJIYW5k
bGUgbm90IG1hcmtlZCBudWxsYWJsZSBpbiBfV0tXZWJBdXRoZW50aWNhdGlvbkFzc2VydGlvblJl
c3BvbnNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzcwNDMKKyAgICAgICAgcmRhcjovLzg5MzE3NzQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIHVzZXJIYW5kbGUgaXMgYSBudWxsYWJsZSBmaWVs
ZCBvbiBVc2VyRW50aXR5LiBUaGlzIHBhdGNoIGNoYW5nZXMKKyAgICAgICAgdmFyaW91cyBBUEkv
U1BJIHRvIGFsbG93IHBhc3NpbmcgbnVsbCB1c2VySGFuZGxlLgorCisgICAgICAgICogTW9kdWxl
cy93ZWJhdXRobi9BdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlOjpjcmVhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6QXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlOjpBdXRoZW50aWNhdG9y
QXNzZXJ0aW9uUmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXV0aG4vQXV0aGVudGlj
YXRvckFzc2VydGlvblJlc3BvbnNlLmg6CisKIDIwMjItMDItMjIgIEZyw6lkw6lyaWMgV2FuZyAg
PGZ3YW5nQGlnYWxpYS5jb20+CiAKICAgICAgICAgbnVsbCBwdHIgZGVyZWYgdmlhIFdlYlhSU3lz
dGVtOjpyZXF1ZXN0U2Vzc2lvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCAyZmI0YWJhMTFkYjVlZGI4ZjIzNjNlYTQx
Y2ExYThkNDAxNTQ3NzUwLi4yMWU1NTcwM2Y3MmEyN2VhMmY5NjRiZGNhZDU1ZWI2MjM4Yjc5MjQ2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIyLTAyLTIyICBKIFBhc2NvZSAgPGpfcGFz
Y29lQGFwcGxlLmNvbT4KKworICAgICAgICBbV2ViQXV0aG5dIHVzZXJIYW5kbGUgbm90IG1hcmtl
ZCBudWxsYWJsZSBpbiBfV0tXZWJBdXRoZW50aWNhdGlvbkFzc2VydGlvblJlc3BvbnNlCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzcwNDMKKyAgICAg
ICAgcmRhcjovLzg5MzE3NzQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhlIHVzZXJIYW5kbGUgaXMgYSBudWxsYWJsZSBmaWVsZCBvbiBVc2VyRW50
aXR5LiBUaGlzIHBhdGNoIGNoYW5nZXMKKyAgICAgICAgdmFyaW91cyBBUEkvU1BJIHRvIGFsbG93
IHBhc3NpbmcgbnVsbCB1c2VySGFuZGxlLgorCisgICAgICAgICogUGxhdGZvcm0vc3BpL0NvY29h
L0F1dGhlbnRpY2F0aW9uU2VydmljZXNDb3JlU1BJLmg6CisgICAgICAgIFVwZGF0ZSBmb3J3YXJk
IGRlY2xhcmVkIFNQSSwgcmVmbGVjdGluZyB1c2VySGFuZGxlIGFzIG51bGxhYmxlLgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLQXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNl
SW50ZXJuYWwuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRp
Y2F0aW9uQXNzZXJ0aW9uUmVzcG9uc2UuaDoKKyAgICAgICAgVXBkYXRlIHVzZXJIYW5kbGUgcHJv
cGVydHkgdG8gbnVsbC4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhl
bnRpY2F0aW9uUGFuZWwubW06CisgICAgICAgIChnZXRBbGxMb2NhbEF1dGhlbnRpY2F0b3JDcmVk
ZW50aWFsc0ltcGwpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2Nv
YS9Mb2NhbEF1dGhlbnRpY2F0b3IubW06CisgICAgICAgIChXZWJLaXQ6OkxvY2FsQXV0aGVudGlj
YXRvckludGVybmFsOjpnZXRFeGlzdGluZ0NyZWRlbnRpYWxzKToKKwogMjAyMi0wMi0yMiAgRnVq
aWkgSGlyb25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KIAogICAgICAgICBbV2luQ2Fp
cm9dW1dLMl0gYW5pbWF0aW9ucy9iYWNrZ3JvdW5kLXBvc2l0aW9uLmh0bWwgaXMgdGltaW5nIG91
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdXRobi9BdXRoZW50aWNh
dG9yQXNzZXJ0aW9uUmVzcG9uc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdXRo
bi9BdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UuY3BwCmluZGV4IDFmMmFjMzcyODg1MTI5
OWYzM2JlMGE0MzlkZmViZjJiNDM0ZTcyMTcuLjJkZDFmZDMyM2EzYWFiZmFhNzlkZDI2MjQyMGM0
Njk0MzZkZGYwNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXV0aG4v
QXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1dGhuL0F1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZS5jcHAKQEAgLTQ4
LDcgKzQ4LDcgQEAgUmVmPEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZT4gQXV0aGVudGlj
YXRvckFzc2VydGlvblJlc3BvbnNlOjpjcmVhdGUoY29uc3QKICAgICByZXR1cm4gY3JlYXRlKEFy
cmF5QnVmZmVyOjpjcmVhdGUocmF3SWQuZGF0YSgpLCByYXdJZC5zaXplKCkpLCBBcnJheUJ1ZmZl
cjo6Y3JlYXRlKGF1dGhlbnRpY2F0b3JEYXRhLmRhdGEoKSwgYXV0aGVudGljYXRvckRhdGEuc2l6
ZSgpKSwgQXJyYXlCdWZmZXI6OmNyZWF0ZShzaWduYXR1cmUuZGF0YSgpLCBzaWduYXR1cmUuc2l6
ZSgpKSwgV1RGTW92ZSh1c2VyaGFuZGxlQnVmZmVyKSwgc3RkOjpudWxsb3B0LCBhdHRhY2htZW50
KTsKIH0KIAotUmVmPEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZT4gQXV0aGVudGljYXRv
ckFzc2VydGlvblJlc3BvbnNlOjpjcmVhdGUoUmVmPEFycmF5QnVmZmVyPiYmIHJhd0lkLCBSZWY8
QXJyYXlCdWZmZXI+JiYgdXNlckhhbmRsZSwgU3RyaW5nJiYgbmFtZSwgU2VjQWNjZXNzQ29udHJv
bFJlZiBhY2Nlc3NDb250cm9sLCBBdXRoZW50aWNhdG9yQXR0YWNobWVudCBhdHRhY2htZW50KQor
UmVmPEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZT4gQXV0aGVudGljYXRvckFzc2VydGlv
blJlc3BvbnNlOjpjcmVhdGUoUmVmPEFycmF5QnVmZmVyPiYmIHJhd0lkLCBSZWZQdHI8QXJyYXlC
dWZmZXI+JiYgdXNlckhhbmRsZSwgU3RyaW5nJiYgbmFtZSwgU2VjQWNjZXNzQ29udHJvbFJlZiBh
Y2Nlc3NDb250cm9sLCBBdXRoZW50aWNhdG9yQXR0YWNobWVudCBhdHRhY2htZW50KQogewogICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZShXVEZN
b3ZlKHJhd0lkKSwgV1RGTW92ZSh1c2VySGFuZGxlKSwgV1RGTW92ZShuYW1lKSwgYWNjZXNzQ29u
dHJvbCwgYXR0YWNobWVudCkpOwogfQpAQCAtNjYsNyArNjYsNyBAQCBBdXRoZW50aWNhdG9yQXNz
ZXJ0aW9uUmVzcG9uc2U6OkF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZShSZWY8QXJyYXlC
dWZmZXI+JgogewogfQogCi1BdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2U6OkF1dGhlbnRp
Y2F0b3JBc3NlcnRpb25SZXNwb25zZShSZWY8QXJyYXlCdWZmZXI+JiYgcmF3SWQsIFJlZjxBcnJh
eUJ1ZmZlcj4mJiB1c2VySGFuZGxlLCBTdHJpbmcmJiBuYW1lLCBTZWNBY2Nlc3NDb250cm9sUmVm
IGFjY2Vzc0NvbnRyb2wsIEF1dGhlbnRpY2F0b3JBdHRhY2htZW50IGF0dGFjaG1lbnQpCitBdXRo
ZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2U6OkF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25z
ZShSZWY8QXJyYXlCdWZmZXI+JiYgcmF3SWQsIFJlZlB0cjxBcnJheUJ1ZmZlcj4mJiB1c2VySGFu
ZGxlLCBTdHJpbmcmJiBuYW1lLCBTZWNBY2Nlc3NDb250cm9sUmVmIGFjY2Vzc0NvbnRyb2wsIEF1
dGhlbnRpY2F0b3JBdHRhY2htZW50IGF0dGFjaG1lbnQpCiAgICAgOiBBdXRoZW50aWNhdG9yUmVz
cG9uc2UoV1RGTW92ZShyYXdJZCksIGF0dGFjaG1lbnQpCiAgICAgLCBtX3VzZXJIYW5kbGUoV1RG
TW92ZSh1c2VySGFuZGxlKSkKICAgICAsIG1fbmFtZShXVEZNb3ZlKG5hbWUpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdXRobi9BdXRoZW50aWNhdG9yQXNzZXJ0aW9u
UmVzcG9uc2UuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXV0aG4vQXV0aGVudGljYXRv
ckFzc2VydGlvblJlc3BvbnNlLmgKaW5kZXggZTQyMDgyZTBkOTlkOTY0MmYyNjUzNjFiOTAxZjNl
MzYzMmJkNmRhMS4uMTVmNmQ3NmNiYTkxMzA1ZDIwNTk0NGE3OGQyOGJmYjdmMzBkODVkMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdXRobi9BdXRoZW50aWNhdG9yQXNz
ZXJ0aW9uUmVzcG9uc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1dGhuL0F1
dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZS5oCkBAIC0zOSw3ICszOSw3IEBAIGNsYXNzIEF1
dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZSA6IHB1YmxpYyBBdXRoZW50aWNhdG9yUmVzcG9u
c2UgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8QXV0aGVudGljYXRvckFzc2VydGlvblJlc3Bv
bnNlPiBjcmVhdGUoUmVmPEFycmF5QnVmZmVyPiYmIHJhd0lkLCBSZWY8QXJyYXlCdWZmZXI+JiYg
YXV0aGVudGljYXRvckRhdGEsIFJlZjxBcnJheUJ1ZmZlcj4mJiBzaWduYXR1cmUsIFJlZlB0cjxB
cnJheUJ1ZmZlcj4mJiB1c2VySGFuZGxlLCBzdGQ6Om9wdGlvbmFsPEF1dGhlbnRpY2F0aW9uRXh0
ZW5zaW9uc0NsaWVudE91dHB1dHM+JiYsIEF1dGhlbnRpY2F0b3JBdHRhY2htZW50KTsKICAgICBX
RUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZT4g
Y3JlYXRlKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgcmF3SWQsIGNvbnN0IFZlY3Rvcjx1aW50OF90
PiYgYXV0aGVudGljYXRvckRhdGEsIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgc2lnbmF0dXJlLCAg
Y29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiB1c2VySGFuZGxlLCBBdXRoZW50aWNhdG9yQXR0YWNobWVu
dCk7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxBdXRoZW50aWNhdG9yQXNzZXJ0aW9u
UmVzcG9uc2U+IGNyZWF0ZShSZWY8QXJyYXlCdWZmZXI+JiYgcmF3SWQsIFJlZjxBcnJheUJ1ZmZl
cj4mJiB1c2VySGFuZGxlLCBTdHJpbmcmJiBuYW1lLCBTZWNBY2Nlc3NDb250cm9sUmVmLCBBdXRo
ZW50aWNhdG9yQXR0YWNobWVudCk7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxBdXRo
ZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2U+IGNyZWF0ZShSZWY8QXJyYXlCdWZmZXI+JiYgcmF3
SWQsIFJlZlB0cjxBcnJheUJ1ZmZlcj4mJiB1c2VySGFuZGxlLCBTdHJpbmcmJiBuYW1lLCBTZWNB
Y2Nlc3NDb250cm9sUmVmLCBBdXRoZW50aWNhdG9yQXR0YWNobWVudCk7CiAgICAgdmlydHVhbCB+
QXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlKCkgPSBkZWZhdWx0OwogCiAgICAgQXJyYXlC
dWZmZXIqIGF1dGhlbnRpY2F0b3JEYXRhKCkgY29uc3QgeyByZXR1cm4gbV9hdXRoZW50aWNhdG9y
RGF0YS5nZXQoKTsgfQpAQCAtNjQsNyArNjQsNyBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAg
QXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlKFJlZjxBcnJheUJ1ZmZlcj4mJiwgUmVmPEFy
cmF5QnVmZmVyPiYmLCBSZWY8QXJyYXlCdWZmZXI+JiYsIFJlZlB0cjxBcnJheUJ1ZmZlcj4mJiwg
QXV0aGVudGljYXRvckF0dGFjaG1lbnQpOwotICAgIEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNw
b25zZShSZWY8QXJyYXlCdWZmZXI+JiYsIFJlZjxBcnJheUJ1ZmZlcj4mJiwgU3RyaW5nJiYsIFNl
Y0FjY2Vzc0NvbnRyb2xSZWYsIEF1dGhlbnRpY2F0b3JBdHRhY2htZW50KTsKKyAgICBBdXRoZW50
aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UoUmVmPEFycmF5QnVmZmVyPiYmLCBSZWZQdHI8QXJyYXlC
dWZmZXI+JiYsIFN0cmluZyYmLCBTZWNBY2Nlc3NDb250cm9sUmVmLCBBdXRoZW50aWNhdG9yQXR0
YWNobWVudCk7CiAKICAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpB
c3NlcnRpb247IH0KICAgICBBdXRoZW50aWNhdG9yUmVzcG9uc2VEYXRhIGRhdGEoKSBjb25zdCBm
aW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL0NvY29hL0F1dGhl
bnRpY2F0aW9uU2VydmljZXNDb3JlU1BJLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9D
b2NvYS9BdXRoZW50aWNhdGlvblNlcnZpY2VzQ29yZVNQSS5oCmluZGV4IDM3YWQzMWJiNmY0MTUz
NjM2YzA0NjkwMDQ2ZTdhMjVkZGIyODM0MDYuLjQyNDk5MGZhN2JkMTQ3NTIwNTIxMDdmYzNhZDIx
ODRjODUxZDUzMjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL0NvY29h
L0F1dGhlbnRpY2F0aW9uU2VydmljZXNDb3JlU1BJLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0
Zm9ybS9zcGkvQ29jb2EvQXV0aGVudGljYXRpb25TZXJ2aWNlc0NvcmVTUEkuaApAQCAtMjIxLDcg
KzIyMSw3IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBBU0NDcmVkZW50aWFsUmVx
dWVzdFR5cGVzKSB7CiAKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgY29weSkgTlNT
dHJpbmcgKm5hbWU7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGNvcHkpIE5TU3Ry
aW5nICpkaXNwbGF5TmFtZTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgY29weSkg
TlNEYXRhICp1c2VySGFuZGxlOworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBudWxs
YWJsZSwgY29weSkgTlNEYXRhICp1c2VySGFuZGxlOwogQHByb3BlcnR5IChub25hdG9taWMsIHJl
YWRvbmx5KSBCT09MIGlzUmVnaXN0cmF0aW9uUmVxdWVzdDsKIAogKyAoaW5zdGFuY2V0eXBlKW5l
dyBOU19VTkFWQUlMQUJMRTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9fV0tBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2VJbnRlcm5hbC5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0F1dGhlbnRpY2F0b3JBc3NlcnRpb25S
ZXNwb25zZUludGVybmFsLmgKaW5kZXggZjQ4OTM4OTVmNjI0ODhlMjQxMzZlN2ZmNDhlYzE3MTYz
MjkwZDE4Zi4uNGFiMjQyMzhlZDY1NDZhZDhkZDgyNzIwNmZlZTI3YmFhODZiOTdjZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0F1dGhlbnRpY2F0b3JB
c3NlcnRpb25SZXNwb25zZUludGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0NvY29hL19XS0F1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZUludGVybmFsLmgKQEAg
LTM0LDcgKzM0LDcgQEAgTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIAogQGludGVyZmFjZSBfV0tB
dXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UgKCkKIAotLSAoaW5zdGFuY2V0eXBlKWluaXRX
aXRoQ2xpZW50RGF0YUpTT046KE5TRGF0YSAqKWNsaWVudERhdGFKU09OIHJhd0lkOihOU0RhdGEg
KilyYXdJZCBleHRlbnNpb25zOihSZXRhaW5QdHI8X1dLQXV0aGVudGljYXRpb25FeHRlbnNpb25z
Q2xpZW50T3V0cHV0cz4mJilleHRlbnNpb25zIGF1dGhlbnRpY2F0b3JEYXRhOihOU0RhdGEgKilh
dXRoZW50aWNhdG9yRGF0YSBzaWduYXR1cmU6KE5TRGF0YSAqKXNpZ25hdHVyZSB1c2VySGFuZGxl
OihOU0RhdGEgKil1c2VySGFuZGxlIGF0dGFjaG1lbnQ6KF9XS0F1dGhlbnRpY2F0b3JBdHRhY2ht
ZW50KWF0dGFjaG1lbnQ7CistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDbGllbnREYXRhSlNPTjoo
TlNEYXRhICopY2xpZW50RGF0YUpTT04gcmF3SWQ6KE5TRGF0YSAqKXJhd0lkIGV4dGVuc2lvbnM6
KFJldGFpblB0cjxfV0tBdXRoZW50aWNhdGlvbkV4dGVuc2lvbnNDbGllbnRPdXRwdXRzPiYmKWV4
dGVuc2lvbnMgYXV0aGVudGljYXRvckRhdGE6KE5TRGF0YSAqKWF1dGhlbnRpY2F0b3JEYXRhIHNp
Z25hdHVyZTooTlNEYXRhICopc2lnbmF0dXJlIHVzZXJIYW5kbGU6KE5TRGF0YSAqIF9OdWxsYWJs
ZSl1c2VySGFuZGxlIGF0dGFjaG1lbnQ6KF9XS0F1dGhlbnRpY2F0b3JBdHRhY2htZW50KWF0dGFj
aG1lbnQ7CiAKIEBlbmQKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0aW9uUmVzcG9uc2UuaCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvbkFzc2VydGlvblJl
c3BvbnNlLmgKaW5kZXggMjZjNTZkZTM3OTg0MDkwODQ0MWQ2MDZlZTM1YTdjZjliMzg3YmVlMS4u
ZTJlZmMzOTFiN2YzZjNmMDEyM2UxYmQxMTYwZTk1MGUxNWFkZjExZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0
aW9uUmVzcG9uc2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
V2ViQXV0aGVudGljYXRpb25Bc3NlcnRpb25SZXNwb25zZS5oCkBAIC0zNSw3ICszNSw3IEBAIFdL
X0NMQVNTX0FWQUlMQUJMRShtYWNvcygxMS4wKSwgaW9zKDE0LjApKQogCiBAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHksIGNvcHkpIE5TU3RyaW5nICpuYW1lOwogQHByb3BlcnR5IChub25h
dG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU1N0cmluZyAqZGlzcGxheU5hbWU7Ci1AcHJvcGVydHkg
KG5vbmF0b21pYywgcmVhZG9ubHksIGNvcHkpIE5TRGF0YSAqdXNlckhhbmRsZTsKK0Bwcm9wZXJ0
eSAobm9uYXRvbWljLCByZWFkb25seSwgbnVsbGFibGUsIGNvcHkpIE5TRGF0YSAqdXNlckhhbmRs
ZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQk9PTCBzeW5jaHJvbml6YWJsZTsK
IEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgY29weSkgTlNTdHJpbmcgKmdyb3VwOwog
QHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU0RhdGEgKmNyZWRlbnRpYWxJ
RDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJB
dXRoZW50aWNhdGlvblBhbmVsLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW0KaW5kZXggMGY2OTA5MzFlNGQzNWNiOWE2MjQ4
NTM3ZGE4ZTk0ODllOWI3Njk4NC4uODkwM2U5NDAzMGZkMjYyMGYzODI5MDdmYTgzYTU3YTZjMWQw
NWE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dl
YkF1dGhlbnRpY2F0aW9uUGFuZWwubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW0KQEAgLTI3NiwyMiArMjc2LDIxIEBA
IHN0YXRpYyBSZXRhaW5QdHI8TlNBcnJheT4gZ2V0QWxsTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVu
dGlhbHNJbXBsKE5TU3RyaW5nICphY2NlCiAgICAgICAgIH0KICAgICAgICAgYXV0byYgdXNlcm5h
bWUgPSBpdC0+c2Vjb25kLmdldFN0cmluZygpOwogCi0gICAgICAgIGl0ID0gcmVzcG9uc2VNYXAu
ZmluZChjYm9yOjpDQk9SVmFsdWUoZmlkbzo6a0VudGl0eUlkTWFwS2V5KSk7Ci0gICAgICAgIGlm
IChpdCA9PSByZXNwb25zZU1hcC5lbmQoKSB8fCAhaXQtPnNlY29uZC5pc0J5dGVTdHJpbmcoKSkg
ewotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICByZXR1cm4g
bnVsbHB0cjsKLSAgICAgICAgfQotICAgICAgICBhdXRvJiB1c2VySGFuZGxlID0gaXQtPnNlY29u
ZC5nZXRCeXRlU3RyaW5nKCk7Ci0KICAgICAgICAgYXV0byBjcmVkZW50aWFsID0gYWRvcHROUyhb
W05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRXaXRoT2JqZWN0c0FuZEtleXM6CiAgICAg
ICAgICAgICB1c2VybmFtZSwgX1dLTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbE5hbWVLZXks
CiAgICAgICAgICAgICBhdHRyaWJ1dGVzW2JyaWRnZV9jYXN0KGtTZWNBdHRyQXBwbGljYXRpb25M
YWJlbCldLCBfV0tMb2NhbEF1dGhlbnRpY2F0b3JDcmVkZW50aWFsSURLZXksCiAgICAgICAgICAg
ICBhdHRyaWJ1dGVzW2JyaWRnZV9jYXN0KGtTZWNBdHRyTGFiZWwpXSwgX1dLTG9jYWxBdXRoZW50
aWNhdG9yQ3JlZGVudGlhbFJlbHlpbmdQYXJ0eUlES2V5LAogICAgICAgICAgICAgYXR0cmlidXRl
c1ticmlkZ2VfY2FzdChrU2VjQXR0ck1vZGlmaWNhdGlvbkRhdGUpXSwgX1dLTG9jYWxBdXRoZW50
aWNhdG9yQ3JlZGVudGlhbExhc3RNb2RpZmljYXRpb25EYXRlS2V5LAogICAgICAgICAgICAgYXR0
cmlidXRlc1ticmlkZ2VfY2FzdChrU2VjQXR0ckNyZWF0aW9uRGF0ZSldLCBfV0tMb2NhbEF1dGhl
bnRpY2F0b3JDcmVkZW50aWFsQ3JlYXRpb25EYXRlS2V5LAotICAgICAgICAgICAgYWRvcHROUyhb
W05TRGF0YSBhbGxvY10gaW5pdFdpdGhCeXRlczp1c2VySGFuZGxlLmRhdGEoKSBsZW5ndGg6dXNl
ckhhbmRsZS5zaXplKCldKS5nZXQoKSwgX1dLTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbFVz
ZXJIYW5kbGVLZXksCiAgICAgICAgICAgICBuaWwKICAgICAgICAgXSk7CisgICAgICAgIGl0ID0g
cmVzcG9uc2VNYXAuZmluZChjYm9yOjpDQk9SVmFsdWUoZmlkbzo6a0VudGl0eUlkTWFwS2V5KSk7
CisgICAgICAgIGlmIChpdCAhPSByZXNwb25zZU1hcC5lbmQoKSAmJiBpdC0+c2Vjb25kLmlzQnl0
ZVN0cmluZygpKSB7CisgICAgICAgICAgICBhdXRvJiB1c2VySGFuZGxlID0gaXQtPnNlY29uZC5n
ZXRCeXRlU3RyaW5nKCk7CisgICAgICAgICAgICBbY3JlZGVudGlhbCBzZXRPYmplY3Q6YWRvcHRO
UyhbW05TRGF0YSBhbGxvY10gaW5pdFdpdGhCeXRlczp1c2VySGFuZGxlLmRhdGEoKSBsZW5ndGg6
dXNlckhhbmRsZS5zaXplKCldKS5nZXQoKSBmb3JLZXk6X1dLTG9jYWxBdXRoZW50aWNhdG9yQ3Jl
ZGVudGlhbFVzZXJIYW5kbGVLZXldOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIFtjcmVk
ZW50aWFsIHNldE9iamVjdDpbTlNOdWxsIG51bGxdIGZvcktleTpfV0tMb2NhbEF1dGhlbnRpY2F0
b3JDcmVkZW50aWFsVXNlckhhbmRsZUtleV07CisKICAgICAgICAgdXBkYXRlQ3JlZGVudGlhbElm
TmVjZXNzYXJ5KGNyZWRlbnRpYWwuZ2V0KCksIGF0dHJpYnV0ZXMpOwogCiAgICAgICAgIGl0ID0g
cmVzcG9uc2VNYXAuZmluZChjYm9yOjpDQk9SVmFsdWUoZmlkbzo6a0Rpc3BsYXlOYW1lTWFwS2V5
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlv
bi9Db2NvYS9Mb2NhbEF1dGhlbnRpY2F0b3IubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbEF1dGhlbnRpY2F0b3IubW0KaW5kZXggNWJhZTM2
MmNhNmNjMTg3NzYwOTg5NzhhZTM2YTBiMWY2OGIyNjhiZi4uZmVjMzc5NDkxOTI4NzljMDEwMzFm
ZDVjY2IwYWY0Nzk5YmFmMjg0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViQXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxBdXRoZW50aWNhdG9yLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQXV0aGVudGlj
YXRvci5tbQpAQCAtMTU0LDEyICsxNTQsMTEgQEAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8VmVjdG9y
PFJlZjxBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2U+Pj4gZ2V0RXhpc3RpbmdDcmUKICAg
ICAgICAgfQogICAgICAgICBhdXRvJiByZXNwb25zZU1hcCA9IGRlY29kZWRSZXNwb25zZS0+Z2V0
TWFwKCk7CiAKKyAgICAgICAgUmVmUHRyPEFycmF5QnVmZmVyPiB1c2VySGFuZGxlOwogICAgICAg
ICBhdXRvIGl0ID0gcmVzcG9uc2VNYXAuZmluZChDQk9SKGZpZG86OmtFbnRpdHlJZE1hcEtleSkp
OwotICAgICAgICBpZiAoaXQgPT0gcmVzcG9uc2VNYXAuZW5kKCkgfHwgIWl0LT5zZWNvbmQuaXNC
eXRlU3RyaW5nKCkpIHsKLSAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAg
ICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgaWYgKGl0ICE9IHJlc3BvbnNlTWFw
LmVuZCgpICYmIGl0LT5zZWNvbmQuaXNCeXRlU3RyaW5nKCkpIHsKKyAgICAgICAgICAgIHVzZXJI
YW5kbGUgPSB0b0FycmF5QnVmZmVyKGl0LT5zZWNvbmQuZ2V0Qnl0ZVN0cmluZygpKTsKICAgICAg
ICAgfQotICAgICAgICBhdXRvJiB1c2VySGFuZGxlID0gaXQtPnNlY29uZC5nZXRCeXRlU3RyaW5n
KCk7CiAKICAgICAgICAgaXQgPSByZXNwb25zZU1hcC5maW5kKENCT1IoZmlkbzo6a0VudGl0eU5h
bWVNYXBLZXkpKTsKICAgICAgICAgaWYgKGl0ID09IHJlc3BvbnNlTWFwLmVuZCgpIHx8ICFpdC0+
c2Vjb25kLmlzU3RyaW5nKCkpIHsKQEAgLTE2OCw3ICsxNjcsNyBAQCBzdGF0aWMgc3RkOjpvcHRp
b25hbDxWZWN0b3I8UmVmPEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZT4+PiBnZXRFeGlz
dGluZ0NyZQogICAgICAgICB9CiAgICAgICAgIGF1dG8mIHVzZXJuYW1lID0gaXQtPnNlY29uZC5n
ZXRTdHJpbmcoKTsKIAotICAgICAgICBhdXRvIHJlc3BvbnNlID0gQXV0aGVudGljYXRvckFzc2Vy
dGlvblJlc3BvbnNlOjpjcmVhdGUodG9BcnJheUJ1ZmZlcihhdHRyaWJ1dGVzWyhpZClrU2VjQXR0
ckFwcGxpY2F0aW9uTGFiZWxdKSwgdG9BcnJheUJ1ZmZlcih1c2VySGFuZGxlKSwgU3RyaW5nKHVz
ZXJuYW1lKSwgKF9fYnJpZGdlIFNlY0FjY2Vzc0NvbnRyb2xSZWYpYXR0cmlidXRlc1soaWQpa1Nl
Y0F0dHJBY2Nlc3NDb250cm9sXSwgQXV0aGVudGljYXRvckF0dGFjaG1lbnQ6OlBsYXRmb3JtKTsK
KyAgICAgICAgYXV0byByZXNwb25zZSA9IEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZTo6
Y3JlYXRlKHRvQXJyYXlCdWZmZXIoYXR0cmlidXRlc1soaWQpa1NlY0F0dHJBcHBsaWNhdGlvbkxh
YmVsXSksIFdURk1vdmUodXNlckhhbmRsZSksIFN0cmluZyh1c2VybmFtZSksIChfX2JyaWRnZSBT
ZWNBY2Nlc3NDb250cm9sUmVmKWF0dHJpYnV0ZXNbKGlkKWtTZWNBdHRyQWNjZXNzQ29udHJvbF0s
IEF1dGhlbnRpY2F0b3JBdHRhY2htZW50OjpQbGF0Zm9ybSk7CiAKICAgICAgICAgYXV0byBncm91
cCA9IGdyb3VwRm9yQXR0cmlidXRlcyhhdHRyaWJ1dGVzKTsKICAgICAgICAgaWYgKCFncm91cC5p
c051bGwoKSkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwpp
bmRleCA0ZDc1YTQ1Nzk5MWJlZTk2NzllYTAzZDFlOTdjZWJjZGM0NjIwN2NjLi45YzllMTMzNGY1
MmVlYjkxNjc4ZGExMDFiMmEzM2FiMzg0NGUwYjkzIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VM
b2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjItMDItMjIgIEog
UGFzY29lICA8al9wYXNjb2VAYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJBdXRobl0gdXNlckhh
bmRsZSBub3QgbWFya2VkIG51bGxhYmxlIGluIF9XS1dlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0aW9u
UmVzcG9uc2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNzA0MworICAgICAgICByZGFyOi8vODkzMTc3NDAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDcmVhdGUgdGVzdHMgdG8gY2hlY2sgZm9yIG51bGwg
dXNlckhhbmRsZS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
X1dLV2ViQXV0aGVudGljYXRpb25QYW5lbC5tbToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRF
U1QpOgorCiAyMDIyLTAyLTIyICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4K
IAogICAgICAgICBbZ2l0LXdlYmtpdF0gTGluayB0byBHaXRIdWIgd2lraQpkaWZmIC0tZ2l0IGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50aWNhdGlv
blBhbmVsLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJB
dXRoZW50aWNhdGlvblBhbmVsLm1tCmluZGV4IDk0NzE1ODFiNWE1ZDExMGU3YmM5NjlkMmMzYzBk
MDg3YWU3ZTc0MGEuLjMwZGQwOWYwZGJiMDFkNDcxNzFiOWM0YzFiYzczYTdjOTVhMTU2YTIgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLV2ViQXV0
aGVudGljYXRpb25QYW5lbC5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW0KQEAgLTgxLDYgKzgxLDcgQEAgc3Rh
dGljIFN0cmluZyB0ZXN0RVMyNTZQcml2YXRlS2V5QmFzZTY0ID0KICAgICAiUEg3NmMwK1dGT3pa
S3NsUHl5RnNlNGdvR0lXMlI3azlWSExQRVpsNW5mbkJnRVZGaDV6ZXYrL3hwSFFJdnVxNiIKICAg
ICAiUlE9PSI7CiBzdGF0aWMgU3RyaW5nIHRlc3RVc2VyRW50aXR5QnVuZGxlQmFzZTY0ID0gIm9t
SnBaRW9BQVFJREJBVUdCd2dKWkc1aGJXVmtTbTlvYmc9PSI7IC8vIHsgImlkIjogaCcwMDAxMDIw
MzA0MDUwNjA3MDgwOScsICJuYW1lIjogIkpvaG4iIH0KK3N0YXRpYyBTdHJpbmcgdGVzdFVzZXJF
bnRpdHlCdW5kbGVOb1VzZXJIYW5kbGVCYXNlNjQgPSAib1dSdVlXMWxiRTFESUU1dkxVaGhibVJz
WlE9PSI7IC8vIHsibmFtZSI6ICJNQyBOby1IYW5kbGUifQogc3RhdGljIFN0cmluZyB3ZWJBdXRo
ZW50aWNhdGlvblBhbmVsU2VsZWN0ZWRDcmVkZW50aWFsTmFtZTsKIHN0YXRpYyBTdHJpbmcgdGVz
dFdlYktpdEFQSUFjY2Vzc0dyb3VwID0gImNvbS5hcHBsZS5UZXN0V2ViS2l0QVBJIjsKIHN0YXRp
YyBTdHJpbmcgdGVzdFdlYktpdEFQSUFsdGVybmF0ZUFjY2Vzc0dyb3VwID0gImNvbS5hcHBsZS5U
ZXN0V2ViS2l0QVBJQWx0ZXJuYXRlIjsKQEAgLTIxMjgsNiArMjEyOSwzNCBAQCBURVNUKFdlYkF1
dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFzc2VydGlvbkxBQ2xpZW50RGF0YUhhc2gpCiAgICAgVXRp
bDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKIH0KIAorVEVTVChXZWJBdXRoZW50
aWNhdGlvblBhbmVsLCBHZXRBc3NlcnRpb25OdWxsVXNlckhhbmRsZSkKK3sKKyAgICByZXNldCgp
OworCisgICAgQVNTRVJUX1RSVUUoYWRkS2V5VG9LZXljaGFpbih0ZXN0RVMyNTZQcml2YXRlS2V5
QmFzZTY0LCAiZXhhbXBsZS5jb20iLCB0ZXN0VXNlckVudGl0eUJ1bmRsZU5vVXNlckhhbmRsZUJh
c2U2NCkpOworCisgICAgdWludDhfdCBoYXNoW10gPSB7IDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQs
IDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4
MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMs
IDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQgfTsK
KyAgICBOU0RhdGEgKm5zSGFzaCA9IFtOU0RhdGEgZGF0YVdpdGhCeXRlczpoYXNoIGxlbmd0aDpz
aXplb2YoaGFzaCldOworCisgICAgYXV0byBvcHRpb25zID0gYWRvcHROUyhbW19XS1B1YmxpY0tl
eUNyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucyBhbGxvY10gaW5pdF0pOworICAgIFtvcHRpb25zIHNl
dFJlbHlpbmdQYXJ0eUlkZW50aWZpZXI6QCJleGFtcGxlLmNvbSJdOworCisgICAgYXV0byBwYW5l
bCA9IGFkb3B0TlMoW1tfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsIGFsbG9jXSBpbml0XSk7Cisg
ICAgW3BhbmVsIHNldE1vY2tDb25maWd1cmF0aW9uOkB7IH1dOworICAgIGF1dG8gZGVsZWdhdGUg
PSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxEZWxlZ2F0ZSBhbGxvY10gaW5p
dF0pOworICAgIFtwYW5lbCBzZXREZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisKKyAgICBbcGFu
ZWwgZ2V0QXNzZXJ0aW9uV2l0aENsaWVudERhdGFIYXNoOm5zSGFzaCBvcHRpb25zOm9wdGlvbnMu
Z2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihfV0tBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9u
c2UgKnJlc3BvbnNlLCBOU0Vycm9yICplcnJvcikgeworICAgICAgICB3ZWJBdXRoZW50aWNhdGlv
blBhbmVsUmFuID0gdHJ1ZTsKKyAgICAgICAgY2xlYW5VcEtleWNoYWluKCJleGFtcGxlLmNvbSIp
OworCisgICAgICAgIEVYUEVDVF9OVUxMKGVycm9yKTsKKworICAgICAgICBFWFBFQ1RfTlVMTChy
ZXNwb25zZS51c2VySGFuZGxlKTsKKyAgICB9XTsKKyAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRp
Y2F0aW9uUGFuZWxSYW4pOworfQorCiBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFz
c2VydGlvbkNyb3NzUGxhdGZvcm0pCiB7CiAgICAgcmVzZXQoKTsKQEAgLTIxODUsNiArMjIxNCwy
NCBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFsbENyZWRlbnRpYWwpCiAgICAg
Y2xlYW5VcEtleWNoYWluKCJleGFtcGxlLmNvbSIpOwogfQogCitURVNUKFdlYkF1dGhlbnRpY2F0
aW9uUGFuZWwsIEdldEFsbENyZWRlbnRpYWxOdWxsVXNlckhhbmRsZSkKK3sKKyAgICByZXNldCgp
OworCisgICAgQVNTRVJUX1RSVUUoYWRkS2V5VG9LZXljaGFpbih0ZXN0RVMyNTZQcml2YXRlS2V5
QmFzZTY0LCAiZXhhbXBsZS5jb20iLCB0ZXN0VXNlckVudGl0eUJ1bmRsZU5vVXNlckhhbmRsZUJh
c2U2NCkpOworCisgICAgYXV0byBhZnRlciA9IGFkb3B0TlMoW1tOU0RhdGUgYWxsb2NdIGluaXRd
KTsKKworICAgIGF1dG8gKmNyZWRlbnRpYWxzID0gW19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwg
Z2V0QWxsTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbHNXaXRoQWNjZXNzR3JvdXA6QCJjb20u
YXBwbGUuVGVzdFdlYktpdEFQSSJdOworICAgIEVYUEVDVF9OT1RfTlVMTChjcmVkZW50aWFscyk7
CisgICAgRVhQRUNUX0VRKFtjcmVkZW50aWFscyBjb3VudF0sIDFsdSk7CisKKyAgICBFWFBFQ1Rf
Tk9UX05VTEwoW2NyZWRlbnRpYWxzIGZpcnN0T2JqZWN0XSk7CisgICAgRVhQRUNUX0VRKFtjcmVk
ZW50aWFscyBmaXJzdE9iamVjdF1bX1dLTG9jYWxBdXRoZW50aWNhdG9yQ3JlZGVudGlhbFVzZXJI
YW5kbGVLZXldLCBbTlNOdWxsIG51bGxdKTsKKworICAgIGNsZWFuVXBLZXljaGFpbigiZXhhbXBs
ZS5jb20iKTsKK30KKwogVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBHZXRBbGxDcmVkZW50
aWFsV2l0aERpc3BsYXlOYW1lKQogewogICAgIHJlc2V0KCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>