<?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>215129</bug_id>
          
          <creation_ts>2020-08-04 10:17:00 -0700</creation_ts>
          <short_desc>AX: VoiceOver needs access to font styling at insertion point</short_desc>
          <delta_ts>2020-08-04 13:55:55 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="chris fleizach">cfleizach</reporter>
          <assigned_to name="chris fleizach">cfleizach</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>darin</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1677654</commentid>
    <comment_count>0</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2020-08-04 10:17:00 -0700</bug_when>
    <thetext>VoiceOver needs access to the font styling at the insertion point

&lt;rdar://problem/65114972&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1677660</commentid>
    <comment_count>1</comment_count>
      <attachid>405926</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2020-08-04 10:28:50 -0700</bug_when>
    <thetext>Created attachment 405926
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1677669</commentid>
    <comment_count>2</comment_count>
      <attachid>405929</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2020-08-04 10:44:44 -0700</bug_when>
    <thetext>Created attachment 405929
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1677675</commentid>
    <comment_count>3</comment_count>
      <attachid>405932</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2020-08-04 11:19:00 -0700</bug_when>
    <thetext>Created attachment 405932
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1677718</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-04 13:55:54 -0700</bug_when>
    <thetext>Committed r265259: &lt;https://trac.webkit.org/changeset/265259&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 405932.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405926</attachid>
            <date>2020-08-04 10:28:50 -0700</date>
            <delta_ts>2020-08-04 10:44:44 -0700</delta_ts>
            <desc>patch</desc>
            <filename>file_215129.txt</filename>
            <type>text/plain</type>
            <size>14666</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFjL3Jlc29sdmVkLXRleHQt
ZWRpdGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9yZXNv
bHZlZC10ZXh0LWVkaXRpbmctZXhwZWN0ZWQudHh0DQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5k
ZXggMDAwMDAwMDAwMDAuLmY1YzhlM2M3MzhmDQotLS0gL2Rldi9udWxsDQorKysgYi9MYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9yZXNvbHZlZC10ZXh0LWVkaXRpbmctZXhwZWN0ZWQudHh0
DQpAQCAtMCwwICsxLDE2IEBADQorYQ0KK1RoaXMgdGVzdHMgdGhhdCB3ZSBjYW4gcmV0cmlldmUg
cmVzb2x2ZWQgZWRpdGluZyBzdHlsZXMgZnJvbSB0aGUgZWRpdGFibGUgdGV4dCBhcmVhLg0KKw0K
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4NCisNCisNCit7DQorICAgIGJvbGQgPSAwOw0KKyAg
ICBmb250c2l6ZSA9IDY7DQorICAgIGl0YWxpYyA9IDE7DQorICAgIHVuZGVybGluZSA9IDA7DQor
fQ0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUNCisNCitURVNUIENPTVBMRVRFDQor
DQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvcmVzb2x2ZWQtdGV4
dC1lZGl0aW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9yZXNvbHZlZC10
ZXh0LWVkaXRpbmcuaHRtbA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAw
Li42ZmYzNDM3OTJkYw0KLS0tIC9kZXYvbnVsbA0KKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJp
bGl0eS9tYWMvcmVzb2x2ZWQtdGV4dC1lZGl0aW5nLmh0bWwNCkBAIC0wLDAgKzEsMzcgQEANCis8
IURPQ1RZUEUgaHRtbD4NCis8aHRtbD4NCis8aGVhZD4NCis8c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4NCis8L2hlYWQ+DQorPGJvZHkgaWQ9ImJv
ZHkiPg0KKw0KKzxkaXYgY29udGVudGVkaXRhYmxlIGlkPWRpdj48L2Rpdj4NCisNCis8cCBpZD0i
ZGVzY3JpcHRpb24iPjwvcD4NCis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4NCisNCis8c2NyaXB0
Pg0KKw0KKyAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHdlIGNhbiByZXRyaWV2ZSBy
ZXNvbHZlZCBlZGl0aW5nIHN0eWxlcyBmcm9tIHRoZSBlZGl0YWJsZSB0ZXh0IGFyZWEuIik7DQor
DQorICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsNCisgICAgICAgIHdp
bmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsNCisgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2Iik7DQorICAgICAgICBkaXYuZm9jdXMoKTsNCisNCisgICAgICAg
IHRleHRJbnB1dENvbnRyb2xsZXIuaW5zZXJ0VGV4dCgiYSIpOw0KKyAgICAgICAgZG9jdW1lbnQu
ZXhlY0NvbW1hbmQoIml0YWxpYyIsIGZhbHNlKQ0KKyAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1h
bmQoIkZvbnRTaXplIiwgZmFsc2UsIDYpDQorDQorICAgICAgICB2YXIgYXhEaXYgPSBhY2Nlc3Np
YmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRpdiIpOw0KKyAgICAgICAg
YXhEaXYuYXR0cmlidXRlVmFsdWVBc3luYygiQVhSZXNvbHZlZEVkaXRpbmdTdHlsZXMiLCBmdW5j
dGlvbih2YWx1ZSkgew0KKyAgICAgICAgICAgIGRlYnVnKHZhbHVlKTsNCisgICAgICAgICAgICBm
aW5pc2hKU1Rlc3QoKTsNCisgICAgICAgIH0pOw0KKyAgICB9DQorDQorPC9zY3JpcHQ+DQorDQor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pg0K
KzwvYm9keT4NCis8L2h0bWw+DQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nDQppbmRleCAwMTM2Nzk2ZWI0ZS4uOTM2Mjg1ZjM5
OGYgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cNCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZw0KQEAgLTEsMyArMSwzMiBAQA0KKzIwMjAtMDgtMDQgIENocmlzIEZs
ZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4NCisNCisgICAgICAgIEFYOiBWb2ljZU92ZXIg
bmVlZHMgYWNjZXNzIHRvIGZvbnQgc3R5bGluZyBhdCBpbnNlcnRpb24gcG9pbnQNCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTUxMjkNCisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82NTExNDk3Mj4NCisNCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLg0KKw0KKyAgICAgICAgR2l2ZSBhY2Nlc3MgdG8gcmVsZXZhbnQgZm9udCBzdHls
aW5nIHByb3BlcnRpZXMgYXQgdGhlIGluc2VydGlvbiBwb2ludCBzbyB0aGF0IFZvaWNlT3ZlciBj
YW4gc3BlYWsgdGhlbQ0KKyAgICAgICAgd2hlbiB0ZXh0IGNvbW1hbmRzIGFsdGVyIHN0eWxpbmcu
DQorDQorICAgICAgICBUZXN0OiBhY2Nlc3NpYmlsaXR5L21hYy9yZXNvbHZlZC10ZXh0LWVkaXRp
bmcuaHRtbA0KKw0KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3Qu
Y3BwOg0KKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlPYmplY3Q6OnJlc29sdmVkRWRp
dGluZ1N0eWxlcyBjb25zdCk6DQorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0
eU9iamVjdC5oOg0KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3RJ
bnRlcmZhY2UuaDoNCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9pb3MvV2ViQWNjZXNzaWJpbGl0
eU9iamVjdFdyYXBwZXJJT1MubW06DQorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlciBfYWNjZXNzaWJpbGl0eVJlc29sdmVkRWRpdGluZ1N0eWxlc10pOg0KKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2JqZWN0LmNwcDoNCisgICAg
ICAgIChXZWJDb3JlOjpBWElzb2xhdGVkT2JqZWN0OjpyZXNvbHZlZEVkaXRpbmdTdHlsZXMgY29u
c3QpOg0KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2Jq
ZWN0Lmg6DQorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmpl
Y3RXcmFwcGVyQmFzZS5oOg0KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW06DQorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlckJhc2UgYmFzZUFjY2Vzc2liaWxpdHlSZXNvbHZlZEVkaXRpbmdTdHlsZXNd
KToNCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXJNYWMubW06DQorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkRdKToNCisgICAgICAgICgtW1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpdKToN
CisNCiAyMDIwLTA4LTA0ICBBbmRyZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4N
CiANCiAgICAgICAgIEFkZCB0aGUgYWJpbGl0eSBvZiBjb21wYXJpbmcgdGhlIGFjY2Vzc2liaWxp
dHkgdHJlZSB3aXRoIGlzb2xhdGVkIHRyZWUgbW9kZSBvbiBhbmQgb2ZmLg0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwDQppbmRl
eCBkNGFiNTkzNzU0NS4uMTg5YzM2Y2JmMjEgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwDQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwDQpAQCAtMjc2Nyw2ICsyNzY3
LDI0IEBAIEFjY2Vzc2liaWxpdHlCdXR0b25TdGF0ZSBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpjaGVj
a2JveE9yUmFkaW9WYWx1ZSgpIGNvbnN0DQogICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5QnV0dG9u
U3RhdGU6Ok9mZjsNCiB9DQogDQorSGFzaE1hcDxTdHJpbmcsIEFYRWRpdGluZ1N0eWxlVmFsdWVW
YXJpYW50PiBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpyZXNvbHZlZEVkaXRpbmdTdHlsZXMoKSBjb25z
dA0KK3sNCisgICAgYXV0byBkb2N1bWVudCA9IHRoaXMtPmRvY3VtZW50KCk7DQorICAgIGlmICgh
ZG9jdW1lbnQpDQorICAgICAgICByZXR1cm4geyB9Ow0KKyAgICANCisgICAgYXV0byBzZWxlY3Rp
b25TdHlsZSA9IEVkaXRpbmdTdHlsZTo6c3R5bGVBdFNlbGVjdGlvblN0YXJ0KGRvY3VtZW50LT5z
ZWxlY3Rpb24oKS5zZWxlY3Rpb24oKSk7DQorICAgIGlmICghc2VsZWN0aW9uU3R5bGUpDQorICAg
ICAgICByZXR1cm4geyB9Ow0KKw0KKyAgICBIYXNoTWFwPFN0cmluZywgQVhFZGl0aW5nU3R5bGVW
YWx1ZVZhcmlhbnQ+IHN0eWxlczsNCisgICAgc3R5bGVzLmFkZCgiYm9sZCIsIHNlbGVjdGlvblN0
eWxlLT5oYXNTdHlsZShDU1NQcm9wZXJ0eUZvbnRXZWlnaHQsICJib2xkIikpOw0KKyAgICBzdHls
ZXMuYWRkKCJpdGFsaWMiLCBzZWxlY3Rpb25TdHlsZS0+aGFzU3R5bGUoQ1NTUHJvcGVydHlGb250
U3R5bGUsICJpdGFsaWMiKSk7DQorICAgIHN0eWxlcy5hZGQoInVuZGVybGluZSIsIHNlbGVjdGlv
blN0eWxlLT5oYXNTdHlsZShDU1NQcm9wZXJ0eVdlYmtpdFRleHREZWNvcmF0aW9uc0luRWZmZWN0
LCAidW5kZXJsaW5lIikpOw0KKyAgICBzdHlsZXMuYWRkKCJmb250c2l6ZSIsIHNlbGVjdGlvblN0
eWxlLT5sZWdhY3lGb250U2l6ZSgqZG9jdW1lbnQpKTsNCisgICAgcmV0dXJuIHN0eWxlczsNCit9
DQorDQogLy8gVGhpcyBpcyBhIDEtZGltZW5zaW9uYWwgc2Nyb2xsIG9mZnNldCBoZWxwZXIgZnVu
Y3Rpb24gdGhhdCdzIGFwcGxpZWQNCiAvLyBzZXBhcmF0ZWx5IGluIHRoZSBob3Jpem9udGFsIGFu
ZCB2ZXJ0aWNhbCBkaXJlY3Rpb25zLCBiZWNhdXNlIHRoZQ0KIC8vIGxvZ2ljIGlzIHRoZSBzYW1l
LiBUaGUgZ29hbCBpcyB0byBjb21wdXRlIHRoZSBiZXN0IHNjcm9sbCBvZmZzZXQNCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaCBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oDQppbmRl
eCA5MjlmMTE2NmY3OS4uZWNmYmM3ZTYxNWIgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaA0KKysrIGIvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgNCkBAIC0yMjQsNyArMjI0LDggQEAg
cHVibGljOg0KICAgICB2b2lkIHNldElzRXhwYW5kZWQoYm9vbCkgb3ZlcnJpZGUgeyB9DQogICAg
IEZsb2F0UmVjdCByZWxhdGl2ZUZyYW1lKCkgY29uc3Qgb3ZlcnJpZGU7DQogICAgIEZsb2F0UmVj
dCBjb252ZXJ0RnJhbWVUb1NwYWNlKGNvbnN0IEZsb2F0UmVjdCYsIEFjY2Vzc2liaWxpdHlDb252
ZXJzaW9uU3BhY2UpIGNvbnN0IG92ZXJyaWRlOw0KLQ0KKyAgICBIYXNoTWFwPFN0cmluZywgQVhF
ZGl0aW5nU3R5bGVWYWx1ZVZhcmlhbnQ+IHJlc29sdmVkRWRpdGluZ1N0eWxlcygpIGNvbnN0IG92
ZXJyaWRlOw0KKyAgICANCiAgICAgLy8gSW4gYSBtdWx0aS1zZWxlY3QgbGlzdCwgbWFueSBpdGVt
cyBjYW4gYmUgc2VsZWN0ZWQgYnV0IG9ubHkgb25lIGlzIGFjdGl2ZSBhdCBhIHRpbWUuDQogICAg
IGJvb2wgaXNTZWxlY3RlZE9wdGlvbkFjdGl2ZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZh
bHNlOyB9DQogDQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nl
c3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZhY2UuaA0KaW5kZXggNDVjZDhlYTk0ZmEuLjNmNjRi
MDdjMzg3IDEwMDY0NA0KLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5T2JqZWN0SW50ZXJmYWNlLmgNCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQWNjZXNzaWJpbGl0eU9iamVjdEludGVyZmFjZS5oDQpAQCAtMzMsNiArMzMsNyBAQA0KICNp
bmNsdWRlICJUZXh0SXRlcmF0b3IuaCINCiAjaW5jbHVkZSAiVmlzaWJsZVNlbGVjdGlvbi5oIg0K
ICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPg0KKyNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPg0K
IA0KICNpZiBQTEFURk9STShXSU4pDQogI2luY2x1ZGUgIkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyV2luLmgiDQpAQCAtMjk4LDYgKzI5OSw4IEBAIGVudW0gY2xhc3MgQWNjZXNzaWJpbGl0eVNl
YXJjaEtleSB7DQogICAgIFZpc2l0ZWRMaW5rLA0KIH07DQogDQordXNpbmcgQVhFZGl0aW5nU3R5
bGVWYWx1ZVZhcmlhbnQgPSBWYXJpYW50PFN0cmluZywgYm9vbCwgaW50PjsNCisNCiBzdHJ1Y3Qg
QWNjZXNzaWJpbGl0eVNlYXJjaENyaXRlcmlhIHsNCiAgICAgQVhDb3JlT2JqZWN0KiBhbmNob3JP
YmplY3QgeyBudWxscHRyIH07DQogICAgIEFYQ29yZU9iamVjdCogc3RhcnRPYmplY3Q7DQpAQCAt
NTk0LDYgKzU5Nyw4IEBAIHB1YmxpYzoNCiAgICAgYm9vbCBpc1RyZWVJdGVtKCkgY29uc3QgeyBy
ZXR1cm4gcm9sZVZhbHVlKCkgPT0gQWNjZXNzaWJpbGl0eVJvbGU6OlRyZWVJdGVtOyB9DQogICAg
IGJvb2wgaXNTY3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiByb2xlVmFsdWUoKSA9PSBBY2Nlc3Np
YmlsaXR5Um9sZTo6U2Nyb2xsQmFyOyB9DQogICAgIHZpcnR1YWwgYm9vbCBpc0J1dHRvbigpIGNv
bnN0ID0gMDsNCisgICAgDQorICAgIHZpcnR1YWwgSGFzaE1hcDxTdHJpbmcsIEFYRWRpdGluZ1N0
eWxlVmFsdWVWYXJpYW50PiByZXNvbHZlZEVkaXRpbmdTdHlsZXMoKSBjb25zdCA9IDA7DQogDQog
ICAgIGJvb2wgaXNMaXN0SXRlbSgpIGNvbnN0IHsgcmV0dXJuIHJvbGVWYWx1ZSgpID09IEFjY2Vz
c2liaWxpdHlSb2xlOjpMaXN0SXRlbTsgfQ0KICAgICBib29sIGlzQ2hlY2tib3hPclJhZGlvKCkg
Y29uc3QgeyByZXR1cm4gaXNDaGVja2JveCgpIHx8IGlzUmFkaW9CdXR0b24oKTsgfQ0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVySU9TLm1tIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pb3MvV2Vi
QWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJJT1MubW0NCmluZGV4IGQ4NDE4YjA0NWFhLi45ZDUx
ZWEyMjU1MiAxMDA2NDQNCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dl
YkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVySU9TLm1tDQorKysgYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbQ0KQEAg
LTE3NzYsNiArMTc3NiwxNCBAQCBzdGF0aWMgdm9pZCBhcHBlbmRTdHJpbmdUb1Jlc3VsdChOU011
dGFibGVTdHJpbmcgKnJlc3VsdCwgTlNTdHJpbmcgKnN0cmluZykNCiAgICAgcmV0dXJuIFtbc2Vs
ZiBfYWNjZXNzaWJpbGl0eVdlYkRvY3VtZW50Vmlld10gX2FjY2Vzc2liaWxpdHlQcmV2aW91c0Vs
ZW1lbnRzV2l0aENvdW50OmNvdW50XTsNCiB9DQogDQorLSAoTlNEaWN0aW9uYXJ5PE5TU3RyaW5n
ICosIGlkPiAqKV9hY2Nlc3NpYmlsaXR5UmVzb2x2ZWRFZGl0aW5nU3R5bGVzDQorew0KKyAgICBp
ZiAoIVtzZWxmIF9wcmVwYXJlQWNjZXNzaWJpbGl0eUNhbGxdKQ0KKyAgICAgICAgcmV0dXJuIG5p
bDsNCisgICAgDQorICAgIHJldHVybiBbc2VsZiBiYXNlQWNjZXNzaWJpbGl0eVJlc29sdmVkRWRp
dGluZ1N0eWxlc107DQorfQ0KKw0KIC0gKEJPT0wpYWNjZXNzaWJpbGl0eUNhblNldFZhbHVlDQog
ew0KICAgICBpZiAoIVtzZWxmIF9wcmVwYXJlQWNjZXNzaWJpbGl0eUNhbGxdKQ0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRP
YmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZE9iamVjdC5jcHANCmluZGV4IDMxZmE0OTQ3Mjg3Li44MzE5ZTVhZGQ4MyAxMDA2NDQN
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0
ZWRPYmplY3QuY3BwDQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVk
dHJlZS9BWElzb2xhdGVkT2JqZWN0LmNwcA0KQEAgLTExNzYsNiArMTE3NiwxNSBAQCBib29sIEFY
SXNvbGF0ZWRPYmplY3Q6OmlzSW5kZXRlcm1pbmF0ZSgpIGNvbnN0DQogICAgIHJldHVybiBmYWxz
ZTsNCiB9DQogDQorSGFzaE1hcDxTdHJpbmcsIEFYRWRpdGluZ1N0eWxlVmFsdWVWYXJpYW50PiBB
WElzb2xhdGVkT2JqZWN0OjpyZXNvbHZlZEVkaXRpbmdTdHlsZXMoKSBjb25zdA0KK3sNCisgICAg
cmV0dXJuIEFjY2Vzc2liaWxpdHk6OnJldHJpZXZlVmFsdWVGcm9tTWFpblRocmVhZDxIYXNoTWFw
PFN0cmluZywgQVhFZGl0aW5nU3R5bGVWYWx1ZVZhcmlhbnQ+PihbdGhpc10gKCkgLT4gSGFzaE1h
cDxTdHJpbmcsIEFYRWRpdGluZ1N0eWxlVmFsdWVWYXJpYW50PiB7DQorICAgICAgICBpZiAoYXV0
byogb2JqZWN0ID0gYXNzb2NpYXRlZEFYT2JqZWN0KCkpDQorICAgICAgICAgICAgcmV0dXJuIG9i
amVjdC0+cmVzb2x2ZWRFZGl0aW5nU3R5bGVzKCk7DQorICAgICAgICByZXR1cm4geyB9Ow0KKyAg
ICB9KTsNCit9DQorDQogYm9vbCBBWElzb2xhdGVkT2JqZWN0Ojppc09uU2NyZWVuKCkgY29uc3QN
CiB7DQogICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5OjpyZXRyaWV2ZVZhbHVlRnJvbU1haW5UaHJl
YWQ8Ym9vbD4oW3RoaXNdICgpIC0+IGJvb2wgew0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuaA0KaW5k
ZXggNWE2MWU5MzY2NzAuLjNiMTRlNGExNThiIDEwMDY0NA0KLS0tIGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oDQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2JqZWN0LmgN
CkBAIC04NDAsNiArODQwLDggQEAgcHJpdmF0ZToNCiAgICAgVGV4dEl0ZXJhdG9yQmVoYXZpb3Ig
dGV4dEl0ZXJhdG9yQmVoYXZpb3JGb3JUZXh0UmFuZ2UoKSBjb25zdCBvdmVycmlkZTsNCiAgICAg
V2lkZ2V0KiB3aWRnZXQoKSBjb25zdCBvdmVycmlkZTsNCiAgICAgUGxhdGZvcm1XaWRnZXQgcGxh
dGZvcm1XaWRnZXQoKSBjb25zdCBvdmVycmlkZTsNCisgICAgDQorICAgIEhhc2hNYXA8U3RyaW5n
LCBBWEVkaXRpbmdTdHlsZVZhbHVlVmFyaWFudD4gcmVzb2x2ZWRFZGl0aW5nU3R5bGVzKCkgY29u
c3Qgb3ZlcnJpZGU7DQogI2lmIFBMQVRGT1JNKENPQ09BKQ0KICAgICBSZW1vdGVBWE9iamVjdFJl
ZiByZW1vdGVQYXJlbnRPYmplY3QoKSBjb25zdCBvdmVycmlkZTsNCiAjZW5kaWYNCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlckJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oDQppbmRleCBlOWZhNDhlNWQ4My4uMjljZGI3
MTYyMmMgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJB
Y2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaA0KKysrIGIvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmgNCkBAIC04
Nyw2ICs4Nyw4IEBAIGNsYXNzIFZpc2libGVQb3NpdGlvbjsNCiAtIChOU0FycmF5ICopYWNjZXNz
aWJpbGl0eU1hdGhQb3N0c2NyaXB0UGFpcnM7DQogLSAoTlNBcnJheSAqKWFjY2Vzc2liaWxpdHlN
YXRoUHJlc2NyaXB0UGFpcnM7DQogDQorLSAoTlNEaWN0aW9uYXJ5PE5TU3RyaW5nICosIGlkPiAq
KWJhc2VBY2Nlc3NpYmlsaXR5UmVzb2x2ZWRFZGl0aW5nU3R5bGVzOw0KKw0KIGV4dGVybiBXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5U2VhcmNoQ3JpdGVyaWEgYWNjZXNzaWJpbGl0eVNlYXJjaENyaXRl
cmlhRm9yU2VhcmNoUHJlZGljYXRlUGFyYW1ldGVyaXplZEF0dHJpYnV0ZShjb25zdCBOU0RpY3Rp
b25hcnkgKik7DQogDQogZXh0ZXJuIE5TQXJyYXkgKmNvbnZlcnRUb05TQXJyYXkoY29uc3QgV2Vi
Q29yZTo6QVhDb3JlT2JqZWN0OjpBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3ImKTsNCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlckJhc2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9X
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0NCmluZGV4IDBkMGUxZDRhODg5Li40
NTczYjFiOTc1OSAxMDA2NDQNCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFj
L1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbQ0KKysrIGIvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1t
DQpAQCAtNTYwLDYgKzU2MCwyMyBAQCBzdGF0aWMgdm9pZCBjb252ZXJ0UGF0aFRvU2NyZWVuU3Bh
Y2VGdW5jdGlvbihQYXRoQ29udmVyc2lvbkluZm8mIGNvbnZlcnNpb24sIGNvbg0KICAgICByZXR1
cm4gY29udmVydE1hdGhQYWlyc1RvTlNBcnJheShwYWlycywgW3NlbGYgYWNjZXNzaWJpbGl0eVBs
YXRmb3JtTWF0aFN1YnNjcmlwdEtleV0sIFtzZWxmIGFjY2Vzc2liaWxpdHlQbGF0Zm9ybU1hdGhT
dXBlcnNjcmlwdEtleV0pOw0KIH0NCiANCistIChOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+
ICopYmFzZUFjY2Vzc2liaWxpdHlSZXNvbHZlZEVkaXRpbmdTdHlsZXMNCit7DQorICAgIE5TTXV0
YWJsZURpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICpyZXN1bHRzID0gW05TTXV0YWJsZURpY3Rp
b25hcnkgZGljdGlvbmFyeV07DQorICAgIGF1dG8gZWRpdGluZ1N0eWxlcyA9IHNlbGYuYXhCYWNr
aW5nT2JqZWN0LT5yZXNvbHZlZEVkaXRpbmdTdHlsZXMoKTsNCisgICAgZm9yIChTdHJpbmcmIGtl
eSA6IGVkaXRpbmdTdHlsZXMua2V5cygpKSB7DQorICAgICAgICBhdXRvIHZhbHVlID0gZWRpdGlu
Z1N0eWxlcy5nZXQoa2V5KTsNCisgICAgICAgIGlkIHJlc3VsdCA9IFdURjo6c3dpdGNoT24odmFs
dWUsDQorICAgICAgICAgICBbXSAoU3RyaW5nJiB0eXBlZFZhbHVlKSAtPiBpZCB7IHJldHVybiAo
TlNTdHJpbmcgKil0eXBlZFZhbHVlOyB9LA0KKyAgICAgICAgICAgW10gKGJvb2wmIHR5cGVkVmFs
dWUpIC0+IGlkIHsgcmV0dXJuIEAodHlwZWRWYWx1ZSk7IH0sDQorICAgICAgICAgICBbXSAoaW50
JiB0eXBlZFZhbHVlKSAtPiBpZCB7IHJldHVybiBAKHR5cGVkVmFsdWUpOyB9LA0KKyAgICAgICAg
ICAgW10gKGF1dG8mKSB7IHJldHVybiBuaWw7IH0NCisgICAgICAgICk7DQorICAgICAgICByZXN1
bHRzWyhOU1N0cmluZyAqKWtleV0gPSByZXN1bHQ7DQorICAgIH0NCisgICAgcmV0dXJuIHJlc3Vs
dHM7DQorfQ0KKw0KIC8vIFRoaXMgaXMgc2V0IGJ5IERSVCB3aGVuIGl0IHdhbnRzIHRvIGxpc3Rl
biBmb3Igbm90aWZpY2F0aW9ucy4NCiBzdGF0aWMgQk9PTCBhY2Nlc3NpYmlsaXR5U2hvdWxkUmVw
b3N0Tm90aWZpY2F0aW9uczsNCiArICh2b2lkKWFjY2Vzc2liaWxpdHlTZXRTaG91bGRSZXBvc3RO
b3RpZmljYXRpb25zOihCT09MKXJlcG9zdA0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBw
ZXJNYWMubW0NCmluZGV4IGJkYzdkNDgwODA2Li42YmZhNmM1N2RiYiAxMDA2NDQNCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyTWFjLm1tDQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nl
c3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQ0KQEAgLTMwMTEsNiArMzAxMSw5IEBAIEFMTE9X
X0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORA0KICAgICAgICAgcmV0dXJuIGNyZWF0ZU5T
QXJyYXkoY2xhc3NMaXN0KS5hdXRvcmVsZWFzZSgpOw0KICAgICB9DQogDQorICAgIGlmIChbYXR0
cmlidXRlTmFtZSBpc0VxdWFsVG9TdHJpbmc6QCJBWFJlc29sdmVkRWRpdGluZ1N0eWxlcyJdKQ0K
KyAgICAgICAgcmV0dXJuIFtzZWxmIGJhc2VBY2Nlc3NpYmlsaXR5UmVzb2x2ZWRFZGl0aW5nU3R5
bGVzXTsNCisgICAgDQogICAgIC8vIFRoaXMgYWxsb3dzIHVzIHRvIGNvbm5lY3QgdG8gYSBwbHVn
aW4gdGhhdCBjcmVhdGVzIGEgc2hhZG93IG5vZGUgZm9yIGVkaXRpbmcgKGxpa2UgUERGcykuDQog
ICAgIGlmIChbYXR0cmlidXRlTmFtZSBpc0VxdWFsVG9TdHJpbmc6QCJfQVhBc3NvY2lhdGVkUGx1
Z2luUGFyZW50Il0pDQogICAgICAgICByZXR1cm4gW3NlbGYgYXNzb2NpYXRlZFBsdWdpblBhcmVu
dF07DQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nDQppbmRl
eCBiMDEwNmE4ZTIxMS4uOWQzNDM2MTE2MDUgMTAwNjQ0DQotLS0gYS9Ub29scy9DaGFuZ2VMb2cN
CisrKyBiL1Rvb2xzL0NoYW5nZUxvZw0KQEAgLTEsMyArMSwxMyBAQA0KKzIwMjAtMDgtMDQgIENo
cmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4NCisNCisgICAgICAgIEFYOiBWb2lj
ZU92ZXIgbmVlZHMgYWNjZXNzIHRvIGZvbnQgc3R5bGluZyBhdCBpbnNlcnRpb24gcG9pbnQNCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTUxMjkNCisN
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLg0KKw0KKyAgICAgICAgKiBXZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFj
Lm1tOg0KKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YXR0cmlidXRlVmFs
dWVBc3luYyk6DQorDQogMjAyMC0wOC0wNCAgSGVjdG9yIExvcGV6ICA8aGVjdG9yX2lfbG9wZXpA
YXBwbGUuY29tPg0KIA0KICAgICAgICAgQWRkIG15c2VsZiB0byBjb250cmlidXRvcnMuanNvbg0K
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvbWFjL0Fj
Y2Vzc2liaWxpdHlVSUVsZW1lbnRNYWMubW0gYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tDQppbmRleCBhYmNiYjYw
MzIwNi4uNTBiM2UwMjIwYjggMTAwNjQ0DQotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0lu
amVjdGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tDQorKysgYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50TWFjLm1tDQpAQCAtNjMyLDcgKzYzMiw5IEBAIHZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dDo6YXR0cmlidXRlVmFsdWVBc3luYyhKU1N0cmluZ1JlZiBhdHRyaWJ1dGUsIEpTVmFsdWVSDQog
ICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUw0KICAgICBzX2NvbnRyb2xsZXItPmV4ZWN1dGVP
bkFYVGhyZWFkKFthdHRyaWJ1dGUgPSByZXRhaW5QdHIoW05TU3RyaW5nIHN0cmluZ1dpdGhKU1N0
cmluZ1JlZjphdHRyaWJ1dGVdKSwgY2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKSwgdGhpc10g
KCkgbXV0YWJsZSB7DQogICAgICAgICBpZCB2YWx1ZSA9IFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0
eUF0dHJpYnV0ZVZhbHVlOmF0dHJpYnV0ZS5nZXQoKV07DQotDQorICAgICAgICBpZiAoW3ZhbHVl
IGlzS2luZE9mQ2xhc3M6W05TQXJyYXkgY2xhc3NdXSB8fCBbdmFsdWUgaXNLaW5kT2ZDbGFzczpb
TlNEaWN0aW9uYXJ5IGNsYXNzXV0pDQorICAgICAgICAgICAgdmFsdWUgPSBbdmFsdWUgZGVzY3Jp
cHRpb25dOw0KKyAgICAgICAgDQogICAgICAgICBzX2NvbnRyb2xsZXItPmV4ZWN1dGVPbk1haW5U
aHJlYWQoW3ZhbHVlID0gcmV0YWluUHRyKHZhbHVlKSwgY2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxi
YWNrKV0gKCkgew0KICAgICAgICAgICAgIGF1dG8gbWFpbkZyYW1lID0gV0tCdW5kbGVQYWdlR2V0
TWFpbkZyYW1lKEluamVjdGVkQnVuZGxlOjpzaW5nbGV0b24oKS5wYWdlKCktPnBhZ2UoKSk7DQog
ICAgICAgICAgICAgYXV0byBjb250ZXh0ID0gV0tCdW5kbGVGcmFtZUdldEphdmFTY3JpcHRDb250
ZXh0KG1haW5GcmFtZSk7DQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405929</attachid>
            <date>2020-08-04 10:44:44 -0700</date>
            <delta_ts>2020-08-04 11:19:00 -0700</delta_ts>
            <desc>patch</desc>
            <filename>file_215129.txt</filename>
            <type>text/plain</type>
            <size>14670</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFjL3Jlc29sdmVkLXRleHQt
ZWRpdGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9yZXNv
bHZlZC10ZXh0LWVkaXRpbmctZXhwZWN0ZWQudHh0DQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5k
ZXggMDAwMDAwMDAwMDAuLmY1YzhlM2M3MzhmDQotLS0gL2Rldi9udWxsDQorKysgYi9MYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9yZXNvbHZlZC10ZXh0LWVkaXRpbmctZXhwZWN0ZWQudHh0
DQpAQCAtMCwwICsxLDE2IEBADQorYQ0KK1RoaXMgdGVzdHMgdGhhdCB3ZSBjYW4gcmV0cmlldmUg
cmVzb2x2ZWQgZWRpdGluZyBzdHlsZXMgZnJvbSB0aGUgZWRpdGFibGUgdGV4dCBhcmVhLg0KKw0K
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4NCisNCisNCit7DQorICAgIGJvbGQgPSAwOw0KKyAg
ICBmb250c2l6ZSA9IDY7DQorICAgIGl0YWxpYyA9IDE7DQorICAgIHVuZGVybGluZSA9IDA7DQor
fQ0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUNCisNCitURVNUIENPTVBMRVRFDQor
DQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvcmVzb2x2ZWQtdGV4
dC1lZGl0aW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9yZXNvbHZlZC10
ZXh0LWVkaXRpbmcuaHRtbA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAw
Li42ZmYzNDM3OTJkYw0KLS0tIC9kZXYvbnVsbA0KKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJp
bGl0eS9tYWMvcmVzb2x2ZWQtdGV4dC1lZGl0aW5nLmh0bWwNCkBAIC0wLDAgKzEsMzcgQEANCis8
IURPQ1RZUEUgaHRtbD4NCis8aHRtbD4NCis8aGVhZD4NCis8c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4NCis8L2hlYWQ+DQorPGJvZHkgaWQ9ImJv
ZHkiPg0KKw0KKzxkaXYgY29udGVudGVkaXRhYmxlIGlkPWRpdj48L2Rpdj4NCisNCis8cCBpZD0i
ZGVzY3JpcHRpb24iPjwvcD4NCis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4NCisNCis8c2NyaXB0
Pg0KKw0KKyAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHdlIGNhbiByZXRyaWV2ZSBy
ZXNvbHZlZCBlZGl0aW5nIHN0eWxlcyBmcm9tIHRoZSBlZGl0YWJsZSB0ZXh0IGFyZWEuIik7DQor
DQorICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsNCisgICAgICAgIHdp
bmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsNCisgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2Iik7DQorICAgICAgICBkaXYuZm9jdXMoKTsNCisNCisgICAgICAg
IHRleHRJbnB1dENvbnRyb2xsZXIuaW5zZXJ0VGV4dCgiYSIpOw0KKyAgICAgICAgZG9jdW1lbnQu
ZXhlY0NvbW1hbmQoIml0YWxpYyIsIGZhbHNlKQ0KKyAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1h
bmQoIkZvbnRTaXplIiwgZmFsc2UsIDYpDQorDQorICAgICAgICB2YXIgYXhEaXYgPSBhY2Nlc3Np
YmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRpdiIpOw0KKyAgICAgICAg
YXhEaXYuYXR0cmlidXRlVmFsdWVBc3luYygiQVhSZXNvbHZlZEVkaXRpbmdTdHlsZXMiLCBmdW5j
dGlvbih2YWx1ZSkgew0KKyAgICAgICAgICAgIGRlYnVnKHZhbHVlKTsNCisgICAgICAgICAgICBm
aW5pc2hKU1Rlc3QoKTsNCisgICAgICAgIH0pOw0KKyAgICB9DQorDQorPC9zY3JpcHQ+DQorDQor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pg0K
KzwvYm9keT4NCis8L2h0bWw+DQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nDQppbmRleCAwMTM2Nzk2ZWI0ZS4uOTM2Mjg1ZjM5
OGYgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cNCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZw0KQEAgLTEsMyArMSwzMiBAQA0KKzIwMjAtMDgtMDQgIENocmlzIEZs
ZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4NCisNCisgICAgICAgIEFYOiBWb2ljZU92ZXIg
bmVlZHMgYWNjZXNzIHRvIGZvbnQgc3R5bGluZyBhdCBpbnNlcnRpb24gcG9pbnQNCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTUxMjkNCisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82NTExNDk3Mj4NCisNCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLg0KKw0KKyAgICAgICAgR2l2ZSBhY2Nlc3MgdG8gcmVsZXZhbnQgZm9udCBzdHls
aW5nIHByb3BlcnRpZXMgYXQgdGhlIGluc2VydGlvbiBwb2ludCBzbyB0aGF0IFZvaWNlT3ZlciBj
YW4gc3BlYWsgdGhlbQ0KKyAgICAgICAgd2hlbiB0ZXh0IGNvbW1hbmRzIGFsdGVyIHN0eWxpbmcu
DQorDQorICAgICAgICBUZXN0OiBhY2Nlc3NpYmlsaXR5L21hYy9yZXNvbHZlZC10ZXh0LWVkaXRp
bmcuaHRtbA0KKw0KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3Qu
Y3BwOg0KKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlPYmplY3Q6OnJlc29sdmVkRWRp
dGluZ1N0eWxlcyBjb25zdCk6DQorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0
eU9iamVjdC5oOg0KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3RJ
bnRlcmZhY2UuaDoNCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9pb3MvV2ViQWNjZXNzaWJpbGl0
eU9iamVjdFdyYXBwZXJJT1MubW06DQorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlciBfYWNjZXNzaWJpbGl0eVJlc29sdmVkRWRpdGluZ1N0eWxlc10pOg0KKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2JqZWN0LmNwcDoNCisgICAg
ICAgIChXZWJDb3JlOjpBWElzb2xhdGVkT2JqZWN0OjpyZXNvbHZlZEVkaXRpbmdTdHlsZXMgY29u
c3QpOg0KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2Jq
ZWN0Lmg6DQorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmpl
Y3RXcmFwcGVyQmFzZS5oOg0KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW06DQorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlckJhc2UgYmFzZUFjY2Vzc2liaWxpdHlSZXNvbHZlZEVkaXRpbmdTdHlsZXNd
KToNCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXJNYWMubW06DQorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkRdKToNCisgICAgICAgICgtW1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpdKToN
CisNCiAyMDIwLTA4LTA0ICBBbmRyZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4N
CiANCiAgICAgICAgIEFkZCB0aGUgYWJpbGl0eSBvZiBjb21wYXJpbmcgdGhlIGFjY2Vzc2liaWxp
dHkgdHJlZSB3aXRoIGlzb2xhdGVkIHRyZWUgbW9kZSBvbiBhbmQgb2ZmLg0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwDQppbmRl
eCBkNGFiNTkzNzU0NS4uMTg5YzM2Y2JmMjEgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwDQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwDQpAQCAtMjc2Nyw2ICsyNzY3
LDI0IEBAIEFjY2Vzc2liaWxpdHlCdXR0b25TdGF0ZSBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpjaGVj
a2JveE9yUmFkaW9WYWx1ZSgpIGNvbnN0DQogICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5QnV0dG9u
U3RhdGU6Ok9mZjsNCiB9DQogDQorSGFzaE1hcDxTdHJpbmcsIEFYRWRpdGluZ1N0eWxlVmFsdWVW
YXJpYW50PiBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpyZXNvbHZlZEVkaXRpbmdTdHlsZXMoKSBjb25z
dA0KK3sNCisgICAgYXV0byBkb2N1bWVudCA9IHRoaXMtPmRvY3VtZW50KCk7DQorICAgIGlmICgh
ZG9jdW1lbnQpDQorICAgICAgICByZXR1cm4geyB9Ow0KKyAgICANCisgICAgYXV0byBzZWxlY3Rp
b25TdHlsZSA9IEVkaXRpbmdTdHlsZTo6c3R5bGVBdFNlbGVjdGlvblN0YXJ0KGRvY3VtZW50LT5z
ZWxlY3Rpb24oKS5zZWxlY3Rpb24oKSk7DQorICAgIGlmICghc2VsZWN0aW9uU3R5bGUpDQorICAg
ICAgICByZXR1cm4geyB9Ow0KKw0KKyAgICBIYXNoTWFwPFN0cmluZywgQVhFZGl0aW5nU3R5bGVW
YWx1ZVZhcmlhbnQ+IHN0eWxlczsNCisgICAgc3R5bGVzLmFkZCgiYm9sZCIsIHNlbGVjdGlvblN0
eWxlLT5oYXNTdHlsZShDU1NQcm9wZXJ0eUZvbnRXZWlnaHQsICJib2xkIikpOw0KKyAgICBzdHls
ZXMuYWRkKCJpdGFsaWMiLCBzZWxlY3Rpb25TdHlsZS0+aGFzU3R5bGUoQ1NTUHJvcGVydHlGb250
U3R5bGUsICJpdGFsaWMiKSk7DQorICAgIHN0eWxlcy5hZGQoInVuZGVybGluZSIsIHNlbGVjdGlv
blN0eWxlLT5oYXNTdHlsZShDU1NQcm9wZXJ0eVdlYmtpdFRleHREZWNvcmF0aW9uc0luRWZmZWN0
LCAidW5kZXJsaW5lIikpOw0KKyAgICBzdHlsZXMuYWRkKCJmb250c2l6ZSIsIHNlbGVjdGlvblN0
eWxlLT5sZWdhY3lGb250U2l6ZSgqZG9jdW1lbnQpKTsNCisgICAgcmV0dXJuIHN0eWxlczsNCit9
DQorDQogLy8gVGhpcyBpcyBhIDEtZGltZW5zaW9uYWwgc2Nyb2xsIG9mZnNldCBoZWxwZXIgZnVu
Y3Rpb24gdGhhdCdzIGFwcGxpZWQNCiAvLyBzZXBhcmF0ZWx5IGluIHRoZSBob3Jpem9udGFsIGFu
ZCB2ZXJ0aWNhbCBkaXJlY3Rpb25zLCBiZWNhdXNlIHRoZQ0KIC8vIGxvZ2ljIGlzIHRoZSBzYW1l
LiBUaGUgZ29hbCBpcyB0byBjb21wdXRlIHRoZSBiZXN0IHNjcm9sbCBvZmZzZXQNCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaCBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oDQppbmRl
eCA5MjlmMTE2NmY3OS4uZWNmYmM3ZTYxNWIgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaA0KKysrIGIvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgNCkBAIC0yMjQsNyArMjI0LDggQEAg
cHVibGljOg0KICAgICB2b2lkIHNldElzRXhwYW5kZWQoYm9vbCkgb3ZlcnJpZGUgeyB9DQogICAg
IEZsb2F0UmVjdCByZWxhdGl2ZUZyYW1lKCkgY29uc3Qgb3ZlcnJpZGU7DQogICAgIEZsb2F0UmVj
dCBjb252ZXJ0RnJhbWVUb1NwYWNlKGNvbnN0IEZsb2F0UmVjdCYsIEFjY2Vzc2liaWxpdHlDb252
ZXJzaW9uU3BhY2UpIGNvbnN0IG92ZXJyaWRlOw0KLQ0KKyAgICBIYXNoTWFwPFN0cmluZywgQVhF
ZGl0aW5nU3R5bGVWYWx1ZVZhcmlhbnQ+IHJlc29sdmVkRWRpdGluZ1N0eWxlcygpIGNvbnN0IG92
ZXJyaWRlOw0KKyAgICANCiAgICAgLy8gSW4gYSBtdWx0aS1zZWxlY3QgbGlzdCwgbWFueSBpdGVt
cyBjYW4gYmUgc2VsZWN0ZWQgYnV0IG9ubHkgb25lIGlzIGFjdGl2ZSBhdCBhIHRpbWUuDQogICAg
IGJvb2wgaXNTZWxlY3RlZE9wdGlvbkFjdGl2ZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZh
bHNlOyB9DQogDQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nl
c3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZhY2UuaA0KaW5kZXggNDVjZDhlYTk0ZmEuLjNmNjRi
MDdjMzg3IDEwMDY0NA0KLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5T2JqZWN0SW50ZXJmYWNlLmgNCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQWNjZXNzaWJpbGl0eU9iamVjdEludGVyZmFjZS5oDQpAQCAtMzMsNiArMzMsNyBAQA0KICNp
bmNsdWRlICJUZXh0SXRlcmF0b3IuaCINCiAjaW5jbHVkZSAiVmlzaWJsZVNlbGVjdGlvbi5oIg0K
ICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPg0KKyNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPg0K
IA0KICNpZiBQTEFURk9STShXSU4pDQogI2luY2x1ZGUgIkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyV2luLmgiDQpAQCAtMjk4LDYgKzI5OSw4IEBAIGVudW0gY2xhc3MgQWNjZXNzaWJpbGl0eVNl
YXJjaEtleSB7DQogICAgIFZpc2l0ZWRMaW5rLA0KIH07DQogDQordXNpbmcgQVhFZGl0aW5nU3R5
bGVWYWx1ZVZhcmlhbnQgPSBWYXJpYW50PFN0cmluZywgYm9vbCwgaW50PjsNCisNCiBzdHJ1Y3Qg
QWNjZXNzaWJpbGl0eVNlYXJjaENyaXRlcmlhIHsNCiAgICAgQVhDb3JlT2JqZWN0KiBhbmNob3JP
YmplY3QgeyBudWxscHRyIH07DQogICAgIEFYQ29yZU9iamVjdCogc3RhcnRPYmplY3Q7DQpAQCAt
NTk0LDYgKzU5Nyw4IEBAIHB1YmxpYzoNCiAgICAgYm9vbCBpc1RyZWVJdGVtKCkgY29uc3QgeyBy
ZXR1cm4gcm9sZVZhbHVlKCkgPT0gQWNjZXNzaWJpbGl0eVJvbGU6OlRyZWVJdGVtOyB9DQogICAg
IGJvb2wgaXNTY3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiByb2xlVmFsdWUoKSA9PSBBY2Nlc3Np
YmlsaXR5Um9sZTo6U2Nyb2xsQmFyOyB9DQogICAgIHZpcnR1YWwgYm9vbCBpc0J1dHRvbigpIGNv
bnN0ID0gMDsNCisgICAgDQorICAgIHZpcnR1YWwgSGFzaE1hcDxTdHJpbmcsIEFYRWRpdGluZ1N0
eWxlVmFsdWVWYXJpYW50PiByZXNvbHZlZEVkaXRpbmdTdHlsZXMoKSBjb25zdCA9IDA7DQogDQog
ICAgIGJvb2wgaXNMaXN0SXRlbSgpIGNvbnN0IHsgcmV0dXJuIHJvbGVWYWx1ZSgpID09IEFjY2Vz
c2liaWxpdHlSb2xlOjpMaXN0SXRlbTsgfQ0KICAgICBib29sIGlzQ2hlY2tib3hPclJhZGlvKCkg
Y29uc3QgeyByZXR1cm4gaXNDaGVja2JveCgpIHx8IGlzUmFkaW9CdXR0b24oKTsgfQ0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVySU9TLm1tIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pb3MvV2Vi
QWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJJT1MubW0NCmluZGV4IGQ4NDE4YjA0NWFhLi45ZDUx
ZWEyMjU1MiAxMDA2NDQNCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dl
YkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVySU9TLm1tDQorKysgYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbQ0KQEAg
LTE3NzYsNiArMTc3NiwxNCBAQCBzdGF0aWMgdm9pZCBhcHBlbmRTdHJpbmdUb1Jlc3VsdChOU011
dGFibGVTdHJpbmcgKnJlc3VsdCwgTlNTdHJpbmcgKnN0cmluZykNCiAgICAgcmV0dXJuIFtbc2Vs
ZiBfYWNjZXNzaWJpbGl0eVdlYkRvY3VtZW50Vmlld10gX2FjY2Vzc2liaWxpdHlQcmV2aW91c0Vs
ZW1lbnRzV2l0aENvdW50OmNvdW50XTsNCiB9DQogDQorLSAoTlNEaWN0aW9uYXJ5PE5TU3RyaW5n
ICosIGlkPiAqKV9hY2Nlc3NpYmlsaXR5UmVzb2x2ZWRFZGl0aW5nU3R5bGVzDQorew0KKyAgICBp
ZiAoIVtzZWxmIF9wcmVwYXJlQWNjZXNzaWJpbGl0eUNhbGxdKQ0KKyAgICAgICAgcmV0dXJuIG5p
bDsNCisgICAgDQorICAgIHJldHVybiBbc2VsZiBiYXNlQWNjZXNzaWJpbGl0eVJlc29sdmVkRWRp
dGluZ1N0eWxlc107DQorfQ0KKw0KIC0gKEJPT0wpYWNjZXNzaWJpbGl0eUNhblNldFZhbHVlDQog
ew0KICAgICBpZiAoIVtzZWxmIF9wcmVwYXJlQWNjZXNzaWJpbGl0eUNhbGxdKQ0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRP
YmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZE9iamVjdC5jcHANCmluZGV4IDMxZmE0OTQ3Mjg3Li44MzE5ZTVhZGQ4MyAxMDA2NDQN
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0
ZWRPYmplY3QuY3BwDQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVk
dHJlZS9BWElzb2xhdGVkT2JqZWN0LmNwcA0KQEAgLTExNzYsNiArMTE3NiwxNSBAQCBib29sIEFY
SXNvbGF0ZWRPYmplY3Q6OmlzSW5kZXRlcm1pbmF0ZSgpIGNvbnN0DQogICAgIHJldHVybiBmYWxz
ZTsNCiB9DQogDQorSGFzaE1hcDxTdHJpbmcsIEFYRWRpdGluZ1N0eWxlVmFsdWVWYXJpYW50PiBB
WElzb2xhdGVkT2JqZWN0OjpyZXNvbHZlZEVkaXRpbmdTdHlsZXMoKSBjb25zdA0KK3sNCisgICAg
cmV0dXJuIEFjY2Vzc2liaWxpdHk6OnJldHJpZXZlVmFsdWVGcm9tTWFpblRocmVhZDxIYXNoTWFw
PFN0cmluZywgQVhFZGl0aW5nU3R5bGVWYWx1ZVZhcmlhbnQ+PihbdGhpc10gKCkgLT4gSGFzaE1h
cDxTdHJpbmcsIEFYRWRpdGluZ1N0eWxlVmFsdWVWYXJpYW50PiB7DQorICAgICAgICBpZiAoYXV0
byogb2JqZWN0ID0gYXNzb2NpYXRlZEFYT2JqZWN0KCkpDQorICAgICAgICAgICAgcmV0dXJuIG9i
amVjdC0+cmVzb2x2ZWRFZGl0aW5nU3R5bGVzKCk7DQorICAgICAgICByZXR1cm4geyB9Ow0KKyAg
ICB9KTsNCit9DQorDQogYm9vbCBBWElzb2xhdGVkT2JqZWN0Ojppc09uU2NyZWVuKCkgY29uc3QN
CiB7DQogICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5OjpyZXRyaWV2ZVZhbHVlRnJvbU1haW5UaHJl
YWQ8Ym9vbD4oW3RoaXNdICgpIC0+IGJvb2wgew0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuaA0KaW5k
ZXggNWE2MWU5MzY2NzAuLjNiMTRlNGExNThiIDEwMDY0NA0KLS0tIGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oDQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2JqZWN0LmgN
CkBAIC04NDAsNiArODQwLDggQEAgcHJpdmF0ZToNCiAgICAgVGV4dEl0ZXJhdG9yQmVoYXZpb3Ig
dGV4dEl0ZXJhdG9yQmVoYXZpb3JGb3JUZXh0UmFuZ2UoKSBjb25zdCBvdmVycmlkZTsNCiAgICAg
V2lkZ2V0KiB3aWRnZXQoKSBjb25zdCBvdmVycmlkZTsNCiAgICAgUGxhdGZvcm1XaWRnZXQgcGxh
dGZvcm1XaWRnZXQoKSBjb25zdCBvdmVycmlkZTsNCisgICAgDQorICAgIEhhc2hNYXA8U3RyaW5n
LCBBWEVkaXRpbmdTdHlsZVZhbHVlVmFyaWFudD4gcmVzb2x2ZWRFZGl0aW5nU3R5bGVzKCkgY29u
c3Qgb3ZlcnJpZGU7DQogI2lmIFBMQVRGT1JNKENPQ09BKQ0KICAgICBSZW1vdGVBWE9iamVjdFJl
ZiByZW1vdGVQYXJlbnRPYmplY3QoKSBjb25zdCBvdmVycmlkZTsNCiAjZW5kaWYNCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlckJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oDQppbmRleCBlOWZhNDhlNWQ4My4uMjljZGI3
MTYyMmMgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJB
Y2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaA0KKysrIGIvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmgNCkBAIC04
Nyw2ICs4Nyw4IEBAIGNsYXNzIFZpc2libGVQb3NpdGlvbjsNCiAtIChOU0FycmF5ICopYWNjZXNz
aWJpbGl0eU1hdGhQb3N0c2NyaXB0UGFpcnM7DQogLSAoTlNBcnJheSAqKWFjY2Vzc2liaWxpdHlN
YXRoUHJlc2NyaXB0UGFpcnM7DQogDQorLSAoTlNEaWN0aW9uYXJ5PE5TU3RyaW5nICosIGlkPiAq
KWJhc2VBY2Nlc3NpYmlsaXR5UmVzb2x2ZWRFZGl0aW5nU3R5bGVzOw0KKw0KIGV4dGVybiBXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5U2VhcmNoQ3JpdGVyaWEgYWNjZXNzaWJpbGl0eVNlYXJjaENyaXRl
cmlhRm9yU2VhcmNoUHJlZGljYXRlUGFyYW1ldGVyaXplZEF0dHJpYnV0ZShjb25zdCBOU0RpY3Rp
b25hcnkgKik7DQogDQogZXh0ZXJuIE5TQXJyYXkgKmNvbnZlcnRUb05TQXJyYXkoY29uc3QgV2Vi
Q29yZTo6QVhDb3JlT2JqZWN0OjpBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3ImKTsNCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlckJhc2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9X
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0NCmluZGV4IDBkMGUxZDRhODg5Li5l
MjNkMmJiNTEwMiAxMDA2NDQNCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFj
L1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbQ0KKysrIGIvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1t
DQpAQCAtNTYwLDYgKzU2MCwyMyBAQCBzdGF0aWMgdm9pZCBjb252ZXJ0UGF0aFRvU2NyZWVuU3Bh
Y2VGdW5jdGlvbihQYXRoQ29udmVyc2lvbkluZm8mIGNvbnZlcnNpb24sIGNvbg0KICAgICByZXR1
cm4gY29udmVydE1hdGhQYWlyc1RvTlNBcnJheShwYWlycywgW3NlbGYgYWNjZXNzaWJpbGl0eVBs
YXRmb3JtTWF0aFN1YnNjcmlwdEtleV0sIFtzZWxmIGFjY2Vzc2liaWxpdHlQbGF0Zm9ybU1hdGhT
dXBlcnNjcmlwdEtleV0pOw0KIH0NCiANCistIChOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+
ICopYmFzZUFjY2Vzc2liaWxpdHlSZXNvbHZlZEVkaXRpbmdTdHlsZXMNCit7DQorICAgIE5TTXV0
YWJsZURpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICpyZXN1bHRzID0gW05TTXV0YWJsZURpY3Rp
b25hcnkgZGljdGlvbmFyeV07DQorICAgIGF1dG8gZWRpdGluZ1N0eWxlcyA9IHNlbGYuYXhCYWNr
aW5nT2JqZWN0LT5yZXNvbHZlZEVkaXRpbmdTdHlsZXMoKTsNCisgICAgZm9yIChTdHJpbmcmIGtl
eSA6IGVkaXRpbmdTdHlsZXMua2V5cygpKSB7DQorICAgICAgICBhdXRvIHZhbHVlID0gZWRpdGlu
Z1N0eWxlcy5nZXQoa2V5KTsNCisgICAgICAgIGlkIHJlc3VsdCA9IFdURjo6c3dpdGNoT24odmFs
dWUsDQorICAgICAgICAgICAgW10gKFN0cmluZyYgdHlwZWRWYWx1ZSkgLT4gaWQgeyByZXR1cm4g
KE5TU3RyaW5nICopdHlwZWRWYWx1ZTsgfSwNCisgICAgICAgICAgICBbXSAoYm9vbCYgdHlwZWRW
YWx1ZSkgLT4gaWQgeyByZXR1cm4gQCh0eXBlZFZhbHVlKTsgfSwNCisgICAgICAgICAgICBbXSAo
aW50JiB0eXBlZFZhbHVlKSAtPiBpZCB7IHJldHVybiBAKHR5cGVkVmFsdWUpOyB9LA0KKyAgICAg
ICAgICAgIFtdIChhdXRvJikgeyByZXR1cm4gbmlsOyB9DQorICAgICAgICApOw0KKyAgICAgICAg
cmVzdWx0c1soTlNTdHJpbmcgKilrZXldID0gcmVzdWx0Ow0KKyAgICB9DQorICAgIHJldHVybiBy
ZXN1bHRzOw0KK30NCisNCiAvLyBUaGlzIGlzIHNldCBieSBEUlQgd2hlbiBpdCB3YW50cyB0byBs
aXN0ZW4gZm9yIG5vdGlmaWNhdGlvbnMuDQogc3RhdGljIEJPT0wgYWNjZXNzaWJpbGl0eVNob3Vs
ZFJlcG9zdE5vdGlmaWNhdGlvbnM7DQogKyAodm9pZClhY2Nlc3NpYmlsaXR5U2V0U2hvdWxkUmVw
b3N0Tm90aWZpY2F0aW9uczooQk9PTClyZXBvc3QNCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbSBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RX
cmFwcGVyTWFjLm1tDQppbmRleCBiZGM3ZDQ4MDgwNi4uNmJmYTZjNTdkYmIgMTAwNjQ0DQotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlck1hYy5tbQ0KKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2Vi
QWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0NCkBAIC0zMDExLDYgKzMwMTEsOSBAQCBB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQNCiAgICAgICAgIHJldHVybiBjcmVh
dGVOU0FycmF5KGNsYXNzTGlzdCkuYXV0b3JlbGVhc2UoKTsNCiAgICAgfQ0KIA0KKyAgICBpZiAo
W2F0dHJpYnV0ZU5hbWUgaXNFcXVhbFRvU3RyaW5nOkAiQVhSZXNvbHZlZEVkaXRpbmdTdHlsZXMi
XSkNCisgICAgICAgIHJldHVybiBbc2VsZiBiYXNlQWNjZXNzaWJpbGl0eVJlc29sdmVkRWRpdGlu
Z1N0eWxlc107DQorICAgIA0KICAgICAvLyBUaGlzIGFsbG93cyB1cyB0byBjb25uZWN0IHRvIGEg
cGx1Z2luIHRoYXQgY3JlYXRlcyBhIHNoYWRvdyBub2RlIGZvciBlZGl0aW5nIChsaWtlIFBERnMp
Lg0KICAgICBpZiAoW2F0dHJpYnV0ZU5hbWUgaXNFcXVhbFRvU3RyaW5nOkAiX0FYQXNzb2NpYXRl
ZFBsdWdpblBhcmVudCJdKQ0KICAgICAgICAgcmV0dXJuIFtzZWxmIGFzc29jaWF0ZWRQbHVnaW5Q
YXJlbnRdOw0KZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZw0K
aW5kZXggYjAxMDZhOGUyMTEuLjlkMzQzNjExNjA1IDEwMDY0NA0KLS0tIGEvVG9vbHMvQ2hhbmdl
TG9nDQorKysgYi9Ub29scy9DaGFuZ2VMb2cNCkBAIC0xLDMgKzEsMTMgQEANCisyMDIwLTA4LTA0
ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+DQorDQorICAgICAgICBBWDog
Vm9pY2VPdmVyIG5lZWRzIGFjY2VzcyB0byBmb250IHN0eWxpbmcgYXQgaW5zZXJ0aW9uIHBvaW50
DQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1MTI5
DQorDQorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4NCisNCisgICAgICAgICog
V2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dE1hYy5tbToNCisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmF0dHJpYnV0
ZVZhbHVlQXN5bmMpOg0KKw0KIDIwMjAtMDgtMDQgIEhlY3RvciBMb3BleiAgPGhlY3Rvcl9pX2xv
cGV6QGFwcGxlLmNvbT4NCiANCiAgICAgICAgIEFkZCBteXNlbGYgdG8gY29udHJpYnV0b3JzLmpz
b24NCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21h
Yy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9J
bmplY3RlZEJ1bmRsZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQ0KaW5kZXggYWJj
YmI2MDMyMDYuLjUwYjNlMDIyMGI4IDEwMDY0NA0KLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQ0KKysrIGIv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9tYWMvQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudE1hYy5tbQ0KQEAgLTYzMiw3ICs2MzIsOSBAQCB2b2lkIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OmF0dHJpYnV0ZVZhbHVlQXN5bmMoSlNTdHJpbmdSZWYgYXR0cmlidXRlLCBKU1ZhbHVl
Ug0KICAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMNCiAgICAgc19jb250cm9sbGVyLT5leGVj
dXRlT25BWFRocmVhZChbYXR0cmlidXRlID0gcmV0YWluUHRyKFtOU1N0cmluZyBzdHJpbmdXaXRo
SlNTdHJpbmdSZWY6YXR0cmlidXRlXSksIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayksIHRo
aXNdICgpIG11dGFibGUgew0KICAgICAgICAgaWQgdmFsdWUgPSBbbV9lbGVtZW50IGFjY2Vzc2li
aWxpdHlBdHRyaWJ1dGVWYWx1ZTphdHRyaWJ1dGUuZ2V0KCldOw0KLQ0KKyAgICAgICAgaWYgKFt2
YWx1ZSBpc0tpbmRPZkNsYXNzOltOU0FycmF5IGNsYXNzXV0gfHwgW3ZhbHVlIGlzS2luZE9mQ2xh
c3M6W05TRGljdGlvbmFyeSBjbGFzc11dKQ0KKyAgICAgICAgICAgIHZhbHVlID0gW3ZhbHVlIGRl
c2NyaXB0aW9uXTsNCisgICAgICAgIA0KICAgICAgICAgc19jb250cm9sbGVyLT5leGVjdXRlT25N
YWluVGhyZWFkKFt2YWx1ZSA9IHJldGFpblB0cih2YWx1ZSksIGNhbGxiYWNrID0gV1RGTW92ZShj
YWxsYmFjayldICgpIHsNCiAgICAgICAgICAgICBhdXRvIG1haW5GcmFtZSA9IFdLQnVuZGxlUGFn
ZUdldE1haW5GcmFtZShJbmplY3RlZEJ1bmRsZTo6c2luZ2xldG9uKCkucGFnZSgpLT5wYWdlKCkp
Ow0KICAgICAgICAgICAgIGF1dG8gY29udGV4dCA9IFdLQnVuZGxlRnJhbWVHZXRKYXZhU2NyaXB0
Q29udGV4dChtYWluRnJhbWUpOw0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405932</attachid>
            <date>2020-08-04 11:19:00 -0700</date>
            <delta_ts>2020-08-04 13:55:55 -0700</delta_ts>
            <desc>patch</desc>
            <filename>file_215129.txt</filename>
            <type>text/plain</type>
            <size>16130</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
Zw0KaW5kZXggMTk5NDU5YjA2YzUuLjRkOWQzYWVmNzA0IDEwMDY0NA0KLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nDQorKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cNCkBAIC0xLDMgKzEsMTMg
QEANCisyMDIwLTA4LTA0ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+DQor
DQorICAgICAgICBBWDogVm9pY2VPdmVyIG5lZWRzIGFjY2VzcyB0byBmb250IHN0eWxpbmcgYXQg
aW5zZXJ0aW9uIHBvaW50DQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE1MTI5DQorDQorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4N
CisNCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9tYWMvcmVzb2x2ZWQtdGV4dC1lZGl0aW5nLWV4
cGVjdGVkLnR4dDogQWRkZWQuDQorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL3Jlc29sdmVk
LXRleHQtZWRpdGluZy5odG1sOiBBZGRlZC4NCisNCiAyMDIwLTA4LTA0ICBBbmRyZXMgR29uemFs
ZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4NCiANCiAgICAgICAgIEFkZCB0aGUgYWJpbGl0eSBv
ZiBjb21wYXJpbmcgdGhlIGFjY2Vzc2liaWxpdHkgdHJlZSB3aXRoIGlzb2xhdGVkIHRyZWUgbW9k
ZSBvbiBhbmQgb2ZmLg0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFj
L3Jlc29sdmVkLXRleHQtZWRpdGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L21hYy9yZXNvbHZlZC10ZXh0LWVkaXRpbmctZXhwZWN0ZWQudHh0DQpuZXcgZmlsZSBt
b2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwMDAuLmY1YzhlM2M3MzhmDQotLS0gL2Rldi9udWxs
DQorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9yZXNvbHZlZC10ZXh0LWVkaXRp
bmctZXhwZWN0ZWQudHh0DQpAQCAtMCwwICsxLDE2IEBADQorYQ0KK1RoaXMgdGVzdHMgdGhhdCB3
ZSBjYW4gcmV0cmlldmUgcmVzb2x2ZWQgZWRpdGluZyBzdHlsZXMgZnJvbSB0aGUgZWRpdGFibGUg
dGV4dCBhcmVhLg0KKw0KK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4NCisNCisNCit7DQorICAg
IGJvbGQgPSAwOw0KKyAgICBmb250c2l6ZSA9IDY7DQorICAgIGl0YWxpYyA9IDE7DQorICAgIHVu
ZGVybGluZSA9IDA7DQorfQ0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUNCisNCitU
RVNUIENPTVBMRVRFDQorDQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9t
YWMvcmVzb2x2ZWQtdGV4dC1lZGl0aW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L21hYy9yZXNvbHZlZC10ZXh0LWVkaXRpbmcuaHRtbA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmlu
ZGV4IDAwMDAwMDAwMDAwLi42ZmYzNDM3OTJkYw0KLS0tIC9kZXYvbnVsbA0KKysrIGIvTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvcmVzb2x2ZWQtdGV4dC1lZGl0aW5nLmh0bWwNCkBAIC0w
LDAgKzEsMzcgQEANCis8IURPQ1RZUEUgaHRtbD4NCis8aHRtbD4NCis8aGVhZD4NCis8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4NCis8L2hlYWQ+
DQorPGJvZHkgaWQ9ImJvZHkiPg0KKw0KKzxkaXYgY29udGVudGVkaXRhYmxlIGlkPWRpdj48L2Rp
dj4NCisNCis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4NCis8ZGl2IGlkPSJjb25zb2xlIj48L2Rp
dj4NCisNCis8c2NyaXB0Pg0KKw0KKyAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHdl
IGNhbiByZXRyaWV2ZSByZXNvbHZlZCBlZGl0aW5nIHN0eWxlcyBmcm9tIHRoZSBlZGl0YWJsZSB0
ZXh0IGFyZWEuIik7DQorDQorICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIp
IHsNCisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsNCisgICAgICAgIHZhciBk
aXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iik7DQorICAgICAgICBkaXYuZm9jdXMo
KTsNCisNCisgICAgICAgIHRleHRJbnB1dENvbnRyb2xsZXIuaW5zZXJ0VGV4dCgiYSIpOw0KKyAg
ICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoIml0YWxpYyIsIGZhbHNlKQ0KKyAgICAgICAgZG9j
dW1lbnQuZXhlY0NvbW1hbmQoIkZvbnRTaXplIiwgZmFsc2UsIDYpDQorDQorICAgICAgICB2YXIg
YXhEaXYgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRp
diIpOw0KKyAgICAgICAgYXhEaXYuYXR0cmlidXRlVmFsdWVBc3luYygiQVhSZXNvbHZlZEVkaXRp
bmdTdHlsZXMiLCBmdW5jdGlvbih2YWx1ZSkgew0KKyAgICAgICAgICAgIGRlYnVnKHZhbHVlKTsN
CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsNCisgICAgICAgIH0pOw0KKyAgICB9DQorDQor
PC9zY3JpcHQ+DQorDQorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0Pg0KKzwvYm9keT4NCis8L2h0bWw+DQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zDQppbmRleCA1ZGUyNTA1NjE4My4uNzNkYThhNDdj
NDkgMTAwNjQ0DQotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3Rh
dGlvbnMNCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9u
cw0KQEAgLTY3OCw2ICs2NzgsNyBAQCB3ZWJraXQub3JnL2IvMTcyMDQ0IFsgRGVidWcgXSBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9vcGVuLXJlcQ0KIHdlYmtpdC5v
cmcvYi8xODQ3NDIgYWNjZXNzaWJpbGl0eS9tYWMvYXN5bmMtaW5jcmVtZW50LWRlY3JlbWVudC1h
Y3Rpb24uaHRtbCBbIFNraXAgXQ0KIHdlYmtpdC5vcmcvYi8xODU4OTcgYWNjZXNzaWJpbGl0eS9t
YWMvc2V0LXZhbHVlLWVkaXRhYmxlLXR5cGVzLmh0bWwgWyBTa2lwIF0NCiB3ZWJraXQub3JnL2Iv
MTkzNDE0IGFjY2Vzc2liaWxpdHkvbWFjL3JlbGF0aXZlLWZyYW1lLmh0bWwgWyBTa2lwIF0NCit3
ZWJraXQub3JnL2IvMjE1MTI5IGFjY2Vzc2liaWxpdHkvbWFjL3Jlc29sdmVkLXRleHQtZWRpdGlu
Zy5odG1sIFsgU2tpcCBdDQogDQogd2Via2l0Lm9yZy9iLzE4Mjc1MiBhY2Nlc3NpYmlsaXR5L21h
Yy9hY2Nlc3NpYmlsaXR5LW1ha2UtZmlyc3QtcmVzcG9uZGVyLmh0bWwgWyBTa2lwIF0NCiANCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cNCmluZGV4IDAxMzY3OTZlYjRlLi45MzYyODVmMzk4ZiAxMDA2NDQNCi0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZw0KKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nDQpAQCAt
MSwzICsxLDMyIEBADQorMjAyMC0wOC0wNCAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBw
bGUuY29tPg0KKw0KKyAgICAgICAgQVg6IFZvaWNlT3ZlciBuZWVkcyBhY2Nlc3MgdG8gZm9udCBz
dHlsaW5nIGF0IGluc2VydGlvbiBwb2ludA0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxNTEyOQ0KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY1MTE0
OTcyPg0KKw0KKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuDQorDQorICAgICAg
ICBHaXZlIGFjY2VzcyB0byByZWxldmFudCBmb250IHN0eWxpbmcgcHJvcGVydGllcyBhdCB0aGUg
aW5zZXJ0aW9uIHBvaW50IHNvIHRoYXQgVm9pY2VPdmVyIGNhbiBzcGVhayB0aGVtDQorICAgICAg
ICB3aGVuIHRleHQgY29tbWFuZHMgYWx0ZXIgc3R5bGluZy4NCisNCisgICAgICAgIFRlc3Q6IGFj
Y2Vzc2liaWxpdHkvbWFjL3Jlc29sdmVkLXRleHQtZWRpdGluZy5odG1sDQorDQorICAgICAgICAq
IGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHA6DQorICAgICAgICAoV2ViQ29y
ZTo6QWNjZXNzaWJpbGl0eU9iamVjdDo6cmVzb2x2ZWRFZGl0aW5nU3R5bGVzIGNvbnN0KToNCisg
ICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6DQorICAgICAgICAq
IGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdEludGVyZmFjZS5oOg0KKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbToN
CisgICAgICAgICgtW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIF9hY2Nlc3NpYmlsaXR5
UmVzb2x2ZWRFZGl0aW5nU3R5bGVzXSk6DQorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvaXNvbGF0
ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuY3BwOg0KKyAgICAgICAgKFdlYkNvcmU6OkFYSXNvbGF0
ZWRPYmplY3Q6OnJlc29sdmVkRWRpdGluZ1N0eWxlcyBjb25zdCk6DQorICAgICAgICAqIGFjY2Vz
c2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuaDoNCisgICAgICAgICogYWNj
ZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmg6DQorICAg
ICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFz
ZS5tbToNCisgICAgICAgICgtW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZSBiYXNl
QWNjZXNzaWJpbGl0eVJlc29sdmVkRWRpdGluZ1N0eWxlc10pOg0KKyAgICAgICAgKiBhY2Nlc3Np
YmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbToNCisgICAgICAg
ICgtW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIEFMTE9XX0RFUFJFQ0FURURfSU1QTEVN
RU5UQVRJT05TX0VORF0pOg0KKyAgICAgICAgKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBw
ZXIgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOl0pOg0KKw0KIDIwMjAtMDgtMDQgIEFuZHJl
cyBHb256YWxleiAgPGFuZHJlc2dfMjJAYXBwbGUuY29tPg0KIA0KICAgICAgICAgQWRkIHRoZSBh
YmlsaXR5IG9mIGNvbXBhcmluZyB0aGUgYWNjZXNzaWJpbGl0eSB0cmVlIHdpdGggaXNvbGF0ZWQg
dHJlZSBtb2RlIG9uIGFuZCBvZmYuDQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHANCmluZGV4IGQ0YWI1OTM3NTQ1Li4xODljMzZj
YmYyMSAxMDA2NDQNCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eU9iamVjdC5jcHANCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eU9iamVjdC5jcHANCkBAIC0yNzY3LDYgKzI3NjcsMjQgQEAgQWNjZXNzaWJpbGl0eUJ1
dHRvblN0YXRlIEFjY2Vzc2liaWxpdHlPYmplY3Q6OmNoZWNrYm94T3JSYWRpb1ZhbHVlKCkgY29u
c3QNCiAgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlCdXR0b25TdGF0ZTo6T2ZmOw0KIH0NCiANCitI
YXNoTWFwPFN0cmluZywgQVhFZGl0aW5nU3R5bGVWYWx1ZVZhcmlhbnQ+IEFjY2Vzc2liaWxpdHlP
YmplY3Q6OnJlc29sdmVkRWRpdGluZ1N0eWxlcygpIGNvbnN0DQorew0KKyAgICBhdXRvIGRvY3Vt
ZW50ID0gdGhpcy0+ZG9jdW1lbnQoKTsNCisgICAgaWYgKCFkb2N1bWVudCkNCisgICAgICAgIHJl
dHVybiB7IH07DQorICAgIA0KKyAgICBhdXRvIHNlbGVjdGlvblN0eWxlID0gRWRpdGluZ1N0eWxl
OjpzdHlsZUF0U2VsZWN0aW9uU3RhcnQoZG9jdW1lbnQtPnNlbGVjdGlvbigpLnNlbGVjdGlvbigp
KTsNCisgICAgaWYgKCFzZWxlY3Rpb25TdHlsZSkNCisgICAgICAgIHJldHVybiB7IH07DQorDQor
ICAgIEhhc2hNYXA8U3RyaW5nLCBBWEVkaXRpbmdTdHlsZVZhbHVlVmFyaWFudD4gc3R5bGVzOw0K
KyAgICBzdHlsZXMuYWRkKCJib2xkIiwgc2VsZWN0aW9uU3R5bGUtPmhhc1N0eWxlKENTU1Byb3Bl
cnR5Rm9udFdlaWdodCwgImJvbGQiKSk7DQorICAgIHN0eWxlcy5hZGQoIml0YWxpYyIsIHNlbGVj
dGlvblN0eWxlLT5oYXNTdHlsZShDU1NQcm9wZXJ0eUZvbnRTdHlsZSwgIml0YWxpYyIpKTsNCisg
ICAgc3R5bGVzLmFkZCgidW5kZXJsaW5lIiwgc2VsZWN0aW9uU3R5bGUtPmhhc1N0eWxlKENTU1By
b3BlcnR5V2Via2l0VGV4dERlY29yYXRpb25zSW5FZmZlY3QsICJ1bmRlcmxpbmUiKSk7DQorICAg
IHN0eWxlcy5hZGQoImZvbnRzaXplIiwgc2VsZWN0aW9uU3R5bGUtPmxlZ2FjeUZvbnRTaXplKCpk
b2N1bWVudCkpOw0KKyAgICByZXR1cm4gc3R5bGVzOw0KK30NCisNCiAvLyBUaGlzIGlzIGEgMS1k
aW1lbnNpb25hbCBzY3JvbGwgb2Zmc2V0IGhlbHBlciBmdW5jdGlvbiB0aGF0J3MgYXBwbGllZA0K
IC8vIHNlcGFyYXRlbHkgaW4gdGhlIGhvcml6b250YWwgYW5kIHZlcnRpY2FsIGRpcmVjdGlvbnMs
IGJlY2F1c2UgdGhlDQogLy8gbG9naWMgaXMgdGhlIHNhbWUuIFRoZSBnb2FsIGlzIHRvIGNvbXB1
dGUgdGhlIGJlc3Qgc2Nyb2xsIG9mZnNldA0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgNCmluZGV4IDkyOWYxMTY2Zjc5Li5lY2ZiYzdl
NjE1YiAxMDA2NDQNCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eU9iamVjdC5oDQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2li
aWxpdHlPYmplY3QuaA0KQEAgLTIyNCw3ICsyMjQsOCBAQCBwdWJsaWM6DQogICAgIHZvaWQgc2V0
SXNFeHBhbmRlZChib29sKSBvdmVycmlkZSB7IH0NCiAgICAgRmxvYXRSZWN0IHJlbGF0aXZlRnJh
bWUoKSBjb25zdCBvdmVycmlkZTsNCiAgICAgRmxvYXRSZWN0IGNvbnZlcnRGcmFtZVRvU3BhY2Uo
Y29uc3QgRmxvYXRSZWN0JiwgQWNjZXNzaWJpbGl0eUNvbnZlcnNpb25TcGFjZSkgY29uc3Qgb3Zl
cnJpZGU7DQotDQorICAgIEhhc2hNYXA8U3RyaW5nLCBBWEVkaXRpbmdTdHlsZVZhbHVlVmFyaWFu
dD4gcmVzb2x2ZWRFZGl0aW5nU3R5bGVzKCkgY29uc3Qgb3ZlcnJpZGU7DQorICAgIA0KICAgICAv
LyBJbiBhIG11bHRpLXNlbGVjdCBsaXN0LCBtYW55IGl0ZW1zIGNhbiBiZSBzZWxlY3RlZCBidXQg
b25seSBvbmUgaXMgYWN0aXZlIGF0IGEgdGltZS4NCiAgICAgYm9vbCBpc1NlbGVjdGVkT3B0aW9u
QWN0aXZlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0NCiANCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZh
Y2UuaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdElu
dGVyZmFjZS5oDQppbmRleCA0NWNkOGVhOTRmYS4uM2Y2NGIwN2MzODcgMTAwNjQ0DQotLS0gYS9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZhY2Uu
aA0KKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0
SW50ZXJmYWNlLmgNCkBAIC0zMyw2ICszMyw3IEBADQogI2luY2x1ZGUgIlRleHRJdGVyYXRvci5o
Ig0KICNpbmNsdWRlICJWaXNpYmxlU2VsZWN0aW9uLmgiDQogI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVkLmg+DQorI2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+DQogDQogI2lmIFBMQVRGT1JNKFdJTikN
CiAjaW5jbHVkZSAiQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJXaW4uaCINCkBAIC0yOTgsNiAr
Mjk5LDggQEAgZW51bSBjbGFzcyBBY2Nlc3NpYmlsaXR5U2VhcmNoS2V5IHsNCiAgICAgVmlzaXRl
ZExpbmssDQogfTsNCiANCit1c2luZyBBWEVkaXRpbmdTdHlsZVZhbHVlVmFyaWFudCA9IFZhcmlh
bnQ8U3RyaW5nLCBib29sLCBpbnQ+Ow0KKw0KIHN0cnVjdCBBY2Nlc3NpYmlsaXR5U2VhcmNoQ3Jp
dGVyaWEgew0KICAgICBBWENvcmVPYmplY3QqIGFuY2hvck9iamVjdCB7IG51bGxwdHIgfTsNCiAg
ICAgQVhDb3JlT2JqZWN0KiBzdGFydE9iamVjdDsNCkBAIC01OTQsNiArNTk3LDggQEAgcHVibGlj
Og0KICAgICBib29sIGlzVHJlZUl0ZW0oKSBjb25zdCB7IHJldHVybiByb2xlVmFsdWUoKSA9PSBB
Y2Nlc3NpYmlsaXR5Um9sZTo6VHJlZUl0ZW07IH0NCiAgICAgYm9vbCBpc1Njcm9sbGJhcigpIGNv
bnN0IHsgcmV0dXJuIHJvbGVWYWx1ZSgpID09IEFjY2Vzc2liaWxpdHlSb2xlOjpTY3JvbGxCYXI7
IH0NCiAgICAgdmlydHVhbCBib29sIGlzQnV0dG9uKCkgY29uc3QgPSAwOw0KKyAgICANCisgICAg
dmlydHVhbCBIYXNoTWFwPFN0cmluZywgQVhFZGl0aW5nU3R5bGVWYWx1ZVZhcmlhbnQ+IHJlc29s
dmVkRWRpdGluZ1N0eWxlcygpIGNvbnN0ID0gMDsNCiANCiAgICAgYm9vbCBpc0xpc3RJdGVtKCkg
Y29uc3QgeyByZXR1cm4gcm9sZVZhbHVlKCkgPT0gQWNjZXNzaWJpbGl0eVJvbGU6Okxpc3RJdGVt
OyB9DQogICAgIGJvb2wgaXNDaGVja2JveE9yUmFkaW8oKSBjb25zdCB7IHJldHVybiBpc0NoZWNr
Ym94KCkgfHwgaXNSYWRpb0J1dHRvbigpOyB9DQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9pb3MvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJJT1MubW0gYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlcklPUy5tbQ0KaW5kZXggZDg0MThiMDQ1YWEuLjlkNTFlYTIyNTUyIDEwMDY0NA0KLS0tIGEv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pb3MvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXJJT1MubW0NCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVySU9TLm1tDQpAQCAtMTc3Niw2ICsxNzc2LDE0IEBAIHN0
YXRpYyB2b2lkIGFwcGVuZFN0cmluZ1RvUmVzdWx0KE5TTXV0YWJsZVN0cmluZyAqcmVzdWx0LCBO
U1N0cmluZyAqc3RyaW5nKQ0KICAgICByZXR1cm4gW1tzZWxmIF9hY2Nlc3NpYmlsaXR5V2ViRG9j
dW1lbnRWaWV3XSBfYWNjZXNzaWJpbGl0eVByZXZpb3VzRWxlbWVudHNXaXRoQ291bnQ6Y291bnRd
Ow0KIH0NCiANCistIChOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICopX2FjY2Vzc2liaWxp
dHlSZXNvbHZlZEVkaXRpbmdTdHlsZXMNCit7DQorICAgIGlmICghW3NlbGYgX3ByZXBhcmVBY2Nl
c3NpYmlsaXR5Q2FsbF0pDQorICAgICAgICByZXR1cm4gbmlsOw0KKyAgICANCisgICAgcmV0dXJu
IFtzZWxmIGJhc2VBY2Nlc3NpYmlsaXR5UmVzb2x2ZWRFZGl0aW5nU3R5bGVzXTsNCit9DQorDQog
LSAoQk9PTClhY2Nlc3NpYmlsaXR5Q2FuU2V0VmFsdWUNCiB7DQogICAgIGlmICghW3NlbGYgX3By
ZXBhcmVBY2Nlc3NpYmlsaXR5Q2FsbF0pDQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2JqZWN0LmNwcA0KaW5k
ZXggMzFmYTQ5NDcyODcuLjgzMTllNWFkZDgzIDEwMDY0NA0KLS0tIGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHANCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3Qu
Y3BwDQpAQCAtMTE3Niw2ICsxMTc2LDE1IEBAIGJvb2wgQVhJc29sYXRlZE9iamVjdDo6aXNJbmRl
dGVybWluYXRlKCkgY29uc3QNCiAgICAgcmV0dXJuIGZhbHNlOw0KIH0NCiANCitIYXNoTWFwPFN0
cmluZywgQVhFZGl0aW5nU3R5bGVWYWx1ZVZhcmlhbnQ+IEFYSXNvbGF0ZWRPYmplY3Q6OnJlc29s
dmVkRWRpdGluZ1N0eWxlcygpIGNvbnN0DQorew0KKyAgICByZXR1cm4gQWNjZXNzaWJpbGl0eTo6
cmV0cmlldmVWYWx1ZUZyb21NYWluVGhyZWFkPEhhc2hNYXA8U3RyaW5nLCBBWEVkaXRpbmdTdHls
ZVZhbHVlVmFyaWFudD4+KFt0aGlzXSAoKSAtPiBIYXNoTWFwPFN0cmluZywgQVhFZGl0aW5nU3R5
bGVWYWx1ZVZhcmlhbnQ+IHsNCisgICAgICAgIGlmIChhdXRvKiBvYmplY3QgPSBhc3NvY2lhdGVk
QVhPYmplY3QoKSkNCisgICAgICAgICAgICByZXR1cm4gb2JqZWN0LT5yZXNvbHZlZEVkaXRpbmdT
dHlsZXMoKTsNCisgICAgICAgIHJldHVybiB7IH07DQorICAgIH0pOw0KK30NCisNCiBib29sIEFY
SXNvbGF0ZWRPYmplY3Q6OmlzT25TY3JlZW4oKSBjb25zdA0KIHsNCiAgICAgcmV0dXJuIEFjY2Vz
c2liaWxpdHk6OnJldHJpZXZlVmFsdWVGcm9tTWFpblRocmVhZDxib29sPihbdGhpc10gKCkgLT4g
Ym9vbCB7DQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRl
ZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9p
c29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oDQppbmRleCA1YTYxZTkzNjY3MC4uM2IxNGU0
YTE1OGIgMTAwNjQ0DQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVk
dHJlZS9BWElzb2xhdGVkT2JqZWN0LmgNCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuaA0KQEAgLTg0MCw2ICs4NDAsOCBAQCBw
cml2YXRlOg0KICAgICBUZXh0SXRlcmF0b3JCZWhhdmlvciB0ZXh0SXRlcmF0b3JCZWhhdmlvckZv
clRleHRSYW5nZSgpIGNvbnN0IG92ZXJyaWRlOw0KICAgICBXaWRnZXQqIHdpZGdldCgpIGNvbnN0
IG92ZXJyaWRlOw0KICAgICBQbGF0Zm9ybVdpZGdldCBwbGF0Zm9ybVdpZGdldCgpIGNvbnN0IG92
ZXJyaWRlOw0KKyAgICANCisgICAgSGFzaE1hcDxTdHJpbmcsIEFYRWRpdGluZ1N0eWxlVmFsdWVW
YXJpYW50PiByZXNvbHZlZEVkaXRpbmdTdHlsZXMoKSBjb25zdCBvdmVycmlkZTsNCiAjaWYgUExB
VEZPUk0oQ09DT0EpDQogICAgIFJlbW90ZUFYT2JqZWN0UmVmIHJlbW90ZVBhcmVudE9iamVjdCgp
IGNvbnN0IG92ZXJyaWRlOw0KICNlbmRpZg0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBw
ZXJCYXNlLmgNCmluZGV4IGU5ZmE0OGU1ZDgzLi4yOWNkYjcxNjIyYyAxMDA2NDQNCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyQmFzZS5oDQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nl
c3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaA0KQEAgLTg3LDYgKzg3LDggQEAgY2xhc3MgVmlz
aWJsZVBvc2l0aW9uOw0KIC0gKE5TQXJyYXkgKilhY2Nlc3NpYmlsaXR5TWF0aFBvc3RzY3JpcHRQ
YWlyczsNCiAtIChOU0FycmF5ICopYWNjZXNzaWJpbGl0eU1hdGhQcmVzY3JpcHRQYWlyczsNCiAN
CistIChOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICopYmFzZUFjY2Vzc2liaWxpdHlSZXNv
bHZlZEVkaXRpbmdTdHlsZXM7DQorDQogZXh0ZXJuIFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlTZWFy
Y2hDcml0ZXJpYSBhY2Nlc3NpYmlsaXR5U2VhcmNoQ3JpdGVyaWFGb3JTZWFyY2hQcmVkaWNhdGVQ
YXJhbWV0ZXJpemVkQXR0cmlidXRlKGNvbnN0IE5TRGljdGlvbmFyeSAqKTsNCiANCiBleHRlcm4g
TlNBcnJheSAqY29udmVydFRvTlNBcnJheShjb25zdCBXZWJDb3JlOjpBWENvcmVPYmplY3Q6OkFj
Y2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciYpOw0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5tbSBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RX
cmFwcGVyQmFzZS5tbQ0KaW5kZXggMGQwZTFkNGE4ODkuLmUyM2QyYmI1MTAyIDEwMDY0NA0KLS0t
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVj
dFdyYXBwZXJCYXNlLm1tDQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9X
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0NCkBAIC01NjAsNiArNTYwLDIzIEBA
IHN0YXRpYyB2b2lkIGNvbnZlcnRQYXRoVG9TY3JlZW5TcGFjZUZ1bmN0aW9uKFBhdGhDb252ZXJz
aW9uSW5mbyYgY29udmVyc2lvbiwgY29uDQogICAgIHJldHVybiBjb252ZXJ0TWF0aFBhaXJzVG9O
U0FycmF5KHBhaXJzLCBbc2VsZiBhY2Nlc3NpYmlsaXR5UGxhdGZvcm1NYXRoU3Vic2NyaXB0S2V5
XSwgW3NlbGYgYWNjZXNzaWJpbGl0eVBsYXRmb3JtTWF0aFN1cGVyc2NyaXB0S2V5XSk7DQogfQ0K
IA0KKy0gKE5TRGljdGlvbmFyeTxOU1N0cmluZyAqLCBpZD4gKiliYXNlQWNjZXNzaWJpbGl0eVJl
c29sdmVkRWRpdGluZ1N0eWxlcw0KK3sNCisgICAgTlNNdXRhYmxlRGljdGlvbmFyeTxOU1N0cmlu
ZyAqLCBpZD4gKnJlc3VsdHMgPSBbTlNNdXRhYmxlRGljdGlvbmFyeSBkaWN0aW9uYXJ5XTsNCisg
ICAgYXV0byBlZGl0aW5nU3R5bGVzID0gc2VsZi5heEJhY2tpbmdPYmplY3QtPnJlc29sdmVkRWRp
dGluZ1N0eWxlcygpOw0KKyAgICBmb3IgKFN0cmluZyYga2V5IDogZWRpdGluZ1N0eWxlcy5rZXlz
KCkpIHsNCisgICAgICAgIGF1dG8gdmFsdWUgPSBlZGl0aW5nU3R5bGVzLmdldChrZXkpOw0KKyAg
ICAgICAgaWQgcmVzdWx0ID0gV1RGOjpzd2l0Y2hPbih2YWx1ZSwNCisgICAgICAgICAgICBbXSAo
U3RyaW5nJiB0eXBlZFZhbHVlKSAtPiBpZCB7IHJldHVybiAoTlNTdHJpbmcgKil0eXBlZFZhbHVl
OyB9LA0KKyAgICAgICAgICAgIFtdIChib29sJiB0eXBlZFZhbHVlKSAtPiBpZCB7IHJldHVybiBA
KHR5cGVkVmFsdWUpOyB9LA0KKyAgICAgICAgICAgIFtdIChpbnQmIHR5cGVkVmFsdWUpIC0+IGlk
IHsgcmV0dXJuIEAodHlwZWRWYWx1ZSk7IH0sDQorICAgICAgICAgICAgW10gKGF1dG8mKSB7IHJl
dHVybiBuaWw7IH0NCisgICAgICAgICk7DQorICAgICAgICByZXN1bHRzWyhOU1N0cmluZyAqKWtl
eV0gPSByZXN1bHQ7DQorICAgIH0NCisgICAgcmV0dXJuIHJlc3VsdHM7DQorfQ0KKw0KIC8vIFRo
aXMgaXMgc2V0IGJ5IERSVCB3aGVuIGl0IHdhbnRzIHRvIGxpc3RlbiBmb3Igbm90aWZpY2F0aW9u
cy4NCiBzdGF0aWMgQk9PTCBhY2Nlc3NpYmlsaXR5U2hvdWxkUmVwb3N0Tm90aWZpY2F0aW9uczsN
CiArICh2b2lkKWFjY2Vzc2liaWxpdHlTZXRTaG91bGRSZXBvc3ROb3RpZmljYXRpb25zOihCT09M
KXJlcG9zdA0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dl
YkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0NCmluZGV4IGJk
YzdkNDgwODA2Li42YmZhNmM1N2RiYiAxMDA2NDQNCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tDQorKysgYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlck1hYy5tbQ0KQEAgLTMwMTEsNiArMzAxMSw5IEBAIEFMTE9XX0RFUFJFQ0FURURfSU1QTEVN
RU5UQVRJT05TX0VORA0KICAgICAgICAgcmV0dXJuIGNyZWF0ZU5TQXJyYXkoY2xhc3NMaXN0KS5h
dXRvcmVsZWFzZSgpOw0KICAgICB9DQogDQorICAgIGlmIChbYXR0cmlidXRlTmFtZSBpc0VxdWFs
VG9TdHJpbmc6QCJBWFJlc29sdmVkRWRpdGluZ1N0eWxlcyJdKQ0KKyAgICAgICAgcmV0dXJuIFtz
ZWxmIGJhc2VBY2Nlc3NpYmlsaXR5UmVzb2x2ZWRFZGl0aW5nU3R5bGVzXTsNCisgICAgDQogICAg
IC8vIFRoaXMgYWxsb3dzIHVzIHRvIGNvbm5lY3QgdG8gYSBwbHVnaW4gdGhhdCBjcmVhdGVzIGEg
c2hhZG93IG5vZGUgZm9yIGVkaXRpbmcgKGxpa2UgUERGcykuDQogICAgIGlmIChbYXR0cmlidXRl
TmFtZSBpc0VxdWFsVG9TdHJpbmc6QCJfQVhBc3NvY2lhdGVkUGx1Z2luUGFyZW50Il0pDQogICAg
ICAgICByZXR1cm4gW3NlbGYgYXNzb2NpYXRlZFBsdWdpblBhcmVudF07DQpkaWZmIC0tZ2l0IGEv
VG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nDQppbmRleCBiMDEwNmE4ZTIxMS4uOWQz
NDM2MTE2MDUgMTAwNjQ0DQotLS0gYS9Ub29scy9DaGFuZ2VMb2cNCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZw0KQEAgLTEsMyArMSwxMyBAQA0KKzIwMjAtMDgtMDQgIENocmlzIEZsZWl6YWNoICA8Y2Zs
ZWl6YWNoQGFwcGxlLmNvbT4NCisNCisgICAgICAgIEFYOiBWb2ljZU92ZXIgbmVlZHMgYWNjZXNz
IHRvIGZvbnQgc3R5bGluZyBhdCBpbnNlcnRpb24gcG9pbnQNCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTUxMjkNCisNCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLg0KKw0KKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tOg0KKyAgICAgICAgKFdU
Ujo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YXR0cmlidXRlVmFsdWVBc3luYyk6DQorDQogMjAy
MC0wOC0wNCAgSGVjdG9yIExvcGV6ICA8aGVjdG9yX2lfbG9wZXpAYXBwbGUuY29tPg0KIA0KICAg
ICAgICAgQWRkIG15c2VsZiB0byBjb250cmlidXRvcnMuanNvbg0KZGlmZiAtLWdpdCBhL1Rvb2xz
L1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnRNYWMubW0gYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nl
c3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tDQppbmRleCBhYmNiYjYwMzIwNi4uNTBiM2UwMjIwYjgg
MTAwNjQ0DQotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9B
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tDQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVy
L0luamVjdGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tDQpAQCAtNjMy
LDcgKzYzMiw5IEBAIHZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YXR0cmlidXRlVmFsdWVB
c3luYyhKU1N0cmluZ1JlZiBhdHRyaWJ1dGUsIEpTVmFsdWVSDQogICAgIEJFR0lOX0FYX09CSkNf
RVhDRVBUSU9OUw0KICAgICBzX2NvbnRyb2xsZXItPmV4ZWN1dGVPbkFYVGhyZWFkKFthdHRyaWJ1
dGUgPSByZXRhaW5QdHIoW05TU3RyaW5nIHN0cmluZ1dpdGhKU1N0cmluZ1JlZjphdHRyaWJ1dGVd
KSwgY2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKSwgdGhpc10gKCkgbXV0YWJsZSB7DQogICAg
ICAgICBpZCB2YWx1ZSA9IFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOmF0
dHJpYnV0ZS5nZXQoKV07DQotDQorICAgICAgICBpZiAoW3ZhbHVlIGlzS2luZE9mQ2xhc3M6W05T
QXJyYXkgY2xhc3NdXSB8fCBbdmFsdWUgaXNLaW5kT2ZDbGFzczpbTlNEaWN0aW9uYXJ5IGNsYXNz
XV0pDQorICAgICAgICAgICAgdmFsdWUgPSBbdmFsdWUgZGVzY3JpcHRpb25dOw0KKyAgICAgICAg
DQogICAgICAgICBzX2NvbnRyb2xsZXItPmV4ZWN1dGVPbk1haW5UaHJlYWQoW3ZhbHVlID0gcmV0
YWluUHRyKHZhbHVlKSwgY2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKV0gKCkgew0KICAgICAg
ICAgICAgIGF1dG8gbWFpbkZyYW1lID0gV0tCdW5kbGVQYWdlR2V0TWFpbkZyYW1lKEluamVjdGVk
QnVuZGxlOjpzaW5nbGV0b24oKS5wYWdlKCktPnBhZ2UoKSk7DQogICAgICAgICAgICAgYXV0byBj
b250ZXh0ID0gV0tCdW5kbGVGcmFtZUdldEphdmFTY3JpcHRDb250ZXh0KG1haW5GcmFtZSk7DQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>