<?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>262002</bug_id>
          
          <creation_ts>2023-09-23 10:59:15 -0700</creation_ts>
          <short_desc>AX: Non-group and non-tree-item children of role=&quot;treeitem&quot;s become stale after dynamic changes</short_desc>
          <delta_ts>2023-09-24 21:22:00 -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>Other</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="Tyler Wilcock">tyler_w</reporter>
          <assigned_to name="Tyler Wilcock">tyler_w</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>andresg_22</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</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>1979567</commentid>
    <comment_count>0</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-09-23 10:59:15 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979568</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2023-09-23 10:59:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/115936550&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979570</commentid>
    <comment_count>2</comment_count>
      <attachid>467835</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-09-23 11:04:45 -0700</bug_when>
    <thetext>Created attachment 467835
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979575</commentid>
    <comment_count>3</comment_count>
      <attachid>467835</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2023-09-23 12:04:53 -0700</bug_when>
    <thetext>Comment on attachment 467835
Patch

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

&gt; LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt:22
&gt; +document.getElementById(&apos;treeitem2&apos;).appendChild(document.getElementById(&apos;foo-button&apos;))

This looks wrong</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979576</commentid>
    <comment_count>4</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-09-23 12:14:36 -0700</bug_when>
    <thetext>(In reply to chris fleizach from comment #3)
&gt; Comment on attachment 467835 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=467835&amp;action=review
&gt; 
&gt; &gt; LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt:22
&gt; &gt; +document.getElementById(&apos;treeitem2&apos;).appendChild(document.getElementById(&apos;foo-button&apos;))
&gt; 
&gt; This looks wrong
How so? It moves #foo-button to be a child of #treeitem2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979586</commentid>
    <comment_count>5</comment_count>
      <attachid>467835</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2023-09-23 13:26:04 -0700</bug_when>
    <thetext>Comment on attachment 467835
Patch

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

&gt;&gt;&gt; LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt:22
&gt;&gt;&gt; +document.getElementById(&apos;treeitem2&apos;).appendChild(document.getElementById(&apos;foo-button&apos;))
&gt;&gt; 
&gt;&gt; This looks wrong
&gt; 
&gt; How so? It moves #foo-button to be a child of #treeitem2.

Shouldn&apos;t this JavaScript have been executed? This is the expected file</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979592</commentid>
    <comment_count>6</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-09-23 14:50:33 -0700</bug_when>
    <thetext>(In reply to chris fleizach from comment #5)
&gt; Comment on attachment 467835 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=467835&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt:22
&gt; &gt;&gt;&gt; +document.getElementById(&apos;treeitem2&apos;).appendChild(document.getElementById(&apos;foo-button&apos;))
&gt; &gt;&gt; 
&gt; &gt;&gt; This looks wrong
&gt; &gt; 
&gt; &gt; How so? It moves #foo-button to be a child of #treeitem2.
&gt; 
&gt; Shouldn&apos;t this JavaScript have been executed? This is the expected file
The test uses `evalAndReturn`, which executes the JavaScript and then returns it at as string so that we can include it in the output. I like it because it makes reading the expectation easier (you can see the JS alongside the expected effect to the accessibility tree). But I can remove it if you&apos;d prefer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979597</commentid>
    <comment_count>7</comment_count>
      <attachid>467835</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2023-09-23 15:37:32 -0700</bug_when>
    <thetext>Comment on attachment 467835
Patch

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

&gt;&gt;&gt;&gt;&gt; LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt:22
&gt;&gt;&gt;&gt;&gt; +document.getElementById(&apos;treeitem2&apos;).appendChild(document.getElementById(&apos;foo-button&apos;))
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; This looks wrong
&gt;&gt;&gt; 
&gt;&gt;&gt; How so? It moves #foo-button to be a child of #treeitem2.
&gt;&gt; 
&gt;&gt; Shouldn&apos;t this JavaScript have been executed? This is the expected file
&gt; 
&gt; The test uses `evalAndReturn`, which executes the JavaScript and then returns it at as string so that we can include it in the output. I like it because it makes reading the expectation easier (you can see the JS alongside the expected effect to the accessibility tree). But I can remove it if you&apos;d prefer.

Is this a pattern other WebKit tests are going in? Personally I think it makes expected output harder to read. I think main concern though is that we don&apos;t so this anywhere else, so why is this test case so special?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979600</commentid>
    <comment_count>8</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-09-23 15:55:41 -0700</bug_when>
    <thetext>(In reply to chris fleizach from comment #7)
&gt; Comment on attachment 467835 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=467835&amp;action=review
&gt; 
&gt; &gt;&gt;&gt;&gt;&gt; LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt:22
&gt; &gt;&gt;&gt;&gt;&gt; +document.getElementById(&apos;treeitem2&apos;).appendChild(document.getElementById(&apos;foo-button&apos;))
&gt; &gt;&gt;&gt;&gt; 
&gt; &gt;&gt;&gt;&gt; This looks wrong
&gt; &gt;&gt;&gt; 
&gt; &gt;&gt;&gt; How so? It moves #foo-button to be a child of #treeitem2.
&gt; &gt;&gt; 
&gt; &gt;&gt; Shouldn&apos;t this JavaScript have been executed? This is the expected file
&gt; &gt; 
&gt; &gt; The test uses `evalAndReturn`, which executes the JavaScript and then returns it at as string so that we can include it in the output. I like it because it makes reading the expectation easier (you can see the JS alongside the expected effect to the accessibility tree). But I can remove it if you&apos;d prefer.
&gt; 
&gt; Is this a pattern other WebKit tests are going in? Personally I think it
&gt; makes expected output harder to read. I think main concern though is that we
&gt; don&apos;t so this anywhere else, so why is this test case so special?
We use it in other accessibility tests, I invented it :). Andres has also expressed he doesn&apos;t like it, so I&apos;ll remove it from this patch and stop using it in future patches since that seems to be the consensus.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979601</commentid>
    <comment_count>9</comment_count>
      <attachid>467837</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-09-23 15:58:08 -0700</bug_when>
    <thetext>Created attachment 467837
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1979721</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2023-09-24 21:21:58 -0700</bug_when>
    <thetext>Committed 268385@main (3afbb0ed02b1): &lt;https://commits.webkit.org/268385@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 467837.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>467835</attachid>
            <date>2023-09-23 11:04:45 -0700</date>
            <delta_ts>2023-09-23 15:58:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-262002-20230923110444.patch</filename>
            <type>text/plain</type>
            <size>13042</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">RnJvbSBhNzkxNjAzZGY1YTA2ZjU2MmM5NTliMGQ2OTA2NzViMjVmZmFiZmViIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUeWxlciBXaWxjb2NrIDx0eWxlcl93QGFwcGxlLmNvbT4KRGF0
ZTogU2F0LCAyMyBTZXAgMjAyMyAxMDo1OToyMSAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIEFYOiBO
b24tZ3JvdXAgYW5kIG5vbi10cmVlLWl0ZW0gY2hpbGRyZW4gb2Ygcm9sZT0idHJlZWl0ZW0icwog
YmVjb21lIHN0YWxlIGFmdGVyIGR5bmFtaWMgY2hhbmdlcwogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTI2MjAwMiByZGFyOi8vcHJvYmxlbS8xMTU5MzY1NTAKClJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKV2UgbmV2ZXIgdXBkYXRlZCBBWFByb3BlcnR5TmFtZTo6
QVJJQVRyZWVJdGVtQ29udGVudCwgc28gaXQgZ290IHN0YWxlIGFmdGVyIGR5bmFtaWMgY2hhbmdl
cywKcmVzdWx0aW5nIGluIG1pc3NpbmcgY29udGVudCBmb3IgQVQgdXNlcnMuIFdlIHJlc29sdmUg
dGhpcyBieSByZW1vdmluZyB0aGUgcHJvcGVydHkgZW50aXJlbHksCnNpbmNlIHRoZSBpbXBsZW1l
bnRhdGlvbiBjYW4gYmUgZnVsZmlsbGVkIGVudGlyZWx5IGJ5IGV4aXN0aW5nIEFYQ29yZU9iamVj
dCBmdW5jdGlvbmFsaXR5LAphbmQgYSBwcm9wZXJ0eSB0aGF0IGRvZXNuJ3QgZXhpc3QgY2Fubm90
IGJlIHN0YWxlLgoKVGhpcyBwYXRjaCBhbHNvIG1vdmVzIGhhc0F0dHJpYnV0ZXNSZXF1aXJlZEZv
ckluY2x1c2lvbigpIG91dCBvZiBBWENvcmVPYmplY3QgYXMgaXQgaXMgb25seQpyZXF1aXJlZCBi
eSBBY2Nlc3NpYmlsaXR5T2JqZWN0IGFuZCBpdHMgc3ViY2xhc3Nlcy4KClRlc3RjYXNlIGFkZGVk
IHRvIGFjY2Vzc2liaWxpdHkvbWFjL3RyZWUtcHJvcGVydGllcy11cGRhdGUtYWZ0ZXItZHluYW1p
Yy1jaGFuZ2UuaHRtbC4KCiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9w
ZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5hbWljLWNoYW5nZS1leHBlY3RlZC50eHQ6CiogTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5h
bWljLWNoYW5nZS5odG1sOgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhDb3JlT2Jq
ZWN0LmNwcDoKKFdlYkNvcmU6OkFYQ29yZU9iamVjdDo6YXJpYVRyZWVJdGVtQ29udGVudCk6Ciog
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWENvcmVPYmplY3QuaDoKKiBTb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwOgooV2ViQ29yZTo6QWNj
ZXNzaWJpbGl0eU9iamVjdDo6YXJpYVRyZWVJdGVtQ29udGVudCk6IERlbGV0ZWQuCiogU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6CiogU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHA6CihX
ZWJDb3JlOjpBWElzb2xhdGVkT2JqZWN0Ojppbml0aWFsaXplUHJvcGVydGllcyk6CihXZWJDb3Jl
OjpBWElzb2xhdGVkT2JqZWN0OjpoYXNBdHRyaWJ1dGVzUmVxdWlyZWRGb3JJbmNsdXNpb24gY29u
c3QpOiBEZWxldGVkLgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRPYmplY3QuaDoKKiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xh
dGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHA6CihXZWJDb3JlOjpBWElzb2xhdGVkVHJlZTo6dXBk
YXRlTm9kZVByb3BlcnRpZXMpOgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0
ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmg6Ci0tLQogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BWENvcmVPYmplY3QuY3BwICAgICAgICAgfCAxMSArKysrKysrKysrKwogU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9BWENvcmVPYmplY3QuaCAgICAgICAgICAgfCAgNSArLS0tLQogU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcCAgfCAxMSAt
LS0tLS0tLS0tLQogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2Jq
ZWN0LmggICAgfCAgNCArLS0tCiAuLi4vYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZE9iamVjdC5jcHAgICB8ICA3IC0tLS0tLS0KIC4uLi9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVk
dHJlZS9BWElzb2xhdGVkT2JqZWN0LmggICAgIHwgIDIgLS0KIC4uLi9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgICAgIHwgIDMgLS0tCiAuLi4vYWNjZXNzaWJp
bGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaCAgICAgICB8ICAxIC0KIC4uLnJvcGVy
dGllcy11cGRhdGUtYWZ0ZXItZHluYW1pYy1jaGFuZ2UtZXhwZWN0ZWQudHh0IHwgIDQgKysrKwog
Li4uL3RyZWUtcHJvcGVydGllcy11cGRhdGUtYWZ0ZXItZHluYW1pYy1jaGFuZ2UuaHRtbCAgfCAg
NiArKysrKysKIDEwIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDMxIGRlbGV0aW9u
cygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhDb3JlT2Jq
ZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhDb3JlT2JqZWN0LmNwcApp
bmRleCA5M2Y1OTY2NzA3YjAuLmNiNzMxMDM0ZTNjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9BWENvcmVPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvQVhDb3JlT2JqZWN0LmNwcApAQCAtMTY3LDYgKzE2NywxNyBAQCBBWENvcmVP
YmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciBBWENvcmVPYmplY3Q6OmNvbnRlbnRz
KCkKICAgICByZXR1cm4geyB9OwogfQogCitBWENvcmVPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGls
ZHJlblZlY3RvciBBWENvcmVPYmplY3Q6OmFyaWFUcmVlSXRlbUNvbnRlbnQoKQoreworICAgIEFj
Y2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciByZXN1bHQ7CisgICAgLy8gVGhlIGNvbnRlbnQgb2Yg
YSB0cmVlaXRlbSBleGNsdWRlcyBvdGhlciB0cmVlaXRlbXMgb3IgdGhlaXIgY29udGFpbmluZyBn
cm91cHMuCisgICAgZm9yIChjb25zdCBhdXRvJiBjaGlsZCA6IGNoaWxkcmVuKCkpIHsKKyAgICAg
ICAgaWYgKCFjaGlsZC0+aXNHcm91cCgpICYmIGNoaWxkLT5yb2xlVmFsdWUoKSAhPSBBY2Nlc3Np
YmlsaXR5Um9sZTo6VHJlZUl0ZW0pCisgICAgICAgICAgICByZXN1bHQuYXBwZW5kKGNoaWxkKTsK
KyAgICB9CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogU3RyaW5nIEFYQ29yZU9iamVjdDo6Y3Vy
cmVudFZhbHVlKCkgY29uc3QKIHsKICAgICBzd2l0Y2ggKGN1cnJlbnRTdGF0ZSgpKSB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYQ29yZU9iamVjdC5oIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWENvcmVPYmplY3QuaAppbmRleCBkNWFlOTA5ODQ2
MDAuLjI4ZTFjNTJkNDI2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BWENvcmVPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYQ29y
ZU9iamVjdC5oCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0vLyBGSVhNRTog
U2hvdWxkIHJlbmFtZSB0aGlzIGZpbGUgQVhDb3JlT2JqZWN0LmguCi0KICNpbmNsdWRlICJDaGFy
YWN0ZXJSYW5nZS5oIgogI2luY2x1ZGUgIkNvbG9yQ29udmVyc2lvbi5oIgogI2luY2x1ZGUgIkhU
TUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmgiCkBAIC0xMTMwLDcgKzExMjgsNiBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIGFjY2Vzc2liaWxpdHlUZXh0KFZlY3RvcjxBY2Nlc3NpYmlsaXR5
VGV4dD4mKSBjb25zdCA9IDA7CiAgICAgLy8gQSBwcm9ncmFtbWF0aWMgd2F5IHRvIHNldCBhIG5h
bWUgb24gYW4gQWNjZXNzaWJsZU9iamVjdC4KICAgICB2aXJ0dWFsIHZvaWQgc2V0QWNjZXNzaWJs
ZU5hbWUoY29uc3QgQXRvbVN0cmluZyYpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgaGFzQXR0cmli
dXRlc1JlcXVpcmVkRm9ySW5jbHVzaW9uKCkgY29uc3QgPSAwOwogCiAgICAgdmlydHVhbCBTdHJp
bmcgdGl0bGUoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBTdHJpbmcgZGVzY3JpcHRpb24oKSBj
b25zdCA9IDA7CkBAIC0xMzIzLDcgKzEzMjAsNyBAQCBwdWJsaWM6CiAgICAgLy8gVXNlZCBieSBh
biBBUklBIHRyZWUgdG8gZ2V0IGFsbCBpdHMgcm93cy4KICAgICB2aXJ0dWFsIHZvaWQgYXJpYVRy
ZWVSb3dzKEFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciYpID0gMDsKICAgICAvLyBVc2VkIGJ5
IGFuIEFSSUEgdHJlZSBpdGVtIHRvIGdldCBvbmx5IGl0cyBjb250ZW50LCBhbmQgbm90IGl0cyBj
aGlsZCB0cmVlIGl0ZW1zIGFuZCBncm91cHMuCi0gICAgdmlydHVhbCBBY2Nlc3NpYmlsaXR5Q2hp
bGRyZW5WZWN0b3IgYXJpYVRyZWVJdGVtQ29udGVudCgpID0gMDsKKyAgICBBY2Nlc3NpYmlsaXR5
Q2hpbGRyZW5WZWN0b3IgYXJpYVRyZWVJdGVtQ29udGVudCgpOwogCiAgICAgLy8gQVJJQSBsaXZl
LXJlZ2lvbiBmZWF0dXJlcy4KICAgICBzdGF0aWMgYm9vbCBsaXZlUmVnaW9uU3RhdHVzSXNFbmFi
bGVkKGNvbnN0IEF0b21TdHJpbmcmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwCmluZGV4IGJkYzA4MzZkZDRmZS4uMjBmYzcz
MGEwOGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2li
aWxpdHlPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eU9iamVjdC5jcHAKQEAgLTIxOTYsMTcgKzIxOTYsNiBAQCB2b2lkIEFjY2Vzc2liaWxp
dHlPYmplY3Q6OmFyaWFUcmVlUm93cyhBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3ImIHJvd3Mp
CiAgICAgYXJpYVRyZWVSb3dzKHJvd3MsIGFuY2VzdG9ycyk7CiB9CiAgICAgCi1BWENvcmVPYmpl
Y3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciBBY2Nlc3NpYmlsaXR5T2JqZWN0Ojphcmlh
VHJlZUl0ZW1Db250ZW50KCkKLXsKLSAgICBBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3IgcmVz
dWx0OwotICAgIC8vIFRoZSBjb250ZW50IG9mIGEgdHJlZWl0ZW0gZXhjbHVkZXMgb3RoZXIgdHJl
ZWl0ZW1zIG9yIHRoZWlyIGNvbnRhaW5pbmcgZ3JvdXBzLgotICAgIGZvciAoY29uc3QgYXV0byYg
Y2hpbGQgOiBjaGlsZHJlbigpKSB7Ci0gICAgICAgIGlmICghY2hpbGQtPmlzR3JvdXAoKSAmJiBj
aGlsZC0+cm9sZVZhbHVlKCkgIT0gQWNjZXNzaWJpbGl0eVJvbGU6OlRyZWVJdGVtKQotICAgICAg
ICAgICAgcmVzdWx0LmFwcGVuZChjaGlsZCk7Ci0gICAgfQotICAgIHJldHVybiByZXN1bHQ7Ci19
Ci0KIEFYQ29yZU9iamVjdDo6QWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVjdG9yIEFjY2Vzc2liaWxp
dHlPYmplY3Q6OmRpc2Nsb3NlZFJvd3MoKQogewogICAgIEFjY2Vzc2liaWxpdHlDaGlsZHJlblZl
Y3RvciByZXN1bHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0Fj
Y2Vzc2liaWxpdHlPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eU9iamVjdC5oCmluZGV4IDNmMjY1NjY2MTQ3Zi4uN2Q5YTIwNDk4MDIxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaApA
QCAtMzcxLDcgKzM3MSw3IEBAIHB1YmxpYzoKIAogICAgIC8vIEEgcHJvZ3JhbW1hdGljIHdheSB0
byBzZXQgYSBuYW1lIG9uIGFuIEFjY2Vzc2libGVPYmplY3QuCiAgICAgdm9pZCBzZXRBY2Nlc3Np
YmxlTmFtZShjb25zdCBBdG9tU3RyaW5nJikgb3ZlcnJpZGUgeyB9Ci0gICAgYm9vbCBoYXNBdHRy
aWJ1dGVzUmVxdWlyZWRGb3JJbmNsdXNpb24oKSBjb25zdCBvdmVycmlkZTsKKyAgICB2aXJ0dWFs
IGJvb2wgaGFzQXR0cmlidXRlc1JlcXVpcmVkRm9ySW5jbHVzaW9uKCkgY29uc3Q7CiAKICAgICBT
dHJpbmcgdGl0bGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiB7IH07IH0KICAgICBTdHJpbmcg
ZGVzY3JpcHRpb24oKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiB7IH07IH0KQEAgLTYwMSw4ICs2
MDEsNiBAQCBwdWJsaWM6CiAKICAgICAvLyBVc2VkIGJ5IGFuIEFSSUEgdHJlZSB0byBnZXQgYWxs
IGl0cyByb3dzLgogICAgIHZvaWQgYXJpYVRyZWVSb3dzKEFjY2Vzc2liaWxpdHlDaGlsZHJlblZl
Y3RvciYpIG92ZXJyaWRlOwotICAgIC8vIFVzZWQgYnkgYW4gQVJJQSB0cmVlIGl0ZW0gdG8gZ2V0
IG9ubHkgaXRzIGNvbnRlbnQsIGFuZCBub3QgaXRzIGNoaWxkIHRyZWUgaXRlbXMgYW5kIGdyb3Vw
cy4KLSAgICBBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3IgYXJpYVRyZWVJdGVtQ29udGVudCgp
IG92ZXJyaWRlOwogCiAgICAgLy8gQVJJQSBsaXZlLXJlZ2lvbiBmZWF0dXJlcy4KICAgICBBY2Nl
c3NpYmlsaXR5T2JqZWN0KiBsaXZlUmVnaW9uQW5jZXN0b3IoYm9vbCBleGNsdWRlSWZPZmYgPSB0
cnVlKSBjb25zdCBmaW5hbCB7IHJldHVybiBBY2Nlc3NpYmlsaXR5OjpsaXZlUmVnaW9uQW5jZXN0
b3IoKnRoaXMsIGV4Y2x1ZGVJZk9mZik7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuY3BwIGIvU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHAKaW5k
ZXggNzhiZmMxOTkyN2FhLi5lZmNiZGRlMTg0OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3Qu
Y3BwCkBAIC0yMzAsNyArMjMwLDYgQEAgdm9pZCBBWElzb2xhdGVkT2JqZWN0Ojppbml0aWFsaXpl
UHJvcGVydGllcyhjb25zdCBSZWY8QWNjZXNzaWJpbGl0eU9iamVjdD4mIGF4T2IKIAogICAgIGlm
IChvYmplY3QuaXNUcmVlSXRlbSgpKSB7CiAgICAgICAgIHNldFByb3BlcnR5KEFYUHJvcGVydHlO
YW1lOjpJc1RyZWVJdGVtLCB0cnVlKTsKLSAgICAgICAgc2V0T2JqZWN0VmVjdG9yUHJvcGVydHko
QVhQcm9wZXJ0eU5hbWU6OkFSSUFUcmVlSXRlbUNvbnRlbnQsIG9iamVjdC5hcmlhVHJlZUl0ZW1D
b250ZW50KCkpOwogICAgICAgICBzZXRPYmplY3RWZWN0b3JQcm9wZXJ0eShBWFByb3BlcnR5TmFt
ZTo6RGlzY2xvc2VkUm93cywgb2JqZWN0LmRpc2Nsb3NlZFJvd3MoKSk7CiAgICAgfQogCkBAIC0x
NjY1LDEyICsxNjY0LDYgQEAgdm9pZCBBWElzb2xhdGVkT2JqZWN0OjpzZXRBY2Nlc3NpYmxlTmFt
ZShjb25zdCBBdG9tU3RyaW5nJikKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotYm9v
bCBBWElzb2xhdGVkT2JqZWN0OjpoYXNBdHRyaWJ1dGVzUmVxdWlyZWRGb3JJbmNsdXNpb24oKSBj
b25zdAotewotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiBmYWxzZTsKLX0K
LQogU3RyaW5nIEFYSXNvbGF0ZWRPYmplY3Q6OnN0cmluZ1ZhbHVlKCkgY29uc3QKIHsKICAgICBp
ZiAobV9wcm9wZXJ0eU1hcC5jb250YWlucyhBWFByb3BlcnR5TmFtZTo6U3RyaW5nVmFsdWUpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZE9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRy
ZWUvQVhJc29sYXRlZE9iamVjdC5oCmluZGV4IDM0N2E4NmI4OTc1OS4uZjg4NWVkYTliZGEzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElz
b2xhdGVkT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRl
ZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oCkBAIC0yNjEsNyArMjYxLDYgQEAgcHJpdmF0ZToKICAg
ICBib29sIGlzVmFsdWVBdXRvZmlsbEF2YWlsYWJsZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJu
IGJvb2xBdHRyaWJ1dGVWYWx1ZShBWFByb3BlcnR5TmFtZTo6SXNWYWx1ZUF1dG9maWxsQXZhaWxh
YmxlKTsgfQogICAgIEF1dG9GaWxsQnV0dG9uVHlwZSB2YWx1ZUF1dG9maWxsQnV0dG9uVHlwZSgp
IGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHN0YXRpY19jYXN0PEF1dG9GaWxsQnV0dG9uVHlwZT4o
aW50QXR0cmlidXRlVmFsdWUoQVhQcm9wZXJ0eU5hbWU6OlZhbHVlQXV0b2ZpbGxCdXR0b25UeXBl
KSk7IH0KICAgICB2b2lkIGFyaWFUcmVlUm93cyhBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3Im
IGNoaWxkcmVuKSBvdmVycmlkZSB7IGZpbGxDaGlsZHJlblZlY3RvckZvclByb3BlcnR5KEFYUHJv
cGVydHlOYW1lOjpBUklBVHJlZVJvd3MsIGNoaWxkcmVuKTsgfQotICAgIEFjY2Vzc2liaWxpdHlD
aGlsZHJlblZlY3RvciBhcmlhVHJlZUl0ZW1Db250ZW50KCkgb3ZlcnJpZGUgeyByZXR1cm4gdHJl
ZSgpLT5vYmplY3RzRm9ySURzKHZlY3RvckF0dHJpYnV0ZVZhbHVlPEFYSUQ+KEFYUHJvcGVydHlO
YW1lOjpBUklBVHJlZUl0ZW1Db250ZW50KSk7IH0KICAgICBVUkwgdXJsKCkgY29uc3Qgb3ZlcnJp
ZGUgeyByZXR1cm4gdXJsQXR0cmlidXRlVmFsdWUoQVhQcm9wZXJ0eU5hbWU6OlVSTCk7IH0KICAg
ICBTdHJpbmcgYWNjZXNzS2V5KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gc3RyaW5nQXR0cmli
dXRlVmFsdWUoQVhQcm9wZXJ0eU5hbWU6OkFjY2Vzc0tleSk7IH0KICAgICBTdHJpbmcgbG9jYWxp
emVkQWN0aW9uVmVyYigpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHN0cmluZ0F0dHJpYnV0ZVZh
bHVlKEFYUHJvcGVydHlOYW1lOjpMb2NhbGl6ZWRBY3Rpb25WZXJiKTsgfQpAQCAtNDcxLDcgKzQ3
MCw2IEBAIHByaXZhdGU6CiAgICAgQVhDb3JlT2JqZWN0KiBjb3JyZXNwb25kaW5nQ29udHJvbEZv
ckxhYmVsRWxlbWVudCgpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgaW5oZXJpdHNQcmVzZW50
YXRpb25hbFJvbGUoKSBjb25zdCBvdmVycmlkZTsKICAgICB2b2lkIHNldEFjY2Vzc2libGVOYW1l
KGNvbnN0IEF0b21TdHJpbmcmKSBvdmVycmlkZTsKLSAgICBib29sIGhhc0F0dHJpYnV0ZXNSZXF1
aXJlZEZvckluY2x1c2lvbigpIGNvbnN0IG92ZXJyaWRlOwogCiAgICAgU3RyaW5nIHRpdGxlKCkg
Y29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gc3RyaW5nQXR0cmlidXRlVmFsdWUoQVhQcm9wZXJ0eU5h
bWU6OlRpdGxlKTsgfQogICAgIFN0cmluZyBkZXNjcmlwdGlvbigpIGNvbnN0IG92ZXJyaWRlIHsg
cmV0dXJuIHN0cmluZ0F0dHJpYnV0ZVZhbHVlKEFYUHJvcGVydHlOYW1lOjpEZXNjcmlwdGlvbik7
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRUcmVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0
ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcAppbmRleCA0MDc3OGMwMDViN2IuLjc1NDE1MTc3ODcw
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUv
QVhJc29sYXRlZFRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNv
bGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcApAQCAtNDg2LDkgKzQ4Niw2IEBAIHZvaWQgQVhJ
c29sYXRlZFRyZWU6OnVwZGF0ZU5vZGVQcm9wZXJ0aWVzKEFYQ29yZU9iamVjdCYgYXhPYmplY3Qs
IGNvbnN0IFZlY3RvcjxBCiAgICAgICAgIGNhc2UgQVhQcm9wZXJ0eU5hbWU6OkFjY2Vzc0tleToK
ICAgICAgICAgICAgIHByb3BlcnR5TWFwLnNldChBWFByb3BlcnR5TmFtZTo6QWNjZXNzS2V5LCBh
eE9iamVjdC5hY2Nlc3NLZXkoKS5pc29sYXRlZENvcHkoKSk7CiAgICAgICAgICAgICBicmVhazsK
LSAgICAgICAgY2FzZSBBWFByb3BlcnR5TmFtZTo6QVJJQVRyZWVJdGVtQ29udGVudDoKLSAgICAg
ICAgICAgIHByb3BlcnR5TWFwLnNldChBWFByb3BlcnR5TmFtZTo6QVJJQVRyZWVJdGVtQ29udGVu
dCwgYXhJRHMoYXhPYmplY3QuYXJpYVRyZWVJdGVtQ29udGVudCgpKSk7Ci0gICAgICAgICAgICBi
cmVhazsKICAgICAgICAgY2FzZSBBWFByb3BlcnR5TmFtZTo6QVJJQVRyZWVSb3dzOiB7CiAgICAg
ICAgICAgICBBWENvcmVPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciBhcmlhVHJl
ZVJvd3M7CiAgICAgICAgICAgICBheE9iamVjdC5hcmlhVHJlZVJvd3MoYXJpYVRyZWVSb3dzKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FY
SXNvbGF0ZWRUcmVlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJl
ZS9BWElzb2xhdGVkVHJlZS5oCmluZGV4IDJhZjY0YTFjYWU3MS4uNDBkN2M0ODQ5M2JiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xh
dGVkVHJlZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRUcmVlLmgKQEAgLTUyLDcgKzUyLDYgQEAgY2xhc3MgUGFnZTsKIGVudW0gY2xh
c3MgQVhTdHJlYW1PcHRpb25zIDogdWludDhfdDsKIAogZW51bSBjbGFzcyBBWFByb3BlcnR5TmFt
ZSA6IHVpbnQxNl90IHsKLSAgICBBUklBVHJlZUl0ZW1Db250ZW50LAogICAgIEFSSUFUcmVlUm93
cywKICAgICBBdHRyaWJ1dGVkVGV4dCwKICAgICBBWENvbHVtbkNvdW50LApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRl
ci1keW5hbWljLWNoYW5nZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L21hYy90cmVlLXByb3BlcnRpZXMtdXBkYXRlLWFmdGVyLWR5bmFtaWMtY2hhbmdlLWV4cGVjdGVk
LnR4dAppbmRleCAzYzk1ODA0YTU0YzQuLmJkZmUwM2U2MmM0YyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5h
bWljLWNoYW5nZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9t
YWMvdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5hbWljLWNoYW5nZS1leHBlY3RlZC50
eHQKQEAgLTE5LDYgKzE5LDkgQEAgQWRkaW5nIGNvbnRlbnQgdG8gI3RyZWVpdGVtMSBhbmQgI3Ry
ZWVpdGVtMi4KICAgICByb3cgMTogQVhSb2xlOiBBWFJvdywgI3RyZWVpdGVtMgogICAgIHJvdyAy
OiBBWFJvbGU6IEFYUm93LCAjdHJlZWl0ZW0zCiAgICAgcm93IDM6IEFYUm9sZTogQVhSb3csICN0
cmVlaXRlbTQKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0cmVlaXRlbTInKS5hcHBlbmRDaGls
ZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZm9vLWJ1dHRvbicpKQorI3RyZWVpdGVtMiBjaGls
ZHJlbkNvdW50OiAxCisgICAgY2hpbGQ6IEFYUm9sZTogQVhCdXR0b24KIAogUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCkBAIC0yNiwzICsyOSw0IEBAIFRFU1QgQ09NUExFVEUKIEJ1
dHRvbiBpbnNpZGUgdHJlZWl0ZW0xCiBCdXR0b24gaW5zaWRlIHRyZWVpdGVtMwogQnV0dG9uIGlu
c2lkZSB0cmVlaXRlbTQKK0kgYW0gZm9vIGJ1dHRvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5hbWljLWNo
YW5nZS5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVz
LXVwZGF0ZS1hZnRlci1keW5hbWljLWNoYW5nZS5odG1sCmluZGV4IGQ0OWQ5Y2NlNzY2NS4uNDg5
NGFlYzA4MzA3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy90cmVl
LXByb3BlcnRpZXMtdXBkYXRlLWFmdGVyLWR5bmFtaWMtY2hhbmdlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5h
bWljLWNoYW5nZS5odG1sCkBAIC0yMCw2ICsyMCw4IEBACiAgICAgPC9saT4KIDwvZGl2PgogCis8
YnV0dG9uIGlkPSJmb28tYnV0dG9uIj5JIGFtIGZvbyBidXR0b248L2J1dHRvbj4KKwogPHNjcmlw
dD4KICAgICB2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHRyZWUgYW5k
IHRyZWVpdGVtIG9iamVjdHMgcmVwb3J0IHRoZSBtb3N0IHVwLXRvLWRhdGUgY2hpbGRyZW4gYW5k
IHJvd3MgYWZ0ZXIgZHluYW1pYyBwYWdlIGNoYW5nZXMuXG5cbiI7CiAKQEAgLTc4LDYgKzgwLDEw
IEBACiAgICAgICAgICAgICB0ZXN0T3V0cHV0ICs9IGAjdHJlZWl0ZW0yIGhhZCBkaXNjbG9zZWQg
cm93ICMke3NlY29uZERpc2Nsb3NlZFJvdy5kb21JZGVudGlmaWVyfVxuYDsKICAgICAgICAgICAg
IHZlcmlmeVRyZWVSb3dzKCk7CiAKKyAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gZXZhbEFuZFJl
dHVybigiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RyZWVpdGVtMicpLmFwcGVuZENoaWxkKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdmb28tYnV0dG9uJykpIik7CisgICAgICAgICAgICBhd2Fp
dCB3YWl0Rm9yKCgpID0+IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50
QnlJZCgidHJlZWl0ZW0yIikuY2hpbGRyZW5Db3VudCA+PSAxKTsKKyAgICAgICAgICAgIHZlcmlm
eUNoaWxkcmVuKCJ0cmVlaXRlbTIiKTsKKwogICAgICAgICAgICAgZGVidWcodGVzdE91dHB1dCk7
CiAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKICAgICAgICAgfSwgMCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>467837</attachid>
            <date>2023-09-23 15:58:08 -0700</date>
            <delta_ts>2023-09-24 21:21:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-262002-20230923155807.patch</filename>
            <type>text/plain</type>
            <size>12921</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">RnJvbSAxMzkxYWNjZGZlNDVjMmUwNDFjNmQ2OWEwNzk3Nzc5MTc2YWMyMzFiIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUeWxlciBXaWxjb2NrIDx0eWxlcl93QGFwcGxlLmNvbT4KRGF0
ZTogU2F0LCAyMyBTZXAgMjAyMyAxMDo1OToyMSAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIEFYOiBO
b24tZ3JvdXAgYW5kIG5vbi10cmVlLWl0ZW0gY2hpbGRyZW4gb2Ygcm9sZT0idHJlZWl0ZW0icwog
YmVjb21lIHN0YWxlIGFmdGVyIGR5bmFtaWMgY2hhbmdlcwogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTI2MjAwMiByZGFyOi8vcHJvYmxlbS8xMTU5MzY1NTAKClJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKV2UgbmV2ZXIgdXBkYXRlZCBBWFByb3BlcnR5TmFtZTo6
QVJJQVRyZWVJdGVtQ29udGVudCwgc28gaXQgZ290IHN0YWxlIGFmdGVyIGR5bmFtaWMgY2hhbmdl
cywKcmVzdWx0aW5nIGluIG1pc3NpbmcgY29udGVudCBmb3IgQVQgdXNlcnMuIFdlIHJlc29sdmUg
dGhpcyBieSByZW1vdmluZyB0aGUgcHJvcGVydHkgZW50aXJlbHksCnNpbmNlIHRoZSBpbXBsZW1l
bnRhdGlvbiBjYW4gYmUgZnVsZmlsbGVkIGVudGlyZWx5IGJ5IGV4aXN0aW5nIEFYQ29yZU9iamVj
dCBmdW5jdGlvbmFsaXR5LAphbmQgYSBwcm9wZXJ0eSB0aGF0IGRvZXNuJ3QgZXhpc3QgY2Fubm90
IGJlIHN0YWxlLgoKVGhpcyBwYXRjaCBhbHNvIG1vdmVzIGhhc0F0dHJpYnV0ZXNSZXF1aXJlZEZv
ckluY2x1c2lvbigpIG91dCBvZiBBWENvcmVPYmplY3QgYXMgaXQgaXMgb25seQpyZXF1aXJlZCBi
eSBBY2Nlc3NpYmlsaXR5T2JqZWN0IGFuZCBpdHMgc3ViY2xhc3Nlcy4KClRlc3RjYXNlIGFkZGVk
IHRvIGFjY2Vzc2liaWxpdHkvbWFjL3RyZWUtcHJvcGVydGllcy11cGRhdGUtYWZ0ZXItZHluYW1p
Yy1jaGFuZ2UuaHRtbC4KCiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9w
ZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5hbWljLWNoYW5nZS1leHBlY3RlZC50eHQ6CiogTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5h
bWljLWNoYW5nZS5odG1sOgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhDb3JlT2Jq
ZWN0LmNwcDoKKFdlYkNvcmU6OkFYQ29yZU9iamVjdDo6YXJpYVRyZWVJdGVtQ29udGVudCk6Ciog
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWENvcmVPYmplY3QuaDoKKiBTb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwOgooV2ViQ29yZTo6QWNj
ZXNzaWJpbGl0eU9iamVjdDo6YXJpYVRyZWVJdGVtQ29udGVudCk6IERlbGV0ZWQuCiogU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6CiogU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHA6CihX
ZWJDb3JlOjpBWElzb2xhdGVkT2JqZWN0Ojppbml0aWFsaXplUHJvcGVydGllcyk6CihXZWJDb3Jl
OjpBWElzb2xhdGVkT2JqZWN0OjpoYXNBdHRyaWJ1dGVzUmVxdWlyZWRGb3JJbmNsdXNpb24gY29u
c3QpOiBEZWxldGVkLgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRPYmplY3QuaDoKKiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xh
dGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHA6CihXZWJDb3JlOjpBWElzb2xhdGVkVHJlZTo6dXBk
YXRlTm9kZVByb3BlcnRpZXMpOgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0
ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmg6Ci0tLQogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BWENvcmVPYmplY3QuY3BwICAgICAgICAgfCAxMSArKysrKysrKysrKwogU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9BWENvcmVPYmplY3QuaCAgICAgICAgICAgfCAgNSArLS0tLQogU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcCAgfCAxMSAt
LS0tLS0tLS0tLQogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2Jq
ZWN0LmggICAgfCAgNCArLS0tCiAuLi4vYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZE9iamVjdC5jcHAgICB8ICA3IC0tLS0tLS0KIC4uLi9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVk
dHJlZS9BWElzb2xhdGVkT2JqZWN0LmggICAgIHwgIDIgLS0KIC4uLi9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgICAgIHwgIDMgLS0tCiAuLi4vYWNjZXNzaWJp
bGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaCAgICAgICB8ICAxIC0KIC4uLnJvcGVy
dGllcy11cGRhdGUtYWZ0ZXItZHluYW1pYy1jaGFuZ2UtZXhwZWN0ZWQudHh0IHwgIDMgKysrCiAu
Li4vdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5hbWljLWNoYW5nZS5odG1sICB8ICA2
ICsrKysrKwogMTAgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25z
KC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWENvcmVPYmpl
Y3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWENvcmVPYmplY3QuY3BwCmlu
ZGV4IDkzZjU5NjY3MDdiMC4uY2I3MzEwMzRlM2MyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FYQ29yZU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BWENvcmVPYmplY3QuY3BwCkBAIC0xNjcsNiArMTY3LDE3IEBAIEFYQ29yZU9i
amVjdDo6QWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVjdG9yIEFYQ29yZU9iamVjdDo6Y29udGVudHMo
KQogICAgIHJldHVybiB7IH07CiB9CiAKK0FYQ29yZU9iamVjdDo6QWNjZXNzaWJpbGl0eUNoaWxk
cmVuVmVjdG9yIEFYQ29yZU9iamVjdDo6YXJpYVRyZWVJdGVtQ29udGVudCgpCit7CisgICAgQWNj
ZXNzaWJpbGl0eUNoaWxkcmVuVmVjdG9yIHJlc3VsdDsKKyAgICAvLyBUaGUgY29udGVudCBvZiBh
IHRyZWVpdGVtIGV4Y2x1ZGVzIG90aGVyIHRyZWVpdGVtcyBvciB0aGVpciBjb250YWluaW5nIGdy
b3Vwcy4KKyAgICBmb3IgKGNvbnN0IGF1dG8mIGNoaWxkIDogY2hpbGRyZW4oKSkgeworICAgICAg
ICBpZiAoIWNoaWxkLT5pc0dyb3VwKCkgJiYgY2hpbGQtPnJvbGVWYWx1ZSgpICE9IEFjY2Vzc2li
aWxpdHlSb2xlOjpUcmVlSXRlbSkKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoY2hpbGQpOwor
ICAgIH0KKyAgICByZXR1cm4gcmVzdWx0OworfQorCiBTdHJpbmcgQVhDb3JlT2JqZWN0OjpjdXJy
ZW50VmFsdWUoKSBjb25zdAogewogICAgIHN3aXRjaCAoY3VycmVudFN0YXRlKCkpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhDb3JlT2JqZWN0LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYQ29yZU9iamVjdC5oCmluZGV4IGQ1YWU5MDk4NDYw
MC4uMjhlMWM1MmQ0MjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FYQ29yZU9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhDb3Jl
T2JqZWN0LmgKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLS8vIEZJWE1FOiBT
aG91bGQgcmVuYW1lIHRoaXMgZmlsZSBBWENvcmVPYmplY3QuaC4KLQogI2luY2x1ZGUgIkNoYXJh
Y3RlclJhbmdlLmgiCiAjaW5jbHVkZSAiQ29sb3JDb252ZXJzaW9uLmgiCiAjaW5jbHVkZSAiSFRN
TFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaCIKQEAgLTExMzAsNyArMTEyOCw2IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgYWNjZXNzaWJpbGl0eVRleHQoVmVjdG9yPEFjY2Vzc2liaWxpdHlU
ZXh0PiYpIGNvbnN0ID0gMDsKICAgICAvLyBBIHByb2dyYW1tYXRpYyB3YXkgdG8gc2V0IGEgbmFt
ZSBvbiBhbiBBY2Nlc3NpYmxlT2JqZWN0LgogICAgIHZpcnR1YWwgdm9pZCBzZXRBY2Nlc3NpYmxl
TmFtZShjb25zdCBBdG9tU3RyaW5nJikgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBoYXNBdHRyaWJ1
dGVzUmVxdWlyZWRGb3JJbmNsdXNpb24oKSBjb25zdCA9IDA7CiAKICAgICB2aXJ0dWFsIFN0cmlu
ZyB0aXRsZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIFN0cmluZyBkZXNjcmlwdGlvbigpIGNv
bnN0ID0gMDsKQEAgLTEzMjMsNyArMTMyMCw3IEBAIHB1YmxpYzoKICAgICAvLyBVc2VkIGJ5IGFu
IEFSSUEgdHJlZSB0byBnZXQgYWxsIGl0cyByb3dzLgogICAgIHZpcnR1YWwgdm9pZCBhcmlhVHJl
ZVJvd3MoQWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVjdG9yJikgPSAwOwogICAgIC8vIFVzZWQgYnkg
YW4gQVJJQSB0cmVlIGl0ZW0gdG8gZ2V0IG9ubHkgaXRzIGNvbnRlbnQsIGFuZCBub3QgaXRzIGNo
aWxkIHRyZWUgaXRlbXMgYW5kIGdyb3Vwcy4KLSAgICB2aXJ0dWFsIEFjY2Vzc2liaWxpdHlDaGls
ZHJlblZlY3RvciBhcmlhVHJlZUl0ZW1Db250ZW50KCkgPSAwOworICAgIEFjY2Vzc2liaWxpdHlD
aGlsZHJlblZlY3RvciBhcmlhVHJlZUl0ZW1Db250ZW50KCk7CiAKICAgICAvLyBBUklBIGxpdmUt
cmVnaW9uIGZlYXR1cmVzLgogICAgIHN0YXRpYyBib29sIGxpdmVSZWdpb25TdGF0dXNJc0VuYWJs
ZWQoY29uc3QgQXRvbVN0cmluZyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAKaW5kZXggYmRjMDgzNmRkNGZlLi4yMGZjNzMw
YTA4YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5T2JqZWN0LmNwcApAQCAtMjE5NiwxNyArMjE5Niw2IEBAIHZvaWQgQWNjZXNzaWJpbGl0
eU9iamVjdDo6YXJpYVRyZWVSb3dzKEFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciYgcm93cykK
ICAgICBhcmlhVHJlZVJvd3Mocm93cywgYW5jZXN0b3JzKTsKIH0KICAgICAKLUFYQ29yZU9iamVj
dDo6QWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVjdG9yIEFjY2Vzc2liaWxpdHlPYmplY3Q6OmFyaWFU
cmVlSXRlbUNvbnRlbnQoKQotewotICAgIEFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciByZXN1
bHQ7Ci0gICAgLy8gVGhlIGNvbnRlbnQgb2YgYSB0cmVlaXRlbSBleGNsdWRlcyBvdGhlciB0cmVl
aXRlbXMgb3IgdGhlaXIgY29udGFpbmluZyBncm91cHMuCi0gICAgZm9yIChjb25zdCBhdXRvJiBj
aGlsZCA6IGNoaWxkcmVuKCkpIHsKLSAgICAgICAgaWYgKCFjaGlsZC0+aXNHcm91cCgpICYmIGNo
aWxkLT5yb2xlVmFsdWUoKSAhPSBBY2Nlc3NpYmlsaXR5Um9sZTo6VHJlZUl0ZW0pCi0gICAgICAg
ICAgICByZXN1bHQuYXBwZW5kKGNoaWxkKTsKLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0K
LQogQVhDb3JlT2JqZWN0OjpBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3IgQWNjZXNzaWJpbGl0
eU9iamVjdDo6ZGlzY2xvc2VkUm93cygpCiB7CiAgICAgQWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVj
dG9yIHJlc3VsdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNj
ZXNzaWJpbGl0eU9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5T2JqZWN0LmgKaW5kZXggM2YyNjU2NjYxNDdmLi43ZDlhMjA0OTgwMjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oCkBA
IC0zNzEsNyArMzcxLDcgQEAgcHVibGljOgogCiAgICAgLy8gQSBwcm9ncmFtbWF0aWMgd2F5IHRv
IHNldCBhIG5hbWUgb24gYW4gQWNjZXNzaWJsZU9iamVjdC4KICAgICB2b2lkIHNldEFjY2Vzc2li
bGVOYW1lKGNvbnN0IEF0b21TdHJpbmcmKSBvdmVycmlkZSB7IH0KLSAgICBib29sIGhhc0F0dHJp
YnV0ZXNSZXF1aXJlZEZvckluY2x1c2lvbigpIGNvbnN0IG92ZXJyaWRlOworICAgIHZpcnR1YWwg
Ym9vbCBoYXNBdHRyaWJ1dGVzUmVxdWlyZWRGb3JJbmNsdXNpb24oKSBjb25zdDsKIAogICAgIFN0
cmluZyB0aXRsZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHsgfTsgfQogICAgIFN0cmluZyBk
ZXNjcmlwdGlvbigpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHsgfTsgfQpAQCAtNjAxLDggKzYw
MSw2IEBAIHB1YmxpYzoKIAogICAgIC8vIFVzZWQgYnkgYW4gQVJJQSB0cmVlIHRvIGdldCBhbGwg
aXRzIHJvd3MuCiAgICAgdm9pZCBhcmlhVHJlZVJvd3MoQWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVj
dG9yJikgb3ZlcnJpZGU7Ci0gICAgLy8gVXNlZCBieSBhbiBBUklBIHRyZWUgaXRlbSB0byBnZXQg
b25seSBpdHMgY29udGVudCwgYW5kIG5vdCBpdHMgY2hpbGQgdHJlZSBpdGVtcyBhbmQgZ3JvdXBz
LgotICAgIEFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciBhcmlhVHJlZUl0ZW1Db250ZW50KCkg
b3ZlcnJpZGU7CiAKICAgICAvLyBBUklBIGxpdmUtcmVnaW9uIGZlYXR1cmVzLgogICAgIEFjY2Vz
c2liaWxpdHlPYmplY3QqIGxpdmVSZWdpb25BbmNlc3Rvcihib29sIGV4Y2x1ZGVJZk9mZiA9IHRy
dWUpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIEFjY2Vzc2liaWxpdHk6OmxpdmVSZWdpb25BbmNlc3Rv
cigqdGhpcywgZXhjbHVkZUlmT2ZmKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2JqZWN0LmNwcAppbmRl
eCA3OGJmYzE5OTI3YWEuLmVmY2JkZGUxODQ5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5j
cHAKQEAgLTIzMCw3ICsyMzAsNiBAQCB2b2lkIEFYSXNvbGF0ZWRPYmplY3Q6OmluaXRpYWxpemVQ
cm9wZXJ0aWVzKGNvbnN0IFJlZjxBY2Nlc3NpYmlsaXR5T2JqZWN0PiYgYXhPYgogCiAgICAgaWYg
KG9iamVjdC5pc1RyZWVJdGVtKCkpIHsKICAgICAgICAgc2V0UHJvcGVydHkoQVhQcm9wZXJ0eU5h
bWU6OklzVHJlZUl0ZW0sIHRydWUpOwotICAgICAgICBzZXRPYmplY3RWZWN0b3JQcm9wZXJ0eShB
WFByb3BlcnR5TmFtZTo6QVJJQVRyZWVJdGVtQ29udGVudCwgb2JqZWN0LmFyaWFUcmVlSXRlbUNv
bnRlbnQoKSk7CiAgICAgICAgIHNldE9iamVjdFZlY3RvclByb3BlcnR5KEFYUHJvcGVydHlOYW1l
OjpEaXNjbG9zZWRSb3dzLCBvYmplY3QuZGlzY2xvc2VkUm93cygpKTsKICAgICB9CiAKQEAgLTE2
NjUsMTIgKzE2NjQsNiBAQCB2b2lkIEFYSXNvbGF0ZWRPYmplY3Q6OnNldEFjY2Vzc2libGVOYW1l
KGNvbnN0IEF0b21TdHJpbmcmKQogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogfQogCi1ib29s
IEFYSXNvbGF0ZWRPYmplY3Q6Omhhc0F0dHJpYnV0ZXNSZXF1aXJlZEZvckluY2x1c2lvbigpIGNv
bnN0Ci17Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIGZhbHNlOwotfQot
CiBTdHJpbmcgQVhJc29sYXRlZE9iamVjdDo6c3RyaW5nVmFsdWUoKSBjb25zdAogewogICAgIGlm
IChtX3Byb3BlcnR5TWFwLmNvbnRhaW5zKEFYUHJvcGVydHlOYW1lOjpTdHJpbmdWYWx1ZSkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElz
b2xhdGVkT2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJl
ZS9BWElzb2xhdGVkT2JqZWN0LmgKaW5kZXggMzQ3YTg2Yjg5NzU5Li5mODg1ZWRhOWJkYTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNv
bGF0ZWRPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVk
dHJlZS9BWElzb2xhdGVkT2JqZWN0LmgKQEAgLTI2MSw3ICsyNjEsNiBAQCBwcml2YXRlOgogICAg
IGJvb2wgaXNWYWx1ZUF1dG9maWxsQXZhaWxhYmxlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4g
Ym9vbEF0dHJpYnV0ZVZhbHVlKEFYUHJvcGVydHlOYW1lOjpJc1ZhbHVlQXV0b2ZpbGxBdmFpbGFi
bGUpOyB9CiAgICAgQXV0b0ZpbGxCdXR0b25UeXBlIHZhbHVlQXV0b2ZpbGxCdXR0b25UeXBlKCkg
Y29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gc3RhdGljX2Nhc3Q8QXV0b0ZpbGxCdXR0b25UeXBlPihp
bnRBdHRyaWJ1dGVWYWx1ZShBWFByb3BlcnR5TmFtZTo6VmFsdWVBdXRvZmlsbEJ1dHRvblR5cGUp
KTsgfQogICAgIHZvaWQgYXJpYVRyZWVSb3dzKEFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciYg
Y2hpbGRyZW4pIG92ZXJyaWRlIHsgZmlsbENoaWxkcmVuVmVjdG9yRm9yUHJvcGVydHkoQVhQcm9w
ZXJ0eU5hbWU6OkFSSUFUcmVlUm93cywgY2hpbGRyZW4pOyB9Ci0gICAgQWNjZXNzaWJpbGl0eUNo
aWxkcmVuVmVjdG9yIGFyaWFUcmVlSXRlbUNvbnRlbnQoKSBvdmVycmlkZSB7IHJldHVybiB0cmVl
KCktPm9iamVjdHNGb3JJRHModmVjdG9yQXR0cmlidXRlVmFsdWU8QVhJRD4oQVhQcm9wZXJ0eU5h
bWU6OkFSSUFUcmVlSXRlbUNvbnRlbnQpKTsgfQogICAgIFVSTCB1cmwoKSBjb25zdCBvdmVycmlk
ZSB7IHJldHVybiB1cmxBdHRyaWJ1dGVWYWx1ZShBWFByb3BlcnR5TmFtZTo6VVJMKTsgfQogICAg
IFN0cmluZyBhY2Nlc3NLZXkoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBzdHJpbmdBdHRyaWJ1
dGVWYWx1ZShBWFByb3BlcnR5TmFtZTo6QWNjZXNzS2V5KTsgfQogICAgIFN0cmluZyBsb2NhbGl6
ZWRBY3Rpb25WZXJiKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gc3RyaW5nQXR0cmlidXRlVmFs
dWUoQVhQcm9wZXJ0eU5hbWU6OkxvY2FsaXplZEFjdGlvblZlcmIpOyB9CkBAIC00NzEsNyArNDcw
LDYgQEAgcHJpdmF0ZToKICAgICBBWENvcmVPYmplY3QqIGNvcnJlc3BvbmRpbmdDb250cm9sRm9y
TGFiZWxFbGVtZW50KCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgYm9vbCBpbmhlcml0c1ByZXNlbnRh
dGlvbmFsUm9sZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIHZvaWQgc2V0QWNjZXNzaWJsZU5hbWUo
Y29uc3QgQXRvbVN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzQXR0cmlidXRlc1JlcXVp
cmVkRm9ySW5jbHVzaW9uKCkgY29uc3Qgb3ZlcnJpZGU7CiAKICAgICBTdHJpbmcgdGl0bGUoKSBj
b25zdCBvdmVycmlkZSB7IHJldHVybiBzdHJpbmdBdHRyaWJ1dGVWYWx1ZShBWFByb3BlcnR5TmFt
ZTo6VGl0bGUpOyB9CiAgICAgU3RyaW5nIGRlc2NyaXB0aW9uKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gc3RyaW5nQXR0cmlidXRlVmFsdWUoQVhQcm9wZXJ0eU5hbWU6OkRlc2NyaXB0aW9uKTsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUv
QVhJc29sYXRlZFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRl
ZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCmluZGV4IDQwNzc4YzAwNWI3Yi4uNzU0MTUxNzc4NzA0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9B
WElzb2xhdGVkVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29s
YXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCkBAIC00ODYsOSArNDg2LDYgQEAgdm9pZCBBWElz
b2xhdGVkVHJlZTo6dXBkYXRlTm9kZVByb3BlcnRpZXMoQVhDb3JlT2JqZWN0JiBheE9iamVjdCwg
Y29uc3QgVmVjdG9yPEEKICAgICAgICAgY2FzZSBBWFByb3BlcnR5TmFtZTo6QWNjZXNzS2V5Ogog
ICAgICAgICAgICAgcHJvcGVydHlNYXAuc2V0KEFYUHJvcGVydHlOYW1lOjpBY2Nlc3NLZXksIGF4
T2JqZWN0LmFjY2Vzc0tleSgpLmlzb2xhdGVkQ29weSgpKTsKICAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICBjYXNlIEFYUHJvcGVydHlOYW1lOjpBUklBVHJlZUl0ZW1Db250ZW50OgotICAgICAg
ICAgICAgcHJvcGVydHlNYXAuc2V0KEFYUHJvcGVydHlOYW1lOjpBUklBVHJlZUl0ZW1Db250ZW50
LCBheElEcyhheE9iamVjdC5hcmlhVHJlZUl0ZW1Db250ZW50KCkpKTsKLSAgICAgICAgICAgIGJy
ZWFrOwogICAgICAgICBjYXNlIEFYUHJvcGVydHlOYW1lOjpBUklBVHJlZVJvd3M6IHsKICAgICAg
ICAgICAgIEFYQ29yZU9iamVjdDo6QWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVjdG9yIGFyaWFUcmVl
Um93czsKICAgICAgICAgICAgIGF4T2JqZWN0LmFyaWFUcmVlUm93cyhhcmlhVHJlZVJvd3MpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRUcmVlLmgKaW5kZXggMmFmNjRhMWNhZTcxLi40MGQ3YzQ4NDkzYmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0
ZWRUcmVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUv
QVhJc29sYXRlZFRyZWUuaApAQCAtNTIsNyArNTIsNiBAQCBjbGFzcyBQYWdlOwogZW51bSBjbGFz
cyBBWFN0cmVhbU9wdGlvbnMgOiB1aW50OF90OwogCiBlbnVtIGNsYXNzIEFYUHJvcGVydHlOYW1l
IDogdWludDE2X3QgewotICAgIEFSSUFUcmVlSXRlbUNvbnRlbnQsCiAgICAgQVJJQVRyZWVSb3dz
LAogICAgIEF0dHJpYnV0ZWRUZXh0LAogICAgIEFYQ29sdW1uQ291bnQsCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy90cmVlLXByb3BlcnRpZXMtdXBkYXRlLWFmdGVy
LWR5bmFtaWMtY2hhbmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkv
bWFjL3RyZWUtcHJvcGVydGllcy11cGRhdGUtYWZ0ZXItZHluYW1pYy1jaGFuZ2UtZXhwZWN0ZWQu
dHh0CmluZGV4IDNjOTU4MDRhNTRjNC4uMTk2YTU0ZGE5YjcxIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy90cmVlLXByb3BlcnRpZXMtdXBkYXRlLWFmdGVyLWR5bmFt
aWMtY2hhbmdlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21h
Yy90cmVlLXByb3BlcnRpZXMtdXBkYXRlLWFmdGVyLWR5bmFtaWMtY2hhbmdlLWV4cGVjdGVkLnR4
dApAQCAtMTksNiArMTksOCBAQCBBZGRpbmcgY29udGVudCB0byAjdHJlZWl0ZW0xIGFuZCAjdHJl
ZWl0ZW0yLgogICAgIHJvdyAxOiBBWFJvbGU6IEFYUm93LCAjdHJlZWl0ZW0yCiAgICAgcm93IDI6
IEFYUm9sZTogQVhSb3csICN0cmVlaXRlbTMKICAgICByb3cgMzogQVhSb2xlOiBBWFJvdywgI3Ry
ZWVpdGVtNAorI3RyZWVpdGVtMiBjaGlsZHJlbkNvdW50OiAxCisgICAgY2hpbGQ6IEFYUm9sZTog
QVhCdXR0b24KIAogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCkBAIC0yNiwzICsy
OCw0IEBAIFRFU1QgQ09NUExFVEUKIEJ1dHRvbiBpbnNpZGUgdHJlZWl0ZW0xCiBCdXR0b24gaW5z
aWRlIHRyZWVpdGVtMwogQnV0dG9uIGluc2lkZSB0cmVlaXRlbTQKK0kgYW0gZm9vIGJ1dHRvbgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVz
LXVwZGF0ZS1hZnRlci1keW5hbWljLWNoYW5nZS5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJp
bGl0eS9tYWMvdHJlZS1wcm9wZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5hbWljLWNoYW5nZS5odG1s
CmluZGV4IGQ0OWQ5Y2NlNzY2NS4uMDAwMGU2NTA5MzBhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L21hYy90cmVlLXByb3BlcnRpZXMtdXBkYXRlLWFmdGVyLWR5bmFtaWMt
Y2hhbmdlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvdHJlZS1wcm9w
ZXJ0aWVzLXVwZGF0ZS1hZnRlci1keW5hbWljLWNoYW5nZS5odG1sCkBAIC0yMCw2ICsyMCw4IEBA
CiAgICAgPC9saT4KIDwvZGl2PgogCis8YnV0dG9uIGlkPSJmb28tYnV0dG9uIj5JIGFtIGZvbyBi
dXR0b248L2J1dHRvbj4KKwogPHNjcmlwdD4KICAgICB2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRl
c3QgZW5zdXJlcyB0aGF0IHRyZWUgYW5kIHRyZWVpdGVtIG9iamVjdHMgcmVwb3J0IHRoZSBtb3N0
IHVwLXRvLWRhdGUgY2hpbGRyZW4gYW5kIHJvd3MgYWZ0ZXIgZHluYW1pYyBwYWdlIGNoYW5nZXMu
XG5cbiI7CiAKQEAgLTc4LDYgKzgwLDEwIEBACiAgICAgICAgICAgICB0ZXN0T3V0cHV0ICs9IGAj
dHJlZWl0ZW0yIGhhZCBkaXNjbG9zZWQgcm93ICMke3NlY29uZERpc2Nsb3NlZFJvdy5kb21JZGVu
dGlmaWVyfVxuYDsKICAgICAgICAgICAgIHZlcmlmeVRyZWVSb3dzKCk7CiAKKyAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0cmVlaXRlbTInKS5hcHBlbmRDaGlsZChkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgnZm9vLWJ1dHRvbicpKTsKKyAgICAgICAgICAgIGF3YWl0IHdhaXRG
b3IoKCkgPT4gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJ0
cmVlaXRlbTIiKS5jaGlsZHJlbkNvdW50ID49IDEpOworICAgICAgICAgICAgdmVyaWZ5Q2hpbGRy
ZW4oInRyZWVpdGVtMiIpOworCiAgICAgICAgICAgICBkZWJ1Zyh0ZXN0T3V0cHV0KTsKICAgICAg
ICAgICAgIGZpbmlzaEpTVGVzdCgpOwogICAgICAgICB9LCAwKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>