<?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>237641</bug_id>
          
          <creation_ts>2022-03-09 02:59:45 -0800</creation_ts>
          <short_desc>[Selection] Fixes selection range settings for TEXTAREA</short_desc>
          <delta_ts>2022-04-28 20:29:25 -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>Forms</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>zsun</reporter>
          <assigned_to>zsun</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>dpino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mifenton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1849595</commentid>
    <comment_count>0</comment_count>
    <who name="">zsun</who>
    <bug_when>2022-03-09 02:59:45 -0800</bug_when>
    <thetext>A few WPT tests in imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection are affected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1849608</commentid>
    <comment_count>1</comment_count>
      <attachid>454220</attachid>
    <who name="">zsun</who>
    <bug_when>2022-03-09 03:18:03 -0800</bug_when>
    <thetext>Created attachment 454220
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1849687</commentid>
    <comment_count>2</comment_count>
      <attachid>454237</attachid>
    <who name="">zsun</who>
    <bug_when>2022-03-09 08:01:57 -0800</bug_when>
    <thetext>Created attachment 454237
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1849768</commentid>
    <comment_count>3</comment_count>
      <attachid>454269</attachid>
    <who name="">zsun</who>
    <bug_when>2022-03-09 10:44:14 -0800</bug_when>
    <thetext>Created attachment 454269
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1849988</commentid>
    <comment_count>4</comment_count>
      <attachid>454322</attachid>
    <who name="">zsun</who>
    <bug_when>2022-03-10 01:07:02 -0800</bug_when>
    <thetext>Created attachment 454322
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850834</commentid>
    <comment_count>5</comment_count>
      <attachid>454579</attachid>
    <who name="">zsun</who>
    <bug_when>2022-03-14 04:38:12 -0700</bug_when>
    <thetext>Created attachment 454579
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850836</commentid>
    <comment_count>6</comment_count>
      <attachid>454581</attachid>
    <who name="">zsun</who>
    <bug_when>2022-03-14 04:59:34 -0700</bug_when>
    <thetext>Created attachment 454581
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850889</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-14 08:56:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/90248608&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851071</commentid>
    <comment_count>8</comment_count>
      <attachid>454581</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-14 16:32:58 -0700</bug_when>
    <thetext>Comment on attachment 454581
Patch

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

r=me

&gt; Source/WebCore/html/HTMLTextFormControlElement.cpp:316
&gt; +    RefPtr&lt;Frame&gt; frame = document().frame();

RefPtr frame = document().frame();

&gt; Source/WebCore/html/TextFieldInputType.cpp:148
&gt; +        unsigned max = visibleValue().length();

nit: I would use auto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851209</commentid>
    <comment_count>9</comment_count>
      <attachid>454682</attachid>
    <who name="">zsun</who>
    <bug_when>2022-03-15 02:41:13 -0700</bug_when>
    <thetext>Created attachment 454682
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852202</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-17 02:20:40 -0700</bug_when>
    <thetext>Committed r291396 (248526@main): &lt;https://commits.webkit.org/248526@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 454682.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1865333</commentid>
    <comment_count>11</comment_count>
    <who name="Arcady Goldmints-Orlov">crzwdjk</who>
    <bug_when>2022-04-28 20:29:25 -0700</bug_when>
    <thetext>*** Bug 207624 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454220</attachid>
            <date>2022-03-09 03:18:03 -0800</date>
            <delta_ts>2022-03-09 08:02:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237641-20220309111801.patch</filename>
            <type>text/plain</type>
            <size>39877</size>
            <attacher>zsun</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWI2NDJlMWFiZjhiYmZk
NDUzYTNmZTk2ODIzNjM4NjY5NDVmMGFjNy4uZGY0ZmYyNDRmMDUzMGZkNjJlZjI2MjI1M2ZhM2Vh
MzNjMzQ4MTNiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIyLTAzLTA5ICBaaXJh
biBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVjdGlvbl0gRml4ZXMgc2Vs
ZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBDTCBpcyB0byBmaXggdGhlIHNldHRpbmdz
IG9mIFNlbGVjdGlvblN0YXJ0L1NlbGVjdGlvbkVuZCBmb3IgVEVYVEFSRUEuIEl0IHNldHMgdGhl
IGNhcmV0IHRvIHRoZSBlbmQKKyAgICAgICAgb2YgdGhlIHRleHQgdmFsdWUgZXhjZXB0IGZvciBp
bml0aWFsaXppbmcgaW4gbW9zdCBjYXNlcy4gRm9yIHRoZSBjYXNlIG9mIHVwZGF0aW5nIGRlZmF1
bHRWYWx1ZSBmb3IgYSBub24tZGlydHkKKyAgICAgICAgVEVYVEFSRUEsIHdlIHNob3VsZCBmb2xs
b3dpbmcgdGhlIGNsYW1waW5nIHN0ZXBzIGZvbGxvd2luZyB0aGUgc3BlYyBhbmQgaXQgd2lsbCBi
ZSBhZGRyZXNzZWQgaW4gYSBmb2xsb3ctdXAgcGF0Y2guICAgICAgICAKKworICAgICAgICBUaGlz
IENMIHJlZmVycyBhbmQgaW1wb3J0cyBjaGFuZ2VzIGluIGNocm9taXVtIENMIGF0CisgICAgICAg
IGh0dHBzOi8vY29kZXJldmlldy5jaHJvbWl1bS5vcmcvMjczNTYzMzAwNgorCisgICAgICAgIFRo
aXMgQ0wgYWxzbyBpbnRyb2R1Y2VzIGEgdW5pZmllZCBzZXRWYWx1ZSgpIEFQSSBpbiBIVE1MRm9y
bUNvbnRyb2xFbGVtZW50IGZvciBIVE1MVGV4dEFyZWFFbGVtZW50IGFuZCBIVE1MSW5wdXRFbGVt
ZW50LgorCisgICAgICAgICogaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1s
L0Jhc2VCdXR0b25JbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0Jhc2VDaGVja2FibGVJbnB1
dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QmFzZUNoZWNrYWJsZUlucHV0VHlwZTo6c2V0
VmFsdWUpOgorICAgICAgICAqIGh0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6
QmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpkaWRDaGFuZ2VWYWx1ZUZyb21Db250cm9sKToKKyAg
ICAgICAgKiBodG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwv
Q29sb3JJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29sb3JJbnB1dFR5cGU6OnNl
dFZhbHVlKToKKyAgICAgICAgKiBodG1sL0NvbG9ySW5wdXRUeXBlLmg6CisgICAgICAgICogaHRt
bC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OnNl
dFZhbHVlKToKKyAgICAgICAgKiBodG1sL0ZpbGVJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1s
L0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVu
dDo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5oOgorICAgICAg
ICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
VGV4dEFyZWFFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TFRleHRBcmVhRWxlbWVudDo6cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVh
RWxlbWVudDo6c2V0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVu
dDo6c2V0Tm9uRGlydHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVt
ZW50OjpzZXRWYWx1ZUNvbW1vbik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVt
ZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllc0Zyb21FbGVtZW50KToKKyAgICAgICAgKiBo
dG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxUZXh0Rm9ybUNv
bnRyb2xFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxUZXh0Rm9ybUNvbnRyb2xF
bGVtZW50OjpzZXRSYW5nZVRleHQpOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRGb3JtQ29udHJv
bEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpIaWRkZW5JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0hp
ZGRlbklucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OklucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBl
Lmg6CisgICAgICAgICogaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6TnVtYmVySW5wdXRUeXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9OdW1iZXJJbnB1
dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1JhbmdlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9SYW5nZUlu
cHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0
bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmg6CisKIDIwMjItMDMtMDEgIEFsYW4gQnVqdGFzICA8emFs
YW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtJRkNdW0ludGVncmF0aW9uXSBJbmxpbmVJdGVyYXRv
cjo6Qm94OjpyZWN0KCkgcmV0dXJucyB0aGUgdW5mbGlwcGVkIHZpc3VhbCByZWN0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcAppbmRleCA0ZTczOTUzODEyZDQw
ODRjODVkYmUxMDVjN2E5MzU2OTVmNzBjY2ZlLi44ODIxMGMzMzlmNTU1OTZkNjEyMWY1MDY1Mjg1
MGQ0NjAwZGMxODMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25J
bnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUJ1dHRvbklucHV0VHlw
ZS5jcHAKQEAgLTYyLDcgKzYyLDcgQEAgYm9vbCBCYXNlQnV0dG9uSW5wdXRUeXBlOjpzdG9yZXNW
YWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lk
IEJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFs
dWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VCdXR0b25JbnB1dFR5
cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVs
ZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNT
RVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hy
b25pemF0aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VCdXR0b25JbnB1dFR5cGUuaAppbmRleCBlNDE0NjM0MWIwNGY0MTk4Y2IwNzA2YjlhNjUy
ZDY2OTE2YzAyZGMyLi40ZjhlOGExYWUzZjNmNDYxODY5ZjY2YzFlNmYyYjdhOWIxYzM2OTI1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaApAQCAtNDQsNyArNDQs
NyBAQCBwcml2YXRlOgogICAgIGJvb2wgYXBwZW5kRm9ybURhdGEoRE9NRm9ybURhdGEmKSBjb25z
dCBvdmVycmlkZTsKICAgICBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlSW5wdXRSZW5k
ZXJlcihSZW5kZXJTdHlsZSYmKSBvdmVycmlkZTsKICAgICBib29sIHN0b3Jlc1ZhbHVlU2VwYXJh
dGVGcm9tQXR0cmlidXRlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJp
bmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBvdmVycmlkZTsKKyAgICB2b2lkIHNl
dFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRD
b250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIG92ZXJyaWRlOwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5w
dXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5j
cHAKaW5kZXggMDY1Y2VjMGU2NWJjNzI3NDNhMmZkMjFmODZjM2M1ODhkYWVhMTEzZi4uOGE1NGNh
MDUzNTRhOTMwMjc1OWFiNzViYTNhMTc1NWY3YjlmNDU1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwCkBAIC0xMDgsNyArMTA4LDcgQEAgYm9v
bCBCYXNlQ2hlY2thYmxlSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0
ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEJhc2VDaGVja2FibGVJbnB1dFR5cGU6
OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0
IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRl
eHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAg
ICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0
ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
Q2hlY2thYmxlSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJ
bnB1dFR5cGUuaAppbmRleCBiNDlhNzdhNDE1OTI1MWIxODUwMTQ5ZTEwMDdjZGY0MDA2YzA5YTI0
Li42YmY1ZDUxZmFiMmE2ZGI5ODMwYzIzZTZmYjFiMjhlZGEwNTdjZTk4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaApAQCAtNTAsNyArNTAsNyBAQCBw
cml2YXRlOgogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBv
dmVycmlkZTsKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IG92ZXJyaWRlOwogICAg
IGJvb2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3Ip
IG92ZXJyaWRlOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCwgVGV4dEZp
ZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgb3ZlcnJpZGU7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAKaW5kZXggY2Y3Y2MzMWYzNDJmN2I1YTc0NzQ3
NWU0Y2NhMTg5YmQxM2E3NDEzZS4uMzc1NTI4MWQxODJlM2FhYmUxOGM3OWQ5ZDM1MTM2OWFjNzM1
NGU4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1
dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRU
eXBlLmNwcApAQCAtMjc3LDkgKzI3Nyw5IEBAIGJvb2wgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBl
OjpzaG91bGRIYXZlTWlsbGlzZWNvbmRGaWVsZChjb25zdCBEYXRlQ29tcG9uZW50cyYKICAgICAg
ICAgfHwgIXN0ZXBSYW5nZS5zdGVwKCkucmVtYWluZGVyKG1zZWNQZXJTZWNvbmQpLmlzWmVybygp
OwogfQogCi12b2lkIEJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3Ry
aW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZl
bnRCZWhhdmlvcikKK3ZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25z
dCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlv
ciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikK
IHsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVo
YXZpb3IpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZl
bnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKICAgICBpZiAodmFsdWVDaGFuZ2VkKQogICAgICAgICB1
cGRhdGVJbm5lclRleHRWYWx1ZSgpOwogfQpAQCAtNDcwLDcgKzQ3MCw3IEBAIHZvaWQgQmFzZURh
dGVBbmRUaW1lSW5wdXRUeXBlOjpkaWRCbHVyRnJvbUNvbnRyb2woKQogdm9pZCBCYXNlRGF0ZUFu
ZFRpbWVJbnB1dFR5cGU6OmRpZENoYW5nZVZhbHVlRnJvbUNvbnRyb2woKQogewogICAgIFN0cmlu
ZyB2YWx1ZSA9IHNhbml0aXplVmFsdWUobV9kYXRlVGltZUVkaXRFbGVtZW50LT52YWx1ZSgpKTsK
LSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZSAhPSBlbGVtZW50KCktPnZhbHVl
KCksIERpc3BhdGNoSW5wdXRBbmRDaGFuZ2VFdmVudCk7CisgICAgSW5wdXRUeXBlOjpzZXRWYWx1
ZSh2YWx1ZSwgdmFsdWUgIT0gZWxlbWVudCgpLT52YWx1ZSgpLCBEaXNwYXRjaElucHV0QW5kQ2hh
bmdlRXZlbnQsIERvTm90U2V0KTsKIAogICAgIERhdGVUaW1lQ2hvb3NlclBhcmFtZXRlcnMgcGFy
YW1ldGVyczsKICAgICBpZiAoIXNldHVwRGF0ZVRpbWVDaG9vc2VyUGFyYW1ldGVycyhwYXJhbWV0
ZXJzKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5w
dXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5o
CmluZGV4IGI2ODVmOGUxOWZmYjQ4ODU1ZjRlMmZlODJlM2IxMjFiZTQ5M2E3M2QuLjZiZjZkNmI5
MDNiNGFkNzY1OTZiYmFjY2U1NGQxN2QzN2EzMWU4Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuaApAQCAtMTAxLDcgKzEwMSw3IEBAIHByaXZh
dGU6CiAgICAgLy8gSW5wdXRUeXBlIGZ1bmN0aW9uczoKICAgICBTdHJpbmcgdmlzaWJsZVZhbHVl
KCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29uc3QgU3RyaW5nJikg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZh
bHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAgdm9pZCBzZXRW
YWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhh
dmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAgV2FsbFRpbWUg
dmFsdWVBc0RhdGUoKSBjb25zdCBvdmVycmlkZTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRW
YWx1ZUFzRGF0ZShXYWxsVGltZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91YmxlIHZhbHVlQXNE
b3VibGUoKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29s
b3JJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAK
aW5kZXggZjExOWU4MmIzNzdkZGI0MWZjZDllOGI5M2FhN2ZjZWZhMGY1ZGMwZC4uMTcwZmJjNTE0
MDE2YTQ0MTQ4ODQwOTYwNWM5OGQ3MjRlNWI1NmZmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xv
cklucHV0VHlwZS5jcHAKQEAgLTE1Myw5ICsxNTMsOSBAQCB2b2lkIENvbG9ySW5wdXRUeXBlOjpj
cmVhdGVTaGFkb3dTdWJ0cmVlKCkKICAgICB1cGRhdGVDb2xvclN3YXRjaCgpOwogfQogCi12b2lk
IENvbG9ySW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVl
Q2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBDb2xv
cklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5n
ZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRW
YWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpzZXRWYWx1ZSh2YWx1
ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5cGU6OnNldFZhbHVl
KHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAKICAgICBp
ZiAoIXZhbHVlQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklu
cHV0VHlwZS5oCmluZGV4IDExNmRhYjExN2I5NzU5YjIzNjE3MzcwZWQ0ODM3OWE4Yzc3YTMzNzku
LmM4ZmVhNmEzMjYyMDY0YTgyZDQ1ZjNkZTFlMDBiYjM1Y2MyNWI0ZDQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0NvbG9ySW5wdXRUeXBlLmgKQEAgLTYzLDcgKzYzLDcgQEAgcHJpdmF0ZToKICAgICBTdHJp
bmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBzYW5pdGl6ZVZhbHVl
KGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgY3JlYXRlU2hhZG93U3VidHJl
ZSgpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNo
YW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQgc2V0VmFsdWUo
Y29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3Is
IFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgYXR0cmlidXRl
Q2hhbmdlZChjb25zdCBRdWFsaWZpZWROYW1lJikgZmluYWw7CiAgICAgdm9pZCBoYW5kbGVET01B
Y3RpdmF0ZUV2ZW50KEV2ZW50JikgZmluYWw7CiAgICAgdm9pZCBkZXRhY2goKSBmaW5hbDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGVhN2RmYWNmNjJiNzgyNTU5ZDY1
ZTNiZmI2YjNkMGNjZGZlMjUyMWMuLmI2NWI4NzBlYTcwNTQ1MGIzYzZlOTNkNmMzMmJiZmJmOWU3
MGM0NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApAQCAtMjUzLDcgKzI1
Myw3IEBAIGJvb2wgRmlsZUlucHV0VHlwZTo6Z2V0VHlwZVNwZWNpZmljVmFsdWUoU3RyaW5nJiB2
YWx1ZSkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1
ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQordm9pZCBGaWxl
SW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKQogewogICAgIC8vIEZJWE1FOiBT
aG91bGQgd2UgY2xlYXIgdGhlIGZpbGUgbGlzdCwgb3IgcmVwbGFjZSBpdCB3aXRoIGEgbmV3IGVt
cHR5IG9uZSBoZXJlPyBUaGlzIGlzIG9ic2VydmFibGUgZnJvbSBKYXZhU2NyaXB0IHRocm91Z2gg
Y3VzdG9tIHByb3BlcnRpZXMuCiAgICAgbV9maWxlTGlzdC0+Y2xlYXIoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9GaWxlSW5wdXRUeXBlLmgKaW5kZXggOTE1N2IxNzkwMjkyMDBmM2M0MzA4OGNiNmE0YzZiZTU1
ZTAwMDIzYS4uZWUxMDg0OTc4M2ZhZmVkMmFhOWM3OGI2MDA2YmJkZWRlZTY1NDQxOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKQEAgLTY5LDcgKzY5LDcgQEAgcHJpdmF0ZToKICAg
ICBTdHJpbmcgZGlzcGxheVN0cmluZygpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgY2FuU2V0VmFs
dWUoY29uc3QgU3RyaW5nJikgZmluYWw7CiAgICAgYm9vbCBnZXRUeXBlU3BlY2lmaWNWYWx1ZShT
dHJpbmcmKSBmaW5hbDsgLy8gQ2hlY2tlZCBmaXJzdCwgYmVmb3JlIGludGVybmFsIHN0b3JhZ2Ug
b3IgdGhlIHZhbHVlIGF0dHJpYnV0ZS4KLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYs
IGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBmaW5hbDsKKyAgICB2
b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRF
dmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBmaW5hbDsKIAogI2lm
IEVOQUJMRShEUkFHX1NVUFBPUlQpCiAgICAgYm9vbCByZWNlaXZlRHJvcHBlZEZpbGVzV2l0aElt
YWdlVHJhbnNjb2RpbmcoY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhdGhzKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IGJjZDZjOGEwZWI3MDk5MjI2OTU0YWJk
N2Q5ZTBkNTRiZWI1N2RlZWEuLjIyZTZkZjYzZjNkYThkMDgyOTExYWZkMWUxNTdmMzI0YmNhNzBm
NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApAQCAtMTA2NCw3
ICsxMDY0LDcgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZUZvclVzZXIoY29uc3Qg
U3RyaW5nJiB2YWx1ZSkKICAgICBzZXRWYWx1ZSh2YWx1ZSwgRGlzcGF0Y2hDaGFuZ2VFdmVudCk7
CiB9CiAKLUV4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0
IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK0V4
Y2VwdGlvbk9yPHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYg
dmFsdWUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xT
ZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7CiAgICAgaWYgKGlzRmlsZVVwbG9hZCgpICYm
ICF2YWx1ZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciB9OwpAQCAtMTA3OSw3ICsxMDc5LDcgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTElu
cHV0RWxlbWVudDo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnQK
IAogICAgIHNldExhc3RDaGFuZ2VXYXNOb3RVc2VyRWRpdCgpOwogICAgIHNldEZvcm1Db250cm9s
VmFsdWVNYXRjaGVzUmVuZGVyZXIoZmFsc2UpOwotICAgIG1faW5wdXRUeXBlLT5zZXRWYWx1ZShz
YW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBtX2lucHV0
VHlwZS0+c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlv
ciwgc2VsZWN0aW9uKTsKIAogICAgIGJvb2wgd2FzTW9kaWZpZWRQcm9ncmFtbWF0aWNhbGx5ID0g
ZXZlbnRCZWhhdmlvciA9PSBEaXNwYXRjaE5vRXZlbnQ7CiAgICAgaWYgKHdhc01vZGlmaWVkUHJv
Z3JhbW1hdGljYWxseSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKaW5kZXgg
Y2M1MGZlZTMzYzk4ZDFmODkyYTQ3ZTRjMDUxNDEyOTNmZjEzMWFhMC4uODUwNGZiNjI2OTZjN2Yw
MWUxODliMmQ3MzE5Zjc4MDBjNTljODU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MSW5wdXRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmgKQEAgLTE3MSw3ICsxNzEsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBzZXRUeXBlKGNvbnN0IEF0b21TdHJpbmcmKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0
cmluZyB2YWx1ZSgpIGNvbnN0IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9y
PHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBE
aXNwYXRjaE5vRXZlbnQpOworICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNl
dFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNwYXRjaE5v
RXZlbnQsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJvbFNldFZhbHVl
U2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBzZXRWYWx1ZUZvclVzZXIoY29uc3QgU3RyaW5nJik7CiAgICAgLy8gQ2hlY2tzIGlmIHRo
ZSBzcGVjaWZpZWQgc3RyaW5nIHdvdWxkIGJlIGEgdmFsaWQgdmFsdWUuCiAgICAgLy8gV2Ugc2hv
dWxkIG5vdCBjYWxsIHRoaXMgZm9yIHR5cGVzIHdpdGggbm8gc3RyaW5nIHZhbHVlIHN1Y2ggYXMg
Q0hFQ0tCT1ggYW5kIFJBRElPLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
VGV4dEFyZWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxl
bWVudC5jcHAKaW5kZXggYWE1MmYwMGRiNWRjMDZkZDMwNDgxNmUxMzMxNTVhNzM5YTRhMTIzYi4u
ZWJmMzI4MTgxZDI2NTg4YjdhYTM1YWU0NGFjODc1NTllOGM1NWRmMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwCkBAIC0xMzYsNyArMTM2LDcgQEAgdm9p
ZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoY29uc3QgQ2hpbGRDaGFuZ2Um
IGNoYW5nZSkKICAgICBpZiAobV9pc0RpcnR5KQogICAgICAgICBzZXRJbm5lclRleHRWYWx1ZSh2
YWx1ZSgpKTsKICAgICBlbHNlCi0gICAgICAgIHNldE5vbkRpcnR5VmFsdWUoZGVmYXVsdFZhbHVl
KCkpOworICAgICAgICBzZXROb25EaXJ0eVZhbHVlKGRlZmF1bHRWYWx1ZSgpLCAgVGV4dENvbnRy
b2xTZXRWYWx1ZVNlbGVjdGlvbjo6RG9Ob3RTZXQpOwogfQogCiBib29sIEhUTUxUZXh0QXJlYUVs
ZW1lbnQ6Omhhc1ByZXNlbnRhdGlvbmFsSGludHNGb3JBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVk
TmFtZSYgbmFtZSkgY29uc3QKQEAgLTI0MSw3ICsyNDEsNyBAQCBib29sIEhUTUxUZXh0QXJlYUVs
ZW1lbnQ6OmFwcGVuZEZvcm1EYXRhKERPTUZvcm1EYXRhJiBmb3JtRGF0YSkKIAogdm9pZCBIVE1M
VGV4dEFyZWFFbGVtZW50OjpyZXNldCgpCiB7Ci0gICAgc2V0Tm9uRGlydHlWYWx1ZShkZWZhdWx0
VmFsdWUoKSk7CisgICAgc2V0Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUoKSwgVGV4dENvbnRy
b2xTZXRWYWx1ZVNlbGVjdGlvbjo6U2V0U2VsZWN0aW9uVG9FbmQpOwogfQogCiBib29sIEhUTUxU
ZXh0QXJlYUVsZW1lbnQ6Omhhc0N1c3RvbUZvY3VzTG9naWMoKSBjb25zdApAQCAtMzc0LDIxICsz
NzQsMjIgQEAgU3RyaW5nIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OnZhbHVlKCkgY29uc3QKICAgICBy
ZXR1cm4gbV92YWx1ZTsKIH0KIAotdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZShj
b25zdCBTdHJpbmcmIHZhbHVlKQorRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRBcmVhRWxlbWVu
dDo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBl
dmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikKIHsK
LSAgICBzZXRWYWx1ZUNvbW1vbih2YWx1ZSk7CisgICAgc2V0VmFsdWVDb21tb24odmFsdWUsIGV2
ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAgICAgbV9pc0RpcnR5ID0gdHJ1ZTsKICAgICB1cGRh
dGVWYWxpZGl0eSgpOworICAgIHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxl
bWVudDo6c2V0Tm9uRGlydHlWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQordm9pZCBIVE1MVGV4
dEFyZWFFbGVtZW50OjpzZXROb25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRD
b250cm9sU2V0VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewotICAgIHNldFZhbHVlQ29tbW9u
KHZhbHVlKTsKKyAgICBzZXRWYWx1ZUNvbW1vbih2YWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlv
cjo6RGlzcGF0Y2hOb0V2ZW50LCBzZWxlY3Rpb24pOwogICAgIG1faXNEaXJ0eSA9IGZhbHNlOwog
ICAgIHVwZGF0ZVZhbGlkaXR5KCk7CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0
VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKK3ZvaWQgSFRNTFRleHRBcmVhRWxl
bWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSwgVGV4dEZpZWxkRXZl
bnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7CiAg
ICAgbV93YXNNb2RpZmllZEJ5VXNlciA9IGZhbHNlOwogICAgIC8vIENvZGUgZWxzZXdoZXJlIG5v
cm1hbGl6ZXMgbGluZSBlbmRpbmdzIGFkZGVkIGJ5IHRoZSB1c2VyIHZpYSB0aGUga2V5Ym9hcmQg
b3IgcGFzdGluZy4KQEAgLTQwOSwxMCArNDEwLDEzIEBAIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVu
dDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKICAgICBpbnZhbGlkYXRl
U3R5bGVGb3JTdWJ0cmVlKCk7CiAgICAgc2V0Rm9ybUNvbnRyb2xWYWx1ZU1hdGNoZXNSZW5kZXJl
cih0cnVlKTsKIAotICAgIC8vIFNldCB0aGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0aGUgdGV4dCB2
YWx1ZS4KICAgICBpZiAoZG9jdW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09IHRoaXMpIHsKICAg
ICAgICAgdW5zaWduZWQgZW5kT2ZTdHJpbmcgPSBtX3ZhbHVlLmxlbmd0aCgpOwogICAgICAgICBz
ZXRTZWxlY3Rpb25SYW5nZShlbmRPZlN0cmluZywgZW5kT2ZTdHJpbmcpOworICAgIH0gIGVsc2Ug
aWYgKHNlbGVjdGlvbiA9PSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rp
b25Ub0VuZCkgeworICAgICAgICAvLyBTZXQgdGhlIGNhcmV0IHRvIHRoZSBlbmQgb2YgdGhlIHRl
eHQgdmFsdWUgZXhjZXB0IGZvciBpbml0aWFsaXplLgorICAgICAgICB1bnNpZ25lZCBlbmRvZlN0
cmluZyA9IG1fdmFsdWUubGVuZ3RoKCk7CisgICAgICAgIHNldFNlbGVjdGlvblJhbmdlKGVuZG9m
U3RyaW5nLCBlbmRvZlN0cmluZyk7IAogICAgIH0KIAogICAgIHNldFRleHRBc09mTGFzdEZvcm1D
b250cm9sQ2hhbmdlRXZlbnQobm9ybWFsaXplZFZhbHVlKTsKQEAgLTU3Niw3ICs1ODAsNyBAQCB2
b2lkIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQcm9wZXJ0aWVzRnJvbUVs
ZW1lbnQoY29uc3QgRWxlbWVudCYgcwogewogICAgIGF1dG8mIHNvdXJjZUVsZW1lbnQgPSBkb3du
Y2FzdDxIVE1MVGV4dEFyZWFFbGVtZW50Pihzb3VyY2UpOwogCi0gICAgc2V0VmFsdWVDb21tb24o
c291cmNlRWxlbWVudC52YWx1ZSgpKTsKKyAgICBzZXRWYWx1ZUNvbW1vbihzb3VyY2VFbGVtZW50
LnZhbHVlKCksIERpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6
U2V0U2VsZWN0aW9uVG9FbmQpOwogICAgIG1faXNEaXJ0eSA9IHNvdXJjZUVsZW1lbnQubV9pc0Rp
cnR5OwogICAgIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJv
cGVydGllc0Zyb21FbGVtZW50KHNvdXJjZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4
dEFyZWFFbGVtZW50LmgKaW5kZXggMDA3N2YwMjUzMjZkNzhmMDIxZGFjMGNiMjcxZDljOTY4ZmNj
YmFkZS4uZjFmY2E3ODljNjcyYmQ3NzI5MzJiYWI0NTZkMzAzZmQ4M2FmYmU1NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmgKQEAgLTQ0LDcgKzQ0LDcgQEAgcHVi
bGljOgogICAgIGJvb2wgc2hvdWxkV3JhcFRleHQoKSBjb25zdCB7IHJldHVybiBtX3dyYXAgIT0g
Tm9XcmFwOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgdmFsdWUoKSBjb25zdCBmaW5h
bDsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYpOworICAg
IFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYs
IFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQsIFRleHRDb250cm9sU2V0
VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rp
b25Ub0VuZCkgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGRlZmF1bHRWYWx1ZSgp
IGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0RGVmYXVsdFZhbHVlKGNvbnN0IFN0
cmluZyYpOwogICAgIGludCB0ZXh0TGVuZ3RoKCkgY29uc3QgeyByZXR1cm4gdmFsdWUoKS5sZW5n
dGgoKTsgfQpAQCAtODMsOCArODMsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgaGFuZGxlQmVmb3Jl
VGV4dEluc2VydGVkRXZlbnQoQmVmb3JlVGV4dEluc2VydGVkRXZlbnQmKSBjb25zdDsKICAgICBz
dGF0aWMgU3RyaW5nIHNhbml0aXplVXNlcklucHV0VmFsdWUoY29uc3QgU3RyaW5nJiwgdW5zaWdu
ZWQgbWF4TGVuZ3RoKTsKICAgICB2b2lkIHVwZGF0ZVZhbHVlKCkgY29uc3Q7Ci0gICAgdm9pZCBz
ZXROb25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYpOwotICAgIHZvaWQgc2V0VmFsdWVDb21tb24o
Y29uc3QgU3RyaW5nJik7CisgICAgdm9pZCBzZXROb25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYs
IFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pOworICAgIHZvaWQgc2V0VmFsdWVDb21tb24o
Y29uc3QgU3RyaW5nJiwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1
ZVNlbGVjdGlvbik7CiAKICAgICBib29sIHN1cHBvcnRzUGxhY2Vob2xkZXIoKSBjb25zdCBmaW5h
bCB7IHJldHVybiB0cnVlOyB9CiAgICAgSFRNTEVsZW1lbnQqIHBsYWNlaG9sZGVyRWxlbWVudCgp
IGNvbnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEZv
cm1Db250cm9sRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNv
bnRyb2xFbGVtZW50LmNwcAppbmRleCA5YmQ1ZWRiNDM0MWQwOTc0OGI1NmFjYmFjOTA5YzRkMGE1
MmJkNTc2Li4yMDVjYzY1MTY5MTA0MDI5MzkzODMyNTI3MmY3NDA3NDNmMTVlODYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcApA
QCAtMjU0LDcgKzI1NCw2IEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxUZXh0Rm9ybUNvbnRyb2xF
bGVtZW50OjpzZXRSYW5nZVRleHQoY29uc3QgU3RyaW5nJiByZXBsYWNlCiAgICAgZWxzZQogICAg
ICAgICB0ZXh0Lmluc2VydChyZXBsYWNlbWVudCwgc3RhcnQpOwogCi0gICAgc2V0SW5uZXJUZXh0
VmFsdWUodGV4dCk7CiAKICAgICAvLyBGSVhNRTogVGhpcyBzaG91bGRuJ3QgbmVlZCBzeW5jaHJv
bm91cyBzdHlsZSB1cGRhdGUsIG9yIHJlbmRlcmVyIGF0IGFsbC4KICAgICBpZiAoIXJlbmRlcmVy
KCkpCkBAIC0yNjMsNyArMjYyLDcgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRGb3JtQ29u
dHJvbEVsZW1lbnQ6OnNldFJhbmdlVGV4dChjb25zdCBTdHJpbmcmIHJlcGxhY2UKICAgICBpZiAo
IXJlbmRlcmVyKCkpCiAgICAgICAgIHJldHVybiB7IH07CiAKLSAgICBzdWJ0cmVlSGFzQ2hhbmdl
ZCgpOworICAgIHNldFZhbHVlKHRleHQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3I6OkRpc3BhdGNo
Tm9FdmVudCwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6RG9Ob3RTZXQpOwogCiAgICAg
aWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHNlbGVjdGlvbk1vZGUsICJzZWxlY3Qi
KSkgewogICAgICAgICBuZXdTZWxlY3Rpb25TdGFydCA9IHN0YXJ0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudC5oCmluZGV4IGFiM2FiNmFiYmVh
ZTAzODM0NDZiOTI3ODM1OTlmYmRjZmUyYzM0MjUuLjUzYmZkNzM5YThmNDZjNDVkZTdmYzg3YTcz
YjE2NDUxZDljZjI5ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRG
b3JtQ29udHJvbEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9y
bUNvbnRyb2xFbGVtZW50LmgKQEAgLTM5LDYgKzM5LDcgQEAgc3RydWN0IFNpbXBsZVJhbmdlOwog
ZW51bSBjbGFzcyBBdXRvRmlsbEJ1dHRvblR5cGUgOiB1aW50OF90IHsgTm9uZSwgQ3JlZGVudGlh
bHMsIENvbnRhY3RzLCBTdHJvbmdQYXNzd29yZCwgQ3JlZGl0Q2FyZCB9OwogZW51bSBUZXh0Rmll
bGRTZWxlY3Rpb25EaXJlY3Rpb24geyBTZWxlY3Rpb25IYXNOb0RpcmVjdGlvbiwgU2VsZWN0aW9u
SGFzRm9yd2FyZERpcmVjdGlvbiwgU2VsZWN0aW9uSGFzQmFja3dhcmREaXJlY3Rpb24gfTsKIGVu
dW0gVGV4dEZpZWxkRXZlbnRCZWhhdmlvciB7IERpc3BhdGNoTm9FdmVudCwgRGlzcGF0Y2hDaGFu
Z2VFdmVudCwgRGlzcGF0Y2hJbnB1dEFuZENoYW5nZUV2ZW50IH07CitlbnVtIFRleHRDb250cm9s
U2V0VmFsdWVTZWxlY3Rpb24geyBTZXRTZWxlY3Rpb25Ub0VuZCwgRG9Ob3RTZXQgfTsKIAogY2xh
c3MgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQgOiBwdWJsaWMgSFRNTEZvcm1Db250cm9sRWxl
bWVudFdpdGhTdGF0ZSB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChIVE1MVGV4dEZvcm1D
b250cm9sRWxlbWVudCk7CkBAIC04OCw2ICs4OSw3IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwg
U3RyaW5nIHZhbHVlKCkgY29uc3QgPSAwOwogCisgICAgdmlydHVhbCBFeGNlcHRpb25Pcjx2b2lk
PiBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yID0gRGlzcGF0
Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uID0gVGV4dENvbnRyb2xTZXRW
YWx1ZVNlbGVjdGlvbjo6U2V0U2VsZWN0aW9uVG9FbmQpID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0
cjxUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQ+IGlubmVyVGV4dEVsZW1lbnQoKSBjb25zdCA9
IDA7CiAgICAgdmlydHVhbCBSZWZQdHI8VGV4dENvbnRyb2xJbm5lclRleHRFbGVtZW50PiBpbm5l
clRleHRFbGVtZW50Q3JlYXRpbmdTaGFkb3dTdWJ0cmVlSWZOZWVkZWQoKSA9IDA7CiAgICAgdmly
dHVhbCBSZW5kZXJTdHlsZSBjcmVhdGVJbm5lclRleHRTdHlsZShjb25zdCBSZW5kZXJTdHlsZSYp
ID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmNwcAppbmRleCAwOTc4N2E3
YzUyODFmNmM0YjM5NmFmODFhMzhmMGI1NjM2ZmJlMzMxLi5hZjUzZGE4ZTI1YTRkNjk4M2M2MmI2
YTUxYjdhMWJlOGNmZmFkZWNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRl
bklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUu
Y3BwCkBAIC04Myw3ICs4Myw3IEBAIGJvb2wgSGlkZGVuSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNl
cGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEhpZGRl
bklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvcikKK3ZvaWQgSGlkZGVuSW5wdXRUeXBlOjpzZXRWYWx1ZShj
b25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9y
LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKQogewogICAgIEFTU0VSVChlbGVtZW50KCkp
OwogICAgIGVsZW1lbnQoKS0+c2V0QXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbih2YWx1
ZUF0dHIsIHNhbml0aXplZFZhbHVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SGlkZGVuSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5o
CmluZGV4IDk1ZWQwYzFkN2MwMDQyOWY1YTFjMWRjZGU2NTc4MWYyZDM1MTc0MDMuLjM0MDdkYmM0
YjU4ZmNjZTVhNTA3OWJhNmEyY2UzYzlkYTVjZGM0YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRk
ZW5JbnB1dFR5cGUuaApAQCAtNDgsNyArNDgsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgcmVuZGVy
ZXJJc05lZWRlZCgpIG92ZXJyaWRlOwogICAgIGJvb2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21B
dHRyaWJ1dGUoKSBvdmVycmlkZTsKICAgICBib29sIHNob3VsZFJlc3BlY3RIZWlnaHRBbmRXaWR0
aEF0dHJpYnV0ZXMoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYs
IGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VmFs
dWUoY29uc3QgU3RyaW5nJiwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRy
b2xTZXRWYWx1ZVNlbGVjdGlvbikgb3ZlcnJpZGU7CiAgICAgYm9vbCBhcHBlbmRGb3JtRGF0YShE
T01Gb3JtRGF0YSYpIGNvbnN0IG92ZXJyaWRlOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUu
Y3BwCmluZGV4IDc0ZTBkZGViMThjMGI2MDIwZTg1YzkxNDIxYTE0YjYyZmI3ZGQ5ZWMuLmMzMGQx
ZGUwNzNiZGI1OTMzYjhjMzkyM2E2OGUzYzI2ZWFkYWNhOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0
VHlwZS5jcHAKQEAgLTcyMSw3ICs3MjEsNyBAQCBib29sIElucHV0VHlwZTo6c3RvcmVzVmFsdWVT
ZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKQogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIElucHV0
VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNo
YW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQgSW5wdXRU
eXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVlQ2hh
bmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNl
dFZhbHVlU2VsZWN0aW9uKQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwogICAgIGVsZW1lbnQo
KS0+c2V0VmFsdWVJbnRlcm5hbChzYW5pdGl6ZWRWYWx1ZSwgZXZlbnRCZWhhdmlvcik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9JbnB1dFR5cGUuaAppbmRleCA4MTJkNTg4YjZlZDhkMDM4OTJjNGJiM2QzZGNmMGVmMTBm
NmU2OGRjLi4xOTI0YjM3MTZiNGIzMWFjNDNlYmUxYjk5OTE1NjhjOGEzMzhiMzgzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSW5wdXRUeXBlLmgKQEAgLTM0MSw3ICszNDEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCBib29sIHNob3VsZFNlbmRDaGFuZ2VFdmVudEFmdGVyQ2hlY2tlZENoYW5nZWQoKTsKICAgICB2
aXJ0dWFsIGJvb2wgY2FuU2V0VmFsdWUoY29uc3QgU3RyaW5nJik7CiAgICAgdmlydHVhbCBib29s
IHN0b3Jlc1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKCk7Ci0gICAgdmlydHVhbCB2b2lkIHNl
dFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2
YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVT
ZWxlY3Rpb24pOwogICAgIHZpcnR1YWwgYm9vbCBzaG91bGRSZXNldE9uRG9jdW1lbnRBY3RpdmF0
aW9uKCk7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFJlc3BlY3RMaXN0QXR0cmlidXRlKCk7CiAg
ICAgdmlydHVhbCBib29sIHNob3VsZFJlc3BlY3RIZWlnaHRBbmRXaWR0aEF0dHJpYnV0ZXMoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmNwcAppbmRleCAzMGZiYTg5NGE5ZmIx
YjQyNWI4OWFjNGYxMzlhNjRmYzVkNjAxMTAzLi41NzQzZDQ2MzcwZmM4MWY1ZTQ3YTkyM2VmNzI0
NWI2ZmIxNmY2YzQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0
VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwCkBA
IC05NCwxMiArOTQsMTIgQEAgY29uc3QgQXRvbVN0cmluZyYgTnVtYmVySW5wdXRUeXBlOjpmb3Jt
Q29udHJvbFR5cGUoKSBjb25zdAogICAgIHJldHVybiBJbnB1dFR5cGVOYW1lczo6bnVtYmVyKCk7
CiB9CiAKLXZvaWQgTnVtYmVySW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0
aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVu
dEJlaGF2aW9yKQordm9pZCBOdW1iZXJJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYg
c2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9y
IGV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQog
ewogICAgIEFTU0VSVChlbGVtZW50KCkpOwogICAgIGlmICghdmFsdWVDaGFuZ2VkICYmIHNhbml0
aXplZFZhbHVlLmlzRW1wdHkoKSAmJiAhZWxlbWVudCgpLT5pbm5lclRleHRWYWx1ZSgpLmlzRW1w
dHkoKSkKICAgICAgICAgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKTsKLSAgICBUZXh0RmllbGRJbnB1
dFR5cGU6OnNldFZhbHVlKHNhbml0aXplZFZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZp
b3IpOworICAgIFRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZh
bHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIH0KIAogZG91YmxlIE51bWJl
cklucHV0VHlwZTo6dmFsdWVBc0RvdWJsZSgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL051bWJlcklucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJ
bnB1dFR5cGUuaAppbmRleCAyZmMwZWQ2OWY0M2M2NjdmOGM2NGQ1OGI2ZTU5OWI4OGVlNzZkZGVk
Li44NTNlNGQ1OGVkYTZjOTI4NzRjYTFkMDRmNDI1YjU1NWZiN2M4MGIyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvTnVtYmVySW5wdXRUeXBlLmgKQEAgLTQyLDcgKzQyLDcgQEAgcHVibGljOgogCiBwcml2
YXRlOgogICAgIGNvbnN0IEF0b21TdHJpbmcmIGZvcm1Db250cm9sVHlwZSgpIGNvbnN0IGZpbmFs
OwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRl
eHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3Ry
aW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250
cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIGRvdWJsZSB2YWx1ZUFzRG91YmxlKCkg
Y29uc3QgZmluYWw7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0VmFsdWVBc0RvdWJsZShkb3Vi
bGUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGNvbnN0IGZpbmFsOwogICAgIEV4Y2VwdGlvbk9y
PHZvaWQ+IHNldFZhbHVlQXNEZWNpbWFsKGNvbnN0IERlY2ltYWwmLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFu
Z2VJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAK
aW5kZXggZjA2YmQ1NTliMDI3NGIwNjc1ZWE0YWY3NzY3ZjgyNTVkNzZiYjE0Ni4uOWI1ZTEwYzlm
MTY1YzAzYjFjOTZmZWY5NTdmNTRmYjNiYjc2ZjA0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5n
ZUlucHV0VHlwZS5jcHAKQEAgLTM0NSw5ICszNDUsOSBAQCB2b2lkIFJhbmdlSW5wdXRUeXBlOjph
dHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUpCiAgICAgSW5wdXRUeXBl
OjphdHRyaWJ1dGVDaGFuZ2VkKG5hbWUpOwogfQogCi12b2lkIFJhbmdlSW5wdXRUeXBlOjpzZXRW
YWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZl
bnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBSYW5nZUlucHV0VHlwZTo6c2V0VmFsdWUo
Y29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVo
YXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rp
b24pCiB7Ci0gICAgSW5wdXRUeXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVu
dEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQs
IGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkKICAg
ICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0
VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5oCmluZGV4IDEwZmQz
YTcyZTdkNmQwYjAxN2VmNmJiMmI0Yjk1NTA0OGMwMTU5YTMuLjg0YzdiM2VkNjIzMDBkNDFlYjQy
ZTRjMzU3YmJjNzRlYTljNTNiOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFu
Z2VJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmgK
QEAgLTU3LDcgKzU3LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgc2VyaWFsaXplKGNvbnN0IERl
Y2ltYWwmKSBjb25zdCBmaW5hbDsKICAgICBib29sIGFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRN
b3VzZUV2ZW50cykgZmluYWw7CiAgICAgdm9pZCBhdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxp
ZmllZE5hbWUmKSBmaW5hbDsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wg
dmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBmaW5hbDsKKyAgICB2b2lkIHNl
dFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBmaW5hbDsKICAgICBTdHJpbmcg
ZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBzYW5pdGl6ZVZhbHVlKGNv
bnN0IFN0cmluZyYgcHJvcG9zZWRWYWx1ZSkgY29uc3QgZmluYWw7CiAgICAgYm9vbCBzaG91bGRS
ZXNwZWN0TGlzdEF0dHJpYnV0ZSgpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0Rmll
bGRJbnB1dFR5cGUuY3BwCmluZGV4IDM3MDU2ZTQ1ZWIxYTc1YzE0ZmQ0M2U2NTZmMTMxNDlmYTUx
ZjAzMDQuLjAzNDZmY2IzNWQxMDA5NGJmNjhkOTAyZTExN2I3ZmJmNWYxMGI0NGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAKQEAgLTEyNyw3ICsxMjcsNyBA
QCBib29sIFRleHRGaWVsZElucHV0VHlwZTo6dmFsdWVNaXNzaW5nKGNvbnN0IFN0cmluZyYgdmFs
dWUpIGNvbnN0CiAgICAgcmV0dXJuICFlbGVtZW50KCktPmlzRGlzYWJsZWRPclJlYWRPbmx5KCkg
JiYgZWxlbWVudCgpLT5pc1JlcXVpcmVkKCkgJiYgdmFsdWUuaXNFbXB0eSgpOwogfQogCi12b2lk
IFRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1
ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlv
cikKK3ZvaWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0
aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVu
dEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKICAg
ICBBU1NFUlQoZWxlbWVudCgpKTsKIApAQCAtMTM3LDE4ICsxMzcsMjAgQEAgdm9pZCBUZXh0Rmll
bGRJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wg
dmFsdWVDaGFuZ2UKIAogICAgIC8vIFdlIGRvbid0IGFzayBJbnB1dFR5cGU6OnNldFZhbHVlIHRv
IGRpc3BhdGNoIGV2ZW50cyBiZWNhdXNlCiAgICAgLy8gVGV4dEZpZWxkSW5wdXRUeXBlIGRpc3Bh
dGNoZXMgZXZlbnRzIGRpZmZlcmVudCB3YXkgZnJvbSBJbnB1dFR5cGUuCi0gICAgSW5wdXRUeXBl
OjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2VkLCBEaXNwYXRjaE5vRXZlbnQp
OworICAgIElucHV0VHlwZTo6c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwg
RGlzcGF0Y2hOb0V2ZW50LCBzZWxlY3Rpb24pOwogCiAgICAgaWYgKCF2YWx1ZUNoYW5nZWQpCiAg
ICAgICAgIHJldHVybjsKIAogICAgIHVwZGF0ZUlubmVyVGV4dFZhbHVlKCk7CiAKLSAgICB1bnNp
Z25lZCBtYXggPSB2aXNpYmxlVmFsdWUoKS5sZW5ndGgoKTsKLSAgICBpZiAoaW5wdXQtPmZvY3Vz
ZWQoKSkKLSAgICAgICAgaW5wdXQtPnNldFNlbGVjdGlvblJhbmdlKG1heCwgbWF4KTsKLSAgICBl
bHNlCi0gICAgICAgIGlucHV0LT5jYWNoZVNlbGVjdGlvbkluUmVzcG9uc2VUb1NldFZhbHVlKG1h
eCk7CisgICAgaWYgKHNlbGVjdGlvbiA9PSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpT
ZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAgICB1bnNpZ25lZCBtYXggPSB2aXNpYmxlVmFsdWUo
KS5sZW5ndGgoKTsKKyAgICAgICAgaWYgKGlucHV0LT5mb2N1c2VkKCkpCisgICAgICAgICAgICBp
bnB1dC0+c2V0U2VsZWN0aW9uUmFuZ2UobWF4LCBtYXgpOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICBpbnB1dC0+Y2FjaGVTZWxlY3Rpb25JblJlc3BvbnNlVG9TZXRWYWx1ZShtYXgpOworICAg
IH0KIAogICAgIHN3aXRjaCAoZXZlbnRCZWhhdmlvcikgewogICAgIGNhc2UgRGlzcGF0Y2hDaGFu
Z2VFdmVudDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRU
eXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5oCmluZGV4IDRl
MWJiMTU0YzVhN2I1NjFjYjU0NGZlMmQ2ZmZiODdmMDJhYzllM2EuLjk1ZWI0NjI1ZWZiOTZjZmJk
YWQ3NDRkYzIzNGUwOWM3NDNiYTFiNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
VGV4dEZpZWxkSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJ
bnB1dFR5cGUuaApAQCAtNzgsNyArNzgsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgYm9vbCBzdXBwb3J0
c1JlYWRPbmx5KCkgY29uc3QgZmluYWw7CiAgICAgdm9pZCBoYW5kbGVGb2N1c0V2ZW50KE5vZGUq
IG9sZEZvY3VzZWROb2RlLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7CiAgICAgdm9pZCBoYW5kbGVC
bHVyRXZlbnQoKSBmaW5hbDsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wg
dmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBvdmVycmlkZTsKKyAgICB2b2lk
IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVu
dEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBvdmVycmlkZTsKICAgICB2
b2lkIHVwZGF0ZUlubmVyVGV4dFZhbHVlKCkgZmluYWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFs
dWUoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgYm9vbCB2YWx1ZU1pc3Npbmco
Y29uc3QgU3RyaW5nJikgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCAzODgzYTkwNmEwNmQxOGY2NWRlODg5N2E2Mzc1NjFlOGJhMDkyYTRmLi5hODliZDUzYmVj
OGY5NjNjMzBmNzQ4Mjk2MjU4Y2U2MzlmMGQxMWQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMi0wMy0wOSAgWmlyYW4gU3VuICA8enN1bkBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtTZWxlY3Rpb25dIEZpeGVzIHNlbGVjdGlvbiByYW5nZSBzZXR0
aW5ncyBmb3IgVEVYVEFSRUEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNzY0MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFVwZGF0ZSB0ZXN0IGV4cGVjdGF0aW9ucyBhcyBzb21lIHN1YnRlc3RzIGFyZSBu
b3cgcGFzc2luZy4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
Zm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0Zmll
bGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlv
bi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3Nl
bGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vdGV4
dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhwZWN0ZWQudHh0OgorCiAyMDIyLTAzLTAx
ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgogCiAgICAgICAgIFt3ZWItYW5p
bWF0aW9uc10gd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2dldEFuaW1hdGlv
bnMtaWZyYW1lLmh0bWwgaXMgYSB1bmlxdWUgZmFpbHVyZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90
ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1z
L3RleHRmaWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dAppbmRleCAz
NmY1N2RiNzc4MTVlZWU3NDc1ZTk3MDJjOTkwNWY4NGQ2ZjRiY2I1Li40Y2EwZDNkZGZhZjk1ZWQ0
ZjdhYTdmZTYyODk3MzhmMjY3NjczMWExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNl
bGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRm
aWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dApAQCAtMiw3ICsyLDcg
QEAKIAogUEFTUyBEZWZhdWx0IHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgZm9yIFtv
YmplY3QgSFRNTFRleHRBcmVhRWxlbWVudF0KIFBBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVj
dGlvbkVuZCBkbyBub3QgY2hhbmdlIHdoZW4gc2FtZSB2YWx1ZSBzZXQgYWdhaW4gZm9yIFtvYmpl
Y3QgSFRNTFRleHRBcmVhRWxlbWVudF0KLUZBSUwgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlv
bkVuZCBjaGFuZ2Ugd2hlbiB2YWx1ZSBjaGFuZ2VkIHRvIHVwcGVyIGNhc2UgZm9yIFtvYmplY3Qg
SFRNTFRleHRBcmVhRWxlbWVudF0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMyBidXQgZ290IDAK
K1BBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBjaGFuZ2Ugd2hlbiB2YWx1ZSBj
aGFuZ2VkIHRvIHVwcGVyIGNhc2UgZm9yIFtvYmplY3QgSFRNTFRleHRBcmVhRWxlbWVudF0KIFBB
U1MgRGVmYXVsdCBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0aW9uRW5kIGZvciBbb2JqZWN0IEhU
TUxJbnB1dEVsZW1lbnRdCiBQQVNTIHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgZG8g
bm90IGNoYW5nZSB3aGVuIHNhbWUgdmFsdWUgc2V0IGFnYWluIGZvciBbb2JqZWN0IEhUTUxJbnB1
dEVsZW1lbnRdCiBQQVNTIHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgY2hhbmdlIHdo
ZW4gdmFsdWUgY2hhbmdlZCB0byB1cHBlciBjYXNlIGZvciBbb2JqZWN0IEhUTUxJbnB1dEVsZW1l
bnRdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3Rh
cnQtZW5kLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlv
bi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0CmluZGV4IDY4ZGZjNzUzYjViMmUwZDkwNjg5MzY0Y2Rj
MzUxYzM4MWFmMDVhZGIuLmYxZmI1YTAxYjg3MTZhNDAyMzUxYjFlNDRmNTBlYjIxOTUzZTVlNjgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFydC1l
bmQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlv
bi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0CkBAIC02LDE4ICs2LDE4IEBAIFBBU1MgSW5pdGlhbCAu
dmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8g
ZW5kIG9mIHZhCiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQg
c2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAu
dmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rp
b25TdGFydCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlucHV0
LW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5k
IG9mIHZhbHVlCi1GQUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZCBz
aG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVh
LW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFsdWUg
c2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25T
dGFydCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAw
Ci1GQUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJlZm9j
dXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRl
eHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVl
CitQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQgc2hvdWxk
IHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUg
c2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25T
dGFydCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVh
LW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5k
IG9mIHZhbHVlCiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1hcHBlbmRlZCBzaG91
bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUg
c2V0IG9uIGlucHV0LW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQg
b2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkLXByZWZv
Y3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCiBQQVNTIEluaXRp
YWwgLnZhbHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0
IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9u
IHRleHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1
ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFs
dWUgc2V0IG9uIHRleHRhcmVhLW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0
byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1GQUlM
IEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3Vs
ZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLW5vdC1h
cHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1
ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKK1BBU1MgSW5pdGlhbCAudmFs
dWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVu
ZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90LWFwcGVu
ZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFs
IC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNl
bGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRl
eHRhcmVhLW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRv
IGVuZCBvZiB2YWx1ZQogUEFTUyBvbnNlbGVjdCBzaG91bGQgZmlyZSB3aGVuIHNlbGVjdGlvblN0
YXJ0IGlzIGNoYW5nZWQKIE5PVFJVTiBvbnNlbGVjdCBzaG91bGQgZmlyZSB3aGVuIHNlbGVjdGlv
blN0YXJ0IGlzIGNoYW5nZWQgb24gaW5wdXQtYXBwZW5kZWQKIE5PVFJVTiBvbnNlbGVjdCBzaG91
bGQgZmlyZSB3aGVuIHNlbGVjdGlvblN0YXJ0IGlzIGNoYW5nZWQgb24gaW5wdXQtbm90LWFwcGVu
ZGVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3Rh
cnQtZW5kLWV4dHJhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3Nl
bGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CmluZGV4IDk0MzM5NjExZDk1ZDIx
NWRjMzkzYjU0MjRmYjhiNzdiNGQ4NzcyYmEuLjgyZDVlYjM2NTU2M2ZhMTlhZjVjNmFjNzk2NmIy
ZTVhMTAxNTg5MWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVj
dGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxk
c2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CkBAIC0xLDEy
ICsxLDEyIEBACiAKIFBBU1MgU2V0dGluZyBkZWZhdWx0VmFsdWUgaW4gYSB0ZXh0YXJlYSBzaG91
bGQgTk9UIG1vdmUgdGhlIGN1cnNvciB0byB0aGUgZW5kCi1GQUlMIFNldHRpbmcgZGVmYXVsdFZh
bHVlIGluIGEgdGV4dGFyZWEgd2l0aCBhIHZhbHVlIHNob3VsZCBOT1QgbWFrZSBhbnkgZGlmZmVy
ZW5jZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCA2IGJ1dCBnb3QgMAorUEFTUyBTZXR0aW5nIGRl
ZmF1bHRWYWx1ZSBpbiBhIHRleHRhcmVhIHdpdGggYSB2YWx1ZSBzaG91bGQgTk9UIG1ha2UgYW55
IGRpZmZlcmVuY2UKIFBBU1MgU2V0dGluZyB0ZXh0Q29udGVudCBpbiBhIHRleHRhcmVhIHNob3Vs
ZCBOT1QgbW92ZSBzZWxlY3Rpb257U3RhcnQsRW5kfSB0byB0aGUgZW5kCiBQQVNTIEFkZGluZyBj
aGlsZHJlbiB0byBhIHRleHRhcmVhIHNob3VsZCBOT1QgbW92ZSBzZWxlY3Rpb257U3RhcnQsRW5k
fSB0byB0aGUgZW5kCiBQQVNTIFJlbW92aW5nIGNoaWxkcmVuIGZyb20gYSB0ZXh0YXJlYSBzaG91
bGQgTk9UIHVwZGF0ZSBzZWxlY3Rpb257U3RhcnQsRW5kfQogUEFTUyBTZXR0aW5nIHRoZSBzYW1l
IHZhbHVlICh3aXRoIGRpZmZlcmVudCBuZXdsaW5lcykgaW4gYSB0ZXh0YXJlYSBzaG91bGQgTk9U
IHVwZGF0ZSBzZWxlY3Rpb257U3RhcnQsRW5kfQogRkFJTCBSZW1vdmluZyBjaGlsZCBub2RlcyBp
biBub24tZGlydHkgdGV4dGFyZWEgc2hvdWxkIG1ha2Ugc2VsZWN0aW9ue1N0YXJ0LEVuZH0gMCBh
c3NlcnRfZXF1YWxzOiBzZWxlY3Rpb25TdGFydCBhZnRlciBub2RlIHJlbW92YWwgZXhwZWN0ZWQg
MCBidXQgZ290IDMKLUZBSUwgU2V0dGluZyB2YWx1ZSB0byBhIHNob3J0ZXIgc3RyaW5nIHRoYW4g
ZGVmYXVsdFZhbHVlIHNob3VsZCBjb3JyZWN0IHRoZSBjdXJzb3IgcG9zaXRpb24gYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgMiBidXQgZ290IDMKK1BBU1MgU2V0dGluZyB2YWx1ZSB0byBhIHNob3J0
ZXIgc3RyaW5nIHRoYW4gZGVmYXVsdFZhbHVlIHNob3VsZCBjb3JyZWN0IHRoZSBjdXJzb3IgcG9z
aXRpb24KIFBBU1MgU2hvcnRlbmluZyB2YWx1ZSBieSB0dXJuaW5nIHRoZSBpbnB1dCB0eXBlIGlu
dG8gJ3VybCcgc2hvdWxkIGNvcnJlY3Qgc2VsZWN0aW9ue1N0YXJ0LEVuZH0KIEZBSUwgU2hvcnRl
bmluZyB2YWx1ZSBieSB0dXJuaW5nIHRoZSBpbnB1dCB0eXBlIGludG8gJ2NvbG9yJyBhbmQgYmFj
ayB0byAndGV4dCcgc2hvdWxkIGNvcnJlY3Qgc2VsZWN0aW9ue1N0YXJ0LEVuZH0gYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDkKIFBBU1MgUmVzZXR0aW5nIGEgdmFsdWUgdG8gYSBz
aG9ydGVyIHN0cmluZyB0aGFuIGRlZmF1bHRWYWx1ZSBzaG91bGQgY29ycmVjdCB0aGUgY3Vyc29y
IHBvc2l0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rp
b24tdmFsdWUtaW50ZXJhY3Rpb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2Vs
ZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0CmluZGV4IDg0
MTBhODI5YmJmYWE4OGMxOTc5OTMxNDFmMGMyMDdmMDQ1MDNjYzQuLmIxOTA3NGVkOTg0ODc1MDZk
Yjg3OGY3MmJjZTE0NDQ0N2IzMDRhNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2Vs
ZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
Zm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhw
ZWN0ZWQudHh0CkBAIC0xMSw2ICsxMSw2IEBAIFBBU1MgdmFsdWUgZGlydHkgZmxhZyBiZWhhdmlv
ciBhZnRlciBzZXRSYW5nZVRleHQgb24gZm9jdXNlZCB0aGVuIGJsdXJyZWQgdGV4dGFyCiBQQVNT
IHZhbHVlIGRpcnR5IGZsYWcgYmVoYXZpb3IgYWZ0ZXIgc2V0UmFuZ2VUZXh0IG9uIGZvY3VzZWQg
dGhlbiBibHVycmVkIGlucHV0CiBQQVNTIHNlbGVjdGlvbiBpcyBjb2xsYXBzZWQgdG8gdGhlIGVu
ZCBhZnRlciBjaGFuZ2luZyB2YWx1ZXMgb24gaW5wdXQKIFBBU1Mgc2VsZWN0aW9uIGlzIG5vdCBj
b2xsYXBzZWQgdG8gdGhlIGVuZCB3aGVuIHZhbHVlIGlzIHNldCB0byBpdHMgZXhpc3RpbmcgdmFs
dWUgb24gaW5wdXQKLUZBSUwgc2VsZWN0aW9uIGlzIGNvbGxhcHNlZCB0byB0aGUgZW5kIGFmdGVy
IGNoYW5naW5nIHZhbHVlcyBvbiB0ZXh0YXJlYSBhc3NlcnRfZXF1YWxzOiBlbGVtZW50LnNlbGVj
dGlvblN0YXJ0IHNob3VsZCBiZSB2YWx1ZS5sZW5ndGggZXhwZWN0ZWQgMyBidXQgZ290IDAKK1BB
U1Mgc2VsZWN0aW9uIGlzIGNvbGxhcHNlZCB0byB0aGUgZW5kIGFmdGVyIGNoYW5naW5nIHZhbHVl
cyBvbiB0ZXh0YXJlYQogUEFTUyBzZWxlY3Rpb24gaXMgbm90IGNvbGxhcHNlZCB0byB0aGUgZW5k
IHdoZW4gdmFsdWUgaXMgc2V0IHRvIGl0cyBleGlzdGluZyB2YWx1ZSBvbiB0ZXh0YXJlYQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi90ZXh0YXJlYS1zZWxlY3Rpb24t
d2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi90
ZXh0YXJlYS1zZWxlY3Rpb24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggZTA2ZDA3
MzJjM2YyZTBiMTAxOWMwNzIzMTE2NGExOTY1Y2Q2MDUyNy4uNDc2MzU5YTg0MjI4YzE1ZDJhNGI4
ODM4ZmMxOTUxY2I1MTc5YTU3NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
Zm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGlsZS1wYXJzaW5n
LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAogCi1GQUlMIFZhbHVlIHNldHRlciB3aGls
ZSBwYXJzaW5nIHRleHRhcmVhIGNoaWxkcmVuIHNob3VsZCBtb3ZlIHNlbGVjdGlvbntTdGFydCxF
bmR9IHRvIHRoZSBlbmQgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMyBidXQgZ290IDAKK1BBU1Mg
VmFsdWUgc2V0dGVyIHdoaWxlIHBhcnNpbmcgdGV4dGFyZWEgY2hpbGRyZW4gc2hvdWxkIG1vdmUg
c2VsZWN0aW9ue1N0YXJ0LEVuZH0gdG8gdGhlIGVuZAogCg==
</data>
<flag name="commit-queue"
          id="481832"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454237</attachid>
            <date>2022-03-09 08:01:57 -0800</date>
            <delta_ts>2022-03-09 10:44:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237641-20220309160155.patch</filename>
            <type>text/plain</type>
            <size>39936</size>
            <attacher>zsun</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWI2NDJlMWFiZjhiYmZk
NDUzYTNmZTk2ODIzNjM4NjY5NDVmMGFjNy4uMTc2MTQ1NmQ1ZDhjYjdmYzAzOWY4NTYyOTRlZDg5
MzQ0ZThiOTQ0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIyLTAzLTA5ICBaaXJh
biBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVjdGlvbl0gRml4ZXMgc2Vs
ZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBDTCBpcyB0byBmaXggdGhlIHNldHRpbmdz
IG9mIFNlbGVjdGlvblN0YXJ0L1NlbGVjdGlvbkVuZCBmb3IgVEVYVEFSRUEgZm9yIG5vbi1mb2N1
c2VkIEVsZW1lbnQuIEl0IHNldHMgdGhlCisgICAgICAgIGNhcmV0IHRvIHRoZSBlbmQgb2YgdGhl
IHRleHQgdmFsdWUgZXhjZXB0IGZvciBpbml0aWFsaXppbmcgaW4gbW9zdCBjYXNlcy4gRm9yIHRo
ZSBjYXNlIG9mIHVwZGF0aW5nIGRlZmF1bHRWYWx1ZQorICAgICAgICBmb3IgYSBub24tZGlydHkg
VEVYVEFSRUEsIHdlIHNob3VsZCBmb2xsb3dpbmcgdGhlIGNsYW1waW5nIHN0ZXBzIGFzIHBlciBz
cGVjIGFuZCBpdCB3aWxsIGJlIGFkZHJlc3NlZCBpbiBhIAorICAgICAgICBmb2xsb3ctdXAgcGF0
Y2guICAgICAgICAKKworICAgICAgICBUaGlzIENMIHJlZmVycyBhbmQgaW1wb3J0cyBwYXJ0IG9m
IHRoZSBjaGFuZ2VzIGluIGNocm9taXVtIENMIGF0CisgICAgICAgIGh0dHBzOi8vY29kZXJldmll
dy5jaHJvbWl1bS5vcmcvMjczNTYzMzAwNgorCisgICAgICAgIFRoaXMgQ0wgYWxzbyBpbnRyb2R1
Y2VzIGEgdW5pZmllZCBzZXRWYWx1ZSgpIEFQSSBpbiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IGZv
ciBIVE1MVGV4dEFyZWFFbGVtZW50IGFuZCBIVE1MSW5wdXRFbGVtZW50LgorCisgICAgICAgICog
aHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VCdXR0
b25JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0Jhc2VCdXR0b25JbnB1dFR5
cGUuaDoKKyAgICAgICAgKiBodG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QmFzZUNoZWNrYWJsZUlucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAq
IGh0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VEYXRlQW5kVGltZUlu
cHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6QmFzZURhdGVBbmRUaW1lSW5w
dXRUeXBlOjpkaWRDaGFuZ2VWYWx1ZUZyb21Db250cm9sKToKKyAgICAgICAgKiBodG1sL0Jhc2VE
YXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvQ29sb3JJbnB1dFR5cGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q29sb3JJbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAg
KiBodG1sL0NvbG9ySW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAg
KiBodG1sL0ZpbGVJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c2V0VmFsdWUpOgorICAg
ICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRB
cmVhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojpj
aGlsZHJlbkNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6
cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1
ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZUNvbW1v
bik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojpjb3B5Tm9uQXR0cmli
dXRlUHJvcGVydGllc0Zyb21FbGVtZW50KToKKyAgICAgICAgKiBodG1sL0hUTUxUZXh0QXJlYUVs
ZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50OjpzZXRSYW5nZVRl
eHQpOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAg
ICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaWRkZW5J
bnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5oOgor
ICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlw
ZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRt
bC9OdW1iZXJJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TnVtYmVySW5wdXRUeXBl
OjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9OdW1iZXJJbnB1dFR5cGUuaDoKKyAgICAgICAg
KiBodG1sL1JhbmdlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlSW5wdXRU
eXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9SYW5nZUlucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRG
aWVsZElucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRU
eXBlLmg6CisKIDIwMjItMDMtMDEgIEFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFtJRkNdW0ludGVncmF0aW9uXSBJbmxpbmVJdGVyYXRvcjo6Qm94OjpyZWN0KCkgcmV0
dXJucyB0aGUgdW5mbGlwcGVkIHZpc3VhbCByZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
QnV0dG9uSW5wdXRUeXBlLmNwcAppbmRleCA0ZTczOTUzODEyZDQwODRjODVkYmUxMDVjN2E5MzU2
OTVmNzBjY2ZlLi44ODIxMGMzMzlmNTU1OTZkNjEyMWY1MDY1Mjg1MGQ0NjAwZGMxODMxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUJ1dHRvbklucHV0VHlwZS5jcHAKQEAgLTYyLDcgKzYy
LDcgQEAgYm9vbCBCYXNlQnV0dG9uSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0
dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEJhc2VCdXR0b25JbnB1dFR5
cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVs
ZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0
IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRl
eHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAg
ICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0
ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
QnV0dG9uSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5
cGUuaAppbmRleCBlNDE0NjM0MWIwNGY0MTk4Y2IwNzA2YjlhNjUyZDY2OTE2YzAyZGMyLi40Zjhl
OGExYWUzZjNmNDYxODY5ZjY2YzFlNmYyYjdhOWIxYzM2OTI1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaApAQCAtNDQsNyArNDQsNyBAQCBwcml2YXRlOgogICAg
IGJvb2wgYXBwZW5kRm9ybURhdGEoRE9NRm9ybURhdGEmKSBjb25zdCBvdmVycmlkZTsKICAgICBS
ZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlSW5wdXRSZW5kZXJlcihSZW5kZXJTdHlsZSYm
KSBvdmVycmlkZTsKICAgICBib29sIHN0b3Jlc1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0Rmll
bGRFdmVudEJlaGF2aW9yKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmlu
ZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxl
Y3Rpb24pIG92ZXJyaWRlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5jcHAKaW5kZXggMDY1Y2VjMGU2
NWJjNzI3NDNhMmZkMjFmODZjM2M1ODhkYWVhMTEzZi4uOGE1NGNhMDUzNTRhOTMwMjc1OWFiNzVi
YTNhMTc1NWY3YjlmNDU1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hl
Y2thYmxlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2Fi
bGVJbnB1dFR5cGUuY3BwCkBAIC0xMDgsNyArMTA4LDcgQEAgYm9vbCBCYXNlQ2hlY2thYmxlSW5w
dXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZh
bHNlOwogfQogCi12b2lkIEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0
cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lk
IEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVk
VmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVT
ZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRB
dHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBl
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAppbmRleCBi
NDlhNzdhNDE1OTI1MWIxODUwMTQ5ZTEwMDdjZGY0MDA2YzA5YTI0Li42YmY1ZDUxZmFiMmE2ZGI5
ODMwYzIzZTZmYjFiMjhlZGEwNTdjZTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VD
aGVja2FibGVJbnB1dFR5cGUuaApAQCAtNTAsNyArNTAsNyBAQCBwcml2YXRlOgogICAgIGJvb2wg
YWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBvdmVycmlkZTsKICAgICBTdHJp
bmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgc3RvcmVzVmFsdWVT
ZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0
IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwg
VGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5k
VGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlu
cHV0VHlwZS5jcHAKaW5kZXggY2Y3Y2MzMWYzNDJmN2I1YTc0NzQ3NWU0Y2NhMTg5YmQxM2E3NDEz
ZS4uMzc1NTI4MWQxODJlM2FhYmUxOGM3OWQ5ZDM1MTM2OWFjNzM1NGU4MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcApAQCAtMjc3LDkg
KzI3Nyw5IEBAIGJvb2wgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpzaG91bGRIYXZlTWlsbGlz
ZWNvbmRGaWVsZChjb25zdCBEYXRlQ29tcG9uZW50cyYKICAgICAgICAgfHwgIXN0ZXBSYW5nZS5z
dGVwKCkucmVtYWluZGVyKG1zZWNQZXJTZWNvbmQpLmlzWmVybygpOwogfQogCi12b2lkIEJhc2VE
YXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2
YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQg
QmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBi
b29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBU
ZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKLSAgICBJbnB1dFR5cGU6
OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IpOworICAgIElucHV0
VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0
aW9uKTsKICAgICBpZiAodmFsdWVDaGFuZ2VkKQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1
ZSgpOwogfQpAQCAtNDcwLDcgKzQ3MCw3IEBAIHZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBl
OjpkaWRCbHVyRnJvbUNvbnRyb2woKQogdm9pZCBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmRp
ZENoYW5nZVZhbHVlRnJvbUNvbnRyb2woKQogewogICAgIFN0cmluZyB2YWx1ZSA9IHNhbml0aXpl
VmFsdWUobV9kYXRlVGltZUVkaXRFbGVtZW50LT52YWx1ZSgpKTsKLSAgICBJbnB1dFR5cGU6OnNl
dFZhbHVlKHZhbHVlLCB2YWx1ZSAhPSBlbGVtZW50KCktPnZhbHVlKCksIERpc3BhdGNoSW5wdXRB
bmRDaGFuZ2VFdmVudCk7CisgICAgSW5wdXRUeXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWUgIT0g
ZWxlbWVudCgpLT52YWx1ZSgpLCBEaXNwYXRjaElucHV0QW5kQ2hhbmdlRXZlbnQsIERvTm90U2V0
KTsKIAogICAgIERhdGVUaW1lQ2hvb3NlclBhcmFtZXRlcnMgcGFyYW1ldGVyczsKICAgICBpZiAo
IXNldHVwRGF0ZVRpbWVDaG9vc2VyUGFyYW1ldGVycyhwYXJhbWV0ZXJzKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oCmluZGV4IGI2ODVmOGUxOWZm
YjQ4ODU1ZjRlMmZlODJlM2IxMjFiZTQ5M2E3M2QuLjZiZjZkNmI5MDNiNGFkNzY1OTZiYmFjY2U1
NGQxN2QzN2EzMWU4Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRp
bWVJbnB1dFR5cGUuaApAQCAtMTAxLDcgKzEwMSw3IEBAIHByaXZhdGU6CiAgICAgLy8gSW5wdXRU
eXBlIGZ1bmN0aW9uczoKICAgICBTdHJpbmcgdmlzaWJsZVZhbHVlKCkgY29uc3QgZmluYWw7CiAg
ICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZp
ZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcm
LCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xT
ZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAgV2FsbFRpbWUgdmFsdWVBc0RhdGUoKSBjb25z
dCBvdmVycmlkZTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRWYWx1ZUFzRGF0ZShXYWxsVGlt
ZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91YmxlIHZhbHVlQXNEb3VibGUoKSBjb25zdCBmaW5h
bDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKaW5kZXggZjExOWU4MmIzNzdk
ZGI0MWZjZDllOGI5M2FhN2ZjZWZhMGY1ZGMwZC4uMTcwZmJjNTE0MDE2YTQ0MTQ4ODQwOTYwNWM5
OGQ3MjRlNWI1NmZmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0
VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKQEAg
LTE1Myw5ICsxNTMsOSBAQCB2b2lkIENvbG9ySW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVl
KCkKICAgICB1cGRhdGVDb2xvclN3YXRjaCgpOwogfQogCi12b2lkIENvbG9ySW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxk
RXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBDb2xvcklucHV0VHlwZTo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxl
Y3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBl
dmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5n
ZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkK
ICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklu
cHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oCmluZGV4IDEx
NmRhYjExN2I5NzU5YjIzNjE3MzcwZWQ0ODM3OWE4Yzc3YTMzNzkuLmM4ZmVhNmEzMjYyMDY0YTgy
ZDQ1ZjNkZTFlMDBiYjM1Y2MyNWI0ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Q29sb3JJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBl
LmgKQEAgLTYzLDcgKzYzLDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgp
IGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBzYW5pdGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYpIGNv
bnN0IGZpbmFsOwogICAgIHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZSgpIGZpbmFsOwotICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFs
dWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgYXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFs
aWZpZWROYW1lJikgZmluYWw7CiAgICAgdm9pZCBoYW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50
JikgZmluYWw7CiAgICAgdm9pZCBkZXRhY2goKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJ
bnB1dFR5cGUuY3BwCmluZGV4IGVhN2RmYWNmNjJiNzgyNTU5ZDY1ZTNiZmI2YjNkMGNjZGZlMjUy
MWMuLmI2NWI4NzBlYTcwNTQ1MGIzYzZlOTNkNmMzMmJiZmJmOWU3MGM0NjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApAQCAtMjUzLDcgKzI1Myw3IEBAIGJvb2wgRmlsZUlu
cHV0VHlwZTo6Z2V0VHlwZVNwZWNpZmljVmFsdWUoU3RyaW5nJiB2YWx1ZSkKICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAotdm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBi
b29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQordm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1
ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJv
bFNldFZhbHVlU2VsZWN0aW9uKQogewogICAgIC8vIEZJWE1FOiBTaG91bGQgd2UgY2xlYXIgdGhl
IGZpbGUgbGlzdCwgb3IgcmVwbGFjZSBpdCB3aXRoIGEgbmV3IGVtcHR5IG9uZSBoZXJlPyBUaGlz
IGlzIG9ic2VydmFibGUgZnJvbSBKYXZhU2NyaXB0IHRocm91Z2ggY3VzdG9tIHByb3BlcnRpZXMu
CiAgICAgbV9maWxlTGlzdC0+Y2xlYXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvRmlsZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgK
aW5kZXggOTE1N2IxNzkwMjkyMDBmM2M0MzA4OGNiNmE0YzZiZTU1ZTAwMDIzYS4uZWUxMDg0OTc4
M2ZhZmVkMmFhOWM3OGI2MDA2YmJkZWRlZTY1NDQxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5w
dXRUeXBlLmgKQEAgLTY5LDcgKzY5LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZGlzcGxheVN0
cmluZygpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgY2FuU2V0VmFsdWUoY29uc3QgU3RyaW5nJikg
ZmluYWw7CiAgICAgYm9vbCBnZXRUeXBlU3BlY2lmaWNWYWx1ZShTdHJpbmcmKSBmaW5hbDsgLy8g
Q2hlY2tlZCBmaXJzdCwgYmVmb3JlIGludGVybmFsIHN0b3JhZ2Ugb3IgdGhlIHZhbHVlIGF0dHJp
YnV0ZS4KLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2Vk
LCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBmaW5hbDsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0
IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0
Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBmaW5hbDsKIAogI2lmIEVOQUJMRShEUkFHX1NVUFBP
UlQpCiAgICAgYm9vbCByZWNlaXZlRHJvcHBlZEZpbGVzV2l0aEltYWdlVHJhbnNjb2RpbmcoY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhdGhzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVs
ZW1lbnQuY3BwCmluZGV4IGJjZDZjOGEwZWI3MDk5MjI2OTU0YWJkN2Q5ZTBkNTRiZWI1N2RlZWEu
LjIyZTZkZjYzZjNkYThkMDgyOTExYWZkMWUxNTdmMzI0YmNhNzBmNjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApAQCAtMTA2NCw3ICsxMDY0LDcgQEAgdm9pZCBI
VE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZUZvclVzZXIoY29uc3QgU3RyaW5nJiB2YWx1ZSkKICAg
ICBzZXRWYWx1ZSh2YWx1ZSwgRGlzcGF0Y2hDaGFuZ2VFdmVudCk7CiB9CiAKLUV4Y2VwdGlvbk9y
PHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRl
eHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK0V4Y2VwdGlvbk9yPHZvaWQ+IEhU
TUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBz
ZWxlY3Rpb24pCiB7CiAgICAgaWYgKGlzRmlsZVVwbG9hZCgpICYmICF2YWx1ZS5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciB9OwpAQCAtMTA3
OSw3ICsxMDc5LDcgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTElucHV0RWxlbWVudDo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnQKIAogICAgIHNldExhc3RDaGFu
Z2VXYXNOb3RVc2VyRWRpdCgpOwogICAgIHNldEZvcm1Db250cm9sVmFsdWVNYXRjaGVzUmVuZGVy
ZXIoZmFsc2UpOwotICAgIG1faW5wdXRUeXBlLT5zZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFs
dWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBtX2lucHV0VHlwZS0+c2V0VmFsdWUoc2Fu
aXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAog
ICAgIGJvb2wgd2FzTW9kaWZpZWRQcm9ncmFtbWF0aWNhbGx5ID0gZXZlbnRCZWhhdmlvciA9PSBE
aXNwYXRjaE5vRXZlbnQ7CiAgICAgaWYgKHdhc01vZGlmaWVkUHJvZ3JhbW1hdGljYWxseSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKaW5kZXggY2M1MGZlZTMzYzk4ZDFmODky
YTQ3ZTRjMDUxNDEyOTNmZjEzMWFhMC4uODUwNGZiNjI2OTZjN2YwMWUxODliMmQ3MzE5Zjc4MDBj
NTljODU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKQEAgLTE3MSw3
ICsxNzEsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRUeXBlKGNvbnN0
IEF0b21TdHJpbmcmKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0
IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNv
bnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQpOwor
ICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmlu
ZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQsIFRleHRDb250cm9s
U2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxl
Y3Rpb25Ub0VuZCkgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRWYWx1ZUZvclVz
ZXIoY29uc3QgU3RyaW5nJik7CiAgICAgLy8gQ2hlY2tzIGlmIHRoZSBzcGVjaWZpZWQgc3RyaW5n
IHdvdWxkIGJlIGEgdmFsaWQgdmFsdWUuCiAgICAgLy8gV2Ugc2hvdWxkIG5vdCBjYWxsIHRoaXMg
Zm9yIHR5cGVzIHdpdGggbm8gc3RyaW5nIHZhbHVlIHN1Y2ggYXMgQ0hFQ0tCT1ggYW5kIFJBRElP
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAKaW5kZXggYWE1
MmYwMGRiNWRjMDZkZDMwNDgxNmUxMzMxNTVhNzM5YTRhMTIzYi4uMDUxMWU1ODkyOWYwOTdiM2I3
MWQzOTVmOWI2YTM0NTk1YjMxZTU4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MVGV4dEFyZWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0
QXJlYUVsZW1lbnQuY3BwCkBAIC0xMzYsNyArMTM2LDcgQEAgdm9pZCBIVE1MVGV4dEFyZWFFbGVt
ZW50OjpjaGlsZHJlbkNoYW5nZWQoY29uc3QgQ2hpbGRDaGFuZ2UmIGNoYW5nZSkKICAgICBpZiAo
bV9pc0RpcnR5KQogICAgICAgICBzZXRJbm5lclRleHRWYWx1ZSh2YWx1ZSgpKTsKICAgICBlbHNl
Ci0gICAgICAgIHNldE5vbkRpcnR5VmFsdWUoZGVmYXVsdFZhbHVlKCkpOworICAgICAgICBzZXRO
b25EaXJ0eVZhbHVlKGRlZmF1bHRWYWx1ZSgpLCAgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bjo6RG9Ob3RTZXQpOwogfQogCiBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhhc1ByZXNlbnRh
dGlvbmFsSGludHNGb3JBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkgY29uc3QK
QEAgLTI0MSw3ICsyNDEsNyBAQCBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OmFwcGVuZEZvcm1E
YXRhKERPTUZvcm1EYXRhJiBmb3JtRGF0YSkKIAogdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50Ojpy
ZXNldCgpCiB7Ci0gICAgc2V0Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUoKSk7CisgICAgc2V0
Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUoKSwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bjo6U2V0U2VsZWN0aW9uVG9FbmQpOwogfQogCiBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhh
c0N1c3RvbUZvY3VzTG9naWMoKSBjb25zdApAQCAtMzc0LDIxICszNzQsMjIgQEAgU3RyaW5nIEhU
TUxUZXh0QXJlYUVsZW1lbnQ6OnZhbHVlKCkgY29uc3QKICAgICByZXR1cm4gbV92YWx1ZTsKIH0K
IAotdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVl
KQorRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUoY29uc3Qg
U3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0
Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKLSAgICBzZXRWYWx1ZUNvbW1v
bih2YWx1ZSk7CisgICAgc2V0VmFsdWVDb21tb24odmFsdWUsIGV2ZW50QmVoYXZpb3IsIHNlbGVj
dGlvbik7CiAgICAgbV9pc0RpcnR5ID0gdHJ1ZTsKICAgICB1cGRhdGVWYWxpZGl0eSgpOworICAg
IHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlW
YWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQordm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRO
b25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRDb250cm9sU2V0VmFsdWVTZWxl
Y3Rpb24gc2VsZWN0aW9uKQogewotICAgIHNldFZhbHVlQ29tbW9uKHZhbHVlKTsKKyAgICBzZXRW
YWx1ZUNvbW1vbih2YWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcjo6RGlzcGF0Y2hOb0V2ZW50
LCBzZWxlY3Rpb24pOwogICAgIG1faXNEaXJ0eSA9IGZhbHNlOwogICAgIHVwZGF0ZVZhbGlkaXR5
KCk7CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3Qg
U3RyaW5nJiBuZXdWYWx1ZSkKK3ZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21t
b24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENv
bnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7CiAgICAgbV93YXNNb2RpZmllZEJ5
VXNlciA9IGZhbHNlOwogICAgIC8vIENvZGUgZWxzZXdoZXJlIG5vcm1hbGl6ZXMgbGluZSBlbmRp
bmdzIGFkZGVkIGJ5IHRoZSB1c2VyIHZpYSB0aGUga2V5Ym9hcmQgb3IgcGFzdGluZy4KQEAgLTQw
OSwxMCArNDEwLDEzIEBAIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24o
Y29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKICAgICBpbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlKCk7
CiAgICAgc2V0Rm9ybUNvbnRyb2xWYWx1ZU1hdGNoZXNSZW5kZXJlcih0cnVlKTsKIAotICAgIC8v
IFNldCB0aGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0aGUgdGV4dCB2YWx1ZS4KICAgICBpZiAoZG9j
dW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09IHRoaXMpIHsKICAgICAgICAgdW5zaWduZWQgZW5k
T2ZTdHJpbmcgPSBtX3ZhbHVlLmxlbmd0aCgpOwogICAgICAgICBzZXRTZWxlY3Rpb25SYW5nZShl
bmRPZlN0cmluZywgZW5kT2ZTdHJpbmcpOworICAgIH0gIGVsc2UgaWYgKHNlbGVjdGlvbiA9PSBU
ZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAg
ICAvLyBVcGRhdGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0aGUgdGV4dCB2YWx1ZSBleGNlcHQgZm9y
IGluaXRpYWxpemUuCisgICAgICAgIHVuc2lnbmVkIGVuZG9mU3RyaW5nID0gbV92YWx1ZS5sZW5n
dGgoKTsKKyAgICAgICAgY2FjaGVTZWxlY3Rpb24oZW5kb2ZTdHJpbmcsIGVuZG9mU3RyaW5nLCBT
ZWxlY3Rpb25IYXNOb0RpcmVjdGlvbik7CiAgICAgfQogCiAgICAgc2V0VGV4dEFzT2ZMYXN0Rm9y
bUNvbnRyb2xDaGFuZ2VFdmVudChub3JtYWxpemVkVmFsdWUpOwpAQCAtNTc2LDcgKzU4MCw3IEBA
IHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6Y29weU5vbkF0dHJpYnV0ZVByb3BlcnRpZXNGcm9t
RWxlbWVudChjb25zdCBFbGVtZW50JiBzCiB7CiAgICAgYXV0byYgc291cmNlRWxlbWVudCA9IGRv
d25jYXN0PEhUTUxUZXh0QXJlYUVsZW1lbnQ+KHNvdXJjZSk7CiAKLSAgICBzZXRWYWx1ZUNvbW1v
bihzb3VyY2VFbGVtZW50LnZhbHVlKCkpOworICAgIHNldFZhbHVlQ29tbW9uKHNvdXJjZUVsZW1l
bnQudmFsdWUoKSwgRGlzcGF0Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
OjpTZXRTZWxlY3Rpb25Ub0VuZCk7CiAgICAgbV9pc0RpcnR5ID0gc291cmNlRWxlbWVudC5tX2lz
RGlydHk7CiAgICAgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQ
cm9wZXJ0aWVzRnJvbUVsZW1lbnQoc291cmNlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxU
ZXh0QXJlYUVsZW1lbnQuaAppbmRleCAwMDc3ZjAyNTMyNmQ3OGYwMjFkYWMwY2IyNzFkOWM5Njhm
Y2NiYWRlLi5mMWZjYTc4OWM2NzJiZDc3MjkzMmJhYjQ1NmQzMDNmZDgzYWZiZTU3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaApAQCAtNDQsNyArNDQsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBzaG91bGRXcmFwVGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fd3JhcCAh
PSBOb1dyYXA7IH0KIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZp
bmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJik7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0VmFsdWUoY29uc3QgU3RyaW5n
JiwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciA9IERpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xT
ZXRWYWx1ZVNlbGVjdGlvbiA9IFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb246OlNldFNlbGVj
dGlvblRvRW5kKSBmaW5hbDsKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGVmYXVsdFZhbHVl
KCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXREZWZhdWx0VmFsdWUoY29uc3Qg
U3RyaW5nJik7CiAgICAgaW50IHRleHRMZW5ndGgoKSBjb25zdCB7IHJldHVybiB2YWx1ZSgpLmxl
bmd0aCgpOyB9CkBAIC04Myw4ICs4Myw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYW5kbGVCZWZv
cmVUZXh0SW5zZXJ0ZWRFdmVudChCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudCYpIGNvbnN0OwogICAg
IHN0YXRpYyBTdHJpbmcgc2FuaXRpemVVc2VySW5wdXRWYWx1ZShjb25zdCBTdHJpbmcmLCB1bnNp
Z25lZCBtYXhMZW5ndGgpOwogICAgIHZvaWQgdXBkYXRlVmFsdWUoKSBjb25zdDsKLSAgICB2b2lk
IHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5nJik7Ci0gICAgdm9pZCBzZXRWYWx1ZUNvbW1v
bihjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5n
JiwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbik7CisgICAgdm9pZCBzZXRWYWx1ZUNvbW1v
bihjb25zdCBTdHJpbmcmLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZh
bHVlU2VsZWN0aW9uKTsKIAogICAgIGJvb2wgc3VwcG9ydHNQbGFjZWhvbGRlcigpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICBIVE1MRWxlbWVudCogcGxhY2Vob2xkZXJFbGVtZW50
KCkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0
Rm9ybUNvbnRyb2xFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3Jt
Q29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDliZDVlZGI0MzQxZDA5NzQ4YjU2YWNiYWM5MDljNGQw
YTUyYmQ1NzYuLjIwNWNjNjUxNjkxMDQwMjkzOTM4MzI1MjcyZjc0MDc0M2YxNWU4NjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3Bw
CkBAIC0yNTQsNyArMjU0LDYgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRGb3JtQ29udHJv
bEVsZW1lbnQ6OnNldFJhbmdlVGV4dChjb25zdCBTdHJpbmcmIHJlcGxhY2UKICAgICBlbHNlCiAg
ICAgICAgIHRleHQuaW5zZXJ0KHJlcGxhY2VtZW50LCBzdGFydCk7CiAKLSAgICBzZXRJbm5lclRl
eHRWYWx1ZSh0ZXh0KTsKIAogICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZG4ndCBuZWVkIHN5bmNo
cm9ub3VzIHN0eWxlIHVwZGF0ZSwgb3IgcmVuZGVyZXIgYXQgYWxsLgogICAgIGlmICghcmVuZGVy
ZXIoKSkKQEAgLTI2Myw3ICsyNjIsNyBAQCBFeGNlcHRpb25Pcjx2b2lkPiBIVE1MVGV4dEZvcm1D
b250cm9sRWxlbWVudDo6c2V0UmFuZ2VUZXh0KGNvbnN0IFN0cmluZyYgcmVwbGFjZQogICAgIGlm
ICghcmVuZGVyZXIoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIAotICAgIHN1YnRyZWVIYXNDaGFu
Z2VkKCk7CisgICAgc2V0VmFsdWUodGV4dCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcjo6RGlzcGF0
Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpEb05vdFNldCk7CiAKICAg
ICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc2VsZWN0aW9uTW9kZSwgInNlbGVj
dCIpKSB7CiAgICAgICAgIG5ld1NlbGVjdGlvblN0YXJ0ID0gc3RhcnQ7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmgKaW5kZXggYWIzYWI2YWJi
ZWFlMDM4MzQ0NmI5Mjc4MzU5OWZiZGNmZTJjMzQyNS4uNTNiZmQ3MzlhOGY0NmM0NWRlN2ZjODdh
NzNiMTY0NTFkOWNmMjk4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4
dEZvcm1Db250cm9sRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRG
b3JtQ29udHJvbEVsZW1lbnQuaApAQCAtMzksNiArMzksNyBAQCBzdHJ1Y3QgU2ltcGxlUmFuZ2U7
CiBlbnVtIGNsYXNzIEF1dG9GaWxsQnV0dG9uVHlwZSA6IHVpbnQ4X3QgeyBOb25lLCBDcmVkZW50
aWFscywgQ29udGFjdHMsIFN0cm9uZ1Bhc3N3b3JkLCBDcmVkaXRDYXJkIH07CiBlbnVtIFRleHRG
aWVsZFNlbGVjdGlvbkRpcmVjdGlvbiB7IFNlbGVjdGlvbkhhc05vRGlyZWN0aW9uLCBTZWxlY3Rp
b25IYXNGb3J3YXJkRGlyZWN0aW9uLCBTZWxlY3Rpb25IYXNCYWNrd2FyZERpcmVjdGlvbiB9Owog
ZW51bSBUZXh0RmllbGRFdmVudEJlaGF2aW9yIHsgRGlzcGF0Y2hOb0V2ZW50LCBEaXNwYXRjaENo
YW5nZUV2ZW50LCBEaXNwYXRjaElucHV0QW5kQ2hhbmdlRXZlbnQgfTsKK2VudW0gVGV4dENvbnRy
b2xTZXRWYWx1ZVNlbGVjdGlvbiB7IFNldFNlbGVjdGlvblRvRW5kLCBEb05vdFNldCB9OwogCiBj
bGFzcyBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudCA6IHB1YmxpYyBIVE1MRm9ybUNvbnRyb2xF
bGVtZW50V2l0aFN0YXRlIHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKEhUTUxUZXh0Rm9y
bUNvbnRyb2xFbGVtZW50KTsKQEAgLTg4LDYgKzg5LDcgQEAgcHVibGljOgogCiAgICAgdmlydHVh
bCBTdHJpbmcgdmFsdWUoKSBjb25zdCA9IDA7CiAKKyAgICB2aXJ0dWFsIEV4Y2VwdGlvbk9yPHZv
aWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNw
YXRjaE5vRXZlbnQsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJvbFNl
dFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgPSAwOwogICAgIHZpcnR1YWwgUmVm
UHRyPFRleHRDb250cm9sSW5uZXJUZXh0RWxlbWVudD4gaW5uZXJUZXh0RWxlbWVudCgpIGNvbnN0
ID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0cjxUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQ+IGlu
bmVyVGV4dEVsZW1lbnRDcmVhdGluZ1NoYWRvd1N1YnRyZWVJZk5lZWRlZCgpID0gMDsKICAgICB2
aXJ0dWFsIFJlbmRlclN0eWxlIGNyZWF0ZUlubmVyVGV4dFN0eWxlKGNvbnN0IFJlbmRlclN0eWxl
JikgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuY3BwCmluZGV4IDA5Nzg3
YTdjNTI4MWY2YzRiMzk2YWY4MWEzOGYwYjU2MzZmYmUzMzEuLmFmNTNkYThlMjVhNGQ2OTgzYzYy
YjZhNTFiN2ExYmU4Y2ZmYWRlY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlk
ZGVuSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlw
ZS5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgYm9vbCBIaWRkZW5JbnB1dFR5cGU6OnN0b3Jlc1ZhbHVl
U2VwYXJhdGVGcm9tQXR0cmlidXRlKCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLXZvaWQgSGlk
ZGVuSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29s
LCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQordm9pZCBIaWRkZW5JbnB1dFR5cGU6OnNldFZhbHVl
KGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZp
b3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQo
KSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZh
bHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IaWRkZW5JbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBl
LmgKaW5kZXggOTVlZDBjMWQ3YzAwNDI5ZjVhMWMxZGNkZTY1NzgxZjJkMzUxNzQwMy4uMzQwN2Ri
YzRiNThmY2NlNWE1MDc5YmE2YTJjZTNjOWRhNWNkYzRjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hp
ZGRlbklucHV0VHlwZS5oCkBAIC00OCw3ICs0OCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCByZW5k
ZXJlcklzTmVlZGVkKCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzdG9yZXNWYWx1ZVNlcGFyYXRlRnJv
bUF0dHJpYnV0ZSgpIG92ZXJyaWRlOwogICAgIGJvb2wgc2hvdWxkUmVzcGVjdEhlaWdodEFuZFdp
ZHRoQXR0cmlidXRlcygpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5n
JiwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRW
YWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29u
dHJvbFNldFZhbHVlU2VsZWN0aW9uKSBvdmVycmlkZTsKICAgICBib29sIGFwcGVuZEZvcm1EYXRh
KERPTUZvcm1EYXRhJikgY29uc3Qgb3ZlcnJpZGU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlw
ZS5jcHAKaW5kZXggNzRlMGRkZWIxOGMwYjYwMjBlODVjOTE0MjFhMTRiNjJmYjdkZDllYy4uYzMw
ZDFkZTA3M2JkYjU5MzNiOGMzOTIzYTY4ZTNjMjZlYWRhY2E4ZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5w
dXRUeXBlLmNwcApAQCAtNzIxLDcgKzcyMSw3IEBAIGJvb2wgSW5wdXRUeXBlOjpzdG9yZXNWYWx1
ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgSW5w
dXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVl
Q2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBJbnB1
dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVD
aGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9s
U2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVu
dCgpLT5zZXRWYWx1ZUludGVybmFsKHNhbml0aXplZFZhbHVlLCBldmVudEJlaGF2aW9yKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0lucHV0VHlwZS5oCmluZGV4IDgxMmQ1ODhiNmVkOGQwMzg5MmM0YmIzZDNkY2YwZWYx
MGY2ZTY4ZGMuLjE5MjRiMzcxNmI0YjMxYWM0M2ViZTFiOTk5MTU2OGM4YTMzOGIzODMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9JbnB1dFR5cGUuaApAQCAtMzQxLDcgKzM0MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIGJvb2wgc2hvdWxkU2VuZENoYW5nZUV2ZW50QWZ0ZXJDaGVja2VkQ2hhbmdlZCgpOwogICAg
IHZpcnR1YWwgYm9vbCBjYW5TZXRWYWx1ZShjb25zdCBTdHJpbmcmKTsKICAgICB2aXJ0dWFsIGJv
b2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKTsKLSAgICB2aXJ0dWFsIHZvaWQg
c2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IpOworICAgIHZpcnR1YWwgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29s
IHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1
ZVNlbGVjdGlvbik7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFJlc2V0T25Eb2N1bWVudEFjdGl2
YXRpb24oKTsKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUmVzcGVjdExpc3RBdHRyaWJ1dGUoKTsK
ICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUmVzcGVjdEhlaWdodEFuZFdpZHRoQXR0cmlidXRlcygp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwCmluZGV4IDMwZmJhODk0YTlm
YjFiNDI1Yjg5YWM0ZjEzOWE2NGZjNWQ2MDExMDMuLjU3NDNkNDYzNzBmYzgxZjVlNDdhOTIzZWY3
MjQ1YjZmYjE2ZjZjNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5w
dXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlwZS5jcHAK
QEAgLTk0LDEyICs5NCwxMiBAQCBjb25zdCBBdG9tU3RyaW5nJiBOdW1iZXJJbnB1dFR5cGU6OmZv
cm1Db250cm9sVHlwZSgpIGNvbnN0CiAgICAgcmV0dXJuIElucHV0VHlwZU5hbWVzOjpudW1iZXIo
KTsKIH0KIAotdm9pZCBOdW1iZXJJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2Fu
aXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2
ZW50QmVoYXZpb3IpCit2b2lkIE51bWJlcklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5n
JiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZp
b3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24p
CiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgaWYgKCF2YWx1ZUNoYW5nZWQgJiYgc2Fu
aXRpemVkVmFsdWUuaXNFbXB0eSgpICYmICFlbGVtZW50KCktPmlubmVyVGV4dFZhbHVlKCkuaXNF
bXB0eSgpKQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1ZSgpOwotICAgIFRleHRGaWVsZElu
cHV0VHlwZTo6c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhh
dmlvcik7CisgICAgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwg
dmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yLCBzZWxlY3Rpb24pOwogfQogCiBkb3VibGUgTnVt
YmVySW5wdXRUeXBlOjp2YWx1ZUFzRG91YmxlKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJl
cklucHV0VHlwZS5oCmluZGV4IDJmYzBlZDY5ZjQzYzY2N2Y4YzY0ZDU4YjZlNTk5Yjg4ZWU3NmRk
ZWQuLjg1M2U0ZDU4ZWRhNmM5Mjg3NGNhMWQwNGY0MjViNTU1ZmI3YzgwYjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuaApAQCAtNDIsNyArNDIsNyBAQCBwdWJsaWM6CiAKIHBy
aXZhdGU6CiAgICAgY29uc3QgQXRvbVN0cmluZyYgZm9ybUNvbnRyb2xUeXBlKCkgY29uc3QgZmlu
YWw7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBT
dHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENv
bnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAgZG91YmxlIHZhbHVlQXNEb3VibGUo
KSBjb25zdCBmaW5hbDsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRWYWx1ZUFzRG91YmxlKGRv
dWJsZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgY29uc3QgZmluYWw7CiAgICAgRXhjZXB0aW9u
T3I8dm9pZD4gc2V0VmFsdWVBc0RlY2ltYWwoY29uc3QgRGVjaW1hbCYsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IpIGNvbnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNw
cAppbmRleCBmMDZiZDU1OWIwMjc0YjA2NzVlYTRhZjc3NjdmODI1NWQ3NmJiMTQ2Li45YjVlMTBj
OWYxNjVjMDNiMWM5NmZlZjk1N2Y1NGZiM2JiNzZmMDRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1Jh
bmdlSW5wdXRUeXBlLmNwcApAQCAtMzQ1LDkgKzM0NSw5IEBAIHZvaWQgUmFuZ2VJbnB1dFR5cGU6
OmF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkKICAgICBJbnB1dFR5
cGU6OmF0dHJpYnV0ZUNoYW5nZWQobmFtZSk7CiB9CiAKLXZvaWQgUmFuZ2VJbnB1dFR5cGU6OnNl
dFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRF
dmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IpCit2b2lkIFJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1
ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRC
ZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVj
dGlvbikKIHsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2
ZW50QmVoYXZpb3IpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVlQ2hhbmdl
ZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAogICAgIGlmICghdmFsdWVDaGFuZ2VkKQog
ICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5w
dXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmgKaW5kZXggMTBm
ZDNhNzJlN2Q2ZDBiMDE3ZWY2YmIyYjRiOTU1MDQ4YzAxNTlhMy4uODRjN2IzZWQ2MjMwMGQ0MWVi
NDJlNGMzNTdiYmM3NGVhOWM1M2I4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUu
aApAQCAtNTcsNyArNTcsNyBAQCBwcml2YXRlOgogICAgIFN0cmluZyBzZXJpYWxpemUoY29uc3Qg
RGVjaW1hbCYpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2Vu
ZE1vdXNlRXZlbnRzKSBmaW5hbDsKICAgICB2b2lkIGF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVh
bGlmaWVkTmFtZSYpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQg
c2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIFN0cmlu
ZyBmYWxsYmFja1ZhbHVlKCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUo
Y29uc3QgU3RyaW5nJiBwcm9wb3NlZFZhbHVlKSBjb25zdCBmaW5hbDsKICAgICBib29sIHNob3Vs
ZFJlc3BlY3RMaXN0QXR0cmlidXRlKCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRG
aWVsZElucHV0VHlwZS5jcHAKaW5kZXggMzcwNTZlNDVlYjFhNzVjMTRmZDQzZTY1NmYxMzE0OWZh
NTFmMDMwNC4uMDM0NmZjYjM1ZDEwMDk0YmY2OGQ5MDJlMTE3YjdmYmY1ZjEwYjQ0YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcApAQCAtMTI3LDcgKzEyNyw3
IEBAIGJvb2wgVGV4dEZpZWxkSW5wdXRUeXBlOjp2YWx1ZU1pc3NpbmcoY29uc3QgU3RyaW5nJiB2
YWx1ZSkgY29uc3QKICAgICByZXR1cm4gIWVsZW1lbnQoKS0+aXNEaXNhYmxlZE9yUmVhZE9ubHko
KSAmJiBlbGVtZW50KCktPmlzUmVxdWlyZWQoKSAmJiB2YWx1ZS5pc0VtcHR5KCk7CiB9CiAKLXZv
aWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZh
bHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2
aW9yKQordm9pZCBUZXh0RmllbGRJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2Fu
aXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2
ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewog
ICAgIEFTU0VSVChlbGVtZW50KCkpOwogCkBAIC0xMzcsMTggKzEzNywyMCBAQCB2b2lkIFRleHRG
aWVsZElucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9v
bCB2YWx1ZUNoYW5nZQogCiAgICAgLy8gV2UgZG9uJ3QgYXNrIElucHV0VHlwZTo6c2V0VmFsdWUg
dG8gZGlzcGF0Y2ggZXZlbnRzIGJlY2F1c2UKICAgICAvLyBUZXh0RmllbGRJbnB1dFR5cGUgZGlz
cGF0Y2hlcyBldmVudHMgZGlmZmVyZW50IHdheSBmcm9tIElucHV0VHlwZS4KLSAgICBJbnB1dFR5
cGU6OnNldFZhbHVlKHNhbml0aXplZFZhbHVlLCB2YWx1ZUNoYW5nZWQsIERpc3BhdGNoTm9FdmVu
dCk7CisgICAgSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2Vk
LCBEaXNwYXRjaE5vRXZlbnQsIHNlbGVjdGlvbik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKTsKIAotICAgIHVu
c2lnbmVkIG1heCA9IHZpc2libGVWYWx1ZSgpLmxlbmd0aCgpOwotICAgIGlmIChpbnB1dC0+Zm9j
dXNlZCgpKQotICAgICAgICBpbnB1dC0+c2V0U2VsZWN0aW9uUmFuZ2UobWF4LCBtYXgpOwotICAg
IGVsc2UKLSAgICAgICAgaW5wdXQtPmNhY2hlU2VsZWN0aW9uSW5SZXNwb25zZVRvU2V0VmFsdWUo
bWF4KTsKKyAgICBpZiAoc2VsZWN0aW9uID09IFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb246
OlNldFNlbGVjdGlvblRvRW5kKSB7CisgICAgICAgIHVuc2lnbmVkIG1heCA9IHZpc2libGVWYWx1
ZSgpLmxlbmd0aCgpOworICAgICAgICBpZiAoaW5wdXQtPmZvY3VzZWQoKSkKKyAgICAgICAgICAg
IGlucHV0LT5zZXRTZWxlY3Rpb25SYW5nZShtYXgsIG1heCk7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIGlucHV0LT5jYWNoZVNlbGVjdGlvbkluUmVzcG9uc2VUb1NldFZhbHVlKG1heCk7Cisg
ICAgfQogCiAgICAgc3dpdGNoIChldmVudEJlaGF2aW9yKSB7CiAgICAgY2FzZSBEaXNwYXRjaENo
YW5nZUV2ZW50OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1
dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKaW5kZXgg
NGUxYmIxNTRjNWE3YjU2MWNiNTQ0ZmUyZDZmZmI4N2YwMmFjOWUzYS4uOTVlYjQ2MjVlZmI5NmNm
YmRhZDc0NGRjMjM0ZTA5Yzc0M2JhMWI0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9UZXh0RmllbGRJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVs
ZElucHV0VHlwZS5oCkBAIC03OCw3ICs3OCw3IEBAIHByb3RlY3RlZDoKICAgICBib29sIHN1cHBv
cnRzUmVhZE9ubHkoKSBjb25zdCBmaW5hbDsKICAgICB2b2lkIGhhbmRsZUZvY3VzRXZlbnQoTm9k
ZSogb2xkRm9jdXNlZE5vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKICAgICB2b2lkIGhhbmRs
ZUJsdXJFdmVudCgpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIG92ZXJyaWRlOwogICAg
IHZvaWQgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKSBmaW5hbDsKICAgICBTdHJpbmcgc2FuaXRpemVW
YWx1ZShjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsKICAgICBib29sIHZhbHVlTWlzc2lu
Zyhjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CmluZGV4IDM4ODNhOTA2YTA2ZDE4ZjY1ZGU4ODk3YTYzNzU2MWU4YmEwOTJhNGYuLmE4OWJkNTNi
ZWM4Zjk2M2MzMGY3NDgyOTYyNThjZTYzOWYwZDExZDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIyLTAzLTA5ICBaaXJhbiBTdW4gIDx6c3VuQGln
YWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVjdGlvbl0gRml4ZXMgc2VsZWN0aW9uIHJhbmdlIHNl
dHRpbmdzIGZvciBURVhUQVJFQQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVXBkYXRlIHRlc3QgZXhwZWN0YXRpb25zIGFzIHNvbWUgc3VidGVzdHMgYXJl
IG5vdyBwYXNzaW5nLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGlj
cy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRm
aWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0
aW9uL3NlbGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24v
c2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi90
ZXh0YXJlYS1zZWxlY3Rpb24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQ6CisKIDIwMjItMDMt
MDEgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW3dlYi1h
bmltYXRpb25zXSB3ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvZ2V0QW5pbWF0
aW9ucy1pZnJhbWUuaHRtbCBpcyBhIHVuaXF1ZSBmYWlsdXJlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1z
L3RleHRmaWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9y
bXMvdGV4dGZpZWxkc2VsZWN0aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0CmluZGV4
IDM2ZjU3ZGI3NzgxNWVlZTc0NzVlOTcwMmM5OTA1Zjg0ZDZmNGJjYjUuLjRjYTBkM2RkZmFmOTVl
ZDRmN2FhN2ZlNjI4OTczOGYyNjc2NzMxYTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxk
c2VsZWN0aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4
dGZpZWxkc2VsZWN0aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0CkBAIC0yLDcgKzIs
NyBAQAogCiBQQVNTIERlZmF1bHQgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBmb3Ig
W29iamVjdCBIVE1MVGV4dEFyZWFFbGVtZW50XQogUEFTUyBzZWxlY3Rpb25TdGFydCBhbmQgc2Vs
ZWN0aW9uRW5kIGRvIG5vdCBjaGFuZ2Ugd2hlbiBzYW1lIHZhbHVlIHNldCBhZ2FpbiBmb3IgW29i
amVjdCBIVE1MVGV4dEFyZWFFbGVtZW50XQotRkFJTCBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0
aW9uRW5kIGNoYW5nZSB3aGVuIHZhbHVlIGNoYW5nZWQgdG8gdXBwZXIgY2FzZSBmb3IgW29iamVj
dCBIVE1MVGV4dEFyZWFFbGVtZW50XSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAzIGJ1dCBnb3Qg
MAorUEFTUyBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0aW9uRW5kIGNoYW5nZSB3aGVuIHZhbHVl
IGNoYW5nZWQgdG8gdXBwZXIgY2FzZSBmb3IgW29iamVjdCBIVE1MVGV4dEFyZWFFbGVtZW50XQog
UEFTUyBEZWZhdWx0IHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgZm9yIFtvYmplY3Qg
SFRNTElucHV0RWxlbWVudF0KIFBBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBk
byBub3QgY2hhbmdlIHdoZW4gc2FtZSB2YWx1ZSBzZXQgYWdhaW4gZm9yIFtvYmplY3QgSFRNTElu
cHV0RWxlbWVudF0KIFBBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBjaGFuZ2Ug
d2hlbiB2YWx1ZSBjaGFuZ2VkIHRvIHVwcGVyIGNhc2UgZm9yIFtvYmplY3QgSFRNTElucHV0RWxl
bWVudF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1z
dGFydC1lbmQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0
aW9uLXN0YXJ0LWVuZC1leHBlY3RlZC50eHQKaW5kZXggNjhkZmM3NTNiNWIyZTBkOTA2ODkzNjRj
ZGMzNTFjMzgxYWYwNWFkYi4uZjFmYjVhMDFiODcxNmE0MDIzNTFiMWU0NGY1MGViMjE5NTNlNWU2
OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0
LWVuZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0
aW9uLXN0YXJ0LWVuZC1leHBlY3RlZC50eHQKQEAgLTYsMTggKzYsMTggQEAgUEFTUyBJbml0aWFs
IC52YWx1ZSBzZXQgb24gaW5wdXQtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0
byBlbmQgb2YgdmEKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlucHV0LW5vdC1hcHBlbmRl
ZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFs
IC52YWx1ZSBzZXQgb24gaW5wdXQtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVj
dGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5w
dXQtbm90LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBl
bmQgb2YgdmFsdWUKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVk
IHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFy
ZWEtbm90LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVl
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1
ZSBzZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlv
blN0YXJ0IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290
IDAKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLW5vdC1hcHBlbmRlZC1wcmVm
b2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24g
dGV4dGFyZWEtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFs
dWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLW5vdC1hcHBlbmRlZCBzaG91
bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1
ZSBzZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlv
blN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFy
ZWEtbm90LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBl
bmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkIHNo
b3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1
ZSBzZXQgb24gaW5wdXQtbm90LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVu
ZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5wdXQtYXBwZW5kZWQtcHJl
Zm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5p
dGlhbCAudmFsdWUgc2V0IG9uIGlucHV0LW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBz
ZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQg
b24gdGV4dGFyZWEtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZh
bHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52
YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5k
IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZB
SUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3VzZWQgc2hv
dWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90
LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZh
bHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAorUEFTUyBJbml0aWFsIC52
YWx1ZSBzZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8g
ZW5kIG9mIHZhbHVlCitQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBw
ZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCitQQVNTIEluaXRp
YWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQg
c2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24g
dGV4dGFyZWEtbm90LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQg
dG8gZW5kIG9mIHZhbHVlCiBQQVNTIG9uc2VsZWN0IHNob3VsZCBmaXJlIHdoZW4gc2VsZWN0aW9u
U3RhcnQgaXMgY2hhbmdlZAogTk9UUlVOIG9uc2VsZWN0IHNob3VsZCBmaXJlIHdoZW4gc2VsZWN0
aW9uU3RhcnQgaXMgY2hhbmdlZCBvbiBpbnB1dC1hcHBlbmRlZAogTk9UUlVOIG9uc2VsZWN0IHNo
b3VsZCBmaXJlIHdoZW4gc2VsZWN0aW9uU3RhcnQgaXMgY2hhbmdlZCBvbiBpbnB1dC1ub3QtYXBw
ZW5kZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1z
dGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24v
c2VsZWN0aW9uLXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQKaW5kZXggOTQzMzk2MTFkOTVk
MjE1ZGMzOTNiNTQyNGZiOGI3N2I0ZDg3NzJiYS4uODJkNWViMzY1NTYzZmExOWFmNWM2YWM3OTY2
YjJlNWExMDE1ODkxYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2Vs
ZWN0aW9uLXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0Zmll
bGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQKQEAgLTEs
MTIgKzEsMTIgQEAKIAogUEFTUyBTZXR0aW5nIGRlZmF1bHRWYWx1ZSBpbiBhIHRleHRhcmVhIHNo
b3VsZCBOT1QgbW92ZSB0aGUgY3Vyc29yIHRvIHRoZSBlbmQKLUZBSUwgU2V0dGluZyBkZWZhdWx0
VmFsdWUgaW4gYSB0ZXh0YXJlYSB3aXRoIGEgdmFsdWUgc2hvdWxkIE5PVCBtYWtlIGFueSBkaWZm
ZXJlbmNlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDYgYnV0IGdvdCAwCitQQVNTIFNldHRpbmcg
ZGVmYXVsdFZhbHVlIGluIGEgdGV4dGFyZWEgd2l0aCBhIHZhbHVlIHNob3VsZCBOT1QgbWFrZSBh
bnkgZGlmZmVyZW5jZQogUEFTUyBTZXR0aW5nIHRleHRDb250ZW50IGluIGEgdGV4dGFyZWEgc2hv
dWxkIE5PVCBtb3ZlIHNlbGVjdGlvbntTdGFydCxFbmR9IHRvIHRoZSBlbmQKIFBBU1MgQWRkaW5n
IGNoaWxkcmVuIHRvIGEgdGV4dGFyZWEgc2hvdWxkIE5PVCBtb3ZlIHNlbGVjdGlvbntTdGFydCxF
bmR9IHRvIHRoZSBlbmQKIFBBU1MgUmVtb3ZpbmcgY2hpbGRyZW4gZnJvbSBhIHRleHRhcmVhIHNo
b3VsZCBOT1QgdXBkYXRlIHNlbGVjdGlvbntTdGFydCxFbmR9CiBQQVNTIFNldHRpbmcgdGhlIHNh
bWUgdmFsdWUgKHdpdGggZGlmZmVyZW50IG5ld2xpbmVzKSBpbiBhIHRleHRhcmVhIHNob3VsZCBO
T1QgdXBkYXRlIHNlbGVjdGlvbntTdGFydCxFbmR9CiBGQUlMIFJlbW92aW5nIGNoaWxkIG5vZGVz
IGluIG5vbi1kaXJ0eSB0ZXh0YXJlYSBzaG91bGQgbWFrZSBzZWxlY3Rpb257U3RhcnQsRW5kfSAw
IGFzc2VydF9lcXVhbHM6IHNlbGVjdGlvblN0YXJ0IGFmdGVyIG5vZGUgcmVtb3ZhbCBleHBlY3Rl
ZCAwIGJ1dCBnb3QgMwotRkFJTCBTZXR0aW5nIHZhbHVlIHRvIGEgc2hvcnRlciBzdHJpbmcgdGhh
biBkZWZhdWx0VmFsdWUgc2hvdWxkIGNvcnJlY3QgdGhlIGN1cnNvciBwb3NpdGlvbiBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAyIGJ1dCBnb3QgMworUEFTUyBTZXR0aW5nIHZhbHVlIHRvIGEgc2hv
cnRlciBzdHJpbmcgdGhhbiBkZWZhdWx0VmFsdWUgc2hvdWxkIGNvcnJlY3QgdGhlIGN1cnNvciBw
b3NpdGlvbgogUEFTUyBTaG9ydGVuaW5nIHZhbHVlIGJ5IHR1cm5pbmcgdGhlIGlucHV0IHR5cGUg
aW50byAndXJsJyBzaG91bGQgY29ycmVjdCBzZWxlY3Rpb257U3RhcnQsRW5kfQogRkFJTCBTaG9y
dGVuaW5nIHZhbHVlIGJ5IHR1cm5pbmcgdGhlIGlucHV0IHR5cGUgaW50byAnY29sb3InIGFuZCBi
YWNrIHRvICd0ZXh0JyBzaG91bGQgY29ycmVjdCBzZWxlY3Rpb257U3RhcnQsRW5kfSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgOQogUEFTUyBSZXNldHRpbmcgYSB2YWx1ZSB0byBh
IHNob3J0ZXIgc3RyaW5nIHRoYW4gZGVmYXVsdFZhbHVlIHNob3VsZCBjb3JyZWN0IHRoZSBjdXJz
b3IgcG9zaXRpb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVj
dGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRz
ZWxlY3Rpb24vc2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1leHBlY3RlZC50eHQKaW5kZXgg
ODQxMGE4MjliYmZhYTg4YzE5Nzk5MzE0MWYwYzIwN2YwNDUwM2NjNC4uYjE5MDc0ZWQ5ODQ4NzUw
NmRiODc4ZjcyYmNlMTQ0NDQ3YjMwNGE3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRz
ZWxlY3Rpb24vc2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGlj
cy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1l
eHBlY3RlZC50eHQKQEAgLTExLDYgKzExLDYgQEAgUEFTUyB2YWx1ZSBkaXJ0eSBmbGFnIGJlaGF2
aW9yIGFmdGVyIHNldFJhbmdlVGV4dCBvbiBmb2N1c2VkIHRoZW4gYmx1cnJlZCB0ZXh0YXIKIFBB
U1MgdmFsdWUgZGlydHkgZmxhZyBiZWhhdmlvciBhZnRlciBzZXRSYW5nZVRleHQgb24gZm9jdXNl
ZCB0aGVuIGJsdXJyZWQgaW5wdXQKIFBBU1Mgc2VsZWN0aW9uIGlzIGNvbGxhcHNlZCB0byB0aGUg
ZW5kIGFmdGVyIGNoYW5naW5nIHZhbHVlcyBvbiBpbnB1dAogUEFTUyBzZWxlY3Rpb24gaXMgbm90
IGNvbGxhcHNlZCB0byB0aGUgZW5kIHdoZW4gdmFsdWUgaXMgc2V0IHRvIGl0cyBleGlzdGluZyB2
YWx1ZSBvbiBpbnB1dAotRkFJTCBzZWxlY3Rpb24gaXMgY29sbGFwc2VkIHRvIHRoZSBlbmQgYWZ0
ZXIgY2hhbmdpbmcgdmFsdWVzIG9uIHRleHRhcmVhIGFzc2VydF9lcXVhbHM6IGVsZW1lbnQuc2Vs
ZWN0aW9uU3RhcnQgc2hvdWxkIGJlIHZhbHVlLmxlbmd0aCBleHBlY3RlZCAzIGJ1dCBnb3QgMAor
UEFTUyBzZWxlY3Rpb24gaXMgY29sbGFwc2VkIHRvIHRoZSBlbmQgYWZ0ZXIgY2hhbmdpbmcgdmFs
dWVzIG9uIHRleHRhcmVhCiBQQVNTIHNlbGVjdGlvbiBpcyBub3QgY29sbGFwc2VkIHRvIHRoZSBl
bmQgd2hlbiB2YWx1ZSBpcyBzZXQgdG8gaXRzIGV4aXN0aW5nIHZhbHVlIG9uIHRleHRhcmVhCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlv
bi13aGlsZS1wYXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9u
L3RleHRhcmVhLXNlbGVjdGlvbi13aGlsZS1wYXJzaW5nLWV4cGVjdGVkLnR4dAppbmRleCBlMDZk
MDczMmMzZjJlMGIxMDE5YzA3MjMxMTY0YTE5NjVjZDYwNTI3Li40NzYzNTlhODQyMjhjMTVkMmE0
Yjg4MzhmYzE5NTFjYjUxNzlhNTc0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVj
dGlvbi90ZXh0YXJlYS1zZWxlY3Rpb24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGlj
cy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNp
bmctZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCiAKLUZBSUwgVmFsdWUgc2V0dGVyIHdo
aWxlIHBhcnNpbmcgdGV4dGFyZWEgY2hpbGRyZW4gc2hvdWxkIG1vdmUgc2VsZWN0aW9ue1N0YXJ0
LEVuZH0gdG8gdGhlIGVuZCBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAzIGJ1dCBnb3QgMAorUEFT
UyBWYWx1ZSBzZXR0ZXIgd2hpbGUgcGFyc2luZyB0ZXh0YXJlYSBjaGlsZHJlbiBzaG91bGQgbW92
ZSBzZWxlY3Rpb257U3RhcnQsRW5kfSB0byB0aGUgZW5kCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454269</attachid>
            <date>2022-03-09 10:44:14 -0800</date>
            <delta_ts>2022-03-10 01:06:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237641-20220309184413.patch</filename>
            <type>text/plain</type>
            <size>42103</size>
            <attacher>zsun</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWI2NDJlMWFiZjhiYmZk
NDUzYTNmZTk2ODIzNjM4NjY5NDVmMGFjNy4uMTc2MTQ1NmQ1ZDhjYjdmYzAzOWY4NTYyOTRlZDg5
MzQ0ZThiOTQ0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIyLTAzLTA5ICBaaXJh
biBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVjdGlvbl0gRml4ZXMgc2Vs
ZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBDTCBpcyB0byBmaXggdGhlIHNldHRpbmdz
IG9mIFNlbGVjdGlvblN0YXJ0L1NlbGVjdGlvbkVuZCBmb3IgVEVYVEFSRUEgZm9yIG5vbi1mb2N1
c2VkIEVsZW1lbnQuIEl0IHNldHMgdGhlCisgICAgICAgIGNhcmV0IHRvIHRoZSBlbmQgb2YgdGhl
IHRleHQgdmFsdWUgZXhjZXB0IGZvciBpbml0aWFsaXppbmcgaW4gbW9zdCBjYXNlcy4gRm9yIHRo
ZSBjYXNlIG9mIHVwZGF0aW5nIGRlZmF1bHRWYWx1ZQorICAgICAgICBmb3IgYSBub24tZGlydHkg
VEVYVEFSRUEsIHdlIHNob3VsZCBmb2xsb3dpbmcgdGhlIGNsYW1waW5nIHN0ZXBzIGFzIHBlciBz
cGVjIGFuZCBpdCB3aWxsIGJlIGFkZHJlc3NlZCBpbiBhIAorICAgICAgICBmb2xsb3ctdXAgcGF0
Y2guICAgICAgICAKKworICAgICAgICBUaGlzIENMIHJlZmVycyBhbmQgaW1wb3J0cyBwYXJ0IG9m
IHRoZSBjaGFuZ2VzIGluIGNocm9taXVtIENMIGF0CisgICAgICAgIGh0dHBzOi8vY29kZXJldmll
dy5jaHJvbWl1bS5vcmcvMjczNTYzMzAwNgorCisgICAgICAgIFRoaXMgQ0wgYWxzbyBpbnRyb2R1
Y2VzIGEgdW5pZmllZCBzZXRWYWx1ZSgpIEFQSSBpbiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IGZv
ciBIVE1MVGV4dEFyZWFFbGVtZW50IGFuZCBIVE1MSW5wdXRFbGVtZW50LgorCisgICAgICAgICog
aHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VCdXR0
b25JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0Jhc2VCdXR0b25JbnB1dFR5
cGUuaDoKKyAgICAgICAgKiBodG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QmFzZUNoZWNrYWJsZUlucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAq
IGh0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VEYXRlQW5kVGltZUlu
cHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6QmFzZURhdGVBbmRUaW1lSW5w
dXRUeXBlOjpkaWRDaGFuZ2VWYWx1ZUZyb21Db250cm9sKToKKyAgICAgICAgKiBodG1sL0Jhc2VE
YXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvQ29sb3JJbnB1dFR5cGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q29sb3JJbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAg
KiBodG1sL0NvbG9ySW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAg
KiBodG1sL0ZpbGVJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c2V0VmFsdWUpOgorICAg
ICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRB
cmVhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojpj
aGlsZHJlbkNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6
cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1
ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZUNvbW1v
bik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojpjb3B5Tm9uQXR0cmli
dXRlUHJvcGVydGllc0Zyb21FbGVtZW50KToKKyAgICAgICAgKiBodG1sL0hUTUxUZXh0QXJlYUVs
ZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50OjpzZXRSYW5nZVRl
eHQpOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAg
ICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaWRkZW5J
bnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5oOgor
ICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlw
ZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRt
bC9OdW1iZXJJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TnVtYmVySW5wdXRUeXBl
OjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9OdW1iZXJJbnB1dFR5cGUuaDoKKyAgICAgICAg
KiBodG1sL1JhbmdlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlSW5wdXRU
eXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9SYW5nZUlucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRG
aWVsZElucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRU
eXBlLmg6CisKIDIwMjItMDMtMDEgIEFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFtJRkNdW0ludGVncmF0aW9uXSBJbmxpbmVJdGVyYXRvcjo6Qm94OjpyZWN0KCkgcmV0
dXJucyB0aGUgdW5mbGlwcGVkIHZpc3VhbCByZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
QnV0dG9uSW5wdXRUeXBlLmNwcAppbmRleCA0ZTczOTUzODEyZDQwODRjODVkYmUxMDVjN2E5MzU2
OTVmNzBjY2ZlLi44ODIxMGMzMzlmNTU1OTZkNjEyMWY1MDY1Mjg1MGQ0NjAwZGMxODMxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUJ1dHRvbklucHV0VHlwZS5jcHAKQEAgLTYyLDcgKzYy
LDcgQEAgYm9vbCBCYXNlQnV0dG9uSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0
dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEJhc2VCdXR0b25JbnB1dFR5
cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVs
ZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0
IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRl
eHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAg
ICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0
ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
QnV0dG9uSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5
cGUuaAppbmRleCBlNDE0NjM0MWIwNGY0MTk4Y2IwNzA2YjlhNjUyZDY2OTE2YzAyZGMyLi40Zjhl
OGExYWUzZjNmNDYxODY5ZjY2YzFlNmYyYjdhOWIxYzM2OTI1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaApAQCAtNDQsNyArNDQsNyBAQCBwcml2YXRlOgogICAg
IGJvb2wgYXBwZW5kRm9ybURhdGEoRE9NRm9ybURhdGEmKSBjb25zdCBvdmVycmlkZTsKICAgICBS
ZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlSW5wdXRSZW5kZXJlcihSZW5kZXJTdHlsZSYm
KSBvdmVycmlkZTsKICAgICBib29sIHN0b3Jlc1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0Rmll
bGRFdmVudEJlaGF2aW9yKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmlu
ZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxl
Y3Rpb24pIG92ZXJyaWRlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5jcHAKaW5kZXggMDY1Y2VjMGU2
NWJjNzI3NDNhMmZkMjFmODZjM2M1ODhkYWVhMTEzZi4uOGE1NGNhMDUzNTRhOTMwMjc1OWFiNzVi
YTNhMTc1NWY3YjlmNDU1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hl
Y2thYmxlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2Fi
bGVJbnB1dFR5cGUuY3BwCkBAIC0xMDgsNyArMTA4LDcgQEAgYm9vbCBCYXNlQ2hlY2thYmxlSW5w
dXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZh
bHNlOwogfQogCi12b2lkIEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0
cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lk
IEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVk
VmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVT
ZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRB
dHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBl
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAppbmRleCBi
NDlhNzdhNDE1OTI1MWIxODUwMTQ5ZTEwMDdjZGY0MDA2YzA5YTI0Li42YmY1ZDUxZmFiMmE2ZGI5
ODMwYzIzZTZmYjFiMjhlZGEwNTdjZTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VD
aGVja2FibGVJbnB1dFR5cGUuaApAQCAtNTAsNyArNTAsNyBAQCBwcml2YXRlOgogICAgIGJvb2wg
YWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBvdmVycmlkZTsKICAgICBTdHJp
bmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgc3RvcmVzVmFsdWVT
ZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0
IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwg
VGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5k
VGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlu
cHV0VHlwZS5jcHAKaW5kZXggY2Y3Y2MzMWYzNDJmN2I1YTc0NzQ3NWU0Y2NhMTg5YmQxM2E3NDEz
ZS4uMzc1NTI4MWQxODJlM2FhYmUxOGM3OWQ5ZDM1MTM2OWFjNzM1NGU4MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcApAQCAtMjc3LDkg
KzI3Nyw5IEBAIGJvb2wgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpzaG91bGRIYXZlTWlsbGlz
ZWNvbmRGaWVsZChjb25zdCBEYXRlQ29tcG9uZW50cyYKICAgICAgICAgfHwgIXN0ZXBSYW5nZS5z
dGVwKCkucmVtYWluZGVyKG1zZWNQZXJTZWNvbmQpLmlzWmVybygpOwogfQogCi12b2lkIEJhc2VE
YXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2
YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQg
QmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBi
b29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBU
ZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKLSAgICBJbnB1dFR5cGU6
OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IpOworICAgIElucHV0
VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0
aW9uKTsKICAgICBpZiAodmFsdWVDaGFuZ2VkKQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1
ZSgpOwogfQpAQCAtNDcwLDcgKzQ3MCw3IEBAIHZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBl
OjpkaWRCbHVyRnJvbUNvbnRyb2woKQogdm9pZCBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmRp
ZENoYW5nZVZhbHVlRnJvbUNvbnRyb2woKQogewogICAgIFN0cmluZyB2YWx1ZSA9IHNhbml0aXpl
VmFsdWUobV9kYXRlVGltZUVkaXRFbGVtZW50LT52YWx1ZSgpKTsKLSAgICBJbnB1dFR5cGU6OnNl
dFZhbHVlKHZhbHVlLCB2YWx1ZSAhPSBlbGVtZW50KCktPnZhbHVlKCksIERpc3BhdGNoSW5wdXRB
bmRDaGFuZ2VFdmVudCk7CisgICAgSW5wdXRUeXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWUgIT0g
ZWxlbWVudCgpLT52YWx1ZSgpLCBEaXNwYXRjaElucHV0QW5kQ2hhbmdlRXZlbnQsIERvTm90U2V0
KTsKIAogICAgIERhdGVUaW1lQ2hvb3NlclBhcmFtZXRlcnMgcGFyYW1ldGVyczsKICAgICBpZiAo
IXNldHVwRGF0ZVRpbWVDaG9vc2VyUGFyYW1ldGVycyhwYXJhbWV0ZXJzKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oCmluZGV4IGI2ODVmOGUxOWZm
YjQ4ODU1ZjRlMmZlODJlM2IxMjFiZTQ5M2E3M2QuLjZiZjZkNmI5MDNiNGFkNzY1OTZiYmFjY2U1
NGQxN2QzN2EzMWU4Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRp
bWVJbnB1dFR5cGUuaApAQCAtMTAxLDcgKzEwMSw3IEBAIHByaXZhdGU6CiAgICAgLy8gSW5wdXRU
eXBlIGZ1bmN0aW9uczoKICAgICBTdHJpbmcgdmlzaWJsZVZhbHVlKCkgY29uc3QgZmluYWw7CiAg
ICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZp
ZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcm
LCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xT
ZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAgV2FsbFRpbWUgdmFsdWVBc0RhdGUoKSBjb25z
dCBvdmVycmlkZTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRWYWx1ZUFzRGF0ZShXYWxsVGlt
ZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91YmxlIHZhbHVlQXNEb3VibGUoKSBjb25zdCBmaW5h
bDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKaW5kZXggZjExOWU4MmIzNzdk
ZGI0MWZjZDllOGI5M2FhN2ZjZWZhMGY1ZGMwZC4uMTcwZmJjNTE0MDE2YTQ0MTQ4ODQwOTYwNWM5
OGQ3MjRlNWI1NmZmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0
VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKQEAg
LTE1Myw5ICsxNTMsOSBAQCB2b2lkIENvbG9ySW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVl
KCkKICAgICB1cGRhdGVDb2xvclN3YXRjaCgpOwogfQogCi12b2lkIENvbG9ySW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxk
RXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBDb2xvcklucHV0VHlwZTo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxl
Y3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBl
dmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5n
ZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkK
ICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklu
cHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oCmluZGV4IDEx
NmRhYjExN2I5NzU5YjIzNjE3MzcwZWQ0ODM3OWE4Yzc3YTMzNzkuLmM4ZmVhNmEzMjYyMDY0YTgy
ZDQ1ZjNkZTFlMDBiYjM1Y2MyNWI0ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Q29sb3JJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBl
LmgKQEAgLTYzLDcgKzYzLDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgp
IGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBzYW5pdGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYpIGNv
bnN0IGZpbmFsOwogICAgIHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZSgpIGZpbmFsOwotICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFs
dWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgYXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFs
aWZpZWROYW1lJikgZmluYWw7CiAgICAgdm9pZCBoYW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50
JikgZmluYWw7CiAgICAgdm9pZCBkZXRhY2goKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJ
bnB1dFR5cGUuY3BwCmluZGV4IGVhN2RmYWNmNjJiNzgyNTU5ZDY1ZTNiZmI2YjNkMGNjZGZlMjUy
MWMuLmI2NWI4NzBlYTcwNTQ1MGIzYzZlOTNkNmMzMmJiZmJmOWU3MGM0NjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApAQCAtMjUzLDcgKzI1Myw3IEBAIGJvb2wgRmlsZUlu
cHV0VHlwZTo6Z2V0VHlwZVNwZWNpZmljVmFsdWUoU3RyaW5nJiB2YWx1ZSkKICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAotdm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBi
b29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQordm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1
ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJv
bFNldFZhbHVlU2VsZWN0aW9uKQogewogICAgIC8vIEZJWE1FOiBTaG91bGQgd2UgY2xlYXIgdGhl
IGZpbGUgbGlzdCwgb3IgcmVwbGFjZSBpdCB3aXRoIGEgbmV3IGVtcHR5IG9uZSBoZXJlPyBUaGlz
IGlzIG9ic2VydmFibGUgZnJvbSBKYXZhU2NyaXB0IHRocm91Z2ggY3VzdG9tIHByb3BlcnRpZXMu
CiAgICAgbV9maWxlTGlzdC0+Y2xlYXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvRmlsZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgK
aW5kZXggOTE1N2IxNzkwMjkyMDBmM2M0MzA4OGNiNmE0YzZiZTU1ZTAwMDIzYS4uZWUxMDg0OTc4
M2ZhZmVkMmFhOWM3OGI2MDA2YmJkZWRlZTY1NDQxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5w
dXRUeXBlLmgKQEAgLTY5LDcgKzY5LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZGlzcGxheVN0
cmluZygpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgY2FuU2V0VmFsdWUoY29uc3QgU3RyaW5nJikg
ZmluYWw7CiAgICAgYm9vbCBnZXRUeXBlU3BlY2lmaWNWYWx1ZShTdHJpbmcmKSBmaW5hbDsgLy8g
Q2hlY2tlZCBmaXJzdCwgYmVmb3JlIGludGVybmFsIHN0b3JhZ2Ugb3IgdGhlIHZhbHVlIGF0dHJp
YnV0ZS4KLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2Vk
LCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBmaW5hbDsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0
IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0
Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBmaW5hbDsKIAogI2lmIEVOQUJMRShEUkFHX1NVUFBP
UlQpCiAgICAgYm9vbCByZWNlaXZlRHJvcHBlZEZpbGVzV2l0aEltYWdlVHJhbnNjb2RpbmcoY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhdGhzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVs
ZW1lbnQuY3BwCmluZGV4IGJjZDZjOGEwZWI3MDk5MjI2OTU0YWJkN2Q5ZTBkNTRiZWI1N2RlZWEu
LjIyZTZkZjYzZjNkYThkMDgyOTExYWZkMWUxNTdmMzI0YmNhNzBmNjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApAQCAtMTA2NCw3ICsxMDY0LDcgQEAgdm9pZCBI
VE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZUZvclVzZXIoY29uc3QgU3RyaW5nJiB2YWx1ZSkKICAg
ICBzZXRWYWx1ZSh2YWx1ZSwgRGlzcGF0Y2hDaGFuZ2VFdmVudCk7CiB9CiAKLUV4Y2VwdGlvbk9y
PHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRl
eHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK0V4Y2VwdGlvbk9yPHZvaWQ+IEhU
TUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBz
ZWxlY3Rpb24pCiB7CiAgICAgaWYgKGlzRmlsZVVwbG9hZCgpICYmICF2YWx1ZS5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciB9OwpAQCAtMTA3
OSw3ICsxMDc5LDcgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTElucHV0RWxlbWVudDo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnQKIAogICAgIHNldExhc3RDaGFu
Z2VXYXNOb3RVc2VyRWRpdCgpOwogICAgIHNldEZvcm1Db250cm9sVmFsdWVNYXRjaGVzUmVuZGVy
ZXIoZmFsc2UpOwotICAgIG1faW5wdXRUeXBlLT5zZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFs
dWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBtX2lucHV0VHlwZS0+c2V0VmFsdWUoc2Fu
aXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAog
ICAgIGJvb2wgd2FzTW9kaWZpZWRQcm9ncmFtbWF0aWNhbGx5ID0gZXZlbnRCZWhhdmlvciA9PSBE
aXNwYXRjaE5vRXZlbnQ7CiAgICAgaWYgKHdhc01vZGlmaWVkUHJvZ3JhbW1hdGljYWxseSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKaW5kZXggY2M1MGZlZTMzYzk4ZDFmODky
YTQ3ZTRjMDUxNDEyOTNmZjEzMWFhMC4uODUwNGZiNjI2OTZjN2YwMWUxODliMmQ3MzE5Zjc4MDBj
NTljODU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKQEAgLTE3MSw3
ICsxNzEsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRUeXBlKGNvbnN0
IEF0b21TdHJpbmcmKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0
IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNv
bnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQpOwor
ICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmlu
ZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQsIFRleHRDb250cm9s
U2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxl
Y3Rpb25Ub0VuZCkgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRWYWx1ZUZvclVz
ZXIoY29uc3QgU3RyaW5nJik7CiAgICAgLy8gQ2hlY2tzIGlmIHRoZSBzcGVjaWZpZWQgc3RyaW5n
IHdvdWxkIGJlIGEgdmFsaWQgdmFsdWUuCiAgICAgLy8gV2Ugc2hvdWxkIG5vdCBjYWxsIHRoaXMg
Zm9yIHR5cGVzIHdpdGggbm8gc3RyaW5nIHZhbHVlIHN1Y2ggYXMgQ0hFQ0tCT1ggYW5kIFJBRElP
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAKaW5kZXggYWE1
MmYwMGRiNWRjMDZkZDMwNDgxNmUxMzMxNTVhNzM5YTRhMTIzYi4uMDUxMWU1ODkyOWYwOTdiM2I3
MWQzOTVmOWI2YTM0NTk1YjMxZTU4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MVGV4dEFyZWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0
QXJlYUVsZW1lbnQuY3BwCkBAIC0xMzYsNyArMTM2LDcgQEAgdm9pZCBIVE1MVGV4dEFyZWFFbGVt
ZW50OjpjaGlsZHJlbkNoYW5nZWQoY29uc3QgQ2hpbGRDaGFuZ2UmIGNoYW5nZSkKICAgICBpZiAo
bV9pc0RpcnR5KQogICAgICAgICBzZXRJbm5lclRleHRWYWx1ZSh2YWx1ZSgpKTsKICAgICBlbHNl
Ci0gICAgICAgIHNldE5vbkRpcnR5VmFsdWUoZGVmYXVsdFZhbHVlKCkpOworICAgICAgICBzZXRO
b25EaXJ0eVZhbHVlKGRlZmF1bHRWYWx1ZSgpLCAgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bjo6RG9Ob3RTZXQpOwogfQogCiBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhhc1ByZXNlbnRh
dGlvbmFsSGludHNGb3JBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkgY29uc3QK
QEAgLTI0MSw3ICsyNDEsNyBAQCBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OmFwcGVuZEZvcm1E
YXRhKERPTUZvcm1EYXRhJiBmb3JtRGF0YSkKIAogdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50Ojpy
ZXNldCgpCiB7Ci0gICAgc2V0Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUoKSk7CisgICAgc2V0
Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUoKSwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bjo6U2V0U2VsZWN0aW9uVG9FbmQpOwogfQogCiBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhh
c0N1c3RvbUZvY3VzTG9naWMoKSBjb25zdApAQCAtMzc0LDIxICszNzQsMjIgQEAgU3RyaW5nIEhU
TUxUZXh0QXJlYUVsZW1lbnQ6OnZhbHVlKCkgY29uc3QKICAgICByZXR1cm4gbV92YWx1ZTsKIH0K
IAotdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVl
KQorRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUoY29uc3Qg
U3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0
Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKLSAgICBzZXRWYWx1ZUNvbW1v
bih2YWx1ZSk7CisgICAgc2V0VmFsdWVDb21tb24odmFsdWUsIGV2ZW50QmVoYXZpb3IsIHNlbGVj
dGlvbik7CiAgICAgbV9pc0RpcnR5ID0gdHJ1ZTsKICAgICB1cGRhdGVWYWxpZGl0eSgpOworICAg
IHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlW
YWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQordm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRO
b25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRDb250cm9sU2V0VmFsdWVTZWxl
Y3Rpb24gc2VsZWN0aW9uKQogewotICAgIHNldFZhbHVlQ29tbW9uKHZhbHVlKTsKKyAgICBzZXRW
YWx1ZUNvbW1vbih2YWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcjo6RGlzcGF0Y2hOb0V2ZW50
LCBzZWxlY3Rpb24pOwogICAgIG1faXNEaXJ0eSA9IGZhbHNlOwogICAgIHVwZGF0ZVZhbGlkaXR5
KCk7CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3Qg
U3RyaW5nJiBuZXdWYWx1ZSkKK3ZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21t
b24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENv
bnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7CiAgICAgbV93YXNNb2RpZmllZEJ5
VXNlciA9IGZhbHNlOwogICAgIC8vIENvZGUgZWxzZXdoZXJlIG5vcm1hbGl6ZXMgbGluZSBlbmRp
bmdzIGFkZGVkIGJ5IHRoZSB1c2VyIHZpYSB0aGUga2V5Ym9hcmQgb3IgcGFzdGluZy4KQEAgLTQw
OSwxMCArNDEwLDEzIEBAIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24o
Y29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKICAgICBpbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlKCk7
CiAgICAgc2V0Rm9ybUNvbnRyb2xWYWx1ZU1hdGNoZXNSZW5kZXJlcih0cnVlKTsKIAotICAgIC8v
IFNldCB0aGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0aGUgdGV4dCB2YWx1ZS4KICAgICBpZiAoZG9j
dW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09IHRoaXMpIHsKICAgICAgICAgdW5zaWduZWQgZW5k
T2ZTdHJpbmcgPSBtX3ZhbHVlLmxlbmd0aCgpOwogICAgICAgICBzZXRTZWxlY3Rpb25SYW5nZShl
bmRPZlN0cmluZywgZW5kT2ZTdHJpbmcpOworICAgIH0gIGVsc2UgaWYgKHNlbGVjdGlvbiA9PSBU
ZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAg
ICAvLyBVcGRhdGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0aGUgdGV4dCB2YWx1ZSBleGNlcHQgZm9y
IGluaXRpYWxpemUuCisgICAgICAgIHVuc2lnbmVkIGVuZG9mU3RyaW5nID0gbV92YWx1ZS5sZW5n
dGgoKTsKKyAgICAgICAgY2FjaGVTZWxlY3Rpb24oZW5kb2ZTdHJpbmcsIGVuZG9mU3RyaW5nLCBT
ZWxlY3Rpb25IYXNOb0RpcmVjdGlvbik7CiAgICAgfQogCiAgICAgc2V0VGV4dEFzT2ZMYXN0Rm9y
bUNvbnRyb2xDaGFuZ2VFdmVudChub3JtYWxpemVkVmFsdWUpOwpAQCAtNTc2LDcgKzU4MCw3IEBA
IHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6Y29weU5vbkF0dHJpYnV0ZVByb3BlcnRpZXNGcm9t
RWxlbWVudChjb25zdCBFbGVtZW50JiBzCiB7CiAgICAgYXV0byYgc291cmNlRWxlbWVudCA9IGRv
d25jYXN0PEhUTUxUZXh0QXJlYUVsZW1lbnQ+KHNvdXJjZSk7CiAKLSAgICBzZXRWYWx1ZUNvbW1v
bihzb3VyY2VFbGVtZW50LnZhbHVlKCkpOworICAgIHNldFZhbHVlQ29tbW9uKHNvdXJjZUVsZW1l
bnQudmFsdWUoKSwgRGlzcGF0Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
OjpTZXRTZWxlY3Rpb25Ub0VuZCk7CiAgICAgbV9pc0RpcnR5ID0gc291cmNlRWxlbWVudC5tX2lz
RGlydHk7CiAgICAgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQ
cm9wZXJ0aWVzRnJvbUVsZW1lbnQoc291cmNlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxU
ZXh0QXJlYUVsZW1lbnQuaAppbmRleCAwMDc3ZjAyNTMyNmQ3OGYwMjFkYWMwY2IyNzFkOWM5Njhm
Y2NiYWRlLi5mMWZjYTc4OWM2NzJiZDc3MjkzMmJhYjQ1NmQzMDNmZDgzYWZiZTU3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaApAQCAtNDQsNyArNDQsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBzaG91bGRXcmFwVGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fd3JhcCAh
PSBOb1dyYXA7IH0KIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZp
bmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJik7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0VmFsdWUoY29uc3QgU3RyaW5n
JiwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciA9IERpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xT
ZXRWYWx1ZVNlbGVjdGlvbiA9IFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb246OlNldFNlbGVj
dGlvblRvRW5kKSBmaW5hbDsKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGVmYXVsdFZhbHVl
KCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXREZWZhdWx0VmFsdWUoY29uc3Qg
U3RyaW5nJik7CiAgICAgaW50IHRleHRMZW5ndGgoKSBjb25zdCB7IHJldHVybiB2YWx1ZSgpLmxl
bmd0aCgpOyB9CkBAIC04Myw4ICs4Myw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYW5kbGVCZWZv
cmVUZXh0SW5zZXJ0ZWRFdmVudChCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudCYpIGNvbnN0OwogICAg
IHN0YXRpYyBTdHJpbmcgc2FuaXRpemVVc2VySW5wdXRWYWx1ZShjb25zdCBTdHJpbmcmLCB1bnNp
Z25lZCBtYXhMZW5ndGgpOwogICAgIHZvaWQgdXBkYXRlVmFsdWUoKSBjb25zdDsKLSAgICB2b2lk
IHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5nJik7Ci0gICAgdm9pZCBzZXRWYWx1ZUNvbW1v
bihjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5n
JiwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbik7CisgICAgdm9pZCBzZXRWYWx1ZUNvbW1v
bihjb25zdCBTdHJpbmcmLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZh
bHVlU2VsZWN0aW9uKTsKIAogICAgIGJvb2wgc3VwcG9ydHNQbGFjZWhvbGRlcigpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICBIVE1MRWxlbWVudCogcGxhY2Vob2xkZXJFbGVtZW50
KCkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0
Rm9ybUNvbnRyb2xFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3Jt
Q29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDliZDVlZGI0MzQxZDA5NzQ4YjU2YWNiYWM5MDljNGQw
YTUyYmQ1NzYuLjIwNWNjNjUxNjkxMDQwMjkzOTM4MzI1MjcyZjc0MDc0M2YxNWU4NjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3Bw
CkBAIC0yNTQsNyArMjU0LDYgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRGb3JtQ29udHJv
bEVsZW1lbnQ6OnNldFJhbmdlVGV4dChjb25zdCBTdHJpbmcmIHJlcGxhY2UKICAgICBlbHNlCiAg
ICAgICAgIHRleHQuaW5zZXJ0KHJlcGxhY2VtZW50LCBzdGFydCk7CiAKLSAgICBzZXRJbm5lclRl
eHRWYWx1ZSh0ZXh0KTsKIAogICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZG4ndCBuZWVkIHN5bmNo
cm9ub3VzIHN0eWxlIHVwZGF0ZSwgb3IgcmVuZGVyZXIgYXQgYWxsLgogICAgIGlmICghcmVuZGVy
ZXIoKSkKQEAgLTI2Myw3ICsyNjIsNyBAQCBFeGNlcHRpb25Pcjx2b2lkPiBIVE1MVGV4dEZvcm1D
b250cm9sRWxlbWVudDo6c2V0UmFuZ2VUZXh0KGNvbnN0IFN0cmluZyYgcmVwbGFjZQogICAgIGlm
ICghcmVuZGVyZXIoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIAotICAgIHN1YnRyZWVIYXNDaGFu
Z2VkKCk7CisgICAgc2V0VmFsdWUodGV4dCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcjo6RGlzcGF0
Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpEb05vdFNldCk7CiAKICAg
ICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc2VsZWN0aW9uTW9kZSwgInNlbGVj
dCIpKSB7CiAgICAgICAgIG5ld1NlbGVjdGlvblN0YXJ0ID0gc3RhcnQ7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmgKaW5kZXggYWIzYWI2YWJi
ZWFlMDM4MzQ0NmI5Mjc4MzU5OWZiZGNmZTJjMzQyNS4uNTNiZmQ3MzlhOGY0NmM0NWRlN2ZjODdh
NzNiMTY0NTFkOWNmMjk4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4
dEZvcm1Db250cm9sRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRG
b3JtQ29udHJvbEVsZW1lbnQuaApAQCAtMzksNiArMzksNyBAQCBzdHJ1Y3QgU2ltcGxlUmFuZ2U7
CiBlbnVtIGNsYXNzIEF1dG9GaWxsQnV0dG9uVHlwZSA6IHVpbnQ4X3QgeyBOb25lLCBDcmVkZW50
aWFscywgQ29udGFjdHMsIFN0cm9uZ1Bhc3N3b3JkLCBDcmVkaXRDYXJkIH07CiBlbnVtIFRleHRG
aWVsZFNlbGVjdGlvbkRpcmVjdGlvbiB7IFNlbGVjdGlvbkhhc05vRGlyZWN0aW9uLCBTZWxlY3Rp
b25IYXNGb3J3YXJkRGlyZWN0aW9uLCBTZWxlY3Rpb25IYXNCYWNrd2FyZERpcmVjdGlvbiB9Owog
ZW51bSBUZXh0RmllbGRFdmVudEJlaGF2aW9yIHsgRGlzcGF0Y2hOb0V2ZW50LCBEaXNwYXRjaENo
YW5nZUV2ZW50LCBEaXNwYXRjaElucHV0QW5kQ2hhbmdlRXZlbnQgfTsKK2VudW0gVGV4dENvbnRy
b2xTZXRWYWx1ZVNlbGVjdGlvbiB7IFNldFNlbGVjdGlvblRvRW5kLCBEb05vdFNldCB9OwogCiBj
bGFzcyBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudCA6IHB1YmxpYyBIVE1MRm9ybUNvbnRyb2xF
bGVtZW50V2l0aFN0YXRlIHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKEhUTUxUZXh0Rm9y
bUNvbnRyb2xFbGVtZW50KTsKQEAgLTg4LDYgKzg5LDcgQEAgcHVibGljOgogCiAgICAgdmlydHVh
bCBTdHJpbmcgdmFsdWUoKSBjb25zdCA9IDA7CiAKKyAgICB2aXJ0dWFsIEV4Y2VwdGlvbk9yPHZv
aWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNw
YXRjaE5vRXZlbnQsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJvbFNl
dFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgPSAwOwogICAgIHZpcnR1YWwgUmVm
UHRyPFRleHRDb250cm9sSW5uZXJUZXh0RWxlbWVudD4gaW5uZXJUZXh0RWxlbWVudCgpIGNvbnN0
ID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0cjxUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQ+IGlu
bmVyVGV4dEVsZW1lbnRDcmVhdGluZ1NoYWRvd1N1YnRyZWVJZk5lZWRlZCgpID0gMDsKICAgICB2
aXJ0dWFsIFJlbmRlclN0eWxlIGNyZWF0ZUlubmVyVGV4dFN0eWxlKGNvbnN0IFJlbmRlclN0eWxl
JikgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuY3BwCmluZGV4IDA5Nzg3
YTdjNTI4MWY2YzRiMzk2YWY4MWEzOGYwYjU2MzZmYmUzMzEuLmFmNTNkYThlMjVhNGQ2OTgzYzYy
YjZhNTFiN2ExYmU4Y2ZmYWRlY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlk
ZGVuSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlw
ZS5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgYm9vbCBIaWRkZW5JbnB1dFR5cGU6OnN0b3Jlc1ZhbHVl
U2VwYXJhdGVGcm9tQXR0cmlidXRlKCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLXZvaWQgSGlk
ZGVuSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29s
LCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQordm9pZCBIaWRkZW5JbnB1dFR5cGU6OnNldFZhbHVl
KGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZp
b3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQo
KSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZh
bHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IaWRkZW5JbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBl
LmgKaW5kZXggOTVlZDBjMWQ3YzAwNDI5ZjVhMWMxZGNkZTY1NzgxZjJkMzUxNzQwMy4uMzQwN2Ri
YzRiNThmY2NlNWE1MDc5YmE2YTJjZTNjOWRhNWNkYzRjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hp
ZGRlbklucHV0VHlwZS5oCkBAIC00OCw3ICs0OCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCByZW5k
ZXJlcklzTmVlZGVkKCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzdG9yZXNWYWx1ZVNlcGFyYXRlRnJv
bUF0dHJpYnV0ZSgpIG92ZXJyaWRlOwogICAgIGJvb2wgc2hvdWxkUmVzcGVjdEhlaWdodEFuZFdp
ZHRoQXR0cmlidXRlcygpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5n
JiwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRW
YWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29u
dHJvbFNldFZhbHVlU2VsZWN0aW9uKSBvdmVycmlkZTsKICAgICBib29sIGFwcGVuZEZvcm1EYXRh
KERPTUZvcm1EYXRhJikgY29uc3Qgb3ZlcnJpZGU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlw
ZS5jcHAKaW5kZXggNzRlMGRkZWIxOGMwYjYwMjBlODVjOTE0MjFhMTRiNjJmYjdkZDllYy4uYzMw
ZDFkZTA3M2JkYjU5MzNiOGMzOTIzYTY4ZTNjMjZlYWRhY2E4ZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5w
dXRUeXBlLmNwcApAQCAtNzIxLDcgKzcyMSw3IEBAIGJvb2wgSW5wdXRUeXBlOjpzdG9yZXNWYWx1
ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgSW5w
dXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVl
Q2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBJbnB1
dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVD
aGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9s
U2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVu
dCgpLT5zZXRWYWx1ZUludGVybmFsKHNhbml0aXplZFZhbHVlLCBldmVudEJlaGF2aW9yKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0lucHV0VHlwZS5oCmluZGV4IDgxMmQ1ODhiNmVkOGQwMzg5MmM0YmIzZDNkY2YwZWYx
MGY2ZTY4ZGMuLjE5MjRiMzcxNmI0YjMxYWM0M2ViZTFiOTk5MTU2OGM4YTMzOGIzODMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9JbnB1dFR5cGUuaApAQCAtMzQxLDcgKzM0MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIGJvb2wgc2hvdWxkU2VuZENoYW5nZUV2ZW50QWZ0ZXJDaGVja2VkQ2hhbmdlZCgpOwogICAg
IHZpcnR1YWwgYm9vbCBjYW5TZXRWYWx1ZShjb25zdCBTdHJpbmcmKTsKICAgICB2aXJ0dWFsIGJv
b2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKTsKLSAgICB2aXJ0dWFsIHZvaWQg
c2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IpOworICAgIHZpcnR1YWwgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29s
IHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1
ZVNlbGVjdGlvbik7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFJlc2V0T25Eb2N1bWVudEFjdGl2
YXRpb24oKTsKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUmVzcGVjdExpc3RBdHRyaWJ1dGUoKTsK
ICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUmVzcGVjdEhlaWdodEFuZFdpZHRoQXR0cmlidXRlcygp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwCmluZGV4IDMwZmJhODk0YTlm
YjFiNDI1Yjg5YWM0ZjEzOWE2NGZjNWQ2MDExMDMuLjU3NDNkNDYzNzBmYzgxZjVlNDdhOTIzZWY3
MjQ1YjZmYjE2ZjZjNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5w
dXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlwZS5jcHAK
QEAgLTk0LDEyICs5NCwxMiBAQCBjb25zdCBBdG9tU3RyaW5nJiBOdW1iZXJJbnB1dFR5cGU6OmZv
cm1Db250cm9sVHlwZSgpIGNvbnN0CiAgICAgcmV0dXJuIElucHV0VHlwZU5hbWVzOjpudW1iZXIo
KTsKIH0KIAotdm9pZCBOdW1iZXJJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2Fu
aXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2
ZW50QmVoYXZpb3IpCit2b2lkIE51bWJlcklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5n
JiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZp
b3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24p
CiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgaWYgKCF2YWx1ZUNoYW5nZWQgJiYgc2Fu
aXRpemVkVmFsdWUuaXNFbXB0eSgpICYmICFlbGVtZW50KCktPmlubmVyVGV4dFZhbHVlKCkuaXNF
bXB0eSgpKQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1ZSgpOwotICAgIFRleHRGaWVsZElu
cHV0VHlwZTo6c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhh
dmlvcik7CisgICAgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwg
dmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yLCBzZWxlY3Rpb24pOwogfQogCiBkb3VibGUgTnVt
YmVySW5wdXRUeXBlOjp2YWx1ZUFzRG91YmxlKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJl
cklucHV0VHlwZS5oCmluZGV4IDJmYzBlZDY5ZjQzYzY2N2Y4YzY0ZDU4YjZlNTk5Yjg4ZWU3NmRk
ZWQuLjg1M2U0ZDU4ZWRhNmM5Mjg3NGNhMWQwNGY0MjViNTU1ZmI3YzgwYjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuaApAQCAtNDIsNyArNDIsNyBAQCBwdWJsaWM6CiAKIHBy
aXZhdGU6CiAgICAgY29uc3QgQXRvbVN0cmluZyYgZm9ybUNvbnRyb2xUeXBlKCkgY29uc3QgZmlu
YWw7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBT
dHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENv
bnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAgZG91YmxlIHZhbHVlQXNEb3VibGUo
KSBjb25zdCBmaW5hbDsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRWYWx1ZUFzRG91YmxlKGRv
dWJsZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgY29uc3QgZmluYWw7CiAgICAgRXhjZXB0aW9u
T3I8dm9pZD4gc2V0VmFsdWVBc0RlY2ltYWwoY29uc3QgRGVjaW1hbCYsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IpIGNvbnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNw
cAppbmRleCBmMDZiZDU1OWIwMjc0YjA2NzVlYTRhZjc3NjdmODI1NWQ3NmJiMTQ2Li45YjVlMTBj
OWYxNjVjMDNiMWM5NmZlZjk1N2Y1NGZiM2JiNzZmMDRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1Jh
bmdlSW5wdXRUeXBlLmNwcApAQCAtMzQ1LDkgKzM0NSw5IEBAIHZvaWQgUmFuZ2VJbnB1dFR5cGU6
OmF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkKICAgICBJbnB1dFR5
cGU6OmF0dHJpYnV0ZUNoYW5nZWQobmFtZSk7CiB9CiAKLXZvaWQgUmFuZ2VJbnB1dFR5cGU6OnNl
dFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRF
dmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IpCit2b2lkIFJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1
ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRC
ZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVj
dGlvbikKIHsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2
ZW50QmVoYXZpb3IpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVlQ2hhbmdl
ZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAogICAgIGlmICghdmFsdWVDaGFuZ2VkKQog
ICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5w
dXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmgKaW5kZXggMTBm
ZDNhNzJlN2Q2ZDBiMDE3ZWY2YmIyYjRiOTU1MDQ4YzAxNTlhMy4uODRjN2IzZWQ2MjMwMGQ0MWVi
NDJlNGMzNTdiYmM3NGVhOWM1M2I4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUu
aApAQCAtNTcsNyArNTcsNyBAQCBwcml2YXRlOgogICAgIFN0cmluZyBzZXJpYWxpemUoY29uc3Qg
RGVjaW1hbCYpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2Vu
ZE1vdXNlRXZlbnRzKSBmaW5hbDsKICAgICB2b2lkIGF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVh
bGlmaWVkTmFtZSYpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQg
c2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIFN0cmlu
ZyBmYWxsYmFja1ZhbHVlKCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUo
Y29uc3QgU3RyaW5nJiBwcm9wb3NlZFZhbHVlKSBjb25zdCBmaW5hbDsKICAgICBib29sIHNob3Vs
ZFJlc3BlY3RMaXN0QXR0cmlidXRlKCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRG
aWVsZElucHV0VHlwZS5jcHAKaW5kZXggMzcwNTZlNDVlYjFhNzVjMTRmZDQzZTY1NmYxMzE0OWZh
NTFmMDMwNC4uMDM0NmZjYjM1ZDEwMDk0YmY2OGQ5MDJlMTE3YjdmYmY1ZjEwYjQ0YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcApAQCAtMTI3LDcgKzEyNyw3
IEBAIGJvb2wgVGV4dEZpZWxkSW5wdXRUeXBlOjp2YWx1ZU1pc3NpbmcoY29uc3QgU3RyaW5nJiB2
YWx1ZSkgY29uc3QKICAgICByZXR1cm4gIWVsZW1lbnQoKS0+aXNEaXNhYmxlZE9yUmVhZE9ubHko
KSAmJiBlbGVtZW50KCktPmlzUmVxdWlyZWQoKSAmJiB2YWx1ZS5pc0VtcHR5KCk7CiB9CiAKLXZv
aWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZh
bHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2
aW9yKQordm9pZCBUZXh0RmllbGRJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2Fu
aXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2
ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewog
ICAgIEFTU0VSVChlbGVtZW50KCkpOwogCkBAIC0xMzcsMTggKzEzNywyMCBAQCB2b2lkIFRleHRG
aWVsZElucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9v
bCB2YWx1ZUNoYW5nZQogCiAgICAgLy8gV2UgZG9uJ3QgYXNrIElucHV0VHlwZTo6c2V0VmFsdWUg
dG8gZGlzcGF0Y2ggZXZlbnRzIGJlY2F1c2UKICAgICAvLyBUZXh0RmllbGRJbnB1dFR5cGUgZGlz
cGF0Y2hlcyBldmVudHMgZGlmZmVyZW50IHdheSBmcm9tIElucHV0VHlwZS4KLSAgICBJbnB1dFR5
cGU6OnNldFZhbHVlKHNhbml0aXplZFZhbHVlLCB2YWx1ZUNoYW5nZWQsIERpc3BhdGNoTm9FdmVu
dCk7CisgICAgSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2Vk
LCBEaXNwYXRjaE5vRXZlbnQsIHNlbGVjdGlvbik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKTsKIAotICAgIHVu
c2lnbmVkIG1heCA9IHZpc2libGVWYWx1ZSgpLmxlbmd0aCgpOwotICAgIGlmIChpbnB1dC0+Zm9j
dXNlZCgpKQotICAgICAgICBpbnB1dC0+c2V0U2VsZWN0aW9uUmFuZ2UobWF4LCBtYXgpOwotICAg
IGVsc2UKLSAgICAgICAgaW5wdXQtPmNhY2hlU2VsZWN0aW9uSW5SZXNwb25zZVRvU2V0VmFsdWUo
bWF4KTsKKyAgICBpZiAoc2VsZWN0aW9uID09IFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb246
OlNldFNlbGVjdGlvblRvRW5kKSB7CisgICAgICAgIHVuc2lnbmVkIG1heCA9IHZpc2libGVWYWx1
ZSgpLmxlbmd0aCgpOworICAgICAgICBpZiAoaW5wdXQtPmZvY3VzZWQoKSkKKyAgICAgICAgICAg
IGlucHV0LT5zZXRTZWxlY3Rpb25SYW5nZShtYXgsIG1heCk7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIGlucHV0LT5jYWNoZVNlbGVjdGlvbkluUmVzcG9uc2VUb1NldFZhbHVlKG1heCk7Cisg
ICAgfQogCiAgICAgc3dpdGNoIChldmVudEJlaGF2aW9yKSB7CiAgICAgY2FzZSBEaXNwYXRjaENo
YW5nZUV2ZW50OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1
dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKaW5kZXgg
NGUxYmIxNTRjNWE3YjU2MWNiNTQ0ZmUyZDZmZmI4N2YwMmFjOWUzYS4uOTVlYjQ2MjVlZmI5NmNm
YmRhZDc0NGRjMjM0ZTA5Yzc0M2JhMWI0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9UZXh0RmllbGRJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVs
ZElucHV0VHlwZS5oCkBAIC03OCw3ICs3OCw3IEBAIHByb3RlY3RlZDoKICAgICBib29sIHN1cHBv
cnRzUmVhZE9ubHkoKSBjb25zdCBmaW5hbDsKICAgICB2b2lkIGhhbmRsZUZvY3VzRXZlbnQoTm9k
ZSogb2xkRm9jdXNlZE5vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKICAgICB2b2lkIGhhbmRs
ZUJsdXJFdmVudCgpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIG92ZXJyaWRlOwogICAg
IHZvaWQgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKSBmaW5hbDsKICAgICBTdHJpbmcgc2FuaXRpemVW
YWx1ZShjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsKICAgICBib29sIHZhbHVlTWlzc2lu
Zyhjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzM2YxNDA2MjQxNzJjMjBlMzQz
M2FmMDVhYmZjOGRkZjRhYmYxZDQ0Li5kZWE1MmJiOWI2ZDQ0YmMxOTBmOTNkMWM0ZGJmYmU4Zjg3
MWJjYjU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjItMDMtMDkgIFppcmFuIFN1biAgPHpz
dW5AaWdhbGlhLmNvbT4KKworICAgICAgICBbU2VsZWN0aW9uXSBGaXhlcyBzZWxlY3Rpb24gcmFu
Z2Ugc2V0dGluZ3MgZm9yIFRFWFRBUkVBCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzc2NDEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBVcGRhdGVkIHR3byB0ZXN0cyBzaW5jZSBzZXRTZWxlY3Rpb25SYW5n
ZSBzaG91bGRuJ3QgY2hhbmdlIGZvY3VzLgorICAgICAgICBUaGlzIGlzIHRvIGJlIGluIGxpbmUg
d2l0aCB0aGUgYmVoYXZpb3IgaW4gY2hyb21pdW0uCisgICAgICAgICogZWRpdGluZy9wYXN0ZWJv
YXJkL3Bhc3RlLWludG8tdGV4dGFyZWEtd2l0aC1uZXctbGluZS5odG1sOgorICAgICAgICAqIGZh
c3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtdGV4dGFyZWEuaHRtbDoKKwogMjAyMi0wMy0wMSAg
Q2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtEZWJ1Z10gaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy91cmwvdG9hc2NpaS53aW5kb3cuaHRtbCBpcyBjcmFz
aGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggMzg4M2E5MDZhMDZkMThmNjVk
ZTg4OTdhNjM3NTYxZThiYTA5MmE0Zi4uNzg0ZTA5YjhkMjY3ODdkOWIzZTY0NTJkYmYxNTc0ZDUz
ZmRmYjUxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAK
KzIwMjItMDMtMDkgIFppcmFuIFN1biAgPHpzdW5AaWdhbGlhLmNvbT4KKworICAgICAgICBbU2Vs
ZWN0aW9uXSBGaXhlcyBzZWxlY3Rpb24gcmFuZ2Ugc2V0dGluZ3MgZm9yIFRFWFRBUkVBCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc2NDEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGluZyB0ZXN0
IGV4cGVjdGF0aW9ucyBhcyBzb21lIHN1Yi10ZXN0cyBhcmUgbm93IHBhc3NpbmcuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVj
dGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlv
bi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVu
ZC1leHRyYS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
c2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tdmFsdWUtaW50ZXJh
Y3Rpb25zLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
ZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGls
ZS1wYXJzaW5nLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMy0wMSAgQW50b2luZSBRdWludCAgPGdy
YW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBbd2ViLWFuaW1hdGlvbnNdIHdlYi1hbmltYXRp
b25zL2ludGVyZmFjZXMvQW5pbWF0YWJsZS9nZXRBbmltYXRpb25zLWlmcmFtZS5odG1sIGlzIGEg
dW5pcXVlIGZhaWx1cmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2Fy
ZC9wYXN0ZS1pbnRvLXRleHRhcmVhLXdpdGgtbmV3LWxpbmUuaHRtbCBiL0xheW91dFRlc3RzL2Vk
aXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1pbnRvLXRleHRhcmVhLXdpdGgtbmV3LWxpbmUuaHRtbApp
bmRleCA5MzliYjk3NjMxNzAyMWIzZThlZjI1NWQ2ZmYyYjljNzAyYmI2M2ViLi5lYzRkNTViNDM2
YWJhZDUxN2ExZmY0NGRkZTQ3MzAwN2IzYjdjNGE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9l
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtaW50by10ZXh0YXJlYS13aXRoLW5ldy1saW5lLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWludG8tdGV4dGFyZWEt
d2l0aC1uZXctbGluZS5odG1sCkBAIC0xMSw2ICsxMSw3IEBAIHRleHRhcmVhLnZhbHVlID0gIlxu
IjsKIHRleHRhcmVhLnJvd3MgPSAxMDsKIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGV4dGFy
ZWEpOwogdGV4dGFyZWEuZm9jdXMoKTsKK3RleHRhcmVhLnNldFNlbGVjdGlvblJhbmdlKDAsIDAp
Owogc2hvdWxkQmUoImRvY3VtZW50LmV4ZWNDb21tYW5kKCdJbnNlcnRIVE1MJywgZmFsc2UsICdm
aXJzdDxicj48YnI+dGhpcmQnKTsgdGV4dGFyZWEudmFsdWUiLCAiJ2ZpcnN0XFxuXFxudGhpcmRc
XG4nIik7CiAKIHZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vc25hdi10ZXh0YXJlYS5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vc25hdi10ZXh0YXJlYS5odG1sCmluZGV4
IDMzNjI3NjUwNDY2MjZkZDA3OWZhNzA5MWFhNjBlMjhlZGQyNmY4YzQuLjA5OTAwYWFkNjA5MWIy
N2M3OTM3Y2RmMTgyMzQ4NTc3ZGVkODljYTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
c3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtdGV4dGFyZWEuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LXRleHRhcmVhLmh0bWwKQEAgLTY1LDcgKzY1LDkg
QEAKICAgICAgIHRleHRhcmVhLnZhbHVlID0gImFiY1xuZCI7CiAKICAgICAgIC8vIHN0YXJ0aW5n
IHRoZSB0ZXN0IGl0c2VsZjogZ2V0IHRvIGEga25vd24gcGxhY2UuCi0gICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgic3RhcnQiKS5mb2N1cygpOworICAgICAgdGV4dGFyZWEuZm9jdXMoKTsK
KyAgICAgIHRleHRhcmVhLnNldFNlbGVjdGlvblJhbmdlKDAsIDApOworCiAKICAgICAgIGluaXRU
ZXN0KHJlc3VsdE1hcCwgdGVzdENvbXBsZXRlZCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jt
cy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zv
cm1zL3RleHRmaWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dAppbmRl
eCAzNmY1N2RiNzc4MTVlZWU3NDc1ZTk3MDJjOTkwNWY4NGQ2ZjRiY2I1Li40Y2EwZDNkZGZhZjk1
ZWQ0ZjdhYTdmZTYyODk3MzhmMjY3NjczMWExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVs
ZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3Rl
eHRmaWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dApAQCAtMiw3ICsy
LDcgQEAKIAogUEFTUyBEZWZhdWx0IHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgZm9y
IFtvYmplY3QgSFRNTFRleHRBcmVhRWxlbWVudF0KIFBBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNl
bGVjdGlvbkVuZCBkbyBub3QgY2hhbmdlIHdoZW4gc2FtZSB2YWx1ZSBzZXQgYWdhaW4gZm9yIFtv
YmplY3QgSFRNTFRleHRBcmVhRWxlbWVudF0KLUZBSUwgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVj
dGlvbkVuZCBjaGFuZ2Ugd2hlbiB2YWx1ZSBjaGFuZ2VkIHRvIHVwcGVyIGNhc2UgZm9yIFtvYmpl
Y3QgSFRNTFRleHRBcmVhRWxlbWVudF0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMyBidXQgZ290
IDAKK1BBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBjaGFuZ2Ugd2hlbiB2YWx1
ZSBjaGFuZ2VkIHRvIHVwcGVyIGNhc2UgZm9yIFtvYmplY3QgSFRNTFRleHRBcmVhRWxlbWVudF0K
IFBBU1MgRGVmYXVsdCBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0aW9uRW5kIGZvciBbb2JqZWN0
IEhUTUxJbnB1dEVsZW1lbnRdCiBQQVNTIHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQg
ZG8gbm90IGNoYW5nZSB3aGVuIHNhbWUgdmFsdWUgc2V0IGFnYWluIGZvciBbb2JqZWN0IEhUTUxJ
bnB1dEVsZW1lbnRdCiBQQVNTIHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgY2hhbmdl
IHdoZW4gdmFsdWUgY2hhbmdlZCB0byB1cHBlciBjYXNlIGZvciBbb2JqZWN0IEhUTUxJbnB1dEVs
ZW1lbnRdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24t
c3RhcnQtZW5kLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVj
dGlvbi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0CmluZGV4IDY4ZGZjNzUzYjViMmUwZDkwNjg5MzY0
Y2RjMzUxYzM4MWFmMDVhZGIuLmYxZmI1YTAxYjg3MTZhNDAyMzUxYjFlNDRmNTBlYjIxOTUzZTVl
NjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFy
dC1lbmQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVj
dGlvbi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0CkBAIC02LDE4ICs2LDE4IEBAIFBBU1MgSW5pdGlh
bCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQg
dG8gZW5kIG9mIHZhCiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5k
ZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlh
bCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxl
Y3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlu
cHV0LW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8g
ZW5kIG9mIHZhbHVlCi1GQUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRl
ZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRh
cmVhLW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1
ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFs
dWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rp
b25TdGFydCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdv
dCAwCi1GQUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJl
Zm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9u
IHRleHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZh
bHVlCitQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQgc2hv
dWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFs
dWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rp
b25TdGFydCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRh
cmVhLW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8g
ZW5kIG9mIHZhbHVlCiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1hcHBlbmRlZCBz
aG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFs
dWUgc2V0IG9uIGlucHV0LW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBl
bmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkLXBy
ZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCiBQQVNTIElu
aXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQg
c2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0
IG9uIHRleHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2
YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAu
dmFsdWUgc2V0IG9uIHRleHRhcmVhLW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVu
ZCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1G
QUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNo
b3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLW5v
dC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2
YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKK1BBU1MgSW5pdGlhbCAu
dmFsdWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRv
IGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90LWFw
cGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0
aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0
IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9u
IHRleHRhcmVhLW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5k
IHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBvbnNlbGVjdCBzaG91bGQgZmlyZSB3aGVuIHNlbGVjdGlv
blN0YXJ0IGlzIGNoYW5nZWQKIE5PVFJVTiBvbnNlbGVjdCBzaG91bGQgZmlyZSB3aGVuIHNlbGVj
dGlvblN0YXJ0IGlzIGNoYW5nZWQgb24gaW5wdXQtYXBwZW5kZWQKIE5PVFJVTiBvbnNlbGVjdCBz
aG91bGQgZmlyZSB3aGVuIHNlbGVjdGlvblN0YXJ0IGlzIGNoYW5nZWQgb24gaW5wdXQtbm90LWFw
cGVuZGVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24t
c3RhcnQtZW5kLWV4dHJhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9u
L3NlbGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CmluZGV4IDk0MzM5NjExZDk1
ZDIxNWRjMzkzYjU0MjRmYjhiNzdiNGQ4NzcyYmEuLjgyZDVlYjM2NTU2M2ZhMTlhZjVjNmFjNzk2
NmIyZTVhMTAxNTg5MWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3Nl
bGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZp
ZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CkBAIC0x
LDEyICsxLDEyIEBACiAKIFBBU1MgU2V0dGluZyBkZWZhdWx0VmFsdWUgaW4gYSB0ZXh0YXJlYSBz
aG91bGQgTk9UIG1vdmUgdGhlIGN1cnNvciB0byB0aGUgZW5kCi1GQUlMIFNldHRpbmcgZGVmYXVs
dFZhbHVlIGluIGEgdGV4dGFyZWEgd2l0aCBhIHZhbHVlIHNob3VsZCBOT1QgbWFrZSBhbnkgZGlm
ZmVyZW5jZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCA2IGJ1dCBnb3QgMAorUEFTUyBTZXR0aW5n
IGRlZmF1bHRWYWx1ZSBpbiBhIHRleHRhcmVhIHdpdGggYSB2YWx1ZSBzaG91bGQgTk9UIG1ha2Ug
YW55IGRpZmZlcmVuY2UKIFBBU1MgU2V0dGluZyB0ZXh0Q29udGVudCBpbiBhIHRleHRhcmVhIHNo
b3VsZCBOT1QgbW92ZSBzZWxlY3Rpb257U3RhcnQsRW5kfSB0byB0aGUgZW5kCiBQQVNTIEFkZGlu
ZyBjaGlsZHJlbiB0byBhIHRleHRhcmVhIHNob3VsZCBOT1QgbW92ZSBzZWxlY3Rpb257U3RhcnQs
RW5kfSB0byB0aGUgZW5kCiBQQVNTIFJlbW92aW5nIGNoaWxkcmVuIGZyb20gYSB0ZXh0YXJlYSBz
aG91bGQgTk9UIHVwZGF0ZSBzZWxlY3Rpb257U3RhcnQsRW5kfQogUEFTUyBTZXR0aW5nIHRoZSBz
YW1lIHZhbHVlICh3aXRoIGRpZmZlcmVudCBuZXdsaW5lcykgaW4gYSB0ZXh0YXJlYSBzaG91bGQg
Tk9UIHVwZGF0ZSBzZWxlY3Rpb257U3RhcnQsRW5kfQogRkFJTCBSZW1vdmluZyBjaGlsZCBub2Rl
cyBpbiBub24tZGlydHkgdGV4dGFyZWEgc2hvdWxkIG1ha2Ugc2VsZWN0aW9ue1N0YXJ0LEVuZH0g
MCBhc3NlcnRfZXF1YWxzOiBzZWxlY3Rpb25TdGFydCBhZnRlciBub2RlIHJlbW92YWwgZXhwZWN0
ZWQgMCBidXQgZ290IDMKLUZBSUwgU2V0dGluZyB2YWx1ZSB0byBhIHNob3J0ZXIgc3RyaW5nIHRo
YW4gZGVmYXVsdFZhbHVlIHNob3VsZCBjb3JyZWN0IHRoZSBjdXJzb3IgcG9zaXRpb24gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMiBidXQgZ290IDMKK1BBU1MgU2V0dGluZyB2YWx1ZSB0byBhIHNo
b3J0ZXIgc3RyaW5nIHRoYW4gZGVmYXVsdFZhbHVlIHNob3VsZCBjb3JyZWN0IHRoZSBjdXJzb3Ig
cG9zaXRpb24KIFBBU1MgU2hvcnRlbmluZyB2YWx1ZSBieSB0dXJuaW5nIHRoZSBpbnB1dCB0eXBl
IGludG8gJ3VybCcgc2hvdWxkIGNvcnJlY3Qgc2VsZWN0aW9ue1N0YXJ0LEVuZH0KIEZBSUwgU2hv
cnRlbmluZyB2YWx1ZSBieSB0dXJuaW5nIHRoZSBpbnB1dCB0eXBlIGludG8gJ2NvbG9yJyBhbmQg
YmFjayB0byAndGV4dCcgc2hvdWxkIGNvcnJlY3Qgc2VsZWN0aW9ue1N0YXJ0LEVuZH0gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDkKIFBBU1MgUmVzZXR0aW5nIGEgdmFsdWUgdG8g
YSBzaG9ydGVyIHN0cmluZyB0aGFuIGRlZmF1bHRWYWx1ZSBzaG91bGQgY29ycmVjdCB0aGUgY3Vy
c29yIHBvc2l0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxl
Y3Rpb24tdmFsdWUtaW50ZXJhY3Rpb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxk
c2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0CmluZGV4
IDg0MTBhODI5YmJmYWE4OGMxOTc5OTMxNDFmMGMyMDdmMDQ1MDNjYzQuLmIxOTA3NGVkOTg0ODc1
MDZkYjg3OGY3MmJjZTE0NDQ0N2IzMDRhNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxk
c2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMt
ZXhwZWN0ZWQudHh0CkBAIC0xMSw2ICsxMSw2IEBAIFBBU1MgdmFsdWUgZGlydHkgZmxhZyBiZWhh
dmlvciBhZnRlciBzZXRSYW5nZVRleHQgb24gZm9jdXNlZCB0aGVuIGJsdXJyZWQgdGV4dGFyCiBQ
QVNTIHZhbHVlIGRpcnR5IGZsYWcgYmVoYXZpb3IgYWZ0ZXIgc2V0UmFuZ2VUZXh0IG9uIGZvY3Vz
ZWQgdGhlbiBibHVycmVkIGlucHV0CiBQQVNTIHNlbGVjdGlvbiBpcyBjb2xsYXBzZWQgdG8gdGhl
IGVuZCBhZnRlciBjaGFuZ2luZyB2YWx1ZXMgb24gaW5wdXQKIFBBU1Mgc2VsZWN0aW9uIGlzIG5v
dCBjb2xsYXBzZWQgdG8gdGhlIGVuZCB3aGVuIHZhbHVlIGlzIHNldCB0byBpdHMgZXhpc3Rpbmcg
dmFsdWUgb24gaW5wdXQKLUZBSUwgc2VsZWN0aW9uIGlzIGNvbGxhcHNlZCB0byB0aGUgZW5kIGFm
dGVyIGNoYW5naW5nIHZhbHVlcyBvbiB0ZXh0YXJlYSBhc3NlcnRfZXF1YWxzOiBlbGVtZW50LnNl
bGVjdGlvblN0YXJ0IHNob3VsZCBiZSB2YWx1ZS5sZW5ndGggZXhwZWN0ZWQgMyBidXQgZ290IDAK
K1BBU1Mgc2VsZWN0aW9uIGlzIGNvbGxhcHNlZCB0byB0aGUgZW5kIGFmdGVyIGNoYW5naW5nIHZh
bHVlcyBvbiB0ZXh0YXJlYQogUEFTUyBzZWxlY3Rpb24gaXMgbm90IGNvbGxhcHNlZCB0byB0aGUg
ZW5kIHdoZW4gdmFsdWUgaXMgc2V0IHRvIGl0cyBleGlzdGluZyB2YWx1ZSBvbiB0ZXh0YXJlYQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi90ZXh0YXJlYS1zZWxlY3Rp
b24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlv
bi90ZXh0YXJlYS1zZWxlY3Rpb24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggZTA2
ZDA3MzJjM2YyZTBiMTAxOWMwNzIzMTE2NGExOTY1Y2Q2MDUyNy4uNDc2MzU5YTg0MjI4YzE1ZDJh
NGI4ODM4ZmMxOTUxY2I1MTc5YTU3NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxl
Y3Rpb24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGlsZS1wYXJz
aW5nLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAogCi1GQUlMIFZhbHVlIHNldHRlciB3
aGlsZSBwYXJzaW5nIHRleHRhcmVhIGNoaWxkcmVuIHNob3VsZCBtb3ZlIHNlbGVjdGlvbntTdGFy
dCxFbmR9IHRvIHRoZSBlbmQgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMyBidXQgZ290IDAKK1BB
U1MgVmFsdWUgc2V0dGVyIHdoaWxlIHBhcnNpbmcgdGV4dGFyZWEgY2hpbGRyZW4gc2hvdWxkIG1v
dmUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0gdG8gdGhlIGVuZAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454322</attachid>
            <date>2022-03-10 01:07:02 -0800</date>
            <delta_ts>2022-03-14 04:38:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237641-20220310090659.patch</filename>
            <type>text/plain</type>
            <size>46777</size>
            <attacher>zsun</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWI2NDJlMWFiZjhiYmZk
NDUzYTNmZTk2ODIzNjM4NjY5NDVmMGFjNy4uMTc2MTQ1NmQ1ZDhjYjdmYzAzOWY4NTYyOTRlZDg5
MzQ0ZThiOTQ0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIyLTAzLTA5ICBaaXJh
biBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVjdGlvbl0gRml4ZXMgc2Vs
ZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBDTCBpcyB0byBmaXggdGhlIHNldHRpbmdz
IG9mIFNlbGVjdGlvblN0YXJ0L1NlbGVjdGlvbkVuZCBmb3IgVEVYVEFSRUEgZm9yIG5vbi1mb2N1
c2VkIEVsZW1lbnQuIEl0IHNldHMgdGhlCisgICAgICAgIGNhcmV0IHRvIHRoZSBlbmQgb2YgdGhl
IHRleHQgdmFsdWUgZXhjZXB0IGZvciBpbml0aWFsaXppbmcgaW4gbW9zdCBjYXNlcy4gRm9yIHRo
ZSBjYXNlIG9mIHVwZGF0aW5nIGRlZmF1bHRWYWx1ZQorICAgICAgICBmb3IgYSBub24tZGlydHkg
VEVYVEFSRUEsIHdlIHNob3VsZCBmb2xsb3dpbmcgdGhlIGNsYW1waW5nIHN0ZXBzIGFzIHBlciBz
cGVjIGFuZCBpdCB3aWxsIGJlIGFkZHJlc3NlZCBpbiBhIAorICAgICAgICBmb2xsb3ctdXAgcGF0
Y2guICAgICAgICAKKworICAgICAgICBUaGlzIENMIHJlZmVycyBhbmQgaW1wb3J0cyBwYXJ0IG9m
IHRoZSBjaGFuZ2VzIGluIGNocm9taXVtIENMIGF0CisgICAgICAgIGh0dHBzOi8vY29kZXJldmll
dy5jaHJvbWl1bS5vcmcvMjczNTYzMzAwNgorCisgICAgICAgIFRoaXMgQ0wgYWxzbyBpbnRyb2R1
Y2VzIGEgdW5pZmllZCBzZXRWYWx1ZSgpIEFQSSBpbiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IGZv
ciBIVE1MVGV4dEFyZWFFbGVtZW50IGFuZCBIVE1MSW5wdXRFbGVtZW50LgorCisgICAgICAgICog
aHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VCdXR0
b25JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0Jhc2VCdXR0b25JbnB1dFR5
cGUuaDoKKyAgICAgICAgKiBodG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QmFzZUNoZWNrYWJsZUlucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAq
IGh0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VEYXRlQW5kVGltZUlu
cHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6QmFzZURhdGVBbmRUaW1lSW5w
dXRUeXBlOjpkaWRDaGFuZ2VWYWx1ZUZyb21Db250cm9sKToKKyAgICAgICAgKiBodG1sL0Jhc2VE
YXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvQ29sb3JJbnB1dFR5cGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q29sb3JJbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAg
KiBodG1sL0NvbG9ySW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAg
KiBodG1sL0ZpbGVJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c2V0VmFsdWUpOgorICAg
ICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRB
cmVhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojpj
aGlsZHJlbkNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6
cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1
ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZUNvbW1v
bik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojpjb3B5Tm9uQXR0cmli
dXRlUHJvcGVydGllc0Zyb21FbGVtZW50KToKKyAgICAgICAgKiBodG1sL0hUTUxUZXh0QXJlYUVs
ZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50OjpzZXRSYW5nZVRl
eHQpOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAg
ICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaWRkZW5J
bnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5oOgor
ICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlw
ZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRt
bC9OdW1iZXJJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TnVtYmVySW5wdXRUeXBl
OjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9OdW1iZXJJbnB1dFR5cGUuaDoKKyAgICAgICAg
KiBodG1sL1JhbmdlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlSW5wdXRU
eXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9SYW5nZUlucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRG
aWVsZElucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRU
eXBlLmg6CisKIDIwMjItMDMtMDEgIEFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFtJRkNdW0ludGVncmF0aW9uXSBJbmxpbmVJdGVyYXRvcjo6Qm94OjpyZWN0KCkgcmV0
dXJucyB0aGUgdW5mbGlwcGVkIHZpc3VhbCByZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
QnV0dG9uSW5wdXRUeXBlLmNwcAppbmRleCA0ZTczOTUzODEyZDQwODRjODVkYmUxMDVjN2E5MzU2
OTVmNzBjY2ZlLi44ODIxMGMzMzlmNTU1OTZkNjEyMWY1MDY1Mjg1MGQ0NjAwZGMxODMxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUJ1dHRvbklucHV0VHlwZS5jcHAKQEAgLTYyLDcgKzYy
LDcgQEAgYm9vbCBCYXNlQnV0dG9uSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0
dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEJhc2VCdXR0b25JbnB1dFR5
cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVs
ZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0
IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRl
eHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAg
ICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0
ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
QnV0dG9uSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5
cGUuaAppbmRleCBlNDE0NjM0MWIwNGY0MTk4Y2IwNzA2YjlhNjUyZDY2OTE2YzAyZGMyLi40Zjhl
OGExYWUzZjNmNDYxODY5ZjY2YzFlNmYyYjdhOWIxYzM2OTI1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaApAQCAtNDQsNyArNDQsNyBAQCBwcml2YXRlOgogICAg
IGJvb2wgYXBwZW5kRm9ybURhdGEoRE9NRm9ybURhdGEmKSBjb25zdCBvdmVycmlkZTsKICAgICBS
ZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlSW5wdXRSZW5kZXJlcihSZW5kZXJTdHlsZSYm
KSBvdmVycmlkZTsKICAgICBib29sIHN0b3Jlc1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0Rmll
bGRFdmVudEJlaGF2aW9yKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmlu
ZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxl
Y3Rpb24pIG92ZXJyaWRlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5jcHAKaW5kZXggMDY1Y2VjMGU2
NWJjNzI3NDNhMmZkMjFmODZjM2M1ODhkYWVhMTEzZi4uOGE1NGNhMDUzNTRhOTMwMjc1OWFiNzVi
YTNhMTc1NWY3YjlmNDU1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hl
Y2thYmxlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2Fi
bGVJbnB1dFR5cGUuY3BwCkBAIC0xMDgsNyArMTA4LDcgQEAgYm9vbCBCYXNlQ2hlY2thYmxlSW5w
dXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZh
bHNlOwogfQogCi12b2lkIEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0
cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lk
IEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVk
VmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVT
ZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRB
dHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBl
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAppbmRleCBi
NDlhNzdhNDE1OTI1MWIxODUwMTQ5ZTEwMDdjZGY0MDA2YzA5YTI0Li42YmY1ZDUxZmFiMmE2ZGI5
ODMwYzIzZTZmYjFiMjhlZGEwNTdjZTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VD
aGVja2FibGVJbnB1dFR5cGUuaApAQCAtNTAsNyArNTAsNyBAQCBwcml2YXRlOgogICAgIGJvb2wg
YWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBvdmVycmlkZTsKICAgICBTdHJp
bmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgc3RvcmVzVmFsdWVT
ZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0
IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwg
VGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5k
VGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlu
cHV0VHlwZS5jcHAKaW5kZXggY2Y3Y2MzMWYzNDJmN2I1YTc0NzQ3NWU0Y2NhMTg5YmQxM2E3NDEz
ZS4uMzc1NTI4MWQxODJlM2FhYmUxOGM3OWQ5ZDM1MTM2OWFjNzM1NGU4MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcApAQCAtMjc3LDkg
KzI3Nyw5IEBAIGJvb2wgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpzaG91bGRIYXZlTWlsbGlz
ZWNvbmRGaWVsZChjb25zdCBEYXRlQ29tcG9uZW50cyYKICAgICAgICAgfHwgIXN0ZXBSYW5nZS5z
dGVwKCkucmVtYWluZGVyKG1zZWNQZXJTZWNvbmQpLmlzWmVybygpOwogfQogCi12b2lkIEJhc2VE
YXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2
YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQg
QmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBi
b29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBU
ZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKLSAgICBJbnB1dFR5cGU6
OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IpOworICAgIElucHV0
VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0
aW9uKTsKICAgICBpZiAodmFsdWVDaGFuZ2VkKQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1
ZSgpOwogfQpAQCAtNDcwLDcgKzQ3MCw3IEBAIHZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBl
OjpkaWRCbHVyRnJvbUNvbnRyb2woKQogdm9pZCBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmRp
ZENoYW5nZVZhbHVlRnJvbUNvbnRyb2woKQogewogICAgIFN0cmluZyB2YWx1ZSA9IHNhbml0aXpl
VmFsdWUobV9kYXRlVGltZUVkaXRFbGVtZW50LT52YWx1ZSgpKTsKLSAgICBJbnB1dFR5cGU6OnNl
dFZhbHVlKHZhbHVlLCB2YWx1ZSAhPSBlbGVtZW50KCktPnZhbHVlKCksIERpc3BhdGNoSW5wdXRB
bmRDaGFuZ2VFdmVudCk7CisgICAgSW5wdXRUeXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWUgIT0g
ZWxlbWVudCgpLT52YWx1ZSgpLCBEaXNwYXRjaElucHV0QW5kQ2hhbmdlRXZlbnQsIERvTm90U2V0
KTsKIAogICAgIERhdGVUaW1lQ2hvb3NlclBhcmFtZXRlcnMgcGFyYW1ldGVyczsKICAgICBpZiAo
IXNldHVwRGF0ZVRpbWVDaG9vc2VyUGFyYW1ldGVycyhwYXJhbWV0ZXJzKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oCmluZGV4IGI2ODVmOGUxOWZm
YjQ4ODU1ZjRlMmZlODJlM2IxMjFiZTQ5M2E3M2QuLjZiZjZkNmI5MDNiNGFkNzY1OTZiYmFjY2U1
NGQxN2QzN2EzMWU4Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRp
bWVJbnB1dFR5cGUuaApAQCAtMTAxLDcgKzEwMSw3IEBAIHByaXZhdGU6CiAgICAgLy8gSW5wdXRU
eXBlIGZ1bmN0aW9uczoKICAgICBTdHJpbmcgdmlzaWJsZVZhbHVlKCkgY29uc3QgZmluYWw7CiAg
ICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZp
ZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcm
LCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xT
ZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAgV2FsbFRpbWUgdmFsdWVBc0RhdGUoKSBjb25z
dCBvdmVycmlkZTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRWYWx1ZUFzRGF0ZShXYWxsVGlt
ZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91YmxlIHZhbHVlQXNEb3VibGUoKSBjb25zdCBmaW5h
bDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKaW5kZXggZjExOWU4MmIzNzdk
ZGI0MWZjZDllOGI5M2FhN2ZjZWZhMGY1ZGMwZC4uMTcwZmJjNTE0MDE2YTQ0MTQ4ODQwOTYwNWM5
OGQ3MjRlNWI1NmZmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0
VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKQEAg
LTE1Myw5ICsxNTMsOSBAQCB2b2lkIENvbG9ySW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVl
KCkKICAgICB1cGRhdGVDb2xvclN3YXRjaCgpOwogfQogCi12b2lkIENvbG9ySW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxk
RXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBDb2xvcklucHV0VHlwZTo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxl
Y3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBl
dmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5n
ZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkK
ICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklu
cHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oCmluZGV4IDEx
NmRhYjExN2I5NzU5YjIzNjE3MzcwZWQ0ODM3OWE4Yzc3YTMzNzkuLmM4ZmVhNmEzMjYyMDY0YTgy
ZDQ1ZjNkZTFlMDBiYjM1Y2MyNWI0ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Q29sb3JJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBl
LmgKQEAgLTYzLDcgKzYzLDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgp
IGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBzYW5pdGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYpIGNv
bnN0IGZpbmFsOwogICAgIHZvaWQgY3JlYXRlU2hhZG93U3VidHJlZSgpIGZpbmFsOwotICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFs
dWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgYXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFs
aWZpZWROYW1lJikgZmluYWw7CiAgICAgdm9pZCBoYW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50
JikgZmluYWw7CiAgICAgdm9pZCBkZXRhY2goKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJ
bnB1dFR5cGUuY3BwCmluZGV4IGVhN2RmYWNmNjJiNzgyNTU5ZDY1ZTNiZmI2YjNkMGNjZGZlMjUy
MWMuLmI2NWI4NzBlYTcwNTQ1MGIzYzZlOTNkNmMzMmJiZmJmOWU3MGM0NjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApAQCAtMjUzLDcgKzI1Myw3IEBAIGJvb2wgRmlsZUlu
cHV0VHlwZTo6Z2V0VHlwZVNwZWNpZmljVmFsdWUoU3RyaW5nJiB2YWx1ZSkKICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAotdm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBi
b29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQordm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1
ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJv
bFNldFZhbHVlU2VsZWN0aW9uKQogewogICAgIC8vIEZJWE1FOiBTaG91bGQgd2UgY2xlYXIgdGhl
IGZpbGUgbGlzdCwgb3IgcmVwbGFjZSBpdCB3aXRoIGEgbmV3IGVtcHR5IG9uZSBoZXJlPyBUaGlz
IGlzIG9ic2VydmFibGUgZnJvbSBKYXZhU2NyaXB0IHRocm91Z2ggY3VzdG9tIHByb3BlcnRpZXMu
CiAgICAgbV9maWxlTGlzdC0+Y2xlYXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvRmlsZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgK
aW5kZXggOTE1N2IxNzkwMjkyMDBmM2M0MzA4OGNiNmE0YzZiZTU1ZTAwMDIzYS4uZWUxMDg0OTc4
M2ZhZmVkMmFhOWM3OGI2MDA2YmJkZWRlZTY1NDQxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5w
dXRUeXBlLmgKQEAgLTY5LDcgKzY5LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZGlzcGxheVN0
cmluZygpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgY2FuU2V0VmFsdWUoY29uc3QgU3RyaW5nJikg
ZmluYWw7CiAgICAgYm9vbCBnZXRUeXBlU3BlY2lmaWNWYWx1ZShTdHJpbmcmKSBmaW5hbDsgLy8g
Q2hlY2tlZCBmaXJzdCwgYmVmb3JlIGludGVybmFsIHN0b3JhZ2Ugb3IgdGhlIHZhbHVlIGF0dHJp
YnV0ZS4KLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2Vk
LCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBmaW5hbDsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0
IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0
Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBmaW5hbDsKIAogI2lmIEVOQUJMRShEUkFHX1NVUFBP
UlQpCiAgICAgYm9vbCByZWNlaXZlRHJvcHBlZEZpbGVzV2l0aEltYWdlVHJhbnNjb2RpbmcoY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhdGhzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVs
ZW1lbnQuY3BwCmluZGV4IGJjZDZjOGEwZWI3MDk5MjI2OTU0YWJkN2Q5ZTBkNTRiZWI1N2RlZWEu
LjIyZTZkZjYzZjNkYThkMDgyOTExYWZkMWUxNTdmMzI0YmNhNzBmNjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApAQCAtMTA2NCw3ICsxMDY0LDcgQEAgdm9pZCBI
VE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZUZvclVzZXIoY29uc3QgU3RyaW5nJiB2YWx1ZSkKICAg
ICBzZXRWYWx1ZSh2YWx1ZSwgRGlzcGF0Y2hDaGFuZ2VFdmVudCk7CiB9CiAKLUV4Y2VwdGlvbk9y
PHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRl
eHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK0V4Y2VwdGlvbk9yPHZvaWQ+IEhU
TUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBz
ZWxlY3Rpb24pCiB7CiAgICAgaWYgKGlzRmlsZVVwbG9hZCgpICYmICF2YWx1ZS5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciB9OwpAQCAtMTA3
OSw3ICsxMDc5LDcgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTElucHV0RWxlbWVudDo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnQKIAogICAgIHNldExhc3RDaGFu
Z2VXYXNOb3RVc2VyRWRpdCgpOwogICAgIHNldEZvcm1Db250cm9sVmFsdWVNYXRjaGVzUmVuZGVy
ZXIoZmFsc2UpOwotICAgIG1faW5wdXRUeXBlLT5zZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFs
dWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBtX2lucHV0VHlwZS0+c2V0VmFsdWUoc2Fu
aXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAog
ICAgIGJvb2wgd2FzTW9kaWZpZWRQcm9ncmFtbWF0aWNhbGx5ID0gZXZlbnRCZWhhdmlvciA9PSBE
aXNwYXRjaE5vRXZlbnQ7CiAgICAgaWYgKHdhc01vZGlmaWVkUHJvZ3JhbW1hdGljYWxseSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKaW5kZXggY2M1MGZlZTMzYzk4ZDFmODky
YTQ3ZTRjMDUxNDEyOTNmZjEzMWFhMC4uODUwNGZiNjI2OTZjN2YwMWUxODliMmQ3MzE5Zjc4MDBj
NTljODU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKQEAgLTE3MSw3
ICsxNzEsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRUeXBlKGNvbnN0
IEF0b21TdHJpbmcmKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0
IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNv
bnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQpOwor
ICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmlu
ZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQsIFRleHRDb250cm9s
U2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxl
Y3Rpb25Ub0VuZCkgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRWYWx1ZUZvclVz
ZXIoY29uc3QgU3RyaW5nJik7CiAgICAgLy8gQ2hlY2tzIGlmIHRoZSBzcGVjaWZpZWQgc3RyaW5n
IHdvdWxkIGJlIGEgdmFsaWQgdmFsdWUuCiAgICAgLy8gV2Ugc2hvdWxkIG5vdCBjYWxsIHRoaXMg
Zm9yIHR5cGVzIHdpdGggbm8gc3RyaW5nIHZhbHVlIHN1Y2ggYXMgQ0hFQ0tCT1ggYW5kIFJBRElP
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAKaW5kZXggYWE1
MmYwMGRiNWRjMDZkZDMwNDgxNmUxMzMxNTVhNzM5YTRhMTIzYi4uMDUxMWU1ODkyOWYwOTdiM2I3
MWQzOTVmOWI2YTM0NTk1YjMxZTU4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MVGV4dEFyZWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0
QXJlYUVsZW1lbnQuY3BwCkBAIC0xMzYsNyArMTM2LDcgQEAgdm9pZCBIVE1MVGV4dEFyZWFFbGVt
ZW50OjpjaGlsZHJlbkNoYW5nZWQoY29uc3QgQ2hpbGRDaGFuZ2UmIGNoYW5nZSkKICAgICBpZiAo
bV9pc0RpcnR5KQogICAgICAgICBzZXRJbm5lclRleHRWYWx1ZSh2YWx1ZSgpKTsKICAgICBlbHNl
Ci0gICAgICAgIHNldE5vbkRpcnR5VmFsdWUoZGVmYXVsdFZhbHVlKCkpOworICAgICAgICBzZXRO
b25EaXJ0eVZhbHVlKGRlZmF1bHRWYWx1ZSgpLCAgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bjo6RG9Ob3RTZXQpOwogfQogCiBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhhc1ByZXNlbnRh
dGlvbmFsSGludHNGb3JBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkgY29uc3QK
QEAgLTI0MSw3ICsyNDEsNyBAQCBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OmFwcGVuZEZvcm1E
YXRhKERPTUZvcm1EYXRhJiBmb3JtRGF0YSkKIAogdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50Ojpy
ZXNldCgpCiB7Ci0gICAgc2V0Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUoKSk7CisgICAgc2V0
Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUoKSwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bjo6U2V0U2VsZWN0aW9uVG9FbmQpOwogfQogCiBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhh
c0N1c3RvbUZvY3VzTG9naWMoKSBjb25zdApAQCAtMzc0LDIxICszNzQsMjIgQEAgU3RyaW5nIEhU
TUxUZXh0QXJlYUVsZW1lbnQ6OnZhbHVlKCkgY29uc3QKICAgICByZXR1cm4gbV92YWx1ZTsKIH0K
IAotdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVl
KQorRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUoY29uc3Qg
U3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0
Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKLSAgICBzZXRWYWx1ZUNvbW1v
bih2YWx1ZSk7CisgICAgc2V0VmFsdWVDb21tb24odmFsdWUsIGV2ZW50QmVoYXZpb3IsIHNlbGVj
dGlvbik7CiAgICAgbV9pc0RpcnR5ID0gdHJ1ZTsKICAgICB1cGRhdGVWYWxpZGl0eSgpOworICAg
IHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlW
YWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQordm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRO
b25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRDb250cm9sU2V0VmFsdWVTZWxl
Y3Rpb24gc2VsZWN0aW9uKQogewotICAgIHNldFZhbHVlQ29tbW9uKHZhbHVlKTsKKyAgICBzZXRW
YWx1ZUNvbW1vbih2YWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcjo6RGlzcGF0Y2hOb0V2ZW50
LCBzZWxlY3Rpb24pOwogICAgIG1faXNEaXJ0eSA9IGZhbHNlOwogICAgIHVwZGF0ZVZhbGlkaXR5
KCk7CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3Qg
U3RyaW5nJiBuZXdWYWx1ZSkKK3ZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21t
b24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENv
bnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7CiAgICAgbV93YXNNb2RpZmllZEJ5
VXNlciA9IGZhbHNlOwogICAgIC8vIENvZGUgZWxzZXdoZXJlIG5vcm1hbGl6ZXMgbGluZSBlbmRp
bmdzIGFkZGVkIGJ5IHRoZSB1c2VyIHZpYSB0aGUga2V5Ym9hcmQgb3IgcGFzdGluZy4KQEAgLTQw
OSwxMCArNDEwLDEzIEBAIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24o
Y29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKICAgICBpbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlKCk7
CiAgICAgc2V0Rm9ybUNvbnRyb2xWYWx1ZU1hdGNoZXNSZW5kZXJlcih0cnVlKTsKIAotICAgIC8v
IFNldCB0aGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0aGUgdGV4dCB2YWx1ZS4KICAgICBpZiAoZG9j
dW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09IHRoaXMpIHsKICAgICAgICAgdW5zaWduZWQgZW5k
T2ZTdHJpbmcgPSBtX3ZhbHVlLmxlbmd0aCgpOwogICAgICAgICBzZXRTZWxlY3Rpb25SYW5nZShl
bmRPZlN0cmluZywgZW5kT2ZTdHJpbmcpOworICAgIH0gIGVsc2UgaWYgKHNlbGVjdGlvbiA9PSBU
ZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAg
ICAvLyBVcGRhdGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0aGUgdGV4dCB2YWx1ZSBleGNlcHQgZm9y
IGluaXRpYWxpemUuCisgICAgICAgIHVuc2lnbmVkIGVuZG9mU3RyaW5nID0gbV92YWx1ZS5sZW5n
dGgoKTsKKyAgICAgICAgY2FjaGVTZWxlY3Rpb24oZW5kb2ZTdHJpbmcsIGVuZG9mU3RyaW5nLCBT
ZWxlY3Rpb25IYXNOb0RpcmVjdGlvbik7CiAgICAgfQogCiAgICAgc2V0VGV4dEFzT2ZMYXN0Rm9y
bUNvbnRyb2xDaGFuZ2VFdmVudChub3JtYWxpemVkVmFsdWUpOwpAQCAtNTc2LDcgKzU4MCw3IEBA
IHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6Y29weU5vbkF0dHJpYnV0ZVByb3BlcnRpZXNGcm9t
RWxlbWVudChjb25zdCBFbGVtZW50JiBzCiB7CiAgICAgYXV0byYgc291cmNlRWxlbWVudCA9IGRv
d25jYXN0PEhUTUxUZXh0QXJlYUVsZW1lbnQ+KHNvdXJjZSk7CiAKLSAgICBzZXRWYWx1ZUNvbW1v
bihzb3VyY2VFbGVtZW50LnZhbHVlKCkpOworICAgIHNldFZhbHVlQ29tbW9uKHNvdXJjZUVsZW1l
bnQudmFsdWUoKSwgRGlzcGF0Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
OjpTZXRTZWxlY3Rpb25Ub0VuZCk7CiAgICAgbV9pc0RpcnR5ID0gc291cmNlRWxlbWVudC5tX2lz
RGlydHk7CiAgICAgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQ
cm9wZXJ0aWVzRnJvbUVsZW1lbnQoc291cmNlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxU
ZXh0QXJlYUVsZW1lbnQuaAppbmRleCAwMDc3ZjAyNTMyNmQ3OGYwMjFkYWMwY2IyNzFkOWM5Njhm
Y2NiYWRlLi5mMWZjYTc4OWM2NzJiZDc3MjkzMmJhYjQ1NmQzMDNmZDgzYWZiZTU3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaApAQCAtNDQsNyArNDQsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBzaG91bGRXcmFwVGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fd3JhcCAh
PSBOb1dyYXA7IH0KIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZp
bmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJik7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0VmFsdWUoY29uc3QgU3RyaW5n
JiwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciA9IERpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xT
ZXRWYWx1ZVNlbGVjdGlvbiA9IFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb246OlNldFNlbGVj
dGlvblRvRW5kKSBmaW5hbDsKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGVmYXVsdFZhbHVl
KCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXREZWZhdWx0VmFsdWUoY29uc3Qg
U3RyaW5nJik7CiAgICAgaW50IHRleHRMZW5ndGgoKSBjb25zdCB7IHJldHVybiB2YWx1ZSgpLmxl
bmd0aCgpOyB9CkBAIC04Myw4ICs4Myw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYW5kbGVCZWZv
cmVUZXh0SW5zZXJ0ZWRFdmVudChCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudCYpIGNvbnN0OwogICAg
IHN0YXRpYyBTdHJpbmcgc2FuaXRpemVVc2VySW5wdXRWYWx1ZShjb25zdCBTdHJpbmcmLCB1bnNp
Z25lZCBtYXhMZW5ndGgpOwogICAgIHZvaWQgdXBkYXRlVmFsdWUoKSBjb25zdDsKLSAgICB2b2lk
IHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5nJik7Ci0gICAgdm9pZCBzZXRWYWx1ZUNvbW1v
bihjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5n
JiwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbik7CisgICAgdm9pZCBzZXRWYWx1ZUNvbW1v
bihjb25zdCBTdHJpbmcmLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZh
bHVlU2VsZWN0aW9uKTsKIAogICAgIGJvb2wgc3VwcG9ydHNQbGFjZWhvbGRlcigpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICBIVE1MRWxlbWVudCogcGxhY2Vob2xkZXJFbGVtZW50
KCkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0
Rm9ybUNvbnRyb2xFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3Jt
Q29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDliZDVlZGI0MzQxZDA5NzQ4YjU2YWNiYWM5MDljNGQw
YTUyYmQ1NzYuLjIwNWNjNjUxNjkxMDQwMjkzOTM4MzI1MjcyZjc0MDc0M2YxNWU4NjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3Bw
CkBAIC0yNTQsNyArMjU0LDYgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRGb3JtQ29udHJv
bEVsZW1lbnQ6OnNldFJhbmdlVGV4dChjb25zdCBTdHJpbmcmIHJlcGxhY2UKICAgICBlbHNlCiAg
ICAgICAgIHRleHQuaW5zZXJ0KHJlcGxhY2VtZW50LCBzdGFydCk7CiAKLSAgICBzZXRJbm5lclRl
eHRWYWx1ZSh0ZXh0KTsKIAogICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZG4ndCBuZWVkIHN5bmNo
cm9ub3VzIHN0eWxlIHVwZGF0ZSwgb3IgcmVuZGVyZXIgYXQgYWxsLgogICAgIGlmICghcmVuZGVy
ZXIoKSkKQEAgLTI2Myw3ICsyNjIsNyBAQCBFeGNlcHRpb25Pcjx2b2lkPiBIVE1MVGV4dEZvcm1D
b250cm9sRWxlbWVudDo6c2V0UmFuZ2VUZXh0KGNvbnN0IFN0cmluZyYgcmVwbGFjZQogICAgIGlm
ICghcmVuZGVyZXIoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIAotICAgIHN1YnRyZWVIYXNDaGFu
Z2VkKCk7CisgICAgc2V0VmFsdWUodGV4dCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcjo6RGlzcGF0
Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpEb05vdFNldCk7CiAKICAg
ICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc2VsZWN0aW9uTW9kZSwgInNlbGVj
dCIpKSB7CiAgICAgICAgIG5ld1NlbGVjdGlvblN0YXJ0ID0gc3RhcnQ7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmgKaW5kZXggYWIzYWI2YWJi
ZWFlMDM4MzQ0NmI5Mjc4MzU5OWZiZGNmZTJjMzQyNS4uNTNiZmQ3MzlhOGY0NmM0NWRlN2ZjODdh
NzNiMTY0NTFkOWNmMjk4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4
dEZvcm1Db250cm9sRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRG
b3JtQ29udHJvbEVsZW1lbnQuaApAQCAtMzksNiArMzksNyBAQCBzdHJ1Y3QgU2ltcGxlUmFuZ2U7
CiBlbnVtIGNsYXNzIEF1dG9GaWxsQnV0dG9uVHlwZSA6IHVpbnQ4X3QgeyBOb25lLCBDcmVkZW50
aWFscywgQ29udGFjdHMsIFN0cm9uZ1Bhc3N3b3JkLCBDcmVkaXRDYXJkIH07CiBlbnVtIFRleHRG
aWVsZFNlbGVjdGlvbkRpcmVjdGlvbiB7IFNlbGVjdGlvbkhhc05vRGlyZWN0aW9uLCBTZWxlY3Rp
b25IYXNGb3J3YXJkRGlyZWN0aW9uLCBTZWxlY3Rpb25IYXNCYWNrd2FyZERpcmVjdGlvbiB9Owog
ZW51bSBUZXh0RmllbGRFdmVudEJlaGF2aW9yIHsgRGlzcGF0Y2hOb0V2ZW50LCBEaXNwYXRjaENo
YW5nZUV2ZW50LCBEaXNwYXRjaElucHV0QW5kQ2hhbmdlRXZlbnQgfTsKK2VudW0gVGV4dENvbnRy
b2xTZXRWYWx1ZVNlbGVjdGlvbiB7IFNldFNlbGVjdGlvblRvRW5kLCBEb05vdFNldCB9OwogCiBj
bGFzcyBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudCA6IHB1YmxpYyBIVE1MRm9ybUNvbnRyb2xF
bGVtZW50V2l0aFN0YXRlIHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKEhUTUxUZXh0Rm9y
bUNvbnRyb2xFbGVtZW50KTsKQEAgLTg4LDYgKzg5LDcgQEAgcHVibGljOgogCiAgICAgdmlydHVh
bCBTdHJpbmcgdmFsdWUoKSBjb25zdCA9IDA7CiAKKyAgICB2aXJ0dWFsIEV4Y2VwdGlvbk9yPHZv
aWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBEaXNw
YXRjaE5vRXZlbnQsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJvbFNl
dFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgPSAwOwogICAgIHZpcnR1YWwgUmVm
UHRyPFRleHRDb250cm9sSW5uZXJUZXh0RWxlbWVudD4gaW5uZXJUZXh0RWxlbWVudCgpIGNvbnN0
ID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0cjxUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQ+IGlu
bmVyVGV4dEVsZW1lbnRDcmVhdGluZ1NoYWRvd1N1YnRyZWVJZk5lZWRlZCgpID0gMDsKICAgICB2
aXJ0dWFsIFJlbmRlclN0eWxlIGNyZWF0ZUlubmVyVGV4dFN0eWxlKGNvbnN0IFJlbmRlclN0eWxl
JikgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuY3BwCmluZGV4IDA5Nzg3
YTdjNTI4MWY2YzRiMzk2YWY4MWEzOGYwYjU2MzZmYmUzMzEuLmFmNTNkYThlMjVhNGQ2OTgzYzYy
YjZhNTFiN2ExYmU4Y2ZmYWRlY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlk
ZGVuSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlw
ZS5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgYm9vbCBIaWRkZW5JbnB1dFR5cGU6OnN0b3Jlc1ZhbHVl
U2VwYXJhdGVGcm9tQXR0cmlidXRlKCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLXZvaWQgSGlk
ZGVuSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29s
LCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQordm9pZCBIaWRkZW5JbnB1dFR5cGU6OnNldFZhbHVl
KGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZp
b3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQo
KSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHZh
bHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IaWRkZW5JbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBl
LmgKaW5kZXggOTVlZDBjMWQ3YzAwNDI5ZjVhMWMxZGNkZTY1NzgxZjJkMzUxNzQwMy4uMzQwN2Ri
YzRiNThmY2NlNWE1MDc5YmE2YTJjZTNjOWRhNWNkYzRjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hp
ZGRlbklucHV0VHlwZS5oCkBAIC00OCw3ICs0OCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCByZW5k
ZXJlcklzTmVlZGVkKCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzdG9yZXNWYWx1ZVNlcGFyYXRlRnJv
bUF0dHJpYnV0ZSgpIG92ZXJyaWRlOwogICAgIGJvb2wgc2hvdWxkUmVzcGVjdEhlaWdodEFuZFdp
ZHRoQXR0cmlidXRlcygpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5n
JiwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRW
YWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29u
dHJvbFNldFZhbHVlU2VsZWN0aW9uKSBvdmVycmlkZTsKICAgICBib29sIGFwcGVuZEZvcm1EYXRh
KERPTUZvcm1EYXRhJikgY29uc3Qgb3ZlcnJpZGU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlw
ZS5jcHAKaW5kZXggNzRlMGRkZWIxOGMwYjYwMjBlODVjOTE0MjFhMTRiNjJmYjdkZDllYy4uYzMw
ZDFkZTA3M2JkYjU5MzNiOGMzOTIzYTY4ZTNjMjZlYWRhY2E4ZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5w
dXRUeXBlLmNwcApAQCAtNzIxLDcgKzcyMSw3IEBAIGJvb2wgSW5wdXRUeXBlOjpzdG9yZXNWYWx1
ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgSW5w
dXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVl
Q2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBJbnB1
dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVD
aGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9s
U2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVu
dCgpLT5zZXRWYWx1ZUludGVybmFsKHNhbml0aXplZFZhbHVlLCBldmVudEJlaGF2aW9yKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0lucHV0VHlwZS5oCmluZGV4IDgxMmQ1ODhiNmVkOGQwMzg5MmM0YmIzZDNkY2YwZWYx
MGY2ZTY4ZGMuLjE5MjRiMzcxNmI0YjMxYWM0M2ViZTFiOTk5MTU2OGM4YTMzOGIzODMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9JbnB1dFR5cGUuaApAQCAtMzQxLDcgKzM0MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIGJvb2wgc2hvdWxkU2VuZENoYW5nZUV2ZW50QWZ0ZXJDaGVja2VkQ2hhbmdlZCgpOwogICAg
IHZpcnR1YWwgYm9vbCBjYW5TZXRWYWx1ZShjb25zdCBTdHJpbmcmKTsKICAgICB2aXJ0dWFsIGJv
b2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKTsKLSAgICB2aXJ0dWFsIHZvaWQg
c2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IpOworICAgIHZpcnR1YWwgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29s
IHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1
ZVNlbGVjdGlvbik7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFJlc2V0T25Eb2N1bWVudEFjdGl2
YXRpb24oKTsKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUmVzcGVjdExpc3RBdHRyaWJ1dGUoKTsK
ICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUmVzcGVjdEhlaWdodEFuZFdpZHRoQXR0cmlidXRlcygp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwCmluZGV4IDMwZmJhODk0YTlm
YjFiNDI1Yjg5YWM0ZjEzOWE2NGZjNWQ2MDExMDMuLjU3NDNkNDYzNzBmYzgxZjVlNDdhOTIzZWY3
MjQ1YjZmYjE2ZjZjNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5w
dXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlwZS5jcHAK
QEAgLTk0LDEyICs5NCwxMiBAQCBjb25zdCBBdG9tU3RyaW5nJiBOdW1iZXJJbnB1dFR5cGU6OmZv
cm1Db250cm9sVHlwZSgpIGNvbnN0CiAgICAgcmV0dXJuIElucHV0VHlwZU5hbWVzOjpudW1iZXIo
KTsKIH0KIAotdm9pZCBOdW1iZXJJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2Fu
aXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2
ZW50QmVoYXZpb3IpCit2b2lkIE51bWJlcklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5n
JiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZp
b3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24p
CiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgaWYgKCF2YWx1ZUNoYW5nZWQgJiYgc2Fu
aXRpemVkVmFsdWUuaXNFbXB0eSgpICYmICFlbGVtZW50KCktPmlubmVyVGV4dFZhbHVlKCkuaXNF
bXB0eSgpKQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1ZSgpOwotICAgIFRleHRGaWVsZElu
cHV0VHlwZTo6c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhh
dmlvcik7CisgICAgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwg
dmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yLCBzZWxlY3Rpb24pOwogfQogCiBkb3VibGUgTnVt
YmVySW5wdXRUeXBlOjp2YWx1ZUFzRG91YmxlKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJl
cklucHV0VHlwZS5oCmluZGV4IDJmYzBlZDY5ZjQzYzY2N2Y4YzY0ZDU4YjZlNTk5Yjg4ZWU3NmRk
ZWQuLjg1M2U0ZDU4ZWRhNmM5Mjg3NGNhMWQwNGY0MjViNTU1ZmI3YzgwYjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuaApAQCAtNDIsNyArNDIsNyBAQCBwdWJsaWM6CiAKIHBy
aXZhdGU6CiAgICAgY29uc3QgQXRvbVN0cmluZyYgZm9ybUNvbnRyb2xUeXBlKCkgY29uc3QgZmlu
YWw7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBT
dHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENv
bnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAgZG91YmxlIHZhbHVlQXNEb3VibGUo
KSBjb25zdCBmaW5hbDsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRWYWx1ZUFzRG91YmxlKGRv
dWJsZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgY29uc3QgZmluYWw7CiAgICAgRXhjZXB0aW9u
T3I8dm9pZD4gc2V0VmFsdWVBc0RlY2ltYWwoY29uc3QgRGVjaW1hbCYsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IpIGNvbnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNw
cAppbmRleCBmMDZiZDU1OWIwMjc0YjA2NzVlYTRhZjc3NjdmODI1NWQ3NmJiMTQ2Li45YjVlMTBj
OWYxNjVjMDNiMWM5NmZlZjk1N2Y1NGZiM2JiNzZmMDRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1Jh
bmdlSW5wdXRUeXBlLmNwcApAQCAtMzQ1LDkgKzM0NSw5IEBAIHZvaWQgUmFuZ2VJbnB1dFR5cGU6
OmF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkKICAgICBJbnB1dFR5
cGU6OmF0dHJpYnV0ZUNoYW5nZWQobmFtZSk7CiB9CiAKLXZvaWQgUmFuZ2VJbnB1dFR5cGU6OnNl
dFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRF
dmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IpCit2b2lkIFJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1
ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRC
ZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVj
dGlvbikKIHsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2
ZW50QmVoYXZpb3IpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVlQ2hhbmdl
ZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAogICAgIGlmICghdmFsdWVDaGFuZ2VkKQog
ICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5w
dXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmgKaW5kZXggMTBm
ZDNhNzJlN2Q2ZDBiMDE3ZWY2YmIyYjRiOTU1MDQ4YzAxNTlhMy4uODRjN2IzZWQ2MjMwMGQ0MWVi
NDJlNGMzNTdiYmM3NGVhOWM1M2I4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUu
aApAQCAtNTcsNyArNTcsNyBAQCBwcml2YXRlOgogICAgIFN0cmluZyBzZXJpYWxpemUoY29uc3Qg
RGVjaW1hbCYpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2Vu
ZE1vdXNlRXZlbnRzKSBmaW5hbDsKICAgICB2b2lkIGF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVh
bGlmaWVkTmFtZSYpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQg
c2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIFN0cmlu
ZyBmYWxsYmFja1ZhbHVlKCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUo
Y29uc3QgU3RyaW5nJiBwcm9wb3NlZFZhbHVlKSBjb25zdCBmaW5hbDsKICAgICBib29sIHNob3Vs
ZFJlc3BlY3RMaXN0QXR0cmlidXRlKCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRG
aWVsZElucHV0VHlwZS5jcHAKaW5kZXggMzcwNTZlNDVlYjFhNzVjMTRmZDQzZTY1NmYxMzE0OWZh
NTFmMDMwNC4uMDM0NmZjYjM1ZDEwMDk0YmY2OGQ5MDJlMTE3YjdmYmY1ZjEwYjQ0YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcApAQCAtMTI3LDcgKzEyNyw3
IEBAIGJvb2wgVGV4dEZpZWxkSW5wdXRUeXBlOjp2YWx1ZU1pc3NpbmcoY29uc3QgU3RyaW5nJiB2
YWx1ZSkgY29uc3QKICAgICByZXR1cm4gIWVsZW1lbnQoKS0+aXNEaXNhYmxlZE9yUmVhZE9ubHko
KSAmJiBlbGVtZW50KCktPmlzUmVxdWlyZWQoKSAmJiB2YWx1ZS5pc0VtcHR5KCk7CiB9CiAKLXZv
aWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZh
bHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2
aW9yKQordm9pZCBUZXh0RmllbGRJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2Fu
aXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2
ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewog
ICAgIEFTU0VSVChlbGVtZW50KCkpOwogCkBAIC0xMzcsMTggKzEzNywyMCBAQCB2b2lkIFRleHRG
aWVsZElucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9v
bCB2YWx1ZUNoYW5nZQogCiAgICAgLy8gV2UgZG9uJ3QgYXNrIElucHV0VHlwZTo6c2V0VmFsdWUg
dG8gZGlzcGF0Y2ggZXZlbnRzIGJlY2F1c2UKICAgICAvLyBUZXh0RmllbGRJbnB1dFR5cGUgZGlz
cGF0Y2hlcyBldmVudHMgZGlmZmVyZW50IHdheSBmcm9tIElucHV0VHlwZS4KLSAgICBJbnB1dFR5
cGU6OnNldFZhbHVlKHNhbml0aXplZFZhbHVlLCB2YWx1ZUNoYW5nZWQsIERpc3BhdGNoTm9FdmVu
dCk7CisgICAgSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2Vk
LCBEaXNwYXRjaE5vRXZlbnQsIHNlbGVjdGlvbik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKTsKIAotICAgIHVu
c2lnbmVkIG1heCA9IHZpc2libGVWYWx1ZSgpLmxlbmd0aCgpOwotICAgIGlmIChpbnB1dC0+Zm9j
dXNlZCgpKQotICAgICAgICBpbnB1dC0+c2V0U2VsZWN0aW9uUmFuZ2UobWF4LCBtYXgpOwotICAg
IGVsc2UKLSAgICAgICAgaW5wdXQtPmNhY2hlU2VsZWN0aW9uSW5SZXNwb25zZVRvU2V0VmFsdWUo
bWF4KTsKKyAgICBpZiAoc2VsZWN0aW9uID09IFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb246
OlNldFNlbGVjdGlvblRvRW5kKSB7CisgICAgICAgIHVuc2lnbmVkIG1heCA9IHZpc2libGVWYWx1
ZSgpLmxlbmd0aCgpOworICAgICAgICBpZiAoaW5wdXQtPmZvY3VzZWQoKSkKKyAgICAgICAgICAg
IGlucHV0LT5zZXRTZWxlY3Rpb25SYW5nZShtYXgsIG1heCk7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIGlucHV0LT5jYWNoZVNlbGVjdGlvbkluUmVzcG9uc2VUb1NldFZhbHVlKG1heCk7Cisg
ICAgfQogCiAgICAgc3dpdGNoIChldmVudEJlaGF2aW9yKSB7CiAgICAgY2FzZSBEaXNwYXRjaENo
YW5nZUV2ZW50OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1
dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKaW5kZXgg
NGUxYmIxNTRjNWE3YjU2MWNiNTQ0ZmUyZDZmZmI4N2YwMmFjOWUzYS4uOTVlYjQ2MjVlZmI5NmNm
YmRhZDc0NGRjMjM0ZTA5Yzc0M2JhMWI0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9UZXh0RmllbGRJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVs
ZElucHV0VHlwZS5oCkBAIC03OCw3ICs3OCw3IEBAIHByb3RlY3RlZDoKICAgICBib29sIHN1cHBv
cnRzUmVhZE9ubHkoKSBjb25zdCBmaW5hbDsKICAgICB2b2lkIGhhbmRsZUZvY3VzRXZlbnQoTm9k
ZSogb2xkRm9jdXNlZE5vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKICAgICB2b2lkIGhhbmRs
ZUJsdXJFdmVudCgpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIG92ZXJyaWRlOwogICAg
IHZvaWQgdXBkYXRlSW5uZXJUZXh0VmFsdWUoKSBmaW5hbDsKICAgICBTdHJpbmcgc2FuaXRpemVW
YWx1ZShjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsKICAgICBib29sIHZhbHVlTWlzc2lu
Zyhjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzM2YxNDA2MjQxNzJjMjBlMzQz
M2FmMDVhYmZjOGRkZjRhYmYxZDQ0Li5kZWE1MmJiOWI2ZDQ0YmMxOTBmOTNkMWM0ZGJmYmU4Zjg3
MWJjYjU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjItMDMtMDkgIFppcmFuIFN1biAgPHpz
dW5AaWdhbGlhLmNvbT4KKworICAgICAgICBbU2VsZWN0aW9uXSBGaXhlcyBzZWxlY3Rpb24gcmFu
Z2Ugc2V0dGluZ3MgZm9yIFRFWFRBUkVBCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzc2NDEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBVcGRhdGVkIHR3byB0ZXN0cyBzaW5jZSBzZXRTZWxlY3Rpb25SYW5n
ZSBzaG91bGRuJ3QgY2hhbmdlIGZvY3VzLgorICAgICAgICBUaGlzIGlzIHRvIGJlIGluIGxpbmUg
d2l0aCB0aGUgYmVoYXZpb3IgaW4gY2hyb21pdW0uCisgICAgICAgICogZWRpdGluZy9wYXN0ZWJv
YXJkL3Bhc3RlLWludG8tdGV4dGFyZWEtd2l0aC1uZXctbGluZS5odG1sOgorICAgICAgICAqIGZh
c3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtdGV4dGFyZWEuaHRtbDoKKwogMjAyMi0wMy0wMSAg
Q2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtEZWJ1Z10gaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy91cmwvdG9hc2NpaS53aW5kb3cuaHRtbCBpcyBjcmFz
aGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggMzg4M2E5MDZhMDZkMThmNjVk
ZTg4OTdhNjM3NTYxZThiYTA5MmE0Zi4uNzg0ZTA5YjhkMjY3ODdkOWIzZTY0NTJkYmYxNTc0ZDUz
ZmRmYjUxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAK
KzIwMjItMDMtMDkgIFppcmFuIFN1biAgPHpzdW5AaWdhbGlhLmNvbT4KKworICAgICAgICBbU2Vs
ZWN0aW9uXSBGaXhlcyBzZWxlY3Rpb24gcmFuZ2Ugc2V0dGluZ3MgZm9yIFRFWFRBUkVBCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc2NDEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGluZyB0ZXN0
IGV4cGVjdGF0aW9ucyBhcyBzb21lIHN1Yi10ZXN0cyBhcmUgbm93IHBhc3NpbmcuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVj
dGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlv
bi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVu
ZC1leHRyYS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
c2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tdmFsdWUtaW50ZXJh
Y3Rpb25zLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
ZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGls
ZS1wYXJzaW5nLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMy0wMSAgQW50b2luZSBRdWludCAgPGdy
YW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBbd2ViLWFuaW1hdGlvbnNdIHdlYi1hbmltYXRp
b25zL2ludGVyZmFjZXMvQW5pbWF0YWJsZS9nZXRBbmltYXRpb25zLWlmcmFtZS5odG1sIGlzIGEg
dW5pcXVlIGZhaWx1cmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2Fy
ZC9wYXN0ZS1pbnRvLXRleHRhcmVhLXdpdGgtbmV3LWxpbmUuaHRtbCBiL0xheW91dFRlc3RzL2Vk
aXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1pbnRvLXRleHRhcmVhLXdpdGgtbmV3LWxpbmUuaHRtbApp
bmRleCA5MzliYjk3NjMxNzAyMWIzZThlZjI1NWQ2ZmYyYjljNzAyYmI2M2ViLi5lYzRkNTViNDM2
YWJhZDUxN2ExZmY0NGRkZTQ3MzAwN2IzYjdjNGE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9l
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtaW50by10ZXh0YXJlYS13aXRoLW5ldy1saW5lLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWludG8tdGV4dGFyZWEt
d2l0aC1uZXctbGluZS5odG1sCkBAIC0xMSw2ICsxMSw3IEBAIHRleHRhcmVhLnZhbHVlID0gIlxu
IjsKIHRleHRhcmVhLnJvd3MgPSAxMDsKIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGV4dGFy
ZWEpOwogdGV4dGFyZWEuZm9jdXMoKTsKK3RleHRhcmVhLnNldFNlbGVjdGlvblJhbmdlKDAsIDAp
Owogc2hvdWxkQmUoImRvY3VtZW50LmV4ZWNDb21tYW5kKCdJbnNlcnRIVE1MJywgZmFsc2UsICdm
aXJzdDxicj48YnI+dGhpcmQnKTsgdGV4dGFyZWEudmFsdWUiLCAiJ2ZpcnN0XFxuXFxudGhpcmRc
XG4nIik7CiAKIHZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vc25hdi10ZXh0YXJlYS5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vc25hdi10ZXh0YXJlYS5odG1sCmluZGV4
IDMzNjI3NjUwNDY2MjZkZDA3OWZhNzA5MWFhNjBlMjhlZGQyNmY4YzQuLjA5OTAwYWFkNjA5MWIy
N2M3OTM3Y2RmMTgyMzQ4NTc3ZGVkODljYTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
c3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtdGV4dGFyZWEuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LXRleHRhcmVhLmh0bWwKQEAgLTY1LDcgKzY1LDkg
QEAKICAgICAgIHRleHRhcmVhLnZhbHVlID0gImFiY1xuZCI7CiAKICAgICAgIC8vIHN0YXJ0aW5n
IHRoZSB0ZXN0IGl0c2VsZjogZ2V0IHRvIGEga25vd24gcGxhY2UuCi0gICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgic3RhcnQiKS5mb2N1cygpOworICAgICAgdGV4dGFyZWEuZm9jdXMoKTsK
KyAgICAgIHRleHRhcmVhLnNldFNlbGVjdGlvblJhbmdlKDAsIDApOworCiAKICAgICAgIGluaXRU
ZXN0KHJlc3VsdE1hcCwgdGVzdENvbXBsZXRlZCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jt
cy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zv
cm1zL3RleHRmaWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dAppbmRl
eCAzNmY1N2RiNzc4MTVlZWU3NDc1ZTk3MDJjOTkwNWY4NGQ2ZjRiY2I1Li40Y2EwZDNkZGZhZjk1
ZWQ0ZjdhYTdmZTYyODk3MzhmMjY3NjczMWExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVs
ZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3Rl
eHRmaWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dApAQCAtMiw3ICsy
LDcgQEAKIAogUEFTUyBEZWZhdWx0IHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgZm9y
IFtvYmplY3QgSFRNTFRleHRBcmVhRWxlbWVudF0KIFBBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNl
bGVjdGlvbkVuZCBkbyBub3QgY2hhbmdlIHdoZW4gc2FtZSB2YWx1ZSBzZXQgYWdhaW4gZm9yIFtv
YmplY3QgSFRNTFRleHRBcmVhRWxlbWVudF0KLUZBSUwgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVj
dGlvbkVuZCBjaGFuZ2Ugd2hlbiB2YWx1ZSBjaGFuZ2VkIHRvIHVwcGVyIGNhc2UgZm9yIFtvYmpl
Y3QgSFRNTFRleHRBcmVhRWxlbWVudF0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMyBidXQgZ290
IDAKK1BBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBjaGFuZ2Ugd2hlbiB2YWx1
ZSBjaGFuZ2VkIHRvIHVwcGVyIGNhc2UgZm9yIFtvYmplY3QgSFRNTFRleHRBcmVhRWxlbWVudF0K
IFBBU1MgRGVmYXVsdCBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0aW9uRW5kIGZvciBbb2JqZWN0
IEhUTUxJbnB1dEVsZW1lbnRdCiBQQVNTIHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQg
ZG8gbm90IGNoYW5nZSB3aGVuIHNhbWUgdmFsdWUgc2V0IGFnYWluIGZvciBbb2JqZWN0IEhUTUxJ
bnB1dEVsZW1lbnRdCiBQQVNTIHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgY2hhbmdl
IHdoZW4gdmFsdWUgY2hhbmdlZCB0byB1cHBlciBjYXNlIGZvciBbb2JqZWN0IEhUTUxJbnB1dEVs
ZW1lbnRdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24t
c3RhcnQtZW5kLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVj
dGlvbi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0CmluZGV4IDY4ZGZjNzUzYjViMmUwZDkwNjg5MzY0
Y2RjMzUxYzM4MWFmMDVhZGIuLmYxZmI1YTAxYjg3MTZhNDAyMzUxYjFlNDRmNTBlYjIxOTUzZTVl
NjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFy
dC1lbmQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVj
dGlvbi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0CkBAIC02LDE4ICs2LDE4IEBAIFBBU1MgSW5pdGlh
bCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQg
dG8gZW5kIG9mIHZhCiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5k
ZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlh
bCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxl
Y3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlu
cHV0LW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8g
ZW5kIG9mIHZhbHVlCi1GQUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRl
ZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRh
cmVhLW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1
ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFs
dWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rp
b25TdGFydCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdv
dCAwCi1GQUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJl
Zm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9u
IHRleHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZh
bHVlCitQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQgc2hv
dWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFs
dWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rp
b25TdGFydCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRh
cmVhLW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8g
ZW5kIG9mIHZhbHVlCiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1hcHBlbmRlZCBz
aG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFs
dWUgc2V0IG9uIGlucHV0LW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBl
bmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkLXBy
ZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCiBQQVNTIElu
aXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQg
c2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0
IG9uIHRleHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2
YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAu
dmFsdWUgc2V0IG9uIHRleHRhcmVhLW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVu
ZCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1G
QUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNo
b3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLW5v
dC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2
YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKK1BBU1MgSW5pdGlhbCAu
dmFsdWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRv
IGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90LWFw
cGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0
aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0
IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9u
IHRleHRhcmVhLW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5k
IHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBvbnNlbGVjdCBzaG91bGQgZmlyZSB3aGVuIHNlbGVjdGlv
blN0YXJ0IGlzIGNoYW5nZWQKIE5PVFJVTiBvbnNlbGVjdCBzaG91bGQgZmlyZSB3aGVuIHNlbGVj
dGlvblN0YXJ0IGlzIGNoYW5nZWQgb24gaW5wdXQtYXBwZW5kZWQKIE5PVFJVTiBvbnNlbGVjdCBz
aG91bGQgZmlyZSB3aGVuIHNlbGVjdGlvblN0YXJ0IGlzIGNoYW5nZWQgb24gaW5wdXQtbm90LWFw
cGVuZGVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24t
c3RhcnQtZW5kLWV4dHJhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9u
L3NlbGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CmluZGV4IDk0MzM5NjExZDk1
ZDIxNWRjMzkzYjU0MjRmYjhiNzdiNGQ4NzcyYmEuLjgyZDVlYjM2NTU2M2ZhMTlhZjVjNmFjNzk2
NmIyZTVhMTAxNTg5MWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3Nl
bGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZp
ZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFydC1lbmQtZXh0cmEtZXhwZWN0ZWQudHh0CkBAIC0x
LDEyICsxLDEyIEBACiAKIFBBU1MgU2V0dGluZyBkZWZhdWx0VmFsdWUgaW4gYSB0ZXh0YXJlYSBz
aG91bGQgTk9UIG1vdmUgdGhlIGN1cnNvciB0byB0aGUgZW5kCi1GQUlMIFNldHRpbmcgZGVmYXVs
dFZhbHVlIGluIGEgdGV4dGFyZWEgd2l0aCBhIHZhbHVlIHNob3VsZCBOT1QgbWFrZSBhbnkgZGlm
ZmVyZW5jZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCA2IGJ1dCBnb3QgMAorUEFTUyBTZXR0aW5n
IGRlZmF1bHRWYWx1ZSBpbiBhIHRleHRhcmVhIHdpdGggYSB2YWx1ZSBzaG91bGQgTk9UIG1ha2Ug
YW55IGRpZmZlcmVuY2UKIFBBU1MgU2V0dGluZyB0ZXh0Q29udGVudCBpbiBhIHRleHRhcmVhIHNo
b3VsZCBOT1QgbW92ZSBzZWxlY3Rpb257U3RhcnQsRW5kfSB0byB0aGUgZW5kCiBQQVNTIEFkZGlu
ZyBjaGlsZHJlbiB0byBhIHRleHRhcmVhIHNob3VsZCBOT1QgbW92ZSBzZWxlY3Rpb257U3RhcnQs
RW5kfSB0byB0aGUgZW5kCiBQQVNTIFJlbW92aW5nIGNoaWxkcmVuIGZyb20gYSB0ZXh0YXJlYSBz
aG91bGQgTk9UIHVwZGF0ZSBzZWxlY3Rpb257U3RhcnQsRW5kfQogUEFTUyBTZXR0aW5nIHRoZSBz
YW1lIHZhbHVlICh3aXRoIGRpZmZlcmVudCBuZXdsaW5lcykgaW4gYSB0ZXh0YXJlYSBzaG91bGQg
Tk9UIHVwZGF0ZSBzZWxlY3Rpb257U3RhcnQsRW5kfQogRkFJTCBSZW1vdmluZyBjaGlsZCBub2Rl
cyBpbiBub24tZGlydHkgdGV4dGFyZWEgc2hvdWxkIG1ha2Ugc2VsZWN0aW9ue1N0YXJ0LEVuZH0g
MCBhc3NlcnRfZXF1YWxzOiBzZWxlY3Rpb25TdGFydCBhZnRlciBub2RlIHJlbW92YWwgZXhwZWN0
ZWQgMCBidXQgZ290IDMKLUZBSUwgU2V0dGluZyB2YWx1ZSB0byBhIHNob3J0ZXIgc3RyaW5nIHRo
YW4gZGVmYXVsdFZhbHVlIHNob3VsZCBjb3JyZWN0IHRoZSBjdXJzb3IgcG9zaXRpb24gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMiBidXQgZ290IDMKK1BBU1MgU2V0dGluZyB2YWx1ZSB0byBhIHNo
b3J0ZXIgc3RyaW5nIHRoYW4gZGVmYXVsdFZhbHVlIHNob3VsZCBjb3JyZWN0IHRoZSBjdXJzb3Ig
cG9zaXRpb24KIFBBU1MgU2hvcnRlbmluZyB2YWx1ZSBieSB0dXJuaW5nIHRoZSBpbnB1dCB0eXBl
IGludG8gJ3VybCcgc2hvdWxkIGNvcnJlY3Qgc2VsZWN0aW9ue1N0YXJ0LEVuZH0KIEZBSUwgU2hv
cnRlbmluZyB2YWx1ZSBieSB0dXJuaW5nIHRoZSBpbnB1dCB0eXBlIGludG8gJ2NvbG9yJyBhbmQg
YmFjayB0byAndGV4dCcgc2hvdWxkIGNvcnJlY3Qgc2VsZWN0aW9ue1N0YXJ0LEVuZH0gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDkKIFBBU1MgUmVzZXR0aW5nIGEgdmFsdWUgdG8g
YSBzaG9ydGVyIHN0cmluZyB0aGFuIGRlZmF1bHRWYWx1ZSBzaG91bGQgY29ycmVjdCB0aGUgY3Vy
c29yIHBvc2l0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxl
Y3Rpb24tdmFsdWUtaW50ZXJhY3Rpb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxk
c2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0CmluZGV4
IDg0MTBhODI5YmJmYWE4OGMxOTc5OTMxNDFmMGMyMDdmMDQ1MDNjYzQuLmIxOTA3NGVkOTg0ODc1
MDZkYjg3OGY3MmJjZTE0NDQ0N2IzMDRhNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxk
c2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMt
ZXhwZWN0ZWQudHh0CkBAIC0xMSw2ICsxMSw2IEBAIFBBU1MgdmFsdWUgZGlydHkgZmxhZyBiZWhh
dmlvciBhZnRlciBzZXRSYW5nZVRleHQgb24gZm9jdXNlZCB0aGVuIGJsdXJyZWQgdGV4dGFyCiBQ
QVNTIHZhbHVlIGRpcnR5IGZsYWcgYmVoYXZpb3IgYWZ0ZXIgc2V0UmFuZ2VUZXh0IG9uIGZvY3Vz
ZWQgdGhlbiBibHVycmVkIGlucHV0CiBQQVNTIHNlbGVjdGlvbiBpcyBjb2xsYXBzZWQgdG8gdGhl
IGVuZCBhZnRlciBjaGFuZ2luZyB2YWx1ZXMgb24gaW5wdXQKIFBBU1Mgc2VsZWN0aW9uIGlzIG5v
dCBjb2xsYXBzZWQgdG8gdGhlIGVuZCB3aGVuIHZhbHVlIGlzIHNldCB0byBpdHMgZXhpc3Rpbmcg
dmFsdWUgb24gaW5wdXQKLUZBSUwgc2VsZWN0aW9uIGlzIGNvbGxhcHNlZCB0byB0aGUgZW5kIGFm
dGVyIGNoYW5naW5nIHZhbHVlcyBvbiB0ZXh0YXJlYSBhc3NlcnRfZXF1YWxzOiBlbGVtZW50LnNl
bGVjdGlvblN0YXJ0IHNob3VsZCBiZSB2YWx1ZS5sZW5ndGggZXhwZWN0ZWQgMyBidXQgZ290IDAK
K1BBU1Mgc2VsZWN0aW9uIGlzIGNvbGxhcHNlZCB0byB0aGUgZW5kIGFmdGVyIGNoYW5naW5nIHZh
bHVlcyBvbiB0ZXh0YXJlYQogUEFTUyBzZWxlY3Rpb24gaXMgbm90IGNvbGxhcHNlZCB0byB0aGUg
ZW5kIHdoZW4gdmFsdWUgaXMgc2V0IHRvIGl0cyBleGlzdGluZyB2YWx1ZSBvbiB0ZXh0YXJlYQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi90ZXh0YXJlYS1zZWxlY3Rp
b24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlv
bi90ZXh0YXJlYS1zZWxlY3Rpb24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggZTA2
ZDA3MzJjM2YyZTBiMTAxOWMwNzIzMTE2NGExOTY1Y2Q2MDUyNy4uNDc2MzU5YTg0MjI4YzE1ZDJh
NGI4ODM4ZmMxOTUxY2I1MTc5YTU3NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxl
Y3Rpb24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGlsZS1wYXJz
aW5nLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAogCi1GQUlMIFZhbHVlIHNldHRlciB3
aGlsZSBwYXJzaW5nIHRleHRhcmVhIGNoaWxkcmVuIHNob3VsZCBtb3ZlIHNlbGVjdGlvbntTdGFy
dCxFbmR9IHRvIHRoZSBlbmQgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMyBidXQgZ290IDAKK1BB
U1MgVmFsdWUgc2V0dGVyIHdoaWxlIHBhcnNpbmcgdGV4dGFyZWEgY2hpbGRyZW4gc2hvdWxkIG1v
dmUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0gdG8gdGhlIGVuZAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250
ZW50LWNoYW5nZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZp
ZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250ZW50LWNoYW5nZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYTY1ZWQ2ODY4ZDI3NDE0MmVlYWIzMzkxMWJhYjZlNjg2OTM3OTMyMQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vc2VsZWN0aW9uLWFmdGVyLWNvbnRlbnQtY2hhbmdlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDIxIEBACisKKworUEFTUyBpbnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5v
dCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIGlucHV0IG91dCBvZiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2
YWx1ZQorUEFTUyBpbnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFu
Z2Ugd2hlbiBzZXR0aW5nIGEgdmFsdWUgdGhhdCBiZWNvbWVzIHRoZSBzYW1lIGFmdGVyIHRoZSB2
YWx1ZSBzYW5pdGl6YXRpb24gYWxnb3JpdGhtCitQQVNTIGlucHV0IGluIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBp
bnB1dCBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRp
ZmZlcmVudCB2YWx1ZQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90
IGNoYW5nZSB3aGVuIHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIg
dGhlIHZhbHVlIHNhbml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQs
IHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBz
YW1lIHZhbHVlCitQQVNTIGlucHV0IGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24g
bXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQQVNTIGlucHV0IGlu
IGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0
dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2FtZSBhZnRlciB0aGUgdmFsdWUgc2FuaXRp
emF0aW9uIGFsZ29yaXRobQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlv
biBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIHRleHRh
cmVhIG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBh
IGRpZmZlcmVudCB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlv
biBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIG5vcm1hbGl6ZWQgdmFsdWUK
K1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hl
biBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQQVNTIHRl
eHRhcmVhIGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGlu
ZyB0aGUgc2FtZSBub3JtYWxpemVkIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50LCB3
aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2Ft
ZSB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9u
IG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2YWx1ZQorUEFTUyB0ZXh0YXJl
YSBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVu
IHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250
ZW50LWNoYW5nZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZp
ZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250ZW50LWNoYW5nZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYTY1ZWQ2ODY4ZDI3NDE0MmVlYWIzMzkxMWJhYjZlNjg2OTM3OTMyMQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vc2VsZWN0aW9uLWFmdGVyLWNvbnRlbnQtY2hhbmdlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDIxIEBACisKKworUEFTUyBpbnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5v
dCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIGlucHV0IG91dCBvZiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2
YWx1ZQorUEFTUyBpbnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFu
Z2Ugd2hlbiBzZXR0aW5nIGEgdmFsdWUgdGhhdCBiZWNvbWVzIHRoZSBzYW1lIGFmdGVyIHRoZSB2
YWx1ZSBzYW5pdGl6YXRpb24gYWxnb3JpdGhtCitQQVNTIGlucHV0IGluIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBp
bnB1dCBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRp
ZmZlcmVudCB2YWx1ZQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90
IGNoYW5nZSB3aGVuIHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIg
dGhlIHZhbHVlIHNhbml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQs
IHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBz
YW1lIHZhbHVlCitQQVNTIGlucHV0IGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24g
bXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQQVNTIGlucHV0IGlu
IGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0
dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2FtZSBhZnRlciB0aGUgdmFsdWUgc2FuaXRp
emF0aW9uIGFsZ29yaXRobQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlv
biBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIHRleHRh
cmVhIG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBh
IGRpZmZlcmVudCB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlv
biBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIG5vcm1hbGl6ZWQgdmFsdWUK
K1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hl
biBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQQVNTIHRl
eHRhcmVhIGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGlu
ZyB0aGUgc2FtZSBub3JtYWxpemVkIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50LCB3
aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2Ft
ZSB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9u
IG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2YWx1ZQorUEFTUyB0ZXh0YXJl
YSBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVu
IHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454579</attachid>
            <date>2022-03-14 04:38:12 -0700</date>
            <delta_ts>2022-03-14 05:06:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237641-20220314113811.patch</filename>
            <type>text/plain</type>
            <size>50324</size>
            <attacher>zsun</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWI2NDJlMWFiZjhiYmZk
NDUzYTNmZTk2ODIzNjM4NjY5NDVmMGFjNy4uNDhlODUyMzIwZDk5ZGNjYzg2YjQ2YTE0YjNlNDAz
ZWI4MmU5ZWY2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcyIEBACisyMDIyLTAzLTA5ICBaaXJh
biBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVjdGlvbl0gRml4ZXMgc2Vs
ZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBDTCBpcyB0byBmaXggdGhlIHNldHRpbmdz
IG9mIFNlbGVjdGlvblN0YXJ0L1NlbGVjdGlvbkVuZCBmb3IgVEVYVEFSRUEgZm9yIG5vbi1mb2N1
c2VkIEVsZW1lbnQuIEl0IHNldHMgdGhlCisgICAgICAgIGNhcmV0IHRvIHRoZSBlbmQgb2YgdGhl
IHRleHQgdmFsdWUgZXhjZXB0IGZvciBpbml0aWFsaXppbmcgaW4gbW9zdCBjYXNlcy4gRm9yIHRo
ZSBjYXNlIG9mIHVwZGF0aW5nIGRlZmF1bHRWYWx1ZQorICAgICAgICBmb3IgYSBub24tZGlydHkg
VEVYVEFSRUEsIHdlIHNob3VsZCBmb2xsb3dpbmcgdGhlIGNsYW1waW5nIHN0ZXBzIGFzIHBlciBz
cGVjIGFuZCBpdCB3aWxsIGJlIGFkZHJlc3NlZCBpbiBhIAorICAgICAgICBmb2xsb3ctdXAgcGF0
Y2guICAgICAgICAKKworICAgICAgICBUaGlzIENMIHJlZmVycyBhbmQgaW1wb3J0cyBwYXJ0IG9m
IHRoZSBjaGFuZ2VzIGluIGNocm9taXVtIENMIGF0CisgICAgICAgIGh0dHBzOi8vY29kZXJldmll
dy5jaHJvbWl1bS5vcmcvMzkyNTczMDAyCisKKyAgICAgICAgVGV4dEFyZWEgb25seSBjYWxscyBz
ZXRTZWxlY3Rpb25SYW5nZSgpIGZvciBmb2N1c2VkIGVsZW1lbnQuIFdoaWxlIGZvciBub24tZm9j
dXNlZCBlbGVtZW50LCB3ZSBuZWVkIHRvIHVwZGF0ZSB0aGUgY2FyZXQKKyAgICAgICAgZXhjZXB0
IGZvciBpbml0aWFsaXppbmcuIFNpbmNlIHdlIGFyZSBub3QgY2hhbmdlIHRleHQgc2VsZWN0aW9u
IGZvciB0ZXh0IGFyZWEgaW4gdGhpcyBjYXNlLCB3ZSBvbmx5IGNhY2hlIHRoZSBzZWxlY3Rpb25z
LgorICAgICAgICBJdCB3b3VsZCBiZSBpZGVhbCB0byBoYXZlIGEgdW5pZmllZCBmdW5jdGlvbiBj
YWxsIGZvciBib3RoIGZvY3VzZWQgYW5kIG5vbi1mb2N1c2VkIGNhc2VzLiBIb3dldmVyLCB0aGUg
c2VsZWN0aW9uUmFuZ2UoKQorICAgICAgICBmdW5jdGlvbiBjaGFuZ2VzIGZvY3VzIG9mIHRoZSBl
bGVtZW50IGFuZCB0aGUgYXBwcm9hY2ggd2UgYXJlIGhhdmluZyBoZXJlIGlzIHRvIGF2b2lkIHRo
ZSBpbXBhY3RzIG9uIGEgZ29vZCBudW1iZXIgb2YKKyAgICAgICAgZXhpc2l0aW5nIHRlc3RzLgor
CisgICAgICAgIFRoaXMgQ0wgYWxzbyBpbnRyb2R1Y2VzIGEgdW5pZmllZCBzZXRWYWx1ZSgpIEFQ
SSBpbiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IGZvciBIVE1MVGV4dEFyZWFFbGVtZW50IGFuZCBI
VE1MSW5wdXRFbGVtZW50LgorCisgICAgICAgICogaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAg
ICAgICAgKiBodG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0Jhc2VD
aGVja2FibGVJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QmFzZUNoZWNrYWJsZUlu
cHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlw
ZS5oOgorICAgICAgICAqIGh0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAg
ICAoV2ViQ29yZTo6QmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpkaWRDaGFuZ2VWYWx1ZUZyb21D
b250cm9sKToKKyAgICAgICAgKiBodG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAg
ICAgICAqIGh0bWwvQ29sb3JJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29sb3JJ
bnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0NvbG9ySW5wdXRUeXBlLmg6Cisg
ICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVJ
bnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0ZpbGVJbnB1dFR5cGUuaDoKKyAg
ICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TElucHV0RWxlbWVudDo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVu
dC5oOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQpOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRl
eHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
VGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZUNvbW1vbik6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
VGV4dEFyZWFFbGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllc0Zyb21FbGVtZW50KToK
KyAgICAgICAgKiBodG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hU
TUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxUZXh0
Rm9ybUNvbnRyb2xFbGVtZW50OjpzZXRSYW5nZVRleHQpOgorICAgICAgICAqIGh0bWwvSFRNTFRl
eHRGb3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpIaWRkZW5JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAg
ICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0
bWwvSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6TnVtYmVySW5wdXRUeXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRt
bC9OdW1iZXJJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1JhbmdlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICog
aHRtbC9SYW5nZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUpOgor
ICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmg6CisKIDIwMjItMDMtMDEgIEFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtJRkNdW0ludGVncmF0aW9uXSBJ
bmxpbmVJdGVyYXRvcjo6Qm94OjpyZWN0KCkgcmV0dXJucyB0aGUgdW5mbGlwcGVkIHZpc3VhbCBy
ZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcAppbmRleCA0
ZTczOTUzODEyZDQwODRjODVkYmUxMDVjN2E5MzU2OTVmNzBjY2ZlLi44ODIxMGMzMzlmNTU1OTZk
NjEyMWY1MDY1Mjg1MGQ0NjAwZGMxODMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUJ1
dHRvbklucHV0VHlwZS5jcHAKQEAgLTYyLDcgKzYyLDcgQEAgYm9vbCBCYXNlQnV0dG9uSW5wdXRU
eXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNl
OwogfQogCi12b2lkIEJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYg
c2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VC
dXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJv
b2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24p
CiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVX
aXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaAppbmRleCBlNDE0NjM0MWIwNGY0MTk4
Y2IwNzA2YjlhNjUyZDY2OTE2YzAyZGMyLi40ZjhlOGExYWUzZjNmNDYxODY5ZjY2YzFlNmYyYjdh
OWIxYzM2OTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1
dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaApA
QCAtNDQsNyArNDQsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgYXBwZW5kRm9ybURhdGEoRE9NRm9y
bURhdGEmKSBjb25zdCBvdmVycmlkZTsKICAgICBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3Jl
YXRlSW5wdXRSZW5kZXJlcihSZW5kZXJTdHlsZSYmKSBvdmVycmlkZTsKICAgICBib29sIHN0b3Jl
c1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1
ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBvdmVycmlkZTsK
KyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVo
YXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIG92ZXJyaWRlOwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
Q2hlY2thYmxlSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNoZWNrYWJs
ZUlucHV0VHlwZS5jcHAKaW5kZXggMDY1Y2VjMGU2NWJjNzI3NDNhMmZkMjFmODZjM2M1ODhkYWVh
MTEzZi4uOGE1NGNhMDUzNTRhOTMwMjc1OWFiNzViYTNhMTc1NWY3YjlmNDU1ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwCkBAIC0xMDgsNyAr
MTA4LDcgQEAgYm9vbCBCYXNlQ2hlY2thYmxlSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRl
RnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEJhc2VDaGVja2Fi
bGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2ws
IFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNl
dFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVs
ZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0
aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jh
c2VDaGVja2FibGVJbnB1dFR5cGUuaAppbmRleCBiNDlhNzdhNDE1OTI1MWIxODUwMTQ5ZTEwMDdj
ZGY0MDA2YzA5YTI0Li42YmY1ZDUxZmFiMmE2ZGI5ODMwYzIzZTZmYjFiMjhlZGEwNTdjZTk4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaApAQCAtNTAs
NyArNTAsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1v
dXNlRXZlbnRzKSBvdmVycmlkZTsKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IG92
ZXJyaWRlOwogICAgIGJvb2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwg
Ym9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bikgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAKaW5kZXggY2Y3Y2MzMWYz
NDJmN2I1YTc0NzQ3NWU0Y2NhMTg5YmQxM2E3NDEzZS4uMzc1NTI4MWQxODJlM2FhYmUxOGM3OWQ5
ZDM1MTM2OWFjNzM1NGU4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0
ZUFuZFRpbWVJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmNwcApAQCAtMjc3LDkgKzI3Nyw5IEBAIGJvb2wgQmFzZURhdGVBbmRU
aW1lSW5wdXRUeXBlOjpzaG91bGRIYXZlTWlsbGlzZWNvbmRGaWVsZChjb25zdCBEYXRlQ29tcG9u
ZW50cyYKICAgICAgICAgfHwgIXN0ZXBSYW5nZS5zdGVwKCkucmVtYWluZGVyKG1zZWNQZXJTZWNv
bmQpLmlzWmVybygpOwogfQogCi12b2lkIEJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxk
RXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
IHNlbGVjdGlvbikKIHsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5n
ZWQsIGV2ZW50QmVoYXZpb3IpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVl
Q2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKICAgICBpZiAodmFsdWVDaGFuZ2Vk
KQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1ZSgpOwogfQpAQCAtNDcwLDcgKzQ3MCw3IEBA
IHZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpkaWRCbHVyRnJvbUNvbnRyb2woKQogdm9p
ZCBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmRpZENoYW5nZVZhbHVlRnJvbUNvbnRyb2woKQog
ewogICAgIFN0cmluZyB2YWx1ZSA9IHNhbml0aXplVmFsdWUobV9kYXRlVGltZUVkaXRFbGVtZW50
LT52YWx1ZSgpKTsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZSAhPSBlbGVt
ZW50KCktPnZhbHVlKCksIERpc3BhdGNoSW5wdXRBbmRDaGFuZ2VFdmVudCk7CisgICAgSW5wdXRU
eXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWUgIT0gZWxlbWVudCgpLT52YWx1ZSgpLCBEaXNwYXRj
aElucHV0QW5kQ2hhbmdlRXZlbnQsIERvTm90U2V0KTsKIAogICAgIERhdGVUaW1lQ2hvb3NlclBh
cmFtZXRlcnMgcGFyYW1ldGVyczsKICAgICBpZiAoIXNldHVwRGF0ZVRpbWVDaG9vc2VyUGFyYW1l
dGVycyhwYXJhbWV0ZXJzKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURh
dGVBbmRUaW1lSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGlt
ZUlucHV0VHlwZS5oCmluZGV4IGI2ODVmOGUxOWZmYjQ4ODU1ZjRlMmZlODJlM2IxMjFiZTQ5M2E3
M2QuLjZiZjZkNmI5MDNiNGFkNzY1OTZiYmFjY2U1NGQxN2QzN2EzMWU4Y2YgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuaApAQCAtMTAxLDcgKzEw
MSw3IEBAIHByaXZhdGU6CiAgICAgLy8gSW5wdXRUeXBlIGZ1bmN0aW9uczoKICAgICBTdHJpbmcg
dmlzaWJsZVZhbHVlKCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29u
c3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJp
bmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7Cisg
ICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZp
ZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAg
ICAgV2FsbFRpbWUgdmFsdWVBc0RhdGUoKSBjb25zdCBvdmVycmlkZTsKICAgICBFeGNlcHRpb25P
cjx2b2lkPiBzZXRWYWx1ZUFzRGF0ZShXYWxsVGltZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91
YmxlIHZhbHVlQXNEb3VibGUoKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklu
cHV0VHlwZS5jcHAKaW5kZXggZjExOWU4MmIzNzdkZGI0MWZjZDllOGI5M2FhN2ZjZWZhMGY1ZGMw
ZC4uMTcwZmJjNTE0MDE2YTQ0MTQ4ODQwOTYwNWM5OGQ3MjRlNWI1NmZmZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKQEAgLTE1Myw5ICsxNTMsOSBAQCB2b2lkIENvbG9y
SW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlKCkKICAgICB1cGRhdGVDb2xvclN3YXRjaCgp
OwogfQogCi12b2lkIENvbG9ySW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVl
LCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9y
KQordm9pZCBDb2xvcklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4
dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpz
ZXRWYWx1ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5
cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlv
bik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9Db2xvcklucHV0VHlwZS5oCmluZGV4IDExNmRhYjExN2I5NzU5YjIzNjE3MzcwZWQ0ODM3
OWE4Yzc3YTMzNzkuLmM4ZmVhNmEzMjYyMDY0YTgyZDQ1ZjNkZTFlMDBiYjM1Y2MyNWI0ZDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBlLmgKQEAgLTYzLDcgKzYzLDcgQEAgcHJpdmF0
ZToKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBz
YW5pdGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgY3JlYXRl
U2hhZG93U3VidHJlZSgpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwg
Ym9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIHZv
aWQgYXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWROYW1lJikgZmluYWw7CiAgICAgdm9p
ZCBoYW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50JikgZmluYWw7CiAgICAgdm9pZCBkZXRhY2go
KSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGVhN2RmYWNm
NjJiNzgyNTU5ZDY1ZTNiZmI2YjNkMGNjZGZlMjUyMWMuLmI2NWI4NzBlYTcwNTQ1MGIzYzZlOTNk
NmMzMmJiZmJmOWU3MGM0NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlu
cHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApA
QCAtMjUzLDcgKzI1Myw3IEBAIGJvb2wgRmlsZUlucHV0VHlwZTo6Z2V0VHlwZVNwZWNpZmljVmFs
dWUoU3RyaW5nJiB2YWx1ZSkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBGaWxlSW5wdXRU
eXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9y
KQordm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0
RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKQogewogICAg
IC8vIEZJWE1FOiBTaG91bGQgd2UgY2xlYXIgdGhlIGZpbGUgbGlzdCwgb3IgcmVwbGFjZSBpdCB3
aXRoIGEgbmV3IGVtcHR5IG9uZSBoZXJlPyBUaGlzIGlzIG9ic2VydmFibGUgZnJvbSBKYXZhU2Ny
aXB0IHRocm91Z2ggY3VzdG9tIHByb3BlcnRpZXMuCiAgICAgbV9maWxlTGlzdC0+Y2xlYXIoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKaW5kZXggOTE1N2IxNzkwMjkyMDBmM2M0MzA4
OGNiNmE0YzZiZTU1ZTAwMDIzYS4uZWUxMDg0OTc4M2ZhZmVkMmFhOWM3OGI2MDA2YmJkZWRlZTY1
NDQxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKQEAgLTY5LDcgKzY5LDcgQEAg
cHJpdmF0ZToKICAgICBTdHJpbmcgZGlzcGxheVN0cmluZygpIGNvbnN0IGZpbmFsOwogICAgIGJv
b2wgY2FuU2V0VmFsdWUoY29uc3QgU3RyaW5nJikgZmluYWw7CiAgICAgYm9vbCBnZXRUeXBlU3Bl
Y2lmaWNWYWx1ZShTdHJpbmcmKSBmaW5hbDsgLy8gQ2hlY2tlZCBmaXJzdCwgYmVmb3JlIGludGVy
bmFsIHN0b3JhZ2Ugb3IgdGhlIHZhbHVlIGF0dHJpYnV0ZS4KLSAgICB2b2lkIHNldFZhbHVlKGNv
bnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBm
aW5hbDsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2Vk
LCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBm
aW5hbDsKIAogI2lmIEVOQUJMRShEUkFHX1NVUFBPUlQpCiAgICAgYm9vbCByZWNlaXZlRHJvcHBl
ZEZpbGVzV2l0aEltYWdlVHJhbnNjb2RpbmcoY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhdGhzKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IGJjZDZjOGEwZWI3
MDk5MjI2OTU0YWJkN2Q5ZTBkNTRiZWI1N2RlZWEuLjIyZTZkZjYzZjNkYThkMDgyOTExYWZkMWUx
NTdmMzI0YmNhNzBmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNw
cApAQCAtMTA2NCw3ICsxMDY0LDcgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZUZv
clVzZXIoY29uc3QgU3RyaW5nJiB2YWx1ZSkKICAgICBzZXRWYWx1ZSh2YWx1ZSwgRGlzcGF0Y2hD
aGFuZ2VFdmVudCk7CiB9CiAKLUV4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNl
dFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRC
ZWhhdmlvcikKK0V4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNv
bnN0IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwg
VGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7CiAgICAgaWYgKGlzRmls
ZVVwbG9hZCgpICYmICF2YWx1ZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciB9OwpAQCAtMTA3OSw3ICsxMDc5LDcgQEAgRXhjZXB0aW9uT3I8
dm9pZD4gSFRNTElucHV0RWxlbWVudDo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4
dEZpZWxkRXZlbnQKIAogICAgIHNldExhc3RDaGFuZ2VXYXNOb3RVc2VyRWRpdCgpOwogICAgIHNl
dEZvcm1Db250cm9sVmFsdWVNYXRjaGVzUmVuZGVyZXIoZmFsc2UpOwotICAgIG1faW5wdXRUeXBl
LT5zZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsK
KyAgICBtX2lucHV0VHlwZS0+c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwg
ZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAogICAgIGJvb2wgd2FzTW9kaWZpZWRQcm9ncmFt
bWF0aWNhbGx5ID0gZXZlbnRCZWhhdmlvciA9PSBEaXNwYXRjaE5vRXZlbnQ7CiAgICAgaWYgKHdh
c01vZGlmaWVkUHJvZ3JhbW1hdGljYWxseSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTElucHV0RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmgKaW5kZXggY2M1MGZlZTMzYzk4ZDFmODkyYTQ3ZTRjMDUxNDEyOTNmZjEzMWFhMC4uODUw
NGZiNjI2OTZjN2YwMWUxODliMmQ3MzE5Zjc4MDBjNTljODU3NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MSW5wdXRFbGVtZW50LmgKQEAgLTE3MSw3ICsxNzEsNyBAQCBwdWJsaWM6CiAgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBzZXRUeXBlKGNvbnN0IEF0b21TdHJpbmcmKTsKIAogICAgIFdFQkNP
UkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JU
IEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQpOworICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlv
bk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3Ig
PSBEaXNwYXRjaE5vRXZlbnQsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29u
dHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgZmluYWw7CiAgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBzZXRWYWx1ZUZvclVzZXIoY29uc3QgU3RyaW5nJik7CiAgICAgLy8g
Q2hlY2tzIGlmIHRoZSBzcGVjaWZpZWQgc3RyaW5nIHdvdWxkIGJlIGEgdmFsaWQgdmFsdWUuCiAg
ICAgLy8gV2Ugc2hvdWxkIG5vdCBjYWxsIHRoaXMgZm9yIHR5cGVzIHdpdGggbm8gc3RyaW5nIHZh
bHVlIHN1Y2ggYXMgQ0hFQ0tCT1ggYW5kIFJBRElPLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFRleHRBcmVhRWxlbWVudC5jcHAKaW5kZXggYWE1MmYwMGRiNWRjMDZkZDMwNDgxNmUxMzMxNTVh
NzM5YTRhMTIzYi4uOWRhOGRhNDZlMDIxMWUwOTg2NjRhMTNjMWQwYjQ1OWYwN2ZlNzk2NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwCkBAIC0xMzYsNyAr
MTM2LDcgQEAgdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoY29uc3Qg
Q2hpbGRDaGFuZ2UmIGNoYW5nZSkKICAgICBpZiAobV9pc0RpcnR5KQogICAgICAgICBzZXRJbm5l
clRleHRWYWx1ZSh2YWx1ZSgpKTsKICAgICBlbHNlCi0gICAgICAgIHNldE5vbkRpcnR5VmFsdWUo
ZGVmYXVsdFZhbHVlKCkpOworICAgICAgICBzZXROb25EaXJ0eVZhbHVlKGRlZmF1bHRWYWx1ZSgp
LCAgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6RG9Ob3RTZXQpOwogfQogCiBib29sIEhU
TUxUZXh0QXJlYUVsZW1lbnQ6Omhhc1ByZXNlbnRhdGlvbmFsSGludHNGb3JBdHRyaWJ1dGUoY29u
c3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkgY29uc3QKQEAgLTI0MSw3ICsyNDEsNyBAQCBib29sIEhU
TUxUZXh0QXJlYUVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRhKERPTUZvcm1EYXRhJiBmb3JtRGF0YSkK
IAogdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpyZXNldCgpCiB7Ci0gICAgc2V0Tm9uRGlydHlW
YWx1ZShkZWZhdWx0VmFsdWUoKSk7CisgICAgc2V0Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUo
KSwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6U2V0U2VsZWN0aW9uVG9FbmQpOwogfQog
CiBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhhc0N1c3RvbUZvY3VzTG9naWMoKSBjb25zdApA
QCAtMzc0LDIxICszNzQsMjIgQEAgU3RyaW5nIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OnZhbHVlKCkg
Y29uc3QKICAgICByZXR1cm4gbV92YWx1ZTsKIH0KIAotdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50
OjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQorRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRl
eHRBcmVhRWxlbWVudDo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZl
bnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNl
bGVjdGlvbikKIHsKLSAgICBzZXRWYWx1ZUNvbW1vbih2YWx1ZSk7CisgICAgc2V0VmFsdWVDb21t
b24odmFsdWUsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAgICAgbV9pc0RpcnR5ID0gdHJ1
ZTsKICAgICB1cGRhdGVWYWxpZGl0eSgpOworICAgIHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRN
TFRleHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQor
dm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXROb25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYg
dmFsdWUsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewotICAgIHNl
dFZhbHVlQ29tbW9uKHZhbHVlKTsKKyAgICBzZXRWYWx1ZUNvbW1vbih2YWx1ZSwgVGV4dEZpZWxk
RXZlbnRCZWhhdmlvcjo6RGlzcGF0Y2hOb0V2ZW50LCBzZWxlY3Rpb24pOwogICAgIG1faXNEaXJ0
eSA9IGZhbHNlOwogICAgIHVwZGF0ZVZhbGlkaXR5KCk7CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVh
RWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKK3ZvaWQgSFRN
TFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxl
Y3Rpb24pCiB7CiAgICAgbV93YXNNb2RpZmllZEJ5VXNlciA9IGZhbHNlOwogICAgIC8vIENvZGUg
ZWxzZXdoZXJlIG5vcm1hbGl6ZXMgbGluZSBlbmRpbmdzIGFkZGVkIGJ5IHRoZSB1c2VyIHZpYSB0
aGUga2V5Ym9hcmQgb3IgcGFzdGluZy4KQEAgLTQwOSwxMCArNDEwLDE0IEBAIHZvaWQgSFRNTFRl
eHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKICAg
ICBpbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlKCk7CiAgICAgc2V0Rm9ybUNvbnRyb2xWYWx1ZU1h
dGNoZXNSZW5kZXJlcih0cnVlKTsKIAotICAgIC8vIFNldCB0aGUgY2FyZXQgdG8gdGhlIGVuZCBv
ZiB0aGUgdGV4dCB2YWx1ZS4KICAgICBpZiAoZG9jdW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09
IHRoaXMpIHsKICAgICAgICAgdW5zaWduZWQgZW5kT2ZTdHJpbmcgPSBtX3ZhbHVlLmxlbmd0aCgp
OwogICAgICAgICBzZXRTZWxlY3Rpb25SYW5nZShlbmRPZlN0cmluZywgZW5kT2ZTdHJpbmcpOwor
ICAgIH0gIGVsc2UgaWYgKHNlbGVjdGlvbiA9PSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
OjpTZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAgICAvLyBXZSBkb24ndCBjaGFuZ2UgdGV4dCBz
ZWxlY3Rpb24gaGVyZSBidXQgbmVlZCB0byB1cGRhdGUgY2FyZXQgdG8KKyAgICAgICAgLy8gdGhl
IGVuZCBvZiB0aGUgdGV4dCB2YWx1ZSBleGNlcHQgZm9yIGluaXRpYWxpemUuCisgICAgICAgIHVu
c2lnbmVkIGVuZE9mU3RyaW5nID0gbV92YWx1ZS5sZW5ndGgoKTsKKyAgICAgICAgY2FjaGVTZWxl
Y3Rpb24oZW5kb2ZTdHJpbmcsIGVuZG9mU3RyaW5nLCBTZWxlY3Rpb25IYXNOb0RpcmVjdGlvbik7
CiAgICAgfQogCiAgICAgc2V0VGV4dEFzT2ZMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudChub3Jt
YWxpemVkVmFsdWUpOwpAQCAtNTc2LDcgKzU4MSw3IEBAIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVu
dDo6Y29weU5vbkF0dHJpYnV0ZVByb3BlcnRpZXNGcm9tRWxlbWVudChjb25zdCBFbGVtZW50JiBz
CiB7CiAgICAgYXV0byYgc291cmNlRWxlbWVudCA9IGRvd25jYXN0PEhUTUxUZXh0QXJlYUVsZW1l
bnQ+KHNvdXJjZSk7CiAKLSAgICBzZXRWYWx1ZUNvbW1vbihzb3VyY2VFbGVtZW50LnZhbHVlKCkp
OworICAgIHNldFZhbHVlQ29tbW9uKHNvdXJjZUVsZW1lbnQudmFsdWUoKSwgRGlzcGF0Y2hOb0V2
ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCk7CiAg
ICAgbV9pc0RpcnR5ID0gc291cmNlRWxlbWVudC5tX2lzRGlydHk7CiAgICAgSFRNTFRleHRGb3Jt
Q29udHJvbEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQcm9wZXJ0aWVzRnJvbUVsZW1lbnQoc291
cmNlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaAppbmRleCAw
MDc3ZjAyNTMyNmQ3OGYwMjFkYWMwY2IyNzFkOWM5NjhmY2NiYWRlLi5mMWZjYTc4OWM2NzJiZDc3
MjkzMmJhYjQ1NmQzMDNmZDgzYWZiZTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxUZXh0QXJlYUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0
QXJlYUVsZW1lbnQuaApAQCAtNDQsNyArNDQsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzaG91bGRX
cmFwVGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fd3JhcCAhPSBOb1dyYXA7IH0KIAogICAgIFdFQkNP
UkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JU
IHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJik7CisgICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0
aW9uT3I8dm9pZD4gc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgVGV4dEZpZWxkRXZlbnRCZWhhdmlv
ciA9IERpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiA9IFRleHRD
b250cm9sU2V0VmFsdWVTZWxlY3Rpb246OlNldFNlbGVjdGlvblRvRW5kKSBmaW5hbDsKICAgICBX
RUJDT1JFX0VYUE9SVCBTdHJpbmcgZGVmYXVsdFZhbHVlKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCBzZXREZWZhdWx0VmFsdWUoY29uc3QgU3RyaW5nJik7CiAgICAgaW50IHRleHRM
ZW5ndGgoKSBjb25zdCB7IHJldHVybiB2YWx1ZSgpLmxlbmd0aCgpOyB9CkBAIC04Myw4ICs4Myw4
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYW5kbGVCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudChCZWZv
cmVUZXh0SW5zZXJ0ZWRFdmVudCYpIGNvbnN0OwogICAgIHN0YXRpYyBTdHJpbmcgc2FuaXRpemVV
c2VySW5wdXRWYWx1ZShjb25zdCBTdHJpbmcmLCB1bnNpZ25lZCBtYXhMZW5ndGgpOwogICAgIHZv
aWQgdXBkYXRlVmFsdWUoKSBjb25zdDsKLSAgICB2b2lkIHNldE5vbkRpcnR5VmFsdWUoY29uc3Qg
U3RyaW5nJik7Ci0gICAgdm9pZCBzZXRWYWx1ZUNvbW1vbihjb25zdCBTdHJpbmcmKTsKKyAgICB2
b2lkIHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5nJiwgVGV4dENvbnRyb2xTZXRWYWx1ZVNl
bGVjdGlvbik7CisgICAgdm9pZCBzZXRWYWx1ZUNvbW1vbihjb25zdCBTdHJpbmcmLCBUZXh0Rmll
bGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKTsKIAogICAgIGJv
b2wgc3VwcG9ydHNQbGFjZWhvbGRlcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAg
ICBIVE1MRWxlbWVudCogcGxhY2Vob2xkZXJFbGVtZW50KCkgY29uc3QgZmluYWw7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmluZGV4
IDliZDVlZGI0MzQxZDA5NzQ4YjU2YWNiYWM5MDljNGQwYTUyYmQ1NzYuLjIzYWMyNDczZmJiYTVm
N2M0MTM0YTI3ZWQ2ZGYwZDNmNTNhNDNmMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCkBAIC0yNTQsOCArMjU0LDYgQEAgRXhj
ZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OnNldFJhbmdlVGV4dChj
b25zdCBTdHJpbmcmIHJlcGxhY2UKICAgICBlbHNlCiAgICAgICAgIHRleHQuaW5zZXJ0KHJlcGxh
Y2VtZW50LCBzdGFydCk7CiAKLSAgICBzZXRJbm5lclRleHRWYWx1ZSh0ZXh0KTsKLQogICAgIC8v
IEZJWE1FOiBUaGlzIHNob3VsZG4ndCBuZWVkIHN5bmNocm9ub3VzIHN0eWxlIHVwZGF0ZSwgb3Ig
cmVuZGVyZXIgYXQgYWxsLgogICAgIGlmICghcmVuZGVyZXIoKSkKICAgICAgICAgZG9jdW1lbnQo
KS51cGRhdGVTdHlsZUlmTmVlZGVkKCk7CkBAIC0yNjMsNyArMjYxLDcgQEAgRXhjZXB0aW9uT3I8
dm9pZD4gSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OnNldFJhbmdlVGV4dChjb25zdCBTdHJp
bmcmIHJlcGxhY2UKICAgICBpZiAoIXJlbmRlcmVyKCkpCiAgICAgICAgIHJldHVybiB7IH07CiAK
LSAgICBzdWJ0cmVlSGFzQ2hhbmdlZCgpOworICAgIHNldFZhbHVlKHRleHQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3I6OkRpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bjo6RG9Ob3RTZXQpOwogCiAgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHNl
bGVjdGlvbk1vZGUsICJzZWxlY3QiKSkgewogICAgICAgICBuZXdTZWxlY3Rpb25TdGFydCA9IHN0
YXJ0OwpAQCAtMzE0LDYgKzMxMiwxMCBAQCB2b2lkIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50
OjpzZXRTZWxlY3Rpb25SYW5nZShpbnQgc3RhcnQsIGludCBlbmQsIFRleHRGaWVsZAogCiAgICAg
YXV0byBpbm5lclRleHQgPSBpbm5lclRleHRFbGVtZW50Q3JlYXRpbmdTaGFkb3dTdWJ0cmVlSWZO
ZWVkZWQoKTsKICAgICBib29sIGhhc0ZvY3VzID0gZG9jdW1lbnQoKS5mb2N1c2VkRWxlbWVudCgp
ID09IHRoaXM7CisKKyAgICBSZWZQdHI8RnJhbWU+IGZyYW1lID0gZG9jdW1lbnQoKS5mcmFtZSgp
OworICAgIGlmIChkaXJlY3Rpb24gPT0gU2VsZWN0aW9uSGFzTm9EaXJlY3Rpb24gJiYgZnJhbWUg
JiYgZnJhbWUtPmVkaXRvcigpLmJlaGF2aW9yKCkuc2hvdWxkQ29uc2lkZXJTZWxlY3Rpb25Bc0Rp
cmVjdGlvbmFsKCkpCisgICAgICAgIGRpcmVjdGlvbiA9IFNlbGVjdGlvbkhhc0ZvcndhcmREaXJl
Y3Rpb247CiAgICAgaWYgKCFoYXNGb2N1cyAmJiBpbm5lclRleHQpIHsKICAgICAgICAgaWYgKCFp
c0Nvbm5lY3RlZCgpKSB7CiAgICAgICAgICAgICBjYWNoZVNlbGVjdGlvbihzdGFydCwgZW5kLCBk
aXJlY3Rpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEZvcm1D
b250cm9sRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEZvcm1Db250cm9s
RWxlbWVudC5oCmluZGV4IGFiM2FiNmFiYmVhZTAzODM0NDZiOTI3ODM1OTlmYmRjZmUyYzM0MjUu
LjUzYmZkNzM5YThmNDZjNDVkZTdmYzg3YTczYjE2NDUxZDljZjI5ODcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmgKQEAgLTM5LDYgKzM5
LDcgQEAgc3RydWN0IFNpbXBsZVJhbmdlOwogZW51bSBjbGFzcyBBdXRvRmlsbEJ1dHRvblR5cGUg
OiB1aW50OF90IHsgTm9uZSwgQ3JlZGVudGlhbHMsIENvbnRhY3RzLCBTdHJvbmdQYXNzd29yZCwg
Q3JlZGl0Q2FyZCB9OwogZW51bSBUZXh0RmllbGRTZWxlY3Rpb25EaXJlY3Rpb24geyBTZWxlY3Rp
b25IYXNOb0RpcmVjdGlvbiwgU2VsZWN0aW9uSGFzRm9yd2FyZERpcmVjdGlvbiwgU2VsZWN0aW9u
SGFzQmFja3dhcmREaXJlY3Rpb24gfTsKIGVudW0gVGV4dEZpZWxkRXZlbnRCZWhhdmlvciB7IERp
c3BhdGNoTm9FdmVudCwgRGlzcGF0Y2hDaGFuZ2VFdmVudCwgRGlzcGF0Y2hJbnB1dEFuZENoYW5n
ZUV2ZW50IH07CitlbnVtIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24geyBTZXRTZWxlY3Rp
b25Ub0VuZCwgRG9Ob3RTZXQgfTsKIAogY2xhc3MgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQg
OiBwdWJsaWMgSFRNTEZvcm1Db250cm9sRWxlbWVudFdpdGhTdGF0ZSB7CiAgICAgV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRChIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudCk7CkBAIC04OCw2ICs4OSw3
IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgU3RyaW5nIHZhbHVlKCkgY29uc3QgPSAwOwogCisg
ICAgdmlydHVhbCBFeGNlcHRpb25Pcjx2b2lkPiBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBUZXh0
RmllbGRFdmVudEJlaGF2aW9yID0gRGlzcGF0Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVl
U2VsZWN0aW9uID0gVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6U2V0U2VsZWN0aW9uVG9F
bmQpID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0cjxUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQ+
IGlubmVyVGV4dEVsZW1lbnQoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBSZWZQdHI8VGV4dENv
bnRyb2xJbm5lclRleHRFbGVtZW50PiBpbm5lclRleHRFbGVtZW50Q3JlYXRpbmdTaGFkb3dTdWJ0
cmVlSWZOZWVkZWQoKSA9IDA7CiAgICAgdmlydHVhbCBSZW5kZXJTdHlsZSBjcmVhdGVJbm5lclRl
eHRTdHlsZShjb25zdCBSZW5kZXJTdHlsZSYpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVu
SW5wdXRUeXBlLmNwcAppbmRleCAwOTc4N2E3YzUyODFmNmM0YjM5NmFmODFhMzhmMGI1NjM2ZmJl
MzMxLi5hZjUzZGE4ZTI1YTRkNjk4M2M2MmI2YTUxYjdhMWJlOGNmZmFkZWNlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuY3BwCkBAIC04Myw3ICs4Myw3IEBAIGJvb2wgSGlk
ZGVuSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0
dXJuIGZhbHNlOwogfQogCi12b2lkIEhpZGRlbklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3Ry
aW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikKK3ZvaWQg
SGlkZGVuSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBi
b29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
KQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwogICAgIGVsZW1lbnQoKS0+c2V0QXR0cmlidXRl
V2l0aG91dFN5bmNocm9uaXphdGlvbih2YWx1ZUF0dHIsIHNhbml0aXplZFZhbHVlKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5oCmluZGV4IDk1ZWQwYzFkN2MwMDQyOWY1YTFjMWRj
ZGU2NTc4MWYyZDM1MTc0MDMuLjM0MDdkYmM0YjU4ZmNjZTVhNTA3OWJhNmEyY2UzYzlkYTVjZGM0
YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaApAQCAtNDgsNyArNDgsNyBA
QCBwcml2YXRlOgogICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZCgpIG92ZXJyaWRlOwogICAgIGJv
b2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVycmlkZTsKICAgICBib29s
IHNob3VsZFJlc3BlY3RIZWlnaHRBbmRXaWR0aEF0dHJpYnV0ZXMoKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3Ip
IG92ZXJyaWRlOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCwgVGV4dEZp
ZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgb3ZlcnJpZGU7
CiAgICAgYm9vbCBhcHBlbmRGb3JtRGF0YShET01Gb3JtRGF0YSYpIGNvbnN0IG92ZXJyaWRlOwog
fTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCmluZGV4IDc0ZTBkZGViMThjMGI2MDIwZTg1
YzkxNDIxYTE0YjYyZmI3ZGQ5ZWMuLmMzMGQxZGUwNzNiZGI1OTMzYjhjMzkyM2E2OGUzYzI2ZWFk
YWNhOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKQEAgLTcyMSw3ICs3MjEsNyBAQCBi
b29sIElucHV0VHlwZTo6c3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKQogICAgIHJl
dHVybiB0cnVlOwogfQogCi12b2lkIElucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBz
YW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3Ig
ZXZlbnRCZWhhdmlvcikKK3ZvaWQgSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNh
bml0aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBl
dmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKQogewogICAgIEFTU0VS
VChlbGVtZW50KCkpOwogICAgIGVsZW1lbnQoKS0+c2V0VmFsdWVJbnRlcm5hbChzYW5pdGl6ZWRW
YWx1ZSwgZXZlbnRCZWhhdmlvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lu
cHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuaAppbmRleCA4MTJkNTg4
YjZlZDhkMDM4OTJjNGJiM2QzZGNmMGVmMTBmNmU2OGRjLi4xOTI0YjM3MTZiNGIzMWFjNDNlYmUx
Yjk5OTE1NjhjOGEzMzhiMzgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0
VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgKQEAgLTM0MSw3ICsz
NDEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIHNob3VsZFNlbmRDaGFuZ2VFdmVudEFm
dGVyQ2hlY2tlZENoYW5nZWQoKTsKICAgICB2aXJ0dWFsIGJvb2wgY2FuU2V0VmFsdWUoY29uc3Qg
U3RyaW5nJik7CiAgICAgdmlydHVhbCBib29sIHN0b3Jlc1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmli
dXRlKCk7Ci0gICAgdmlydHVhbCB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFs
dWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0
VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVo
YXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pOwogICAgIHZpcnR1YWwgYm9vbCBz
aG91bGRSZXNldE9uRG9jdW1lbnRBY3RpdmF0aW9uKCk7CiAgICAgdmlydHVhbCBib29sIHNob3Vs
ZFJlc3BlY3RMaXN0QXR0cmlidXRlKCk7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFJlc3BlY3RI
ZWlnaHRBbmRXaWR0aEF0dHJpYnV0ZXMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvTnVtYmVySW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRU
eXBlLmNwcAppbmRleCAzMGZiYTg5NGE5ZmIxYjQyNWI4OWFjNGYxMzlhNjRmYzVkNjAxMTAzLi41
NzQzZDQ2MzcwZmM4MWY1ZTQ3YTkyM2VmNzI0NWI2ZmIxNmY2YzQwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwCkBAIC05NCwxMiArOTQsMTIgQEAgY29uc3QgQXRvbVN0
cmluZyYgTnVtYmVySW5wdXRUeXBlOjpmb3JtQ29udHJvbFR5cGUoKSBjb25zdAogICAgIHJldHVy
biBJbnB1dFR5cGVOYW1lczo6bnVtYmVyKCk7CiB9CiAKLXZvaWQgTnVtYmVySW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBOdW1iZXJJbnB1dFR5
cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFu
Z2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0
VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwogICAg
IGlmICghdmFsdWVDaGFuZ2VkICYmIHNhbml0aXplZFZhbHVlLmlzRW1wdHkoKSAmJiAhZWxlbWVu
dCgpLT5pbm5lclRleHRWYWx1ZSgpLmlzRW1wdHkoKSkKICAgICAgICAgdXBkYXRlSW5uZXJUZXh0
VmFsdWUoKTsKLSAgICBUZXh0RmllbGRJbnB1dFR5cGU6OnNldFZhbHVlKHNhbml0aXplZFZhbHVl
LCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IpOworICAgIFRleHRGaWVsZElucHV0VHlwZTo6
c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2Vs
ZWN0aW9uKTsKIH0KIAogZG91YmxlIE51bWJlcklucHV0VHlwZTo6dmFsdWVBc0RvdWJsZSgpIGNv
bnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlwZS5oIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuaAppbmRleCAyZmMwZWQ2OWY0M2M2
NjdmOGM2NGQ1OGI2ZTU5OWI4OGVlNzZkZGVkLi44NTNlNGQ1OGVkYTZjOTI4NzRjYTFkMDRmNDI1
YjU1NWZiN2M4MGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0
VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmgKQEAgLTQy
LDcgKzQyLDcgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGNvbnN0IEF0b21TdHJpbmcmIGZv
cm1Db250cm9sVHlwZSgpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3Ry
aW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOwor
ICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRG
aWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwog
ICAgIGRvdWJsZSB2YWx1ZUFzRG91YmxlKCkgY29uc3QgZmluYWw7CiAgICAgRXhjZXB0aW9uT3I8
dm9pZD4gc2V0VmFsdWVBc0RvdWJsZShkb3VibGUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGNv
bnN0IGZpbmFsOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlQXNEZWNpbWFsKGNvbnN0
IERlY2ltYWwmLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKaW5kZXggZjA2YmQ1NTliMDI3NGIwNjc1ZWE0YWY3
NzY3ZjgyNTVkNzZiYjE0Ni4uOWI1ZTEwYzlmMTY1YzAzYjFjOTZmZWY5NTdmNTRmYjNiYjc2ZjA0
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKQEAgLTM0NSw5ICszNDUs
OSBAQCB2b2lkIFJhbmdlSW5wdXRUeXBlOjphdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmll
ZE5hbWUmIG5hbWUpCiAgICAgSW5wdXRUeXBlOjphdHRyaWJ1dGVDaGFuZ2VkKG5hbWUpOwogfQog
Ci12b2lkIFJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29s
IHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9p
ZCBSYW5nZUlucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1
ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRy
b2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpzZXRWYWx1
ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5cGU6OnNl
dFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAK
ICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5oCmluZGV4IDEwZmQzYTcyZTdkNmQwYjAxN2VmNmJiMmI0Yjk1NTA0OGMw
MTU5YTMuLjg0YzdiM2VkNjIzMDBkNDFlYjQyZTRjMzU3YmJjNzRlYTljNTNiOGUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmgKQEAgLTU3LDcgKzU3LDcgQEAgcHJpdmF0ZToKICAg
ICBTdHJpbmcgc2VyaWFsaXplKGNvbnN0IERlY2ltYWwmKSBjb25zdCBmaW5hbDsKICAgICBib29s
IGFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRNb3VzZUV2ZW50cykgZmluYWw7CiAgICAgdm9pZCBh
dHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmKSBmaW5hbDsKLSAgICB2b2lkIHNl
dFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yKSBmaW5hbDsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFs
dWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2Vs
ZWN0aW9uKSBmaW5hbDsKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IGZpbmFsOwog
ICAgIFN0cmluZyBzYW5pdGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYgcHJvcG9zZWRWYWx1ZSkgY29u
c3QgZmluYWw7CiAgICAgYm9vbCBzaG91bGRSZXNwZWN0TGlzdEF0dHJpYnV0ZSgpIGZpbmFsOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwCmluZGV4IDM3MDU2ZTQ1
ZWIxYTc1YzE0ZmQ0M2U2NTZmMTMxNDlmYTUxZjAzMDQuLjAzNDZmY2IzNWQxMDA5NGJmNjhkOTAy
ZTExN2I3ZmJmNWYxMGI0NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZp
ZWxkSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0
VHlwZS5jcHAKQEAgLTEyNyw3ICsxMjcsNyBAQCBib29sIFRleHRGaWVsZElucHV0VHlwZTo6dmFs
dWVNaXNzaW5nKGNvbnN0IFN0cmluZyYgdmFsdWUpIGNvbnN0CiAgICAgcmV0dXJuICFlbGVtZW50
KCktPmlzRGlzYWJsZWRPclJlYWRPbmx5KCkgJiYgZWxlbWVudCgpLT5pc1JlcXVpcmVkKCkgJiYg
dmFsdWUuaXNFbXB0eSgpOwogfQogCi12b2lkIFRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUo
Y29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVs
ZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVl
U2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKICAgICBBU1NFUlQoZWxlbWVudCgpKTsKIApAQCAtMTM3
LDE4ICsxMzcsMjAgQEAgdm9pZCBUZXh0RmllbGRJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0
cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2UKIAogICAgIC8vIFdlIGRvbid0
IGFzayBJbnB1dFR5cGU6OnNldFZhbHVlIHRvIGRpc3BhdGNoIGV2ZW50cyBiZWNhdXNlCiAgICAg
Ly8gVGV4dEZpZWxkSW5wdXRUeXBlIGRpc3BhdGNoZXMgZXZlbnRzIGRpZmZlcmVudCB3YXkgZnJv
bSBJbnB1dFR5cGUuCi0gICAgSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFs
dWVDaGFuZ2VkLCBEaXNwYXRjaE5vRXZlbnQpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUoc2Fu
aXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgRGlzcGF0Y2hOb0V2ZW50LCBzZWxlY3Rpb24pOwog
CiAgICAgaWYgKCF2YWx1ZUNoYW5nZWQpCiAgICAgICAgIHJldHVybjsKIAogICAgIHVwZGF0ZUlu
bmVyVGV4dFZhbHVlKCk7CiAKLSAgICB1bnNpZ25lZCBtYXggPSB2aXNpYmxlVmFsdWUoKS5sZW5n
dGgoKTsKLSAgICBpZiAoaW5wdXQtPmZvY3VzZWQoKSkKLSAgICAgICAgaW5wdXQtPnNldFNlbGVj
dGlvblJhbmdlKG1heCwgbWF4KTsKLSAgICBlbHNlCi0gICAgICAgIGlucHV0LT5jYWNoZVNlbGVj
dGlvbkluUmVzcG9uc2VUb1NldFZhbHVlKG1heCk7CisgICAgaWYgKHNlbGVjdGlvbiA9PSBUZXh0
Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAgICB1
bnNpZ25lZCBtYXggPSB2aXNpYmxlVmFsdWUoKS5sZW5ndGgoKTsKKyAgICAgICAgaWYgKGlucHV0
LT5mb2N1c2VkKCkpCisgICAgICAgICAgICBpbnB1dC0+c2V0U2VsZWN0aW9uUmFuZ2UobWF4LCBt
YXgpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBpbnB1dC0+Y2FjaGVTZWxlY3Rpb25JblJl
c3BvbnNlVG9TZXRWYWx1ZShtYXgpOworICAgIH0KIAogICAgIHN3aXRjaCAoZXZlbnRCZWhhdmlv
cikgewogICAgIGNhc2UgRGlzcGF0Y2hDaGFuZ2VFdmVudDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1Rl
eHRGaWVsZElucHV0VHlwZS5oCmluZGV4IDRlMWJiMTU0YzVhN2I1NjFjYjU0NGZlMmQ2ZmZiODdm
MDJhYzllM2EuLjk1ZWI0NjI1ZWZiOTZjZmJkYWQ3NDRkYzIzNGUwOWM3NDNiYTFiNDkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuaApAQCAtNzgsNyArNzgsNyBAQCBw
cm90ZWN0ZWQ6CiAgICAgYm9vbCBzdXBwb3J0c1JlYWRPbmx5KCkgY29uc3QgZmluYWw7CiAgICAg
dm9pZCBoYW5kbGVGb2N1c0V2ZW50KE5vZGUqIG9sZEZvY3VzZWROb2RlLCBGb2N1c0RpcmVjdGlv
bikgZmluYWw7CiAgICAgdm9pZCBoYW5kbGVCbHVyRXZlbnQoKSBmaW5hbDsKLSAgICB2b2lkIHNl
dFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wg
dmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVl
U2VsZWN0aW9uKSBvdmVycmlkZTsKICAgICB2b2lkIHVwZGF0ZUlubmVyVGV4dFZhbHVlKCkgZmlu
YWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJp
ZGU7CiAgICAgYm9vbCB2YWx1ZU1pc3NpbmcoY29uc3QgU3RyaW5nJikgY29uc3QgZmluYWw7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggMzNmMTQwNjI0MTcyYzIwZTM0MzNhZjA1YWJmYzhkZGY0YWJmMWQ0NC4uNWQ0MTBkNmY4
ZGZjYTUwMDFmZjdiYTQxYzEzMmFhOTdmZDgxYTg0MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisy
MDIyLTAzLTA5ICBaaXJhbiBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVj
dGlvbl0gRml4ZXMgc2VsZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCB0d28gdGVz
dHMgdGhhdCBleHBlY3QgcmVzZXR0aW5nIHZhbHVlIG9mIHRleHRhcmVhIHRvIGNoYW5nZSBzZWxl
Y3Rpb24gdG8gMC4KKyAgICAgICAgVGhlc2UgY2hhbmdlcyBhcmUgaW4gbGluZSB3aXRoIGNoYW5n
ZXMgbWFkZSBpbiBDaHJvbWl1bS4KKyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUt
aW50by10ZXh0YXJlYS13aXRoLW5ldy1saW5lLmh0bWw6CisgICAgICAgICogZmFzdC9zcGF0aWFs
LW5hdmlnYXRpb24vc25hdi10ZXh0YXJlYS5odG1sOgorCiAyMDIyLTAzLTAxICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW0RlYnVnXSBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3VybC90b2FzY2lpLndpbmRvdy5odG1sIGlzIGNyYXNoaW5nCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAzODgzYTkwNmEwNmQxOGY2NWRlODg5N2E2Mzc1
NjFlOGJhMDkyYTRmLi43ODRlMDliOGQyNjc4N2Q5YjNlNjQ1MmRiZjE1NzRkNTNmZGZiNTE1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMi0wMy0w
OSAgWmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgorCisgICAgICAgIFtTZWxlY3Rpb25dIEZp
eGVzIHNlbGVjdGlvbiByYW5nZSBzZXR0aW5ncyBmb3IgVEVYVEFSRUEKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzY0MQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0aW5nIHRlc3QgZXhwZWN0YXRp
b25zIGFzIHNvbWUgc3ViLXRlc3RzIGFyZSBub3cgcGFzc2luZy4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL2RlZmF1
bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVu
ZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50
aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
Zm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9m
b3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmct
ZXhwZWN0ZWQudHh0OgorCiAyMDIyLTAzLTAxICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJr
aXQub3JnPgogCiAgICAgICAgIFt3ZWItYW5pbWF0aW9uc10gd2ViLWFuaW1hdGlvbnMvaW50ZXJm
YWNlcy9BbmltYXRhYmxlL2dldEFuaW1hdGlvbnMtaWZyYW1lLmh0bWwgaXMgYSB1bmlxdWUgZmFp
bHVyZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWlu
dG8tdGV4dGFyZWEtd2l0aC1uZXctbGluZS5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0
ZWJvYXJkL3Bhc3RlLWludG8tdGV4dGFyZWEtd2l0aC1uZXctbGluZS5odG1sCmluZGV4IDkzOWJi
OTc2MzE3MDIxYjNlOGVmMjU1ZDZmZjJiOWM3MDJiYjYzZWIuLmVjNGQ1NWI0MzZhYmFkNTE3YTFm
ZjQ0ZGRlNDczMDA3YjNiN2M0YTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFz
dGVib2FyZC9wYXN0ZS1pbnRvLXRleHRhcmVhLXdpdGgtbmV3LWxpbmUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtaW50by10ZXh0YXJlYS13aXRoLW5ldy1s
aW5lLmh0bWwKQEAgLTExLDYgKzExLDcgQEAgdGV4dGFyZWEudmFsdWUgPSAiXG4iOwogdGV4dGFy
ZWEucm93cyA9IDEwOwogZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0ZXh0YXJlYSk7CiB0ZXh0
YXJlYS5mb2N1cygpOwordGV4dGFyZWEuc2V0U2VsZWN0aW9uUmFuZ2UoMCwgMCk7CiBzaG91bGRC
ZSgiZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ0luc2VydEhUTUwnLCBmYWxzZSwgJ2ZpcnN0PGJyPjxi
cj50aGlyZCcpOyB0ZXh0YXJlYS52YWx1ZSIsICInZmlyc3RcXG5cXG50aGlyZFxcbiciKTsKIAog
dmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LXRleHRhcmVhLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LXRleHRhcmVhLmh0bWwKaW5kZXggMzM2Mjc2NTA0
NjYyNmRkMDc5ZmE3MDkxYWE2MGUyOGVkZDI2ZjhjNC4uMTQ1OWNjOTgwNDg1NGI4OTE3YWVjNjdh
YzUyZGRlNTc0NzdiNmUwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5h
dmlnYXRpb24vc25hdi10ZXh0YXJlYS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc3BhdGlh
bC1uYXZpZ2F0aW9uL3NuYXYtdGV4dGFyZWEuaHRtbApAQCAtNjYsNiArNjYsOSBAQAogCiAgICAg
ICAvLyBzdGFydGluZyB0aGUgdGVzdCBpdHNlbGY6IGdldCB0byBhIGtub3duIHBsYWNlLgogICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0YXJ0IikuZm9jdXMoKTsKKyAgICAgIHRleHRh
cmVhLmZvY3VzKCk7CisgICAgICB0ZXh0YXJlYS5zZXRTZWxlY3Rpb25SYW5nZSgwLCAwKTsKKwog
CiAgICAgICBpbml0VGVzdChyZXN1bHRNYXAsIHRlc3RDb21wbGV0ZWQpOwogICAgIH0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
ZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBl
Y3RlZC50eHQKaW5kZXggMzZmNTdkYjc3ODE1ZWVlNzQ3NWU5NzAyYzk5MDVmODRkNmY0YmNiNS4u
NGNhMGQzZGRmYWY5NWVkNGY3YWE3ZmU2Mjg5NzM4ZjI2NzY3MzFhMSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9m
b3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFu
dGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBlY3RlZC50
eHQKQEAgLTIsNyArMiw3IEBACiAKIFBBU1MgRGVmYXVsdCBzZWxlY3Rpb25TdGFydCBhbmQgc2Vs
ZWN0aW9uRW5kIGZvciBbb2JqZWN0IEhUTUxUZXh0QXJlYUVsZW1lbnRdCiBQQVNTIHNlbGVjdGlv
blN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgZG8gbm90IGNoYW5nZSB3aGVuIHNhbWUgdmFsdWUgc2V0
IGFnYWluIGZvciBbb2JqZWN0IEhUTUxUZXh0QXJlYUVsZW1lbnRdCi1GQUlMIHNlbGVjdGlvblN0
YXJ0IGFuZCBzZWxlY3Rpb25FbmQgY2hhbmdlIHdoZW4gdmFsdWUgY2hhbmdlZCB0byB1cHBlciBj
YXNlIGZvciBbb2JqZWN0IEhUTUxUZXh0QXJlYUVsZW1lbnRdIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDMgYnV0IGdvdCAwCitQQVNTIHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgY2hh
bmdlIHdoZW4gdmFsdWUgY2hhbmdlZCB0byB1cHBlciBjYXNlIGZvciBbb2JqZWN0IEhUTUxUZXh0
QXJlYUVsZW1lbnRdCiBQQVNTIERlZmF1bHQgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVu
ZCBmb3IgW29iamVjdCBIVE1MSW5wdXRFbGVtZW50XQogUEFTUyBzZWxlY3Rpb25TdGFydCBhbmQg
c2VsZWN0aW9uRW5kIGRvIG5vdCBjaGFuZ2Ugd2hlbiBzYW1lIHZhbHVlIHNldCBhZ2FpbiBmb3Ig
W29iamVjdCBIVE1MSW5wdXRFbGVtZW50XQogUEFTUyBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0
aW9uRW5kIGNoYW5nZSB3aGVuIHZhbHVlIGNoYW5nZWQgdG8gdXBwZXIgY2FzZSBmb3IgW29iamVj
dCBIVE1MSW5wdXRFbGVtZW50XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNl
bGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4cGVjdGVkLnR4dAppbmRleCA2OGRmYzc1M2I1
YjJlMGQ5MDY4OTM2NGNkYzM1MWMzODFhZjA1YWRiLi5mMWZiNWEwMWI4NzE2YTQwMjM1MWIxZTQ0
ZjUwZWIyMTk1M2U1ZTY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9z
ZWxlY3Rpb24tc3RhcnQtZW5kLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNl
bGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4cGVjdGVkLnR4dApAQCAtNiwxOCArNiwxOCBA
QCBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1hcHBlbmRlZCBzaG91bGQgc2V0IHNl
bGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5w
dXQtbm90LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVl
CiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNo
b3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlCiBQQVNTIEluaXRpYWwgLnZh
bHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVj
dGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4
dGFyZWEtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUg
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1GQUlMIEluaXRpYWwgLnZhbHVl
IHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0
byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1GQUlM
IEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3Vs
ZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90
LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2Yg
dmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCitQQVNTIEluaXRpYWwg
LnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0
IHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90
LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlCitQQVNT
IEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3Vs
ZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlCitQQVNTIEluaXRpYWwgLnZhbHVl
IHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVj
dGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5w
dXQtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCiBQQVNT
IEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxl
Y3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1
dC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2
YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5wdXQtbm90LWFwcGVuZGVkLXByZWZv
Y3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCi1GQUlMIEluaXRp
YWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVu
ZCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1G
QUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQgc2hvdWxkIHNl
dCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEw
IGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQt
cHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1GQUlMIEluaXRpYWwgLnZhbHVlIHNldCBv
biB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVu
ZCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCitQ
QVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZCBzaG91bGQgc2V0IHNl
bGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRl
eHRhcmVhLW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFs
dWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3Vz
ZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCitQQVNTIEluaXRpYWwg
LnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0
IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKIFBBU1Mgb25zZWxlY3Qgc2hvdWxkIGZpcmUg
d2hlbiBzZWxlY3Rpb25TdGFydCBpcyBjaGFuZ2VkCiBOT1RSVU4gb25zZWxlY3Qgc2hvdWxkIGZp
cmUgd2hlbiBzZWxlY3Rpb25TdGFydCBpcyBjaGFuZ2VkIG9uIGlucHV0LWFwcGVuZGVkCiBOT1RS
VU4gb25zZWxlY3Qgc2hvdWxkIGZpcmUgd2hlbiBzZWxlY3Rpb25TdGFydCBpcyBjaGFuZ2VkIG9u
IGlucHV0LW5vdC1hcHBlbmRlZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRm
aWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4cGVjdGVkLnR4dAppbmRl
eCA5NDMzOTYxMWQ5NWQyMTVkYzM5M2I1NDI0ZmI4Yjc3YjRkODc3MmJhLi44MmQ1ZWIzNjU1NjNm
YTE5YWY1YzZhYzc5NjZiMmU1YTEwMTU4OTFhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVs
ZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4cGVj
dGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCiBQQVNTIFNldHRpbmcgZGVmYXVsdFZhbHVlIGlu
IGEgdGV4dGFyZWEgc2hvdWxkIE5PVCBtb3ZlIHRoZSBjdXJzb3IgdG8gdGhlIGVuZAotRkFJTCBT
ZXR0aW5nIGRlZmF1bHRWYWx1ZSBpbiBhIHRleHRhcmVhIHdpdGggYSB2YWx1ZSBzaG91bGQgTk9U
IG1ha2UgYW55IGRpZmZlcmVuY2UgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgNiBidXQgZ290IDAK
K1BBU1MgU2V0dGluZyBkZWZhdWx0VmFsdWUgaW4gYSB0ZXh0YXJlYSB3aXRoIGEgdmFsdWUgc2hv
dWxkIE5PVCBtYWtlIGFueSBkaWZmZXJlbmNlCiBQQVNTIFNldHRpbmcgdGV4dENvbnRlbnQgaW4g
YSB0ZXh0YXJlYSBzaG91bGQgTk9UIG1vdmUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0gdG8gdGhlIGVu
ZAogUEFTUyBBZGRpbmcgY2hpbGRyZW4gdG8gYSB0ZXh0YXJlYSBzaG91bGQgTk9UIG1vdmUgc2Vs
ZWN0aW9ue1N0YXJ0LEVuZH0gdG8gdGhlIGVuZAogUEFTUyBSZW1vdmluZyBjaGlsZHJlbiBmcm9t
IGEgdGV4dGFyZWEgc2hvdWxkIE5PVCB1cGRhdGUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0KIFBBU1Mg
U2V0dGluZyB0aGUgc2FtZSB2YWx1ZSAod2l0aCBkaWZmZXJlbnQgbmV3bGluZXMpIGluIGEgdGV4
dGFyZWEgc2hvdWxkIE5PVCB1cGRhdGUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0KIEZBSUwgUmVtb3Zp
bmcgY2hpbGQgbm9kZXMgaW4gbm9uLWRpcnR5IHRleHRhcmVhIHNob3VsZCBtYWtlIHNlbGVjdGlv
bntTdGFydCxFbmR9IDAgYXNzZXJ0X2VxdWFsczogc2VsZWN0aW9uU3RhcnQgYWZ0ZXIgbm9kZSBy
ZW1vdmFsIGV4cGVjdGVkIDAgYnV0IGdvdCAzCi1GQUlMIFNldHRpbmcgdmFsdWUgdG8gYSBzaG9y
dGVyIHN0cmluZyB0aGFuIGRlZmF1bHRWYWx1ZSBzaG91bGQgY29ycmVjdCB0aGUgY3Vyc29yIHBv
c2l0aW9uIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDIgYnV0IGdvdCAzCitQQVNTIFNldHRpbmcg
dmFsdWUgdG8gYSBzaG9ydGVyIHN0cmluZyB0aGFuIGRlZmF1bHRWYWx1ZSBzaG91bGQgY29ycmVj
dCB0aGUgY3Vyc29yIHBvc2l0aW9uCiBQQVNTIFNob3J0ZW5pbmcgdmFsdWUgYnkgdHVybmluZyB0
aGUgaW5wdXQgdHlwZSBpbnRvICd1cmwnIHNob3VsZCBjb3JyZWN0IHNlbGVjdGlvbntTdGFydCxF
bmR9CiBGQUlMIFNob3J0ZW5pbmcgdmFsdWUgYnkgdHVybmluZyB0aGUgaW5wdXQgdHlwZSBpbnRv
ICdjb2xvcicgYW5kIGJhY2sgdG8gJ3RleHQnIHNob3VsZCBjb3JyZWN0IHNlbGVjdGlvbntTdGFy
dCxFbmR9IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCA5CiBQQVNTIFJlc2V0dGlu
ZyBhIHZhbHVlIHRvIGEgc2hvcnRlciBzdHJpbmcgdGhhbiBkZWZhdWx0VmFsdWUgc2hvdWxkIGNv
cnJlY3QgdGhlIGN1cnNvciBwb3NpdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRz
ZWxlY3Rpb24vc2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zv
cm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tdmFsdWUtaW50ZXJhY3Rpb25zLWV4cGVj
dGVkLnR4dAppbmRleCA4NDEwYTgyOWJiZmFhODhjMTk3OTkzMTQxZjBjMjA3ZjA0NTAzY2M0Li5i
MTkwNzRlZDk4NDg3NTA2ZGI4NzhmNzJiY2UxNDQ0NDdiMzA0YTc4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zv
cm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tdmFsdWUtaW50ZXJhY3Rpb25zLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tdmFsdWUt
aW50ZXJhY3Rpb25zLWV4cGVjdGVkLnR4dApAQCAtMTEsNiArMTEsNiBAQCBQQVNTIHZhbHVlIGRp
cnR5IGZsYWcgYmVoYXZpb3IgYWZ0ZXIgc2V0UmFuZ2VUZXh0IG9uIGZvY3VzZWQgdGhlbiBibHVy
cmVkIHRleHRhcgogUEFTUyB2YWx1ZSBkaXJ0eSBmbGFnIGJlaGF2aW9yIGFmdGVyIHNldFJhbmdl
VGV4dCBvbiBmb2N1c2VkIHRoZW4gYmx1cnJlZCBpbnB1dAogUEFTUyBzZWxlY3Rpb24gaXMgY29s
bGFwc2VkIHRvIHRoZSBlbmQgYWZ0ZXIgY2hhbmdpbmcgdmFsdWVzIG9uIGlucHV0CiBQQVNTIHNl
bGVjdGlvbiBpcyBub3QgY29sbGFwc2VkIHRvIHRoZSBlbmQgd2hlbiB2YWx1ZSBpcyBzZXQgdG8g
aXRzIGV4aXN0aW5nIHZhbHVlIG9uIGlucHV0Ci1GQUlMIHNlbGVjdGlvbiBpcyBjb2xsYXBzZWQg
dG8gdGhlIGVuZCBhZnRlciBjaGFuZ2luZyB2YWx1ZXMgb24gdGV4dGFyZWEgYXNzZXJ0X2VxdWFs
czogZWxlbWVudC5zZWxlY3Rpb25TdGFydCBzaG91bGQgYmUgdmFsdWUubGVuZ3RoIGV4cGVjdGVk
IDMgYnV0IGdvdCAwCitQQVNTIHNlbGVjdGlvbiBpcyBjb2xsYXBzZWQgdG8gdGhlIGVuZCBhZnRl
ciBjaGFuZ2luZyB2YWx1ZXMgb24gdGV4dGFyZWEKIFBBU1Mgc2VsZWN0aW9uIGlzIG5vdCBjb2xs
YXBzZWQgdG8gdGhlIGVuZCB3aGVuIHZhbHVlIGlzIHNldCB0byBpdHMgZXhpc3RpbmcgdmFsdWUg
b24gdGV4dGFyZWEKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vdGV4
dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0
ZmllbGRzZWxlY3Rpb24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhwZWN0ZWQu
dHh0CmluZGV4IGUwNmQwNzMyYzNmMmUwYjEwMTljMDcyMzExNjRhMTk2NWNkNjA1MjcuLjQ3NjM1
OWE4NDIyOGMxNWQyYTRiODgzOGZjMTk1MWNiNTE3OWE1NzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMv
dGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGlsZS1wYXJzaW5nLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi90ZXh0YXJlYS1zZWxlY3Rp
b24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKIAotRkFJTCBW
YWx1ZSBzZXR0ZXIgd2hpbGUgcGFyc2luZyB0ZXh0YXJlYSBjaGlsZHJlbiBzaG91bGQgbW92ZSBz
ZWxlY3Rpb257U3RhcnQsRW5kfSB0byB0aGUgZW5kIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDMg
YnV0IGdvdCAwCitQQVNTIFZhbHVlIHNldHRlciB3aGlsZSBwYXJzaW5nIHRleHRhcmVhIGNoaWxk
cmVuIHNob3VsZCBtb3ZlIHNlbGVjdGlvbntTdGFydCxFbmR9IHRvIHRoZSBlbmQKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rp
b24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2Ut
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2NWVkNjg2OGQyNzQxNDJlZWFiMzM5MTFiYWI2ZTY4
NjkzNzkzMjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2sy
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4
dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250ZW50LWNoYW5nZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyMSBAQAorCisKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBp
bnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcg
YSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24g
bXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2Ft
ZSBhZnRlciB0aGUgdmFsdWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUg
dmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVj
dGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgdmFsdWUgdGhhdCBiZWNvbWVzIHRo
ZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24gYWxnb3JpdGhtCitQQVNTIGlucHV0
IGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4g
c2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1
czogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2YWx1ZQor
UEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhl
IHZhbHVlIHNhbml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1
ZQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3
aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSBub3Jt
YWxpemVkIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBu
b3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2
YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBp
biBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNl
dHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUK
K1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5v
dCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIG5vcm1hbGl6ZWQgdmFsdWUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rp
b24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2Ut
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2NWVkNjg2OGQyNzQxNDJlZWFiMzM5MTFiYWI2ZTY4
NjkzNzkzMjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sx
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4
dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250ZW50LWNoYW5nZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyMSBAQAorCisKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBp
bnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcg
YSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24g
bXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2Ft
ZSBhZnRlciB0aGUgdmFsdWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUg
dmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVj
dGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgdmFsdWUgdGhhdCBiZWNvbWVzIHRo
ZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24gYWxnb3JpdGhtCitQQVNTIGlucHV0
IGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4g
c2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1
czogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2YWx1ZQor
UEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhl
IHZhbHVlIHNhbml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1
ZQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3
aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSBub3Jt
YWxpemVkIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBu
b3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2
YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBp
biBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNl
dHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUK
K1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5v
dCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIG5vcm1hbGl6ZWQgdmFsdWUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rp
b24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2Ut
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2NWVkNjg2OGQyNzQxNDJlZWFiMzM5MTFiYWI2ZTY4
NjkzNzkzMjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sy
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4
dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250ZW50LWNoYW5nZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyMSBAQAorCisKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBp
bnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcg
YSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24g
bXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2Ft
ZSBhZnRlciB0aGUgdmFsdWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUg
dmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVj
dGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgdmFsdWUgdGhhdCBiZWNvbWVzIHRo
ZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24gYWxnb3JpdGhtCitQQVNTIGlucHV0
IGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4g
c2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1
czogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2YWx1ZQor
UEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhl
IHZhbHVlIHNhbml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1
ZQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3
aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSBub3Jt
YWxpemVkIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBu
b3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2
YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBp
biBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNl
dHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUK
K1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5v
dCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIG5vcm1hbGl6ZWQgdmFsdWUKKwo=
</data>
<flag name="commit-queue"
          id="482270"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454581</attachid>
            <date>2022-03-14 04:59:34 -0700</date>
            <delta_ts>2022-03-15 02:41:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237641-20220314115932.patch</filename>
            <type>text/plain</type>
            <size>50324</size>
            <attacher>zsun</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWI2NDJlMWFiZjhiYmZk
NDUzYTNmZTk2ODIzNjM4NjY5NDVmMGFjNy4uNDhlODUyMzIwZDk5ZGNjYzg2YjQ2YTE0YjNlNDAz
ZWI4MmU5ZWY2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcyIEBACisyMDIyLTAzLTA5ICBaaXJh
biBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVjdGlvbl0gRml4ZXMgc2Vs
ZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBDTCBpcyB0byBmaXggdGhlIHNldHRpbmdz
IG9mIFNlbGVjdGlvblN0YXJ0L1NlbGVjdGlvbkVuZCBmb3IgVEVYVEFSRUEgZm9yIG5vbi1mb2N1
c2VkIEVsZW1lbnQuIEl0IHNldHMgdGhlCisgICAgICAgIGNhcmV0IHRvIHRoZSBlbmQgb2YgdGhl
IHRleHQgdmFsdWUgZXhjZXB0IGZvciBpbml0aWFsaXppbmcgaW4gbW9zdCBjYXNlcy4gRm9yIHRo
ZSBjYXNlIG9mIHVwZGF0aW5nIGRlZmF1bHRWYWx1ZQorICAgICAgICBmb3IgYSBub24tZGlydHkg
VEVYVEFSRUEsIHdlIHNob3VsZCBmb2xsb3dpbmcgdGhlIGNsYW1waW5nIHN0ZXBzIGFzIHBlciBz
cGVjIGFuZCBpdCB3aWxsIGJlIGFkZHJlc3NlZCBpbiBhIAorICAgICAgICBmb2xsb3ctdXAgcGF0
Y2guICAgICAgICAKKworICAgICAgICBUaGlzIENMIHJlZmVycyBhbmQgaW1wb3J0cyBwYXJ0IG9m
IHRoZSBjaGFuZ2VzIGluIGNocm9taXVtIENMIGF0CisgICAgICAgIGh0dHBzOi8vY29kZXJldmll
dy5jaHJvbWl1bS5vcmcvMzkyNTczMDAyCisKKyAgICAgICAgVGV4dEFyZWEgb25seSBjYWxscyBz
ZXRTZWxlY3Rpb25SYW5nZSgpIGZvciBmb2N1c2VkIGVsZW1lbnQuIFdoaWxlIGZvciBub24tZm9j
dXNlZCBlbGVtZW50LCB3ZSBuZWVkIHRvIHVwZGF0ZSB0aGUgY2FyZXQKKyAgICAgICAgZXhjZXB0
IGZvciBpbml0aWFsaXppbmcuIFNpbmNlIHdlIGFyZSBub3QgY2hhbmdlIHRleHQgc2VsZWN0aW9u
IGZvciB0ZXh0IGFyZWEgaW4gdGhpcyBjYXNlLCB3ZSBvbmx5IGNhY2hlIHRoZSBzZWxlY3Rpb25z
LgorICAgICAgICBJdCB3b3VsZCBiZSBpZGVhbCB0byBoYXZlIGEgdW5pZmllZCBmdW5jdGlvbiBj
YWxsIGZvciBib3RoIGZvY3VzZWQgYW5kIG5vbi1mb2N1c2VkIGNhc2VzLiBIb3dldmVyLCB0aGUg
c2VsZWN0aW9uUmFuZ2UoKQorICAgICAgICBmdW5jdGlvbiBjaGFuZ2VzIGZvY3VzIG9mIHRoZSBl
bGVtZW50IGFuZCB0aGUgYXBwcm9hY2ggd2UgYXJlIGhhdmluZyBoZXJlIGlzIHRvIGF2b2lkIHRo
ZSBpbXBhY3RzIG9uIGEgZ29vZCBudW1iZXIgb2YKKyAgICAgICAgZXhpc2l0aW5nIHRlc3RzLgor
CisgICAgICAgIFRoaXMgQ0wgYWxzbyBpbnRyb2R1Y2VzIGEgdW5pZmllZCBzZXRWYWx1ZSgpIEFQ
SSBpbiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IGZvciBIVE1MVGV4dEFyZWFFbGVtZW50IGFuZCBI
VE1MSW5wdXRFbGVtZW50LgorCisgICAgICAgICogaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAg
ICAgICAgKiBodG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0Jhc2VD
aGVja2FibGVJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QmFzZUNoZWNrYWJsZUlu
cHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlw
ZS5oOgorICAgICAgICAqIGh0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAg
ICAoV2ViQ29yZTo6QmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpkaWRDaGFuZ2VWYWx1ZUZyb21D
b250cm9sKToKKyAgICAgICAgKiBodG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAg
ICAgICAqIGh0bWwvQ29sb3JJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29sb3JJ
bnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0NvbG9ySW5wdXRUeXBlLmg6Cisg
ICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVJ
bnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0ZpbGVJbnB1dFR5cGUuaDoKKyAg
ICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TElucHV0RWxlbWVudDo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVu
dC5oOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQpOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRl
eHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
VGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZUNvbW1vbik6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
VGV4dEFyZWFFbGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllc0Zyb21FbGVtZW50KToK
KyAgICAgICAgKiBodG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hU
TUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxUZXh0
Rm9ybUNvbnRyb2xFbGVtZW50OjpzZXRSYW5nZVRleHQpOgorICAgICAgICAqIGh0bWwvSFRNTFRl
eHRGb3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpIaWRkZW5JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAg
ICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0
bWwvSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6TnVtYmVySW5wdXRUeXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRt
bC9OdW1iZXJJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1JhbmdlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICog
aHRtbC9SYW5nZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUpOgor
ICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmg6CisKIDIwMjItMDMtMDEgIEFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtJRkNdW0ludGVncmF0aW9uXSBJ
bmxpbmVJdGVyYXRvcjo6Qm94OjpyZWN0KCkgcmV0dXJucyB0aGUgdW5mbGlwcGVkIHZpc3VhbCBy
ZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcAppbmRleCA0
ZTczOTUzODEyZDQwODRjODVkYmUxMDVjN2E5MzU2OTVmNzBjY2ZlLi44ODIxMGMzMzlmNTU1OTZk
NjEyMWY1MDY1Mjg1MGQ0NjAwZGMxODMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VCdXR0b25JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUJ1
dHRvbklucHV0VHlwZS5jcHAKQEAgLTYyLDcgKzYyLDcgQEAgYm9vbCBCYXNlQnV0dG9uSW5wdXRU
eXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNl
OwogfQogCi12b2lkIEJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYg
c2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VC
dXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJv
b2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24p
CiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVX
aXRob3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaAppbmRleCBlNDE0NjM0MWIwNGY0MTk4
Y2IwNzA2YjlhNjUyZDY2OTE2YzAyZGMyLi40ZjhlOGExYWUzZjNmNDYxODY5ZjY2YzFlNmYyYjdh
OWIxYzM2OTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1
dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaApA
QCAtNDQsNyArNDQsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgYXBwZW5kRm9ybURhdGEoRE9NRm9y
bURhdGEmKSBjb25zdCBvdmVycmlkZTsKICAgICBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3Jl
YXRlSW5wdXRSZW5kZXJlcihSZW5kZXJTdHlsZSYmKSBvdmVycmlkZTsKICAgICBib29sIHN0b3Jl
c1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1
ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBvdmVycmlkZTsK
KyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVo
YXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIG92ZXJyaWRlOwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNl
Q2hlY2thYmxlSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNoZWNrYWJs
ZUlucHV0VHlwZS5jcHAKaW5kZXggMDY1Y2VjMGU2NWJjNzI3NDNhMmZkMjFmODZjM2M1ODhkYWVh
MTEzZi4uOGE1NGNhMDUzNTRhOTMwMjc1OWFiNzViYTNhMTc1NWY3YjlmNDU1ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwCkBAIC0xMDgsNyAr
MTA4LDcgQEAgYm9vbCBCYXNlQ2hlY2thYmxlSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRl
RnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEJhc2VDaGVja2Fi
bGVJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2ws
IFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNl
dFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVs
ZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0
aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jh
c2VDaGVja2FibGVJbnB1dFR5cGUuaAppbmRleCBiNDlhNzdhNDE1OTI1MWIxODUwMTQ5ZTEwMDdj
ZGY0MDA2YzA5YTI0Li42YmY1ZDUxZmFiMmE2ZGI5ODMwYzIzZTZmYjFiMjhlZGEwNTdjZTk4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaApAQCAtNTAs
NyArNTAsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1v
dXNlRXZlbnRzKSBvdmVycmlkZTsKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IG92
ZXJyaWRlOwogICAgIGJvb2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwg
Ym9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bikgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAKaW5kZXggY2Y3Y2MzMWYz
NDJmN2I1YTc0NzQ3NWU0Y2NhMTg5YmQxM2E3NDEzZS4uMzc1NTI4MWQxODJlM2FhYmUxOGM3OWQ5
ZDM1MTM2OWFjNzM1NGU4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0
ZUFuZFRpbWVJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmNwcApAQCAtMjc3LDkgKzI3Nyw5IEBAIGJvb2wgQmFzZURhdGVBbmRU
aW1lSW5wdXRUeXBlOjpzaG91bGRIYXZlTWlsbGlzZWNvbmRGaWVsZChjb25zdCBEYXRlQ29tcG9u
ZW50cyYKICAgICAgICAgfHwgIXN0ZXBSYW5nZS5zdGVwKCkucmVtYWluZGVyKG1zZWNQZXJTZWNv
bmQpLmlzWmVybygpOwogfQogCi12b2lkIEJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxk
RXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
IHNlbGVjdGlvbikKIHsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5n
ZWQsIGV2ZW50QmVoYXZpb3IpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVl
Q2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKICAgICBpZiAodmFsdWVDaGFuZ2Vk
KQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1ZSgpOwogfQpAQCAtNDcwLDcgKzQ3MCw3IEBA
IHZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpkaWRCbHVyRnJvbUNvbnRyb2woKQogdm9p
ZCBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmRpZENoYW5nZVZhbHVlRnJvbUNvbnRyb2woKQog
ewogICAgIFN0cmluZyB2YWx1ZSA9IHNhbml0aXplVmFsdWUobV9kYXRlVGltZUVkaXRFbGVtZW50
LT52YWx1ZSgpKTsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZSAhPSBlbGVt
ZW50KCktPnZhbHVlKCksIERpc3BhdGNoSW5wdXRBbmRDaGFuZ2VFdmVudCk7CisgICAgSW5wdXRU
eXBlOjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWUgIT0gZWxlbWVudCgpLT52YWx1ZSgpLCBEaXNwYXRj
aElucHV0QW5kQ2hhbmdlRXZlbnQsIERvTm90U2V0KTsKIAogICAgIERhdGVUaW1lQ2hvb3NlclBh
cmFtZXRlcnMgcGFyYW1ldGVyczsKICAgICBpZiAoIXNldHVwRGF0ZVRpbWVDaG9vc2VyUGFyYW1l
dGVycyhwYXJhbWV0ZXJzKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURh
dGVBbmRUaW1lSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGlt
ZUlucHV0VHlwZS5oCmluZGV4IGI2ODVmOGUxOWZmYjQ4ODU1ZjRlMmZlODJlM2IxMjFiZTQ5M2E3
M2QuLjZiZjZkNmI5MDNiNGFkNzY1OTZiYmFjY2U1NGQxN2QzN2EzMWU4Y2YgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuaApAQCAtMTAxLDcgKzEw
MSw3IEBAIHByaXZhdGU6CiAgICAgLy8gSW5wdXRUeXBlIGZ1bmN0aW9uczoKICAgICBTdHJpbmcg
dmlzaWJsZVZhbHVlKCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29u
c3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJp
bmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7Cisg
ICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZp
ZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAg
ICAgV2FsbFRpbWUgdmFsdWVBc0RhdGUoKSBjb25zdCBvdmVycmlkZTsKICAgICBFeGNlcHRpb25P
cjx2b2lkPiBzZXRWYWx1ZUFzRGF0ZShXYWxsVGltZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91
YmxlIHZhbHVlQXNEb3VibGUoKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklu
cHV0VHlwZS5jcHAKaW5kZXggZjExOWU4MmIzNzdkZGI0MWZjZDllOGI5M2FhN2ZjZWZhMGY1ZGMw
ZC4uMTcwZmJjNTE0MDE2YTQ0MTQ4ODQwOTYwNWM5OGQ3MjRlNWI1NmZmZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKQEAgLTE1Myw5ICsxNTMsOSBAQCB2b2lkIENvbG9y
SW5wdXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlKCkKICAgICB1cGRhdGVDb2xvclN3YXRjaCgp
OwogfQogCi12b2lkIENvbG9ySW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVl
LCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9y
KQordm9pZCBDb2xvcklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4
dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpz
ZXRWYWx1ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5
cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlv
bik7CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9Db2xvcklucHV0VHlwZS5oCmluZGV4IDExNmRhYjExN2I5NzU5YjIzNjE3MzcwZWQ0ODM3
OWE4Yzc3YTMzNzkuLmM4ZmVhNmEzMjYyMDY0YTgyZDQ1ZjNkZTFlMDBiYjM1Y2MyNWI0ZDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBlLmgKQEAgLTYzLDcgKzYzLDcgQEAgcHJpdmF0
ZToKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBz
YW5pdGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgY3JlYXRl
U2hhZG93U3VidHJlZSgpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwg
Ym9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIHZv
aWQgYXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWROYW1lJikgZmluYWw7CiAgICAgdm9p
ZCBoYW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50JikgZmluYWw7CiAgICAgdm9pZCBkZXRhY2go
KSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGVhN2RmYWNm
NjJiNzgyNTU5ZDY1ZTNiZmI2YjNkMGNjZGZlMjUyMWMuLmI2NWI4NzBlYTcwNTQ1MGIzYzZlOTNk
NmMzMmJiZmJmOWU3MGM0NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlu
cHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApA
QCAtMjUzLDcgKzI1Myw3IEBAIGJvb2wgRmlsZUlucHV0VHlwZTo6Z2V0VHlwZVNwZWNpZmljVmFs
dWUoU3RyaW5nJiB2YWx1ZSkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBGaWxlSW5wdXRU
eXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9y
KQordm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0
RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKQogewogICAg
IC8vIEZJWE1FOiBTaG91bGQgd2UgY2xlYXIgdGhlIGZpbGUgbGlzdCwgb3IgcmVwbGFjZSBpdCB3
aXRoIGEgbmV3IGVtcHR5IG9uZSBoZXJlPyBUaGlzIGlzIG9ic2VydmFibGUgZnJvbSBKYXZhU2Ny
aXB0IHRocm91Z2ggY3VzdG9tIHByb3BlcnRpZXMuCiAgICAgbV9maWxlTGlzdC0+Y2xlYXIoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKaW5kZXggOTE1N2IxNzkwMjkyMDBmM2M0MzA4
OGNiNmE0YzZiZTU1ZTAwMDIzYS4uZWUxMDg0OTc4M2ZhZmVkMmFhOWM3OGI2MDA2YmJkZWRlZTY1
NDQxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKQEAgLTY5LDcgKzY5LDcgQEAg
cHJpdmF0ZToKICAgICBTdHJpbmcgZGlzcGxheVN0cmluZygpIGNvbnN0IGZpbmFsOwogICAgIGJv
b2wgY2FuU2V0VmFsdWUoY29uc3QgU3RyaW5nJikgZmluYWw7CiAgICAgYm9vbCBnZXRUeXBlU3Bl
Y2lmaWNWYWx1ZShTdHJpbmcmKSBmaW5hbDsgLy8gQ2hlY2tlZCBmaXJzdCwgYmVmb3JlIGludGVy
bmFsIHN0b3JhZ2Ugb3IgdGhlIHZhbHVlIGF0dHJpYnV0ZS4KLSAgICB2b2lkIHNldFZhbHVlKGNv
bnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBm
aW5hbDsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2Vk
LCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBm
aW5hbDsKIAogI2lmIEVOQUJMRShEUkFHX1NVUFBPUlQpCiAgICAgYm9vbCByZWNlaXZlRHJvcHBl
ZEZpbGVzV2l0aEltYWdlVHJhbnNjb2RpbmcoY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhdGhzKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IGJjZDZjOGEwZWI3
MDk5MjI2OTU0YWJkN2Q5ZTBkNTRiZWI1N2RlZWEuLjIyZTZkZjYzZjNkYThkMDgyOTExYWZkMWUx
NTdmMzI0YmNhNzBmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNw
cApAQCAtMTA2NCw3ICsxMDY0LDcgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZUZv
clVzZXIoY29uc3QgU3RyaW5nJiB2YWx1ZSkKICAgICBzZXRWYWx1ZSh2YWx1ZSwgRGlzcGF0Y2hD
aGFuZ2VFdmVudCk7CiB9CiAKLUV4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNl
dFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRC
ZWhhdmlvcikKK0V4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNv
bnN0IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwg
VGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7CiAgICAgaWYgKGlzRmls
ZVVwbG9hZCgpICYmICF2YWx1ZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciB9OwpAQCAtMTA3OSw3ICsxMDc5LDcgQEAgRXhjZXB0aW9uT3I8
dm9pZD4gSFRNTElucHV0RWxlbWVudDo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4
dEZpZWxkRXZlbnQKIAogICAgIHNldExhc3RDaGFuZ2VXYXNOb3RVc2VyRWRpdCgpOwogICAgIHNl
dEZvcm1Db250cm9sVmFsdWVNYXRjaGVzUmVuZGVyZXIoZmFsc2UpOwotICAgIG1faW5wdXRUeXBl
LT5zZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsK
KyAgICBtX2lucHV0VHlwZS0+c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwg
ZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAogICAgIGJvb2wgd2FzTW9kaWZpZWRQcm9ncmFt
bWF0aWNhbGx5ID0gZXZlbnRCZWhhdmlvciA9PSBEaXNwYXRjaE5vRXZlbnQ7CiAgICAgaWYgKHdh
c01vZGlmaWVkUHJvZ3JhbW1hdGljYWxseSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTElucHV0RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmgKaW5kZXggY2M1MGZlZTMzYzk4ZDFmODkyYTQ3ZTRjMDUxNDEyOTNmZjEzMWFhMC4uODUw
NGZiNjI2OTZjN2YwMWUxODliMmQ3MzE5Zjc4MDBjNTljODU3NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MSW5wdXRFbGVtZW50LmgKQEAgLTE3MSw3ICsxNzEsNyBAQCBwdWJsaWM6CiAgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBzZXRUeXBlKGNvbnN0IEF0b21TdHJpbmcmKTsKIAogICAgIFdFQkNP
UkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JU
IEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQpOworICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlv
bk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3Ig
PSBEaXNwYXRjaE5vRXZlbnQsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29u
dHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgZmluYWw7CiAgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBzZXRWYWx1ZUZvclVzZXIoY29uc3QgU3RyaW5nJik7CiAgICAgLy8g
Q2hlY2tzIGlmIHRoZSBzcGVjaWZpZWQgc3RyaW5nIHdvdWxkIGJlIGEgdmFsaWQgdmFsdWUuCiAg
ICAgLy8gV2Ugc2hvdWxkIG5vdCBjYWxsIHRoaXMgZm9yIHR5cGVzIHdpdGggbm8gc3RyaW5nIHZh
bHVlIHN1Y2ggYXMgQ0hFQ0tCT1ggYW5kIFJBRElPLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFRleHRBcmVhRWxlbWVudC5jcHAKaW5kZXggYWE1MmYwMGRiNWRjMDZkZDMwNDgxNmUxMzMxNTVh
NzM5YTRhMTIzYi4uMmYxMGNlZDg0MTMxZWQ3ZTlkZDE4N2EzNDAxY2ZkY2RlYzRiYTQzZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwCkBAIC0xMzYsNyAr
MTM2LDcgQEAgdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoY29uc3Qg
Q2hpbGRDaGFuZ2UmIGNoYW5nZSkKICAgICBpZiAobV9pc0RpcnR5KQogICAgICAgICBzZXRJbm5l
clRleHRWYWx1ZSh2YWx1ZSgpKTsKICAgICBlbHNlCi0gICAgICAgIHNldE5vbkRpcnR5VmFsdWUo
ZGVmYXVsdFZhbHVlKCkpOworICAgICAgICBzZXROb25EaXJ0eVZhbHVlKGRlZmF1bHRWYWx1ZSgp
LCAgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6RG9Ob3RTZXQpOwogfQogCiBib29sIEhU
TUxUZXh0QXJlYUVsZW1lbnQ6Omhhc1ByZXNlbnRhdGlvbmFsSGludHNGb3JBdHRyaWJ1dGUoY29u
c3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkgY29uc3QKQEAgLTI0MSw3ICsyNDEsNyBAQCBib29sIEhU
TUxUZXh0QXJlYUVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRhKERPTUZvcm1EYXRhJiBmb3JtRGF0YSkK
IAogdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpyZXNldCgpCiB7Ci0gICAgc2V0Tm9uRGlydHlW
YWx1ZShkZWZhdWx0VmFsdWUoKSk7CisgICAgc2V0Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUo
KSwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6U2V0U2VsZWN0aW9uVG9FbmQpOwogfQog
CiBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhhc0N1c3RvbUZvY3VzTG9naWMoKSBjb25zdApA
QCAtMzc0LDIxICszNzQsMjIgQEAgU3RyaW5nIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OnZhbHVlKCkg
Y29uc3QKICAgICByZXR1cm4gbV92YWx1ZTsKIH0KIAotdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50
OjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQorRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRl
eHRBcmVhRWxlbWVudDo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZl
bnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNl
bGVjdGlvbikKIHsKLSAgICBzZXRWYWx1ZUNvbW1vbih2YWx1ZSk7CisgICAgc2V0VmFsdWVDb21t
b24odmFsdWUsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAgICAgbV9pc0RpcnR5ID0gdHJ1
ZTsKICAgICB1cGRhdGVWYWxpZGl0eSgpOworICAgIHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRN
TFRleHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQor
dm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXROb25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYg
dmFsdWUsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewotICAgIHNl
dFZhbHVlQ29tbW9uKHZhbHVlKTsKKyAgICBzZXRWYWx1ZUNvbW1vbih2YWx1ZSwgVGV4dEZpZWxk
RXZlbnRCZWhhdmlvcjo6RGlzcGF0Y2hOb0V2ZW50LCBzZWxlY3Rpb24pOwogICAgIG1faXNEaXJ0
eSA9IGZhbHNlOwogICAgIHVwZGF0ZVZhbGlkaXR5KCk7CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVh
RWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKK3ZvaWQgSFRN
TFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxl
Y3Rpb24pCiB7CiAgICAgbV93YXNNb2RpZmllZEJ5VXNlciA9IGZhbHNlOwogICAgIC8vIENvZGUg
ZWxzZXdoZXJlIG5vcm1hbGl6ZXMgbGluZSBlbmRpbmdzIGFkZGVkIGJ5IHRoZSB1c2VyIHZpYSB0
aGUga2V5Ym9hcmQgb3IgcGFzdGluZy4KQEAgLTQwOSwxMCArNDEwLDE0IEBAIHZvaWQgSFRNTFRl
eHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKICAg
ICBpbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlKCk7CiAgICAgc2V0Rm9ybUNvbnRyb2xWYWx1ZU1h
dGNoZXNSZW5kZXJlcih0cnVlKTsKIAotICAgIC8vIFNldCB0aGUgY2FyZXQgdG8gdGhlIGVuZCBv
ZiB0aGUgdGV4dCB2YWx1ZS4KICAgICBpZiAoZG9jdW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09
IHRoaXMpIHsKICAgICAgICAgdW5zaWduZWQgZW5kT2ZTdHJpbmcgPSBtX3ZhbHVlLmxlbmd0aCgp
OwogICAgICAgICBzZXRTZWxlY3Rpb25SYW5nZShlbmRPZlN0cmluZywgZW5kT2ZTdHJpbmcpOwor
ICAgIH0gIGVsc2UgaWYgKHNlbGVjdGlvbiA9PSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
OjpTZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAgICAvLyBXZSBkb24ndCBjaGFuZ2UgdGV4dCBz
ZWxlY3Rpb24gaGVyZSBidXQgbmVlZCB0byB1cGRhdGUgY2FyZXQgdG8KKyAgICAgICAgLy8gdGhl
IGVuZCBvZiB0aGUgdGV4dCB2YWx1ZSBleGNlcHQgZm9yIGluaXRpYWxpemUuCisgICAgICAgIHVu
c2lnbmVkIGVuZE9mU3RyaW5nID0gbV92YWx1ZS5sZW5ndGgoKTsKKyAgICAgICAgY2FjaGVTZWxl
Y3Rpb24oZW5kT2ZTdHJpbmcsIGVuZE9mU3RyaW5nLCBTZWxlY3Rpb25IYXNOb0RpcmVjdGlvbik7
CiAgICAgfQogCiAgICAgc2V0VGV4dEFzT2ZMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudChub3Jt
YWxpemVkVmFsdWUpOwpAQCAtNTc2LDcgKzU4MSw3IEBAIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVu
dDo6Y29weU5vbkF0dHJpYnV0ZVByb3BlcnRpZXNGcm9tRWxlbWVudChjb25zdCBFbGVtZW50JiBz
CiB7CiAgICAgYXV0byYgc291cmNlRWxlbWVudCA9IGRvd25jYXN0PEhUTUxUZXh0QXJlYUVsZW1l
bnQ+KHNvdXJjZSk7CiAKLSAgICBzZXRWYWx1ZUNvbW1vbihzb3VyY2VFbGVtZW50LnZhbHVlKCkp
OworICAgIHNldFZhbHVlQ29tbW9uKHNvdXJjZUVsZW1lbnQudmFsdWUoKSwgRGlzcGF0Y2hOb0V2
ZW50LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCk7CiAg
ICAgbV9pc0RpcnR5ID0gc291cmNlRWxlbWVudC5tX2lzRGlydHk7CiAgICAgSFRNTFRleHRGb3Jt
Q29udHJvbEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQcm9wZXJ0aWVzRnJvbUVsZW1lbnQoc291
cmNlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaAppbmRleCAw
MDc3ZjAyNTMyNmQ3OGYwMjFkYWMwY2IyNzFkOWM5NjhmY2NiYWRlLi5mMWZjYTc4OWM2NzJiZDc3
MjkzMmJhYjQ1NmQzMDNmZDgzYWZiZTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxUZXh0QXJlYUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0
QXJlYUVsZW1lbnQuaApAQCAtNDQsNyArNDQsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzaG91bGRX
cmFwVGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fd3JhcCAhPSBOb1dyYXA7IH0KIAogICAgIFdFQkNP
UkVfRVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JU
IHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJik7CisgICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0
aW9uT3I8dm9pZD4gc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgVGV4dEZpZWxkRXZlbnRCZWhhdmlv
ciA9IERpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiA9IFRleHRD
b250cm9sU2V0VmFsdWVTZWxlY3Rpb246OlNldFNlbGVjdGlvblRvRW5kKSBmaW5hbDsKICAgICBX
RUJDT1JFX0VYUE9SVCBTdHJpbmcgZGVmYXVsdFZhbHVlKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCBzZXREZWZhdWx0VmFsdWUoY29uc3QgU3RyaW5nJik7CiAgICAgaW50IHRleHRM
ZW5ndGgoKSBjb25zdCB7IHJldHVybiB2YWx1ZSgpLmxlbmd0aCgpOyB9CkBAIC04Myw4ICs4Myw4
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYW5kbGVCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudChCZWZv
cmVUZXh0SW5zZXJ0ZWRFdmVudCYpIGNvbnN0OwogICAgIHN0YXRpYyBTdHJpbmcgc2FuaXRpemVV
c2VySW5wdXRWYWx1ZShjb25zdCBTdHJpbmcmLCB1bnNpZ25lZCBtYXhMZW5ndGgpOwogICAgIHZv
aWQgdXBkYXRlVmFsdWUoKSBjb25zdDsKLSAgICB2b2lkIHNldE5vbkRpcnR5VmFsdWUoY29uc3Qg
U3RyaW5nJik7Ci0gICAgdm9pZCBzZXRWYWx1ZUNvbW1vbihjb25zdCBTdHJpbmcmKTsKKyAgICB2
b2lkIHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5nJiwgVGV4dENvbnRyb2xTZXRWYWx1ZVNl
bGVjdGlvbik7CisgICAgdm9pZCBzZXRWYWx1ZUNvbW1vbihjb25zdCBTdHJpbmcmLCBUZXh0Rmll
bGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKTsKIAogICAgIGJv
b2wgc3VwcG9ydHNQbGFjZWhvbGRlcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAg
ICBIVE1MRWxlbWVudCogcGxhY2Vob2xkZXJFbGVtZW50KCkgY29uc3QgZmluYWw7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmluZGV4
IDliZDVlZGI0MzQxZDA5NzQ4YjU2YWNiYWM5MDljNGQwYTUyYmQ1NzYuLjIzYWMyNDczZmJiYTVm
N2M0MTM0YTI3ZWQ2ZGYwZDNmNTNhNDNmMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCkBAIC0yNTQsOCArMjU0LDYgQEAgRXhj
ZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OnNldFJhbmdlVGV4dChj
b25zdCBTdHJpbmcmIHJlcGxhY2UKICAgICBlbHNlCiAgICAgICAgIHRleHQuaW5zZXJ0KHJlcGxh
Y2VtZW50LCBzdGFydCk7CiAKLSAgICBzZXRJbm5lclRleHRWYWx1ZSh0ZXh0KTsKLQogICAgIC8v
IEZJWE1FOiBUaGlzIHNob3VsZG4ndCBuZWVkIHN5bmNocm9ub3VzIHN0eWxlIHVwZGF0ZSwgb3Ig
cmVuZGVyZXIgYXQgYWxsLgogICAgIGlmICghcmVuZGVyZXIoKSkKICAgICAgICAgZG9jdW1lbnQo
KS51cGRhdGVTdHlsZUlmTmVlZGVkKCk7CkBAIC0yNjMsNyArMjYxLDcgQEAgRXhjZXB0aW9uT3I8
dm9pZD4gSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OnNldFJhbmdlVGV4dChjb25zdCBTdHJp
bmcmIHJlcGxhY2UKICAgICBpZiAoIXJlbmRlcmVyKCkpCiAgICAgICAgIHJldHVybiB7IH07CiAK
LSAgICBzdWJ0cmVlSGFzQ2hhbmdlZCgpOworICAgIHNldFZhbHVlKHRleHQsIFRleHRGaWVsZEV2
ZW50QmVoYXZpb3I6OkRpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlv
bjo6RG9Ob3RTZXQpOwogCiAgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHNl
bGVjdGlvbk1vZGUsICJzZWxlY3QiKSkgewogICAgICAgICBuZXdTZWxlY3Rpb25TdGFydCA9IHN0
YXJ0OwpAQCAtMzE0LDYgKzMxMiwxMCBAQCB2b2lkIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50
OjpzZXRTZWxlY3Rpb25SYW5nZShpbnQgc3RhcnQsIGludCBlbmQsIFRleHRGaWVsZAogCiAgICAg
YXV0byBpbm5lclRleHQgPSBpbm5lclRleHRFbGVtZW50Q3JlYXRpbmdTaGFkb3dTdWJ0cmVlSWZO
ZWVkZWQoKTsKICAgICBib29sIGhhc0ZvY3VzID0gZG9jdW1lbnQoKS5mb2N1c2VkRWxlbWVudCgp
ID09IHRoaXM7CisKKyAgICBSZWZQdHI8RnJhbWU+IGZyYW1lID0gZG9jdW1lbnQoKS5mcmFtZSgp
OworICAgIGlmIChkaXJlY3Rpb24gPT0gU2VsZWN0aW9uSGFzTm9EaXJlY3Rpb24gJiYgZnJhbWUg
JiYgZnJhbWUtPmVkaXRvcigpLmJlaGF2aW9yKCkuc2hvdWxkQ29uc2lkZXJTZWxlY3Rpb25Bc0Rp
cmVjdGlvbmFsKCkpCisgICAgICAgIGRpcmVjdGlvbiA9IFNlbGVjdGlvbkhhc0ZvcndhcmREaXJl
Y3Rpb247CiAgICAgaWYgKCFoYXNGb2N1cyAmJiBpbm5lclRleHQpIHsKICAgICAgICAgaWYgKCFp
c0Nvbm5lY3RlZCgpKSB7CiAgICAgICAgICAgICBjYWNoZVNlbGVjdGlvbihzdGFydCwgZW5kLCBk
aXJlY3Rpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEZvcm1D
b250cm9sRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEZvcm1Db250cm9s
RWxlbWVudC5oCmluZGV4IGFiM2FiNmFiYmVhZTAzODM0NDZiOTI3ODM1OTlmYmRjZmUyYzM0MjUu
LjUzYmZkNzM5YThmNDZjNDVkZTdmYzg3YTczYjE2NDUxZDljZjI5ODcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmgKQEAgLTM5LDYgKzM5
LDcgQEAgc3RydWN0IFNpbXBsZVJhbmdlOwogZW51bSBjbGFzcyBBdXRvRmlsbEJ1dHRvblR5cGUg
OiB1aW50OF90IHsgTm9uZSwgQ3JlZGVudGlhbHMsIENvbnRhY3RzLCBTdHJvbmdQYXNzd29yZCwg
Q3JlZGl0Q2FyZCB9OwogZW51bSBUZXh0RmllbGRTZWxlY3Rpb25EaXJlY3Rpb24geyBTZWxlY3Rp
b25IYXNOb0RpcmVjdGlvbiwgU2VsZWN0aW9uSGFzRm9yd2FyZERpcmVjdGlvbiwgU2VsZWN0aW9u
SGFzQmFja3dhcmREaXJlY3Rpb24gfTsKIGVudW0gVGV4dEZpZWxkRXZlbnRCZWhhdmlvciB7IERp
c3BhdGNoTm9FdmVudCwgRGlzcGF0Y2hDaGFuZ2VFdmVudCwgRGlzcGF0Y2hJbnB1dEFuZENoYW5n
ZUV2ZW50IH07CitlbnVtIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24geyBTZXRTZWxlY3Rp
b25Ub0VuZCwgRG9Ob3RTZXQgfTsKIAogY2xhc3MgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQg
OiBwdWJsaWMgSFRNTEZvcm1Db250cm9sRWxlbWVudFdpdGhTdGF0ZSB7CiAgICAgV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRChIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudCk7CkBAIC04OCw2ICs4OSw3
IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgU3RyaW5nIHZhbHVlKCkgY29uc3QgPSAwOwogCisg
ICAgdmlydHVhbCBFeGNlcHRpb25Pcjx2b2lkPiBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBUZXh0
RmllbGRFdmVudEJlaGF2aW9yID0gRGlzcGF0Y2hOb0V2ZW50LCBUZXh0Q29udHJvbFNldFZhbHVl
U2VsZWN0aW9uID0gVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6U2V0U2VsZWN0aW9uVG9F
bmQpID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0cjxUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQ+
IGlubmVyVGV4dEVsZW1lbnQoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBSZWZQdHI8VGV4dENv
bnRyb2xJbm5lclRleHRFbGVtZW50PiBpbm5lclRleHRFbGVtZW50Q3JlYXRpbmdTaGFkb3dTdWJ0
cmVlSWZOZWVkZWQoKSA9IDA7CiAgICAgdmlydHVhbCBSZW5kZXJTdHlsZSBjcmVhdGVJbm5lclRl
eHRTdHlsZShjb25zdCBSZW5kZXJTdHlsZSYpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVu
SW5wdXRUeXBlLmNwcAppbmRleCAwOTc4N2E3YzUyODFmNmM0YjM5NmFmODFhMzhmMGI1NjM2ZmJl
MzMxLi5hZjUzZGE4ZTI1YTRkNjk4M2M2MmI2YTUxYjdhMWJlOGNmZmFkZWNlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuY3BwCkBAIC04Myw3ICs4Myw3IEBAIGJvb2wgSGlk
ZGVuSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0
dXJuIGZhbHNlOwogfQogCi12b2lkIEhpZGRlbklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3Ry
aW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikKK3ZvaWQg
SGlkZGVuSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBi
b29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9u
KQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwogICAgIGVsZW1lbnQoKS0+c2V0QXR0cmlidXRl
V2l0aG91dFN5bmNocm9uaXphdGlvbih2YWx1ZUF0dHIsIHNhbml0aXplZFZhbHVlKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5oCmluZGV4IDk1ZWQwYzFkN2MwMDQyOWY1YTFjMWRj
ZGU2NTc4MWYyZDM1MTc0MDMuLjM0MDdkYmM0YjU4ZmNjZTVhNTA3OWJhNmEyY2UzYzlkYTVjZGM0
YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaApAQCAtNDgsNyArNDgsNyBA
QCBwcml2YXRlOgogICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZCgpIG92ZXJyaWRlOwogICAgIGJv
b2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVycmlkZTsKICAgICBib29s
IHNob3VsZFJlc3BlY3RIZWlnaHRBbmRXaWR0aEF0dHJpYnV0ZXMoKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3Ip
IG92ZXJyaWRlOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCwgVGV4dEZp
ZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgb3ZlcnJpZGU7
CiAgICAgYm9vbCBhcHBlbmRGb3JtRGF0YShET01Gb3JtRGF0YSYpIGNvbnN0IG92ZXJyaWRlOwog
fTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCmluZGV4IDc0ZTBkZGViMThjMGI2MDIwZTg1
YzkxNDIxYTE0YjYyZmI3ZGQ5ZWMuLmMzMGQxZGUwNzNiZGI1OTMzYjhjMzkyM2E2OGUzYzI2ZWFk
YWNhOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKQEAgLTcyMSw3ICs3MjEsNyBAQCBi
b29sIElucHV0VHlwZTo6c3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKQogICAgIHJl
dHVybiB0cnVlOwogfQogCi12b2lkIElucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBz
YW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3Ig
ZXZlbnRCZWhhdmlvcikKK3ZvaWQgSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNh
bml0aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBl
dmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKQogewogICAgIEFTU0VS
VChlbGVtZW50KCkpOwogICAgIGVsZW1lbnQoKS0+c2V0VmFsdWVJbnRlcm5hbChzYW5pdGl6ZWRW
YWx1ZSwgZXZlbnRCZWhhdmlvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lu
cHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuaAppbmRleCA4MTJkNTg4
YjZlZDhkMDM4OTJjNGJiM2QzZGNmMGVmMTBmNmU2OGRjLi4xOTI0YjM3MTZiNGIzMWFjNDNlYmUx
Yjk5OTE1NjhjOGEzMzhiMzgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0
VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgKQEAgLTM0MSw3ICsz
NDEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIHNob3VsZFNlbmRDaGFuZ2VFdmVudEFm
dGVyQ2hlY2tlZENoYW5nZWQoKTsKICAgICB2aXJ0dWFsIGJvb2wgY2FuU2V0VmFsdWUoY29uc3Qg
U3RyaW5nJik7CiAgICAgdmlydHVhbCBib29sIHN0b3Jlc1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmli
dXRlKCk7Ci0gICAgdmlydHVhbCB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFs
dWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0
VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVo
YXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pOwogICAgIHZpcnR1YWwgYm9vbCBz
aG91bGRSZXNldE9uRG9jdW1lbnRBY3RpdmF0aW9uKCk7CiAgICAgdmlydHVhbCBib29sIHNob3Vs
ZFJlc3BlY3RMaXN0QXR0cmlidXRlKCk7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFJlc3BlY3RI
ZWlnaHRBbmRXaWR0aEF0dHJpYnV0ZXMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvTnVtYmVySW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRU
eXBlLmNwcAppbmRleCAzMGZiYTg5NGE5ZmIxYjQyNWI4OWFjNGYxMzlhNjRmYzVkNjAxMTAzLi41
NzQzZDQ2MzcwZmM4MWY1ZTQ3YTkyM2VmNzI0NWI2ZmIxNmY2YzQwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwCkBAIC05NCwxMiArOTQsMTIgQEAgY29uc3QgQXRvbVN0
cmluZyYgTnVtYmVySW5wdXRUeXBlOjpmb3JtQ29udHJvbFR5cGUoKSBjb25zdAogICAgIHJldHVy
biBJbnB1dFR5cGVOYW1lczo6bnVtYmVyKCk7CiB9CiAKLXZvaWQgTnVtYmVySW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9pZCBOdW1iZXJJbnB1dFR5
cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFu
Z2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0
VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwogICAg
IGlmICghdmFsdWVDaGFuZ2VkICYmIHNhbml0aXplZFZhbHVlLmlzRW1wdHkoKSAmJiAhZWxlbWVu
dCgpLT5pbm5lclRleHRWYWx1ZSgpLmlzRW1wdHkoKSkKICAgICAgICAgdXBkYXRlSW5uZXJUZXh0
VmFsdWUoKTsKLSAgICBUZXh0RmllbGRJbnB1dFR5cGU6OnNldFZhbHVlKHNhbml0aXplZFZhbHVl
LCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IpOworICAgIFRleHRGaWVsZElucHV0VHlwZTo6
c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2Vs
ZWN0aW9uKTsKIH0KIAogZG91YmxlIE51bWJlcklucHV0VHlwZTo6dmFsdWVBc0RvdWJsZSgpIGNv
bnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlwZS5oIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuaAppbmRleCAyZmMwZWQ2OWY0M2M2
NjdmOGM2NGQ1OGI2ZTU5OWI4OGVlNzZkZGVkLi44NTNlNGQ1OGVkYTZjOTI4NzRjYTFkMDRmNDI1
YjU1NWZiN2M4MGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0
VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmgKQEAgLTQy
LDcgKzQyLDcgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGNvbnN0IEF0b21TdHJpbmcmIGZv
cm1Db250cm9sVHlwZSgpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3Ry
aW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOwor
ICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRG
aWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwog
ICAgIGRvdWJsZSB2YWx1ZUFzRG91YmxlKCkgY29uc3QgZmluYWw7CiAgICAgRXhjZXB0aW9uT3I8
dm9pZD4gc2V0VmFsdWVBc0RvdWJsZShkb3VibGUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGNv
bnN0IGZpbmFsOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlQXNEZWNpbWFsKGNvbnN0
IERlY2ltYWwmLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKaW5kZXggZjA2YmQ1NTliMDI3NGIwNjc1ZWE0YWY3
NzY3ZjgyNTVkNzZiYjE0Ni4uOWI1ZTEwYzlmMTY1YzAzYjFjOTZmZWY5NTdmNTRmYjNiYjc2ZjA0
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKQEAgLTM0NSw5ICszNDUs
OSBAQCB2b2lkIFJhbmdlSW5wdXRUeXBlOjphdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmll
ZE5hbWUmIG5hbWUpCiAgICAgSW5wdXRUeXBlOjphdHRyaWJ1dGVDaGFuZ2VkKG5hbWUpOwogfQog
Ci12b2lkIFJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29s
IHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQordm9p
ZCBSYW5nZUlucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1
ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRy
b2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpzZXRWYWx1
ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5cGU6OnNl
dFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAK
ICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5oCmluZGV4IDEwZmQzYTcyZTdkNmQwYjAxN2VmNmJiMmI0Yjk1NTA0OGMw
MTU5YTMuLjg0YzdiM2VkNjIzMDBkNDFlYjQyZTRjMzU3YmJjNzRlYTljNTNiOGUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmgKQEAgLTU3LDcgKzU3LDcgQEAgcHJpdmF0ZToKICAg
ICBTdHJpbmcgc2VyaWFsaXplKGNvbnN0IERlY2ltYWwmKSBjb25zdCBmaW5hbDsKICAgICBib29s
IGFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRNb3VzZUV2ZW50cykgZmluYWw7CiAgICAgdm9pZCBh
dHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmKSBmaW5hbDsKLSAgICB2b2lkIHNl
dFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yKSBmaW5hbDsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFs
dWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2Vs
ZWN0aW9uKSBmaW5hbDsKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IGZpbmFsOwog
ICAgIFN0cmluZyBzYW5pdGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYgcHJvcG9zZWRWYWx1ZSkgY29u
c3QgZmluYWw7CiAgICAgYm9vbCBzaG91bGRSZXNwZWN0TGlzdEF0dHJpYnV0ZSgpIGZpbmFsOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwCmluZGV4IDM3MDU2ZTQ1
ZWIxYTc1YzE0ZmQ0M2U2NTZmMTMxNDlmYTUxZjAzMDQuLjAzNDZmY2IzNWQxMDA5NGJmNjhkOTAy
ZTExN2I3ZmJmNWYxMGI0NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZp
ZWxkSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0
VHlwZS5jcHAKQEAgLTEyNyw3ICsxMjcsNyBAQCBib29sIFRleHRGaWVsZElucHV0VHlwZTo6dmFs
dWVNaXNzaW5nKGNvbnN0IFN0cmluZyYgdmFsdWUpIGNvbnN0CiAgICAgcmV0dXJuICFlbGVtZW50
KCktPmlzRGlzYWJsZWRPclJlYWRPbmx5KCkgJiYgZWxlbWVudCgpLT5pc1JlcXVpcmVkKCkgJiYg
dmFsdWUuaXNFbXB0eSgpOwogfQogCi12b2lkIFRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUo
Y29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVs
ZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVl
U2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKICAgICBBU1NFUlQoZWxlbWVudCgpKTsKIApAQCAtMTM3
LDE4ICsxMzcsMjAgQEAgdm9pZCBUZXh0RmllbGRJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0
cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2UKIAogICAgIC8vIFdlIGRvbid0
IGFzayBJbnB1dFR5cGU6OnNldFZhbHVlIHRvIGRpc3BhdGNoIGV2ZW50cyBiZWNhdXNlCiAgICAg
Ly8gVGV4dEZpZWxkSW5wdXRUeXBlIGRpc3BhdGNoZXMgZXZlbnRzIGRpZmZlcmVudCB3YXkgZnJv
bSBJbnB1dFR5cGUuCi0gICAgSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFs
dWVDaGFuZ2VkLCBEaXNwYXRjaE5vRXZlbnQpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUoc2Fu
aXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgRGlzcGF0Y2hOb0V2ZW50LCBzZWxlY3Rpb24pOwog
CiAgICAgaWYgKCF2YWx1ZUNoYW5nZWQpCiAgICAgICAgIHJldHVybjsKIAogICAgIHVwZGF0ZUlu
bmVyVGV4dFZhbHVlKCk7CiAKLSAgICB1bnNpZ25lZCBtYXggPSB2aXNpYmxlVmFsdWUoKS5sZW5n
dGgoKTsKLSAgICBpZiAoaW5wdXQtPmZvY3VzZWQoKSkKLSAgICAgICAgaW5wdXQtPnNldFNlbGVj
dGlvblJhbmdlKG1heCwgbWF4KTsKLSAgICBlbHNlCi0gICAgICAgIGlucHV0LT5jYWNoZVNlbGVj
dGlvbkluUmVzcG9uc2VUb1NldFZhbHVlKG1heCk7CisgICAgaWYgKHNlbGVjdGlvbiA9PSBUZXh0
Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAgICB1
bnNpZ25lZCBtYXggPSB2aXNpYmxlVmFsdWUoKS5sZW5ndGgoKTsKKyAgICAgICAgaWYgKGlucHV0
LT5mb2N1c2VkKCkpCisgICAgICAgICAgICBpbnB1dC0+c2V0U2VsZWN0aW9uUmFuZ2UobWF4LCBt
YXgpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBpbnB1dC0+Y2FjaGVTZWxlY3Rpb25JblJl
c3BvbnNlVG9TZXRWYWx1ZShtYXgpOworICAgIH0KIAogICAgIHN3aXRjaCAoZXZlbnRCZWhhdmlv
cikgewogICAgIGNhc2UgRGlzcGF0Y2hDaGFuZ2VFdmVudDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1Rl
eHRGaWVsZElucHV0VHlwZS5oCmluZGV4IDRlMWJiMTU0YzVhN2I1NjFjYjU0NGZlMmQ2ZmZiODdm
MDJhYzllM2EuLjk1ZWI0NjI1ZWZiOTZjZmJkYWQ3NDRkYzIzNGUwOWM3NDNiYTFiNDkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuaApAQCAtNzgsNyArNzgsNyBAQCBw
cm90ZWN0ZWQ6CiAgICAgYm9vbCBzdXBwb3J0c1JlYWRPbmx5KCkgY29uc3QgZmluYWw7CiAgICAg
dm9pZCBoYW5kbGVGb2N1c0V2ZW50KE5vZGUqIG9sZEZvY3VzZWROb2RlLCBGb2N1c0RpcmVjdGlv
bikgZmluYWw7CiAgICAgdm9pZCBoYW5kbGVCbHVyRXZlbnQoKSBmaW5hbDsKLSAgICB2b2lkIHNl
dFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wg
dmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVl
U2VsZWN0aW9uKSBvdmVycmlkZTsKICAgICB2b2lkIHVwZGF0ZUlubmVyVGV4dFZhbHVlKCkgZmlu
YWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJp
ZGU7CiAgICAgYm9vbCB2YWx1ZU1pc3NpbmcoY29uc3QgU3RyaW5nJikgY29uc3QgZmluYWw7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggMzNmMTQwNjI0MTcyYzIwZTM0MzNhZjA1YWJmYzhkZGY0YWJmMWQ0NC4uNWQ0MTBkNmY4
ZGZjYTUwMDFmZjdiYTQxYzEzMmFhOTdmZDgxYTg0MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisy
MDIyLTAzLTA5ICBaaXJhbiBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVj
dGlvbl0gRml4ZXMgc2VsZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCB0d28gdGVz
dHMgdGhhdCBleHBlY3QgcmVzZXR0aW5nIHZhbHVlIG9mIHRleHRhcmVhIHRvIGNoYW5nZSBzZWxl
Y3Rpb24gdG8gMC4KKyAgICAgICAgVGhlc2UgY2hhbmdlcyBhcmUgaW4gbGluZSB3aXRoIGNoYW5n
ZXMgbWFkZSBpbiBDaHJvbWl1bS4KKyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUt
aW50by10ZXh0YXJlYS13aXRoLW5ldy1saW5lLmh0bWw6CisgICAgICAgICogZmFzdC9zcGF0aWFs
LW5hdmlnYXRpb24vc25hdi10ZXh0YXJlYS5odG1sOgorCiAyMDIyLTAzLTAxICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW0RlYnVnXSBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3VybC90b2FzY2lpLndpbmRvdy5odG1sIGlzIGNyYXNoaW5nCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAzODgzYTkwNmEwNmQxOGY2NWRlODg5N2E2Mzc1
NjFlOGJhMDkyYTRmLi43ODRlMDliOGQyNjc4N2Q5YjNlNjQ1MmRiZjE1NzRkNTNmZGZiNTE1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMi0wMy0w
OSAgWmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgorCisgICAgICAgIFtTZWxlY3Rpb25dIEZp
eGVzIHNlbGVjdGlvbiByYW5nZSBzZXR0aW5ncyBmb3IgVEVYVEFSRUEKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzY0MQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0aW5nIHRlc3QgZXhwZWN0YXRp
b25zIGFzIHNvbWUgc3ViLXRlc3RzIGFyZSBub3cgcGFzc2luZy4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL2RlZmF1
bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVu
ZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50
aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
Zm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi12YWx1ZS1pbnRlcmFjdGlvbnMtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9m
b3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmct
ZXhwZWN0ZWQudHh0OgorCiAyMDIyLTAzLTAxICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJr
aXQub3JnPgogCiAgICAgICAgIFt3ZWItYW5pbWF0aW9uc10gd2ViLWFuaW1hdGlvbnMvaW50ZXJm
YWNlcy9BbmltYXRhYmxlL2dldEFuaW1hdGlvbnMtaWZyYW1lLmh0bWwgaXMgYSB1bmlxdWUgZmFp
bHVyZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWlu
dG8tdGV4dGFyZWEtd2l0aC1uZXctbGluZS5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0
ZWJvYXJkL3Bhc3RlLWludG8tdGV4dGFyZWEtd2l0aC1uZXctbGluZS5odG1sCmluZGV4IDkzOWJi
OTc2MzE3MDIxYjNlOGVmMjU1ZDZmZjJiOWM3MDJiYjYzZWIuLmVjNGQ1NWI0MzZhYmFkNTE3YTFm
ZjQ0ZGRlNDczMDA3YjNiN2M0YTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFz
dGVib2FyZC9wYXN0ZS1pbnRvLXRleHRhcmVhLXdpdGgtbmV3LWxpbmUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtaW50by10ZXh0YXJlYS13aXRoLW5ldy1s
aW5lLmh0bWwKQEAgLTExLDYgKzExLDcgQEAgdGV4dGFyZWEudmFsdWUgPSAiXG4iOwogdGV4dGFy
ZWEucm93cyA9IDEwOwogZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0ZXh0YXJlYSk7CiB0ZXh0
YXJlYS5mb2N1cygpOwordGV4dGFyZWEuc2V0U2VsZWN0aW9uUmFuZ2UoMCwgMCk7CiBzaG91bGRC
ZSgiZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ0luc2VydEhUTUwnLCBmYWxzZSwgJ2ZpcnN0PGJyPjxi
cj50aGlyZCcpOyB0ZXh0YXJlYS52YWx1ZSIsICInZmlyc3RcXG5cXG50aGlyZFxcbiciKTsKIAog
dmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LXRleHRhcmVhLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LXRleHRhcmVhLmh0bWwKaW5kZXggMzM2Mjc2NTA0
NjYyNmRkMDc5ZmE3MDkxYWE2MGUyOGVkZDI2ZjhjNC4uMTQ1OWNjOTgwNDg1NGI4OTE3YWVjNjdh
YzUyZGRlNTc0NzdiNmUwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5h
dmlnYXRpb24vc25hdi10ZXh0YXJlYS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc3BhdGlh
bC1uYXZpZ2F0aW9uL3NuYXYtdGV4dGFyZWEuaHRtbApAQCAtNjYsNiArNjYsOSBAQAogCiAgICAg
ICAvLyBzdGFydGluZyB0aGUgdGVzdCBpdHNlbGY6IGdldCB0byBhIGtub3duIHBsYWNlLgogICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0YXJ0IikuZm9jdXMoKTsKKyAgICAgIHRleHRh
cmVhLmZvY3VzKCk7CisgICAgICB0ZXh0YXJlYS5zZXRTZWxlY3Rpb25SYW5nZSgwLCAwKTsKKwog
CiAgICAgICBpbml0VGVzdChyZXN1bHRNYXAsIHRlc3RDb21wbGV0ZWQpOwogICAgIH0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
ZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBl
Y3RlZC50eHQKaW5kZXggMzZmNTdkYjc3ODE1ZWVlNzQ3NWU5NzAyYzk5MDVmODRkNmY0YmNiNS4u
NGNhMGQzZGRmYWY5NWVkNGY3YWE3ZmU2Mjg5NzM4ZjI2NzY3MzFhMSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9m
b3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFu
dGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vZGVmYXVsdFNlbGVjdGlvbi1leHBlY3RlZC50
eHQKQEAgLTIsNyArMiw3IEBACiAKIFBBU1MgRGVmYXVsdCBzZWxlY3Rpb25TdGFydCBhbmQgc2Vs
ZWN0aW9uRW5kIGZvciBbb2JqZWN0IEhUTUxUZXh0QXJlYUVsZW1lbnRdCiBQQVNTIHNlbGVjdGlv
blN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgZG8gbm90IGNoYW5nZSB3aGVuIHNhbWUgdmFsdWUgc2V0
IGFnYWluIGZvciBbb2JqZWN0IEhUTUxUZXh0QXJlYUVsZW1lbnRdCi1GQUlMIHNlbGVjdGlvblN0
YXJ0IGFuZCBzZWxlY3Rpb25FbmQgY2hhbmdlIHdoZW4gdmFsdWUgY2hhbmdlZCB0byB1cHBlciBj
YXNlIGZvciBbb2JqZWN0IEhUTUxUZXh0QXJlYUVsZW1lbnRdIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDMgYnV0IGdvdCAwCitQQVNTIHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgY2hh
bmdlIHdoZW4gdmFsdWUgY2hhbmdlZCB0byB1cHBlciBjYXNlIGZvciBbb2JqZWN0IEhUTUxUZXh0
QXJlYUVsZW1lbnRdCiBQQVNTIERlZmF1bHQgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVu
ZCBmb3IgW29iamVjdCBIVE1MSW5wdXRFbGVtZW50XQogUEFTUyBzZWxlY3Rpb25TdGFydCBhbmQg
c2VsZWN0aW9uRW5kIGRvIG5vdCBjaGFuZ2Ugd2hlbiBzYW1lIHZhbHVlIHNldCBhZ2FpbiBmb3Ig
W29iamVjdCBIVE1MSW5wdXRFbGVtZW50XQogUEFTUyBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0
aW9uRW5kIGNoYW5nZSB3aGVuIHZhbHVlIGNoYW5nZWQgdG8gdXBwZXIgY2FzZSBmb3IgW29iamVj
dCBIVE1MSW5wdXRFbGVtZW50XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNl
bGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4cGVjdGVkLnR4dAppbmRleCA2OGRmYzc1M2I1
YjJlMGQ5MDY4OTM2NGNkYzM1MWMzODFhZjA1YWRiLi5mMWZiNWEwMWI4NzE2YTQwMjM1MWIxZTQ0
ZjUwZWIyMTk1M2U1ZTY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9z
ZWxlY3Rpb24tc3RhcnQtZW5kLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNl
bGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4cGVjdGVkLnR4dApAQCAtNiwxOCArNiwxOCBA
QCBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1hcHBlbmRlZCBzaG91bGQgc2V0IHNl
bGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5w
dXQtbm90LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVl
CiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNo
b3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlCiBQQVNTIEluaXRpYWwgLnZh
bHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVj
dGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4
dGFyZWEtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUg
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1GQUlMIEluaXRpYWwgLnZhbHVl
IHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0
byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1GQUlM
IEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3Vs
ZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90
LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2Yg
dmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCitQQVNTIEluaXRpYWwg
LnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0
IHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90
LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlCitQQVNT
IEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3Vs
ZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlCitQQVNTIEluaXRpYWwgLnZhbHVl
IHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVj
dGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5w
dXQtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCiBQQVNT
IEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxl
Y3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCiBQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiBpbnB1
dC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2
YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5wdXQtbm90LWFwcGVuZGVkLXByZWZv
Y3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCi1GQUlMIEluaXRp
YWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVu
ZCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1G
QUlMIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQgc2hvdWxkIHNl
dCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEw
IGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQt
cHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCi1GQUlMIEluaXRpYWwgLnZhbHVlIHNldCBv
biB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVu
ZCB0byBlbmQgb2YgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMTAgYnV0IGdvdCAwCitQ
QVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZCBzaG91bGQgc2V0IHNl
bGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRl
eHRhcmVhLW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFs
dWUKK1BBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3Vz
ZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCitQQVNTIEluaXRpYWwg
LnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0
IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKIFBBU1Mgb25zZWxlY3Qgc2hvdWxkIGZpcmUg
d2hlbiBzZWxlY3Rpb25TdGFydCBpcyBjaGFuZ2VkCiBOT1RSVU4gb25zZWxlY3Qgc2hvdWxkIGZp
cmUgd2hlbiBzZWxlY3Rpb25TdGFydCBpcyBjaGFuZ2VkIG9uIGlucHV0LWFwcGVuZGVkCiBOT1RS
VU4gb25zZWxlY3Qgc2hvdWxkIGZpcmUgd2hlbiBzZWxlY3Rpb25TdGFydCBpcyBjaGFuZ2VkIG9u
IGlucHV0LW5vdC1hcHBlbmRlZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRm
aWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4cGVjdGVkLnR4dAppbmRl
eCA5NDMzOTYxMWQ5NWQyMTVkYzM5M2I1NDI0ZmI4Yjc3YjRkODc3MmJhLi44MmQ1ZWIzNjU1NjNm
YTE5YWY1YzZhYzc5NjZiMmU1YTEwMTU4OTFhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVs
ZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tc3RhcnQtZW5kLWV4dHJhLWV4cGVj
dGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCiBQQVNTIFNldHRpbmcgZGVmYXVsdFZhbHVlIGlu
IGEgdGV4dGFyZWEgc2hvdWxkIE5PVCBtb3ZlIHRoZSBjdXJzb3IgdG8gdGhlIGVuZAotRkFJTCBT
ZXR0aW5nIGRlZmF1bHRWYWx1ZSBpbiBhIHRleHRhcmVhIHdpdGggYSB2YWx1ZSBzaG91bGQgTk9U
IG1ha2UgYW55IGRpZmZlcmVuY2UgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgNiBidXQgZ290IDAK
K1BBU1MgU2V0dGluZyBkZWZhdWx0VmFsdWUgaW4gYSB0ZXh0YXJlYSB3aXRoIGEgdmFsdWUgc2hv
dWxkIE5PVCBtYWtlIGFueSBkaWZmZXJlbmNlCiBQQVNTIFNldHRpbmcgdGV4dENvbnRlbnQgaW4g
YSB0ZXh0YXJlYSBzaG91bGQgTk9UIG1vdmUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0gdG8gdGhlIGVu
ZAogUEFTUyBBZGRpbmcgY2hpbGRyZW4gdG8gYSB0ZXh0YXJlYSBzaG91bGQgTk9UIG1vdmUgc2Vs
ZWN0aW9ue1N0YXJ0LEVuZH0gdG8gdGhlIGVuZAogUEFTUyBSZW1vdmluZyBjaGlsZHJlbiBmcm9t
IGEgdGV4dGFyZWEgc2hvdWxkIE5PVCB1cGRhdGUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0KIFBBU1Mg
U2V0dGluZyB0aGUgc2FtZSB2YWx1ZSAod2l0aCBkaWZmZXJlbnQgbmV3bGluZXMpIGluIGEgdGV4
dGFyZWEgc2hvdWxkIE5PVCB1cGRhdGUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0KIEZBSUwgUmVtb3Zp
bmcgY2hpbGQgbm9kZXMgaW4gbm9uLWRpcnR5IHRleHRhcmVhIHNob3VsZCBtYWtlIHNlbGVjdGlv
bntTdGFydCxFbmR9IDAgYXNzZXJ0X2VxdWFsczogc2VsZWN0aW9uU3RhcnQgYWZ0ZXIgbm9kZSBy
ZW1vdmFsIGV4cGVjdGVkIDAgYnV0IGdvdCAzCi1GQUlMIFNldHRpbmcgdmFsdWUgdG8gYSBzaG9y
dGVyIHN0cmluZyB0aGFuIGRlZmF1bHRWYWx1ZSBzaG91bGQgY29ycmVjdCB0aGUgY3Vyc29yIHBv
c2l0aW9uIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDIgYnV0IGdvdCAzCitQQVNTIFNldHRpbmcg
dmFsdWUgdG8gYSBzaG9ydGVyIHN0cmluZyB0aGFuIGRlZmF1bHRWYWx1ZSBzaG91bGQgY29ycmVj
dCB0aGUgY3Vyc29yIHBvc2l0aW9uCiBQQVNTIFNob3J0ZW5pbmcgdmFsdWUgYnkgdHVybmluZyB0
aGUgaW5wdXQgdHlwZSBpbnRvICd1cmwnIHNob3VsZCBjb3JyZWN0IHNlbGVjdGlvbntTdGFydCxF
bmR9CiBGQUlMIFNob3J0ZW5pbmcgdmFsdWUgYnkgdHVybmluZyB0aGUgaW5wdXQgdHlwZSBpbnRv
ICdjb2xvcicgYW5kIGJhY2sgdG8gJ3RleHQnIHNob3VsZCBjb3JyZWN0IHNlbGVjdGlvbntTdGFy
dCxFbmR9IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCA5CiBQQVNTIFJlc2V0dGlu
ZyBhIHZhbHVlIHRvIGEgc2hvcnRlciBzdHJpbmcgdGhhbiBkZWZhdWx0VmFsdWUgc2hvdWxkIGNv
cnJlY3QgdGhlIGN1cnNvciBwb3NpdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRz
ZWxlY3Rpb24vc2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zv
cm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tdmFsdWUtaW50ZXJhY3Rpb25zLWV4cGVj
dGVkLnR4dAppbmRleCA4NDEwYTgyOWJiZmFhODhjMTk3OTkzMTQxZjBjMjA3ZjA0NTAzY2M0Li5i
MTkwNzRlZDk4NDg3NTA2ZGI4NzhmNzJiY2UxNDQ0NDdiMzA0YTc4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zv
cm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tdmFsdWUtaW50ZXJhY3Rpb25zLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tdmFsdWUt
aW50ZXJhY3Rpb25zLWV4cGVjdGVkLnR4dApAQCAtMTEsNiArMTEsNiBAQCBQQVNTIHZhbHVlIGRp
cnR5IGZsYWcgYmVoYXZpb3IgYWZ0ZXIgc2V0UmFuZ2VUZXh0IG9uIGZvY3VzZWQgdGhlbiBibHVy
cmVkIHRleHRhcgogUEFTUyB2YWx1ZSBkaXJ0eSBmbGFnIGJlaGF2aW9yIGFmdGVyIHNldFJhbmdl
VGV4dCBvbiBmb2N1c2VkIHRoZW4gYmx1cnJlZCBpbnB1dAogUEFTUyBzZWxlY3Rpb24gaXMgY29s
bGFwc2VkIHRvIHRoZSBlbmQgYWZ0ZXIgY2hhbmdpbmcgdmFsdWVzIG9uIGlucHV0CiBQQVNTIHNl
bGVjdGlvbiBpcyBub3QgY29sbGFwc2VkIHRvIHRoZSBlbmQgd2hlbiB2YWx1ZSBpcyBzZXQgdG8g
aXRzIGV4aXN0aW5nIHZhbHVlIG9uIGlucHV0Ci1GQUlMIHNlbGVjdGlvbiBpcyBjb2xsYXBzZWQg
dG8gdGhlIGVuZCBhZnRlciBjaGFuZ2luZyB2YWx1ZXMgb24gdGV4dGFyZWEgYXNzZXJ0X2VxdWFs
czogZWxlbWVudC5zZWxlY3Rpb25TdGFydCBzaG91bGQgYmUgdmFsdWUubGVuZ3RoIGV4cGVjdGVk
IDMgYnV0IGdvdCAwCitQQVNTIHNlbGVjdGlvbiBpcyBjb2xsYXBzZWQgdG8gdGhlIGVuZCBhZnRl
ciBjaGFuZ2luZyB2YWx1ZXMgb24gdGV4dGFyZWEKIFBBU1Mgc2VsZWN0aW9uIGlzIG5vdCBjb2xs
YXBzZWQgdG8gdGhlIGVuZCB3aGVuIHZhbHVlIGlzIHNldCB0byBpdHMgZXhpc3RpbmcgdmFsdWUg
b24gdGV4dGFyZWEKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vdGV4
dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0
ZmllbGRzZWxlY3Rpb24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhwZWN0ZWQu
dHh0CmluZGV4IGUwNmQwNzMyYzNmMmUwYjEwMTljMDcyMzExNjRhMTk2NWNkNjA1MjcuLjQ3NjM1
OWE4NDIyOGMxNWQyYTRiODgzOGZjMTk1MWNiNTE3OWE1NzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMv
dGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGlsZS1wYXJzaW5nLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi90ZXh0YXJlYS1zZWxlY3Rp
b24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKIAotRkFJTCBW
YWx1ZSBzZXR0ZXIgd2hpbGUgcGFyc2luZyB0ZXh0YXJlYSBjaGlsZHJlbiBzaG91bGQgbW92ZSBz
ZWxlY3Rpb257U3RhcnQsRW5kfSB0byB0aGUgZW5kIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDMg
YnV0IGdvdCAwCitQQVNTIFZhbHVlIHNldHRlciB3aGlsZSBwYXJzaW5nIHRleHRhcmVhIGNoaWxk
cmVuIHNob3VsZCBtb3ZlIHNlbGVjdGlvbntTdGFydCxFbmR9IHRvIHRoZSBlbmQKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rp
b24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2Ut
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2NWVkNjg2OGQyNzQxNDJlZWFiMzM5MTFiYWI2ZTY4
NjkzNzkzMjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2sy
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4
dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250ZW50LWNoYW5nZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyMSBAQAorCisKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBp
bnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcg
YSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24g
bXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2Ft
ZSBhZnRlciB0aGUgdmFsdWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUg
dmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVj
dGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgdmFsdWUgdGhhdCBiZWNvbWVzIHRo
ZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24gYWxnb3JpdGhtCitQQVNTIGlucHV0
IGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4g
c2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1
czogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2YWx1ZQor
UEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhl
IHZhbHVlIHNhbml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1
ZQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3
aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSBub3Jt
YWxpemVkIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBu
b3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2
YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBp
biBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNl
dHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUK
K1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5v
dCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIG5vcm1hbGl6ZWQgdmFsdWUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rp
b24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2Ut
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2NWVkNjg2OGQyNzQxNDJlZWFiMzM5MTFiYWI2ZTY4
NjkzNzkzMjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sx
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4
dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250ZW50LWNoYW5nZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyMSBAQAorCisKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBp
bnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcg
YSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24g
bXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2Ft
ZSBhZnRlciB0aGUgdmFsdWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUg
dmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVj
dGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgdmFsdWUgdGhhdCBiZWNvbWVzIHRo
ZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24gYWxnb3JpdGhtCitQQVNTIGlucHV0
IGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4g
c2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1
czogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2YWx1ZQor
UEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhl
IHZhbHVlIHNhbml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1
ZQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3
aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSBub3Jt
YWxpemVkIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBu
b3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2
YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBp
biBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNl
dHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUK
K1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5v
dCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIG5vcm1hbGl6ZWQgdmFsdWUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rp
b24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxlY3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2Ut
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2NWVkNjg2OGQyNzQxNDJlZWFiMzM5MTFiYWI2ZTY4
NjkzNzkzMjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sy
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4
dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1hZnRlci1jb250ZW50LWNoYW5nZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyMSBAQAorCisKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxl
Y3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBp
bnB1dCBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcg
YSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24g
bXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2Ft
ZSBhZnRlciB0aGUgdmFsdWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUg
dmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVj
dGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgdmFsdWUgdGhhdCBiZWNvbWVzIHRo
ZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24gYWxnb3JpdGhtCitQQVNTIGlucHV0
IGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4g
c2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1
czogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2YWx1ZQor
UEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhl
IHZhbHVlIHNhbml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1
ZQorUEFTUyB0ZXh0YXJlYSBvdXQgb2YgZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3
aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0IG9mIGRvY3Vt
ZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSBub3Jt
YWxpemVkIHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBu
b3QgY2hhbmdlIHdoZW4gc2V0dGluZyB0aGUgc2FtZSB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBk
b2N1bWVudDogc2VsZWN0aW9uIG11c3QgY2hhbmdlIHdoZW4gc2V0dGluZyBhIGRpZmZlcmVudCB2
YWx1ZQorUEFTUyB0ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0ZXh0YXJlYSBp
biBkb2N1bWVudCwgd2l0aCBmb2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNl
dHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUK
K1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5v
dCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIG5vcm1hbGl6ZWQgdmFsdWUKKwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454682</attachid>
            <date>2022-03-15 02:41:13 -0700</date>
            <delta_ts>2022-03-17 02:20:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237641-20220315094112.patch</filename>
            <type>text/plain</type>
            <size>50304</size>
            <attacher>zsun</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWI2NDJlMWFiZjhiYmZk
NDUzYTNmZTk2ODIzNjM4NjY5NDVmMGFjNy4uZWJiNzcyZjcwNTM1NTQ5MzIwMzdjNTRjNmEzZDRh
NzJjODQyMTk5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcyIEBACisyMDIyLTAzLTA5ICBaaXJh
biBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1NlbGVjdGlvbl0gRml4ZXMgc2Vs
ZWN0aW9uIHJhbmdlIHNldHRpbmdzIGZvciBURVhUQVJFQQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Q2hyaXMgRHVtZXouCisKKyAgICAgICAgVGhpcyBDTCBpcyB0byBmaXggdGhlIHNldHRpbmdzIG9m
IFNlbGVjdGlvblN0YXJ0L1NlbGVjdGlvbkVuZCBmb3IgVEVYVEFSRUEgZm9yIG5vbi1mb2N1c2Vk
IEVsZW1lbnQuIEl0IHNldHMgdGhlCisgICAgICAgIGNhcmV0IHRvIHRoZSBlbmQgb2YgdGhlIHRl
eHQgdmFsdWUgZXhjZXB0IGZvciBpbml0aWFsaXppbmcgaW4gbW9zdCBjYXNlcy4gRm9yIHRoZSBj
YXNlIG9mIHVwZGF0aW5nIGRlZmF1bHRWYWx1ZQorICAgICAgICBmb3IgYSBub24tZGlydHkgVEVY
VEFSRUEsIHdlIHNob3VsZCBmb2xsb3dpbmcgdGhlIGNsYW1waW5nIHN0ZXBzIGFzIHBlciBzcGVj
IGFuZCBpdCB3aWxsIGJlIGFkZHJlc3NlZCBpbiBhIAorICAgICAgICBmb2xsb3ctdXAgcGF0Y2gu
ICAgICAgICAKKworICAgICAgICBUaGlzIENMIHJlZmVycyBhbmQgaW1wb3J0cyBwYXJ0IG9mIHRo
ZSBjaGFuZ2VzIGluIGNocm9taXVtIENMIGF0CisgICAgICAgIGh0dHBzOi8vY29kZXJldmlldy5j
aHJvbWl1bS5vcmcvMzkyNTczMDAyCisKKyAgICAgICAgVGV4dEFyZWEgb25seSBjYWxscyBzZXRT
ZWxlY3Rpb25SYW5nZSgpIGZvciBmb2N1c2VkIGVsZW1lbnQuIFdoaWxlIGZvciBub24tZm9jdXNl
ZCBlbGVtZW50LCB3ZSBuZWVkIHRvIHVwZGF0ZSB0aGUgY2FyZXQKKyAgICAgICAgZXhjZXB0IGZv
ciBpbml0aWFsaXppbmcuIFNpbmNlIHdlIGFyZSBub3QgY2hhbmdlIHRleHQgc2VsZWN0aW9uIGZv
ciB0ZXh0IGFyZWEgaW4gdGhpcyBjYXNlLCB3ZSBvbmx5IGNhY2hlIHRoZSBzZWxlY3Rpb25zLgor
ICAgICAgICBJdCB3b3VsZCBiZSBpZGVhbCB0byBoYXZlIGEgdW5pZmllZCBmdW5jdGlvbiBjYWxs
IGZvciBib3RoIGZvY3VzZWQgYW5kIG5vbi1mb2N1c2VkIGNhc2VzLiBIb3dldmVyLCB0aGUgc2Vs
ZWN0aW9uUmFuZ2UoKQorICAgICAgICBmdW5jdGlvbiBjaGFuZ2VzIGZvY3VzIG9mIHRoZSBlbGVt
ZW50IGFuZCB0aGUgYXBwcm9hY2ggd2UgYXJlIGhhdmluZyBoZXJlIGlzIHRvIGF2b2lkIHRoZSBp
bXBhY3RzIG9uIGEgZ29vZCBudW1iZXIgb2YKKyAgICAgICAgZXhpc2l0aW5nIHRlc3RzLgorCisg
ICAgICAgIFRoaXMgQ0wgYWxzbyBpbnRyb2R1Y2VzIGEgdW5pZmllZCBzZXRWYWx1ZSgpIEFQSSBp
biBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IGZvciBIVE1MVGV4dEFyZWFFbGVtZW50IGFuZCBIVE1M
SW5wdXRFbGVtZW50LgorCisgICAgICAgICogaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAg
ICAgKiBodG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0Jhc2VDaGVj
a2FibGVJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QmFzZUNoZWNrYWJsZUlucHV0
VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5o
OgorICAgICAgICAqIGh0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAo
V2ViQ29yZTo6QmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpkaWRDaGFuZ2VWYWx1ZUZyb21Db250
cm9sKToKKyAgICAgICAgKiBodG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvQ29sb3JJbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29sb3JJbnB1
dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0NvbG9ySW5wdXRUeXBlLmg6CisgICAg
ICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1
dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAgKiBodG1sL0ZpbGVJbnB1dFR5cGUuaDoKKyAgICAg
ICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElu
cHV0RWxlbWVudDo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5o
OgorICAgICAgICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFRleHRBcmVhRWxlbWVudDo6cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TFRleHRBcmVhRWxlbWVudDo6c2V0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRB
cmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4
dEFyZWFFbGVtZW50OjpzZXRWYWx1ZUNvbW1vbik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4
dEFyZWFFbGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllc0Zyb21FbGVtZW50KToKKyAg
ICAgICAgKiBodG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxU
ZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxUZXh0Rm9y
bUNvbnRyb2xFbGVtZW50OjpzZXRSYW5nZVRleHQpOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRG
b3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hpZGRlbklucHV0VHlwZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpIaWRkZW5JbnB1dFR5cGU6OnNldFZhbHVlKToKKyAgICAgICAg
KiBodG1sL0hpZGRlbklucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6c2V0VmFsdWUpOgorICAgICAgICAqIGh0bWwv
SW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6TnVtYmVySW5wdXRUeXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRtbC9O
dW1iZXJJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1JhbmdlSW5wdXRUeXBlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJhbmdlSW5wdXRUeXBlOjpzZXRWYWx1ZSk6CisgICAgICAgICogaHRt
bC9SYW5nZUlucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUpOgorICAg
ICAgICAqIGh0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmg6CisKIDIwMjItMDMtMDEgIEFsYW4gQnVq
dGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtJRkNdW0ludGVncmF0aW9uXSBJbmxp
bmVJdGVyYXRvcjo6Qm94OjpyZWN0KCkgcmV0dXJucyB0aGUgdW5mbGlwcGVkIHZpc3VhbCByZWN0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmNwcAppbmRleCA0ZTcz
OTUzODEyZDQwODRjODVkYmUxMDVjN2E5MzU2OTVmNzBjY2ZlLi44ODIxMGMzMzlmNTU1OTZkNjEy
MWY1MDY1Mjg1MGQ0NjAwZGMxODMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jh
c2VCdXR0b25JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUJ1dHRv
bklucHV0VHlwZS5jcHAKQEAgLTYyLDcgKzYyLDcgQEAgYm9vbCBCYXNlQnV0dG9uSW5wdXRUeXBl
OjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwog
fQogCi12b2lkIEJhc2VCdXR0b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2Fu
aXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VCdXR0
b25JbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2ws
IFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7
CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRo
b3V0U3luY2hyb25pemF0aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQnV0dG9uSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaAppbmRleCBlNDE0NjM0MWIwNGY0MTk4Y2Iw
NzA2YjlhNjUyZDY2OTE2YzAyZGMyLi40ZjhlOGExYWUzZjNmNDYxODY5ZjY2YzFlNmYyYjdhOWIx
YzM2OTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5
cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VCdXR0b25JbnB1dFR5cGUuaApAQCAt
NDQsNyArNDQsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgYXBwZW5kRm9ybURhdGEoRE9NRm9ybURh
dGEmKSBjb25zdCBvdmVycmlkZTsKICAgICBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRl
SW5wdXRSZW5kZXJlcihSZW5kZXJTdHlsZSYmKSBvdmVycmlkZTsKICAgICBib29sIHN0b3Jlc1Zh
bHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShj
b25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVoYXZp
b3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIG92ZXJyaWRlOwogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hl
Y2thYmxlSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNoZWNrYWJsZUlu
cHV0VHlwZS5jcHAKaW5kZXggMDY1Y2VjMGU2NWJjNzI3NDNhMmZkMjFmODZjM2M1ODhkYWVhMTEz
Zi4uOGE1NGNhMDUzNTRhOTMwMjc1OWFiNzViYTNhMTc1NWY3YjlmNDU1ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwCkBAIC0xMDgsNyArMTA4
LDcgQEAgYm9vbCBCYXNlQ2hlY2thYmxlSW5wdXRUeXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJv
bUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEJhc2VDaGVja2FibGVJ
bnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRl
eHRGaWVsZEV2ZW50QmVoYXZpb3IpCit2b2lkIEJhc2VDaGVja2FibGVJbnB1dFR5cGU6OnNldFZh
bHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRGaWVsZEV2ZW50QmVo
YXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1l
bnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9u
KHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9CYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VD
aGVja2FibGVJbnB1dFR5cGUuaAppbmRleCBiNDlhNzdhNDE1OTI1MWIxODUwMTQ5ZTEwMDdjZGY0
MDA2YzA5YTI0Li42YmY1ZDUxZmFiMmE2ZGI5ODMwYzIzZTZmYjFiMjhlZGEwNTdjZTk4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaGVja2FibGVJbnB1dFR5cGUuaApAQCAtNTAsNyAr
NTAsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNl
RXZlbnRzKSBvdmVycmlkZTsKICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IG92ZXJy
aWRlOwogICAgIGJvb2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikg
b3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAKaW5kZXggY2Y3Y2MzMWYzNDJm
N2I1YTc0NzQ3NWU0Y2NhMTg5YmQxM2E3NDEzZS4uMzc1NTI4MWQxODJlM2FhYmUxOGM3OWQ5ZDM1
MTM2OWFjNzM1NGU4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFu
ZFRpbWVJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRU
aW1lSW5wdXRUeXBlLmNwcApAQCAtMjc3LDkgKzI3Nyw5IEBAIGJvb2wgQmFzZURhdGVBbmRUaW1l
SW5wdXRUeXBlOjpzaG91bGRIYXZlTWlsbGlzZWNvbmRGaWVsZChjb25zdCBEYXRlQ29tcG9uZW50
cyYKICAgICAgICAgfHwgIXN0ZXBSYW5nZS5zdGVwKCkucmVtYWluZGVyKG1zZWNQZXJTZWNvbmQp
LmlzWmVybygpOwogfQogCi12b2lkIEJhc2VEYXRlQW5kVGltZUlucHV0VHlwZTo6c2V0VmFsdWUo
Y29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVo
YXZpb3IgZXZlbnRCZWhhdmlvcikKK3ZvaWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpzZXRW
YWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZl
bnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNl
bGVjdGlvbikKIHsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQs
IGV2ZW50QmVoYXZpb3IpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUodmFsdWUsIHZhbHVlQ2hh
bmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKICAgICBpZiAodmFsdWVDaGFuZ2VkKQog
ICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1ZSgpOwogfQpAQCAtNDcwLDcgKzQ3MCw3IEBAIHZv
aWQgQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlOjpkaWRCbHVyRnJvbUNvbnRyb2woKQogdm9pZCBC
YXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGU6OmRpZENoYW5nZVZhbHVlRnJvbUNvbnRyb2woKQogewog
ICAgIFN0cmluZyB2YWx1ZSA9IHNhbml0aXplVmFsdWUobV9kYXRlVGltZUVkaXRFbGVtZW50LT52
YWx1ZSgpKTsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2YWx1ZSAhPSBlbGVtZW50
KCktPnZhbHVlKCksIERpc3BhdGNoSW5wdXRBbmRDaGFuZ2VFdmVudCk7CisgICAgSW5wdXRUeXBl
OjpzZXRWYWx1ZSh2YWx1ZSwgdmFsdWUgIT0gZWxlbWVudCgpLT52YWx1ZSgpLCBEaXNwYXRjaElu
cHV0QW5kQ2hhbmdlRXZlbnQsIERvTm90U2V0KTsKIAogICAgIERhdGVUaW1lQ2hvb3NlclBhcmFt
ZXRlcnMgcGFyYW1ldGVyczsKICAgICBpZiAoIXNldHVwRGF0ZVRpbWVDaG9vc2VyUGFyYW1ldGVy
cyhwYXJhbWV0ZXJzKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVB
bmRUaW1lSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VEYXRlQW5kVGltZUlu
cHV0VHlwZS5oCmluZGV4IGI2ODVmOGUxOWZmYjQ4ODU1ZjRlMmZlODJlM2IxMjFiZTQ5M2E3M2Qu
LjZiZjZkNmI5MDNiNGFkNzY1OTZiYmFjY2U1NGQxN2QzN2EzMWU4Y2YgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9CYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuaApAQCAtMTAxLDcgKzEwMSw3
IEBAIHByaXZhdGU6CiAgICAgLy8gSW5wdXRUeXBlIGZ1bmN0aW9uczoKICAgICBTdHJpbmcgdmlz
aWJsZVZhbHVlKCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5nIHNhbml0aXplVmFsdWUoY29uc3Qg
U3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcm
LCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAg
dm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxk
RXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAg
V2FsbFRpbWUgdmFsdWVBc0RhdGUoKSBjb25zdCBvdmVycmlkZTsKICAgICBFeGNlcHRpb25Pcjx2
b2lkPiBzZXRWYWx1ZUFzRGF0ZShXYWxsVGltZSkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91Ymxl
IHZhbHVlQXNEb3VibGUoKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0
VHlwZS5jcHAKaW5kZXggZjExOWU4MmIzNzdkZGI0MWZjZDllOGI5M2FhN2ZjZWZhMGY1ZGMwZC4u
MTcwZmJjNTE0MDE2YTQ0MTQ4ODQwOTYwNWM5OGQ3MjRlNWI1NmZmZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9Db2xvcklucHV0VHlwZS5jcHAKQEAgLTE1Myw5ICsxNTMsOSBAQCB2b2lkIENvbG9ySW5w
dXRUeXBlOjpjcmVhdGVTaGFkb3dTdWJ0cmVlKCkKICAgICB1cGRhdGVDb2xvclN3YXRjaCgpOwog
fQogCi12b2lkIENvbG9ySW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBi
b29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yKQor
dm9pZCBDb2xvcklucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCB2
YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENv
bnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7Ci0gICAgSW5wdXRUeXBlOjpzZXRW
YWx1ZSh2YWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAgICBJbnB1dFR5cGU6
OnNldFZhbHVlKHZhbHVlLCB2YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7
CiAKICAgICBpZiAoIXZhbHVlQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9Db2xvcklucHV0VHlwZS5oCmluZGV4IDExNmRhYjExN2I5NzU5YjIzNjE3MzcwZWQ0ODM3OWE4
Yzc3YTMzNzkuLmM4ZmVhNmEzMjYyMDY0YTgyZDQ1ZjNkZTFlMDBiYjM1Y2MyNWI0ZDQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBlLmgKQEAgLTYzLDcgKzYzLDcgQEAgcHJpdmF0ZToK
ICAgICBTdHJpbmcgZmFsbGJhY2tWYWx1ZSgpIGNvbnN0IGZpbmFsOwogICAgIFN0cmluZyBzYW5p
dGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgY3JlYXRlU2hh
ZG93U3VidHJlZSgpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9v
bCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZpbmFsOworICAgIHZvaWQg
c2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZpbmFsOwogICAgIHZvaWQg
YXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWROYW1lJikgZmluYWw7CiAgICAgdm9pZCBo
YW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50JikgZmluYWw7CiAgICAgdm9pZCBkZXRhY2goKSBm
aW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGVhN2RmYWNmNjJi
NzgyNTU5ZDY1ZTNiZmI2YjNkMGNjZGZlMjUyMWMuLmI2NWI4NzBlYTcwNTQ1MGIzYzZlOTNkNmMz
MmJiZmJmOWU3MGM0NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0
VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApAQCAt
MjUzLDcgKzI1Myw3IEBAIGJvb2wgRmlsZUlucHV0VHlwZTo6Z2V0VHlwZVNwZWNpZmljVmFsdWUo
U3RyaW5nJiB2YWx1ZSkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBGaWxlSW5wdXRUeXBl
OjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQor
dm9pZCBGaWxlSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0Rmll
bGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKQogewogICAgIC8v
IEZJWE1FOiBTaG91bGQgd2UgY2xlYXIgdGhlIGZpbGUgbGlzdCwgb3IgcmVwbGFjZSBpdCB3aXRo
IGEgbmV3IGVtcHR5IG9uZSBoZXJlPyBUaGlzIGlzIG9ic2VydmFibGUgZnJvbSBKYXZhU2NyaXB0
IHRocm91Z2ggY3VzdG9tIHByb3BlcnRpZXMuCiAgICAgbV9maWxlTGlzdC0+Y2xlYXIoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5oIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKaW5kZXggOTE1N2IxNzkwMjkyMDBmM2M0MzA4OGNi
NmE0YzZiZTU1ZTAwMDIzYS4uZWUxMDg0OTc4M2ZhZmVkMmFhOWM3OGI2MDA2YmJkZWRlZTY1NDQx
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmgKQEAgLTY5LDcgKzY5LDcgQEAgcHJp
dmF0ZToKICAgICBTdHJpbmcgZGlzcGxheVN0cmluZygpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wg
Y2FuU2V0VmFsdWUoY29uc3QgU3RyaW5nJikgZmluYWw7CiAgICAgYm9vbCBnZXRUeXBlU3BlY2lm
aWNWYWx1ZShTdHJpbmcmKSBmaW5hbDsgLy8gQ2hlY2tlZCBmaXJzdCwgYmVmb3JlIGludGVybmFs
IHN0b3JhZ2Ugb3IgdGhlIHZhbHVlIGF0dHJpYnV0ZS4KLSAgICB2b2lkIHNldFZhbHVlKGNvbnN0
IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKSBmaW5h
bDsKKyAgICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgdmFsdWVDaGFuZ2VkLCBU
ZXh0RmllbGRFdmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBmaW5h
bDsKIAogI2lmIEVOQUJMRShEUkFHX1NVUFBPUlQpCiAgICAgYm9vbCByZWNlaXZlRHJvcHBlZEZp
bGVzV2l0aEltYWdlVHJhbnNjb2RpbmcoY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhdGhzKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IGJjZDZjOGEwZWI3MDk5
MjI2OTU0YWJkN2Q5ZTBkNTRiZWI1N2RlZWEuLjIyZTZkZjYzZjNkYThkMDgyOTExYWZkMWUxNTdm
MzI0YmNhNzBmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApA
QCAtMTA2NCw3ICsxMDY0LDcgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZUZvclVz
ZXIoY29uc3QgU3RyaW5nJiB2YWx1ZSkKICAgICBzZXRWYWx1ZSh2YWx1ZSwgRGlzcGF0Y2hDaGFu
Z2VFdmVudCk7CiB9CiAKLUV4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZh
bHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhh
dmlvcikKK0V4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKGNvbnN0
IFN0cmluZyYgdmFsdWUsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4
dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rpb24pCiB7CiAgICAgaWYgKGlzRmlsZVVw
bG9hZCgpICYmICF2YWx1ZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJ
bnZhbGlkU3RhdGVFcnJvciB9OwpAQCAtMTA3OSw3ICsxMDc5LDcgQEAgRXhjZXB0aW9uT3I8dm9p
ZD4gSFRNTElucHV0RWxlbWVudDo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZp
ZWxkRXZlbnQKIAogICAgIHNldExhc3RDaGFuZ2VXYXNOb3RVc2VyRWRpdCgpOwogICAgIHNldEZv
cm1Db250cm9sVmFsdWVNYXRjaGVzUmVuZGVyZXIoZmFsc2UpOwotICAgIG1faW5wdXRUeXBlLT5z
ZXRWYWx1ZShzYW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yKTsKKyAg
ICBtX2lucHV0VHlwZS0+c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hhbmdlZCwgZXZl
bnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAogICAgIGJvb2wgd2FzTW9kaWZpZWRQcm9ncmFtbWF0
aWNhbGx5ID0gZXZlbnRCZWhhdmlvciA9PSBEaXNwYXRjaE5vRXZlbnQ7CiAgICAgaWYgKHdhc01v
ZGlmaWVkUHJvZ3JhbW1hdGljYWxseSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTElucHV0RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50
LmgKaW5kZXggY2M1MGZlZTMzYzk4ZDFmODkyYTQ3ZTRjMDUxNDEyOTNmZjEzMWFhMC4uODUwNGZi
NjI2OTZjN2YwMWUxODliMmQ3MzE5Zjc4MDBjNTljODU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MSW5wdXRFbGVtZW50LmgKQEAgLTE3MSw3ICsxNzEsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCBzZXRUeXBlKGNvbnN0IEF0b21TdHJpbmcmKTsKIAogICAgIFdFQkNPUkVf
RVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIEV4
Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVo
YXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQpOworICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9y
PHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IgPSBE
aXNwYXRjaE5vRXZlbnQsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gPSBUZXh0Q29udHJv
bFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgZmluYWw7CiAgICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCBzZXRWYWx1ZUZvclVzZXIoY29uc3QgU3RyaW5nJik7CiAgICAgLy8gQ2hl
Y2tzIGlmIHRoZSBzcGVjaWZpZWQgc3RyaW5nIHdvdWxkIGJlIGEgdmFsaWQgdmFsdWUuCiAgICAg
Ly8gV2Ugc2hvdWxkIG5vdCBjYWxsIHRoaXMgZm9yIHR5cGVzIHdpdGggbm8gc3RyaW5nIHZhbHVl
IHN1Y2ggYXMgQ0hFQ0tCT1ggYW5kIFJBRElPLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRl
eHRBcmVhRWxlbWVudC5jcHAKaW5kZXggYWE1MmYwMGRiNWRjMDZkZDMwNDgxNmUxMzMxNTVhNzM5
YTRhMTIzYi4uMmYxMGNlZDg0MTMxZWQ3ZTlkZDE4N2EzNDAxY2ZkY2RlYzRiYTQzZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwCkBAIC0xMzYsNyArMTM2
LDcgQEAgdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoY29uc3QgQ2hp
bGRDaGFuZ2UmIGNoYW5nZSkKICAgICBpZiAobV9pc0RpcnR5KQogICAgICAgICBzZXRJbm5lclRl
eHRWYWx1ZSh2YWx1ZSgpKTsKICAgICBlbHNlCi0gICAgICAgIHNldE5vbkRpcnR5VmFsdWUoZGVm
YXVsdFZhbHVlKCkpOworICAgICAgICBzZXROb25EaXJ0eVZhbHVlKGRlZmF1bHRWYWx1ZSgpLCAg
VGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6RG9Ob3RTZXQpOwogfQogCiBib29sIEhUTUxU
ZXh0QXJlYUVsZW1lbnQ6Omhhc1ByZXNlbnRhdGlvbmFsSGludHNGb3JBdHRyaWJ1dGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYgbmFtZSkgY29uc3QKQEAgLTI0MSw3ICsyNDEsNyBAQCBib29sIEhUTUxU
ZXh0QXJlYUVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRhKERPTUZvcm1EYXRhJiBmb3JtRGF0YSkKIAog
dm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpyZXNldCgpCiB7Ci0gICAgc2V0Tm9uRGlydHlWYWx1
ZShkZWZhdWx0VmFsdWUoKSk7CisgICAgc2V0Tm9uRGlydHlWYWx1ZShkZWZhdWx0VmFsdWUoKSwg
VGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6U2V0U2VsZWN0aW9uVG9FbmQpOwogfQogCiBi
b29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6Omhhc0N1c3RvbUZvY3VzTG9naWMoKSBjb25zdApAQCAt
Mzc0LDIxICszNzQsMjIgQEAgU3RyaW5nIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OnZhbHVlKCkgY29u
c3QKICAgICByZXR1cm4gbV92YWx1ZTsKIH0KIAotdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50Ojpz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQorRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFRleHRB
cmVhRWxlbWVudDo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgVGV4dEZpZWxkRXZlbnRC
ZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uIHNlbGVj
dGlvbikKIHsKLSAgICBzZXRWYWx1ZUNvbW1vbih2YWx1ZSk7CisgICAgc2V0VmFsdWVDb21tb24o
dmFsdWUsIGV2ZW50QmVoYXZpb3IsIHNlbGVjdGlvbik7CiAgICAgbV9pc0RpcnR5ID0gdHJ1ZTsK
ICAgICB1cGRhdGVWYWxpZGl0eSgpOworICAgIHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRNTFRl
eHRBcmVhRWxlbWVudDo6c2V0Tm9uRGlydHlWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlKQordm9p
ZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXROb25EaXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYgdmFs
dWUsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24gc2VsZWN0aW9uKQogewotICAgIHNldFZh
bHVlQ29tbW9uKHZhbHVlKTsKKyAgICBzZXRWYWx1ZUNvbW1vbih2YWx1ZSwgVGV4dEZpZWxkRXZl
bnRCZWhhdmlvcjo6RGlzcGF0Y2hOb0V2ZW50LCBzZWxlY3Rpb24pOwogICAgIG1faXNEaXJ0eSA9
IGZhbHNlOwogICAgIHVwZGF0ZVZhbGlkaXR5KCk7CiB9CiAKLXZvaWQgSFRNTFRleHRBcmVhRWxl
bWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKK3ZvaWQgSFRNTFRl
eHRBcmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSwgVGV4
dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiBzZWxlY3Rp
b24pCiB7CiAgICAgbV93YXNNb2RpZmllZEJ5VXNlciA9IGZhbHNlOwogICAgIC8vIENvZGUgZWxz
ZXdoZXJlIG5vcm1hbGl6ZXMgbGluZSBlbmRpbmdzIGFkZGVkIGJ5IHRoZSB1c2VyIHZpYSB0aGUg
a2V5Ym9hcmQgb3IgcGFzdGluZy4KQEAgLTQwOSwxMCArNDEwLDE0IEBAIHZvaWQgSFRNTFRleHRB
cmVhRWxlbWVudDo6c2V0VmFsdWVDb21tb24oY29uc3QgU3RyaW5nJiBuZXdWYWx1ZSkKICAgICBp
bnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlKCk7CiAgICAgc2V0Rm9ybUNvbnRyb2xWYWx1ZU1hdGNo
ZXNSZW5kZXJlcih0cnVlKTsKIAotICAgIC8vIFNldCB0aGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0
aGUgdGV4dCB2YWx1ZS4KICAgICBpZiAoZG9jdW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09IHRo
aXMpIHsKICAgICAgICAgdW5zaWduZWQgZW5kT2ZTdHJpbmcgPSBtX3ZhbHVlLmxlbmd0aCgpOwog
ICAgICAgICBzZXRTZWxlY3Rpb25SYW5nZShlbmRPZlN0cmluZywgZW5kT2ZTdHJpbmcpOworICAg
IH0gIGVsc2UgaWYgKHNlbGVjdGlvbiA9PSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpT
ZXRTZWxlY3Rpb25Ub0VuZCkgeworICAgICAgICAvLyBXZSBkb24ndCBjaGFuZ2UgdGV4dCBzZWxl
Y3Rpb24gaGVyZSBidXQgbmVlZCB0byB1cGRhdGUgY2FyZXQgdG8KKyAgICAgICAgLy8gdGhlIGVu
ZCBvZiB0aGUgdGV4dCB2YWx1ZSBleGNlcHQgZm9yIGluaXRpYWxpemUuCisgICAgICAgIHVuc2ln
bmVkIGVuZE9mU3RyaW5nID0gbV92YWx1ZS5sZW5ndGgoKTsKKyAgICAgICAgY2FjaGVTZWxlY3Rp
b24oZW5kT2ZTdHJpbmcsIGVuZE9mU3RyaW5nLCBTZWxlY3Rpb25IYXNOb0RpcmVjdGlvbik7CiAg
ICAgfQogCiAgICAgc2V0VGV4dEFzT2ZMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudChub3JtYWxp
emVkVmFsdWUpOwpAQCAtNTc2LDcgKzU4MSw3IEBAIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6
Y29weU5vbkF0dHJpYnV0ZVByb3BlcnRpZXNGcm9tRWxlbWVudChjb25zdCBFbGVtZW50JiBzCiB7
CiAgICAgYXV0byYgc291cmNlRWxlbWVudCA9IGRvd25jYXN0PEhUTUxUZXh0QXJlYUVsZW1lbnQ+
KHNvdXJjZSk7CiAKLSAgICBzZXRWYWx1ZUNvbW1vbihzb3VyY2VFbGVtZW50LnZhbHVlKCkpOwor
ICAgIHNldFZhbHVlQ29tbW9uKHNvdXJjZUVsZW1lbnQudmFsdWUoKSwgRGlzcGF0Y2hOb0V2ZW50
LCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCk7CiAgICAg
bV9pc0RpcnR5ID0gc291cmNlRWxlbWVudC5tX2lzRGlydHk7CiAgICAgSFRNTFRleHRGb3JtQ29u
dHJvbEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQcm9wZXJ0aWVzRnJvbUVsZW1lbnQoc291cmNl
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaAppbmRleCAwMDc3
ZjAyNTMyNmQ3OGYwMjFkYWMwY2IyNzFkOWM5NjhmY2NiYWRlLi5mMWZjYTc4OWM2NzJiZDc3Mjkz
MmJhYjQ1NmQzMDNmZDgzYWZiZTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxUZXh0QXJlYUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJl
YUVsZW1lbnQuaApAQCAtNDQsNyArNDQsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzaG91bGRXcmFw
VGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fd3JhcCAhPSBOb1dyYXA7IH0KIAogICAgIFdFQkNPUkVf
RVhQT1JUIFN0cmluZyB2YWx1ZSgpIGNvbnN0IGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJik7CisgICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9u
T3I8dm9pZD4gc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciA9
IERpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiA9IFRleHRDb250
cm9sU2V0VmFsdWVTZWxlY3Rpb246OlNldFNlbGVjdGlvblRvRW5kKSBmaW5hbDsKICAgICBXRUJD
T1JFX0VYUE9SVCBTdHJpbmcgZGVmYXVsdFZhbHVlKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBzZXREZWZhdWx0VmFsdWUoY29uc3QgU3RyaW5nJik7CiAgICAgaW50IHRleHRMZW5n
dGgoKSBjb25zdCB7IHJldHVybiB2YWx1ZSgpLmxlbmd0aCgpOyB9CkBAIC04Myw4ICs4Myw4IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBoYW5kbGVCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudChCZWZvcmVU
ZXh0SW5zZXJ0ZWRFdmVudCYpIGNvbnN0OwogICAgIHN0YXRpYyBTdHJpbmcgc2FuaXRpemVVc2Vy
SW5wdXRWYWx1ZShjb25zdCBTdHJpbmcmLCB1bnNpZ25lZCBtYXhMZW5ndGgpOwogICAgIHZvaWQg
dXBkYXRlVmFsdWUoKSBjb25zdDsKLSAgICB2b2lkIHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3Ry
aW5nJik7Ci0gICAgdm9pZCBzZXRWYWx1ZUNvbW1vbihjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lk
IHNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5nJiwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVj
dGlvbik7CisgICAgdm9pZCBzZXRWYWx1ZUNvbW1vbihjb25zdCBTdHJpbmcmLCBUZXh0RmllbGRF
dmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKTsKIAogICAgIGJvb2wg
c3VwcG9ydHNQbGFjZWhvbGRlcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICBI
VE1MRWxlbWVudCogcGxhY2Vob2xkZXJFbGVtZW50KCkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDli
ZDVlZGI0MzQxZDA5NzQ4YjU2YWNiYWM5MDljNGQwYTUyYmQ1NzYuLjNkYzk4ZDYwMzA4MGQ4YTRm
YzM2MGYyNTg0YzAyYzc2MzJkZDIwYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwCkBAIC0yNTQsOCArMjU0LDYgQEAgRXhjZXB0
aW9uT3I8dm9pZD4gSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OnNldFJhbmdlVGV4dChjb25z
dCBTdHJpbmcmIHJlcGxhY2UKICAgICBlbHNlCiAgICAgICAgIHRleHQuaW5zZXJ0KHJlcGxhY2Vt
ZW50LCBzdGFydCk7CiAKLSAgICBzZXRJbm5lclRleHRWYWx1ZSh0ZXh0KTsKLQogICAgIC8vIEZJ
WE1FOiBUaGlzIHNob3VsZG4ndCBuZWVkIHN5bmNocm9ub3VzIHN0eWxlIHVwZGF0ZSwgb3IgcmVu
ZGVyZXIgYXQgYWxsLgogICAgIGlmICghcmVuZGVyZXIoKSkKICAgICAgICAgZG9jdW1lbnQoKS51
cGRhdGVTdHlsZUlmTmVlZGVkKCk7CkBAIC0yNjMsNyArMjYxLDcgQEAgRXhjZXB0aW9uT3I8dm9p
ZD4gSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OnNldFJhbmdlVGV4dChjb25zdCBTdHJpbmcm
IHJlcGxhY2UKICAgICBpZiAoIXJlbmRlcmVyKCkpCiAgICAgICAgIHJldHVybiB7IH07CiAKLSAg
ICBzdWJ0cmVlSGFzQ2hhbmdlZCgpOworICAgIHNldFZhbHVlKHRleHQsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3I6OkRpc3BhdGNoTm9FdmVudCwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbjo6
RG9Ob3RTZXQpOwogCiAgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHNlbGVj
dGlvbk1vZGUsICJzZWxlY3QiKSkgewogICAgICAgICBuZXdTZWxlY3Rpb25TdGFydCA9IHN0YXJ0
OwpAQCAtMzE0LDYgKzMxMiwxMCBAQCB2b2lkIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50Ojpz
ZXRTZWxlY3Rpb25SYW5nZShpbnQgc3RhcnQsIGludCBlbmQsIFRleHRGaWVsZAogCiAgICAgYXV0
byBpbm5lclRleHQgPSBpbm5lclRleHRFbGVtZW50Q3JlYXRpbmdTaGFkb3dTdWJ0cmVlSWZOZWVk
ZWQoKTsKICAgICBib29sIGhhc0ZvY3VzID0gZG9jdW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09
IHRoaXM7CisKKyAgICBSZWZQdHIgZnJhbWUgPSBkb2N1bWVudCgpLmZyYW1lKCk7CisgICAgaWYg
KGRpcmVjdGlvbiA9PSBTZWxlY3Rpb25IYXNOb0RpcmVjdGlvbiAmJiBmcmFtZSAmJiBmcmFtZS0+
ZWRpdG9yKCkuYmVoYXZpb3IoKS5zaG91bGRDb25zaWRlclNlbGVjdGlvbkFzRGlyZWN0aW9uYWwo
KSkKKyAgICAgICAgZGlyZWN0aW9uID0gU2VsZWN0aW9uSGFzRm9yd2FyZERpcmVjdGlvbjsKICAg
ICBpZiAoIWhhc0ZvY3VzICYmIGlubmVyVGV4dCkgewogICAgICAgICBpZiAoIWlzQ29ubmVjdGVk
KCkpIHsKICAgICAgICAgICAgIGNhY2hlU2VsZWN0aW9uKHN0YXJ0LCBlbmQsIGRpcmVjdGlvbik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmgK
aW5kZXggYWIzYWI2YWJiZWFlMDM4MzQ0NmI5Mjc4MzU5OWZiZGNmZTJjMzQyNS4uNTNiZmQ3Mzlh
OGY0NmM0NWRlN2ZjODdhNzNiMTY0NTFkOWNmMjk4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaApAQCAtMzksNiArMzksNyBAQCBzdHJ1
Y3QgU2ltcGxlUmFuZ2U7CiBlbnVtIGNsYXNzIEF1dG9GaWxsQnV0dG9uVHlwZSA6IHVpbnQ4X3Qg
eyBOb25lLCBDcmVkZW50aWFscywgQ29udGFjdHMsIFN0cm9uZ1Bhc3N3b3JkLCBDcmVkaXRDYXJk
IH07CiBlbnVtIFRleHRGaWVsZFNlbGVjdGlvbkRpcmVjdGlvbiB7IFNlbGVjdGlvbkhhc05vRGly
ZWN0aW9uLCBTZWxlY3Rpb25IYXNGb3J3YXJkRGlyZWN0aW9uLCBTZWxlY3Rpb25IYXNCYWNrd2Fy
ZERpcmVjdGlvbiB9OwogZW51bSBUZXh0RmllbGRFdmVudEJlaGF2aW9yIHsgRGlzcGF0Y2hOb0V2
ZW50LCBEaXNwYXRjaENoYW5nZUV2ZW50LCBEaXNwYXRjaElucHV0QW5kQ2hhbmdlRXZlbnQgfTsK
K2VudW0gVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbiB7IFNldFNlbGVjdGlvblRvRW5kLCBE
b05vdFNldCB9OwogCiBjbGFzcyBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudCA6IHB1YmxpYyBI
VE1MRm9ybUNvbnRyb2xFbGVtZW50V2l0aFN0YXRlIHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEKEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50KTsKQEAgLTg4LDYgKzg5LDcgQEAgcHVibGlj
OgogCiAgICAgdmlydHVhbCBTdHJpbmcgdmFsdWUoKSBjb25zdCA9IDA7CiAKKyAgICB2aXJ0dWFs
IEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIFRleHRGaWVsZEV2ZW50
QmVoYXZpb3IgPSBEaXNwYXRjaE5vRXZlbnQsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24g
PSBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uOjpTZXRTZWxlY3Rpb25Ub0VuZCkgPSAwOwog
ICAgIHZpcnR1YWwgUmVmUHRyPFRleHRDb250cm9sSW5uZXJUZXh0RWxlbWVudD4gaW5uZXJUZXh0
RWxlbWVudCgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIFJlZlB0cjxUZXh0Q29udHJvbElubmVy
VGV4dEVsZW1lbnQ+IGlubmVyVGV4dEVsZW1lbnRDcmVhdGluZ1NoYWRvd1N1YnRyZWVJZk5lZWRl
ZCgpID0gMDsKICAgICB2aXJ0dWFsIFJlbmRlclN0eWxlIGNyZWF0ZUlubmVyVGV4dFN0eWxlKGNv
bnN0IFJlbmRlclN0eWxlJikgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
aWRkZW5JbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUu
Y3BwCmluZGV4IDA5Nzg3YTdjNTI4MWY2YzRiMzk2YWY4MWEzOGYwYjU2MzZmYmUzMzEuLmFmNTNk
YThlMjVhNGQ2OTgzYzYyYjZhNTFiN2ExYmU4Y2ZmYWRlY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hpZGRlbklucHV0VHlwZS5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgYm9vbCBIaWRkZW5JbnB1dFR5
cGU6OnN0b3Jlc1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKCkKICAgICByZXR1cm4gZmFsc2U7
CiB9CiAKLXZvaWQgSGlkZGVuSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0
aXplZFZhbHVlLCBib29sLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yKQordm9pZCBIaWRkZW5JbnB1
dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wsIFRleHRG
aWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAg
QVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3lu
Y2hyb25pemF0aW9uKHZhbHVlQXR0ciwgc2FuaXRpemVkVmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SGlkZGVuSW5wdXRUeXBlLmgKaW5kZXggOTVlZDBjMWQ3YzAwNDI5ZjVhMWMxZGNkZTY1NzgxZjJk
MzUxNzQwMy4uMzQwN2RiYzRiNThmY2NlNWE1MDc5YmE2YTJjZTNjOWRhNWNkYzRjMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5oCkBAIC00OCw3ICs0OCw3IEBAIHByaXZhdGU6
CiAgICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzdG9yZXNW
YWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpIG92ZXJyaWRlOwogICAgIGJvb2wgc2hvdWxkUmVz
cGVjdEhlaWdodEFuZFdpZHRoQXR0cmlidXRlcygpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0VmFs
dWUoY29uc3QgU3RyaW5nJiwgYm9vbCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgb3ZlcnJpZGU7
CisgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sLCBUZXh0RmllbGRFdmVudEJl
aGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVlU2VsZWN0aW9uKSBvdmVycmlkZTsKICAgICBib29s
IGFwcGVuZEZvcm1EYXRhKERPTUZvcm1EYXRhJikgY29uc3Qgb3ZlcnJpZGU7CiB9OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0lucHV0VHlwZS5jcHAKaW5kZXggNzRlMGRkZWIxOGMwYjYwMjBlODVjOTE0MjFhMTRi
NjJmYjdkZDllYy4uYzMwZDFkZTA3M2JkYjU5MzNiOGMzOTIzYTY4ZTNjMjZlYWRhY2E4ZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcApAQCAtNzIxLDcgKzcyMSw3IEBAIGJvb2wgSW5wdXRU
eXBlOjpzdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpCiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKLXZvaWQgSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHNhbml0aXplZFZh
bHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2
aW9yKQordm9pZCBJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgc2FuaXRpemVkVmFs
dWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2ZW50QmVoYXZp
b3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQo
KSk7CiAgICAgZWxlbWVudCgpLT5zZXRWYWx1ZUludGVybmFsKHNhbml0aXplZFZhbHVlLCBldmVu
dEJlaGF2aW9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5oCmluZGV4IDgxMmQ1ODhiNmVkOGQwMzg5
MmM0YmIzZDNkY2YwZWYxMGY2ZTY4ZGMuLjE5MjRiMzcxNmI0YjMxYWM0M2ViZTFiOTk5MTU2OGM4
YTMzOGIzODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuaApAQCAtMzQxLDcgKzM0MSw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkU2VuZENoYW5nZUV2ZW50QWZ0ZXJDaGVja2Vk
Q2hhbmdlZCgpOwogICAgIHZpcnR1YWwgYm9vbCBjYW5TZXRWYWx1ZShjb25zdCBTdHJpbmcmKTsK
ICAgICB2aXJ0dWFsIGJvb2wgc3RvcmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKTsKLSAg
ICB2aXJ0dWFsIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQs
IFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpOworICAgIHZpcnR1YWwgdm9pZCBzZXRWYWx1ZShjb25z
dCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4
dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbik7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFJlc2V0
T25Eb2N1bWVudEFjdGl2YXRpb24oKTsKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUmVzcGVjdExp
c3RBdHRyaWJ1dGUoKTsKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUmVzcGVjdEhlaWdodEFuZFdp
ZHRoQXR0cmlidXRlcygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJ
bnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuY3BwCmlu
ZGV4IDMwZmJhODk0YTlmYjFiNDI1Yjg5YWM0ZjEzOWE2NGZjNWQ2MDExMDMuLjU3NDNkNDYzNzBm
YzgxZjVlNDdhOTIzZWY3MjQ1YjZmYjE2ZjZjNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvTnVtYmVySW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJl
cklucHV0VHlwZS5jcHAKQEAgLTk0LDEyICs5NCwxMiBAQCBjb25zdCBBdG9tU3RyaW5nJiBOdW1i
ZXJJbnB1dFR5cGU6OmZvcm1Db250cm9sVHlwZSgpIGNvbnN0CiAgICAgcmV0dXJuIElucHV0VHlw
ZU5hbWVzOjpudW1iZXIoKTsKIH0KIAotdm9pZCBOdW1iZXJJbnB1dFR5cGU6OnNldFZhbHVlKGNv
bnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRF
dmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IpCit2b2lkIE51bWJlcklucHV0VHlwZTo6c2V0VmFs
dWUoY29uc3QgU3RyaW5nJiBzYW5pdGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRG
aWVsZEV2ZW50QmVoYXZpb3IgZXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVj
dGlvbiBzZWxlY3Rpb24pCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7CiAgICAgaWYgKCF2YWx1
ZUNoYW5nZWQgJiYgc2FuaXRpemVkVmFsdWUuaXNFbXB0eSgpICYmICFlbGVtZW50KCktPmlubmVy
VGV4dFZhbHVlKCkuaXNFbXB0eSgpKQogICAgICAgICB1cGRhdGVJbm5lclRleHRWYWx1ZSgpOwot
ICAgIFRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUoc2FuaXRpemVkVmFsdWUsIHZhbHVlQ2hh
bmdlZCwgZXZlbnRCZWhhdmlvcik7CisgICAgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShz
YW5pdGl6ZWRWYWx1ZSwgdmFsdWVDaGFuZ2VkLCBldmVudEJlaGF2aW9yLCBzZWxlY3Rpb24pOwog
fQogCiBkb3VibGUgTnVtYmVySW5wdXRUeXBlOjp2YWx1ZUFzRG91YmxlKCkgY29uc3QKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL051bWJlcklucHV0VHlwZS5oCmluZGV4IDJmYzBlZDY5ZjQzYzY2N2Y4YzY0ZDU4
YjZlNTk5Yjg4ZWU3NmRkZWQuLjg1M2U0ZDU4ZWRhNmM5Mjg3NGNhMWQwNGY0MjViNTU1ZmI3Yzgw
YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuaApAQCAtNDIsNyArNDIsNyBA
QCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgY29uc3QgQXRvbVN0cmluZyYgZm9ybUNvbnRyb2xU
eXBlKCkgY29uc3QgZmluYWw7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29s
IHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgZmluYWw7CisgICAgdm9pZCBz
ZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRC
ZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgZmluYWw7CiAgICAgZG91Ymxl
IHZhbHVlQXNEb3VibGUoKSBjb25zdCBmaW5hbDsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRW
YWx1ZUFzRG91YmxlKGRvdWJsZSwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgY29uc3QgZmluYWw7
CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0VmFsdWVBc0RlY2ltYWwoY29uc3QgRGVjaW1hbCYs
IFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGNvbnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1Jh
bmdlSW5wdXRUeXBlLmNwcAppbmRleCBmMDZiZDU1OWIwMjc0YjA2NzVlYTRhZjc3NjdmODI1NWQ3
NmJiMTQ2Li45YjVlMTBjOWYxNjVjMDNiMWM5NmZlZjk1N2Y1NGZiM2JiNzZmMDRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcApAQCAtMzQ1LDkgKzM0NSw5IEBAIHZvaWQg
UmFuZ2VJbnB1dFR5cGU6OmF0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFt
ZSkKICAgICBJbnB1dFR5cGU6OmF0dHJpYnV0ZUNoYW5nZWQobmFtZSk7CiB9CiAKLXZvaWQgUmFu
Z2VJbnB1dFR5cGU6OnNldFZhbHVlKGNvbnN0IFN0cmluZyYgdmFsdWUsIGJvb2wgdmFsdWVDaGFu
Z2VkLCBUZXh0RmllbGRFdmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IpCit2b2lkIFJhbmdlSW5w
dXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvciBldmVudEJlaGF2aW9yLCBUZXh0Q29udHJvbFNldFZhbHVl
U2VsZWN0aW9uIHNlbGVjdGlvbikKIHsKLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHZhbHVlLCB2
YWx1ZUNoYW5nZWQsIGV2ZW50QmVoYXZpb3IpOworICAgIElucHV0VHlwZTo6c2V0VmFsdWUodmFs
dWUsIHZhbHVlQ2hhbmdlZCwgZXZlbnRCZWhhdmlvciwgc2VsZWN0aW9uKTsKIAogICAgIGlmICgh
dmFsdWVDaGFuZ2VkKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL1JhbmdlSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRU
eXBlLmgKaW5kZXggMTBmZDNhNzJlN2Q2ZDBiMDE3ZWY2YmIyYjRiOTU1MDQ4YzAxNTlhMy4uODRj
N2IzZWQ2MjMwMGQ0MWViNDJlNGMzNTdiYmM3NGVhOWM1M2I4ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
UmFuZ2VJbnB1dFR5cGUuaApAQCAtNTcsNyArNTcsNyBAQCBwcml2YXRlOgogICAgIFN0cmluZyBz
ZXJpYWxpemUoY29uc3QgRGVjaW1hbCYpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgYWNjZXNzS2V5
QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBmaW5hbDsKICAgICB2b2lkIGF0dHJpYnV0ZUNo
YW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYpIGZpbmFsOwotICAgIHZvaWQgc2V0VmFsdWUoY29u
c3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQsIFRleHRGaWVsZEV2ZW50QmVoYXZpb3IpIGZp
bmFsOworICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCB2YWx1ZUNoYW5nZWQs
IFRleHRGaWVsZEV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24pIGZp
bmFsOwogICAgIFN0cmluZyBmYWxsYmFja1ZhbHVlKCkgY29uc3QgZmluYWw7CiAgICAgU3RyaW5n
IHNhbml0aXplVmFsdWUoY29uc3QgU3RyaW5nJiBwcm9wb3NlZFZhbHVlKSBjb25zdCBmaW5hbDsK
ICAgICBib29sIHNob3VsZFJlc3BlY3RMaXN0QXR0cmlidXRlKCkgZmluYWw7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAKaW5kZXggMzcwNTZlNDVlYjFhNzVjMTRm
ZDQzZTY1NmYxMzE0OWZhNTFmMDMwNC4uZTgwODZhNzI2NGEwMDRmMDQxNjgwNGI0MzYyN2Y3ZGI5
MTA5MGU3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5
cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcApA
QCAtMTI3LDcgKzEyNyw3IEBAIGJvb2wgVGV4dEZpZWxkSW5wdXRUeXBlOjp2YWx1ZU1pc3Npbmco
Y29uc3QgU3RyaW5nJiB2YWx1ZSkgY29uc3QKICAgICByZXR1cm4gIWVsZW1lbnQoKS0+aXNEaXNh
YmxlZE9yUmVhZE9ubHkoKSAmJiBlbGVtZW50KCktPmlzUmVxdWlyZWQoKSAmJiB2YWx1ZS5pc0Vt
cHR5KCk7CiB9CiAKLXZvaWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpzZXRWYWx1ZShjb25zdCBTdHJp
bmcmIHNhbml0aXplZFZhbHVlLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhh
dmlvciBldmVudEJlaGF2aW9yKQordm9pZCBUZXh0RmllbGRJbnB1dFR5cGU6OnNldFZhbHVlKGNv
bnN0IFN0cmluZyYgc2FuaXRpemVkVmFsdWUsIGJvb2wgdmFsdWVDaGFuZ2VkLCBUZXh0RmllbGRF
dmVudEJlaGF2aW9yIGV2ZW50QmVoYXZpb3IsIFRleHRDb250cm9sU2V0VmFsdWVTZWxlY3Rpb24g
c2VsZWN0aW9uKQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwogCkBAIC0xMzcsMTggKzEzNywy
MCBAQCB2b2lkIFRleHRGaWVsZElucHV0VHlwZTo6c2V0VmFsdWUoY29uc3QgU3RyaW5nJiBzYW5p
dGl6ZWRWYWx1ZSwgYm9vbCB2YWx1ZUNoYW5nZQogCiAgICAgLy8gV2UgZG9uJ3QgYXNrIElucHV0
VHlwZTo6c2V0VmFsdWUgdG8gZGlzcGF0Y2ggZXZlbnRzIGJlY2F1c2UKICAgICAvLyBUZXh0Rmll
bGRJbnB1dFR5cGUgZGlzcGF0Y2hlcyBldmVudHMgZGlmZmVyZW50IHdheSBmcm9tIElucHV0VHlw
ZS4KLSAgICBJbnB1dFR5cGU6OnNldFZhbHVlKHNhbml0aXplZFZhbHVlLCB2YWx1ZUNoYW5nZWQs
IERpc3BhdGNoTm9FdmVudCk7CisgICAgSW5wdXRUeXBlOjpzZXRWYWx1ZShzYW5pdGl6ZWRWYWx1
ZSwgdmFsdWVDaGFuZ2VkLCBEaXNwYXRjaE5vRXZlbnQsIHNlbGVjdGlvbik7CiAKICAgICBpZiAo
IXZhbHVlQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgdXBkYXRlSW5uZXJUZXh0VmFs
dWUoKTsKIAotICAgIHVuc2lnbmVkIG1heCA9IHZpc2libGVWYWx1ZSgpLmxlbmd0aCgpOwotICAg
IGlmIChpbnB1dC0+Zm9jdXNlZCgpKQotICAgICAgICBpbnB1dC0+c2V0U2VsZWN0aW9uUmFuZ2Uo
bWF4LCBtYXgpOwotICAgIGVsc2UKLSAgICAgICAgaW5wdXQtPmNhY2hlU2VsZWN0aW9uSW5SZXNw
b25zZVRvU2V0VmFsdWUobWF4KTsKKyAgICBpZiAoc2VsZWN0aW9uID09IFRleHRDb250cm9sU2V0
VmFsdWVTZWxlY3Rpb246OlNldFNlbGVjdGlvblRvRW5kKSB7CisgICAgICAgIGF1dG8gbWF4ID0g
dmlzaWJsZVZhbHVlKCkubGVuZ3RoKCk7CisgICAgICAgIGlmIChpbnB1dC0+Zm9jdXNlZCgpKQor
ICAgICAgICAgICAgaW5wdXQtPnNldFNlbGVjdGlvblJhbmdlKG1heCwgbWF4KTsKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgaW5wdXQtPmNhY2hlU2VsZWN0aW9uSW5SZXNwb25zZVRvU2V0VmFs
dWUobWF4KTsKKyAgICB9CiAKICAgICBzd2l0Y2ggKGV2ZW50QmVoYXZpb3IpIHsKICAgICBjYXNl
IERpc3BhdGNoQ2hhbmdlRXZlbnQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1Rl
eHRGaWVsZElucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5
cGUuaAppbmRleCA0ZTFiYjE1NGM1YTdiNTYxY2I1NDRmZTJkNmZmYjg3ZjAyYWM5ZTNhLi45NWVi
NDYyNWVmYjk2Y2ZiZGFkNzQ0ZGMyMzRlMDljNzQzYmExYjQ5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKQEAgLTc4LDcgKzc4LDcgQEAgcHJvdGVjdGVkOgogICAg
IGJvb2wgc3VwcG9ydHNSZWFkT25seSgpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgaGFuZGxlRm9j
dXNFdmVudChOb2RlKiBvbGRGb2N1c2VkTm9kZSwgRm9jdXNEaXJlY3Rpb24pIGZpbmFsOwogICAg
IHZvaWQgaGFuZGxlQmx1ckV2ZW50KCkgZmluYWw7Ci0gICAgdm9pZCBzZXRWYWx1ZShjb25zdCBT
dHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwgVGV4dEZpZWxkRXZlbnRCZWhhdmlvcikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcmLCBib29sIHZhbHVlQ2hhbmdlZCwg
VGV4dEZpZWxkRXZlbnRCZWhhdmlvciwgVGV4dENvbnRyb2xTZXRWYWx1ZVNlbGVjdGlvbikgb3Zl
cnJpZGU7CiAgICAgdm9pZCB1cGRhdGVJbm5lclRleHRWYWx1ZSgpIGZpbmFsOwogICAgIFN0cmlu
ZyBzYW5pdGl6ZVZhbHVlKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wg
dmFsdWVNaXNzaW5nKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDMzZjE0MDYy
NDE3MmMyMGUzNDMzYWYwNWFiZmM4ZGRmNGFiZjFkNDQuLjhmNGVhNmY5NDVjMzI5M2QwZDhkZjA4
N2EzYTkxNTEzOGNkOTA2MGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMi0wMy0wOSAgWmly
YW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgorCisgICAgICAgIFtTZWxlY3Rpb25dIEZpeGVzIHNl
bGVjdGlvbiByYW5nZSBzZXR0aW5ncyBmb3IgVEVYVEFSRUEKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzY0MQorCisgICAgICAgIFJldmlld2VkIGJ5
IENocmlzIER1bWV6LgorCisgICAgICAgIFVwZGF0ZWQgdHdvIHRlc3RzIHRoYXQgZXhwZWN0IHJl
c2V0dGluZyB2YWx1ZSBvZiB0ZXh0YXJlYSB0byBjaGFuZ2Ugc2VsZWN0aW9uIHRvIDAuCisgICAg
ICAgIFRoZXNlIGNoYW5nZXMgYXJlIGluIGxpbmUgd2l0aCBjaGFuZ2VzIG1hZGUgaW4gQ2hyb21p
dW0uCisgICAgICAgICogZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWludG8tdGV4dGFyZWEtd2l0
aC1uZXctbGluZS5odG1sOgorICAgICAgICAqIGZhc3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYt
dGV4dGFyZWEuaHRtbDoKKwogMjAyMi0wMy0wMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtEZWJ1Z10gaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy91
cmwvdG9hc2NpaS53aW5kb3cuaHRtbCBpcyBjcmFzaGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKaW5kZXggMzg4M2E5MDZhMDZkMThmNjVkZTg4OTdhNjM3NTYxZThiYTA5MmE0Zi4uNTk5
ZDYzMTE4MDM3MTk3N2Q3YWNkMzIzZDc2YjZmYWJkZTI2YzJhNyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjItMDMtMDkgIFppcmFuIFN1biAgPHpz
dW5AaWdhbGlhLmNvbT4KKworICAgICAgICBbU2VsZWN0aW9uXSBGaXhlcyBzZWxlY3Rpb24gcmFu
Z2Ugc2V0dGluZ3MgZm9yIFRFWFRBUkVBCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzc2NDEKKworICAgICAgICBSZXZpZXdlZCBieSBDaHJpcyBEdW1l
ei4KKworICAgICAgICBVcGRhdGluZyB0ZXN0IGV4cGVjdGF0aW9ucyBhcyBzb21lIHN1Yi10ZXN0
cyBhcmUgbm93IHBhc3NpbmcuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2Vt
YW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMv
dGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFydC1lbmQtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRz
ZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVj
dGlvbi9zZWxlY3Rpb24tdmFsdWUtaW50ZXJhY3Rpb25zLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0
aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGlsZS1wYXJzaW5nLWV4cGVjdGVkLnR4dDoKKwogMjAy
Mi0wMy0wMSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBb
d2ViLWFuaW1hdGlvbnNdIHdlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0YWJsZS9nZXRB
bmltYXRpb25zLWlmcmFtZS5odG1sIGlzIGEgdW5pcXVlIGZhaWx1cmUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1pbnRvLXRleHRhcmVhLXdpdGgtbmV3
LWxpbmUuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1pbnRvLXRl
eHRhcmVhLXdpdGgtbmV3LWxpbmUuaHRtbAppbmRleCA5MzliYjk3NjMxNzAyMWIzZThlZjI1NWQ2
ZmYyYjljNzAyYmI2M2ViLi5lYzRkNTViNDM2YWJhZDUxN2ExZmY0NGRkZTQ3MzAwN2IzYjdjNGE3
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtaW50by10
ZXh0YXJlYS13aXRoLW5ldy1saW5lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0
ZWJvYXJkL3Bhc3RlLWludG8tdGV4dGFyZWEtd2l0aC1uZXctbGluZS5odG1sCkBAIC0xMSw2ICsx
MSw3IEBAIHRleHRhcmVhLnZhbHVlID0gIlxuIjsKIHRleHRhcmVhLnJvd3MgPSAxMDsKIGRvY3Vt
ZW50LmJvZHkuYXBwZW5kQ2hpbGQodGV4dGFyZWEpOwogdGV4dGFyZWEuZm9jdXMoKTsKK3RleHRh
cmVhLnNldFNlbGVjdGlvblJhbmdlKDAsIDApOwogc2hvdWxkQmUoImRvY3VtZW50LmV4ZWNDb21t
YW5kKCdJbnNlcnRIVE1MJywgZmFsc2UsICdmaXJzdDxicj48YnI+dGhpcmQnKTsgdGV4dGFyZWEu
dmFsdWUiLCAiJ2ZpcnN0XFxuXFxudGhpcmRcXG4nIik7CiAKIHZhciBzdWNjZXNzZnVsbHlQYXJz
ZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRp
b24vc25hdi10ZXh0YXJlYS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRp
b24vc25hdi10ZXh0YXJlYS5odG1sCmluZGV4IDMzNjI3NjUwNDY2MjZkZDA3OWZhNzA5MWFhNjBl
MjhlZGQyNmY4YzQuLjE0NTljYzk4MDQ4NTRiODkxN2FlYzY3YWM1MmRkZTU3NDc3YjZlMDQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtdGV4dGFy
ZWEuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LXRl
eHRhcmVhLmh0bWwKQEAgLTY2LDYgKzY2LDkgQEAKIAogICAgICAgLy8gc3RhcnRpbmcgdGhlIHRl
c3QgaXRzZWxmOiBnZXQgdG8gYSBrbm93biBwbGFjZS4KICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJzdGFydCIpLmZvY3VzKCk7CisgICAgICB0ZXh0YXJlYS5mb2N1cygpOworICAgICAg
dGV4dGFyZWEuc2V0U2VsZWN0aW9uUmFuZ2UoMCwgMCk7CisKIAogICAgICAgaW5pdFRlc3QocmVz
dWx0TWFwLCB0ZXN0Q29tcGxldGVkKTsKICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRm
aWVsZHNlbGVjdGlvbi9kZWZhdWx0U2VsZWN0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4
dGZpZWxkc2VsZWN0aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0CmluZGV4IDM2ZjU3
ZGI3NzgxNWVlZTc0NzVlOTcwMmM5OTA1Zjg0ZDZmNGJjYjUuLjRjYTBkM2RkZmFmOTVlZDRmN2Fh
N2ZlNjI4OTczOGYyNjc2NzMxYTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0
aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxk
c2VsZWN0aW9uL2RlZmF1bHRTZWxlY3Rpb24tZXhwZWN0ZWQudHh0CkBAIC0yLDcgKzIsNyBAQAog
CiBQQVNTIERlZmF1bHQgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBmb3IgW29iamVj
dCBIVE1MVGV4dEFyZWFFbGVtZW50XQogUEFTUyBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0aW9u
RW5kIGRvIG5vdCBjaGFuZ2Ugd2hlbiBzYW1lIHZhbHVlIHNldCBhZ2FpbiBmb3IgW29iamVjdCBI
VE1MVGV4dEFyZWFFbGVtZW50XQotRkFJTCBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0aW9uRW5k
IGNoYW5nZSB3aGVuIHZhbHVlIGNoYW5nZWQgdG8gdXBwZXIgY2FzZSBmb3IgW29iamVjdCBIVE1M
VGV4dEFyZWFFbGVtZW50XSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAzIGJ1dCBnb3QgMAorUEFT
UyBzZWxlY3Rpb25TdGFydCBhbmQgc2VsZWN0aW9uRW5kIGNoYW5nZSB3aGVuIHZhbHVlIGNoYW5n
ZWQgdG8gdXBwZXIgY2FzZSBmb3IgW29iamVjdCBIVE1MVGV4dEFyZWFFbGVtZW50XQogUEFTUyBE
ZWZhdWx0IHNlbGVjdGlvblN0YXJ0IGFuZCBzZWxlY3Rpb25FbmQgZm9yIFtvYmplY3QgSFRNTElu
cHV0RWxlbWVudF0KIFBBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBkbyBub3Qg
Y2hhbmdlIHdoZW4gc2FtZSB2YWx1ZSBzZXQgYWdhaW4gZm9yIFtvYmplY3QgSFRNTElucHV0RWxl
bWVudF0KIFBBU1Mgc2VsZWN0aW9uU3RhcnQgYW5kIHNlbGVjdGlvbkVuZCBjaGFuZ2Ugd2hlbiB2
YWx1ZSBjaGFuZ2VkIHRvIHVwcGVyIGNhc2UgZm9yIFtvYmplY3QgSFRNTElucHV0RWxlbWVudF0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFydC1l
bmQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0
YXJ0LWVuZC1leHBlY3RlZC50eHQKaW5kZXggNjhkZmM3NTNiNWIyZTBkOTA2ODkzNjRjZGMzNTFj
MzgxYWYwNWFkYi4uZjFmYjVhMDFiODcxNmE0MDIzNTFiMWU0NGY1MGViMjE5NTNlNWU2OCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXN0
YXJ0LWVuZC1leHBlY3RlZC50eHQKQEAgLTYsMTggKzYsMTggQEAgUEFTUyBJbml0aWFsIC52YWx1
ZSBzZXQgb24gaW5wdXQtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQg
b2YgdmEKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlucHV0LW5vdC1hcHBlbmRlZCBzaG91
bGQgc2V0IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1
ZSBzZXQgb24gaW5wdXQtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0
YXJ0IHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5wdXQtbm90
LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2Yg
dmFsdWUKLUZBSUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkIHNob3Vs
ZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90
LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQg
b24gdGV4dGFyZWEtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0
IHRvIGVuZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZB
SUwgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLW5vdC1hcHBlbmRlZC1wcmVmb2N1c2Vk
IHNob3VsZCBzZXQgc2VsZWN0aW9uU3RhcnQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFy
ZWEtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2YgdmFsdWUKK1BB
U1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLW5vdC1hcHBlbmRlZCBzaG91bGQgc2V0
IHNlbGVjdGlvblN0YXJ0IHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQg
b24gdGV4dGFyZWEtYXBwZW5kZWQtcHJlZm9jdXNlZCBzaG91bGQgc2V0IHNlbGVjdGlvblN0YXJ0
IHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90
LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25TdGFydCB0byBlbmQgb2Yg
dmFsdWUKIFBBU1MgSW5pdGlhbCAudmFsdWUgc2V0IG9uIGlucHV0LWFwcGVuZGVkIHNob3VsZCBz
ZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQg
b24gaW5wdXQtbm90LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVuZCBvZiB2
YWx1ZQogUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gaW5wdXQtYXBwZW5kZWQtcHJlZm9jdXNl
ZCBzaG91bGQgc2V0IHNlbGVjdGlvbkVuZCB0byBlbmQgb2YgdmFsdWUKIFBBU1MgSW5pdGlhbCAu
dmFsdWUgc2V0IG9uIGlucHV0LW5vdC1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2Vs
ZWN0aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4
dGFyZWEtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBz
ZXQgb24gdGV4dGFyZWEtbm90LWFwcGVuZGVkIHNob3VsZCBzZXQgc2VsZWN0aW9uRW5kIHRvIGVu
ZCBvZiB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxMCBidXQgZ290IDAKLUZBSUwgSW5p
dGlhbCAudmFsdWUgc2V0IG9uIHRleHRhcmVhLWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNl
dCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEw
IGJ1dCBnb3QgMAotRkFJTCBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFyZWEtbm90LWFwcGVu
ZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkIDEwIGJ1dCBnb3QgMAorUEFTUyBJbml0aWFsIC52YWx1ZSBz
ZXQgb24gdGV4dGFyZWEtYXBwZW5kZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9m
IHZhbHVlCitQQVNTIEluaXRpYWwgLnZhbHVlIHNldCBvbiB0ZXh0YXJlYS1ub3QtYXBwZW5kZWQg
c2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5kIG9mIHZhbHVlCitQQVNTIEluaXRpYWwgLnZh
bHVlIHNldCBvbiB0ZXh0YXJlYS1hcHBlbmRlZC1wcmVmb2N1c2VkIHNob3VsZCBzZXQgc2VsZWN0
aW9uRW5kIHRvIGVuZCBvZiB2YWx1ZQorUEFTUyBJbml0aWFsIC52YWx1ZSBzZXQgb24gdGV4dGFy
ZWEtbm90LWFwcGVuZGVkLXByZWZvY3VzZWQgc2hvdWxkIHNldCBzZWxlY3Rpb25FbmQgdG8gZW5k
IG9mIHZhbHVlCiBQQVNTIG9uc2VsZWN0IHNob3VsZCBmaXJlIHdoZW4gc2VsZWN0aW9uU3RhcnQg
aXMgY2hhbmdlZAogTk9UUlVOIG9uc2VsZWN0IHNob3VsZCBmaXJlIHdoZW4gc2VsZWN0aW9uU3Rh
cnQgaXMgY2hhbmdlZCBvbiBpbnB1dC1hcHBlbmRlZAogTk9UUlVOIG9uc2VsZWN0IHNob3VsZCBm
aXJlIHdoZW4gc2VsZWN0aW9uU3RhcnQgaXMgY2hhbmdlZCBvbiBpbnB1dC1ub3QtYXBwZW5kZWQK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi1zdGFydC1l
bmQtZXh0cmEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0
aW9uLXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQKaW5kZXggOTQzMzk2MTFkOTVkMjE1ZGMz
OTNiNTQyNGZiOGI3N2I0ZDg3NzJiYS4uODJkNWViMzY1NTYzZmExOWFmNWM2YWM3OTY2YjJlNWEx
MDE1ODkxYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9u
LXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxl
Y3Rpb24vc2VsZWN0aW9uLXN0YXJ0LWVuZC1leHRyYS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEs
MTIgQEAKIAogUEFTUyBTZXR0aW5nIGRlZmF1bHRWYWx1ZSBpbiBhIHRleHRhcmVhIHNob3VsZCBO
T1QgbW92ZSB0aGUgY3Vyc29yIHRvIHRoZSBlbmQKLUZBSUwgU2V0dGluZyBkZWZhdWx0VmFsdWUg
aW4gYSB0ZXh0YXJlYSB3aXRoIGEgdmFsdWUgc2hvdWxkIE5PVCBtYWtlIGFueSBkaWZmZXJlbmNl
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDYgYnV0IGdvdCAwCitQQVNTIFNldHRpbmcgZGVmYXVs
dFZhbHVlIGluIGEgdGV4dGFyZWEgd2l0aCBhIHZhbHVlIHNob3VsZCBOT1QgbWFrZSBhbnkgZGlm
ZmVyZW5jZQogUEFTUyBTZXR0aW5nIHRleHRDb250ZW50IGluIGEgdGV4dGFyZWEgc2hvdWxkIE5P
VCBtb3ZlIHNlbGVjdGlvbntTdGFydCxFbmR9IHRvIHRoZSBlbmQKIFBBU1MgQWRkaW5nIGNoaWxk
cmVuIHRvIGEgdGV4dGFyZWEgc2hvdWxkIE5PVCBtb3ZlIHNlbGVjdGlvbntTdGFydCxFbmR9IHRv
IHRoZSBlbmQKIFBBU1MgUmVtb3ZpbmcgY2hpbGRyZW4gZnJvbSBhIHRleHRhcmVhIHNob3VsZCBO
T1QgdXBkYXRlIHNlbGVjdGlvbntTdGFydCxFbmR9CiBQQVNTIFNldHRpbmcgdGhlIHNhbWUgdmFs
dWUgKHdpdGggZGlmZmVyZW50IG5ld2xpbmVzKSBpbiBhIHRleHRhcmVhIHNob3VsZCBOT1QgdXBk
YXRlIHNlbGVjdGlvbntTdGFydCxFbmR9CiBGQUlMIFJlbW92aW5nIGNoaWxkIG5vZGVzIGluIG5v
bi1kaXJ0eSB0ZXh0YXJlYSBzaG91bGQgbWFrZSBzZWxlY3Rpb257U3RhcnQsRW5kfSAwIGFzc2Vy
dF9lcXVhbHM6IHNlbGVjdGlvblN0YXJ0IGFmdGVyIG5vZGUgcmVtb3ZhbCBleHBlY3RlZCAwIGJ1
dCBnb3QgMwotRkFJTCBTZXR0aW5nIHZhbHVlIHRvIGEgc2hvcnRlciBzdHJpbmcgdGhhbiBkZWZh
dWx0VmFsdWUgc2hvdWxkIGNvcnJlY3QgdGhlIGN1cnNvciBwb3NpdGlvbiBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAyIGJ1dCBnb3QgMworUEFTUyBTZXR0aW5nIHZhbHVlIHRvIGEgc2hvcnRlciBz
dHJpbmcgdGhhbiBkZWZhdWx0VmFsdWUgc2hvdWxkIGNvcnJlY3QgdGhlIGN1cnNvciBwb3NpdGlv
bgogUEFTUyBTaG9ydGVuaW5nIHZhbHVlIGJ5IHR1cm5pbmcgdGhlIGlucHV0IHR5cGUgaW50byAn
dXJsJyBzaG91bGQgY29ycmVjdCBzZWxlY3Rpb257U3RhcnQsRW5kfQogRkFJTCBTaG9ydGVuaW5n
IHZhbHVlIGJ5IHR1cm5pbmcgdGhlIGlucHV0IHR5cGUgaW50byAnY29sb3InIGFuZCBiYWNrIHRv
ICd0ZXh0JyBzaG91bGQgY29ycmVjdCBzZWxlY3Rpb257U3RhcnQsRW5kfSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAwIGJ1dCBnb3QgOQogUEFTUyBSZXNldHRpbmcgYSB2YWx1ZSB0byBhIHNob3J0
ZXIgc3RyaW5nIHRoYW4gZGVmYXVsdFZhbHVlIHNob3VsZCBjb3JyZWN0IHRoZSBjdXJzb3IgcG9z
aXRpb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3NlbGVjdGlvbi12
YWx1ZS1pbnRlcmFjdGlvbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vc2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1leHBlY3RlZC50eHQKaW5kZXggODQxMGE4
MjliYmZhYTg4YzE5Nzk5MzE0MWYwYzIwN2YwNDUwM2NjNC4uYjE5MDc0ZWQ5ODQ4NzUwNmRiODc4
ZjcyYmNlMTQ0NDQ3YjMwNGE3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rp
b24vc2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jt
cy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLXZhbHVlLWludGVyYWN0aW9ucy1leHBlY3Rl
ZC50eHQKQEAgLTExLDYgKzExLDYgQEAgUEFTUyB2YWx1ZSBkaXJ0eSBmbGFnIGJlaGF2aW9yIGFm
dGVyIHNldFJhbmdlVGV4dCBvbiBmb2N1c2VkIHRoZW4gYmx1cnJlZCB0ZXh0YXIKIFBBU1MgdmFs
dWUgZGlydHkgZmxhZyBiZWhhdmlvciBhZnRlciBzZXRSYW5nZVRleHQgb24gZm9jdXNlZCB0aGVu
IGJsdXJyZWQgaW5wdXQKIFBBU1Mgc2VsZWN0aW9uIGlzIGNvbGxhcHNlZCB0byB0aGUgZW5kIGFm
dGVyIGNoYW5naW5nIHZhbHVlcyBvbiBpbnB1dAogUEFTUyBzZWxlY3Rpb24gaXMgbm90IGNvbGxh
cHNlZCB0byB0aGUgZW5kIHdoZW4gdmFsdWUgaXMgc2V0IHRvIGl0cyBleGlzdGluZyB2YWx1ZSBv
biBpbnB1dAotRkFJTCBzZWxlY3Rpb24gaXMgY29sbGFwc2VkIHRvIHRoZSBlbmQgYWZ0ZXIgY2hh
bmdpbmcgdmFsdWVzIG9uIHRleHRhcmVhIGFzc2VydF9lcXVhbHM6IGVsZW1lbnQuc2VsZWN0aW9u
U3RhcnQgc2hvdWxkIGJlIHZhbHVlLmxlbmd0aCBleHBlY3RlZCAzIGJ1dCBnb3QgMAorUEFTUyBz
ZWxlY3Rpb24gaXMgY29sbGFwc2VkIHRvIHRoZSBlbmQgYWZ0ZXIgY2hhbmdpbmcgdmFsdWVzIG9u
IHRleHRhcmVhCiBQQVNTIHNlbGVjdGlvbiBpcyBub3QgY29sbGFwc2VkIHRvIHRoZSBlbmQgd2hl
biB2YWx1ZSBpcyBzZXQgdG8gaXRzIGV4aXN0aW5nIHZhbHVlIG9uIHRleHRhcmVhCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
ZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3RleHRhcmVhLXNlbGVjdGlvbi13aGls
ZS1wYXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZm9ybXMvdGV4dGZpZWxkc2VsZWN0aW9uL3RleHRh
cmVhLXNlbGVjdGlvbi13aGlsZS1wYXJzaW5nLWV4cGVjdGVkLnR4dAppbmRleCBlMDZkMDczMmMz
ZjJlMGIxMDE5YzA3MjMxMTY0YTE5NjVjZDYwNTI3Li40NzYzNTlhODQyMjhjMTVkMmE0Yjg4Mzhm
YzE5NTFjYjUxNzlhNTc0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi90
ZXh0YXJlYS1zZWxlY3Rpb24td2hpbGUtcGFyc2luZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jt
cy90ZXh0ZmllbGRzZWxlY3Rpb24vdGV4dGFyZWEtc2VsZWN0aW9uLXdoaWxlLXBhcnNpbmctZXhw
ZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCiAKLUZBSUwgVmFsdWUgc2V0dGVyIHdoaWxlIHBh
cnNpbmcgdGV4dGFyZWEgY2hpbGRyZW4gc2hvdWxkIG1vdmUgc2VsZWN0aW9ue1N0YXJ0LEVuZH0g
dG8gdGhlIGVuZCBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAzIGJ1dCBnb3QgMAorUEFTUyBWYWx1
ZSBzZXR0ZXIgd2hpbGUgcGFyc2luZyB0ZXh0YXJlYSBjaGlsZHJlbiBzaG91bGQgbW92ZSBzZWxl
Y3Rpb257U3RhcnQsRW5kfSB0byB0aGUgZW5kCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFu
dGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLWFmdGVyLWNvbnRlbnQtY2hh
bmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxl
Y3Rpb24vc2VsZWN0aW9uLWFmdGVyLWNvbnRlbnQtY2hhbmdlLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hNjVlZDY4NjhkMjc0MTQyZWVhYjMzOTExYmFiNmU2ODY5Mzc5MzIxCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxl
Y3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAK
KworCitQQVNTIGlucHV0IG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50
OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQ
QVNTIGlucHV0IG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhlIHZhbHVlIHNh
bml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBt
dXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIGlucHV0IGlu
IGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50
IHZhbHVlCitQQVNTIGlucHV0IGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdl
IHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2FtZSBhZnRlciB0aGUgdmFs
dWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBm
b2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFs
dWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1l
bnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEg
dmFsdWUgdGhhdCBiZWNvbWVzIHRoZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24g
YWxnb3JpdGhtCitQQVNTIHRleHRhcmVhIG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qg
bm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0
IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVy
ZW50IHZhbHVlCitQQVNTIHRleHRhcmVhIG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qg
bm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0
ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRp
bmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBt
dXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEg
aW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBz
YW1lIG5vcm1hbGl6ZWQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVl
CitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBj
aGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRv
Y3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGlu
ZyB0aGUgc2FtZSBub3JtYWxpemVkIHZhbHVlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFu
dGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLWFmdGVyLWNvbnRlbnQtY2hh
bmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxl
Y3Rpb24vc2VsZWN0aW9uLWFmdGVyLWNvbnRlbnQtY2hhbmdlLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hNjVlZDY4NjhkMjc0MTQyZWVhYjMzOTExYmFiNmU2ODY5Mzc5MzIxCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxl
Y3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAK
KworCitQQVNTIGlucHV0IG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50
OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQ
QVNTIGlucHV0IG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhlIHZhbHVlIHNh
bml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBt
dXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIGlucHV0IGlu
IGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50
IHZhbHVlCitQQVNTIGlucHV0IGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdl
IHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2FtZSBhZnRlciB0aGUgdmFs
dWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBm
b2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFs
dWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1l
bnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEg
dmFsdWUgdGhhdCBiZWNvbWVzIHRoZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24g
YWxnb3JpdGhtCitQQVNTIHRleHRhcmVhIG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qg
bm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0
IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVy
ZW50IHZhbHVlCitQQVNTIHRleHRhcmVhIG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qg
bm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0
ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRp
bmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBt
dXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEg
aW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBz
YW1lIG5vcm1hbGl6ZWQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVl
CitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBj
aGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRv
Y3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGlu
ZyB0aGUgc2FtZSBub3JtYWxpemVkIHZhbHVlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFu
dGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxlY3Rpb24vc2VsZWN0aW9uLWFmdGVyLWNvbnRlbnQtY2hh
bmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy90ZXh0ZmllbGRzZWxl
Y3Rpb24vc2VsZWN0aW9uLWFmdGVyLWNvbnRlbnQtY2hhbmdlLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hNjVlZDY4NjhkMjc0MTQyZWVhYjMzOTExYmFiNmU2ODY5Mzc5MzIxCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Zvcm1zL3RleHRmaWVsZHNlbGVjdGlvbi9zZWxl
Y3Rpb24tYWZ0ZXItY29udGVudC1jaGFuZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAK
KworCitQQVNTIGlucHV0IG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5n
ZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgaW5wdXQgb3V0IG9mIGRvY3VtZW50
OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQ
QVNTIGlucHV0IG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVu
IHNldHRpbmcgYSB2YWx1ZSB0aGF0IGJlY29tZXMgdGhlIHNhbWUgYWZ0ZXIgdGhlIHZhbHVlIHNh
bml0aXphdGlvbiBhbGdvcml0aG0KK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBt
dXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVlCitQQVNTIGlucHV0IGlu
IGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50
IHZhbHVlCitQQVNTIGlucHV0IGluIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdl
IHdoZW4gc2V0dGluZyBhIHZhbHVlIHRoYXQgYmVjb21lcyB0aGUgc2FtZSBhZnRlciB0aGUgdmFs
dWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobQorUEFTUyBpbnB1dCBpbiBkb2N1bWVudCwgd2l0aCBm
b2N1czogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFs
dWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1lbnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IGNo
YW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgaW5wdXQgaW4gZG9jdW1l
bnQsIHdpdGggZm9jdXM6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEg
dmFsdWUgdGhhdCBiZWNvbWVzIHRoZSBzYW1lIGFmdGVyIHRoZSB2YWx1ZSBzYW5pdGl6YXRpb24g
YWxnb3JpdGhtCitQQVNTIHRleHRhcmVhIG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qg
bm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgb3V0
IG9mIGRvY3VtZW50OiBzZWxlY3Rpb24gbXVzdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVy
ZW50IHZhbHVlCitQQVNTIHRleHRhcmVhIG91dCBvZiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qg
bm90IGNoYW5nZSB3aGVuIHNldHRpbmcgdGhlIHNhbWUgbm9ybWFsaXplZCB2YWx1ZQorUEFTUyB0
ZXh0YXJlYSBpbiBkb2N1bWVudDogc2VsZWN0aW9uIG11c3Qgbm90IGNoYW5nZSB3aGVuIHNldHRp
bmcgdGhlIHNhbWUgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBt
dXN0IGNoYW5nZSB3aGVuIHNldHRpbmcgYSBkaWZmZXJlbnQgdmFsdWUKK1BBU1MgdGV4dGFyZWEg
aW4gZG9jdW1lbnQ6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBz
YW1lIG5vcm1hbGl6ZWQgdmFsdWUKK1BBU1MgdGV4dGFyZWEgaW4gZG9jdW1lbnQsIHdpdGggZm9j
dXM6IHNlbGVjdGlvbiBtdXN0IG5vdCBjaGFuZ2Ugd2hlbiBzZXR0aW5nIHRoZSBzYW1lIHZhbHVl
CitQQVNTIHRleHRhcmVhIGluIGRvY3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBj
aGFuZ2Ugd2hlbiBzZXR0aW5nIGEgZGlmZmVyZW50IHZhbHVlCitQQVNTIHRleHRhcmVhIGluIGRv
Y3VtZW50LCB3aXRoIGZvY3VzOiBzZWxlY3Rpb24gbXVzdCBub3QgY2hhbmdlIHdoZW4gc2V0dGlu
ZyB0aGUgc2FtZSBub3JtYWxpemVkIHZhbHVlCisK
</data>

          </attachment>
      

    </bug>

</bugzilla>