<?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>251223</bug_id>
          
          <creation_ts>2023-01-26 13:05:09 -0800</creation_ts>
          <short_desc>AX: WebCore::AXIsolatedTree should use WTF::ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr&lt;&gt;.</short_desc>
          <delta_ts>2023-01-29 07:57:56 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>achristensen</cc>
    
    <cc>andresg_22</cc>
    
    <cc>apinheiro</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cfleizach</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ddkilzer</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>1928685</commentid>
    <comment_count>0</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-26 13:05:09 -0800</bug_when>
    <thetext>Currently it derives from ThreadSafeRefCounted and CanMakeWeakPtr.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1928686</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2023-01-26 13:05:22 -0800</bug_when>
    <thetext>&lt;rdar://problem/104710054&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1928687</commentid>
    <comment_count>2</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-26 13:06:07 -0800</bug_when>
    <thetext>rdar://104512153</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1928757</commentid>
    <comment_count>3</comment_count>
      <attachid>464679</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-26 17:11:25 -0800</bug_when>
    <thetext>Created attachment 464679
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1928779</commentid>
    <comment_count>4</comment_count>
      <attachid>464681</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-26 18:04:15 -0800</bug_when>
    <thetext>Created attachment 464681
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1928786</commentid>
    <comment_count>5</comment_count>
      <attachid>464681</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-01-26 18:17:05 -0800</bug_when>
    <thetext>Comment on attachment 464681
Patch

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

&gt; COMMIT_MESSAGE:8
&gt; +In order to have a single AXTreeStore that keeps both WeakPtr&lt;AXObjectCache&gt; and ThreadSafeWeakPtr&lt;AXIsolatedTree&gt;, we added the variant AXTreePtr. Note that this avoids having a ThreadSafeWeakPtr&lt;AXObjectCache&gt; which would be an overkill since AXObjectCache is only used on the main thread.

Typo — &quot;which would be an overkill&quot; should be &quot;which would be overkill&quot;

&gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:780
&gt; -        if (auto tree = AXTreeStore::treeForID(treeID())) {
&gt; +        if (auto* tree = AXTreeStore::isolatedTreeForID(treeID())) {
&gt;              // At this point, there should only be two references left to this tree -- one in the map,
&gt;              // and the `protectedThis` above.
&gt; -            ASSERT(tree-&gt;refCount() == 2, &quot;Unexpected refcount before attempting to destroy isolated tree: %d&quot;, tree-&gt;refCount());
&gt; +            ASSERT(tree-&gt;strongRefCount() == 2, &quot;Unexpected refcount before attempting to destroy isolated tree: %d&quot;, tree-&gt;strongRefCount());

Correct me if I&apos;m wrong, but with this patch we can now make a ThreadSafeWeakPtr&lt;AXIsolatedTree&gt;. That means we can change AXIsolatedObject::m_cachedTree to be a ThreadSafeWeakPtr&lt;AXIsolatedTree&gt; and remove this whole block (and therefore not add a new strongRefCount method).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1928790</commentid>
    <comment_count>6</comment_count>
      <attachid>464681</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2023-01-26 19:04:45 -0800</bug_when>
    <thetext>Comment on attachment 464681
Patch

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

&gt; Source/WTF/wtf/ThreadSafeWeakPtr.h:104
&gt; +    size_t strongRefCount() const

I don&apos;t think we should add this.  The value returned is immediately possibly incorrect.  If we do add it, it should be inside ASSERT_ENABLED so we only use it for assertions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929048</commentid>
    <comment_count>7</comment_count>
      <attachid>464691</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-27 14:28:59 -0800</bug_when>
    <thetext>Created attachment 464691
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929056</commentid>
    <comment_count>8</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-27 14:36:34 -0800</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #5)
&gt; Comment on attachment 464681 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=464681&amp;action=review
&gt; 
&gt; &gt; COMMIT_MESSAGE:8
&gt; &gt; +In order to have a single AXTreeStore that keeps both WeakPtr&lt;AXObjectCache&gt; and ThreadSafeWeakPtr&lt;AXIsolatedTree&gt;, we added the variant AXTreePtr. Note that this avoids having a ThreadSafeWeakPtr&lt;AXObjectCache&gt; which would be an overkill since AXObjectCache is only used on the main thread.
&gt; 
&gt; Typo — &quot;which would be an overkill&quot; should be &quot;which would be overkill&quot;

Rephrased, hopefully it is clearer and correct.
&gt; 
&gt; &gt; Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:780
&gt; &gt; -        if (auto tree = AXTreeStore::treeForID(treeID())) {
&gt; &gt; +        if (auto* tree = AXTreeStore::isolatedTreeForID(treeID())) {
&gt; &gt;              // At this point, there should only be two references left to this tree -- one in the map,
&gt; &gt;              // and the `protectedThis` above.
&gt; &gt; -            ASSERT(tree-&gt;refCount() == 2, &quot;Unexpected refcount before attempting to destroy isolated tree: %d&quot;, tree-&gt;refCount());
&gt; &gt; +            ASSERT(tree-&gt;strongRefCount() == 2, &quot;Unexpected refcount before attempting to destroy isolated tree: %d&quot;, tree-&gt;strongRefCount());
&gt; 
&gt; Correct me if I&apos;m wrong, but with this patch we can now make a
&gt; ThreadSafeWeakPtr&lt;AXIsolatedTree&gt;. That means we can change
&gt; AXIsolatedObject::m_cachedTree to be a ThreadSafeWeakPtr&lt;AXIsolatedTree&gt; and
&gt; remove this whole block (and therefore not add a new strongRefCount method).

Upon further investigation and discussion, we agreed in removing the ASSERT to check the reference count, and thus the need to add strongRefCount(), but not changing the strong reference to the Isolated tree in the object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929057</commentid>
    <comment_count>9</comment_count>
      <attachid>464691</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2023-01-27 14:38:17 -0800</bug_when>
    <thetext>Comment on attachment 464691
Patch

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

&gt; Source/WebCore/accessibility/AXTreeStore.h:136
&gt; +        [] (ThreadSafeWeakPtr&lt;AXIsolatedTree&gt;&amp; typedTree) -&gt; AXIsolatedTree* { return typedTree.get().get(); },

This needs to return a RefPtr&lt;AXIsolatedTree&gt; otherwise it might immediately be deleted by another thread.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929066</commentid>
    <comment_count>10</comment_count>
      <attachid>464694</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-27 14:55:03 -0800</bug_when>
    <thetext>Created attachment 464694
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929067</commentid>
    <comment_count>11</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-27 14:56:48 -0800</bug_when>
    <thetext>(In reply to Alex Christensen from comment #9)
&gt; Comment on attachment 464691 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=464691&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/accessibility/AXTreeStore.h:136
&gt; &gt; +        [] (ThreadSafeWeakPtr&lt;AXIsolatedTree&gt;&amp; typedTree) -&gt; AXIsolatedTree* { return typedTree.get().get(); },
&gt; 
&gt; This needs to return a RefPtr&lt;AXIsolatedTree&gt; otherwise it might immediately
&gt; be deleted by another thread.

Fixed. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929083</commentid>
    <comment_count>12</comment_count>
      <attachid>464694</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2023-01-27 16:15:52 -0800</bug_when>
    <thetext>Comment on attachment 464694
Patch

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

&gt; Source/WebCore/accessibility/AXTreeStore.h:76
&gt; +        [&amp;] (WeakPtr&lt;AXObjectCache&gt;&amp; typedTree) {

This looks unnecessary.

&gt; Source/WebCore/accessibility/AXTreeStore.h:85
&gt; +        [&amp;] (ThreadSafeWeakPtr&lt;AXIsolatedTree&gt;&amp; typedTree) {

ditto

&gt; Source/WebCore/accessibility/AXTreeStore.h:94
&gt; +        [] (auto&amp;) {

ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929084</commentid>
    <comment_count>13</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2023-01-27 16:16:02 -0800</bug_when>
    <thetext>Close!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929183</commentid>
    <comment_count>14</comment_count>
      <attachid>464704</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-28 12:12:54 -0800</bug_when>
    <thetext>Created attachment 464704
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929184</commentid>
    <comment_count>15</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-28 12:15:33 -0800</bug_when>
    <thetext>(In reply to Alex Christensen from comment #13)
&gt; Close!

(In reply to Alex Christensen from comment #12)
&gt; Comment on attachment 464694 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=464694&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/accessibility/AXTreeStore.h:76
&gt; &gt; +        [&amp;] (WeakPtr&lt;AXObjectCache&gt;&amp; typedTree) {
&gt; 
&gt; This looks unnecessary.

Fixed.
&gt; 
&gt; &gt; Source/WebCore/accessibility/AXTreeStore.h:85
&gt; &gt; +        [&amp;] (ThreadSafeWeakPtr&lt;AXIsolatedTree&gt;&amp; typedTree) {
&gt; 
&gt; ditto

Fixed.
&gt; 
&gt; &gt; Source/WebCore/accessibility/AXTreeStore.h:94
&gt; &gt; +        [] (auto&amp;) {
&gt; 
&gt; ditto

Fixed. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929234</commentid>
    <comment_count>16</comment_count>
      <attachid>464704</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2023-01-28 15:28:06 -0800</bug_when>
    <thetext>Comment on attachment 464704
Patch

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

&gt; Source/WebCore/accessibility/AXTreeStore.h:79
&gt; +        },

This comma needs to be inside ENABLE(ACCESSIBILITY_ISOLATED_TREE)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929255</commentid>
    <comment_count>17</comment_count>
      <attachid>464740</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-01-28 19:25:13 -0800</bug_when>
    <thetext>Created attachment 464740
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929276</commentid>
    <comment_count>18</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2023-01-29 07:57:53 -0800</bug_when>
    <thetext>Committed 259536@main (8f8d02ddc94e): &lt;https://commits.webkit.org/259536@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 464740.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>464679</attachid>
            <date>2023-01-26 17:11:25 -0800</date>
            <delta_ts>2023-01-26 18:05:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-251223-20230126201123.patch</filename>
            <type>text/plain</type>
            <size>10223</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSA4NGFiYjkzYjQ5MzVjOTk0M2VkNzE3OWE2ZDg5YzAxOWE4MmUxM2RkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBXZWQsIDI1IEphbiAyMDIzIDE0OjM5OjQyIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0g
QVg6IFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlIHNob3VsZCB1c2UKIFdURjo6VGhyZWFkU2FmZVJl
ZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHI8Pi4KIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTEyMjMgcmRhcjovLzEwNDUxMjE1MwoKUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCgpBWElzb2xhdGVkVHJlZSBub3cgZGVyaXZlcyBmcm9tIFRocmVh
ZFNhZmVSZWZDb3VudGVkQW5kQ2FuTWFrZVRocmVhZFNhZmVXZWFrUHRyIGluc3RlYWQgb2YgVGhy
ZWFkU2FmZVJlZkNvdW50ZWQgYW5kIENhbk1ha2VXZWFrUHRyLCB3aGljaCB3YXMgYSBwcm9ibGVt
IHNpbmNlIFdlYWtQdHIgaXMgbm90IHRocmVhZCBzYWZlLgpJbiBvcmRlciB0byBoYXZlIGEgc2lu
Z2xlIEFYVHJlZVN0b3JlIHRoYXQga2VlcHMgYm90aCBXZWFrUHRyPEFYT2JqZWN0Q2FjaGU+IGFu
ZCBUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4sIHdlIGFkZGVkIHRoZSB2YXJpYW50
IEFYVHJlZVB0ci4gTm90ZSB0aGF0IHRoaXMgYXZvaWRzIGhhdmluZyBhIFRocmVhZFNhZmVXZWFr
UHRyPEFYT2JqZWN0Q2FjaGU+IHdoaWNoIHdvdWxkIGJlIGFuIG92ZXJraWxsIHNpbmNlIEFYT2Jq
ZWN0Q2FjaGUgaXMgb25seSB1c2VkIG9uIHRoZSBtYWluIHRocmVhZC4KLS0tCiBTb3VyY2UvV1RG
L3d0Zi9UaHJlYWRTYWZlV2Vha1B0ci5oICAgICAgICAgICAgfCAgNyArKwogLi4uL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcCAgIHwgIDIgKy0KIFNvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmNwcCB8ICA2ICstCiBTb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3JlLmggICAgfCA2OSArKysrKysrKysrKysrKysrLS0tCiAu
Li4vaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcCAgICAgICAgICAgfCAgNiArLQogLi4u
L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oICAgICAgICAgICAgIHwgIDQgKy0KIDYgZmls
ZXMgY2hhbmdlZCwgNzUgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi93dGYvVGhyZWFkU2FmZVdlYWtQdHIuaCBiL1NvdXJjZS9XVEYvd3RmL1Ro
cmVhZFNhZmVXZWFrUHRyLmgKaW5kZXggMWMwOTliNWUyNTgyLi5kYjQ3MzUzNzVkYmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1RocmVhZFNhZmVXZWFrUHRyLmgKKysrIGIvU291cmNlL1dU
Ri93dGYvVGhyZWFkU2FmZVdlYWtQdHIuaApAQCAtMTAxLDYgKzEwMSwxMiBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBkZWxldGUgdGhpczsKICAgICB9CiAKKyAgICBzaXplX3Qgc3Ryb25nUmVmQ291
bnQoKSBjb25zdAorICAgIHsKKyAgICAgICAgTG9ja2VyIGxvY2tlciB7IG1fbG9jayB9OworICAg
ICAgICByZXR1cm4gbV9zdHJvbmdSZWZlcmVuY2VDb3VudDsKKyAgICB9CisKICAgICBSZWZQdHI8
VD4gbWFrZVN0cm9uZ1JlZmVyZW5jZUlmUG9zc2libGUoKSBjb25zdAogICAgIHsKICAgICAgICAg
TG9ja2VyIGxvY2tlciB7IG1fbG9jayB9OwpAQCAtMTM2LDYgKzE0Miw3IEBAIGNsYXNzIFRocmVh
ZFNhZmVSZWZDb3VudGVkQW5kQ2FuTWFrZVRocmVhZFNhZmVXZWFrUHRyIHsKIHB1YmxpYzoKICAg
ICB2b2lkIHJlZigpIGNvbnN0IHsgbV9jb250cm9sQmxvY2suc3Ryb25nUmVmKCk7IH0KICAgICB2
b2lkIGRlcmVmKCkgY29uc3QgeyBtX2NvbnRyb2xCbG9jay50ZW1wbGF0ZSBzdHJvbmdEZXJlZjxk
ZXN0cnVjdGlvblRocmVhZD4oKTsgfQorICAgIHNpemVfdCBzdHJvbmdSZWZDb3VudCgpIGNvbnN0
IHsgcmV0dXJuIG1fY29udHJvbEJsb2NrLnN0cm9uZ1JlZkNvdW50KCk7IH0KIHByb3RlY3RlZDoK
ICAgICBUaHJlYWRTYWZlUmVmQ291bnRlZEFuZENhbk1ha2VUaHJlYWRTYWZlV2Vha1B0cigpID0g
ZGVmYXVsdDsKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L0FYT2JqZWN0Q2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9i
amVjdENhY2hlLmNwcAppbmRleCAzODk5ZWE5MzViMmUuLjVmM2E2OTVkZGNjMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwCkBAIC0yNDYsNyAr
MjQ2LDcgQEAgQVhPYmplY3RDYWNoZTo6QVhPYmplY3RDYWNoZShEb2N1bWVudCYgZG9jdW1lbnQp
CiAgICAgICAgIGxvYWRpbmdQcm9ncmVzcyA9IDE7CiAgICAgbV9sb2FkaW5nUHJvZ3Jlc3MgPSBs
b2FkaW5nUHJvZ3Jlc3M7CiAKLSAgICBBWFRyZWVTdG9yZTo6YWRkKG1faWQsIHRoaXMpOworICAg
IEFYVHJlZVN0b3JlOjphZGQobV9pZCwgV2Vha1B0ciB7IHRoaXMgfSk7CiB9CiAKIEFYT2JqZWN0
Q2FjaGU6On5BWE9iamVjdENhY2hlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvQVhUZXh0TWFya2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QVhUZXh0TWFya2VyLmNwcAppbmRleCAzZTQ2MGQ5NWZhYjcuLjk5OGQ3OGQ5YmViNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRleHRNYXJrZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmNwcApAQCAtMTA4LDcg
KzEwOCw3IEBAIEFYVGV4dE1hcmtlcjo6b3BlcmF0b3IgVmlzaWJsZVBvc2l0aW9uKCkgY29uc3QK
IHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogCi0gICAgYXV0byogY2FjaGUgPSBBWFRy
ZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6dHJlZUZvcklEKHRyZWVJRCgpKTsKKyAgICBhdXRvKiBj
YWNoZSA9IEFYVHJlZVN0b3JlPEFYT2JqZWN0Q2FjaGU+OjpheE9iamVjdENhY2hlRm9ySUQodHJl
ZUlEKCkpOwogICAgIHJldHVybiBjYWNoZSA/IGNhY2hlLT52aXNpYmxlUG9zaXRpb25Gb3JUZXh0
TWFya2VyRGF0YShtX2RhdGEpIDogVmlzaWJsZVBvc2l0aW9uKCk7CiB9CiAKQEAgLTEyMyw3ICsx
MjMsNyBAQCBBWFRleHRNYXJrZXI6Om9wZXJhdG9yIENoYXJhY3Rlck9mZnNldCgpIGNvbnN0CiAg
ICAgLy8gV2hlbiB3ZSBhcmUgYXQgYSBsaW5lIHdyYXAgYW5kIHRoZSBWaXNpYmxlUG9zaXRpb24g
aXMgdXBzdHJlYW0sIGl0IG1lYW5zIHRoZSB0ZXh0IG1hcmtlciBpcyBhdCB0aGUgZW5kIG9mIHRo
ZSBwcmV2aW91cyBsaW5lLgogICAgIC8vIFdlIHVzZSB0aGUgcHJldmlvdXMgQ2hhcmFjdGVyT2Zm
c2V0IHNvIHRoYXQgaXQgd2lsbCBtYXRjaCB0aGUgUmFuZ2UuCiAgICAgaWYgKG1fZGF0YS5hZmZp
bml0eSA9PSBBZmZpbml0eTo6VXBzdHJlYW0pIHsKLSAgICAgICAgaWYgKGF1dG8gY2FjaGUgPSBB
WFRyZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6dHJlZUZvcklEKG1fZGF0YS5heFRyZWVJRCgpKSkK
KyAgICAgICAgaWYgKGF1dG8qIGNhY2hlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OmF4
T2JqZWN0Q2FjaGVGb3JJRChtX2RhdGEuYXhUcmVlSUQoKSkpCiAgICAgICAgICAgICByZXR1cm4g
Y2FjaGUtPnByZXZpb3VzQ2hhcmFjdGVyT2Zmc2V0KHJlc3VsdCwgZmFsc2UpOwogICAgIH0KICAg
ICByZXR1cm4gcmVzdWx0OwpAQCAtMTM0LDcgKzEzNCw3IEBAIEFYQ29yZU9iamVjdCogQVhUZXh0
TWFya2VyOjpvYmplY3QoKSBjb25zdAogICAgIGlmIChpc051bGwoKSkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAKLSAgICBhdXRvIHRyZWUgPSBBWFRyZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6
dHJlZUZvcklEKHRyZWVJRCgpKTsKKyAgICBhdXRvKiB0cmVlID0gQVhUcmVlU3RvcmU8QVhPYmpl
Y3RDYWNoZT46OmF4T2JqZWN0Q2FjaGVGb3JJRCh0cmVlSUQoKSk7CiAgICAgcmV0dXJuIHRyZWUg
PyB0cmVlLT5vYmplY3RGb3JJRChvYmplY3RJRCgpKSA6IG51bGxwdHI7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3RvcmUuaCBiL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3RvcmUuaAppbmRleCA4NzQ0NzM5MTg3ZWIuLjFj
MjVkNDQ1NTljOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRy
ZWVTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3RvcmUu
aApAQCAtMjUsMjMgKzI1LDMxIEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkFjY2Vzc2li
aWxpdHlPYmplY3RJbnRlcmZhY2UuaCIKKyNpbmNsdWRlIDx2YXJpYW50PgogI2luY2x1ZGUgPHd0
Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVdlYWtQdHIuaD4KICNpbmNsdWRl
IDx3dGYvV2Vha1B0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEFYSXNvbGF0
ZWRUcmVlOworY2xhc3MgQVhPYmplY3RDYWNoZTsKKwordXNpbmcgQVhUcmVlUHRyID0gc3RkOjp2
YXJpYW50PFdlYWtQdHI8QVhPYmplY3RDYWNoZT4sIFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0
ZWRUcmVlPj47CisKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CiBjbGFzcyBBWFRyZWVTdG9yZSB7CiAg
ICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQVhUcmVlU3RvcmUpOwogICAgIFdURl9NQUtFX0ZBU1Rf
QUxMT0NBVEVEOwogcHVibGljOgogICAgIEFYSUQgdHJlZUlEKCkgY29uc3QgeyByZXR1cm4gbV9p
ZDsgfQotICAgIHN0YXRpYyBUKiB0cmVlRm9ySUQoQVhJRCk7CisgICAgc3RhdGljIEFYT2JqZWN0
Q2FjaGUqIGF4T2JqZWN0Q2FjaGVGb3JJRChBWElEKTsKKyAgICBzdGF0aWMgQVhJc29sYXRlZFRy
ZWUqIGlzb2xhdGVkVHJlZUZvcklEKEFYSUQpOwogcHJvdGVjdGVkOgogICAgIEFYVHJlZVN0b3Jl
KCkgPSBkZWZhdWx0OwotICAgIHN0YXRpYyB2b2lkIGFkZChBWElELCBXZWFrUHRyPFQ+KTsKKyAg
ICBzdGF0aWMgdm9pZCBhZGQoQVhJRCwgY29uc3QgQVhUcmVlUHRyJik7CiAgICAgc3RhdGljIHZv
aWQgcmVtb3ZlKEFYSUQpOwogICAgIHN0YXRpYyBib29sIGNvbnRhaW5zKEFYSUQpOwogCkBAIC00
OSwxNCArNTcsMzQgQEAgcHJvdGVjdGVkOgogICAgIGNvbnN0IEFYSUQgbV9pZCB7IGdlbmVyYXRl
TmV3SUQoKSB9OwogICAgIHN0YXRpYyBMb2NrIHNfc3RvcmVMb2NrOwogcHJpdmF0ZToKLSAgICBz
dGF0aWMgSGFzaE1hcDxBWElELCBXZWFrUHRyPFQ+PiYgbWFwKCkgV1RGX1JFUVVJUkVTX0xPQ0so
c19zdG9yZUxvY2spOworICAgIHN0YXRpYyBIYXNoTWFwPEFYSUQsIEFYVHJlZVB0cj4mIG1hcCgp
IFdURl9SRVFVSVJFU19MT0NLKHNfc3RvcmVMb2NrKTsKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+Ci1pbmxpbmUgdm9pZCBBWFRyZWVTdG9yZTxUPjo6YWRkKEFYSUQgYXhJRCwgV2Vha1B0cjxU
PiB0KQoraW5saW5lIHZvaWQgQVhUcmVlU3RvcmU8VD46OmFkZChBWElEIGF4SUQsIGNvbnN0IEFY
VHJlZVB0ciYgdHJlZSkKIHsKLSAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKLSAg
ICBtYXAoKS5hZGQoYXhJRCwgdCk7CisgICAgc3dpdGNoT24odHJlZSwKKyAgICAgICAgWyZdIChX
ZWFrUHRyPEFYT2JqZWN0Q2FjaGU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAgICAgIExvY2tlciBs
b2NrZXIgeyBzX3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRkKGF4SUQsIHR5cGVk
VHJlZSk7CisgICAgICAgIH0sCisgICAgICAgIFsmXSAoY29uc3QgV2Vha1B0cjxBWE9iamVjdENh
Y2hlPiYgdHlwZWRUcmVlKSB7CisgICAgICAgICAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxv
Y2sgfTsKKyAgICAgICAgICAgIG1hcCgpLmFkZChheElELCB0eXBlZFRyZWUpOworICAgICAgICB9
LAorICAgICAgICBbJl0gKFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPiYgdHlwZWRU
cmVlKSB7CisgICAgICAgICAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKKyAgICAg
ICAgICAgIG1hcCgpLmFkZChheElELCB0eXBlZFRyZWUuZ2V0KCkpOworICAgICAgICB9LAorICAg
ICAgICBbJl0gKGNvbnN0IFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPiYgdHlwZWRU
cmVlKSB7CisgICAgICAgICAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKKyAgICAg
ICAgICAgIG1hcCgpLmFkZChheElELCB0eXBlZFRyZWUuZ2V0KCkpOworICAgICAgICB9LAorICAg
ICAgICBbXSAoYXV0byYpIHsKKyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgKTsKIH0KIAogdGVtcGxhdGU8dHlwZW5h
bWUgVD4KQEAgLTc0LDE2ICsxMDIsMzcgQEAgaW5saW5lIGJvb2wgQVhUcmVlU3RvcmU8VD46OmNv
bnRhaW5zKEFYSUQgYXhJRCkKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVD4KLWlubGluZSBUKiBB
WFRyZWVTdG9yZTxUPjo6dHJlZUZvcklEKEFYSUQgYXhJRCkKK2lubGluZSBBWE9iamVjdENhY2hl
KiBBWFRyZWVTdG9yZTxUPjo6YXhPYmplY3RDYWNoZUZvcklEKEFYSUQgYXhJRCkKK3sKKyAgICBM
b2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKKyAgICBhdXRvIHRyZWUgPSBtYXAoKS5nZXQo
YXhJRCk7CisgICAgcmV0dXJuIHN3aXRjaE9uKHRyZWUsCisgICAgICAgIFtdIChXZWFrUHRyPEFY
T2JqZWN0Q2FjaGU+JiB0eXBlZFRyZWUpIC0+IEFYT2JqZWN0Q2FjaGUqIHsgcmV0dXJuIHR5cGVk
VHJlZS5nZXQoKTsgfSwKKyAgICAgICAgW10gKGF1dG8mKSAtPiBBWE9iamVjdENhY2hlKiB7Cisg
ICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgICAgICB9CisgICAgKTsKK30KKwordGVtcGxhdGU8dHlwZW5hbWUgVD4KK2lubGlu
ZSBBWElzb2xhdGVkVHJlZSogQVhUcmVlU3RvcmU8VD46Omlzb2xhdGVkVHJlZUZvcklEKEFYSUQg
YXhJRCkKIHsKICAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKLSAgICByZXR1cm4g
bWFwKCkuZ2V0KGF4SUQpLmdldCgpOworICAgIGF1dG8gdHJlZSA9IG1hcCgpLmdldChheElEKTsK
KyAgICByZXR1cm4gc3dpdGNoT24odHJlZSwKKyAgICAgICAgW10gKFRocmVhZFNhZmVXZWFrUHRy
PEFYSXNvbGF0ZWRUcmVlPiYgdHlwZWRUcmVlKSAtPiBBWElzb2xhdGVkVHJlZSogeyByZXR1cm4g
dHlwZWRUcmVlLmdldCgpLmdldCgpOyB9LAorICAgICAgICBbXSAoYXV0byYpIC0+IEFYSXNvbGF0
ZWRUcmVlKiB7CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAg
IHJldHVybiBudWxscHRyOworICAgICAgICB9CisgICAgKTsKIH0KIAogdGVtcGxhdGU8dHlwZW5h
bWUgVD4KLWlubGluZSBIYXNoTWFwPEFYSUQsIFdlYWtQdHI8VD4+JiBBWFRyZWVTdG9yZTxUPjo6
bWFwKCkKK2lubGluZSBIYXNoTWFwPEFYSUQsIEFYVHJlZVB0cj4mIEFYVHJlZVN0b3JlPFQ+Ojpt
YXAoKQogewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxIYXNoTWFwPEFYSUQsIFdlYWtQdHI8
VD4+PiBtYXA7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEhhc2hNYXA8QVhJRCwgQVhUcmVl
UHRyPj4gbWFwOwogICAgIHJldHVybiBtYXA7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcApp
bmRleCA0NmEzNzYyZmFjNTMuLmNmNWQ5MDY0NTRjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNw
cApAQCAtOTEsNyArOTEsNyBAQCBSZWY8QVhJc29sYXRlZFRyZWU+IEFYSXNvbGF0ZWRUcmVlOjpj
cmVhdGUoQVhPYmplY3RDYWNoZSogYXhPYmplY3RDYWNoZSkKIAogICAgIC8vIE5vdyB0aGF0IHRo
ZSB0cmVlIGlzIHJlYWR5IHRvIHRha2UgY2xpZW50IHJlcXVlc3RzLCBhZGQgaXQgdG8gdGhlIHRy
ZWUKICAgICAvLyBtYXBzIHNvIHRoYXQgaXQgY2FuIGJlIGZvdW5kLgotICAgIEFYVHJlZVN0b3Jl
OjphZGQodHJlZS0+dHJlZUlEKCksIHRyZWUuY29weVJlZigpKTsKKyAgICBBWFRyZWVTdG9yZTo6
YWRkKHRyZWUtPnRyZWVJRCgpLCB0cmVlLnB0cigpKTsKICAgICBhdXRvIHBhZ2VJRCA9IGF4T2Jq
ZWN0Q2FjaGUtPnBhZ2VJRCgpOwogICAgIExvY2tlciBsb2NrZXIgeyBzX3N0b3JlTG9jayB9Owog
ICAgIEFTU0VSVCghdHJlZVBhZ2VDYWNoZSgpLmNvbnRhaW5zKCpwYWdlSUQpKTsKQEAgLTc3NCwx
MCArNzc0LDEwIEBAIHZvaWQgQVhJc29sYXRlZFRyZWU6OmFwcGx5UGVuZGluZ0NoYW5nZXMoKQog
CiAjaWZuZGVmIE5ERUJVRwogICAgICAgICBBU1NFUlQoQVhUcmVlU3RvcmU6OmNvbnRhaW5zKHRy
ZWVJRCgpKSk7Ci0gICAgICAgIGlmIChhdXRvIHRyZWUgPSBBWFRyZWVTdG9yZTo6dHJlZUZvcklE
KHRyZWVJRCgpKSkgeworICAgICAgICBpZiAoYXV0byogdHJlZSA9IEFYVHJlZVN0b3JlOjppc29s
YXRlZFRyZWVGb3JJRCh0cmVlSUQoKSkpIHsKICAgICAgICAgICAgIC8vIEF0IHRoaXMgcG9pbnQs
IHRoZXJlIHNob3VsZCBvbmx5IGJlIHR3byByZWZlcmVuY2VzIGxlZnQgdG8gdGhpcyB0cmVlIC0t
IG9uZSBpbiB0aGUgbWFwLAogICAgICAgICAgICAgLy8gYW5kIHRoZSBgcHJvdGVjdGVkVGhpc2Ag
YWJvdmUuCi0gICAgICAgICAgICBBU1NFUlQodHJlZS0+cmVmQ291bnQoKSA9PSAyLCAiVW5leHBl
Y3RlZCByZWZjb3VudCBiZWZvcmUgYXR0ZW1wdGluZyB0byBkZXN0cm95IGlzb2xhdGVkIHRyZWU6
ICVkIiwgdHJlZS0+cmVmQ291bnQoKSk7CisgICAgICAgICAgICBBU1NFUlQodHJlZS0+c3Ryb25n
UmVmQ291bnQoKSA9PSAyLCAiVW5leHBlY3RlZCByZWZjb3VudCBiZWZvcmUgYXR0ZW1wdGluZyB0
byBkZXN0cm95IGlzb2xhdGVkIHRyZWU6ICVkIiwgdHJlZS0+c3Ryb25nUmVmQ291bnQoKSk7CiAg
ICAgICAgIH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaAppbmRleCA4MGZjZjlkMWQzYTMu
LjJjY2ZhYTM2ZGNkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9p
c29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCkBAIC0zNSw2ICszNSw3IEBACiAj
aW5jbHVkZSA8d3RmL0xvY2suaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8
d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVXZWFr
UHRyLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogY2xhc3MgVGV4dFN0cmVhbTsKQEAgLTI3Myw4ICsy
NzQsNyBAQCBzdHJ1Y3QgQVhQcm9wZXJ0eUNoYW5nZSB7CiAgICAgQVhQcm9wZXJ0eU1hcCBwcm9w
ZXJ0aWVzOyAvLyBDaGFuZ2VkIHByb3BlcnRpZXMuCiB9OwogCi1jbGFzcyBBWElzb2xhdGVkVHJl
ZSA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxBWElzb2xhdGVkVHJlZT4KLSAgICAsIHB1
YmxpYyBDYW5NYWtlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4KK2NsYXNzIEFYSXNvbGF0ZWRUcmVl
IDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkQW5kQ2FuTWFrZVRocmVhZFNhZmVXZWFrUHRy
PEFYSXNvbGF0ZWRUcmVlPgogICAgICwgcHVibGljIEFYVHJlZVN0b3JlPEFYSXNvbGF0ZWRUcmVl
PiB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQVhJc29sYXRlZFRyZWUpOwogICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOwo=
</data>
<flag name="commit-queue"
          id="492904"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>464681</attachid>
            <date>2023-01-26 18:04:15 -0800</date>
            <delta_ts>2023-01-27 14:28:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-251223-20230126210414.patch</filename>
            <type>text/plain</type>
            <size>10478</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSA3ZWRkM2NlYzc1MjBlYzQwYzAzNjBjN2JkMTVjMWIyNjFkN2E2NGU3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBXZWQsIDI1IEphbiAyMDIzIDE0OjM5OjQyIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0g
QVg6IFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlIHNob3VsZCB1c2UKIFdURjo6VGhyZWFkU2FmZVJl
ZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHI8Pi4KIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTEyMjMgcmRhcjovLzEwNDUxMjE1MwoKUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCgpBWElzb2xhdGVkVHJlZSBub3cgZGVyaXZlcyBmcm9tIFRocmVh
ZFNhZmVSZWZDb3VudGVkQW5kQ2FuTWFrZVRocmVhZFNhZmVXZWFrUHRyIGluc3RlYWQgb2YgVGhy
ZWFkU2FmZVJlZkNvdW50ZWQgYW5kIENhbk1ha2VXZWFrUHRyLCB3aGljaCB3YXMgYSBwcm9ibGVt
IHNpbmNlIFdlYWtQdHIgaXMgbm90IHRocmVhZCBzYWZlLgpJbiBvcmRlciB0byBoYXZlIGEgc2lu
Z2xlIEFYVHJlZVN0b3JlIHRoYXQga2VlcHMgYm90aCBXZWFrUHRyPEFYT2JqZWN0Q2FjaGU+IGFu
ZCBUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4sIHdlIGFkZGVkIHRoZSB2YXJpYW50
IEFYVHJlZVB0ci4gTm90ZSB0aGF0IHRoaXMgYXZvaWRzIGhhdmluZyBhIFRocmVhZFNhZmVXZWFr
UHRyPEFYT2JqZWN0Q2FjaGU+IHdoaWNoIHdvdWxkIGJlIGFuIG92ZXJraWxsIHNpbmNlIEFYT2Jq
ZWN0Q2FjaGUgaXMgb25seSB1c2VkIG9uIHRoZSBtYWluIHRocmVhZC4KLS0tCiBTb3VyY2UvV1RG
L3d0Zi9UaHJlYWRTYWZlV2Vha1B0ci5oICAgICAgICAgICAgfCAgNyArKwogLi4uL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcCAgIHwgIDIgKy0KIFNvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmNwcCB8ICA2ICstCiBTb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3JlLmggICAgfCA4MiArKysrKysrKysrKysrKysrLS0tCiAu
Li4vaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcCAgICAgICAgICAgfCAgNiArLQogLi4u
L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oICAgICAgICAgICAgIHwgIDQgKy0KIDYgZmls
ZXMgY2hhbmdlZCwgODggaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi93dGYvVGhyZWFkU2FmZVdlYWtQdHIuaCBiL1NvdXJjZS9XVEYvd3RmL1Ro
cmVhZFNhZmVXZWFrUHRyLmgKaW5kZXggMWMwOTliNWUyNTgyLi5kYjQ3MzUzNzVkYmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1RocmVhZFNhZmVXZWFrUHRyLmgKKysrIGIvU291cmNlL1dU
Ri93dGYvVGhyZWFkU2FmZVdlYWtQdHIuaApAQCAtMTAxLDYgKzEwMSwxMiBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBkZWxldGUgdGhpczsKICAgICB9CiAKKyAgICBzaXplX3Qgc3Ryb25nUmVmQ291
bnQoKSBjb25zdAorICAgIHsKKyAgICAgICAgTG9ja2VyIGxvY2tlciB7IG1fbG9jayB9OworICAg
ICAgICByZXR1cm4gbV9zdHJvbmdSZWZlcmVuY2VDb3VudDsKKyAgICB9CisKICAgICBSZWZQdHI8
VD4gbWFrZVN0cm9uZ1JlZmVyZW5jZUlmUG9zc2libGUoKSBjb25zdAogICAgIHsKICAgICAgICAg
TG9ja2VyIGxvY2tlciB7IG1fbG9jayB9OwpAQCAtMTM2LDYgKzE0Miw3IEBAIGNsYXNzIFRocmVh
ZFNhZmVSZWZDb3VudGVkQW5kQ2FuTWFrZVRocmVhZFNhZmVXZWFrUHRyIHsKIHB1YmxpYzoKICAg
ICB2b2lkIHJlZigpIGNvbnN0IHsgbV9jb250cm9sQmxvY2suc3Ryb25nUmVmKCk7IH0KICAgICB2
b2lkIGRlcmVmKCkgY29uc3QgeyBtX2NvbnRyb2xCbG9jay50ZW1wbGF0ZSBzdHJvbmdEZXJlZjxk
ZXN0cnVjdGlvblRocmVhZD4oKTsgfQorICAgIHNpemVfdCBzdHJvbmdSZWZDb3VudCgpIGNvbnN0
IHsgcmV0dXJuIG1fY29udHJvbEJsb2NrLnN0cm9uZ1JlZkNvdW50KCk7IH0KIHByb3RlY3RlZDoK
ICAgICBUaHJlYWRTYWZlUmVmQ291bnRlZEFuZENhbk1ha2VUaHJlYWRTYWZlV2Vha1B0cigpID0g
ZGVmYXVsdDsKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L0FYT2JqZWN0Q2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9i
amVjdENhY2hlLmNwcAppbmRleCAzODk5ZWE5MzViMmUuLjVmM2E2OTVkZGNjMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwCkBAIC0yNDYsNyAr
MjQ2LDcgQEAgQVhPYmplY3RDYWNoZTo6QVhPYmplY3RDYWNoZShEb2N1bWVudCYgZG9jdW1lbnQp
CiAgICAgICAgIGxvYWRpbmdQcm9ncmVzcyA9IDE7CiAgICAgbV9sb2FkaW5nUHJvZ3Jlc3MgPSBs
b2FkaW5nUHJvZ3Jlc3M7CiAKLSAgICBBWFRyZWVTdG9yZTo6YWRkKG1faWQsIHRoaXMpOworICAg
IEFYVHJlZVN0b3JlOjphZGQobV9pZCwgV2Vha1B0ciB7IHRoaXMgfSk7CiB9CiAKIEFYT2JqZWN0
Q2FjaGU6On5BWE9iamVjdENhY2hlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvQVhUZXh0TWFya2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QVhUZXh0TWFya2VyLmNwcAppbmRleCAzZTQ2MGQ5NWZhYjcuLjk5OGQ3OGQ5YmViNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRleHRNYXJrZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmNwcApAQCAtMTA4LDcg
KzEwOCw3IEBAIEFYVGV4dE1hcmtlcjo6b3BlcmF0b3IgVmlzaWJsZVBvc2l0aW9uKCkgY29uc3QK
IHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogCi0gICAgYXV0byogY2FjaGUgPSBBWFRy
ZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6dHJlZUZvcklEKHRyZWVJRCgpKTsKKyAgICBhdXRvKiBj
YWNoZSA9IEFYVHJlZVN0b3JlPEFYT2JqZWN0Q2FjaGU+OjpheE9iamVjdENhY2hlRm9ySUQodHJl
ZUlEKCkpOwogICAgIHJldHVybiBjYWNoZSA/IGNhY2hlLT52aXNpYmxlUG9zaXRpb25Gb3JUZXh0
TWFya2VyRGF0YShtX2RhdGEpIDogVmlzaWJsZVBvc2l0aW9uKCk7CiB9CiAKQEAgLTEyMyw3ICsx
MjMsNyBAQCBBWFRleHRNYXJrZXI6Om9wZXJhdG9yIENoYXJhY3Rlck9mZnNldCgpIGNvbnN0CiAg
ICAgLy8gV2hlbiB3ZSBhcmUgYXQgYSBsaW5lIHdyYXAgYW5kIHRoZSBWaXNpYmxlUG9zaXRpb24g
aXMgdXBzdHJlYW0sIGl0IG1lYW5zIHRoZSB0ZXh0IG1hcmtlciBpcyBhdCB0aGUgZW5kIG9mIHRo
ZSBwcmV2aW91cyBsaW5lLgogICAgIC8vIFdlIHVzZSB0aGUgcHJldmlvdXMgQ2hhcmFjdGVyT2Zm
c2V0IHNvIHRoYXQgaXQgd2lsbCBtYXRjaCB0aGUgUmFuZ2UuCiAgICAgaWYgKG1fZGF0YS5hZmZp
bml0eSA9PSBBZmZpbml0eTo6VXBzdHJlYW0pIHsKLSAgICAgICAgaWYgKGF1dG8gY2FjaGUgPSBB
WFRyZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6dHJlZUZvcklEKG1fZGF0YS5heFRyZWVJRCgpKSkK
KyAgICAgICAgaWYgKGF1dG8qIGNhY2hlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OmF4
T2JqZWN0Q2FjaGVGb3JJRChtX2RhdGEuYXhUcmVlSUQoKSkpCiAgICAgICAgICAgICByZXR1cm4g
Y2FjaGUtPnByZXZpb3VzQ2hhcmFjdGVyT2Zmc2V0KHJlc3VsdCwgZmFsc2UpOwogICAgIH0KICAg
ICByZXR1cm4gcmVzdWx0OwpAQCAtMTM0LDcgKzEzNCw3IEBAIEFYQ29yZU9iamVjdCogQVhUZXh0
TWFya2VyOjpvYmplY3QoKSBjb25zdAogICAgIGlmIChpc051bGwoKSkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAKLSAgICBhdXRvIHRyZWUgPSBBWFRyZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6
dHJlZUZvcklEKHRyZWVJRCgpKTsKKyAgICBhdXRvKiB0cmVlID0gQVhUcmVlU3RvcmU8QVhPYmpl
Y3RDYWNoZT46OmF4T2JqZWN0Q2FjaGVGb3JJRCh0cmVlSUQoKSk7CiAgICAgcmV0dXJuIHRyZWUg
PyB0cmVlLT5vYmplY3RGb3JJRChvYmplY3RJRCgpKSA6IG51bGxwdHI7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3RvcmUuaCBiL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3RvcmUuaAppbmRleCA4NzQ0NzM5MTg3ZWIuLmMy
NGRhMGM0YzM4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRy
ZWVTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3RvcmUu
aApAQCAtMjUsMjMgKzI1LDQwIEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkFjY2Vzc2li
aWxpdHlPYmplY3RJbnRlcmZhY2UuaCIKKyNpbmNsdWRlIDx2YXJpYW50PgogI2luY2x1ZGUgPHd0
Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVdlYWtQdHIuaD4KICNpbmNsdWRl
IDx3dGYvV2Vha1B0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKyNpZiBFTkFCTEUoQUND
RVNTSUJJTElUWV9JU09MQVRFRF9UUkVFKQorY2xhc3MgQVhJc29sYXRlZFRyZWU7CisjZW5kaWYK
K2NsYXNzIEFYT2JqZWN0Q2FjaGU7CisKK3VzaW5nIEFYVHJlZVB0ciA9IHN0ZDo6dmFyaWFudDxX
ZWFrUHRyPEFYT2JqZWN0Q2FjaGU+CisjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfSVNPTEFURURf
VFJFRSkKKyAgICAsIFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPgorI2VuZGlmCis+
OworCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogY2xhc3MgQVhUcmVlU3RvcmUgewogICAgIFdURl9N
QUtFX05PTkNPUFlBQkxFKEFYVHJlZVN0b3JlKTsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRF
RDsKIHB1YmxpYzoKICAgICBBWElEIHRyZWVJRCgpIGNvbnN0IHsgcmV0dXJuIG1faWQ7IH0KLSAg
ICBzdGF0aWMgVCogdHJlZUZvcklEKEFYSUQpOworICAgIHN0YXRpYyBBWE9iamVjdENhY2hlKiBh
eE9iamVjdENhY2hlRm9ySUQoQVhJRCk7CisjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfSVNPTEFU
RURfVFJFRSkKKyAgICBzdGF0aWMgQVhJc29sYXRlZFRyZWUqIGlzb2xhdGVkVHJlZUZvcklEKEFY
SUQpOworI2VuZGlmCisKIHByb3RlY3RlZDoKICAgICBBWFRyZWVTdG9yZSgpID0gZGVmYXVsdDsK
LSAgICBzdGF0aWMgdm9pZCBhZGQoQVhJRCwgV2Vha1B0cjxUPik7CisgICAgc3RhdGljIHZvaWQg
YWRkKEFYSUQsIGNvbnN0IEFYVHJlZVB0ciYpOwogICAgIHN0YXRpYyB2b2lkIHJlbW92ZShBWElE
KTsKICAgICBzdGF0aWMgYm9vbCBjb250YWlucyhBWElEKTsKIApAQCAtNDksMTQgKzY2LDM2IEBA
IHByb3RlY3RlZDoKICAgICBjb25zdCBBWElEIG1faWQgeyBnZW5lcmF0ZU5ld0lEKCkgfTsKICAg
ICBzdGF0aWMgTG9jayBzX3N0b3JlTG9jazsKIHByaXZhdGU6Ci0gICAgc3RhdGljIEhhc2hNYXA8
QVhJRCwgV2Vha1B0cjxUPj4mIG1hcCgpIFdURl9SRVFVSVJFU19MT0NLKHNfc3RvcmVMb2NrKTsK
KyAgICBzdGF0aWMgSGFzaE1hcDxBWElELCBBWFRyZWVQdHI+JiBtYXAoKSBXVEZfUkVRVUlSRVNf
TE9DSyhzX3N0b3JlTG9jayk7CiB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgotaW5saW5lIHZv
aWQgQVhUcmVlU3RvcmU8VD46OmFkZChBWElEIGF4SUQsIFdlYWtQdHI8VD4gdCkKK2lubGluZSB2
b2lkIEFYVHJlZVN0b3JlPFQ+OjphZGQoQVhJRCBheElELCBjb25zdCBBWFRyZWVQdHImIHRyZWUp
CiB7Ci0gICAgTG9ja2VyIGxvY2tlciB7IHNfc3RvcmVMb2NrIH07Ci0gICAgbWFwKCkuYWRkKGF4
SUQsIHQpOworICAgIHN3aXRjaE9uKHRyZWUsCisgICAgICAgIFsmXSAoV2Vha1B0cjxBWE9iamVj
dENhY2hlPiYgdHlwZWRUcmVlKSB7CisgICAgICAgICAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9y
ZUxvY2sgfTsKKyAgICAgICAgICAgIG1hcCgpLmFkZChheElELCB0eXBlZFRyZWUpOworICAgICAg
ICB9LAorICAgICAgICBbJl0gKGNvbnN0IFdlYWtQdHI8QVhPYmplY3RDYWNoZT4mIHR5cGVkVHJl
ZSkgeworICAgICAgICAgICAgTG9ja2VyIGxvY2tlciB7IHNfc3RvcmVMb2NrIH07CisgICAgICAg
ICAgICBtYXAoKS5hZGQoYXhJRCwgdHlwZWRUcmVlKTsKKyAgICAgICAgfSwKKyNpZiBFTkFCTEUo
QUNDRVNTSUJJTElUWV9JU09MQVRFRF9UUkVFKQorICAgICAgICBbJl0gKFRocmVhZFNhZmVXZWFr
UHRyPEFYSXNvbGF0ZWRUcmVlPiYgdHlwZWRUcmVlKSB7CisgICAgICAgICAgICBMb2NrZXIgbG9j
a2VyIHsgc19zdG9yZUxvY2sgfTsKKyAgICAgICAgICAgIG1hcCgpLmFkZChheElELCB0eXBlZFRy
ZWUuZ2V0KCkpOworICAgICAgICB9LAorICAgICAgICBbJl0gKGNvbnN0IFRocmVhZFNhZmVXZWFr
UHRyPEFYSXNvbGF0ZWRUcmVlPiYgdHlwZWRUcmVlKSB7CisgICAgICAgICAgICBMb2NrZXIgbG9j
a2VyIHsgc19zdG9yZUxvY2sgfTsKKyAgICAgICAgICAgIG1hcCgpLmFkZChheElELCB0eXBlZFRy
ZWUuZ2V0KCkpOworICAgICAgICB9LAorI2VuZGlmCisgICAgICAgIFtdIChhdXRvJikgeworICAg
ICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgIH0KKyAgICApOwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgpAQCAtNzQsMTYgKzExMywz
OSBAQCBpbmxpbmUgYm9vbCBBWFRyZWVTdG9yZTxUPjo6Y29udGFpbnMoQVhJRCBheElEKQogfQog
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgotaW5saW5lIFQqIEFYVHJlZVN0b3JlPFQ+Ojp0cmVlRm9y
SUQoQVhJRCBheElEKQoraW5saW5lIEFYT2JqZWN0Q2FjaGUqIEFYVHJlZVN0b3JlPFQ+OjpheE9i
amVjdENhY2hlRm9ySUQoQVhJRCBheElEKQoreworICAgIExvY2tlciBsb2NrZXIgeyBzX3N0b3Jl
TG9jayB9OworICAgIGF1dG8gdHJlZSA9IG1hcCgpLmdldChheElEKTsKKyAgICByZXR1cm4gc3dp
dGNoT24odHJlZSwKKyAgICAgICAgW10gKFdlYWtQdHI8QVhPYmplY3RDYWNoZT4mIHR5cGVkVHJl
ZSkgLT4gQVhPYmplY3RDYWNoZSogeyByZXR1cm4gdHlwZWRUcmVlLmdldCgpOyB9LAorICAgICAg
ICBbXSAoYXV0byYpIC0+IEFYT2JqZWN0Q2FjaGUqIHsKKyAgICAgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIH0KKyAgICAp
OworfQorCisjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfSVNPTEFURURfVFJFRSkKK3RlbXBsYXRl
PHR5cGVuYW1lIFQ+CitpbmxpbmUgQVhJc29sYXRlZFRyZWUqIEFYVHJlZVN0b3JlPFQ+Ojppc29s
YXRlZFRyZWVGb3JJRChBWElEIGF4SUQpCiB7CiAgICAgTG9ja2VyIGxvY2tlciB7IHNfc3RvcmVM
b2NrIH07Ci0gICAgcmV0dXJuIG1hcCgpLmdldChheElEKS5nZXQoKTsKKyAgICBhdXRvIHRyZWUg
PSBtYXAoKS5nZXQoYXhJRCk7CisgICAgcmV0dXJuIHN3aXRjaE9uKHRyZWUsCisgICAgICAgIFtd
IChUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4mIHR5cGVkVHJlZSkgLT4gQVhJc29s
YXRlZFRyZWUqIHsgcmV0dXJuIHR5cGVkVHJlZS5nZXQoKS5nZXQoKTsgfSwKKyAgICAgICAgW10g
KGF1dG8mKSAtPiBBWElzb2xhdGVkVHJlZSogeworICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgfQorICAgICk7CiB9
CisjZW5kaWYKIAogdGVtcGxhdGU8dHlwZW5hbWUgVD4KLWlubGluZSBIYXNoTWFwPEFYSUQsIFdl
YWtQdHI8VD4+JiBBWFRyZWVTdG9yZTxUPjo6bWFwKCkKK2lubGluZSBIYXNoTWFwPEFYSUQsIEFY
VHJlZVB0cj4mIEFYVHJlZVN0b3JlPFQ+OjptYXAoKQogewotICAgIHN0YXRpYyBOZXZlckRlc3Ry
b3llZDxIYXNoTWFwPEFYSUQsIFdlYWtQdHI8VD4+PiBtYXA7CisgICAgc3RhdGljIE5ldmVyRGVz
dHJveWVkPEhhc2hNYXA8QVhJRCwgQVhUcmVlUHRyPj4gbWFwOwogICAgIHJldHVybiBtYXA7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRUcmVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0
ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcAppbmRleCA0NmEzNzYyZmFjNTMuLmNmNWQ5MDY0NTRj
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUv
QVhJc29sYXRlZFRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNv
bGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcApAQCAtOTEsNyArOTEsNyBAQCBSZWY8QVhJc29s
YXRlZFRyZWU+IEFYSXNvbGF0ZWRUcmVlOjpjcmVhdGUoQVhPYmplY3RDYWNoZSogYXhPYmplY3RD
YWNoZSkKIAogICAgIC8vIE5vdyB0aGF0IHRoZSB0cmVlIGlzIHJlYWR5IHRvIHRha2UgY2xpZW50
IHJlcXVlc3RzLCBhZGQgaXQgdG8gdGhlIHRyZWUKICAgICAvLyBtYXBzIHNvIHRoYXQgaXQgY2Fu
IGJlIGZvdW5kLgotICAgIEFYVHJlZVN0b3JlOjphZGQodHJlZS0+dHJlZUlEKCksIHRyZWUuY29w
eVJlZigpKTsKKyAgICBBWFRyZWVTdG9yZTo6YWRkKHRyZWUtPnRyZWVJRCgpLCB0cmVlLnB0cigp
KTsKICAgICBhdXRvIHBhZ2VJRCA9IGF4T2JqZWN0Q2FjaGUtPnBhZ2VJRCgpOwogICAgIExvY2tl
ciBsb2NrZXIgeyBzX3N0b3JlTG9jayB9OwogICAgIEFTU0VSVCghdHJlZVBhZ2VDYWNoZSgpLmNv
bnRhaW5zKCpwYWdlSUQpKTsKQEAgLTc3NCwxMCArNzc0LDEwIEBAIHZvaWQgQVhJc29sYXRlZFRy
ZWU6OmFwcGx5UGVuZGluZ0NoYW5nZXMoKQogCiAjaWZuZGVmIE5ERUJVRwogICAgICAgICBBU1NF
UlQoQVhUcmVlU3RvcmU6OmNvbnRhaW5zKHRyZWVJRCgpKSk7Ci0gICAgICAgIGlmIChhdXRvIHRy
ZWUgPSBBWFRyZWVTdG9yZTo6dHJlZUZvcklEKHRyZWVJRCgpKSkgeworICAgICAgICBpZiAoYXV0
byogdHJlZSA9IEFYVHJlZVN0b3JlOjppc29sYXRlZFRyZWVGb3JJRCh0cmVlSUQoKSkpIHsKICAg
ICAgICAgICAgIC8vIEF0IHRoaXMgcG9pbnQsIHRoZXJlIHNob3VsZCBvbmx5IGJlIHR3byByZWZl
cmVuY2VzIGxlZnQgdG8gdGhpcyB0cmVlIC0tIG9uZSBpbiB0aGUgbWFwLAogICAgICAgICAgICAg
Ly8gYW5kIHRoZSBgcHJvdGVjdGVkVGhpc2AgYWJvdmUuCi0gICAgICAgICAgICBBU1NFUlQodHJl
ZS0+cmVmQ291bnQoKSA9PSAyLCAiVW5leHBlY3RlZCByZWZjb3VudCBiZWZvcmUgYXR0ZW1wdGlu
ZyB0byBkZXN0cm95IGlzb2xhdGVkIHRyZWU6ICVkIiwgdHJlZS0+cmVmQ291bnQoKSk7CisgICAg
ICAgICAgICBBU1NFUlQodHJlZS0+c3Ryb25nUmVmQ291bnQoKSA9PSAyLCAiVW5leHBlY3RlZCBy
ZWZjb3VudCBiZWZvcmUgYXR0ZW1wdGluZyB0byBkZXN0cm95IGlzb2xhdGVkIHRyZWU6ICVkIiwg
dHJlZS0+c3Ryb25nUmVmQ291bnQoKSk7CiAgICAgICAgIH0KICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJl
ZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRl
ZFRyZWUuaAppbmRleCA4MGZjZjlkMWQzYTMuLjJjY2ZhYTM2ZGNkMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVk
VHJlZS5oCkBAIC0zNSw2ICszNSw3IEBACiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KICNpbmNsdWRl
IDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+Cisj
aW5jbHVkZSA8d3RmL1RocmVhZFNhZmVXZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogY2xh
c3MgVGV4dFN0cmVhbTsKQEAgLTI3Myw4ICsyNzQsNyBAQCBzdHJ1Y3QgQVhQcm9wZXJ0eUNoYW5n
ZSB7CiAgICAgQVhQcm9wZXJ0eU1hcCBwcm9wZXJ0aWVzOyAvLyBDaGFuZ2VkIHByb3BlcnRpZXMu
CiB9OwogCi1jbGFzcyBBWElzb2xhdGVkVHJlZSA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRl
ZDxBWElzb2xhdGVkVHJlZT4KLSAgICAsIHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxBWElzb2xhdGVk
VHJlZT4KK2NsYXNzIEFYSXNvbGF0ZWRUcmVlIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVk
QW5kQ2FuTWFrZVRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPgogICAgICwgcHVibGlj
IEFYVHJlZVN0b3JlPEFYSXNvbGF0ZWRUcmVlPiB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUo
QVhJc29sYXRlZFRyZWUpOwogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>464691</attachid>
            <date>2023-01-27 14:28:59 -0800</date>
            <delta_ts>2023-01-27 14:54:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-251223-20230127172857.patch</filename>
            <type>text/plain</type>
            <size>9538</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSAyYjA5MjI2ZjliNDlmM2QyOTgzYjRkMWY5Yzc5ODhkMTM5MTUyZmVkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBXZWQsIDI1IEphbiAyMDIzIDE0OjM5OjQyIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0g
QVg6IFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlIHNob3VsZCB1c2UKIFdURjo6VGhyZWFkU2FmZVJl
ZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHI8Pi4KIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTEyMjMgcmRhcjovLzEwNDUxMjE1MwoKUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCgpBWElzb2xhdGVkVHJlZSBub3cgZGVyaXZlcyBmcm9tIFRocmVh
ZFNhZmVSZWZDb3VudGVkQW5kQ2FuTWFrZVRocmVhZFNhZmVXZWFrUHRyIGluc3RlYWQgb2YgVGhy
ZWFkU2FmZVJlZkNvdW50ZWQgYW5kIENhbk1ha2VXZWFrUHRyLCB3aGljaCB3YXMgYSBwcm9ibGVt
IHNpbmNlIFdlYWtQdHIgaXMgbm90IHRocmVhZCBzYWZlLgpJbiBvcmRlciB0byBoYXZlIGEgc2lu
Z2xlIEFYVHJlZVN0b3JlIHRoYXQga2VlcHMgYm90aCBXZWFrUHRyPEFYT2JqZWN0Q2FjaGU+IGFu
ZCBUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4sIHdlIGFkZGVkIHRoZSB2YXJpYW50
IEFYVHJlZVB0ci4gTm90ZSB0aGF0IFdlYWtQdHI8QVhPYmplY3RDYWNoZT4gZG9lcyBub3QgaGF2
ZSB0byBiZSB0aHJlYWQgc2FmZSBzaW5jZSBBWE9iamVjdENhY2hlIGlzIG9ubHkgdXNlZCBvbiB0
aGUgbWFpbiB0aHJlYWQuCi0tLQogLi4uL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENh
Y2hlLmNwcCAgIHwgIDIgKy0KIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFy
a2VyLmNwcCB8ICA2ICstCiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3Jl
LmggICAgfCA4MiArKysrKysrKysrKysrKysrLS0tCiAuLi4vaXNvbGF0ZWR0cmVlL0FYSXNvbGF0
ZWRUcmVlLmNwcCAgICAgICAgICAgfCAxMCArLS0KIC4uLi9pc29sYXRlZHRyZWUvQVhJc29sYXRl
ZFRyZWUuaCAgICAgICAgICAgICB8ICA0ICstCiA1IGZpbGVzIGNoYW5nZWQsIDc5IGluc2VydGlv
bnMoKyksIDI1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FYT2JqZWN0Q2FjaGUuY3BwCmluZGV4IDEzMzU3ZDA0NWZhMy4uMGRhZWI2NzYxMDBlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAKQEAgLTI0
Niw3ICsyNDYsNyBAQCBBWE9iamVjdENhY2hlOjpBWE9iamVjdENhY2hlKERvY3VtZW50JiBkb2N1
bWVudCkKICAgICAgICAgbG9hZGluZ1Byb2dyZXNzID0gMTsKICAgICBtX2xvYWRpbmdQcm9ncmVz
cyA9IGxvYWRpbmdQcm9ncmVzczsKIAotICAgIEFYVHJlZVN0b3JlOjphZGQobV9pZCwgdGhpcyk7
CisgICAgQVhUcmVlU3RvcmU6OmFkZChtX2lkLCBXZWFrUHRyIHsgdGhpcyB9KTsKIH0KIAogQVhP
YmplY3RDYWNoZTo6fkFYT2JqZWN0Q2FjaGUoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BWFRleHRNYXJrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9BWFRleHRNYXJrZXIuY3BwCmluZGV4IDNlNDYwZDk1ZmFiNy4uOTk4ZDc4ZDliZWI1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVGV4dE1hcmtlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRleHRNYXJrZXIuY3BwCkBAIC0x
MDgsNyArMTA4LDcgQEAgQVhUZXh0TWFya2VyOjpvcGVyYXRvciBWaXNpYmxlUG9zaXRpb24oKSBj
b25zdAogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAKLSAgICBhdXRvKiBjYWNoZSA9
IEFYVHJlZVN0b3JlPEFYT2JqZWN0Q2FjaGU+Ojp0cmVlRm9ySUQodHJlZUlEKCkpOworICAgIGF1
dG8qIGNhY2hlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OmF4T2JqZWN0Q2FjaGVGb3JJ
RCh0cmVlSUQoKSk7CiAgICAgcmV0dXJuIGNhY2hlID8gY2FjaGUtPnZpc2libGVQb3NpdGlvbkZv
clRleHRNYXJrZXJEYXRhKG1fZGF0YSkgOiBWaXNpYmxlUG9zaXRpb24oKTsKIH0KIApAQCAtMTIz
LDcgKzEyMyw3IEBAIEFYVGV4dE1hcmtlcjo6b3BlcmF0b3IgQ2hhcmFjdGVyT2Zmc2V0KCkgY29u
c3QKICAgICAvLyBXaGVuIHdlIGFyZSBhdCBhIGxpbmUgd3JhcCBhbmQgdGhlIFZpc2libGVQb3Np
dGlvbiBpcyB1cHN0cmVhbSwgaXQgbWVhbnMgdGhlIHRleHQgbWFya2VyIGlzIGF0IHRoZSBlbmQg
b2YgdGhlIHByZXZpb3VzIGxpbmUuCiAgICAgLy8gV2UgdXNlIHRoZSBwcmV2aW91cyBDaGFyYWN0
ZXJPZmZzZXQgc28gdGhhdCBpdCB3aWxsIG1hdGNoIHRoZSBSYW5nZS4KICAgICBpZiAobV9kYXRh
LmFmZmluaXR5ID09IEFmZmluaXR5OjpVcHN0cmVhbSkgewotICAgICAgICBpZiAoYXV0byBjYWNo
ZSA9IEFYVHJlZVN0b3JlPEFYT2JqZWN0Q2FjaGU+Ojp0cmVlRm9ySUQobV9kYXRhLmF4VHJlZUlE
KCkpKQorICAgICAgICBpZiAoYXV0byogY2FjaGUgPSBBWFRyZWVTdG9yZTxBWE9iamVjdENhY2hl
Pjo6YXhPYmplY3RDYWNoZUZvcklEKG1fZGF0YS5heFRyZWVJRCgpKSkKICAgICAgICAgICAgIHJl
dHVybiBjYWNoZS0+cHJldmlvdXNDaGFyYWN0ZXJPZmZzZXQocmVzdWx0LCBmYWxzZSk7CiAgICAg
fQogICAgIHJldHVybiByZXN1bHQ7CkBAIC0xMzQsNyArMTM0LDcgQEAgQVhDb3JlT2JqZWN0KiBB
WFRleHRNYXJrZXI6Om9iamVjdCgpIGNvbnN0CiAgICAgaWYgKGlzTnVsbCgpKQogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKIAotICAgIGF1dG8gdHJlZSA9IEFYVHJlZVN0b3JlPEFYT2JqZWN0Q2Fj
aGU+Ojp0cmVlRm9ySUQodHJlZUlEKCkpOworICAgIGF1dG8qIHRyZWUgPSBBWFRyZWVTdG9yZTxB
WE9iamVjdENhY2hlPjo6YXhPYmplY3RDYWNoZUZvcklEKHRyZWVJRCgpKTsKICAgICByZXR1cm4g
dHJlZSA/IHRyZWUtPm9iamVjdEZvcklEKG9iamVjdElEKCkpIDogbnVsbHB0cjsKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRyZWVTdG9yZS5oIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRyZWVTdG9yZS5oCmluZGV4IDg3NDQ3MzkxODdl
Yi4uYzI0ZGEwYzRjMzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FYVHJlZVN0b3JlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRyZWVT
dG9yZS5oCkBAIC0yNSwyMyArMjUsNDAgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQWNj
ZXNzaWJpbGl0eU9iamVjdEludGVyZmFjZS5oIgorI2luY2x1ZGUgPHZhcmlhbnQ+CiAjaW5jbHVk
ZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgogI2luY2x1ZGUgPHd0Zi9O
ZXZlckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlV2Vha1B0ci5oPgogI2lu
Y2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmIEVOQUJM
RShBQ0NFU1NJQklMSVRZX0lTT0xBVEVEX1RSRUUpCitjbGFzcyBBWElzb2xhdGVkVHJlZTsKKyNl
bmRpZgorY2xhc3MgQVhPYmplY3RDYWNoZTsKKwordXNpbmcgQVhUcmVlUHRyID0gc3RkOjp2YXJp
YW50PFdlYWtQdHI8QVhPYmplY3RDYWNoZT4KKyNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09M
QVRFRF9UUkVFKQorICAgICwgVGhyZWFkU2FmZVdlYWtQdHI8QVhJc29sYXRlZFRyZWU+CisjZW5k
aWYKKz47CisKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CiBjbGFzcyBBWFRyZWVTdG9yZSB7CiAgICAg
V1RGX01BS0VfTk9OQ09QWUFCTEUoQVhUcmVlU3RvcmUpOwogICAgIFdURl9NQUtFX0ZBU1RfQUxM
T0NBVEVEOwogcHVibGljOgogICAgIEFYSUQgdHJlZUlEKCkgY29uc3QgeyByZXR1cm4gbV9pZDsg
fQotICAgIHN0YXRpYyBUKiB0cmVlRm9ySUQoQVhJRCk7CisgICAgc3RhdGljIEFYT2JqZWN0Q2Fj
aGUqIGF4T2JqZWN0Q2FjaGVGb3JJRChBWElEKTsKKyNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9J
U09MQVRFRF9UUkVFKQorICAgIHN0YXRpYyBBWElzb2xhdGVkVHJlZSogaXNvbGF0ZWRUcmVlRm9y
SUQoQVhJRCk7CisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAgIEFYVHJlZVN0b3JlKCkgPSBkZWZh
dWx0OwotICAgIHN0YXRpYyB2b2lkIGFkZChBWElELCBXZWFrUHRyPFQ+KTsKKyAgICBzdGF0aWMg
dm9pZCBhZGQoQVhJRCwgY29uc3QgQVhUcmVlUHRyJik7CiAgICAgc3RhdGljIHZvaWQgcmVtb3Zl
KEFYSUQpOwogICAgIHN0YXRpYyBib29sIGNvbnRhaW5zKEFYSUQpOwogCkBAIC00OSwxNCArNjYs
MzYgQEAgcHJvdGVjdGVkOgogICAgIGNvbnN0IEFYSUQgbV9pZCB7IGdlbmVyYXRlTmV3SUQoKSB9
OwogICAgIHN0YXRpYyBMb2NrIHNfc3RvcmVMb2NrOwogcHJpdmF0ZToKLSAgICBzdGF0aWMgSGFz
aE1hcDxBWElELCBXZWFrUHRyPFQ+PiYgbWFwKCkgV1RGX1JFUVVJUkVTX0xPQ0soc19zdG9yZUxv
Y2spOworICAgIHN0YXRpYyBIYXNoTWFwPEFYSUQsIEFYVHJlZVB0cj4mIG1hcCgpIFdURl9SRVFV
SVJFU19MT0NLKHNfc3RvcmVMb2NrKTsKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+Ci1pbmxp
bmUgdm9pZCBBWFRyZWVTdG9yZTxUPjo6YWRkKEFYSUQgYXhJRCwgV2Vha1B0cjxUPiB0KQoraW5s
aW5lIHZvaWQgQVhUcmVlU3RvcmU8VD46OmFkZChBWElEIGF4SUQsIGNvbnN0IEFYVHJlZVB0ciYg
dHJlZSkKIHsKLSAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKLSAgICBtYXAoKS5h
ZGQoYXhJRCwgdCk7CisgICAgc3dpdGNoT24odHJlZSwKKyAgICAgICAgWyZdIChXZWFrUHRyPEFY
T2JqZWN0Q2FjaGU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAgICAgIExvY2tlciBsb2NrZXIgeyBz
X3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRkKGF4SUQsIHR5cGVkVHJlZSk7Cisg
ICAgICAgIH0sCisgICAgICAgIFsmXSAoY29uc3QgV2Vha1B0cjxBWE9iamVjdENhY2hlPiYgdHlw
ZWRUcmVlKSB7CisgICAgICAgICAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKKyAg
ICAgICAgICAgIG1hcCgpLmFkZChheElELCB0eXBlZFRyZWUpOworICAgICAgICB9LAorI2lmIEVO
QUJMRShBQ0NFU1NJQklMSVRZX0lTT0xBVEVEX1RSRUUpCisgICAgICAgIFsmXSAoVGhyZWFkU2Fm
ZVdlYWtQdHI8QVhJc29sYXRlZFRyZWU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAgICAgIExvY2tl
ciBsb2NrZXIgeyBzX3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRkKGF4SUQsIHR5
cGVkVHJlZS5nZXQoKSk7CisgICAgICAgIH0sCisgICAgICAgIFsmXSAoY29uc3QgVGhyZWFkU2Fm
ZVdlYWtQdHI8QVhJc29sYXRlZFRyZWU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAgICAgIExvY2tl
ciBsb2NrZXIgeyBzX3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRkKGF4SUQsIHR5
cGVkVHJlZS5nZXQoKSk7CisgICAgICAgIH0sCisjZW5kaWYKKyAgICAgICAgW10gKGF1dG8mKSB7
CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybjsK
KyAgICAgICAgfQorICAgICk7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CkBAIC03NCwxNiAr
MTEzLDM5IEBAIGlubGluZSBib29sIEFYVHJlZVN0b3JlPFQ+Ojpjb250YWlucyhBWElEIGF4SUQp
CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+Ci1pbmxpbmUgVCogQVhUcmVlU3RvcmU8VD46OnRy
ZWVGb3JJRChBWElEIGF4SUQpCitpbmxpbmUgQVhPYmplY3RDYWNoZSogQVhUcmVlU3RvcmU8VD46
OmF4T2JqZWN0Q2FjaGVGb3JJRChBWElEIGF4SUQpCit7CisgICAgTG9ja2VyIGxvY2tlciB7IHNf
c3RvcmVMb2NrIH07CisgICAgYXV0byB0cmVlID0gbWFwKCkuZ2V0KGF4SUQpOworICAgIHJldHVy
biBzd2l0Y2hPbih0cmVlLAorICAgICAgICBbXSAoV2Vha1B0cjxBWE9iamVjdENhY2hlPiYgdHlw
ZWRUcmVlKSAtPiBBWE9iamVjdENhY2hlKiB7IHJldHVybiB0eXBlZFRyZWUuZ2V0KCk7IH0sCisg
ICAgICAgIFtdIChhdXRvJikgLT4gQVhPYmplY3RDYWNoZSogeworICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgfQor
ICAgICk7Cit9CisKKyNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09MQVRFRF9UUkVFKQordGVt
cGxhdGU8dHlwZW5hbWUgVD4KK2lubGluZSBBWElzb2xhdGVkVHJlZSogQVhUcmVlU3RvcmU8VD46
Omlzb2xhdGVkVHJlZUZvcklEKEFYSUQgYXhJRCkKIHsKICAgICBMb2NrZXIgbG9ja2VyIHsgc19z
dG9yZUxvY2sgfTsKLSAgICByZXR1cm4gbWFwKCkuZ2V0KGF4SUQpLmdldCgpOworICAgIGF1dG8g
dHJlZSA9IG1hcCgpLmdldChheElEKTsKKyAgICByZXR1cm4gc3dpdGNoT24odHJlZSwKKyAgICAg
ICAgW10gKFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPiYgdHlwZWRUcmVlKSAtPiBB
WElzb2xhdGVkVHJlZSogeyByZXR1cm4gdHlwZWRUcmVlLmdldCgpLmdldCgpOyB9LAorICAgICAg
ICBbXSAoYXV0byYpIC0+IEFYSXNvbGF0ZWRUcmVlKiB7CisgICAgICAgICAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICB9CisgICAg
KTsKIH0KKyNlbmRpZgogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgotaW5saW5lIEhhc2hNYXA8QVhJ
RCwgV2Vha1B0cjxUPj4mIEFYVHJlZVN0b3JlPFQ+OjptYXAoKQoraW5saW5lIEhhc2hNYXA8QVhJ
RCwgQVhUcmVlUHRyPiYgQVhUcmVlU3RvcmU8VD46Om1hcCgpCiB7Ci0gICAgc3RhdGljIE5ldmVy
RGVzdHJveWVkPEhhc2hNYXA8QVhJRCwgV2Vha1B0cjxUPj4+IG1hcDsKKyAgICBzdGF0aWMgTmV2
ZXJEZXN0cm95ZWQ8SGFzaE1hcDxBWElELCBBWFRyZWVQdHI+PiBtYXA7CiAgICAgcmV0dXJuIG1h
cDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRl
ZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9p
c29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCmluZGV4IDQ2YTM3NjJmYWM1My4uNTAwMzFk
MTA2ODkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVk
dHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCkBAIC05MSw3ICs5MSw3IEBAIFJlZjxB
WElzb2xhdGVkVHJlZT4gQVhJc29sYXRlZFRyZWU6OmNyZWF0ZShBWE9iamVjdENhY2hlKiBheE9i
amVjdENhY2hlKQogCiAgICAgLy8gTm93IHRoYXQgdGhlIHRyZWUgaXMgcmVhZHkgdG8gdGFrZSBj
bGllbnQgcmVxdWVzdHMsIGFkZCBpdCB0byB0aGUgdHJlZQogICAgIC8vIG1hcHMgc28gdGhhdCBp
dCBjYW4gYmUgZm91bmQuCi0gICAgQVhUcmVlU3RvcmU6OmFkZCh0cmVlLT50cmVlSUQoKSwgdHJl
ZS5jb3B5UmVmKCkpOworICAgIEFYVHJlZVN0b3JlOjphZGQodHJlZS0+dHJlZUlEKCksIHRyZWUu
cHRyKCkpOwogICAgIGF1dG8gcGFnZUlEID0gYXhPYmplY3RDYWNoZS0+cGFnZUlEKCk7CiAgICAg
TG9ja2VyIGxvY2tlciB7IHNfc3RvcmVMb2NrIH07CiAgICAgQVNTRVJUKCF0cmVlUGFnZUNhY2hl
KCkuY29udGFpbnMoKnBhZ2VJRCkpOwpAQCAtNzcyLDE1ICs3NzIsNyBAQCB2b2lkIEFYSXNvbGF0
ZWRUcmVlOjphcHBseVBlbmRpbmdDaGFuZ2VzKCkKICAgICAgICAgLy8gV2UgZG9uJ3QgbmVlZCB0
byBib3RoZXIgY2xlYXJpbmcgb3V0IGFueSBvdGhlciBub24tY3ljbGUtY2F1c2luZyBtZW1iZXIg
dmFyaWFibGVzIGFzIHRoZXkKICAgICAgICAgLy8gd2lsbCBiZSBjbGVhbmVkIHVwIGF1dG9tYXRp
Y2FsbHkgd2hlbiB0aGUgdHJlZSBpcyBkZXN0cm95ZWQuCiAKLSNpZm5kZWYgTkRFQlVHCiAgICAg
ICAgIEFTU0VSVChBWFRyZWVTdG9yZTo6Y29udGFpbnModHJlZUlEKCkpKTsKLSAgICAgICAgaWYg
KGF1dG8gdHJlZSA9IEFYVHJlZVN0b3JlOjp0cmVlRm9ySUQodHJlZUlEKCkpKSB7Ci0gICAgICAg
ICAgICAvLyBBdCB0aGlzIHBvaW50LCB0aGVyZSBzaG91bGQgb25seSBiZSB0d28gcmVmZXJlbmNl
cyBsZWZ0IHRvIHRoaXMgdHJlZSAtLSBvbmUgaW4gdGhlIG1hcCwKLSAgICAgICAgICAgIC8vIGFu
ZCB0aGUgYHByb3RlY3RlZFRoaXNgIGFib3ZlLgotICAgICAgICAgICAgQVNTRVJUKHRyZWUtPnJl
ZkNvdW50KCkgPT0gMiwgIlVuZXhwZWN0ZWQgcmVmY291bnQgYmVmb3JlIGF0dGVtcHRpbmcgdG8g
ZGVzdHJveSBpc29sYXRlZCB0cmVlOiAlZCIsIHRyZWUtPnJlZkNvdW50KCkpOwotICAgICAgICB9
Ci0jZW5kaWYKLQogICAgICAgICBBWFRyZWVTdG9yZTo6cmVtb3ZlKHRyZWVJRCgpKTsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCmluZGV4IDIzYzY0ZGM1Y2E5Ni4u
NDIyMTA4MzQxYjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lz
b2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmgKQEAgLTM1LDYgKzM1LDcgQEAKICNp
bmNsdWRlIDx3dGYvTG9jay5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3
dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVdlYWtQ
dHIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiBjbGFzcyBUZXh0U3RyZWFtOwpAQCAtMjczLDggKzI3
NCw3IEBAIHN0cnVjdCBBWFByb3BlcnR5Q2hhbmdlIHsKICAgICBBWFByb3BlcnR5TWFwIHByb3Bl
cnRpZXM7IC8vIENoYW5nZWQgcHJvcGVydGllcy4KIH07CiAKLWNsYXNzIEFYSXNvbGF0ZWRUcmVl
IDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPEFYSXNvbGF0ZWRUcmVlPgotICAgICwgcHVi
bGljIENhbk1ha2VXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPgorY2xhc3MgQVhJc29sYXRlZFRyZWUg
OiBwdWJsaWMgVGhyZWFkU2FmZVJlZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHI8
QVhJc29sYXRlZFRyZWU+CiAgICAgLCBwdWJsaWMgQVhUcmVlU3RvcmU8QVhJc29sYXRlZFRyZWU+
IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBWElzb2xhdGVkVHJlZSk7CiAgICAgV1RGX01B
S0VfRkFTVF9BTExPQ0FURUQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>464694</attachid>
            <date>2023-01-27 14:55:03 -0800</date>
            <delta_ts>2023-01-28 12:12:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-251223-20230127175502.patch</filename>
            <type>text/plain</type>
            <size>9562</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSA1NDIxOGVlMmQwMzM4MmJjMjc3YjllMTVjNmU0NTNlZmVjN2RmZWU2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBXZWQsIDI1IEphbiAyMDIzIDE0OjM5OjQyIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0g
QVg6IFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlIHNob3VsZCB1c2UKIFdURjo6VGhyZWFkU2FmZVJl
ZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHI8Pi4KIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTEyMjMgcmRhcjovLzEwNDUxMjE1MwoKUmV2aWV3ZWQg
YnkgQWxleCBDaHJpc3RlbnNlbi4KCkFYSXNvbGF0ZWRUcmVlIG5vdyBkZXJpdmVzIGZyb20gVGhy
ZWFkU2FmZVJlZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHIgaW5zdGVhZCBvZiBU
aHJlYWRTYWZlUmVmQ291bnRlZCBhbmQgQ2FuTWFrZVdlYWtQdHIsIHdoaWNoIHdhcyBhIHByb2Js
ZW0gc2luY2UgV2Vha1B0ciBpcyBub3QgdGhyZWFkIHNhZmUuCkluIG9yZGVyIHRvIGhhdmUgYSBz
aW5nbGUgQVhUcmVlU3RvcmUgdGhhdCBrZWVwcyBib3RoIFdlYWtQdHI8QVhPYmplY3RDYWNoZT4g
YW5kIFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPiwgd2UgYWRkZWQgdGhlIHZhcmlh
bnQgQVhUcmVlUHRyLiBOb3RlIHRoYXQgV2Vha1B0cjxBWE9iamVjdENhY2hlPiBkb2VzIG5vdCBo
YXZlIHRvIGJlIHRocmVhZCBzYWZlIHNpbmNlIEFYT2JqZWN0Q2FjaGUgaXMgb25seSB1c2VkIG9u
IHRoZSBtYWluIHRocmVhZC4KLS0tCiAuLi4vV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0
Q2FjaGUuY3BwICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRleHRN
YXJrZXIuY3BwIHwgIDYgKy0KIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3Rv
cmUuaCAgICB8IDgyICsrKysrKysrKysrKysrKystLS0KIC4uLi9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZFRyZWUuY3BwICAgICAgICAgICB8IDEwICstLQogLi4uL2lzb2xhdGVkdHJlZS9BWElzb2xh
dGVkVHJlZS5oICAgICAgICAgICAgIHwgIDQgKy0KIDUgZmlsZXMgY2hhbmdlZCwgNzkgaW5zZXJ0
aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQVhPYmplY3RDYWNoZS5jcHAKaW5kZXggMTMzNTdkMDQ1ZmEzLi4wZGFlYjY3NjEwMGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcApAQCAt
MjQ2LDcgKzI0Niw3IEBAIEFYT2JqZWN0Q2FjaGU6OkFYT2JqZWN0Q2FjaGUoRG9jdW1lbnQmIGRv
Y3VtZW50KQogICAgICAgICBsb2FkaW5nUHJvZ3Jlc3MgPSAxOwogICAgIG1fbG9hZGluZ1Byb2dy
ZXNzID0gbG9hZGluZ1Byb2dyZXNzOwogCi0gICAgQVhUcmVlU3RvcmU6OmFkZChtX2lkLCB0aGlz
KTsKKyAgICBBWFRyZWVTdG9yZTo6YWRkKG1faWQsIFdlYWtQdHIgeyB0aGlzIH0pOwogfQogCiBB
WE9iamVjdENhY2hlOjp+QVhPYmplY3RDYWNoZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FYVGV4dE1hcmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L0FYVGV4dE1hcmtlci5jcHAKaW5kZXggM2U0NjBkOTVmYWI3Li45OThkNzhkOWJlYjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVGV4dE1hcmtlci5jcHAKQEAg
LTEwOCw3ICsxMDgsNyBAQCBBWFRleHRNYXJrZXI6Om9wZXJhdG9yIFZpc2libGVQb3NpdGlvbigp
IGNvbnN0CiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIAotICAgIGF1dG8qIGNhY2hl
ID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OnRyZWVGb3JJRCh0cmVlSUQoKSk7CisgICAg
YXV0byogY2FjaGUgPSBBWFRyZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6YXhPYmplY3RDYWNoZUZv
cklEKHRyZWVJRCgpKTsKICAgICByZXR1cm4gY2FjaGUgPyBjYWNoZS0+dmlzaWJsZVBvc2l0aW9u
Rm9yVGV4dE1hcmtlckRhdGEobV9kYXRhKSA6IFZpc2libGVQb3NpdGlvbigpOwogfQogCkBAIC0x
MjMsNyArMTIzLDcgQEAgQVhUZXh0TWFya2VyOjpvcGVyYXRvciBDaGFyYWN0ZXJPZmZzZXQoKSBj
b25zdAogICAgIC8vIFdoZW4gd2UgYXJlIGF0IGEgbGluZSB3cmFwIGFuZCB0aGUgVmlzaWJsZVBv
c2l0aW9uIGlzIHVwc3RyZWFtLCBpdCBtZWFucyB0aGUgdGV4dCBtYXJrZXIgaXMgYXQgdGhlIGVu
ZCBvZiB0aGUgcHJldmlvdXMgbGluZS4KICAgICAvLyBXZSB1c2UgdGhlIHByZXZpb3VzIENoYXJh
Y3Rlck9mZnNldCBzbyB0aGF0IGl0IHdpbGwgbWF0Y2ggdGhlIFJhbmdlLgogICAgIGlmIChtX2Rh
dGEuYWZmaW5pdHkgPT0gQWZmaW5pdHk6OlVwc3RyZWFtKSB7Ci0gICAgICAgIGlmIChhdXRvIGNh
Y2hlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OnRyZWVGb3JJRChtX2RhdGEuYXhUcmVl
SUQoKSkpCisgICAgICAgIGlmIChhdXRvKiBjYWNoZSA9IEFYVHJlZVN0b3JlPEFYT2JqZWN0Q2Fj
aGU+OjpheE9iamVjdENhY2hlRm9ySUQobV9kYXRhLmF4VHJlZUlEKCkpKQogICAgICAgICAgICAg
cmV0dXJuIGNhY2hlLT5wcmV2aW91c0NoYXJhY3Rlck9mZnNldChyZXN1bHQsIGZhbHNlKTsKICAg
ICB9CiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEzNCw3ICsxMzQsNyBAQCBBWENvcmVPYmplY3Qq
IEFYVGV4dE1hcmtlcjo6b2JqZWN0KCkgY29uc3QKICAgICBpZiAoaXNOdWxsKCkpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwogCi0gICAgYXV0byB0cmVlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RD
YWNoZT46OnRyZWVGb3JJRCh0cmVlSUQoKSk7CisgICAgYXV0byogdHJlZSA9IEFYVHJlZVN0b3Jl
PEFYT2JqZWN0Q2FjaGU+OjpheE9iamVjdENhY2hlRm9ySUQodHJlZUlEKCkpOwogICAgIHJldHVy
biB0cmVlID8gdHJlZS0+b2JqZWN0Rm9ySUQob2JqZWN0SUQoKSkgOiBudWxscHRyOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3JlLmggYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3JlLmgKaW5kZXggODc0NDczOTE4
N2ViLi4xMzY0NzU3MDAwOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQVhUcmVlU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJl
ZVN0b3JlLmgKQEAgLTI1LDIzICsyNSw0MCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJB
Y2Nlc3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmgiCisjaW5jbHVkZSA8dmFyaWFudD4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3Rm
L05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVXZWFrUHRyLmg+CiAj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisjaWYgRU5B
QkxFKEFDQ0VTU0lCSUxJVFlfSVNPTEFURURfVFJFRSkKK2NsYXNzIEFYSXNvbGF0ZWRUcmVlOwor
I2VuZGlmCitjbGFzcyBBWE9iamVjdENhY2hlOworCit1c2luZyBBWFRyZWVQdHIgPSBzdGQ6OnZh
cmlhbnQ8V2Vha1B0cjxBWE9iamVjdENhY2hlPgorI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0lT
T0xBVEVEX1RSRUUpCisgICAgLCBUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4KKyNl
bmRpZgorPjsKKwogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIGNsYXNzIEFYVHJlZVN0b3JlIHsKICAg
ICBXVEZfTUFLRV9OT05DT1BZQUJMRShBWFRyZWVTdG9yZSk7CiAgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgQVhJRCB0cmVlSUQoKSBjb25zdCB7IHJldHVybiBtX2lk
OyB9Ci0gICAgc3RhdGljIFQqIHRyZWVGb3JJRChBWElEKTsKKyAgICBzdGF0aWMgQVhPYmplY3RD
YWNoZSogYXhPYmplY3RDYWNoZUZvcklEKEFYSUQpOworI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZ
X0lTT0xBVEVEX1RSRUUpCisgICAgc3RhdGljIFJlZlB0cjxBWElzb2xhdGVkVHJlZT4gaXNvbGF0
ZWRUcmVlRm9ySUQoQVhJRCk7CisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAgIEFYVHJlZVN0b3Jl
KCkgPSBkZWZhdWx0OwotICAgIHN0YXRpYyB2b2lkIGFkZChBWElELCBXZWFrUHRyPFQ+KTsKKyAg
ICBzdGF0aWMgdm9pZCBhZGQoQVhJRCwgY29uc3QgQVhUcmVlUHRyJik7CiAgICAgc3RhdGljIHZv
aWQgcmVtb3ZlKEFYSUQpOwogICAgIHN0YXRpYyBib29sIGNvbnRhaW5zKEFYSUQpOwogCkBAIC00
OSwxNCArNjYsMzYgQEAgcHJvdGVjdGVkOgogICAgIGNvbnN0IEFYSUQgbV9pZCB7IGdlbmVyYXRl
TmV3SUQoKSB9OwogICAgIHN0YXRpYyBMb2NrIHNfc3RvcmVMb2NrOwogcHJpdmF0ZToKLSAgICBz
dGF0aWMgSGFzaE1hcDxBWElELCBXZWFrUHRyPFQ+PiYgbWFwKCkgV1RGX1JFUVVJUkVTX0xPQ0so
c19zdG9yZUxvY2spOworICAgIHN0YXRpYyBIYXNoTWFwPEFYSUQsIEFYVHJlZVB0cj4mIG1hcCgp
IFdURl9SRVFVSVJFU19MT0NLKHNfc3RvcmVMb2NrKTsKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+Ci1pbmxpbmUgdm9pZCBBWFRyZWVTdG9yZTxUPjo6YWRkKEFYSUQgYXhJRCwgV2Vha1B0cjxU
PiB0KQoraW5saW5lIHZvaWQgQVhUcmVlU3RvcmU8VD46OmFkZChBWElEIGF4SUQsIGNvbnN0IEFY
VHJlZVB0ciYgdHJlZSkKIHsKLSAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKLSAg
ICBtYXAoKS5hZGQoYXhJRCwgdCk7CisgICAgc3dpdGNoT24odHJlZSwKKyAgICAgICAgWyZdIChX
ZWFrUHRyPEFYT2JqZWN0Q2FjaGU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAgICAgIExvY2tlciBs
b2NrZXIgeyBzX3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRkKGF4SUQsIHR5cGVk
VHJlZSk7CisgICAgICAgIH0sCisgICAgICAgIFsmXSAoY29uc3QgV2Vha1B0cjxBWE9iamVjdENh
Y2hlPiYgdHlwZWRUcmVlKSB7CisgICAgICAgICAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxv
Y2sgfTsKKyAgICAgICAgICAgIG1hcCgpLmFkZChheElELCB0eXBlZFRyZWUpOworICAgICAgICB9
LAorI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0lTT0xBVEVEX1RSRUUpCisgICAgICAgIFsmXSAo
VGhyZWFkU2FmZVdlYWtQdHI8QVhJc29sYXRlZFRyZWU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAg
ICAgIExvY2tlciBsb2NrZXIgeyBzX3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRk
KGF4SUQsIHR5cGVkVHJlZS5nZXQoKSk7CisgICAgICAgIH0sCisgICAgICAgIFsmXSAoY29uc3Qg
VGhyZWFkU2FmZVdlYWtQdHI8QVhJc29sYXRlZFRyZWU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAg
ICAgIExvY2tlciBsb2NrZXIgeyBzX3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRk
KGF4SUQsIHR5cGVkVHJlZS5nZXQoKSk7CisgICAgICAgIH0sCisjZW5kaWYKKyAgICAgICAgW10g
KGF1dG8mKSB7CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgfQorICAgICk7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CkBA
IC03NCwxNiArMTEzLDM5IEBAIGlubGluZSBib29sIEFYVHJlZVN0b3JlPFQ+Ojpjb250YWlucyhB
WElEIGF4SUQpCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+Ci1pbmxpbmUgVCogQVhUcmVlU3Rv
cmU8VD46OnRyZWVGb3JJRChBWElEIGF4SUQpCitpbmxpbmUgQVhPYmplY3RDYWNoZSogQVhUcmVl
U3RvcmU8VD46OmF4T2JqZWN0Q2FjaGVGb3JJRChBWElEIGF4SUQpCit7CisgICAgTG9ja2VyIGxv
Y2tlciB7IHNfc3RvcmVMb2NrIH07CisgICAgYXV0byB0cmVlID0gbWFwKCkuZ2V0KGF4SUQpOwor
ICAgIHJldHVybiBzd2l0Y2hPbih0cmVlLAorICAgICAgICBbXSAoV2Vha1B0cjxBWE9iamVjdENh
Y2hlPiYgdHlwZWRUcmVlKSAtPiBBWE9iamVjdENhY2hlKiB7IHJldHVybiB0eXBlZFRyZWUuZ2V0
KCk7IH0sCisgICAgICAgIFtdIChhdXRvJikgLT4gQVhPYmplY3RDYWNoZSogeworICAgICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAg
ICAgICAgfQorICAgICk7Cit9CisKKyNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09MQVRFRF9U
UkVFKQordGVtcGxhdGU8dHlwZW5hbWUgVD4KK2lubGluZSBSZWZQdHI8QVhJc29sYXRlZFRyZWU+
IEFYVHJlZVN0b3JlPFQ+Ojppc29sYXRlZFRyZWVGb3JJRChBWElEIGF4SUQpCiB7CiAgICAgTG9j
a2VyIGxvY2tlciB7IHNfc3RvcmVMb2NrIH07Ci0gICAgcmV0dXJuIG1hcCgpLmdldChheElEKS5n
ZXQoKTsKKyAgICBhdXRvIHRyZWUgPSBtYXAoKS5nZXQoYXhJRCk7CisgICAgcmV0dXJuIHN3aXRj
aE9uKHRyZWUsCisgICAgICAgIFtdIChUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4m
IHR5cGVkVHJlZSkgLT4gUmVmUHRyPEFYSXNvbGF0ZWRUcmVlPiB7IHJldHVybiB0eXBlZFRyZWUu
Z2V0KCk7IH0sCisgICAgICAgIFtdIChhdXRvJikgLT4gUmVmUHRyPEFYSXNvbGF0ZWRUcmVlPiB7
CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBu
dWxscHRyOworICAgICAgICB9CisgICAgKTsKIH0KKyNlbmRpZgogCiB0ZW1wbGF0ZTx0eXBlbmFt
ZSBUPgotaW5saW5lIEhhc2hNYXA8QVhJRCwgV2Vha1B0cjxUPj4mIEFYVHJlZVN0b3JlPFQ+Ojpt
YXAoKQoraW5saW5lIEhhc2hNYXA8QVhJRCwgQVhUcmVlUHRyPiYgQVhUcmVlU3RvcmU8VD46Om1h
cCgpCiB7Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEhhc2hNYXA8QVhJRCwgV2Vha1B0cjxU
Pj4+IG1hcDsKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8SGFzaE1hcDxBWElELCBBWFRyZWVQ
dHI+PiBtYXA7CiAgICAgcmV0dXJuIG1hcDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwIGIvU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCmlu
ZGV4IDQ2YTM3NjJmYWM1My4uNTAwMzFkMTA2ODkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3Bw
CkBAIC05MSw3ICs5MSw3IEBAIFJlZjxBWElzb2xhdGVkVHJlZT4gQVhJc29sYXRlZFRyZWU6OmNy
ZWF0ZShBWE9iamVjdENhY2hlKiBheE9iamVjdENhY2hlKQogCiAgICAgLy8gTm93IHRoYXQgdGhl
IHRyZWUgaXMgcmVhZHkgdG8gdGFrZSBjbGllbnQgcmVxdWVzdHMsIGFkZCBpdCB0byB0aGUgdHJl
ZQogICAgIC8vIG1hcHMgc28gdGhhdCBpdCBjYW4gYmUgZm91bmQuCi0gICAgQVhUcmVlU3RvcmU6
OmFkZCh0cmVlLT50cmVlSUQoKSwgdHJlZS5jb3B5UmVmKCkpOworICAgIEFYVHJlZVN0b3JlOjph
ZGQodHJlZS0+dHJlZUlEKCksIHRyZWUucHRyKCkpOwogICAgIGF1dG8gcGFnZUlEID0gYXhPYmpl
Y3RDYWNoZS0+cGFnZUlEKCk7CiAgICAgTG9ja2VyIGxvY2tlciB7IHNfc3RvcmVMb2NrIH07CiAg
ICAgQVNTRVJUKCF0cmVlUGFnZUNhY2hlKCkuY29udGFpbnMoKnBhZ2VJRCkpOwpAQCAtNzcyLDE1
ICs3NzIsNyBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjphcHBseVBlbmRpbmdDaGFuZ2VzKCkKICAg
ICAgICAgLy8gV2UgZG9uJ3QgbmVlZCB0byBib3RoZXIgY2xlYXJpbmcgb3V0IGFueSBvdGhlciBu
b24tY3ljbGUtY2F1c2luZyBtZW1iZXIgdmFyaWFibGVzIGFzIHRoZXkKICAgICAgICAgLy8gd2ls
bCBiZSBjbGVhbmVkIHVwIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGUgdHJlZSBpcyBkZXN0cm95ZWQu
CiAKLSNpZm5kZWYgTkRFQlVHCiAgICAgICAgIEFTU0VSVChBWFRyZWVTdG9yZTo6Y29udGFpbnMo
dHJlZUlEKCkpKTsKLSAgICAgICAgaWYgKGF1dG8gdHJlZSA9IEFYVHJlZVN0b3JlOjp0cmVlRm9y
SUQodHJlZUlEKCkpKSB7Ci0gICAgICAgICAgICAvLyBBdCB0aGlzIHBvaW50LCB0aGVyZSBzaG91
bGQgb25seSBiZSB0d28gcmVmZXJlbmNlcyBsZWZ0IHRvIHRoaXMgdHJlZSAtLSBvbmUgaW4gdGhl
IG1hcCwKLSAgICAgICAgICAgIC8vIGFuZCB0aGUgYHByb3RlY3RlZFRoaXNgIGFib3ZlLgotICAg
ICAgICAgICAgQVNTRVJUKHRyZWUtPnJlZkNvdW50KCkgPT0gMiwgIlVuZXhwZWN0ZWQgcmVmY291
bnQgYmVmb3JlIGF0dGVtcHRpbmcgdG8gZGVzdHJveSBpc29sYXRlZCB0cmVlOiAlZCIsIHRyZWUt
PnJlZkNvdW50KCkpOwotICAgICAgICB9Ci0jZW5kaWYKLQogICAgICAgICBBWFRyZWVTdG9yZTo6
cmVtb3ZlKHRyZWVJRCgpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJl
ZS5oCmluZGV4IDIzYzY0ZGM1Y2E5Ni4uNDIyMTA4MzQxYjhmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVl
LmgKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlIDx3dGYvTG9jay5oPgogI2luY2x1ZGUgPHd0
Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KKyNpbmNs
dWRlIDx3dGYvVGhyZWFkU2FmZVdlYWtQdHIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiBjbGFzcyBU
ZXh0U3RyZWFtOwpAQCAtMjczLDggKzI3NCw3IEBAIHN0cnVjdCBBWFByb3BlcnR5Q2hhbmdlIHsK
ICAgICBBWFByb3BlcnR5TWFwIHByb3BlcnRpZXM7IC8vIENoYW5nZWQgcHJvcGVydGllcy4KIH07
CiAKLWNsYXNzIEFYSXNvbGF0ZWRUcmVlIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPEFY
SXNvbGF0ZWRUcmVlPgotICAgICwgcHVibGljIENhbk1ha2VXZWFrUHRyPEFYSXNvbGF0ZWRUcmVl
PgorY2xhc3MgQVhJc29sYXRlZFRyZWUgOiBwdWJsaWMgVGhyZWFkU2FmZVJlZkNvdW50ZWRBbmRD
YW5NYWtlVGhyZWFkU2FmZVdlYWtQdHI8QVhJc29sYXRlZFRyZWU+CiAgICAgLCBwdWJsaWMgQVhU
cmVlU3RvcmU8QVhJc29sYXRlZFRyZWU+IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBWElz
b2xhdGVkVHJlZSk7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>464704</attachid>
            <date>2023-01-28 12:12:54 -0800</date>
            <delta_ts>2023-01-28 19:25:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-251223-20230128151253.patch</filename>
            <type>text/plain</type>
            <size>9159</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSBmYzhhNTQ2NWEyYzljZjhjZmE3YTg3NjllYWQyODZlNWJlYWFjNDI1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBXZWQsIDI1IEphbiAyMDIzIDE0OjM5OjQyIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0g
QVg6IFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlIHNob3VsZCB1c2UKIFdURjo6VGhyZWFkU2FmZVJl
ZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHI8Pi4KIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTEyMjMgcmRhcjovLzEwNDUxMjE1MwoKUmV2aWV3ZWQg
YnkgQWxleCBDaHJpc3RlbnNlbi4KCkFYSXNvbGF0ZWRUcmVlIG5vdyBkZXJpdmVzIGZyb20gVGhy
ZWFkU2FmZVJlZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHIgaW5zdGVhZCBvZiBU
aHJlYWRTYWZlUmVmQ291bnRlZCBhbmQgQ2FuTWFrZVdlYWtQdHIsIHdoaWNoIHdhcyBhIHByb2Js
ZW0gc2luY2UgV2Vha1B0ciBpcyBub3QgdGhyZWFkIHNhZmUuCkluIG9yZGVyIHRvIGhhdmUgYSBz
aW5nbGUgQVhUcmVlU3RvcmUgdGhhdCBrZWVwcyBib3RoIFdlYWtQdHI8QVhPYmplY3RDYWNoZT4g
YW5kIFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPiwgd2UgYWRkZWQgdGhlIHZhcmlh
bnQgQVhUcmVlUHRyLiBOb3RlIHRoYXQgV2Vha1B0cjxBWE9iamVjdENhY2hlPiBkb2VzIG5vdCBo
YXZlIHRvIGJlIHRocmVhZCBzYWZlIHNpbmNlIEFYT2JqZWN0Q2FjaGUgaXMgb25seSB1c2VkIG9u
IHRoZSBtYWluIHRocmVhZC4KLS0tCiAuLi4vV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0
Q2FjaGUuY3BwICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRleHRN
YXJrZXIuY3BwIHwgIDYgKy0KIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3Rv
cmUuaCAgICB8IDcwICsrKysrKysrKysrKysrKystLS0KIC4uLi9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZFRyZWUuY3BwICAgICAgICAgICB8IDEwICstLQogLi4uL2lzb2xhdGVkdHJlZS9BWElzb2xh
dGVkVHJlZS5oICAgICAgICAgICAgIHwgIDQgKy0KIDUgZmlsZXMgY2hhbmdlZCwgNjcgaW5zZXJ0
aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQVhPYmplY3RDYWNoZS5jcHAKaW5kZXggMTMzNTdkMDQ1ZmEzLi4wZGFlYjY3NjEwMGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcApAQCAt
MjQ2LDcgKzI0Niw3IEBAIEFYT2JqZWN0Q2FjaGU6OkFYT2JqZWN0Q2FjaGUoRG9jdW1lbnQmIGRv
Y3VtZW50KQogICAgICAgICBsb2FkaW5nUHJvZ3Jlc3MgPSAxOwogICAgIG1fbG9hZGluZ1Byb2dy
ZXNzID0gbG9hZGluZ1Byb2dyZXNzOwogCi0gICAgQVhUcmVlU3RvcmU6OmFkZChtX2lkLCB0aGlz
KTsKKyAgICBBWFRyZWVTdG9yZTo6YWRkKG1faWQsIFdlYWtQdHIgeyB0aGlzIH0pOwogfQogCiBB
WE9iamVjdENhY2hlOjp+QVhPYmplY3RDYWNoZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FYVGV4dE1hcmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L0FYVGV4dE1hcmtlci5jcHAKaW5kZXggM2U0NjBkOTVmYWI3Li45OThkNzhkOWJlYjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVGV4dE1hcmtlci5jcHAKQEAg
LTEwOCw3ICsxMDgsNyBAQCBBWFRleHRNYXJrZXI6Om9wZXJhdG9yIFZpc2libGVQb3NpdGlvbigp
IGNvbnN0CiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIAotICAgIGF1dG8qIGNhY2hl
ID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OnRyZWVGb3JJRCh0cmVlSUQoKSk7CisgICAg
YXV0byogY2FjaGUgPSBBWFRyZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6YXhPYmplY3RDYWNoZUZv
cklEKHRyZWVJRCgpKTsKICAgICByZXR1cm4gY2FjaGUgPyBjYWNoZS0+dmlzaWJsZVBvc2l0aW9u
Rm9yVGV4dE1hcmtlckRhdGEobV9kYXRhKSA6IFZpc2libGVQb3NpdGlvbigpOwogfQogCkBAIC0x
MjMsNyArMTIzLDcgQEAgQVhUZXh0TWFya2VyOjpvcGVyYXRvciBDaGFyYWN0ZXJPZmZzZXQoKSBj
b25zdAogICAgIC8vIFdoZW4gd2UgYXJlIGF0IGEgbGluZSB3cmFwIGFuZCB0aGUgVmlzaWJsZVBv
c2l0aW9uIGlzIHVwc3RyZWFtLCBpdCBtZWFucyB0aGUgdGV4dCBtYXJrZXIgaXMgYXQgdGhlIGVu
ZCBvZiB0aGUgcHJldmlvdXMgbGluZS4KICAgICAvLyBXZSB1c2UgdGhlIHByZXZpb3VzIENoYXJh
Y3Rlck9mZnNldCBzbyB0aGF0IGl0IHdpbGwgbWF0Y2ggdGhlIFJhbmdlLgogICAgIGlmIChtX2Rh
dGEuYWZmaW5pdHkgPT0gQWZmaW5pdHk6OlVwc3RyZWFtKSB7Ci0gICAgICAgIGlmIChhdXRvIGNh
Y2hlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OnRyZWVGb3JJRChtX2RhdGEuYXhUcmVl
SUQoKSkpCisgICAgICAgIGlmIChhdXRvKiBjYWNoZSA9IEFYVHJlZVN0b3JlPEFYT2JqZWN0Q2Fj
aGU+OjpheE9iamVjdENhY2hlRm9ySUQobV9kYXRhLmF4VHJlZUlEKCkpKQogICAgICAgICAgICAg
cmV0dXJuIGNhY2hlLT5wcmV2aW91c0NoYXJhY3Rlck9mZnNldChyZXN1bHQsIGZhbHNlKTsKICAg
ICB9CiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEzNCw3ICsxMzQsNyBAQCBBWENvcmVPYmplY3Qq
IEFYVGV4dE1hcmtlcjo6b2JqZWN0KCkgY29uc3QKICAgICBpZiAoaXNOdWxsKCkpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwogCi0gICAgYXV0byB0cmVlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RD
YWNoZT46OnRyZWVGb3JJRCh0cmVlSUQoKSk7CisgICAgYXV0byogdHJlZSA9IEFYVHJlZVN0b3Jl
PEFYT2JqZWN0Q2FjaGU+OjpheE9iamVjdENhY2hlRm9ySUQodHJlZUlEKCkpOwogICAgIHJldHVy
biB0cmVlID8gdHJlZS0+b2JqZWN0Rm9ySUQob2JqZWN0SUQoKSkgOiBudWxscHRyOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3JlLmggYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3JlLmgKaW5kZXggODc0NDczOTE4
N2ViLi5iODg4MDdiYjYxZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQVhUcmVlU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJl
ZVN0b3JlLmgKQEAgLTI1LDIzICsyNSw0MCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJB
Y2Nlc3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmgiCisjaW5jbHVkZSA8dmFyaWFudD4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3Rm
L05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVXZWFrUHRyLmg+CiAj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisjaWYgRU5B
QkxFKEFDQ0VTU0lCSUxJVFlfSVNPTEFURURfVFJFRSkKK2NsYXNzIEFYSXNvbGF0ZWRUcmVlOwor
I2VuZGlmCitjbGFzcyBBWE9iamVjdENhY2hlOworCit1c2luZyBBWFRyZWVQdHIgPSBzdGQ6OnZh
cmlhbnQ8V2Vha1B0cjxBWE9iamVjdENhY2hlPgorI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0lT
T0xBVEVEX1RSRUUpCisgICAgLCBUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4KKyNl
bmRpZgorPjsKKwogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIGNsYXNzIEFYVHJlZVN0b3JlIHsKICAg
ICBXVEZfTUFLRV9OT05DT1BZQUJMRShBWFRyZWVTdG9yZSk7CiAgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgQVhJRCB0cmVlSUQoKSBjb25zdCB7IHJldHVybiBtX2lk
OyB9Ci0gICAgc3RhdGljIFQqIHRyZWVGb3JJRChBWElEKTsKKyAgICBzdGF0aWMgQVhPYmplY3RD
YWNoZSogYXhPYmplY3RDYWNoZUZvcklEKEFYSUQpOworI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZ
X0lTT0xBVEVEX1RSRUUpCisgICAgc3RhdGljIFJlZlB0cjxBWElzb2xhdGVkVHJlZT4gaXNvbGF0
ZWRUcmVlRm9ySUQoQVhJRCk7CisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAgIEFYVHJlZVN0b3Jl
KCkgPSBkZWZhdWx0OwotICAgIHN0YXRpYyB2b2lkIGFkZChBWElELCBXZWFrUHRyPFQ+KTsKKyAg
ICBzdGF0aWMgdm9pZCBhZGQoQVhJRCwgY29uc3QgQVhUcmVlUHRyJik7CiAgICAgc3RhdGljIHZv
aWQgcmVtb3ZlKEFYSUQpOwogICAgIHN0YXRpYyBib29sIGNvbnRhaW5zKEFYSUQpOwogCkBAIC00
OSwxNCArNjYsMjQgQEAgcHJvdGVjdGVkOgogICAgIGNvbnN0IEFYSUQgbV9pZCB7IGdlbmVyYXRl
TmV3SUQoKSB9OwogICAgIHN0YXRpYyBMb2NrIHNfc3RvcmVMb2NrOwogcHJpdmF0ZToKLSAgICBz
dGF0aWMgSGFzaE1hcDxBWElELCBXZWFrUHRyPFQ+PiYgbWFwKCkgV1RGX1JFUVVJUkVTX0xPQ0so
c19zdG9yZUxvY2spOworICAgIHN0YXRpYyBIYXNoTWFwPEFYSUQsIEFYVHJlZVB0cj4mIG1hcCgp
IFdURl9SRVFVSVJFU19MT0NLKHNfc3RvcmVMb2NrKTsKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+Ci1pbmxpbmUgdm9pZCBBWFRyZWVTdG9yZTxUPjo6YWRkKEFYSUQgYXhJRCwgV2Vha1B0cjxU
PiB0KQoraW5saW5lIHZvaWQgQVhUcmVlU3RvcmU8VD46OmFkZChBWElEIGF4SUQsIGNvbnN0IEFY
VHJlZVB0ciYgdHJlZSkKIHsKLSAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKLSAg
ICBtYXAoKS5hZGQoYXhJRCwgdCk7CisgICAgc3dpdGNoT24odHJlZSwKKyAgICAgICAgWyZdIChj
b25zdCBXZWFrUHRyPEFYT2JqZWN0Q2FjaGU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAgICAgIExv
Y2tlciBsb2NrZXIgeyBzX3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRkKGF4SUQs
IHR5cGVkVHJlZSk7CisgICAgICAgIH0sCisjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfSVNPTEFU
RURfVFJFRSkKKyAgICAgICAgWyZdIChjb25zdCBUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVk
VHJlZT4mIHR5cGVkVHJlZSkgeworICAgICAgICAgICAgTG9ja2VyIGxvY2tlciB7IHNfc3RvcmVM
b2NrIH07CisgICAgICAgICAgICBtYXAoKS5hZGQoYXhJRCwgdHlwZWRUcmVlLmdldCgpKTsKKyAg
ICAgICAgfQorI2VuZGlmCisgICAgKTsKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVD4KQEAgLTc0
LDE2ICsxMDEsMzkgQEAgaW5saW5lIGJvb2wgQVhUcmVlU3RvcmU8VD46OmNvbnRhaW5zKEFYSUQg
YXhJRCkKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVD4KLWlubGluZSBUKiBBWFRyZWVTdG9yZTxU
Pjo6dHJlZUZvcklEKEFYSUQgYXhJRCkKK2lubGluZSBBWE9iamVjdENhY2hlKiBBWFRyZWVTdG9y
ZTxUPjo6YXhPYmplY3RDYWNoZUZvcklEKEFYSUQgYXhJRCkKK3sKKyAgICBMb2NrZXIgbG9ja2Vy
IHsgc19zdG9yZUxvY2sgfTsKKyAgICBhdXRvIHRyZWUgPSBtYXAoKS5nZXQoYXhJRCk7CisgICAg
cmV0dXJuIHN3aXRjaE9uKHRyZWUsCisgICAgICAgIFtdIChXZWFrUHRyPEFYT2JqZWN0Q2FjaGU+
JiB0eXBlZFRyZWUpIC0+IEFYT2JqZWN0Q2FjaGUqIHsgcmV0dXJuIHR5cGVkVHJlZS5nZXQoKTsg
fSwKKyAgICAgICAgW10gKGF1dG8mKSAtPiBBWE9iamVjdENhY2hlKiB7CisgICAgICAgICAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAg
ICB9CisgICAgKTsKK30KKworI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0lTT0xBVEVEX1RSRUUp
Cit0ZW1wbGF0ZTx0eXBlbmFtZSBUPgoraW5saW5lIFJlZlB0cjxBWElzb2xhdGVkVHJlZT4gQVhU
cmVlU3RvcmU8VD46Omlzb2xhdGVkVHJlZUZvcklEKEFYSUQgYXhJRCkKIHsKICAgICBMb2NrZXIg
bG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKLSAgICByZXR1cm4gbWFwKCkuZ2V0KGF4SUQpLmdldCgp
OworICAgIGF1dG8gdHJlZSA9IG1hcCgpLmdldChheElEKTsKKyAgICByZXR1cm4gc3dpdGNoT24o
dHJlZSwKKyAgICAgICAgW10gKFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPiYgdHlw
ZWRUcmVlKSAtPiBSZWZQdHI8QVhJc29sYXRlZFRyZWU+IHsgcmV0dXJuIHR5cGVkVHJlZS5nZXQo
KTsgfSwKKyAgICAgICAgW10gKGF1dG8mKSAtPiBSZWZQdHI8QVhJc29sYXRlZFRyZWU+IHsKKyAg
ICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgICAgIH0KKyAgICApOwogfQorI2VuZGlmCiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+
Ci1pbmxpbmUgSGFzaE1hcDxBWElELCBXZWFrUHRyPFQ+PiYgQVhUcmVlU3RvcmU8VD46Om1hcCgp
CitpbmxpbmUgSGFzaE1hcDxBWElELCBBWFRyZWVQdHI+JiBBWFRyZWVTdG9yZTxUPjo6bWFwKCkK
IHsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8SGFzaE1hcDxBWElELCBXZWFrUHRyPFQ+Pj4g
bWFwOworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxIYXNoTWFwPEFYSUQsIEFYVHJlZVB0cj4+
IG1hcDsKICAgICByZXR1cm4gbWFwOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKaW5kZXgg
NDZhMzc2MmZhYzUzLi41MDAzMWQxMDY4OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKQEAg
LTkxLDcgKzkxLDcgQEAgUmVmPEFYSXNvbGF0ZWRUcmVlPiBBWElzb2xhdGVkVHJlZTo6Y3JlYXRl
KEFYT2JqZWN0Q2FjaGUqIGF4T2JqZWN0Q2FjaGUpCiAKICAgICAvLyBOb3cgdGhhdCB0aGUgdHJl
ZSBpcyByZWFkeSB0byB0YWtlIGNsaWVudCByZXF1ZXN0cywgYWRkIGl0IHRvIHRoZSB0cmVlCiAg
ICAgLy8gbWFwcyBzbyB0aGF0IGl0IGNhbiBiZSBmb3VuZC4KLSAgICBBWFRyZWVTdG9yZTo6YWRk
KHRyZWUtPnRyZWVJRCgpLCB0cmVlLmNvcHlSZWYoKSk7CisgICAgQVhUcmVlU3RvcmU6OmFkZCh0
cmVlLT50cmVlSUQoKSwgdHJlZS5wdHIoKSk7CiAgICAgYXV0byBwYWdlSUQgPSBheE9iamVjdENh
Y2hlLT5wYWdlSUQoKTsKICAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKICAgICBB
U1NFUlQoIXRyZWVQYWdlQ2FjaGUoKS5jb250YWlucygqcGFnZUlEKSk7CkBAIC03NzIsMTUgKzc3
Miw3IEBAIHZvaWQgQVhJc29sYXRlZFRyZWU6OmFwcGx5UGVuZGluZ0NoYW5nZXMoKQogICAgICAg
ICAvLyBXZSBkb24ndCBuZWVkIHRvIGJvdGhlciBjbGVhcmluZyBvdXQgYW55IG90aGVyIG5vbi1j
eWNsZS1jYXVzaW5nIG1lbWJlciB2YXJpYWJsZXMgYXMgdGhleQogICAgICAgICAvLyB3aWxsIGJl
IGNsZWFuZWQgdXAgYXV0b21hdGljYWxseSB3aGVuIHRoZSB0cmVlIGlzIGRlc3Ryb3llZC4KIAot
I2lmbmRlZiBOREVCVUcKICAgICAgICAgQVNTRVJUKEFYVHJlZVN0b3JlOjpjb250YWlucyh0cmVl
SUQoKSkpOwotICAgICAgICBpZiAoYXV0byB0cmVlID0gQVhUcmVlU3RvcmU6OnRyZWVGb3JJRCh0
cmVlSUQoKSkpIHsKLSAgICAgICAgICAgIC8vIEF0IHRoaXMgcG9pbnQsIHRoZXJlIHNob3VsZCBv
bmx5IGJlIHR3byByZWZlcmVuY2VzIGxlZnQgdG8gdGhpcyB0cmVlIC0tIG9uZSBpbiB0aGUgbWFw
LAotICAgICAgICAgICAgLy8gYW5kIHRoZSBgcHJvdGVjdGVkVGhpc2AgYWJvdmUuCi0gICAgICAg
ICAgICBBU1NFUlQodHJlZS0+cmVmQ291bnQoKSA9PSAyLCAiVW5leHBlY3RlZCByZWZjb3VudCBi
ZWZvcmUgYXR0ZW1wdGluZyB0byBkZXN0cm95IGlzb2xhdGVkIHRyZWU6ICVkIiwgdHJlZS0+cmVm
Q291bnQoKSk7Ci0gICAgICAgIH0KLSNlbmRpZgotCiAgICAgICAgIEFYVHJlZVN0b3JlOjpyZW1v
dmUodHJlZUlEKCkpOwogICAgICAgICByZXR1cm47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmgK
aW5kZXggMjNjNjRkYzVjYTk2Li40MjIxMDgzNDFiOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuaApA
QCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3RmL1Jl
ZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlUmVmQ291bnRlZC5oPgorI2luY2x1ZGUg
PHd0Zi9UaHJlYWRTYWZlV2Vha1B0ci5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIGNsYXNzIFRleHRT
dHJlYW07CkBAIC0yNzMsOCArMjc0LDcgQEAgc3RydWN0IEFYUHJvcGVydHlDaGFuZ2UgewogICAg
IEFYUHJvcGVydHlNYXAgcHJvcGVydGllczsgLy8gQ2hhbmdlZCBwcm9wZXJ0aWVzLgogfTsKIAot
Y2xhc3MgQVhJc29sYXRlZFRyZWUgOiBwdWJsaWMgVGhyZWFkU2FmZVJlZkNvdW50ZWQ8QVhJc29s
YXRlZFRyZWU+Ci0gICAgLCBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8QVhJc29sYXRlZFRyZWU+Citj
bGFzcyBBWElzb2xhdGVkVHJlZSA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZEFuZENhbk1h
a2VUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4KICAgICAsIHB1YmxpYyBBWFRyZWVT
dG9yZTxBWElzb2xhdGVkVHJlZT4gewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFYSXNvbGF0
ZWRUcmVlKTsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>464740</attachid>
            <date>2023-01-28 19:25:13 -0800</date>
            <delta_ts>2023-01-29 07:57:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-251223-20230128222512.patch</filename>
            <type>text/plain</type>
            <size>9160</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSAxOGZiNjljNzJhZTNkODk3N2JlZjY5ZDI2ZDMwYTJlMTBlN2ZmM2ViIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBXZWQsIDI1IEphbiAyMDIzIDE0OjM5OjQyIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0g
QVg6IFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlIHNob3VsZCB1c2UKIFdURjo6VGhyZWFkU2FmZVJl
ZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHI8Pi4KIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTEyMjMgcmRhcjovLzEwNDUxMjE1MwoKUmV2aWV3ZWQg
YnkgQWxleCBDaHJpc3RlbnNlbi4KCkFYSXNvbGF0ZWRUcmVlIG5vdyBkZXJpdmVzIGZyb20gVGhy
ZWFkU2FmZVJlZkNvdW50ZWRBbmRDYW5NYWtlVGhyZWFkU2FmZVdlYWtQdHIgaW5zdGVhZCBvZiBU
aHJlYWRTYWZlUmVmQ291bnRlZCBhbmQgQ2FuTWFrZVdlYWtQdHIsIHdoaWNoIHdhcyBhIHByb2Js
ZW0gc2luY2UgV2Vha1B0ciBpcyBub3QgdGhyZWFkIHNhZmUuCkluIG9yZGVyIHRvIGhhdmUgYSBz
aW5nbGUgQVhUcmVlU3RvcmUgdGhhdCBrZWVwcyBib3RoIFdlYWtQdHI8QVhPYmplY3RDYWNoZT4g
YW5kIFRocmVhZFNhZmVXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPiwgd2UgYWRkZWQgdGhlIHZhcmlh
bnQgQVhUcmVlUHRyLiBOb3RlIHRoYXQgV2Vha1B0cjxBWE9iamVjdENhY2hlPiBkb2VzIG5vdCBo
YXZlIHRvIGJlIHRocmVhZCBzYWZlIHNpbmNlIEFYT2JqZWN0Q2FjaGUgaXMgb25seSB1c2VkIG9u
IHRoZSBtYWluIHRocmVhZC4KLS0tCiAuLi4vV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0
Q2FjaGUuY3BwICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRleHRN
YXJrZXIuY3BwIHwgIDYgKy0KIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUcmVlU3Rv
cmUuaCAgICB8IDcwICsrKysrKysrKysrKysrKystLS0KIC4uLi9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZFRyZWUuY3BwICAgICAgICAgICB8IDEwICstLQogLi4uL2lzb2xhdGVkdHJlZS9BWElzb2xh
dGVkVHJlZS5oICAgICAgICAgICAgIHwgIDQgKy0KIDUgZmlsZXMgY2hhbmdlZCwgNjcgaW5zZXJ0
aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQVhPYmplY3RDYWNoZS5jcHAKaW5kZXggMTMzNTdkMDQ1ZmEzLi4wZGFlYjY3NjEwMGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcApAQCAt
MjQ2LDcgKzI0Niw3IEBAIEFYT2JqZWN0Q2FjaGU6OkFYT2JqZWN0Q2FjaGUoRG9jdW1lbnQmIGRv
Y3VtZW50KQogICAgICAgICBsb2FkaW5nUHJvZ3Jlc3MgPSAxOwogICAgIG1fbG9hZGluZ1Byb2dy
ZXNzID0gbG9hZGluZ1Byb2dyZXNzOwogCi0gICAgQVhUcmVlU3RvcmU6OmFkZChtX2lkLCB0aGlz
KTsKKyAgICBBWFRyZWVTdG9yZTo6YWRkKG1faWQsIFdlYWtQdHIgeyB0aGlzIH0pOwogfQogCiBB
WE9iamVjdENhY2hlOjp+QVhPYmplY3RDYWNoZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FYVGV4dE1hcmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L0FYVGV4dE1hcmtlci5jcHAKaW5kZXggM2U0NjBkOTVmYWI3Li45OThkNzhkOWJlYjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVGV4dE1hcmtlci5jcHAKQEAg
LTEwOCw3ICsxMDgsNyBAQCBBWFRleHRNYXJrZXI6Om9wZXJhdG9yIFZpc2libGVQb3NpdGlvbigp
IGNvbnN0CiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIAotICAgIGF1dG8qIGNhY2hl
ID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OnRyZWVGb3JJRCh0cmVlSUQoKSk7CisgICAg
YXV0byogY2FjaGUgPSBBWFRyZWVTdG9yZTxBWE9iamVjdENhY2hlPjo6YXhPYmplY3RDYWNoZUZv
cklEKHRyZWVJRCgpKTsKICAgICByZXR1cm4gY2FjaGUgPyBjYWNoZS0+dmlzaWJsZVBvc2l0aW9u
Rm9yVGV4dE1hcmtlckRhdGEobV9kYXRhKSA6IFZpc2libGVQb3NpdGlvbigpOwogfQogCkBAIC0x
MjMsNyArMTIzLDcgQEAgQVhUZXh0TWFya2VyOjpvcGVyYXRvciBDaGFyYWN0ZXJPZmZzZXQoKSBj
b25zdAogICAgIC8vIFdoZW4gd2UgYXJlIGF0IGEgbGluZSB3cmFwIGFuZCB0aGUgVmlzaWJsZVBv
c2l0aW9uIGlzIHVwc3RyZWFtLCBpdCBtZWFucyB0aGUgdGV4dCBtYXJrZXIgaXMgYXQgdGhlIGVu
ZCBvZiB0aGUgcHJldmlvdXMgbGluZS4KICAgICAvLyBXZSB1c2UgdGhlIHByZXZpb3VzIENoYXJh
Y3Rlck9mZnNldCBzbyB0aGF0IGl0IHdpbGwgbWF0Y2ggdGhlIFJhbmdlLgogICAgIGlmIChtX2Rh
dGEuYWZmaW5pdHkgPT0gQWZmaW5pdHk6OlVwc3RyZWFtKSB7Ci0gICAgICAgIGlmIChhdXRvIGNh
Y2hlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RDYWNoZT46OnRyZWVGb3JJRChtX2RhdGEuYXhUcmVl
SUQoKSkpCisgICAgICAgIGlmIChhdXRvKiBjYWNoZSA9IEFYVHJlZVN0b3JlPEFYT2JqZWN0Q2Fj
aGU+OjpheE9iamVjdENhY2hlRm9ySUQobV9kYXRhLmF4VHJlZUlEKCkpKQogICAgICAgICAgICAg
cmV0dXJuIGNhY2hlLT5wcmV2aW91c0NoYXJhY3Rlck9mZnNldChyZXN1bHQsIGZhbHNlKTsKICAg
ICB9CiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEzNCw3ICsxMzQsNyBAQCBBWENvcmVPYmplY3Qq
IEFYVGV4dE1hcmtlcjo6b2JqZWN0KCkgY29uc3QKICAgICBpZiAoaXNOdWxsKCkpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwogCi0gICAgYXV0byB0cmVlID0gQVhUcmVlU3RvcmU8QVhPYmplY3RD
YWNoZT46OnRyZWVGb3JJRCh0cmVlSUQoKSk7CisgICAgYXV0byogdHJlZSA9IEFYVHJlZVN0b3Jl
PEFYT2JqZWN0Q2FjaGU+OjpheE9iamVjdENhY2hlRm9ySUQodHJlZUlEKCkpOwogICAgIHJldHVy
biB0cmVlID8gdHJlZS0+b2JqZWN0Rm9ySUQob2JqZWN0SUQoKSkgOiBudWxscHRyOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3JlLmggYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJlZVN0b3JlLmgKaW5kZXggODc0NDczOTE4
N2ViLi4xZWI4YThhNzZjYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQVhUcmVlU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYVHJl
ZVN0b3JlLmgKQEAgLTI1LDIzICsyNSw0MCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJB
Y2Nlc3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmgiCisjaW5jbHVkZSA8dmFyaWFudD4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3Rm
L05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVXZWFrUHRyLmg+CiAj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisjaWYgRU5B
QkxFKEFDQ0VTU0lCSUxJVFlfSVNPTEFURURfVFJFRSkKK2NsYXNzIEFYSXNvbGF0ZWRUcmVlOwor
I2VuZGlmCitjbGFzcyBBWE9iamVjdENhY2hlOworCit1c2luZyBBWFRyZWVQdHIgPSBzdGQ6OnZh
cmlhbnQ8V2Vha1B0cjxBWE9iamVjdENhY2hlPgorI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0lT
T0xBVEVEX1RSRUUpCisgICAgLCBUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4KKyNl
bmRpZgorPjsKKwogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIGNsYXNzIEFYVHJlZVN0b3JlIHsKICAg
ICBXVEZfTUFLRV9OT05DT1BZQUJMRShBWFRyZWVTdG9yZSk7CiAgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgQVhJRCB0cmVlSUQoKSBjb25zdCB7IHJldHVybiBtX2lk
OyB9Ci0gICAgc3RhdGljIFQqIHRyZWVGb3JJRChBWElEKTsKKyAgICBzdGF0aWMgQVhPYmplY3RD
YWNoZSogYXhPYmplY3RDYWNoZUZvcklEKEFYSUQpOworI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZ
X0lTT0xBVEVEX1RSRUUpCisgICAgc3RhdGljIFJlZlB0cjxBWElzb2xhdGVkVHJlZT4gaXNvbGF0
ZWRUcmVlRm9ySUQoQVhJRCk7CisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAgIEFYVHJlZVN0b3Jl
KCkgPSBkZWZhdWx0OwotICAgIHN0YXRpYyB2b2lkIGFkZChBWElELCBXZWFrUHRyPFQ+KTsKKyAg
ICBzdGF0aWMgdm9pZCBhZGQoQVhJRCwgY29uc3QgQVhUcmVlUHRyJik7CiAgICAgc3RhdGljIHZv
aWQgcmVtb3ZlKEFYSUQpOwogICAgIHN0YXRpYyBib29sIGNvbnRhaW5zKEFYSUQpOwogCkBAIC00
OSwxNCArNjYsMjQgQEAgcHJvdGVjdGVkOgogICAgIGNvbnN0IEFYSUQgbV9pZCB7IGdlbmVyYXRl
TmV3SUQoKSB9OwogICAgIHN0YXRpYyBMb2NrIHNfc3RvcmVMb2NrOwogcHJpdmF0ZToKLSAgICBz
dGF0aWMgSGFzaE1hcDxBWElELCBXZWFrUHRyPFQ+PiYgbWFwKCkgV1RGX1JFUVVJUkVTX0xPQ0so
c19zdG9yZUxvY2spOworICAgIHN0YXRpYyBIYXNoTWFwPEFYSUQsIEFYVHJlZVB0cj4mIG1hcCgp
IFdURl9SRVFVSVJFU19MT0NLKHNfc3RvcmVMb2NrKTsKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+Ci1pbmxpbmUgdm9pZCBBWFRyZWVTdG9yZTxUPjo6YWRkKEFYSUQgYXhJRCwgV2Vha1B0cjxU
PiB0KQoraW5saW5lIHZvaWQgQVhUcmVlU3RvcmU8VD46OmFkZChBWElEIGF4SUQsIGNvbnN0IEFY
VHJlZVB0ciYgdHJlZSkKIHsKLSAgICBMb2NrZXIgbG9ja2VyIHsgc19zdG9yZUxvY2sgfTsKLSAg
ICBtYXAoKS5hZGQoYXhJRCwgdCk7CisgICAgc3dpdGNoT24odHJlZSwKKyAgICAgICAgWyZdIChj
b25zdCBXZWFrUHRyPEFYT2JqZWN0Q2FjaGU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAgICAgIExv
Y2tlciBsb2NrZXIgeyBzX3N0b3JlTG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRkKGF4SUQs
IHR5cGVkVHJlZSk7CisgICAgICAgIH0KKyNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09MQVRF
RF9UUkVFKQorICAgICAgICAsIFsmXSAoY29uc3QgVGhyZWFkU2FmZVdlYWtQdHI8QVhJc29sYXRl
ZFRyZWU+JiB0eXBlZFRyZWUpIHsKKyAgICAgICAgICAgIExvY2tlciBsb2NrZXIgeyBzX3N0b3Jl
TG9jayB9OworICAgICAgICAgICAgbWFwKCkuYWRkKGF4SUQsIHR5cGVkVHJlZS5nZXQoKSk7Cisg
ICAgICAgIH0KKyNlbmRpZgorICAgICk7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CkBAIC03
NCwxNiArMTAxLDM5IEBAIGlubGluZSBib29sIEFYVHJlZVN0b3JlPFQ+Ojpjb250YWlucyhBWElE
IGF4SUQpCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQ+Ci1pbmxpbmUgVCogQVhUcmVlU3RvcmU8
VD46OnRyZWVGb3JJRChBWElEIGF4SUQpCitpbmxpbmUgQVhPYmplY3RDYWNoZSogQVhUcmVlU3Rv
cmU8VD46OmF4T2JqZWN0Q2FjaGVGb3JJRChBWElEIGF4SUQpCit7CisgICAgTG9ja2VyIGxvY2tl
ciB7IHNfc3RvcmVMb2NrIH07CisgICAgYXV0byB0cmVlID0gbWFwKCkuZ2V0KGF4SUQpOworICAg
IHJldHVybiBzd2l0Y2hPbih0cmVlLAorICAgICAgICBbXSAoV2Vha1B0cjxBWE9iamVjdENhY2hl
PiYgdHlwZWRUcmVlKSAtPiBBWE9iamVjdENhY2hlKiB7IHJldHVybiB0eXBlZFRyZWUuZ2V0KCk7
IH0sCisgICAgICAgIFtdIChhdXRvJikgLT4gQVhPYmplY3RDYWNoZSogeworICAgICAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAg
ICAgfQorICAgICk7Cit9CisKKyNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09MQVRFRF9UUkVF
KQordGVtcGxhdGU8dHlwZW5hbWUgVD4KK2lubGluZSBSZWZQdHI8QVhJc29sYXRlZFRyZWU+IEFY
VHJlZVN0b3JlPFQ+Ojppc29sYXRlZFRyZWVGb3JJRChBWElEIGF4SUQpCiB7CiAgICAgTG9ja2Vy
IGxvY2tlciB7IHNfc3RvcmVMb2NrIH07Ci0gICAgcmV0dXJuIG1hcCgpLmdldChheElEKS5nZXQo
KTsKKyAgICBhdXRvIHRyZWUgPSBtYXAoKS5nZXQoYXhJRCk7CisgICAgcmV0dXJuIHN3aXRjaE9u
KHRyZWUsCisgICAgICAgIFtdIChUaHJlYWRTYWZlV2Vha1B0cjxBWElzb2xhdGVkVHJlZT4mIHR5
cGVkVHJlZSkgLT4gUmVmUHRyPEFYSXNvbGF0ZWRUcmVlPiB7IHJldHVybiB0eXBlZFRyZWUuZ2V0
KCk7IH0sCisgICAgICAgIFtdIChhdXRvJikgLT4gUmVmUHRyPEFYSXNvbGF0ZWRUcmVlPiB7Cisg
ICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgICAgICB9CisgICAgKTsKIH0KKyNlbmRpZgogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBU
PgotaW5saW5lIEhhc2hNYXA8QVhJRCwgV2Vha1B0cjxUPj4mIEFYVHJlZVN0b3JlPFQ+OjptYXAo
KQoraW5saW5lIEhhc2hNYXA8QVhJRCwgQVhUcmVlUHRyPiYgQVhUcmVlU3RvcmU8VD46Om1hcCgp
CiB7Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEhhc2hNYXA8QVhJRCwgV2Vha1B0cjxUPj4+
IG1hcDsKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8SGFzaE1hcDxBWElELCBBWFRyZWVQdHI+
PiBtYXA7CiAgICAgcmV0dXJuIG1hcDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwIGIvU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCmluZGV4
IDQ2YTM3NjJmYWM1My4uNTAwMzFkMTA2ODkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCkBA
IC05MSw3ICs5MSw3IEBAIFJlZjxBWElzb2xhdGVkVHJlZT4gQVhJc29sYXRlZFRyZWU6OmNyZWF0
ZShBWE9iamVjdENhY2hlKiBheE9iamVjdENhY2hlKQogCiAgICAgLy8gTm93IHRoYXQgdGhlIHRy
ZWUgaXMgcmVhZHkgdG8gdGFrZSBjbGllbnQgcmVxdWVzdHMsIGFkZCBpdCB0byB0aGUgdHJlZQog
ICAgIC8vIG1hcHMgc28gdGhhdCBpdCBjYW4gYmUgZm91bmQuCi0gICAgQVhUcmVlU3RvcmU6OmFk
ZCh0cmVlLT50cmVlSUQoKSwgdHJlZS5jb3B5UmVmKCkpOworICAgIEFYVHJlZVN0b3JlOjphZGQo
dHJlZS0+dHJlZUlEKCksIHRyZWUucHRyKCkpOwogICAgIGF1dG8gcGFnZUlEID0gYXhPYmplY3RD
YWNoZS0+cGFnZUlEKCk7CiAgICAgTG9ja2VyIGxvY2tlciB7IHNfc3RvcmVMb2NrIH07CiAgICAg
QVNTRVJUKCF0cmVlUGFnZUNhY2hlKCkuY29udGFpbnMoKnBhZ2VJRCkpOwpAQCAtNzcyLDE1ICs3
NzIsNyBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjphcHBseVBlbmRpbmdDaGFuZ2VzKCkKICAgICAg
ICAgLy8gV2UgZG9uJ3QgbmVlZCB0byBib3RoZXIgY2xlYXJpbmcgb3V0IGFueSBvdGhlciBub24t
Y3ljbGUtY2F1c2luZyBtZW1iZXIgdmFyaWFibGVzIGFzIHRoZXkKICAgICAgICAgLy8gd2lsbCBi
ZSBjbGVhbmVkIHVwIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGUgdHJlZSBpcyBkZXN0cm95ZWQuCiAK
LSNpZm5kZWYgTkRFQlVHCiAgICAgICAgIEFTU0VSVChBWFRyZWVTdG9yZTo6Y29udGFpbnModHJl
ZUlEKCkpKTsKLSAgICAgICAgaWYgKGF1dG8gdHJlZSA9IEFYVHJlZVN0b3JlOjp0cmVlRm9ySUQo
dHJlZUlEKCkpKSB7Ci0gICAgICAgICAgICAvLyBBdCB0aGlzIHBvaW50LCB0aGVyZSBzaG91bGQg
b25seSBiZSB0d28gcmVmZXJlbmNlcyBsZWZ0IHRvIHRoaXMgdHJlZSAtLSBvbmUgaW4gdGhlIG1h
cCwKLSAgICAgICAgICAgIC8vIGFuZCB0aGUgYHByb3RlY3RlZFRoaXNgIGFib3ZlLgotICAgICAg
ICAgICAgQVNTRVJUKHRyZWUtPnJlZkNvdW50KCkgPT0gMiwgIlVuZXhwZWN0ZWQgcmVmY291bnQg
YmVmb3JlIGF0dGVtcHRpbmcgdG8gZGVzdHJveSBpc29sYXRlZCB0cmVlOiAlZCIsIHRyZWUtPnJl
ZkNvdW50KCkpOwotICAgICAgICB9Ci0jZW5kaWYKLQogICAgICAgICBBWFRyZWVTdG9yZTo6cmVt
b3ZlKHRyZWVJRCgpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmggYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5o
CmluZGV4IDIzYzY0ZGM1Y2E5Ni4uNDIyMTA4MzQxYjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmgK
QEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlIDx3dGYvTG9jay5oPgogI2luY2x1ZGUgPHd0Zi9S
ZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KKyNpbmNsdWRl
IDx3dGYvVGhyZWFkU2FmZVdlYWtQdHIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiBjbGFzcyBUZXh0
U3RyZWFtOwpAQCAtMjczLDggKzI3NCw3IEBAIHN0cnVjdCBBWFByb3BlcnR5Q2hhbmdlIHsKICAg
ICBBWFByb3BlcnR5TWFwIHByb3BlcnRpZXM7IC8vIENoYW5nZWQgcHJvcGVydGllcy4KIH07CiAK
LWNsYXNzIEFYSXNvbGF0ZWRUcmVlIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPEFYSXNv
bGF0ZWRUcmVlPgotICAgICwgcHVibGljIENhbk1ha2VXZWFrUHRyPEFYSXNvbGF0ZWRUcmVlPgor
Y2xhc3MgQVhJc29sYXRlZFRyZWUgOiBwdWJsaWMgVGhyZWFkU2FmZVJlZkNvdW50ZWRBbmRDYW5N
YWtlVGhyZWFkU2FmZVdlYWtQdHI8QVhJc29sYXRlZFRyZWU+CiAgICAgLCBwdWJsaWMgQVhUcmVl
U3RvcmU8QVhJc29sYXRlZFRyZWU+IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBWElzb2xh
dGVkVHJlZSk7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>