<?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>241571</bug_id>
          
          <creation_ts>2022-06-13 15:01:07 -0700</creation_ts>
          <short_desc>AX ITM: Crash in com.apple.WebKit.WebContent at Recursion :: com.apple.WebCore: WebCore::AXIsolatedTree::collectNodeChangesForSubtree</short_desc>
          <delta_ts>2022-06-17 08:45:34 -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="Andres Gonzalez">andresg_22</reporter>
          <assigned_to name="Andres Gonzalez">andresg_22</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>tyler_w</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1875623</commentid>
    <comment_count>0</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-13 15:01:07 -0700</bug_when>
    <thetext>3 WebCore::AccessibilityObject::isAXHidden() const
        3 WebCore::AccessibilityObject::defaultObjectInclusion() const
          3 WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored() const
            3 WebCore::AccessibilityObject::accessibilityIsIgnored() const
              5 WebCore::AccessibilityObject::insertChild(WebCore::AXCoreObject*, unsigned int, WebCore::AccessibilityObject::DescendIfIgnored)
                6 WebCore::AccessibilityScrollView::updateChildrenIfNecessary()
                  6 WebCore::AccessibilityObject::children(bool)
      4 WebCore::AXObjectCache::get(WebCore::Node*)
        4 WebCore::AXObjectCache::getOrCreate(WebCore::Node*)
          5 WebCore::AccessibilityObject::isAXHidden() const
            6 WebCore::AccessibilityObject::defaultObjectInclusion() const
              7 WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored() const
                7 WebCore::AccessibilityObject::accessibilityIsIgnored() const
                  7 WebCore::AccessibilityRenderObject::parentObjectUnignored() const
             ==&gt; 13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;) &lt;==
                      13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                        13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                          13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                            13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                              13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                  13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                    13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                      13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                        13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                          13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                            13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                              13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                  13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                    13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                      13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                        13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                          13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                            13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                              13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                  13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                    13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                      13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                        13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                          13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                            13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                              13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                  13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                    13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                      13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                        13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                          13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                            13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                              13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                  13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                    13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                      13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                        13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                          13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                            13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                              13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                                13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                                  13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                                    13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                                      13 WebCore::AXIsolatedTree::collectNodeChangesForSubtree(WebCore::AXCoreObject&amp;)
                                                                                                                        truncating...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875624</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-06-13 15:01:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/95058458&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875625</commentid>
    <comment_count>2</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-13 15:03:16 -0700</bug_when>
    <thetext>rdar://problem/94605574</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875638</commentid>
    <comment_count>3</comment_count>
      <attachid>460217</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-13 15:40:06 -0700</bug_when>
    <thetext>Created attachment 460217
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875664</commentid>
    <comment_count>4</comment_count>
      <attachid>460221</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-13 17:46:00 -0700</bug_when>
    <thetext>Created attachment 460221
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875678</commentid>
    <comment_count>5</comment_count>
      <attachid>460221</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-06-13 19:06:01 -0700</bug_when>
    <thetext>Comment on attachment 460221
Patch

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

&gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:106
&gt; +    ASSERT(tree-&gt;m_maxTreeDepth);

Neither the render tree nor the DOM can be greater than 512 layers deep (i.e. maximumHTMLParserDOMTreeDepth), so would it even be possible for us to have an isolated tree greater than 512 layers? i.e., is this m_maxTreeDepth limit of 512 a change in behavior?

&gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:290
&gt; +        AXLOG(&quot;aqui estoy&quot;);

Could we change this log to something like &quot;Bailing collectNodeChangesForSubtree for AXID %s because the tree was deeper than %d levels&quot;. Did we hit this log in your testing?

&gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:307
&gt; +    axChildrenIDs.shrinkToFit();

The only time this will ever shrink anything is when `!axChild || axChild.get() == &amp;axObject`, which we don&apos;t even know is possible (unless you could repro it?). With that in mind, do you think this call to shrinkToFit is necessary?

&gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:323
&gt; +    if (m_collectingAtTreeLevel) {

I feel like this `if` doesn&apos;t read as intuitively as before. What if we added a method named `isCollectingNodeChanges` that is `m_collectingAtTreeLevel &gt;= 1`? Or is there some other way to recover the readability?

&gt; LayoutTests/accessibility/deep-tree.html:1
&gt; +&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;

Did this test crash before your patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875776</commentid>
    <comment_count>6</comment_count>
      <attachid>460232</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-14 08:32:12 -0700</bug_when>
    <thetext>Created attachment 460232
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875780</commentid>
    <comment_count>7</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-14 08:49:35 -0700</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #5)
&gt; Comment on attachment 460221 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=460221&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:106
&gt; &gt; +    ASSERT(tree-&gt;m_maxTreeDepth);
&gt; 
&gt; Neither the render tree nor the DOM can be greater than 512 layers deep
&gt; (i.e. maximumHTMLParserDOMTreeDepth), so would it even be possible for us to
&gt; have an isolated tree greater than 512 layers? i.e., is this m_maxTreeDepth
&gt; limit of 512 a change in behavior?

It is a change in behavior if, as we suspect, children() may be returning an object in the ancestry of parent, thus creating a circular reference. This may be happening because of miss-use of aria-owns or some other bug. This is not the fix for that bug if in fact it exists, but it would prevent a stack overflow.
&gt; 
&gt; &gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:290
&gt; &gt; +        AXLOG(&quot;aqui estoy&quot;);
&gt; 
&gt; Could we change this log to something like &quot;Bailing
&gt; collectNodeChangesForSubtree for AXID %s because the tree was deeper than %d
&gt; levels&quot;. Did we hit this log in your testing?

Removed, debugging leftover that forgot to remove.
&gt; 
&gt; &gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:307
&gt; &gt; +    axChildrenIDs.shrinkToFit();
&gt; 
&gt; The only time this will ever shrink anything is when `!axChild ||
&gt; axChild.get() == &amp;axObject`, which we don&apos;t even know is possible (unless
&gt; you could repro it?). With that in mind, do you think this call to
&gt; shrinkToFit is necessary?

It is possible to hit the above condition, so the resulting vector of IDs may indeed be shorter than the original and hence shrinkable. Vector.map was doing the shrinking before, so I chose to maintain that behavior.
&gt; 
&gt; &gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:323
&gt; &gt; +    if (m_collectingAtTreeLevel) {
&gt; 
&gt; I feel like this `if` doesn&apos;t read as intuitively as before. What if we
&gt; added a method named `isCollectingNodeChanges` that is
&gt; `m_collectingAtTreeLevel &gt;= 1`? Or is there some other way to recover the
&gt; readability?
&gt; 
&gt; &gt; LayoutTests/accessibility/deep-tree.html:1
&gt; &gt; +&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
&gt; 
&gt; Did this test crash before your patch?

No, unfortunately couldn&apos;t get it to crash in LayoutTests. I think it is worth to add this layout test as a bellwether.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875784</commentid>
    <comment_count>8</comment_count>
      <attachid>460233</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-14 09:13:05 -0700</bug_when>
    <thetext>Created attachment 460233
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875786</commentid>
    <comment_count>9</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-14 09:16:51 -0700</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #5)
&gt; Comment on attachment 460221 [details]
&gt; Patch
&gt; 
&gt; &gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:323
&gt; &gt; +    if (m_collectingAtTreeLevel) {
&gt; 
&gt; I feel like this `if` doesn&apos;t read as intuitively as before. What if we
&gt; added a method named `isCollectingNodeChanges` that is
&gt; `m_collectingAtTreeLevel &gt;= 1`? Or is there some other way to recover the
&gt; readability?

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875830</commentid>
    <comment_count>10</comment_count>
      <attachid>460236</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-14 11:14:34 -0700</bug_when>
    <thetext>Created attachment 460236
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875831</commentid>
    <comment_count>11</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-14 11:18:24 -0700</bug_when>
    <thetext>(In reply to Andres Gonzalez from comment #9)
&gt; (In reply to Tyler Wilcock from comment #5)
&gt; &gt; Comment on attachment 460221 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:323
&gt; &gt; &gt; +    if (m_collectingAtTreeLevel) {
&gt; &gt; 
&gt; &gt; I feel like this `if` doesn&apos;t read as intuitively as before. What if we
&gt; &gt; added a method named `isCollectingNodeChanges` that is
&gt; &gt; `m_collectingAtTreeLevel &gt;= 1`? Or is there some other way to recover the
&gt; &gt; readability?
&gt; 
&gt; Done.

Renamed m_collectingAtTreeLevel -&gt; m_collectingNodeChangesAtTreeLevel to make it more explicit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876049</commentid>
    <comment_count>12</comment_count>
      <attachid>460258</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-15 12:08:36 -0700</bug_when>
    <thetext>Created attachment 460258
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876442</commentid>
    <comment_count>13</comment_count>
      <attachid>460296</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-17 07:18:17 -0700</bug_when>
    <thetext>Created attachment 460296
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876448</commentid>
    <comment_count>14</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-06-17 07:46:23 -0700</bug_when>
    <thetext>&apos;Tyler Wilcock&apos; is not a reviewer, blocking PR #None</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876449</commentid>
    <comment_count>15</comment_count>
      <attachid>460297</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-06-17 07:51:46 -0700</bug_when>
    <thetext>Created attachment 460297
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876453</commentid>
    <comment_count>16</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-06-17 08:45:32 -0700</bug_when>
    <thetext>Committed r295636 (251641@main): &lt;https://commits.webkit.org/251641@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 460297.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460217</attachid>
            <date>2022-06-13 15:40:06 -0700</date>
            <delta_ts>2022-06-13 17:45:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241571-20220613184004.patch</filename>
            <type>text/plain</type>
            <size>8199</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSAzZGE0MzE3YjIzMGY3ODA2MzQyYzIyZTBkYTA0MWIyZThiZjAzYjVjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBNb24sIDEzIEp1biAyMDIyIDE3OjUzOjEzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVggSVRNOiBDcmFzaCBpbiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgYXQgUmVjdXJzaW9u
IDo6CiBjb20uYXBwbGUuV2ViQ29yZTogV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNvbGxlY3RO
b2RlQ2hhbmdlc0ZvclN1YnRyZWUuCiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjQxNTcxCgpUZXN0OiBhY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCgpSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KCkFkZGVkIGEgbGltaXQgZm9yIHJlY3Vyc2l2ZSBjYWxscyB0
byBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZS4gVGhlIGxpbWl0
IGlzIG9idGFpbmVkIGZyb20gdGhlIERPTSBtYXhpbXVtIHRyZWUgZGVwdGguCkluIGFkZGl0aW9u
LCBhZGRlZCBhIHNhbml0eSBjaGVjayBkdXJpbmcgcGFyZW50LWNoaWxkIHRyYXZlcnNhbCwgdGhh
dCBub25lIG9mIHRoZSBjaGlsZHJlbiBjYW4gYmUgZXF1YWwgdG8gdGhlIHBhcmVudC4gVGhpcyB3
aWxsIG5vdCBjb3ZlciBhbGwgcG9zc2libGUgY2lyY3VsYXIgcmVsYXRpb25zIHRoYXQgY2FuIGNh
dXNlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiwgYnV0IG1heSBjYXRjaCBzb21lIHBhdGhvbG9naWNh
bCBjYXNlcy4KCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuY3BwOgooV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNyZWF0ZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaDoKCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sOiBBZGRlZC4KLS0tCiAuLi4vaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRUcmVlLmNwcCAgICAgICAgICAgfCAyOCArKysrKysrKysrLS0tCiAuLi4vaXNv
bGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmggICAgICAgICAgICAgfCAgNSArKy0KIC4uLi9hY2Nl
c3NpYmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQgICAgICB8IDExICsrKysrCiBMYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sICAgICAgfCA0MiArKysrKysrKysrKysr
KysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDc4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0p
CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUt
ZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9kZWVwLXRyZWUuaHRtbAoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcAppbmRleCAyMTVmNzk2M2Q4
NzIuLmY3NTU4OTRjN2M1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcApAQCAtMTAyLDYgKzEw
Miw5IEBAIFJlZjxBWElzb2xhdGVkVHJlZT4gQVhJc29sYXRlZFRyZWU6OmNyZWF0ZShBWE9iamVj
dENhY2hlKiBheE9iamVjdENhY2hlKQogICAgIGlmICghZG9jdW1lbnQudmlldygpLT5sYXlvdXRD
b250ZXh0KCkuaXNJblJlbmRlclRyZWVMYXlvdXQoKSAmJiAhZG9jdW1lbnQuaW5SZW5kZXJUcmVl
VXBkYXRlKCkgJiYgIWRvY3VtZW50LmluU3R5bGVSZWNhbGMoKSkKICAgICAgICAgZG9jdW1lbnQu
dXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CiAKKyAgICB0cmVlLT5tX21h
eFRyZWVEZXB0aCA9IGRvY3VtZW50LnNldHRpbmdzKCkubWF4aW11bUhUTUxQYXJzZXJET01UcmVl
RGVwdGgoKTsKKyAgICBBU1NFUlQodHJlZS0+bV9tYXhUcmVlRGVwdGgpOworCiAgICAgLy8gR2Vu
ZXJhdGUgdGhlIG5vZGVzIG9mIHRoZSB0cmVlIGFuZCBzZXQgaXRzIHJvb3QgYW5kIGZvY3VzZWQg
b2JqZWN0cy4KICAgICAvLyBGb3IgdGhpcywgd2UgbmVlZCB0aGUgcm9vdCBhbmQgZm9jdXNlZCBv
YmplY3RzIG9mIHRoZSBBWE9iamVjdCB0cmVlLgogICAgIGF1dG8qIGF4Um9vdCA9IGF4T2JqZWN0
Q2FjaGUtPmdldE9yQ3JlYXRlKGF4T2JqZWN0Q2FjaGUtPmRvY3VtZW50KCkudmlldygpKTsKQEAg
LTI4MSwxNCArMjg0LDI3IEBAIHZvaWQgQVhJc29sYXRlZFRyZWU6OmNvbGxlY3ROb2RlQ2hhbmdl
c0ZvclN1YnRyZWUoQVhDb3JlT2JqZWN0JiBheE9iamVjdCkKIHsKICAgICBBWFRSQUNFKCJBWElz
b2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSJfcyk7CiAgICAgQVNTRVJU
KGlzTWFpblRocmVhZCgpKTsKLSAgICBTZXRGb3JTY29wZSBjb2xsZWN0aW5nTm9kZUNoYW5nZXMo
bV9pc0NvbGxlY3RpbmdOb2RlQ2hhbmdlcywgdHJ1ZSk7Ci0gICAgbV91bnJlc29sdmVkUGVuZGlu
Z0FwcGVuZHMuc2V0KGF4T2JqZWN0Lm9iamVjdElEKCksIEF0dGFjaFdyYXBwZXI6Ok9uTWFpblRo
cmVhZCk7CiAKKyAgICBTZXRGb3JTY29wZSBjb2xsZWN0aW5nQXRUcmVlTGV2ZWwobV9jb2xsZWN0
aW5nQXRUcmVlTGV2ZWwsIG1fY29sbGVjdGluZ0F0VHJlZUxldmVsICsgMSk7CisgICAgaWYgKG1f
Y29sbGVjdGluZ0F0VHJlZUxldmVsID49IG1fbWF4VHJlZURlcHRoKSB7CisgICAgICAgIEFYTE9H
KCJhcXVpIGVzdG95Iik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX3VucmVzb2x2
ZWRQZW5kaW5nQXBwZW5kcy5zZXQoYXhPYmplY3Qub2JqZWN0SUQoKSwgQXR0YWNoV3JhcHBlcjo6
T25NYWluVGhyZWFkKTsKICAgICBhdXRvIGF4Q2hpbGRyZW5Db3B5ID0gYXhPYmplY3QuY2hpbGRy
ZW4oKTsKLSAgICBhdXRvIGF4Q2hpbGRyZW5JRHMgPSBheENoaWxkcmVuQ29weS5tYXAoWyZdKGF1
dG8mIGF4Q2hpbGQpIHsKKyAgICBWZWN0b3I8QVhJRD4gYXhDaGlsZHJlbklEczsKKyAgICBheENo
aWxkcmVuSURzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoYXhDaGlsZHJlbkNvcHkuc2l6ZSgpKTsK
KyAgICBmb3IgKGNvbnN0IGF1dG8mIGF4Q2hpbGQgOiBheENoaWxkcmVuQ29weSkgeworICAgICAg
ICBpZiAoIWF4Q2hpbGQgfHwgYXhDaGlsZC5nZXQoKSA9PSAmYXhPYmplY3QpIHsKKyAgICAgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICAgICAgY29udGludWU7CisgICAgICAg
IH0KKworICAgICAgICBheENoaWxkcmVuSURzLnVuY2hlY2tlZEFwcGVuZChheENoaWxkLT5vYmpl
Y3RJRCgpKTsKICAgICAgICAgY29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSgqYXhDaGlsZCk7
Ci0gICAgICAgIHJldHVybiBheENoaWxkLT5vYmplY3RJRCgpOwotICAgIH0pOworICAgIH0KKyAg
ICBheENoaWxkcmVuSURzLnNocmlua1RvRml0KCk7CiAKICAgICAvLyBVcGRhdGUgdGhlIG1fbm9k
ZU1hcC4KICAgICBhdXRvKiBheFBhcmVudCA9IGF4T2JqZWN0LnBhcmVudE9iamVjdFVuaWdub3Jl
ZCgpOwpAQCAtMzA0LDcgKzMyMCw3IEBAIHZvaWQgQVhJc29sYXRlZFRyZWU6OnVwZGF0ZU5vZGUo
QVhDb3JlT2JqZWN0JiBheE9iamVjdCkKICAgICAvLyBJZiB3ZSB1cGRhdGUgYSBub2RlIGFzIHRo
ZSByZXN1bHQgb2Ygc29tZSBzaWRlIGVmZmVjdCB3aGlsZSBjb2xsZWN0aW5nIG5vZGUgY2hhbmdl
cyAoZS5nLiBhIHJvbGUgY2hhbmdlIGZyb20KICAgICAvLyBBY2Nlc3NpYmlsaXR5UmVuZGVyT2Jq
ZWN0Ojp1cGRhdGVSb2xlQWZ0ZXJDaGlsZHJlbkNyZWF0aW9uKSwgcXVldWUgdGhlIGFwcGVuZCB1
cCB0byBiZSByZXNvbHZlZCB3aXRoIHRoZSByZXN0CiAgICAgLy8gb2YgdGhlIGNvbGxlY3RlZCBj
aGFuZ2VzLiBUaGlzIHByZXZlbnRzIHVzIGZyb20gY3JlYXRpbmcgdHdvIG5vZGUgY2hhbmdlcyBm
b3IgdGhlIHNhbWUgb2JqZWN0LgotICAgIGlmIChtX2lzQ29sbGVjdGluZ05vZGVDaGFuZ2VzKSB7
CisgICAgaWYgKG1fY29sbGVjdGluZ0F0VHJlZUxldmVsKSB7CiAgICAgICAgIG1fdW5yZXNvbHZl
ZFBlbmRpbmdBcHBlbmRzLnNldChheE9iamVjdC5vYmplY3RJRCgpLCBBdHRhY2hXcmFwcGVyOjpP
bkFYVGhyZWFkKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCmlu
ZGV4IGFjNDAxOTZmOTk4OS4uM2UzNWUzOWYxMzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmgKQEAg
LTM5Myw2ICszOTMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcXVldWVSZW1vdmFsc0FuZFVucmVz
b2x2ZWRDaGFuZ2VzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwogCiAgICAgQVhJc29sYXRlZFRyZWVJ
RCBtX3RyZWVJRDsKKyAgICB1bnNpZ25lZCBtX21heFRyZWVEZXB0aCB7IDAgfTsKICAgICBBWE9i
amVjdENhY2hlKiBtX2F4T2JqZWN0Q2FjaGUgeyBudWxscHRyIH07CiAgICAgYm9vbCBtX3VzZWRP
bkFYVGhyZWFkIHsgdHJ1ZSB9OwogCkBAIC00MTEsOCArNDEyLDggQEAgcHJpdmF0ZToKICAgICAv
LyBUaGUga2V5IGlzIHRoZSBJRCBvZiB0aGUgb2JqZWN0IHRoYXQgd2lsbCBiZSByZXNvbHZlZCBp
bnRvIGFuIG1fcGVuZGluZ0FwcGVuZHMgTm9kZUNoYW5nZS4KICAgICAvLyBUaGUgdmFsdWUgaXMg
d2hldGhlciB0aGUgd3JhcHBlciBzaG91bGQgYmUgYXR0YWNoZWQgb24gdGhlIG1haW4gdGhyZWFk
IG9yIHRoZSBBWCB0aHJlYWQuCiAgICAgSGFzaE1hcDxBWElELCBBdHRhY2hXcmFwcGVyPiBtX3Vu
cmVzb2x2ZWRQZW5kaW5nQXBwZW5kczsKLSAgICAvLyBPbmx5IGFjY2Vzc2VkIG9uIHRoZSBtYWlu
IHRocmVhZC4KLSAgICBib29sIG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMgeyBmYWxzZSB9Owor
ICAgIC8vIDEtYmFzZWQgdHJlZSBsZXZlbCwgMCA9IG5vdCBjb2xsZWN0aW5nLiBPbmx5IGFjY2Vz
c2VkIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICB1bnNpZ25lZCBtX2NvbGxlY3RpbmdBdFRyZWVM
ZXZlbCB7IDAgfTsKIAogICAgIC8vIE9ubHkgYWNjZXNzZWQgb24gQVggdGhyZWFkIHJlcXVlc3Rp
bmcgZGF0YS4KICAgICBIYXNoTWFwPEFYSUQsIFJlZjxBWElzb2xhdGVkT2JqZWN0Pj4gbV9yZWFk
ZXJUaHJlYWROb2RlTWFwOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
ZWVwLXRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRy
ZWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4u
MmY1ODhlMDVhMmY0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK1RoaXMgdGVzdHMgdGhh
dCB0cnlpbmcgdG8gcmV0cmlldmUgQVggb2JqZWN0cyBkZWVwZXIgdGhhbiB0aGUgNTEyIGxldmVs
IGFsbG93ZWQgaW4gdGhlIERPTSB0cmVlIGZhaWxzIGdyYWNlZnVsbHkuCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTIGF4Q2hpbGQuY2hpbGRBdEluZGV4KDApLnN0cmluZ1Zh
bHVlIGlzICdBWFZhbHVlOiBkZWVwZXN0IGNoaWxkJworUEFTUyBheENoaWxkIGlzIG51bGwKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorZGVlcGVzdCBj
aGlsZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRt
bCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi44ODIwY2RlNTRhN2QKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCkBAIC0wLDAgKzEs
NDIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+CisKKzxkaXYgaWQ9ImNvbnRlbnQiIHJvbGU9Imdyb3VwIiAv
PgorCis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsK
KyAgICAgICAgZGVzY3JpcHRpb24oIlRoaXMgdGVzdHMgdGhhdCB0cnlpbmcgdG8gcmV0cmlldmUg
QVggb2JqZWN0cyBkZWVwZXIgdGhhbiB0aGUgNTEyIGxldmVsIGFsbG93ZWQgaW4gdGhlIERPTSB0
cmVlIGZhaWxzIGdyYWNlZnVsbHkuIik7CisKKyAgICAgICAgLy8gQWRkIGEgNTAwIGxldmVscyBk
ZWVwIGhpZXJhcmNoeSBhbmQgZW5zc3VyZSB0aGF0IGRlZXBlc3QgQVggb2JqZWN0IGNhbiBiZSBy
ZXRyaWV2ZWQgc3VjY2Vzc2Z1bGx5LgorICAgICAgICBsZXQgcGFyZW50ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImNvbnRlbnQiKTsKKyAgICAgICAgbGV0IGNoaWxkID0gbnVsbDsKKyAgICAg
ICAgZm9yIChsZXQgaSA9IDA7IGkgPCA1MDA7ICsraSkgeworICAgICAgICAgICAgY2hpbGQgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICAgICAgICAgIGNoaWxkLnNldEF0dHJp
YnV0ZSgicm9sZSIsICJncm91cCIpOworICAgICAgICAgICAgcGFyZW50LmFwcGVuZENoaWxkKGNo
aWxkKTsKKyAgICAgICAgICAgIHBhcmVudCA9IGNoaWxkOworICAgICAgICB9CisgICAgICAgIGNo
aWxkLmlkID0gImRlZXBlc3QtY2hpbGQiOworICAgICAgICBjaGlsZC5pbm5lclRleHQgPSAiZGVl
cGVzdCBjaGlsZCI7CisgICAgICAgIHZhciBheENoaWxkID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJkZWVwZXN0LWNoaWxkIik7CisgICAgICAgIHNob3Vs
ZEJlKCJheENoaWxkLmNoaWxkQXRJbmRleCgwKS5zdHJpbmdWYWx1ZSIsICInQVhWYWx1ZTogZGVl
cGVzdCBjaGlsZCciKTsKKworICAgICAgICAvLyBBZGQgYW4gYWRkaXRpb25hbCAxMCBsZXZlbHMg
dG8gdGhlIHRyZWUgYW5kIGNoZWNrIHRoYXQgdHJ5aW5nIHRvIHJldHJpZXZlIHRoZSBkZWVwZXN0
IEFYIG9iamVjdCBmYWlscyBncmFjZWZ1bGx5LgorICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8
IDEwOyArK2kpIHsKKyAgICAgICAgICAgIGNoaWxkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
ZGl2Iik7CisgICAgICAgICAgICBjaGlsZC5zZXRBdHRyaWJ1dGUoInJvbGUiLCAiZ3JvdXAiKTsK
KyAgICAgICAgICAgIHBhcmVudC5pbnNlcnRCZWZvcmUoY2hpbGQsIHBhcmVudC5maXJzdENoaWxk
KTsKKyAgICAgICAgICAgIHBhcmVudCA9IGNoaWxkOworICAgICAgICB9CisgICAgICAgIGNoaWxk
LmlkID0gImRlZXBlc3QtZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlubmVyVGV4dCA9
ICJkZWVwZXN0IGRlZXBlc3QgY2hpbGQiOworICAgICAgICBheENoaWxkID0gYWNjZXNzaWJpbGl0
eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJkZWVwZXN0LWRlZXBlc3QtY2hpbGQi
KTsKKyAgICAgICAgc2hvdWxkQmUoImF4Q2hpbGQiLCAibnVsbCIpOworICAgIH0KKzwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgotLSAKMi4zMi4wIChBcHBsZSBHaXQtMTMyKQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460221</attachid>
            <date>2022-06-13 17:46:00 -0700</date>
            <delta_ts>2022-06-14 08:32:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241571-20220613204559.patch</filename>
            <type>text/plain</type>
            <size>9192</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSAyZTMzYTFiMmE0NWEzZmFmNGFkNDk4YzQyMTBmYWQ0NjdiZmRiYTg0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBNb24sIDEzIEp1biAyMDIyIDE3OjUzOjEzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVggSVRNOiBDcmFzaCBpbiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgYXQgUmVjdXJzaW9u
IDo6CiBjb20uYXBwbGUuV2ViQ29yZTogV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNvbGxlY3RO
b2RlQ2hhbmdlc0ZvclN1YnRyZWUuCiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjQxNTcxCgpUZXN0OiBhY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCgpSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KCkFkZGVkIGEgbGltaXQgZm9yIHJlY3Vyc2l2ZSBjYWxscyB0
byBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZS4gVGhlIGxpbWl0
IGlzIG9idGFpbmVkIGZyb20gdGhlIERPTSBtYXhpbXVtIHRyZWUgZGVwdGguCkluIGFkZGl0aW9u
LCBhZGRlZCBhIHNhbml0eSBjaGVjayBkdXJpbmcgcGFyZW50LWNoaWxkIHRyYXZlcnNhbCwgdGhh
dCBub25lIG9mIHRoZSBjaGlsZHJlbiBjYW4gYmUgZXF1YWwgdG8gdGhlIHBhcmVudC4gVGhpcyB3
aWxsIG5vdCBjb3ZlciBhbGwgcG9zc2libGUgY2lyY3VsYXIgcmVsYXRpb25zIHRoYXQgY2FuIGNh
dXNlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiwgYnV0IG1heSBjYXRjaCBzb21lIHBhdGhvbG9naWNh
bCBjYXNlcy4KCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuY3BwOgooV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNyZWF0ZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaDoKCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sOiBBZGRlZC4KLS0tCiAuLi4vaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRUcmVlLmNwcCAgICAgICAgICAgfCAyOCArKysrKysrKystLS0KIC4uLi9pc29s
YXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaCAgICAgICAgICAgICB8ICA1ICsrLQogLi4uL2FjY2Vz
c2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dCAgICAgIHwgMTEgKysrKysKIExheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0bWwgICAgICB8IDQ1ICsrKysrKysrKysrKysr
KysrKysKIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zICAgICB8ICAy
ICsKIDUgZmlsZXMgY2hhbmdlZCwgODMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKIGNy
ZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1leHBl
Y3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rl
ZXAtdHJlZS5odG1sCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9p
c29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCmluZGV4IDIxNWY3OTYzZDg3Mi4u
Zjc1NTg5NGM3YzU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCkBAIC0xMDIsNiArMTAyLDkg
QEAgUmVmPEFYSXNvbGF0ZWRUcmVlPiBBWElzb2xhdGVkVHJlZTo6Y3JlYXRlKEFYT2JqZWN0Q2Fj
aGUqIGF4T2JqZWN0Q2FjaGUpCiAgICAgaWYgKCFkb2N1bWVudC52aWV3KCktPmxheW91dENvbnRl
eHQoKS5pc0luUmVuZGVyVHJlZUxheW91dCgpICYmICFkb2N1bWVudC5pblJlbmRlclRyZWVVcGRh
dGUoKSAmJiAhZG9jdW1lbnQuaW5TdHlsZVJlY2FsYygpKQogICAgICAgICBkb2N1bWVudC51cGRh
dGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKIAorICAgIHRyZWUtPm1fbWF4VHJl
ZURlcHRoID0gZG9jdW1lbnQuc2V0dGluZ3MoKS5tYXhpbXVtSFRNTFBhcnNlckRPTVRyZWVEZXB0
aCgpOworICAgIEFTU0VSVCh0cmVlLT5tX21heFRyZWVEZXB0aCk7CisKICAgICAvLyBHZW5lcmF0
ZSB0aGUgbm9kZXMgb2YgdGhlIHRyZWUgYW5kIHNldCBpdHMgcm9vdCBhbmQgZm9jdXNlZCBvYmpl
Y3RzLgogICAgIC8vIEZvciB0aGlzLCB3ZSBuZWVkIHRoZSByb290IGFuZCBmb2N1c2VkIG9iamVj
dHMgb2YgdGhlIEFYT2JqZWN0IHRyZWUuCiAgICAgYXV0byogYXhSb290ID0gYXhPYmplY3RDYWNo
ZS0+Z2V0T3JDcmVhdGUoYXhPYmplY3RDYWNoZS0+ZG9jdW1lbnQoKS52aWV3KCkpOwpAQCAtMjgx
LDE0ICsyODQsMjcgQEAgdm9pZCBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9y
U3VidHJlZShBWENvcmVPYmplY3QmIGF4T2JqZWN0KQogewogICAgIEFYVFJBQ0UoIkFYSXNvbGF0
ZWRUcmVlOjpjb2xsZWN0Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlIl9zKTsKICAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkpOwotICAgIFNldEZvclNjb3BlIGNvbGxlY3RpbmdOb2RlQ2hhbmdlcyhtX2lz
Q29sbGVjdGluZ05vZGVDaGFuZ2VzLCB0cnVlKTsKLSAgICBtX3VucmVzb2x2ZWRQZW5kaW5nQXBw
ZW5kcy5zZXQoYXhPYmplY3Qub2JqZWN0SUQoKSwgQXR0YWNoV3JhcHBlcjo6T25NYWluVGhyZWFk
KTsKIAorICAgIFNldEZvclNjb3BlIGNvbGxlY3RpbmdBdFRyZWVMZXZlbChtX2NvbGxlY3RpbmdB
dFRyZWVMZXZlbCwgbV9jb2xsZWN0aW5nQXRUcmVlTGV2ZWwgKyAxKTsKKyAgICBpZiAobV9jb2xs
ZWN0aW5nQXRUcmVlTGV2ZWwgPj0gbV9tYXhUcmVlRGVwdGgpIHsKKyAgICAgICAgQVhMT0coImFx
dWkgZXN0b3kiKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIG1fdW5yZXNvbHZlZFBl
bmRpbmdBcHBlbmRzLnNldChheE9iamVjdC5vYmplY3RJRCgpLCBBdHRhY2hXcmFwcGVyOjpPbk1h
aW5UaHJlYWQpOwogICAgIGF1dG8gYXhDaGlsZHJlbkNvcHkgPSBheE9iamVjdC5jaGlsZHJlbigp
OwotICAgIGF1dG8gYXhDaGlsZHJlbklEcyA9IGF4Q2hpbGRyZW5Db3B5Lm1hcChbJl0oYXV0byYg
YXhDaGlsZCkgeworICAgIFZlY3RvcjxBWElEPiBheENoaWxkcmVuSURzOworICAgIGF4Q2hpbGRy
ZW5JRHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShheENoaWxkcmVuQ29weS5zaXplKCkpOworICAg
IGZvciAoY29uc3QgYXV0byYgYXhDaGlsZCA6IGF4Q2hpbGRyZW5Db3B5KSB7CisgICAgICAgIGlm
ICghYXhDaGlsZCB8fCBheENoaWxkLmdldCgpID09ICZheE9iamVjdCkgeworICAgICAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQor
CisgICAgICAgIGF4Q2hpbGRyZW5JRHMudW5jaGVja2VkQXBwZW5kKGF4Q2hpbGQtPm9iamVjdElE
KCkpOwogICAgICAgICBjb2xsZWN0Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlKCpheENoaWxkKTsKLSAg
ICAgICAgcmV0dXJuIGF4Q2hpbGQtPm9iamVjdElEKCk7Ci0gICAgfSk7CisgICAgfQorICAgIGF4
Q2hpbGRyZW5JRHMuc2hyaW5rVG9GaXQoKTsKIAogICAgIC8vIFVwZGF0ZSB0aGUgbV9ub2RlTWFw
LgogICAgIGF1dG8qIGF4UGFyZW50ID0gYXhPYmplY3QucGFyZW50T2JqZWN0VW5pZ25vcmVkKCk7
CkBAIC0zMDQsNyArMzIwLDcgQEAgdm9pZCBBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZShBWENv
cmVPYmplY3QmIGF4T2JqZWN0KQogICAgIC8vIElmIHdlIHVwZGF0ZSBhIG5vZGUgYXMgdGhlIHJl
c3VsdCBvZiBzb21lIHNpZGUgZWZmZWN0IHdoaWxlIGNvbGxlY3Rpbmcgbm9kZSBjaGFuZ2VzIChl
LmcuIGEgcm9sZSBjaGFuZ2UgZnJvbQogICAgIC8vIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6
OnVwZGF0ZVJvbGVBZnRlckNoaWxkcmVuQ3JlYXRpb24pLCBxdWV1ZSB0aGUgYXBwZW5kIHVwIHRv
IGJlIHJlc29sdmVkIHdpdGggdGhlIHJlc3QKICAgICAvLyBvZiB0aGUgY29sbGVjdGVkIGNoYW5n
ZXMuIFRoaXMgcHJldmVudHMgdXMgZnJvbSBjcmVhdGluZyB0d28gbm9kZSBjaGFuZ2VzIGZvciB0
aGUgc2FtZSBvYmplY3QuCi0gICAgaWYgKG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMpIHsKKyAg
ICBpZiAobV9jb2xsZWN0aW5nQXRUcmVlTGV2ZWwpIHsKICAgICAgICAgbV91bnJlc29sdmVkUGVu
ZGluZ0FwcGVuZHMuc2V0KGF4T2JqZWN0Lm9iamVjdElEKCksIEF0dGFjaFdyYXBwZXI6Ok9uQVhU
aHJlYWQpOwogICAgICAgICByZXR1cm47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaCBiL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmgKaW5kZXgg
YWM0MDE5NmY5OTg5Li4zZTM1ZTM5ZjEzMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaApAQCAtMzkz
LDYgKzM5Myw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBxdWV1ZVJlbW92YWxzQW5kVW5yZXNvbHZl
ZENoYW5nZXMoY29uc3QgVmVjdG9yPEFYSUQ+Jik7CiAKICAgICBBWElzb2xhdGVkVHJlZUlEIG1f
dHJlZUlEOworICAgIHVuc2lnbmVkIG1fbWF4VHJlZURlcHRoIHsgMCB9OwogICAgIEFYT2JqZWN0
Q2FjaGUqIG1fYXhPYmplY3RDYWNoZSB7IG51bGxwdHIgfTsKICAgICBib29sIG1fdXNlZE9uQVhU
aHJlYWQgeyB0cnVlIH07CiAKQEAgLTQxMSw4ICs0MTIsOCBAQCBwcml2YXRlOgogICAgIC8vIFRo
ZSBrZXkgaXMgdGhlIElEIG9mIHRoZSBvYmplY3QgdGhhdCB3aWxsIGJlIHJlc29sdmVkIGludG8g
YW4gbV9wZW5kaW5nQXBwZW5kcyBOb2RlQ2hhbmdlLgogICAgIC8vIFRoZSB2YWx1ZSBpcyB3aGV0
aGVyIHRoZSB3cmFwcGVyIHNob3VsZCBiZSBhdHRhY2hlZCBvbiB0aGUgbWFpbiB0aHJlYWQgb3Ig
dGhlIEFYIHRocmVhZC4KICAgICBIYXNoTWFwPEFYSUQsIEF0dGFjaFdyYXBwZXI+IG1fdW5yZXNv
bHZlZFBlbmRpbmdBcHBlbmRzOwotICAgIC8vIE9ubHkgYWNjZXNzZWQgb24gdGhlIG1haW4gdGhy
ZWFkLgotICAgIGJvb2wgbV9pc0NvbGxlY3RpbmdOb2RlQ2hhbmdlcyB7IGZhbHNlIH07CisgICAg
Ly8gMS1iYXNlZCB0cmVlIGxldmVsLCAwID0gbm90IGNvbGxlY3RpbmcuIE9ubHkgYWNjZXNzZWQg
b24gdGhlIG1haW4gdGhyZWFkLgorICAgIHVuc2lnbmVkIG1fY29sbGVjdGluZ0F0VHJlZUxldmVs
IHsgMCB9OwogCiAgICAgLy8gT25seSBhY2Nlc3NlZCBvbiBBWCB0aHJlYWQgcmVxdWVzdGluZyBk
YXRhLgogICAgIEhhc2hNYXA8QVhJRCwgUmVmPEFYSXNvbGF0ZWRPYmplY3Q+PiBtX3JlYWRlclRo
cmVhZE5vZGVNYXA7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAt
dHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4yZjU4
OGUwNWEyZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rl
ZXAtdHJlZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorVGhpcyB0ZXN0cyB0aGF0IHRy
eWluZyB0byByZXRyaWV2ZSBBWCBvYmplY3RzIGRlZXBlciB0aGFuIHRoZSA1MTIgbGV2ZWwgYWxs
b3dlZCBpbiB0aGUgRE9NIHRyZWUgZmFpbHMgZ3JhY2VmdWxseS4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCisKK1BBU1MgYXhDaGlsZC5jaGlsZEF0SW5kZXgoMCkuc3RyaW5nVmFsdWUg
aXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNTIGF4Q2hpbGQgaXMgbnVsbAorUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitkZWVwZXN0IGNoaWxk
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sIGIv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmMxMmEzNGJmZDY3NwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0bWwKQEAgLTAsMCArMSw0NSBA
QAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+
Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keT4KKworPGRpdiBpZD0iY29udGVudCIgcm9sZT0iZ3JvdXAiIC8+CisK
KzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAg
ICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHRyeWluZyB0byByZXRyaWV2ZSBBWCBv
YmplY3RzIGRlZXBlciB0aGFuIHRoZSA1MTIgbGV2ZWwgYWxsb3dlZCBpbiB0aGUgRE9NIHRyZWUg
ZmFpbHMgZ3JhY2VmdWxseS4iKTsKKworICAgICAgICAvLyBBZGQgYSA1MDAgbGV2ZWxzIGRlZXAg
aGllcmFyY2h5IGFuZCBlbnNzdXJlIHRoYXQgZGVlcGVzdCBBWCBvYmplY3QgY2FuIGJlIHJldHJp
ZXZlZCBzdWNjZXNzZnVsbHkuCisgICAgICAgIGxldCBwYXJlbnQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiY29udGVudCIpOworICAgICAgICBsZXQgY2hpbGQgPSBudWxsOworICAgICAgICBm
b3IgKGxldCBpID0gMDsgaSA8IDUwMDsgKytpKSB7CisgICAgICAgICAgICBjaGlsZCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgY2hpbGQuc2V0QXR0cmlidXRl
KCJyb2xlIiwgImdyb3VwIik7CisgICAgICAgICAgICBwYXJlbnQuYXBwZW5kQ2hpbGQoY2hpbGQp
OworICAgICAgICAgICAgcGFyZW50ID0gY2hpbGQ7CisgICAgICAgIH0KKyAgICAgICAgY2hpbGQu
aWQgPSAiZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlubmVyVGV4dCA9ICJkZWVwZXN0
IGNoaWxkIjsKKyAgICAgICAgdmFyIGF4Q2hpbGQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5h
Y2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRlZXBlc3QtY2hpbGQiKTsKKyAgICAgICAgaWYgKGFjY2Vz
c2liaWxpdHlDb250cm9sbGVyLnBsYXRmb3JtTmFtZSA9PSAibWFjIikKKyAgICAgICAgICAgIHNo
b3VsZEJlKCJheENoaWxkLmNoaWxkQXRJbmRleCgwKS5zdHJpbmdWYWx1ZSIsICInQVhWYWx1ZTog
ZGVlcGVzdCBjaGlsZCciKTsKKyAgICAgICAgZWxzZSBpZiAoYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIucGxhdGZvcm1OYW1lID09ICJtYWMiKQorICAgICAgICAgICAgc2hvdWxkQmUoImF4Q2hpbGQu
c3RyaW5nVmFsdWUiLCAiJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnIik7CisKKyAgICAgICAgLy8g
QWRkIGFuIGFkZGl0aW9uYWwgMTAgbGV2ZWxzIHRvIHRoZSB0cmVlIGFuZCBjaGVjayB0aGF0IHRy
eWluZyB0byByZXRyaWV2ZSB0aGUgZGVlcGVzdCBBWCBvYmplY3QgZmFpbHMgZ3JhY2VmdWxseS4K
KyAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMDsgKytpKSB7CisgICAgICAgICAgICBjaGls
ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgY2hpbGQuc2V0
QXR0cmlidXRlKCJyb2xlIiwgImdyb3VwIik7CisgICAgICAgICAgICBwYXJlbnQuaW5zZXJ0QmVm
b3JlKGNoaWxkLCBwYXJlbnQuZmlyc3RDaGlsZCk7CisgICAgICAgICAgICBwYXJlbnQgPSBjaGls
ZDsKKyAgICAgICAgfQorICAgICAgICBjaGlsZC5pZCA9ICJkZWVwZXN0LWRlZXBlc3QtY2hpbGQi
OworICAgICAgICBjaGlsZC5pbm5lclRleHQgPSAiZGVlcGVzdCBkZWVwZXN0IGNoaWxkIjsKKyAg
ICAgICAgYXhDaGlsZCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50
QnlJZCgiZGVlcGVzdC1kZWVwZXN0LWNoaWxkIik7CisgICAgICAgIHNob3VsZEJlKCJheENoaWxk
IiwgIm51bGwiKTsKKyAgICB9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggYjJkNjc5ODNiNzZjLi5jMDEz
OTJhNzEyMTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0
YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCkBA
IC05NDUsNiArOTQ1LDggQEAgd2Via2l0Lm9yZy9iLzE0ODk2NyBhY2Nlc3NpYmlsaXR5L2FyaWEt
dGFibGUtYXR0cmlidXRlcy5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2FyaWEtZ3JpZC13
aXRoLWFyaWEtb3ducy1yb3dzLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvZ3JpZC13aXRo
LWFyaWEtb3duZWQtY2VsbHMuaHRtbCBbIFNraXAgXQogCithY2Nlc3NpYmlsaXR5L2RlZXAtdHJl
ZS5odG1sIFsgU2tpcCBdCisKICMgVE9ETyB3ZWJraXQtZm9udC1zbW9vdGhpbmcgaXMgbm90IHN1
cHBvcnRlZC4KIHdlYmtpdC5vcmcvYi8xNDkyNDUgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLW11bHRpY29sL211bHRpY29sLWJhc2ljLTAwMS5odG1sIFsgU2tpcCBdCiB3
ZWJraXQub3JnL2IvMTQ5MjQ1IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1tdWx0aWNvbC9tdWx0aWNvbC1iYXNpYy0wMDIuaHRtbCBbIFNraXAgXQotLSAKMi4zMi4wIChB
cHBsZSBHaXQtMTMyKQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460232</attachid>
            <date>2022-06-14 08:32:12 -0700</date>
            <delta_ts>2022-06-14 09:13:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241571-20220614113211.patch</filename>
            <type>text/plain</type>
            <size>9154</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSBjOGYyYzBkYmY2MmI0ZWZlMDlmZjhkNWRjNzRiNTM5ZDk3MmI1YjAxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBNb24sIDEzIEp1biAyMDIyIDE3OjUzOjEzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVggSVRNOiBDcmFzaCBpbiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgYXQgUmVjdXJzaW9u
IDo6CiBjb20uYXBwbGUuV2ViQ29yZTogV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNvbGxlY3RO
b2RlQ2hhbmdlc0ZvclN1YnRyZWUuCiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjQxNTcxCgpUZXN0OiBhY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCgpSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KCkFkZGVkIGEgbGltaXQgZm9yIHJlY3Vyc2l2ZSBjYWxscyB0
byBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZS4gVGhlIGxpbWl0
IGlzIG9idGFpbmVkIGZyb20gdGhlIERPTSBtYXhpbXVtIHRyZWUgZGVwdGguCkluIGFkZGl0aW9u
LCBhZGRlZCBhIHNhbml0eSBjaGVjayBkdXJpbmcgcGFyZW50LWNoaWxkIHRyYXZlcnNhbCwgdGhh
dCBub25lIG9mIHRoZSBjaGlsZHJlbiBjYW4gYmUgZXF1YWwgdG8gdGhlIHBhcmVudC4gVGhpcyB3
aWxsIG5vdCBjb3ZlciBhbGwgcG9zc2libGUgY2lyY3VsYXIgcmVsYXRpb25zIHRoYXQgY2FuIGNh
dXNlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiwgYnV0IG1heSBjYXRjaCBzb21lIHBhdGhvbG9naWNh
bCBjYXNlcy4KCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuY3BwOgooV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNyZWF0ZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaDoKCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sOiBBZGRlZC4KLS0tCiAuLi4vaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRUcmVlLmNwcCAgICAgICAgICAgfCAyNiArKysrKysrKy0tLQogLi4uL2lzb2xh
dGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oICAgICAgICAgICAgIHwgIDUgKystCiAuLi4vYWNjZXNz
aWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0ICAgICAgfCAxMSArKysrKwogTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbCAgICAgIHwgNDUgKysrKysrKysrKysrKysr
KysrKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMgICAgIHwgIDIg
KwogNSBmaWxlcyBjaGFuZ2VkLCA4MSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVj
dGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVl
cC10cmVlLmh0bWwKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKaW5kZXggMjE1Zjc5NjNkODcyLi5j
NThhOGM1OTE5MWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNv
bGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKQEAgLTEwMiw2ICsxMDIsOSBA
QCBSZWY8QVhJc29sYXRlZFRyZWU+IEFYSXNvbGF0ZWRUcmVlOjpjcmVhdGUoQVhPYmplY3RDYWNo
ZSogYXhPYmplY3RDYWNoZSkKICAgICBpZiAoIWRvY3VtZW50LnZpZXcoKS0+bGF5b3V0Q29udGV4
dCgpLmlzSW5SZW5kZXJUcmVlTGF5b3V0KCkgJiYgIWRvY3VtZW50LmluUmVuZGVyVHJlZVVwZGF0
ZSgpICYmICFkb2N1bWVudC5pblN0eWxlUmVjYWxjKCkpCiAgICAgICAgIGRvY3VtZW50LnVwZGF0
ZUxheW91dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cygpOwogCisgICAgdHJlZS0+bV9tYXhUcmVl
RGVwdGggPSBkb2N1bWVudC5zZXR0aW5ncygpLm1heGltdW1IVE1MUGFyc2VyRE9NVHJlZURlcHRo
KCk7CisgICAgQVNTRVJUKHRyZWUtPm1fbWF4VHJlZURlcHRoKTsKKwogICAgIC8vIEdlbmVyYXRl
IHRoZSBub2RlcyBvZiB0aGUgdHJlZSBhbmQgc2V0IGl0cyByb290IGFuZCBmb2N1c2VkIG9iamVj
dHMuCiAgICAgLy8gRm9yIHRoaXMsIHdlIG5lZWQgdGhlIHJvb3QgYW5kIGZvY3VzZWQgb2JqZWN0
cyBvZiB0aGUgQVhPYmplY3QgdHJlZS4KICAgICBhdXRvKiBheFJvb3QgPSBheE9iamVjdENhY2hl
LT5nZXRPckNyZWF0ZShheE9iamVjdENhY2hlLT5kb2N1bWVudCgpLnZpZXcoKSk7CkBAIC0yODEs
MTQgKzI4NCwyNSBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjpjb2xsZWN0Tm9kZUNoYW5nZXNGb3JT
dWJ0cmVlKEFYQ29yZU9iamVjdCYgYXhPYmplY3QpCiB7CiAgICAgQVhUUkFDRSgiQVhJc29sYXRl
ZFRyZWU6OmNvbGxlY3ROb2RlQ2hhbmdlc0ZvclN1YnRyZWUiX3MpOwogICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSk7Ci0gICAgU2V0Rm9yU2NvcGUgY29sbGVjdGluZ05vZGVDaGFuZ2VzKG1faXND
b2xsZWN0aW5nTm9kZUNoYW5nZXMsIHRydWUpOwotICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBl
bmRzLnNldChheE9iamVjdC5vYmplY3RJRCgpLCBBdHRhY2hXcmFwcGVyOjpPbk1haW5UaHJlYWQp
OwogCisgICAgU2V0Rm9yU2NvcGUgY29sbGVjdGluZ0F0VHJlZUxldmVsKG1fY29sbGVjdGluZ0F0
VHJlZUxldmVsLCBtX2NvbGxlY3RpbmdBdFRyZWVMZXZlbCArIDEpOworICAgIGlmIChtX2NvbGxl
Y3RpbmdBdFRyZWVMZXZlbCA+PSBtX21heFRyZWVEZXB0aCkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgbV91bnJlc29sdmVkUGVuZGluZ0FwcGVuZHMuc2V0KGF4T2JqZWN0Lm9iamVjdElEKCksIEF0
dGFjaFdyYXBwZXI6Ok9uTWFpblRocmVhZCk7CiAgICAgYXV0byBheENoaWxkcmVuQ29weSA9IGF4
T2JqZWN0LmNoaWxkcmVuKCk7Ci0gICAgYXV0byBheENoaWxkcmVuSURzID0gYXhDaGlsZHJlbkNv
cHkubWFwKFsmXShhdXRvJiBheENoaWxkKSB7CisgICAgVmVjdG9yPEFYSUQ+IGF4Q2hpbGRyZW5J
RHM7CisgICAgYXhDaGlsZHJlbklEcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGF4Q2hpbGRyZW5D
b3B5LnNpemUoKSk7CisgICAgZm9yIChjb25zdCBhdXRvJiBheENoaWxkIDogYXhDaGlsZHJlbkNv
cHkpIHsKKyAgICAgICAgaWYgKCFheENoaWxkIHx8IGF4Q2hpbGQuZ2V0KCkgPT0gJmF4T2JqZWN0
KSB7CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIGNvbnRp
bnVlOworICAgICAgICB9CisKKyAgICAgICAgYXhDaGlsZHJlbklEcy51bmNoZWNrZWRBcHBlbmQo
YXhDaGlsZC0+b2JqZWN0SUQoKSk7CiAgICAgICAgIGNvbGxlY3ROb2RlQ2hhbmdlc0ZvclN1YnRy
ZWUoKmF4Q2hpbGQpOwotICAgICAgICByZXR1cm4gYXhDaGlsZC0+b2JqZWN0SUQoKTsKLSAgICB9
KTsKKyAgICB9CisgICAgYXhDaGlsZHJlbklEcy5zaHJpbmtUb0ZpdCgpOwogCiAgICAgLy8gVXBk
YXRlIHRoZSBtX25vZGVNYXAuCiAgICAgYXV0byogYXhQYXJlbnQgPSBheE9iamVjdC5wYXJlbnRP
YmplY3RVbmlnbm9yZWQoKTsKQEAgLTMwNCw3ICszMTgsNyBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVl
Ojp1cGRhdGVOb2RlKEFYQ29yZU9iamVjdCYgYXhPYmplY3QpCiAgICAgLy8gSWYgd2UgdXBkYXRl
IGEgbm9kZSBhcyB0aGUgcmVzdWx0IG9mIHNvbWUgc2lkZSBlZmZlY3Qgd2hpbGUgY29sbGVjdGlu
ZyBub2RlIGNoYW5nZXMgKGUuZy4gYSByb2xlIGNoYW5nZSBmcm9tCiAgICAgLy8gQWNjZXNzaWJp
bGl0eVJlbmRlck9iamVjdDo6dXBkYXRlUm9sZUFmdGVyQ2hpbGRyZW5DcmVhdGlvbiksIHF1ZXVl
IHRoZSBhcHBlbmQgdXAgdG8gYmUgcmVzb2x2ZWQgd2l0aCB0aGUgcmVzdAogICAgIC8vIG9mIHRo
ZSBjb2xsZWN0ZWQgY2hhbmdlcy4gVGhpcyBwcmV2ZW50cyB1cyBmcm9tIGNyZWF0aW5nIHR3byBu
b2RlIGNoYW5nZXMgZm9yIHRoZSBzYW1lIG9iamVjdC4KLSAgICBpZiAobV9pc0NvbGxlY3RpbmdO
b2RlQ2hhbmdlcykgeworICAgIGlmIChtX2NvbGxlY3RpbmdBdFRyZWVMZXZlbCkgewogICAgICAg
ICBtX3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kcy5zZXQoYXhPYmplY3Qub2JqZWN0SUQoKSwgQXR0
YWNoV3JhcHBlcjo6T25BWFRocmVhZCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVk
VHJlZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZFRyZWUuaAppbmRleCBhYzQwMTk2Zjk5ODkuLjNlMzVlMzlmMTMxZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xh
dGVkVHJlZS5oCkBAIC0zOTMsNiArMzkzLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHF1ZXVlUmVt
b3ZhbHNBbmRVbnJlc29sdmVkQ2hhbmdlcyhjb25zdCBWZWN0b3I8QVhJRD4mKTsKIAogICAgIEFY
SXNvbGF0ZWRUcmVlSUQgbV90cmVlSUQ7CisgICAgdW5zaWduZWQgbV9tYXhUcmVlRGVwdGggeyAw
IH07CiAgICAgQVhPYmplY3RDYWNoZSogbV9heE9iamVjdENhY2hlIHsgbnVsbHB0ciB9OwogICAg
IGJvb2wgbV91c2VkT25BWFRocmVhZCB7IHRydWUgfTsKIApAQCAtNDExLDggKzQxMiw4IEBAIHBy
aXZhdGU6CiAgICAgLy8gVGhlIGtleSBpcyB0aGUgSUQgb2YgdGhlIG9iamVjdCB0aGF0IHdpbGwg
YmUgcmVzb2x2ZWQgaW50byBhbiBtX3BlbmRpbmdBcHBlbmRzIE5vZGVDaGFuZ2UuCiAgICAgLy8g
VGhlIHZhbHVlIGlzIHdoZXRoZXIgdGhlIHdyYXBwZXIgc2hvdWxkIGJlIGF0dGFjaGVkIG9uIHRo
ZSBtYWluIHRocmVhZCBvciB0aGUgQVggdGhyZWFkLgogICAgIEhhc2hNYXA8QVhJRCwgQXR0YWNo
V3JhcHBlcj4gbV91bnJlc29sdmVkUGVuZGluZ0FwcGVuZHM7Ci0gICAgLy8gT25seSBhY2Nlc3Nl
ZCBvbiB0aGUgbWFpbiB0aHJlYWQuCi0gICAgYm9vbCBtX2lzQ29sbGVjdGluZ05vZGVDaGFuZ2Vz
IHsgZmFsc2UgfTsKKyAgICAvLyAxLWJhc2VkIHRyZWUgbGV2ZWwsIDAgPSBub3QgY29sbGVjdGlu
Zy4gT25seSBhY2Nlc3NlZCBvbiB0aGUgbWFpbiB0aHJlYWQuCisgICAgdW5zaWduZWQgbV9jb2xs
ZWN0aW5nQXRUcmVlTGV2ZWwgeyAwIH07CiAKICAgICAvLyBPbmx5IGFjY2Vzc2VkIG9uIEFYIHRo
cmVhZCByZXF1ZXN0aW5nIGRhdGEuCiAgICAgSGFzaE1hcDxBWElELCBSZWY8QVhJc29sYXRlZE9i
amVjdD4+IG1fcmVhZGVyVGhyZWFkTm9kZU1hcDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Fj
Y2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAuLjJmNTg4ZTA1YTJmNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitU
aGlzIHRlc3RzIHRoYXQgdHJ5aW5nIHRvIHJldHJpZXZlIEFYIG9iamVjdHMgZGVlcGVyIHRoYW4g
dGhlIDUxMiBsZXZlbCBhbGxvd2VkIGluIHRoZSBET00gdHJlZSBmYWlscyBncmFjZWZ1bGx5Lgor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBheENoaWxkLmNoaWxkQXRJbmRl
eCgwKS5zdHJpbmdWYWx1ZSBpcyAnQVhWYWx1ZTogZGVlcGVzdCBjaGlsZCcKK1BBU1MgYXhDaGls
ZCBpcyBudWxsCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKK2RlZXBlc3QgY2hpbGQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkv
ZGVlcC10cmVlLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uZWJhZTA0ZGY5ZTlmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRt
bApAQCAtMCwwICsxLDQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10
ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCis8ZGl2IGlkPSJjb250ZW50IiBy
b2xlPSJncm91cCIgLz4KKworPHNjcmlwdD4KKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlD
b250cm9sbGVyKSB7CisgICAgICAgIGRlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoYXQgdHJ5aW5n
IHRvIHJldHJpZXZlIEFYIG9iamVjdHMgZGVlcGVyIHRoYW4gdGhlIDUxMiBsZXZlbCBhbGxvd2Vk
IGluIHRoZSBET00gdHJlZSBmYWlscyBncmFjZWZ1bGx5LiIpOworCisgICAgICAgIC8vIEFkZCBh
IDUwMCBsZXZlbHMgZGVlcCBoaWVyYXJjaHkgYW5kIGVuc3N1cmUgdGhhdCBkZWVwZXN0IEFYIG9i
amVjdCBjYW4gYmUgcmV0cmlldmVkIHN1Y2Nlc3NmdWxseS4KKyAgICAgICAgbGV0IHBhcmVudCA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250ZW50Iik7CisgICAgICAgIGxldCBjaGlsZCA9
IG51bGw7CisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNTAwOyArK2kpIHsKKyAgICAgICAg
ICAgIGNoaWxkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICBj
aGlsZC5zZXRBdHRyaWJ1dGUoInJvbGUiLCAiZ3JvdXAiKTsKKyAgICAgICAgICAgIHBhcmVudC5h
cHBlbmRDaGlsZChjaGlsZCk7CisgICAgICAgICAgICBwYXJlbnQgPSBjaGlsZDsKKyAgICAgICAg
fQorICAgICAgICBjaGlsZC5pZCA9ICJkZWVwZXN0LWNoaWxkIjsKKyAgICAgICAgY2hpbGQuaW5u
ZXJUZXh0ID0gImRlZXBlc3QgY2hpbGQiOworICAgICAgICB2YXIgYXhDaGlsZCA9IGFjY2Vzc2li
aWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgiZGVlcGVzdC1jaGlsZCIpOwor
ICAgICAgICBpZiAoYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIucGxhdGZvcm1OYW1lID09ICJtYWMi
KQorICAgICAgICAgICAgc2hvdWxkQmUoImF4Q2hpbGQuY2hpbGRBdEluZGV4KDApLnN0cmluZ1Zh
bHVlIiwgIidBWFZhbHVlOiBkZWVwZXN0IGNoaWxkJyIpOworICAgICAgICBlbHNlIGlmIChhY2Nl
c3NpYmlsaXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT0gImF0c3BpIikKKyAgICAgICAgICAg
IHNob3VsZEJlKCJheENoaWxkLnN0cmluZ1ZhbHVlIiwgIidBWFZhbHVlOiBkZWVwZXN0IGNoaWxk
JyIpOworCisgICAgICAgIC8vIEFkZCBhbiBhZGRpdGlvbmFsIDEwIGxldmVscyB0byB0aGUgdHJl
ZSBhbmQgY2hlY2sgdGhhdCB0cnlpbmcgdG8gcmV0cmlldmUgdGhlIGRlZXBlc3QgQVggb2JqZWN0
IGZhaWxzIGdyYWNlZnVsbHkuCisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTA7ICsraSkg
eworICAgICAgICAgICAgY2hpbGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAg
ICAgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZSgicm9sZSIsICJncm91cCIpOworICAgICAgICAg
ICAgcGFyZW50Lmluc2VydEJlZm9yZShjaGlsZCwgcGFyZW50LmZpcnN0Q2hpbGQpOworICAgICAg
ICAgICAgcGFyZW50ID0gY2hpbGQ7CisgICAgICAgIH0KKyAgICAgICAgY2hpbGQuaWQgPSAiZGVl
cGVzdC1kZWVwZXN0LWNoaWxkIjsKKyAgICAgICAgY2hpbGQuaW5uZXJUZXh0ID0gImRlZXBlc3Qg
ZGVlcGVzdCBjaGlsZCI7CisgICAgICAgIGF4Q2hpbGQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxl
ci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRlZXBlc3QtZGVlcGVzdC1jaGlsZCIpOworICAgICAg
ICBzaG91bGRCZSgiYXhDaGlsZCIsICJudWxsIik7CisgICAgfQorPC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVj
dGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCmluZGV4
IGIyZDY3OTgzYjc2Yy4uYzAxMzkyYTcxMjE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
VGVzdEV4cGVjdGF0aW9ucwpAQCAtOTQ1LDYgKzk0NSw4IEBAIHdlYmtpdC5vcmcvYi8xNDg5Njcg
YWNjZXNzaWJpbGl0eS9hcmlhLXRhYmxlLWF0dHJpYnV0ZXMuaHRtbCBbIFNraXAgXQogYWNjZXNz
aWJpbGl0eS9hcmlhLWdyaWQtd2l0aC1hcmlhLW93bnMtcm93cy5odG1sIFsgU2tpcCBdCiBhY2Nl
c3NpYmlsaXR5L2dyaWQtd2l0aC1hcmlhLW93bmVkLWNlbGxzLmh0bWwgWyBTa2lwIF0KIAorYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbCBbIFNraXAgXQorCiAjIFRPRE8gd2Via2l0LWZvbnQt
c21vb3RoaW5nIGlzIG5vdCBzdXBwb3J0ZWQuCiB3ZWJraXQub3JnL2IvMTQ5MjQ1IGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1tdWx0aWNvbC9tdWx0aWNvbC1iYXNpYy0w
MDEuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzE0OTI0NSBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtbXVsdGljb2wvbXVsdGljb2wtYmFzaWMtMDAyLmh0bWwgWyBT
a2lwIF0KLS0gCjIuMzIuMCAoQXBwbGUgR2l0LTEzMikKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460233</attachid>
            <date>2022-06-14 09:13:05 -0700</date>
            <delta_ts>2022-06-14 11:14:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241571-20220614121304.patch</filename>
            <type>text/plain</type>
            <size>9684</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSA4NzIwZDViZmVjY2FlNmIyODc2ZjhkMmNlMGEyYTFhMTVhZmZiZWM2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBNb24sIDEzIEp1biAyMDIyIDE3OjUzOjEzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVggSVRNOiBDcmFzaCBpbiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgYXQgUmVjdXJzaW9u
IDo6CiBjb20uYXBwbGUuV2ViQ29yZTogV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNvbGxlY3RO
b2RlQ2hhbmdlc0ZvclN1YnRyZWUuCiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjQxNTcxCgpUZXN0OiBhY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCgpSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KCkFkZGVkIGEgbGltaXQgZm9yIHJlY3Vyc2l2ZSBjYWxscyB0
byBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZS4gVGhlIGxpbWl0
IGlzIG9idGFpbmVkIGZyb20gdGhlIERPTSBtYXhpbXVtIHRyZWUgZGVwdGguCkluIGFkZGl0aW9u
LCBhZGRlZCBhIHNhbml0eSBjaGVjayBkdXJpbmcgcGFyZW50LWNoaWxkIHRyYXZlcnNhbCwgdGhh
dCBub25lIG9mIHRoZSBjaGlsZHJlbiBjYW4gYmUgZXF1YWwgdG8gdGhlIHBhcmVudC4gVGhpcyB3
aWxsIG5vdCBjb3ZlciBhbGwgcG9zc2libGUgY2lyY3VsYXIgcmVsYXRpb25zIHRoYXQgY2FuIGNh
dXNlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiwgYnV0IG1heSBjYXRjaCBzb21lIHBhdGhvbG9naWNh
bCBjYXNlcy4KCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuY3BwOgooV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNyZWF0ZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaDoKCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sOiBBZGRlZC4KLS0tCiAuLi4vaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRUcmVlLmNwcCAgICAgICAgICAgfCAyNiArKysrKysrKy0tLQogLi4uL2lzb2xh
dGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oICAgICAgICAgICAgIHwgIDYgKystCiAuLi4vYWNjZXNz
aWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0ICAgICAgfCAxMSArKysrKwogTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbCAgICAgIHwgNDUgKysrKysrKysrKysrKysr
KysrKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMgICAgIHwgIDIg
KwogNSBmaWxlcyBjaGFuZ2VkLCA4MiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVj
dGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVl
cC10cmVlLmh0bWwKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKaW5kZXggMjE1Zjc5NjNkODcyLi5k
M2ZiNDBlNDBmM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNv
bGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKQEAgLTEwMiw2ICsxMDIsOSBA
QCBSZWY8QVhJc29sYXRlZFRyZWU+IEFYSXNvbGF0ZWRUcmVlOjpjcmVhdGUoQVhPYmplY3RDYWNo
ZSogYXhPYmplY3RDYWNoZSkKICAgICBpZiAoIWRvY3VtZW50LnZpZXcoKS0+bGF5b3V0Q29udGV4
dCgpLmlzSW5SZW5kZXJUcmVlTGF5b3V0KCkgJiYgIWRvY3VtZW50LmluUmVuZGVyVHJlZVVwZGF0
ZSgpICYmICFkb2N1bWVudC5pblN0eWxlUmVjYWxjKCkpCiAgICAgICAgIGRvY3VtZW50LnVwZGF0
ZUxheW91dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cygpOwogCisgICAgdHJlZS0+bV9tYXhUcmVl
RGVwdGggPSBkb2N1bWVudC5zZXR0aW5ncygpLm1heGltdW1IVE1MUGFyc2VyRE9NVHJlZURlcHRo
KCk7CisgICAgQVNTRVJUKHRyZWUtPm1fbWF4VHJlZURlcHRoKTsKKwogICAgIC8vIEdlbmVyYXRl
IHRoZSBub2RlcyBvZiB0aGUgdHJlZSBhbmQgc2V0IGl0cyByb290IGFuZCBmb2N1c2VkIG9iamVj
dHMuCiAgICAgLy8gRm9yIHRoaXMsIHdlIG5lZWQgdGhlIHJvb3QgYW5kIGZvY3VzZWQgb2JqZWN0
cyBvZiB0aGUgQVhPYmplY3QgdHJlZS4KICAgICBhdXRvKiBheFJvb3QgPSBheE9iamVjdENhY2hl
LT5nZXRPckNyZWF0ZShheE9iamVjdENhY2hlLT5kb2N1bWVudCgpLnZpZXcoKSk7CkBAIC0yODEs
MTQgKzI4NCwyNSBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjpjb2xsZWN0Tm9kZUNoYW5nZXNGb3JT
dWJ0cmVlKEFYQ29yZU9iamVjdCYgYXhPYmplY3QpCiB7CiAgICAgQVhUUkFDRSgiQVhJc29sYXRl
ZFRyZWU6OmNvbGxlY3ROb2RlQ2hhbmdlc0ZvclN1YnRyZWUiX3MpOwogICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSk7Ci0gICAgU2V0Rm9yU2NvcGUgY29sbGVjdGluZ05vZGVDaGFuZ2VzKG1faXND
b2xsZWN0aW5nTm9kZUNoYW5nZXMsIHRydWUpOwotICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBl
bmRzLnNldChheE9iamVjdC5vYmplY3RJRCgpLCBBdHRhY2hXcmFwcGVyOjpPbk1haW5UaHJlYWQp
OwogCisgICAgU2V0Rm9yU2NvcGUgY29sbGVjdGluZ0F0VHJlZUxldmVsKG1fY29sbGVjdGluZ0F0
VHJlZUxldmVsLCBtX2NvbGxlY3RpbmdBdFRyZWVMZXZlbCArIDEpOworICAgIGlmIChtX2NvbGxl
Y3RpbmdBdFRyZWVMZXZlbCA+PSBtX21heFRyZWVEZXB0aCkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgbV91bnJlc29sdmVkUGVuZGluZ0FwcGVuZHMuc2V0KGF4T2JqZWN0Lm9iamVjdElEKCksIEF0
dGFjaFdyYXBwZXI6Ok9uTWFpblRocmVhZCk7CiAgICAgYXV0byBheENoaWxkcmVuQ29weSA9IGF4
T2JqZWN0LmNoaWxkcmVuKCk7Ci0gICAgYXV0byBheENoaWxkcmVuSURzID0gYXhDaGlsZHJlbkNv
cHkubWFwKFsmXShhdXRvJiBheENoaWxkKSB7CisgICAgVmVjdG9yPEFYSUQ+IGF4Q2hpbGRyZW5J
RHM7CisgICAgYXhDaGlsZHJlbklEcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGF4Q2hpbGRyZW5D
b3B5LnNpemUoKSk7CisgICAgZm9yIChjb25zdCBhdXRvJiBheENoaWxkIDogYXhDaGlsZHJlbkNv
cHkpIHsKKyAgICAgICAgaWYgKCFheENoaWxkIHx8IGF4Q2hpbGQuZ2V0KCkgPT0gJmF4T2JqZWN0
KSB7CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIGNvbnRp
bnVlOworICAgICAgICB9CisKKyAgICAgICAgYXhDaGlsZHJlbklEcy51bmNoZWNrZWRBcHBlbmQo
YXhDaGlsZC0+b2JqZWN0SUQoKSk7CiAgICAgICAgIGNvbGxlY3ROb2RlQ2hhbmdlc0ZvclN1YnRy
ZWUoKmF4Q2hpbGQpOwotICAgICAgICByZXR1cm4gYXhDaGlsZC0+b2JqZWN0SUQoKTsKLSAgICB9
KTsKKyAgICB9CisgICAgYXhDaGlsZHJlbklEcy5zaHJpbmtUb0ZpdCgpOwogCiAgICAgLy8gVXBk
YXRlIHRoZSBtX25vZGVNYXAuCiAgICAgYXV0byogYXhQYXJlbnQgPSBheE9iamVjdC5wYXJlbnRP
YmplY3RVbmlnbm9yZWQoKTsKQEAgLTMwNCw3ICszMTgsNyBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVl
Ojp1cGRhdGVOb2RlKEFYQ29yZU9iamVjdCYgYXhPYmplY3QpCiAgICAgLy8gSWYgd2UgdXBkYXRl
IGEgbm9kZSBhcyB0aGUgcmVzdWx0IG9mIHNvbWUgc2lkZSBlZmZlY3Qgd2hpbGUgY29sbGVjdGlu
ZyBub2RlIGNoYW5nZXMgKGUuZy4gYSByb2xlIGNoYW5nZSBmcm9tCiAgICAgLy8gQWNjZXNzaWJp
bGl0eVJlbmRlck9iamVjdDo6dXBkYXRlUm9sZUFmdGVyQ2hpbGRyZW5DcmVhdGlvbiksIHF1ZXVl
IHRoZSBhcHBlbmQgdXAgdG8gYmUgcmVzb2x2ZWQgd2l0aCB0aGUgcmVzdAogICAgIC8vIG9mIHRo
ZSBjb2xsZWN0ZWQgY2hhbmdlcy4gVGhpcyBwcmV2ZW50cyB1cyBmcm9tIGNyZWF0aW5nIHR3byBu
b2RlIGNoYW5nZXMgZm9yIHRoZSBzYW1lIG9iamVjdC4KLSAgICBpZiAobV9pc0NvbGxlY3RpbmdO
b2RlQ2hhbmdlcykgeworICAgIGlmIChpc0NvbGxlY3RpbmdOb2RlQ2hhbmdlcygpKSB7CiAgICAg
ICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBlbmRzLnNldChheE9iamVjdC5vYmplY3RJRCgpLCBB
dHRhY2hXcmFwcGVyOjpPbkFYVGhyZWFkKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0
ZWRUcmVlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElz
b2xhdGVkVHJlZS5oCmluZGV4IGFjNDAxOTZmOTk4OS4uMjliZDFkMDc5YWRhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJl
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNv
bGF0ZWRUcmVlLmgKQEAgLTM4NywxMiArMzg3LDE0IEBAIHByaXZhdGU6CiAgICAgZW51bSBjbGFz
cyBBdHRhY2hXcmFwcGVyIDogYm9vbCB7IE9uTWFpblRocmVhZCwgT25BWFRocmVhZCB9OwogICAg
IHN0ZDo6b3B0aW9uYWw8Tm9kZUNoYW5nZT4gbm9kZUNoYW5nZUZvck9iamVjdChBWENvcmVPYmpl
Y3QmLCBBdHRhY2hXcmFwcGVyID0gQXR0YWNoV3JhcHBlcjo6T25NYWluVGhyZWFkKTsKICAgICB2
b2lkIGNvbGxlY3ROb2RlQ2hhbmdlc0ZvclN1YnRyZWUoQVhDb3JlT2JqZWN0Jik7CisgICAgYm9v
bCBpc0NvbGxlY3RpbmdOb2RlQ2hhbmdlcygpIGNvbnN0IHsgcmV0dXJuIG1fY29sbGVjdGluZ0F0
VHJlZUxldmVsID4gMDsgfQogICAgIHZvaWQgcXVldWVDaGFuZ2UoY29uc3QgTm9kZUNoYW5nZSYp
IFdURl9SRVFVSVJFU19MT0NLKG1fY2hhbmdlTG9nTG9jayk7CiAgICAgdm9pZCBxdWV1ZVJlbW92
YWxzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwogICAgIHZvaWQgcXVldWVSZW1vdmFsc0xvY2tlZChj
b25zdCBWZWN0b3I8QVhJRD4mKSBXVEZfUkVRVUlSRVNfTE9DSyhtX2NoYW5nZUxvZ0xvY2spOwog
ICAgIHZvaWQgcXVldWVSZW1vdmFsc0FuZFVucmVzb2x2ZWRDaGFuZ2VzKGNvbnN0IFZlY3RvcjxB
WElEPiYpOwogCiAgICAgQVhJc29sYXRlZFRyZWVJRCBtX3RyZWVJRDsKKyAgICB1bnNpZ25lZCBt
X21heFRyZWVEZXB0aCB7IDAgfTsKICAgICBBWE9iamVjdENhY2hlKiBtX2F4T2JqZWN0Q2FjaGUg
eyBudWxscHRyIH07CiAgICAgYm9vbCBtX3VzZWRPbkFYVGhyZWFkIHsgdHJ1ZSB9OwogCkBAIC00
MTEsOCArNDEzLDggQEAgcHJpdmF0ZToKICAgICAvLyBUaGUga2V5IGlzIHRoZSBJRCBvZiB0aGUg
b2JqZWN0IHRoYXQgd2lsbCBiZSByZXNvbHZlZCBpbnRvIGFuIG1fcGVuZGluZ0FwcGVuZHMgTm9k
ZUNoYW5nZS4KICAgICAvLyBUaGUgdmFsdWUgaXMgd2hldGhlciB0aGUgd3JhcHBlciBzaG91bGQg
YmUgYXR0YWNoZWQgb24gdGhlIG1haW4gdGhyZWFkIG9yIHRoZSBBWCB0aHJlYWQuCiAgICAgSGFz
aE1hcDxBWElELCBBdHRhY2hXcmFwcGVyPiBtX3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kczsKLSAg
ICAvLyBPbmx5IGFjY2Vzc2VkIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICBib29sIG1faXNDb2xs
ZWN0aW5nTm9kZUNoYW5nZXMgeyBmYWxzZSB9OworICAgIC8vIDEtYmFzZWQgdHJlZSBsZXZlbCwg
MCA9IG5vdCBjb2xsZWN0aW5nLiBPbmx5IGFjY2Vzc2VkIG9uIHRoZSBtYWluIHRocmVhZC4KKyAg
ICB1bnNpZ25lZCBtX2NvbGxlY3RpbmdBdFRyZWVMZXZlbCB7IDAgfTsKIAogICAgIC8vIE9ubHkg
YWNjZXNzZWQgb24gQVggdGhyZWFkIHJlcXVlc3RpbmcgZGF0YS4KICAgICBIYXNoTWFwPEFYSUQs
IFJlZjxBWElzb2xhdGVkT2JqZWN0Pj4gbV9yZWFkZXJUaHJlYWROb2RlTWFwOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMmY1ODhlMDVhMmY0Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTEgQEAKK1RoaXMgdGVzdHMgdGhhdCB0cnlpbmcgdG8gcmV0cmlldmUgQVggb2Jq
ZWN0cyBkZWVwZXIgdGhhbiB0aGUgNTEyIGxldmVsIGFsbG93ZWQgaW4gdGhlIERPTSB0cmVlIGZh
aWxzIGdyYWNlZnVsbHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGF4
Q2hpbGQuY2hpbGRBdEluZGV4KDApLnN0cmluZ1ZhbHVlIGlzICdBWFZhbHVlOiBkZWVwZXN0IGNo
aWxkJworUEFTUyBheENoaWxkIGlzIG51bGwKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorZGVlcGVzdCBjaGlsZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxp
dHkvZGVlcC10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
Li5lYmFlMDRkZjllOWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2RlZXAtdHJlZS5odG1sCkBAIC0wLDAgKzEsNDUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJ
QyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0i
Li4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisKKzxk
aXYgaWQ9ImNvbnRlbnQiIHJvbGU9Imdyb3VwIiAvPgorCis8c2NyaXB0PgorICAgIGlmICh3aW5k
b3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICAgICAgZGVzY3JpcHRpb24oIlRoaXMg
dGVzdHMgdGhhdCB0cnlpbmcgdG8gcmV0cmlldmUgQVggb2JqZWN0cyBkZWVwZXIgdGhhbiB0aGUg
NTEyIGxldmVsIGFsbG93ZWQgaW4gdGhlIERPTSB0cmVlIGZhaWxzIGdyYWNlZnVsbHkuIik7CisK
KyAgICAgICAgLy8gQWRkIGEgNTAwIGxldmVscyBkZWVwIGhpZXJhcmNoeSBhbmQgZW5zc3VyZSB0
aGF0IGRlZXBlc3QgQVggb2JqZWN0IGNhbiBiZSByZXRyaWV2ZWQgc3VjY2Vzc2Z1bGx5LgorICAg
ICAgICBsZXQgcGFyZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRlbnQiKTsKKyAg
ICAgICAgbGV0IGNoaWxkID0gbnVsbDsKKyAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCA1MDA7
ICsraSkgeworICAgICAgICAgICAgY2hpbGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKKyAgICAgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZSgicm9sZSIsICJncm91cCIpOworICAg
ICAgICAgICAgcGFyZW50LmFwcGVuZENoaWxkKGNoaWxkKTsKKyAgICAgICAgICAgIHBhcmVudCA9
IGNoaWxkOworICAgICAgICB9CisgICAgICAgIGNoaWxkLmlkID0gImRlZXBlc3QtY2hpbGQiOwor
ICAgICAgICBjaGlsZC5pbm5lclRleHQgPSAiZGVlcGVzdCBjaGlsZCI7CisgICAgICAgIHZhciBh
eENoaWxkID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJk
ZWVwZXN0LWNoaWxkIik7CisgICAgICAgIGlmIChhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5wbGF0
Zm9ybU5hbWUgPT0gIm1hYyIpCisgICAgICAgICAgICBzaG91bGRCZSgiYXhDaGlsZC5jaGlsZEF0
SW5kZXgoMCkuc3RyaW5nVmFsdWUiLCAiJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnIik7CisgICAg
ICAgIGVsc2UgaWYgKGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLnBsYXRmb3JtTmFtZSA9PSAiYXRz
cGkiKQorICAgICAgICAgICAgc2hvdWxkQmUoImF4Q2hpbGQuc3RyaW5nVmFsdWUiLCAiJ0FYVmFs
dWU6IGRlZXBlc3QgY2hpbGQnIik7CisKKyAgICAgICAgLy8gQWRkIGFuIGFkZGl0aW9uYWwgMTAg
bGV2ZWxzIHRvIHRoZSB0cmVlIGFuZCBjaGVjayB0aGF0IHRyeWluZyB0byByZXRyaWV2ZSB0aGUg
ZGVlcGVzdCBBWCBvYmplY3QgZmFpbHMgZ3JhY2VmdWxseS4KKyAgICAgICAgZm9yIChsZXQgaSA9
IDA7IGkgPCAxMDsgKytpKSB7CisgICAgICAgICAgICBjaGlsZCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOworICAgICAgICAgICAgY2hpbGQuc2V0QXR0cmlidXRlKCJyb2xlIiwgImdy
b3VwIik7CisgICAgICAgICAgICBwYXJlbnQuaW5zZXJ0QmVmb3JlKGNoaWxkLCBwYXJlbnQuZmly
c3RDaGlsZCk7CisgICAgICAgICAgICBwYXJlbnQgPSBjaGlsZDsKKyAgICAgICAgfQorICAgICAg
ICBjaGlsZC5pZCA9ICJkZWVwZXN0LWRlZXBlc3QtY2hpbGQiOworICAgICAgICBjaGlsZC5pbm5l
clRleHQgPSAiZGVlcGVzdCBkZWVwZXN0IGNoaWxkIjsKKyAgICAgICAgYXhDaGlsZCA9IGFjY2Vz
c2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgiZGVlcGVzdC1kZWVwZXN0
LWNoaWxkIik7CisgICAgICAgIHNob3VsZEJlKCJheENoaWxkIiwgIm51bGwiKTsKKyAgICB9Cis8
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RF
eHBlY3RhdGlvbnMKaW5kZXggYjJkNjc5ODNiNzZjLi5jMDEzOTJhNzEyMTYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCkBAIC05NDUsNiArOTQ1LDggQEAgd2Vi
a2l0Lm9yZy9iLzE0ODk2NyBhY2Nlc3NpYmlsaXR5L2FyaWEtdGFibGUtYXR0cmlidXRlcy5odG1s
IFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2FyaWEtZ3JpZC13aXRoLWFyaWEtb3ducy1yb3dzLmh0
bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvZ3JpZC13aXRoLWFyaWEtb3duZWQtY2VsbHMuaHRt
bCBbIFNraXAgXQogCithY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sIFsgU2tpcCBdCisKICMg
VE9ETyB3ZWJraXQtZm9udC1zbW9vdGhpbmcgaXMgbm90IHN1cHBvcnRlZC4KIHdlYmtpdC5vcmcv
Yi8xNDkyNDUgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLW11bHRpY29s
L211bHRpY29sLWJhc2ljLTAwMS5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTQ5MjQ1IGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1tdWx0aWNvbC9tdWx0aWNvbC1i
YXNpYy0wMDIuaHRtbCBbIFNraXAgXQotLSAKMi4zMi4wIChBcHBsZSBHaXQtMTMyKQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460236</attachid>
            <date>2022-06-14 11:14:34 -0700</date>
            <delta_ts>2022-06-15 12:08:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241571-20220614141432.patch</filename>
            <type>text/plain</type>
            <size>10594</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSA2OGI4ODc3Yzc5YzdmMWU2ZGI5MTNhZjIyYWYxNDQxMjQzYzA4NWIxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBNb24sIDEzIEp1biAyMDIyIDE3OjUzOjEzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVggSVRNOiBDcmFzaCBpbiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgYXQgUmVjdXJzaW9u
IDo6CiBjb20uYXBwbGUuV2ViQ29yZTogV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNvbGxlY3RO
b2RlQ2hhbmdlc0ZvclN1YnRyZWUuCiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjQxNTcxCgpUZXN0OiBhY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCgpSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KCkFkZGVkIGEgbGltaXQgZm9yIHJlY3Vyc2l2ZSBjYWxscyB0
byBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZS4gVGhlIGxpbWl0
IGlzIG9idGFpbmVkIGZyb20gdGhlIERPTSBtYXhpbXVtIHRyZWUgZGVwdGguCkluIGFkZGl0aW9u
LCBhZGRlZCBhIHNhbml0eSBjaGVjayBkdXJpbmcgcGFyZW50LWNoaWxkIHRyYXZlcnNhbCwgdGhh
dCBub25lIG9mIHRoZSBjaGlsZHJlbiBjYW4gYmUgZXF1YWwgdG8gdGhlIHBhcmVudC4gVGhpcyB3
aWxsIG5vdCBjb3ZlciBhbGwgcG9zc2libGUgY2lyY3VsYXIgcmVsYXRpb25zIHRoYXQgY2FuIGNh
dXNlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiwgYnV0IG1heSBjYXRjaCBzb21lIHBhdGhvbG9naWNh
bCBjYXNlcy4KCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuY3BwOgooV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNyZWF0ZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaDoKCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sOiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9nbGliL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0tLQog
Li4uL2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgICAgICAgICAgIHwgMjYgKysrKysr
KystLS0KIC4uLi9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaCAgICAgICAgICAgICB8ICA2
ICsrLQogLi4uL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dCAgICAgIHwgMTEg
KysrKysKIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0bWwgICAgICB8IDQ1
ICsrKysrKysrKysrKysrKysrKysKIC4uLi9nbGliL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4
cGVjdGVkLnR4dCB8IDExICsrKysrCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVj
dGF0aW9ucyAgICAgfCAgMiArCiA2IGZpbGVzIGNoYW5nZWQsIDkzIGluc2VydGlvbnMoKyksIDgg
ZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRl
c3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0Cgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRy
ZWUvQVhJc29sYXRlZFRyZWUuY3BwCmluZGV4IDIxNWY3OTYzZDg3Mi4uMTM1OGMyNzI2ZTBjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElz
b2xhdGVkVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRl
ZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCkBAIC0xMDIsNiArMTAyLDkgQEAgUmVmPEFYSXNvbGF0
ZWRUcmVlPiBBWElzb2xhdGVkVHJlZTo6Y3JlYXRlKEFYT2JqZWN0Q2FjaGUqIGF4T2JqZWN0Q2Fj
aGUpCiAgICAgaWYgKCFkb2N1bWVudC52aWV3KCktPmxheW91dENvbnRleHQoKS5pc0luUmVuZGVy
VHJlZUxheW91dCgpICYmICFkb2N1bWVudC5pblJlbmRlclRyZWVVcGRhdGUoKSAmJiAhZG9jdW1l
bnQuaW5TdHlsZVJlY2FsYygpKQogICAgICAgICBkb2N1bWVudC51cGRhdGVMYXlvdXRJZ25vcmVQ
ZW5kaW5nU3R5bGVzaGVldHMoKTsKIAorICAgIHRyZWUtPm1fbWF4VHJlZURlcHRoID0gZG9jdW1l
bnQuc2V0dGluZ3MoKS5tYXhpbXVtSFRNTFBhcnNlckRPTVRyZWVEZXB0aCgpOworICAgIEFTU0VS
VCh0cmVlLT5tX21heFRyZWVEZXB0aCk7CisKICAgICAvLyBHZW5lcmF0ZSB0aGUgbm9kZXMgb2Yg
dGhlIHRyZWUgYW5kIHNldCBpdHMgcm9vdCBhbmQgZm9jdXNlZCBvYmplY3RzLgogICAgIC8vIEZv
ciB0aGlzLCB3ZSBuZWVkIHRoZSByb290IGFuZCBmb2N1c2VkIG9iamVjdHMgb2YgdGhlIEFYT2Jq
ZWN0IHRyZWUuCiAgICAgYXV0byogYXhSb290ID0gYXhPYmplY3RDYWNoZS0+Z2V0T3JDcmVhdGUo
YXhPYmplY3RDYWNoZS0+ZG9jdW1lbnQoKS52aWV3KCkpOwpAQCAtMjgxLDE0ICsyODQsMjUgQEAg
dm9pZCBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZShBWENvcmVP
YmplY3QmIGF4T2JqZWN0KQogewogICAgIEFYVFJBQ0UoIkFYSXNvbGF0ZWRUcmVlOjpjb2xsZWN0
Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlIl9zKTsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwot
ICAgIFNldEZvclNjb3BlIGNvbGxlY3RpbmdOb2RlQ2hhbmdlcyhtX2lzQ29sbGVjdGluZ05vZGVD
aGFuZ2VzLCB0cnVlKTsKLSAgICBtX3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kcy5zZXQoYXhPYmpl
Y3Qub2JqZWN0SUQoKSwgQXR0YWNoV3JhcHBlcjo6T25NYWluVGhyZWFkKTsKIAorICAgIFNldEZv
clNjb3BlIGNvbGxlY3RpbmdBdFRyZWVMZXZlbChtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJl
ZUxldmVsLCBtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVsICsgMSk7CisgICAgaWYg
KG1fY29sbGVjdGluZ05vZGVDaGFuZ2VzQXRUcmVlTGV2ZWwgPj0gbV9tYXhUcmVlRGVwdGgpCisg
ICAgICAgIHJldHVybjsKKworICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBlbmRzLnNldChheE9i
amVjdC5vYmplY3RJRCgpLCBBdHRhY2hXcmFwcGVyOjpPbk1haW5UaHJlYWQpOwogICAgIGF1dG8g
YXhDaGlsZHJlbkNvcHkgPSBheE9iamVjdC5jaGlsZHJlbigpOwotICAgIGF1dG8gYXhDaGlsZHJl
bklEcyA9IGF4Q2hpbGRyZW5Db3B5Lm1hcChbJl0oYXV0byYgYXhDaGlsZCkgeworICAgIFZlY3Rv
cjxBWElEPiBheENoaWxkcmVuSURzOworICAgIGF4Q2hpbGRyZW5JRHMucmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eShheENoaWxkcmVuQ29weS5zaXplKCkpOworICAgIGZvciAoY29uc3QgYXV0byYgYXhD
aGlsZCA6IGF4Q2hpbGRyZW5Db3B5KSB7CisgICAgICAgIGlmICghYXhDaGlsZCB8fCBheENoaWxk
LmdldCgpID09ICZheE9iamVjdCkgeworICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCisgICAgICAgIGF4Q2hpbGRyZW5J
RHMudW5jaGVja2VkQXBwZW5kKGF4Q2hpbGQtPm9iamVjdElEKCkpOwogICAgICAgICBjb2xsZWN0
Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlKCpheENoaWxkKTsKLSAgICAgICAgcmV0dXJuIGF4Q2hpbGQt
Pm9iamVjdElEKCk7Ci0gICAgfSk7CisgICAgfQorICAgIGF4Q2hpbGRyZW5JRHMuc2hyaW5rVG9G
aXQoKTsKIAogICAgIC8vIFVwZGF0ZSB0aGUgbV9ub2RlTWFwLgogICAgIGF1dG8qIGF4UGFyZW50
ID0gYXhPYmplY3QucGFyZW50T2JqZWN0VW5pZ25vcmVkKCk7CkBAIC0zMDQsNyArMzE4LDcgQEAg
dm9pZCBBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZShBWENvcmVPYmplY3QmIGF4T2JqZWN0KQog
ICAgIC8vIElmIHdlIHVwZGF0ZSBhIG5vZGUgYXMgdGhlIHJlc3VsdCBvZiBzb21lIHNpZGUgZWZm
ZWN0IHdoaWxlIGNvbGxlY3Rpbmcgbm9kZSBjaGFuZ2VzIChlLmcuIGEgcm9sZSBjaGFuZ2UgZnJv
bQogICAgIC8vIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OnVwZGF0ZVJvbGVBZnRlckNoaWxk
cmVuQ3JlYXRpb24pLCBxdWV1ZSB0aGUgYXBwZW5kIHVwIHRvIGJlIHJlc29sdmVkIHdpdGggdGhl
IHJlc3QKICAgICAvLyBvZiB0aGUgY29sbGVjdGVkIGNoYW5nZXMuIFRoaXMgcHJldmVudHMgdXMg
ZnJvbSBjcmVhdGluZyB0d28gbm9kZSBjaGFuZ2VzIGZvciB0aGUgc2FtZSBvYmplY3QuCi0gICAg
aWYgKG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMpIHsKKyAgICBpZiAoaXNDb2xsZWN0aW5nTm9k
ZUNoYW5nZXMoKSkgewogICAgICAgICBtX3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kcy5zZXQoYXhP
YmplY3Qub2JqZWN0SUQoKSwgQXR0YWNoV3JhcHBlcjo6T25BWFRocmVhZCk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaAppbmRleCBhYzQwMTk2Zjk5ODkuLmU3OTRi
YTgzZTNmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRl
ZHRyZWUvQVhJc29sYXRlZFRyZWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCkBAIC0zODcsMTIgKzM4NywxNCBAQCBwcml2
YXRlOgogICAgIGVudW0gY2xhc3MgQXR0YWNoV3JhcHBlciA6IGJvb2wgeyBPbk1haW5UaHJlYWQs
IE9uQVhUaHJlYWQgfTsKICAgICBzdGQ6Om9wdGlvbmFsPE5vZGVDaGFuZ2U+IG5vZGVDaGFuZ2VG
b3JPYmplY3QoQVhDb3JlT2JqZWN0JiwgQXR0YWNoV3JhcHBlciA9IEF0dGFjaFdyYXBwZXI6Ok9u
TWFpblRocmVhZCk7CiAgICAgdm9pZCBjb2xsZWN0Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlKEFYQ29y
ZU9iamVjdCYpOworICAgIGJvb2wgaXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMoKSBjb25zdCB7IHJl
dHVybiBtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVsID4gMDsgfQogICAgIHZvaWQg
cXVldWVDaGFuZ2UoY29uc3QgTm9kZUNoYW5nZSYpIFdURl9SRVFVSVJFU19MT0NLKG1fY2hhbmdl
TG9nTG9jayk7CiAgICAgdm9pZCBxdWV1ZVJlbW92YWxzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwog
ICAgIHZvaWQgcXVldWVSZW1vdmFsc0xvY2tlZChjb25zdCBWZWN0b3I8QVhJRD4mKSBXVEZfUkVR
VUlSRVNfTE9DSyhtX2NoYW5nZUxvZ0xvY2spOwogICAgIHZvaWQgcXVldWVSZW1vdmFsc0FuZFVu
cmVzb2x2ZWRDaGFuZ2VzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwogCiAgICAgQVhJc29sYXRlZFRy
ZWVJRCBtX3RyZWVJRDsKKyAgICB1bnNpZ25lZCBtX21heFRyZWVEZXB0aCB7IDAgfTsKICAgICBB
WE9iamVjdENhY2hlKiBtX2F4T2JqZWN0Q2FjaGUgeyBudWxscHRyIH07CiAgICAgYm9vbCBtX3Vz
ZWRPbkFYVGhyZWFkIHsgdHJ1ZSB9OwogCkBAIC00MTEsOCArNDEzLDggQEAgcHJpdmF0ZToKICAg
ICAvLyBUaGUga2V5IGlzIHRoZSBJRCBvZiB0aGUgb2JqZWN0IHRoYXQgd2lsbCBiZSByZXNvbHZl
ZCBpbnRvIGFuIG1fcGVuZGluZ0FwcGVuZHMgTm9kZUNoYW5nZS4KICAgICAvLyBUaGUgdmFsdWUg
aXMgd2hldGhlciB0aGUgd3JhcHBlciBzaG91bGQgYmUgYXR0YWNoZWQgb24gdGhlIG1haW4gdGhy
ZWFkIG9yIHRoZSBBWCB0aHJlYWQuCiAgICAgSGFzaE1hcDxBWElELCBBdHRhY2hXcmFwcGVyPiBt
X3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kczsKLSAgICAvLyBPbmx5IGFjY2Vzc2VkIG9uIHRoZSBt
YWluIHRocmVhZC4KLSAgICBib29sIG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMgeyBmYWxzZSB9
OworICAgIC8vIDEtYmFzZWQgdHJlZSBsZXZlbCwgMCA9IG5vdCBjb2xsZWN0aW5nLiBPbmx5IGFj
Y2Vzc2VkIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICB1bnNpZ25lZCBtX2NvbGxlY3RpbmdOb2Rl
Q2hhbmdlc0F0VHJlZUxldmVsIHsgMCB9OwogCiAgICAgLy8gT25seSBhY2Nlc3NlZCBvbiBBWCB0
aHJlYWQgcmVxdWVzdGluZyBkYXRhLgogICAgIEhhc2hNYXA8QVhJRCwgUmVmPEFYSXNvbGF0ZWRP
YmplY3Q+PiBtX3JlYWRlclRocmVhZE5vZGVNYXA7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwLi4yZjU4OGUwNWEyZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAor
VGhpcyB0ZXN0cyB0aGF0IHRyeWluZyB0byByZXRyaWV2ZSBBWCBvYmplY3RzIGRlZXBlciB0aGFu
IHRoZSA1MTIgbGV2ZWwgYWxsb3dlZCBpbiB0aGUgRE9NIHRyZWUgZmFpbHMgZ3JhY2VmdWxseS4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgYXhDaGlsZC5jaGlsZEF0SW5k
ZXgoMCkuc3RyaW5nVmFsdWUgaXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNTIGF4Q2hp
bGQgaXMgbnVsbAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCitkZWVwZXN0IGNoaWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2RlZXAtdHJlZS5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmViYWUwNGRmOWU5Zgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0
bWwKQEAgLTAsMCArMSw0NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMt
dGVzdC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPGRpdiBpZD0iY29udGVudCIg
cm9sZT0iZ3JvdXAiIC8+CisKKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5
Q29udHJvbGxlcikgeworICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHRyeWlu
ZyB0byByZXRyaWV2ZSBBWCBvYmplY3RzIGRlZXBlciB0aGFuIHRoZSA1MTIgbGV2ZWwgYWxsb3dl
ZCBpbiB0aGUgRE9NIHRyZWUgZmFpbHMgZ3JhY2VmdWxseS4iKTsKKworICAgICAgICAvLyBBZGQg
YSA1MDAgbGV2ZWxzIGRlZXAgaGllcmFyY2h5IGFuZCBlbnNzdXJlIHRoYXQgZGVlcGVzdCBBWCBv
YmplY3QgY2FuIGJlIHJldHJpZXZlZCBzdWNjZXNzZnVsbHkuCisgICAgICAgIGxldCBwYXJlbnQg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOworICAgICAgICBsZXQgY2hpbGQg
PSBudWxsOworICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDUwMDsgKytpKSB7CisgICAgICAg
ICAgICBjaGlsZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAg
Y2hpbGQuc2V0QXR0cmlidXRlKCJyb2xlIiwgImdyb3VwIik7CisgICAgICAgICAgICBwYXJlbnQu
YXBwZW5kQ2hpbGQoY2hpbGQpOworICAgICAgICAgICAgcGFyZW50ID0gY2hpbGQ7CisgICAgICAg
IH0KKyAgICAgICAgY2hpbGQuaWQgPSAiZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlu
bmVyVGV4dCA9ICJkZWVwZXN0IGNoaWxkIjsKKyAgICAgICAgdmFyIGF4Q2hpbGQgPSBhY2Nlc3Np
YmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRlZXBlc3QtY2hpbGQiKTsK
KyAgICAgICAgaWYgKGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLnBsYXRmb3JtTmFtZSA9PSAibWFj
IikKKyAgICAgICAgICAgIHNob3VsZEJlKCJheENoaWxkLmNoaWxkQXRJbmRleCgwKS5zdHJpbmdW
YWx1ZSIsICInQVhWYWx1ZTogZGVlcGVzdCBjaGlsZCciKTsKKyAgICAgICAgZWxzZSBpZiAoYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIucGxhdGZvcm1OYW1lID09ICJhdHNwaSIpCisgICAgICAgICAg
ICBzaG91bGRCZSgiYXhDaGlsZC5zdHJpbmdWYWx1ZSIsICInQVhWYWx1ZTogZGVlcGVzdCBjaGls
ZCciKTsKKworICAgICAgICAvLyBBZGQgYW4gYWRkaXRpb25hbCAxMCBsZXZlbHMgdG8gdGhlIHRy
ZWUgYW5kIGNoZWNrIHRoYXQgdHJ5aW5nIHRvIHJldHJpZXZlIHRoZSBkZWVwZXN0IEFYIG9iamVj
dCBmYWlscyBncmFjZWZ1bGx5LgorICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEwOyArK2kp
IHsKKyAgICAgICAgICAgIGNoaWxkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Cisg
ICAgICAgICAgICBjaGlsZC5zZXRBdHRyaWJ1dGUoInJvbGUiLCAiZ3JvdXAiKTsKKyAgICAgICAg
ICAgIHBhcmVudC5pbnNlcnRCZWZvcmUoY2hpbGQsIHBhcmVudC5maXJzdENoaWxkKTsKKyAgICAg
ICAgICAgIHBhcmVudCA9IGNoaWxkOworICAgICAgICB9CisgICAgICAgIGNoaWxkLmlkID0gImRl
ZXBlc3QtZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlubmVyVGV4dCA9ICJkZWVwZXN0
IGRlZXBlc3QgY2hpbGQiOworICAgICAgICBheENoaWxkID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJkZWVwZXN0LWRlZXBlc3QtY2hpbGQiKTsKKyAgICAg
ICAgc2hvdWxkQmUoImF4Q2hpbGQiLCAibnVsbCIpOworICAgIH0KKzwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3Np
YmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGli
L2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAuLmNmNTA3NWNlMDRjZQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMTEgQEAKK1RoaXMgdGVzdHMgdGhhdCB0cnlpbmcgdG8gcmV0cmlldmUg
QVggb2JqZWN0cyBkZWVwZXIgdGhhbiB0aGUgNTEyIGxldmVsIGFsbG93ZWQgaW4gdGhlIERPTSB0
cmVlIGZhaWxzIGdyYWNlZnVsbHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTIGF4Q2hpbGQuc3RyaW5nVmFsdWUgaXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNT
IGF4Q2hpbGQgaXMgbnVsbAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCitkZWVwZXN0IGNoaWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS93aW4vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhw
ZWN0YXRpb25zCmluZGV4IGIyZDY3OTgzYjc2Yy4uYzAxMzkyYTcxMjE2IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwpAQCAtOTQ1LDYgKzk0NSw4IEBAIHdlYmtp
dC5vcmcvYi8xNDg5NjcgYWNjZXNzaWJpbGl0eS9hcmlhLXRhYmxlLWF0dHJpYnV0ZXMuaHRtbCBb
IFNraXAgXQogYWNjZXNzaWJpbGl0eS9hcmlhLWdyaWQtd2l0aC1hcmlhLW93bnMtcm93cy5odG1s
IFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L2dyaWQtd2l0aC1hcmlhLW93bmVkLWNlbGxzLmh0bWwg
WyBTa2lwIF0KIAorYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbCBbIFNraXAgXQorCiAjIFRP
RE8gd2Via2l0LWZvbnQtc21vb3RoaW5nIGlzIG5vdCBzdXBwb3J0ZWQuCiB3ZWJraXQub3JnL2Iv
MTQ5MjQ1IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1tdWx0aWNvbC9t
dWx0aWNvbC1iYXNpYy0wMDEuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzE0OTI0NSBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtbXVsdGljb2wvbXVsdGljb2wtYmFz
aWMtMDAyLmh0bWwgWyBTa2lwIF0KLS0gCjIuMzIuMCAoQXBwbGUgR2l0LTEzMikKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460258</attachid>
            <date>2022-06-15 12:08:36 -0700</date>
            <delta_ts>2022-06-17 07:18:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241571-20220615150834.patch</filename>
            <type>text/plain</type>
            <size>11398</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSBlMTVmYjdlMTQxNGY1MzE4MjExNGViY2MzNjY2MDRjOGJhNTU4NGUwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBNb24sIDEzIEp1biAyMDIyIDE3OjUzOjEzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVggSVRNOiBDcmFzaCBpbiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgYXQgUmVjdXJzaW9u
IDo6CiBjb20uYXBwbGUuV2ViQ29yZTogV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNvbGxlY3RO
b2RlQ2hhbmdlc0ZvclN1YnRyZWUuCiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjQxNTcxCgpUZXN0OiBhY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCgpSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KCkFkZGVkIGEgbGltaXQgZm9yIHJlY3Vyc2l2ZSBjYWxscyB0
byBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZS4gVGhlIGxpbWl0
IGlzIG9idGFpbmVkIGZyb20gdGhlIERPTSBtYXhpbXVtIHRyZWUgZGVwdGguCkluIGFkZGl0aW9u
LCBhZGRlZCBhIHNhbml0eSBjaGVjayBkdXJpbmcgcGFyZW50LWNoaWxkIHRyYXZlcnNhbCwgdGhh
dCBub25lIG9mIHRoZSBjaGlsZHJlbiBjYW4gYmUgZXF1YWwgdG8gdGhlIHBhcmVudC4gVGhpcyB3
aWxsIG5vdCBjb3ZlciBhbGwgcG9zc2libGUgY2lyY3VsYXIgcmVsYXRpb25zIHRoYXQgY2FuIGNh
dXNlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiwgYnV0IG1heSBjYXRjaCBzb21lIHBhdGhvbG9naWNh
bCBjYXNlcy4KCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuY3BwOgooV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNyZWF0ZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaDoKCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sOiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9nbGliL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0tLQog
Li4uL2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgICAgICAgICAgIHwgMjYgKysrKysr
KystLS0KIC4uLi9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaCAgICAgICAgICAgICB8ICA2
ICsrLQogLi4uL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dCAgICAgIHwgMTEg
KysrKysKIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0bWwgICAgICB8IDQ1
ICsrKysrKysrKysrKysrKysrKysKIC4uLi9nbGliL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4
cGVjdGVkLnR4dCB8IDExICsrKysrCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RF
eHBlY3RhdGlvbnMgfCAgMSArCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0
aW9ucyAgICAgfCAgMiArCiA3IGZpbGVzIGNoYW5nZWQsIDk0IGluc2VydGlvbnMoKyksIDggZGVs
ZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
ZWVwLXRyZWUtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3Rz
L3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0CgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUv
QVhJc29sYXRlZFRyZWUuY3BwCmluZGV4IGY5ZjdjNzQwZDllYi4uMWE0ZTNiZWU4NWY5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xh
dGVkVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRy
ZWUvQVhJc29sYXRlZFRyZWUuY3BwCkBAIC0xMDIsNiArMTAyLDkgQEAgUmVmPEFYSXNvbGF0ZWRU
cmVlPiBBWElzb2xhdGVkVHJlZTo6Y3JlYXRlKEFYT2JqZWN0Q2FjaGUqIGF4T2JqZWN0Q2FjaGUp
CiAgICAgaWYgKCFkb2N1bWVudC52aWV3KCktPmxheW91dENvbnRleHQoKS5pc0luUmVuZGVyVHJl
ZUxheW91dCgpICYmICFkb2N1bWVudC5pblJlbmRlclRyZWVVcGRhdGUoKSAmJiAhZG9jdW1lbnQu
aW5TdHlsZVJlY2FsYygpKQogICAgICAgICBkb2N1bWVudC51cGRhdGVMYXlvdXRJZ25vcmVQZW5k
aW5nU3R5bGVzaGVldHMoKTsKIAorICAgIHRyZWUtPm1fbWF4VHJlZURlcHRoID0gZG9jdW1lbnQu
c2V0dGluZ3MoKS5tYXhpbXVtSFRNTFBhcnNlckRPTVRyZWVEZXB0aCgpOworICAgIEFTU0VSVCh0
cmVlLT5tX21heFRyZWVEZXB0aCk7CisKICAgICAvLyBHZW5lcmF0ZSB0aGUgbm9kZXMgb2YgdGhl
IHRyZWUgYW5kIHNldCBpdHMgcm9vdCBhbmQgZm9jdXNlZCBvYmplY3RzLgogICAgIC8vIEZvciB0
aGlzLCB3ZSBuZWVkIHRoZSByb290IGFuZCBmb2N1c2VkIG9iamVjdHMgb2YgdGhlIEFYT2JqZWN0
IHRyZWUuCiAgICAgYXV0byogYXhSb290ID0gYXhPYmplY3RDYWNoZS0+Z2V0T3JDcmVhdGUoYXhP
YmplY3RDYWNoZS0+ZG9jdW1lbnQoKS52aWV3KCkpOwpAQCAtMzA3LDE0ICszMTAsMjUgQEAgdm9p
ZCBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZShBWENvcmVPYmpl
Y3QmIGF4T2JqZWN0KQogewogICAgIEFYVFJBQ0UoIkFYSXNvbGF0ZWRUcmVlOjpjb2xsZWN0Tm9k
ZUNoYW5nZXNGb3JTdWJ0cmVlIl9zKTsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotICAg
IFNldEZvclNjb3BlIGNvbGxlY3RpbmdOb2RlQ2hhbmdlcyhtX2lzQ29sbGVjdGluZ05vZGVDaGFu
Z2VzLCB0cnVlKTsKLSAgICBtX3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kcy5zZXQoYXhPYmplY3Qu
b2JqZWN0SUQoKSwgQXR0YWNoV3JhcHBlcjo6T25NYWluVGhyZWFkKTsKIAorICAgIFNldEZvclNj
b3BlIGNvbGxlY3RpbmdBdFRyZWVMZXZlbChtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxl
dmVsLCBtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVsICsgMSk7CisgICAgaWYgKG1f
Y29sbGVjdGluZ05vZGVDaGFuZ2VzQXRUcmVlTGV2ZWwgPj0gbV9tYXhUcmVlRGVwdGgpCisgICAg
ICAgIHJldHVybjsKKworICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBlbmRzLnNldChheE9iamVj
dC5vYmplY3RJRCgpLCBBdHRhY2hXcmFwcGVyOjpPbk1haW5UaHJlYWQpOwogICAgIGF1dG8gYXhD
aGlsZHJlbkNvcHkgPSBheE9iamVjdC5jaGlsZHJlbigpOwotICAgIGF1dG8gYXhDaGlsZHJlbklE
cyA9IGF4Q2hpbGRyZW5Db3B5Lm1hcChbJl0oYXV0byYgYXhDaGlsZCkgeworICAgIFZlY3RvcjxB
WElEPiBheENoaWxkcmVuSURzOworICAgIGF4Q2hpbGRyZW5JRHMucmVzZXJ2ZUluaXRpYWxDYXBh
Y2l0eShheENoaWxkcmVuQ29weS5zaXplKCkpOworICAgIGZvciAoY29uc3QgYXV0byYgYXhDaGls
ZCA6IGF4Q2hpbGRyZW5Db3B5KSB7CisgICAgICAgIGlmICghYXhDaGlsZCB8fCBheENoaWxkLmdl
dCgpID09ICZheE9iamVjdCkgeworICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cisg
ICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCisgICAgICAgIGF4Q2hpbGRyZW5JRHMu
dW5jaGVja2VkQXBwZW5kKGF4Q2hpbGQtPm9iamVjdElEKCkpOwogICAgICAgICBjb2xsZWN0Tm9k
ZUNoYW5nZXNGb3JTdWJ0cmVlKCpheENoaWxkKTsKLSAgICAgICAgcmV0dXJuIGF4Q2hpbGQtPm9i
amVjdElEKCk7Ci0gICAgfSk7CisgICAgfQorICAgIGF4Q2hpbGRyZW5JRHMuc2hyaW5rVG9GaXQo
KTsKIAogICAgIC8vIFVwZGF0ZSB0aGUgbV9ub2RlTWFwLgogICAgIGF1dG8qIGF4UGFyZW50ID0g
YXhPYmplY3QucGFyZW50T2JqZWN0VW5pZ25vcmVkKCk7CkBAIC0zMzAsNyArMzQ0LDcgQEAgdm9p
ZCBBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZShBWENvcmVPYmplY3QmIGF4T2JqZWN0KQogICAg
IC8vIElmIHdlIHVwZGF0ZSBhIG5vZGUgYXMgdGhlIHJlc3VsdCBvZiBzb21lIHNpZGUgZWZmZWN0
IHdoaWxlIGNvbGxlY3Rpbmcgbm9kZSBjaGFuZ2VzIChlLmcuIGEgcm9sZSBjaGFuZ2UgZnJvbQog
ICAgIC8vIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OnVwZGF0ZVJvbGVBZnRlckNoaWxkcmVu
Q3JlYXRpb24pLCBxdWV1ZSB0aGUgYXBwZW5kIHVwIHRvIGJlIHJlc29sdmVkIHdpdGggdGhlIHJl
c3QKICAgICAvLyBvZiB0aGUgY29sbGVjdGVkIGNoYW5nZXMuIFRoaXMgcHJldmVudHMgdXMgZnJv
bSBjcmVhdGluZyB0d28gbm9kZSBjaGFuZ2VzIGZvciB0aGUgc2FtZSBvYmplY3QuCi0gICAgaWYg
KG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMpIHsKKyAgICBpZiAoaXNDb2xsZWN0aW5nTm9kZUNo
YW5nZXMoKSkgewogICAgICAgICBtX3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kcy5zZXQoYXhPYmpl
Y3Qub2JqZWN0SUQoKSwgQXR0YWNoV3JhcHBlcjo6T25BWFRocmVhZCk7CiAgICAgICAgIHJldHVy
bjsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xh
dGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9p
c29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaAppbmRleCBhZGZjMjNhMTE4NjQuLjI0OTdiNTJm
YjczYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRy
ZWUvQVhJc29sYXRlZFRyZWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCkBAIC0zODcsMTIgKzM4NywxNCBAQCBwcml2YXRl
OgogICAgIGVudW0gY2xhc3MgQXR0YWNoV3JhcHBlciA6IGJvb2wgeyBPbk1haW5UaHJlYWQsIE9u
QVhUaHJlYWQgfTsKICAgICBzdGQ6Om9wdGlvbmFsPE5vZGVDaGFuZ2U+IG5vZGVDaGFuZ2VGb3JP
YmplY3QoQVhDb3JlT2JqZWN0JiwgQXR0YWNoV3JhcHBlciA9IEF0dGFjaFdyYXBwZXI6Ok9uTWFp
blRocmVhZCk7CiAgICAgdm9pZCBjb2xsZWN0Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlKEFYQ29yZU9i
amVjdCYpOworICAgIGJvb2wgaXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMoKSBjb25zdCB7IHJldHVy
biBtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVsID4gMDsgfQogICAgIHZvaWQgcXVl
dWVDaGFuZ2UoY29uc3QgTm9kZUNoYW5nZSYpIFdURl9SRVFVSVJFU19MT0NLKG1fY2hhbmdlTG9n
TG9jayk7CiAgICAgdm9pZCBxdWV1ZVJlbW92YWxzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwogICAg
IHZvaWQgcXVldWVSZW1vdmFsc0xvY2tlZChjb25zdCBWZWN0b3I8QVhJRD4mKSBXVEZfUkVRVUlS
RVNfTE9DSyhtX2NoYW5nZUxvZ0xvY2spOwogICAgIHZvaWQgcXVldWVSZW1vdmFsc0FuZFVucmVz
b2x2ZWRDaGFuZ2VzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwogCiAgICAgQVhJc29sYXRlZFRyZWVJ
RCBtX3RyZWVJRDsKKyAgICB1bnNpZ25lZCBtX21heFRyZWVEZXB0aCB7IDAgfTsKICAgICBBWE9i
amVjdENhY2hlKiBtX2F4T2JqZWN0Q2FjaGUgeyBudWxscHRyIH07CiAgICAgYm9vbCBtX3VzZWRP
bkFYVGhyZWFkIHsgdHJ1ZSB9OwogCkBAIC00MTEsOCArNDEzLDggQEAgcHJpdmF0ZToKICAgICAv
LyBUaGUga2V5IGlzIHRoZSBJRCBvZiB0aGUgb2JqZWN0IHRoYXQgd2lsbCBiZSByZXNvbHZlZCBp
bnRvIGFuIG1fcGVuZGluZ0FwcGVuZHMgTm9kZUNoYW5nZS4KICAgICAvLyBUaGUgdmFsdWUgaXMg
d2hldGhlciB0aGUgd3JhcHBlciBzaG91bGQgYmUgYXR0YWNoZWQgb24gdGhlIG1haW4gdGhyZWFk
IG9yIHRoZSBBWCB0aHJlYWQuCiAgICAgSGFzaE1hcDxBWElELCBBdHRhY2hXcmFwcGVyPiBtX3Vu
cmVzb2x2ZWRQZW5kaW5nQXBwZW5kczsKLSAgICAvLyBPbmx5IGFjY2Vzc2VkIG9uIHRoZSBtYWlu
IHRocmVhZC4KLSAgICBib29sIG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMgeyBmYWxzZSB9Owor
ICAgIC8vIDEtYmFzZWQgdHJlZSBsZXZlbCwgMCA9IG5vdCBjb2xsZWN0aW5nLiBPbmx5IGFjY2Vz
c2VkIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICB1bnNpZ25lZCBtX2NvbGxlY3RpbmdOb2RlQ2hh
bmdlc0F0VHJlZUxldmVsIHsgMCB9OwogCiAgICAgLy8gT25seSBhY2Nlc3NlZCBvbiBBWCB0aHJl
YWQgcmVxdWVzdGluZyBkYXRhLgogICAgIEhhc2hNYXA8QVhJRCwgUmVmPEFYSXNvbGF0ZWRPYmpl
Y3Q+PiBtX3JlYWRlclRocmVhZE5vZGVNYXA7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwLi4yZjU4OGUwNWEyZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorVGhp
cyB0ZXN0cyB0aGF0IHRyeWluZyB0byByZXRyaWV2ZSBBWCBvYmplY3RzIGRlZXBlciB0aGFuIHRo
ZSA1MTIgbGV2ZWwgYWxsb3dlZCBpbiB0aGUgRE9NIHRyZWUgZmFpbHMgZ3JhY2VmdWxseS4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgYXhDaGlsZC5jaGlsZEF0SW5kZXgo
MCkuc3RyaW5nVmFsdWUgaXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNTIGF4Q2hpbGQg
aXMgbnVsbAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CitkZWVwZXN0IGNoaWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rl
ZXAtdHJlZS5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmViYWUwNGRmOWU5ZgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0bWwK
QEAgLTAsMCArMSw0NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVz
dC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPGRpdiBpZD0iY29udGVudCIgcm9s
ZT0iZ3JvdXAiIC8+CisKKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29u
dHJvbGxlcikgeworICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHRyeWluZyB0
byByZXRyaWV2ZSBBWCBvYmplY3RzIGRlZXBlciB0aGFuIHRoZSA1MTIgbGV2ZWwgYWxsb3dlZCBp
biB0aGUgRE9NIHRyZWUgZmFpbHMgZ3JhY2VmdWxseS4iKTsKKworICAgICAgICAvLyBBZGQgYSA1
MDAgbGV2ZWxzIGRlZXAgaGllcmFyY2h5IGFuZCBlbnNzdXJlIHRoYXQgZGVlcGVzdCBBWCBvYmpl
Y3QgY2FuIGJlIHJldHJpZXZlZCBzdWNjZXNzZnVsbHkuCisgICAgICAgIGxldCBwYXJlbnQgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOworICAgICAgICBsZXQgY2hpbGQgPSBu
dWxsOworICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDUwMDsgKytpKSB7CisgICAgICAgICAg
ICBjaGlsZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgY2hp
bGQuc2V0QXR0cmlidXRlKCJyb2xlIiwgImdyb3VwIik7CisgICAgICAgICAgICBwYXJlbnQuYXBw
ZW5kQ2hpbGQoY2hpbGQpOworICAgICAgICAgICAgcGFyZW50ID0gY2hpbGQ7CisgICAgICAgIH0K
KyAgICAgICAgY2hpbGQuaWQgPSAiZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlubmVy
VGV4dCA9ICJkZWVwZXN0IGNoaWxkIjsKKyAgICAgICAgdmFyIGF4Q2hpbGQgPSBhY2Nlc3NpYmls
aXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRlZXBlc3QtY2hpbGQiKTsKKyAg
ICAgICAgaWYgKGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLnBsYXRmb3JtTmFtZSA9PSAibWFjIikK
KyAgICAgICAgICAgIHNob3VsZEJlKCJheENoaWxkLmNoaWxkQXRJbmRleCgwKS5zdHJpbmdWYWx1
ZSIsICInQVhWYWx1ZTogZGVlcGVzdCBjaGlsZCciKTsKKyAgICAgICAgZWxzZSBpZiAoYWNjZXNz
aWJpbGl0eUNvbnRyb2xsZXIucGxhdGZvcm1OYW1lID09ICJhdHNwaSIpCisgICAgICAgICAgICBz
aG91bGRCZSgiYXhDaGlsZC5zdHJpbmdWYWx1ZSIsICInQVhWYWx1ZTogZGVlcGVzdCBjaGlsZCci
KTsKKworICAgICAgICAvLyBBZGQgYW4gYWRkaXRpb25hbCAxMCBsZXZlbHMgdG8gdGhlIHRyZWUg
YW5kIGNoZWNrIHRoYXQgdHJ5aW5nIHRvIHJldHJpZXZlIHRoZSBkZWVwZXN0IEFYIG9iamVjdCBm
YWlscyBncmFjZWZ1bGx5LgorICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEwOyArK2kpIHsK
KyAgICAgICAgICAgIGNoaWxkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAg
ICAgICAgICBjaGlsZC5zZXRBdHRyaWJ1dGUoInJvbGUiLCAiZ3JvdXAiKTsKKyAgICAgICAgICAg
IHBhcmVudC5pbnNlcnRCZWZvcmUoY2hpbGQsIHBhcmVudC5maXJzdENoaWxkKTsKKyAgICAgICAg
ICAgIHBhcmVudCA9IGNoaWxkOworICAgICAgICB9CisgICAgICAgIGNoaWxkLmlkID0gImRlZXBl
c3QtZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlubmVyVGV4dCA9ICJkZWVwZXN0IGRl
ZXBlc3QgY2hpbGQiOworICAgICAgICBheENoaWxkID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIu
YWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJkZWVwZXN0LWRlZXBlc3QtY2hpbGQiKTsKKyAgICAgICAg
c2hvdWxkQmUoImF4Q2hpbGQiLCAibnVsbCIpOworICAgIH0KKzwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3NpYmls
aXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2Fj
Y2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAuLmNmNTA3NWNlMDRjZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMTEgQEAKK1RoaXMgdGVzdHMgdGhhdCB0cnlpbmcgdG8gcmV0cmlldmUgQVgg
b2JqZWN0cyBkZWVwZXIgdGhhbiB0aGUgNTEyIGxldmVsIGFsbG93ZWQgaW4gdGhlIERPTSB0cmVl
IGZhaWxzIGdyYWNlZnVsbHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNT
IGF4Q2hpbGQuc3RyaW5nVmFsdWUgaXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNTIGF4
Q2hpbGQgaXMgbnVsbAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENP
TVBMRVRFCitkZWVwZXN0IGNoaWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rl
c3RFeHBlY3RhdGlvbnMKaW5kZXggMzU1Mzc3YzgwYmNkLi5kMWRlZTRlY2IxNjMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucworKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTEyNjIsNiAr
MTI2Miw3IEBAIGFjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0Lmh0bWwg
WyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvbWFjL2xpbmUtaW5kZXgtZm9yLXRleHRtYXJrZXIuaHRt
bCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9tYWMvbWF0aG1sLWVsZW1lbnRzLmh0bWwgWyBTa2lw
IF0KIGFjY2Vzc2liaWxpdHkvbWFjL21hdGhtbC1yb290Lmh0bWwgWyBTa2lwIF0KK2FjY2Vzc2li
aWxpdHkvZGVlcC10cmVlLmh0bWwgWyBTa2lwIF0KIAogIyA8cmRhcjovL3Byb2JsZW0vNjEwNjY5
Mjk+IFsgU3RyZXNzIEdDIF0gZmxha3kgSlNDOjpFeGNlcHRpb25TY29wZTo6YXNzZXJ0Tm9FeGNl
cHRpb24gY3Jhc2ggdW5kZXIgV2ViQ29yZTo6UmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxl
cgogd2Via2l0Lm9yZy9iLzIxMTkyMyBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zl
dGNoL2FwaS9iYXNpYy9zdHJlYW0tc2FmZS1jcmVhdGlvbi5hbnkuaHRtbCBbIFBhc3MgQ3Jhc2gg
XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCA4ZjBiYTFi
ZWNiYjguLjM2ZTE2OGJmNjUxMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2lu
L1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBl
Y3RhdGlvbnMKQEAgLTk1MSw2ICs5NTEsOCBAQCB3ZWJraXQub3JnL2IvMTQ4OTY3IGFjY2Vzc2li
aWxpdHkvYXJpYS10YWJsZS1hdHRyaWJ1dGVzLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkv
YXJpYS1ncmlkLXdpdGgtYXJpYS1vd25zLXJvd3MuaHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0
eS9ncmlkLXdpdGgtYXJpYS1vd25lZC1jZWxscy5odG1sIFsgU2tpcCBdCiAKK2FjY2Vzc2liaWxp
dHkvZGVlcC10cmVlLmh0bWwgWyBTa2lwIF0KKwogIyBUT0RPIHdlYmtpdC1mb250LXNtb290aGlu
ZyBpcyBub3Qgc3VwcG9ydGVkLgogd2Via2l0Lm9yZy9iLzE0OTI0NSBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtbXVsdGljb2wvbXVsdGljb2wtYmFzaWMtMDAxLmh0bWwg
WyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xNDkyNDUgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLW11bHRpY29sL211bHRpY29sLWJhc2ljLTAwMi5odG1sIFsgU2tpcCBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460296</attachid>
            <date>2022-06-17 07:18:17 -0700</date>
            <delta_ts>2022-06-17 07:51:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241571-20220617101816.patch</filename>
            <type>text/plain</type>
            <size>11344</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSBjNDcwMGM2MWZjOTNiZmJlYjU1NmE1MTZiNTM3NjNmZWQ1N2Q2ZTI4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBNb24sIDEzIEp1biAyMDIyIDE3OjUzOjEzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVggSVRNOiBDcmFzaCBpbiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgYXQgUmVjdXJzaW9u
IDo6CiBjb20uYXBwbGUuV2ViQ29yZTogV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNvbGxlY3RO
b2RlQ2hhbmdlc0ZvclN1YnRyZWUuCiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjQxNTcxCgpUZXN0OiBhY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCgpSZXZpZXdl
ZCBieSBDaHJpcyBGbGVpemFjaCBhbmQgVHlsZXIgV2lsY29jay4KCkFkZGVkIGEgbGltaXQgZm9y
IHJlY3Vyc2l2ZSBjYWxscyB0byBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9y
U3VidHJlZS4gVGhlIGxpbWl0IGlzIG9idGFpbmVkIGZyb20gdGhlIERPTSBtYXhpbXVtIHRyZWUg
ZGVwdGguCkluIGFkZGl0aW9uLCBhZGRlZCBhIHNhbml0eSBjaGVjayBkdXJpbmcgcGFyZW50LWNo
aWxkIHRyYXZlcnNhbCwgdGhhdCBub25lIG9mIHRoZSBjaGlsZHJlbiBjYW4gYmUgZXF1YWwgdG8g
dGhlIHBhcmVudC4gVGhpcyB3aWxsIG5vdCBjb3ZlciBhbGwgcG9zc2libGUgY2lyY3VsYXIgcmVs
YXRpb25zIHRoYXQgY2FuIGNhdXNlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiwgYnV0IG1heSBjYXRj
aCBzb21lIHBhdGhvbG9naWNhbCBjYXNlcy4KCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwOgooV2ViQ29yZTo6QVhJc29sYXRlZFRy
ZWU6OmNyZWF0ZSk6CihXZWJDb3JlOjpBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2Vz
Rm9yU3VidHJlZSk6CihXZWJDb3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CiogU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaDoK
CiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sOiBBZGRlZC4KKiBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0tLQogLi4uL2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgICAg
ICAgICAgIHwgMjUgKysrKysrKystLS0KIC4uLi9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUu
aCAgICAgICAgICAgICB8ICA2ICsrLQogLi4uL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVj
dGVkLnR4dCAgICAgIHwgMTEgKysrKysKIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10
cmVlLmh0bWwgICAgICB8IDQ1ICsrKysrKysrKysrKysrKysrKysKIC4uLi9nbGliL2FjY2Vzc2li
aWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dCB8IDExICsrKysrCiBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMgfCAgMSArCiBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS93aW4vVGVzdEV4cGVjdGF0aW9ucyAgICAgfCAgMiArCiA3IGZpbGVzIGNoYW5nZWQsIDkzIGlu
c2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2
NDQgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbAogY3JlYXRlIG1vZGUg
MTAwNjQ0IExheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUt
ZXhwZWN0ZWQudHh0CgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9p
c29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCmluZGV4IDY4Njk3NDhhZjZmNS4u
MjI2NjJlOTMxOGVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCkBAIC0xMDIsNiArMTAyLDkg
QEAgUmVmPEFYSXNvbGF0ZWRUcmVlPiBBWElzb2xhdGVkVHJlZTo6Y3JlYXRlKEFYT2JqZWN0Q2Fj
aGUqIGF4T2JqZWN0Q2FjaGUpCiAgICAgaWYgKCFkb2N1bWVudC52aWV3KCktPmxheW91dENvbnRl
eHQoKS5pc0luUmVuZGVyVHJlZUxheW91dCgpICYmICFkb2N1bWVudC5pblJlbmRlclRyZWVVcGRh
dGUoKSAmJiAhZG9jdW1lbnQuaW5TdHlsZVJlY2FsYygpKQogICAgICAgICBkb2N1bWVudC51cGRh
dGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKIAorICAgIHRyZWUtPm1fbWF4VHJl
ZURlcHRoID0gZG9jdW1lbnQuc2V0dGluZ3MoKS5tYXhpbXVtSFRNTFBhcnNlckRPTVRyZWVEZXB0
aCgpOworICAgIEFTU0VSVCh0cmVlLT5tX21heFRyZWVEZXB0aCk7CisKICAgICAvLyBHZW5lcmF0
ZSB0aGUgbm9kZXMgb2YgdGhlIHRyZWUgYW5kIHNldCBpdHMgcm9vdCBhbmQgZm9jdXNlZCBvYmpl
Y3RzLgogICAgIC8vIEZvciB0aGlzLCB3ZSBuZWVkIHRoZSByb290IGFuZCBmb2N1c2VkIG9iamVj
dHMgb2YgdGhlIEFYT2JqZWN0IHRyZWUuCiAgICAgYXV0byogYXhSb290ID0gYXhPYmplY3RDYWNo
ZS0+Z2V0T3JDcmVhdGUoYXhPYmplY3RDYWNoZS0+ZG9jdW1lbnQoKS52aWV3KCkpOwpAQCAtMzEz
LDE0ICszMTYsMjQgQEAgdm9pZCBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9y
U3VidHJlZShBWENvcmVPYmplY3QmIGF4T2JqZWN0KQogICAgICAgICByZXR1cm47CiAgICAgfQog
Ci0gICAgU2V0Rm9yU2NvcGUgY29sbGVjdGluZ05vZGVDaGFuZ2VzKG1faXNDb2xsZWN0aW5nTm9k
ZUNoYW5nZXMsIHRydWUpOwotICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBlbmRzLnNldChheE9i
amVjdC5vYmplY3RJRCgpLCBBdHRhY2hXcmFwcGVyOjpPbk1haW5UaHJlYWQpOworICAgIFNldEZv
clNjb3BlIGNvbGxlY3RpbmdBdFRyZWVMZXZlbChtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJl
ZUxldmVsLCBtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVsICsgMSk7CisgICAgaWYg
KG1fY29sbGVjdGluZ05vZGVDaGFuZ2VzQXRUcmVlTGV2ZWwgPj0gbV9tYXhUcmVlRGVwdGgpCisg
ICAgICAgIHJldHVybjsKIAorICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBlbmRzLnNldChheE9i
amVjdC5vYmplY3RJRCgpLCBBdHRhY2hXcmFwcGVyOjpPbk1haW5UaHJlYWQpOwogICAgIGF1dG8g
YXhDaGlsZHJlbkNvcHkgPSBheE9iamVjdC5jaGlsZHJlbigpOwotICAgIGF1dG8gYXhDaGlsZHJl
bklEcyA9IGF4Q2hpbGRyZW5Db3B5Lm1hcChbJl0oYXV0byYgYXhDaGlsZCkgeworICAgIFZlY3Rv
cjxBWElEPiBheENoaWxkcmVuSURzOworICAgIGF4Q2hpbGRyZW5JRHMucmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eShheENoaWxkcmVuQ29weS5zaXplKCkpOworICAgIGZvciAoY29uc3QgYXV0byYgYXhD
aGlsZCA6IGF4Q2hpbGRyZW5Db3B5KSB7CisgICAgICAgIGlmICghYXhDaGlsZCB8fCBheENoaWxk
LmdldCgpID09ICZheE9iamVjdCkgeworICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCisgICAgICAgIGF4Q2hpbGRyZW5J
RHMudW5jaGVja2VkQXBwZW5kKGF4Q2hpbGQtPm9iamVjdElEKCkpOwogICAgICAgICBjb2xsZWN0
Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlKCpheENoaWxkKTsKLSAgICAgICAgcmV0dXJuIGF4Q2hpbGQt
Pm9iamVjdElEKCk7Ci0gICAgfSk7CisgICAgfQorICAgIGF4Q2hpbGRyZW5JRHMuc2hyaW5rVG9G
aXQoKTsKIAogICAgIC8vIFVwZGF0ZSB0aGUgbV9ub2RlTWFwLgogICAgIGF1dG8qIGF4UGFyZW50
ID0gYXhPYmplY3QucGFyZW50T2JqZWN0VW5pZ25vcmVkKCk7CkBAIC0zMzYsNyArMzQ5LDcgQEAg
dm9pZCBBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZShBWENvcmVPYmplY3QmIGF4T2JqZWN0KQog
ICAgIC8vIElmIHdlIHVwZGF0ZSBhIG5vZGUgYXMgdGhlIHJlc3VsdCBvZiBzb21lIHNpZGUgZWZm
ZWN0IHdoaWxlIGNvbGxlY3Rpbmcgbm9kZSBjaGFuZ2VzIChlLmcuIGEgcm9sZSBjaGFuZ2UgZnJv
bQogICAgIC8vIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OnVwZGF0ZVJvbGVBZnRlckNoaWxk
cmVuQ3JlYXRpb24pLCBxdWV1ZSB0aGUgYXBwZW5kIHVwIHRvIGJlIHJlc29sdmVkIHdpdGggdGhl
IHJlc3QKICAgICAvLyBvZiB0aGUgY29sbGVjdGVkIGNoYW5nZXMuIFRoaXMgcHJldmVudHMgdXMg
ZnJvbSBjcmVhdGluZyB0d28gbm9kZSBjaGFuZ2VzIGZvciB0aGUgc2FtZSBvYmplY3QuCi0gICAg
aWYgKG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMpIHsKKyAgICBpZiAoaXNDb2xsZWN0aW5nTm9k
ZUNoYW5nZXMoKSkgewogICAgICAgICBtX3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kcy5zZXQoYXhP
YmplY3Qub2JqZWN0SUQoKSwgQXR0YWNoV3JhcHBlcjo6T25BWFRocmVhZCk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaAppbmRleCBhZGZjMjNhMTE4NjQuLjI0OTdi
NTJmYjczYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRl
ZHRyZWUvQVhJc29sYXRlZFRyZWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCkBAIC0zODcsMTIgKzM4NywxNCBAQCBwcml2
YXRlOgogICAgIGVudW0gY2xhc3MgQXR0YWNoV3JhcHBlciA6IGJvb2wgeyBPbk1haW5UaHJlYWQs
IE9uQVhUaHJlYWQgfTsKICAgICBzdGQ6Om9wdGlvbmFsPE5vZGVDaGFuZ2U+IG5vZGVDaGFuZ2VG
b3JPYmplY3QoQVhDb3JlT2JqZWN0JiwgQXR0YWNoV3JhcHBlciA9IEF0dGFjaFdyYXBwZXI6Ok9u
TWFpblRocmVhZCk7CiAgICAgdm9pZCBjb2xsZWN0Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlKEFYQ29y
ZU9iamVjdCYpOworICAgIGJvb2wgaXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMoKSBjb25zdCB7IHJl
dHVybiBtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVsID4gMDsgfQogICAgIHZvaWQg
cXVldWVDaGFuZ2UoY29uc3QgTm9kZUNoYW5nZSYpIFdURl9SRVFVSVJFU19MT0NLKG1fY2hhbmdl
TG9nTG9jayk7CiAgICAgdm9pZCBxdWV1ZVJlbW92YWxzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwog
ICAgIHZvaWQgcXVldWVSZW1vdmFsc0xvY2tlZChjb25zdCBWZWN0b3I8QVhJRD4mKSBXVEZfUkVR
VUlSRVNfTE9DSyhtX2NoYW5nZUxvZ0xvY2spOwogICAgIHZvaWQgcXVldWVSZW1vdmFsc0FuZFVu
cmVzb2x2ZWRDaGFuZ2VzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwogCiAgICAgQVhJc29sYXRlZFRy
ZWVJRCBtX3RyZWVJRDsKKyAgICB1bnNpZ25lZCBtX21heFRyZWVEZXB0aCB7IDAgfTsKICAgICBB
WE9iamVjdENhY2hlKiBtX2F4T2JqZWN0Q2FjaGUgeyBudWxscHRyIH07CiAgICAgYm9vbCBtX3Vz
ZWRPbkFYVGhyZWFkIHsgdHJ1ZSB9OwogCkBAIC00MTEsOCArNDEzLDggQEAgcHJpdmF0ZToKICAg
ICAvLyBUaGUga2V5IGlzIHRoZSBJRCBvZiB0aGUgb2JqZWN0IHRoYXQgd2lsbCBiZSByZXNvbHZl
ZCBpbnRvIGFuIG1fcGVuZGluZ0FwcGVuZHMgTm9kZUNoYW5nZS4KICAgICAvLyBUaGUgdmFsdWUg
aXMgd2hldGhlciB0aGUgd3JhcHBlciBzaG91bGQgYmUgYXR0YWNoZWQgb24gdGhlIG1haW4gdGhy
ZWFkIG9yIHRoZSBBWCB0aHJlYWQuCiAgICAgSGFzaE1hcDxBWElELCBBdHRhY2hXcmFwcGVyPiBt
X3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kczsKLSAgICAvLyBPbmx5IGFjY2Vzc2VkIG9uIHRoZSBt
YWluIHRocmVhZC4KLSAgICBib29sIG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMgeyBmYWxzZSB9
OworICAgIC8vIDEtYmFzZWQgdHJlZSBsZXZlbCwgMCA9IG5vdCBjb2xsZWN0aW5nLiBPbmx5IGFj
Y2Vzc2VkIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICB1bnNpZ25lZCBtX2NvbGxlY3RpbmdOb2Rl
Q2hhbmdlc0F0VHJlZUxldmVsIHsgMCB9OwogCiAgICAgLy8gT25seSBhY2Nlc3NlZCBvbiBBWCB0
aHJlYWQgcmVxdWVzdGluZyBkYXRhLgogICAgIEhhc2hNYXA8QVhJRCwgUmVmPEFYSXNvbGF0ZWRP
YmplY3Q+PiBtX3JlYWRlclRocmVhZE5vZGVNYXA7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwLi4yZjU4OGUwNWEyZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAor
VGhpcyB0ZXN0cyB0aGF0IHRyeWluZyB0byByZXRyaWV2ZSBBWCBvYmplY3RzIGRlZXBlciB0aGFu
IHRoZSA1MTIgbGV2ZWwgYWxsb3dlZCBpbiB0aGUgRE9NIHRyZWUgZmFpbHMgZ3JhY2VmdWxseS4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgYXhDaGlsZC5jaGlsZEF0SW5k
ZXgoMCkuc3RyaW5nVmFsdWUgaXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNTIGF4Q2hp
bGQgaXMgbnVsbAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCitkZWVwZXN0IGNoaWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2RlZXAtdHJlZS5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmViYWUwNGRmOWU5Zgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0
bWwKQEAgLTAsMCArMSw0NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMt
dGVzdC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPGRpdiBpZD0iY29udGVudCIg
cm9sZT0iZ3JvdXAiIC8+CisKKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5
Q29udHJvbGxlcikgeworICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHRyeWlu
ZyB0byByZXRyaWV2ZSBBWCBvYmplY3RzIGRlZXBlciB0aGFuIHRoZSA1MTIgbGV2ZWwgYWxsb3dl
ZCBpbiB0aGUgRE9NIHRyZWUgZmFpbHMgZ3JhY2VmdWxseS4iKTsKKworICAgICAgICAvLyBBZGQg
YSA1MDAgbGV2ZWxzIGRlZXAgaGllcmFyY2h5IGFuZCBlbnNzdXJlIHRoYXQgZGVlcGVzdCBBWCBv
YmplY3QgY2FuIGJlIHJldHJpZXZlZCBzdWNjZXNzZnVsbHkuCisgICAgICAgIGxldCBwYXJlbnQg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOworICAgICAgICBsZXQgY2hpbGQg
PSBudWxsOworICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDUwMDsgKytpKSB7CisgICAgICAg
ICAgICBjaGlsZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAg
Y2hpbGQuc2V0QXR0cmlidXRlKCJyb2xlIiwgImdyb3VwIik7CisgICAgICAgICAgICBwYXJlbnQu
YXBwZW5kQ2hpbGQoY2hpbGQpOworICAgICAgICAgICAgcGFyZW50ID0gY2hpbGQ7CisgICAgICAg
IH0KKyAgICAgICAgY2hpbGQuaWQgPSAiZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlu
bmVyVGV4dCA9ICJkZWVwZXN0IGNoaWxkIjsKKyAgICAgICAgdmFyIGF4Q2hpbGQgPSBhY2Nlc3Np
YmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRlZXBlc3QtY2hpbGQiKTsK
KyAgICAgICAgaWYgKGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLnBsYXRmb3JtTmFtZSA9PSAibWFj
IikKKyAgICAgICAgICAgIHNob3VsZEJlKCJheENoaWxkLmNoaWxkQXRJbmRleCgwKS5zdHJpbmdW
YWx1ZSIsICInQVhWYWx1ZTogZGVlcGVzdCBjaGlsZCciKTsKKyAgICAgICAgZWxzZSBpZiAoYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIucGxhdGZvcm1OYW1lID09ICJhdHNwaSIpCisgICAgICAgICAg
ICBzaG91bGRCZSgiYXhDaGlsZC5zdHJpbmdWYWx1ZSIsICInQVhWYWx1ZTogZGVlcGVzdCBjaGls
ZCciKTsKKworICAgICAgICAvLyBBZGQgYW4gYWRkaXRpb25hbCAxMCBsZXZlbHMgdG8gdGhlIHRy
ZWUgYW5kIGNoZWNrIHRoYXQgdHJ5aW5nIHRvIHJldHJpZXZlIHRoZSBkZWVwZXN0IEFYIG9iamVj
dCBmYWlscyBncmFjZWZ1bGx5LgorICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEwOyArK2kp
IHsKKyAgICAgICAgICAgIGNoaWxkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Cisg
ICAgICAgICAgICBjaGlsZC5zZXRBdHRyaWJ1dGUoInJvbGUiLCAiZ3JvdXAiKTsKKyAgICAgICAg
ICAgIHBhcmVudC5pbnNlcnRCZWZvcmUoY2hpbGQsIHBhcmVudC5maXJzdENoaWxkKTsKKyAgICAg
ICAgICAgIHBhcmVudCA9IGNoaWxkOworICAgICAgICB9CisgICAgICAgIGNoaWxkLmlkID0gImRl
ZXBlc3QtZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlubmVyVGV4dCA9ICJkZWVwZXN0
IGRlZXBlc3QgY2hpbGQiOworICAgICAgICBheENoaWxkID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJkZWVwZXN0LWRlZXBlc3QtY2hpbGQiKTsKKyAgICAg
ICAgc2hvdWxkQmUoImF4Q2hpbGQiLCAibnVsbCIpOworICAgIH0KKzwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3Np
YmlsaXR5L2RlZXAtdHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGli
L2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAuLmNmNTA3NWNlMDRjZQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMTEgQEAKK1RoaXMgdGVzdHMgdGhhdCB0cnlpbmcgdG8gcmV0cmlldmUg
QVggb2JqZWN0cyBkZWVwZXIgdGhhbiB0aGUgNTEyIGxldmVsIGFsbG93ZWQgaW4gdGhlIERPTSB0
cmVlIGZhaWxzIGdyYWNlZnVsbHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTIGF4Q2hpbGQuc3RyaW5nVmFsdWUgaXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNT
IGF4Q2hpbGQgaXMgbnVsbAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCitkZWVwZXN0IGNoaWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sx
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMzU1Mzc3YzgwYmNkLi5kMWRlZTRlY2IxNjMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucworKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTEyNjIs
NiArMTI2Miw3IEBAIGFjY2Vzc2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0Lmh0
bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvbWFjL2xpbmUtaW5kZXgtZm9yLXRleHRtYXJrZXIu
aHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9tYWMvbWF0aG1sLWVsZW1lbnRzLmh0bWwgWyBT
a2lwIF0KIGFjY2Vzc2liaWxpdHkvbWFjL21hdGhtbC1yb290Lmh0bWwgWyBTa2lwIF0KK2FjY2Vz
c2liaWxpdHkvZGVlcC10cmVlLmh0bWwgWyBTa2lwIF0KIAogIyA8cmRhcjovL3Byb2JsZW0vNjEw
NjY5Mjk+IFsgU3RyZXNzIEdDIF0gZmxha3kgSlNDOjpFeGNlcHRpb25TY29wZTo6YXNzZXJ0Tm9F
eGNlcHRpb24gY3Jhc2ggdW5kZXIgV2ViQ29yZTo6UmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJv
bGxlcgogd2Via2l0Lm9yZy9iLzIxMTkyMyBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZldGNoL2FwaS9iYXNpYy9zdHJlYW0tc2FmZS1jcmVhdGlvbi5hbnkuaHRtbCBbIFBhc3MgQ3Jh
c2ggXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCA4ZjBi
YTFiZWNiYjguLjM2ZTE2OGJmNjUxMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RF
eHBlY3RhdGlvbnMKQEAgLTk1MSw2ICs5NTEsOCBAQCB3ZWJraXQub3JnL2IvMTQ4OTY3IGFjY2Vz
c2liaWxpdHkvYXJpYS10YWJsZS1hdHRyaWJ1dGVzLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxp
dHkvYXJpYS1ncmlkLXdpdGgtYXJpYS1vd25zLXJvd3MuaHRtbCBbIFNraXAgXQogYWNjZXNzaWJp
bGl0eS9ncmlkLXdpdGgtYXJpYS1vd25lZC1jZWxscy5odG1sIFsgU2tpcCBdCiAKK2FjY2Vzc2li
aWxpdHkvZGVlcC10cmVlLmh0bWwgWyBTa2lwIF0KKwogIyBUT0RPIHdlYmtpdC1mb250LXNtb290
aGluZyBpcyBub3Qgc3VwcG9ydGVkLgogd2Via2l0Lm9yZy9iLzE0OTI0NSBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtbXVsdGljb2wvbXVsdGljb2wtYmFzaWMtMDAxLmh0
bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xNDkyNDUgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLW11bHRpY29sL211bHRpY29sLWJhc2ljLTAwMi5odG1sIFsgU2tpcCBd
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460297</attachid>
            <date>2022-06-17 07:51:46 -0700</date>
            <delta_ts>2022-06-17 08:45:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241571-20220617105145.patch</filename>
            <type>text/plain</type>
            <size>11326</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSA3MDhlNDEwYmY1YjExMmEzZGViZDY1OWExNDgzYTAxYjU4ZGFhMTFmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBNb24sIDEzIEp1biAyMDIyIDE3OjUzOjEzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVggSVRNOiBDcmFzaCBpbiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgYXQgUmVjdXJzaW9u
IDo6CiBjb20uYXBwbGUuV2ViQ29yZTogV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNvbGxlY3RO
b2RlQ2hhbmdlc0ZvclN1YnRyZWUuCiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjQxNTcxCgpUZXN0OiBhY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sCgpSZXZpZXdl
ZCBieSBDaHJpcyBGbGVpemFjaC4KCkFkZGVkIGEgbGltaXQgZm9yIHJlY3Vyc2l2ZSBjYWxscyB0
byBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZS4gVGhlIGxpbWl0
IGlzIG9idGFpbmVkIGZyb20gdGhlIERPTSBtYXhpbXVtIHRyZWUgZGVwdGguCkluIGFkZGl0aW9u
LCBhZGRlZCBhIHNhbml0eSBjaGVjayBkdXJpbmcgcGFyZW50LWNoaWxkIHRyYXZlcnNhbCwgdGhh
dCBub25lIG9mIHRoZSBjaGlsZHJlbiBjYW4gYmUgZXF1YWwgdG8gdGhlIHBhcmVudC4gVGhpcyB3
aWxsIG5vdCBjb3ZlciBhbGwgcG9zc2libGUgY2lyY3VsYXIgcmVsYXRpb25zIHRoYXQgY2FuIGNh
dXNlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiwgYnV0IG1heSBjYXRjaCBzb21lIHBhdGhvbG9naWNh
bCBjYXNlcy4KCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuY3BwOgooV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmNyZWF0ZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZSk6CihXZWJD
b3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaDoKCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sOiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9nbGliL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0tLQog
Li4uL2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgICAgICAgICAgIHwgMjUgKysrKysr
KystLS0KIC4uLi9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaCAgICAgICAgICAgICB8ICA2
ICsrLQogLi4uL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4cGVjdGVkLnR4dCAgICAgIHwgMTEg
KysrKysKIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0bWwgICAgICB8IDQ1
ICsrKysrKysrKysrKysrKysrKysKIC4uLi9nbGliL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLWV4
cGVjdGVkLnR4dCB8IDExICsrKysrCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RF
eHBlY3RhdGlvbnMgfCAgMSArCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0
aW9ucyAgICAgfCAgMiArCiA3IGZpbGVzIGNoYW5nZWQsIDkzIGluc2VydGlvbnMoKyksIDggZGVs
ZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
ZWVwLXRyZWUtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3Rz
L3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0CgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUv
QVhJc29sYXRlZFRyZWUuY3BwCmluZGV4IDY4Njk3NDhhZjZmNS4uMjI2NjJlOTMxOGVmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xh
dGVkVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRy
ZWUvQVhJc29sYXRlZFRyZWUuY3BwCkBAIC0xMDIsNiArMTAyLDkgQEAgUmVmPEFYSXNvbGF0ZWRU
cmVlPiBBWElzb2xhdGVkVHJlZTo6Y3JlYXRlKEFYT2JqZWN0Q2FjaGUqIGF4T2JqZWN0Q2FjaGUp
CiAgICAgaWYgKCFkb2N1bWVudC52aWV3KCktPmxheW91dENvbnRleHQoKS5pc0luUmVuZGVyVHJl
ZUxheW91dCgpICYmICFkb2N1bWVudC5pblJlbmRlclRyZWVVcGRhdGUoKSAmJiAhZG9jdW1lbnQu
aW5TdHlsZVJlY2FsYygpKQogICAgICAgICBkb2N1bWVudC51cGRhdGVMYXlvdXRJZ25vcmVQZW5k
aW5nU3R5bGVzaGVldHMoKTsKIAorICAgIHRyZWUtPm1fbWF4VHJlZURlcHRoID0gZG9jdW1lbnQu
c2V0dGluZ3MoKS5tYXhpbXVtSFRNTFBhcnNlckRPTVRyZWVEZXB0aCgpOworICAgIEFTU0VSVCh0
cmVlLT5tX21heFRyZWVEZXB0aCk7CisKICAgICAvLyBHZW5lcmF0ZSB0aGUgbm9kZXMgb2YgdGhl
IHRyZWUgYW5kIHNldCBpdHMgcm9vdCBhbmQgZm9jdXNlZCBvYmplY3RzLgogICAgIC8vIEZvciB0
aGlzLCB3ZSBuZWVkIHRoZSByb290IGFuZCBmb2N1c2VkIG9iamVjdHMgb2YgdGhlIEFYT2JqZWN0
IHRyZWUuCiAgICAgYXV0byogYXhSb290ID0gYXhPYmplY3RDYWNoZS0+Z2V0T3JDcmVhdGUoYXhP
YmplY3RDYWNoZS0+ZG9jdW1lbnQoKS52aWV3KCkpOwpAQCAtMzEzLDE0ICszMTYsMjQgQEAgdm9p
ZCBBWElzb2xhdGVkVHJlZTo6Y29sbGVjdE5vZGVDaGFuZ2VzRm9yU3VidHJlZShBWENvcmVPYmpl
Y3QmIGF4T2JqZWN0KQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU2V0Rm9yU2NvcGUg
Y29sbGVjdGluZ05vZGVDaGFuZ2VzKG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMsIHRydWUpOwot
ICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBlbmRzLnNldChheE9iamVjdC5vYmplY3RJRCgpLCBB
dHRhY2hXcmFwcGVyOjpPbk1haW5UaHJlYWQpOworICAgIFNldEZvclNjb3BlIGNvbGxlY3RpbmdB
dFRyZWVMZXZlbChtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVsLCBtX2NvbGxlY3Rp
bmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVsICsgMSk7CisgICAgaWYgKG1fY29sbGVjdGluZ05vZGVD
aGFuZ2VzQXRUcmVlTGV2ZWwgPj0gbV9tYXhUcmVlRGVwdGgpCisgICAgICAgIHJldHVybjsKIAor
ICAgIG1fdW5yZXNvbHZlZFBlbmRpbmdBcHBlbmRzLnNldChheE9iamVjdC5vYmplY3RJRCgpLCBB
dHRhY2hXcmFwcGVyOjpPbk1haW5UaHJlYWQpOwogICAgIGF1dG8gYXhDaGlsZHJlbkNvcHkgPSBh
eE9iamVjdC5jaGlsZHJlbigpOwotICAgIGF1dG8gYXhDaGlsZHJlbklEcyA9IGF4Q2hpbGRyZW5D
b3B5Lm1hcChbJl0oYXV0byYgYXhDaGlsZCkgeworICAgIFZlY3RvcjxBWElEPiBheENoaWxkcmVu
SURzOworICAgIGF4Q2hpbGRyZW5JRHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShheENoaWxkcmVu
Q29weS5zaXplKCkpOworICAgIGZvciAoY29uc3QgYXV0byYgYXhDaGlsZCA6IGF4Q2hpbGRyZW5D
b3B5KSB7CisgICAgICAgIGlmICghYXhDaGlsZCB8fCBheENoaWxkLmdldCgpID09ICZheE9iamVj
dCkgeworICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICBjb250
aW51ZTsKKyAgICAgICAgfQorCisgICAgICAgIGF4Q2hpbGRyZW5JRHMudW5jaGVja2VkQXBwZW5k
KGF4Q2hpbGQtPm9iamVjdElEKCkpOwogICAgICAgICBjb2xsZWN0Tm9kZUNoYW5nZXNGb3JTdWJ0
cmVlKCpheENoaWxkKTsKLSAgICAgICAgcmV0dXJuIGF4Q2hpbGQtPm9iamVjdElEKCk7Ci0gICAg
fSk7CisgICAgfQorICAgIGF4Q2hpbGRyZW5JRHMuc2hyaW5rVG9GaXQoKTsKIAogICAgIC8vIFVw
ZGF0ZSB0aGUgbV9ub2RlTWFwLgogICAgIGF1dG8qIGF4UGFyZW50ID0gYXhPYmplY3QucGFyZW50
T2JqZWN0VW5pZ25vcmVkKCk7CkBAIC0zMzYsNyArMzQ5LDcgQEAgdm9pZCBBWElzb2xhdGVkVHJl
ZTo6dXBkYXRlTm9kZShBWENvcmVPYmplY3QmIGF4T2JqZWN0KQogICAgIC8vIElmIHdlIHVwZGF0
ZSBhIG5vZGUgYXMgdGhlIHJlc3VsdCBvZiBzb21lIHNpZGUgZWZmZWN0IHdoaWxlIGNvbGxlY3Rp
bmcgbm9kZSBjaGFuZ2VzIChlLmcuIGEgcm9sZSBjaGFuZ2UgZnJvbQogICAgIC8vIEFjY2Vzc2li
aWxpdHlSZW5kZXJPYmplY3Q6OnVwZGF0ZVJvbGVBZnRlckNoaWxkcmVuQ3JlYXRpb24pLCBxdWV1
ZSB0aGUgYXBwZW5kIHVwIHRvIGJlIHJlc29sdmVkIHdpdGggdGhlIHJlc3QKICAgICAvLyBvZiB0
aGUgY29sbGVjdGVkIGNoYW5nZXMuIFRoaXMgcHJldmVudHMgdXMgZnJvbSBjcmVhdGluZyB0d28g
bm9kZSBjaGFuZ2VzIGZvciB0aGUgc2FtZSBvYmplY3QuCi0gICAgaWYgKG1faXNDb2xsZWN0aW5n
Tm9kZUNoYW5nZXMpIHsKKyAgICBpZiAoaXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMoKSkgewogICAg
ICAgICBtX3VucmVzb2x2ZWRQZW5kaW5nQXBwZW5kcy5zZXQoYXhPYmplY3Qub2JqZWN0SUQoKSwg
QXR0YWNoV3JhcHBlcjo6T25BWFRocmVhZCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xh
dGVkVHJlZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJ
c29sYXRlZFRyZWUuaAppbmRleCBhZGZjMjNhMTE4NjQuLjI0OTdiNTJmYjczYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRy
ZWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElz
b2xhdGVkVHJlZS5oCkBAIC0zODcsMTIgKzM4NywxNCBAQCBwcml2YXRlOgogICAgIGVudW0gY2xh
c3MgQXR0YWNoV3JhcHBlciA6IGJvb2wgeyBPbk1haW5UaHJlYWQsIE9uQVhUaHJlYWQgfTsKICAg
ICBzdGQ6Om9wdGlvbmFsPE5vZGVDaGFuZ2U+IG5vZGVDaGFuZ2VGb3JPYmplY3QoQVhDb3JlT2Jq
ZWN0JiwgQXR0YWNoV3JhcHBlciA9IEF0dGFjaFdyYXBwZXI6Ok9uTWFpblRocmVhZCk7CiAgICAg
dm9pZCBjb2xsZWN0Tm9kZUNoYW5nZXNGb3JTdWJ0cmVlKEFYQ29yZU9iamVjdCYpOworICAgIGJv
b2wgaXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMoKSBjb25zdCB7IHJldHVybiBtX2NvbGxlY3RpbmdO
b2RlQ2hhbmdlc0F0VHJlZUxldmVsID4gMDsgfQogICAgIHZvaWQgcXVldWVDaGFuZ2UoY29uc3Qg
Tm9kZUNoYW5nZSYpIFdURl9SRVFVSVJFU19MT0NLKG1fY2hhbmdlTG9nTG9jayk7CiAgICAgdm9p
ZCBxdWV1ZVJlbW92YWxzKGNvbnN0IFZlY3RvcjxBWElEPiYpOwogICAgIHZvaWQgcXVldWVSZW1v
dmFsc0xvY2tlZChjb25zdCBWZWN0b3I8QVhJRD4mKSBXVEZfUkVRVUlSRVNfTE9DSyhtX2NoYW5n
ZUxvZ0xvY2spOwogICAgIHZvaWQgcXVldWVSZW1vdmFsc0FuZFVucmVzb2x2ZWRDaGFuZ2VzKGNv
bnN0IFZlY3RvcjxBWElEPiYpOwogCiAgICAgQVhJc29sYXRlZFRyZWVJRCBtX3RyZWVJRDsKKyAg
ICB1bnNpZ25lZCBtX21heFRyZWVEZXB0aCB7IDAgfTsKICAgICBBWE9iamVjdENhY2hlKiBtX2F4
T2JqZWN0Q2FjaGUgeyBudWxscHRyIH07CiAgICAgYm9vbCBtX3VzZWRPbkFYVGhyZWFkIHsgdHJ1
ZSB9OwogCkBAIC00MTEsOCArNDEzLDggQEAgcHJpdmF0ZToKICAgICAvLyBUaGUga2V5IGlzIHRo
ZSBJRCBvZiB0aGUgb2JqZWN0IHRoYXQgd2lsbCBiZSByZXNvbHZlZCBpbnRvIGFuIG1fcGVuZGlu
Z0FwcGVuZHMgTm9kZUNoYW5nZS4KICAgICAvLyBUaGUgdmFsdWUgaXMgd2hldGhlciB0aGUgd3Jh
cHBlciBzaG91bGQgYmUgYXR0YWNoZWQgb24gdGhlIG1haW4gdGhyZWFkIG9yIHRoZSBBWCB0aHJl
YWQuCiAgICAgSGFzaE1hcDxBWElELCBBdHRhY2hXcmFwcGVyPiBtX3VucmVzb2x2ZWRQZW5kaW5n
QXBwZW5kczsKLSAgICAvLyBPbmx5IGFjY2Vzc2VkIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICBi
b29sIG1faXNDb2xsZWN0aW5nTm9kZUNoYW5nZXMgeyBmYWxzZSB9OworICAgIC8vIDEtYmFzZWQg
dHJlZSBsZXZlbCwgMCA9IG5vdCBjb2xsZWN0aW5nLiBPbmx5IGFjY2Vzc2VkIG9uIHRoZSBtYWlu
IHRocmVhZC4KKyAgICB1bnNpZ25lZCBtX2NvbGxlY3RpbmdOb2RlQ2hhbmdlc0F0VHJlZUxldmVs
IHsgMCB9OwogCiAgICAgLy8gT25seSBhY2Nlc3NlZCBvbiBBWCB0aHJlYWQgcmVxdWVzdGluZyBk
YXRhLgogICAgIEhhc2hNYXA8QVhJRCwgUmVmPEFYSXNvbGF0ZWRPYmplY3Q+PiBtX3JlYWRlclRo
cmVhZE5vZGVNYXA7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAt
dHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4yZjU4
OGUwNWEyZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rl
ZXAtdHJlZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorVGhpcyB0ZXN0cyB0aGF0IHRy
eWluZyB0byByZXRyaWV2ZSBBWCBvYmplY3RzIGRlZXBlciB0aGFuIHRoZSA1MTIgbGV2ZWwgYWxs
b3dlZCBpbiB0aGUgRE9NIHRyZWUgZmFpbHMgZ3JhY2VmdWxseS4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCisKK1BBU1MgYXhDaGlsZC5jaGlsZEF0SW5kZXgoMCkuc3RyaW5nVmFsdWUg
aXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNTIGF4Q2hpbGQgaXMgbnVsbAorUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitkZWVwZXN0IGNoaWxk
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS5odG1sIGIv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmViYWUwNGRmOWU5ZgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0bWwKQEAgLTAsMCArMSw0NSBA
QAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+
Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keT4KKworPGRpdiBpZD0iY29udGVudCIgcm9sZT0iZ3JvdXAiIC8+CisK
KzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAg
ICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHRyeWluZyB0byByZXRyaWV2ZSBBWCBv
YmplY3RzIGRlZXBlciB0aGFuIHRoZSA1MTIgbGV2ZWwgYWxsb3dlZCBpbiB0aGUgRE9NIHRyZWUg
ZmFpbHMgZ3JhY2VmdWxseS4iKTsKKworICAgICAgICAvLyBBZGQgYSA1MDAgbGV2ZWxzIGRlZXAg
aGllcmFyY2h5IGFuZCBlbnNzdXJlIHRoYXQgZGVlcGVzdCBBWCBvYmplY3QgY2FuIGJlIHJldHJp
ZXZlZCBzdWNjZXNzZnVsbHkuCisgICAgICAgIGxldCBwYXJlbnQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiY29udGVudCIpOworICAgICAgICBsZXQgY2hpbGQgPSBudWxsOworICAgICAgICBm
b3IgKGxldCBpID0gMDsgaSA8IDUwMDsgKytpKSB7CisgICAgICAgICAgICBjaGlsZCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgY2hpbGQuc2V0QXR0cmlidXRl
KCJyb2xlIiwgImdyb3VwIik7CisgICAgICAgICAgICBwYXJlbnQuYXBwZW5kQ2hpbGQoY2hpbGQp
OworICAgICAgICAgICAgcGFyZW50ID0gY2hpbGQ7CisgICAgICAgIH0KKyAgICAgICAgY2hpbGQu
aWQgPSAiZGVlcGVzdC1jaGlsZCI7CisgICAgICAgIGNoaWxkLmlubmVyVGV4dCA9ICJkZWVwZXN0
IGNoaWxkIjsKKyAgICAgICAgdmFyIGF4Q2hpbGQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5h
Y2Nlc3NpYmxlRWxlbWVudEJ5SWQoImRlZXBlc3QtY2hpbGQiKTsKKyAgICAgICAgaWYgKGFjY2Vz
c2liaWxpdHlDb250cm9sbGVyLnBsYXRmb3JtTmFtZSA9PSAibWFjIikKKyAgICAgICAgICAgIHNo
b3VsZEJlKCJheENoaWxkLmNoaWxkQXRJbmRleCgwKS5zdHJpbmdWYWx1ZSIsICInQVhWYWx1ZTog
ZGVlcGVzdCBjaGlsZCciKTsKKyAgICAgICAgZWxzZSBpZiAoYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIucGxhdGZvcm1OYW1lID09ICJhdHNwaSIpCisgICAgICAgICAgICBzaG91bGRCZSgiYXhDaGls
ZC5zdHJpbmdWYWx1ZSIsICInQVhWYWx1ZTogZGVlcGVzdCBjaGlsZCciKTsKKworICAgICAgICAv
LyBBZGQgYW4gYWRkaXRpb25hbCAxMCBsZXZlbHMgdG8gdGhlIHRyZWUgYW5kIGNoZWNrIHRoYXQg
dHJ5aW5nIHRvIHJldHJpZXZlIHRoZSBkZWVwZXN0IEFYIG9iamVjdCBmYWlscyBncmFjZWZ1bGx5
LgorICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEwOyArK2kpIHsKKyAgICAgICAgICAgIGNo
aWxkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICBjaGlsZC5z
ZXRBdHRyaWJ1dGUoInJvbGUiLCAiZ3JvdXAiKTsKKyAgICAgICAgICAgIHBhcmVudC5pbnNlcnRC
ZWZvcmUoY2hpbGQsIHBhcmVudC5maXJzdENoaWxkKTsKKyAgICAgICAgICAgIHBhcmVudCA9IGNo
aWxkOworICAgICAgICB9CisgICAgICAgIGNoaWxkLmlkID0gImRlZXBlc3QtZGVlcGVzdC1jaGls
ZCI7CisgICAgICAgIGNoaWxkLmlubmVyVGV4dCA9ICJkZWVwZXN0IGRlZXBlc3QgY2hpbGQiOwor
ICAgICAgICBheENoaWxkID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1l
bnRCeUlkKCJkZWVwZXN0LWRlZXBlc3QtY2hpbGQiKTsKKyAgICAgICAgc2hvdWxkQmUoImF4Q2hp
bGQiLCAibnVsbCIpOworICAgIH0KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L2RlZXAtdHJlZS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGVl
cC10cmVlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAuLmNmNTA3NWNlMDRjZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2dsaWIvYWNjZXNzaWJpbGl0eS9kZWVwLXRyZWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEg
QEAKK1RoaXMgdGVzdHMgdGhhdCB0cnlpbmcgdG8gcmV0cmlldmUgQVggb2JqZWN0cyBkZWVwZXIg
dGhhbiB0aGUgNTEyIGxldmVsIGFsbG93ZWQgaW4gdGhlIERPTSB0cmVlIGZhaWxzIGdyYWNlZnVs
bHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGF4Q2hpbGQuc3RyaW5n
VmFsdWUgaXMgJ0FYVmFsdWU6IGRlZXBlc3QgY2hpbGQnCitQQVNTIGF4Q2hpbGQgaXMgbnVsbAor
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitkZWVwZXN0
IGNoaWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMK
aW5kZXggMzU1Mzc3YzgwYmNkLi5kMWRlZTRlY2IxNjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTEyNjIsNiArMTI2Miw3IEBAIGFjY2Vz
c2liaWxpdHkvZWxlbWVudC1saW5lLXJlY3RzLWFuZC10ZXh0Lmh0bWwgWyBTa2lwIF0KIGFjY2Vz
c2liaWxpdHkvbWFjL2xpbmUtaW5kZXgtZm9yLXRleHRtYXJrZXIuaHRtbCBbIFNraXAgXQogYWNj
ZXNzaWJpbGl0eS9tYWMvbWF0aG1sLWVsZW1lbnRzLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxp
dHkvbWFjL21hdGhtbC1yb290Lmh0bWwgWyBTa2lwIF0KK2FjY2Vzc2liaWxpdHkvZGVlcC10cmVl
Lmh0bWwgWyBTa2lwIF0KIAogIyA8cmRhcjovL3Byb2JsZW0vNjEwNjY5Mjk+IFsgU3RyZXNzIEdD
IF0gZmxha3kgSlNDOjpFeGNlcHRpb25TY29wZTo6YXNzZXJ0Tm9FeGNlcHRpb24gY3Jhc2ggdW5k
ZXIgV2ViQ29yZTo6UmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlcgogd2Via2l0Lm9yZy9i
LzIxMTkyMyBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9iYXNpYy9z
dHJlYW0tc2FmZS1jcmVhdGlvbi5hbnkuaHRtbCBbIFBhc3MgQ3Jhc2ggXQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCA4ZjBiYTFiZWNiYjguLjM2ZTE2OGJm
NjUxMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTk1
MSw2ICs5NTEsOCBAQCB3ZWJraXQub3JnL2IvMTQ4OTY3IGFjY2Vzc2liaWxpdHkvYXJpYS10YWJs
ZS1hdHRyaWJ1dGVzLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvYXJpYS1ncmlkLXdpdGgt
YXJpYS1vd25zLXJvd3MuaHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9ncmlkLXdpdGgtYXJp
YS1vd25lZC1jZWxscy5odG1sIFsgU2tpcCBdCiAKK2FjY2Vzc2liaWxpdHkvZGVlcC10cmVlLmh0
bWwgWyBTa2lwIF0KKwogIyBUT0RPIHdlYmtpdC1mb250LXNtb290aGluZyBpcyBub3Qgc3VwcG9y
dGVkLgogd2Via2l0Lm9yZy9iLzE0OTI0NSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtbXVsdGljb2wvbXVsdGljb2wtYmFzaWMtMDAxLmh0bWwgWyBTa2lwIF0KIHdlYmtp
dC5vcmcvYi8xNDkyNDUgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLW11
bHRpY29sL211bHRpY29sLWJhc2ljLTAwMi5odG1sIFsgU2tpcCBdCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>