<?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>138166</bug_id>
          
          <creation_ts>2014-10-28 21:02:43 -0700</creation_ts>
          <short_desc>Clean up virtual functions in html/</short_desc>
          <delta_ts>2014-10-29 08:10:04 -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>DOM</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>benjamin</cc>
    
    <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>kling</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1044691</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-10-28 21:02:43 -0700</bug_when>
    <thetext>Clean up virtual functions in html/ by:
- Making virtual functions final when possible
- Making classes final when possible
- Using &apos;override&apos; when appropriate
- Explicitly marking functions / destructors as virtual when they are
  inherently virtual
- Dropping virtual destructors when the class does not have subclasses
  and mark the class as final, to get rid of unnecessary vtables
- Making isXXX() virtual functions private on XXX classes to avoid
  unnecessary type checks
- De-virtualizing some functions that do not need to be virtual
- Dropping final for virtual functions in classes already marked as
  final</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044698</commentid>
    <comment_count>1</comment_count>
      <attachid>240592</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-10-28 21:21:48 -0700</bug_when>
    <thetext>Created attachment 240592
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044725</commentid>
    <comment_count>2</comment_count>
      <attachid>240592</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-10-29 00:11:06 -0700</bug_when>
    <thetext>Comment on attachment 240592
Patch

r=me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044752</commentid>
    <comment_count>3</comment_count>
      <attachid>240592</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-10-29 08:09:59 -0700</bug_when>
    <thetext>Comment on attachment 240592
Patch

Clearing flags on attachment: 240592

Committed r175328: &lt;http://trac.webkit.org/changeset/175328&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044753</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-10-29 08:10:04 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240592</attachid>
            <date>2014-10-28 21:21:48 -0700</date>
            <delta_ts>2014-10-29 08:09:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138166-20141028212156.patch</filename>
            <type>text/plain</type>
            <size>77705</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmQyMDUwNzUwYWNjNmFi
ODNmYjQ2MTIxMTg4MzdiNzNiMTQxMmM1NC4uMzA5ZDk2ODlmNzRmYWIwODM1NTA4MDNiOTI1MWQz
MzM5NTljYWVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzMyBAQAorMjAxNC0xMC0yOCAgQ2hy
aXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIENsZWFuIHVwIHZpcnR1YWwg
ZnVuY3Rpb25zIGluIGh0bWwvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMzgxNjYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDbGVhbiB1cCB2aXJ0dWFsIGZ1bmN0aW9ucyBpbiBodG1sLyBieToKKyAgICAg
ICAgLSBNYWtpbmcgdmlydHVhbCBmdW5jdGlvbnMgZmluYWwgd2hlbiBwb3NzaWJsZQorICAgICAg
ICAtIE1ha2luZyBjbGFzc2VzIGZpbmFsIHdoZW4gcG9zc2libGUKKyAgICAgICAgLSBVc2luZyAn
b3ZlcnJpZGUnIHdoZW4gYXBwcm9wcmlhdGUKKyAgICAgICAgLSBFeHBsaWNpdGx5IG1hcmtpbmcg
ZnVuY3Rpb25zIC8gZGVzdHJ1Y3RvcnMgYXMgdmlydHVhbCB3aGVuIHRoZXkgYXJlCisgICAgICAg
ICAgaW5oZXJlbnRseSB2aXJ0dWFsCisgICAgICAgIC0gRHJvcHBpbmcgdmlydHVhbCBkZXN0cnVj
dG9ycyB3aGVuIHRoZSBjbGFzcyBkb2VzIG5vdCBoYXZlIHN1YmNsYXNzZXMKKyAgICAgICAgICBh
bmQgbWFyayB0aGUgY2xhc3MgYXMgZmluYWwsIHRvIGdldCByaWQgb2YgdW5uZWNlc3NhcnkgdnRh
YmxlcworICAgICAgICAtIE1ha2luZyBpc1hYWCgpIHZpcnR1YWwgZnVuY3Rpb25zIHByaXZhdGUg
b24gWFhYIGNsYXNzZXMgdG8gYXZvaWQKKyAgICAgICAgICB1bm5lY2Vzc2FyeSB0eXBlIGNoZWNr
cworICAgICAgICAtIERlLXZpcnR1YWxpemluZyBzb21lIGZ1bmN0aW9ucyB0aGF0IGRvIG5vdCBu
ZWVkIHRvIGJlIHZpcnR1YWwKKyAgICAgICAgLSBEcm9wcGluZyBmaW5hbCBmb3IgdmlydHVhbCBm
dW5jdGlvbnMgaW4gY2xhc3NlcyBhbHJlYWR5IG1hcmtlZCBhcworICAgICAgICAgIGZpbmFsCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBiZWhhdmlvciBjaGFuZ2UuCisKKyAgICAgICAgKiBo
dG1sL0J1dHRvbklucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvQ2hlY2tib3hJbnB1dFR5cGUu
aDoKKyAgICAgICAgKiBodG1sL0NvbG9ySW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9ET01T
ZXR0YWJsZVRva2VuTGlzdC5oOgorICAgICAgICAqIGh0bWwvRGF0ZUlucHV0VHlwZS5oOgorICAg
ICAgICAqIGh0bWwvRGF0ZVRpbWVJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0RhdGVUaW1l
TG9jYWxJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL0VtYWlsSW5wdXRUeXBlLmg6CisgICAg
ICAgICogaHRtbC9GVFBEaXJlY3RvcnlEb2N1bWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTEFu
Y2hvckVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxEZXRhaWxzRWxlbWVudC5jcHA6Cisg
ICAgICAgICogaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9I
VE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5oOgorICAgICAgICAqIGh0bWwvSFRNTEZyYW1lRWxl
bWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTEZyYW1lRWxlbWVudEJhc2UuaDoKKyAgICAgICAg
KiBodG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0
RWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTE1hcnF1ZWVFbGVtZW50Lmg6CisgICAgICAg
ICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFTZXNz
aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFTZXNzaW9uOjpyZXF1aXJlc1BsYXli
YWNrVGFyZ2V0Um91dGVNb25pdG9yaW5nKTogRGVsZXRlZC4KKyAgICAgICAgKiBodG1sL0hUTUxN
ZXRlckVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxOYW1lQ29sbGVjdGlvbi5oOgorICAg
ICAgICAqIGh0bWwvSFRNTE9iamVjdEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxPcHRH
cm91cEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxPcHRpb25FbGVtZW50Lmg6CisgICAg
ICAgICogaHRtbC9IVE1MU3BhbkVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxTdHlsZUVs
ZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxTdW1tYXJ5RWxlbWVudC5jcHA6CisgICAgICAg
ICogaHRtbC9IVE1MU3VtbWFyeUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxVbmtub3du
RWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5oOgorICAgICAgICAq
IGh0bWwvSGlkZGVuSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9JbWFnZUlucHV0VHlwZS5o
OgorICAgICAgICAqIGh0bWwvTWVkaWFLZXlFdmVudC5oOgorICAgICAgICAqIGh0bWwvTW9udGhJ
bnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL051bWJlcklucHV0VHlwZS5oOgorICAgICAgICAq
IGh0bWwvUGFzc3dvcmRJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1B1YmxpY1VSTE1hbmFn
ZXIuaDoKKyAgICAgICAgKiBodG1sL1JhZGlvSW5wdXRUeXBlLmg6CisgICAgICAgICogaHRtbC9S
ZXNldElucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvU3VibWl0SW5wdXRUeXBlLmg6CisgICAg
ICAgICogaHRtbC9UZWxlcGhvbmVJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1RleHRJbnB1
dFR5cGUuaDoKKyAgICAgICAgKiBodG1sL1RpbWVJbnB1dFR5cGUuaDoKKyAgICAgICAgKiBodG1s
L1VSTElucHV0VHlwZS5oOgorICAgICAgICAqIGh0bWwvV2Vla0lucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvY2FudmFzL0FOR0xFSW5zdGFuY2VkQXJyYXlzLmg6CisgICAgICAgICogaHRtbC9j
YW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmg6CisgICAgICAgICogaHRtbC9jYW52YXMv
RE9NUGF0aC5oOgorICAgICAgICAqIGh0bWwvY2FudmFzL0VYVFNoYWRlclRleHR1cmVMT0QuaDoK
KyAgICAgICAgKiBodG1sL2NhbnZhcy9FWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaDoKKyAg
ICAgICAgKiBodG1sL2NhbnZhcy9PRVNFbGVtZW50SW5kZXhVaW50Lmg6CisgICAgICAgICogaHRt
bC9jYW52YXMvT0VTU3RhbmRhcmREZXJpdmF0aXZlcy5oOgorICAgICAgICAqIGh0bWwvY2FudmFz
L09FU1RleHR1cmVGbG9hdC5oOgorICAgICAgICAqIGh0bWwvY2FudmFzL09FU1RleHR1cmVGbG9h
dExpbmVhci5oOgorICAgICAgICAqIGh0bWwvY2FudmFzL09FU1RleHR1cmVIYWxmRmxvYXQuaDoK
KyAgICAgICAgKiBodG1sL2NhbnZhcy9PRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLmg6CisgICAg
ICAgICogaHRtbC9jYW52YXMvT0VTVmVydGV4QXJyYXlPYmplY3QuaDoKKyAgICAgICAgKiBodG1s
L2NhbnZhcy9XZWJHTEJ1ZmZlci5oOgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVBVEMuaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRU
ZXh0dXJlUFZSVEMuaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0
dXJlUzNUQy5oOgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMQ29udGV4dEF0dHJpYnV0ZXMu
aDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTENvbnRleHRFdmVudC5oOgorICAgICAgICAq
IGh0bWwvY2FudmFzL1dlYkdMRGVidWdSZW5kZXJlckluZm8uaDoKKyAgICAgICAgKiBodG1sL2Nh
bnZhcy9XZWJHTERlYnVnU2hhZGVycy5oOgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMRGVw
dGhUZXh0dXJlLmg6CisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xEcmF3QnVmZmVycy5oOgor
ICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OldlYkdMRnJhbWVidWZmZXI6OmlzRnJhbWVidWZmZXIpOiBEZWxldGVkLgorICAgICAgICAq
IGh0bWwvY2FudmFzL1dlYkdMTG9zZUNvbnRleHQuaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9X
ZWJHTFByb2dyYW0uaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmJ1ZmZlci5o
OgorICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5oOgorICAgICAg
ICAqIGh0bWwvY2FudmFzL1dlYkdMU2hhZGVyLmg6CisgICAgICAgICogaHRtbC9jYW52YXMvV2Vi
R0xTaGFyZWRPYmplY3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdMU2hhcmVkT2JqZWN0Ojpp
c0ZyYW1lYnVmZmVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFRleHR1
cmUuaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmg6
CisgICAgICAgIChXZWJDb3JlOjpXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTOjppc1ZlcnRleEFy
cmF5KTogRGVsZXRlZC4KKyAgICAgICAgKiBodG1sL3NoYWRvdy9JbWFnZUNvbnRyb2xzUm9vdEVs
ZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9JbnNlcnRpb25Qb2ludC5oOgorICAgICAg
ICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRUeXBlcy5oOgorICAgICAgICAqIGh0
bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmg6CisgICAgICAgICogaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9scy5oOgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbHNBcHBs
ZS5oOgorICAgICAgICAqIGh0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50Lmg6CisgICAgICAg
ICogaHRtbC90cmFjay9BdWRpb1RyYWNrLmg6CisgICAgICAgICogaHRtbC90cmFjay9BdWRpb1Ry
YWNrTGlzdC5oOgorICAgICAgICAqIGh0bWwvdHJhY2svRGF0YUN1ZS5oOgorICAgICAgICAoV2Vi
Q29yZTo6RGF0YUN1ZTo6Y3VlVHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC90cmFjay9J
bmJhbmREYXRhVGV4dFRyYWNrLmg6CisgICAgICAgICogaHRtbC90cmFjay9JbmJhbmRHZW5lcmlj
VGV4dFRyYWNrLmg6CisgICAgICAgICogaHRtbC90cmFjay9JbmJhbmRUZXh0VHJhY2suaDoKKyAg
ICAgICAgKiBodG1sL3RyYWNrL0luYmFuZFdlYlZUVFRleHRUcmFjay5oOgorICAgICAgICAqIGh0
bWwvdHJhY2svTG9hZGFibGVUZXh0VHJhY2suaDoKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRU
cmFja0xpc3QuaDoKKyAgICAgICAgKiBodG1sL3RyYWNrL1RyYWNrRXZlbnQuaDoKKyAgICAgICAg
KiBodG1sL3RyYWNrL1ZUVEN1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6VlRUQ3VlQm94OjpzZXRG
b250U2l6ZUZyb21DYXB0aW9uVXNlclByZWZzKToKKyAgICAgICAgKiBodG1sL3RyYWNrL1ZUVFJl
Z2lvbi5oOgorICAgICAgICAqIGh0bWwvdHJhY2svVmlkZW9UcmFjay5oOgorICAgICAgICAqIGh0
bWwvdHJhY2svVmlkZW9UcmFja0xpc3QuaDoKKyAgICAgICAgKiBodG1sL3RyYWNrL1dlYlZUVFBh
cnNlci5oOgorICAgICAgICAoV2ViQ29yZTo6V2ViVlRUQ3VlRGF0YTo6fldlYlZUVEN1ZURhdGEp
OiBEZWxldGVkLgorCiAyMDE0LTEwLTI3ICBBZGEgQ2hhbiAgPGFkYWNoYW5AYXBwbGUuY29tPgog
CiAgICAgICAgIEludHJvZHVjZSBhIG5ldyBhYnN0cmFjdCBjbGFzcyBjYWxsZWQgQXVkaW9Qcm9k
dWNlciBhbmQga2VlcCBhIHNldCBvZiBBdWRpb1Byb2R1Y2VycwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9CdXR0b25JbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQnV0
dG9uSW5wdXRUeXBlLmgKaW5kZXggYmQ0MDViYWU5YTdiY2FlN2U5NmJlZDQxYWZkY2MwNGExMGZl
YjIxMC4uMWRlYTAzMzQ0NjM1YTA1ZGNjZjUyMjA0YTYxODc2ZTkzMzA0YzI5MiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9CdXR0b25JbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0J1dHRvbklucHV0VHlwZS5oCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotY2xhc3MgQnV0dG9uSW5wdXRUeXBlIDogcHVibGljIEJhc2VCdXR0b25J
bnB1dFR5cGUgeworY2xhc3MgQnV0dG9uSW5wdXRUeXBlIGZpbmFsIDogcHVibGljIEJhc2VCdXR0
b25JbnB1dFR5cGUgewogcHVibGljOgogICAgIGV4cGxpY2l0IEJ1dHRvbklucHV0VHlwZShIVE1M
SW5wdXRFbGVtZW50JiBlbGVtZW50KSA6IEJhc2VCdXR0b25JbnB1dFR5cGUoZWxlbWVudCkgeyB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ2hlY2tib3hJbnB1dFR5cGUuaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQ2hlY2tib3hJbnB1dFR5cGUuaAppbmRleCA1YTlhMjA2NTAz
M2I0MDFiMjA4ZDRkZTA2MDY0Nzc3NGZkYzA0YWJjLi44NTRjZTNlMWIwM2U4NjQ4NjE1MmFlNmUx
YzZmY2Q0NWEyYTlmZjBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0NoZWNrYm94
SW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9DaGVja2JveElucHV0VHlwZS5o
CkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgQ2hlY2ti
b3hJbnB1dFR5cGUgOiBwdWJsaWMgQmFzZUNoZWNrYWJsZUlucHV0VHlwZSB7CitjbGFzcyBDaGVj
a2JveElucHV0VHlwZSBmaW5hbCA6IHB1YmxpYyBCYXNlQ2hlY2thYmxlSW5wdXRUeXBlIHsKIHB1
YmxpYzoKICAgICBleHBsaWNpdCBDaGVja2JveElucHV0VHlwZShIVE1MSW5wdXRFbGVtZW50JiBl
bGVtZW50KSA6IEJhc2VDaGVja2FibGVJbnB1dFR5cGUoZWxlbWVudCkgeyB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvQ29sb3JJbnB1dFR5cGUuaAppbmRleCAyNzI2ZDlhZDZiNDU0YjE1NzM5YTY5NDRiMTMy
Nzk3MWVjY2FkYjRlLi4wMmY5MGJhMmY3N2JjNmUxMWM0OGI3NzQwZjRmODA5OTJhM2I0OWJmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlwZS5oCkBAIC0zNyw3ICszNyw3IEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgQ29sb3JJbnB1dFR5cGUgOiBwdWJsaWMgQmFzZUNs
aWNrYWJsZVdpdGhLZXlJbnB1dFR5cGUsIHB1YmxpYyBDb2xvckNob29zZXJDbGllbnQgeworY2xh
c3MgQ29sb3JJbnB1dFR5cGUgZmluYWwgOiBwdWJsaWMgQmFzZUNsaWNrYWJsZVdpdGhLZXlJbnB1
dFR5cGUsIHB1YmxpYyBDb2xvckNob29zZXJDbGllbnQgewogcHVibGljOgogICAgIGV4cGxpY2l0
IENvbG9ySW5wdXRUeXBlKEhUTUxJbnB1dEVsZW1lbnQmIGVsZW1lbnQpIDogQmFzZUNsaWNrYWJs
ZVdpdGhLZXlJbnB1dFR5cGUoZWxlbWVudCkgeyB9CiAgICAgdmlydHVhbCB+Q29sb3JJbnB1dFR5
cGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NU2V0dGFibGVUb2tlbkxp
c3QuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NU2V0dGFibGVUb2tlbkxpc3QuaAppbmRleCA5
ZDNkZWU2YmVkYmZhOGNmOTlhNTdiOTIyMDYyYzcxODUzYjRiM2M0Li4wOGRkZjJjYzkzYmNmY2Yx
NjE3MmJmMWViZGNjYTkyNmY0ZTgxZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0RPTVNldHRhYmxlVG9rZW5MaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01TZXR0
YWJsZVRva2VuTGlzdC5oCkBAIC0zNSwyMiArMzUsMjIgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwogCi1jbGFzcyBET01TZXR0YWJsZVRva2VuTGlz
dCA6IHB1YmxpYyBET01Ub2tlbkxpc3QsIHB1YmxpYyBSZWZDb3VudGVkPERPTVNldHRhYmxlVG9r
ZW5MaXN0PiB7CitjbGFzcyBET01TZXR0YWJsZVRva2VuTGlzdCBmaW5hbCA6IHB1YmxpYyBET01U
b2tlbkxpc3QsIHB1YmxpYyBSZWZDb3VudGVkPERPTVNldHRhYmxlVG9rZW5MaXN0PiB7CiAgICAg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8
RE9NU2V0dGFibGVUb2tlbkxpc3Q+IGNyZWF0ZSgpOwogCi0gICAgdmlydHVhbCB2b2lkIHJlZigp
IG92ZXJyaWRlIGZpbmFsOwotICAgIHZpcnR1YWwgdm9pZCBkZXJlZigpIG92ZXJyaWRlIGZpbmFs
OworICAgIHZpcnR1YWwgdm9pZCByZWYoKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgZGVy
ZWYoKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgdW5zaWduZWQgbGVuZ3RoKCkgY29uc3Qgb3Zl
cnJpZGUgZmluYWw7Ci0gICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcgaXRlbSh1bnNpZ25l
ZCBpbmRleCkgY29uc3Qgb3ZlcnJpZGUgZmluYWw7CisgICAgdmlydHVhbCB1bnNpZ25lZCBsZW5n
dGgoKSBjb25zdCBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyBpdGVt
KHVuc2lnbmVkIGluZGV4KSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgQXRvbWljU3Ry
aW5nIHZhbHVlKCkgY29uc3Qgb3ZlcnJpZGUgZmluYWw7Ci0gICAgdmlydHVhbCB2b2lkIHNldFZh
bHVlKGNvbnN0IEF0b21pY1N0cmluZyYpIG92ZXJyaWRlIGZpbmFsOworICAgIHZpcnR1YWwgQXRv
bWljU3RyaW5nIHZhbHVlKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIHNldFZh
bHVlKGNvbnN0IEF0b21pY1N0cmluZyYpIG92ZXJyaWRlOwogCiBwcml2YXRlOgotICAgIHZpcnR1
YWwgYm9vbCBjb250YWluc0ludGVybmFsKGNvbnN0IEF0b21pY1N0cmluZyYpIGNvbnN0IG92ZXJy
aWRlIGZpbmFsOworICAgIHZpcnR1YWwgYm9vbCBjb250YWluc0ludGVybmFsKGNvbnN0IEF0b21p
Y1N0cmluZyYpIGNvbnN0IG92ZXJyaWRlOwogCiAgICAgQXRvbWljU3RyaW5nIG1fdmFsdWU7CiAg
ICAgU3BhY2VTcGxpdFN0cmluZyBtX3Rva2VuczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvRGF0ZUlucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlSW5wdXRUeXBl
LmgKaW5kZXggODhlMGFhMzAyMDRiZTU0ZTdmODFlMDkyMGE0NTc4NmI0MTcxMmI3Yy4uOGNhMDFm
NWM2YzIwNzY3NmZmOTgyMjVjMTQ1MWI4NDA4NjQ5YzViOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9EYXRlSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9EYXRl
SW5wdXRUeXBlLmgKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1j
bGFzcyBEYXRlSW5wdXRUeXBlIDogcHVibGljIEJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5w
dXRUeXBlIHsKK2NsYXNzIERhdGVJbnB1dFR5cGUgZmluYWwgOiBwdWJsaWMgQmFzZUNob29zZXJP
bmx5RGF0ZUFuZFRpbWVJbnB1dFR5cGUgewogcHVibGljOgogICAgIGV4cGxpY2l0IERhdGVJbnB1
dFR5cGUoSFRNTElucHV0RWxlbWVudCYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0RhdGVUaW1lSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVUaW1lSW5w
dXRUeXBlLmgKaW5kZXggZjVmNzQxMDg3ZjBjODc3NDM2ODA2ZDFhMmIzYTViZWMyOGQ5ZmFmMS4u
MjhiNTExZTFhNzJjYzZjZWRhNjQzOGVkZDk3MjAzYjA5Y2Y1YTFiZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvRGF0ZVRpbWVJbnB1dFR5cGUuaApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKLWNsYXNzIERhdGVUaW1lSW5wdXRUeXBlIDogcHVibGljIEJhc2VDaG9vc2Vy
T25seURhdGVBbmRUaW1lSW5wdXRUeXBlIHsKK2NsYXNzIERhdGVUaW1lSW5wdXRUeXBlIGZpbmFs
IDogcHVibGljIEJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlIHsKIHB1YmxpYzoK
ICAgICBleHBsaWNpdCBEYXRlVGltZUlucHV0VHlwZShIVE1MSW5wdXRFbGVtZW50JiBlbGVtZW50
KSA6IEJhc2VEYXRlVGltZUlucHV0VHlwZShlbGVtZW50KSB7IH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUxvY2FsSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuaAppbmRleCBkOGE1M2I0NDMzYTkzMTQyNjM2
ODVmYWExYjY2NDJlZmMyYzU1M2MwLi42ZDQ2MjZjYjU1MTYxZmQ5Njg1MzI1OWJkZjE3YzVhY2Y5
ODUxYzkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVUaW1lTG9jYWxJbnB1
dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUu
aApAQCAtMzYsNyArMzYsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIERhdGVU
aW1lTG9jYWxJbnB1dFR5cGUgOiBwdWJsaWMgQmFzZUNob29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1
dFR5cGUgeworY2xhc3MgRGF0ZVRpbWVMb2NhbElucHV0VHlwZSBmaW5hbCA6IHB1YmxpYyBCYXNl
Q2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZSB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQg
RGF0ZVRpbWVMb2NhbElucHV0VHlwZShIVE1MSW5wdXRFbGVtZW50JiBlbGVtZW50KSA6IEJhc2VD
aG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlKGVsZW1lbnQpIHsgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0VtYWlsSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0VtYWlsSW5wdXRUeXBlLmgKaW5kZXggMjBiNDBkZDBlZjUxYzdkMzg5MmFhMzU0MjMwZjk2
NDg4N2UzZTAyMi4uNDU4MThjYzAyOWM1NTcwMzhiZGVjNGNhMjJmNjg0NWJlMzY3NDcxMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9FbWFpbElucHV0VHlwZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvRW1haWxJbnB1dFR5cGUuaApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIEVtYWlsSW5wdXRUeXBlIDogcHVibGljIEJhc2VUZXh0
SW5wdXRUeXBlIHsKK2NsYXNzIEVtYWlsSW5wdXRUeXBlIGZpbmFsIDogcHVibGljIEJhc2VUZXh0
SW5wdXRUeXBlIHsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBFbWFpbElucHV0VHlwZShIVE1MSW5w
dXRFbGVtZW50JiBlbGVtZW50KSA6IEJhc2VUZXh0SW5wdXRUeXBlKGVsZW1lbnQpIHsgfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZUUERpcmVjdG9yeURvY3VtZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0ZUUERpcmVjdG9yeURvY3VtZW50LmgKaW5kZXggMjExZGM2Yzkx
MzFlYzg5Y2VhM2IyOGU2ZGI1ZGRhY2QwMmZjMjY3ZS4uNmQ3OGNmNmQ4ZTA3OWJlZTQ5ZGJmNGJm
NWU3Mzk0ZjE3MjNiMmMyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9GVFBEaXJl
Y3RvcnlEb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRlRQRGlyZWN0b3J5RG9j
dW1lbnQuaApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgCiBjbGFz
cyBET01JbXBsZW1lbnRhdGlvbjsKICAgICAKLWNsYXNzIEZUUERpcmVjdG9yeURvY3VtZW50IDog
cHVibGljIEhUTUxEb2N1bWVudCB7CitjbGFzcyBGVFBEaXJlY3RvcnlEb2N1bWVudCBmaW5hbCA6
IHB1YmxpYyBIVE1MRG9jdW1lbnQgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEZU
UERpcmVjdG9yeURvY3VtZW50PiBjcmVhdGUoRnJhbWUqIGZyYW1lLCBjb25zdCBVUkwmIHVybCkK
ICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBbmNob3JFbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBbmNob3JFbGVtZW50LmgKaW5kZXggMzA5MTVk
MzdkMjk4MmJiMDQ1ZDUzOTk1MDUwZWRjNjFmZjAzYzQyYS4uOWE4ODVjNDBjNzBlNjZkNTIyNWQ1
M2I2MzEyZTI2NTAzZTk4ZGY4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
QW5jaG9yRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEFuY2hvckVsZW1l
bnQuaApAQCAtOTYsNyArOTYsNyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzTGl2ZUxpbmsoKSBj
b25zdDsKIAotICAgIHZpcnR1YWwgYm9vbCB3aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2ZW50cygp
IG92ZXJyaWRlOworICAgIHZpcnR1YWwgYm9vbCB3aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2ZW50
cygpIG92ZXJyaWRlIGZpbmFsOwogCiAgICAgYm9vbCBoYXNSZWwodWludDMyX3QgcmVsYXRpb24p
IGNvbnN0OwogICAgIApAQCAtMTE0LDE0ICsxMTQsMTQgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFs
IGJvb2wgc3VwcG9ydHNGb2N1cygpIGNvbnN0IG92ZXJyaWRlOwogICAgIHZpcnR1YWwgYm9vbCBp
c01vdXNlRm9jdXNhYmxlKCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBib29sIGlzS2V5
Ym9hcmRGb2N1c2FibGUoS2V5Ym9hcmRFdmVudCopIGNvbnN0IG92ZXJyaWRlOwotICAgIHZpcnR1
YWwgdm9pZCBkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50Kikgb3ZlcnJpZGU7CisgICAgdmlydHVh
bCB2b2lkIGRlZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQqKSBvdmVycmlkZSBmaW5hbDsKICAgICB2
aXJ0dWFsIHZvaWQgc2V0QWN0aXZlKGJvb2wgYWN0aXZlID0gdHJ1ZSwgYm9vbCBwYXVzZSA9IGZh
bHNlKSBvdmVycmlkZSBmaW5hbDsKLSAgICB2aXJ0dWFsIHZvaWQgYWNjZXNzS2V5QWN0aW9uKGJv
b2wgc2VuZE1vdXNlRXZlbnRzKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIGJvb2wgaXNVUkxBdHRy
aWJ1dGUoY29uc3QgQXR0cmlidXRlJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCBib29s
IGNhblN0YXJ0U2VsZWN0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGFj
Y2Vzc0tleUFjdGlvbihib29sIHNlbmRNb3VzZUV2ZW50cykgb3ZlcnJpZGUgZmluYWw7CisgICAg
dmlydHVhbCBib29sIGlzVVJMQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpIGNvbnN0IG92ZXJy
aWRlIGZpbmFsOworICAgIHZpcnR1YWwgYm9vbCBjYW5TdGFydFNlbGVjdGlvbigpIGNvbnN0IG92
ZXJyaWRlIGZpbmFsOwogICAgIHZpcnR1YWwgU3RyaW5nIHRhcmdldCgpIGNvbnN0IG92ZXJyaWRl
OwogICAgIHZpcnR1YWwgc2hvcnQgdGFiSW5kZXgoKSBjb25zdCBvdmVycmlkZSBmaW5hbDsKLSAg
ICB2aXJ0dWFsIGJvb2wgZHJhZ2dhYmxlKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdmlydHVhbCBi
b29sIGRyYWdnYWJsZSgpIGNvbnN0IG92ZXJyaWRlIGZpbmFsOwogCiAgICAgdm9pZCBzZW5kUGlu
Z3MoY29uc3QgVVJMJiBkZXN0aW5hdGlvblVSTCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTERldGFpbHNFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TERldGFpbHNFbGVtZW50LmNwcAppbmRleCAyNmZhMTRhZDY3NTM0MDQ5ODM1ZGU2OTM0ZTcxZjBj
OWEzNGJiNjY4Li4yM2U1NjFjZmJiYzUwNjk4Mzk2NmYzODA2ZWQyMTQxOThjYjllMDdkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEZXRhaWxzRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuY3BwCkBAIC00MCw3ICs0MCw3
IEBAIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHN1bW1hcnlRdWVyeVNlbGVjdG9yKCkKICAg
ICByZXR1cm4gc2VsZWN0b3I7CiB9OwogCi1jbGFzcyBEZXRhaWxzQ29udGVudEVsZW1lbnQgOiBw
dWJsaWMgSW5zZXJ0aW9uUG9pbnQgeworY2xhc3MgRGV0YWlsc0NvbnRlbnRFbGVtZW50IGZpbmFs
IDogcHVibGljIEluc2VydGlvblBvaW50IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0
cjxEZXRhaWxzQ29udGVudEVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwogCkBAIC02Myw3ICs2
Myw3IEBAIFBhc3NSZWZQdHI8RGV0YWlsc0NvbnRlbnRFbGVtZW50PiBEZXRhaWxzQ29udGVudEVs
ZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lCiAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBE
ZXRhaWxzQ29udGVudEVsZW1lbnQoZG9jdW1lbnQpKTsKIH0KIAotY2xhc3MgRGV0YWlsc1N1bW1h
cnlFbGVtZW50IDogcHVibGljIEluc2VydGlvblBvaW50IHsKK2NsYXNzIERldGFpbHNTdW1tYXJ5
RWxlbWVudCBmaW5hbCA6IHB1YmxpYyBJbnNlcnRpb25Qb2ludCB7CiBwdWJsaWM6CiAgICAgc3Rh
dGljIFBhc3NSZWZQdHI8RGV0YWlsc1N1bW1hcnlFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQmKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuaAppbmRleCBl
N2FlM2VjYTcyMzQ4YmIwMTg2ZDFkMDg2MmE1MDQ1NWRiYjY2MzVkLi4wMDI1ZDBkMmYxYjUwYmMz
NTg1NWZkZDZkZWU0N2VkNmQwMDQ5YWM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxG
b3JtQ29udHJvbEVsZW1lbnQuaApAQCAtMTUwLDcgKzE1MCw3IEBAIHByaXZhdGU6CiAgICAgdmly
dHVhbCB2b2lkIHJlZkZvcm1Bc3NvY2lhdGVkRWxlbWVudCgpIG92ZXJyaWRlIHsgcmVmKCk7IH0K
ICAgICB2aXJ0dWFsIHZvaWQgZGVyZWZGb3JtQXNzb2NpYXRlZEVsZW1lbnQoKSBvdmVycmlkZSB7
IGRlcmVmKCk7IH0KIAotICAgIHZpcnR1YWwgYm9vbCBpc0Zvcm1Db250cm9sRWxlbWVudCgpIGNv
bnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaXNGb3JtQ29u
dHJvbEVsZW1lbnQoKSBjb25zdCBvdmVycmlkZSBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAgICAg
dmlydHVhbCBib29sIGFsd2F5c0NyZWF0ZVVzZXJBZ2VudFNoYWRvd1Jvb3QoKSBjb25zdCBvdmVy
cmlkZSB7IHJldHVybiB0cnVlOyB9CiAKICAgICB2aXJ0dWFsIHNob3J0IHRhYkluZGV4KCkgY29u
c3Qgb3ZlcnJpZGUgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxG
b3JtQ29udHJvbHNDb2xsZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29u
dHJvbHNDb2xsZWN0aW9uLmgKaW5kZXggMzBhNzMxZTQ3ZDNmZmFjZTU4YmZlYzAwNmU5NmQxOThh
ZTA5NmYwYy4uZTU2YWE0ZGRmNmQ1YmZjNmJmNTkxOGFjZjQxNzkyM2IzYmI1MTFiYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaApAQCAt
MzUsNyArMzUsNyBAQCBjbGFzcyBRdWFsaWZpZWROYW1lOwogLy8gVGhpcyBjbGFzcyBpcyBqdXN0
IGEgYmlnIGhhY2sgdG8gZmluZCBmb3JtIGVsZW1lbnRzIGV2ZW4gaW4gbWFsZm9ybWVkIEhUTUwg
ZWxlbWVudHMuCiAvLyBUaGUgZmFtb3VzIDx0YWJsZT48dHI+PGZvcm0+PHRkPiBwcm9ibGVtLgog
Ci1jbGFzcyBIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbiA6IHB1YmxpYyBIVE1MQ29sbGVjdGlv
biB7CitjbGFzcyBIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbiBmaW5hbCA6IHB1YmxpYyBIVE1M
Q29sbGVjdGlvbiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWY8SFRNTEZvcm1Db250cm9s
c0NvbGxlY3Rpb24+IGNyZWF0ZShDb250YWluZXJOb2RlJiwgQ29sbGVjdGlvblR5cGUpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZUVsZW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudC5oCmluZGV4IDZlNGZiMGZjOTZiZWY2N2I3
NzliNmE3YmI5YmMxZDFmNDg2ZWVhOTcuLmIyOGU3NjQ2MzE0MDRmNDcyOTc5MTUxOWQ4YmE1OGE1
Njk5N2NjNWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudC5oCkBAIC00Niwx
MCArNDYsNiBAQCBwcml2YXRlOgogICAgIAogICAgIHZpcnR1YWwgdm9pZCBwYXJzZUF0dHJpYnV0
ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgY29uc3QgQXRvbWljU3RyaW5nJikgb3ZlcnJpZGU7CiAK
LSNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCi0gICAgdmlydHVhbCBib29sIGFsbG93RnVsbFNj
cmVlbigpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0jZW5kaWYKLQogICAgIGJvb2wgbV9mcmFt
ZUJvcmRlcjsKICAgICBib29sIG1fZnJhbWVCb3JkZXJTZXQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRnJhbWVFbGVtZW50QmFzZS5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MRnJhbWVFbGVtZW50QmFzZS5oCmluZGV4IDNjYTdhYjEzZTMxNmRhZjZmNWNjZjFk
NjdkY2U4ZjAzYjBjN2IzYTIuLjk4NTQ1MzQ5NzdiZmM2MzdlZjRkNTI2MzU3YmM2MzY1MDZlMDJj
YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudEJhc2Uu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZUVsZW1lbnRCYXNlLmgKQEAgLTM1
LDcgKzM1LDcgQEAgcHVibGljOgogICAgIFVSTCBsb2NhdGlvbigpIGNvbnN0OwogICAgIHZvaWQg
c2V0TG9jYXRpb24oY29uc3QgU3RyaW5nJik7CiAKLSAgICB2aXJ0dWFsIFNjcm9sbGJhck1vZGUg
c2Nyb2xsaW5nTW9kZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fc2Nyb2xsaW5nOyB9Cisg
ICAgdmlydHVhbCBTY3JvbGxiYXJNb2RlIHNjcm9sbGluZ01vZGUoKSBjb25zdCBvdmVycmlkZSBm
aW5hbCB7IHJldHVybiBtX3Njcm9sbGluZzsgfQogICAgIAogICAgIGludCBtYXJnaW5XaWR0aCgp
IGNvbnN0IHsgcmV0dXJuIG1fbWFyZ2luV2lkdGg7IH0KICAgICBpbnQgbWFyZ2luSGVpZ2h0KCkg
Y29uc3QgeyByZXR1cm4gbV9tYXJnaW5IZWlnaHQ7IH0KQEAgLTQzLDcgKzQzLDcgQEAgcHVibGlj
OgogICAgIGludCB3aWR0aCgpOwogICAgIGludCBoZWlnaHQoKTsKIAotICAgIHZpcnR1YWwgYm9v
bCBjYW5Db250YWluUmFuZ2VFbmRQb2ludCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNl
OyB9CisgICAgdmlydHVhbCBib29sIGNhbkNvbnRhaW5SYW5nZUVuZFBvaW50KCkgY29uc3Qgb3Zl
cnJpZGUgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIAogcHJvdGVjdGVkOgogICAgIEhUTUxGcmFt
ZUVsZW1lbnRCYXNlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYpOwpAQCAtNTEsMTgg
KzUxLDE4IEBAIHByb3RlY3RlZDoKICAgICBib29sIGlzVVJMQWxsb3dlZCgpIGNvbnN0OwogCiAg
ICAgdmlydHVhbCB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBjb25z
dCBBdG9taWNTdHJpbmcmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIEluc2VydGlvbk5vdGlmaWNh
dGlvblJlcXVlc3QgaW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUmKSBvdmVycmlkZTsKLSAgICB2
aXJ0dWFsIHZvaWQgZGlkTm90aWZ5U3VidHJlZUluc2VydGlvbnMoQ29udGFpbmVyTm9kZSopIG92
ZXJyaWRlOworICAgIHZpcnR1YWwgSW5zZXJ0aW9uTm90aWZpY2F0aW9uUmVxdWVzdCBpbnNlcnRl
ZEludG8oQ29udGFpbmVyTm9kZSYpIG92ZXJyaWRlIGZpbmFsOworICAgIHZpcnR1YWwgdm9pZCBk
aWROb3RpZnlTdWJ0cmVlSW5zZXJ0aW9ucyhDb250YWluZXJOb2RlKikgb3ZlcnJpZGUgZmluYWw7
CiAgICAgdmlydHVhbCB2b2lkIGRpZEF0dGFjaFJlbmRlcmVycygpIG92ZXJyaWRlOwogCiBwcml2
YXRlOgotICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c0ZvY3VzKCkgY29uc3Qgb3ZlcnJpZGU7Ci0g
ICAgdmlydHVhbCB2b2lkIHNldEZvY3VzKGJvb2wpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgYm9v
bCBzdXBwb3J0c0ZvY3VzKCkgY29uc3Qgb3ZlcnJpZGUgZmluYWw7CisgICAgdmlydHVhbCB2b2lk
IHNldEZvY3VzKGJvb2wpIG92ZXJyaWRlIGZpbmFsOwogICAgIAotICAgIHZpcnR1YWwgYm9vbCBp
c1VSTEF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKSBjb25zdCBvdmVycmlkZTsKLSAgICB2aXJ0
dWFsIGJvb2wgaXNIVE1MQ29udGVudEF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKSBjb25zdCBv
dmVycmlkZTsKKyAgICB2aXJ0dWFsIGJvb2wgaXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRl
JikgY29uc3Qgb3ZlcnJpZGUgZmluYWw7CisgICAgdmlydHVhbCBib29sIGlzSFRNTENvbnRlbnRB
dHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJikgY29uc3Qgb3ZlcnJpZGUgZmluYWw7CiAKLSAgICB2
aXJ0dWFsIGJvb2wgaXNGcmFtZUVsZW1lbnRCYXNlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4g
dHJ1ZTsgfQorICAgIHZpcnR1YWwgYm9vbCBpc0ZyYW1lRWxlbWVudEJhc2UoKSBjb25zdCBvdmVy
cmlkZSBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICB2b2lkIHNldE5hbWVBbmRPcGVuVVJM
KCk7CiAgICAgdm9pZCBvcGVuVVJMKExvY2tIaXN0b3J5ID0gTG9ja0hpc3Rvcnk6OlllcywgTG9j
a0JhY2tGb3J3YXJkTGlzdCA9IExvY2tCYWNrRm9yd2FyZExpc3Q6Olllcyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuaAppbmRleCA5YzNiMjdlOGQ0YWY0MGQ3
YzJlMGQ1N2Y1MDJhOGM4ODE4YThkNmE0Li4wMWZhNzAwMjE2M2FkNGJiNjA2MWE0ZDExZjk4OTMx
Yjk2YTg3OTViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVy
RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50
LmgKQEAgLTYzLDcgKzYzLDcgQEAgcHJvdGVjdGVkOgogCiBwcml2YXRlOgogICAgIHZpcnR1YWwg
Ym9vbCBpc0tleWJvYXJkRm9jdXNhYmxlKEtleWJvYXJkRXZlbnQqKSBjb25zdCBvdmVycmlkZTsK
LSAgICB2aXJ0dWFsIGJvb2wgaXNGcmFtZU93bmVyRWxlbWVudCgpIGNvbnN0IG92ZXJyaWRlIHsg
cmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaXNGcmFtZU93bmVyRWxlbWVudCgpIGNv
bnN0IG92ZXJyaWRlIGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIAogICAgIEZyYW1lKiBtX2NvbnRl
bnRGcmFtZTsKICAgICBTYW5kYm94RmxhZ3MgbV9zYW5kYm94RmxhZ3M7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTElucHV0RWxlbWVudC5oCmluZGV4IGQ3YTY1Y2Q2ZDMxNjAyNWJmOGNlZDk3ZDkzZGE1
MDkzYjc5OTFlOGQuLjI2YjU1ZTRmNGUwNTQxODc4ZTQ2OWRmNWU5ZDNlZTA2MmRkYTE1ZmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCkBAIC02OCw3ICs2OCw3IEBAIHB1
YmxpYzoKIAogICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIod2Via2l0c3BlZWNo
Y2hhbmdlKTsKIAotICAgIHZpcnR1YWwgSFRNTElucHV0RWxlbWVudCogdG9JbnB1dEVsZW1lbnQo
KSBvdmVycmlkZSB7IHJldHVybiB0aGlzOyB9CisgICAgdmlydHVhbCBIVE1MSW5wdXRFbGVtZW50
KiB0b0lucHV0RWxlbWVudCgpIG92ZXJyaWRlIGZpbmFsIHsgcmV0dXJuIHRoaXM7IH0KIAogICAg
IFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgYm9vbCBzaG91bGRBdXRvY29tcGxldGUoKSBjb25zdCBv
dmVycmlkZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWFycXVlZUVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmgKaW5kZXgg
OTYzOWU5NjM2MjQyMjRiODgzOGQ5YjIzMDc1OTc2NTc0MjgzMDVlNy4uNDdmODMxYzBjZGMyZjAy
M2Y1YmM0YjY0MmFlZmNiNTgyOTBiMmQyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTWFycXVlZUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNYXJx
dWVlRWxlbWVudC5oCkBAIC0zOSw3ICszOSw3IEBAIHB1YmxpYzoKICAgICAvLyBET00gRnVuY3Rp
b25zCiAKICAgICB2b2lkIHN0YXJ0KCk7Ci0gICAgdm9pZCBzdG9wKCkgb3ZlcnJpZGU7CisgICAg
dmlydHVhbCB2b2lkIHN0b3AoKSBvdmVycmlkZTsKICAgICAKICAgICBpbnQgc2Nyb2xsQW1vdW50
KCkgY29uc3Q7CiAgICAgdm9pZCBzZXRTY3JvbGxBbW91bnQoaW50LCBFeGNlcHRpb25Db2RlJik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCmluZGV4IGY0YzI1M2NjOTcxNWFj
ZjcyMTRmN2NkNjYyNzc4N2MzM2ZlMzViNDUuLmIxMzc1MjBhMjgxMWQ5N2VmMzllMGRhYmRhY2Vl
MTEyYmUyYTFhOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCkBAIC00
NjcsNyArNDY3LDcgQEAgcHJvdGVjdGVkOgogICAgIERpc3BsYXlNb2RlIGRpc3BsYXlNb2RlKCkg
Y29uc3QgeyByZXR1cm4gbV9kaXNwbGF5TW9kZTsgfQogICAgIHZpcnR1YWwgdm9pZCBzZXREaXNw
bGF5TW9kZShEaXNwbGF5TW9kZSBtb2RlKSB7IG1fZGlzcGxheU1vZGUgPSBtb2RlOyB9CiAgICAg
Ci0gICAgdmlydHVhbCBib29sIGlzTWVkaWFFbGVtZW50KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1
cm4gdHJ1ZTsgfQorICAgIHZpcnR1YWwgYm9vbCBpc01lZGlhRWxlbWVudCgpIGNvbnN0IG92ZXJy
aWRlIGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAg
ICBib29sIGlnbm9yZVRyYWNrRGlzcGxheVVwZGF0ZVJlcXVlc3RzKCkgY29uc3QgeyByZXR1cm4g
bV9pZ25vcmVUcmFja0Rpc3BsYXlVcGRhdGUgPiAwIHx8ICFtX3RleHRUcmFja3MgfHwgIW1fY3Vl
VHJlZS5zaXplKCk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
U2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFTZXNzaW9uLmgKaW5kZXgg
YzkwN2VjNzgxZjExZDAxNzc0M2I1MmNmMDE0ZTA2ZTU1ZWUwNjExNi4uMzFkN2QzNDFmNjg3NWJm
OWMyMWYwMGNmZjI5YjljODVmMmIyMDlkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTWVkaWFTZXNzaW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFT
ZXNzaW9uLmgKQEAgLTM2LDcgKzM2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgSFRN
TE1lZGlhRWxlbWVudDsKIGNsYXNzIFNvdXJjZUJ1ZmZlcjsKIAotY2xhc3MgSFRNTE1lZGlhU2Vz
c2lvbiA6IHB1YmxpYyBNZWRpYVNlc3Npb24geworY2xhc3MgSFRNTE1lZGlhU2Vzc2lvbiBmaW5h
bCA6IHB1YmxpYyBNZWRpYVNlc3Npb24gewogcHVibGljOgogICAgIHN0YXRpYyBzdGQ6OnVuaXF1
ZV9wdHI8SFRNTE1lZGlhU2Vzc2lvbj4gY3JlYXRlKE1lZGlhU2Vzc2lvbkNsaWVudCYpOwogCkBA
IC04OCw3ICs4OCw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIHZpcnR1YWwg
Ym9vbCByZXF1aXJlc1BsYXliYWNrVGFyZ2V0Um91dGVNb25pdG9yaW5nKCkgY29uc3QgeyByZXR1
cm4gbV9oYXNQbGF5YmFja1RhcmdldEF2YWlsYWJpbGl0eUxpc3RlbmVyczsgfQorICAgIHZpcnR1
YWwgYm9vbCByZXF1aXJlc1BsYXliYWNrVGFyZ2V0Um91dGVNb25pdG9yaW5nKCkgY29uc3Qgb3Zl
cnJpZGUgeyByZXR1cm4gbV9oYXNQbGF5YmFja1RhcmdldEF2YWlsYWJpbGl0eUxpc3RlbmVyczsg
fQogCiAgICAgQmVoYXZpb3JSZXN0cmljdGlvbnMgbV9yZXN0cmljdGlvbnM7CiAgICAgYm9vbCBt
X2hhc1BsYXliYWNrVGFyZ2V0QXZhaWxhYmlsaXR5TGlzdGVuZXJzOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWV0ZXJFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxNZXRlckVsZW1lbnQuaAppbmRleCBhMjhjYjQ0OTZlNmIwZTBhNmZlYjk0OWE2NDUxMTYy
MmVlMzAwZTU3Li5hOWJjOTQ2MjA4OWM0YmEyOTBkOTVhZThiNjRlNzFmYmM3NjhjNTE4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZXRlckVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxNZXRlckVsZW1lbnQuaApAQCAtNzAsNyArNzAsNiBAQCBwcml2
YXRlOgogCiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRMYWJlbHMoKSBjb25zdCBvdmVycmlkZSB7
IHJldHVybiB0cnVlOyB9CiAKLSAgICB2aXJ0dWFsIGJvb2wgcmVjYWxjV2lsbFZhbGlkYXRlKCkg
Y29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIFJlbmRlclB0cjxSZW5kZXJFbGVt
ZW50PiBjcmVhdGVFbGVtZW50UmVuZGVyZXIoUGFzc1JlZjxSZW5kZXJTdHlsZT4pIG92ZXJyaWRl
OwogICAgIHZpcnR1YWwgYm9vbCBjaGlsZFNob3VsZENyZWF0ZVJlbmRlcmVyKGNvbnN0IE5vZGUm
KSBjb25zdCBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTmFtZUNvbGxlY3Rpb24uaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE5hbWVDb2xsZWN0aW9uLmgKaW5kZXggMDkxNGM1NDNjYjI4ZmFiNGU2ZGI1
NTVjNDQ0NTc4OWZkMDk4OTAxMy4uMjlmNjQ3ZmZlNWVkNDI2Y2NiOGQ3MzY0NzI3MzcxOGNjNmYy
ZWFlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTmFtZUNvbGxlY3Rpb24u
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxOYW1lQ29sbGVjdGlvbi5oCkBAIC0zMyw3
ICszMyw3IEBAIGNsYXNzIERvY3VtZW50OwogCiBjbGFzcyBIVE1MTmFtZUNvbGxlY3Rpb24gOiBw
dWJsaWMgSFRNTENvbGxlY3Rpb24gewogcHVibGljOgotICAgIH5IVE1MTmFtZUNvbGxlY3Rpb24o
KTsKKyAgICB2aXJ0dWFsIH5IVE1MTmFtZUNvbGxlY3Rpb24oKTsKIAogICAgIERvY3VtZW50JiBk
b2N1bWVudCgpIHsgcmV0dXJuIGRvd25jYXN0PERvY3VtZW50Pihvd25lck5vZGUoKSk7IH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5oCmluZGV4IDdiNGJiYmY5NzAzOGQy
Yzk2MmQzYzRjOTE5Y2NkMDVmNzI5N2U1YTYuLjAzYTZiYmVjY2I4M2E1MTlkMjAwNTNlYjk2N2M0
M2U4YjZkMGQyN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9iamVjdEVs
ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmgKQEAg
LTg4LDkgKzg4LDkgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgZGVyZWZGb3JtQXNzb2Np
YXRlZEVsZW1lbnQoKSBvdmVycmlkZSB7IGRlcmVmKCk7IH0KICAgICB2aXJ0dWFsIEhUTUxGb3Jt
RWxlbWVudCogdmlydHVhbEZvcm0oKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgRm9y
bU5hbWVkSXRlbSogYXNGb3JtTmFtZWRJdGVtKCkgb3ZlcnJpZGUgZmluYWwgeyByZXR1cm4gdGhp
czsgfQotICAgIHZpcnR1YWwgSFRNTE9iamVjdEVsZW1lbnQmIGFzSFRNTEVsZW1lbnQoKSBvdmVy
cmlkZSBmaW5hbCB7IHJldHVybiAqdGhpczsgfQotICAgIHZpcnR1YWwgY29uc3QgSFRNTE9iamVj
dEVsZW1lbnQmIGFzSFRNTEVsZW1lbnQoKSBjb25zdCBvdmVycmlkZSBmaW5hbCB7IHJldHVybiAq
dGhpczsgfQorICAgIHZpcnR1YWwgRm9ybU5hbWVkSXRlbSogYXNGb3JtTmFtZWRJdGVtKCkgb3Zl
cnJpZGUgeyByZXR1cm4gdGhpczsgfQorICAgIHZpcnR1YWwgSFRNTE9iamVjdEVsZW1lbnQmIGFz
SFRNTEVsZW1lbnQoKSBvdmVycmlkZSB7IHJldHVybiAqdGhpczsgfQorICAgIHZpcnR1YWwgY29u
c3QgSFRNTE9iamVjdEVsZW1lbnQmIGFzSFRNTEVsZW1lbnQoKSBjb25zdCBvdmVycmlkZSB7IHJl
dHVybiAqdGhpczsgfQogCiAgICAgdmlydHVhbCBib29sIGlzRm9ybUNvbnRyb2xFbGVtZW50KCkg
Y29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MT3B0R3JvdXBFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxPcHRHcm91cEVsZW1lbnQuaAppbmRleCA1N2EzNzQyOTc1YzNkYjEzNjdmZjgyODgyYTMwNzY0
MDM2MmY5MDRjLi5jYjlkOWMwNjVmZTc5OGMwM2RlNzI0ODBhN2NiMzI0OTVmNDRhZGY4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaApAQCAtNDIsNyArNDIsNyBA
QCBwdWJsaWM6CiBwcml2YXRlOgogICAgIEhUTUxPcHRHcm91cEVsZW1lbnQoY29uc3QgUXVhbGlm
aWVkTmFtZSYsIERvY3VtZW50Jik7CiAKLSAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYg
Zm9ybUNvbnRyb2xUeXBlKCkgY29uc3Q7CisgICAgY29uc3QgQXRvbWljU3RyaW5nJiBmb3JtQ29u
dHJvbFR5cGUoKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgaXNGb2N1c2FibGUoKSBjb25zdCBv
dmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVk
TmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgYm9vbCBy
ZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgb3ZlcnJpZGUgeyByZXR1cm4gZmFs
c2U7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuaAppbmRleCA2NTRlZjEx
ODM4MDhjNDkzNjk0MGU4YjYxZWUzZTM5NDliNDhhZGQwLi45YTZjMjBiMTZkMDA4NDAyNWYwOGQw
MjczODM1OGViZDQ0ODBiNTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxP
cHRpb25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0aW9uRWxlbWVu
dC5oCkBAIC0zOSw3ICszOSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1M
T3B0aW9uRWxlbWVudD4gY3JlYXRlRm9ySlNDb25zdHJ1Y3RvcihEb2N1bWVudCYsIGNvbnN0IFN0
cmluZyYgZGF0YSwgY29uc3QgU3RyaW5nJiB2YWx1ZSwKICAgICAgICBib29sIGRlZmF1bHRTZWxl
Y3RlZCwgYm9vbCBzZWxlY3RlZCwgRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgV0VCQ09SRV9FWFBP
UlQgdmlydHVhbCBTdHJpbmcgdGV4dCgpIGNvbnN0OworICAgIFdFQkNPUkVfRVhQT1JUIFN0cmlu
ZyB0ZXh0KCkgY29uc3Q7CiAgICAgdm9pZCBzZXRUZXh0KGNvbnN0IFN0cmluZyYsIEV4Y2VwdGlv
bkNvZGUmKTsKIAogICAgIGludCBpbmRleCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MU3BhbkVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNw
YW5FbGVtZW50LmgKaW5kZXggMmU3MGJmOWFmMmU1OTY1N2I3OGMxOGM0MGVmZGJkY2I0Mjc3YmE0
ZS4uNTczMzIzMzkyNThmNjNhYmQ4ODY2MzczOGY1MzdlZjQ3NDU3MjVjZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3BhbkVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxTcGFuRWxlbWVudC5oCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotY2xhc3MgSFRNTFNwYW5FbGVtZW50IDogcHVibGljIEhUTUxFbGVtZW50IHsK
K2NsYXNzIEhUTUxTcGFuRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7CiBwdWJs
aWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8SFRNTFNwYW5FbGVtZW50PiBjcmVhdGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Jik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFN0eWxlRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3R5bGVF
bGVtZW50LmgKaW5kZXggOTFmMGI3Y2Q1OGQ0NjY4OGJlY2Y2NGY0NzAwNTAwMDQzZTIzYjg3Ni4u
NGI1NTJlMDMyZDE1OTg2MTVkMDg3NjQ2MDM1ZjkxNDRjZTY3MTBiOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3R5bGVFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MU3R5bGVFbGVtZW50LmgKQEAgLTU4LDcgKzU4LDcgQEAgcHJpdmF0ZToKIAogICAg
IHZpcnR1YWwgdm9pZCBmaW5pc2hQYXJzaW5nQ2hpbGRyZW4oKSBvdmVycmlkZTsKIAotICAgIHZp
cnR1YWwgYm9vbCBpc0xvYWRpbmcoKSBjb25zdCB7IHJldHVybiBtX3N0eWxlU2hlZXRPd25lci5p
c0xvYWRpbmcoKTsgfQorICAgIGJvb2wgaXNMb2FkaW5nKCkgY29uc3QgeyByZXR1cm4gbV9zdHls
ZVNoZWV0T3duZXIuaXNMb2FkaW5nKCk7IH0KICAgICB2aXJ0dWFsIGJvb2wgc2hlZXRMb2FkZWQo
KSBvdmVycmlkZSB7IHJldHVybiBtX3N0eWxlU2hlZXRPd25lci5zaGVldExvYWRlZChkb2N1bWVu
dCgpKTsgfQogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlMb2FkZWRTaGVldEFuZEFsbENyaXRpY2Fs
U3VicmVzb3VyY2VzKGJvb2wgZXJyb3JPY2N1cnJlZCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2
b2lkIHN0YXJ0TG9hZGluZ0R5bmFtaWNTaGVldCgpIG92ZXJyaWRlIHsgbV9zdHlsZVNoZWV0T3du
ZXIuc3RhcnRMb2FkaW5nRHluYW1pY1NoZWV0KGRvY3VtZW50KCkpOyB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTdW1tYXJ5RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxTdW1tYXJ5RWxlbWVudC5jcHAKaW5kZXggNzUzYjQxY2UxOTBkODA3YzE2ZTE1
MWViOTljZDYzNDdiZTcxODRlOS4uZmIzOTczYTllNjk0NTI2YjBhNjQ3OTFjODJlYTljN2QyNGM1
ZDU4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3VtbWFyeUVsZW1lbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFN1bW1hcnlFbGVtZW50LmNwcApAQCAt
MzYsNyArMzYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBIVE1M
TmFtZXM7CiAKLWNsYXNzIFN1bW1hcnlDb250ZW50RWxlbWVudCA6IHB1YmxpYyBJbnNlcnRpb25Q
b2ludCB7CitjbGFzcyBTdW1tYXJ5Q29udGVudEVsZW1lbnQgZmluYWwgOiBwdWJsaWMgSW5zZXJ0
aW9uUG9pbnQgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFN1bW1hcnlDb250ZW50
RWxlbWVudD4gY3JlYXRlKERvY3VtZW50Jik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFN1bW1hcnlFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTdW1t
YXJ5RWxlbWVudC5oCmluZGV4IGJjMjI4NDIwOTkyN2U2NDkzZmNkMmRkYjIyNGZhMGZiYjdkOTI5
MjUuLjBkYjhhYmU4Y2RjZTNkOTc5ZTFkNzUwNGM4ZjRmOTRmZWVhMWQ5MmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFN1bW1hcnlFbGVtZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MU3VtbWFyeUVsZW1lbnQuaApAQCAtNDMsNyArNDMsNyBAQCBwcml2YXRl
OgogICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRVc2VyQWdlbnRTaGFkb3dSb290KFNoYWRvd1Jvb3Qq
KSBvdmVycmlkZTsKICAgICBIVE1MRGV0YWlsc0VsZW1lbnQqIGRldGFpbHNFbGVtZW50KCkgY29u
c3Q7CiAKLSAgICBib29sIHN1cHBvcnRzRm9jdXMoKSBjb25zdCBvdmVycmlkZTsKKyAgICB2aXJ0
dWFsIGJvb2wgc3VwcG9ydHNGb2N1cygpIGNvbnN0IG92ZXJyaWRlOwogfTsKIAogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVW5rbm93bkVsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFVua25vd25FbGVtZW50LmgKaW5kZXggMzMxNWU2OGVhMDA4NGNiNzI4
YTM2NDU2MDhhNWZhMGZjYzczNzhmNC4uYjRjNTkyNTY2Mzc5MDFhYTllZjkwNGFmNDgzZTc1OTVk
MDcwMjk4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVW5rbm93bkVsZW1l
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxVbmtub3duRWxlbWVudC5oCkBAIC00
MSwxMyArNDEsMTMgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEhUTUxV
bmtub3duRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkpOwogICAgIH0KIAotICAgIHZpcnR1YWwg
Ym9vbCBpc0hUTUxVbmtub3duRWxlbWVudCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7
IH0KLQogcHJpdmF0ZToKICAgICBIVE1MVW5rbm93bkVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFt
ZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3VtZW50KQogICAgICAgICA6IEhUTUxFbGVtZW50KHRh
Z05hbWUsIGRvY3VtZW50LCBDcmVhdGVIVE1MRWxlbWVudCkKICAgICB7CiAgICAgfQorCisgICAg
dmlydHVhbCBib29sIGlzSFRNTFVua25vd25FbGVtZW50KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1
cm4gdHJ1ZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlk
ZW9FbGVtZW50LmgKaW5kZXggOWM4MGU0YjBhNjY2ZWQ1N2RiZGIwNzU1NDZmNjZjY2U4ZDQ5ZTNh
ZS4uN2FmMzc0MmUxNWIyZmVjZjJlNDc1OWU4MzBjODhkMDU2NDBkNjRkZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmgKQEAgLTkyLDcgKzkyLDcgQEAgcHJpdmF0ZToKICAg
ICB2aXJ0dWFsIGJvb2wgaXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJikgY29uc3Qgb3Zl
cnJpZGU7CiAgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGltYWdlU291cmNlVVJMKCkg
Y29uc3Qgb3ZlcnJpZGU7CiAKLSAgICB2aXJ0dWFsIGJvb2wgaGFzQXZhaWxhYmxlVmlkZW9GcmFt
ZSgpIGNvbnN0OworICAgIGJvb2wgaGFzQXZhaWxhYmxlVmlkZW9GcmFtZSgpIGNvbnN0OwogICAg
IHZpcnR1YWwgdm9pZCB1cGRhdGVEaXNwbGF5U3RhdGUoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFs
IHZvaWQgZGlkTW92ZVRvTmV3RG9jdW1lbnQoRG9jdW1lbnQqIG9sZERvY3VtZW50KSBvdmVycmlk
ZTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0RGlzcGxheU1vZGUoRGlzcGxheU1vZGUpIG92ZXJyaWRl
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmgKaW5kZXggMjkyMDhlMGFkOGM4MWRi
ODQ0NzdkMjY4NTQxNTVjZGY1ZTA4MDQ0ZC4uY2QwMWUwMDA2ZmYwZGUwYjMzNDdlMWQ5YmFjMWEz
N2FiYTMyZDMyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5
cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5oCkBAIC0zNSw3
ICszNSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgSGlkZGVuSW5wdXRUeXBl
IDogcHVibGljIElucHV0VHlwZSB7CitjbGFzcyBIaWRkZW5JbnB1dFR5cGUgZmluYWwgOiBwdWJs
aWMgSW5wdXRUeXBlIHsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBIaWRkZW5JbnB1dFR5cGUoSFRN
TElucHV0RWxlbWVudCYgZWxlbWVudCkgOiBJbnB1dFR5cGUoZWxlbWVudCkgeyB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VJbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSW1hZ2VJbnB1dFR5cGUuaAppbmRleCBhM2MyZjg1NDlmNmQyOWFiYTM5YzI3Mzc4
Y2NkOWJhMjMxZWY2MTM4Li5lNmVmNWM1NzMxZWRjZTQxOWEwOTY2Mzc0ZWM2MzMxZGE1MGVjZGU0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ltYWdlSW5wdXRUeXBlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9JbWFnZUlucHV0VHlwZS5oCkBAIC0zOCw3ICszOCw3IEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgSW1hZ2VJbnB1dFR5cGUgOiBwdWJsaWMgQmFz
ZUJ1dHRvbklucHV0VHlwZSB7CitjbGFzcyBJbWFnZUlucHV0VHlwZSBmaW5hbCA6IHB1YmxpYyBC
YXNlQnV0dG9uSW5wdXRUeXBlIHsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBJbWFnZUlucHV0VHlw
ZShIVE1MSW5wdXRFbGVtZW50Jik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
TWVkaWFLZXlFdmVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUtleUV2ZW50LmgKaW5k
ZXggYTYxZjMxZjNkN2Y4NTk2ZjQ2NDBhOWI5OTEwOGY4OThjODVlZjM1Yy4uODBhZWYwYzA0YTAx
NWZiZTAyYzg3MGI3MjUwYWRmZjJlODIzNzg3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9NZWRpYUtleUV2ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUtleUV2
ZW50LmgKQEAgLTQ1LDcgKzQ1LDcgQEAgc3RydWN0IE1lZGlhS2V5RXZlbnRJbml0IDogcHVibGlj
IEV2ZW50SW5pdCB7CiAgICAgdW5zaWduZWQgc2hvcnQgc3lzdGVtQ29kZTsKIH07CiAKLWNsYXNz
IE1lZGlhS2V5RXZlbnQgOiBwdWJsaWMgRXZlbnQgeworY2xhc3MgTWVkaWFLZXlFdmVudCBmaW5h
bCA6IHB1YmxpYyBFdmVudCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+TWVkaWFLZXlFdmVudCgp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01vbnRoSW5wdXRUeXBlLmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL01vbnRoSW5wdXRUeXBlLmgKaW5kZXggY2I4NjlmYWVjNWJjNGJk
ODBlZTRkNTIwMmQ1MDJhNzQ1NDc3YWFhZi4uYTRlMjVhY2QxZjliZmJlMmM2NjY5NzA4NzFhOTA2
Nzg1OTBlN2JiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9Nb250aElucHV0VHlw
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTW9udGhJbnB1dFR5cGUuaApAQCAtMzYsNyAr
MzYsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIE1vbnRoSW5wdXRUeXBlIDog
cHVibGljIEJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlIHsKK2NsYXNzIE1vbnRo
SW5wdXRUeXBlIGZpbmFsIDogcHVibGljIEJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRU
eXBlIHsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBNb250aElucHV0VHlwZShIVE1MSW5wdXRFbGVt
ZW50JiBlbGVtZW50KSA6IEJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlKGVsZW1l
bnQpIHsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJlcklucHV0VHlw
ZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuaAppbmRleCBkMzliOTFm
YjVhN2NjNjVkZGE0N2VmZTU0MzNiOTc4N2ZjNTdmMTYzLi45ZGU5ZmI1YWFkYTM3OWQ2MTQ1MTE1
MjUwNTI5OGRmY2I1OTlhNTY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL051bWJl
cklucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTnVtYmVySW5wdXRUeXBlLmgK
QEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBOdW1iZXJJ
bnB1dFR5cGUgOiBwdWJsaWMgVGV4dEZpZWxkSW5wdXRUeXBlIHsKK2NsYXNzIE51bWJlcklucHV0
VHlwZSBmaW5hbCA6IHB1YmxpYyBUZXh0RmllbGRJbnB1dFR5cGUgewogcHVibGljOgogICAgIGV4
cGxpY2l0IE51bWJlcklucHV0VHlwZShIVE1MSW5wdXRFbGVtZW50JiBlbGVtZW50KSA6IFRleHRG
aWVsZElucHV0VHlwZShlbGVtZW50KSB7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9QYXNzd29yZElucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9QYXNzd29yZElu
cHV0VHlwZS5oCmluZGV4IGQxZTI3MDE1ZTliMjcxYzRkNDVmY2UwZDFkMzkzMmI2ZWU2Yjc3OTIu
LmY4MDQ2ZGIxZGVhOGJiNTI0ZjBiMTc5YjcyODgxYjYyYjEyMjNlYzAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvUGFzc3dvcmRJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL1Bhc3N3b3JkSW5wdXRUeXBlLmgKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCi1jbGFzcyBQYXNzd29yZElucHV0VHlwZSA6IHB1YmxpYyBCYXNlVGV4dElu
cHV0VHlwZSB7CitjbGFzcyBQYXNzd29yZElucHV0VHlwZSBmaW5hbCA6IHB1YmxpYyBCYXNlVGV4
dElucHV0VHlwZSB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgUGFzc3dvcmRJbnB1dFR5cGUoSFRN
TElucHV0RWxlbWVudCYgZWxlbWVudCkgOiBCYXNlVGV4dElucHV0VHlwZShlbGVtZW50KSB7IH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9QdWJsaWNVUkxNYW5hZ2VyLmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL1B1YmxpY1VSTE1hbmFnZXIuaAppbmRleCA2YzUxMjQ5N2NkNGU2
NDRlOTRmMWM1NDhhZmRhMjdiZWZhZjBiZThhLi5hNjI3ZjU2NzE2MWY3NWMxZjA3YzhiMWQ0NDNl
ZmUxOTA3MDk2OTcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1B1YmxpY1VSTE1h
bmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1B1YmxpY1VSTE1hbmFnZXIuaApAQCAt
NDAsNyArNDAsNyBAQCBjbGFzcyBTZWN1cml0eU9yaWdpbjsKIGNsYXNzIFVSTFJlZ2lzdHJ5Owog
Y2xhc3MgVVJMUmVnaXN0cmFibGU7CiAKLWNsYXNzIFB1YmxpY1VSTE1hbmFnZXIgOiBwdWJsaWMg
QWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIFB1YmxpY1VSTE1hbmFnZXIgZmluYWwgOiBwdWJsaWMg
QWN0aXZlRE9NT2JqZWN0IHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoK
ICAgICBleHBsaWNpdCBQdWJsaWNVUkxNYW5hZ2VyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFkaW9JbnB1dFR5cGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvUmFkaW9JbnB1dFR5cGUuaAppbmRleCAzOTEwNDc0N2ZmMmQ3M2MzODBk
NzE0MWNjMTYyNzJkZDVlNDUxOTFlLi43OTZhMmYwODgyNTg4NzQ2ZDQ5OGFlODdmMTQ2ZWRjNGFh
YTg3NzY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhZGlvSW5wdXRUeXBlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYWRpb0lucHV0VHlwZS5oCkBAIC0zNSw3ICszNSw3
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgUmFkaW9JbnB1dFR5cGUgOiBwdWJs
aWMgQmFzZUNoZWNrYWJsZUlucHV0VHlwZSB7CitjbGFzcyBSYWRpb0lucHV0VHlwZSBmaW5hbCA6
IHB1YmxpYyBCYXNlQ2hlY2thYmxlSW5wdXRUeXBlIHsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBS
YWRpb0lucHV0VHlwZShIVE1MSW5wdXRFbGVtZW50JiBlbGVtZW50KSA6IEJhc2VDaGVja2FibGVJ
bnB1dFR5cGUoZWxlbWVudCkgeyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
UmVzZXRJbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmVzZXRJbnB1dFR5cGUuaApp
bmRleCA3YzAyNjZiNWU1ZDU4ZmE2NDFlYjg2OGZiZTY5MTI1N2E4N2VjNGQ3Li4wNWUzNTM5NWU4
YmZjODJiOTY1ZTY2Y2VhNmJiMzg4OGM3MGJkMWZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL1Jlc2V0SW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SZXNldElu
cHV0VHlwZS5oCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xh
c3MgUmVzZXRJbnB1dFR5cGUgOiBwdWJsaWMgQmFzZUJ1dHRvbklucHV0VHlwZSB7CitjbGFzcyBS
ZXNldElucHV0VHlwZSBmaW5hbCA6IHB1YmxpYyBCYXNlQnV0dG9uSW5wdXRUeXBlIHsKIHB1Ymxp
YzoKICAgICBleHBsaWNpdCBSZXNldElucHV0VHlwZShIVE1MSW5wdXRFbGVtZW50JiBlbGVtZW50
KSA6IEJhc2VCdXR0b25JbnB1dFR5cGUoZWxlbWVudCkgeyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvU3VibWl0SW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1N1
Ym1pdElucHV0VHlwZS5oCmluZGV4IGM1ZGE1NTUxOGM3NTVkNmYxYTllOWY2YmViYTZkNzM3MGM1
NDllNGMuLjY4Zjc4YjY2MzZlNzMzNzNiM2E5M2YyNGYyY2VjNWE5MDQ4YjBlZTggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvU3VibWl0SW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9TdWJtaXRJbnB1dFR5cGUuaApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKLWNsYXNzIFN1Ym1pdElucHV0VHlwZSA6IHB1YmxpYyBCYXNlQnV0dG9u
SW5wdXRUeXBlIHsKK2NsYXNzIFN1Ym1pdElucHV0VHlwZSBmaW5hbCA6IHB1YmxpYyBCYXNlQnV0
dG9uSW5wdXRUeXBlIHsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBTdWJtaXRJbnB1dFR5cGUoSFRN
TElucHV0RWxlbWVudCYgZWxlbWVudCkgOiBCYXNlQnV0dG9uSW5wdXRUeXBlKGVsZW1lbnQpIHsg
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1RlbGVwaG9uZUlucHV0VHlwZS5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZWxlcGhvbmVJbnB1dFR5cGUuaAppbmRleCBjZGQ3YzJl
MGFhZTg3YzMyMDI3NjBiMWRhMzU0YzE5ZDI5YTlkZmZhLi5jNTY0NjcxNDYxODdjOGI0MzQ0MWQz
ODEyNTQ4MGVlZmExYmI2N2VjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1RlbGVw
aG9uZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGVsZXBob25lSW5wdXRU
eXBlLmgKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBU
ZWxlcGhvbmVJbnB1dFR5cGUgOiBwdWJsaWMgQmFzZVRleHRJbnB1dFR5cGUgeworY2xhc3MgVGVs
ZXBob25lSW5wdXRUeXBlIGZpbmFsIDogcHVibGljIEJhc2VUZXh0SW5wdXRUeXBlIHsKIHB1Ymxp
YzoKICAgICBleHBsaWNpdCBUZWxlcGhvbmVJbnB1dFR5cGUoSFRNTElucHV0RWxlbWVudCYgZWxl
bWVudCkgOiBCYXNlVGV4dElucHV0VHlwZShlbGVtZW50KSB7IH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9UZXh0SW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1Rl
eHRJbnB1dFR5cGUuaAppbmRleCBkNDE5ZThhNGU5ZDQ4NjRiMjdiZjIwNDk2M2U2N2Q5MGQyZWYz
YzE2Li5hYmM1ZjQ4YTgzNTY3OGZiYjgxZjg1NGZmY2ZhOTQyYWRkMjE5NTg1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL1RleHRJbnB1dFR5cGUuaApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKLWNsYXNzIFRleHRJbnB1dFR5cGUgOiBwdWJsaWMgQmFzZVRleHRJbnB1dFR5cGUg
eworY2xhc3MgVGV4dElucHV0VHlwZSBmaW5hbCA6IHB1YmxpYyBCYXNlVGV4dElucHV0VHlwZSB7
CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgVGV4dElucHV0VHlwZShIVE1MSW5wdXRFbGVtZW50JiBl
bGVtZW50KSA6IEJhc2VUZXh0SW5wdXRUeXBlKGVsZW1lbnQpIHsgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL1RpbWVJbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
VGltZUlucHV0VHlwZS5oCmluZGV4IDRiMWUwMWFmZDkyZDU5YzI2NzZlODgyY2I2ZjY1NmIxNzZh
ZTA4NjguLjFmMTQ2MmFmOTQ3YWEyODBhNDhmNWQxYjQzNWRlMmU2YzgzMTNiZGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGltZUlucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvVGltZUlucHV0VHlwZS5oCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotY2xhc3MgVGltZUlucHV0VHlwZSA6IHB1YmxpYyBCYXNlQ2hvb3Nlck9ubHlE
YXRlQW5kVGltZUlucHV0VHlwZSB7CitjbGFzcyBUaW1lSW5wdXRUeXBlIGZpbmFsIDogcHVibGlj
IEJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlIHsKIHB1YmxpYzoKICAgICBleHBs
aWNpdCBUaW1lSW5wdXRUeXBlKEhUTUxJbnB1dEVsZW1lbnQmKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9VUkxJbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVVJM
SW5wdXRUeXBlLmgKaW5kZXggZWFlM2NhZjMzMjAzMjkzOGQ3OGY1NzE2NzgxNjExMGRmYzczZWFi
OC4uNmI5Yjg2NDIzMGI5MDA4MTMzNzZmMzNkNGFhMDVkYWQ2NGVkZTNhNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9VUkxJbnB1dFR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL1VSTElucHV0VHlwZS5oCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgVVJMSW5wdXRUeXBlIDogcHVibGljIEJhc2VUZXh0SW5wdXRUeXBlIHsKK2Ns
YXNzIFVSTElucHV0VHlwZSBmaW5hbCA6IHB1YmxpYyBCYXNlVGV4dElucHV0VHlwZSB7CiBwdWJs
aWM6CiAgICAgZXhwbGljaXQgVVJMSW5wdXRUeXBlKEhUTUxJbnB1dEVsZW1lbnQmIGVsZW1lbnQp
IDogQmFzZVRleHRJbnB1dFR5cGUoZWxlbWVudCkgeyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvV2Vla0lucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9XZWVrSW5w
dXRUeXBlLmgKaW5kZXggM2RmZGRmZDIyMzNlOGZmN2ZiMTdhYmI3MWIxMTdhOGI2NmYwMjkzMy4u
NGVhNmM1NmNiMGYxZDE2MTQzNWZhMjU2NjRiZDIxMzIwMmE4ZGU1YiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9XZWVrSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9XZWVrSW5wdXRUeXBlLmgKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1jbGFzcyBXZWVrSW5wdXRUeXBlIDogcHVibGljIEJhc2VDaG9vc2VyT25seURhdGVBbmRU
aW1lSW5wdXRUeXBlIHsKK2NsYXNzIFdlZWtJbnB1dFR5cGUgZmluYWwgOiBwdWJsaWMgQmFzZUNo
b29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1dFR5cGUgewogcHVibGljOgogICAgIGV4cGxpY2l0IFdl
ZWtJbnB1dFR5cGUoSFRNTElucHV0RWxlbWVudCYgZWxlbWVudCkgOiBCYXNlQ2hvb3Nlck9ubHlE
YXRlQW5kVGltZUlucHV0VHlwZShlbGVtZW50KSB7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvQU5HTEVJbnN0YW5jZWRBcnJheXMuaCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL0FOR0xFSW5zdGFuY2VkQXJyYXlzLmgKaW5kZXggMjNiNGU2MjNmYzRlNDNh
ODlhYjNkNzk4NmZhZjIwNTgyYzU0YmI1Ny4uN2QwNDA4NjQyNWM4YzNjNWE3NzMyMDRiODQ3NDU5
OTJlOGViMWU2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQU5HTEVJ
bnN0YW5jZWRBcnJheXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9BTkdMRUlu
c3RhbmNlZEFycmF5cy5oCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
Y2xhc3MgV2ViR0xSZW5kZXJpbmdDb250ZXh0OwogCi1jbGFzcyBBTkdMRUluc3RhbmNlZEFycmF5
cyA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CitjbGFzcyBBTkdMRUluc3RhbmNlZEFycmF5cyBm
aW5hbCA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgQU5H
TEVJbnN0YW5jZWRBcnJheXMoV2ViR0xSZW5kZXJpbmdDb250ZXh0Kik7CiAgICAgdmlydHVhbCB+
QU5HTEVJbnN0YW5jZWRBcnJheXMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Y2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmgKaW5kZXggNGMyZmE2MzM1YjAzNTk2YWNj
YTczNTY2NDUxZmY0ODkxNjRkMzFhZS4uNmIyOWIyYzk3Yjk1YzAxNzJmOWVkYjM5MjQ4NDZkODcw
NzcwOTZiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVu
ZGVyaW5nQ29udGV4dDJELmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFz
UmVuZGVyaW5nQ29udGV4dDJELmgKQEAgLTU3LDcgKzU3LDcgQEAgY2xhc3MgVGV4dE1ldHJpY3M7
CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CiAKLWNsYXNzIENhbnZhc1JlbmRlcmluZ0Nv
bnRleHQyRCA6IHB1YmxpYyBDYW52YXNSZW5kZXJpbmdDb250ZXh0LCBwdWJsaWMgQ2FudmFzUGF0
aE1ldGhvZHMgeworY2xhc3MgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEIGZpbmFsIDogcHVibGlj
IENhbnZhc1JlbmRlcmluZ0NvbnRleHQsIHB1YmxpYyBDYW52YXNQYXRoTWV0aG9kcyB7CiBwdWJs
aWM6CiAgICAgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEKEhUTUxDYW52YXNFbGVtZW50KiwgYm9v
bCB1c2VzQ1NTQ29tcGF0aWJpbGl0eVBhcnNlTW9kZSwgYm9vbCB1c2VzRGFzaGJvYXJkQ29tcGF0
aWJpbGl0eU1vZGUpOwogICAgIHZpcnR1YWwgfkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCgpOwpA
QCAtMjM1LDcgKzIzNSw3IEBAIHByaXZhdGU6CiAgICAgICAgIExUUgogICAgIH07CiAKLSAgICBz
dHJ1Y3QgU3RhdGUgOiBGb250U2VsZWN0b3JDbGllbnQgeworICAgIHN0cnVjdCBTdGF0ZSBmaW5h
bCA6IEZvbnRTZWxlY3RvckNsaWVudCB7CiAgICAgICAgIFN0YXRlKCk7CiAgICAgICAgIHZpcnR1
YWwgflN0YXRlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0RP
TVBhdGguaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0RPTVBhdGguaAppbmRleCA2Yjhk
MzVmNDM3ZmJmY2M1NmRiNzJiZTA0MGZhYzQxMjRmZTZkMjFmLi42YWY4ZTM2NzhlODk3MjIxZTgy
YWNhZmE0ZDViOTUxMzc0NjI5ODlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9ET01QYXRoLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvRE9NUGF0aC5o
CkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRE9NUGF0
aCA6IHB1YmxpYyBSZWZDb3VudGVkPERPTVBhdGg+LCBwdWJsaWMgQ2FudmFzUGF0aE1ldGhvZHMg
eworY2xhc3MgRE9NUGF0aCBmaW5hbCA6IHB1YmxpYyBSZWZDb3VudGVkPERPTVBhdGg+LCBwdWJs
aWMgQ2FudmFzUGF0aE1ldGhvZHMgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVi
bGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPERPTVBhdGg+IGNyZWF0ZSgpIHsgcmV0dXJuIGFk
b3B0UmVmKG5ldyBET01QYXRoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvRVhUU2hhZGVyVGV4dHVyZUxPRC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
RVhUU2hhZGVyVGV4dHVyZUxPRC5oCmluZGV4IDg4ZDkxMWE3YjQ1MzIyMTk5ZWQ3OTkyNGU3ODlj
YTRmYjlmNjYwNWIuLjZjZGNmYjVjODQ1NmMwMjYzY2IyMmNmMTA3ZmE0YzhmNDZhYzAwODYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0VYVFNoYWRlclRleHR1cmVMT0Qu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9FWFRTaGFkZXJUZXh0dXJlTE9ELmgK
QEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBFWFRTaGFk
ZXJUZXh0dXJlTE9EIDogcHVibGljIFdlYkdMRXh0ZW5zaW9uIHsKK2NsYXNzIEVYVFNoYWRlclRl
eHR1cmVMT0QgZmluYWwgOiBwdWJsaWMgV2ViR0xFeHRlbnNpb24gewogcHVibGljOgogICAgIGV4
cGxpY2l0IEVYVFNoYWRlclRleHR1cmVMT0QoV2ViR0xSZW5kZXJpbmdDb250ZXh0Kik7CiAgICAg
dmlydHVhbCB+RVhUU2hhZGVyVGV4dHVyZUxPRCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvRVhUVGV4dHVyZUZpbHRlckFuaXNvdHJvcGljLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL2NhbnZhcy9FWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaAppbmRleCA4MzNj
ODFkNDQzNDQwOWZiYzMxNWFhYWJjYTQwZDJmYWRhN2NjNGIyLi5iMDQ0OTEwODk0ODI4MWIxMDQy
OTM3ZWE0NGE5MDQ1NjA1ZDkzNDRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9FWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9FWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaApAQCAtMzAsNyArMzAsNyBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIEVYVFRleHR1cmVGaWx0ZXJBbmlzb3Ry
b3BpYyA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CitjbGFzcyBFWFRUZXh0dXJlRmlsdGVyQW5p
c290cm9waWMgZmluYWwgOiBwdWJsaWMgV2ViR0xFeHRlbnNpb24gewogcHVibGljOgogICAgIGV4
cGxpY2l0IEVYVFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpYyhXZWJHTFJlbmRlcmluZ0NvbnRleHQq
KTsKICAgICB2aXJ0dWFsIH5FWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU0VsZW1lbnRJbmRleFVpbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU0VsZW1lbnRJbmRleFVpbnQuaAppbmRleCA2NGZk
NmM2NzEyYmY1N2IwYmE3YmQwN2EwMTYxNDY5YzA1NDI5ZDk3Li4wOGVlMTQ0MGFkOWU5OGUzZTI3
MDMxMDJhNjYxZTgzMmRjMWU5ODI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9PRVNFbGVtZW50SW5kZXhVaW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvT0VTRWxlbWVudEluZGV4VWludC5oCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotY2xhc3MgT0VTRWxlbWVudEluZGV4VWludCA6IHB1YmxpYyBXZWJHTEV4dGVu
c2lvbiB7CitjbGFzcyBPRVNFbGVtZW50SW5kZXhVaW50IGZpbmFsIDogcHVibGljIFdlYkdMRXh0
ZW5zaW9uIHsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBPRVNFbGVtZW50SW5kZXhVaW50KFdlYkdM
UmVuZGVyaW5nQ29udGV4dCopOwogICAgIHZpcnR1YWwgfk9FU0VsZW1lbnRJbmRleFVpbnQoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU1N0YW5kYXJkRGVyaXZh
dGl2ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU1N0YW5kYXJkRGVyaXZhdGl2
ZXMuaAppbmRleCBiMGE0MDFhMDMxZDFhOTQ4MjIyYmViNTVmZTJkZmVhMDY3YzM5OTY3Li4zYmVm
OGNhOTgzNTU1MTNlNDFlOGQxYjFiZjNkMzE5OGRiMDM2NTM3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9PRVNTdGFuZGFyZERlcml2YXRpdmVzLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvT0VTU3RhbmRhcmREZXJpdmF0aXZlcy5oCkBAIC0zMCw3ICsz
MCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgT0VTU3RhbmRhcmREZXJpdmF0
aXZlcyA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CitjbGFzcyBPRVNTdGFuZGFyZERlcml2YXRp
dmVzIGZpbmFsIDogcHVibGljIFdlYkdMRXh0ZW5zaW9uIHsKIHB1YmxpYzoKICAgICBleHBsaWNp
dCBPRVNTdGFuZGFyZERlcml2YXRpdmVzKFdlYkdMUmVuZGVyaW5nQ29udGV4dCopOwogICAgIHZp
cnR1YWwgfk9FU1N0YW5kYXJkRGVyaXZhdGl2ZXMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL09FU1RleHR1cmVGbG9hdC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvT0VTVGV4dHVyZUZsb2F0LmgKaW5kZXggZWU2Zjk1NjhkMDhhMDFlZGZmZGU1MGNjYzEw
NTlmMmNlODBiNDI0MC4uZGM2ZmJlMjM5ZDdiNjZhNzcwYzFiMGNjYWE5ZWJiNmVjYWQwZjAxZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvT0VTVGV4dHVyZUZsb2F0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvT0VTVGV4dHVyZUZsb2F0LmgKQEAgLTMw
LDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBPRVNUZXh0dXJlRmxv
YXQgOiBwdWJsaWMgV2ViR0xFeHRlbnNpb24geworY2xhc3MgT0VTVGV4dHVyZUZsb2F0IGZpbmFs
IDogcHVibGljIFdlYkdMRXh0ZW5zaW9uIHsKIHB1YmxpYzoKICAgICBPRVNUZXh0dXJlRmxvYXQo
V2ViR0xSZW5kZXJpbmdDb250ZXh0Kik7CiAgICAgdmlydHVhbCB+T0VTVGV4dHVyZUZsb2F0KCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9PRVNUZXh0dXJlRmxvYXRM
aW5lYXIuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU1RleHR1cmVGbG9hdExpbmVh
ci5oCmluZGV4IDAxNThmZjE0ODQxZmYyYzBkZjRmNDQyZThmYjRhMDI2Nzk2YzA4NzIuLjEwMTE3
ZTExYmM0MzIxMzE0M2I3MjQyZjRhNjBjZWU3MzY0YmRjNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL09FU1RleHR1cmVGbG9hdExpbmVhci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL09FU1RleHR1cmVGbG9hdExpbmVhci5oCkBAIC0zMCw3ICszMCw3
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgT0VTVGV4dHVyZUZsb2F0TGluZWFy
IDogcHVibGljIFdlYkdMRXh0ZW5zaW9uIHsKK2NsYXNzIE9FU1RleHR1cmVGbG9hdExpbmVhciBm
aW5hbCA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgT0VT
VGV4dHVyZUZsb2F0TGluZWFyKFdlYkdMUmVuZGVyaW5nQ29udGV4dCopOwogICAgIHZpcnR1YWwg
fk9FU1RleHR1cmVGbG9hdExpbmVhcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvT0VTVGV4dHVyZUhhbGZGbG9hdC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvT0VTVGV4dHVyZUhhbGZGbG9hdC5oCmluZGV4IGJiNDJiNWMzZTIwM2NkZGFjNTE4ZjdlNmM4
NWVjZGU0ZjY1ZmE3OWYuLjg2NDlkYWUzMTUwN2JlNDI0YzgxZjE4ZmM1NTFiYzg0NmJjOTg4N2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU1RleHR1cmVIYWxmRmxv
YXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9PRVNUZXh0dXJlSGFsZkZsb2F0
LmgKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBPRVNU
ZXh0dXJlSGFsZkZsb2F0IDogcHVibGljIFdlYkdMRXh0ZW5zaW9uIHsKK2NsYXNzIE9FU1RleHR1
cmVIYWxmRmxvYXQgZmluYWwgOiBwdWJsaWMgV2ViR0xFeHRlbnNpb24gewogcHVibGljOgogICAg
IE9FU1RleHR1cmVIYWxmRmxvYXQoV2ViR0xSZW5kZXJpbmdDb250ZXh0Kik7CiAgICAgdmlydHVh
bCB+T0VTVGV4dHVyZUhhbGZGbG9hdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvT0VTVGV4dHVyZUhhbGZGbG9hdExpbmVhci5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvT0VTVGV4dHVyZUhhbGZGbG9hdExpbmVhci5oCmluZGV4IGJiOTQ4NWQzM2RlN2Vj
YzE0NjIxZmRkMGQyMzdmMWFjYWExNTY2NDguLjliNmZlNGFiNDE4Y2NlMjZmZmE1ZTQ2ZDVmMTY0
M2JmYTg4NmEzZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU1Rl
eHR1cmVIYWxmRmxvYXRMaW5lYXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9P
RVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLmgKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCi1jbGFzcyBPRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyIDogcHVibGljIFdl
YkdMRXh0ZW5zaW9uIHsKK2NsYXNzIE9FU1RleHR1cmVIYWxmRmxvYXRMaW5lYXIgZmluYWwgOiBw
dWJsaWMgV2ViR0xFeHRlbnNpb24gewogcHVibGljOgogICAgIE9FU1RleHR1cmVIYWxmRmxvYXRM
aW5lYXIoV2ViR0xSZW5kZXJpbmdDb250ZXh0Kik7CiAgICAgdmlydHVhbCB+T0VTVGV4dHVyZUhh
bGZGbG9hdExpbmVhcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
T0VTVmVydGV4QXJyYXlPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU1Zl
cnRleEFycmF5T2JqZWN0LmgKaW5kZXggYWE0Y2QyOWZhYTJiNjdlNmQ4Yjk5M2M4NDM5YTQwNTE3
NDBlZGJhYy4uNjNlZTZhMWZhYjY1YzI5NTc2NWMyM2EyOTkwYjg2MGQzZDVlZGFjMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvT0VTVmVydGV4QXJyYXlPYmplY3QuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9PRVNWZXJ0ZXhBcnJheU9iamVjdC5oCkBA
IC0zNiw3ICszNiw3IEBAIGNsYXNzIFdlYkdMVmVydGV4QXJyYXlPYmplY3RPRVM7CiAKIHR5cGVk
ZWYgaW50IEV4Y2VwdGlvbkNvZGU7CiAKLWNsYXNzIE9FU1ZlcnRleEFycmF5T2JqZWN0IDogcHVi
bGljIFdlYkdMRXh0ZW5zaW9uIHsKK2NsYXNzIE9FU1ZlcnRleEFycmF5T2JqZWN0IGZpbmFsIDog
cHVibGljIFdlYkdMRXh0ZW5zaW9uIHsKIHB1YmxpYzoKICAgICBPRVNWZXJ0ZXhBcnJheU9iamVj
dChXZWJHTFJlbmRlcmluZ0NvbnRleHQqKTsKICAgICB2aXJ0dWFsIH5PRVNWZXJ0ZXhBcnJheU9i
amVjdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xCdWZm
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQnVmZmVyLmgKaW5kZXggM2E5
NjkyYjgyOWExOTg4ZWQxODgzNWViMWNhZTM2MjgzY2JlZDEzMS4uZDliZTg3Y2RkZjFjZTI5MzYw
OTcxMDQyZGY0NjFlZmZlYjEwNTVjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvV2ViR0xCdWZmZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TEJ1ZmZlci5oCkBAIC0zNyw3ICszNyw3IEBAIGNsYXNzIEFycmF5QnVmZmVyVmlldzsKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBXZWJHTEJ1ZmZlciA6IHB1YmxpYyBXZWJHTFNoYXJl
ZE9iamVjdCB7CitjbGFzcyBXZWJHTEJ1ZmZlciBmaW5hbCA6IHB1YmxpYyBXZWJHTFNoYXJlZE9i
amVjdCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+V2ViR0xCdWZmZXIoKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5o
CmluZGV4IDNmMTBjM2I0NDdhZWU3ZmVhYTZkZjU2MzhkNGY2NmYxNmM5YTcxZWQuLjZjZjY3MzM2
NmUxNjYyOTJlMmMyNDFmMWJiNTMxOWM2Yjg1OWM5ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmgKQEAgLTMyLDcg
KzMyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBXZWJHTFRleHR1cmU7CiAKLWNs
YXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMgOiBwdWJsaWMgV2ViR0xFeHRlbnNpb24gewor
Y2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQyBmaW5hbCA6IHB1YmxpYyBXZWJHTEV4dGVu
c2lvbiB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQyhX
ZWJHTFJlbmRlcmluZ0NvbnRleHQqKTsKICAgICB2aXJ0dWFsIH5XZWJHTENvbXByZXNzZWRUZXh0
dXJlQVRDKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTENv
bXByZXNzZWRUZXh0dXJlUFZSVEMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
Q29tcHJlc3NlZFRleHR1cmVQVlJUQy5oCmluZGV4IGI4ZTcyNzE5NGNiNmExYjgyMGNiNTdhZWEy
Mzk0Mjk5NjFmYjMxZTMuLjk5ZWRmNjA1NmE1ZGEwMTkxNWU3NWNjMTQ1NGUzZWYyMGY4YzQ4MDQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRl
eHR1cmVQVlJUQy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29tcHJl
c3NlZFRleHR1cmVQVlJUQy5oCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgV2ViR0xDb21wcmVzc2VkVGV4dHVyZVBWUlRDIDogcHVibGljIFdlYkdMRXh0
ZW5zaW9uIHsKK2NsYXNzIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQyBmaW5hbCA6IHB1Ymxp
YyBXZWJHTEV4dGVuc2lvbiB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZVBWUlRDKFdlYkdMUmVuZGVyaW5nQ29udGV4dCopOwogICAgIHZpcnR1YWwgfldlYkdM
Q29tcHJlc3NlZFRleHR1cmVQVlJUQygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmgKaW5kZXggYzkyNTU2MTUyMThl
ODZiZGQ0NDM1YTljY2IyMWI0ZTMxY2Q0NzFjYS4uZjVmNzY3ODU1MThjNmM1NTBkNzA4ZTQwMDcy
NDRjNzFmN2FjOWU1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9XZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5oCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogY2xhc3MgV2ViR0xUZXh0dXJlOwogCi1jbGFzcyBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlUzNUQyA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CitjbGFzcyBXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlUzNUQyBmaW5hbCA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CiBwdWJsaWM6
CiAgICAgZXhwbGljaXQgV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMoV2ViR0xSZW5kZXJpbmdD
b250ZXh0Kik7CiAgICAgdmlydHVhbCB+V2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29udGV4dEF0dHJpYnV0
ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29udGV4dEF0dHJpYnV0ZXMu
aAppbmRleCA1MzkxYTJiN2QwNTZkNzZiZDBkM2Y4ZThmMzZhOGRiZThiZDc3OWJiLi44ZDIyMzNj
NzMwNjhmODYyMmRjZjRmNGFjZDA3ZjQwYTJlNDA5ZGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL2NhbnZhcy9XZWJHTENvbnRleHRBdHRyaWJ1dGVzLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0QXR0cmlidXRlcy5oCkBAIC0zMyw3ICszMyw3
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgV2ViR0xDb250ZXh0QXR0cmlidXRl
cyA6IHB1YmxpYyBDYW52YXNDb250ZXh0QXR0cmlidXRlcyB7CitjbGFzcyBXZWJHTENvbnRleHRB
dHRyaWJ1dGVzIGZpbmFsIDogcHVibGljIENhbnZhc0NvbnRleHRBdHRyaWJ1dGVzIHsKICAgcHVi
bGljOgogICAgIHZpcnR1YWwgfldlYkdMQ29udGV4dEF0dHJpYnV0ZXMoKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0RXZlbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMQ29udGV4dEV2ZW50LmgKaW5kZXggZmExZWJmYmM4
MDc1NzZlYjdlY2Q0Mjc0NTEwZjZlODhiNzJkNzAyOC4uZDc1MjlmMDhlMmY4ZjJjMzlkZWYxZjBj
ODhiNjg3MjEyYzlhZjIyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0xDb250ZXh0RXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TENvbnRleHRFdmVudC5oCkBAIC0zNiw3ICszNiw3IEBAIHN0cnVjdCBXZWJHTENvbnRleHRFdmVu
dEluaXQgOiBwdWJsaWMgRXZlbnRJbml0IHsKICAgICBTdHJpbmcgc3RhdHVzTWVzc2FnZTsKIH07
CiAKLWNsYXNzIFdlYkdMQ29udGV4dEV2ZW50IDogcHVibGljIEV2ZW50IHsKK2NsYXNzIFdlYkdM
Q29udGV4dEV2ZW50IGZpbmFsIDogcHVibGljIEV2ZW50IHsKIHB1YmxpYzoKICAgICBzdGF0aWMg
UGFzc1JlZlB0cjxXZWJHTENvbnRleHRFdmVudD4gY3JlYXRlKCkKICAgICB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTERlYnVnUmVuZGVyZXJJbmZvLmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTERlYnVnUmVuZGVyZXJJbmZvLmgKaW5kZXgg
ZDVlNGYwZTM5Yjg0ZDVlYjFkMWU1YzY3ZWRjZmUwMmZkMDY1NDlmZS4uMTEzNmY2NGU2NDIwOWU3
MWNjMzI1NDgyNWFiM2RjNWUzNGRmODg2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMRGVidWdSZW5kZXJlckluZm8uaApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFdlYkdMRGVidWdSZW5kZXJlckluZm8gOiBwdWJs
aWMgV2ViR0xFeHRlbnNpb24geworY2xhc3MgV2ViR0xEZWJ1Z1JlbmRlcmVySW5mbyBmaW5hbCA6
IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CiBwdWJsaWM6CiAgICAgZW51bSBFbnVtVHlwZSB7CiAg
ICAgICAgIFVOTUFTS0VEX1ZFTkRPUl9XRUJHTCA9IDB4OTI0NSwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRGVidWdTaGFkZXJzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTERlYnVnU2hhZGVycy5oCmluZGV4IGJmOTI0MzA2ZDFmMGIyMTIx
MGUxZjgwMzgyY2IyNTE2ODI3MTM1ZGEuLjViMDNmYmZmNzExYWJmYzQyNzQyYzkzZWU4NWEzMTg5
ZTlhZTRjMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRGVi
dWdTaGFkZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xEZWJ1Z1No
YWRlcnMuaApAQCAtMzQsNyArMzQsNyBAQCBjbGFzcyBXZWJHTFNoYWRlcjsKIAogdHlwZWRlZiBp
bnQgRXhjZXB0aW9uQ29kZTsKIAotY2xhc3MgV2ViR0xEZWJ1Z1NoYWRlcnMgOiBwdWJsaWMgV2Vi
R0xFeHRlbnNpb24geworY2xhc3MgV2ViR0xEZWJ1Z1NoYWRlcnMgZmluYWwgOiBwdWJsaWMgV2Vi
R0xFeHRlbnNpb24gewogcHVibGljOgogICAgIGV4cGxpY2l0IFdlYkdMRGVidWdTaGFkZXJzKFdl
YkdMUmVuZGVyaW5nQ29udGV4dCopOwogICAgIHZpcnR1YWwgfldlYkdMRGVidWdTaGFkZXJzKCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTERlcHRoVGV4dHVy
ZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xEZXB0aFRleHR1cmUuaAppbmRl
eCA3MjcxMWIwMTNhNWY5MzgzNzhkYWE2ZTc5ZjU2NjQ3N2RjZDUzMDYyLi5lMmFmZjMzNDdjMTUy
MWYxNDI2MDQ4OTFhNzAzZTFlYjI2MGViZThhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9XZWJHTERlcHRoVGV4dHVyZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Y2FudmFzL1dlYkdMRGVwdGhUZXh0dXJlLmgKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCi1jbGFzcyBXZWJHTERlcHRoVGV4dHVyZSA6IHB1YmxpYyBXZWJHTEV4dGVu
c2lvbiB7CitjbGFzcyBXZWJHTERlcHRoVGV4dHVyZSBmaW5hbCA6IHB1YmxpYyBXZWJHTEV4dGVu
c2lvbiB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgV2ViR0xEZXB0aFRleHR1cmUoV2ViR0xSZW5k
ZXJpbmdDb250ZXh0Kik7CiAgICAgdmlydHVhbCB+V2ViR0xEZXB0aFRleHR1cmUoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRHJhd0J1ZmZlcnMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRHJhd0J1ZmZlcnMuaAppbmRleCAxZTE4MTVj
OGVlN2MyMWY2YzIyMDg4MzdjYTA2NTc5YzI4M2ZjNTVkLi5hMmJlZDQ1NTIwZWJmNmVlZTM1OWQ4
NTk3N2UxYjRlZTdkOTUwMmRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9XZWJHTERyYXdCdWZmZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2Vi
R0xEcmF3QnVmZmVycy5oCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotY2xhc3MgV2ViR0xEcmF3QnVmZmVycyA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CitjbGFz
cyBXZWJHTERyYXdCdWZmZXJzIGZpbmFsIDogcHVibGljIFdlYkdMRXh0ZW5zaW9uIHsKIHB1Ymxp
YzoKICAgICBleHBsaWNpdCBXZWJHTERyYXdCdWZmZXJzKFdlYkdMUmVuZGVyaW5nQ29udGV4dCop
OwogICAgIHZpcnR1YWwgfldlYkdMRHJhd0J1ZmZlcnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIuaAppbmRleCAxYTM2YThiNjc5ZDMyNThiYjM3MmNj
YmI4NGZjZTJmYmVlNDg3ZTdjLi5lNzUwMWVmY2NkYmE0YmY1YmRhYjIzZDkyM2RiZTUxNjM0YTJi
YTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEZyYW1lYnVm
ZmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xGcmFtZWJ1ZmZlci5o
CkBAIC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIFdlYkdMUmVuZGVy
YnVmZmVyOwogY2xhc3MgV2ViR0xUZXh0dXJlOwogCi1jbGFzcyBXZWJHTEZyYW1lYnVmZmVyIDog
cHVibGljIFdlYkdMQ29udGV4dE9iamVjdCB7CitjbGFzcyBXZWJHTEZyYW1lYnVmZmVyIGZpbmFs
IDogcHVibGljIFdlYkdMQ29udGV4dE9iamVjdCB7CiBwdWJsaWM6CiAgICAgY2xhc3MgV2ViR0xB
dHRhY2htZW50IDogcHVibGljIFJlZkNvdW50ZWQ8V2ViR0xBdHRhY2htZW50PiB7CiAgICAgcHVi
bGljOgpAQCAtMTA2LDggKzEwNiw2IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZvaWQgZGVs
ZXRlT2JqZWN0SW1wbChHcmFwaGljc0NvbnRleHQzRCosIFBsYXRmb3JtM0RPYmplY3QpIG92ZXJy
aWRlOwogCiBwcml2YXRlOgotICAgIHZpcnR1YWwgYm9vbCBpc0ZyYW1lYnVmZmVyKCkgY29uc3Qg
eyByZXR1cm4gdHJ1ZTsgfQotCiAgICAgV2ViR0xBdHRhY2htZW50KiBnZXRBdHRhY2htZW50KEdD
M0RlbnVtKSBjb25zdDsKIAogICAgIC8vIFJldHVybiBmYWxzZSBpZiBmcmFtZWJ1ZmZlciBpcyBp
bmNvbXBsZXRlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xM
b3NlQ29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xMb3NlQ29udGV4
dC5oCmluZGV4IGNmYzM4MTRjMzcxZjA4NmM5Njc1NDc3ZWI1M2U0MDYxOWU5OWEzZGIuLjY1OTQw
OWFkZWJiZWI3MDNhNWUzOGEyYTk5OWUyZWMxMjk3MGMxMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMTG9zZUNvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTExvc2VDb250ZXh0LmgKQEAgLTMyLDcgKzMyLDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBjbGFzcyBXZWJHTFJlbmRlcmluZ0NvbnRleHQ7CiAKLWNsYXNzIFdl
YkdMTG9zZUNvbnRleHQgOiBwdWJsaWMgV2ViR0xFeHRlbnNpb24geworY2xhc3MgV2ViR0xMb3Nl
Q29udGV4dCBmaW5hbCA6IHB1YmxpYyBXZWJHTEV4dGVuc2lvbiB7CiBwdWJsaWM6CiAgICAgZXhw
bGljaXQgV2ViR0xMb3NlQ29udGV4dChXZWJHTFJlbmRlcmluZ0NvbnRleHQqKTsKICAgICB2aXJ0
dWFsIH5XZWJHTExvc2VDb250ZXh0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L2NhbnZhcy9XZWJHTFByb2dyYW0uaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
UHJvZ3JhbS5oCmluZGV4IDY1NDlkZGRmOWJlYmUwZGIxODc4NjVmYTg1NTUzMjhhODAyNDA3NzMu
LjkwYzUwODA0YzUwZjZiOTRhNDZmZDNiNDUxODM0OGY3OGMyZTg1MjIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUHJvZ3JhbS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1dlYkdMUHJvZ3JhbS5oCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgV2ViR0xQcm9ncmFtIDogcHVibGljIFdlYkdMU2hhcmVk
T2JqZWN0IHsKK2NsYXNzIFdlYkdMUHJvZ3JhbSBmaW5hbCA6IHB1YmxpYyBXZWJHTFNoYXJlZE9i
amVjdCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+V2ViR0xQcm9ncmFtKCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyYnVmZmVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmJ1ZmZlci5oCmluZGV4IGY0ZjNmNWFk
NTYxMDhlNWViYmZkN2NlNzAzMmI1YWY3ZjkyMjRiNjUuLmQ4NTBjYjYxM2E4OGQ2NDZkODAyYjgz
ZTQ2YTQ3YTQxMmZkYmY1YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFz
L1dlYkdMUmVuZGVyYnVmZmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2Vi
R0xSZW5kZXJidWZmZXIuaApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLWNsYXNzIFdlYkdMUmVuZGVyYnVmZmVyIDogcHVibGljIFdlYkdMU2hhcmVkT2JqZWN0IHsK
K2NsYXNzIFdlYkdMUmVuZGVyYnVmZmVyIGZpbmFsIDogcHVibGljIFdlYkdMU2hhcmVkT2JqZWN0
IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5XZWJHTFJlbmRlcmJ1ZmZlcigpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5oCmluZGV4
IDM0MDk4MGM4ODk2NGQ3MTA4MjA0MzQwZjVhZTM2NWVlN2JjNGIxOTUuLjUwYWU0MmNmYWNkNjgx
NTAyMmYwMWI0NmFiOGQ5NzliNDQxMmFjNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5oCkBAIC04Miw3ICs4Miw3IEBAIGNsYXNz
IFdlYkdMVmVydGV4QXJyYXlPYmplY3RPRVM7CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7
CiAKLWNsYXNzIFdlYkdMUmVuZGVyaW5nQ29udGV4dCA6IHB1YmxpYyBDYW52YXNSZW5kZXJpbmdD
b250ZXh0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIFdlYkdMUmVuZGVyaW5nQ29u
dGV4dCBmaW5hbCA6IHB1YmxpYyBDYW52YXNSZW5kZXJpbmdDb250ZXh0LCBwdWJsaWMgQWN0aXZl
RE9NT2JqZWN0IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFdlYkdMUmVu
ZGVyaW5nQ29udGV4dD4gY3JlYXRlKEhUTUxDYW52YXNFbGVtZW50KiwgV2ViR0xDb250ZXh0QXR0
cmlidXRlcyopOwogICAgIHZpcnR1YWwgfldlYkdMUmVuZGVyaW5nQ29udGV4dCgpOwpAQCAtMzIw
LDcgKzMyMCw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgbWFya0xheWVyQ29tcG9zaXRlZCgpOwog
ICAgIHZpcnR1YWwgdm9pZCBwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcygpIG92ZXJyaWRl
OwotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxJbWFnZURhdGE+IHBhaW50UmVuZGVyaW5nUmVzdWx0
c1RvSW1hZ2VEYXRhKCk7CisgICAgUGFzc1JlZlB0cjxJbWFnZURhdGE+IHBhaW50UmVuZGVyaW5n
UmVzdWx0c1RvSW1hZ2VEYXRhKCk7CiAKICAgICB2b2lkIHJlbW92ZVNoYXJlZE9iamVjdChXZWJH
TFNoYXJlZE9iamVjdCopOwogICAgIHZvaWQgcmVtb3ZlQ29udGV4dE9iamVjdChXZWJHTENvbnRl
eHRPYmplY3QqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
U2hhZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFNoYWRlci5oCmluZGV4
IDdlMjFmNmE4YzU0MjIwZWMyZmUyYzk0YmQwODU0MDRjNTUzODIxN2MuLmRkZjViMTdhODMzZmRi
YTE3ZDJmOWYyOTliNWM5NDAwMGE0MjA3OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMU2hhZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0xTaGFkZXIuaApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LWNsYXNzIFdlYkdMU2hhZGVyIDogcHVibGljIFdlYkdMU2hhcmVkT2JqZWN0IHsKK2NsYXNzIFdl
YkdMU2hhZGVyIGZpbmFsIDogcHVibGljIFdlYkdMU2hhcmVkT2JqZWN0IHsKIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIH5XZWJHTFNoYWRlcigpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9XZWJHTFNoYXJlZE9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvV2ViR0xTaGFyZWRPYmplY3QuaAppbmRleCA4NmI0NTQ4ZjhkMzdiMjE2NTMxNWVlNGQ4MWRm
NzU3MzVkMmViNjJlLi45N2VkZmIxODAzZGViNzc5YjFhM2NhMTRiNWE1ZGExNzZjZDYyNDAzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFNoYXJlZE9iamVjdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMU2hhcmVkT2JqZWN0LmgKQEAg
LTQzLDcgKzQzLDYgQEAgcHVibGljOgogICAgIFdlYkdMQ29udGV4dEdyb3VwKiBjb250ZXh0R3Jv
dXAoKSBjb25zdCB7IHJldHVybiBtX2NvbnRleHRHcm91cDsgfQogCiAgICAgdmlydHVhbCBib29s
IGlzQnVmZmVyKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaXNG
cmFtZWJ1ZmZlcigpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIGlz
UHJvZ3JhbSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIGlzUmVu
ZGVyYnVmZmVyKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNT
aGFkZXIoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xUZXh0dXJlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9XZWJHTFRleHR1cmUuaAppbmRleCA4ODlkNmQ1NTA5ZTM3ZjljOWQ1YTU3NzQzMGFkNGQyNDNm
ZmIzMGU1Li42NGEzNzkyYTdiNWVhNmJjNmQ5ODg2NzI4NGRkZmJjMmI1NzJhY2Y2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFRleHR1cmUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFRleHR1cmUuaApAQCAtMzMsNyArMzMsNyBAQAog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFdlYkdMVGV4dHVyZSA6IHB1YmxpYyBXZWJH
TFNoYXJlZE9iamVjdCB7CitjbGFzcyBXZWJHTFRleHR1cmUgZmluYWwgOiBwdWJsaWMgV2ViR0xT
aGFyZWRPYmplY3QgewogcHVibGljOgogCiAgICAgZW51bSBUZXh0dXJlRXh0ZW5zaW9uRmxhZyB7
CkBAIC04MSwxMiArODEsMTEgQEAgcHVibGljOgogCiAgICAgc3RhdGljIEdDM0RpbnQgY29tcHV0
ZUxldmVsQ291bnQoR0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6ZWkgaGVpZ2h0KTsKIAotcHJvdGVj
dGVkOgorcHJpdmF0ZToKICAgICBXZWJHTFRleHR1cmUoV2ViR0xSZW5kZXJpbmdDb250ZXh0Kik7
CiAKICAgICB2aXJ0dWFsIHZvaWQgZGVsZXRlT2JqZWN0SW1wbChHcmFwaGljc0NvbnRleHQzRCos
IFBsYXRmb3JtM0RPYmplY3QpIG92ZXJyaWRlOwogCi1wcml2YXRlOgogICAgIGNsYXNzIExldmVs
SW5mbyB7CiAgICAgcHVibGljOgogICAgICAgICBMZXZlbEluZm8oKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5oCmluZGV4
IDNjNjM2MWNmNzQxZDI3OGRkM2RhM2NkOGRhNjA3Yzg3ZTUzM2ZkYmIuLmIwMWU5ZjMyZjJiYzVk
YjBkM2Y5Y2I4NGY1ZmRmYWVkMTcxNzBhOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL1dlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9XZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmgKQEAgLTMzLDcgKzMzLDcg
QEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBXZWJHTFZlcnRleEFycmF5T2JqZWN0
T0VTIDogcHVibGljIFdlYkdMQ29udGV4dE9iamVjdCB7CitjbGFzcyBXZWJHTFZlcnRleEFycmF5
T2JqZWN0T0VTIGZpbmFsIDogcHVibGljIFdlYkdMQ29udGV4dE9iamVjdCB7CiBwdWJsaWM6CiAg
ICAgZW51bSBWYW9UeXBlIHsKICAgICAgICAgVmFvVHlwZURlZmF1bHQsCkBAIC05Miw4ICs5Miw2
IEBAIHByaXZhdGU6CiAgICAgV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUyhXZWJHTFJlbmRlcmlu
Z0NvbnRleHQqLCBWYW9UeXBlKTsKIAogICAgIHZpcnR1YWwgdm9pZCBkZWxldGVPYmplY3RJbXBs
KEdyYXBoaWNzQ29udGV4dDNEKiwgUGxhdGZvcm0zRE9iamVjdCkgb3ZlcnJpZGU7Ci0KLSAgICB2
aXJ0dWFsIGJvb2wgaXNWZXJ0ZXhBcnJheSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KICAgICAK
ICAgICBWYW9UeXBlIG1fdHlwZTsKICAgICBib29sIG1faGFzRXZlckJlZW5Cb3VuZDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0ltYWdlQ29udHJvbHNSb290RWxlbWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSW1hZ2VDb250cm9sc1Jvb3RFbGVtZW50
LmgKaW5kZXggMDAxZTk4MmVlYjQ1M2MyYjQwYzRhYTExNjAyZmNmZjQ3ODJiY2I5OS4uYTBjOWNk
NWJhYTViOTEyYmQ1NjVlYjU4M2I3NTkxYTkyYjRjYzUxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvSW1hZ2VDb250cm9sc1Jvb3RFbGVtZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9zaGFkb3cvSW1hZ2VDb250cm9sc1Jvb3RFbGVtZW50LmgKQEAgLTQ0LDcg
KzQ0LDcgQEAgcHJvdGVjdGVkOgogICAgIGV4cGxpY2l0IEltYWdlQ29udHJvbHNSb290RWxlbWVu
dChEb2N1bWVudCYpOwogCiBwcml2YXRlOgotICAgIHZpcnR1YWwgYm9vbCBpc0ltYWdlQ29udHJv
bHNSb290RWxlbWVudCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0
dWFsIGJvb2wgaXNJbWFnZUNvbnRyb2xzUm9vdEVsZW1lbnQoKSBjb25zdCBvdmVycmlkZSBmaW5h
bCB7IHJldHVybiB0cnVlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9JbnNlcnRpb25Qb2ludC5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9zaGFkb3cvSW5zZXJ0aW9uUG9pbnQuaAppbmRleCA1OTRhNWNjMTQ0OWZj
NzEyMDllZTVkOWUzZDc0YmRiZmFmOGEzYzNlLi5jNjNiNzI4ODczZTBhOGU3NzVhMGIxMWFiMjIy
OGVlN2ZiMjE1Y2Y3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9JbnNl
cnRpb25Qb2ludC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0luc2VydGlvblBv
aW50LmgKQEAgLTY4LDkgKzY4LDkgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBjaGls
ZHJlbkNoYW5nZWQoY29uc3QgQ2hpbGRDaGFuZ2UmKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIElu
c2VydGlvbk5vdGlmaWNhdGlvblJlcXVlc3QgaW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUmKSBv
dmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlZEZyb20oQ29udGFpbmVyTm9kZSYpIG92
ZXJyaWRlOwotICAgIHZpcnR1YWwgYm9vbCBpc0luc2VydGlvblBvaW50Tm9kZSgpIGNvbnN0IG92
ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgaXNJ
bnNlcnRpb25Qb2ludE5vZGUoKSBjb25zdCBvdmVycmlkZSBmaW5hbCB7IHJldHVybiB0cnVlOyB9
CiAKICAgICBib29sIG1faGFzRGlzdHJpYnV0aW9uOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRUeXBlcy5oIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudFR5cGVzLmgKaW5kZXggYTM1YjQ1
MGFiNjVjYjJhYTI5YTQzYzAwYTlkNTg5MjQzZGU0NDIyZC4uMDBmMDRhMzdlZTM3MTkxODgwYzVh
OGI1ZTdkNzBlNWM3MTNhNWJhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvTWVkaWFDb250cm9sRWxlbWVudFR5cGVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvTWVkaWFDb250cm9sRWxlbWVudFR5cGVzLmgKQEAgLTEwOSwxOCArMTA5LDIwIEBAIHBy
aXZhdGU6CiAKIGNsYXNzIE1lZGlhQ29udHJvbERpdkVsZW1lbnQgOiBwdWJsaWMgSFRNTERpdkVs
ZW1lbnQsIHB1YmxpYyBNZWRpYUNvbnRyb2xFbGVtZW50IHsKIHByb3RlY3RlZDoKLSAgICB2aXJ0
dWFsIGJvb2wgaXNNZWRpYUNvbnRyb2xFbGVtZW50KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4g
TWVkaWFDb250cm9sRWxlbWVudDo6aXNNZWRpYUNvbnRyb2xFbGVtZW50KCk7IH0KICAgICBleHBs
aWNpdCBNZWRpYUNvbnRyb2xEaXZFbGVtZW50KERvY3VtZW50JiwgTWVkaWFDb250cm9sRWxlbWVu
dFR5cGUpOworCitwcml2YXRlOgorICAgIHZpcnR1YWwgYm9vbCBpc01lZGlhQ29udHJvbEVsZW1l
bnQoKSBjb25zdCBvdmVycmlkZSBmaW5hbCB7IHJldHVybiBNZWRpYUNvbnRyb2xFbGVtZW50Ojpp
c01lZGlhQ29udHJvbEVsZW1lbnQoKTsgfQogfTsKIAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQogCiBjbGFzcyBNZWRpYUNvbnRyb2xJbnB1dEVsZW1lbnQgOiBwdWJsaWMgSFRNTElu
cHV0RWxlbWVudCwgcHVibGljIE1lZGlhQ29udHJvbEVsZW1lbnQgewogcHJvdGVjdGVkOgotICAg
IHZpcnR1YWwgYm9vbCBpc01lZGlhQ29udHJvbEVsZW1lbnQoKSBjb25zdCBvdmVycmlkZSB7IHJl
dHVybiBNZWRpYUNvbnRyb2xFbGVtZW50Ojppc01lZGlhQ29udHJvbEVsZW1lbnQoKTsgfQogICAg
IGV4cGxpY2l0IE1lZGlhQ29udHJvbElucHV0RWxlbWVudChEb2N1bWVudCYsIE1lZGlhQ29udHJv
bEVsZW1lbnRUeXBlKTsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgaXNNZWRpYUNvbnRy
b2xFbGVtZW50KCkgY29uc3Qgb3ZlcnJpZGUgZmluYWwgeyByZXR1cm4gTWVkaWFDb250cm9sRWxl
bWVudDo6aXNNZWRpYUNvbnRyb2xFbGVtZW50KCk7IH0KICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRl
RGlzcGxheVR5cGUoKSB7IH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oCmluZGV4IDFhMzJkNmY1MjVlMGEzNWMwYTZiOGJiNzI2
OTEwNzY5MmI4MjhmOWYuLjE0NzRhYTQ3ZDFiZTRmODAyZmRiM2UwYmU1NjU4YjM5NmI4YTUwZTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1l
bnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVu
dHMuaApAQCAtMTAxLDcgKzEwMSw3IEBAIHByaXZhdGU6CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KIAotY2xhc3MgTWVkaWFDb250cm9sVGltZWxpbmVDb250YWluZXJFbGVtZW50
IDogcHVibGljIE1lZGlhQ29udHJvbERpdkVsZW1lbnQgeworY2xhc3MgTWVkaWFDb250cm9sVGlt
ZWxpbmVDb250YWluZXJFbGVtZW50IGZpbmFsIDogcHVibGljIE1lZGlhQ29udHJvbERpdkVsZW1l
bnQgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFRpbWVsaW5l
Q29udGFpbmVyRWxlbWVudD4gY3JlYXRlKERvY3VtZW50Jik7CiAKQEAgLTExNSw3ICsxMTUsNyBA
QCBwcml2YXRlOgogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNsYXNzIE1l
ZGlhQ29udHJvbFZvbHVtZVNsaWRlckNvbnRhaW5lckVsZW1lbnQgOiBwdWJsaWMgTWVkaWFDb250
cm9sRGl2RWxlbWVudCB7CitjbGFzcyBNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJDb250YWluZXJF
bGVtZW50IGZpbmFsIDogcHVibGljIE1lZGlhQ29udHJvbERpdkVsZW1lbnQgewogcHVibGljOgog
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFZvbHVtZVNsaWRlckNvbnRhaW5lckVs
ZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwogCkBAIC0xMzMsNyArMTMzLDcgQEAgcHJpdmF0ZToK
IAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1jbGFzcyBNZWRpYUNvbnRyb2xT
dGF0dXNEaXNwbGF5RWxlbWVudCA6IHB1YmxpYyBNZWRpYUNvbnRyb2xEaXZFbGVtZW50IHsKK2Ns
YXNzIE1lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXlFbGVtZW50IGZpbmFsIDogcHVibGljIE1lZGlh
Q29udHJvbERpdkVsZW1lbnQgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlh
Q29udHJvbFN0YXR1c0Rpc3BsYXlFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQmKTsKIApAQCAtMjA5
LDcgKzIwOSw3IEBAIHByaXZhdGU6CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
IAotY2xhc3MgTWVkaWFDb250cm9sU2Vla0ZvcndhcmRCdXR0b25FbGVtZW50IDogcHVibGljIE1l
ZGlhQ29udHJvbFNlZWtCdXR0b25FbGVtZW50IHsKK2NsYXNzIE1lZGlhQ29udHJvbFNlZWtGb3J3
YXJkQnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBNZWRpYUNvbnRyb2xTZWVrQnV0dG9uRWxl
bWVudCB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sU2Vla0Zv
cndhcmRCdXR0b25FbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQmKTsKIApAQCAtMjIxLDcgKzIyMSw3
IEBAIHByaXZhdGU6CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotY2xhc3Mg
TWVkaWFDb250cm9sU2Vla0JhY2tCdXR0b25FbGVtZW50IDogcHVibGljIE1lZGlhQ29udHJvbFNl
ZWtCdXR0b25FbGVtZW50IHsKK2NsYXNzIE1lZGlhQ29udHJvbFNlZWtCYWNrQnV0dG9uRWxlbWVu
dCBmaW5hbCA6IHB1YmxpYyBNZWRpYUNvbnRyb2xTZWVrQnV0dG9uRWxlbWVudCB7CiBwdWJsaWM6
CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sU2Vla0JhY2tCdXR0b25FbGVtZW50
PiBjcmVhdGUoRG9jdW1lbnQmKTsKIApAQCAtMjMzLDcgKzIzMyw3IEBAIHByaXZhdGU6CiAKIC8v
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotY2xhc3MgTWVkaWFDb250cm9sUmV3aW5k
QnV0dG9uRWxlbWVudCA6IHB1YmxpYyBNZWRpYUNvbnRyb2xJbnB1dEVsZW1lbnQgeworY2xhc3Mg
TWVkaWFDb250cm9sUmV3aW5kQnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBNZWRpYUNvbnRy
b2xJbnB1dEVsZW1lbnQgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlhQ29u
dHJvbFJld2luZEJ1dHRvbkVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwogCkBAIC0yNDksNyAr
MjQ5LDcgQEAgcHJpdmF0ZToKIAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1j
bGFzcyBNZWRpYUNvbnRyb2xSZXR1cm5Ub1JlYWx0aW1lQnV0dG9uRWxlbWVudCA6IHB1YmxpYyBN
ZWRpYUNvbnRyb2xJbnB1dEVsZW1lbnQgeworY2xhc3MgTWVkaWFDb250cm9sUmV0dXJuVG9SZWFs
dGltZUJ1dHRvbkVsZW1lbnQgZmluYWwgOiBwdWJsaWMgTWVkaWFDb250cm9sSW5wdXRFbGVtZW50
IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xSZXR1cm5Ub1Jl
YWx0aW1lQnV0dG9uRWxlbWVudD4gY3JlYXRlKERvY3VtZW50Jik7CiAKQEAgLTM1OCw3ICszNTgs
NyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIHdpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZl
bnRzKCkgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQogI2VuZGlmCiAKLSAgICB2aXJ0dWFsIHZv
aWQgc2V0SXNGdWxsc2NyZWVuKGJvb2wpOworICAgIHZvaWQgc2V0SXNGdWxsc2NyZWVuKGJvb2wp
OwogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5CdXR0b25F
bGVtZW50KERvY3VtZW50Jik7CkBAIC0zNzcsNyArMzc3LDcgQEAgcHJpdmF0ZToKIH07CiAvLyAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNsYXNzIE1lZGlhQ29udHJvbEZ1bGxzY3Jl
ZW5Wb2x1bWVTbGlkZXJFbGVtZW50IDogcHVibGljIE1lZGlhQ29udHJvbFZvbHVtZVNsaWRlckVs
ZW1lbnQgeworY2xhc3MgTWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZVNsaWRlckVsZW1lbnQg
ZmluYWwgOiBwdWJsaWMgTWVkaWFDb250cm9sVm9sdW1lU2xpZGVyRWxlbWVudCB7CiBwdWJsaWM6
CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZVNsaWRl
ckVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwogCkBAIC0zODcsNyArMzg3LDcgQEAgcHJpdmF0
ZToKIAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1jbGFzcyBNZWRpYUNvbnRy
b2xGdWxsc2NyZWVuVm9sdW1lTWluQnV0dG9uRWxlbWVudCA6IHB1YmxpYyBNZWRpYUNvbnRyb2xJ
bnB1dEVsZW1lbnQgeworY2xhc3MgTWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1pbkJ1dHRv
bkVsZW1lbnQgZmluYWwgOiBwdWJsaWMgTWVkaWFDb250cm9sSW5wdXRFbGVtZW50IHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lTWlu
QnV0dG9uRWxlbWVudD4gY3JlYXRlKERvY3VtZW50Jik7CiAKQEAgLTQwMiw3ICs0MDIsNyBAQCBw
cml2YXRlOgogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNsYXNzIE1lZGlh
Q29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVNYXhCdXR0b25FbGVtZW50IDogcHVibGljIE1lZGlhQ29u
dHJvbElucHV0RWxlbWVudCB7CitjbGFzcyBNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lTWF4
QnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBNZWRpYUNvbnRyb2xJbnB1dEVsZW1lbnQgewog
cHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1
bWVNYXhCdXR0b25FbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQmKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5oCmluZGV4IGFkMjE2MDU2N2RjODUwZjI5YjQ2M2Iy
OTQ4OTc3ZDhkMjA2MzJmMWMuLjZlMTdlMzViNDM2NWZiMGRhNGFkZmI5MmYzYjcyZWY4YTU3ZjBj
M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHMu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xzLmgKQEAgLTE0
Miw3ICsxNDIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgYm9vbCBtX2lzTW91c2VPdmVyQ29udHJvbHM7
CiAKIHByaXZhdGU6Ci0gICAgdmlydHVhbCBib29sIGlzTWVkaWFDb250cm9scygpIGNvbnN0IG92
ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaXNNZWRpYUNvbnRyb2xz
KCkgY29uc3Qgb3ZlcnJpZGUgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogfTsKIAogaW5saW5lIE1l
ZGlhQ29udHJvbHMqIHRvTWVkaWFDb250cm9scyhOb2RlKiBub2RlKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sc0FwcGxlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xzQXBwbGUuaAppbmRleCA0OTJkZjJiZjFlOGVk
MTAzNTUzZWIxZmY0ZjUxMjQ0Yzc4ZjRhODhmLi5kMmRhNjI3NzA5MGRlMDk5ZWUwNGUyZDU3NmZi
NzI4YmZjZWQzMmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRp
YUNvbnRyb2xzQXBwbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNv
bnRyb2xzQXBwbGUuaApAQCAtNTksNyArNTksNyBAQCBwcml2YXRlOgogICAgIE1lZGlhQ29udHJv
bHNBcHBsZSogbV9tZWRpYUNvbnRyb2xzOwogfTsKIAotY2xhc3MgTWVkaWFDb250cm9sc0FwcGxl
IDogcHVibGljIE1lZGlhQ29udHJvbHMgeworY2xhc3MgTWVkaWFDb250cm9sc0FwcGxlIGZpbmFs
IDogcHVibGljIE1lZGlhQ29udHJvbHMgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRy
PE1lZGlhQ29udHJvbHNBcHBsZT4gY3JlYXRlQ29udHJvbHMoRG9jdW1lbnQmKTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmgKaW5kZXggM2VjMTlk
YzMyOTU5NDk4YzE4OTQ1ODRhZDA0ZmQyMzRkY2FmYWMzMS4uMTEzOTYwMWUyZTAyOTdhMTZjZWE2
Y2NhYTNjZDEzZjIxMWYwNWJkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvU3BpbkJ1dHRvbkVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9T
cGluQnV0dG9uRWxlbWVudC5oCkBAIC01Niw3ICs1Niw3IEBAIHB1YmxpYzoKICAgICAvLyBpbXBs
ZW1lbnRhdGlvbiwgZS5nLiBkdXJpbmcgZXZlbnQgaGFuZGxpbmcuCiAgICAgc3RhdGljIFBhc3NS
ZWZQdHI8U3BpbkJ1dHRvbkVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYsIFNwaW5CdXR0b25Pd25l
ciYpOwogICAgIFVwRG93blN0YXRlIHVwRG93blN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV91cERv
d25TdGF0ZTsgfQotICAgIHZpcnR1YWwgdm9pZCByZWxlYXNlQ2FwdHVyZSgpOworICAgIHZvaWQg
cmVsZWFzZUNhcHR1cmUoKTsKICAgICB2b2lkIHJlbW92ZVNwaW5CdXR0b25Pd25lcigpIHsgbV9z
cGluQnV0dG9uT3duZXIgPSAwOyB9CiAKICAgICB2b2lkIHN0ZXAoaW50IGFtb3VudCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0F1ZGlvVHJhY2suaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFjay5oCmluZGV4IDA2MDIyOTVkNjYyMzU4OTQzZDQ1
M2NmOTA2NTBkYzQxM2Y1ZDU1NTUuLjk1Y2UwZjA1YjNiNjY2YjVmMjY0ZWJmMDc2YjcxZmI2OTRh
YjU3NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFjay5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFjay5oCkBAIC00NSw3ICs0
NSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgYXVkaW9UcmFja0VuYWJsZWRDaGFuZ2Vk
KEF1ZGlvVHJhY2sqKSA9IDA7CiB9OwogCi1jbGFzcyBBdWRpb1RyYWNrIDogcHVibGljIFRyYWNr
QmFzZSwgcHVibGljIEF1ZGlvVHJhY2tQcml2YXRlQ2xpZW50IHsKK2NsYXNzIEF1ZGlvVHJhY2sg
ZmluYWwgOiBwdWJsaWMgVHJhY2tCYXNlLCBwdWJsaWMgQXVkaW9UcmFja1ByaXZhdGVDbGllbnQg
ewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEF1ZGlvVHJhY2s+IGNyZWF0ZShBdWRp
b1RyYWNrQ2xpZW50KiBjbGllbnQsIFBhc3NSZWZQdHI8QXVkaW9UcmFja1ByaXZhdGU+IHRyYWNr
UHJpdmF0ZSkKICAgICB7CkBAIC02Miw5ICs2Miw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGNv
bnN0IEF0b21pY1N0cmluZyYgZGVmYXVsdEtpbmRLZXl3b3JkKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gZW1wdHlBdG9tOyB9CiAKICAgICB2aXJ0dWFsIGJvb2wgZW5hYmxlZCgpIGNvbnN0IG92
ZXJyaWRlIHsgcmV0dXJuIG1fZW5hYmxlZDsgfQotICAgIHZpcnR1YWwgdm9pZCBzZXRFbmFibGVk
KGNvbnN0IGJvb2wpOworICAgIHZvaWQgc2V0RW5hYmxlZChjb25zdCBib29sKTsKIAotICAgIHZp
cnR1YWwgdm9pZCBjbGVhckNsaWVudCgpIG92ZXJyaWRlIHsgbV9jbGllbnQgPSAwOyB9CisgICAg
dmlydHVhbCB2b2lkIGNsZWFyQ2xpZW50KCkgb3ZlcnJpZGUgeyBtX2NsaWVudCA9IG51bGxwdHI7
IH0KICAgICBBdWRpb1RyYWNrQ2xpZW50KiBjbGllbnQoKSBjb25zdCB7IHJldHVybiBtX2NsaWVu
dDsgfQogCiAgICAgc2l6ZV90IGluYmFuZFRyYWNrSW5kZXgoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFja0xpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svQXVkaW9UcmFja0xpc3QuaAppbmRleCA4OGJhZWFmMDg4YTZkM2YyNTQzNDVjMzc4
NWQ4YTJlOTljYzUzM2IzLi45NTZiMDRhMjhmNjBmYWI3NWE3YWIxNDdiOWJlOGE4Mzc5MWIyNWVm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0F1ZGlvVHJhY2tMaXN0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9BdWRpb1RyYWNrTGlzdC5oCkBAIC0zNCw3
ICszNCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQXVkaW9UcmFjazsKIAotY2xh
c3MgQXVkaW9UcmFja0xpc3QgOiBwdWJsaWMgVHJhY2tMaXN0QmFzZSB7CitjbGFzcyBBdWRpb1Ry
YWNrTGlzdCBmaW5hbCA6IHB1YmxpYyBUcmFja0xpc3RCYXNlIHsKIHB1YmxpYzoKICAgICBzdGF0
aWMgUGFzc1JlZlB0cjxBdWRpb1RyYWNrTGlzdD4gY3JlYXRlKEhUTUxNZWRpYUVsZW1lbnQqIG93
bmVyLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQogICAgIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svRGF0YUN1ZS5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9EYXRhQ3VlLmgKaW5kZXggMmI2NzI4Nzc5ZTEyZDg4NTQ1NjJkODJlNjY3OTFkYzUx
NjAyMDIzMi4uZjhhMGQ3YWFjMjQ1MTczZDkwY2ZkYTRlZGMwOTgwNjBiZGM1MDU1MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9EYXRhQ3VlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9EYXRhQ3VlLmgKQEAgLTQzLDcgKzQzLDcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogCi1jbGFzcyBEYXRhQ3Vl
IDogcHVibGljIFRleHRUcmFja0N1ZSB7CitjbGFzcyBEYXRhQ3VlIGZpbmFsIDogcHVibGljIFRl
eHRUcmFja0N1ZSB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8RGF0YUN1ZT4gY3Jl
YXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IE1lZGlhVGltZSYgc3Rh
cnQsIGNvbnN0IE1lZGlhVGltZSYgZW5kLCBBcnJheUJ1ZmZlciogZGF0YSwgRXhjZXB0aW9uQ29k
ZSYgZWMpCiAgICAgewpAQCAtNzMsNyArNzMsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIHZp
cnR1YWwgfkRhdGFDdWUoKTsKLSAgICB2aXJ0dWFsIEN1ZVR5cGUgY3VlVHlwZSgpIGNvbnN0IHsg
cmV0dXJuIERhdGE7IH0KKyAgICB2aXJ0dWFsIEN1ZVR5cGUgY3VlVHlwZSgpIGNvbnN0IG92ZXJy
aWRlIHsgcmV0dXJuIERhdGE7IH0KIAogICAgIFBhc3NSZWZQdHI8QXJyYXlCdWZmZXI+IGRhdGEo
KSBjb25zdDsKICAgICB2b2lkIHNldERhdGEoQXJyYXlCdWZmZXIqLCBFeGNlcHRpb25Db2RlJik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0luYmFuZERhdGFUZXh0VHJh
Y2suaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svSW5iYW5kRGF0YVRleHRUcmFjay5oCmlu
ZGV4IDExNjZlNGI5ZDI4MDg5OGNlNWI4Zjg0ZTdlMzgwM2FkOGMxOTY3ZWUuLjQ1YjljNjQ2OTdh
MWFiNTEzOTQxMTUyMWM5ZmU2MGJkYzZkZGViNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svSW5iYW5kRGF0YVRleHRUcmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svSW5iYW5kRGF0YVRleHRUcmFjay5oCkBAIC00Miw3ICs0Miw3IEBAIGNsYXNzIElu
YmFuZFRleHRUcmFja1ByaXZhdGU7CiBjbGFzcyBTZXJpYWxpemVkUGxhdGZvcm1SZXByZXNlbnRh
dGlvbjsKICNlbmRpZgogCi1jbGFzcyBJbmJhbmREYXRhVGV4dFRyYWNrIDogcHVibGljIEluYmFu
ZFRleHRUcmFjayB7CitjbGFzcyBJbmJhbmREYXRhVGV4dFRyYWNrIGZpbmFsIDogcHVibGljIElu
YmFuZFRleHRUcmFjayB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8SW5iYW5kRGF0
YVRleHRUcmFjaz4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBUZXh0VHJhY2tDbGll
bnQqLCBQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KTsKICAgICB2aXJ0dWFsIH5J
bmJhbmREYXRhVGV4dFRyYWNrKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3Ry
YWNrL0luYmFuZEdlbmVyaWNUZXh0VHJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
SW5iYW5kR2VuZXJpY1RleHRUcmFjay5oCmluZGV4IGQwMWZhODNkZTZiNzNkYTZhNTEwOGU1YjIz
MmI3ZDk1NzEyYWYyMGYuLmQ3OWE4NWIyOWY2ZWIwMmRhNzM2MTY3ZDQ2ZTdjZmVjMjk5N2FmYmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svSW5iYW5kR2VuZXJpY1RleHRU
cmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svSW5iYW5kR2VuZXJpY1RleHRU
cmFjay5oCkBAIC0zOSwxMCArMzksMTAgQEAgY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlOwogY2xhc3MgVGV4dFRyYWNrQ3VlOwogCi1jbGFzcyBHZW5lcmljVGV4
dFRyYWNrQ3VlTWFwIHsKK2NsYXNzIEdlbmVyaWNUZXh0VHJhY2tDdWVNYXAgZmluYWwgewogcHVi
bGljOgogICAgIEdlbmVyaWNUZXh0VHJhY2tDdWVNYXAoKTsKLSAgICB2aXJ0dWFsIH5HZW5lcmlj
VGV4dFRyYWNrQ3VlTWFwKCk7CisgICAgfkdlbmVyaWNUZXh0VHJhY2tDdWVNYXAoKTsKIAogICAg
IHZvaWQgYWRkKEdlbmVyaWNDdWVEYXRhKiwgVGV4dFRyYWNrQ3VlR2VuZXJpYyopOwogCkBAIC02
MCw3ICs2MCw3IEBAIHByaXZhdGU6CiAgICAgQ3VlRGF0YVRvQ3VlTWFwIG1fZGF0YVRvQ3VlTWFw
OwogfTsKIAotY2xhc3MgSW5iYW5kR2VuZXJpY1RleHRUcmFjayA6IHB1YmxpYyBJbmJhbmRUZXh0
VHJhY2ssIHByaXZhdGUgV2ViVlRUUGFyc2VyQ2xpZW50IHsKK2NsYXNzIEluYmFuZEdlbmVyaWNU
ZXh0VHJhY2sgZmluYWwgOiBwdWJsaWMgSW5iYW5kVGV4dFRyYWNrLCBwcml2YXRlIFdlYlZUVFBh
cnNlckNsaWVudCB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8SW5iYW5kR2VuZXJp
Y1RleHRUcmFjaz4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBUZXh0VHJhY2tDbGll
bnQqLCBQYXNzUmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+KTsKICAgICB2aXJ0dWFsIH5J
bmJhbmRHZW5lcmljVGV4dFRyYWNrKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL0luYmFuZFRleHRUcmFjay5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9JbmJh
bmRUZXh0VHJhY2suaAppbmRleCAwNjczMDJhNDVhNmQxOGQ2YWMyZDQ0Yjg2YzFhMDNjMzM4OTdk
MjE4Li4wYTFlNDAzYTM2ZTNmOTYwMWUzOGJiZTMyMjM3M2ZjMWE1ZmFhY2I0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0luYmFuZFRleHRUcmFjay5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svSW5iYW5kVGV4dFRyYWNrLmgKQEAgLTUzLDggKzUzLDYgQEAg
cHVibGljOgogCiAgICAgdm9pZCBzZXRQcml2YXRlKFBhc3NSZWZQdHI8SW5iYW5kVGV4dFRyYWNr
UHJpdmF0ZT4pOwogCi0gICAgdmlydHVhbCBib29sIGlzSW5iYW5kKCkgY29uc3Qgb3ZlcnJpZGUg
eyByZXR1cm4gdHJ1ZTsgfQotCiBwcm90ZWN0ZWQ6CiAgICAgSW5iYW5kVGV4dFRyYWNrKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCBUZXh0VHJhY2tDbGllbnQqLCBQYXNzUmVmUHRyPEluYmFuZFRl
eHRUcmFja1ByaXZhdGU+KTsKIApAQCAtNjQsNyArNjIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgUmVm
UHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGU+IG1fcHJpdmF0ZTsKIAogcHJpdmF0ZToKLQorICAg
IHZpcnR1YWwgYm9vbCBpc0luYmFuZCgpIGNvbnN0IG92ZXJyaWRlIGZpbmFsIHsgcmV0dXJuIHRy
dWU7IH0KICAgICB2aXJ0dWFsIHZvaWQgaWRDaGFuZ2VkKFRyYWNrUHJpdmF0ZUJhc2UqLCBjb25z
dCBBdG9taWNTdHJpbmcmKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgbGFiZWxDaGFuZ2Vk
KFRyYWNrUHJpdmF0ZUJhc2UqLCBjb25zdCBBdG9taWNTdHJpbmcmKSBvdmVycmlkZTsKICAgICB2
aXJ0dWFsIHZvaWQgbGFuZ3VhZ2VDaGFuZ2VkKFRyYWNrUHJpdmF0ZUJhc2UqLCBjb25zdCBBdG9t
aWNTdHJpbmcmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svSW5iYW5kV2ViVlRUVGV4dFRyYWNrLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0lu
YmFuZFdlYlZUVFRleHRUcmFjay5oCmluZGV4IGFiYmJkZDg1ZWZkYzg5OTEyOTliNGQ1ZTM5MWYx
MmMwNzEyZTQ4ZjUuLjBiZDhiY2U4ODNhOGNlYjY1Y2U1ZjE2OWZjYmU1Y2M2YTMxMTc5OWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svSW5iYW5kV2ViVlRUVGV4dFRyYWNr
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9JbmJhbmRXZWJWVFRUZXh0VHJhY2su
aApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIEluYmFu
ZFdlYlZUVFRleHRUcmFjayA6IHB1YmxpYyBJbmJhbmRUZXh0VHJhY2ssIHByaXZhdGUgV2ViVlRU
UGFyc2VyQ2xpZW50IHsKK2NsYXNzIEluYmFuZFdlYlZUVFRleHRUcmFjayBmaW5hbCA6IHB1Ymxp
YyBJbmJhbmRUZXh0VHJhY2ssIHByaXZhdGUgV2ViVlRUUGFyc2VyQ2xpZW50IHsKIHB1YmxpYzoK
ICAgICBzdGF0aWMgUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJhY2s+IGNyZWF0ZShTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgVGV4dFRyYWNrQ2xpZW50KiwgUGFzc1JlZlB0cjxJbmJhbmRUZXh0VHJh
Y2tQcml2YXRlPik7CiAgICAgdmlydHVhbCB+SW5iYW5kV2ViVlRUVGV4dFRyYWNrKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0xvYWRhYmxlVGV4dFRyYWNrLmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0xvYWRhYmxlVGV4dFRyYWNrLmgKaW5kZXggYjExMmIw
ZmY1ZTc2MjUwMzBkOTUwMTY2ZmZlMWVhOWRiYjY3YzNkMi4uMDZlM2ZlYWY5NmEwOThiOGEwZGUx
NTA5MmRkOGFlZDExZWZiNjIzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9Mb2FkYWJsZVRleHRUcmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svTG9h
ZGFibGVUZXh0VHJhY2suaApAQCAtMzgsNyArMzgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBj
bGFzcyBIVE1MVHJhY2tFbGVtZW50OwogY2xhc3MgTG9hZGFibGVUZXh0VHJhY2s7CiAKLWNsYXNz
IExvYWRhYmxlVGV4dFRyYWNrIDogcHVibGljIFRleHRUcmFjaywgcHJpdmF0ZSBUZXh0VHJhY2tM
b2FkZXJDbGllbnQgeworY2xhc3MgTG9hZGFibGVUZXh0VHJhY2sgZmluYWwgOiBwdWJsaWMgVGV4
dFRyYWNrLCBwcml2YXRlIFRleHRUcmFja0xvYWRlckNsaWVudCB7CiBwdWJsaWM6CiAgICAgc3Rh
dGljIFBhc3NSZWZQdHI8TG9hZGFibGVUZXh0VHJhY2s+IGNyZWF0ZShIVE1MVHJhY2tFbGVtZW50
KiB0cmFjaywgY29uc3QgU3RyaW5nJiBraW5kLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCBT
dHJpbmcmIGxhbmd1YWdlKQogICAgIHsKQEAgLTY1LDcgKzY1LDcgQEAgcHJpdmF0ZToKICAgICB2
aXJ0dWFsIHZvaWQgbmV3Q3Vlc0F2YWlsYWJsZShUZXh0VHJhY2tMb2FkZXIqKSBvdmVycmlkZTsK
ICAgICB2aXJ0dWFsIHZvaWQgY3VlTG9hZGluZ0NvbXBsZXRlZChUZXh0VHJhY2tMb2FkZXIqLCBi
b29sIGxvYWRpbmdGYWlsZWQpIG92ZXJyaWRlOwogI2lmIEVOQUJMRShXRUJWVFRfUkVHSU9OUykK
LSAgICB2aXJ0dWFsIHZvaWQgbmV3UmVnaW9uc0F2YWlsYWJsZShUZXh0VHJhY2tMb2FkZXIqKTsK
KyAgICB2aXJ0dWFsIHZvaWQgbmV3UmVnaW9uc0F2YWlsYWJsZShUZXh0VHJhY2tMb2FkZXIqKSBv
dmVycmlkZTsKICNlbmRpZgogCiAgICAgTG9hZGFibGVUZXh0VHJhY2soSFRNTFRyYWNrRWxlbWVu
dCosIGNvbnN0IFN0cmluZyYga2luZCwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3QgU3RyaW5n
JiBsYW5ndWFnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRU
cmFja0xpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCmlu
ZGV4IDgxNzc4OGQ5Mzk2NWQ1MDk2ZmI4YzIyMTE5NTI2ZWFhYmM1NmUyNjguLjU2MmFkMTI4Yzg4
ZjdlOTZlYmQyNzU1N2E3M2YyN2RjOWRlMTRkMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svVGV4dFRyYWNrTGlzdC5oCkBAIC0zNCw3ICszNCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogY2xhc3MgVGV4dFRyYWNrOwogCi1jbGFzcyBUZXh0VHJhY2tMaXN0IDogcHVibGljIFRyYWNr
TGlzdEJhc2UgeworY2xhc3MgVGV4dFRyYWNrTGlzdCBmaW5hbCA6IHB1YmxpYyBUcmFja0xpc3RC
YXNlIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxUZXh0VHJhY2tMaXN0PiBjcmVh
dGUoSFRNTE1lZGlhRWxlbWVudCogZWxlbWVudCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29u
dGV4dCkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNr
RXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tFdmVudC5oCmluZGV4IGIx
OTliM2ZkMTkzNWVhZjYzYTQ1MzUzMmU3OTQxNDY4MGI3MGFiZDguLmFhZTdkODI0MmE4ODEzMDQ5
N2I5YWIyY2FhOTViM2U3ZjRhN2U5NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
dHJhY2svVHJhY2tFdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tF
dmVudC5oCkBAIC0zOSw3ICszOSw3IEBAIHN0cnVjdCBUcmFja0V2ZW50SW5pdCA6IHB1YmxpYyBF
dmVudEluaXQgewogICAgIFJlZlB0cjxUcmFja0Jhc2U+IHRyYWNrOwogfTsKIAotY2xhc3MgVHJh
Y2tFdmVudCA6IHB1YmxpYyBFdmVudCB7CitjbGFzcyBUcmFja0V2ZW50IGZpbmFsIDogcHVibGlj
IEV2ZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5UcmFja0V2ZW50KCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVlRUQ3VlLmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3RyYWNrL1ZUVEN1ZS5oCmluZGV4IDQyMmZhODQwNDMwNWZjNjBmZjFlMjMyMGFmOGI1NDQw
Mzk4YTVmZTguLjhjMmExOTRhZmI4OGJmNTZmNjAyMjlmYjEzYzYzMWE3ODhkN2UzZjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVlRUQ3VlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9WVFRDdWUuaApAQCAtNTksMTIgKzU5LDEyIEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIHZvaWQgYXBwbHlDU1NQcm9wZXJ0aWVzKGNvbnN0IEludFNpemUmIHZpZGVvU2l6
ZSk7CiAKICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiB2dHRDdWVCb3hTaGFkb3dQc2V1
ZG9JZCgpOwotICAgIHZpcnR1YWwgdm9pZCBzZXRGb250U2l6ZUZyb21DYXB0aW9uVXNlclByZWZz
KGludCBmb250U2l6ZSkgeyBtX2ZvbnRTaXplRnJvbUNhcHRpb25Vc2VyUHJlZnMgPSBmb250U2l6
ZTsgfQorICAgIHZvaWQgc2V0Rm9udFNpemVGcm9tQ2FwdGlvblVzZXJQcmVmcyhpbnQgZm9udFNp
emUpIHsgbV9mb250U2l6ZUZyb21DYXB0aW9uVXNlclByZWZzID0gZm9udFNpemU7IH0KIAogcHJv
dGVjdGVkOgogICAgIFZUVEN1ZUJveChEb2N1bWVudCYsIFZUVEN1ZSYpOwogCi0gICAgdmlydHVh
bCBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlRWxlbWVudFJlbmRlcmVyKFBhc3NSZWY8
UmVuZGVyU3R5bGU+KSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIFJlbmRlclB0cjxSZW5kZXJFbGVt
ZW50PiBjcmVhdGVFbGVtZW50UmVuZGVyZXIoUGFzc1JlZjxSZW5kZXJTdHlsZT4pIG92ZXJyaWRl
IGZpbmFsOwogCiAgICAgVlRUQ3VlJiBtX2N1ZTsKICAgICBpbnQgbV9mb250U2l6ZUZyb21DYXB0
aW9uVXNlclByZWZzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9WVFRS
ZWdpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVlRUUmVnaW9uLmgKaW5kZXggZGI5
NjVhYmY5NTEzNGZiOGQyN2ZkYmEzMzZiMTJmZWE5YWMxMzdkYS4uZTE2MmY1MmI1NzI2NDk4ODRk
OTYyY2JhNTFkZDc3MjMxNDI5ZWU1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9WVFRSZWdpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZUVFJlZ2lv
bi5oCkBAIC00Niw3ICs0Niw3IEBAIGNsYXNzIEhUTUxEaXZFbGVtZW50OwogY2xhc3MgVlRUQ3Vl
Qm94OwogY2xhc3MgVlRUU2Nhbm5lcjsKIAotY2xhc3MgVlRUUmVnaW9uIDogcHVibGljIFJlZkNv
dW50ZWQ8VlRUUmVnaW9uPiwgcHVibGljIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyIHsKK2Ns
YXNzIFZUVFJlZ2lvbiBmaW5hbCA6IHB1YmxpYyBSZWZDb3VudGVkPFZUVFJlZ2lvbj4sIHB1Ymxp
YyBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NS
ZWZQdHI8VlRUUmVnaW9uPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkK
ICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZpZGVvVHJhY2su
aCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVmlkZW9UcmFjay5oCmluZGV4IDI3YTUxMDIy
MTkwYzRhODM4ZWQwMzVhMGNlYzRhODE3MDI4ZjBjY2UuLjgwYzIxYzYxMDM3MmIwNjY3Yjg4NmU5
MmJmYjBjNDJkM2M0YjRjZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VmlkZW9UcmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVmlkZW9UcmFjay5o
CkBAIC00Niw3ICs0Niw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgdmlkZW9UcmFja1Nl
bGVjdGVkQ2hhbmdlZChWaWRlb1RyYWNrKikgPSAwOwogfTsKIAotY2xhc3MgVmlkZW9UcmFjayA6
IHB1YmxpYyBUcmFja0Jhc2UsIHB1YmxpYyBWaWRlb1RyYWNrUHJpdmF0ZUNsaWVudCB7CitjbGFz
cyBWaWRlb1RyYWNrIGZpbmFsIDogcHVibGljIFRyYWNrQmFzZSwgcHVibGljIFZpZGVvVHJhY2tQ
cml2YXRlQ2xpZW50IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxWaWRlb1RyYWNr
PiBjcmVhdGUoVmlkZW9UcmFja0NsaWVudCogY2xpZW50LCBQYXNzUmVmUHRyPFZpZGVvVHJhY2tQ
cml2YXRlPiB0cmFja1ByaXZhdGUpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9WaWRlb1RyYWNrTGlzdC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9W
aWRlb1RyYWNrTGlzdC5oCmluZGV4IDYyMTkzYjVkNTY0NmNiN2NmZjJjOTE3ZTc3YTQ3ZTgyMTcz
ZGJkZTcuLmM3YjI3YzE3M2Q1YTdlZmY5NjIwMTgwZTkyNmJkMDgxMjczNjhiYmUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVmlkZW9UcmFja0xpc3QuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZpZGVvVHJhY2tMaXN0LmgKQEAgLTM0LDEzICszNCwxMyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFZpZGVvVHJhY2s7CiAKLWNsYXNzIFZpZGVv
VHJhY2tMaXN0IDogcHVibGljIFRyYWNrTGlzdEJhc2UgeworY2xhc3MgVmlkZW9UcmFja0xpc3Qg
ZmluYWwgOiBwdWJsaWMgVHJhY2tMaXN0QmFzZSB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NS
ZWZQdHI8VmlkZW9UcmFja0xpc3Q+IGNyZWF0ZShIVE1MTWVkaWFFbGVtZW50KiBvd25lciwgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9w
dFJlZihuZXcgVmlkZW9UcmFja0xpc3Qob3duZXIsIGNvbnRleHQpKTsKICAgICB9Ci0gICAgflZp
ZGVvVHJhY2tMaXN0KCk7CisgICAgdmlydHVhbCB+VmlkZW9UcmFja0xpc3QoKTsKIAogICAgIFZp
ZGVvVHJhY2sqIGdldFRyYWNrQnlJZChjb25zdCBBdG9taWNTdHJpbmcmKSBjb25zdDsKICAgICBs
b25nIHNlbGVjdGVkSW5kZXgoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvdHJhY2svV2ViVlRUUGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1dlYlZU
VFBhcnNlci5oCmluZGV4IGIwNjkzOGNlNmM3MzZjZjUxN2IwMTgxZTRjNWE4MWRkOGVjOTgxZmEu
LmMzNDdhZTBlZWFmNDk5NmQzOTFiYzc4NTBmOGUwMDk2NjY4NWM0NGYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svV2ViVlRUUGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC90cmFjay9XZWJWVFRQYXJzZXIuaApAQCAtNjQsMTEgKzY0LDExIEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgZmlsZUZhaWxlZFRvUGFyc2UoKSA9IDA7CiB9OwogCi1jbGFzcyBX
ZWJWVFRDdWVEYXRhIDogcHVibGljIFJlZkNvdW50ZWQ8V2ViVlRUQ3VlRGF0YT4geworY2xhc3Mg
V2ViVlRUQ3VlRGF0YSBmaW5hbCA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYlZUVEN1ZURhdGE+IHsK
IHB1YmxpYzoKIAogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYlZUVEN1ZURhdGE+IGNyZWF0ZSgp
IHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJWVFRDdWVEYXRhKCkpOyB9Ci0gICAgdmlydHVhbCB+
V2ViVlRUQ3VlRGF0YSgpIHsgfQorICAgIH5XZWJWVFRDdWVEYXRhKCkgeyB9CiAKICAgICBNZWRp
YVRpbWUgc3RhcnRUaW1lKCkgY29uc3QgeyByZXR1cm4gbV9zdGFydFRpbWU7IH0KICAgICB2b2lk
IHNldFN0YXJ0VGltZShjb25zdCBNZWRpYVRpbWUmIHN0YXJ0VGltZSkgeyBtX3N0YXJ0VGltZSA9
IHN0YXJ0VGltZTsgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>