<?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>165842</bug_id>
          
          <creation_ts>2016-12-13 23:36:37 -0800</creation_ts>
          <short_desc>AX: Consider implementing @aria-details.</short_desc>
          <delta_ts>2021-03-25 16:35:28 -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="James Craig">jcraig</reporter>
          <assigned_to name="Andres Gonzalez">andresg_22</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>aleventhal</cc>
    
    <cc>andresg_22</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</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>1259661</commentid>
    <comment_count>0</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2016-12-13 23:36:37 -0800</bug_when>
    <thetext>Consider implementing @aria-details.
https://www.w3.org/TR/wai-aria-1.1/#aria-details

I&apos;m not fully convinced of the utility, b/c it&apos;s more or less an on-page versus of @longdesc, and the examples included seem pretty trivial (image followed by a section describing the image). 

If someone were to present a more compelling use case, or if it starts getting wider adoption, we should pick it up. Implementation would likely just be a navigation or link action from the current element to the related details element.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281208</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-02-26 17:07:48 -0800</bug_when>
    <thetext>&lt;rdar://problem/30725491&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1574556</commentid>
    <comment_count>2</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2019-09-26 11:28:16 -0700</bug_when>
    <thetext>@aaronlev has posted the most compelling use case so far, for annotations in document suites like Google Docs. IMO, this is worth implementing now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1574576</commentid>
    <comment_count>3</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2019-09-26 12:10:42 -0700</bug_when>
    <thetext>Related to http://trac.webkit.org/changeset/218809/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1605909</commentid>
    <comment_count>4</comment_count>
    <who name="Aaron Leventhal">aleventhal</who>
    <bug_when>2020-01-13 09:51:55 -0800</bug_when>
    <thetext>Note that as part of work on ARIA Annotations, the ARIA spec is being updated to allow aria-details to support multiple ids. See w3c/aria#1136</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1605915</commentid>
    <comment_count>5</comment_count>
    <who name="Aaron Leventhal">aleventhal</who>
    <bug_when>2020-01-13 09:56:40 -0800</bug_when>
    <thetext>Note the importance of aria-details has increased quite a lot with the ARIA annotations work. Supporting aria-details will be necessary in order to support comments in Google Docs, among other things.

W3C ARIA spec issue: https://github.com/w3c/aria/issues/749
Explainer: https://github.com/aleventhal/aria-annotations

Also, multiple ids are now supported. See https://github.com/w3c/aria/pull/1136</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1605918</commentid>
    <comment_count>6</comment_count>
    <who name="Aaron Leventhal">aleventhal</who>
    <bug_when>2020-01-13 10:05:33 -0800</bug_when>
    <thetext>Luckily, the changeset pointed to in comment 3 already supports multiple ids.

But, I think it&apos;s only supporting ATK and not AX APIs?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1743867</commentid>
    <comment_count>7</comment_count>
      <attachid>424269</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2021-03-25 12:34:25 -0700</bug_when>
    <thetext>Created attachment 424269
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1743883</commentid>
    <comment_count>8</comment_count>
      <attachid>424269</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2021-03-25 13:10:18 -0700</bug_when>
    <thetext>Comment on attachment 424269
Patch

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

&gt; Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:1873
&gt; +        if (object) {

are we ever going to have a case where we have a nil pointer in the vector? won&apos;t adding a nil pointer to a vector crash anyway?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1743897</commentid>
    <comment_count>9</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2021-03-25 13:24:45 -0700</bug_when>
    <thetext>(In reply to chris fleizach from comment #8)
&gt; Comment on attachment 424269 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=424269&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:1873
&gt; &gt; +        if (object) {
&gt; 
&gt; are we ever going to have a case where we have a nil pointer in the vector?
&gt; won&apos;t adding a nil pointer to a vector crash anyway?

It is a Vector&lt;RefPtr&lt;&gt;&gt; and it can have null pointers on it. In the current use, it shouldn&apos;t have null pointers, but caller can pass null pointers, so I think it is appropriate to check before dereferencing here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1743899</commentid>
    <comment_count>10</comment_count>
      <attachid>424269</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2021-03-25 13:28:08 -0700</bug_when>
    <thetext>Comment on attachment 424269
Patch

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

&gt;&gt;&gt; Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:1873
&gt;&gt;&gt; +        if (object) {
&gt;&gt; 
&gt;&gt; are we ever going to have a case where we have a nil pointer in the vector? won&apos;t adding a nil pointer to a vector crash anyway?
&gt; 
&gt; It is a Vector&lt;RefPtr&lt;&gt;&gt; and it can have null pointers on it. In the current use, it shouldn&apos;t have null pointers, but caller can pass null pointers, so I think it is appropriate to check before dereferencing here.

I think we can save some lines of code if we do

if (!object)
   continue;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1743901</commentid>
    <comment_count>11</comment_count>
      <attachid>424276</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2021-03-25 13:37:03 -0700</bug_when>
    <thetext>Created attachment 424276
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1743902</commentid>
    <comment_count>12</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2021-03-25 13:38:23 -0700</bug_when>
    <thetext>(In reply to chris fleizach from comment #10)
&gt; Comment on attachment 424269 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=424269&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:1873
&gt; &gt;&gt;&gt; +        if (object) {
&gt; &gt;&gt; 
&gt; &gt;&gt; are we ever going to have a case where we have a nil pointer in the vector? won&apos;t adding a nil pointer to a vector crash anyway?
&gt; &gt; 
&gt; &gt; It is a Vector&lt;RefPtr&lt;&gt;&gt; and it can have null pointers on it. In the current use, it shouldn&apos;t have null pointers, but caller can pass null pointers, so I think it is appropriate to check before dereferencing here.
&gt; 
&gt; I think we can save some lines of code if we do
&gt; 
&gt; if (!object)
&gt;    continue;

Done, agree that is more legible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1743974</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-25 16:35:26 -0700</bug_when>
    <thetext>Committed r275066: &lt;https://commits.webkit.org/r275066&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 424276.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424269</attachid>
            <date>2021-03-25 12:34:25 -0700</date>
            <delta_ts>2021-03-25 13:37:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-165842-20210325153423.patch</filename>
            <type>text/plain</type>
            <size>18941</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0OTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ5YTY5YjI4NWQ2ZTFj
MTE3ZmYwN2FlYTY4ZTIyZTg1MTVjNWVhNi4uNzYxMWVkZGNmMjk0NDZmNWE0NTMzNWQ3MTdlYjFh
M2NlOGIxMmQzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIxLTAzLTI1ICBBbmRy
ZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogQ29uc2lk
ZXIgaW1wbGVtZW50aW5nIEBhcmlhLWRldGFpbHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjU4NDIKKyAgICAgICAgcmRhcjovLzMwNzI1NDkxCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdHM6IGFj
Y2Vzc2liaWxpdHkvaW9zLXNpbXVsYXRvci9hcmlhLWRldGFpbHMuaHRtbAorICAgICAgICAgICAg
ICAgYWNjZXNzaWJpbGl0eS9tYWMvYXJpYS1kZXRhaWxzLmh0bWwKKworICAgICAgICAtIEFkZGVk
IFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBhY2Nlc3NpYmlsaXR5RGV0YWlsc0VsZW1l
bnRzXSBvbiBpT1MuCisgICAgICAgIC0gQWRkZWQgaGVscGVyIGZ1bmN0aW9uIGFjY2Vzc2libGVF
bGVtZW50c0Zvck9iamVjdHMgdG8gcmV0cmlldmUgcGxhdGZvcm0tCisgICAgICAgIHNwZWNpZmlj
IGFjY2Vzc2libGUgZWxlbWVudHMgZ2l2ZW4gYSBjb2xsZWN0aW9uIG9mIEFYQ29yZU9iamVjdHMu
CisgICAgICAgIAorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVySU9TLm1tOgorICAgICAgICAoYWNjZXNzaWJsZUVsZW1lbnRzRm9yT2JqZWN0
cyk6CisgICAgICAgICgtW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2liaWxp
dHlEZXRhaWxzRWxlbWVudHNdKToKKyAgICAgICAgKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXIgYWNjZXNzaWJpbGl0eUVycm9yTWVzc2FnZUVsZW1lbnRzXSk6CisKIDIwMjEtMDMtMjQg
IFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBbY3NzLWdyaWRdIERvIG5v
dCBhbGxvdyBuZWdhdGl2ZSBoZWlnaHRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbSBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVy
SU9TLm1tCmluZGV4IGU2YWQ0OTczMmFkNjk1NTg4ZmMxMmMzZGEyMTc3NzRlOTFhMjg4OWIuLjI0
MjAyNjUwMDFjMTljYWZiMWM5Zjg2OGM4NjcyNmQ2ZDVhZDMyYzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVy
SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVySU9TLm1tCkBAIC0xODY2LDYgKzE4NjYsMzEgQEAgc3RhdGljIHZv
aWQgYXBwZW5kU3RyaW5nVG9SZXN1bHQoTlNNdXRhYmxlU3RyaW5nICpyZXN1bHQsIE5TU3RyaW5n
ICpzdHJpbmcpCiAgICAgfSkuYXV0b3JlbGVhc2UoKTsKIH0KIAorc3RhdGljIE5TQXJyYXkgKmFj
Y2Vzc2libGVFbGVtZW50c0Zvck9iamVjdHMoY29uc3QgQVhDb3JlT2JqZWN0OjpBY2Nlc3NpYmls
aXR5Q2hpbGRyZW5WZWN0b3ImIG9iamVjdHMpCit7CisgICAgQVhDb3JlT2JqZWN0OjpBY2Nlc3Np
YmlsaXR5Q2hpbGRyZW5WZWN0b3IgYWNjZXNzaWJsZUVsZW1lbnRzOworICAgIGZvciAoY29uc3Qg
YXV0byYgb2JqZWN0IDogb2JqZWN0cykgeworICAgICAgICBpZiAob2JqZWN0KSB7CisgICAgICAg
ICAgICBBY2Nlc3NpYmlsaXR5OjplbnVtZXJhdGVEZXNjZW5kYW50czxBWENvcmVPYmplY3Q+KCpv
YmplY3QsIHRydWUsIFsmYWNjZXNzaWJsZUVsZW1lbnRzXSAoQVhDb3JlT2JqZWN0JiBkZXNjZW5k
YW50KSB7CisgICAgICAgICAgICAgICAgaWYgKGRlc2NlbmRhbnQud3JhcHBlcigpLmlzQWNjZXNz
aWJpbGl0eUVsZW1lbnQpCisgICAgICAgICAgICAgICAgICAgIGFjY2Vzc2libGVFbGVtZW50cy5h
cHBlbmQoJmRlc2NlbmRhbnQpOworICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKyAgICB9CisK
KyAgICByZXR1cm4gY29udmVydFRvTlNBcnJheShhY2Nlc3NpYmxlRWxlbWVudHMpOworfQorCist
IChOU0FycmF5ICopYWNjZXNzaWJpbGl0eURldGFpbHNFbGVtZW50cworeworICAgIGlmICghW3Nl
bGYgX3ByZXBhcmVBY2Nlc3NpYmlsaXR5Q2FsbF0pCisgICAgICAgIHJldHVybiBuaWw7CisKKyAg
ICBBWENvcmVPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciBkZXRhaWxzRWxlbWVu
dHM7CisgICAgc2VsZi5heEJhY2tpbmdPYmplY3QtPmFyaWFEZXRhaWxzRWxlbWVudHMoZGV0YWls
c0VsZW1lbnRzKTsKKyAgICByZXR1cm4gYWNjZXNzaWJsZUVsZW1lbnRzRm9yT2JqZWN0cyhkZXRh
aWxzRWxlbWVudHMpOworfQorCiAtIChOU0FycmF5ICopYWNjZXNzaWJpbGl0eUVycm9yTWVzc2Fn
ZUVsZW1lbnRzCiB7CiAgICAgaWYgKCFbc2VsZiBfcHJlcGFyZUFjY2Vzc2liaWxpdHlDYWxsXSkK
QEAgLTE4NzMsMTcgKzE4OTgsNyBAQCBzdGF0aWMgdm9pZCBhcHBlbmRTdHJpbmdUb1Jlc3VsdChO
U011dGFibGVTdHJpbmcgKnJlc3VsdCwgTlNTdHJpbmcgKnN0cmluZykKIAogICAgIEFYQ29yZU9i
amVjdDo6QWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVjdG9yIGVycm9yRWxlbWVudHM7CiAgICAgc2Vs
Zi5heEJhY2tpbmdPYmplY3QtPmFyaWFFcnJvck1lc3NhZ2VFbGVtZW50cyhlcnJvckVsZW1lbnRz
KTsKLQotICAgIEFYQ29yZU9iamVjdDo6QWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVjdG9yIGFjY2Vz
c2libGVFbGVtZW50czsKLSAgICBmb3IgKGNvbnN0IGF1dG8mIGVsZW1lbnQgOiBlcnJvckVsZW1l
bnRzKSB7Ci0gICAgICAgIEFTU0VSVChlbGVtZW50KTsKLSAgICAgICAgQWNjZXNzaWJpbGl0eTo6
ZW51bWVyYXRlRGVzY2VuZGFudHM8QVhDb3JlT2JqZWN0PigqZWxlbWVudCwgdHJ1ZSwgWyZhY2Nl
c3NpYmxlRWxlbWVudHNdIChBWENvcmVPYmplY3QmIGRlc2NlbmRhbnQpIHsKLSAgICAgICAgICAg
IGlmIChkZXNjZW5kYW50LndyYXBwZXIoKS5pc0FjY2Vzc2liaWxpdHlFbGVtZW50KQotICAgICAg
ICAgICAgICAgIGFjY2Vzc2libGVFbGVtZW50cy5hcHBlbmQoJmRlc2NlbmRhbnQpOwotICAgICAg
ICB9KTsKLSAgICB9Ci0KLSAgICByZXR1cm4gY29udmVydFRvTlNBcnJheShhY2Nlc3NpYmxlRWxl
bWVudHMpOworICAgIHJldHVybiBhY2Nlc3NpYmxlRWxlbWVudHNGb3JPYmplY3RzKGVycm9yRWxl
bWVudHMpOwogfQogCiAtIChpZClhY2Nlc3NpYmlsaXR5TGlua2VkRWxlbWVudApkaWZmIC0tZ2l0
IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGQzNWM0Y2Y0YWZiZTMx
M2UwYTA3Y2NjNDdjNjUzMmE1ZTliMzZkODcuLmU2ZTM5NmRmNzNhZTljZjAxYjE2NzViNzE2MGY3
ZTJmNTdkYmVlNDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMS0wMy0yNSAgQW5kcmVzIEdvbnphbGV6ICA8YW5k
cmVzZ18yMkBhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IENvbnNpZGVyIGltcGxlbWVudGluZyBA
YXJpYS1kZXRhaWxzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTY1ODQyCisgICAgICAgIHJkYXI6Ly8zMDcyNTQ5MQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OmRldGFpbHNFbGVtZW50cy4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5jcHA6CisgICAgICAgIChXVFI6OkFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OmRldGFpbHNFbGVtZW50cyBjb25zdCk6CisgICAgICAgICogV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50Lmg6Cisg
ICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9BY2Nlc3Np
YmlsaXR5VUlFbGVtZW50LmlkbDoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL2lvcy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50SU9TLm1tOgorICAgICAgICAoV1RSOjpB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpkZXRhaWxzRWxlbWVudHMgY29uc3QpOgorICAgICAgICAq
IFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnRNYWMubW06CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmRldGFpbHNF
bGVtZW50cyBjb25zdCk6CisKIDIwMjEtMDMtMjMgIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2No
ZW5leUBhcHBsZS5jb20+CiAKICAgICAgICAgU2VydmljZSB3b3JrZXIgbG9hZHMgYXJlIG5vdCBt
YXJrZWQgYXMgYXBwLWJvdW5kCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0lu
amVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmNwcAppbmRleCAy
MzczODkxMThmODMwM2VmZjVmMGE2MjI2NTkyNDQ4NjI4YmZjNzJmLi45N2ExYzJiOTVjZmQ1ZmUy
YjJmZWM3ODcwYTYyMThkNmU0YzJkYjQ3IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCisrKyBiL1Rvb2xz
L1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5j
cHAKQEAgLTEyNyw2ICsxMjcsNyBAQCBSZWZQdHI8QWNjZXNzaWJpbGl0eVRleHRNYXJrZXI+IEFj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQ6Om5leHRTZW50ZW5jZUVuZFRleHRNYXJrZQogUmVmUHRyPEFj
Y2Vzc2liaWxpdHlUZXh0TWFya2VyPiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpwcmV2aW91c1Nl
bnRlbmNlU3RhcnRUZXh0TWFya2VyRm9yVGV4dE1hcmtlcihBY2Nlc3NpYmlsaXR5VGV4dE1hcmtl
ciopIHsgcmV0dXJuIG51bGxwdHI7IH0KIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlclJh
bmdlPiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjptaXNzcGVsbGluZ1RleHRNYXJrZXJSYW5nZShB
Y2Nlc3NpYmlsaXR5VGV4dE1hcmtlclJhbmdlKiwgYm9vbCkgeyByZXR1cm4gbnVsbHB0cjsgfQog
dm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpkaXNtaXNzKCkgeyB9CitKU1ZhbHVlUmVmIEFj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmRldGFpbHNFbGVtZW50cygpIGNvbnN0IHsgcmV0dXJuIHsg
fTsgfQogSlNWYWx1ZVJlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjplcnJvck1lc3NhZ2VFbGVt
ZW50cygpIGNvbnN0IHsgcmV0dXJuIHsgfTsgfQogSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IEFj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmVtYmVkZGVkSW1hZ2VEZXNjcmlwdGlvbigpIGNvbnN0IHsg
cmV0dXJuIG51bGxwdHI7IH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmggYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaAppbmRl
eCA5M2I3YTc5OTMxNmFmMWYxZmZkNGIyNmYwZTJmN2U3Y2Q1NWE1MDBjLi4zYTgxZDY3MTdlODMx
OWFlYzcxZjc5N2Q3M2ZiYzgyMzA2MjBiNzk2IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaAorKysgYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQu
aApAQCAtMjI1LDYgKzIyNSw3IEBAIHB1YmxpYzoKICAgICBSZWZQdHI8QWNjZXNzaWJpbGl0eVVJ
RWxlbWVudD4gZGlzY2xvc2VkUm93QXRJbmRleCh1bnNpZ25lZCk7CiAgICAgUmVmUHRyPEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ+IHJvd0F0SW5kZXgodW5zaWduZWQpOwogCisgICAgSlNWYWx1ZVJl
ZiBkZXRhaWxzRWxlbWVudHMoKSBjb25zdDsKICAgICBKU1ZhbHVlUmVmIGVycm9yTWVzc2FnZUVs
ZW1lbnRzKCkgY29uc3Q7CiAgICAgLy8gQVJJQSBzcGVjaWZpYwogICAgIFJlZlB0cjxBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50PiBhcmlhT3duc0VsZW1lbnRBdEluZGV4KHVuc2lnbmVkKTsKZGlmZiAt
LWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudC5pZGwgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL0JpbmRpbmdzL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaWRsCmluZGV4IGY2ZDE5ZWUw
NTc0NmM0OGQwYjQwZWU4MTg1NzY3MDA0Mzg2MDZmMGYuLjM1ZWE4ZDI2Y2NmY2Q3YzBmMmNkN2U5
NGRkNjBkMTgzMjZlNDBkYjggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5q
ZWN0ZWRCdW5kbGUvQmluZGluZ3MvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5pZGwKKysrIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50LmlkbApAQCAtMTY5LDYgKzE2OSw3IEBACiAgICAgb2JqZWN0IGNvbHVtbkhlYWRl
cnMoKTsKICAgICBvYmplY3Qgcm93SGVhZGVycygpOwogCisgICAgb2JqZWN0IGRldGFpbHNFbGVt
ZW50cygpOwogICAgIG9iamVjdCBlcnJvck1lc3NhZ2VFbGVtZW50cygpOwogICAgIEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQgYXJpYU93bnNFbGVtZW50QXRJbmRleCh1bnNpZ25lZCBsb25nIGluZGV4
KTsKICAgICBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IGFyaWFPd25zUmVmZXJlbmNpbmdFbGVtZW50
QXRJbmRleCh1bnNpZ25lZCBsb25nIGluZGV4KTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvaW9zL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRJT1MubW0g
Yi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2lvcy9BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50SU9TLm1tCmluZGV4IGRjYjY3YmNjMmE4N2QxYmIyMDFlZWY1NTZhZTM4MTljODZm
OTM0MmIuLmVmZDA5ODhiZDgwYTNmMGJiMjQ5OTJhOThlMGRjZGUwYzM3NTg4NzIgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvaW9zL0FjY2Vzc2liaWxp
dHlVSUVsZW1lbnRJT1MubW0KKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1
bmRsZS9pb3MvQWNjZXNzaWJpbGl0eVVJRWxlbWVudElPUy5tbQpAQCAtNTAsNiArNTAsNyBAQCB0
eXBlZGVmIHZvaWQgKCpBWFBvc3RlZE5vdGlmaWNhdGlvbkNhbGxiYWNrKShpZCBlbGVtZW50LCBO
U1N0cmluZyogbm90aWZpY2F0aW9uLAogLSAoaWQpYWNjZXNzaWJpbGl0eUVsZW1lbnRGb3JSb3c6
KE5TSW50ZWdlcilyb3cgYW5kQ29sdW1uOihOU0ludGVnZXIpY29sdW1uOwogLSAoTlNVUkwgKilh
Y2Nlc3NpYmlsaXR5VVJMOwogLSAoTlNBcnJheSAqKWFjY2Vzc2liaWxpdHlIZWFkZXJFbGVtZW50
czsKKy0gKE5TQXJyYXkgKilhY2Nlc3NpYmlsaXR5RGV0YWlsc0VsZW1lbnRzOwogLSAoTlNBcnJh
eSAqKWFjY2Vzc2liaWxpdHlFcnJvck1lc3NhZ2VFbGVtZW50czsKIC0gKE5TU3RyaW5nICopYWNj
ZXNzaWJpbGl0eVBsYWNlaG9sZGVyVmFsdWU7CiAtIChOU1N0cmluZyAqKXN0cmluZ0ZvclJhbmdl
OihOU1JhbmdlKXJhbmdlOwpAQCAtMjcwLDYgKzI3MSwxNCBAQCBSZWZQdHI8QWNjZXNzaWJpbGl0
eVVJRWxlbWVudD4gQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6bGlua2VkVUlFbGVtZW50QXRJbmRl
eCh1bgogICAgIHJldHVybiBudWxscHRyOwogfQogCitKU1ZhbHVlUmVmIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6OmRldGFpbHNFbGVtZW50cygpIGNvbnN0Cit7CisgICAgTlNBcnJheSAqZWxlbWVu
dHMgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlEZXRhaWxzRWxlbWVudHNdOworICAgIGlmIChb
ZWxlbWVudHMgaXNLaW5kT2ZDbGFzczpOU0FycmF5LmNsYXNzXSkKKyAgICAgICAgcmV0dXJuIG1h
a2VKU0FycmF5KG1ha2VWZWN0b3I8UmVmUHRyPEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ+PihlbGVt
ZW50cykpOworICAgIHJldHVybiB7IH07Cit9CisKIEpTVmFsdWVSZWYgQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6ZXJyb3JNZXNzYWdlRWxlbWVudHMoKSBjb25zdAogewogICAgIE5TQXJyYXkgKmVs
ZW1lbnRzID0gW21fZWxlbWVudCBhY2Nlc3NpYmlsaXR5RXJyb3JNZXNzYWdlRWxlbWVudHNdOwpk
aWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9tYWMvQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbSBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRNYWMubW0KaW5kZXggNmQ5N2M1YmZi
ZDBkYTBiNTEzNTVlNzY4ZWQ5OWU5MzE3N2QyZGVjYS4uMDc3YzA0OGU5ZmFmYTdjNzk1ZmQ5ZDM4
Yjg2MjZlNWUzMTU3YjQxYSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9Jbmpl
Y3RlZEJ1bmRsZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQorKysgYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50
TWFjLm1tCkBAIC00NDUsNiArNDQ1LDE3IEBAIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
PiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpsaW5rZWRVSUVsZW1lbnRBdEluZGV4KHVuCiAgICAg
cmV0dXJuIGVsZW1lbnRGb3JBdHRyaWJ1dGVBdEluZGV4KE5TQWNjZXNzaWJpbGl0eUxpbmtlZFVJ
RWxlbWVudHNBdHRyaWJ1dGUsIGluZGV4KTsKIH0KIAorSlNWYWx1ZVJlZiBBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpkZXRhaWxzRWxlbWVudHMoKSBjb25zdAoreworICAgIEJFR0lOX0FYX09CSkNf
RVhDRVBUSU9OUworICAgIE5TQXJyYXkgKmVsZW1lbnRzID0gYXR0cmlidXRlVmFsdWUobV9lbGVt
ZW50LmdldCgpLCBAIkFYRGV0YWlsc0VsZW1lbnRzIik7CisgICAgaWYgKFtlbGVtZW50cyBpc0tp
bmRPZkNsYXNzOk5TQXJyYXkuY2xhc3NdKQorICAgICAgICByZXR1cm4gbWFrZUpTQXJyYXkobWFr
ZVZlY3RvcjxSZWZQdHI8QWNjZXNzaWJpbGl0eVVJRWxlbWVudD4+KGVsZW1lbnRzKSk7CisgICAg
RU5EX0FYX09CSkNfRVhDRVBUSU9OUworCisgICAgcmV0dXJuIHsgfTsKK30KKwogSlNWYWx1ZVJl
ZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjplcnJvck1lc3NhZ2VFbGVtZW50cygpIGNvbnN0CiB7
CiAgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTBmY2NhNWIzY2NmYjI4NWVh
NTgwOTI3ZGQ1NDE0MDAzNTM0MTk0Yy4uYTE2MTZjYzg0YzIzNDNlNTA4MmQ4OTRiMzJjMTJlNzMy
NWVlY2ViZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIxLTAzLTI1ICBBbmRyZXMgR29uemFs
ZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogQ29uc2lkZXIgaW1wbGVt
ZW50aW5nIEBhcmlhLWRldGFpbHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjU4NDIKKyAgICAgICAgcmRhcjovLzMwNzI1NDkxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2lv
cy1zaW11bGF0b3IvYXJpYS1kZXRhaWxzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
YWNjZXNzaWJpbGl0eS9pb3Mtc2ltdWxhdG9yL2FyaWEtZGV0YWlscy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9hcmlhLWRldGFpbHMtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9hcmlhLWRldGFpbHMuaHRtbDogQWRkZWQu
CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zOgorCiAyMDIxLTAz
LTI0ICBDaHJpcyBMb3JkICA8Y2xvcmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR0xJQl0gaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9vZmZzY3JlZW4vbWFudWFs
L2RyYXctZ2VuZXJpYy1mYW1pbHkvMmQudGV4dC5kcmF3LmdlbmVyaWMuZmFtaWx5LncuaHRtbCBp
cyBmbGFreSBmYWlsaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2lv
cy1zaW11bGF0b3IvYXJpYS1kZXRhaWxzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkvaW9zLXNpbXVsYXRvci9hcmlhLWRldGFpbHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmE0MTg3YjkzYzg1Yjc4NTllYjczYjdkMjk5ODFkNzQ0MTk1NTM1YmYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2lvcy1zaW11bGF0b3IvYXJpYS1kZXRh
aWxzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIzIEBACisKK0RldGFpbHMgZXhhbXBsZQorVGhl
IFB5dGhhZ29yZWFuIFRoZW9yZW0gaXMgYSByZWxhdGlvbnNoaXAgaW4gRXVjbGlkZWFuIEdlb21l
dHJ5IGJldHdlZW4gdGhlIHRocmVlIHNpZGVzIG9mIGEgcmlnaHQgdHJpYW5nbGUsIHdoZXJlIHRo
ZSBzcXVhcmUgb2YgdGhlIGh5cG90ZW51c2UgaXMgdGhlIHN1bSBvZiB0aGUgc3F1YXJlcyBvZiB0
aGUgdHdvIG9wcG9zaW5nIHNpZGVzLgorCitUaGUgZm9sbG93aW5nIGRyYXdpbmcgaWxsdXN0cmF0
ZXMgYW4gYXBwbGljYXRpb24gb2YgdGhlIFB5dGhhZ29yZWFuIFRoZW9yZW0gd2hlbiB1c2VkIHRv
IGNvbnN0cnVjdCBhIHNrYXRlYm9hcmQgcmFtcC4KKworSW4gdGhpcyBleGFtcGxlIHlvdSB3aWxs
IG5vdGljZSBhIHNrYXRlYm9hcmQgcmFtcCB3aXRoIGEgYmFzZSBhbmQgdmVydGljYWwgYm9hcmQg
d2hvc2Ugd2lkdGggaXMgdGhlIHdpZHRoIG9mIHRoZSByYW1wLiBUbyBjb21wdXRlIGhvdyBsb25n
IHRoZSByYW1wIG11c3QgYmUsIHNpbXBseSBjYWxjdWxhdGUgdGhlIGJhc2UgbGVuZ3RoLCBzcXVh
cmUgaXQsIHN1bSBpdCB3aXRoIHRoZSBzcXVhcmUgb2YgdGhlIGhlaWdodCBvZiB0aGUgcmFtcCwg
YW5kIHRha2UgdGhlIHNxdWFyZSByb290IG9mIHRoZSBzdW0uCisKK1NlZSBhbiBBcHBsaWNhdGlv
biBvZiB0aGUgUHl0aGFnb3JlYW4gVGhlb3JlbS4KKworVGhpcyB2ZXJpZmllcyB0aGUgZXhwb3N1
cmUgb2YgYXJpYS1kZXRhaWxzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFT
UyBkZXRhaWxzLmxlbmd0aCBpcyA1CitQQVNTIGRldGFpbHNbMF0uZGVzY3JpcHRpb24gaXMgJ0FY
TGFiZWw6IERldGFpbHMgZXhhbXBsZScKK1BBU1MgZGV0YWlsc1syXS5kZXNjcmlwdGlvbiBpcyAn
QVhMYWJlbDogVGhlIGZvbGxvd2luZyBkcmF3aW5nIGlsbHVzdHJhdGVzIGFuIGFwcGxpY2F0aW9u
IG9mIHRoZSBQeXRoYWdvcmVhbiBUaGVvcmVtIHdoZW4gdXNlZCB0byBjb25zdHJ1Y3QgYSBza2F0
ZWJvYXJkIHJhbXAuJworUEFTUyBkZXRhaWxzWzRdLmRlc2NyaXB0aW9uIGlzICdBWExhYmVsOiBB
cHBsaWNhdGlvbiBvZiB0aGUgUHl0aGFnb3JlYW4gVGhlb3JlbScKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2lvcy1zaW11bGF0b3IvYXJpYS1kZXRhaWxzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L2lvcy1zaW11bGF0b3IvYXJpYS1kZXRhaWxzLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMjAwNmZiN2M3NTc1MDU0ZWMxMzU0YmMwZGQ0MjkxM2ZlNGUzNzdmOQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvaW9zLXNpbXVsYXRvci9hcmlhLWRl
dGFpbHMuaHRtbApAQCAtMCwwICsxLDQ2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lF
VEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPGlt
ZyBpZD0iaW1hZ2UxIiBzcmM9InB5dGhhZ29yZWFuLmpwZyIgYWx0PSJQeXRoYWdvcmVhbiBUaGVv
cmVtIiBhcmlhLWRldGFpbHM9ImRldGFpbHMxIGRldGFpbHMyIj4KKzxkZXRhaWxzIG9wZW4gaWQ9
ImRldGFpbHMxIj4KKyAgICA8c3VtbWFyeT5EZXRhaWxzIGV4YW1wbGU8L3N1bW1hcnk+CisgICAg
PHA+CisgICAgVGhlIFB5dGhhZ29yZWFuIFRoZW9yZW0gaXMgYSByZWxhdGlvbnNoaXAgaW4gRXVj
bGlkZWFuIEdlb21ldHJ5IGJldHdlZW4gdGhlIHRocmVlIHNpZGVzIG9mCisgICAgYSByaWdodCB0
cmlhbmdsZSwgd2hlcmUgdGhlIHNxdWFyZSBvZiB0aGUgaHlwb3RlbnVzZSBpcyB0aGUgc3VtIG9m
IHRoZSBzcXVhcmVzIG9mIHRoZSB0d28KKyAgICBvcHBvc2luZyBzaWRlcy4KKyAgICA8L3A+Cisg
ICAgPHA+CisgICAgVGhlIGZvbGxvd2luZyBkcmF3aW5nIGlsbHVzdHJhdGVzIGFuIGFwcGxpY2F0
aW9uIG9mIHRoZSBQeXRoYWdvcmVhbiBUaGVvcmVtIHdoZW4gdXNlZCB0bworICAgIGNvbnN0cnVj
dCBhIHNrYXRlYm9hcmQgcmFtcC4KKyAgICA8L3A+CisgICAgPHA+CisgICAgSW4gdGhpcyBleGFt
cGxlIHlvdSB3aWxsIG5vdGljZSBhIHNrYXRlYm9hcmQgcmFtcCB3aXRoIGEgYmFzZSBhbmQgdmVy
dGljYWwgYm9hcmQgd2hvc2Ugd2lkdGgKKyAgICBpcyB0aGUgd2lkdGggb2YgdGhlIHJhbXAuIFRv
IGNvbXB1dGUgaG93IGxvbmcgdGhlIHJhbXAgbXVzdCBiZSwgc2ltcGx5IGNhbGN1bGF0ZSB0aGUK
KyAgICBiYXNlIGxlbmd0aCwgc3F1YXJlIGl0LCBzdW0gaXQgd2l0aCB0aGUgc3F1YXJlIG9mIHRo
ZSBoZWlnaHQgb2YgdGhlIHJhbXAsIGFuZCB0YWtlIHRoZQorICAgIHNxdWFyZSByb290IG9mIHRo
ZSBzdW0uCisgICAgPC9wPgorPC9kZXRhaWxzPgorPHA+U2VlIGFuIDxhIGhyZWY9Imh0dHA6Ly9m
b28uY29tL3B0Lmh0bWwiIGlkPSJkZXRhaWxzMiI+QXBwbGljYXRpb24gb2YgdGhlIFB5dGhhZ29y
ZWFuIFRoZW9yZW08L2E+LjwvcD4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGhpcyB2ZXJp
ZmllcyB0aGUgZXhwb3N1cmUgb2YgYXJpYS1kZXRhaWxzLiIpOworCisgICAgaWYgKHdpbmRvdy5h
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICBpbWFnZTEgPSBhY2Nlc3NpYmlsaXR5
Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImltYWdlMSIpOworICAgICAgICBkZXRh
aWxzID0gaW1hZ2UxLmRldGFpbHNFbGVtZW50cygpOworICAgICAgICBzaG91bGRCZSgiZGV0YWls
cy5sZW5ndGgiLCAiNSIpOworICAgICAgICBzaG91bGRCZSgiZGV0YWlsc1swXS5kZXNjcmlwdGlv
biIsICInQVhMYWJlbDogRGV0YWlscyBleGFtcGxlJyIpOworICAgICAgICBzaG91bGRCZSgiZGV0
YWlsc1syXS5kZXNjcmlwdGlvbiIsICInQVhMYWJlbDogVGhlIGZvbGxvd2luZyBkcmF3aW5nIGls
bHVzdHJhdGVzIGFuIGFwcGxpY2F0aW9uIG9mIHRoZSBQeXRoYWdvcmVhbiBUaGVvcmVtIHdoZW4g
dXNlZCB0byBjb25zdHJ1Y3QgYSBza2F0ZWJvYXJkIHJhbXAuJyIpOworICAgICAgICBzaG91bGRC
ZSgiZGV0YWlsc1s0XS5kZXNjcmlwdGlvbiIsICInQVhMYWJlbDogQXBwbGljYXRpb24gb2YgdGhl
IFB5dGhhZ29yZWFuIFRoZW9yZW0nIik7CisgICAgfQorPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9hcmlhLWRldGFp
bHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvYXJpYS1kZXRh
aWxzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMGE1ZDQ1ZTM4ZDU0NThkMzZkM2E0NmIyNTBk
ODhlY2I4MWJjMzYyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9tYWMvYXJpYS1kZXRhaWxzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIxIEBACisKK1RoZSBQ
eXRoYWdvcmVhbiBUaGVvcmVtIGlzIGEgcmVsYXRpb25zaGlwIGluIEV1Y2xpZGVhbiBHZW9tZXRy
eSBiZXR3ZWVuIHRoZSB0aHJlZSBzaWRlcyBvZiBhIHJpZ2h0IHRyaWFuZ2xlLCB3aGVyZSB0aGUg
c3F1YXJlIG9mIHRoZSBoeXBvdGVudXNlIGlzIHRoZSBzdW0gb2YgdGhlIHNxdWFyZXMgb2YgdGhl
IHR3byBvcHBvc2luZyBzaWRlcy4KKworVGhlIGZvbGxvd2luZyBkcmF3aW5nIGlsbHVzdHJhdGVz
IGFuIGFwcGxpY2F0aW9uIG9mIHRoZSBQeXRoYWdvcmVhbiBUaGVvcmVtIHdoZW4gdXNlZCB0byBj
b25zdHJ1Y3QgYSBza2F0ZWJvYXJkIHJhbXAuCisKK0luIHRoaXMgZXhhbXBsZSB5b3Ugd2lsbCBu
b3RpY2UgYSBza2F0ZWJvYXJkIHJhbXAgd2l0aCBhIGJhc2UgYW5kIHZlcnRpY2FsIGJvYXJkIHdo
b3NlIHdpZHRoIGlzIHRoZSB3aWR0aCBvZiB0aGUgcmFtcC4gVG8gY29tcHV0ZSBob3cgbG9uZyB0
aGUgcmFtcCBtdXN0IGJlLCBzaW1wbHkgY2FsY3VsYXRlIHRoZSBiYXNlIGxlbmd0aCwgc3F1YXJl
IGl0LCBzdW0gaXQgd2l0aCB0aGUgc3F1YXJlIG9mIHRoZSBoZWlnaHQgb2YgdGhlIHJhbXAsIGFu
ZCB0YWtlIHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUgc3VtLgorCitTZWUgYW4gQXBwbGljYXRpb24g
b2YgdGhlIFB5dGhhZ29yZWFuIFRoZW9yZW0uCisKK1RoaXMgdmVyaWZpZXMgdGhlIGV4cG9zdXJl
IG9mIGFyaWEtZGV0YWlscy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mg
ZGV0YWlscy5sZW5ndGggaXMgMgorUEFTUyBkZXRhaWxzWzBdLmRvbUlkZW50aWZpZXIgaXMgJ2Rl
dGFpbHMxJworUEFTUyBkZXRhaWxzWzFdLmRvbUlkZW50aWZpZXIgaXMgJ2RldGFpbHMyJworUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFjL2FyaWEtZGV0YWlscy5odG1sIGIvTGF5
b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvYXJpYS1kZXRhaWxzLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
M2NhZjc3NGNkMTU4YWUxMzhmOTQ3YWI3ZmU0MzFiY2Y5MjU5MmZhNwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFjL2FyaWEtZGV0YWlscy5odG1sCkBAIC0w
LDAgKzEsNDQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCis8aW1nIGlkPSJpbWFnZTEiIHNy
Yz0icHl0aGFnb3JlYW4uanBnIiBhbHQ9IlB5dGhhZ29yZWFuIFRoZW9yZW0iIGFyaWEtZGV0YWls
cz0iZGV0YWlsczEgZGV0YWlsczIiPgorPGRldGFpbHMgb3BlbiBpZD0iZGV0YWlsczEiPgorICA8
cD4KKyAgICBUaGUgUHl0aGFnb3JlYW4gVGhlb3JlbSBpcyBhIHJlbGF0aW9uc2hpcCBpbiBFdWNs
aWRlYW4gR2VvbWV0cnkgYmV0d2VlbiB0aGUgdGhyZWUgc2lkZXMgb2YKKyAgICBhIHJpZ2h0IHRy
aWFuZ2xlLCB3aGVyZSB0aGUgc3F1YXJlIG9mIHRoZSBoeXBvdGVudXNlIGlzIHRoZSBzdW0gb2Yg
dGhlIHNxdWFyZXMgb2YgdGhlIHR3bworICAgIG9wcG9zaW5nIHNpZGVzLgorICA8L3A+CisgIDxw
PgorICAgIFRoZSBmb2xsb3dpbmcgZHJhd2luZyBpbGx1c3RyYXRlcyBhbiBhcHBsaWNhdGlvbiBv
ZiB0aGUgUHl0aGFnb3JlYW4gVGhlb3JlbSB3aGVuIHVzZWQgdG8KKyAgICBjb25zdHJ1Y3QgYSBz
a2F0ZWJvYXJkIHJhbXAuCisgIDwvcD4KKyAgPHA+CisgICAgSW4gdGhpcyBleGFtcGxlIHlvdSB3
aWxsIG5vdGljZSBhIHNrYXRlYm9hcmQgcmFtcCB3aXRoIGEgYmFzZSBhbmQgdmVydGljYWwgYm9h
cmQgd2hvc2Ugd2lkdGgKKyAgICBpcyB0aGUgd2lkdGggb2YgdGhlIHJhbXAuIFRvIGNvbXB1dGUg
aG93IGxvbmcgdGhlIHJhbXAgbXVzdCBiZSwgc2ltcGx5IGNhbGN1bGF0ZSB0aGUKKyAgICBiYXNl
IGxlbmd0aCwgc3F1YXJlIGl0LCBzdW0gaXQgd2l0aCB0aGUgc3F1YXJlIG9mIHRoZSBoZWlnaHQg
b2YgdGhlIHJhbXAsIGFuZCB0YWtlIHRoZQorICAgIHNxdWFyZSByb290IG9mIHRoZSBzdW0uCisg
IDwvcD4KKzwvZGV0YWlscz4KKzxwPlNlZSBhbiA8YSBocmVmPSJodHRwOi8vZm9vLmNvbS9wdC5o
dG1sIiBpZD0iZGV0YWlsczIiPkFwcGxpY2F0aW9uIG9mIHRoZSBQeXRoYWdvcmVhbiBUaGVvcmVt
PC9hPi48L3A+CisKKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+
PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRpb24oIlRoaXMgdmVyaWZpZXMgdGhlIGV4
cG9zdXJlIG9mIGFyaWEtZGV0YWlscy4iKTsKKworICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0
eUNvbnRyb2xsZXIpIHsKKyAgICAgICAgaW1hZ2UxID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIu
YWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJpbWFnZTEiKTsKKyAgICAgICAgZGV0YWlscyA9IGltYWdl
MS5kZXRhaWxzRWxlbWVudHMoKTsKKyAgICAgICAgc2hvdWxkQmUoImRldGFpbHMubGVuZ3RoIiwg
IjIiKTsKKyAgICAgICAgc2hvdWxkQmUoImRldGFpbHNbMF0uZG9tSWRlbnRpZmllciIsICInZGV0
YWlsczEnIik7CisgICAgICAgIHNob3VsZEJlKCJkZXRhaWxzWzFdLmRvbUlkZW50aWZpZXIiLCAi
J2RldGFpbHMyJyIpOworICAgIH0KKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDQ1MDk0NTEy
MzUwMGFlNDE4YWYxN2E5NzI4OTI4Zjg0NjJkYzBkOGYuLmQzY2RlM2Q1Y2IxYWZlZjcyMzZhOGIw
MjYyNjI0NzcyMzdlOTJkNDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13
azEvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rl
c3RFeHBlY3RhdGlvbnMKQEAgLTk1OCw2ICs5NTgsNyBAQCBhY2Nlc3NpYmlsaXR5L2FyaWEtY3Vy
cmVudC1zdGF0ZS1jaGFuZ2VkLW5vdGlmaWNhdGlvbi5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmls
aXR5L2FyaWEtY3VycmVudC5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2FyaWEtc29ydC1j
aGFuZ2VkLW5vdGlmaWNhdGlvbi5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2FyaWEtc29y
dC5odG1sIFsgU2tpcCBdCithY2Nlc3NpYmlsaXR5L21hYy9hcmlhLWRldGFpbHMuaHRtbCBbIFNr
aXAgXQogYWNjZXNzaWJpbGl0eS9tYWMvYXJpYS1lcnJvcm1lc3NhZ2UuaHRtbCBbIFNraXAgXQog
CiAjIDxyZGFyOi8vcHJvYmxlbS82MTA2NjkyOT4gWyBTdHJlc3MgR0MgXSBmbGFreSBKU0M6OkV4
Y2VwdGlvblNjb3BlOjphc3NlcnROb0V4Y2VwdGlvbiBjcmFzaCB1bmRlciBXZWJDb3JlOjpSZWFk
YWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyCkBAIC0xMjU2LDQgKzEyNTcsNCBAQCB3ZWJraXQu
b3JnL2IvMjIzMjgzIGZhc3QvcmVwYWludC9jYW52YXMtb2JqZWN0LWZpdC5odG1sIFsgUGFzcyBG
YWlsdXJlIF0KIAogd2Via2l0Lm9yZy9iLzIyMjU2MyBodHRwL3Rlc3RzL2xvYWRpbmcvYmFzaWMt
YXV0aC1sb2FkLVVSTC13aXRoLWNvbnNlY3V0aXZlLXNsYXNoZXMuaHRtbCBbIFBhc3MgRmFpbHVy
ZSBdCiAKLXdlYmtpdC5vcmcvYi8yMjI2ODYgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWdyaWQvZ3JpZC1kZWZpbml0aW9uL2dyaWQtYXV0by1yZXBlYXQtbWF4LXNpemUt
MDAxLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK3dl
YmtpdC5vcmcvYi8yMjI2ODYgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LWdyaWQvZ3JpZC1kZWZpbml0aW9uL2dyaWQtYXV0by1yZXBlYXQtbWF4LXNpemUtMDAxLmh0bWwg
WyBQYXNzIEZhaWx1cmUgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424276</attachid>
            <date>2021-03-25 13:37:03 -0700</date>
            <delta_ts>2021-03-25 16:35:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-165842-20210325163702.patch</filename>
            <type>text/plain</type>
            <size>18985</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0OTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ5YTY5YjI4NWQ2ZTFj
MTE3ZmYwN2FlYTY4ZTIyZTg1MTVjNWVhNi4uNzYxMWVkZGNmMjk0NDZmNWE0NTMzNWQ3MTdlYjFh
M2NlOGIxMmQzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIxLTAzLTI1ICBBbmRy
ZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogQ29uc2lk
ZXIgaW1wbGVtZW50aW5nIEBhcmlhLWRldGFpbHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjU4NDIKKyAgICAgICAgcmRhcjovLzMwNzI1NDkxCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdHM6IGFj
Y2Vzc2liaWxpdHkvaW9zLXNpbXVsYXRvci9hcmlhLWRldGFpbHMuaHRtbAorICAgICAgICAgICAg
ICAgYWNjZXNzaWJpbGl0eS9tYWMvYXJpYS1kZXRhaWxzLmh0bWwKKworICAgICAgICAtIEFkZGVk
IFtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBhY2Nlc3NpYmlsaXR5RGV0YWlsc0VsZW1l
bnRzXSBvbiBpT1MuCisgICAgICAgIC0gQWRkZWQgaGVscGVyIGZ1bmN0aW9uIGFjY2Vzc2libGVF
bGVtZW50c0Zvck9iamVjdHMgdG8gcmV0cmlldmUgcGxhdGZvcm0tCisgICAgICAgIHNwZWNpZmlj
IGFjY2Vzc2libGUgZWxlbWVudHMgZ2l2ZW4gYSBjb2xsZWN0aW9uIG9mIEFYQ29yZU9iamVjdHMu
CisgICAgICAgIAorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVySU9TLm1tOgorICAgICAgICAoYWNjZXNzaWJsZUVsZW1lbnRzRm9yT2JqZWN0
cyk6CisgICAgICAgICgtW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2liaWxp
dHlEZXRhaWxzRWxlbWVudHNdKToKKyAgICAgICAgKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXIgYWNjZXNzaWJpbGl0eUVycm9yTWVzc2FnZUVsZW1lbnRzXSk6CisKIDIwMjEtMDMtMjQg
IFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBbY3NzLWdyaWRdIERvIG5v
dCBhbGxvdyBuZWdhdGl2ZSBoZWlnaHRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbSBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVy
SU9TLm1tCmluZGV4IGU2YWQ0OTczMmFkNjk1NTg4ZmMxMmMzZGEyMTc3NzRlOTFhMjg4OWIuLjg1
ZTIwNmFmMzM2Yjc0MmFiMDMxMjRhNmQwNjYxZDE5NjkwNTA0YmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVy
SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVySU9TLm1tCkBAIC0xODY2LDE4ICsxODY2LDE0IEBAIHN0YXRpYyB2
b2lkIGFwcGVuZFN0cmluZ1RvUmVzdWx0KE5TTXV0YWJsZVN0cmluZyAqcmVzdWx0LCBOU1N0cmlu
ZyAqc3RyaW5nKQogICAgIH0pLmF1dG9yZWxlYXNlKCk7CiB9CiAKLS0gKE5TQXJyYXkgKilhY2Nl
c3NpYmlsaXR5RXJyb3JNZXNzYWdlRWxlbWVudHMKK3N0YXRpYyBOU0FycmF5ICphY2Nlc3NpYmxl
RWxlbWVudHNGb3JPYmplY3RzKGNvbnN0IEFYQ29yZU9iamVjdDo6QWNjZXNzaWJpbGl0eUNoaWxk
cmVuVmVjdG9yJiBvYmplY3RzKQogewotICAgIGlmICghW3NlbGYgX3ByZXBhcmVBY2Nlc3NpYmls
aXR5Q2FsbF0pCi0gICAgICAgIHJldHVybiBuaWw7Ci0KLSAgICBBWENvcmVPYmplY3Q6OkFjY2Vz
c2liaWxpdHlDaGlsZHJlblZlY3RvciBlcnJvckVsZW1lbnRzOwotICAgIHNlbGYuYXhCYWNraW5n
T2JqZWN0LT5hcmlhRXJyb3JNZXNzYWdlRWxlbWVudHMoZXJyb3JFbGVtZW50cyk7Ci0KICAgICBB
WENvcmVPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciBhY2Nlc3NpYmxlRWxlbWVu
dHM7Ci0gICAgZm9yIChjb25zdCBhdXRvJiBlbGVtZW50IDogZXJyb3JFbGVtZW50cykgewotICAg
ICAgICBBU1NFUlQoZWxlbWVudCk7Ci0gICAgICAgIEFjY2Vzc2liaWxpdHk6OmVudW1lcmF0ZURl
c2NlbmRhbnRzPEFYQ29yZU9iamVjdD4oKmVsZW1lbnQsIHRydWUsIFsmYWNjZXNzaWJsZUVsZW1l
bnRzXSAoQVhDb3JlT2JqZWN0JiBkZXNjZW5kYW50KSB7CisgICAgZm9yIChjb25zdCBhdXRvJiBv
YmplY3QgOiBvYmplY3RzKSB7CisgICAgICAgIGlmICghb2JqZWN0KQorICAgICAgICAgICAgY29u
dGludWU7CisKKyAgICAgICAgQWNjZXNzaWJpbGl0eTo6ZW51bWVyYXRlRGVzY2VuZGFudHM8QVhD
b3JlT2JqZWN0Pigqb2JqZWN0LCB0cnVlLCBbJmFjY2Vzc2libGVFbGVtZW50c10gKEFYQ29yZU9i
amVjdCYgZGVzY2VuZGFudCkgewogICAgICAgICAgICAgaWYgKGRlc2NlbmRhbnQud3JhcHBlcigp
LmlzQWNjZXNzaWJpbGl0eUVsZW1lbnQpCiAgICAgICAgICAgICAgICAgYWNjZXNzaWJsZUVsZW1l
bnRzLmFwcGVuZCgmZGVzY2VuZGFudCk7CiAgICAgICAgIH0pOwpAQCAtMTg4Niw2ICsxODgyLDI2
IEBAIHN0YXRpYyB2b2lkIGFwcGVuZFN0cmluZ1RvUmVzdWx0KE5TTXV0YWJsZVN0cmluZyAqcmVz
dWx0LCBOU1N0cmluZyAqc3RyaW5nKQogICAgIHJldHVybiBjb252ZXJ0VG9OU0FycmF5KGFjY2Vz
c2libGVFbGVtZW50cyk7CiB9CiAKKy0gKE5TQXJyYXkgKilhY2Nlc3NpYmlsaXR5RGV0YWlsc0Vs
ZW1lbnRzCit7CisgICAgaWYgKCFbc2VsZiBfcHJlcGFyZUFjY2Vzc2liaWxpdHlDYWxsXSkKKyAg
ICAgICAgcmV0dXJuIG5pbDsKKworICAgIEFYQ29yZU9iamVjdDo6QWNjZXNzaWJpbGl0eUNoaWxk
cmVuVmVjdG9yIGRldGFpbHNFbGVtZW50czsKKyAgICBzZWxmLmF4QmFja2luZ09iamVjdC0+YXJp
YURldGFpbHNFbGVtZW50cyhkZXRhaWxzRWxlbWVudHMpOworICAgIHJldHVybiBhY2Nlc3NpYmxl
RWxlbWVudHNGb3JPYmplY3RzKGRldGFpbHNFbGVtZW50cyk7Cit9CisKKy0gKE5TQXJyYXkgKilh
Y2Nlc3NpYmlsaXR5RXJyb3JNZXNzYWdlRWxlbWVudHMKK3sKKyAgICBpZiAoIVtzZWxmIF9wcmVw
YXJlQWNjZXNzaWJpbGl0eUNhbGxdKQorICAgICAgICByZXR1cm4gbmlsOworCisgICAgQVhDb3Jl
T2JqZWN0OjpBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3IgZXJyb3JFbGVtZW50czsKKyAgICBz
ZWxmLmF4QmFja2luZ09iamVjdC0+YXJpYUVycm9yTWVzc2FnZUVsZW1lbnRzKGVycm9yRWxlbWVu
dHMpOworICAgIHJldHVybiBhY2Nlc3NpYmxlRWxlbWVudHNGb3JPYmplY3RzKGVycm9yRWxlbWVu
dHMpOworfQorCiAtIChpZClhY2Nlc3NpYmlsaXR5TGlua2VkRWxlbWVudAogewogICAgIGlmICgh
W3NlbGYgX3ByZXBhcmVBY2Nlc3NpYmlsaXR5Q2FsbF0pCmRpZmYgLS1naXQgYS9Ub29scy9DaGFu
Z2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZDM1YzRjZjRhZmJlMzEzZTBhMDdjY2M0N2M2
NTMyYTVlOWIzNmQ4Ny4uZTZlMzk2ZGY3M2FlOWNmMDFiMTY3NWI3MTYwZjdlMmY1N2RiZWU0MSAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDIyIEBACisyMDIxLTAzLTI1ICBBbmRyZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxl
LmNvbT4KKworICAgICAgICBBWDogQ29uc2lkZXIgaW1wbGVtZW50aW5nIEBhcmlhLWRldGFpbHMu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjU4NDIK
KyAgICAgICAgcmRhcjovLzMwNzI1NDkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkZWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6ZGV0YWlsc0Vs
ZW1lbnRzLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9BY2Nl
c3NpYmlsaXR5VUlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6ZGV0YWlsc0VsZW1lbnRzIGNvbnN0KToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVy
L0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaDoKKyAgICAgICAgKiBXZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnQuaWRsOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvaW9zL0Fj
Y2Vzc2liaWxpdHlVSUVsZW1lbnRJT1MubW06CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6OmRldGFpbHNFbGVtZW50cyBjb25zdCk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbToKKyAg
ICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6ZGV0YWlsc0VsZW1lbnRzIGNvbnN0
KToKKwogMjAyMS0wMy0yMyAgS2F0ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNv
bT4KIAogICAgICAgICBTZXJ2aWNlIHdvcmtlciBsb2FkcyBhcmUgbm90IG1hcmtlZCBhcyBhcHAt
Ym91bmQKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUv
QWNjZXNzaWJpbGl0eVVJRWxlbWVudC5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCmluZGV4IDIzNzM4OTExOGY4MzAz
ZWZmNWYwYTYyMjY1OTI0NDg2MjhiZmM3MmYuLjk3YTFjMmI5NWNmZDVmZTJiMmZlYzc4NzBhNjIx
OGQ2ZTRjMmRiNDcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmNwcApAQCAtMTI3LDYg
KzEyNyw3IEBAIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlcj4gQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6bmV4dFNlbnRlbmNlRW5kVGV4dE1hcmtlCiBSZWZQdHI8QWNjZXNzaWJpbGl0eVRl
eHRNYXJrZXI+IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnByZXZpb3VzU2VudGVuY2VTdGFydFRl
eHRNYXJrZXJGb3JUZXh0TWFya2VyKEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyKikgeyByZXR1cm4g
bnVsbHB0cjsgfQogUmVmUHRyPEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyUmFuZ2U+IEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6Om1pc3NwZWxsaW5nVGV4dE1hcmtlclJhbmdlKEFjY2Vzc2liaWxpdHlU
ZXh0TWFya2VyUmFuZ2UqLCBib29sKSB7IHJldHVybiBudWxscHRyOyB9CiB2b2lkIEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6OmRpc21pc3MoKSB7IH0KK0pTVmFsdWVSZWYgQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6ZGV0YWlsc0VsZW1lbnRzKCkgY29uc3QgeyByZXR1cm4geyB9OyB9CiBKU1ZhbHVl
UmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmVycm9yTWVzc2FnZUVsZW1lbnRzKCkgY29uc3Qg
eyByZXR1cm4geyB9OyB9CiBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4gQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6ZW1iZWRkZWRJbWFnZURlc2NyaXB0aW9uKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0
cjsgfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCmluZGV4IDkzYjdhNzk5MzE2
YWYxZjFmZmQ0YjI2ZjBlMmY3ZTdjZDU1YTUwMGMuLjNhODFkNjcxN2U4MzE5YWVjNzFmNzk3ZDcz
ZmJjODIzMDYyMGI3OTYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCkBAIC0yMjUsNiAr
MjI1LDcgQEAgcHVibGljOgogICAgIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50PiBkaXNj
bG9zZWRSb3dBdEluZGV4KHVuc2lnbmVkKTsKICAgICBSZWZQdHI8QWNjZXNzaWJpbGl0eVVJRWxl
bWVudD4gcm93QXRJbmRleCh1bnNpZ25lZCk7CiAKKyAgICBKU1ZhbHVlUmVmIGRldGFpbHNFbGVt
ZW50cygpIGNvbnN0OwogICAgIEpTVmFsdWVSZWYgZXJyb3JNZXNzYWdlRWxlbWVudHMoKSBjb25z
dDsKICAgICAvLyBBUklBIHNwZWNpZmljCiAgICAgUmVmUHRyPEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ+IGFyaWFPd25zRWxlbWVudEF0SW5kZXgodW5zaWduZWQpOwpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9BY2Nlc3NpYmlsaXR5VUlF
bGVtZW50LmlkbCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGlu
Z3MvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5pZGwKaW5kZXggZjZkMTllZTA1NzQ2YzQ4ZDBiNDBl
ZTgxODU3NjcwMDQzODYwNmYwZi4uMzVlYThkMjZjY2ZjZDdjMGYyY2Q3ZTk0ZGQ2MGQxODMyNmU0
MGRiOCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9C
aW5kaW5ncy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmlkbAorKysgYi9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaWRs
CkBAIC0xNjksNiArMTY5LDcgQEAKICAgICBvYmplY3QgY29sdW1uSGVhZGVycygpOwogICAgIG9i
amVjdCByb3dIZWFkZXJzKCk7CiAKKyAgICBvYmplY3QgZGV0YWlsc0VsZW1lbnRzKCk7CiAgICAg
b2JqZWN0IGVycm9yTWVzc2FnZUVsZW1lbnRzKCk7CiAgICAgQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dCBhcmlhT3duc0VsZW1lbnRBdEluZGV4KHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQgYXJpYU93bnNSZWZlcmVuY2luZ0VsZW1lbnRBdEluZGV4KHVuc2ln
bmVkIGxvbmcgaW5kZXgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9Jbmpl
Y3RlZEJ1bmRsZS9pb3MvQWNjZXNzaWJpbGl0eVVJRWxlbWVudElPUy5tbSBiL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvaW9zL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRJT1Mu
bW0KaW5kZXggZGNiNjdiY2MyYTg3ZDFiYjIwMWVlZjU1NmFlMzgxOWM4NmY5MzQyYi4uZWZkMDk4
OGJkODBhM2YwYmIyNDk5MmE5OGUwZGNkZTBjMzc1ODg3MiAxMDA2NDQKLS0tIGEvVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9pb3MvQWNjZXNzaWJpbGl0eVVJRWxlbWVudElP
Uy5tbQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2lvcy9BY2Nl
c3NpYmlsaXR5VUlFbGVtZW50SU9TLm1tCkBAIC01MCw2ICs1MCw3IEBAIHR5cGVkZWYgdm9pZCAo
KkFYUG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJhY2spKGlkIGVsZW1lbnQsIE5TU3RyaW5nKiBub3Rp
ZmljYXRpb24sCiAtIChpZClhY2Nlc3NpYmlsaXR5RWxlbWVudEZvclJvdzooTlNJbnRlZ2VyKXJv
dyBhbmRDb2x1bW46KE5TSW50ZWdlciljb2x1bW47CiAtIChOU1VSTCAqKWFjY2Vzc2liaWxpdHlV
Ukw7CiAtIChOU0FycmF5ICopYWNjZXNzaWJpbGl0eUhlYWRlckVsZW1lbnRzOworLSAoTlNBcnJh
eSAqKWFjY2Vzc2liaWxpdHlEZXRhaWxzRWxlbWVudHM7CiAtIChOU0FycmF5ICopYWNjZXNzaWJp
bGl0eUVycm9yTWVzc2FnZUVsZW1lbnRzOwogLSAoTlNTdHJpbmcgKilhY2Nlc3NpYmlsaXR5UGxh
Y2Vob2xkZXJWYWx1ZTsKIC0gKE5TU3RyaW5nICopc3RyaW5nRm9yUmFuZ2U6KE5TUmFuZ2UpcmFu
Z2U7CkBAIC0yNzAsNiArMjcxLDE0IEBAIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50PiBB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpsaW5rZWRVSUVsZW1lbnRBdEluZGV4KHVuCiAgICAgcmV0
dXJuIG51bGxwdHI7CiB9CiAKK0pTVmFsdWVSZWYgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6ZGV0
YWlsc0VsZW1lbnRzKCkgY29uc3QKK3sKKyAgICBOU0FycmF5ICplbGVtZW50cyA9IFttX2VsZW1l
bnQgYWNjZXNzaWJpbGl0eURldGFpbHNFbGVtZW50c107CisgICAgaWYgKFtlbGVtZW50cyBpc0tp
bmRPZkNsYXNzOk5TQXJyYXkuY2xhc3NdKQorICAgICAgICByZXR1cm4gbWFrZUpTQXJyYXkobWFr
ZVZlY3RvcjxSZWZQdHI8QWNjZXNzaWJpbGl0eVVJRWxlbWVudD4+KGVsZW1lbnRzKSk7CisgICAg
cmV0dXJuIHsgfTsKK30KKwogSlNWYWx1ZVJlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjplcnJv
ck1lc3NhZ2VFbGVtZW50cygpIGNvbnN0CiB7CiAgICAgTlNBcnJheSAqZWxlbWVudHMgPSBbbV9l
bGVtZW50IGFjY2Vzc2liaWxpdHlFcnJvck1lc3NhZ2VFbGVtZW50c107CmRpZmYgLS1naXQgYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlF
bGVtZW50TWFjLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9tYWMv
QWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQppbmRleCA2ZDk3YzViZmJkMGRhMGI1MTM1NWU3
NjhlZDk5ZTkzMTc3ZDJkZWNhLi4wNzdjMDQ4ZTlmYWZhN2M3OTVmZDlkMzhiODYyNmU1ZTMxNTdi
NDFhIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21h
Yy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvSW5qZWN0ZWRCdW5kbGUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRNYWMubW0KQEAgLTQ0
NSw2ICs0NDUsMTcgQEAgUmVmUHRyPEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ+IEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OmxpbmtlZFVJRWxlbWVudEF0SW5kZXgodW4KICAgICByZXR1cm4gZWxlbWVu
dEZvckF0dHJpYnV0ZUF0SW5kZXgoTlNBY2Nlc3NpYmlsaXR5TGlua2VkVUlFbGVtZW50c0F0dHJp
YnV0ZSwgaW5kZXgpOwogfQogCitKU1ZhbHVlUmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmRl
dGFpbHNFbGVtZW50cygpIGNvbnN0Cit7CisgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCisg
ICAgTlNBcnJheSAqZWxlbWVudHMgPSBhdHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCksIEAi
QVhEZXRhaWxzRWxlbWVudHMiKTsKKyAgICBpZiAoW2VsZW1lbnRzIGlzS2luZE9mQ2xhc3M6TlNB
cnJheS5jbGFzc10pCisgICAgICAgIHJldHVybiBtYWtlSlNBcnJheShtYWtlVmVjdG9yPFJlZlB0
cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Pj4oZWxlbWVudHMpKTsKKyAgICBFTkRfQVhfT0JKQ19F
WENFUFRJT05TCisKKyAgICByZXR1cm4geyB9OworfQorCiBKU1ZhbHVlUmVmIEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OmVycm9yTWVzc2FnZUVsZW1lbnRzKCkgY29uc3QKIHsKICAgICBCRUdJTl9B
WF9PQkpDX0VYQ0VQVElPTlMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5MGZjY2E1YjNjY2ZiMjg1ZWE1ODA5MjdkZDU0MTQw
MDM1MzQxOTRjLi5hMTYxNmNjODRjMjM0M2U1MDgyZDg5NGIzMmMxMmU3MzI1ZWVjZWJkIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDMtMjUgIEFuZHJlcyBHb256YWxleiAgPGFuZHJlc2df
MjJAYXBwbGUuY29tPgorCisgICAgICAgIEFYOiBDb25zaWRlciBpbXBsZW1lbnRpbmcgQGFyaWEt
ZGV0YWlscy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2NTg0MgorICAgICAgICByZGFyOi8vMzA3MjU0OTEKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvaW9zLXNpbXVsYXRvci9h
cmlhLWRldGFpbHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L2lvcy1zaW11bGF0b3IvYXJpYS1kZXRhaWxzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGFjY2Vz
c2liaWxpdHkvbWFjL2FyaWEtZGV0YWlscy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGFjY2Vzc2liaWxpdHkvbWFjL2FyaWEtZGV0YWlscy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBw
bGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjEtMDMtMjQgIENocmlzIExv
cmQgIDxjbG9yZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHTElCXSBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL29mZnNjcmVlbi9tYW51YWwvZHJhdy1nZW5lcmlj
LWZhbWlseS8yZC50ZXh0LmRyYXcuZ2VuZXJpYy5mYW1pbHkudy5odG1sIGlzIGZsYWt5IGZhaWxp
bmcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvaW9zLXNpbXVsYXRvci9h
cmlhLWRldGFpbHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9pb3Mt
c2ltdWxhdG9yL2FyaWEtZGV0YWlscy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTQxODdiOTNj
ODViNzg1OWViNzNiN2QyOTk4MWQ3NDQxOTU1MzViZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvaW9zLXNpbXVsYXRvci9hcmlhLWRldGFpbHMtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMjMgQEAKKworRGV0YWlscyBleGFtcGxlCitUaGUgUHl0aGFnb3JlYW4g
VGhlb3JlbSBpcyBhIHJlbGF0aW9uc2hpcCBpbiBFdWNsaWRlYW4gR2VvbWV0cnkgYmV0d2VlbiB0
aGUgdGhyZWUgc2lkZXMgb2YgYSByaWdodCB0cmlhbmdsZSwgd2hlcmUgdGhlIHNxdWFyZSBvZiB0
aGUgaHlwb3RlbnVzZSBpcyB0aGUgc3VtIG9mIHRoZSBzcXVhcmVzIG9mIHRoZSB0d28gb3Bwb3Np
bmcgc2lkZXMuCisKK1RoZSBmb2xsb3dpbmcgZHJhd2luZyBpbGx1c3RyYXRlcyBhbiBhcHBsaWNh
dGlvbiBvZiB0aGUgUHl0aGFnb3JlYW4gVGhlb3JlbSB3aGVuIHVzZWQgdG8gY29uc3RydWN0IGEg
c2thdGVib2FyZCByYW1wLgorCitJbiB0aGlzIGV4YW1wbGUgeW91IHdpbGwgbm90aWNlIGEgc2th
dGVib2FyZCByYW1wIHdpdGggYSBiYXNlIGFuZCB2ZXJ0aWNhbCBib2FyZCB3aG9zZSB3aWR0aCBp
cyB0aGUgd2lkdGggb2YgdGhlIHJhbXAuIFRvIGNvbXB1dGUgaG93IGxvbmcgdGhlIHJhbXAgbXVz
dCBiZSwgc2ltcGx5IGNhbGN1bGF0ZSB0aGUgYmFzZSBsZW5ndGgsIHNxdWFyZSBpdCwgc3VtIGl0
IHdpdGggdGhlIHNxdWFyZSBvZiB0aGUgaGVpZ2h0IG9mIHRoZSByYW1wLCBhbmQgdGFrZSB0aGUg
c3F1YXJlIHJvb3Qgb2YgdGhlIHN1bS4KKworU2VlIGFuIEFwcGxpY2F0aW9uIG9mIHRoZSBQeXRo
YWdvcmVhbiBUaGVvcmVtLgorCitUaGlzIHZlcmlmaWVzIHRoZSBleHBvc3VyZSBvZiBhcmlhLWRl
dGFpbHMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGRldGFpbHMubGVu
Z3RoIGlzIDUKK1BBU1MgZGV0YWlsc1swXS5kZXNjcmlwdGlvbiBpcyAnQVhMYWJlbDogRGV0YWls
cyBleGFtcGxlJworUEFTUyBkZXRhaWxzWzJdLmRlc2NyaXB0aW9uIGlzICdBWExhYmVsOiBUaGUg
Zm9sbG93aW5nIGRyYXdpbmcgaWxsdXN0cmF0ZXMgYW4gYXBwbGljYXRpb24gb2YgdGhlIFB5dGhh
Z29yZWFuIFRoZW9yZW0gd2hlbiB1c2VkIHRvIGNvbnN0cnVjdCBhIHNrYXRlYm9hcmQgcmFtcC4n
CitQQVNTIGRldGFpbHNbNF0uZGVzY3JpcHRpb24gaXMgJ0FYTGFiZWw6IEFwcGxpY2F0aW9uIG9m
IHRoZSBQeXRoYWdvcmVhbiBUaGVvcmVtJworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxp
dHkvaW9zLXNpbXVsYXRvci9hcmlhLWRldGFpbHMuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvaW9zLXNpbXVsYXRvci9hcmlhLWRldGFpbHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMDA2ZmI3
Yzc1NzUwNTRlYzEzNTRiYzBkZDQyOTEzZmU0ZTM3N2Y5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9pb3Mtc2ltdWxhdG9yL2FyaWEtZGV0YWlscy5odG1sCkBA
IC0wLDAgKzEsNDYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCis8aW1nIGlkPSJpbWFnZTEi
IHNyYz0icHl0aGFnb3JlYW4uanBnIiBhbHQ9IlB5dGhhZ29yZWFuIFRoZW9yZW0iIGFyaWEtZGV0
YWlscz0iZGV0YWlsczEgZGV0YWlsczIiPgorPGRldGFpbHMgb3BlbiBpZD0iZGV0YWlsczEiPgor
ICAgIDxzdW1tYXJ5PkRldGFpbHMgZXhhbXBsZTwvc3VtbWFyeT4KKyAgICA8cD4KKyAgICBUaGUg
UHl0aGFnb3JlYW4gVGhlb3JlbSBpcyBhIHJlbGF0aW9uc2hpcCBpbiBFdWNsaWRlYW4gR2VvbWV0
cnkgYmV0d2VlbiB0aGUgdGhyZWUgc2lkZXMgb2YKKyAgICBhIHJpZ2h0IHRyaWFuZ2xlLCB3aGVy
ZSB0aGUgc3F1YXJlIG9mIHRoZSBoeXBvdGVudXNlIGlzIHRoZSBzdW0gb2YgdGhlIHNxdWFyZXMg
b2YgdGhlIHR3bworICAgIG9wcG9zaW5nIHNpZGVzLgorICAgIDwvcD4KKyAgICA8cD4KKyAgICBU
aGUgZm9sbG93aW5nIGRyYXdpbmcgaWxsdXN0cmF0ZXMgYW4gYXBwbGljYXRpb24gb2YgdGhlIFB5
dGhhZ29yZWFuIFRoZW9yZW0gd2hlbiB1c2VkIHRvCisgICAgY29uc3RydWN0IGEgc2thdGVib2Fy
ZCByYW1wLgorICAgIDwvcD4KKyAgICA8cD4KKyAgICBJbiB0aGlzIGV4YW1wbGUgeW91IHdpbGwg
bm90aWNlIGEgc2thdGVib2FyZCByYW1wIHdpdGggYSBiYXNlIGFuZCB2ZXJ0aWNhbCBib2FyZCB3
aG9zZSB3aWR0aAorICAgIGlzIHRoZSB3aWR0aCBvZiB0aGUgcmFtcC4gVG8gY29tcHV0ZSBob3cg
bG9uZyB0aGUgcmFtcCBtdXN0IGJlLCBzaW1wbHkgY2FsY3VsYXRlIHRoZQorICAgIGJhc2UgbGVu
Z3RoLCBzcXVhcmUgaXQsIHN1bSBpdCB3aXRoIHRoZSBzcXVhcmUgb2YgdGhlIGhlaWdodCBvZiB0
aGUgcmFtcCwgYW5kIHRha2UgdGhlCisgICAgc3F1YXJlIHJvb3Qgb2YgdGhlIHN1bS4KKyAgICA8
L3A+Cis8L2RldGFpbHM+Cis8cD5TZWUgYW4gPGEgaHJlZj0iaHR0cDovL2Zvby5jb20vcHQuaHRt
bCIgaWQ9ImRldGFpbHMyIj5BcHBsaWNhdGlvbiBvZiB0aGUgUHl0aGFnb3JlYW4gVGhlb3JlbTwv
YT4uPC9wPgorCis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgorCis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUaGlzIHZlcmlmaWVzIHRoZSBleHBv
c3VyZSBvZiBhcmlhLWRldGFpbHMuIik7CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlD
b250cm9sbGVyKSB7CisgICAgICAgIGltYWdlMSA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFj
Y2Vzc2libGVFbGVtZW50QnlJZCgiaW1hZ2UxIik7CisgICAgICAgIGRldGFpbHMgPSBpbWFnZTEu
ZGV0YWlsc0VsZW1lbnRzKCk7CisgICAgICAgIHNob3VsZEJlKCJkZXRhaWxzLmxlbmd0aCIsICI1
Iik7CisgICAgICAgIHNob3VsZEJlKCJkZXRhaWxzWzBdLmRlc2NyaXB0aW9uIiwgIidBWExhYmVs
OiBEZXRhaWxzIGV4YW1wbGUnIik7CisgICAgICAgIHNob3VsZEJlKCJkZXRhaWxzWzJdLmRlc2Ny
aXB0aW9uIiwgIidBWExhYmVsOiBUaGUgZm9sbG93aW5nIGRyYXdpbmcgaWxsdXN0cmF0ZXMgYW4g
YXBwbGljYXRpb24gb2YgdGhlIFB5dGhhZ29yZWFuIFRoZW9yZW0gd2hlbiB1c2VkIHRvIGNvbnN0
cnVjdCBhIHNrYXRlYm9hcmQgcmFtcC4nIik7CisgICAgICAgIHNob3VsZEJlKCJkZXRhaWxzWzRd
LmRlc2NyaXB0aW9uIiwgIidBWExhYmVsOiBBcHBsaWNhdGlvbiBvZiB0aGUgUHl0aGFnb3JlYW4g
VGhlb3JlbSciKTsKKyAgICB9Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFjL2FyaWEtZGV0YWlscy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9hcmlhLWRldGFpbHMtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmUwYTVkNDVlMzhkNTQ1OGQzNmQzYTQ2YjI1MGQ4OGVjYjgxYmMzNjIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9hcmlhLWRl
dGFpbHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAKKworVGhlIFB5dGhhZ29yZWFuIFRo
ZW9yZW0gaXMgYSByZWxhdGlvbnNoaXAgaW4gRXVjbGlkZWFuIEdlb21ldHJ5IGJldHdlZW4gdGhl
IHRocmVlIHNpZGVzIG9mIGEgcmlnaHQgdHJpYW5nbGUsIHdoZXJlIHRoZSBzcXVhcmUgb2YgdGhl
IGh5cG90ZW51c2UgaXMgdGhlIHN1bSBvZiB0aGUgc3F1YXJlcyBvZiB0aGUgdHdvIG9wcG9zaW5n
IHNpZGVzLgorCitUaGUgZm9sbG93aW5nIGRyYXdpbmcgaWxsdXN0cmF0ZXMgYW4gYXBwbGljYXRp
b24gb2YgdGhlIFB5dGhhZ29yZWFuIFRoZW9yZW0gd2hlbiB1c2VkIHRvIGNvbnN0cnVjdCBhIHNr
YXRlYm9hcmQgcmFtcC4KKworSW4gdGhpcyBleGFtcGxlIHlvdSB3aWxsIG5vdGljZSBhIHNrYXRl
Ym9hcmQgcmFtcCB3aXRoIGEgYmFzZSBhbmQgdmVydGljYWwgYm9hcmQgd2hvc2Ugd2lkdGggaXMg
dGhlIHdpZHRoIG9mIHRoZSByYW1wLiBUbyBjb21wdXRlIGhvdyBsb25nIHRoZSByYW1wIG11c3Qg
YmUsIHNpbXBseSBjYWxjdWxhdGUgdGhlIGJhc2UgbGVuZ3RoLCBzcXVhcmUgaXQsIHN1bSBpdCB3
aXRoIHRoZSBzcXVhcmUgb2YgdGhlIGhlaWdodCBvZiB0aGUgcmFtcCwgYW5kIHRha2UgdGhlIHNx
dWFyZSByb290IG9mIHRoZSBzdW0uCisKK1NlZSBhbiBBcHBsaWNhdGlvbiBvZiB0aGUgUHl0aGFn
b3JlYW4gVGhlb3JlbS4KKworVGhpcyB2ZXJpZmllcyB0aGUgZXhwb3N1cmUgb2YgYXJpYS1kZXRh
aWxzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBkZXRhaWxzLmxlbmd0
aCBpcyAyCitQQVNTIGRldGFpbHNbMF0uZG9tSWRlbnRpZmllciBpcyAnZGV0YWlsczEnCitQQVNT
IGRldGFpbHNbMV0uZG9tSWRlbnRpZmllciBpcyAnZGV0YWlsczInCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9tYWMvYXJpYS1kZXRhaWxzLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L21hYy9hcmlhLWRldGFpbHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zY2FmNzc0Y2QxNThh
ZTEzOGY5NDdhYjdmZTQzMWJjZjkyNTkyZmE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9tYWMvYXJpYS1kZXRhaWxzLmh0bWwKQEAgLTAsMCArMSw0NCBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+CisKKzxpbWcgaWQ9ImltYWdlMSIgc3JjPSJweXRoYWdvcmVh
bi5qcGciIGFsdD0iUHl0aGFnb3JlYW4gVGhlb3JlbSIgYXJpYS1kZXRhaWxzPSJkZXRhaWxzMSBk
ZXRhaWxzMiI+Cis8ZGV0YWlscyBvcGVuIGlkPSJkZXRhaWxzMSI+CisgIDxwPgorICAgIFRoZSBQ
eXRoYWdvcmVhbiBUaGVvcmVtIGlzIGEgcmVsYXRpb25zaGlwIGluIEV1Y2xpZGVhbiBHZW9tZXRy
eSBiZXR3ZWVuIHRoZSB0aHJlZSBzaWRlcyBvZgorICAgIGEgcmlnaHQgdHJpYW5nbGUsIHdoZXJl
IHRoZSBzcXVhcmUgb2YgdGhlIGh5cG90ZW51c2UgaXMgdGhlIHN1bSBvZiB0aGUgc3F1YXJlcyBv
ZiB0aGUgdHdvCisgICAgb3Bwb3Npbmcgc2lkZXMuCisgIDwvcD4KKyAgPHA+CisgICAgVGhlIGZv
bGxvd2luZyBkcmF3aW5nIGlsbHVzdHJhdGVzIGFuIGFwcGxpY2F0aW9uIG9mIHRoZSBQeXRoYWdv
cmVhbiBUaGVvcmVtIHdoZW4gdXNlZCB0bworICAgIGNvbnN0cnVjdCBhIHNrYXRlYm9hcmQgcmFt
cC4KKyAgPC9wPgorICA8cD4KKyAgICBJbiB0aGlzIGV4YW1wbGUgeW91IHdpbGwgbm90aWNlIGEg
c2thdGVib2FyZCByYW1wIHdpdGggYSBiYXNlIGFuZCB2ZXJ0aWNhbCBib2FyZCB3aG9zZSB3aWR0
aAorICAgIGlzIHRoZSB3aWR0aCBvZiB0aGUgcmFtcC4gVG8gY29tcHV0ZSBob3cgbG9uZyB0aGUg
cmFtcCBtdXN0IGJlLCBzaW1wbHkgY2FsY3VsYXRlIHRoZQorICAgIGJhc2UgbGVuZ3RoLCBzcXVh
cmUgaXQsIHN1bSBpdCB3aXRoIHRoZSBzcXVhcmUgb2YgdGhlIGhlaWdodCBvZiB0aGUgcmFtcCwg
YW5kIHRha2UgdGhlCisgICAgc3F1YXJlIHJvb3Qgb2YgdGhlIHN1bS4KKyAgPC9wPgorPC9kZXRh
aWxzPgorPHA+U2VlIGFuIDxhIGhyZWY9Imh0dHA6Ly9mb28uY29tL3B0Lmh0bWwiIGlkPSJkZXRh
aWxzMiI+QXBwbGljYXRpb24gb2YgdGhlIFB5dGhhZ29yZWFuIFRoZW9yZW08L2E+LjwvcD4KKwor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNj
cmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGhpcyB2ZXJpZmllcyB0aGUgZXhwb3N1cmUgb2YgYXJp
YS1kZXRhaWxzLiIpOworCisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikg
eworICAgICAgICBpbWFnZTEgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxl
bWVudEJ5SWQoImltYWdlMSIpOworICAgICAgICBkZXRhaWxzID0gaW1hZ2UxLmRldGFpbHNFbGVt
ZW50cygpOworICAgICAgICBzaG91bGRCZSgiZGV0YWlscy5sZW5ndGgiLCAiMiIpOworICAgICAg
ICBzaG91bGRCZSgiZGV0YWlsc1swXS5kb21JZGVudGlmaWVyIiwgIidkZXRhaWxzMSciKTsKKyAg
ICAgICAgc2hvdWxkQmUoImRldGFpbHNbMV0uZG9tSWRlbnRpZmllciIsICInZGV0YWlsczInIik7
CisgICAgfQorPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNDUwOTQ1MTIzNTAwYWU0MThhZjE3
YTk3Mjg5MjhmODQ2MmRjMGQ4Zi4uZDNjZGUzZDVjYjFhZmVmNzIzNmE4YjAyNjI2MjQ3NzIzN2U5
MmQ0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0
YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9u
cwpAQCAtOTU4LDYgKzk1OCw3IEBAIGFjY2Vzc2liaWxpdHkvYXJpYS1jdXJyZW50LXN0YXRlLWNo
YW5nZWQtbm90aWZpY2F0aW9uLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvYXJpYS1jdXJy
ZW50Lmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvYXJpYS1zb3J0LWNoYW5nZWQtbm90aWZp
Y2F0aW9uLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvYXJpYS1zb3J0Lmh0bWwgWyBTa2lw
IF0KK2FjY2Vzc2liaWxpdHkvbWFjL2FyaWEtZGV0YWlscy5odG1sIFsgU2tpcCBdCiBhY2Nlc3Np
YmlsaXR5L21hYy9hcmlhLWVycm9ybWVzc2FnZS5odG1sIFsgU2tpcCBdCiAKICMgPHJkYXI6Ly9w
cm9ibGVtLzYxMDY2OTI5PiBbIFN0cmVzcyBHQyBdIGZsYWt5IEpTQzo6RXhjZXB0aW9uU2NvcGU6
OmFzc2VydE5vRXhjZXB0aW9uIGNyYXNoIHVuZGVyIFdlYkNvcmU6OlJlYWRhYmxlU3RyZWFtRGVm
YXVsdENvbnRyb2xsZXIKQEAgLTEyNTYsNCArMTI1Nyw0IEBAIHdlYmtpdC5vcmcvYi8yMjMyODMg
ZmFzdC9yZXBhaW50L2NhbnZhcy1vYmplY3QtZml0Lmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCiB3
ZWJraXQub3JnL2IvMjIyNTYzIGh0dHAvdGVzdHMvbG9hZGluZy9iYXNpYy1hdXRoLWxvYWQtVVJM
LXdpdGgtY29uc2VjdXRpdmUtc2xhc2hlcy5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAotd2Via2l0
Lm9yZy9iLzIyMjY4NiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3Jp
ZC9ncmlkLWRlZmluaXRpb24vZ3JpZC1hdXRvLXJlcGVhdC1tYXgtc2l6ZS0wMDEuaHRtbCBbIFBh
c3MgRmFpbHVyZSBdClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQord2Via2l0Lm9yZy9iLzIy
MjY4NiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWRl
ZmluaXRpb24vZ3JpZC1hdXRvLXJlcGVhdC1tYXgtc2l6ZS0wMDEuaHRtbCBbIFBhc3MgRmFpbHVy
ZSBdCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>