<?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>210500</bug_id>
          
          <creation_ts>2020-04-14 09:00:40 -0700</creation_ts>
          <short_desc>Make WTR::AccessibilityUIElements calls to accessibilitySetValue  run on AX secondary thread. web content</short_desc>
          <delta_ts>2020-04-14 11:49:13 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andres Gonzalez">andresg_22</reporter>
          <assigned_to name="Andres Gonzalez">andresg_22</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1641388</commentid>
    <comment_count>0</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-04-14 09:00:40 -0700</bug_when>
    <thetext>Make WTR::AccessibilityUIElements calls to accessibilitySetValue  run on AX secondary thread. web content</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641393</commentid>
    <comment_count>1</comment_count>
      <attachid>396422</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-04-14 09:09:48 -0700</bug_when>
    <thetext>Created attachment 396422
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641395</commentid>
    <comment_count>2</comment_count>
      <attachid>396422</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2020-04-14 09:13:59 -0700</bug_when>
    <thetext>Comment on attachment 396422
Patch

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

&gt; Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:1479
&gt; +    NSArray* selectedChildren = attributeValue(m_element.get(), NSAccessibilitySelectedChildrenAttribute);

objectiveC pointers actually supposed to stay on the right side of the space</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641452</commentid>
    <comment_count>3</comment_count>
      <attachid>396438</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-04-14 11:03:03 -0700</bug_when>
    <thetext>Created attachment 396438
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641453</commentid>
    <comment_count>4</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-04-14 11:05:13 -0700</bug_when>
    <thetext>(In reply to chris fleizach from comment #2)
&gt; Comment on attachment 396422 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=396422&amp;action=review
&gt; 
&gt; &gt; Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:1479
&gt; &gt; +    NSArray* selectedChildren = attributeValue(m_element.get(), NSAccessibilitySelectedChildrenAttribute);
&gt; 
&gt; objectiveC pointers actually supposed to stay on the right side of the space

Fixed this one and a few other instances. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641477</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-14 11:48:31 -0700</bug_when>
    <thetext>Committed r260083: &lt;https://trac.webkit.org/changeset/260083&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 396438.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641478</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-14 11:49:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/61783089&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396422</attachid>
            <date>2020-04-14 09:09:48 -0700</date>
            <delta_ts>2020-04-14 11:03:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210500-20200414120946.patch</filename>
            <type>text/plain</type>
            <size>18185</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMDMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M3ZGNiNTRjMTllYzJk
OTk0OTJhMGUzYWNmOWY2OTIwMjI3NDFkYi4uMDYzNmNlNGU3MGE5ODY0ZTQxZDA0NDczMjg0M2Fk
ZDBlZmQwZTFhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTA0LTE0ICBBbmRy
ZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBNYWtlIFdUUjo6
QWNjZXNzaWJpbGl0eVVJRWxlbWVudHMgY2FsbHMgdG8gYWNjZXNzaWJpbGl0eVNldFZhbHVlICBy
dW4gb24gQVggc2Vjb25kYXJ5IHRocmVhZC4gd2ViIGNvbnRlbnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDUwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZWQgX2FjY2Vzc2liaWxpdHlTZXRU
ZXN0VmFsdWUgc2luY2UgaXQgaXMgbm8gbG9uZ2VyIHVzZWQsIHVzZQorICAgICAgICBfYWNjZXNz
aWJpbGl0eVNldFZhbHVlIGluc3RlYWQuCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9X
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbToKKyAgICAgICAgKC1bV2ViQWNjZXNz
aWJpbGl0eU9iamVjdFdyYXBwZXIgX2FjY2Vzc2liaWxpdHlTZXRUZXN0VmFsdWU6Zm9yQXR0cmli
dXRlOl0pOiBEZWxldGVkLgorCiAyMDIwLTA0LTEzICBDb21taXQgUXVldWUgIDxjb21taXQtcXVl
dWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI2MDAwMy4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9t
YWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0KaW5kZXggYjQwM2QzZjZjNTE2
ZmI2YmQ2MGZhOWNiY2ZhZmM1YTQ0NDE1MmE3Zi4uZDFmZTI2YzExZGRkODJkYTJkNGJjNTg3MmMw
YTYxZTQxYmUwYTgyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9t
YWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0KKysrIGIvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0K
QEAgLTM1NTcsMTMgKzM1NTcsNiBAQCBBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19F
TkQKICAgICAgICAgYmFja2luZ09iamVjdC0+c2V0Q2FyZXRCcm93c2luZ0VuYWJsZWQoW251bWJl
ciBib29sVmFsdWVdKTsKIH0KIAotLy8gVXNlZCB0byBzZXQgYXR0cmlidXRlcyBzeW5jaHJvbm91
c2x5IG9uIGFjY2Vzc2liaWxpdHkgZWxlbWVudHMgd2l0aGluIHRlc3RzLgotLy8gRm9yIHVzZSB3
aXRoIER1bXBSZW5kZXJUcmVlIG9ubHkuCi0tICh2b2lkKV9hY2Nlc3NpYmlsaXR5U2V0VGVzdFZh
bHVlOihpZCl2YWx1ZSBmb3JBdHRyaWJ1dGU6KE5TU3RyaW5nKilhdHRyaWJ1dGVOYW1lCi17Ci0g
ICAgW3NlbGYgX2FjY2Vzc2liaWxpdHlTZXRWYWx1ZTp2YWx1ZSBmb3JBdHRyaWJ1dGU6YXR0cmli
dXRlTmFtZV07Ci19Ci0KIHN0YXRpYyBSZW5kZXJPYmplY3QqIHJlbmRlcmVyRm9yVmlldyhOU1Zp
ZXcqIHZpZXcpCiB7CiAgICAgaWYgKCFbdmlldyBjb25mb3Jtc1RvUHJvdG9jb2w6QHByb3RvY29s
KFdlYkNvcmVGcmFtZVZpZXcpXSkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xz
L0NoYW5nZUxvZwppbmRleCBkMTI3OTAzOGVjZTEwMGVlYTZkODAxZDQyNzhjYjIxYzU0YjdiZTQz
Li4yYjlmMTIyNzI2NTRjYzljNDY3MWY1MzNlNDhkMDIxNjY4ZmQzOWI4IDEwMDY0NAotLS0gYS9U
b29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIw
MjAtMDQtMTQgIEFuZHJlcyBHb256YWxleiAgPGFuZHJlc2dfMjJAYXBwbGUuY29tPgorCisgICAg
ICAgIE1ha2UgV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50cyBjYWxscyB0byBhY2Nlc3NpYmls
aXR5U2V0VmFsdWUgcnVuIG9uIEFYIHNlY29uZGFyeSB0aHJlYWQuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA1MDAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBOZWVkZWQgdG8gdGVzdCBhY2Nlc3NpYmls
aXR5IGlzb2xhdGVkIHRyZWUgbW9kZS4gRm9sbG93IHVwIHRvCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTAzOTIuCisKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbToKKyAgICAgICAgKEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OnNldEJvb2xBdHRyaWJ1dGVWYWx1ZSk6CisgICAgICAgIChBY2Nl
c3NpYmlsaXR5VUlFbGVtZW50OjpyZXNldFNlbGVjdGVkVGV4dE1hcmtlclJhbmdlKToKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnQuaDoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nl
c3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tOgorICAgICAgICAoV1RSOjpzZXRBdHRyaWJ1dGVWYWx1
ZSk6CisgICAgICAgIChXVFI6OmF0dHJpYnV0ZXNPZkVsZW1lbnQpOgorICAgICAgICAoV1RSOjpk
ZXNjcmlwdGlvbk9mRWxlbWVudHMpOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjpzdHJpbmdEZXNjcmlwdGlvbk9mQXR0cmlidXRlVmFsdWUpOgorICAgICAgICAoV1RSOjpB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzdHJpbmdBdHRyaWJ1dGVWYWx1ZSk6CisgICAgICAgIChX
VFI6OkFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnVpRWxlbWVudEFycmF5QXR0cmlidXRlVmFsdWUg
Y29uc3QpOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp1aUVsZW1lbnRB
dHRyaWJ1dGVWYWx1ZSBjb25zdCk6CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OmJvb2xBdHRyaWJ1dGVWYWx1ZSk6CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnNldEJvb2xBdHRyaWJ1dGVWYWx1ZSk6CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OnNldFZhbHVlKToKKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6c2V0U2VsZWN0ZWRUZXh0UmFuZ2UpOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpzZXRTZWxlY3RlZFZpc2libGVUZXh0UmFuZ2UpOgorICAgICAgICAoV1RSOjpB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzZXRTZWxlY3RlZENoaWxkIGNvbnN0KToKKyAgICAgICAg
KFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c2V0U2VsZWN0ZWRDaGlsZEF0SW5kZXggY29u
c3QpOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpyZW1vdmVTZWxlY3Rp
b25BdEluZGV4IGNvbnN0KToKKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
dGFrZUZvY3VzKToKKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cmVzZXRT
ZWxlY3RlZFRleHRNYXJrZXJSYW5nZSk6CisKIDIwMjAtMDQtMTMgIEFuZHJlcyBHb256YWxleiAg
PGFuZHJlc2dfMjJAYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgV1RSOjpBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50IG1ldGhvZHMgcnVuIG9uIEFYIHNlY29uZGFyeSB0aHJlYWQuCmRpZmYgLS1naXQg
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbSBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCmlu
ZGV4IDZiNWI1ZWZiZGI3ODMxZjA4YjA1YWYwNTYxODJjM2JjMzA2NGRjMWEuLjYyMTNlNzYxNmM4
ZWJhYmIyZjdjYWM1M2FlMTQ4MDk3MzBiYmMzNTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCisrKyBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCkBAIC03NSw3ICs3NSw2
IEBAIHR5cGVkZWYgdm9pZCAoKkFYUG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJhY2spKGlkIGVsZW1l
bnQsIE5TU3RyaW5nKiBub3RpZmljYXRpb24sCiAtIChOU0FycmF5ICopYWNjZXNzaWJpbGl0eUFy
cmF5QXR0cmlidXRlVmFsdWVzOihOU1N0cmluZyAqKWF0dHJpYnV0ZSBpbmRleDooTlNVSW50ZWdl
cilpbmRleCBtYXhDb3VudDooTlNVSW50ZWdlciltYXhDb3VudDsKIC0gKE5TVUludGVnZXIpYWNj
ZXNzaWJpbGl0eUluZGV4T2ZDaGlsZDooaWQpY2hpbGQ7CiAtIChOU1VJbnRlZ2VyKWFjY2Vzc2li
aWxpdHlBcnJheUF0dHJpYnV0ZUNvdW50OihOU1N0cmluZyAqKWF0dHJpYnV0ZTsKLS0gKHZvaWQp
X2FjY2Vzc2liaWxpdHlTZXRUZXN0VmFsdWU6KGlkKXZhbHVlIGZvckF0dHJpYnV0ZTooTlNTdHJp
bmcqKWF0dHJpYnV0ZU5hbWU7CiAtICh2b2lkKV9hY2Nlc3NpYmlsaXR5U2Nyb2xsVG9NYWtlVmlz
aWJsZVdpdGhTdWJGb2N1czooTlNSZWN0KXJlY3Q7CiAtICh2b2lkKV9hY2Nlc3NpYmlsaXR5U2Ny
b2xsVG9HbG9iYWxQb2ludDooTlNQb2ludClwb2ludDsKIC0gKHZvaWQpX2FjY2Vzc2liaWxpdHlT
ZXRWYWx1ZTooaWQpdmFsdWUgZm9yQXR0cmlidXRlOihOU1N0cmluZyopYXR0cmlidXRlTmFtZTsK
QEAgLTU4NCw3ICs1ODMsNyBAQCBib29sIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmJvb2xBdHRy
aWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUpCiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnNldEJvb2xBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUsIGJvb2wg
dmFsdWUpCiB7CiAgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCi0gICAgW21fZWxlbWVudCBf
YWNjZXNzaWJpbGl0eVNldFRlc3RWYWx1ZTpAKHZhbHVlKSBmb3JBdHRyaWJ1dGU6W05TU3RyaW5n
IHN0cmluZ1dpdGhKU1N0cmluZ1JlZjphdHRyaWJ1dGVdXTsKKyAgICBbbV9lbGVtZW50IF9hY2Nl
c3NpYmlsaXR5U2V0VmFsdWU6QCh2YWx1ZSkgZm9yQXR0cmlidXRlOltOU1N0cmluZyBzdHJpbmdX
aXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXV07CiAgICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUwog
fQogCkBAIC0xNjk2LDcgKzE2OTUsNyBAQCB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnJl
c2V0U2VsZWN0ZWRUZXh0TWFya2VyUmFuZ2UoKQogICAgICAgICByZXR1cm47CiAgICAgCiAgICAg
QkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCi0gICAgW21fZWxlbWVudCBfYWNjZXNzaWJpbGl0eVNl
dFRlc3RWYWx1ZTp0ZXh0TWFya2VyUmFuZ2UgZm9yQXR0cmlidXRlOk5TQWNjZXNzaWJpbGl0eVNl
bGVjdGVkVGV4dE1hcmtlclJhbmdlQXR0cmlidXRlXTsKKyAgICBbbV9lbGVtZW50IF9hY2Nlc3Np
YmlsaXR5U2V0VmFsdWU6dGV4dE1hcmtlclJhbmdlIGZvckF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxp
dHlTZWxlY3RlZFRleHRNYXJrZXJSYW5nZUF0dHJpYnV0ZV07CiAgICAgRU5EX0FYX09CSkNfRVhD
RVBUSU9OUwogfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCmluZGV4IDYxZDMwNzU3Zjk0
ZDQ4ZTVlZTZmNzJiYWZiMGU2ZGY5MGE4MWQ2ZTIuLjc3NjhjMGI1NDc1YjA4MzY1ZmE1YWU4MDM1
YTRlZGEyYjc3YjM1NGMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCkBAIC01Nyw2ICs1
Nyw3IEBAIGNsYXNzIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgOiBwdWJsaWMgSlNXcmFwcGFibGUg
ewogICAgIC8vIEhlbHBlciBmdW5jdGlvbnMgdGhhdCBkaXNwYXRjaCB0aGUgY29ycmVzcG9uZGlu
ZyBBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBtZXRob2QgdG8gdGhlIEFYIHNlY29uZGFyeSB0
aHJlYWQgd2hlbiBhcHByb3ByaWF0ZS4KICAgICBmcmllbmQgTlNBcnJheSogc3VwcG9ydGVkQXR0
cmlidXRlcyhpZCk7CiAgICAgZnJpZW5kIGlkIGF0dHJpYnV0ZVZhbHVlKGlkLCBOU1N0cmluZyop
OworICAgIGZyaWVuZCB2b2lkIHNldEF0dHJpYnV0ZVZhbHVlKGlkLCBOU1N0cmluZyosIGlkLCBi
b29sIHN5bmNocm9ub3VzKTsKICNlbmRpZgogCiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50
TWFjLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9tYWMvQWNjZXNz
aWJpbGl0eVVJRWxlbWVudE1hYy5tbQppbmRleCBhZDU1NDRjNWQzMDgyZDhlZGZjNjYzMDg1NjY1
YTQzY2I5N2ZhN2U5Li41YTY4ODA3YzM1NzFjNjNlYTQ2Nzg0MGI2MzgwNzk0NGFlMzczYjQxIDEw
MDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nl
c3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5q
ZWN0ZWRCdW5kbGUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRNYWMubW0KQEAgLTc5LDcgKzc5
LDYgQEAgdHlwZWRlZiB2b2lkICgqQVhQb3N0ZWROb3RpZmljYXRpb25DYWxsYmFjaykoaWQgZWxl
bWVudCwgTlNTdHJpbmcqIG5vdGlmaWNhdGlvbiwKIC0gKE5TQXJyYXkgKilhY2Nlc3NpYmlsaXR5
QXJyYXlBdHRyaWJ1dGVWYWx1ZXM6KE5TU3RyaW5nICopYXR0cmlidXRlIGluZGV4OihOU1VJbnRl
Z2VyKWluZGV4IG1heENvdW50OihOU1VJbnRlZ2VyKW1heENvdW50OwogLSAoTlNVSW50ZWdlcilh
Y2Nlc3NpYmlsaXR5SW5kZXhPZkNoaWxkOihpZCljaGlsZDsKIC0gKE5TVUludGVnZXIpYWNjZXNz
aWJpbGl0eUFycmF5QXR0cmlidXRlQ291bnQ6KE5TU3RyaW5nICopYXR0cmlidXRlOwotLSAodm9p
ZClfYWNjZXNzaWJpbGl0eVNldFRlc3RWYWx1ZTooaWQpdmFsdWUgZm9yQXR0cmlidXRlOihOU1N0
cmluZyopYXR0cmlidXRlTmFtZTsKIC0gKHZvaWQpX2FjY2Vzc2liaWxpdHlTY3JvbGxUb01ha2VW
aXNpYmxlV2l0aFN1YkZvY3VzOihOU1JlY3QpcmVjdDsKIC0gKHZvaWQpX2FjY2Vzc2liaWxpdHlT
Y3JvbGxUb0dsb2JhbFBvaW50OihOU1BvaW50KXBvaW50OwogLSAodm9pZClfYWNjZXNzaWJpbGl0
eVNldFZhbHVlOihpZCl2YWx1ZSBmb3JBdHRyaWJ1dGU6KE5TU3RyaW5nKilhdHRyaWJ1dGVOYW1l
OwpAQCAtMTQ0LDYgKzE0MywxNyBAQCBpZCBhdHRyaWJ1dGVWYWx1ZShpZCBlbGVtZW50LCBOU1N0
cmluZyogYXR0cmlidXRlKQogICAgIHJldHVybiB2YWx1ZTsKIH0KIAordm9pZCBzZXRBdHRyaWJ1
dGVWYWx1ZShpZCBlbGVtZW50LCBOU1N0cmluZyogYXR0cmlidXRlLCBpZCB2YWx1ZSwgYm9vbCBz
eW5jaHJvbm91cyA9IGZhbHNlKQoreworICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUworICAg
IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNfY29udHJvbGxlci0+ZXhlY3V0ZU9uQVhUaHJlYWRJ
ZlBvc3NpYmxlKFsmZWxlbWVudCwgJmF0dHJpYnV0ZSwgJnZhbHVlLCAmc3luY2hyb25vdXNdIHsK
KyAgICAgICAgLy8gRklYTUU6IHNob3VsZCBhbHdheXMgYmUgYXN5bmNocm9ub3VzLCBmaXggdGVz
dHMuCisgICAgICAgIHN5bmNocm9ub3VzID8gW2VsZW1lbnQgX2FjY2Vzc2liaWxpdHlTZXRWYWx1
ZTp2YWx1ZSBmb3JBdHRyaWJ1dGU6YXR0cmlidXRlXSA6CisgICAgICAgICAgICBbZWxlbWVudCBh
Y2Nlc3NpYmlsaXR5U2V0VmFsdWU6dmFsdWUgZm9yQXR0cmlidXRlOmF0dHJpYnV0ZV07OzsKKyAg
ICB9KTsKKyAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCit9CisKIHN0YXRpYyBOU1N0cmluZyog
ZGVzY3JpcHRpb25PZlZhbHVlKGlkIHZhbHVlT2JqZWN0LCBpZCBlbGVtZW50KQogewogICAgIGlm
ICghdmFsdWVPYmplY3QpCkBAIC0xOTEsMTAgKzIwMSw4IEBAIHN0YXRpYyBOU1N0cmluZyAqYXR0
cmlidXRlc09mRWxlbWVudChpZCBhY2Nlc3NpYmlsaXR5T2JqZWN0KQogICAgIE5TQXJyYXkqIGF0
dHJpYnV0ZXMgPSBzdXBwb3J0ZWRBdHRyaWJ1dGVzKGFjY2Vzc2liaWxpdHlPYmplY3QpOwogCiAg
ICAgTlNNdXRhYmxlU3RyaW5nKiBhdHRyaWJ1dGVzU3RyaW5nID0gW05TTXV0YWJsZVN0cmluZyBz
dHJpbmddOwotICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGF0dHJpYnV0ZXMuY291bnQ7
ICsraSkgewotICAgICAgICBOU1N0cmluZyogYXR0cmlidXRlID0gW2F0dHJpYnV0ZXMgb2JqZWN0
QXRJbmRleDppXTsKLQotICAgICAgICAvLyBSaWdodCBub3csIHBvc2l0aW9uIHByb3ZpZGVzIHVz
ZWxlc3MgYW5kIHNjcmVlbi1zcGVjaWZpYyBpbmZvcm1hdGlvbiwgc28gd2UgZG8gbm90CisgICAg
Zm9yIChOU1N0cmluZyogYXR0cmlidXRlIGluIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgLy8gUG9z
aXRpb24gcHJvdmlkZXMgdXNlbGVzcyBhbmQgc2NyZWVuLXNwZWNpZmljIGluZm9ybWF0aW9uLCBz
byB3ZSBkbyBub3QKICAgICAgICAgLy8gd2FudCB0byBpbmNsdWRlIGl0IGZvciB0aGUgc2FrZSBv
ZiB1bml2ZXJzYWxseSBwYXNzaW5nIHRlc3RzLgogICAgICAgICBpZiAoW2F0dHJpYnV0ZSBpc0Vx
dWFsVG9TdHJpbmc6QCJBWFBvc2l0aW9uIl0pCiAgICAgICAgICAgICBjb250aW51ZTsKQEAgLTI0
MCwxMyArMjQ4LDExIEBAIHN0YXRpYyBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4gY29uY2F0ZW5h
dGVBdHRyaWJ1dGVBbmRWYWx1ZShOU1N0cmluZyogYXR0cmlidXRlCiBzdGF0aWMgSlNSZXRhaW5Q
dHI8SlNTdHJpbmdSZWY+IGRlc2NyaXB0aW9uT2ZFbGVtZW50cyhWZWN0b3I8UmVmUHRyPEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ+ID4mIGVsZW1lbnRWZWN0b3IpCiB7CiAgICAgTlNNdXRhYmxlU3Ry
aW5nKiBhbGxFbGVtZW50U3RyaW5nID0gW05TTXV0YWJsZVN0cmluZyBzdHJpbmddOwotICAgIHNp
emVfdCBzaXplID0gZWxlbWVudFZlY3Rvci5zaXplKCk7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCBzaXplOyArK2kpIHsKLSAgICAgICAgUmVmUHRyPEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ+
IHVpRWxlbWVudCA9IGVsZW1lbnRWZWN0b3JbaV07CisgICAgZm9yIChhdXRvIHVpRWxlbWVudCA6
IGVsZW1lbnRWZWN0b3IpIHsKICAgICAgICAgTlNTdHJpbmcqIGF0dHJpYnV0ZXMgPSBhdHRyaWJ1
dGVzT2ZFbGVtZW50KHVpRWxlbWVudC0+cGxhdGZvcm1VSUVsZW1lbnQoKSk7CiAgICAgICAgIFth
bGxFbGVtZW50U3RyaW5nIGFwcGVuZEZvcm1hdDpAIiVAXG4tLS0tLS0tLS0tLS1cbiIsIGF0dHJp
YnV0ZXNdOwogICAgIH0KLSAgICAKKwogICAgIHJldHVybiBbYWxsRWxlbWVudFN0cmluZyBjcmVh
dGVKU1N0cmluZ1JlZl07CiB9CiAKQEAgLTU1OSwyNCArNTY1LDE5IEBAIEpTUmV0YWluUHRyPEpT
U3RyaW5nUmVmPiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjphbGxBdHRyaWJ1dGVzKCkKICAgICBO
U1N0cmluZyogYXR0cmlidXRlcyA9IGF0dHJpYnV0ZXNPZkVsZW1lbnQobV9lbGVtZW50LmdldCgp
KTsKICAgICByZXR1cm4gW2F0dHJpYnV0ZXMgY3JlYXRlSlNTdHJpbmdSZWZdOwogfQotICAgIAor
CiBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4gQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c3RyaW5n
RGVzY3JpcHRpb25PZkF0dHJpYnV0ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkKIHsKLSAg
ICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKLSAgICBOU1N0cmluZyAqdmFsdWUgPSBkZXNjcmlw
dGlvbk9mVmFsdWUoW21fZWxlbWVudCBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFsdWU6W05TU3Ry
aW5nIHN0cmluZ1dpdGhKU1N0cmluZ1JlZjphdHRyaWJ1dGVdXSwgbV9lbGVtZW50LmdldCgpKTsK
LSAgICByZXR1cm4gW3ZhbHVlIGNyZWF0ZUpTU3RyaW5nUmVmXTsKLSAgICBFTkRfQVhfT0JKQ19F
WENFUFRJT05TCi0gICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWQgdmFsdWUgPSBhdHRyaWJ1dGVW
YWx1ZShtX2VsZW1lbnQuZ2V0KCksIFtOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0
cmlidXRlXSk7CisgICAgTlNTdHJpbmcqIHZhbHVlRGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbk9m
VmFsdWUodmFsdWUsIG1fZWxlbWVudC5nZXQoKSk7CisgICAgcmV0dXJuIFt2YWx1ZURlc2NyaXB0
aW9uIGNyZWF0ZUpTU3RyaW5nUmVmXTsKIH0KIAogSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IEFj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnN0cmluZ0F0dHJpYnV0ZVZhbHVlKEpTU3RyaW5nUmVmIGF0
dHJpYnV0ZSkKIHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKLSAgICBpZCB2YWx1ZSA9
IFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOltOU1N0cmluZyBzdHJpbmdX
aXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXV07CisgICAgaWQgdmFsdWUgPSBhdHRyaWJ1dGVWYWx1
ZShtX2VsZW1lbnQuZ2V0KCksIFtOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmli
dXRlXSk7CiAgICAgaWYgKFt2YWx1ZSBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dKQog
ICAgICAgICByZXR1cm4gW3ZhbHVlIGNyZWF0ZUpTU3RyaW5nUmVmXTsKLSAgICBFTkRfQVhfT0JK
Q19FWENFUFRJT05TCi0KICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIApAQCAtNTkyLDcgKzU5Myw3
IEBAIEpTVmFsdWVSZWYgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dWlFbGVtZW50QXJyYXlBdHRy
aWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyCiB7CiAgICAgV0tCdW5kbGVGcmFtZVJlZiBtYWlu
RnJhbWUgPSBXS0J1bmRsZVBhZ2VHZXRNYWluRnJhbWUoSW5qZWN0ZWRCdW5kbGU6OnNpbmdsZXRv
bigpLnBhZ2UoKS0+cGFnZSgpKTsKICAgICBKU0NvbnRleHRSZWYgY29udGV4dCA9IFdLQnVuZGxl
RnJhbWVHZXRKYXZhU2NyaXB0Q29udGV4dChtYWluRnJhbWUpOwotICAgIAorCiAgICAgVmVjdG9y
PFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Pj4gZWxlbWVudHM7CiAgICAgZ2V0VUlFbGVt
ZW50c1dpdGhBdHRyaWJ1dGUoYXR0cmlidXRlLCBlbGVtZW50cyk7CiAgICAgcmV0dXJuIGNvbnZl
cnRWZWN0b3JUb09iamVjdEFycmF5PFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Pj4oY29u
dGV4dCwgZWxlbWVudHMpOwpAQCAtNjAwLDM5ICs2MDEsMjggQEAgSlNWYWx1ZVJlZiBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50Ojp1aUVsZW1lbnRBcnJheUF0dHJpYnV0ZVZhbHVlKEpTU3RyaW5nUmVm
IGF0dHIKIAogUmVmUHRyPEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ+IEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnVpRWxlbWVudEF0dHJpYnV0ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkgY29u
c3QKIHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKLSAgICBpZCB1aUVsZW1lbnQgPSBb
bV9lbGVtZW50IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpbTlNTdHJpbmcgc3RyaW5nV2l0
aEpTU3RyaW5nUmVmOmF0dHJpYnV0ZV1dOwotICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjpjcmVhdGUodWlFbGVtZW50KTsKLSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCi0gICAg
Ci0gICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWQgdmFsdWUgPSBhdHRyaWJ1dGVWYWx1ZShtX2Vs
ZW1lbnQuZ2V0KCksIFtOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXSk7
CisgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmNyZWF0ZSh2YWx1ZSk7CiB9Ci0g
ICAgCisKIGJvb2wgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6Ym9vbEF0dHJpYnV0ZVZhbHVlKEpT
U3RyaW5nUmVmIGF0dHJpYnV0ZSkKIHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKLSAg
ICBpZCB2YWx1ZSA9IFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOltOU1N0
cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXV07CisgICAgaWQgdmFsdWUgPSBh
dHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCksIFtOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJp
bmdSZWY6YXR0cmlidXRlXSk7CiAgICAgaWYgKFt2YWx1ZSBpc0tpbmRPZkNsYXNzOltOU051bWJl
ciBjbGFzc11dKQogICAgICAgICByZXR1cm4gW3ZhbHVlIGJvb2xWYWx1ZV07Ci0gICAgRU5EX0FY
X09CSkNfRVhDRVBUSU9OUwotICAgIAogICAgIHJldHVybiBmYWxzZTsKIH0KIAogdm9pZCBBY2Nl
c3NpYmlsaXR5VUlFbGVtZW50OjpzZXRCb29sQXR0cmlidXRlVmFsdWUoSlNTdHJpbmdSZWYgYXR0
cmlidXRlLCBib29sIHZhbHVlKQogewotICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUwotICAg
IFttX2VsZW1lbnQgX2FjY2Vzc2liaWxpdHlTZXRUZXN0VmFsdWU6QCh2YWx1ZSkgZm9yQXR0cmli
dXRlOltOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXV07Ci0gICAgRU5E
X0FYX09CSkNfRVhDRVBUSU9OUworICAgIHNldEF0dHJpYnV0ZVZhbHVlKG1fZWxlbWVudC5nZXQo
KSwgW05TU3RyaW5nIHN0cmluZ1dpdGhKU1N0cmluZ1JlZjphdHRyaWJ1dGVdLCBAKHZhbHVlKSwg
dHJ1ZSk7CiB9Ci0gICAgCisKIHZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c2V0VmFsdWUo
SlNTdHJpbmdSZWYgdmFsdWUpCiB7Ci0gICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCi0gICAg
W21fZWxlbWVudCBhY2Nlc3NpYmlsaXR5U2V0VmFsdWU6W05TU3RyaW5nIHN0cmluZ1dpdGhKU1N0
cmluZ1JlZjp2YWx1ZV0gZm9yQXR0cmlidXRlOk5TQWNjZXNzaWJpbGl0eVZhbHVlQXR0cmlidXRl
XTsKLSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCisgICAgc2V0QXR0cmlidXRlVmFsdWUobV9l
bGVtZW50LmdldCgpLCBOU0FjY2Vzc2liaWxpdHlWYWx1ZUF0dHJpYnV0ZSwgW05TU3RyaW5nIHN0
cmluZ1dpdGhKU1N0cmluZ1JlZjp2YWx1ZV0pOwogfQotICAgIAorCiBib29sIEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OmlzQXR0cmlidXRlU2V0dGFibGUoSlNTdHJpbmdSZWYgYXR0cmlidXRlKQog
ewogICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUwpAQCAtMTQxMywxOCArMTQwMywxNCBAQCBi
b29sIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNldFNlbGVjdGVkVGV4dFJhbmdlKHVuc2lnbmVk
IGxvY2F0aW9uLCB1bnNpZ25lZCBsZQogewogICAgIE5TUmFuZ2UgdGV4dFJhbmdlID0gTlNNYWtl
UmFuZ2UobG9jYXRpb24sIGxlbmd0aCk7CiAgICAgTlNWYWx1ZSAqdGV4dFJhbmdlVmFsdWUgPSBb
TlNWYWx1ZSB2YWx1ZVdpdGhSYW5nZTp0ZXh0UmFuZ2VdOwotICAgIEJFR0lOX0FYX09CSkNfRVhD
RVBUSU9OUwotICAgIFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0eVNldFZhbHVlOnRleHRSYW5nZVZh
bHVlIGZvckF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlTZWxlY3RlZFRleHRSYW5nZUF0dHJpYnV0
ZV07Ci0gICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUworICAgIHNldEF0dHJpYnV0ZVZhbHVlKG1f
ZWxlbWVudC5nZXQoKSwgTlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRUZXh0UmFuZ2VBdHRyaWJ1dGUs
IHRleHRSYW5nZVZhbHVlKTsKIAogICAgIHJldHVybiB0cnVlOwogfQogCiBib29sIEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6OnNldFNlbGVjdGVkVmlzaWJsZVRleHRSYW5nZShBY2Nlc3NpYmlsaXR5
VGV4dE1hcmtlclJhbmdlKiBtYXJrZXJSYW5nZSkKIHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQ
VElPTlMKLSAgICBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlTZXRWYWx1ZTptYXJrZXJSYW5nZS0+
cGxhdGZvcm1UZXh0TWFya2VyUmFuZ2UoKSBmb3JBdHRyaWJ1dGU6TlNBY2Nlc3NpYmlsaXR5U2Vs
ZWN0ZWRUZXh0TWFya2VyUmFuZ2VBdHRyaWJ1dGVdOwotICAgIEVORF9BWF9PQkpDX0VYQ0VQVElP
TlMKKyAgICBzZXRBdHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCksIE5TQWNjZXNzaWJpbGl0
eVNlbGVjdGVkVGV4dE1hcmtlclJhbmdlQXR0cmlidXRlLCBtYXJrZXJSYW5nZS0+cGxhdGZvcm1U
ZXh0TWFya2VyUmFuZ2UoKSk7CiAKICAgICByZXR1cm4gdHJ1ZTsKIH0KQEAgLTE0ODAsMzcgKzE0
NjYsMzggQEAgdm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzeW5jUHJlc3MoKQogCiB2b2lk
IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNldFNlbGVjdGVkQ2hpbGQoQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudCogZWxlbWVudCkgY29uc3QKIHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMK
ICAgICBOU0FycmF5KiBhcnJheSA9IGVsZW1lbnQgPyBAW2VsZW1lbnQtPnBsYXRmb3JtVUlFbGVt
ZW50KCldIDogQFtdOwotICAgIFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0eVNldFZhbHVlOmFycmF5
IGZvckF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlTZWxlY3RlZENoaWxkcmVuQXR0cmlidXRlXTsK
LSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TICAgIAorICAgIHNldEF0dHJpYnV0ZVZhbHVlKG1f
ZWxlbWVudC5nZXQoKSwgTlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRDaGlsZHJlbkF0dHJpYnV0ZSwg
YXJyYXkpOwogfQogCiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNldFNlbGVjdGVkQ2hp
bGRBdEluZGV4KHVuc2lnbmVkIGluZGV4KSBjb25zdAogewotICAgIEJFR0lOX0FYX09CSkNfRVhD
RVBUSU9OUwogICAgIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50PiBlbGVtZW50ID0gY29u
c3RfY2FzdDxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Kj4odGhpcyktPmNoaWxkQXRJbmRleChpbmRl
eCk7CiAgICAgaWYgKCFlbGVtZW50KQogICAgICAgICByZXR1cm47Ci0gICAgTlNBcnJheSAqc2Vs
ZWN0ZWRDaGlsZHJlbiA9IFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOk5T
QWNjZXNzaWJpbGl0eVNlbGVjdGVkQ2hpbGRyZW5BdHRyaWJ1dGVdOwotICAgIE5TQXJyYXkgKmFy
cmF5ID0gQFtlbGVtZW50LT5wbGF0Zm9ybVVJRWxlbWVudCgpXTsKKworICAgIE5TQXJyYXkqIHNl
bGVjdGVkQ2hpbGRyZW4gPSBhdHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCksIE5TQWNjZXNz
aWJpbGl0eVNlbGVjdGVkQ2hpbGRyZW5BdHRyaWJ1dGUpOworICAgIE5TQXJyYXkqIGFycmF5ID0g
QFtlbGVtZW50LT5wbGF0Zm9ybVVJRWxlbWVudCgpXTsKICAgICBpZiAoc2VsZWN0ZWRDaGlsZHJl
bikKICAgICAgICAgYXJyYXkgPSBbc2VsZWN0ZWRDaGlsZHJlbiBhcnJheUJ5QWRkaW5nT2JqZWN0
c0Zyb21BcnJheTphcnJheV07Ci0gICAgW21fZWxlbWVudCBfYWNjZXNzaWJpbGl0eVNldFZhbHVl
OmFycmF5IGZvckF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlTZWxlY3RlZENoaWxkcmVuQXR0cmli
dXRlXTsKLSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCisKKyAgICBzZXRBdHRyaWJ1dGVWYWx1
ZShtX2VsZW1lbnQuZ2V0KCksIE5TQWNjZXNzaWJpbGl0eVNlbGVjdGVkQ2hpbGRyZW5BdHRyaWJ1
dGUsIGFycmF5LCB0cnVlKTsKIH0KIAogdm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpyZW1v
dmVTZWxlY3Rpb25BdEluZGV4KHVuc2lnbmVkIGluZGV4KSBjb25zdAogewotICAgIEJFR0lOX0FY
X09CSkNfRVhDRVBUSU9OUwogICAgIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50PiBlbGVt
ZW50ID0gY29uc3RfY2FzdDxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Kj4odGhpcyktPmNoaWxkQXRJ
bmRleChpbmRleCk7Ci0gICAgTlNBcnJheSAqc2VsZWN0ZWRDaGlsZHJlbiA9IFttX2VsZW1lbnQg
YWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOk5TQWNjZXNzaWJpbGl0eVNlbGVjdGVkQ2hpbGRy
ZW5BdHRyaWJ1dGVdOwotICAgIGlmICghZWxlbWVudCB8fCAhc2VsZWN0ZWRDaGlsZHJlbikKKyAg
ICBpZiAoIWVsZW1lbnQpCisgICAgICAgIHJldHVybjsKKworICAgIE5TQXJyYXkgKnNlbGVjdGVk
Q2hpbGRyZW4gPSBhdHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCksIE5TQWNjZXNzaWJpbGl0
eVNlbGVjdGVkQ2hpbGRyZW5BdHRyaWJ1dGUpOworICAgIGlmICghc2VsZWN0ZWRDaGlsZHJlbikK
ICAgICAgICAgcmV0dXJuOworCiAgICAgTlNNdXRhYmxlQXJyYXkgKmFycmF5ID0gW05TTXV0YWJs
ZUFycmF5IGFycmF5V2l0aEFycmF5OnNlbGVjdGVkQ2hpbGRyZW5dOwogICAgIFthcnJheSByZW1v
dmVPYmplY3Q6ZWxlbWVudC0+cGxhdGZvcm1VSUVsZW1lbnQoKV07Ci0gICAgW21fZWxlbWVudCBf
YWNjZXNzaWJpbGl0eVNldFZhbHVlOmFycmF5IGZvckF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlT
ZWxlY3RlZENoaWxkcmVuQXR0cmlidXRlXTsKLSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCisK
KyAgICBzZXRBdHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCksIE5TQWNjZXNzaWJpbGl0eVNl
bGVjdGVkQ2hpbGRyZW5BdHRyaWJ1dGUsIGFycmF5LCB0cnVlKTsKIH0KIAogdm9pZCBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpjbGVhclNlbGVjdGVkQ2hpbGRyZW4oKSBjb25zdApAQCAtMTY3OCw5
ICsxNjY1LDcgQEAgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OnBvcHVwVmFsdWUoKSBjb25zdAogCiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnRh
a2VGb2N1cygpCiB7Ci0gICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCi0gICAgW21fZWxlbWVu
dCBhY2Nlc3NpYmlsaXR5U2V0VmFsdWU6QFlFUyBmb3JBdHRyaWJ1dGU6TlNBY2Nlc3NpYmlsaXR5
Rm9jdXNlZEF0dHJpYnV0ZV07Ci0gICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUworICAgIHNldEF0
dHJpYnV0ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwgTlNBY2Nlc3NpYmlsaXR5Rm9jdXNlZEF0dHJp
YnV0ZSwgQFlFUyk7CiB9CiAKIHZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGFrZVNlbGVj
dGlvbigpCkBAIC0xNzkzLDE4ICsxNzc4LDE2IEBAIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VGV4dE1h
cmtlclJhbmdlPiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzZWxlY3RlZFRleHRNYXJrZXJSCiAK
IHZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cmVzZXRTZWxlY3RlZFRleHRNYXJrZXJSYW5n
ZSgpCiB7Ci0gICAgaWQgc3RhcnQgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVW
YWx1ZTpAIkFYU3RhcnRUZXh0TWFya2VyIl07CisgICAgaWQgc3RhcnQgPSBhdHRyaWJ1dGVWYWx1
ZShtX2VsZW1lbnQuZ2V0KCksIEAiQVhTdGFydFRleHRNYXJrZXIiKTsKICAgICBpZiAoIXN0YXJ0
KQogICAgICAgICByZXR1cm47Ci0gICAgCisKICAgICBOU0FycmF5KiB0ZXh0TWFya2VycyA9IEBb
c3RhcnQsIHN0YXJ0XTsKICAgICBpZCB0ZXh0TWFya2VyUmFuZ2UgPSBbbV9lbGVtZW50IGFjY2Vz
c2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpAIkFYVGV4dE1hcmtlclJhbmdlRm9yVW5vcmRlcmVkVGV4
dE1hcmtlcnMiIGZvclBhcmFtZXRlcjp0ZXh0TWFya2Vyc107CiAgICAgaWYgKCF0ZXh0TWFya2Vy
UmFuZ2UpCiAgICAgICAgIHJldHVybjsKLSAgICAKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElP
TlMKLSAgICBbbV9lbGVtZW50IF9hY2Nlc3NpYmlsaXR5U2V0VGVzdFZhbHVlOnRleHRNYXJrZXJS
YW5nZSBmb3JBdHRyaWJ1dGU6TlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRUZXh0TWFya2VyUmFuZ2VB
dHRyaWJ1dGVdOwotICAgIEVORF9BWF9PQkpDX0VYQ0VQVElPTlMKKworICAgIHNldEF0dHJpYnV0
ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwgTlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRUZXh0TWFya2Vy
UmFuZ2VBdHRyaWJ1dGUsIHRleHRNYXJrZXJSYW5nZSwgdHJ1ZSk7CiB9CiAKIFJlZlB0cjxBY2Nl
c3NpYmlsaXR5VGV4dE1hcmtlcj4gQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c3RhcnRUZXh0TWFy
a2VyRm9yVGV4dE1hcmtlclJhbmdlKEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyUmFuZ2UqIHJhbmdl
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396438</attachid>
            <date>2020-04-14 11:03:03 -0700</date>
            <delta_ts>2020-04-14 11:48:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210500-20200414140302.patch</filename>
            <type>text/plain</type>
            <size>18736</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMDMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M3ZGNiNTRjMTllYzJk
OTk0OTJhMGUzYWNmOWY2OTIwMjI3NDFkYi4uMDYzNmNlNGU3MGE5ODY0ZTQxZDA0NDczMjg0M2Fk
ZDBlZmQwZTFhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTA0LTE0ICBBbmRy
ZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBNYWtlIFdUUjo6
QWNjZXNzaWJpbGl0eVVJRWxlbWVudHMgY2FsbHMgdG8gYWNjZXNzaWJpbGl0eVNldFZhbHVlICBy
dW4gb24gQVggc2Vjb25kYXJ5IHRocmVhZC4gd2ViIGNvbnRlbnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDUwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZWQgX2FjY2Vzc2liaWxpdHlTZXRU
ZXN0VmFsdWUgc2luY2UgaXQgaXMgbm8gbG9uZ2VyIHVzZWQsIHVzZQorICAgICAgICBfYWNjZXNz
aWJpbGl0eVNldFZhbHVlIGluc3RlYWQuCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9X
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbToKKyAgICAgICAgKC1bV2ViQWNjZXNz
aWJpbGl0eU9iamVjdFdyYXBwZXIgX2FjY2Vzc2liaWxpdHlTZXRUZXN0VmFsdWU6Zm9yQXR0cmli
dXRlOl0pOiBEZWxldGVkLgorCiAyMDIwLTA0LTEzICBDb21taXQgUXVldWUgIDxjb21taXQtcXVl
dWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI2MDAwMy4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9t
YWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0KaW5kZXggYjQwM2QzZjZjNTE2
ZmI2YmQ2MGZhOWNiY2ZhZmM1YTQ0NDE1MmE3Zi4uZDFmZTI2YzExZGRkODJkYTJkNGJjNTg3MmMw
YTYxZTQxYmUwYTgyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9t
YWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0KKysrIGIvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0K
QEAgLTM1NTcsMTMgKzM1NTcsNiBAQCBBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19F
TkQKICAgICAgICAgYmFja2luZ09iamVjdC0+c2V0Q2FyZXRCcm93c2luZ0VuYWJsZWQoW251bWJl
ciBib29sVmFsdWVdKTsKIH0KIAotLy8gVXNlZCB0byBzZXQgYXR0cmlidXRlcyBzeW5jaHJvbm91
c2x5IG9uIGFjY2Vzc2liaWxpdHkgZWxlbWVudHMgd2l0aGluIHRlc3RzLgotLy8gRm9yIHVzZSB3
aXRoIER1bXBSZW5kZXJUcmVlIG9ubHkuCi0tICh2b2lkKV9hY2Nlc3NpYmlsaXR5U2V0VGVzdFZh
bHVlOihpZCl2YWx1ZSBmb3JBdHRyaWJ1dGU6KE5TU3RyaW5nKilhdHRyaWJ1dGVOYW1lCi17Ci0g
ICAgW3NlbGYgX2FjY2Vzc2liaWxpdHlTZXRWYWx1ZTp2YWx1ZSBmb3JBdHRyaWJ1dGU6YXR0cmli
dXRlTmFtZV07Ci19Ci0KIHN0YXRpYyBSZW5kZXJPYmplY3QqIHJlbmRlcmVyRm9yVmlldyhOU1Zp
ZXcqIHZpZXcpCiB7CiAgICAgaWYgKCFbdmlldyBjb25mb3Jtc1RvUHJvdG9jb2w6QHByb3RvY29s
KFdlYkNvcmVGcmFtZVZpZXcpXSkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xz
L0NoYW5nZUxvZwppbmRleCBkMTI3OTAzOGVjZTEwMGVlYTZkODAxZDQyNzhjYjIxYzU0YjdiZTQz
Li4yYjlmMTIyNzI2NTRjYzljNDY3MWY1MzNlNDhkMDIxNjY4ZmQzOWI4IDEwMDY0NAotLS0gYS9U
b29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIw
MjAtMDQtMTQgIEFuZHJlcyBHb256YWxleiAgPGFuZHJlc2dfMjJAYXBwbGUuY29tPgorCisgICAg
ICAgIE1ha2UgV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50cyBjYWxscyB0byBhY2Nlc3NpYmls
aXR5U2V0VmFsdWUgcnVuIG9uIEFYIHNlY29uZGFyeSB0aHJlYWQuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA1MDAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBOZWVkZWQgdG8gdGVzdCBhY2Nlc3NpYmls
aXR5IGlzb2xhdGVkIHRyZWUgbW9kZS4gRm9sbG93IHVwIHRvCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTAzOTIuCisKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbToKKyAgICAgICAgKEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OnNldEJvb2xBdHRyaWJ1dGVWYWx1ZSk6CisgICAgICAgIChBY2Nl
c3NpYmlsaXR5VUlFbGVtZW50OjpyZXNldFNlbGVjdGVkVGV4dE1hcmtlclJhbmdlKToKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnQuaDoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nl
c3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tOgorICAgICAgICAoV1RSOjpzZXRBdHRyaWJ1dGVWYWx1
ZSk6CisgICAgICAgIChXVFI6OmF0dHJpYnV0ZXNPZkVsZW1lbnQpOgorICAgICAgICAoV1RSOjpk
ZXNjcmlwdGlvbk9mRWxlbWVudHMpOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjpzdHJpbmdEZXNjcmlwdGlvbk9mQXR0cmlidXRlVmFsdWUpOgorICAgICAgICAoV1RSOjpB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzdHJpbmdBdHRyaWJ1dGVWYWx1ZSk6CisgICAgICAgIChX
VFI6OkFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnVpRWxlbWVudEFycmF5QXR0cmlidXRlVmFsdWUg
Y29uc3QpOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp1aUVsZW1lbnRB
dHRyaWJ1dGVWYWx1ZSBjb25zdCk6CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OmJvb2xBdHRyaWJ1dGVWYWx1ZSk6CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnNldEJvb2xBdHRyaWJ1dGVWYWx1ZSk6CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OnNldFZhbHVlKToKKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6c2V0U2VsZWN0ZWRUZXh0UmFuZ2UpOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpzZXRTZWxlY3RlZFZpc2libGVUZXh0UmFuZ2UpOgorICAgICAgICAoV1RSOjpB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzZXRTZWxlY3RlZENoaWxkIGNvbnN0KToKKyAgICAgICAg
KFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c2V0U2VsZWN0ZWRDaGlsZEF0SW5kZXggY29u
c3QpOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpyZW1vdmVTZWxlY3Rp
b25BdEluZGV4IGNvbnN0KToKKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
dGFrZUZvY3VzKToKKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cmVzZXRT
ZWxlY3RlZFRleHRNYXJrZXJSYW5nZSk6CisKIDIwMjAtMDQtMTMgIEFuZHJlcyBHb256YWxleiAg
PGFuZHJlc2dfMjJAYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgV1RSOjpBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50IG1ldGhvZHMgcnVuIG9uIEFYIHNlY29uZGFyeSB0aHJlYWQuCmRpZmYgLS1naXQg
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbSBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCmlu
ZGV4IDZiNWI1ZWZiZGI3ODMxZjA4YjA1YWYwNTYxODJjM2JjMzA2NGRjMWEuLjYyMTNlNzYxNmM4
ZWJhYmIyZjdjYWM1M2FlMTQ4MDk3MzBiYmMzNTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCisrKyBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCkBAIC03NSw3ICs3NSw2
IEBAIHR5cGVkZWYgdm9pZCAoKkFYUG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJhY2spKGlkIGVsZW1l
bnQsIE5TU3RyaW5nKiBub3RpZmljYXRpb24sCiAtIChOU0FycmF5ICopYWNjZXNzaWJpbGl0eUFy
cmF5QXR0cmlidXRlVmFsdWVzOihOU1N0cmluZyAqKWF0dHJpYnV0ZSBpbmRleDooTlNVSW50ZWdl
cilpbmRleCBtYXhDb3VudDooTlNVSW50ZWdlciltYXhDb3VudDsKIC0gKE5TVUludGVnZXIpYWNj
ZXNzaWJpbGl0eUluZGV4T2ZDaGlsZDooaWQpY2hpbGQ7CiAtIChOU1VJbnRlZ2VyKWFjY2Vzc2li
aWxpdHlBcnJheUF0dHJpYnV0ZUNvdW50OihOU1N0cmluZyAqKWF0dHJpYnV0ZTsKLS0gKHZvaWQp
X2FjY2Vzc2liaWxpdHlTZXRUZXN0VmFsdWU6KGlkKXZhbHVlIGZvckF0dHJpYnV0ZTooTlNTdHJp
bmcqKWF0dHJpYnV0ZU5hbWU7CiAtICh2b2lkKV9hY2Nlc3NpYmlsaXR5U2Nyb2xsVG9NYWtlVmlz
aWJsZVdpdGhTdWJGb2N1czooTlNSZWN0KXJlY3Q7CiAtICh2b2lkKV9hY2Nlc3NpYmlsaXR5U2Ny
b2xsVG9HbG9iYWxQb2ludDooTlNQb2ludClwb2ludDsKIC0gKHZvaWQpX2FjY2Vzc2liaWxpdHlT
ZXRWYWx1ZTooaWQpdmFsdWUgZm9yQXR0cmlidXRlOihOU1N0cmluZyopYXR0cmlidXRlTmFtZTsK
QEAgLTU4NCw3ICs1ODMsNyBAQCBib29sIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmJvb2xBdHRy
aWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUpCiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnNldEJvb2xBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUsIGJvb2wg
dmFsdWUpCiB7CiAgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCi0gICAgW21fZWxlbWVudCBf
YWNjZXNzaWJpbGl0eVNldFRlc3RWYWx1ZTpAKHZhbHVlKSBmb3JBdHRyaWJ1dGU6W05TU3RyaW5n
IHN0cmluZ1dpdGhKU1N0cmluZ1JlZjphdHRyaWJ1dGVdXTsKKyAgICBbbV9lbGVtZW50IF9hY2Nl
c3NpYmlsaXR5U2V0VmFsdWU6QCh2YWx1ZSkgZm9yQXR0cmlidXRlOltOU1N0cmluZyBzdHJpbmdX
aXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXV07CiAgICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUwog
fQogCkBAIC0xNjk2LDcgKzE2OTUsNyBAQCB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnJl
c2V0U2VsZWN0ZWRUZXh0TWFya2VyUmFuZ2UoKQogICAgICAgICByZXR1cm47CiAgICAgCiAgICAg
QkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCi0gICAgW21fZWxlbWVudCBfYWNjZXNzaWJpbGl0eVNl
dFRlc3RWYWx1ZTp0ZXh0TWFya2VyUmFuZ2UgZm9yQXR0cmlidXRlOk5TQWNjZXNzaWJpbGl0eVNl
bGVjdGVkVGV4dE1hcmtlclJhbmdlQXR0cmlidXRlXTsKKyAgICBbbV9lbGVtZW50IF9hY2Nlc3Np
YmlsaXR5U2V0VmFsdWU6dGV4dE1hcmtlclJhbmdlIGZvckF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxp
dHlTZWxlY3RlZFRleHRNYXJrZXJSYW5nZUF0dHJpYnV0ZV07CiAgICAgRU5EX0FYX09CSkNfRVhD
RVBUSU9OUwogfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCmluZGV4IDYxZDMwNzU3Zjk0
ZDQ4ZTVlZTZmNzJiYWZiMGU2ZGY5MGE4MWQ2ZTIuLjIwZWM1YzdhMzA2YTViMDhkMmExOWQ4YTIz
ZGVjNzMzNTdlNDMzMjYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCkBAIC01Niw3ICs1
Niw4IEBAIGNsYXNzIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgOiBwdWJsaWMgSlNXcmFwcGFibGUg
ewogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIC8vIEhlbHBlciBmdW5jdGlvbnMgdGhhdCBkaXNw
YXRjaCB0aGUgY29ycmVzcG9uZGluZyBBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBtZXRob2Qg
dG8gdGhlIEFYIHNlY29uZGFyeSB0aHJlYWQgd2hlbiBhcHByb3ByaWF0ZS4KICAgICBmcmllbmQg
TlNBcnJheSogc3VwcG9ydGVkQXR0cmlidXRlcyhpZCk7Ci0gICAgZnJpZW5kIGlkIGF0dHJpYnV0
ZVZhbHVlKGlkLCBOU1N0cmluZyopOworICAgIGZyaWVuZCBpZCBhdHRyaWJ1dGVWYWx1ZShpZCwg
TlNTdHJpbmcgKik7CisgICAgZnJpZW5kIHZvaWQgc2V0QXR0cmlidXRlVmFsdWUoaWQsIE5TU3Ry
aW5nICosIGlkLCBib29sIHN5bmNocm9ub3VzKTsKICNlbmRpZgogCiBwdWJsaWM6CmRpZmYgLS1n
aXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL21hYy9BY2Nlc3NpYmls
aXR5VUlFbGVtZW50TWFjLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQppbmRleCBhZDU1NDRjNWQzMDgyZDhl
ZGZjNjYzMDg1NjY1YTQzY2I5N2ZhN2U5Li4xZTU4ODg2YWRjZDZmMzdlZTQ3YzRmMTZmNTc3N2Jj
MTJkYTk0ZGZkIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVu
ZGxlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRNYWMubW0K
QEAgLTc5LDcgKzc5LDYgQEAgdHlwZWRlZiB2b2lkICgqQVhQb3N0ZWROb3RpZmljYXRpb25DYWxs
YmFjaykoaWQgZWxlbWVudCwgTlNTdHJpbmcqIG5vdGlmaWNhdGlvbiwKIC0gKE5TQXJyYXkgKilh
Y2Nlc3NpYmlsaXR5QXJyYXlBdHRyaWJ1dGVWYWx1ZXM6KE5TU3RyaW5nICopYXR0cmlidXRlIGlu
ZGV4OihOU1VJbnRlZ2VyKWluZGV4IG1heENvdW50OihOU1VJbnRlZ2VyKW1heENvdW50OwogLSAo
TlNVSW50ZWdlcilhY2Nlc3NpYmlsaXR5SW5kZXhPZkNoaWxkOihpZCljaGlsZDsKIC0gKE5TVUlu
dGVnZXIpYWNjZXNzaWJpbGl0eUFycmF5QXR0cmlidXRlQ291bnQ6KE5TU3RyaW5nICopYXR0cmli
dXRlOwotLSAodm9pZClfYWNjZXNzaWJpbGl0eVNldFRlc3RWYWx1ZTooaWQpdmFsdWUgZm9yQXR0
cmlidXRlOihOU1N0cmluZyopYXR0cmlidXRlTmFtZTsKIC0gKHZvaWQpX2FjY2Vzc2liaWxpdHlT
Y3JvbGxUb01ha2VWaXNpYmxlV2l0aFN1YkZvY3VzOihOU1JlY3QpcmVjdDsKIC0gKHZvaWQpX2Fj
Y2Vzc2liaWxpdHlTY3JvbGxUb0dsb2JhbFBvaW50OihOU1BvaW50KXBvaW50OwogLSAodm9pZClf
YWNjZXNzaWJpbGl0eVNldFZhbHVlOihpZCl2YWx1ZSBmb3JBdHRyaWJ1dGU6KE5TU3RyaW5nKilh
dHRyaWJ1dGVOYW1lOwpAQCAtMTIwLDcgKzExOSw3IEBAIGJvb2wgQWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6aXNFcXVhbChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KiBvdGhlckVsZW1lbnQpCiAKIE5T
QXJyYXkqIHN1cHBvcnRlZEF0dHJpYnV0ZXMoaWQgZWxlbWVudCkKIHsKLSAgICBOU0FycmF5KiBh
dHRyaWJ1dGVzOworICAgIE5TQXJyYXkgKmF0dHJpYnV0ZXM7CiAKICAgICBCRUdJTl9BWF9PQkpD
X0VYQ0VQVElPTlMKICAgICBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzX2NvbnRyb2xsZXItPmV4
ZWN1dGVPbkFYVGhyZWFkSWZQb3NzaWJsZShbJmF0dHJpYnV0ZXMsICZlbGVtZW50XSB7CkBAIC0x
MzEsNyArMTMwLDcgQEAgTlNBcnJheSogc3VwcG9ydGVkQXR0cmlidXRlcyhpZCBlbGVtZW50KQog
ICAgIHJldHVybiBhdHRyaWJ1dGVzOwogfQogCi1pZCBhdHRyaWJ1dGVWYWx1ZShpZCBlbGVtZW50
LCBOU1N0cmluZyogYXR0cmlidXRlKQoraWQgYXR0cmlidXRlVmFsdWUoaWQgZWxlbWVudCwgTlNT
dHJpbmcgKmF0dHJpYnV0ZSkKIHsKICAgICBpZCB2YWx1ZTsKIApAQCAtMTQ0LDYgKzE0MywxNyBA
QCBpZCBhdHRyaWJ1dGVWYWx1ZShpZCBlbGVtZW50LCBOU1N0cmluZyogYXR0cmlidXRlKQogICAg
IHJldHVybiB2YWx1ZTsKIH0KIAordm9pZCBzZXRBdHRyaWJ1dGVWYWx1ZShpZCBlbGVtZW50LCBO
U1N0cmluZyogYXR0cmlidXRlLCBpZCB2YWx1ZSwgYm9vbCBzeW5jaHJvbm91cyA9IGZhbHNlKQor
eworICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUworICAgIEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OnNfY29udHJvbGxlci0+ZXhlY3V0ZU9uQVhUaHJlYWRJZlBvc3NpYmxlKFsmZWxlbWVudCwg
JmF0dHJpYnV0ZSwgJnZhbHVlLCAmc3luY2hyb25vdXNdIHsKKyAgICAgICAgLy8gRklYTUU6IHNo
b3VsZCBhbHdheXMgYmUgYXN5bmNocm9ub3VzLCBmaXggdGVzdHMuCisgICAgICAgIHN5bmNocm9u
b3VzID8gW2VsZW1lbnQgX2FjY2Vzc2liaWxpdHlTZXRWYWx1ZTp2YWx1ZSBmb3JBdHRyaWJ1dGU6
YXR0cmlidXRlXSA6CisgICAgICAgICAgICBbZWxlbWVudCBhY2Nlc3NpYmlsaXR5U2V0VmFsdWU6
dmFsdWUgZm9yQXR0cmlidXRlOmF0dHJpYnV0ZV07OzsKKyAgICB9KTsKKyAgICBFTkRfQVhfT0JK
Q19FWENFUFRJT05TCit9CisKIHN0YXRpYyBOU1N0cmluZyogZGVzY3JpcHRpb25PZlZhbHVlKGlk
IHZhbHVlT2JqZWN0LCBpZCBlbGVtZW50KQogewogICAgIGlmICghdmFsdWVPYmplY3QpCkBAIC0x
OTEsMTAgKzIwMSw4IEBAIHN0YXRpYyBOU1N0cmluZyAqYXR0cmlidXRlc09mRWxlbWVudChpZCBh
Y2Nlc3NpYmlsaXR5T2JqZWN0KQogICAgIE5TQXJyYXkqIGF0dHJpYnV0ZXMgPSBzdXBwb3J0ZWRB
dHRyaWJ1dGVzKGFjY2Vzc2liaWxpdHlPYmplY3QpOwogCiAgICAgTlNNdXRhYmxlU3RyaW5nKiBh
dHRyaWJ1dGVzU3RyaW5nID0gW05TTXV0YWJsZVN0cmluZyBzdHJpbmddOwotICAgIGZvciAoTlNV
SW50ZWdlciBpID0gMDsgaSA8IGF0dHJpYnV0ZXMuY291bnQ7ICsraSkgewotICAgICAgICBOU1N0
cmluZyogYXR0cmlidXRlID0gW2F0dHJpYnV0ZXMgb2JqZWN0QXRJbmRleDppXTsKLQotICAgICAg
ICAvLyBSaWdodCBub3csIHBvc2l0aW9uIHByb3ZpZGVzIHVzZWxlc3MgYW5kIHNjcmVlbi1zcGVj
aWZpYyBpbmZvcm1hdGlvbiwgc28gd2UgZG8gbm90CisgICAgZm9yIChOU1N0cmluZyogYXR0cmli
dXRlIGluIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgLy8gUG9zaXRpb24gcHJvdmlkZXMgdXNlbGVz
cyBhbmQgc2NyZWVuLXNwZWNpZmljIGluZm9ybWF0aW9uLCBzbyB3ZSBkbyBub3QKICAgICAgICAg
Ly8gd2FudCB0byBpbmNsdWRlIGl0IGZvciB0aGUgc2FrZSBvZiB1bml2ZXJzYWxseSBwYXNzaW5n
IHRlc3RzLgogICAgICAgICBpZiAoW2F0dHJpYnV0ZSBpc0VxdWFsVG9TdHJpbmc6QCJBWFBvc2l0
aW9uIl0pCiAgICAgICAgICAgICBjb250aW51ZTsKQEAgLTI0MCwxMyArMjQ4LDExIEBAIHN0YXRp
YyBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4gY29uY2F0ZW5hdGVBdHRyaWJ1dGVBbmRWYWx1ZShO
U1N0cmluZyogYXR0cmlidXRlCiBzdGF0aWMgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IGRlc2Ny
aXB0aW9uT2ZFbGVtZW50cyhWZWN0b3I8UmVmUHRyPEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ+ID4m
IGVsZW1lbnRWZWN0b3IpCiB7CiAgICAgTlNNdXRhYmxlU3RyaW5nKiBhbGxFbGVtZW50U3RyaW5n
ID0gW05TTXV0YWJsZVN0cmluZyBzdHJpbmddOwotICAgIHNpemVfdCBzaXplID0gZWxlbWVudFZl
Y3Rvci5zaXplKCk7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKLSAg
ICAgICAgUmVmUHRyPEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ+IHVpRWxlbWVudCA9IGVsZW1lbnRW
ZWN0b3JbaV07CisgICAgZm9yIChhdXRvIHVpRWxlbWVudCA6IGVsZW1lbnRWZWN0b3IpIHsKICAg
ICAgICAgTlNTdHJpbmcqIGF0dHJpYnV0ZXMgPSBhdHRyaWJ1dGVzT2ZFbGVtZW50KHVpRWxlbWVu
dC0+cGxhdGZvcm1VSUVsZW1lbnQoKSk7CiAgICAgICAgIFthbGxFbGVtZW50U3RyaW5nIGFwcGVu
ZEZvcm1hdDpAIiVAXG4tLS0tLS0tLS0tLS1cbiIsIGF0dHJpYnV0ZXNdOwogICAgIH0KLSAgICAK
KwogICAgIHJldHVybiBbYWxsRWxlbWVudFN0cmluZyBjcmVhdGVKU1N0cmluZ1JlZl07CiB9CiAK
QEAgLTU1OSwyNCArNTY1LDE5IEBAIEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPiBBY2Nlc3NpYmls
aXR5VUlFbGVtZW50OjphbGxBdHRyaWJ1dGVzKCkKICAgICBOU1N0cmluZyogYXR0cmlidXRlcyA9
IGF0dHJpYnV0ZXNPZkVsZW1lbnQobV9lbGVtZW50LmdldCgpKTsKICAgICByZXR1cm4gW2F0dHJp
YnV0ZXMgY3JlYXRlSlNTdHJpbmdSZWZdOwogfQotICAgIAorCiBKU1JldGFpblB0cjxKU1N0cmlu
Z1JlZj4gQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c3RyaW5nRGVzY3JpcHRpb25PZkF0dHJpYnV0
ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkKIHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQ
VElPTlMKLSAgICBOU1N0cmluZyAqdmFsdWUgPSBkZXNjcmlwdGlvbk9mVmFsdWUoW21fZWxlbWVu
dCBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFsdWU6W05TU3RyaW5nIHN0cmluZ1dpdGhKU1N0cmlu
Z1JlZjphdHRyaWJ1dGVdXSwgbV9lbGVtZW50LmdldCgpKTsKLSAgICByZXR1cm4gW3ZhbHVlIGNy
ZWF0ZUpTU3RyaW5nUmVmXTsKLSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCi0gICAgcmV0dXJu
IG51bGxwdHI7CisgICAgaWQgdmFsdWUgPSBhdHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCks
IFtOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXSk7CisgICAgTlNTdHJp
bmcqIHZhbHVlRGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbk9mVmFsdWUodmFsdWUsIG1fZWxlbWVu
dC5nZXQoKSk7CisgICAgcmV0dXJuIFt2YWx1ZURlc2NyaXB0aW9uIGNyZWF0ZUpTU3RyaW5nUmVm
XTsKIH0KIAogSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OnN0cmluZ0F0dHJpYnV0ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkKIHsKLSAgICBCRUdJ
Tl9BWF9PQkpDX0VYQ0VQVElPTlMKLSAgICBpZCB2YWx1ZSA9IFttX2VsZW1lbnQgYWNjZXNzaWJp
bGl0eUF0dHJpYnV0ZVZhbHVlOltOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmli
dXRlXV07CisgICAgaWQgdmFsdWUgPSBhdHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCksIFtO
U1N0cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXSk7CiAgICAgaWYgKFt2YWx1
ZSBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dKQogICAgICAgICByZXR1cm4gW3ZhbHVl
IGNyZWF0ZUpTU3RyaW5nUmVmXTsKLSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCi0KICAgICBy
ZXR1cm4gbnVsbHB0cjsKIH0KIApAQCAtNTkyLDcgKzU5Myw3IEBAIEpTVmFsdWVSZWYgQWNjZXNz
aWJpbGl0eVVJRWxlbWVudDo6dWlFbGVtZW50QXJyYXlBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1Jl
ZiBhdHRyCiB7CiAgICAgV0tCdW5kbGVGcmFtZVJlZiBtYWluRnJhbWUgPSBXS0J1bmRsZVBhZ2VH
ZXRNYWluRnJhbWUoSW5qZWN0ZWRCdW5kbGU6OnNpbmdsZXRvbigpLnBhZ2UoKS0+cGFnZSgpKTsK
ICAgICBKU0NvbnRleHRSZWYgY29udGV4dCA9IFdLQnVuZGxlRnJhbWVHZXRKYXZhU2NyaXB0Q29u
dGV4dChtYWluRnJhbWUpOwotICAgIAorCiAgICAgVmVjdG9yPFJlZlB0cjxBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50Pj4gZWxlbWVudHM7CiAgICAgZ2V0VUlFbGVtZW50c1dpdGhBdHRyaWJ1dGUoYXR0
cmlidXRlLCBlbGVtZW50cyk7CiAgICAgcmV0dXJuIGNvbnZlcnRWZWN0b3JUb09iamVjdEFycmF5
PFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Pj4oY29udGV4dCwgZWxlbWVudHMpOwpAQCAt
NjAwLDM5ICs2MDEsMjggQEAgSlNWYWx1ZVJlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp1aUVs
ZW1lbnRBcnJheUF0dHJpYnV0ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHIKIAogUmVmUHRyPEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ+IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnVpRWxlbWVudEF0dHJp
YnV0ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkgY29uc3QKIHsKLSAgICBCRUdJTl9BWF9P
QkpDX0VYQ0VQVElPTlMKLSAgICBpZCB1aUVsZW1lbnQgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxp
dHlBdHRyaWJ1dGVWYWx1ZTpbTlNTdHJpbmcgc3RyaW5nV2l0aEpTU3RyaW5nUmVmOmF0dHJpYnV0
ZV1dOwotICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpjcmVhdGUodWlFbGVtZW50
KTsKLSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCi0gICAgCi0gICAgcmV0dXJuIG51bGxwdHI7
CisgICAgaWQgdmFsdWUgPSBhdHRyaWJ1dGVWYWx1ZShtX2VsZW1lbnQuZ2V0KCksIFtOU1N0cmlu
ZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXSk7CisgICAgcmV0dXJuIEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6OmNyZWF0ZSh2YWx1ZSk7CiB9Ci0gICAgCisKIGJvb2wgQWNjZXNzaWJp
bGl0eVVJRWxlbWVudDo6Ym9vbEF0dHJpYnV0ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkK
IHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKLSAgICBpZCB2YWx1ZSA9IFttX2VsZW1l
bnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOltOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJp
bmdSZWY6YXR0cmlidXRlXV07CisgICAgaWQgdmFsdWUgPSBhdHRyaWJ1dGVWYWx1ZShtX2VsZW1l
bnQuZ2V0KCksIFtOU1N0cmluZyBzdHJpbmdXaXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXSk7CiAg
ICAgaWYgKFt2YWx1ZSBpc0tpbmRPZkNsYXNzOltOU051bWJlciBjbGFzc11dKQogICAgICAgICBy
ZXR1cm4gW3ZhbHVlIGJvb2xWYWx1ZV07Ci0gICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUwotICAg
IAogICAgIHJldHVybiBmYWxzZTsKIH0KIAogdm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojpz
ZXRCb29sQXR0cmlidXRlVmFsdWUoSlNTdHJpbmdSZWYgYXR0cmlidXRlLCBib29sIHZhbHVlKQog
ewotICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUwotICAgIFttX2VsZW1lbnQgX2FjY2Vzc2li
aWxpdHlTZXRUZXN0VmFsdWU6QCh2YWx1ZSkgZm9yQXR0cmlidXRlOltOU1N0cmluZyBzdHJpbmdX
aXRoSlNTdHJpbmdSZWY6YXR0cmlidXRlXV07Ci0gICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUwor
ICAgIHNldEF0dHJpYnV0ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwgW05TU3RyaW5nIHN0cmluZ1dp
dGhKU1N0cmluZ1JlZjphdHRyaWJ1dGVdLCBAKHZhbHVlKSwgdHJ1ZSk7CiB9Ci0gICAgCisKIHZv
aWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c2V0VmFsdWUoSlNTdHJpbmdSZWYgdmFsdWUpCiB7
Ci0gICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCi0gICAgW21fZWxlbWVudCBhY2Nlc3NpYmls
aXR5U2V0VmFsdWU6W05TU3RyaW5nIHN0cmluZ1dpdGhKU1N0cmluZ1JlZjp2YWx1ZV0gZm9yQXR0
cmlidXRlOk5TQWNjZXNzaWJpbGl0eVZhbHVlQXR0cmlidXRlXTsKLSAgICBFTkRfQVhfT0JKQ19F
WENFUFRJT05TCisgICAgc2V0QXR0cmlidXRlVmFsdWUobV9lbGVtZW50LmdldCgpLCBOU0FjY2Vz
c2liaWxpdHlWYWx1ZUF0dHJpYnV0ZSwgW05TU3RyaW5nIHN0cmluZ1dpdGhKU1N0cmluZ1JlZjp2
YWx1ZV0pOwogfQotICAgIAorCiBib29sIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmlzQXR0cmli
dXRlU2V0dGFibGUoSlNTdHJpbmdSZWYgYXR0cmlidXRlKQogewogICAgIEJFR0lOX0FYX09CSkNf
RVhDRVBUSU9OUwpAQCAtMTQxMywxOCArMTQwMywxNCBAQCBib29sIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnNldFNlbGVjdGVkVGV4dFJhbmdlKHVuc2lnbmVkIGxvY2F0aW9uLCB1bnNpZ25lZCBs
ZQogewogICAgIE5TUmFuZ2UgdGV4dFJhbmdlID0gTlNNYWtlUmFuZ2UobG9jYXRpb24sIGxlbmd0
aCk7CiAgICAgTlNWYWx1ZSAqdGV4dFJhbmdlVmFsdWUgPSBbTlNWYWx1ZSB2YWx1ZVdpdGhSYW5n
ZTp0ZXh0UmFuZ2VdOwotICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUwotICAgIFttX2VsZW1l
bnQgYWNjZXNzaWJpbGl0eVNldFZhbHVlOnRleHRSYW5nZVZhbHVlIGZvckF0dHJpYnV0ZTpOU0Fj
Y2Vzc2liaWxpdHlTZWxlY3RlZFRleHRSYW5nZUF0dHJpYnV0ZV07Ci0gICAgRU5EX0FYX09CSkNf
RVhDRVBUSU9OUworICAgIHNldEF0dHJpYnV0ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwgTlNBY2Nl
c3NpYmlsaXR5U2VsZWN0ZWRUZXh0UmFuZ2VBdHRyaWJ1dGUsIHRleHRSYW5nZVZhbHVlKTsKIAog
ICAgIHJldHVybiB0cnVlOwogfQogCiBib29sIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNldFNl
bGVjdGVkVmlzaWJsZVRleHRSYW5nZShBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlclJhbmdlKiBtYXJr
ZXJSYW5nZSkKIHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKLSAgICBbbV9lbGVtZW50
IGFjY2Vzc2liaWxpdHlTZXRWYWx1ZTptYXJrZXJSYW5nZS0+cGxhdGZvcm1UZXh0TWFya2VyUmFu
Z2UoKSBmb3JBdHRyaWJ1dGU6TlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRUZXh0TWFya2VyUmFuZ2VB
dHRyaWJ1dGVdOwotICAgIEVORF9BWF9PQkpDX0VYQ0VQVElPTlMKKyAgICBzZXRBdHRyaWJ1dGVW
YWx1ZShtX2VsZW1lbnQuZ2V0KCksIE5TQWNjZXNzaWJpbGl0eVNlbGVjdGVkVGV4dE1hcmtlclJh
bmdlQXR0cmlidXRlLCBtYXJrZXJSYW5nZS0+cGxhdGZvcm1UZXh0TWFya2VyUmFuZ2UoKSk7CiAK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KQEAgLTE0ODAsMzcgKzE0NjYsMzggQEAgdm9pZCBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpzeW5jUHJlc3MoKQogCiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OnNldFNlbGVjdGVkQ2hpbGQoQWNjZXNzaWJpbGl0eVVJRWxlbWVudCogZWxlbWVudCkgY29u
c3QKIHsKLSAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKICAgICBOU0FycmF5KiBhcnJheSA9
IGVsZW1lbnQgPyBAW2VsZW1lbnQtPnBsYXRmb3JtVUlFbGVtZW50KCldIDogQFtdOwotICAgIFtt
X2VsZW1lbnQgYWNjZXNzaWJpbGl0eVNldFZhbHVlOmFycmF5IGZvckF0dHJpYnV0ZTpOU0FjY2Vz
c2liaWxpdHlTZWxlY3RlZENoaWxkcmVuQXR0cmlidXRlXTsKLSAgICBFTkRfQVhfT0JKQ19FWENF
UFRJT05TICAgIAorICAgIHNldEF0dHJpYnV0ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwgTlNBY2Nl
c3NpYmlsaXR5U2VsZWN0ZWRDaGlsZHJlbkF0dHJpYnV0ZSwgYXJyYXkpOwogfQogCiB2b2lkIEFj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNldFNlbGVjdGVkQ2hpbGRBdEluZGV4KHVuc2lnbmVkIGlu
ZGV4KSBjb25zdAogewotICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUwogICAgIFJlZlB0cjxB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50PiBlbGVtZW50ID0gY29uc3RfY2FzdDxBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50Kj4odGhpcyktPmNoaWxkQXRJbmRleChpbmRleCk7CiAgICAgaWYgKCFlbGVtZW50
KQogICAgICAgICByZXR1cm47Ci0gICAgTlNBcnJheSAqc2VsZWN0ZWRDaGlsZHJlbiA9IFttX2Vs
ZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOk5TQWNjZXNzaWJpbGl0eVNlbGVjdGVk
Q2hpbGRyZW5BdHRyaWJ1dGVdOworCisgICAgTlNBcnJheSAqc2VsZWN0ZWRDaGlsZHJlbiA9IGF0
dHJpYnV0ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwgTlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRDaGls
ZHJlbkF0dHJpYnV0ZSk7CiAgICAgTlNBcnJheSAqYXJyYXkgPSBAW2VsZW1lbnQtPnBsYXRmb3Jt
VUlFbGVtZW50KCldOwogICAgIGlmIChzZWxlY3RlZENoaWxkcmVuKQogICAgICAgICBhcnJheSA9
IFtzZWxlY3RlZENoaWxkcmVuIGFycmF5QnlBZGRpbmdPYmplY3RzRnJvbUFycmF5OmFycmF5XTsK
LSAgICBbbV9lbGVtZW50IF9hY2Nlc3NpYmlsaXR5U2V0VmFsdWU6YXJyYXkgZm9yQXR0cmlidXRl
Ok5TQWNjZXNzaWJpbGl0eVNlbGVjdGVkQ2hpbGRyZW5BdHRyaWJ1dGVdOwotICAgIEVORF9BWF9P
QkpDX0VYQ0VQVElPTlMKKworICAgIHNldEF0dHJpYnV0ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwg
TlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRDaGlsZHJlbkF0dHJpYnV0ZSwgYXJyYXksIHRydWUpOwog
fQogCiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnJlbW92ZVNlbGVjdGlvbkF0SW5kZXgo
dW5zaWduZWQgaW5kZXgpIGNvbnN0CiB7Ci0gICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCiAg
ICAgUmVmUHRyPEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ+IGVsZW1lbnQgPSBjb25zdF9jYXN0PEFj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQqPih0aGlzKS0+Y2hpbGRBdEluZGV4KGluZGV4KTsKLSAgICBO
U0FycmF5ICpzZWxlY3RlZENoaWxkcmVuID0gW21fZWxlbWVudCBhY2Nlc3NpYmlsaXR5QXR0cmli
dXRlVmFsdWU6TlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRDaGlsZHJlbkF0dHJpYnV0ZV07Ci0gICAg
aWYgKCFlbGVtZW50IHx8ICFzZWxlY3RlZENoaWxkcmVuKQorICAgIGlmICghZWxlbWVudCkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgTlNBcnJheSAqc2VsZWN0ZWRDaGlsZHJlbiA9IGF0dHJpYnV0
ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwgTlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRDaGlsZHJlbkF0
dHJpYnV0ZSk7CisgICAgaWYgKCFzZWxlY3RlZENoaWxkcmVuKQogICAgICAgICByZXR1cm47CisK
ICAgICBOU011dGFibGVBcnJheSAqYXJyYXkgPSBbTlNNdXRhYmxlQXJyYXkgYXJyYXlXaXRoQXJy
YXk6c2VsZWN0ZWRDaGlsZHJlbl07CiAgICAgW2FycmF5IHJlbW92ZU9iamVjdDplbGVtZW50LT5w
bGF0Zm9ybVVJRWxlbWVudCgpXTsKLSAgICBbbV9lbGVtZW50IF9hY2Nlc3NpYmlsaXR5U2V0VmFs
dWU6YXJyYXkgZm9yQXR0cmlidXRlOk5TQWNjZXNzaWJpbGl0eVNlbGVjdGVkQ2hpbGRyZW5BdHRy
aWJ1dGVdOwotICAgIEVORF9BWF9PQkpDX0VYQ0VQVElPTlMKKworICAgIHNldEF0dHJpYnV0ZVZh
bHVlKG1fZWxlbWVudC5nZXQoKSwgTlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRDaGlsZHJlbkF0dHJp
YnV0ZSwgYXJyYXksIHRydWUpOwogfQogCiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmNs
ZWFyU2VsZWN0ZWRDaGlsZHJlbigpIGNvbnN0CkBAIC0xNjc4LDkgKzE2NjUsNyBAQCBKU1JldGFp
blB0cjxKU1N0cmluZ1JlZj4gQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cG9wdXBWYWx1ZSgpIGNv
bnN0CiAKIHZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGFrZUZvY3VzKCkKIHsKLSAgICBC
RUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKLSAgICBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlTZXRW
YWx1ZTpAWUVTIGZvckF0dHJpYnV0ZTpOU0FjY2Vzc2liaWxpdHlGb2N1c2VkQXR0cmlidXRlXTsK
LSAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCisgICAgc2V0QXR0cmlidXRlVmFsdWUobV9lbGVt
ZW50LmdldCgpLCBOU0FjY2Vzc2liaWxpdHlGb2N1c2VkQXR0cmlidXRlLCBAWUVTKTsKIH0KIAog
dm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp0YWtlU2VsZWN0aW9uKCkKQEAgLTE3OTMsMTgg
KzE3NzgsMTYgQEAgUmVmUHRyPEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyUmFuZ2U+IEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6OnNlbGVjdGVkVGV4dE1hcmtlclIKIAogdm9pZCBBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpyZXNldFNlbGVjdGVkVGV4dE1hcmtlclJhbmdlKCkKIHsKLSAgICBpZCBzdGFy
dCA9IFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOkAiQVhTdGFydFRleHRN
YXJrZXIiXTsKKyAgICBpZCBzdGFydCA9IGF0dHJpYnV0ZVZhbHVlKG1fZWxlbWVudC5nZXQoKSwg
QCJBWFN0YXJ0VGV4dE1hcmtlciIpOwogICAgIGlmICghc3RhcnQpCiAgICAgICAgIHJldHVybjsK
LSAgICAKKwogICAgIE5TQXJyYXkqIHRleHRNYXJrZXJzID0gQFtzdGFydCwgc3RhcnRdOwogICAg
IGlkIHRleHRNYXJrZXJSYW5nZSA9IFttX2VsZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZh
bHVlOkAiQVhUZXh0TWFya2VyUmFuZ2VGb3JVbm9yZGVyZWRUZXh0TWFya2VycyIgZm9yUGFyYW1l
dGVyOnRleHRNYXJrZXJzXTsKICAgICBpZiAoIXRleHRNYXJrZXJSYW5nZSkKICAgICAgICAgcmV0
dXJuOwotICAgIAotICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUwotICAgIFttX2VsZW1lbnQg
X2FjY2Vzc2liaWxpdHlTZXRUZXN0VmFsdWU6dGV4dE1hcmtlclJhbmdlIGZvckF0dHJpYnV0ZTpO
U0FjY2Vzc2liaWxpdHlTZWxlY3RlZFRleHRNYXJrZXJSYW5nZUF0dHJpYnV0ZV07Ci0gICAgRU5E
X0FYX09CSkNfRVhDRVBUSU9OUworCisgICAgc2V0QXR0cmlidXRlVmFsdWUobV9lbGVtZW50Lmdl
dCgpLCBOU0FjY2Vzc2liaWxpdHlTZWxlY3RlZFRleHRNYXJrZXJSYW5nZUF0dHJpYnV0ZSwgdGV4
dE1hcmtlclJhbmdlLCB0cnVlKTsKIH0KIAogUmVmUHRyPEFjY2Vzc2liaWxpdHlUZXh0TWFya2Vy
PiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzdGFydFRleHRNYXJrZXJGb3JUZXh0TWFya2VyUmFu
Z2UoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSogcmFuZ2UpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>