<?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>163164</bug_id>
          
          <creation_ts>2016-10-07 22:16:57 -0700</creation_ts>
          <short_desc>Add support for ClipboardEvent</short_desc>
          <delta_ts>2016-10-08 17:05:52 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://www.w3.org/TR/clipboard-apis/#clipboard-event-interfaces</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>WebExposed</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>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1237935</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-07 22:16:57 -0700</bug_when>
    <thetext>Add support for ClipboardEvent:
- https://www.w3.org/TR/clipboard-apis/#clipboard-event-interfaces

Firefox and Chrome both already support this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238017</commentid>
    <comment_count>1</comment_count>
      <attachid>291026</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-08 14:59:29 -0700</bug_when>
    <thetext>Created attachment 291026
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238018</commentid>
    <comment_count>2</comment_count>
      <attachid>291027</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-08 15:16:40 -0700</bug_when>
    <thetext>Created attachment 291027
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238019</commentid>
    <comment_count>3</comment_count>
      <attachid>291028</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-08 15:36:21 -0700</bug_when>
    <thetext>Created attachment 291028
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238022</commentid>
    <comment_count>4</comment_count>
      <attachid>291028</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-08 16:10:12 -0700</bug_when>
    <thetext>Comment on attachment 291028
Patch

Looks like I broke something.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238025</commentid>
    <comment_count>5</comment_count>
      <attachid>291029</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-08 16:15:09 -0700</bug_when>
    <thetext>Created attachment 291029
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238029</commentid>
    <comment_count>6</comment_count>
      <attachid>291029</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-10-08 16:38:03 -0700</bug_when>
    <thetext>Comment on attachment 291029
Patch

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

&gt; Source/WebCore/editing/Editor.cpp:886
&gt; +    Ref&lt;ClipboardEvent&gt; event = ClipboardEvent::create(eventType, { true, true, false, dataTransfer.get() }, Event::IsTrusted::Yes);

Can we use auto here instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238030</commentid>
    <comment_count>7</comment_count>
      <attachid>291031</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-08 16:41:40 -0700</bug_when>
    <thetext>Created attachment 291031
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238031</commentid>
    <comment_count>8</comment_count>
      <attachid>291031</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-08 17:05:47 -0700</bug_when>
    <thetext>Comment on attachment 291031
Patch

Clearing flags on attachment: 291031

Committed r206963: &lt;http://trac.webkit.org/changeset/206963&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1238032</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-08 17:05:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291026</attachid>
            <date>2016-10-08 14:59:29 -0700</date>
            <delta_ts>2016-10-08 15:16:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163164-20161008145611.patch</filename>
            <type>text/plain</type>
            <size>45654</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2OTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWUwMTY0NjZmNmY3ZmYw
YzMxOTk4N2VmMGY5NWNmNzlmODc5NDk0NS4uZTQ1ZTNkODJjYjVlM2Q4ZGZlNzYyMDFkYjZmMDJk
MjdiOTgyYTU2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE2LTEwLTA4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENs
aXBib2FyZEV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjMxNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGQgc3VwcG9ydCBmb3IgQ2xpcGJvYXJkRXZlbnQ6CisgICAgICAgIC0gaHR0cHM6Ly93
d3cudzMub3JnL1RSL2NsaXBib2FyZC1hcGlzLyNjbGlwYm9hcmQtZXZlbnQtaW50ZXJmYWNlcwor
CisgICAgICAgIEZpcmVmb3ggYW5kIENocm9tZSBib3RoIGFscmVhZHkgc3VwcG9ydCB0aGlzLgor
CisgICAgICAgIFRoaXMgZ2l2ZXMgdXMgNSBtb3JlIHBvaW50cyBvbiBodG1sNXRlc3QuY29tLgor
CisgICAgICAgIFRlc3RzOiBlZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50Lmh0bWwK
KyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci5o
dG1sCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNl
cy5jcHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVu
dEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3bHlDcmVhdGVkKTogRGVsZXRl
ZC4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAg
ICAgICAoV2lsbENvbnZlcnRVbmRlZmluZWRUb0RlZmF1bHRQYXJhbWV0ZXJWYWx1ZSk6CisgICAg
ICAgIFdlIHVzZSBbXSBhcyBpbXBsaWNpdCBkZWZhdWx0IHZhbHVlIGZvciBkaWN0aW9uYXJ5IHBh
cmFtZXRlcnMuIFRoaXMgY2hhbmdlCisgICAgICAgIGlzIHNvIHdlIGNhbGwgY29udmVydERpY3Rp
b25hcnk8PigpIGV2ZW4gaWYgdGhlIHBhcmFtZXRlciBpcyB1bmRlZmluZWQKKyAgICAgICAgYmVj
YXVzZSB3ZSB3YW50IHRvIHBhc3MgYSBzdHJ1Y3QgdG8gdGhlIGltcGxlbWVudGF0aW9uIGluaXRp
YWxpemVkIHdpdGgKKyAgICAgICAgdGhlIGRlZmF1bHQgbWVtYmVyIHZhbHVlcyBkZWZpbmVkIGlu
IHRoZSBJREwuCisKKyAgICAgICAgKiBkb20vQ2xpcGJvYXJkRXZlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KToKKyAgICAgICAgKFdlYkNv
cmU6OkNsaXBib2FyZEV2ZW50OjpldmVudEludGVyZmFjZSk6CisgICAgICAgICogZG9tL0NsaXBi
b2FyZEV2ZW50Lmg6CisgICAgICAgICogZG9tL0NsaXBib2FyZEV2ZW50LmlkbDogQWRkZWQuCisg
ICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50OjpFdmVudCk6
CisgICAgICAgICogZG9tL0V2ZW50Lmg6CisgICAgICAgICogZG9tL0V2ZW50LmlkbDoKKyAgICAg
ICAgKiBkb20vRXZlbnRJbml0Lmg6IEFkZGVkLgorICAgICAgICAqIGRvbS9FdmVudEluaXQuaWRs
OiBBZGRlZC4KKyAgICAgICAgKiBkb20vRXZlbnROYW1lcy5pbjoKKyAgICAgICAgKiBkb20vTW91
c2VFdmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6TW91c2VFdmVudDo6ZGF0YVRyYW5zZmVyKToK
KyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6
OmRpc3BhdGNoQ1BQRXZlbnQpOgorCiAyMDE2LTEwLTA3ICBXZW5zb24gSHNpZWggIDx3ZW5zb25f
aHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBvcnQgb25iZWZvcmVpbnB1dCBldmVudCBo
YW5kbGluZyBmb3IgdGhlIG5ldyBJbnB1dEV2ZW50IHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggY2M0MDM4NzBjNWQ3MjczM2FjYWUxMzAwNDU4MzE1NDA3NmQ5NzE1My4uZTNkZmVkNGFlNGIz
MTUyODNkN2E2ZTQ1NTFjMzVjZmI3NDU0YzgwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTM5
Nyw2ICszOTcsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIGRvbS9FbGVt
ZW50LmlkbAogICAgIGRvbS9FcnJvckV2ZW50LmlkbAogICAgIGRvbS9FdmVudC5pZGwKKyAgICBk
b20vRXZlbnRJbml0LmlkbAogICAgIGRvbS9FdmVudFRhcmdldC5pZGwKICAgICBkb20vRm9jdXNF
dmVudC5pZGwKICAgICBkb20vR2xvYmFsRXZlbnRIYW5kbGVycy5pZGwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLmNwcAppbmRleCBiZmJkNjkwZTk3MzA4OWNiMmI0OTczNGFlZDAyOTFiMjY4ZDFhMjY4
Li42MTI2MzE5MjBlNTI3NzI0ODQxMjczYTNhOTU1NDIzMjMxOGM5OTljIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMuY3BwCkBAIC0xMzYsNiArMTM2LDcgQEAKICNpbmNsdWRlICJKU0NTU1Vua25v
d25SdWxlLmNwcCIKICNpbmNsdWRlICJKU0NTU1ZhbHVlLmNwcCIKICNpbmNsdWRlICJKU0NTU1Zh
bHVlTGlzdC5jcHAiCisjaW5jbHVkZSAiSlNDbGlwYm9hcmRFdmVudC5jcHAiCiAjaWYgRU5BQkxF
KENVU1RPTV9FTEVNRU5UUykKICNpbmNsdWRlICJKU0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5jcHAi
CiAjZW5kaWYKQEAgLTE4OCw2ICsxODksNyBAQAogI2luY2x1ZGUgIkpTRWxlbWVudC5jcHAiCiAj
aW5jbHVkZSAiSlNFcnJvckV2ZW50LmNwcCIKICNpbmNsdWRlICJKU0V2ZW50LmNwcCIKKyNpbmNs
dWRlICJKU0V2ZW50SW5pdC5jcHAiCiAjaW5jbHVkZSAiSlNFdmVudFNvdXJjZS5jcHAiCiAjaW5j
bHVkZSAiSlNFdmVudFRhcmdldC5jcHAiCiAjaW5jbHVkZSAiSlNGZXRjaEJvZHkuY3BwIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNWExMGI1MGRmYTFjNTk4MmU3ZmY5NmNjNjY2
NzA4YzlhYzVkNmJmNC4uODk1YmM4ZGYyZmY5YTAzZGRkODc4YTI1M2U4MDhhMTcwYzQxNjljMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0yODYsNiArMjg2LDcgQEAgSlNfQklO
RElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0NsaWVudFJlY3QuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2RvbS9DbGllbnRSZWN0TGlzdC5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0Nv
bW1lbnQuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2RvbS9DbGlwYm9hcmRFdmVudC5pZGwgXAogICAg
ICQoV2ViQ29yZSkvZG9tL0NvbXBvc2l0aW9uRXZlbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Rv
bS9DdXN0b21FbGVtZW50UmVnaXN0cnkuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9DdXN0b21F
dmVudC5pZGwgXApAQCAtMzA3LDYgKzMwOCw3IEBAIEpTX0JJTkRJTkdfSURMUyA9IFwKICAgICAk
KFdlYkNvcmUpL2RvbS9FbGVtZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXJyb3JFdmVu
dC5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0V2ZW50LmlkbCBcCisgICAgJChXZWJDb3JlKS9k
b20vRXZlbnRJbml0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRMaXN0ZW5lci5pZGwg
XAogICAgICQoV2ViQ29yZSkvZG9tL0V2ZW50VGFyZ2V0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9k
b20vRm9jdXNFdmVudC5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDc1ZDI5YWQ1MTk5NmJmZDkwYWQyOTNjYmY2ZjQwNjE1
MmI5ZjdkNjQuLmFhODZkMDlhOGU5M2ZjYzhkYWQxNzI2ZDZiZjliMzg3YjEwMTk4MWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTI4ODksNiArMjg4OSwxMSBAQAogCQk4MzY3NTg3RTFDNTZFOTlCMDA4QTEwODcgLyogSlNIVE1M
RGF0YUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODM0Qjg2QTkxQzU2RTkzRTAwRjNGMEUzIC8qIEpTSFRNTERhdGFFbGVtZW50LmNwcCAq
LzsgfTsKIAkJODM2NzU4N0YxQzU2RTk5QjAwOEExMDg3IC8qIEpTSFRNTERhdGFFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzRCODZBODFD
NTZFOTNFMDBGM0YwRTMgLyogSlNIVE1MRGF0YUVsZW1lbnQuaCAqLzsgfTsKIAkJODM2QzE0NDMx
Q0RFQUZEODAwNzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNkMxNDQyMUNERUFGQ0EwMDcz
NDkzRiAvKiBKU1hQYXRoTlNSZXNvbHZlckN1c3RvbS5jcHAgKi87IH07CisJCTgzNkQwMzJBMURB
ODlCOTIwMEZGRDk2QiAvKiBFdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzNkQwMzI4MURBODlCNzMwMEZGRDk2QiAvKiBFdmVudEluaXQu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4MzZE
MDMyRjFEQThBMTNBMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2RDAzMkIxREE4QTEzMjAwRkZEOTZCIC8q
IEpTRXZlbnRJbml0LmNwcCAqLzsgfTsKKwkJODM2RDAzMzAxREE4QTEzRDAwRkZEOTZCIC8qIEpT
RXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzZEMDMyQzFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuaCAqLzsgfTsKKwkJODM2
RDAzMzExREE4QTEzRjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2RDAzMkQxREE4QTEzMjAwRkZE
OTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuY3BwICovOyB9OworCQk4MzZEMDMzMjFEQThBMTQyMDBG
RkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJk
RXZlbnQuaCAqLzsgfTsKIAkJODM2REFBMDYxQ0VBQjgwRDAwQTJCNzA3IC8qIFJlbmRlckRlc2Nl
bmRhbnRJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODM2REFBMDUxQ0VBQjdDRDAwQTJCNzA3IC8qIFJlbmRlckRlc2NlbmRhbnRJdGVyYXRv
ci5oICovOyB9OwogCQk4MzZGQkNFQTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBl
QW5pbWF0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODM2RkJDRTkxNzhDMTEzMjAwQjIxQTE1IC8qIFNWR0FuaW1hdGVkVHlwZUFuaW1hdG9yLmNw
cCAqLzsgfTsKIAkJODM2RkJDRUMxNzhDMTE3RjAwQjIxQTE1IC8qIFNWR0FuaW1hdGVkUHJvcGVy
dHkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2
RkJDRUIxNzhDMTE3RjAwQjIxQTE1IC8qIFNWR0FuaW1hdGVkUHJvcGVydHkuY3BwICovOyB9OwpA
QCAtMTAwMjIsNiArMTAwMjcsMTMgQEAKIAkJODM1RjhCMjYxRDJEOTBCQTAwRTQwOEVDIC8qIFNs
b3RhYmxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTbG90YWJsZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNjlFNThGMUFGREQwMzAwMDg3REY2OCAvKiBOb25Eb2N1
bWVudFR5cGVDaGlsZE5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5vbkRvY3VtZW50VHlwZUNoaWxkTm9kZS5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNkMxNDQyMUNERUFGQ0EwMDczNDkzRiAv
KiBKU1hQYXRoTlNSZXNvbHZlckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1hQYXRoTlNSZXNvbHZlckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNkQwMzI3MURBODlCNzMwMEZGRDk2QiAvKiBDbGlwYm9hcmRFdmVudC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2xpcGJvYXJkRXZlbnQuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzZEMDMyODFEQTg5QjczMDBGRkQ5NkIgLyogRXZlbnRJbml0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2ZW50SW5pdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk4MzZEMDMyOTFEQTg5QjczMDBGRkQ5NkIgLyogRXZlbnRJ
bml0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBFdmVudEluaXQuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzZEMDMyQjFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudElu
aXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNFdmVudEluaXQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZEMDMyQzFEQThBMTMyMDBGRkQ5
NkIgLyogSlNFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNF
dmVudEluaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMkQxREE4QTEz
MjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNDbGlwYm9hcmRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzNkQwMzJFMURBOEExMzIwMEZGRDk2QiAvKiBKU0NsaXBib2FyZEV2ZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ2xpcGJvYXJkRXZlbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2REFBMDUxQ0VBQjdDRDAwQTJCNzA3IC8qIFJl
bmRlckRlc2NlbmRhbnRJdGVyYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZW5kZXJEZXNjZW5kYW50SXRlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJODM2RkJDRTkxNzhDMTEzMjAwQjIxQTE1IC8qIFNWR0FuaW1hdGVkVHlwZUFuaW1hdG9yLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0FuaW1hdGVkVHlwZUFu
aW1hdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2RkJDRUIxNzhDMTE3
RjAwQjIxQTE1IC8qIFNWR0FuaW1hdGVkUHJvcGVydHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC0xOTY4Myw2ICsxOTY5NSw4IEBACiAJCQkJQkM5NDYzNDcxMDdBOTM2
NjAwODU3MTkzIC8qIEpTQmVmb3JlTG9hZEV2ZW50LmggKi8sCiAJCQkJODIyNTQzMkNBOUQ0QjRD
RjQ2MjhFQzdGIC8qIEpTQmVmb3JlVW5sb2FkRXZlbnQuY3BwICovLAogCQkJCTI5RTA0QTI3QkVE
MkY4MUY5OEU5MDIyQiAvKiBKU0JlZm9yZVVubG9hZEV2ZW50LmggKi8sCisJCQkJODM2RDAzMkQx
REE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuY3BwICovLAorCQkJCTgzNkQwMzJF
MURBOEExMzIwMEZGRDk2QiAvKiBKU0NsaXBib2FyZEV2ZW50LmggKi8sCiAJCQkJNzlBQzkyMTYx
MDk5NDVDODAwMjEyNjZFIC8qIEpTQ29tcG9zaXRpb25FdmVudC5jcHAgKi8sCiAJCQkJNzlBQzky
MTcxMDk5NDVDODAwMjEyNjZFIC8qIEpTQ29tcG9zaXRpb25FdmVudC5oICovLAogCQkJCUU0Nzc4
QjdEMTE1QTU4MUEwMEI1RDM3MiAvKiBKU0N1c3RvbUV2ZW50LmNwcCAqLywKQEAgLTE5NjkxLDYg
KzE5NzA1LDggQEAKIAkJCQkyRUNGN0FEQjEwMTYyQjM4MDA0MjdERTcgLyogSlNFcnJvckV2ZW50
LmggKi8sCiAJCQkJMTRFODM3ODMwOUY4NUQxQzAwQjg1QUU0IC8qIEpTRXZlbnQuY3BwICovLAog
CQkJCTE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggKi8sCisJCQkJODM2RDAz
MkIxREE4QTEzMjAwRkZEOTZCIC8qIEpTRXZlbnRJbml0LmNwcCAqLywKKwkJCQk4MzZEMDMyQzFE
QThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuaCAqLywKIAkJCQlDNkE3MDMzMjVDOUQwQjZD
RENCQzRENzggLyogSlNFdmVudFRhcmdldC5jcHAgKi8sCiAJCQkJNUZDN0RDMjZDRkUyNTYzMjAw
Qjg1QUU1IC8qIEpTRXZlbnRUYXJnZXQuaCAqLywKIAkJCQlCNkQ5RDI3QTE0RUFDMDg2MDA5MEQ3
NUUgLyogSlNGb2N1c0V2ZW50LmNwcCAqLywKQEAgLTIyOTkzLDYgKzIzMDA5LDcgQEAKIAkJCQlC
Q0MwNjU3QzBGM0NFMUI3MDBDRDJEODcgLyogQ2xpZW50UmVjdExpc3QuaWRsICovLAogCQkJCTg1
MDMxQjI5MEE0NEVGQzcwMEY5OTJFMCAvKiBDbGlwYm9hcmRFdmVudC5jcHAgKi8sCiAJCQkJODUw
MzFCMkEwQTQ0RUZDNzAwRjk5MkUwIC8qIENsaXBib2FyZEV2ZW50LmggKi8sCisJCQkJODM2RDAz
MjcxREE4OUI3MzAwRkZEOTZCIC8qIENsaXBib2FyZEV2ZW50LmlkbCAqLywKIAkJCQk5QkQ4QTk1
OTE4QkVGQzc2MDA5ODdFOUEgLyogQ29sbGVjdGlvbkluZGV4Q2FjaGUuY3BwICovLAogCQkJCUU0
MjVBNDk5MTgyOTJCODQwMDIwQ0ZDRiAvKiBDb2xsZWN0aW9uSW5kZXhDYWNoZS5oICovLAogCQkJ
CTY1NTBCNjk3MDk5REYwMjcwMDkwRDc4MSAvKiBDb21tZW50LmNwcCAqLywKQEAgLTIzMTEzLDYg
KzIzMTMwLDggQEAKIAkJCQk0MTM4RDMzMzEyNDQwNTQ4MDAzMjNEMzMgLyogRXZlbnRDb250ZXh0
LmggKi8sCiAJCQkJNDE4QTA2Q0YxMzNDMDRENTAwQ0QzNzlDIC8qIEV2ZW50RGlzcGF0Y2hlci5j
cHAgKi8sCiAJCQkJNDE4QTA2Q0UxMzNDMDRENTAwQ0QzNzlDIC8qIEV2ZW50RGlzcGF0Y2hlci5o
ICovLAorCQkJCTgzNkQwMzI4MURBODlCNzMwMEZGRDk2QiAvKiBFdmVudEluaXQuaCAqLywKKwkJ
CQk4MzZEMDMyOTFEQTg5QjczMDBGRkQ5NkIgLyogRXZlbnRJbml0LmlkbCAqLywKIAkJCQk5MzVG
QkM0NDA5QkEwMEI5MDBFMjMwQjEgLyogRXZlbnRMaXN0ZW5lci5oICovLAogCQkJCTg1QUZBNzQx
MEFBRjI5ODQwMEU4NDMwNSAvKiBFdmVudExpc3RlbmVyLmlkbCAqLywKIAkJCQlBRDQ0OTVGMTE0
MUZDMDg5MDA1NDFFREYgLyogRXZlbnRMaXN0ZW5lck1hcC5jcHAgKi8sCkBAIC0yNTI4OSw2ICsy
NTMwOCw3IEBACiAJCQkJOEE5QTU4ODgxMUU4NEYzNzAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VU
aW1pbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCUZERUE2MjQ3MTUyMTAyRkMwMDQ3OURGMCAvKiBK
U1BlcmlvZGljV2F2ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTNCNzBENkMwOUVCMEM3QzAwOUQ4
NDY4IC8qIEpTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM2
RDAzMzAxREE4QTEzRDAwRkZEOTZCIC8qIEpTRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLywKIAkJ
CQk1MTg5RjAxRTEwQjM3QkQ5MDBGM0M3MzkgLyogSlNQb3BTdGF0ZUV2ZW50LmggaW4gSGVhZGVy
cyAqLywKIAkJCQk1OTgzNjVERDEzNTVGNTU3MDAxQjE4NUQgLyogSlNQb3NpdGlvbkNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTgwREE3MjBFOUM0NzJGMDAwRDZGNzUgLyogSlNQb3Np
dGlvbkVycm9yLmggaW4gSGVhZGVycyAqLywKQEAgLTI2MTcxLDYgKzI2MTkxLDcgQEAKIAkJCQlC
Q0UzMkI5QzE1MTdDMEIyMDBGNTQyRUMgLyogUmVuZGVyTXVsdGlDb2x1bW5TZXQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTk0REU1QzkyMUQ4MzAxMUQwMDE2NEYyQSAvKiBDU1NTdXBwb3J0c1BhcnNl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMxQTdEOTgxOEZDQjVCMDAwNDIxODc5IC8qIFJlbmRl
ck11bHRpQ29sdW1uU3Bhbm5lclBsYWNlaG9sZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzZE
MDMyQTFEQTg5QjkyMDBGRkQ5NkIgLyogRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk4
QUM4MjJGRDE4MEZDMDMzMDBGQjY0RDUgLyogUmVuZGVyTmFtZWRGbG93RnJhZ21lbnQuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUJDODVGMjNEMTUxOTE1RTAwMEJDMTdCRSAvKiBSZW5kZXJOYW1lZEZs
b3dUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRUE0ODgwMDk3RDkzMDIwMDk0QzlFNCAv
KiBSZW5kZXJPYmplY3QuaCBpbiBIZWFkZXJzICovLApAQCAtMjY5NjksNiArMjY5OTAsNyBAQAog
CQkJCTlCMkQ4QTc5MTQ5OTdDQ0YwMEVDRUYzRSAvKiBVbmRvU3RlcC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQTg2M0UyMDExMzQzNDEyMDAwMjc0OTI2IC8qIFVuaWNvZGVCaWRpLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk1MTg4NjRFMTFCQkFGNTc0MDBFNTQwQzkgLyogVW5pcXVlSURCRGF0YWJhc2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCTgzNkQwMzMyMURBOEExNDIwMEZGRDk2QiAvKiBKU0NsaXBi
b2FyZEV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk1MTk4RjdBNTFCQkRCNzkzMDBFMkNDNUYg
LyogVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MTk4
RjdBOTFCQkREMzg1MDBFMkNDNUYgLyogVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJRTRBRkNGQTUwREFGMjlBMzAwRjVGNTVDIC8qIFVuaXRCZXppZXIu
aCBpbiBIZWFkZXJzICovLApAQCAtMjgxNDAsNiArMjgxNjIsNyBAQAogCQkJCTlCQUI2QzZEMTI1
NTA2MzEwMDE2MjZENCAvKiBFZGl0aW5nU3R5bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNEIz
MDQzQ0MwQUUwMzczQjAwQTgyNjQ3IC8qIEVkaXRvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5
QjU1RUVFOTFCM0U4ODk4MDA1MzQyQkMgLyogRWRpdG9yQ29jb2EubW0gaW4gU291cmNlcyAqLywK
KwkJCQk4MzZEMDMyRjFEQThBMTNBMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJOTNBMzhCNEIwRDBFNTgwODAwNjg3MkMyIC8qIEVkaXRvckNvbW1hbmQuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJRkVEMTNEM0EwQ0VBOTM0NjAwRDg5NDY2IC8qIEVkaXRvcklP
Uy5tbSBpbiBTb3VyY2VzICovLAogCQkJCUVENTAxREM2MEIyNDlGMjkwMEFFMThEOSAvKiBFZGl0
b3JNYWMubW0gaW4gU291cmNlcyAqLywKQEAgLTMwNTA4LDYgKzMwNTMxLDcgQEAKIAkJCQkzMTQw
Mzc5QzEyNEJFQTdGMDBBRjQwRTQgLyogV2ViQ29yZU1vdGlvbk1hbmFnZXIubW0gaW4gU291cmNl
cyAqLywKIAkJCQlDREM5NzlGNDFDNDk4QzA5MDBEQjUwRDQgLyogV2ViQ29yZU5TRXJyb3JFeHRy
YXMubW0gaW4gU291cmNlcyAqLywKIAkJCQk5MzREOUJBNTBCOEMxMTZCMDA3QjQyQTkgLyogV2Vi
Q29yZU5TU3RyaW5nRXh0cmFzLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJODM2RDAzMzExREE4QTEz
RjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzVC
NEMyNEUxNTA5MjM2QzAwQTZFRjM3IC8qIFdlYkNvcmVOU1VSTEV4dHJhcy5tbSBpbiBTb3VyY2Vz
ICovLAogCQkJCUNEMjI1QzBCMUM0NkZCRjQwMDE0MDc2MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9u
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQjUwRjVCODEwRTk2Q0Q5OTAwQUQ3MUE2IC8qIFdlYkNv
cmVPYmpDRXh0cmFzLm1tIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRXZlbnRDdXN0b20uY3BwCmluZGV4IDAxNWNhNmIxZWNmY2MyOWFlNmZmNGEyYTAyMDBl
NzQ3OGVmOGUzNzIuLmQ3MmM1ODcwYWY2MWNhZjJjZDNlNjYzYWRhZjMzOTI1NmU5M2U2ZDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCkBAIC00Mywx
MSArNDMsNiBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LUpTVmFsdWUgSlNFdmVudDo6Y2xpcGJvYXJkRGF0YShFeGVjU3RhdGUmIHN0YXRlKSBjb25zdAot
ewotICAgIHJldHVybiB3cmFwcGVkKCkuaXNDbGlwYm9hcmRFdmVudCgpID8gdG9KUygmc3RhdGUs
IGdsb2JhbE9iamVjdCgpLCB3cmFwcGVkKCkuY2xpcGJvYXJkRGF0YSgpKSA6IGpzVW5kZWZpbmVk
KCk7Ci19Ci0KICNkZWZpbmUgVFJZX1RPX1dSQVBfV0lUSF9JTlRFUkZBQ0UoaW50ZXJmYWNlTmFt
ZSkgXAogICAgIGNhc2UgaW50ZXJmYWNlTmFtZSMjSW50ZXJmYWNlVHlwZTogXAogICAgICAgICBy
ZXR1cm4gY3JlYXRlV3JhcHBlcjxpbnRlcmZhY2VOYW1lPihnbG9iYWxPYmplY3QsIFdURk1vdmUo
ZXZlbnQpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG0KaW5kZXggZmI4NjZjMzZhODRmMTFlNmVmNDE5Y2UxMTRmMjg3ZGZjNDU0MThm
MS4uZWMzODJkNGEyM2I1YzE3ZGQ1ZjlmMjRmOTRlNDFjNGIwMjViZTQ2MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTM5
NDksNiArMzk0OSw3IEBAIHN1YiBXaWxsQ29udmVydFVuZGVmaW5lZFRvRGVmYXVsdFBhcmFtZXRl
clZhbHVlCiAgICAgcmV0dXJuIDEgaWYgZGVmaW5lZCAkYXV0b21hdGljYWxseUdlbmVyYXRlZERl
ZmF1bHRWYWx1ZSAmJiAkYXV0b21hdGljYWxseUdlbmVyYXRlZERlZmF1bHRWYWx1ZSBlcSAkZGVm
YXVsdFZhbHVlOwogCiAgICAgcmV0dXJuIDEgaWYgJGRlZmF1bHRWYWx1ZSBlcSAibnVsbCIgJiYg
JGNvZGVHZW5lcmF0b3ItPklzV3JhcHBlclR5cGUoJHBhcmFtZXRlclR5cGUpOworICAgIHJldHVy
biAxIGlmICRkZWZhdWx0VmFsdWUgZXEgIltdIiAmJiAkY29kZUdlbmVyYXRvci0+SXNEaWN0aW9u
YXJ5VHlwZSgkcGFyYW1ldGVyVHlwZSk7CiAKICAgICByZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vQ2xpcGJvYXJkRXZlbnQuY3BwCmluZGV4IGExYWZkOGVkY2UyM2ViNDUyZWMxOGI5NTE4ZWMw
OWM5ZTAyMTRkMTUuLjZiZjZlMTcwZTcwYWUxYzczMzFkMGZhOTFiNDBjYTZjNjVhMDI4YTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNwcApAQCAtMjgsOCArMjgsOSBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLUNsaXBib2FyZEV2ZW50OjpDbGlwYm9hcmRFdmVudChjb25z
dCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgYm9vbCBjYW5CdWJibGUsIGJvb2wgY2FuY2VsYWJs
ZSwgRGF0YVRyYW5zZmVyKiBkYXRhVHJhbnNmZXIpCi0gICAgOiBFdmVudChldmVudFR5cGUsIGNh
bkJ1YmJsZSwgY2FuY2VsYWJsZSksIG1fZGF0YVRyYW5zZmVyKGRhdGFUcmFuc2ZlcikKK0NsaXBi
b2FyZEV2ZW50OjpDbGlwYm9hcmRFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGNvbnN0
IEluaXQmIGluaXQsIElzVHJ1c3RlZCBpc1RydXN0ZWQpCisgICAgOiBFdmVudCh0eXBlLCBpbml0
LCBpc1RydXN0ZWQpCisgICAgLCBtX2NsaXBib2FyZERhdGEoaW5pdC5jbGlwYm9hcmREYXRhKQog
ewogfQogCkBAIC0zOSw4ICs0MCw3IEBAIENsaXBib2FyZEV2ZW50Ojp+Q2xpcGJvYXJkRXZlbnQo
KQogCiBFdmVudEludGVyZmFjZSBDbGlwYm9hcmRFdmVudDo6ZXZlbnRJbnRlcmZhY2UoKSBjb25z
dAogewotICAgIC8vIE5vdGljZSB0aGF0IHRoZXJlIGlzIG5vIENsaXBib2FyZEV2ZW50LmlkbC4K
LSAgICByZXR1cm4gRXZlbnRJbnRlcmZhY2VUeXBlOworICAgIHJldHVybiBDbGlwYm9hcmRFdmVu
dEludGVyZmFjZVR5cGU7CiB9CiAKIGJvb2wgQ2xpcGJvYXJkRXZlbnQ6OmlzQ2xpcGJvYXJkRXZl
bnQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJkRXZlbnQuaAppbmRleCBmNDFhMWM5OGVk
YjQ3OTVhNWM1ZjBhOGRjNzM2ZmVhM2YxNWFlM2E4Li5mNGQzMzc0OGUwZjAzMWY2NDk1YmMxMzhk
OGRkNmE5N2Q4Y2Y0YWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJk
RXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJkRXZlbnQuaApAQCAtMjgs
MjcgKzI4LDM4IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIERhdGFUcmFu
c2ZlcjsKK2NsYXNzIERhdGFUcmFuc2ZlcjsKIAotICAgIGNsYXNzIENsaXBib2FyZEV2ZW50IGZp
bmFsIDogcHVibGljIEV2ZW50IHsKLSAgICBwdWJsaWM6Ci0gICAgICAgIHZpcnR1YWwgfkNsaXBi
b2FyZEV2ZW50KCk7CitjbGFzcyBDbGlwYm9hcmRFdmVudCBmaW5hbCA6IHB1YmxpYyBFdmVudCB7
CitwdWJsaWM6CisgICAgdmlydHVhbCB+Q2xpcGJvYXJkRXZlbnQoKTsKIAotICAgICAgICBzdGF0
aWMgUmVmPENsaXBib2FyZEV2ZW50PiBjcmVhdGUoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBi
b29sIGNhbkJ1YmJsZUFyZywgYm9vbCBjYW5jZWxhYmxlQXJnLCBEYXRhVHJhbnNmZXIqIGNsaXBi
b2FyZEFyZykKKyAgICBzdHJ1Y3QgSW5pdCA6IHB1YmxpYyBFdmVudEluaXQgeworICAgICAgICBJ
bml0KGJvb2wgYnViYmxlcywgYm9vbCBjYW5jZWxhYmxlLCBib29sIGNvbXBvc2VkLCBSZWZQdHI8
RGF0YVRyYW5zZmVyPiYmIGNsaXBib2FyZERhdGEpCisgICAgICAgICAgICA6IEV2ZW50SW5pdCB7
IGJ1YmJsZXMsIGNhbmNlbGFibGUsIGNvbXBvc2VkIH0KKyAgICAgICAgICAgICwgY2xpcGJvYXJk
RGF0YShXVEZNb3ZlKGNsaXBib2FyZERhdGEpKQogICAgICAgICB7Ci0gICAgICAgICAgICByZXR1
cm4gYWRvcHRSZWYoKm5ldyBDbGlwYm9hcmRFdmVudCh0eXBlLCBjYW5CdWJibGVBcmcsIGNhbmNl
bGFibGVBcmcsIGNsaXBib2FyZEFyZykpOwogICAgICAgICB9CiAKLSAgICAgICAgRGF0YVRyYW5z
ZmVyKiBpbnRlcm5hbERhdGFUcmFuc2ZlcigpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fZGF0
YVRyYW5zZmVyLmdldCgpOyB9CisgICAgICAgIFJlZlB0cjxEYXRhVHJhbnNmZXI+IGNsaXBib2Fy
ZERhdGE7CisgICAgfTsKIAotICAgIHByaXZhdGU6Ci0gICAgICAgIENsaXBib2FyZEV2ZW50KGNv
bnN0IEF0b21pY1N0cmluZyYgdHlwZSwgYm9vbCBjYW5CdWJibGVBcmcsIGJvb2wgY2FuY2VsYWJs
ZUFyZywgRGF0YVRyYW5zZmVyKik7CisgICAgc3RhdGljIFJlZjxDbGlwYm9hcmRFdmVudD4gY3Jl
YXRlKGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgSW5pdCYgaW5pdCwgSXNUcnVzdGVk
IGlzVHJ1c3RlZCA9IElzVHJ1c3RlZDo6Tm8pCisgICAgeworICAgICAgICBhdXRvIGV2ZW50ID0g
YWRvcHRSZWYoKm5ldyBDbGlwYm9hcmRFdmVudCh0eXBlLCBpbml0LCBpc1RydXN0ZWQpKTsKKyAg
ICAgICAgcmV0dXJuIGV2ZW50OworICAgIH0KIAotICAgICAgICBFdmVudEludGVyZmFjZSBldmVu
dEludGVyZmFjZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgICAgICBib29sIGlzQ2xpcGJvYXJkRXZl
bnQoKSBjb25zdCBvdmVycmlkZTsKKyAgICBEYXRhVHJhbnNmZXIqIGNsaXBib2FyZERhdGEoKSBj
b25zdCB7IHJldHVybiBtX2NsaXBib2FyZERhdGEuZ2V0KCk7IH0KIAotICAgICAgICBSZWZQdHI8
RGF0YVRyYW5zZmVyPiBtX2RhdGFUcmFuc2ZlcjsKLSAgICB9OworcHJpdmF0ZToKKyAgICBDbGlw
Ym9hcmRFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGNvbnN0IEluaXQmLCBJc1RydXN0
ZWQpOworCisgICAgRXZlbnRJbnRlcmZhY2UgZXZlbnRJbnRlcmZhY2UoKSBjb25zdCBmaW5hbDsK
KyAgICBib29sIGlzQ2xpcGJvYXJkRXZlbnQoKSBjb25zdCBmaW5hbDsKKworICAgIFJlZlB0cjxE
YXRhVHJhbnNmZXI+IG1fY2xpcGJvYXJkRGF0YTsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGE0MTk5
MmFjMmI3YmViMWM3ZDliZWY0YTdlNTA5ZjFiZTRkYThjZAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5pZGwKQEAgLTAsMCArMSwzNSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICoKKyAqLworCitbCisgICAgQ29u
c3RydWN0b3IoRE9NU3RyaW5nIHR5cGUsIG9wdGlvbmFsIENsaXBib2FyZEV2ZW50SW5pdCBldmVu
dEluaXREaWN0KQorXSBpbnRlcmZhY2UgQ2xpcGJvYXJkRXZlbnQgOiBFdmVudCB7CisgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIERhdGFUcmFuc2Zlcj8gY2xpcGJvYXJkRGF0YTsKK307CisKK2RpY3Rp
b25hcnkgQ2xpcGJvYXJkRXZlbnRJbml0IDogRXZlbnRJbml0IHsKKyAgICBEYXRhVHJhbnNmZXI/
IGNsaXBib2FyZERhdGEgPSBudWxsOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuY3BwCmluZGV4IGQ2MzgyNGRh
YTFkOTM4MzlhYTUyYWZhOTM5MmNhNmVjN2ZmOTIxMjcuLjUwMTYwNDQwY2ZkNmI4ODYwZWNhMjJm
Y2U5Yzk5YzgxZWU5MjlkZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmNwcApAQCAtNTYsMTIgKzU2LDEzIEBA
IEV2ZW50OjpFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgYm9vbCBjYW5CdWJi
bGVBcmcsIGJvb2wgY2FuY2VsYWJsZUFyCiB7CiB9CiAKLUV2ZW50OjpFdmVudChjb25zdCBBdG9t
aWNTdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgRXZlbnRJbml0JiBpbml0aWFsaXplcikKK0V2ZW50
OjpFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgRXZlbnRJbml0JiBp
bml0aWFsaXplciwgSXNUcnVzdGVkIGlzVHJ1c3RlZCkKICAgICA6IG1fdHlwZShldmVudFR5cGUp
CiAgICAgLCBtX2lzSW5pdGlhbGl6ZWQodHJ1ZSkKICAgICAsIG1fY2FuQnViYmxlKGluaXRpYWxp
emVyLmJ1YmJsZXMpCiAgICAgLCBtX2NhbmNlbGFibGUoaW5pdGlhbGl6ZXIuY2FuY2VsYWJsZSkK
ICAgICAsIG1fY29tcG9zZWQoaW5pdGlhbGl6ZXIuY29tcG9zZWQpCisgICAgLCBtX2lzVHJ1c3Rl
ZChpc1RydXN0ZWQgPT0gSXNUcnVzdGVkOjpZZXMpCiAgICAgLCBtX2NyZWF0ZVRpbWUoY29udmVy
dFNlY29uZHNUb0RPTVRpbWVTdGFtcChjdXJyZW50VGltZSgpKSkKIHsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmgK
aW5kZXggYmFkOTcxODgzMDI0MWU2NWZhNWFiOWQyOTY2ZDI4M2FiYjE2OTY3ZS4uZDVjZTNkMDVm
YzUzYTI2MTg2ZTYwYjE2MTNhN2ZkYjAyNDU1ZDI3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmgKQEAgLTI1LDYg
KzI1LDcgQEAKICNkZWZpbmUgRXZlbnRfaAogCiAjaW5jbHVkZSAiRE9NVGltZVN0YW1wLmgiCisj
aW5jbHVkZSAiRXZlbnRJbml0LmgiCiAjaW5jbHVkZSAiRXZlbnRJbnRlcmZhY2VzLmgiCiAjaW5j
bHVkZSAiU2NyaXB0V3JhcHBhYmxlLmgiCiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAg
LTM4LDEyICszOSw2IEBAIGNsYXNzIEV2ZW50UGF0aDsKIGNsYXNzIEV2ZW50VGFyZ2V0OwogY2xh
c3MgSFRNTElGcmFtZUVsZW1lbnQ7CiAKLXN0cnVjdCBFdmVudEluaXQgewotICAgIGJvb2wgYnVi
YmxlcyB7IGZhbHNlIH07Ci0gICAgYm9vbCBjYW5jZWxhYmxlIHsgZmFsc2UgfTsKLSAgICBib29s
IGNvbXBvc2VkIHsgZmFsc2UgfTsKLX07Ci0KIGVudW0gRXZlbnRJbnRlcmZhY2UgewogCiAjZGVm
aW5lIERPTV9FVkVOVF9JTlRFUkZBQ0VfREVDTEFSRShuYW1lKSBuYW1lIyNJbnRlcmZhY2VUeXBl
LApAQCAtNTQsNiArNDksOCBAQCBET01fRVZFTlRfSU5URVJGQUNFU19GT1JfRUFDSChET01fRVZF
TlRfSU5URVJGQUNFX0RFQ0xBUkUpCiAKIGNsYXNzIEV2ZW50IDogcHVibGljIFNjcmlwdFdyYXBw
YWJsZSwgcHVibGljIFJlZkNvdW50ZWQ8RXZlbnQ+IHsKIHB1YmxpYzoKKyAgICBlbnVtIGNsYXNz
IElzVHJ1c3RlZCB7IE5vLCBZZXMgfTsKKwogICAgIGVudW0gUGhhc2VUeXBlIHsgCiAgICAgICAg
IE5PTkUgICAgICAgICAgICAgICAgPSAwLAogICAgICAgICBDQVBUVVJJTkdfUEhBU0UgICAgID0g
MSwgCkBAIC0xMzQsOCArMTMxLDYgQEAgcHVibGljOgogICAgIGJvb2wgbGVnYWN5UmV0dXJuVmFs
dWUoKSBjb25zdCB7IHJldHVybiAhZGVmYXVsdFByZXZlbnRlZCgpOyB9CiAgICAgdm9pZCBzZXRM
ZWdhY3lSZXR1cm5WYWx1ZShib29sIHJldHVyblZhbHVlKSB7IHNldERlZmF1bHRQcmV2ZW50ZWQo
IXJldHVyblZhbHVlKTsgfQogCi0gICAgRGF0YVRyYW5zZmVyKiBjbGlwYm9hcmREYXRhKCkgY29u
c3QgeyByZXR1cm4gaXNDbGlwYm9hcmRFdmVudCgpID8gaW50ZXJuYWxEYXRhVHJhbnNmZXIoKSA6
IG51bGxwdHI7IH0KLQogICAgIHZpcnR1YWwgRXZlbnRJbnRlcmZhY2UgZXZlbnRJbnRlcmZhY2Uo
KSBjb25zdDsKIAogICAgIC8vIFRoZXNlIGV2ZW50cyBhcmUgZ2VuZXJhbCBjbGFzc2VzIG9mIGV2
ZW50cy4KQEAgLTE4OCw4ICsxODMsNiBAQCBwdWJsaWM6CiAgICAgRXZlbnQqIHVuZGVybHlpbmdF
dmVudCgpIGNvbnN0IHsgcmV0dXJuIG1fdW5kZXJseWluZ0V2ZW50LmdldCgpOyB9CiAgICAgdm9p
ZCBzZXRVbmRlcmx5aW5nRXZlbnQoRXZlbnQqKTsKIAotICAgIHZpcnR1YWwgRGF0YVRyYW5zZmVy
KiBpbnRlcm5hbERhdGFUcmFuc2ZlcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KLQogICAgIGJvb2wg
aXNCZWluZ0Rpc3BhdGNoZWQoKSBjb25zdCB7IHJldHVybiBldmVudFBoYXNlKCk7IH0KIAogICAg
IHZpcnR1YWwgUmVmPEV2ZW50PiBjbG9uZUZvcihIVE1MSUZyYW1lRWxlbWVudCopIGNvbnN0OwpA
QCAtMjAwLDcgKzE5Myw3IEBAIHByb3RlY3RlZDoKICAgICBFdmVudCgpOwogICAgIFdFQkNPUkVf
RVhQT1JUIEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgYm9vbCBjYW5CdWJibGUsIGJv
b2wgY2FuY2VsYWJsZSk7CiAgICAgRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29s
IGNhbkJ1YmJsZSwgYm9vbCBjYW5jZWxhYmxlLCBkb3VibGUgdGltZXN0YW1wKTsKLSAgICBFdmVu
dChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGNvbnN0IEV2ZW50SW5pdCYpOworICAgIEV2ZW50
KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgRXZlbnRJbml0JiwgSXNUcnVzdGVkID0g
SXNUcnVzdGVkOjpObyk7CiAKICAgICB2aXJ0dWFsIHZvaWQgcmVjZWl2ZWRUYXJnZXQoKTsKICAg
ICBib29sIGRpc3BhdGNoZWQoKSBjb25zdCB7IHJldHVybiBtX3RhcmdldDsgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVu
dC5pZGwKaW5kZXggZmQ4MmExYzYxZGJhMmMxZWI1MmVjY2EyNWU3NmZmNWYwMTc2MjY0ZS4uZDU1
NDJjYTQ5ODE0OTZmODA1OGYxOWI0MWZlMzJlNWFhNzUxMDcxNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0V2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRs
CkBAIC03MSw2ICs3MSw0IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEV2ZW50VGFyZ2V0IHNy
Y0VsZW1lbnQ7CiAgICAgW0ltcGxlbWVudGVkQXM9bGVnYWN5UmV0dXJuVmFsdWVdIGF0dHJpYnV0
ZSBib29sZWFuIHJldHVyblZhbHVlOwogICAgIGF0dHJpYnV0ZSBib29sZWFuIGNhbmNlbEJ1YmJs
ZTsKLQotICAgIFtDdXN0b21dIHJlYWRvbmx5IGF0dHJpYnV0ZSBEYXRhVHJhbnNmZXIgY2xpcGJv
YXJkRGF0YTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRJbml0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRJbml0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU0OGY0ZTg1NGQ0
NGY5OTQ2Yjk5NmQ0NzUxOWMzMWFlNTU1ZWY3OQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FdmVudEluaXQuaApAQCAtMCwwICsxLDM2IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RydWN0IEV2ZW50SW5pdCB7Cisg
ICAgYm9vbCBidWJibGVzIHsgZmFsc2UgfTsKKyAgICBib29sIGNhbmNlbGFibGUgeyBmYWxzZSB9
OworICAgIGJvb2wgY29tcG9zZWQgeyBmYWxzZSB9OworfTsKKworfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL0V2ZW50SW5pdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRJ
bml0LmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5lNTVhMDMwMzRjZTg0MmI4YmE4YjFiZTdkZjlkZDRmNmYxMWJh
OWVmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50SW5pdC5pZGwK
QEAgLTAsMCArMSwzMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK2RpY3Rpb25hcnkgRXZlbnRJbml0IHsKKyAg
ICBib29sZWFuIGJ1YmJsZXMgPSBmYWxzZTsKKyAgICBib29sZWFuIGNhbmNlbGFibGUgPSBmYWxz
ZTsKKyAgICBib29sZWFuIGNvbXBvc2VkID0gZmFsc2U7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaW4gYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1l
cy5pbgppbmRleCAwM2I2NzdlZGRiMWY5ODRkZmRhZmI4ZDE5OGM1MDM2MTllMjlhZGNiLi45Mjc3
ZDIzZmJjZWRmMjM5MTIyOThlMDA2NDhlYjNjODZmMmY0NmQ3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRXZlbnROYW1lcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRO
YW1lcy5pbgpAQCAtNiw2ICs2LDcgQEAgSFRNTEV2ZW50cyBpbnRlcmZhY2VOYW1lPUV2ZW50CiBB
bmltYXRpb25FdmVudAogQmVmb3JlTG9hZEV2ZW50CiBCZWZvcmVVbmxvYWRFdmVudAorQ2xpcGJv
YXJkRXZlbnQKIENsb3NlRXZlbnQKIENvbXBvc2l0aW9uRXZlbnQKIEN1c3RvbUV2ZW50CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTW91c2VFdmVudC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL01vdXNlRXZlbnQuaAppbmRleCBlMTk2MDNiNDEzYmJiZDIwZDc0Y2Q3NjY2MGM5YzQ3ZTdj
NzRkN2IxLi41ZWI0MDU4MWI2ZTU2NDVlN2UyZDVjOWQwMGMyM2E2ZDBlZDAxY2YzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTW91c2VFdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Nb3VzZUV2ZW50LmgKQEAgLTg5LDkgKzg5LDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVf
RVhQT1JUIE5vZGUqIHRvRWxlbWVudCgpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIE5vZGUq
IGZyb21FbGVtZW50KCkgY29uc3Q7CiAKLSAgICAvLyBGSVhNRTogVGhlc2UgZnVuY3Rpb25zIGNh
biBiZSBtZXJnZWQgaWYgbV9kYXRhVHJhbnNmZXIgaXMgb25seSBpbml0aWFsaXplZCBmb3IgZHJh
ZyBldmVudHMuCiAgICAgRGF0YVRyYW5zZmVyKiBkYXRhVHJhbnNmZXIoKSBjb25zdCB7IHJldHVy
biBpc0RyYWdFdmVudCgpID8gbV9kYXRhVHJhbnNmZXIuZ2V0KCkgOiBudWxscHRyOyB9Ci0gICAg
RGF0YVRyYW5zZmVyKiBpbnRlcm5hbERhdGFUcmFuc2ZlcigpIGNvbnN0IG92ZXJyaWRlIHsgcmV0
dXJuIG1fZGF0YVRyYW5zZmVyLmdldCgpOyB9CiAKICAgICBFdmVudEludGVyZmFjZSBldmVudElu
dGVyZmFjZSgpIGNvbnN0IG92ZXJyaWRlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0VkaXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKaW5k
ZXggMDMxMDBmODBjZWY0MTg1Mjc5ZDNjYjE1MGY2MTFkNzBlYzAwOTE4ZC4uYmUzMzExZDgzZDkx
MDMyMmJkY2YxNTBkMWJkMDVmMjIxMzU4Y2Y3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9FZGl0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNw
cApAQCAtODgzLDcgKzg4Myw3IEBAIGJvb2wgRWRpdG9yOjpkaXNwYXRjaENQUEV2ZW50KGNvbnN0
IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBEYXRhVHJhbnNmZXJBY2Nlc3NQCiAKICAgICBSZWZQ
dHI8RGF0YVRyYW5zZmVyPiBkYXRhVHJhbnNmZXIgPSBEYXRhVHJhbnNmZXI6OmNyZWF0ZUZvckNv
cHlBbmRQYXN0ZShwb2xpY3kpOwogCi0gICAgUmVmPEV2ZW50PiBldmVudCA9IENsaXBib2FyZEV2
ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCB0cnVlLCB0cnVlLCBkYXRhVHJhbnNmZXIuZ2V0KCkpOwor
ICAgIFJlZjxDbGlwYm9hcmRFdmVudD4gZXZlbnQgPSBDbGlwYm9hcmRFdmVudDo6Y3JlYXRlKGV2
ZW50VHlwZSwgeyB0cnVlLCB0cnVlLCBmYWxzZSwgZGF0YVRyYW5zZmVyLmdldCgpIH0sIEV2ZW50
OjpJc1RydXN0ZWQ6Olllcyk7CiAgICAgdGFyZ2V0LT5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKICAg
ICBib29sIG5vRGVmYXVsdFByb2Nlc3NpbmcgPSBldmVudC0+ZGVmYXVsdFByZXZlbnRlZCgpOwog
ICAgIGlmIChub0RlZmF1bHRQcm9jZXNzaW5nICYmIHBvbGljeSA9PSBEYXRhVHJhbnNmZXJBY2Nl
c3NQb2xpY3k6OldyaXRhYmxlKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMzliNzBiMDcyMWU5MzhkMWJkMzIwOTY1OTVl
NDc4YzFlODJlMDcwNi4uMDJiZDA2YjU0MTdhZWVjNDdkZDNiYjdiYmVkMTljZThjY2ZjZWEyYSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE2LTEwLTA4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENsaXBib2FyZEV2ZW50CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjMxNjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFeHRlbmRlZCBsYXlv
dXQgdGVzdCBjb3ZlcmFnZS4KKworICAgICAgICAqIGVkaXRpbmcvcGFzdGVib2FyZC9jbGlwYm9h
cmQtZXZlbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9h
cmQvY2xpcGJvYXJkLWV2ZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL2Ns
aXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LWdldC1leHBlY3RlZC50
eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy93b3JrZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25F
cnJvci1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1vYmpl
Y3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGpzL2RvbS9nbG9iYWwt
Y29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3Jt
L21hYy13azEvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9iYWwtY29uc3Ry
dWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9q
cy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS93aW4vanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1l
eHBlY3RlZC50eHQ6CisKIDIwMTYtMTAtMDcgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBn
bWFpbC5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIwNjg1Mz8pOiBMYXlvdXRUZXN0IGpz
L3JlZ3Jlc3MtMTQxMDk4Lmh0bWwgZmFpbGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRp
dGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50LWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4zYjRhMjViZmFiZjc2NzNlYzRiMTAyY2RjYzA4M2NkYWIxNGY4MDViCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwyOCBAQAorVGVzdHMgdGhlIENsaXBib2FyZEV2ZW50Lgor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBmaXJlZENvcHlFdmVudCBpcyBm
YWxzZQorUEFTUyBmaXJlZFBhc3RlRXZlbnQgaXMgZmFsc2UKK1BBU1MgZXZlbnQudHlwZSBpcyAi
Y29weSIKK1BBU1MgZXZlbnQuX19wcm90b19fIGlzIENsaXBib2FyZEV2ZW50LnByb3RvdHlwZQor
UEFTUyBldmVudC5pc1RydXN0ZWQgaXMgdHJ1ZQorUEFTUyBldmVudC5idWJibGVzIGlzIHRydWUK
K1BBU1MgZXZlbnQuY2FuY2VsYWJsZSBpcyB0cnVlCitQQVNTIGV2ZW50LmNsaXBib2FyZERhdGEu
X19wcm90b19fIGlzIERhdGFUcmFuc2Zlci5wcm90b3R5cGUKK1BBU1MgZmlyZWRDb3B5RXZlbnQg
aXMgdHJ1ZQorUEFTUyBmaXJlZFBhc3RlRXZlbnQgaXMgZmFsc2UKK1BBU1MgZXZlbnQudHlwZSBp
cyAicGFzdGUiCitQQVNTIGV2ZW50Ll9fcHJvdG9fXyBpcyBDbGlwYm9hcmRFdmVudC5wcm90b3R5
cGUKK1BBU1MgZXZlbnQuaXNUcnVzdGVkIGlzIHRydWUKK1BBU1MgZXZlbnQuYnViYmxlcyBpcyB0
cnVlCitQQVNTIGV2ZW50LmNhbmNlbGFibGUgaXMgdHJ1ZQorUEFTUyBldmVudC5jbGlwYm9hcmRE
YXRhLl9fcHJvdG9fXyBpcyBEYXRhVHJhbnNmZXIucHJvdG90eXBlCitQQVNTIGV2ZW50LmNsaXBi
b2FyZERhdGEuZ2V0RGF0YSgndGV4dC9wbGFpbicpIGlzICJDb250ZW50IgorUEFTUyBmaXJlZENv
cHlFdmVudCBpcyBmYWxzZQorUEFTUyBmaXJlZFBhc3RlRXZlbnQgaXMgdHJ1ZQorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9jbGlwYm9hcmQtZXZlbnQuaHRtbCBiL0xheW91
dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9jbGlwYm9hcmQtZXZlbnQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zNTFkN2I0MmRmZDE1OWEzNWFkYjNmMzU1MGVmMDYzNmZlNWYyNWU2Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC5odG1s
CkBAIC0wLDAgKzEsNTUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHRleHRh
cmVhIGlkPSJ0ZXN0QXJlYSI+Q29udGVudDwvdGV4dGFyZWE+Cis8c2NyaXB0IHNyYz0iLi4vZWRp
dGluZy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBDbGlw
Ym9hcmRFdmVudC4iKTsKKworZnVuY3Rpb24gdGVzdENsaXBib2FyZEV2ZW50KGUpCit7CisgICAg
ZXZlbnQgPSBlOworICAgIHNob3VsZEJlKCJldmVudC5fX3Byb3RvX18iLCAiQ2xpcGJvYXJkRXZl
bnQucHJvdG90eXBlIik7CisgICAgc2hvdWxkQmVUcnVlKCJldmVudC5pc1RydXN0ZWQiKQorICAg
IHNob3VsZEJlVHJ1ZSgiZXZlbnQuYnViYmxlcyIpOworICAgIHNob3VsZEJlVHJ1ZSgiZXZlbnQu
Y2FuY2VsYWJsZSIpOworICAgIHNob3VsZEJlKCJldmVudC5jbGlwYm9hcmREYXRhLl9fcHJvdG9f
XyIsICJEYXRhVHJhbnNmZXIucHJvdG90eXBlIik7Cit9CisKK3ZhciBmaXJlZENvcHlFdmVudCA9
IGZhbHNlOwordmFyIGZpcmVkUGFzdGVFdmVudCA9IGZhbHNlOworCit2YXIgdGVzdEFyZWEgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEFyZWEiKTsKK3Rlc3RBcmVhLmFkZEV2ZW50TGlz
dGVuZXIoImNvcHkiLCBmdW5jdGlvbihlKSB7CisgICAgZXZlbnQgPSBlOworICAgIGZpcmVkQ29w
eUV2ZW50ID0gdHJ1ZTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LnR5cGUiLCAi
Y29weSIpOworICAgIHRlc3RDbGlwYm9hcmRFdmVudChldmVudCk7Cit9KTsKKwordGVzdEFyZWEu
YWRkRXZlbnRMaXN0ZW5lcigicGFzdGUiLCBmdW5jdGlvbihlKSB7CisgICAgZXZlbnQgPSBlOwor
ICAgIGZpcmVkUGFzdGVFdmVudCA9IHRydWU7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJl
dmVudC50eXBlIiwgInBhc3RlIik7CisgICAgdGVzdENsaXBib2FyZEV2ZW50KGV2ZW50KTsKKyAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LmNsaXBib2FyZERhdGEuZ2V0RGF0YSgndGV4
dC9wbGFpbicpIiwgIkNvbnRlbnQiKTsKK30pOworCit0ZXN0QXJlYS5mb2N1cygpOworZXhlY1Nl
bGVjdEFsbENvbW1hbmQoKTsKK3Nob3VsZEJlRmFsc2UoImZpcmVkQ29weUV2ZW50Iik7CitzaG91
bGRCZUZhbHNlKCJmaXJlZFBhc3RlRXZlbnQiKTsKKworZXhlY0NvcHlDb21tYW5kKCk7CitzaG91
bGRCZVRydWUoImZpcmVkQ29weUV2ZW50Iik7CitzaG91bGRCZUZhbHNlKCJmaXJlZFBhc3RlRXZl
bnQiKQorZmlyZWRDb3B5RXZlbnQgPSBmYWxzZTsKKworZXhlY1Bhc3RlQ29tbWFuZCgpOworc2hv
dWxkQmVGYWxzZSgiZmlyZWRDb3B5RXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZmlyZWRQYXN0ZUV2
ZW50Iik7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9jbGlwYm9hcmQtZXZlbnQtY29uc3RydWN0b3ItZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJhMTc5MmIwN2ViZjY2YTdiOTkzYjhmMDgwN2M0ZWQzYzY3
ZWM4ZWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9jbGlwYm9h
cmQtZXZlbnQtY29uc3RydWN0b3ItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOSBAQAorCitQQVNT
IEZpcnN0IHBhcmFtZXRlciBpcyBtYW5kYXRvcnkgCitQQVNTIE9taXQgaW5pdCBkaWN0aW9uYXJ5
IAorUEFTUyBidWJibGVzIG1lbWJlciAKK1BBU1MgYnViYmxlcyBtZW1iZXIgCitQQVNTIGJ1YmJs
ZXMgbWVtYmVyIAorUEFTUyBidWJibGVzIG1lbWJlciAKK1BBU1MgUGFzc2luZyBhIGJhZCB0eXBl
IGZvciBjbGlwYm9hcmREYXRhIG1lbWJlciBzaG91bGQgdGhyb3cgCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOTJjNTczNWY5ZmZiMTUwMWEyZmY5NjUzYzVkZDVhZTBiYzdmYTI4ZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1j
b25zdHJ1Y3Rvci5odG1sCkBAIC0wLDAgKzEsNzMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
Cis8aGVhZD4KKzx0aXRsZT5DbGlwYm9hcmRFdmVudCBjb25zdHJ1Y3RvcjwvdGl0bGU+Cis8c2Ny
aXB0IHNyYz0uLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanM+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0uLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanM+PC9zY3JpcHQ+Cis8L2hl
YWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF90aHJv
d3MobmV3IFR5cGVFcnJvcigpLCBmdW5jdGlvbigpIHsKKyAgICAgICAgbmV3IENsaXBib2FyZEV2
ZW50KCk7CisgICAgfSk7Cit9LCAiRmlyc3QgcGFyYW1ldGVyIGlzIG1hbmRhdG9yeSIpOworCit0
ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZhciBldmVudCA9IG5ldyBDbGlwYm9hcmRFdmVudCgiZm9v
Iik7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC50eXBlLCAiZm9vIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhldmVudC5pc1RydXN0ZWQsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmJ1
YmJsZXMsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNhbmNlbGFibGUsIGZhbHNl
KTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNvbXBvc2VkLCBmYWxzZSk7CisgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5jbGlwYm9hcmREYXRhLCBudWxsKTsKK30sICJPbWl0IGluaXQgZGljdGlv
bmFyeSIpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZhciBldmVudCA9IG5ldyBDbGlwYm9h
cmRFdmVudCgiZm9vIiwge2J1YmJsZXM6IHRydWV9KTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50
LnR5cGUsICJmb28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwgZmFsc2Up
OworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuYnViYmxlcywgdHJ1ZSk7CisgICAgYXNzZXJ0X2Vx
dWFscyhldmVudC5jYW5jZWxhYmxlLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5j
b21wb3NlZCwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2xpcGJvYXJkRGF0YSwg
bnVsbCk7Cit9LCAiYnViYmxlcyBtZW1iZXIiKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICB2
YXIgZXZlbnQgPSBuZXcgQ2xpcGJvYXJkRXZlbnQoImZvbyIsIHtjYW5jZWxhYmxlOiB0cnVlfSk7
CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC50eXBlLCAiZm9vIik7CisgICAgYXNzZXJ0X2VxdWFs
cyhldmVudC5pc1RydXN0ZWQsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmJ1YmJs
ZXMsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNhbmNlbGFibGUsIHRydWUpOwor
ICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY29tcG9zZWQsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1
YWxzKGV2ZW50LmNsaXBib2FyZERhdGEsIG51bGwpOworfSwgImJ1YmJsZXMgbWVtYmVyIik7CisK
K3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGV2ZW50ID0gbmV3IENsaXBib2FyZEV2ZW50KCJm
b28iLCB7Y29tcG9zZWQ6IHRydWV9KTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LnR5cGUsICJm
b28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwgZmFsc2UpOworICAgIGFz
c2VydF9lcXVhbHMoZXZlbnQuYnViYmxlcywgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZl
bnQuY2FuY2VsYWJsZSwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY29tcG9zZWQs
IHRydWUpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2xpcGJvYXJkRGF0YSwgbnVsbCk7Cit9
LCAiYnViYmxlcyBtZW1iZXIiKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIgZXZlbnQg
PSBuZXcgQ2xpcGJvYXJkRXZlbnQoImZvbyIsIHtidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0
cnVlLCBjb21wb3NlZDogdHJ1ZX0pOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQudHlwZSwgImZv
byIpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuaXNUcnVzdGVkLCBmYWxzZSk7CisgICAgYXNz
ZXJ0X2VxdWFscyhldmVudC5idWJibGVzLCB0cnVlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50
LmNhbmNlbGFibGUsIHRydWUpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY29tcG9zZWQsIHRy
dWUpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2xpcGJvYXJkRGF0YSwgbnVsbCk7Cit9LCAi
YnViYmxlcyBtZW1iZXIiKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfdGhyb3dz
KG5ldyBUeXBlRXJyb3IoKSwgZnVuY3Rpb24oKSB7CisgICAgICAgIG5ldyBDbGlwYm9hcmRFdmVu
dCgiZm9vIiwge2NsaXBib2FyZERhdGE6IGRvY3VtZW50fSk7CisgICAgfSk7Cit9LCAiUGFzc2lu
ZyBhIGJhZCB0eXBlIGZvciBjbGlwYm9hcmREYXRhIG1lbWJlciBzaG91bGQgdGhyb3ciKTsKKzwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC94
bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1nZXQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1nZXQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IGJjOTcxM2U0ZjdjM2JhZGE4YzI4OTM4NDk1OGQyYmNjNzBkODlhNmUuLjgxN2MyMzA3ZmU4
YjZhMzkwMDlkYWJjZTVlZjRmNzJkZWU3NTgxNDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtZ2V0LWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LWdldC1leHBlY3Rl
ZC50eHQKQEAgLTQ2LDcgKzQ2LDYgQEAgU0VMRUNUIDogJzE2Mzg0JwogYnViYmxlcyA6ICdmYWxz
ZScKIGNhbmNlbEJ1YmJsZSA6ICdmYWxzZScKIGNhbmNlbGFibGUgOiAnZmFsc2UnCi1jbGlwYm9h
cmREYXRhIDogJ3VuZGVmaW5lZCcKIGNvbXBvc2VkIDogJ2ZhbHNlJwogY29tcG9zZWRQYXRoIDog
J2Z1bmN0aW9uIGNvbXBvc2VkUGF0aCgpIHsKICAgICBbbmF0aXZlIGNvZGVdCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dvcmtlcnMvd29ya2VyLWltcG9ydFNjcmlwdHNPbkVy
cm9yLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29ya2Vycy93b3JrZXIt
aW1wb3J0U2NyaXB0c09uRXJyb3ItZXhwZWN0ZWQudHh0CmluZGV4IDkxZTc0OTJjZTczNzExODk1
ZTg1ZGFiYzc2OTRkNGY2ZGRiZWEzOWMuLjk5YTRjYmNmMmFkNzk4Yzc5NjUyM2RmMmQzNDBkMjgw
ZTQyMjE2MDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29ya2Vycy93b3Jr
ZXItaW1wb3J0U2NyaXB0c09uRXJyb3ItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd29ya2Vycy93b3JrZXItaW1wb3J0U2NyaXB0c09uRXJyb3ItZXhwZWN0ZWQudHh0
CkBAIC0yNSw3ICsyNSw2IEBAIFNFTEVDVDogMTYzODQsCiBidWJibGVzOiBmYWxzZSwKIGNhbmNl
bEJ1YmJsZTogZmFsc2UsCiBjYW5jZWxhYmxlOiB0cnVlLAotY2xpcGJvYXJkRGF0YTogdW5kZWZp
bmVkLAogY29sbm86IDE0LAogY29tcG9zZWQ6IGZhbHNlLAogY29tcG9zZWRQYXRoOiBmdW5jdGlv
biBjb21wb3NlZFBhdGgoKSB7IFtuYXRpdmUgY29kZV0gfSwKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2luc3BlY3Rvci9tb2RlbC9yZW1vdGUtb2JqZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9yZW1vdGUtb2JqZWN0LWdldC1wcm9w
ZXJ0aWVzLWV4cGVjdGVkLnR4dAppbmRleCAzOGUyZDA1OTBlYzY5OWZlZWZkMDliNmE5OWVjNmU4
ZTYyMWY4ODA1Li4yZjdhZDRlYzYwODJiYjQwOTNkMTg5ZTFhYTU4MmU0ZTE5NjVhMTRkIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJv
cGVydGllcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3Jl
bW90ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CkBAIC0yNDMsNyArMjQzLDYg
QEAgRElTUExBWUFCTEUgUFJPUEVSVElFUzoKICAgICBzcmNFbGVtZW50CiAgICAgcmV0dXJuVmFs
dWUKICAgICBjYW5jZWxCdWJibGUKLSAgICBjbGlwYm9hcmREYXRhCiAgICAgX19wcm90b19fCiAK
IEFMTCBQUk9QRVJUSUVTOgpAQCAtMjYxLDcgKzI2MCw2IEBAIEFMTCBQUk9QRVJUSUVTOgogICAg
IHNyY0VsZW1lbnQKICAgICByZXR1cm5WYWx1ZQogICAgIGNhbmNlbEJ1YmJsZQotICAgIGNsaXBi
b2FyZERhdGEKICAgICBjb21wb3NlZFBhdGgKICAgICBzdG9wUHJvcGFnYXRpb24KICAgICBwcmV2
ZW50RGVmYXVsdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvZG9tL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9kb20vZ2xvYmFs
LWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCA1ZjBlOTI0MjQwNDY2
NzFjNmYyZDFjYjRkOTFiYWJkZTU5NjljZTI5Li5kODk3ODg0YmYyYTMyYWMxMTgxZWQ1OGQ1NTEz
MTdkMGU4NDRkMTA5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9kb20vZ2xvYmFsLWNvbnN0
cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9kb20v
Z2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMjI4LDYgKzIy
OCwxMSBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xp
ZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnZwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuaGFzT3duUHJvcGVydHkoJ3Nl
dCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnQ2xpZW50UmVjdExpc3QnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5jb25maWd1cmFi
bGUgaXMgdHJ1ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0NsaXBib2FyZEV2ZW50JykudmFsdWUgaXMgQ2xpcGJvYXJkRXZlbnQKK1BBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmhhc093blBy
b3BlcnR5KCdnZXQnKSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZh
bHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJv
YXJkRXZlbnQnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5jb25maWd1cmFibGUgaXMgdHJ1
ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZl
bnQnKS52YWx1ZSBpcyBDbG9zZUV2ZW50CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxz
ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZl
bnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy13azEvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRl
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2pzL2RvbS9nbG9i
YWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IDgyY2MzMDk3ZTU1
ZmQ2NjRjM2RkZjIzMTk0NTA3NjVlNmY3ZDkxZDguLjQzZjM4ODQ5MmY3NmE2MTdmNDE2NDRjNTYy
MThiMDM5YzVlNGViODQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEv
anMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1h
dHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMjYzLDYgKzI2MywxMSBAQCBQQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Q
cm9wZXJ0eSgnZwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0NsaWVudFJlY3RMaXN0JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5l
bnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQorUEFTUyBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykudmFs
dWUgaXMgQ2xpcGJvYXJkRXZlbnQKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxz
ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2Fy
ZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5lbnVtZXJhYmxl
IGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xpcGJvYXJkRXZlbnQnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS52YWx1ZSBpcyBDbG9zZUV2
ZW50CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VF
dmVudCcpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgn
c2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy15b3Nl
bWl0ZS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy15b3NlbWl0ZS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVj
dG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCBhODg4MmZlZmJjMGQxZDE3ZWU4OWIw
M2Y3YjE5MjJmOWY4OWI4NzkwLi4zYzY4OWUyOTczMDQ1YzhjMjI0OGI0OGY0YWVmNGZhN2U2NTQw
ODYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMteW9zZW1pdGUvanMvZG9t
L2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0
dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0yNjMsNiArMjYzLDExIEBAIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blBy
b3BlcnR5KCdnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmVu
dW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihn
bG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52YWx1
ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNl
CitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJk
RXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFibGUg
aXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdD
bGlwYm9hcmRFdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3NlRXZl
bnQKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2
ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdz
ZXQnKSBpcyBmYWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2pzL2Rv
bS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhw
ZWN0ZWQudHh0CmluZGV4IDM3MmI3YjAwMzg4MzYyMTAzYWM0NWQxOWVjYWZjNWQ2NzU5ZDMzYzIu
LjJjNTg1ODE4MDc5MTVlMzY1ZTIxYTU3OThjZmYxOGVlMDI4YjE4MTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1
dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2ds
b2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKQEAgLTI2Myw2ICsyNjMs
MTEgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVu
dFJlY3RMaXN0JykuaGFzT3duUHJvcGVydHkoJ2cKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdzZXQn
KSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0NsaWVudFJlY3RMaXN0JykuZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuY29uZmlndXJhYmxl
IGlzIHRydWUKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdD
bGlwYm9hcmRFdmVudCcpLnZhbHVlIGlzIENsaXBib2FyZEV2ZW50CitQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9w
ZXJ0eSgnZ2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxz
ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2Fy
ZEV2ZW50JykuZW51bWVyYWJsZSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuY29uZmlndXJhYmxlIGlzIHRydWUK
IFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50
JykudmFsdWUgaXMgQ2xvc2VFdmVudAogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UK
IFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50
JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vanMvZG9tL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKaW5kZXggN2VmOTU4ZDkyMzUyNGYyOWMxYzk5
N2YxOWU3N2FlMzM0MTM1OGQ4OC4uNjlkMzgzMDdkNGU0OWUxNDAxMmJkZmZmOWViYmMwN2M1ZTQ3
NTAzYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2pzL2RvbS9nbG9iYWwt
Y29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3dpbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVk
LnR4dApAQCAtMTY4LDYgKzE2OCwxMSBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnZwogUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0Jyku
aGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5lbnVtZXJhYmxlIGlzIGZhbHNl
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVj
dExpc3QnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykudmFsdWUgaXMgQ2xpcGJvYXJkRXZl
bnQKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9h
cmRFdmVudCcpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJv
cGVydHkoJ3NldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCitQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5j
b25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS52YWx1ZSBpcyBDbG9zZUV2ZW50CiBQQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3Bl
cnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291027</attachid>
            <date>2016-10-08 15:16:40 -0700</date>
            <delta_ts>2016-10-08 15:36:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163164-20161008151322.patch</filename>
            <type>text/plain</type>
            <size>45893</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2OTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWUwMTY0NjZmNmY3ZmYw
YzMxOTk4N2VmMGY5NWNmNzlmODc5NDk0NS4uZTQ1ZTNkODJjYjVlM2Q4ZGZlNzYyMDFkYjZmMDJk
MjdiOTgyYTU2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE2LTEwLTA4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENs
aXBib2FyZEV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjMxNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGQgc3VwcG9ydCBmb3IgQ2xpcGJvYXJkRXZlbnQ6CisgICAgICAgIC0gaHR0cHM6Ly93
d3cudzMub3JnL1RSL2NsaXBib2FyZC1hcGlzLyNjbGlwYm9hcmQtZXZlbnQtaW50ZXJmYWNlcwor
CisgICAgICAgIEZpcmVmb3ggYW5kIENocm9tZSBib3RoIGFscmVhZHkgc3VwcG9ydCB0aGlzLgor
CisgICAgICAgIFRoaXMgZ2l2ZXMgdXMgNSBtb3JlIHBvaW50cyBvbiBodG1sNXRlc3QuY29tLgor
CisgICAgICAgIFRlc3RzOiBlZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50Lmh0bWwK
KyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci5o
dG1sCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNl
cy5jcHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVu
dEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3bHlDcmVhdGVkKTogRGVsZXRl
ZC4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAg
ICAgICAoV2lsbENvbnZlcnRVbmRlZmluZWRUb0RlZmF1bHRQYXJhbWV0ZXJWYWx1ZSk6CisgICAg
ICAgIFdlIHVzZSBbXSBhcyBpbXBsaWNpdCBkZWZhdWx0IHZhbHVlIGZvciBkaWN0aW9uYXJ5IHBh
cmFtZXRlcnMuIFRoaXMgY2hhbmdlCisgICAgICAgIGlzIHNvIHdlIGNhbGwgY29udmVydERpY3Rp
b25hcnk8PigpIGV2ZW4gaWYgdGhlIHBhcmFtZXRlciBpcyB1bmRlZmluZWQKKyAgICAgICAgYmVj
YXVzZSB3ZSB3YW50IHRvIHBhc3MgYSBzdHJ1Y3QgdG8gdGhlIGltcGxlbWVudGF0aW9uIGluaXRp
YWxpemVkIHdpdGgKKyAgICAgICAgdGhlIGRlZmF1bHQgbWVtYmVyIHZhbHVlcyBkZWZpbmVkIGlu
IHRoZSBJREwuCisKKyAgICAgICAgKiBkb20vQ2xpcGJvYXJkRXZlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KToKKyAgICAgICAgKFdlYkNv
cmU6OkNsaXBib2FyZEV2ZW50OjpldmVudEludGVyZmFjZSk6CisgICAgICAgICogZG9tL0NsaXBi
b2FyZEV2ZW50Lmg6CisgICAgICAgICogZG9tL0NsaXBib2FyZEV2ZW50LmlkbDogQWRkZWQuCisg
ICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50OjpFdmVudCk6
CisgICAgICAgICogZG9tL0V2ZW50Lmg6CisgICAgICAgICogZG9tL0V2ZW50LmlkbDoKKyAgICAg
ICAgKiBkb20vRXZlbnRJbml0Lmg6IEFkZGVkLgorICAgICAgICAqIGRvbS9FdmVudEluaXQuaWRs
OiBBZGRlZC4KKyAgICAgICAgKiBkb20vRXZlbnROYW1lcy5pbjoKKyAgICAgICAgKiBkb20vTW91
c2VFdmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6TW91c2VFdmVudDo6ZGF0YVRyYW5zZmVyKToK
KyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6
OmRpc3BhdGNoQ1BQRXZlbnQpOgorCiAyMDE2LTEwLTA3ICBXZW5zb24gSHNpZWggIDx3ZW5zb25f
aHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBvcnQgb25iZWZvcmVpbnB1dCBldmVudCBo
YW5kbGluZyBmb3IgdGhlIG5ldyBJbnB1dEV2ZW50IHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggY2M0MDM4NzBjNWQ3MjczM2FjYWUxMzAwNDU4MzE1NDA3NmQ5NzE1My4uMjg4ZWE4MDQ3Nzc0
ODRhYmIwODIwNjc4N2JiZjdkZjA2ZmYyY2FkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTM3
NSw2ICszNzUsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIGRvbS9DaGls
ZE5vZGUuaWRsCiAgICAgZG9tL0NsaWVudFJlY3QuaWRsCiAgICAgZG9tL0NsaWVudFJlY3RMaXN0
LmlkbAorICAgIGRvbS9DbGlwYm9hcmRFdmVudC5pZGwKICAgICBkb20vQ29tbWVudC5pZGwKICAg
ICBkb20vQ29tcG9zaXRpb25FdmVudC5pZGwKICAgICBkb20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5
LmlkbApAQCAtMzk3LDYgKzM5OCw3IEBAIHNldChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAg
ICAgZG9tL0VsZW1lbnQuaWRsCiAgICAgZG9tL0Vycm9yRXZlbnQuaWRsCiAgICAgZG9tL0V2ZW50
LmlkbAorICAgIGRvbS9FdmVudEluaXQuaWRsCiAgICAgZG9tL0V2ZW50VGFyZ2V0LmlkbAogICAg
IGRvbS9Gb2N1c0V2ZW50LmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IGJmYmQ2OTBlOTczMDg5Y2IyYjQ5NzM0YWVkMDI5
MWIyNjhkMWEyNjguLjYxMjYzMTkyMGU1Mjc3MjQ4NDEyNzNhM2E5NTU0MjMyMzE4Yzk5OWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTEzNiw2ICsxMzYsNyBAQAogI2luY2x1ZGUg
IkpTQ1NTVW5rbm93blJ1bGUuY3BwIgogI2luY2x1ZGUgIkpTQ1NTVmFsdWUuY3BwIgogI2luY2x1
ZGUgIkpTQ1NTVmFsdWVMaXN0LmNwcCIKKyNpbmNsdWRlICJKU0NsaXBib2FyZEV2ZW50LmNwcCIK
ICNpZiBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKQogI2luY2x1ZGUgIkpTQ3VzdG9tRWxlbWVudFJl
Z2lzdHJ5LmNwcCIKICNlbmRpZgpAQCAtMTg4LDYgKzE4OSw3IEBACiAjaW5jbHVkZSAiSlNFbGVt
ZW50LmNwcCIKICNpbmNsdWRlICJKU0Vycm9yRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTRXZlbnQu
Y3BwIgorI2luY2x1ZGUgIkpTRXZlbnRJbml0LmNwcCIKICNpbmNsdWRlICJKU0V2ZW50U291cmNl
LmNwcCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmNwcCIKICNpbmNsdWRlICJKU0ZldGNoQm9k
eS5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA1YTEwYjUwZGZhMWM1OTgy
ZTdmZjk2Y2M2NjY3MDhjOWFjNWQ2YmY0Li44OTViYzhkZjJmZjlhMDNkZGQ4NzhhMjUzZTgwOGEx
NzBjNDE2OWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTI4Niw2ICsyODYs
NyBAQCBKU19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9kb20vQ2xpZW50UmVjdC5p
ZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0NsaWVudFJlY3RMaXN0LmlkbCBcCiAgICAgJChXZWJD
b3JlKS9kb20vQ29tbWVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0NsaXBib2FyZEV2ZW50
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQ29tcG9zaXRpb25FdmVudC5pZGwgXAogICAgICQo
V2ViQ29yZSkvZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5pZGwgXAogICAgICQoV2ViQ29yZSkv
ZG9tL0N1c3RvbUV2ZW50LmlkbCBcCkBAIC0zMDcsNiArMzA4LDcgQEAgSlNfQklORElOR19JRExT
ID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0VsZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Rv
bS9FcnJvckV2ZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnQuaWRsIFwKKyAgICAk
KFdlYkNvcmUpL2RvbS9FdmVudEluaXQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudExp
c3RlbmVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRUYXJnZXQuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2RvbS9Gb2N1c0V2ZW50LmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzVkMjlhZDUxOTk2YmZkOTBhZDI5
M2NiZjZmNDA2MTUyYjlmN2Q2NC4uYWE4NmQwOWE4ZTkzZmNjOGRhZDE3MjZkNmJmOWIzODdiMTAx
OTgxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtMjg4OSw2ICsyODg5LDExIEBACiAJCTgzNjc1ODdFMUM1NkU5OUIwMDhBMTA4
NyAvKiBKU0hUTUxEYXRhRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzRCODZBOTFDNTZFOTNFMDBGM0YwRTMgLyogSlNIVE1MRGF0YUVs
ZW1lbnQuY3BwICovOyB9OwogCQk4MzY3NTg3RjFDNTZFOTlCMDA4QTEwODcgLyogSlNIVE1MRGF0
YUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzNEI4NkE4MUM1NkU5M0UwMEYzRjBFMyAvKiBKU0hUTUxEYXRhRWxlbWVudC5oICovOyB9Owog
CQk4MzZDMTQ0MzFDREVBRkQ4MDA3MzQ5M0YgLyogSlNYUGF0aE5TUmVzb2x2ZXJDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2QzE0NDIx
Q0RFQUZDQTAwNzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCAqLzsgfTsKKwkJ
ODM2RDAzMkExREE4OUI5MjAwRkZEOTZCIC8qIEV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2RDAzMjgxREE4OUI3MzAwRkZEOTZCIC8q
IEV2ZW50SW5pdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTgzNkQwMzJGMURBOEExM0EwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyQjFEQThBMTMy
MDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovOyB9OworCQk4MzZEMDMzMDFEQThBMTNEMDBG
RkQ5NkIgLyogSlNFdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzNkQwMzJDMURBOEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICov
OyB9OworCQk4MzZEMDMzMTFEQThBMTNGMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyRDFE
QThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi87IH07CisJCTgzNkQwMzMy
MURBOEExNDIwMEZGRDk2QiAvKiBKU0NsaXBib2FyZEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyRTFEQThBMTMyMDBGRkQ5NkIgLyog
SlNDbGlwYm9hcmRFdmVudC5oICovOyB9OwogCQk4MzZEQUEwNjFDRUFCODBEMDBBMkI3MDcgLyog
UmVuZGVyRGVzY2VuZGFudEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzZEQUEwNTFDRUFCN0NEMDBBMkI3MDcgLyogUmVuZGVyRGVzY2Vu
ZGFudEl0ZXJhdG9yLmggKi87IH07CiAJCTgzNkZCQ0VBMTc4QzExMzIwMEIyMUExNSAvKiBTVkdB
bmltYXRlZFR5cGVBbmltYXRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzZGQkNFOTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBl
QW5pbWF0b3IuY3BwICovOyB9OwogCQk4MzZGQkNFQzE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5p
bWF0ZWRQcm9wZXJ0eS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4MzZGQkNFQjE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5j
cHAgKi87IH07CkBAIC0xMDAyMiw2ICsxMDAyNywxMyBAQAogCQk4MzVGOEIyNjFEMkQ5MEJBMDBF
NDA4RUMgLyogU2xvdGFibGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNsb3RhYmxlLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2OUU1OEYxQUZERDAzMDAwODdERjY4
IC8qIE5vbkRvY3VtZW50VHlwZUNoaWxkTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm9uRG9jdW1lbnRUeXBlQ2hp
bGROb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2QzE0NDIxQ0RFQUZD
QTAwNzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMjcxREE4OUI3MzAwRkZEOTZCIC8qIENsaXBi
b2FyZEV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDbGlwYm9hcmRFdmVudC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzI4MURBODlCNzMwMEZGRDk2QiAv
KiBFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRJbml0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2
QiAvKiBFdmVudEluaXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEV2ZW50SW5pdC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzJCMURBOEExMzIwMEZGRDk2QiAv
KiBKU0V2ZW50SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0V2ZW50SW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzJDMURB
OEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0V2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZE
MDMyRDFEQThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NsaXBib2FyZEV2ZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJv
YXJkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDbGlwYm9hcmRF
dmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzZEQUEwNTFDRUFCN0NEMDBB
MkI3MDcgLyogUmVuZGVyRGVzY2VuZGFudEl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFJlbmRlckRlc2NlbmRhbnRJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk4MzZGQkNFOTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBl
QW5pbWF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQW5p
bWF0ZWRUeXBlQW5pbWF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzZG
QkNFQjE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmltYXRlZFByb3BlcnR5LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5NjgzLDYgKzE5Njk1LDggQEAKIAkJCQlCQzk0
NjM0NzEwN0E5MzY2MDA4NTcxOTMgLyogSlNCZWZvcmVMb2FkRXZlbnQuaCAqLywKIAkJCQk4MjI1
NDMyQ0E5RDRCNENGNDYyOEVDN0YgLyogSlNCZWZvcmVVbmxvYWRFdmVudC5jcHAgKi8sCiAJCQkJ
MjlFMDRBMjdCRUQyRjgxRjk4RTkwMjJCIC8qIEpTQmVmb3JlVW5sb2FkRXZlbnQuaCAqLywKKwkJ
CQk4MzZEMDMyRDFEQThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi8sCisJ
CQkJODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuaCAqLywKIAkJ
CQk3OUFDOTIxNjEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmNwcCAqLywK
IAkJCQk3OUFDOTIxNzEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmggKi8s
CiAJCQkJRTQ3NzhCN0QxMTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuY3BwICovLApA
QCAtMTk2OTEsNiArMTk3MDUsOCBAQAogCQkJCTJFQ0Y3QURCMTAxNjJCMzgwMDQyN0RFNyAvKiBK
U0Vycm9yRXZlbnQuaCAqLywKIAkJCQkxNEU4Mzc4MzA5Rjg1RDFDMDBCODVBRTQgLyogSlNFdmVu
dC5jcHAgKi8sCiAJCQkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLywK
KwkJCQk4MzZEMDMyQjFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovLAorCQkJ
CTgzNkQwMzJDMURBOEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovLAogCQkJCUM2QTcw
MzMyNUM5RDBCNkNEQ0JDNEQ3OCAvKiBKU0V2ZW50VGFyZ2V0LmNwcCAqLywKIAkJCQk1RkM3REMy
NkNGRTI1NjMyMDBCODVBRTUgLyogSlNFdmVudFRhcmdldC5oICovLAogCQkJCUI2RDlEMjdBMTRF
QUMwODYwMDkwRDc1RSAvKiBKU0ZvY3VzRXZlbnQuY3BwICovLApAQCAtMjI5OTMsNiArMjMwMDks
NyBAQAogCQkJCUJDQzA2NTdDMEYzQ0UxQjcwMENEMkQ4NyAvKiBDbGllbnRSZWN0TGlzdC5pZGwg
Ki8sCiAJCQkJODUwMzFCMjkwQTQ0RUZDNzAwRjk5MkUwIC8qIENsaXBib2FyZEV2ZW50LmNwcCAq
LywKIAkJCQk4NTAzMUIyQTBBNDRFRkM3MDBGOTkyRTAgLyogQ2xpcGJvYXJkRXZlbnQuaCAqLywK
KwkJCQk4MzZEMDMyNzFEQTg5QjczMDBGRkQ5NkIgLyogQ2xpcGJvYXJkRXZlbnQuaWRsICovLAog
CQkJCTlCRDhBOTU5MThCRUZDNzYwMDk4N0U5QSAvKiBDb2xsZWN0aW9uSW5kZXhDYWNoZS5jcHAg
Ki8sCiAJCQkJRTQyNUE0OTkxODI5MkI4NDAwMjBDRkNGIC8qIENvbGxlY3Rpb25JbmRleENhY2hl
LmggKi8sCiAJCQkJNjU1MEI2OTcwOTlERjAyNzAwOTBENzgxIC8qIENvbW1lbnQuY3BwICovLApA
QCAtMjMxMTMsNiArMjMxMzAsOCBAQAogCQkJCTQxMzhEMzMzMTI0NDA1NDgwMDMyM0QzMyAvKiBF
dmVudENvbnRleHQuaCAqLywKIAkJCQk0MThBMDZDRjEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnRE
aXNwYXRjaGVyLmNwcCAqLywKIAkJCQk0MThBMDZDRTEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnRE
aXNwYXRjaGVyLmggKi8sCisJCQkJODM2RDAzMjgxREE4OUI3MzAwRkZEOTZCIC8qIEV2ZW50SW5p
dC5oICovLAorCQkJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2QiAvKiBFdmVudEluaXQuaWRsICov
LAogCQkJCTkzNUZCQzQ0MDlCQTAwQjkwMEUyMzBCMSAvKiBFdmVudExpc3RlbmVyLmggKi8sCiAJ
CQkJODVBRkE3NDEwQUFGMjk4NDAwRTg0MzA1IC8qIEV2ZW50TGlzdGVuZXIuaWRsICovLAogCQkJ
CUFENDQ5NUYxMTQxRkMwODkwMDU0MUVERiAvKiBFdmVudExpc3RlbmVyTWFwLmNwcCAqLywKQEAg
LTI1Mjg5LDYgKzI1MzA4LDcgQEAKIAkJCQk4QTlBNTg4ODExRTg0RjM3MDA4QUNGRDEgLyogSlNQ
ZXJmb3JtYW5jZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkRFQTYyNDcxNTIxMDJGQzAw
NDc5REYwIC8qIEpTUGVyaW9kaWNXYXZlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5M0I3MEQ2QzA5
RUIwQzdDMDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4MzZEMDMzMDFEQThBMTNEMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTUxODlGMDFFMTBCMzdCRDkwMEYzQzczOSAvKiBKU1BvcFN0YXRlRXZlbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTU5ODM2NUREMTM1NUY1NTcwMDFCMTg1RCAvKiBKU1Bvc2l0
aW9uQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUZFODBEQTcyMEU5QzQ3MkYwMDBENkY3
NSAvKiBKU1Bvc2l0aW9uRXJyb3IuaCBpbiBIZWFkZXJzICovLApAQCAtMjYxNzEsNiArMjYxOTEs
NyBAQAogCQkJCUJDRTMyQjlDMTUxN0MwQjIwMEY1NDJFQyAvKiBSZW5kZXJNdWx0aUNvbHVtblNl
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTRERTVDOTIxRDgzMDExRDAwMTY0RjJBIC8qIENTU1N1
cHBvcnRzUGFyc2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzFBN0Q5ODE4RkNCNUIwMDA0MjE4
NzkgLyogUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTgzNkQwMzJBMURBODlCOTIwMEZGRDk2QiAvKiBFdmVudEluaXQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCThBQzgyMkZEMTgwRkMwMzMwMEZCNjRENSAvKiBSZW5kZXJOYW1lZEZsb3dGcmFn
bWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM4NUYyM0QxNTE5MTVFMDAwQkMxN0JFIC8qIFJl
bmRlck5hbWVkRmxvd1RocmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNFQTQ4ODAwOTdEOTMw
MjAwOTRDOUU0IC8qIFJlbmRlck9iamVjdC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNjk2OSw2ICsy
Njk5MCw3IEBACiAJCQkJOUIyRDhBNzkxNDk5N0NDRjAwRUNFRjNFIC8qIFVuZG9TdGVwLmggaW4g
SGVhZGVycyAqLywKIAkJCQlBODYzRTIwMTEzNDM0MTIwMDAyNzQ5MjYgLyogVW5pY29kZUJpZGku
aCBpbiBIZWFkZXJzICovLAogCQkJCTUxODg2NEUxMUJCQUY1NzQwMEU1NDBDOSAvKiBVbmlxdWVJ
REJEYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM2RDAzMzIxREE4QTE0MjAwRkZEOTZC
IC8qIEpTQ2xpcGJvYXJkRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxOThGN0E1MUJCREI3
OTMwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZUNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICov
LAogCQkJCTUxOThGN0E5MUJCREQzODUwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZVRyYW5z
YWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNEFGQ0ZBNTBEQUYyOUEzMDBGNUY1NUMgLyog
VW5pdEJlemllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yODE0MCw2ICsyODE2Miw3IEBACiAJCQkJ
OUJBQjZDNkQxMjU1MDYzMTAwMTYyNkQ0IC8qIEVkaXRpbmdTdHlsZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk0QjMwNDNDQzBBRTAzNzNCMDBBODI2NDcgLyogRWRpdG9yLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTlCNTVFRUU5MUIzRTg4OTgwMDUzNDJCQyAvKiBFZGl0b3JDb2NvYS5tbSBpbiBT
b3VyY2VzICovLAorCQkJCTgzNkQwMzJGMURBOEExM0EwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk5M0EzOEI0QjBEMEU1ODA4MDA2ODcyQzIgLyogRWRpdG9y
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRUQxM0QzQTBDRUE5MzQ2MDBEODk0NjYg
LyogRWRpdG9ySU9TLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRUQ1MDFEQzYwQjI0OUYyOTAwQUUx
OEQ5IC8qIEVkaXRvck1hYy5tbSBpbiBTb3VyY2VzICovLApAQCAtMzA1MDgsNiArMzA1MzEsNyBA
QAogCQkJCTMxNDAzNzlDMTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5t
bSBpbiBTb3VyY2VzICovLAogCQkJCUNEQzk3OUY0MUM0OThDMDkwMERCNTBENCAvKiBXZWJDb3Jl
TlNFcnJvckV4dHJhcy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTkzNEQ5QkE1MEI4QzExNkIwMDdC
NDJBOSAvKiBXZWJDb3JlTlNTdHJpbmdFeHRyYXMubW0gaW4gU291cmNlcyAqLywKKwkJCQk4MzZE
MDMzMTFEQThBMTNGMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlDNUI0QzI0RTE1MDkyMzZDMDBBNkVGMzcgLyogV2ViQ29yZU5TVVJMRXh0cmFzLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0QyMjVDMEIxQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVO
U1VSTFNlc3Npb24ubW0gaW4gU291cmNlcyAqLywKIAkJCQlCNTBGNUI4MTBFOTZDRDk5MDBBRDcx
QTYgLyogV2ViQ29yZU9iakNFeHRyYXMubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAKaW5kZXggMDE1Y2E2YjFlY2ZjYzI5YWU2
ZmY0YTJhMDIwMGU3NDc4ZWY4ZTM3Mi4uZDcyYzU4NzBhZjYxY2FmMmNkM2U2NjNhZGFmMzM5MjU2
ZTkzZTZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1
c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5j
cHAKQEAgLTQzLDExICs0Myw2IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotSlNWYWx1ZSBKU0V2ZW50OjpjbGlwYm9hcmREYXRhKEV4ZWNTdGF0ZSYgc3Rh
dGUpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIHdyYXBwZWQoKS5pc0NsaXBib2FyZEV2ZW50KCkgPyB0
b0pTKCZzdGF0ZSwgZ2xvYmFsT2JqZWN0KCksIHdyYXBwZWQoKS5jbGlwYm9hcmREYXRhKCkpIDog
anNVbmRlZmluZWQoKTsKLX0KLQogI2RlZmluZSBUUllfVE9fV1JBUF9XSVRIX0lOVEVSRkFDRShp
bnRlcmZhY2VOYW1lKSBcCiAgICAgY2FzZSBpbnRlcmZhY2VOYW1lIyNJbnRlcmZhY2VUeXBlOiBc
CiAgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPGludGVyZmFjZU5hbWU+KGdsb2JhbE9iamVj
dCwgV1RGTW92ZShldmVudCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBmYjg2NmMzNmE4NGYxMWU2ZWY0MTljZTExNGYy
ODdkZmM0NTQxOGYxLi5lYzM4MmQ0YTIzYjVjMTdkZDVmOWYyNGY5NGU0MWM0YjAyNWJlNDYwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQpAQCAtMzk0OSw2ICszOTQ5LDcgQEAgc3ViIFdpbGxDb252ZXJ0VW5kZWZpbmVkVG9EZWZh
dWx0UGFyYW1ldGVyVmFsdWUKICAgICByZXR1cm4gMSBpZiBkZWZpbmVkICRhdXRvbWF0aWNhbGx5
R2VuZXJhdGVkRGVmYXVsdFZhbHVlICYmICRhdXRvbWF0aWNhbGx5R2VuZXJhdGVkRGVmYXVsdFZh
bHVlIGVxICRkZWZhdWx0VmFsdWU7CiAKICAgICByZXR1cm4gMSBpZiAkZGVmYXVsdFZhbHVlIGVx
ICJudWxsIiAmJiAkY29kZUdlbmVyYXRvci0+SXNXcmFwcGVyVHlwZSgkcGFyYW1ldGVyVHlwZSk7
CisgICAgcmV0dXJuIDEgaWYgJGRlZmF1bHRWYWx1ZSBlcSAiW10iICYmICRjb2RlR2VuZXJhdG9y
LT5Jc0RpY3Rpb25hcnlUeXBlKCRwYXJhbWV0ZXJUeXBlKTsKIAogICAgIHJldHVybiAwOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5jcHAKaW5kZXggYTFhZmQ4ZWRjZTIzZWI0NTJl
YzE4Yjk1MThlYzA5YzllMDIxNGQxNS4uNmJmNmUxNzBlNzBhZTFjNzMzMWQwZmE5MWI0MGNhNmM2
NWEwMjhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJkRXZlbnQuY3BwCkBAIC0yOCw4ICsy
OCw5IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotQ2xpcGJvYXJkRXZlbnQ6OkNsaXBib2Fy
ZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9v
bCBjYW5jZWxhYmxlLCBEYXRhVHJhbnNmZXIqIGRhdGFUcmFuc2ZlcikKLSAgICA6IEV2ZW50KGV2
ZW50VHlwZSwgY2FuQnViYmxlLCBjYW5jZWxhYmxlKSwgbV9kYXRhVHJhbnNmZXIoZGF0YVRyYW5z
ZmVyKQorQ2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYg
dHlwZSwgY29uc3QgSW5pdCYgaW5pdCwgSXNUcnVzdGVkIGlzVHJ1c3RlZCkKKyAgICA6IEV2ZW50
KHR5cGUsIGluaXQsIGlzVHJ1c3RlZCkKKyAgICAsIG1fY2xpcGJvYXJkRGF0YShpbml0LmNsaXBi
b2FyZERhdGEpCiB7CiB9CiAKQEAgLTM5LDggKzQwLDcgQEAgQ2xpcGJvYXJkRXZlbnQ6On5DbGlw
Ym9hcmRFdmVudCgpCiAKIEV2ZW50SW50ZXJmYWNlIENsaXBib2FyZEV2ZW50OjpldmVudEludGVy
ZmFjZSgpIGNvbnN0CiB7Ci0gICAgLy8gTm90aWNlIHRoYXQgdGhlcmUgaXMgbm8gQ2xpcGJvYXJk
RXZlbnQuaWRsLgotICAgIHJldHVybiBFdmVudEludGVyZmFjZVR5cGU7CisgICAgcmV0dXJuIENs
aXBib2FyZEV2ZW50SW50ZXJmYWNlVHlwZTsKIH0KIAogYm9vbCBDbGlwYm9hcmRFdmVudDo6aXND
bGlwYm9hcmRFdmVudCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xp
cGJvYXJkRXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5oCmluZGV4
IGY0MWExYzk4ZWRiNDc5NWE1YzVmMGE4ZGM3MzZmZWEzZjE1YWUzYTguLmY0ZDMzNzQ4ZTBmMDMx
ZjY0OTViYzEzOGQ4ZGQ2YTk3ZDhjZjRhZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9DbGlwYm9hcmRFdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVu
dC5oCkBAIC0yOCwyNyArMjgsMzggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xh
c3MgRGF0YVRyYW5zZmVyOworY2xhc3MgRGF0YVRyYW5zZmVyOwogCi0gICAgY2xhc3MgQ2xpcGJv
YXJkRXZlbnQgZmluYWwgOiBwdWJsaWMgRXZlbnQgewotICAgIHB1YmxpYzoKLSAgICAgICAgdmly
dHVhbCB+Q2xpcGJvYXJkRXZlbnQoKTsKK2NsYXNzIENsaXBib2FyZEV2ZW50IGZpbmFsIDogcHVi
bGljIEV2ZW50IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5DbGlwYm9hcmRFdmVudCgpOwogCi0g
ICAgICAgIHN0YXRpYyBSZWY8Q2xpcGJvYXJkRXZlbnQ+IGNyZWF0ZShjb25zdCBBdG9taWNTdHJp
bmcmIHR5cGUsIGJvb2wgY2FuQnViYmxlQXJnLCBib29sIGNhbmNlbGFibGVBcmcsIERhdGFUcmFu
c2ZlciogY2xpcGJvYXJkQXJnKQorICAgIHN0cnVjdCBJbml0IDogcHVibGljIEV2ZW50SW5pdCB7
CisgICAgICAgIEluaXQoYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIGJvb2wgY29tcG9z
ZWQsIFJlZlB0cjxEYXRhVHJhbnNmZXI+JiYgY2xpcGJvYXJkRGF0YSkKKyAgICAgICAgICAgIDog
RXZlbnRJbml0IHsgYnViYmxlcywgY2FuY2VsYWJsZSwgY29tcG9zZWQgfQorICAgICAgICAgICAg
LCBjbGlwYm9hcmREYXRhKFdURk1vdmUoY2xpcGJvYXJkRGF0YSkpCiAgICAgICAgIHsKLSAgICAg
ICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENsaXBib2FyZEV2ZW50KHR5cGUsIGNhbkJ1YmJs
ZUFyZywgY2FuY2VsYWJsZUFyZywgY2xpcGJvYXJkQXJnKSk7CiAgICAgICAgIH0KIAotICAgICAg
ICBEYXRhVHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gbV9kYXRhVHJhbnNmZXIuZ2V0KCk7IH0KKyAgICAgICAgUmVmUHRyPERhdGFUcmFuc2Zl
cj4gY2xpcGJvYXJkRGF0YTsKKyAgICB9OwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgQ2xpcGJv
YXJkRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGNhbkJ1YmJsZUFyZywgYm9v
bCBjYW5jZWxhYmxlQXJnLCBEYXRhVHJhbnNmZXIqKTsKKyAgICBzdGF0aWMgUmVmPENsaXBib2Fy
ZEV2ZW50PiBjcmVhdGUoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBjb25zdCBJbml0JiBpbml0
LCBJc1RydXN0ZWQgaXNUcnVzdGVkID0gSXNUcnVzdGVkOjpObykKKyAgICB7CisgICAgICAgIGF1
dG8gZXZlbnQgPSBhZG9wdFJlZigqbmV3IENsaXBib2FyZEV2ZW50KHR5cGUsIGluaXQsIGlzVHJ1
c3RlZCkpOworICAgICAgICByZXR1cm4gZXZlbnQ7CisgICAgfQogCi0gICAgICAgIEV2ZW50SW50
ZXJmYWNlIGV2ZW50SW50ZXJmYWNlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgICAgIGJvb2wgaXND
bGlwYm9hcmRFdmVudCgpIGNvbnN0IG92ZXJyaWRlOworICAgIERhdGFUcmFuc2ZlciogY2xpcGJv
YXJkRGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpcGJvYXJkRGF0YS5nZXQoKTsgfQogCi0gICAg
ICAgIFJlZlB0cjxEYXRhVHJhbnNmZXI+IG1fZGF0YVRyYW5zZmVyOwotICAgIH07Citwcml2YXRl
OgorICAgIENsaXBib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgSW5p
dCYsIElzVHJ1c3RlZCk7CisKKyAgICBFdmVudEludGVyZmFjZSBldmVudEludGVyZmFjZSgpIGNv
bnN0IGZpbmFsOworICAgIGJvb2wgaXNDbGlwYm9hcmRFdmVudCgpIGNvbnN0IGZpbmFsOworCisg
ICAgUmVmUHRyPERhdGFUcmFuc2Zlcj4gbV9jbGlwYm9hcmREYXRhOworfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJk
RXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi40YTQxOTkyYWMyYjdiZWIxYzdkOWJlZjRhN2U1MDlmMWJlNGRhOGNkCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbApAQCAtMCwwICsx
LDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBS
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
CisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICovCisK
K1sKKyAgICBDb25zdHJ1Y3RvcihET01TdHJpbmcgdHlwZSwgb3B0aW9uYWwgQ2xpcGJvYXJkRXZl
bnRJbml0IGV2ZW50SW5pdERpY3QpCitdIGludGVyZmFjZSBDbGlwYm9hcmRFdmVudCA6IEV2ZW50
IHsKKyAgICByZWFkb25seSBhdHRyaWJ1dGUgRGF0YVRyYW5zZmVyPyBjbGlwYm9hcmREYXRhOwor
fTsKKworZGljdGlvbmFyeSBDbGlwYm9hcmRFdmVudEluaXQgOiBFdmVudEluaXQgeworICAgIERh
dGFUcmFuc2Zlcj8gY2xpcGJvYXJkRGF0YSA9IG51bGw7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0V2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudC5jcHAKaW5k
ZXggZDYzODI0ZGFhMWQ5MzgzOWFhNTJhZmE5MzkyY2E2ZWM3ZmY5MjEyNy4uNTAxNjA0NDBjZmQ2
Yjg4NjBlY2EyMmZjZTljOTljODFlZTkyOWRlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL0V2ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuY3BwCkBAIC01Niwx
MiArNTYsMTMgQEAgRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBi
b29sIGNhbkJ1YmJsZUFyZywgYm9vbCBjYW5jZWxhYmxlQXIKIHsKIH0KIAotRXZlbnQ6OkV2ZW50
KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBFdmVudEluaXQmIGluaXRpYWxp
emVyKQorRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBF
dmVudEluaXQmIGluaXRpYWxpemVyLCBJc1RydXN0ZWQgaXNUcnVzdGVkKQogICAgIDogbV90eXBl
KGV2ZW50VHlwZSkKICAgICAsIG1faXNJbml0aWFsaXplZCh0cnVlKQogICAgICwgbV9jYW5CdWJi
bGUoaW5pdGlhbGl6ZXIuYnViYmxlcykKICAgICAsIG1fY2FuY2VsYWJsZShpbml0aWFsaXplci5j
YW5jZWxhYmxlKQogICAgICwgbV9jb21wb3NlZChpbml0aWFsaXplci5jb21wb3NlZCkKKyAgICAs
IG1faXNUcnVzdGVkKGlzVHJ1c3RlZCA9PSBJc1RydXN0ZWQ6OlllcykKICAgICAsIG1fY3JlYXRl
VGltZShjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKGN1cnJlbnRUaW1lKCkpKQogewogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRXZlbnQuaAppbmRleCBiYWQ5NzE4ODMwMjQxZTY1ZmE1YWI5ZDI5NjZkMjgzYWJiMTY5Njdl
Li5kNWNlM2QwNWZjNTNhMjYxODZlNjBiMTYxM2E3ZmRiMDI0NTVkMjcwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQu
aApAQCAtMjUsNiArMjUsNyBAQAogI2RlZmluZSBFdmVudF9oCiAKICNpbmNsdWRlICJET01UaW1l
U3RhbXAuaCIKKyNpbmNsdWRlICJFdmVudEluaXQuaCIKICNpbmNsdWRlICJFdmVudEludGVyZmFj
ZXMuaCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlZC5oPgpAQCAtMzgsMTIgKzM5LDYgQEAgY2xhc3MgRXZlbnRQYXRoOwogY2xhc3MgRXZlbnRU
YXJnZXQ7CiBjbGFzcyBIVE1MSUZyYW1lRWxlbWVudDsKIAotc3RydWN0IEV2ZW50SW5pdCB7Ci0g
ICAgYm9vbCBidWJibGVzIHsgZmFsc2UgfTsKLSAgICBib29sIGNhbmNlbGFibGUgeyBmYWxzZSB9
OwotICAgIGJvb2wgY29tcG9zZWQgeyBmYWxzZSB9OwotfTsKLQogZW51bSBFdmVudEludGVyZmFj
ZSB7CiAKICNkZWZpbmUgRE9NX0VWRU5UX0lOVEVSRkFDRV9ERUNMQVJFKG5hbWUpIG5hbWUjI0lu
dGVyZmFjZVR5cGUsCkBAIC01NCw2ICs0OSw4IEBAIERPTV9FVkVOVF9JTlRFUkZBQ0VTX0ZPUl9F
QUNIKERPTV9FVkVOVF9JTlRFUkZBQ0VfREVDTEFSRSkKIAogY2xhc3MgRXZlbnQgOiBwdWJsaWMg
U2NyaXB0V3JhcHBhYmxlLCBwdWJsaWMgUmVmQ291bnRlZDxFdmVudD4gewogcHVibGljOgorICAg
IGVudW0gY2xhc3MgSXNUcnVzdGVkIHsgTm8sIFllcyB9OworCiAgICAgZW51bSBQaGFzZVR5cGUg
eyAKICAgICAgICAgTk9ORSAgICAgICAgICAgICAgICA9IDAsCiAgICAgICAgIENBUFRVUklOR19Q
SEFTRSAgICAgPSAxLCAKQEAgLTEzNCw4ICsxMzEsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBsZWdh
Y3lSZXR1cm5WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuICFkZWZhdWx0UHJldmVudGVkKCk7IH0KICAg
ICB2b2lkIHNldExlZ2FjeVJldHVyblZhbHVlKGJvb2wgcmV0dXJuVmFsdWUpIHsgc2V0RGVmYXVs
dFByZXZlbnRlZCghcmV0dXJuVmFsdWUpOyB9CiAKLSAgICBEYXRhVHJhbnNmZXIqIGNsaXBib2Fy
ZERhdGEoKSBjb25zdCB7IHJldHVybiBpc0NsaXBib2FyZEV2ZW50KCkgPyBpbnRlcm5hbERhdGFU
cmFuc2ZlcigpIDogbnVsbHB0cjsgfQotCiAgICAgdmlydHVhbCBFdmVudEludGVyZmFjZSBldmVu
dEludGVyZmFjZSgpIGNvbnN0OwogCiAgICAgLy8gVGhlc2UgZXZlbnRzIGFyZSBnZW5lcmFsIGNs
YXNzZXMgb2YgZXZlbnRzLgpAQCAtMTg4LDggKzE4Myw2IEBAIHB1YmxpYzoKICAgICBFdmVudCog
dW5kZXJseWluZ0V2ZW50KCkgY29uc3QgeyByZXR1cm4gbV91bmRlcmx5aW5nRXZlbnQuZ2V0KCk7
IH0KICAgICB2b2lkIHNldFVuZGVybHlpbmdFdmVudChFdmVudCopOwogCi0gICAgdmlydHVhbCBE
YXRhVHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3QgeyByZXR1cm4gMDsgfQot
CiAgICAgYm9vbCBpc0JlaW5nRGlzcGF0Y2hlZCgpIGNvbnN0IHsgcmV0dXJuIGV2ZW50UGhhc2Uo
KTsgfQogCiAgICAgdmlydHVhbCBSZWY8RXZlbnQ+IGNsb25lRm9yKEhUTUxJRnJhbWVFbGVtZW50
KikgY29uc3Q7CkBAIC0yMDAsNyArMTkzLDcgQEAgcHJvdGVjdGVkOgogICAgIEV2ZW50KCk7CiAg
ICAgV0VCQ09SRV9FWFBPUlQgRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGNh
bkJ1YmJsZSwgYm9vbCBjYW5jZWxhYmxlKTsKICAgICBFdmVudChjb25zdCBBdG9taWNTdHJpbmcm
IHR5cGUsIGJvb2wgY2FuQnViYmxlLCBib29sIGNhbmNlbGFibGUsIGRvdWJsZSB0aW1lc3RhbXAp
OwotICAgIEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgRXZlbnRJbml0Jik7
CisgICAgRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBjb25zdCBFdmVudEluaXQmLCBJ
c1RydXN0ZWQgPSBJc1RydXN0ZWQ6Ok5vKTsKIAogICAgIHZpcnR1YWwgdm9pZCByZWNlaXZlZFRh
cmdldCgpOwogICAgIGJvb2wgZGlzcGF0Y2hlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdGFyZ2V0OyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsIGIvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50LmlkbAppbmRleCBmZDgyYTFjNjFkYmEyYzFlYjUyZWNjYTI1ZTc2ZmY1ZjAx
NzYyNjRlLi5kNTU0MmNhNDk4MTQ5NmY4MDU4ZjE5YjQxZmUzMmU1YWE3NTEwNzE2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudC5pZGwKQEAgLTcxLDYgKzcxLDQgQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRXZl
bnRUYXJnZXQgc3JjRWxlbWVudDsKICAgICBbSW1wbGVtZW50ZWRBcz1sZWdhY3lSZXR1cm5WYWx1
ZV0gYXR0cmlidXRlIGJvb2xlYW4gcmV0dXJuVmFsdWU7CiAgICAgYXR0cmlidXRlIGJvb2xlYW4g
Y2FuY2VsQnViYmxlOwotCi0gICAgW0N1c3RvbV0gcmVhZG9ubHkgYXR0cmlidXRlIERhdGFUcmFu
c2ZlciBjbGlwYm9hcmREYXRhOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
dmVudEluaXQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEluaXQuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
NTQ4ZjRlODU0ZDQ0Zjk5NDZiOTk2ZDQ3NTE5YzMxYWU1NTVlZjc5Ci0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50SW5pdC5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjcHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgRXZl
bnRJbml0IHsKKyAgICBib29sIGJ1YmJsZXMgeyBmYWxzZSB9OworICAgIGJvb2wgY2FuY2VsYWJs
ZSB7IGZhbHNlIH07CisgICAgYm9vbCBjb21wb3NlZCB7IGZhbHNlIH07Cit9OworCit9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRJbml0LmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FdmVudEluaXQuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU1NWEwMzAzNGNlODQyYjhiYThiMWJlN2Rm
OWRkNGY2ZjExYmE5ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZl
bnRJbml0LmlkbApAQCAtMCwwICsxLDMwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE2IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworZGljdGlvbmFyeSBFdmVu
dEluaXQgeworICAgIGJvb2xlYW4gYnViYmxlcyA9IGZhbHNlOworICAgIGJvb2xlYW4gY2FuY2Vs
YWJsZSA9IGZhbHNlOworICAgIGJvb2xlYW4gY29tcG9zZWQgPSBmYWxzZTsKK307CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudE5hbWVzLmluCmluZGV4IDAzYjY3N2VkZGIxZjk4NGRmZGFmYjhkMTk4YzUwMzYxOWUy
OWFkY2IuLjkyNzdkMjNmYmNlZGYyMzkxMjI5OGUwMDY0OGViM2M4NmYyZjQ2ZDcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FdmVudE5hbWVzLmluCkBAIC02LDYgKzYsNyBAQCBIVE1MRXZlbnRzIGludGVyZmFjZU5h
bWU9RXZlbnQKIEFuaW1hdGlvbkV2ZW50CiBCZWZvcmVMb2FkRXZlbnQKIEJlZm9yZVVubG9hZEV2
ZW50CitDbGlwYm9hcmRFdmVudAogQ2xvc2VFdmVudAogQ29tcG9zaXRpb25FdmVudAogQ3VzdG9t
RXZlbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Nb3VzZUV2ZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTW91c2VFdmVudC5oCmluZGV4IGUxOTYwM2I0MTNiYmJkMjBkNzRjZDc2
NjYwYzljNDdlN2M3NGQ3YjEuLjVlYjQwNTgxYjZlNTY0NWU3ZTJkNWM5ZDAwYzIzYTZkMGVkMDFj
ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Nb3VzZUV2ZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL01vdXNlRXZlbnQuaApAQCAtODksOSArODksNyBAQCBwdWJsaWM6CiAg
ICAgV0VCQ09SRV9FWFBPUlQgTm9kZSogdG9FbGVtZW50KCkgY29uc3Q7CiAgICAgV0VCQ09SRV9F
WFBPUlQgTm9kZSogZnJvbUVsZW1lbnQoKSBjb25zdDsKIAotICAgIC8vIEZJWE1FOiBUaGVzZSBm
dW5jdGlvbnMgY2FuIGJlIG1lcmdlZCBpZiBtX2RhdGFUcmFuc2ZlciBpcyBvbmx5IGluaXRpYWxp
emVkIGZvciBkcmFnIGV2ZW50cy4KICAgICBEYXRhVHJhbnNmZXIqIGRhdGFUcmFuc2ZlcigpIGNv
bnN0IHsgcmV0dXJuIGlzRHJhZ0V2ZW50KCkgPyBtX2RhdGFUcmFuc2Zlci5nZXQoKSA6IG51bGxw
dHI7IH0KLSAgICBEYXRhVHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3Qgb3Zl
cnJpZGUgeyByZXR1cm4gbV9kYXRhVHJhbnNmZXIuZ2V0KCk7IH0KIAogICAgIEV2ZW50SW50ZXJm
YWNlIGV2ZW50SW50ZXJmYWNlKCkgY29uc3Qgb3ZlcnJpZGU7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRp
dG9yLmNwcAppbmRleCAwMzEwMGY4MGNlZjQxODUyNzlkM2NiMTUwZjYxMWQ3MGVjMDA5MThkLi5i
ZTMzMTFkODNkOTEwMzIyYmRjZjE1MGQxYmQwNWYyMjEzNThjZjc3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9FZGl0b3IuY3BwCkBAIC04ODMsNyArODgzLDcgQEAgYm9vbCBFZGl0b3I6OmRpc3BhdGNoQ1BQ
RXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERhdGFUcmFuc2ZlckFjY2Vzc1AK
IAogICAgIFJlZlB0cjxEYXRhVHJhbnNmZXI+IGRhdGFUcmFuc2ZlciA9IERhdGFUcmFuc2Zlcjo6
Y3JlYXRlRm9yQ29weUFuZFBhc3RlKHBvbGljeSk7CiAKLSAgICBSZWY8RXZlbnQ+IGV2ZW50ID0g
Q2xpcGJvYXJkRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIHRydWUsIHRydWUsIGRhdGFUcmFuc2Zl
ci5nZXQoKSk7CisgICAgUmVmPENsaXBib2FyZEV2ZW50PiBldmVudCA9IENsaXBib2FyZEV2ZW50
OjpjcmVhdGUoZXZlbnRUeXBlLCB7IHRydWUsIHRydWUsIGZhbHNlLCBkYXRhVHJhbnNmZXIuZ2V0
KCkgfSwgRXZlbnQ6OklzVHJ1c3RlZDo6WWVzKTsKICAgICB0YXJnZXQtPmRpc3BhdGNoRXZlbnQo
ZXZlbnQpOwogICAgIGJvb2wgbm9EZWZhdWx0UHJvY2Vzc2luZyA9IGV2ZW50LT5kZWZhdWx0UHJl
dmVudGVkKCk7CiAgICAgaWYgKG5vRGVmYXVsdFByb2Nlc3NpbmcgJiYgcG9saWN5ID09IERhdGFU
cmFuc2ZlckFjY2Vzc1BvbGljeTo6V3JpdGFibGUpIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzOWI3MGIwNzIxZTkzOGQx
YmQzMjA5NjU5NWU0NzhjMWU4MmUwNzA2Li4wMmJkMDZiNTQxN2FlZWM0N2RkM2JiN2JiZWQxOWNl
OGNjZmNlYTJhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTYtMTAtMDggIENocmlzIER1bWV6
ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgQ2xpcGJvYXJk
RXZlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
MzE2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4
dGVuZGVkIGxheW91dCB0ZXN0IGNvdmVyYWdlLgorCisgICAgICAgICogZWRpdGluZy9wYXN0ZWJv
YXJkL2NsaXBib2FyZC1ldmVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRp
bmcvcGFzdGVib2FyZC9jbGlwYm9hcmQtZXZlbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGZhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtZ2V0
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dvcmtlcnMvd29ya2VyLWltcG9y
dFNjcmlwdHNPbkVycm9yLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0b3IvbW9kZWwv
cmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3RlZC50eHQ6CisgICAgICAgICoganMv
ZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVz
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMteW9zZW1pdGUvanMvZG9tL2ds
b2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxh
dGZvcm0vbWFjL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1h
dHRyaWJ1dGVzLWV4cGVjdGVkLnR4dDoKKwogMjAxNi0xMC0wNyAgWXVzdWtlIFN1enVraSAgPHV0
YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjA2ODUzPyk6IExh
eW91dFRlc3QganMvcmVncmVzcy0xNDEwOTguaHRtbCBmYWlsaW5nCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9jbGlwYm9hcmQtZXZlbnQtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjNiNGEyNWJmYWJmNzY3M2VjNGIxMDJjZGNjMDgzY2RhYjE0ZjgwNWIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJv
YXJkLWV2ZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI4IEBACitUZXN0cyB0aGUgQ2xpcGJv
YXJkRXZlbnQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGZpcmVkQ29w
eUV2ZW50IGlzIGZhbHNlCitQQVNTIGZpcmVkUGFzdGVFdmVudCBpcyBmYWxzZQorUEFTUyBldmVu
dC50eXBlIGlzICJjb3B5IgorUEFTUyBldmVudC5fX3Byb3RvX18gaXMgQ2xpcGJvYXJkRXZlbnQu
cHJvdG90eXBlCitQQVNTIGV2ZW50LmlzVHJ1c3RlZCBpcyB0cnVlCitQQVNTIGV2ZW50LmJ1YmJs
ZXMgaXMgdHJ1ZQorUEFTUyBldmVudC5jYW5jZWxhYmxlIGlzIHRydWUKK1BBU1MgZXZlbnQuY2xp
cGJvYXJkRGF0YS5fX3Byb3RvX18gaXMgRGF0YVRyYW5zZmVyLnByb3RvdHlwZQorUEFTUyBmaXJl
ZENvcHlFdmVudCBpcyB0cnVlCitQQVNTIGZpcmVkUGFzdGVFdmVudCBpcyBmYWxzZQorUEFTUyBl
dmVudC50eXBlIGlzICJwYXN0ZSIKK1BBU1MgZXZlbnQuX19wcm90b19fIGlzIENsaXBib2FyZEV2
ZW50LnByb3RvdHlwZQorUEFTUyBldmVudC5pc1RydXN0ZWQgaXMgdHJ1ZQorUEFTUyBldmVudC5i
dWJibGVzIGlzIHRydWUKK1BBU1MgZXZlbnQuY2FuY2VsYWJsZSBpcyB0cnVlCitQQVNTIGV2ZW50
LmNsaXBib2FyZERhdGEuX19wcm90b19fIGlzIERhdGFUcmFuc2Zlci5wcm90b3R5cGUKK1BBU1Mg
ZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0ZXh0L3BsYWluJykgaXMgIkNvbnRlbnQiCitQ
QVNTIGZpcmVkQ29weUV2ZW50IGlzIGZhbHNlCitQQVNTIGZpcmVkUGFzdGVFdmVudCBpcyB0cnVl
CitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC5o
dG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjM1MWQ3YjQyZGZkMTU5YTM1YWRiM2YzNTUwZWYwNjM2ZmU1ZjI1ZTYKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJk
LWV2ZW50Lmh0bWwKQEAgLTAsMCArMSw1NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxi
b2R5PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8dGV4dGFyZWEgaWQ9InRlc3RBcmVhIj5Db250ZW50PC90ZXh0YXJlYT4KKzxzY3JpcHQg
c3JjPSIuLi9lZGl0aW5nLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGVz
dHMgdGhlIENsaXBib2FyZEV2ZW50LiIpOworCitmdW5jdGlvbiB0ZXN0Q2xpcGJvYXJkRXZlbnQo
ZSkKK3sKKyAgICBldmVudCA9IGU7CisgICAgc2hvdWxkQmUoImV2ZW50Ll9fcHJvdG9fXyIsICJD
bGlwYm9hcmRFdmVudC5wcm90b3R5cGUiKTsKKyAgICBzaG91bGRCZVRydWUoImV2ZW50LmlzVHJ1
c3RlZCIpCisgICAgc2hvdWxkQmVUcnVlKCJldmVudC5idWJibGVzIik7CisgICAgc2hvdWxkQmVU
cnVlKCJldmVudC5jYW5jZWxhYmxlIik7CisgICAgc2hvdWxkQmUoImV2ZW50LmNsaXBib2FyZERh
dGEuX19wcm90b19fIiwgIkRhdGFUcmFuc2Zlci5wcm90b3R5cGUiKTsKK30KKwordmFyIGZpcmVk
Q29weUV2ZW50ID0gZmFsc2U7Cit2YXIgZmlyZWRQYXN0ZUV2ZW50ID0gZmFsc2U7CisKK3ZhciB0
ZXN0QXJlYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0QXJlYSIpOwordGVzdEFyZWEu
YWRkRXZlbnRMaXN0ZW5lcigiY29weSIsIGZ1bmN0aW9uKGUpIHsKKyAgICBldmVudCA9IGU7Cisg
ICAgZmlyZWRDb3B5RXZlbnQgPSB0cnVlOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZl
bnQudHlwZSIsICJjb3B5Iik7CisgICAgdGVzdENsaXBib2FyZEV2ZW50KGV2ZW50KTsKK30pOwor
Cit0ZXN0QXJlYS5hZGRFdmVudExpc3RlbmVyKCJwYXN0ZSIsIGZ1bmN0aW9uKGUpIHsKKyAgICBl
dmVudCA9IGU7CisgICAgZmlyZWRQYXN0ZUV2ZW50ID0gdHJ1ZTsKKyAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoImV2ZW50LnR5cGUiLCAicGFzdGUiKTsKKyAgICB0ZXN0Q2xpcGJvYXJkRXZlbnQo
ZXZlbnQpOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQuY2xpcGJvYXJkRGF0YS5n
ZXREYXRhKCd0ZXh0L3BsYWluJykiLCAiQ29udGVudCIpOworfSk7CisKK3Rlc3RBcmVhLmZvY3Vz
KCk7CitleGVjU2VsZWN0QWxsQ29tbWFuZCgpOworc2hvdWxkQmVGYWxzZSgiZmlyZWRDb3B5RXZl
bnQiKTsKK3Nob3VsZEJlRmFsc2UoImZpcmVkUGFzdGVFdmVudCIpOworCitleGVjQ29weUNvbW1h
bmQoKTsKK3Nob3VsZEJlVHJ1ZSgiZmlyZWRDb3B5RXZlbnQiKTsKK3Nob3VsZEJlRmFsc2UoImZp
cmVkUGFzdGVFdmVudCIpCitmaXJlZENvcHlFdmVudCA9IGZhbHNlOworCitleGVjUGFzdGVDb21t
YW5kKCk7CitzaG91bGRCZUZhbHNlKCJmaXJlZENvcHlFdmVudCIpOworc2hvdWxkQmVUcnVlKCJm
aXJlZFBhc3RlRXZlbnQiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25z
dHJ1Y3Rvci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmExNzkyYjA3ZWJmNjZhN2I5OTNiOGYw
ODA3YzRlZDNjNjdlYzhlYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5
IEBACisKK1BBU1MgRmlyc3QgcGFyYW1ldGVyIGlzIG1hbmRhdG9yeSAKK1BBU1MgT21pdCBpbml0
IGRpY3Rpb25hcnkgCitQQVNTIGJ1YmJsZXMgbWVtYmVyIAorUEFTUyBidWJibGVzIG1lbWJlciAK
K1BBU1MgYnViYmxlcyBtZW1iZXIgCitQQVNTIGJ1YmJsZXMgbWVtYmVyIAorUEFTUyBQYXNzaW5n
IGEgYmFkIHR5cGUgZm9yIGNsaXBib2FyZERhdGEgbWVtYmVyIHNob3VsZCB0aHJvdyAKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVj
dG9yLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9jbGlwYm9hcmQtZXZlbnQtY29uc3Ry
dWN0b3IuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MmM1NzM1ZjlmZmIxNTAxYTJmZjk2NTNjNWRkNWFlMGJj
N2ZhMjhlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJv
YXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwKQEAgLTAsMCArMSw3MyBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPkNsaXBib2FyZEV2ZW50IGNvbnN0cnVjdG9yPC90
aXRsZT4KKzxzY3JpcHQgc3JjPS4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcz48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPS4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcz48L3Nj
cmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAg
YXNzZXJ0X3Rocm93cyhuZXcgVHlwZUVycm9yKCksIGZ1bmN0aW9uKCkgeworICAgICAgICBuZXcg
Q2xpcGJvYXJkRXZlbnQoKTsKKyAgICB9KTsKK30sICJGaXJzdCBwYXJhbWV0ZXIgaXMgbWFuZGF0
b3J5Iik7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGV2ZW50ID0gbmV3IENsaXBib2Fy
ZEV2ZW50KCJmb28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LnR5cGUsICJmb28iKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwgZmFsc2UpOworICAgIGFzc2VydF9lcXVh
bHMoZXZlbnQuYnViYmxlcywgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2FuY2Vs
YWJsZSwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY29tcG9zZWQsIGZhbHNlKTsK
KyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNsaXBib2FyZERhdGEsIG51bGwpOworfSwgIk9taXQg
aW5pdCBkaWN0aW9uYXJ5Iik7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGV2ZW50ID0g
bmV3IENsaXBib2FyZEV2ZW50KCJmb28iLCB7YnViYmxlczogdHJ1ZX0pOworICAgIGFzc2VydF9l
cXVhbHMoZXZlbnQudHlwZSwgImZvbyIpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuaXNUcnVz
dGVkLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5idWJibGVzLCB0cnVlKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNhbmNlbGFibGUsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1
YWxzKGV2ZW50LmNvbXBvc2VkLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jbGlw
Ym9hcmREYXRhLCBudWxsKTsKK30sICJidWJibGVzIG1lbWJlciIpOworCit0ZXN0KGZ1bmN0aW9u
KCkgeworICAgIHZhciBldmVudCA9IG5ldyBDbGlwYm9hcmRFdmVudCgiZm9vIiwge2NhbmNlbGFi
bGU6IHRydWV9KTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LnR5cGUsICJmb28iKTsKKyAgICBh
c3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMo
ZXZlbnQuYnViYmxlcywgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2FuY2VsYWJs
ZSwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jb21wb3NlZCwgZmFsc2UpOworICAg
IGFzc2VydF9lcXVhbHMoZXZlbnQuY2xpcGJvYXJkRGF0YSwgbnVsbCk7Cit9LCAiYnViYmxlcyBt
ZW1iZXIiKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIgZXZlbnQgPSBuZXcgQ2xpcGJv
YXJkRXZlbnQoImZvbyIsIHtjb21wb3NlZDogdHJ1ZX0pOworICAgIGFzc2VydF9lcXVhbHMoZXZl
bnQudHlwZSwgImZvbyIpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuaXNUcnVzdGVkLCBmYWxz
ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5idWJibGVzLCBmYWxzZSk7CisgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5jYW5jZWxhYmxlLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVu
dC5jb21wb3NlZCwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jbGlwYm9hcmREYXRh
LCBudWxsKTsKK30sICJidWJibGVzIG1lbWJlciIpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAg
IHZhciBldmVudCA9IG5ldyBDbGlwYm9hcmRFdmVudCgiZm9vIiwge2J1YmJsZXM6IHRydWUsIGNh
bmNlbGFibGU6IHRydWUsIGNvbXBvc2VkOiB0cnVlfSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVu
dC50eXBlLCAiZm9vIik7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5pc1RydXN0ZWQsIGZhbHNl
KTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmJ1YmJsZXMsIHRydWUpOworICAgIGFzc2VydF9l
cXVhbHMoZXZlbnQuY2FuY2VsYWJsZSwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5j
b21wb3NlZCwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jbGlwYm9hcmREYXRhLCBu
dWxsKTsKK30sICJidWJibGVzIG1lbWJlciIpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFz
c2VydF90aHJvd3MobmV3IFR5cGVFcnJvcigpLCBmdW5jdGlvbigpIHsKKyAgICAgICAgbmV3IENs
aXBib2FyZEV2ZW50KCJmb28iLCB7Y2xpcGJvYXJkRGF0YTogZG9jdW1lbnR9KTsKKyAgICB9KTsK
K30sICJQYXNzaW5nIGEgYmFkIHR5cGUgZm9yIGNsaXBib2FyZERhdGEgbWVtYmVyIHNob3VsZCB0
aHJvdyIpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LWdldC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LWdldC1leHBl
Y3RlZC50eHQKaW5kZXggYmM5NzEzZTRmN2MzYmFkYThjMjg5Mzg0OTU4ZDJiY2M3MGQ4OWE2ZS4u
ODE3YzIzMDdmZThiNmEzOTAwOWRhYmNlNWVmNGY3MmRlZTc1ODE0MiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1nZXQtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3Qt
Z2V0LWV4cGVjdGVkLnR4dApAQCAtNDYsNyArNDYsNiBAQCBTRUxFQ1QgOiAnMTYzODQnCiBidWJi
bGVzIDogJ2ZhbHNlJwogY2FuY2VsQnViYmxlIDogJ2ZhbHNlJwogY2FuY2VsYWJsZSA6ICdmYWxz
ZScKLWNsaXBib2FyZERhdGEgOiAndW5kZWZpbmVkJwogY29tcG9zZWQgOiAnZmFsc2UnCiBjb21w
b3NlZFBhdGggOiAnZnVuY3Rpb24gY29tcG9zZWRQYXRoKCkgewogICAgIFtuYXRpdmUgY29kZV0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29ya2Vycy93b3JrZXItaW1wb3J0
U2NyaXB0c09uRXJyb3ItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93b3Jr
ZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1leHBlY3RlZC50eHQKaW5kZXggOTFlNzQ5
MmNlNzM3MTE4OTVlODVkYWJjNzY5NGQ0ZjZkZGJlYTM5Yy4uOTlhNGNiY2YyYWQ3OThjNzk2NTIz
ZGYyZDM0MGQyODBlNDIyMTYwMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
b3JrZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1l
eHBlY3RlZC50eHQKQEAgLTI1LDcgKzI1LDYgQEAgU0VMRUNUOiAxNjM4NCwKIGJ1YmJsZXM6IGZh
bHNlLAogY2FuY2VsQnViYmxlOiBmYWxzZSwKIGNhbmNlbGFibGU6IHRydWUsCi1jbGlwYm9hcmRE
YXRhOiB1bmRlZmluZWQsCiBjb2xubzogMTQsCiBjb21wb3NlZDogZmFsc2UsCiBjb21wb3NlZFBh
dGg6IGZ1bmN0aW9uIGNvbXBvc2VkUGF0aCgpIHsgW25hdGl2ZSBjb2RlXSB9LApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1vYmplY3QtZ2V0LXByb3BlcnRp
ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1vYmpl
Y3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CmluZGV4IDM4ZTJkMDU5MGVjNjk5ZmVlZmQw
OWI2YTk5ZWM2ZThlNjIxZjg4MDUuLjJmN2FkNGVjNjA4MmJiNDA5M2QxODllMWFhNTgyZTRlMTk2
NWExNGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9yZW1vdGUtb2Jq
ZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3RlZC50eHQKQEAgLTI0
Myw3ICsyNDMsNiBAQCBESVNQTEFZQUJMRSBQUk9QRVJUSUVTOgogICAgIHNyY0VsZW1lbnQKICAg
ICByZXR1cm5WYWx1ZQogICAgIGNhbmNlbEJ1YmJsZQotICAgIGNsaXBib2FyZERhdGEKICAgICBf
X3Byb3RvX18KIAogQUxMIFBST1BFUlRJRVM6CkBAIC0yNjEsNyArMjYwLDYgQEAgQUxMIFBST1BF
UlRJRVM6CiAgICAgc3JjRWxlbWVudAogICAgIHJldHVyblZhbHVlCiAgICAgY2FuY2VsQnViYmxl
Ci0gICAgY2xpcGJvYXJkRGF0YQogICAgIGNvbXBvc2VkUGF0aAogICAgIHN0b3BQcm9wYWdhdGlv
bgogICAgIHByZXZlbnREZWZhdWx0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9kb20vZ2xv
YmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2pz
L2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IDVm
MGU5MjQyNDA0NjY3MWM2ZjJkMWNiNGQ5MWJhYmRlNTk2OWNlMjkuLmQ4OTc4ODRiZjJhMzJhYzEx
ODFlZDU4ZDU1MTMxN2QwZTg0NGQxMDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL2RvbS9n
bG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBA
IC0yMjgsNiArMjI4LDExIEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihn
bG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdnCiBQQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Q
cm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcp
LmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52YWx1ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFT
UyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50
JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgn
c2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmNvbmZpZ3Vy
YWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnQ2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3NlRXZlbnQKIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dl
dCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9y
cy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEv
anMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKaW5kZXgg
ODJjYzMwOTdlNTVmZDY2NGMzZGRmMjMxOTQ1MDc2NWU2ZjdkOTFkOC4uNDNmMzg4NDkyZjc2YTYx
N2Y0MTY0NGM1NjIxOGIwMzljNWU0ZWI4NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2pzL2RvbS9nbG9iYWwtY29u
c3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0yNjMsNiArMjYzLDExIEBAIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlz
dCcpLmhhc093blByb3BlcnR5KCdnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFs
c2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRS
ZWN0TGlzdCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVl
CitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJk
RXZlbnQnKS52YWx1ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dl
dCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcp
LmVudW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVl
IGlzIENsb3NlRXZlbnQKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093
blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9i
YWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IGE4ODgyZmVmYmMw
ZDFkMTdlZTg5YjAzZjdiMTkyMmY5Zjg5Yjg3OTAuLjNjNjg5ZTI5NzMwNDVjOGMyMjQ4YjQ4ZjRh
ZWY0ZmE3ZTY1NDA4NjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy15b3Nl
bWl0ZS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMteW9zZW1pdGUvanMvZG9tL2dsb2JhbC1jb25z
dHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKQEAgLTI2Myw2ICsyNjMsMTEgQEAgUEFT
UyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0
JykuaGFzT3duUHJvcGVydHkoJ2cKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxz
ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJl
Y3RMaXN0JykuZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuY29uZmlndXJhYmxlIGlzIHRydWUK
K1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRF
dmVudCcpLnZhbHVlIGlzIENsaXBib2FyZEV2ZW50CitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0
JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbGlwYm9hcmRFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQorUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50Jyku
ZW51bWVyYWJsZSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuY29uZmlndXJhYmxlIGlzIHRydWUKIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykudmFsdWUg
aXMgQ2xvc2VFdmVudAogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2Jh
bCwgJ0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykuaGFzT3du
UHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0
cmlidXRlcy1leHBlY3RlZC50eHQKaW5kZXggMzcyYjdiMDAzODgzNjIxMDNhYzQ1ZDE5ZWNhZmM1
ZDY3NTlkMzNjMi4uMmM1ODU4MTgwNzkxNWUzNjVlMjFhNTc5OGNmZjE4ZWUwMjhiMTgxNCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0
b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAt
MjYzLDYgKzI2MywxMSBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xv
YmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnZwogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuaGFzT3duUHJv
cGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5j
b25maWd1cmFibGUgaXMgdHJ1ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykudmFsdWUgaXMgQ2xpcGJvYXJkRXZlbnQKK1BBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcp
Lmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ3Nl
dCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnQ2xpcGJvYXJkRXZlbnQnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5jb25maWd1cmFi
bGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0Nsb3NlRXZlbnQnKS52YWx1ZSBpcyBDbG9zZUV2ZW50CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdnZXQn
KSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRy
aWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9qcy9kb20vZ2xv
YmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCA3ZWY5NThkOTIz
NTI0ZjI5YzFjOTk3ZjE5ZTc3YWUzMzQxMzU4ZDg4Li42OWQzODMwN2Q0ZTQ5ZTE0MDEyYmRmZmY5
ZWJiYzA3YzVlNDc1MDNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vanMv
ZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0
ZXMtZXhwZWN0ZWQudHh0CkBAIC0xNjgsNiArMTY4LDExIEBAIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5
KCdnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50
UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmVudW1lcmFi
bGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52YWx1ZSBpcyBD
bGlwYm9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2Jh
bCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCitQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQn
KS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFibGUgaXMgZmFs
c2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9h
cmRFdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3NlRXZlbnQKIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50Jyku
aGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBp
cyBmYWxzZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291028</attachid>
            <date>2016-10-08 15:36:21 -0700</date>
            <delta_ts>2016-10-08 16:15:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163164-20161008153303.patch</filename>
            <type>text/plain</type>
            <size>45863</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2OTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWUwMTY0NjZmNmY3ZmYw
YzMxOTk4N2VmMGY5NWNmNzlmODc5NDk0NS4uZTQ1ZTNkODJjYjVlM2Q4ZGZlNzYyMDFkYjZmMDJk
MjdiOTgyYTU2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE2LTEwLTA4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENs
aXBib2FyZEV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjMxNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGQgc3VwcG9ydCBmb3IgQ2xpcGJvYXJkRXZlbnQ6CisgICAgICAgIC0gaHR0cHM6Ly93
d3cudzMub3JnL1RSL2NsaXBib2FyZC1hcGlzLyNjbGlwYm9hcmQtZXZlbnQtaW50ZXJmYWNlcwor
CisgICAgICAgIEZpcmVmb3ggYW5kIENocm9tZSBib3RoIGFscmVhZHkgc3VwcG9ydCB0aGlzLgor
CisgICAgICAgIFRoaXMgZ2l2ZXMgdXMgNSBtb3JlIHBvaW50cyBvbiBodG1sNXRlc3QuY29tLgor
CisgICAgICAgIFRlc3RzOiBlZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50Lmh0bWwK
KyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci5o
dG1sCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNl
cy5jcHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVu
dEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3bHlDcmVhdGVkKTogRGVsZXRl
ZC4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAg
ICAgICAoV2lsbENvbnZlcnRVbmRlZmluZWRUb0RlZmF1bHRQYXJhbWV0ZXJWYWx1ZSk6CisgICAg
ICAgIFdlIHVzZSBbXSBhcyBpbXBsaWNpdCBkZWZhdWx0IHZhbHVlIGZvciBkaWN0aW9uYXJ5IHBh
cmFtZXRlcnMuIFRoaXMgY2hhbmdlCisgICAgICAgIGlzIHNvIHdlIGNhbGwgY29udmVydERpY3Rp
b25hcnk8PigpIGV2ZW4gaWYgdGhlIHBhcmFtZXRlciBpcyB1bmRlZmluZWQKKyAgICAgICAgYmVj
YXVzZSB3ZSB3YW50IHRvIHBhc3MgYSBzdHJ1Y3QgdG8gdGhlIGltcGxlbWVudGF0aW9uIGluaXRp
YWxpemVkIHdpdGgKKyAgICAgICAgdGhlIGRlZmF1bHQgbWVtYmVyIHZhbHVlcyBkZWZpbmVkIGlu
IHRoZSBJREwuCisKKyAgICAgICAgKiBkb20vQ2xpcGJvYXJkRXZlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KToKKyAgICAgICAgKFdlYkNv
cmU6OkNsaXBib2FyZEV2ZW50OjpldmVudEludGVyZmFjZSk6CisgICAgICAgICogZG9tL0NsaXBi
b2FyZEV2ZW50Lmg6CisgICAgICAgICogZG9tL0NsaXBib2FyZEV2ZW50LmlkbDogQWRkZWQuCisg
ICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50OjpFdmVudCk6
CisgICAgICAgICogZG9tL0V2ZW50Lmg6CisgICAgICAgICogZG9tL0V2ZW50LmlkbDoKKyAgICAg
ICAgKiBkb20vRXZlbnRJbml0Lmg6IEFkZGVkLgorICAgICAgICAqIGRvbS9FdmVudEluaXQuaWRs
OiBBZGRlZC4KKyAgICAgICAgKiBkb20vRXZlbnROYW1lcy5pbjoKKyAgICAgICAgKiBkb20vTW91
c2VFdmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6TW91c2VFdmVudDo6ZGF0YVRyYW5zZmVyKToK
KyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6
OmRpc3BhdGNoQ1BQRXZlbnQpOgorCiAyMDE2LTEwLTA3ICBXZW5zb24gSHNpZWggIDx3ZW5zb25f
aHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBvcnQgb25iZWZvcmVpbnB1dCBldmVudCBo
YW5kbGluZyBmb3IgdGhlIG5ldyBJbnB1dEV2ZW50IHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggY2M0MDM4NzBjNWQ3MjczM2FjYWUxMzAwNDU4MzE1NDA3NmQ5NzE1My4uMjg4ZWE4MDQ3Nzc0
ODRhYmIwODIwNjc4N2JiZjdkZjA2ZmYyY2FkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTM3
NSw2ICszNzUsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIGRvbS9DaGls
ZE5vZGUuaWRsCiAgICAgZG9tL0NsaWVudFJlY3QuaWRsCiAgICAgZG9tL0NsaWVudFJlY3RMaXN0
LmlkbAorICAgIGRvbS9DbGlwYm9hcmRFdmVudC5pZGwKICAgICBkb20vQ29tbWVudC5pZGwKICAg
ICBkb20vQ29tcG9zaXRpb25FdmVudC5pZGwKICAgICBkb20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5
LmlkbApAQCAtMzk3LDYgKzM5OCw3IEBAIHNldChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAg
ICAgZG9tL0VsZW1lbnQuaWRsCiAgICAgZG9tL0Vycm9yRXZlbnQuaWRsCiAgICAgZG9tL0V2ZW50
LmlkbAorICAgIGRvbS9FdmVudEluaXQuaWRsCiAgICAgZG9tL0V2ZW50VGFyZ2V0LmlkbAogICAg
IGRvbS9Gb2N1c0V2ZW50LmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IGJmYmQ2OTBlOTczMDg5Y2IyYjQ5NzM0YWVkMDI5
MWIyNjhkMWEyNjguLjYxMjYzMTkyMGU1Mjc3MjQ4NDEyNzNhM2E5NTU0MjMyMzE4Yzk5OWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTEzNiw2ICsxMzYsNyBAQAogI2luY2x1ZGUg
IkpTQ1NTVW5rbm93blJ1bGUuY3BwIgogI2luY2x1ZGUgIkpTQ1NTVmFsdWUuY3BwIgogI2luY2x1
ZGUgIkpTQ1NTVmFsdWVMaXN0LmNwcCIKKyNpbmNsdWRlICJKU0NsaXBib2FyZEV2ZW50LmNwcCIK
ICNpZiBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKQogI2luY2x1ZGUgIkpTQ3VzdG9tRWxlbWVudFJl
Z2lzdHJ5LmNwcCIKICNlbmRpZgpAQCAtMTg4LDYgKzE4OSw3IEBACiAjaW5jbHVkZSAiSlNFbGVt
ZW50LmNwcCIKICNpbmNsdWRlICJKU0Vycm9yRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTRXZlbnQu
Y3BwIgorI2luY2x1ZGUgIkpTRXZlbnRJbml0LmNwcCIKICNpbmNsdWRlICJKU0V2ZW50U291cmNl
LmNwcCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmNwcCIKICNpbmNsdWRlICJKU0ZldGNoQm9k
eS5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA1YTEwYjUwZGZhMWM1OTgy
ZTdmZjk2Y2M2NjY3MDhjOWFjNWQ2YmY0Li44OTViYzhkZjJmZjlhMDNkZGQ4NzhhMjUzZTgwOGEx
NzBjNDE2OWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTI4Niw2ICsyODYs
NyBAQCBKU19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9kb20vQ2xpZW50UmVjdC5p
ZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0NsaWVudFJlY3RMaXN0LmlkbCBcCiAgICAgJChXZWJD
b3JlKS9kb20vQ29tbWVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0NsaXBib2FyZEV2ZW50
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQ29tcG9zaXRpb25FdmVudC5pZGwgXAogICAgICQo
V2ViQ29yZSkvZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5pZGwgXAogICAgICQoV2ViQ29yZSkv
ZG9tL0N1c3RvbUV2ZW50LmlkbCBcCkBAIC0zMDcsNiArMzA4LDcgQEAgSlNfQklORElOR19JRExT
ID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0VsZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Rv
bS9FcnJvckV2ZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnQuaWRsIFwKKyAgICAk
KFdlYkNvcmUpL2RvbS9FdmVudEluaXQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudExp
c3RlbmVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRUYXJnZXQuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2RvbS9Gb2N1c0V2ZW50LmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzVkMjlhZDUxOTk2YmZkOTBhZDI5
M2NiZjZmNDA2MTUyYjlmN2Q2NC4uYWE4NmQwOWE4ZTkzZmNjOGRhZDE3MjZkNmJmOWIzODdiMTAx
OTgxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtMjg4OSw2ICsyODg5LDExIEBACiAJCTgzNjc1ODdFMUM1NkU5OUIwMDhBMTA4
NyAvKiBKU0hUTUxEYXRhRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzRCODZBOTFDNTZFOTNFMDBGM0YwRTMgLyogSlNIVE1MRGF0YUVs
ZW1lbnQuY3BwICovOyB9OwogCQk4MzY3NTg3RjFDNTZFOTlCMDA4QTEwODcgLyogSlNIVE1MRGF0
YUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzNEI4NkE4MUM1NkU5M0UwMEYzRjBFMyAvKiBKU0hUTUxEYXRhRWxlbWVudC5oICovOyB9Owog
CQk4MzZDMTQ0MzFDREVBRkQ4MDA3MzQ5M0YgLyogSlNYUGF0aE5TUmVzb2x2ZXJDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2QzE0NDIx
Q0RFQUZDQTAwNzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCAqLzsgfTsKKwkJ
ODM2RDAzMkExREE4OUI5MjAwRkZEOTZCIC8qIEV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2RDAzMjgxREE4OUI3MzAwRkZEOTZCIC8q
IEV2ZW50SW5pdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTgzNkQwMzJGMURBOEExM0EwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyQjFEQThBMTMy
MDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovOyB9OworCQk4MzZEMDMzMDFEQThBMTNEMDBG
RkQ5NkIgLyogSlNFdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzNkQwMzJDMURBOEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICov
OyB9OworCQk4MzZEMDMzMTFEQThBMTNGMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyRDFE
QThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi87IH07CisJCTgzNkQwMzMy
MURBOEExNDIwMEZGRDk2QiAvKiBKU0NsaXBib2FyZEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyRTFEQThBMTMyMDBGRkQ5NkIgLyog
SlNDbGlwYm9hcmRFdmVudC5oICovOyB9OwogCQk4MzZEQUEwNjFDRUFCODBEMDBBMkI3MDcgLyog
UmVuZGVyRGVzY2VuZGFudEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzZEQUEwNTFDRUFCN0NEMDBBMkI3MDcgLyogUmVuZGVyRGVzY2Vu
ZGFudEl0ZXJhdG9yLmggKi87IH07CiAJCTgzNkZCQ0VBMTc4QzExMzIwMEIyMUExNSAvKiBTVkdB
bmltYXRlZFR5cGVBbmltYXRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzZGQkNFOTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBl
QW5pbWF0b3IuY3BwICovOyB9OwogCQk4MzZGQkNFQzE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5p
bWF0ZWRQcm9wZXJ0eS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4MzZGQkNFQjE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5j
cHAgKi87IH07CkBAIC0xMDAyMiw2ICsxMDAyNywxMyBAQAogCQk4MzVGOEIyNjFEMkQ5MEJBMDBF
NDA4RUMgLyogU2xvdGFibGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNsb3RhYmxlLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2OUU1OEYxQUZERDAzMDAwODdERjY4
IC8qIE5vbkRvY3VtZW50VHlwZUNoaWxkTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm9uRG9jdW1lbnRUeXBlQ2hp
bGROb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2QzE0NDIxQ0RFQUZD
QTAwNzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMjcxREE4OUI3MzAwRkZEOTZCIC8qIENsaXBi
b2FyZEV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDbGlwYm9hcmRFdmVudC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzI4MURBODlCNzMwMEZGRDk2QiAv
KiBFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRJbml0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2
QiAvKiBFdmVudEluaXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEV2ZW50SW5pdC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzJCMURBOEExMzIwMEZGRDk2QiAv
KiBKU0V2ZW50SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0V2ZW50SW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzJDMURB
OEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0V2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZE
MDMyRDFEQThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NsaXBib2FyZEV2ZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJv
YXJkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDbGlwYm9hcmRF
dmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzZEQUEwNTFDRUFCN0NEMDBB
MkI3MDcgLyogUmVuZGVyRGVzY2VuZGFudEl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFJlbmRlckRlc2NlbmRhbnRJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk4MzZGQkNFOTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBl
QW5pbWF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQW5p
bWF0ZWRUeXBlQW5pbWF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzZG
QkNFQjE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmltYXRlZFByb3BlcnR5LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5NjgzLDYgKzE5Njk1LDggQEAKIAkJCQlCQzk0
NjM0NzEwN0E5MzY2MDA4NTcxOTMgLyogSlNCZWZvcmVMb2FkRXZlbnQuaCAqLywKIAkJCQk4MjI1
NDMyQ0E5RDRCNENGNDYyOEVDN0YgLyogSlNCZWZvcmVVbmxvYWRFdmVudC5jcHAgKi8sCiAJCQkJ
MjlFMDRBMjdCRUQyRjgxRjk4RTkwMjJCIC8qIEpTQmVmb3JlVW5sb2FkRXZlbnQuaCAqLywKKwkJ
CQk4MzZEMDMyRDFEQThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi8sCisJ
CQkJODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuaCAqLywKIAkJ
CQk3OUFDOTIxNjEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmNwcCAqLywK
IAkJCQk3OUFDOTIxNzEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmggKi8s
CiAJCQkJRTQ3NzhCN0QxMTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuY3BwICovLApA
QCAtMTk2OTEsNiArMTk3MDUsOCBAQAogCQkJCTJFQ0Y3QURCMTAxNjJCMzgwMDQyN0RFNyAvKiBK
U0Vycm9yRXZlbnQuaCAqLywKIAkJCQkxNEU4Mzc4MzA5Rjg1RDFDMDBCODVBRTQgLyogSlNFdmVu
dC5jcHAgKi8sCiAJCQkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLywK
KwkJCQk4MzZEMDMyQjFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovLAorCQkJ
CTgzNkQwMzJDMURBOEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovLAogCQkJCUM2QTcw
MzMyNUM5RDBCNkNEQ0JDNEQ3OCAvKiBKU0V2ZW50VGFyZ2V0LmNwcCAqLywKIAkJCQk1RkM3REMy
NkNGRTI1NjMyMDBCODVBRTUgLyogSlNFdmVudFRhcmdldC5oICovLAogCQkJCUI2RDlEMjdBMTRF
QUMwODYwMDkwRDc1RSAvKiBKU0ZvY3VzRXZlbnQuY3BwICovLApAQCAtMjI5OTMsNiArMjMwMDks
NyBAQAogCQkJCUJDQzA2NTdDMEYzQ0UxQjcwMENEMkQ4NyAvKiBDbGllbnRSZWN0TGlzdC5pZGwg
Ki8sCiAJCQkJODUwMzFCMjkwQTQ0RUZDNzAwRjk5MkUwIC8qIENsaXBib2FyZEV2ZW50LmNwcCAq
LywKIAkJCQk4NTAzMUIyQTBBNDRFRkM3MDBGOTkyRTAgLyogQ2xpcGJvYXJkRXZlbnQuaCAqLywK
KwkJCQk4MzZEMDMyNzFEQTg5QjczMDBGRkQ5NkIgLyogQ2xpcGJvYXJkRXZlbnQuaWRsICovLAog
CQkJCTlCRDhBOTU5MThCRUZDNzYwMDk4N0U5QSAvKiBDb2xsZWN0aW9uSW5kZXhDYWNoZS5jcHAg
Ki8sCiAJCQkJRTQyNUE0OTkxODI5MkI4NDAwMjBDRkNGIC8qIENvbGxlY3Rpb25JbmRleENhY2hl
LmggKi8sCiAJCQkJNjU1MEI2OTcwOTlERjAyNzAwOTBENzgxIC8qIENvbW1lbnQuY3BwICovLApA
QCAtMjMxMTMsNiArMjMxMzAsOCBAQAogCQkJCTQxMzhEMzMzMTI0NDA1NDgwMDMyM0QzMyAvKiBF
dmVudENvbnRleHQuaCAqLywKIAkJCQk0MThBMDZDRjEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnRE
aXNwYXRjaGVyLmNwcCAqLywKIAkJCQk0MThBMDZDRTEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnRE
aXNwYXRjaGVyLmggKi8sCisJCQkJODM2RDAzMjgxREE4OUI3MzAwRkZEOTZCIC8qIEV2ZW50SW5p
dC5oICovLAorCQkJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2QiAvKiBFdmVudEluaXQuaWRsICov
LAogCQkJCTkzNUZCQzQ0MDlCQTAwQjkwMEUyMzBCMSAvKiBFdmVudExpc3RlbmVyLmggKi8sCiAJ
CQkJODVBRkE3NDEwQUFGMjk4NDAwRTg0MzA1IC8qIEV2ZW50TGlzdGVuZXIuaWRsICovLAogCQkJ
CUFENDQ5NUYxMTQxRkMwODkwMDU0MUVERiAvKiBFdmVudExpc3RlbmVyTWFwLmNwcCAqLywKQEAg
LTI1Mjg5LDYgKzI1MzA4LDcgQEAKIAkJCQk4QTlBNTg4ODExRTg0RjM3MDA4QUNGRDEgLyogSlNQ
ZXJmb3JtYW5jZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkRFQTYyNDcxNTIxMDJGQzAw
NDc5REYwIC8qIEpTUGVyaW9kaWNXYXZlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5M0I3MEQ2QzA5
RUIwQzdDMDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4MzZEMDMzMDFEQThBMTNEMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTUxODlGMDFFMTBCMzdCRDkwMEYzQzczOSAvKiBKU1BvcFN0YXRlRXZlbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTU5ODM2NUREMTM1NUY1NTcwMDFCMTg1RCAvKiBKU1Bvc2l0
aW9uQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUZFODBEQTcyMEU5QzQ3MkYwMDBENkY3
NSAvKiBKU1Bvc2l0aW9uRXJyb3IuaCBpbiBIZWFkZXJzICovLApAQCAtMjYxNzEsNiArMjYxOTEs
NyBAQAogCQkJCUJDRTMyQjlDMTUxN0MwQjIwMEY1NDJFQyAvKiBSZW5kZXJNdWx0aUNvbHVtblNl
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTRERTVDOTIxRDgzMDExRDAwMTY0RjJBIC8qIENTU1N1
cHBvcnRzUGFyc2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzFBN0Q5ODE4RkNCNUIwMDA0MjE4
NzkgLyogUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTgzNkQwMzJBMURBODlCOTIwMEZGRDk2QiAvKiBFdmVudEluaXQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCThBQzgyMkZEMTgwRkMwMzMwMEZCNjRENSAvKiBSZW5kZXJOYW1lZEZsb3dGcmFn
bWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM4NUYyM0QxNTE5MTVFMDAwQkMxN0JFIC8qIFJl
bmRlck5hbWVkRmxvd1RocmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNFQTQ4ODAwOTdEOTMw
MjAwOTRDOUU0IC8qIFJlbmRlck9iamVjdC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNjk2OSw2ICsy
Njk5MCw3IEBACiAJCQkJOUIyRDhBNzkxNDk5N0NDRjAwRUNFRjNFIC8qIFVuZG9TdGVwLmggaW4g
SGVhZGVycyAqLywKIAkJCQlBODYzRTIwMTEzNDM0MTIwMDAyNzQ5MjYgLyogVW5pY29kZUJpZGku
aCBpbiBIZWFkZXJzICovLAogCQkJCTUxODg2NEUxMUJCQUY1NzQwMEU1NDBDOSAvKiBVbmlxdWVJ
REJEYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM2RDAzMzIxREE4QTE0MjAwRkZEOTZC
IC8qIEpTQ2xpcGJvYXJkRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxOThGN0E1MUJCREI3
OTMwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZUNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICov
LAogCQkJCTUxOThGN0E5MUJCREQzODUwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZVRyYW5z
YWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNEFGQ0ZBNTBEQUYyOUEzMDBGNUY1NUMgLyog
VW5pdEJlemllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yODE0MCw2ICsyODE2Miw3IEBACiAJCQkJ
OUJBQjZDNkQxMjU1MDYzMTAwMTYyNkQ0IC8qIEVkaXRpbmdTdHlsZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk0QjMwNDNDQzBBRTAzNzNCMDBBODI2NDcgLyogRWRpdG9yLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTlCNTVFRUU5MUIzRTg4OTgwMDUzNDJCQyAvKiBFZGl0b3JDb2NvYS5tbSBpbiBT
b3VyY2VzICovLAorCQkJCTgzNkQwMzJGMURBOEExM0EwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk5M0EzOEI0QjBEMEU1ODA4MDA2ODcyQzIgLyogRWRpdG9y
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRUQxM0QzQTBDRUE5MzQ2MDBEODk0NjYg
LyogRWRpdG9ySU9TLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRUQ1MDFEQzYwQjI0OUYyOTAwQUUx
OEQ5IC8qIEVkaXRvck1hYy5tbSBpbiBTb3VyY2VzICovLApAQCAtMzA1MDgsNiArMzA1MzEsNyBA
QAogCQkJCTMxNDAzNzlDMTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5t
bSBpbiBTb3VyY2VzICovLAogCQkJCUNEQzk3OUY0MUM0OThDMDkwMERCNTBENCAvKiBXZWJDb3Jl
TlNFcnJvckV4dHJhcy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTkzNEQ5QkE1MEI4QzExNkIwMDdC
NDJBOSAvKiBXZWJDb3JlTlNTdHJpbmdFeHRyYXMubW0gaW4gU291cmNlcyAqLywKKwkJCQk4MzZE
MDMzMTFEQThBMTNGMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlDNUI0QzI0RTE1MDkyMzZDMDBBNkVGMzcgLyogV2ViQ29yZU5TVVJMRXh0cmFzLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0QyMjVDMEIxQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVO
U1VSTFNlc3Npb24ubW0gaW4gU291cmNlcyAqLywKIAkJCQlCNTBGNUI4MTBFOTZDRDk5MDBBRDcx
QTYgLyogV2ViQ29yZU9iakNFeHRyYXMubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAKaW5kZXggMDE1Y2E2YjFlY2ZjYzI5YWU2
ZmY0YTJhMDIwMGU3NDc4ZWY4ZTM3Mi4uZDcyYzU4NzBhZjYxY2FmMmNkM2U2NjNhZGFmMzM5MjU2
ZTkzZTZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1
c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5j
cHAKQEAgLTQzLDExICs0Myw2IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotSlNWYWx1ZSBKU0V2ZW50OjpjbGlwYm9hcmREYXRhKEV4ZWNTdGF0ZSYgc3Rh
dGUpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIHdyYXBwZWQoKS5pc0NsaXBib2FyZEV2ZW50KCkgPyB0
b0pTKCZzdGF0ZSwgZ2xvYmFsT2JqZWN0KCksIHdyYXBwZWQoKS5jbGlwYm9hcmREYXRhKCkpIDog
anNVbmRlZmluZWQoKTsKLX0KLQogI2RlZmluZSBUUllfVE9fV1JBUF9XSVRIX0lOVEVSRkFDRShp
bnRlcmZhY2VOYW1lKSBcCiAgICAgY2FzZSBpbnRlcmZhY2VOYW1lIyNJbnRlcmZhY2VUeXBlOiBc
CiAgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPGludGVyZmFjZU5hbWU+KGdsb2JhbE9iamVj
dCwgV1RGTW92ZShldmVudCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBmYjg2NmMzNmE4NGYxMWU2ZWY0MTljZTExNGYy
ODdkZmM0NTQxOGYxLi5lYzM4MmQ0YTIzYjVjMTdkZDVmOWYyNGY5NGU0MWM0YjAyNWJlNDYwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQpAQCAtMzk0OSw2ICszOTQ5LDcgQEAgc3ViIFdpbGxDb252ZXJ0VW5kZWZpbmVkVG9EZWZh
dWx0UGFyYW1ldGVyVmFsdWUKICAgICByZXR1cm4gMSBpZiBkZWZpbmVkICRhdXRvbWF0aWNhbGx5
R2VuZXJhdGVkRGVmYXVsdFZhbHVlICYmICRhdXRvbWF0aWNhbGx5R2VuZXJhdGVkRGVmYXVsdFZh
bHVlIGVxICRkZWZhdWx0VmFsdWU7CiAKICAgICByZXR1cm4gMSBpZiAkZGVmYXVsdFZhbHVlIGVx
ICJudWxsIiAmJiAkY29kZUdlbmVyYXRvci0+SXNXcmFwcGVyVHlwZSgkcGFyYW1ldGVyVHlwZSk7
CisgICAgcmV0dXJuIDEgaWYgJGRlZmF1bHRWYWx1ZSBlcSAiW10iICYmICRjb2RlR2VuZXJhdG9y
LT5Jc0RpY3Rpb25hcnlUeXBlKCRwYXJhbWV0ZXJUeXBlKTsKIAogICAgIHJldHVybiAwOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5jcHAKaW5kZXggYTFhZmQ4ZWRjZTIzZWI0NTJl
YzE4Yjk1MThlYzA5YzllMDIxNGQxNS4uNmJmNmUxNzBlNzBhZTFjNzMzMWQwZmE5MWI0MGNhNmM2
NWEwMjhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJkRXZlbnQuY3BwCkBAIC0yOCw4ICsy
OCw5IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotQ2xpcGJvYXJkRXZlbnQ6OkNsaXBib2Fy
ZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9v
bCBjYW5jZWxhYmxlLCBEYXRhVHJhbnNmZXIqIGRhdGFUcmFuc2ZlcikKLSAgICA6IEV2ZW50KGV2
ZW50VHlwZSwgY2FuQnViYmxlLCBjYW5jZWxhYmxlKSwgbV9kYXRhVHJhbnNmZXIoZGF0YVRyYW5z
ZmVyKQorQ2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYg
dHlwZSwgY29uc3QgSW5pdCYgaW5pdCwgSXNUcnVzdGVkIGlzVHJ1c3RlZCkKKyAgICA6IEV2ZW50
KHR5cGUsIGluaXQsIGlzVHJ1c3RlZCkKKyAgICAsIG1fY2xpcGJvYXJkRGF0YShpbml0LmNsaXBi
b2FyZERhdGEpCiB7CiB9CiAKQEAgLTM5LDggKzQwLDcgQEAgQ2xpcGJvYXJkRXZlbnQ6On5DbGlw
Ym9hcmRFdmVudCgpCiAKIEV2ZW50SW50ZXJmYWNlIENsaXBib2FyZEV2ZW50OjpldmVudEludGVy
ZmFjZSgpIGNvbnN0CiB7Ci0gICAgLy8gTm90aWNlIHRoYXQgdGhlcmUgaXMgbm8gQ2xpcGJvYXJk
RXZlbnQuaWRsLgotICAgIHJldHVybiBFdmVudEludGVyZmFjZVR5cGU7CisgICAgcmV0dXJuIENs
aXBib2FyZEV2ZW50SW50ZXJmYWNlVHlwZTsKIH0KIAogYm9vbCBDbGlwYm9hcmRFdmVudDo6aXND
bGlwYm9hcmRFdmVudCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xp
cGJvYXJkRXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5oCmluZGV4
IGY0MWExYzk4ZWRiNDc5NWE1YzVmMGE4ZGM3MzZmZWEzZjE1YWUzYTguLmY0ZDMzNzQ4ZTBmMDMx
ZjY0OTViYzEzOGQ4ZGQ2YTk3ZDhjZjRhZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9DbGlwYm9hcmRFdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVu
dC5oCkBAIC0yOCwyNyArMjgsMzggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xh
c3MgRGF0YVRyYW5zZmVyOworY2xhc3MgRGF0YVRyYW5zZmVyOwogCi0gICAgY2xhc3MgQ2xpcGJv
YXJkRXZlbnQgZmluYWwgOiBwdWJsaWMgRXZlbnQgewotICAgIHB1YmxpYzoKLSAgICAgICAgdmly
dHVhbCB+Q2xpcGJvYXJkRXZlbnQoKTsKK2NsYXNzIENsaXBib2FyZEV2ZW50IGZpbmFsIDogcHVi
bGljIEV2ZW50IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5DbGlwYm9hcmRFdmVudCgpOwogCi0g
ICAgICAgIHN0YXRpYyBSZWY8Q2xpcGJvYXJkRXZlbnQ+IGNyZWF0ZShjb25zdCBBdG9taWNTdHJp
bmcmIHR5cGUsIGJvb2wgY2FuQnViYmxlQXJnLCBib29sIGNhbmNlbGFibGVBcmcsIERhdGFUcmFu
c2ZlciogY2xpcGJvYXJkQXJnKQorICAgIHN0cnVjdCBJbml0IDogcHVibGljIEV2ZW50SW5pdCB7
CisgICAgICAgIEluaXQoYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIGJvb2wgY29tcG9z
ZWQsIFJlZlB0cjxEYXRhVHJhbnNmZXI+JiYgY2xpcGJvYXJkRGF0YSkKKyAgICAgICAgICAgIDog
RXZlbnRJbml0IHsgYnViYmxlcywgY2FuY2VsYWJsZSwgY29tcG9zZWQgfQorICAgICAgICAgICAg
LCBjbGlwYm9hcmREYXRhKFdURk1vdmUoY2xpcGJvYXJkRGF0YSkpCiAgICAgICAgIHsKLSAgICAg
ICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENsaXBib2FyZEV2ZW50KHR5cGUsIGNhbkJ1YmJs
ZUFyZywgY2FuY2VsYWJsZUFyZywgY2xpcGJvYXJkQXJnKSk7CiAgICAgICAgIH0KIAotICAgICAg
ICBEYXRhVHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gbV9kYXRhVHJhbnNmZXIuZ2V0KCk7IH0KKyAgICAgICAgUmVmUHRyPERhdGFUcmFuc2Zl
cj4gY2xpcGJvYXJkRGF0YTsKKyAgICB9OwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgQ2xpcGJv
YXJkRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGNhbkJ1YmJsZUFyZywgYm9v
bCBjYW5jZWxhYmxlQXJnLCBEYXRhVHJhbnNmZXIqKTsKKyAgICBzdGF0aWMgUmVmPENsaXBib2Fy
ZEV2ZW50PiBjcmVhdGUoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBjb25zdCBJbml0JiBpbml0
LCBJc1RydXN0ZWQgaXNUcnVzdGVkID0gSXNUcnVzdGVkOjpObykKKyAgICB7CisgICAgICAgIGF1
dG8gZXZlbnQgPSBhZG9wdFJlZigqbmV3IENsaXBib2FyZEV2ZW50KHR5cGUsIGluaXQsIGlzVHJ1
c3RlZCkpOworICAgICAgICByZXR1cm4gZXZlbnQ7CisgICAgfQogCi0gICAgICAgIEV2ZW50SW50
ZXJmYWNlIGV2ZW50SW50ZXJmYWNlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgICAgIGJvb2wgaXND
bGlwYm9hcmRFdmVudCgpIGNvbnN0IG92ZXJyaWRlOworICAgIERhdGFUcmFuc2ZlciogY2xpcGJv
YXJkRGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpcGJvYXJkRGF0YS5nZXQoKTsgfQogCi0gICAg
ICAgIFJlZlB0cjxEYXRhVHJhbnNmZXI+IG1fZGF0YVRyYW5zZmVyOwotICAgIH07Citwcml2YXRl
OgorICAgIENsaXBib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgSW5p
dCYsIElzVHJ1c3RlZCk7CisKKyAgICBFdmVudEludGVyZmFjZSBldmVudEludGVyZmFjZSgpIGNv
bnN0IGZpbmFsOworICAgIGJvb2wgaXNDbGlwYm9hcmRFdmVudCgpIGNvbnN0IGZpbmFsOworCisg
ICAgUmVmUHRyPERhdGFUcmFuc2Zlcj4gbV9jbGlwYm9hcmREYXRhOworfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJk
RXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi40YTQxOTkyYWMyYjdiZWIxYzdkOWJlZjRhN2U1MDlmMWJlNGRhOGNkCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbApAQCAtMCwwICsx
LDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBS
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
CisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICovCisK
K1sKKyAgICBDb25zdHJ1Y3RvcihET01TdHJpbmcgdHlwZSwgb3B0aW9uYWwgQ2xpcGJvYXJkRXZl
bnRJbml0IGV2ZW50SW5pdERpY3QpCitdIGludGVyZmFjZSBDbGlwYm9hcmRFdmVudCA6IEV2ZW50
IHsKKyAgICByZWFkb25seSBhdHRyaWJ1dGUgRGF0YVRyYW5zZmVyPyBjbGlwYm9hcmREYXRhOwor
fTsKKworZGljdGlvbmFyeSBDbGlwYm9hcmRFdmVudEluaXQgOiBFdmVudEluaXQgeworICAgIERh
dGFUcmFuc2Zlcj8gY2xpcGJvYXJkRGF0YSA9IG51bGw7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0V2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudC5jcHAKaW5k
ZXggZDYzODI0ZGFhMWQ5MzgzOWFhNTJhZmE5MzkyY2E2ZWM3ZmY5MjEyNy4uNTAxNjA0NDBjZmQ2
Yjg4NjBlY2EyMmZjZTljOTljODFlZTkyOWRlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL0V2ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuY3BwCkBAIC01Niwx
MiArNTYsMTMgQEAgRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBi
b29sIGNhbkJ1YmJsZUFyZywgYm9vbCBjYW5jZWxhYmxlQXIKIHsKIH0KIAotRXZlbnQ6OkV2ZW50
KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBFdmVudEluaXQmIGluaXRpYWxp
emVyKQorRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBF
dmVudEluaXQmIGluaXRpYWxpemVyLCBJc1RydXN0ZWQgaXNUcnVzdGVkKQogICAgIDogbV90eXBl
KGV2ZW50VHlwZSkKICAgICAsIG1faXNJbml0aWFsaXplZCh0cnVlKQogICAgICwgbV9jYW5CdWJi
bGUoaW5pdGlhbGl6ZXIuYnViYmxlcykKICAgICAsIG1fY2FuY2VsYWJsZShpbml0aWFsaXplci5j
YW5jZWxhYmxlKQogICAgICwgbV9jb21wb3NlZChpbml0aWFsaXplci5jb21wb3NlZCkKKyAgICAs
IG1faXNUcnVzdGVkKGlzVHJ1c3RlZCA9PSBJc1RydXN0ZWQ6OlllcykKICAgICAsIG1fY3JlYXRl
VGltZShjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKGN1cnJlbnRUaW1lKCkpKQogewogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRXZlbnQuaAppbmRleCBiYWQ5NzE4ODMwMjQxZTY1ZmE1YWI5ZDI5NjZkMjgzYWJiMTY5Njdl
Li5kNWNlM2QwNWZjNTNhMjYxODZlNjBiMTYxM2E3ZmRiMDI0NTVkMjcwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQu
aApAQCAtMjUsNiArMjUsNyBAQAogI2RlZmluZSBFdmVudF9oCiAKICNpbmNsdWRlICJET01UaW1l
U3RhbXAuaCIKKyNpbmNsdWRlICJFdmVudEluaXQuaCIKICNpbmNsdWRlICJFdmVudEludGVyZmFj
ZXMuaCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlZC5oPgpAQCAtMzgsMTIgKzM5LDYgQEAgY2xhc3MgRXZlbnRQYXRoOwogY2xhc3MgRXZlbnRU
YXJnZXQ7CiBjbGFzcyBIVE1MSUZyYW1lRWxlbWVudDsKIAotc3RydWN0IEV2ZW50SW5pdCB7Ci0g
ICAgYm9vbCBidWJibGVzIHsgZmFsc2UgfTsKLSAgICBib29sIGNhbmNlbGFibGUgeyBmYWxzZSB9
OwotICAgIGJvb2wgY29tcG9zZWQgeyBmYWxzZSB9OwotfTsKLQogZW51bSBFdmVudEludGVyZmFj
ZSB7CiAKICNkZWZpbmUgRE9NX0VWRU5UX0lOVEVSRkFDRV9ERUNMQVJFKG5hbWUpIG5hbWUjI0lu
dGVyZmFjZVR5cGUsCkBAIC01NCw2ICs0OSw4IEBAIERPTV9FVkVOVF9JTlRFUkZBQ0VTX0ZPUl9F
QUNIKERPTV9FVkVOVF9JTlRFUkZBQ0VfREVDTEFSRSkKIAogY2xhc3MgRXZlbnQgOiBwdWJsaWMg
U2NyaXB0V3JhcHBhYmxlLCBwdWJsaWMgUmVmQ291bnRlZDxFdmVudD4gewogcHVibGljOgorICAg
IGVudW0gY2xhc3MgSXNUcnVzdGVkIHsgTm8sIFllcyB9OworCiAgICAgZW51bSBQaGFzZVR5cGUg
eyAKICAgICAgICAgTk9ORSAgICAgICAgICAgICAgICA9IDAsCiAgICAgICAgIENBUFRVUklOR19Q
SEFTRSAgICAgPSAxLCAKQEAgLTEzNCw4ICsxMzEsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBsZWdh
Y3lSZXR1cm5WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuICFkZWZhdWx0UHJldmVudGVkKCk7IH0KICAg
ICB2b2lkIHNldExlZ2FjeVJldHVyblZhbHVlKGJvb2wgcmV0dXJuVmFsdWUpIHsgc2V0RGVmYXVs
dFByZXZlbnRlZCghcmV0dXJuVmFsdWUpOyB9CiAKLSAgICBEYXRhVHJhbnNmZXIqIGNsaXBib2Fy
ZERhdGEoKSBjb25zdCB7IHJldHVybiBpc0NsaXBib2FyZEV2ZW50KCkgPyBpbnRlcm5hbERhdGFU
cmFuc2ZlcigpIDogbnVsbHB0cjsgfQotCiAgICAgdmlydHVhbCBFdmVudEludGVyZmFjZSBldmVu
dEludGVyZmFjZSgpIGNvbnN0OwogCiAgICAgLy8gVGhlc2UgZXZlbnRzIGFyZSBnZW5lcmFsIGNs
YXNzZXMgb2YgZXZlbnRzLgpAQCAtMTg4LDggKzE4Myw2IEBAIHB1YmxpYzoKICAgICBFdmVudCog
dW5kZXJseWluZ0V2ZW50KCkgY29uc3QgeyByZXR1cm4gbV91bmRlcmx5aW5nRXZlbnQuZ2V0KCk7
IH0KICAgICB2b2lkIHNldFVuZGVybHlpbmdFdmVudChFdmVudCopOwogCi0gICAgdmlydHVhbCBE
YXRhVHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3QgeyByZXR1cm4gMDsgfQot
CiAgICAgYm9vbCBpc0JlaW5nRGlzcGF0Y2hlZCgpIGNvbnN0IHsgcmV0dXJuIGV2ZW50UGhhc2Uo
KTsgfQogCiAgICAgdmlydHVhbCBSZWY8RXZlbnQ+IGNsb25lRm9yKEhUTUxJRnJhbWVFbGVtZW50
KikgY29uc3Q7CkBAIC0yMDAsNyArMTkzLDcgQEAgcHJvdGVjdGVkOgogICAgIEV2ZW50KCk7CiAg
ICAgV0VCQ09SRV9FWFBPUlQgRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGNh
bkJ1YmJsZSwgYm9vbCBjYW5jZWxhYmxlKTsKICAgICBFdmVudChjb25zdCBBdG9taWNTdHJpbmcm
IHR5cGUsIGJvb2wgY2FuQnViYmxlLCBib29sIGNhbmNlbGFibGUsIGRvdWJsZSB0aW1lc3RhbXAp
OwotICAgIEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgRXZlbnRJbml0Jik7
CisgICAgRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBjb25zdCBFdmVudEluaXQmLCBJ
c1RydXN0ZWQgPSBJc1RydXN0ZWQ6Ok5vKTsKIAogICAgIHZpcnR1YWwgdm9pZCByZWNlaXZlZFRh
cmdldCgpOwogICAgIGJvb2wgZGlzcGF0Y2hlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdGFyZ2V0OyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsIGIvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50LmlkbAppbmRleCBmZDgyYTFjNjFkYmEyYzFlYjUyZWNjYTI1ZTc2ZmY1ZjAx
NzYyNjRlLi5kNTU0MmNhNDk4MTQ5NmY4MDU4ZjE5YjQxZmUzMmU1YWE3NTEwNzE2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudC5pZGwKQEAgLTcxLDYgKzcxLDQgQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRXZl
bnRUYXJnZXQgc3JjRWxlbWVudDsKICAgICBbSW1wbGVtZW50ZWRBcz1sZWdhY3lSZXR1cm5WYWx1
ZV0gYXR0cmlidXRlIGJvb2xlYW4gcmV0dXJuVmFsdWU7CiAgICAgYXR0cmlidXRlIGJvb2xlYW4g
Y2FuY2VsQnViYmxlOwotCi0gICAgW0N1c3RvbV0gcmVhZG9ubHkgYXR0cmlidXRlIERhdGFUcmFu
c2ZlciBjbGlwYm9hcmREYXRhOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
dmVudEluaXQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEluaXQuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4z
ODhiNmRhMWUxMDI4Yjg0Yjg5MTRlOWE1OGExN2E3YjRjZjMzNTRhCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50SW5pdC5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjcHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgRXZl
bnRJbml0IHsKKyAgICBib29sIGJ1YmJsZXM7CisgICAgYm9vbCBjYW5jZWxhYmxlOworICAgIGJv
b2wgY29tcG9zZWQ7Cit9OworCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZl
bnRJbml0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEluaXQuaWRsCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmU1NWEwMzAzNGNlODQyYjhiYThiMWJlN2RmOWRkNGY2ZjExYmE5ZWYKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRJbml0LmlkbApAQCAtMCwwICsxLDMwIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworZGljdGlvbmFyeSBFdmVudEluaXQgeworICAgIGJvb2xlYW4gYnViYmxlcyA9
IGZhbHNlOworICAgIGJvb2xlYW4gY2FuY2VsYWJsZSA9IGZhbHNlOworICAgIGJvb2xlYW4gY29t
cG9zZWQgPSBmYWxzZTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRO
YW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCmluZGV4IDAzYjY3N2Vk
ZGIxZjk4NGRmZGFmYjhkMTk4YzUwMzYxOWUyOWFkY2IuLjkyNzdkMjNmYmNlZGYyMzkxMjI5OGUw
MDY0OGViM2M4NmYyZjQ2ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5h
bWVzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCkBAIC02LDYgKzYs
NyBAQCBIVE1MRXZlbnRzIGludGVyZmFjZU5hbWU9RXZlbnQKIEFuaW1hdGlvbkV2ZW50CiBCZWZv
cmVMb2FkRXZlbnQKIEJlZm9yZVVubG9hZEV2ZW50CitDbGlwYm9hcmRFdmVudAogQ2xvc2VFdmVu
dAogQ29tcG9zaXRpb25FdmVudAogQ3VzdG9tRXZlbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Nb3VzZUV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTW91c2VFdmVudC5oCmlu
ZGV4IGUxOTYwM2I0MTNiYmJkMjBkNzRjZDc2NjYwYzljNDdlN2M3NGQ3YjEuLjVlYjQwNTgxYjZl
NTY0NWU3ZTJkNWM5ZDAwYzIzYTZkMGVkMDFjZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Nb3VzZUV2ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01vdXNlRXZlbnQuaApA
QCAtODksOSArODksNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgTm9kZSogdG9FbGVt
ZW50KCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgTm9kZSogZnJvbUVsZW1lbnQoKSBjb25z
dDsKIAotICAgIC8vIEZJWE1FOiBUaGVzZSBmdW5jdGlvbnMgY2FuIGJlIG1lcmdlZCBpZiBtX2Rh
dGFUcmFuc2ZlciBpcyBvbmx5IGluaXRpYWxpemVkIGZvciBkcmFnIGV2ZW50cy4KICAgICBEYXRh
VHJhbnNmZXIqIGRhdGFUcmFuc2ZlcigpIGNvbnN0IHsgcmV0dXJuIGlzRHJhZ0V2ZW50KCkgPyBt
X2RhdGFUcmFuc2Zlci5nZXQoKSA6IG51bGxwdHI7IH0KLSAgICBEYXRhVHJhbnNmZXIqIGludGVy
bmFsRGF0YVRyYW5zZmVyKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9kYXRhVHJhbnNmZXIu
Z2V0KCk7IH0KIAogICAgIEV2ZW50SW50ZXJmYWNlIGV2ZW50SW50ZXJmYWNlKCkgY29uc3Qgb3Zl
cnJpZGU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAppbmRleCAwMzEwMGY4MGNlZjQxODUy
NzlkM2NiMTUwZjYxMWQ3MGVjMDA5MThkLi5iZTMzMTFkODNkOTEwMzIyYmRjZjE1MGQxYmQwNWYy
MjEzNThjZjc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC04ODMsNyArODgzLDcg
QEAgYm9vbCBFZGl0b3I6OmRpc3BhdGNoQ1BQRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVu
dFR5cGUsIERhdGFUcmFuc2ZlckFjY2Vzc1AKIAogICAgIFJlZlB0cjxEYXRhVHJhbnNmZXI+IGRh
dGFUcmFuc2ZlciA9IERhdGFUcmFuc2Zlcjo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKHBvbGljeSk7
CiAKLSAgICBSZWY8RXZlbnQ+IGV2ZW50ID0gQ2xpcGJvYXJkRXZlbnQ6OmNyZWF0ZShldmVudFR5
cGUsIHRydWUsIHRydWUsIGRhdGFUcmFuc2Zlci5nZXQoKSk7CisgICAgUmVmPENsaXBib2FyZEV2
ZW50PiBldmVudCA9IENsaXBib2FyZEV2ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCB7IHRydWUsIHRy
dWUsIGZhbHNlLCBkYXRhVHJhbnNmZXIuZ2V0KCkgfSwgRXZlbnQ6OklzVHJ1c3RlZDo6WWVzKTsK
ICAgICB0YXJnZXQtPmRpc3BhdGNoRXZlbnQoZXZlbnQpOwogICAgIGJvb2wgbm9EZWZhdWx0UHJv
Y2Vzc2luZyA9IGV2ZW50LT5kZWZhdWx0UHJldmVudGVkKCk7CiAgICAgaWYgKG5vRGVmYXVsdFBy
b2Nlc3NpbmcgJiYgcG9saWN5ID09IERhdGFUcmFuc2ZlckFjY2Vzc1BvbGljeTo6V3JpdGFibGUp
IHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCAzOWI3MGIwNzIxZTkzOGQxYmQzMjA5NjU5NWU0NzhjMWU4MmUwNzA2Li4wMmJk
MDZiNTQxN2FlZWM0N2RkM2JiN2JiZWQxOWNlOGNjZmNlYTJhIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTYtMTAtMDggIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAg
ICBBZGQgc3VwcG9ydCBmb3IgQ2xpcGJvYXJkRXZlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MzE2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4dGVuZGVkIGxheW91dCB0ZXN0IGNvdmVyYWdlLgor
CisgICAgICAgICogZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvcGFzdGVib2FyZC9jbGlwYm9hcmQtZXZlbnQu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0
cnVjdG9yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvY2xpcGJv
YXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QveG1saHR0
cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtZ2V0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL3dvcmtlcnMvd29ya2VyLWltcG9ydFNjcmlwdHNPbkVycm9yLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBpbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICoganMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmli
dXRlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xv
YmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMteW9zZW1pdGUvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2pzL2RvbS9nbG9iYWwtY29uc3Ry
dWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9q
cy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dDoKKwogMjAx
Ni0xMC0wNyAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAg
ICBSRUdSRVNTSU9OIChyMjA2ODUzPyk6IExheW91dFRlc3QganMvcmVncmVzcy0xNDEwOTguaHRt
bCBmYWlsaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xp
cGJvYXJkLWV2ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2Fy
ZC9jbGlwYm9hcmQtZXZlbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNiNGEyNWJmYWJmNzY3
M2VjNGIxMDJjZGNjMDgzY2RhYjE0ZjgwNWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDI4IEBACitUZXN0cyB0aGUgQ2xpcGJvYXJkRXZlbnQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIGZpcmVkQ29weUV2ZW50IGlzIGZhbHNlCitQQVNTIGZpcmVkUGFz
dGVFdmVudCBpcyBmYWxzZQorUEFTUyBldmVudC50eXBlIGlzICJjb3B5IgorUEFTUyBldmVudC5f
X3Byb3RvX18gaXMgQ2xpcGJvYXJkRXZlbnQucHJvdG90eXBlCitQQVNTIGV2ZW50LmlzVHJ1c3Rl
ZCBpcyB0cnVlCitQQVNTIGV2ZW50LmJ1YmJsZXMgaXMgdHJ1ZQorUEFTUyBldmVudC5jYW5jZWxh
YmxlIGlzIHRydWUKK1BBU1MgZXZlbnQuY2xpcGJvYXJkRGF0YS5fX3Byb3RvX18gaXMgRGF0YVRy
YW5zZmVyLnByb3RvdHlwZQorUEFTUyBmaXJlZENvcHlFdmVudCBpcyB0cnVlCitQQVNTIGZpcmVk
UGFzdGVFdmVudCBpcyBmYWxzZQorUEFTUyBldmVudC50eXBlIGlzICJwYXN0ZSIKK1BBU1MgZXZl
bnQuX19wcm90b19fIGlzIENsaXBib2FyZEV2ZW50LnByb3RvdHlwZQorUEFTUyBldmVudC5pc1Ry
dXN0ZWQgaXMgdHJ1ZQorUEFTUyBldmVudC5idWJibGVzIGlzIHRydWUKK1BBU1MgZXZlbnQuY2Fu
Y2VsYWJsZSBpcyB0cnVlCitQQVNTIGV2ZW50LmNsaXBib2FyZERhdGEuX19wcm90b19fIGlzIERh
dGFUcmFuc2Zlci5wcm90b3R5cGUKK1BBU1MgZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0
ZXh0L3BsYWluJykgaXMgIkNvbnRlbnQiCitQQVNTIGZpcmVkQ29weUV2ZW50IGlzIGZhbHNlCitQ
QVNTIGZpcmVkUGFzdGVFdmVudCBpcyB0cnVlCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9w
YXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0
ZWJvYXJkL2NsaXBib2FyZC1ldmVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM1MWQ3YjQyZGZkMTU5YTM1
YWRiM2YzNTUwZWYwNjM2ZmU1ZjI1ZTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9l
ZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50Lmh0bWwKQEAgLTAsMCArMSw1NSBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8dGV4dGFyZWEgaWQ9InRlc3RBcmVhIj5D
b250ZW50PC90ZXh0YXJlYT4KKzxzY3JpcHQgc3JjPSIuLi9lZGl0aW5nLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGVzdHMgdGhlIENsaXBib2FyZEV2ZW50LiIpOworCitm
dW5jdGlvbiB0ZXN0Q2xpcGJvYXJkRXZlbnQoZSkKK3sKKyAgICBldmVudCA9IGU7CisgICAgc2hv
dWxkQmUoImV2ZW50Ll9fcHJvdG9fXyIsICJDbGlwYm9hcmRFdmVudC5wcm90b3R5cGUiKTsKKyAg
ICBzaG91bGRCZVRydWUoImV2ZW50LmlzVHJ1c3RlZCIpCisgICAgc2hvdWxkQmVUcnVlKCJldmVu
dC5idWJibGVzIik7CisgICAgc2hvdWxkQmVUcnVlKCJldmVudC5jYW5jZWxhYmxlIik7CisgICAg
c2hvdWxkQmUoImV2ZW50LmNsaXBib2FyZERhdGEuX19wcm90b19fIiwgIkRhdGFUcmFuc2Zlci5w
cm90b3R5cGUiKTsKK30KKwordmFyIGZpcmVkQ29weUV2ZW50ID0gZmFsc2U7Cit2YXIgZmlyZWRQ
YXN0ZUV2ZW50ID0gZmFsc2U7CisKK3ZhciB0ZXN0QXJlYSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0QXJlYSIpOwordGVzdEFyZWEuYWRkRXZlbnRMaXN0ZW5lcigiY29weSIsIGZ1bmN0
aW9uKGUpIHsKKyAgICBldmVudCA9IGU7CisgICAgZmlyZWRDb3B5RXZlbnQgPSB0cnVlOworICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQudHlwZSIsICJjb3B5Iik7CisgICAgdGVzdENs
aXBib2FyZEV2ZW50KGV2ZW50KTsKK30pOworCit0ZXN0QXJlYS5hZGRFdmVudExpc3RlbmVyKCJw
YXN0ZSIsIGZ1bmN0aW9uKGUpIHsKKyAgICBldmVudCA9IGU7CisgICAgZmlyZWRQYXN0ZUV2ZW50
ID0gdHJ1ZTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LnR5cGUiLCAicGFzdGUi
KTsKKyAgICB0ZXN0Q2xpcGJvYXJkRXZlbnQoZXZlbnQpOworICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygiZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0ZXh0L3BsYWluJykiLCAiQ29udGVu
dCIpOworfSk7CisKK3Rlc3RBcmVhLmZvY3VzKCk7CitleGVjU2VsZWN0QWxsQ29tbWFuZCgpOwor
c2hvdWxkQmVGYWxzZSgiZmlyZWRDb3B5RXZlbnQiKTsKK3Nob3VsZEJlRmFsc2UoImZpcmVkUGFz
dGVFdmVudCIpOworCitleGVjQ29weUNvbW1hbmQoKTsKK3Nob3VsZEJlVHJ1ZSgiZmlyZWRDb3B5
RXZlbnQiKTsKK3Nob3VsZEJlRmFsc2UoImZpcmVkUGFzdGVFdmVudCIpCitmaXJlZENvcHlFdmVu
dCA9IGZhbHNlOworCitleGVjUGFzdGVDb21tYW5kKCk7CitzaG91bGRCZUZhbHNlKCJmaXJlZENv
cHlFdmVudCIpOworc2hvdWxkQmVUcnVlKCJmaXJlZFBhc3RlRXZlbnQiKTsKKzwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xp
cGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMmExNzkyYjA3ZWJmNjZhN2I5OTNiOGYwODA3YzRlZDNjNjdlYzhlYgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rv
ci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBACisKK1BBU1MgRmlyc3QgcGFyYW1ldGVyIGlz
IG1hbmRhdG9yeSAKK1BBU1MgT21pdCBpbml0IGRpY3Rpb25hcnkgCitQQVNTIGJ1YmJsZXMgbWVt
YmVyIAorUEFTUyBidWJibGVzIG1lbWJlciAKK1BBU1MgYnViYmxlcyBtZW1iZXIgCitQQVNTIGJ1
YmJsZXMgbWVtYmVyIAorUEFTUyBQYXNzaW5nIGEgYmFkIHR5cGUgZm9yIGNsaXBib2FyZERhdGEg
bWVtYmVyIHNob3VsZCB0aHJvdyAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2
ZW50cy9jbGlwYm9hcmQtZXZlbnQtY29uc3RydWN0b3IuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MmM1NzM1
ZjlmZmIxNTAxYTJmZjk2NTNjNWRkNWFlMGJjN2ZhMjhlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwKQEAg
LTAsMCArMSw3MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPkNs
aXBib2FyZEV2ZW50IGNvbnN0cnVjdG9yPC90aXRsZT4KKzxzY3JpcHQgc3JjPS4uLy4uL3Jlc291
cmNlcy90ZXN0aGFybmVzcy5qcz48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPS4uLy4uL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcz48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlw
dD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X3Rocm93cyhuZXcgVHlwZUVycm9yKCks
IGZ1bmN0aW9uKCkgeworICAgICAgICBuZXcgQ2xpcGJvYXJkRXZlbnQoKTsKKyAgICB9KTsKK30s
ICJGaXJzdCBwYXJhbWV0ZXIgaXMgbWFuZGF0b3J5Iik7CisKK3Rlc3QoZnVuY3Rpb24oKSB7Cisg
ICAgdmFyIGV2ZW50ID0gbmV3IENsaXBib2FyZEV2ZW50KCJmb28iKTsKKyAgICBhc3NlcnRfZXF1
YWxzKGV2ZW50LnR5cGUsICJmb28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3Rl
ZCwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuYnViYmxlcywgZmFsc2UpOworICAg
IGFzc2VydF9lcXVhbHMoZXZlbnQuY2FuY2VsYWJsZSwgZmFsc2UpOworICAgIGFzc2VydF9lcXVh
bHMoZXZlbnQuY29tcG9zZWQsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNsaXBi
b2FyZERhdGEsIG51bGwpOworfSwgIk9taXQgaW5pdCBkaWN0aW9uYXJ5Iik7CisKK3Rlc3QoZnVu
Y3Rpb24oKSB7CisgICAgdmFyIGV2ZW50ID0gbmV3IENsaXBib2FyZEV2ZW50KCJmb28iLCB7YnVi
YmxlczogdHJ1ZX0pOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQudHlwZSwgImZvbyIpOworICAg
IGFzc2VydF9lcXVhbHMoZXZlbnQuaXNUcnVzdGVkLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFs
cyhldmVudC5idWJibGVzLCB0cnVlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNhbmNlbGFi
bGUsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNvbXBvc2VkLCBmYWxzZSk7Cisg
ICAgYXNzZXJ0X2VxdWFscyhldmVudC5jbGlwYm9hcmREYXRhLCBudWxsKTsKK30sICJidWJibGVz
IG1lbWJlciIpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZhciBldmVudCA9IG5ldyBDbGlw
Ym9hcmRFdmVudCgiZm9vIiwge2NhbmNlbGFibGU6IHRydWV9KTsKKyAgICBhc3NlcnRfZXF1YWxz
KGV2ZW50LnR5cGUsICJmb28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwg
ZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuYnViYmxlcywgZmFsc2UpOworICAgIGFz
c2VydF9lcXVhbHMoZXZlbnQuY2FuY2VsYWJsZSwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhl
dmVudC5jb21wb3NlZCwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2xpcGJvYXJk
RGF0YSwgbnVsbCk7Cit9LCAiYnViYmxlcyBtZW1iZXIiKTsKKwordGVzdChmdW5jdGlvbigpIHsK
KyAgICB2YXIgZXZlbnQgPSBuZXcgQ2xpcGJvYXJkRXZlbnQoImZvbyIsIHtjb21wb3NlZDogdHJ1
ZX0pOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQudHlwZSwgImZvbyIpOworICAgIGFzc2VydF9l
cXVhbHMoZXZlbnQuaXNUcnVzdGVkLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5i
dWJibGVzLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jYW5jZWxhYmxlLCBmYWxz
ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jb21wb3NlZCwgdHJ1ZSk7CisgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5jbGlwYm9hcmREYXRhLCBudWxsKTsKK30sICJidWJibGVzIG1lbWJlciIp
OworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZhciBldmVudCA9IG5ldyBDbGlwYm9hcmRFdmVu
dCgiZm9vIiwge2J1YmJsZXM6IHRydWUsIGNhbmNlbGFibGU6IHRydWUsIGNvbXBvc2VkOiB0cnVl
fSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC50eXBlLCAiZm9vIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhldmVudC5pc1RydXN0ZWQsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmJ1
YmJsZXMsIHRydWUpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2FuY2VsYWJsZSwgdHJ1ZSk7
CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jb21wb3NlZCwgdHJ1ZSk7CisgICAgYXNzZXJ0X2Vx
dWFscyhldmVudC5jbGlwYm9hcmREYXRhLCBudWxsKTsKK30sICJidWJibGVzIG1lbWJlciIpOwor
Cit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF90aHJvd3MobmV3IFR5cGVFcnJvcigpLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgbmV3IENsaXBib2FyZEV2ZW50KCJmb28iLCB7Y2xpcGJvYXJk
RGF0YTogZG9jdW1lbnR9KTsKKyAgICB9KTsKK30sICJQYXNzaW5nIGEgYmFkIHR5cGUgZm9yIGNs
aXBib2FyZERhdGEgbWVtYmVyIHNob3VsZCB0aHJvdyIpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0
dHByZXF1ZXN0LWdldC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1
ZXN0L3htbGh0dHByZXF1ZXN0LWdldC1leHBlY3RlZC50eHQKaW5kZXggYmM5NzEzZTRmN2MzYmFk
YThjMjg5Mzg0OTU4ZDJiY2M3MGQ4OWE2ZS4uODE3YzIzMDdmZThiNmEzOTAwOWRhYmNlNWVmNGY3
MmRlZTc1ODE0MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC94bWxodHRwcmVxdWVzdC94
bWxodHRwcmVxdWVzdC1nZXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1s
aHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtZ2V0LWV4cGVjdGVkLnR4dApAQCAtNDYsNyArNDYs
NiBAQCBTRUxFQ1QgOiAnMTYzODQnCiBidWJibGVzIDogJ2ZhbHNlJwogY2FuY2VsQnViYmxlIDog
J2ZhbHNlJwogY2FuY2VsYWJsZSA6ICdmYWxzZScKLWNsaXBib2FyZERhdGEgOiAndW5kZWZpbmVk
JwogY29tcG9zZWQgOiAnZmFsc2UnCiBjb21wb3NlZFBhdGggOiAnZnVuY3Rpb24gY29tcG9zZWRQ
YXRoKCkgewogICAgIFtuYXRpdmUgY29kZV0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd29ya2Vycy93b3JrZXItaW1wb3J0U2NyaXB0c09uRXJyb3ItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJv
ci1leHBlY3RlZC50eHQKaW5kZXggOTFlNzQ5MmNlNzM3MTE4OTVlODVkYWJjNzY5NGQ0ZjZkZGJl
YTM5Yy4uOTlhNGNiY2YyYWQ3OThjNzk2NTIzZGYyZDM0MGQyODBlNDIyMTYwMCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25F
cnJvci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJzL3dv
cmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1leHBlY3RlZC50eHQKQEAgLTI1LDcgKzI1LDYgQEAg
U0VMRUNUOiAxNjM4NCwKIGJ1YmJsZXM6IGZhbHNlLAogY2FuY2VsQnViYmxlOiBmYWxzZSwKIGNh
bmNlbGFibGU6IHRydWUsCi1jbGlwYm9hcmREYXRhOiB1bmRlZmluZWQsCiBjb2xubzogMTQsCiBj
b21wb3NlZDogZmFsc2UsCiBjb21wb3NlZFBhdGg6IGZ1bmN0aW9uIGNvbXBvc2VkUGF0aCgpIHsg
W25hdGl2ZSBjb2RlXSB9LApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVs
L3JlbW90ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL21vZGVsL3JlbW90ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0
CmluZGV4IDM4ZTJkMDU5MGVjNjk5ZmVlZmQwOWI2YTk5ZWM2ZThlNjIxZjg4MDUuLjJmN2FkNGVj
NjA4MmJiNDA5M2QxODllMWFhNTgyZTRlMTk2NWExNGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9tb2RlbC9yZW1vdGUtb2JqZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJv
cGVydGllcy1leHBlY3RlZC50eHQKQEAgLTI0Myw3ICsyNDMsNiBAQCBESVNQTEFZQUJMRSBQUk9Q
RVJUSUVTOgogICAgIHNyY0VsZW1lbnQKICAgICByZXR1cm5WYWx1ZQogICAgIGNhbmNlbEJ1YmJs
ZQotICAgIGNsaXBib2FyZERhdGEKICAgICBfX3Byb3RvX18KIAogQUxMIFBST1BFUlRJRVM6CkBA
IC0yNjEsNyArMjYwLDYgQEAgQUxMIFBST1BFUlRJRVM6CiAgICAgc3JjRWxlbWVudAogICAgIHJl
dHVyblZhbHVlCiAgICAgY2FuY2VsQnViYmxlCi0gICAgY2xpcGJvYXJkRGF0YQogICAgIGNvbXBv
c2VkUGF0aAogICAgIHN0b3BQcm9wYWdhdGlvbgogICAgIHByZXZlbnREZWZhdWx0CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJp
YnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IDVmMGU5MjQyNDA0NjY3MWM2ZjJkMWNiNGQ5MWJhYmRl
NTk2OWNlMjkuLmQ4OTc4ODRiZjJhMzJhYzExODFlZDU4ZDU1MTMxN2QwZTg0NGQxMDkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3Jz
LWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0yMjgsNiArMjI4LDExIEBAIFBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093
blByb3BlcnR5KCdnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcp
LmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52
YWx1ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZh
bHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJv
YXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFi
bGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbGlwYm9hcmRFdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3Nl
RXZlbnQKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9z
ZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5
KCdzZXQnKSBpcyBmYWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdr
MS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0
cmlidXRlcy1leHBlY3RlZC50eHQKaW5kZXggODJjYzMwOTdlNTVmZDY2NGMzZGRmMjMxOTQ1MDc2
NWU2ZjdkOTFkOC4uNDNmMzg4NDkyZjc2YTYxN2Y0MTY0NGM1NjIxOGIwMzljNWU0ZWI4NCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0
cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2sxL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQu
dHh0CkBAIC0yNjMsNiArMjYzLDExIEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdnCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5o
YXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmVudW1lcmFibGUgaXMgZmFsc2UK
IFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0
TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52YWx1ZSBpcyBDbGlwYm9hcmRFdmVu
dAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2Fy
ZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmNv
bmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3NlRXZlbnQKIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVy
dHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9iYWwt
Y29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhw
ZWN0ZWQudHh0CmluZGV4IGE4ODgyZmVmYmMwZDFkMTdlZTg5YjAzZjdiMTkyMmY5Zjg5Yjg3OTAu
LjNjNjg5ZTI5NzMwNDVjOGMyMjQ4YjQ4ZjRhZWY0ZmE3ZTY1NDA4NjEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy15b3NlbWl0ZS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9y
cy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMt
eW9zZW1pdGUvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50
eHQKQEAgLTI2Myw2ICsyNjMsMTEgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuaGFzT3duUHJvcGVydHkoJ2cKIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuZW51bWVyYWJsZSBpcyBmYWxzZQog
UEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RM
aXN0JykuY29uZmlndXJhYmxlIGlzIHRydWUKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLnZhbHVlIGlzIENsaXBib2FyZEV2ZW50
CitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJk
RXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmhhc093blByb3Bl
cnR5KCdzZXQnKSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuZW51bWVyYWJsZSBpcyBmYWxzZQorUEFTUyBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuY29u
ZmlndXJhYmxlIGlzIHRydWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihn
bG9iYWwsICdDbG9zZUV2ZW50JykudmFsdWUgaXMgQ2xvc2VFdmVudAogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0
eSgnZ2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihn
bG9iYWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3Rv
cnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMv
ZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKaW5kZXggMzcy
YjdiMDAzODgzNjIxMDNhYzQ1ZDE5ZWNhZmM1ZDY3NTlkMzNjMi4uMmM1ODU4MTgwNzkxNWUzNjVl
MjFhNTc5OGNmZjE4ZWUwMjhiMTgxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1h
dHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMjYzLDYgKzI2MywxMSBAQCBQQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Q
cm9wZXJ0eSgnZwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0NsaWVudFJlY3RMaXN0JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5l
bnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQorUEFTUyBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykudmFs
dWUgaXMgQ2xpcGJvYXJkRXZlbnQKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxz
ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2Fy
ZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5lbnVtZXJhYmxl
IGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xpcGJvYXJkRXZlbnQnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS52YWx1ZSBpcyBDbG9zZUV2
ZW50CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VF
dmVudCcpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgn
c2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9qcy9k
b20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dpbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4
cGVjdGVkLnR4dAppbmRleCA3ZWY5NThkOTIzNTI0ZjI5YzFjOTk3ZjE5ZTc3YWUzMzQxMzU4ZDg4
Li42OWQzODMwN2Q0ZTQ5ZTE0MDEyYmRmZmY5ZWJiYzA3YzVlNDc1MDNiIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmli
dXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2pzL2RvbS9n
bG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0xNjgsNiArMTY4
LDExIEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGll
bnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0
JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbGllbnRSZWN0TGlzdCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJs
ZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xpcGJvYXJkRXZlbnQnKS52YWx1ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJv
cGVydHkoJ2dldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFs
c2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9h
cmRFdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVl
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVu
dCcpLnZhbHVlIGlzIENsb3NlRXZlbnQKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNl
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVu
dCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291029</attachid>
            <date>2016-10-08 16:15:09 -0700</date>
            <delta_ts>2016-10-08 16:41:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163164-20161008161151.patch</filename>
            <type>text/plain</type>
            <size>46082</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2OTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWUwMTY0NjZmNmY3ZmYw
YzMxOTk4N2VmMGY5NWNmNzlmODc5NDk0NS4uZTQ1ZTNkODJjYjVlM2Q4ZGZlNzYyMDFkYjZmMDJk
MjdiOTgyYTU2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE2LTEwLTA4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENs
aXBib2FyZEV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjMxNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGQgc3VwcG9ydCBmb3IgQ2xpcGJvYXJkRXZlbnQ6CisgICAgICAgIC0gaHR0cHM6Ly93
d3cudzMub3JnL1RSL2NsaXBib2FyZC1hcGlzLyNjbGlwYm9hcmQtZXZlbnQtaW50ZXJmYWNlcwor
CisgICAgICAgIEZpcmVmb3ggYW5kIENocm9tZSBib3RoIGFscmVhZHkgc3VwcG9ydCB0aGlzLgor
CisgICAgICAgIFRoaXMgZ2l2ZXMgdXMgNSBtb3JlIHBvaW50cyBvbiBodG1sNXRlc3QuY29tLgor
CisgICAgICAgIFRlc3RzOiBlZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50Lmh0bWwK
KyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci5o
dG1sCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNl
cy5jcHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVu
dEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3bHlDcmVhdGVkKTogRGVsZXRl
ZC4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAg
ICAgICAoV2lsbENvbnZlcnRVbmRlZmluZWRUb0RlZmF1bHRQYXJhbWV0ZXJWYWx1ZSk6CisgICAg
ICAgIFdlIHVzZSBbXSBhcyBpbXBsaWNpdCBkZWZhdWx0IHZhbHVlIGZvciBkaWN0aW9uYXJ5IHBh
cmFtZXRlcnMuIFRoaXMgY2hhbmdlCisgICAgICAgIGlzIHNvIHdlIGNhbGwgY29udmVydERpY3Rp
b25hcnk8PigpIGV2ZW4gaWYgdGhlIHBhcmFtZXRlciBpcyB1bmRlZmluZWQKKyAgICAgICAgYmVj
YXVzZSB3ZSB3YW50IHRvIHBhc3MgYSBzdHJ1Y3QgdG8gdGhlIGltcGxlbWVudGF0aW9uIGluaXRp
YWxpemVkIHdpdGgKKyAgICAgICAgdGhlIGRlZmF1bHQgbWVtYmVyIHZhbHVlcyBkZWZpbmVkIGlu
IHRoZSBJREwuCisKKyAgICAgICAgKiBkb20vQ2xpcGJvYXJkRXZlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KToKKyAgICAgICAgKFdlYkNv
cmU6OkNsaXBib2FyZEV2ZW50OjpldmVudEludGVyZmFjZSk6CisgICAgICAgICogZG9tL0NsaXBi
b2FyZEV2ZW50Lmg6CisgICAgICAgICogZG9tL0NsaXBib2FyZEV2ZW50LmlkbDogQWRkZWQuCisg
ICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50OjpFdmVudCk6
CisgICAgICAgICogZG9tL0V2ZW50Lmg6CisgICAgICAgICogZG9tL0V2ZW50LmlkbDoKKyAgICAg
ICAgKiBkb20vRXZlbnRJbml0Lmg6IEFkZGVkLgorICAgICAgICAqIGRvbS9FdmVudEluaXQuaWRs
OiBBZGRlZC4KKyAgICAgICAgKiBkb20vRXZlbnROYW1lcy5pbjoKKyAgICAgICAgKiBkb20vTW91
c2VFdmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6TW91c2VFdmVudDo6ZGF0YVRyYW5zZmVyKToK
KyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6
OmRpc3BhdGNoQ1BQRXZlbnQpOgorCiAyMDE2LTEwLTA3ICBXZW5zb24gSHNpZWggIDx3ZW5zb25f
aHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBvcnQgb25iZWZvcmVpbnB1dCBldmVudCBo
YW5kbGluZyBmb3IgdGhlIG5ldyBJbnB1dEV2ZW50IHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggY2M0MDM4NzBjNWQ3MjczM2FjYWUxMzAwNDU4MzE1NDA3NmQ5NzE1My4uMjg4ZWE4MDQ3Nzc0
ODRhYmIwODIwNjc4N2JiZjdkZjA2ZmYyY2FkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTM3
NSw2ICszNzUsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIGRvbS9DaGls
ZE5vZGUuaWRsCiAgICAgZG9tL0NsaWVudFJlY3QuaWRsCiAgICAgZG9tL0NsaWVudFJlY3RMaXN0
LmlkbAorICAgIGRvbS9DbGlwYm9hcmRFdmVudC5pZGwKICAgICBkb20vQ29tbWVudC5pZGwKICAg
ICBkb20vQ29tcG9zaXRpb25FdmVudC5pZGwKICAgICBkb20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5
LmlkbApAQCAtMzk3LDYgKzM5OCw3IEBAIHNldChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAg
ICAgZG9tL0VsZW1lbnQuaWRsCiAgICAgZG9tL0Vycm9yRXZlbnQuaWRsCiAgICAgZG9tL0V2ZW50
LmlkbAorICAgIGRvbS9FdmVudEluaXQuaWRsCiAgICAgZG9tL0V2ZW50VGFyZ2V0LmlkbAogICAg
IGRvbS9Gb2N1c0V2ZW50LmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IGJmYmQ2OTBlOTczMDg5Y2IyYjQ5NzM0YWVkMDI5
MWIyNjhkMWEyNjguLjYxMjYzMTkyMGU1Mjc3MjQ4NDEyNzNhM2E5NTU0MjMyMzE4Yzk5OWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTEzNiw2ICsxMzYsNyBAQAogI2luY2x1ZGUg
IkpTQ1NTVW5rbm93blJ1bGUuY3BwIgogI2luY2x1ZGUgIkpTQ1NTVmFsdWUuY3BwIgogI2luY2x1
ZGUgIkpTQ1NTVmFsdWVMaXN0LmNwcCIKKyNpbmNsdWRlICJKU0NsaXBib2FyZEV2ZW50LmNwcCIK
ICNpZiBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKQogI2luY2x1ZGUgIkpTQ3VzdG9tRWxlbWVudFJl
Z2lzdHJ5LmNwcCIKICNlbmRpZgpAQCAtMTg4LDYgKzE4OSw3IEBACiAjaW5jbHVkZSAiSlNFbGVt
ZW50LmNwcCIKICNpbmNsdWRlICJKU0Vycm9yRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTRXZlbnQu
Y3BwIgorI2luY2x1ZGUgIkpTRXZlbnRJbml0LmNwcCIKICNpbmNsdWRlICJKU0V2ZW50U291cmNl
LmNwcCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmNwcCIKICNpbmNsdWRlICJKU0ZldGNoQm9k
eS5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA1YTEwYjUwZGZhMWM1OTgy
ZTdmZjk2Y2M2NjY3MDhjOWFjNWQ2YmY0Li44OTViYzhkZjJmZjlhMDNkZGQ4NzhhMjUzZTgwOGEx
NzBjNDE2OWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTI4Niw2ICsyODYs
NyBAQCBKU19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9kb20vQ2xpZW50UmVjdC5p
ZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0NsaWVudFJlY3RMaXN0LmlkbCBcCiAgICAgJChXZWJD
b3JlKS9kb20vQ29tbWVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0NsaXBib2FyZEV2ZW50
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQ29tcG9zaXRpb25FdmVudC5pZGwgXAogICAgICQo
V2ViQ29yZSkvZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5pZGwgXAogICAgICQoV2ViQ29yZSkv
ZG9tL0N1c3RvbUV2ZW50LmlkbCBcCkBAIC0zMDcsNiArMzA4LDcgQEAgSlNfQklORElOR19JRExT
ID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0VsZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Rv
bS9FcnJvckV2ZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnQuaWRsIFwKKyAgICAk
KFdlYkNvcmUpL2RvbS9FdmVudEluaXQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudExp
c3RlbmVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRUYXJnZXQuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2RvbS9Gb2N1c0V2ZW50LmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzVkMjlhZDUxOTk2YmZkOTBhZDI5
M2NiZjZmNDA2MTUyYjlmN2Q2NC4uYWE4NmQwOWE4ZTkzZmNjOGRhZDE3MjZkNmJmOWIzODdiMTAx
OTgxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtMjg4OSw2ICsyODg5LDExIEBACiAJCTgzNjc1ODdFMUM1NkU5OUIwMDhBMTA4
NyAvKiBKU0hUTUxEYXRhRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzRCODZBOTFDNTZFOTNFMDBGM0YwRTMgLyogSlNIVE1MRGF0YUVs
ZW1lbnQuY3BwICovOyB9OwogCQk4MzY3NTg3RjFDNTZFOTlCMDA4QTEwODcgLyogSlNIVE1MRGF0
YUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzNEI4NkE4MUM1NkU5M0UwMEYzRjBFMyAvKiBKU0hUTUxEYXRhRWxlbWVudC5oICovOyB9Owog
CQk4MzZDMTQ0MzFDREVBRkQ4MDA3MzQ5M0YgLyogSlNYUGF0aE5TUmVzb2x2ZXJDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2QzE0NDIx
Q0RFQUZDQTAwNzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCAqLzsgfTsKKwkJ
ODM2RDAzMkExREE4OUI5MjAwRkZEOTZCIC8qIEV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2RDAzMjgxREE4OUI3MzAwRkZEOTZCIC8q
IEV2ZW50SW5pdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTgzNkQwMzJGMURBOEExM0EwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyQjFEQThBMTMy
MDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovOyB9OworCQk4MzZEMDMzMDFEQThBMTNEMDBG
RkQ5NkIgLyogSlNFdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzNkQwMzJDMURBOEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICov
OyB9OworCQk4MzZEMDMzMTFEQThBMTNGMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyRDFE
QThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi87IH07CisJCTgzNkQwMzMy
MURBOEExNDIwMEZGRDk2QiAvKiBKU0NsaXBib2FyZEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyRTFEQThBMTMyMDBGRkQ5NkIgLyog
SlNDbGlwYm9hcmRFdmVudC5oICovOyB9OwogCQk4MzZEQUEwNjFDRUFCODBEMDBBMkI3MDcgLyog
UmVuZGVyRGVzY2VuZGFudEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzZEQUEwNTFDRUFCN0NEMDBBMkI3MDcgLyogUmVuZGVyRGVzY2Vu
ZGFudEl0ZXJhdG9yLmggKi87IH07CiAJCTgzNkZCQ0VBMTc4QzExMzIwMEIyMUExNSAvKiBTVkdB
bmltYXRlZFR5cGVBbmltYXRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzZGQkNFOTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBl
QW5pbWF0b3IuY3BwICovOyB9OwogCQk4MzZGQkNFQzE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5p
bWF0ZWRQcm9wZXJ0eS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4MzZGQkNFQjE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5j
cHAgKi87IH07CkBAIC0xMDAyMiw2ICsxMDAyNywxMyBAQAogCQk4MzVGOEIyNjFEMkQ5MEJBMDBF
NDA4RUMgLyogU2xvdGFibGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNsb3RhYmxlLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2OUU1OEYxQUZERDAzMDAwODdERjY4
IC8qIE5vbkRvY3VtZW50VHlwZUNoaWxkTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm9uRG9jdW1lbnRUeXBlQ2hp
bGROb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2QzE0NDIxQ0RFQUZD
QTAwNzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMjcxREE4OUI3MzAwRkZEOTZCIC8qIENsaXBi
b2FyZEV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDbGlwYm9hcmRFdmVudC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzI4MURBODlCNzMwMEZGRDk2QiAv
KiBFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRJbml0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2
QiAvKiBFdmVudEluaXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEV2ZW50SW5pdC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzJCMURBOEExMzIwMEZGRDk2QiAv
KiBKU0V2ZW50SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0V2ZW50SW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzJDMURB
OEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0V2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZE
MDMyRDFEQThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NsaXBib2FyZEV2ZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJv
YXJkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDbGlwYm9hcmRF
dmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzZEQUEwNTFDRUFCN0NEMDBB
MkI3MDcgLyogUmVuZGVyRGVzY2VuZGFudEl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFJlbmRlckRlc2NlbmRhbnRJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk4MzZGQkNFOTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBl
QW5pbWF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQW5p
bWF0ZWRUeXBlQW5pbWF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzZG
QkNFQjE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmltYXRlZFByb3BlcnR5LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5NjgzLDYgKzE5Njk1LDggQEAKIAkJCQlCQzk0
NjM0NzEwN0E5MzY2MDA4NTcxOTMgLyogSlNCZWZvcmVMb2FkRXZlbnQuaCAqLywKIAkJCQk4MjI1
NDMyQ0E5RDRCNENGNDYyOEVDN0YgLyogSlNCZWZvcmVVbmxvYWRFdmVudC5jcHAgKi8sCiAJCQkJ
MjlFMDRBMjdCRUQyRjgxRjk4RTkwMjJCIC8qIEpTQmVmb3JlVW5sb2FkRXZlbnQuaCAqLywKKwkJ
CQk4MzZEMDMyRDFEQThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi8sCisJ
CQkJODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuaCAqLywKIAkJ
CQk3OUFDOTIxNjEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmNwcCAqLywK
IAkJCQk3OUFDOTIxNzEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmggKi8s
CiAJCQkJRTQ3NzhCN0QxMTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuY3BwICovLApA
QCAtMTk2OTEsNiArMTk3MDUsOCBAQAogCQkJCTJFQ0Y3QURCMTAxNjJCMzgwMDQyN0RFNyAvKiBK
U0Vycm9yRXZlbnQuaCAqLywKIAkJCQkxNEU4Mzc4MzA5Rjg1RDFDMDBCODVBRTQgLyogSlNFdmVu
dC5jcHAgKi8sCiAJCQkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLywK
KwkJCQk4MzZEMDMyQjFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovLAorCQkJ
CTgzNkQwMzJDMURBOEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovLAogCQkJCUM2QTcw
MzMyNUM5RDBCNkNEQ0JDNEQ3OCAvKiBKU0V2ZW50VGFyZ2V0LmNwcCAqLywKIAkJCQk1RkM3REMy
NkNGRTI1NjMyMDBCODVBRTUgLyogSlNFdmVudFRhcmdldC5oICovLAogCQkJCUI2RDlEMjdBMTRF
QUMwODYwMDkwRDc1RSAvKiBKU0ZvY3VzRXZlbnQuY3BwICovLApAQCAtMjI5OTMsNiArMjMwMDks
NyBAQAogCQkJCUJDQzA2NTdDMEYzQ0UxQjcwMENEMkQ4NyAvKiBDbGllbnRSZWN0TGlzdC5pZGwg
Ki8sCiAJCQkJODUwMzFCMjkwQTQ0RUZDNzAwRjk5MkUwIC8qIENsaXBib2FyZEV2ZW50LmNwcCAq
LywKIAkJCQk4NTAzMUIyQTBBNDRFRkM3MDBGOTkyRTAgLyogQ2xpcGJvYXJkRXZlbnQuaCAqLywK
KwkJCQk4MzZEMDMyNzFEQTg5QjczMDBGRkQ5NkIgLyogQ2xpcGJvYXJkRXZlbnQuaWRsICovLAog
CQkJCTlCRDhBOTU5MThCRUZDNzYwMDk4N0U5QSAvKiBDb2xsZWN0aW9uSW5kZXhDYWNoZS5jcHAg
Ki8sCiAJCQkJRTQyNUE0OTkxODI5MkI4NDAwMjBDRkNGIC8qIENvbGxlY3Rpb25JbmRleENhY2hl
LmggKi8sCiAJCQkJNjU1MEI2OTcwOTlERjAyNzAwOTBENzgxIC8qIENvbW1lbnQuY3BwICovLApA
QCAtMjMxMTMsNiArMjMxMzAsOCBAQAogCQkJCTQxMzhEMzMzMTI0NDA1NDgwMDMyM0QzMyAvKiBF
dmVudENvbnRleHQuaCAqLywKIAkJCQk0MThBMDZDRjEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnRE
aXNwYXRjaGVyLmNwcCAqLywKIAkJCQk0MThBMDZDRTEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnRE
aXNwYXRjaGVyLmggKi8sCisJCQkJODM2RDAzMjgxREE4OUI3MzAwRkZEOTZCIC8qIEV2ZW50SW5p
dC5oICovLAorCQkJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2QiAvKiBFdmVudEluaXQuaWRsICov
LAogCQkJCTkzNUZCQzQ0MDlCQTAwQjkwMEUyMzBCMSAvKiBFdmVudExpc3RlbmVyLmggKi8sCiAJ
CQkJODVBRkE3NDEwQUFGMjk4NDAwRTg0MzA1IC8qIEV2ZW50TGlzdGVuZXIuaWRsICovLAogCQkJ
CUFENDQ5NUYxMTQxRkMwODkwMDU0MUVERiAvKiBFdmVudExpc3RlbmVyTWFwLmNwcCAqLywKQEAg
LTI1Mjg5LDYgKzI1MzA4LDcgQEAKIAkJCQk4QTlBNTg4ODExRTg0RjM3MDA4QUNGRDEgLyogSlNQ
ZXJmb3JtYW5jZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkRFQTYyNDcxNTIxMDJGQzAw
NDc5REYwIC8qIEpTUGVyaW9kaWNXYXZlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5M0I3MEQ2QzA5
RUIwQzdDMDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4MzZEMDMzMDFEQThBMTNEMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTUxODlGMDFFMTBCMzdCRDkwMEYzQzczOSAvKiBKU1BvcFN0YXRlRXZlbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTU5ODM2NUREMTM1NUY1NTcwMDFCMTg1RCAvKiBKU1Bvc2l0
aW9uQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUZFODBEQTcyMEU5QzQ3MkYwMDBENkY3
NSAvKiBKU1Bvc2l0aW9uRXJyb3IuaCBpbiBIZWFkZXJzICovLApAQCAtMjYxNzEsNiArMjYxOTEs
NyBAQAogCQkJCUJDRTMyQjlDMTUxN0MwQjIwMEY1NDJFQyAvKiBSZW5kZXJNdWx0aUNvbHVtblNl
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTRERTVDOTIxRDgzMDExRDAwMTY0RjJBIC8qIENTU1N1
cHBvcnRzUGFyc2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzFBN0Q5ODE4RkNCNUIwMDA0MjE4
NzkgLyogUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTgzNkQwMzJBMURBODlCOTIwMEZGRDk2QiAvKiBFdmVudEluaXQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCThBQzgyMkZEMTgwRkMwMzMwMEZCNjRENSAvKiBSZW5kZXJOYW1lZEZsb3dGcmFn
bWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM4NUYyM0QxNTE5MTVFMDAwQkMxN0JFIC8qIFJl
bmRlck5hbWVkRmxvd1RocmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNFQTQ4ODAwOTdEOTMw
MjAwOTRDOUU0IC8qIFJlbmRlck9iamVjdC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNjk2OSw2ICsy
Njk5MCw3IEBACiAJCQkJOUIyRDhBNzkxNDk5N0NDRjAwRUNFRjNFIC8qIFVuZG9TdGVwLmggaW4g
SGVhZGVycyAqLywKIAkJCQlBODYzRTIwMTEzNDM0MTIwMDAyNzQ5MjYgLyogVW5pY29kZUJpZGku
aCBpbiBIZWFkZXJzICovLAogCQkJCTUxODg2NEUxMUJCQUY1NzQwMEU1NDBDOSAvKiBVbmlxdWVJ
REJEYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM2RDAzMzIxREE4QTE0MjAwRkZEOTZC
IC8qIEpTQ2xpcGJvYXJkRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxOThGN0E1MUJCREI3
OTMwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZUNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICov
LAogCQkJCTUxOThGN0E5MUJCREQzODUwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZVRyYW5z
YWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNEFGQ0ZBNTBEQUYyOUEzMDBGNUY1NUMgLyog
VW5pdEJlemllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yODE0MCw2ICsyODE2Miw3IEBACiAJCQkJ
OUJBQjZDNkQxMjU1MDYzMTAwMTYyNkQ0IC8qIEVkaXRpbmdTdHlsZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk0QjMwNDNDQzBBRTAzNzNCMDBBODI2NDcgLyogRWRpdG9yLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTlCNTVFRUU5MUIzRTg4OTgwMDUzNDJCQyAvKiBFZGl0b3JDb2NvYS5tbSBpbiBT
b3VyY2VzICovLAorCQkJCTgzNkQwMzJGMURBOEExM0EwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk5M0EzOEI0QjBEMEU1ODA4MDA2ODcyQzIgLyogRWRpdG9y
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRUQxM0QzQTBDRUE5MzQ2MDBEODk0NjYg
LyogRWRpdG9ySU9TLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRUQ1MDFEQzYwQjI0OUYyOTAwQUUx
OEQ5IC8qIEVkaXRvck1hYy5tbSBpbiBTb3VyY2VzICovLApAQCAtMzA1MDgsNiArMzA1MzEsNyBA
QAogCQkJCTMxNDAzNzlDMTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5t
bSBpbiBTb3VyY2VzICovLAogCQkJCUNEQzk3OUY0MUM0OThDMDkwMERCNTBENCAvKiBXZWJDb3Jl
TlNFcnJvckV4dHJhcy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTkzNEQ5QkE1MEI4QzExNkIwMDdC
NDJBOSAvKiBXZWJDb3JlTlNTdHJpbmdFeHRyYXMubW0gaW4gU291cmNlcyAqLywKKwkJCQk4MzZE
MDMzMTFEQThBMTNGMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlDNUI0QzI0RTE1MDkyMzZDMDBBNkVGMzcgLyogV2ViQ29yZU5TVVJMRXh0cmFzLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0QyMjVDMEIxQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVO
U1VSTFNlc3Npb24ubW0gaW4gU291cmNlcyAqLywKIAkJCQlCNTBGNUI4MTBFOTZDRDk5MDBBRDcx
QTYgLyogV2ViQ29yZU9iakNFeHRyYXMubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAKaW5kZXggMDE1Y2E2YjFlY2ZjYzI5YWU2
ZmY0YTJhMDIwMGU3NDc4ZWY4ZTM3Mi4uZDcyYzU4NzBhZjYxY2FmMmNkM2U2NjNhZGFmMzM5MjU2
ZTkzZTZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1
c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5j
cHAKQEAgLTQzLDExICs0Myw2IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotSlNWYWx1ZSBKU0V2ZW50OjpjbGlwYm9hcmREYXRhKEV4ZWNTdGF0ZSYgc3Rh
dGUpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIHdyYXBwZWQoKS5pc0NsaXBib2FyZEV2ZW50KCkgPyB0
b0pTKCZzdGF0ZSwgZ2xvYmFsT2JqZWN0KCksIHdyYXBwZWQoKS5jbGlwYm9hcmREYXRhKCkpIDog
anNVbmRlZmluZWQoKTsKLX0KLQogI2RlZmluZSBUUllfVE9fV1JBUF9XSVRIX0lOVEVSRkFDRShp
bnRlcmZhY2VOYW1lKSBcCiAgICAgY2FzZSBpbnRlcmZhY2VOYW1lIyNJbnRlcmZhY2VUeXBlOiBc
CiAgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPGludGVyZmFjZU5hbWU+KGdsb2JhbE9iamVj
dCwgV1RGTW92ZShldmVudCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBmYjg2NmMzNmE4NGYxMWU2ZWY0MTljZTExNGYy
ODdkZmM0NTQxOGYxLi5lYzM4MmQ0YTIzYjVjMTdkZDVmOWYyNGY5NGU0MWM0YjAyNWJlNDYwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQpAQCAtMzk0OSw2ICszOTQ5LDcgQEAgc3ViIFdpbGxDb252ZXJ0VW5kZWZpbmVkVG9EZWZh
dWx0UGFyYW1ldGVyVmFsdWUKICAgICByZXR1cm4gMSBpZiBkZWZpbmVkICRhdXRvbWF0aWNhbGx5
R2VuZXJhdGVkRGVmYXVsdFZhbHVlICYmICRhdXRvbWF0aWNhbGx5R2VuZXJhdGVkRGVmYXVsdFZh
bHVlIGVxICRkZWZhdWx0VmFsdWU7CiAKICAgICByZXR1cm4gMSBpZiAkZGVmYXVsdFZhbHVlIGVx
ICJudWxsIiAmJiAkY29kZUdlbmVyYXRvci0+SXNXcmFwcGVyVHlwZSgkcGFyYW1ldGVyVHlwZSk7
CisgICAgcmV0dXJuIDEgaWYgJGRlZmF1bHRWYWx1ZSBlcSAiW10iICYmICRjb2RlR2VuZXJhdG9y
LT5Jc0RpY3Rpb25hcnlUeXBlKCRwYXJhbWV0ZXJUeXBlKTsKIAogICAgIHJldHVybiAwOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5jcHAKaW5kZXggYTFhZmQ4ZWRjZTIzZWI0NTJl
YzE4Yjk1MThlYzA5YzllMDIxNGQxNS4uNmJmNmUxNzBlNzBhZTFjNzMzMWQwZmE5MWI0MGNhNmM2
NWEwMjhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJkRXZlbnQuY3BwCkBAIC0yOCw4ICsy
OCw5IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotQ2xpcGJvYXJkRXZlbnQ6OkNsaXBib2Fy
ZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9v
bCBjYW5jZWxhYmxlLCBEYXRhVHJhbnNmZXIqIGRhdGFUcmFuc2ZlcikKLSAgICA6IEV2ZW50KGV2
ZW50VHlwZSwgY2FuQnViYmxlLCBjYW5jZWxhYmxlKSwgbV9kYXRhVHJhbnNmZXIoZGF0YVRyYW5z
ZmVyKQorQ2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYg
dHlwZSwgY29uc3QgSW5pdCYgaW5pdCwgSXNUcnVzdGVkIGlzVHJ1c3RlZCkKKyAgICA6IEV2ZW50
KHR5cGUsIGluaXQsIGlzVHJ1c3RlZCkKKyAgICAsIG1fY2xpcGJvYXJkRGF0YShpbml0LmNsaXBi
b2FyZERhdGEpCiB7CiB9CiAKQEAgLTM5LDggKzQwLDcgQEAgQ2xpcGJvYXJkRXZlbnQ6On5DbGlw
Ym9hcmRFdmVudCgpCiAKIEV2ZW50SW50ZXJmYWNlIENsaXBib2FyZEV2ZW50OjpldmVudEludGVy
ZmFjZSgpIGNvbnN0CiB7Ci0gICAgLy8gTm90aWNlIHRoYXQgdGhlcmUgaXMgbm8gQ2xpcGJvYXJk
RXZlbnQuaWRsLgotICAgIHJldHVybiBFdmVudEludGVyZmFjZVR5cGU7CisgICAgcmV0dXJuIENs
aXBib2FyZEV2ZW50SW50ZXJmYWNlVHlwZTsKIH0KIAogYm9vbCBDbGlwYm9hcmRFdmVudDo6aXND
bGlwYm9hcmRFdmVudCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xp
cGJvYXJkRXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5oCmluZGV4
IGY0MWExYzk4ZWRiNDc5NWE1YzVmMGE4ZGM3MzZmZWEzZjE1YWUzYTguLjJjOWM4ZWEyYjUxMzAy
YzViNjVjOTRkODVlNDY1OWVjYzkxNzEwN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9DbGlwYm9hcmRFdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVu
dC5oCkBAIC0yOCwyNyArMjgsMzggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xh
c3MgRGF0YVRyYW5zZmVyOworY2xhc3MgRGF0YVRyYW5zZmVyOwogCi0gICAgY2xhc3MgQ2xpcGJv
YXJkRXZlbnQgZmluYWwgOiBwdWJsaWMgRXZlbnQgewotICAgIHB1YmxpYzoKLSAgICAgICAgdmly
dHVhbCB+Q2xpcGJvYXJkRXZlbnQoKTsKK2NsYXNzIENsaXBib2FyZEV2ZW50IGZpbmFsIDogcHVi
bGljIEV2ZW50IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5DbGlwYm9hcmRFdmVudCgpOwogCi0g
ICAgICAgIHN0YXRpYyBSZWY8Q2xpcGJvYXJkRXZlbnQ+IGNyZWF0ZShjb25zdCBBdG9taWNTdHJp
bmcmIHR5cGUsIGJvb2wgY2FuQnViYmxlQXJnLCBib29sIGNhbmNlbGFibGVBcmcsIERhdGFUcmFu
c2ZlciogY2xpcGJvYXJkQXJnKQorICAgIHN0cnVjdCBJbml0IDogcHVibGljIEV2ZW50SW5pdCB7
CisgICAgICAgIEluaXQoYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIGJvb2wgY29tcG9z
ZWQsIFJlZlB0cjxEYXRhVHJhbnNmZXI+JiYgY2xpcGJvYXJkRGF0YSkKKyAgICAgICAgICAgIDog
RXZlbnRJbml0KGJ1YmJsZXMsIGNhbmNlbGFibGUsIGNvbXBvc2VkKQorICAgICAgICAgICAgLCBj
bGlwYm9hcmREYXRhKFdURk1vdmUoY2xpcGJvYXJkRGF0YSkpCiAgICAgICAgIHsKLSAgICAgICAg
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENsaXBib2FyZEV2ZW50KHR5cGUsIGNhbkJ1YmJsZUFy
ZywgY2FuY2VsYWJsZUFyZywgY2xpcGJvYXJkQXJnKSk7CiAgICAgICAgIH0KIAotICAgICAgICBE
YXRhVHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1
cm4gbV9kYXRhVHJhbnNmZXIuZ2V0KCk7IH0KKyAgICAgICAgUmVmUHRyPERhdGFUcmFuc2Zlcj4g
Y2xpcGJvYXJkRGF0YTsKKyAgICB9OwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgQ2xpcGJvYXJk
RXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGNhbkJ1YmJsZUFyZywgYm9vbCBj
YW5jZWxhYmxlQXJnLCBEYXRhVHJhbnNmZXIqKTsKKyAgICBzdGF0aWMgUmVmPENsaXBib2FyZEV2
ZW50PiBjcmVhdGUoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBjb25zdCBJbml0JiBpbml0LCBJ
c1RydXN0ZWQgaXNUcnVzdGVkID0gSXNUcnVzdGVkOjpObykKKyAgICB7CisgICAgICAgIGF1dG8g
ZXZlbnQgPSBhZG9wdFJlZigqbmV3IENsaXBib2FyZEV2ZW50KHR5cGUsIGluaXQsIGlzVHJ1c3Rl
ZCkpOworICAgICAgICByZXR1cm4gZXZlbnQ7CisgICAgfQogCi0gICAgICAgIEV2ZW50SW50ZXJm
YWNlIGV2ZW50SW50ZXJmYWNlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgICAgIGJvb2wgaXNDbGlw
Ym9hcmRFdmVudCgpIGNvbnN0IG92ZXJyaWRlOworICAgIERhdGFUcmFuc2ZlciogY2xpcGJvYXJk
RGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpcGJvYXJkRGF0YS5nZXQoKTsgfQogCi0gICAgICAg
IFJlZlB0cjxEYXRhVHJhbnNmZXI+IG1fZGF0YVRyYW5zZmVyOwotICAgIH07Citwcml2YXRlOgor
ICAgIENsaXBib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgSW5pdCYs
IElzVHJ1c3RlZCk7CisKKyAgICBFdmVudEludGVyZmFjZSBldmVudEludGVyZmFjZSgpIGNvbnN0
IGZpbmFsOworICAgIGJvb2wgaXNDbGlwYm9hcmRFdmVudCgpIGNvbnN0IGZpbmFsOworCisgICAg
UmVmUHRyPERhdGFUcmFuc2Zlcj4gbV9jbGlwYm9hcmREYXRhOworfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJkRXZl
bnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li40YTQxOTkyYWMyYjdiZWIxYzdkOWJlZjRhN2U1MDlmMWJlNGRhOGNkCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbApAQCAtMCwwICsxLDM1
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICovCisKK1sK
KyAgICBDb25zdHJ1Y3RvcihET01TdHJpbmcgdHlwZSwgb3B0aW9uYWwgQ2xpcGJvYXJkRXZlbnRJ
bml0IGV2ZW50SW5pdERpY3QpCitdIGludGVyZmFjZSBDbGlwYm9hcmRFdmVudCA6IEV2ZW50IHsK
KyAgICByZWFkb25seSBhdHRyaWJ1dGUgRGF0YVRyYW5zZmVyPyBjbGlwYm9hcmREYXRhOworfTsK
KworZGljdGlvbmFyeSBDbGlwYm9hcmRFdmVudEluaXQgOiBFdmVudEluaXQgeworICAgIERhdGFU
cmFuc2Zlcj8gY2xpcGJvYXJkRGF0YSA9IG51bGw7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudC5jcHAKaW5kZXgg
ZDYzODI0ZGFhMWQ5MzgzOWFhNTJhZmE5MzkyY2E2ZWM3ZmY5MjEyNy4uNTAxNjA0NDBjZmQ2Yjg4
NjBlY2EyMmZjZTljOTljODFlZTkyOWRlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9t
L0V2ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuY3BwCkBAIC01NiwxMiAr
NTYsMTMgQEAgRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29s
IGNhbkJ1YmJsZUFyZywgYm9vbCBjYW5jZWxhYmxlQXIKIHsKIH0KIAotRXZlbnQ6OkV2ZW50KGNv
bnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBFdmVudEluaXQmIGluaXRpYWxpemVy
KQorRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBFdmVu
dEluaXQmIGluaXRpYWxpemVyLCBJc1RydXN0ZWQgaXNUcnVzdGVkKQogICAgIDogbV90eXBlKGV2
ZW50VHlwZSkKICAgICAsIG1faXNJbml0aWFsaXplZCh0cnVlKQogICAgICwgbV9jYW5CdWJibGUo
aW5pdGlhbGl6ZXIuYnViYmxlcykKICAgICAsIG1fY2FuY2VsYWJsZShpbml0aWFsaXplci5jYW5j
ZWxhYmxlKQogICAgICwgbV9jb21wb3NlZChpbml0aWFsaXplci5jb21wb3NlZCkKKyAgICAsIG1f
aXNUcnVzdGVkKGlzVHJ1c3RlZCA9PSBJc1RydXN0ZWQ6OlllcykKICAgICAsIG1fY3JlYXRlVGlt
ZShjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKGN1cnJlbnRUaW1lKCkpKQogewogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RXZlbnQuaAppbmRleCBiYWQ5NzE4ODMwMjQxZTY1ZmE1YWI5ZDI5NjZkMjgzYWJiMTY5NjdlLi5k
NWNlM2QwNWZjNTNhMjYxODZlNjBiMTYxM2E3ZmRiMDI0NTVkMjcwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaApA
QCAtMjUsNiArMjUsNyBAQAogI2RlZmluZSBFdmVudF9oCiAKICNpbmNsdWRlICJET01UaW1lU3Rh
bXAuaCIKKyNpbmNsdWRlICJFdmVudEluaXQuaCIKICNpbmNsdWRlICJFdmVudEludGVyZmFjZXMu
aCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgpAQCAtMzgsMTIgKzM5LDYgQEAgY2xhc3MgRXZlbnRQYXRoOwogY2xhc3MgRXZlbnRUYXJn
ZXQ7CiBjbGFzcyBIVE1MSUZyYW1lRWxlbWVudDsKIAotc3RydWN0IEV2ZW50SW5pdCB7Ci0gICAg
Ym9vbCBidWJibGVzIHsgZmFsc2UgfTsKLSAgICBib29sIGNhbmNlbGFibGUgeyBmYWxzZSB9Owot
ICAgIGJvb2wgY29tcG9zZWQgeyBmYWxzZSB9OwotfTsKLQogZW51bSBFdmVudEludGVyZmFjZSB7
CiAKICNkZWZpbmUgRE9NX0VWRU5UX0lOVEVSRkFDRV9ERUNMQVJFKG5hbWUpIG5hbWUjI0ludGVy
ZmFjZVR5cGUsCkBAIC01NCw2ICs0OSw4IEBAIERPTV9FVkVOVF9JTlRFUkZBQ0VTX0ZPUl9FQUNI
KERPTV9FVkVOVF9JTlRFUkZBQ0VfREVDTEFSRSkKIAogY2xhc3MgRXZlbnQgOiBwdWJsaWMgU2Ny
aXB0V3JhcHBhYmxlLCBwdWJsaWMgUmVmQ291bnRlZDxFdmVudD4gewogcHVibGljOgorICAgIGVu
dW0gY2xhc3MgSXNUcnVzdGVkIHsgTm8sIFllcyB9OworCiAgICAgZW51bSBQaGFzZVR5cGUgeyAK
ICAgICAgICAgTk9ORSAgICAgICAgICAgICAgICA9IDAsCiAgICAgICAgIENBUFRVUklOR19QSEFT
RSAgICAgPSAxLCAKQEAgLTEzNCw4ICsxMzEsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBsZWdhY3lS
ZXR1cm5WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuICFkZWZhdWx0UHJldmVudGVkKCk7IH0KICAgICB2
b2lkIHNldExlZ2FjeVJldHVyblZhbHVlKGJvb2wgcmV0dXJuVmFsdWUpIHsgc2V0RGVmYXVsdFBy
ZXZlbnRlZCghcmV0dXJuVmFsdWUpOyB9CiAKLSAgICBEYXRhVHJhbnNmZXIqIGNsaXBib2FyZERh
dGEoKSBjb25zdCB7IHJldHVybiBpc0NsaXBib2FyZEV2ZW50KCkgPyBpbnRlcm5hbERhdGFUcmFu
c2ZlcigpIDogbnVsbHB0cjsgfQotCiAgICAgdmlydHVhbCBFdmVudEludGVyZmFjZSBldmVudElu
dGVyZmFjZSgpIGNvbnN0OwogCiAgICAgLy8gVGhlc2UgZXZlbnRzIGFyZSBnZW5lcmFsIGNsYXNz
ZXMgb2YgZXZlbnRzLgpAQCAtMTg4LDggKzE4Myw2IEBAIHB1YmxpYzoKICAgICBFdmVudCogdW5k
ZXJseWluZ0V2ZW50KCkgY29uc3QgeyByZXR1cm4gbV91bmRlcmx5aW5nRXZlbnQuZ2V0KCk7IH0K
ICAgICB2b2lkIHNldFVuZGVybHlpbmdFdmVudChFdmVudCopOwogCi0gICAgdmlydHVhbCBEYXRh
VHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3QgeyByZXR1cm4gMDsgfQotCiAg
ICAgYm9vbCBpc0JlaW5nRGlzcGF0Y2hlZCgpIGNvbnN0IHsgcmV0dXJuIGV2ZW50UGhhc2UoKTsg
fQogCiAgICAgdmlydHVhbCBSZWY8RXZlbnQ+IGNsb25lRm9yKEhUTUxJRnJhbWVFbGVtZW50Kikg
Y29uc3Q7CkBAIC0yMDAsNyArMTkzLDcgQEAgcHJvdGVjdGVkOgogICAgIEV2ZW50KCk7CiAgICAg
V0VCQ09SRV9FWFBPUlQgRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGNhbkJ1
YmJsZSwgYm9vbCBjYW5jZWxhYmxlKTsKICAgICBFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5
cGUsIGJvb2wgY2FuQnViYmxlLCBib29sIGNhbmNlbGFibGUsIGRvdWJsZSB0aW1lc3RhbXApOwot
ICAgIEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgRXZlbnRJbml0Jik7Cisg
ICAgRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBjb25zdCBFdmVudEluaXQmLCBJc1Ry
dXN0ZWQgPSBJc1RydXN0ZWQ6Ok5vKTsKIAogICAgIHZpcnR1YWwgdm9pZCByZWNlaXZlZFRhcmdl
dCgpOwogICAgIGJvb2wgZGlzcGF0Y2hlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdGFyZ2V0OyB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0V2ZW50LmlkbAppbmRleCBmZDgyYTFjNjFkYmEyYzFlYjUyZWNjYTI1ZTc2ZmY1ZjAxNzYy
NjRlLi5kNTU0MmNhNDk4MTQ5NmY4MDU4ZjE5YjQxZmUzMmU1YWE3NTEwNzE2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9F
dmVudC5pZGwKQEAgLTcxLDYgKzcxLDQgQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRXZlbnRU
YXJnZXQgc3JjRWxlbWVudDsKICAgICBbSW1wbGVtZW50ZWRBcz1sZWdhY3lSZXR1cm5WYWx1ZV0g
YXR0cmlidXRlIGJvb2xlYW4gcmV0dXJuVmFsdWU7CiAgICAgYXR0cmlidXRlIGJvb2xlYW4gY2Fu
Y2VsQnViYmxlOwotCi0gICAgW0N1c3RvbV0gcmVhZG9ubHkgYXR0cmlidXRlIERhdGFUcmFuc2Zl
ciBjbGlwYm9hcmREYXRhOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVu
dEluaXQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEluaXQuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MWQ2
MzI4NjY2M2UwNTE3MWJiMjAxNWMwNjc5YmU1MDIyYTYyMjNkCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50SW5pdC5oCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgRXZlbnRJ
bml0IHsKKyAgICBFdmVudEluaXQoKSA9IGRlZmF1bHQ7CisgICAgRXZlbnRJbml0KGJvb2wgYnVi
YmxlcywgYm9vbCBjYW5jZWxhYmxlLCBib29sIGNvbXBvc2VkKQorICAgICAgICA6IGJ1YmJsZXMo
YnViYmxlcykKKyAgICAgICAgLCBjYW5jZWxhYmxlKGNhbmNlbGFibGUpCisgICAgICAgICwgY29t
cG9zZWQoY29tcG9zZWQpCisgICAgeyB9CisKKyAgICBib29sIGJ1YmJsZXMgeyBmYWxzZSB9Owor
ICAgIGJvb2wgY2FuY2VsYWJsZSB7IGZhbHNlIH07CisgICAgYm9vbCBjb21wb3NlZCB7IGZhbHNl
IH07Cit9OworCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRJbml0Lmlk
bCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEluaXQuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU1NWEwMzAz
NGNlODQyYjhiYThiMWJlN2RmOWRkNGY2ZjExYmE5ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXZlbnRJbml0LmlkbApAQCAtMCwwICsxLDMwIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
KyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisg
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworZGljdGlvbmFyeSBFdmVudEluaXQgeworICAgIGJvb2xlYW4gYnViYmxlcyA9IGZhbHNlOwor
ICAgIGJvb2xlYW4gY2FuY2VsYWJsZSA9IGZhbHNlOworICAgIGJvb2xlYW4gY29tcG9zZWQgPSBm
YWxzZTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5pbiBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCmluZGV4IDAzYjY3N2VkZGIxZjk4NGRm
ZGFmYjhkMTk4YzUwMzYxOWUyOWFkY2IuLjkyNzdkMjNmYmNlZGYyMzkxMjI5OGUwMDY0OGViM2M4
NmYyZjQ2ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCkBAIC02LDYgKzYsNyBAQCBIVE1M
RXZlbnRzIGludGVyZmFjZU5hbWU9RXZlbnQKIEFuaW1hdGlvbkV2ZW50CiBCZWZvcmVMb2FkRXZl
bnQKIEJlZm9yZVVubG9hZEV2ZW50CitDbGlwYm9hcmRFdmVudAogQ2xvc2VFdmVudAogQ29tcG9z
aXRpb25FdmVudAogQ3VzdG9tRXZlbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9N
b3VzZUV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTW91c2VFdmVudC5oCmluZGV4IGUxOTYw
M2I0MTNiYmJkMjBkNzRjZDc2NjYwYzljNDdlN2M3NGQ3YjEuLjVlYjQwNTgxYjZlNTY0NWU3ZTJk
NWM5ZDAwYzIzYTZkMGVkMDFjZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Nb3Vz
ZUV2ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01vdXNlRXZlbnQuaApAQCAtODksOSAr
ODksNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgTm9kZSogdG9FbGVtZW50KCkgY29u
c3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgTm9kZSogZnJvbUVsZW1lbnQoKSBjb25zdDsKIAotICAg
IC8vIEZJWE1FOiBUaGVzZSBmdW5jdGlvbnMgY2FuIGJlIG1lcmdlZCBpZiBtX2RhdGFUcmFuc2Zl
ciBpcyBvbmx5IGluaXRpYWxpemVkIGZvciBkcmFnIGV2ZW50cy4KICAgICBEYXRhVHJhbnNmZXIq
IGRhdGFUcmFuc2ZlcigpIGNvbnN0IHsgcmV0dXJuIGlzRHJhZ0V2ZW50KCkgPyBtX2RhdGFUcmFu
c2Zlci5nZXQoKSA6IG51bGxwdHI7IH0KLSAgICBEYXRhVHJhbnNmZXIqIGludGVybmFsRGF0YVRy
YW5zZmVyKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9kYXRhVHJhbnNmZXIuZ2V0KCk7IH0K
IAogICAgIEV2ZW50SW50ZXJmYWNlIGV2ZW50SW50ZXJmYWNlKCkgY29uc3Qgb3ZlcnJpZGU7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAppbmRleCAwMzEwMGY4MGNlZjQxODUyNzlkM2NiMTUw
ZjYxMWQ3MGVjMDA5MThkLi5iZTMzMTFkODNkOTEwMzIyYmRjZjE1MGQxYmQwNWYyMjEzNThjZjc3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC04ODMsNyArODgzLDcgQEAgYm9vbCBF
ZGl0b3I6OmRpc3BhdGNoQ1BQRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERh
dGFUcmFuc2ZlckFjY2Vzc1AKIAogICAgIFJlZlB0cjxEYXRhVHJhbnNmZXI+IGRhdGFUcmFuc2Zl
ciA9IERhdGFUcmFuc2Zlcjo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKHBvbGljeSk7CiAKLSAgICBS
ZWY8RXZlbnQ+IGV2ZW50ID0gQ2xpcGJvYXJkRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIHRydWUs
IHRydWUsIGRhdGFUcmFuc2Zlci5nZXQoKSk7CisgICAgUmVmPENsaXBib2FyZEV2ZW50PiBldmVu
dCA9IENsaXBib2FyZEV2ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCB7IHRydWUsIHRydWUsIGZhbHNl
LCBkYXRhVHJhbnNmZXIuZ2V0KCkgfSwgRXZlbnQ6OklzVHJ1c3RlZDo6WWVzKTsKICAgICB0YXJn
ZXQtPmRpc3BhdGNoRXZlbnQoZXZlbnQpOwogICAgIGJvb2wgbm9EZWZhdWx0UHJvY2Vzc2luZyA9
IGV2ZW50LT5kZWZhdWx0UHJldmVudGVkKCk7CiAgICAgaWYgKG5vRGVmYXVsdFByb2Nlc3Npbmcg
JiYgcG9saWN5ID09IERhdGFUcmFuc2ZlckFjY2Vzc1BvbGljeTo6V3JpdGFibGUpIHsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCAzOWI3MGIwNzIxZTkzOGQxYmQzMjA5NjU5NWU0NzhjMWU4MmUwNzA2Li4wMmJkMDZiNTQxN2Fl
ZWM0N2RkM2JiN2JiZWQxOWNlOGNjZmNlYTJhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTYt
MTAtMDggIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3Vw
cG9ydCBmb3IgQ2xpcGJvYXJkRXZlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE2MzE2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEV4dGVuZGVkIGxheW91dCB0ZXN0IGNvdmVyYWdlLgorCisgICAgICAg
ICogZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGVkaXRpbmcvcGFzdGVib2FyZC9jbGlwYm9hcmQtZXZlbnQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50
LWNvbnN0cnVjdG9yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QveG1saHR0cHJlcXVlc3Qv
eG1saHR0cHJlcXVlc3QtZ2V0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dv
cmtlcnMvd29ya2VyLWltcG9ydFNjcmlwdHNPbkVycm9yLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3RlZC50
eHQ6CisgICAgICAgICoganMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0
cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMt
eW9zZW1pdGUvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0
dHJpYnV0ZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9qcy9kb20vZ2xv
YmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dDoKKwogMjAxNi0xMC0wNyAg
WXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMjA2ODUzPyk6IExheW91dFRlc3QganMvcmVncmVzcy0xNDEwOTguaHRtbCBmYWlsaW5n
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2
ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9jbGlwYm9h
cmQtZXZlbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNiNGEyNWJmYWJmNzY3M2VjNGIxMDJj
ZGNjMDgzY2RhYjE0ZjgwNWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5n
L3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI4IEBA
CitUZXN0cyB0aGUgQ2xpcGJvYXJkRXZlbnQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTIGZpcmVkQ29weUV2ZW50IGlzIGZhbHNlCitQQVNTIGZpcmVkUGFzdGVFdmVudCBp
cyBmYWxzZQorUEFTUyBldmVudC50eXBlIGlzICJjb3B5IgorUEFTUyBldmVudC5fX3Byb3RvX18g
aXMgQ2xpcGJvYXJkRXZlbnQucHJvdG90eXBlCitQQVNTIGV2ZW50LmlzVHJ1c3RlZCBpcyB0cnVl
CitQQVNTIGV2ZW50LmJ1YmJsZXMgaXMgdHJ1ZQorUEFTUyBldmVudC5jYW5jZWxhYmxlIGlzIHRy
dWUKK1BBU1MgZXZlbnQuY2xpcGJvYXJkRGF0YS5fX3Byb3RvX18gaXMgRGF0YVRyYW5zZmVyLnBy
b3RvdHlwZQorUEFTUyBmaXJlZENvcHlFdmVudCBpcyB0cnVlCitQQVNTIGZpcmVkUGFzdGVFdmVu
dCBpcyBmYWxzZQorUEFTUyBldmVudC50eXBlIGlzICJwYXN0ZSIKK1BBU1MgZXZlbnQuX19wcm90
b19fIGlzIENsaXBib2FyZEV2ZW50LnByb3RvdHlwZQorUEFTUyBldmVudC5pc1RydXN0ZWQgaXMg
dHJ1ZQorUEFTUyBldmVudC5idWJibGVzIGlzIHRydWUKK1BBU1MgZXZlbnQuY2FuY2VsYWJsZSBp
cyB0cnVlCitQQVNTIGV2ZW50LmNsaXBib2FyZERhdGEuX19wcm90b19fIGlzIERhdGFUcmFuc2Zl
ci5wcm90b3R5cGUKK1BBU1MgZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0ZXh0L3BsYWlu
JykgaXMgIkNvbnRlbnQiCitQQVNTIGZpcmVkQ29weUV2ZW50IGlzIGZhbHNlCitQQVNTIGZpcmVk
UGFzdGVFdmVudCBpcyB0cnVlCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJk
L2NsaXBib2FyZC1ldmVudC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2Ns
aXBib2FyZC1ldmVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM1MWQ3YjQyZGZkMTU5YTM1YWRiM2YzNTUw
ZWYwNjM2ZmU1ZjI1ZTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bh
c3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50Lmh0bWwKQEAgLTAsMCArMSw1NSBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8dGV4dGFyZWEgaWQ9InRlc3RBcmVhIj5Db250ZW50PC90
ZXh0YXJlYT4KKzxzY3JpcHQgc3JjPSIuLi9lZGl0aW5nLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+
CitkZXNjcmlwdGlvbigiVGVzdHMgdGhlIENsaXBib2FyZEV2ZW50LiIpOworCitmdW5jdGlvbiB0
ZXN0Q2xpcGJvYXJkRXZlbnQoZSkKK3sKKyAgICBldmVudCA9IGU7CisgICAgc2hvdWxkQmUoImV2
ZW50Ll9fcHJvdG9fXyIsICJDbGlwYm9hcmRFdmVudC5wcm90b3R5cGUiKTsKKyAgICBzaG91bGRC
ZVRydWUoImV2ZW50LmlzVHJ1c3RlZCIpCisgICAgc2hvdWxkQmVUcnVlKCJldmVudC5idWJibGVz
Iik7CisgICAgc2hvdWxkQmVUcnVlKCJldmVudC5jYW5jZWxhYmxlIik7CisgICAgc2hvdWxkQmUo
ImV2ZW50LmNsaXBib2FyZERhdGEuX19wcm90b19fIiwgIkRhdGFUcmFuc2Zlci5wcm90b3R5cGUi
KTsKK30KKwordmFyIGZpcmVkQ29weUV2ZW50ID0gZmFsc2U7Cit2YXIgZmlyZWRQYXN0ZUV2ZW50
ID0gZmFsc2U7CisKK3ZhciB0ZXN0QXJlYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
QXJlYSIpOwordGVzdEFyZWEuYWRkRXZlbnRMaXN0ZW5lcigiY29weSIsIGZ1bmN0aW9uKGUpIHsK
KyAgICBldmVudCA9IGU7CisgICAgZmlyZWRDb3B5RXZlbnQgPSB0cnVlOworICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygiZXZlbnQudHlwZSIsICJjb3B5Iik7CisgICAgdGVzdENsaXBib2FyZEV2
ZW50KGV2ZW50KTsKK30pOworCit0ZXN0QXJlYS5hZGRFdmVudExpc3RlbmVyKCJwYXN0ZSIsIGZ1
bmN0aW9uKGUpIHsKKyAgICBldmVudCA9IGU7CisgICAgZmlyZWRQYXN0ZUV2ZW50ID0gdHJ1ZTsK
KyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LnR5cGUiLCAicGFzdGUiKTsKKyAgICB0
ZXN0Q2xpcGJvYXJkRXZlbnQoZXZlbnQpOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZl
bnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0ZXh0L3BsYWluJykiLCAiQ29udGVudCIpOworfSk7
CisKK3Rlc3RBcmVhLmZvY3VzKCk7CitleGVjU2VsZWN0QWxsQ29tbWFuZCgpOworc2hvdWxkQmVG
YWxzZSgiZmlyZWRDb3B5RXZlbnQiKTsKK3Nob3VsZEJlRmFsc2UoImZpcmVkUGFzdGVFdmVudCIp
OworCitleGVjQ29weUNvbW1hbmQoKTsKK3Nob3VsZEJlVHJ1ZSgiZmlyZWRDb3B5RXZlbnQiKTsK
K3Nob3VsZEJlRmFsc2UoImZpcmVkUGFzdGVFdmVudCIpCitmaXJlZENvcHlFdmVudCA9IGZhbHNl
OworCitleGVjUGFzdGVDb21tYW5kKCk7CitzaG91bGRCZUZhbHNlKCJmaXJlZENvcHlFdmVudCIp
Oworc2hvdWxkQmVUcnVlKCJmaXJlZFBhc3RlRXZlbnQiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2
ZW50LWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2Ns
aXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmExNzky
YjA3ZWJmNjZhN2I5OTNiOGYwODA3YzRlZDNjNjdlYzhlYgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw5IEBACisKK1BBU1MgRmlyc3QgcGFyYW1ldGVyIGlzIG1hbmRhdG9y
eSAKK1BBU1MgT21pdCBpbml0IGRpY3Rpb25hcnkgCitQQVNTIGJ1YmJsZXMgbWVtYmVyIAorUEFT
UyBidWJibGVzIG1lbWJlciAKK1BBU1MgYnViYmxlcyBtZW1iZXIgCitQQVNTIGJ1YmJsZXMgbWVt
YmVyIAorUEFTUyBQYXNzaW5nIGEgYmFkIHR5cGUgZm9yIGNsaXBib2FyZERhdGEgbWVtYmVyIHNo
b3VsZCB0aHJvdyAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJv
YXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9jbGlw
Ym9hcmQtZXZlbnQtY29uc3RydWN0b3IuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MmM1NzM1ZjlmZmIxNTAx
YTJmZjk2NTNjNWRkNWFlMGJjN2ZhMjhlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwKQEAgLTAsMCArMSw3
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPkNsaXBib2FyZEV2
ZW50IGNvbnN0cnVjdG9yPC90aXRsZT4KKzxzY3JpcHQgc3JjPS4uLy4uL3Jlc291cmNlcy90ZXN0
aGFybmVzcy5qcz48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPS4uLy4uL3Jlc291cmNlcy90ZXN0aGFy
bmVzc3JlcG9ydC5qcz48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK3Rlc3Qo
ZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X3Rocm93cyhuZXcgVHlwZUVycm9yKCksIGZ1bmN0aW9u
KCkgeworICAgICAgICBuZXcgQ2xpcGJvYXJkRXZlbnQoKTsKKyAgICB9KTsKK30sICJGaXJzdCBw
YXJhbWV0ZXIgaXMgbWFuZGF0b3J5Iik7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGV2
ZW50ID0gbmV3IENsaXBib2FyZEV2ZW50KCJmb28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50
LnR5cGUsICJmb28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwgZmFsc2Up
OworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuYnViYmxlcywgZmFsc2UpOworICAgIGFzc2VydF9l
cXVhbHMoZXZlbnQuY2FuY2VsYWJsZSwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQu
Y29tcG9zZWQsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNsaXBib2FyZERhdGEs
IG51bGwpOworfSwgIk9taXQgaW5pdCBkaWN0aW9uYXJ5Iik7CisKK3Rlc3QoZnVuY3Rpb24oKSB7
CisgICAgdmFyIGV2ZW50ID0gbmV3IENsaXBib2FyZEV2ZW50KCJmb28iLCB7YnViYmxlczogdHJ1
ZX0pOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQudHlwZSwgImZvbyIpOworICAgIGFzc2VydF9l
cXVhbHMoZXZlbnQuaXNUcnVzdGVkLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5i
dWJibGVzLCB0cnVlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNhbmNlbGFibGUsIGZhbHNl
KTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNvbXBvc2VkLCBmYWxzZSk7CisgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5jbGlwYm9hcmREYXRhLCBudWxsKTsKK30sICJidWJibGVzIG1lbWJlciIp
OworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZhciBldmVudCA9IG5ldyBDbGlwYm9hcmRFdmVu
dCgiZm9vIiwge2NhbmNlbGFibGU6IHRydWV9KTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LnR5
cGUsICJmb28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwgZmFsc2UpOwor
ICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuYnViYmxlcywgZmFsc2UpOworICAgIGFzc2VydF9lcXVh
bHMoZXZlbnQuY2FuY2VsYWJsZSwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jb21w
b3NlZCwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2xpcGJvYXJkRGF0YSwgbnVs
bCk7Cit9LCAiYnViYmxlcyBtZW1iZXIiKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIg
ZXZlbnQgPSBuZXcgQ2xpcGJvYXJkRXZlbnQoImZvbyIsIHtjb21wb3NlZDogdHJ1ZX0pOworICAg
IGFzc2VydF9lcXVhbHMoZXZlbnQudHlwZSwgImZvbyIpOworICAgIGFzc2VydF9lcXVhbHMoZXZl
bnQuaXNUcnVzdGVkLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5idWJibGVzLCBm
YWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jYW5jZWxhYmxlLCBmYWxzZSk7CisgICAg
YXNzZXJ0X2VxdWFscyhldmVudC5jb21wb3NlZCwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhl
dmVudC5jbGlwYm9hcmREYXRhLCBudWxsKTsKK30sICJidWJibGVzIG1lbWJlciIpOworCit0ZXN0
KGZ1bmN0aW9uKCkgeworICAgIHZhciBldmVudCA9IG5ldyBDbGlwYm9hcmRFdmVudCgiZm9vIiwg
e2J1YmJsZXM6IHRydWUsIGNhbmNlbGFibGU6IHRydWUsIGNvbXBvc2VkOiB0cnVlfSk7CisgICAg
YXNzZXJ0X2VxdWFscyhldmVudC50eXBlLCAiZm9vIik7CisgICAgYXNzZXJ0X2VxdWFscyhldmVu
dC5pc1RydXN0ZWQsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmJ1YmJsZXMsIHRy
dWUpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2FuY2VsYWJsZSwgdHJ1ZSk7CisgICAgYXNz
ZXJ0X2VxdWFscyhldmVudC5jb21wb3NlZCwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVu
dC5jbGlwYm9hcmREYXRhLCBudWxsKTsKK30sICJidWJibGVzIG1lbWJlciIpOworCit0ZXN0KGZ1
bmN0aW9uKCkgeworICAgIGFzc2VydF90aHJvd3MobmV3IFR5cGVFcnJvcigpLCBmdW5jdGlvbigp
IHsKKyAgICAgICAgbmV3IENsaXBib2FyZEV2ZW50KCJmb28iLCB7Y2xpcGJvYXJkRGF0YTogZG9j
dW1lbnR9KTsKKyAgICB9KTsKK30sICJQYXNzaW5nIGEgYmFkIHR5cGUgZm9yIGNsaXBib2FyZERh
dGEgbWVtYmVyIHNob3VsZCB0aHJvdyIpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0
LWdldC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0
dHByZXF1ZXN0LWdldC1leHBlY3RlZC50eHQKaW5kZXggYmM5NzEzZTRmN2MzYmFkYThjMjg5Mzg0
OTU4ZDJiY2M3MGQ4OWE2ZS4uODE3YzIzMDdmZThiNmEzOTAwOWRhYmNlNWVmNGY3MmRlZTc1ODE0
MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVx
dWVzdC1nZXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVl
c3QveG1saHR0cHJlcXVlc3QtZ2V0LWV4cGVjdGVkLnR4dApAQCAtNDYsNyArNDYsNiBAQCBTRUxF
Q1QgOiAnMTYzODQnCiBidWJibGVzIDogJ2ZhbHNlJwogY2FuY2VsQnViYmxlIDogJ2ZhbHNlJwog
Y2FuY2VsYWJsZSA6ICdmYWxzZScKLWNsaXBib2FyZERhdGEgOiAndW5kZWZpbmVkJwogY29tcG9z
ZWQgOiAnZmFsc2UnCiBjb21wb3NlZFBhdGggOiAnZnVuY3Rpb24gY29tcG9zZWRQYXRoKCkgewog
ICAgIFtuYXRpdmUgY29kZV0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29y
a2Vycy93b3JrZXItaW1wb3J0U2NyaXB0c09uRXJyb3ItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93b3JrZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1leHBlY3Rl
ZC50eHQKaW5kZXggOTFlNzQ5MmNlNzM3MTE4OTVlODVkYWJjNzY5NGQ0ZjZkZGJlYTM5Yy4uOTlh
NGNiY2YyYWQ3OThjNzk2NTIzZGYyZDM0MGQyODBlNDIyMTYwMCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJzL3dvcmtlci1pbXBv
cnRTY3JpcHRzT25FcnJvci1leHBlY3RlZC50eHQKQEAgLTI1LDcgKzI1LDYgQEAgU0VMRUNUOiAx
NjM4NCwKIGJ1YmJsZXM6IGZhbHNlLAogY2FuY2VsQnViYmxlOiBmYWxzZSwKIGNhbmNlbGFibGU6
IHRydWUsCi1jbGlwYm9hcmREYXRhOiB1bmRlZmluZWQsCiBjb2xubzogMTQsCiBjb21wb3NlZDog
ZmFsc2UsCiBjb21wb3NlZFBhdGg6IGZ1bmN0aW9uIGNvbXBvc2VkUGF0aCgpIHsgW25hdGl2ZSBj
b2RlXSB9LApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1v
YmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9y
L21vZGVsL3JlbW90ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CmluZGV4IDM4
ZTJkMDU5MGVjNjk5ZmVlZmQwOWI2YTk5ZWM2ZThlNjIxZjg4MDUuLjJmN2FkNGVjNjA4MmJiNDA5
M2QxODllMWFhNTgyZTRlMTk2NWExNGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rv
ci9tb2RlbC9yZW1vdGUtb2JqZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1l
eHBlY3RlZC50eHQKQEAgLTI0Myw3ICsyNDMsNiBAQCBESVNQTEFZQUJMRSBQUk9QRVJUSUVTOgog
ICAgIHNyY0VsZW1lbnQKICAgICByZXR1cm5WYWx1ZQogICAgIGNhbmNlbEJ1YmJsZQotICAgIGNs
aXBib2FyZERhdGEKICAgICBfX3Byb3RvX18KIAogQUxMIFBST1BFUlRJRVM6CkBAIC0yNjEsNyAr
MjYwLDYgQEAgQUxMIFBST1BFUlRJRVM6CiAgICAgc3JjRWxlbWVudAogICAgIHJldHVyblZhbHVl
CiAgICAgY2FuY2VsQnViYmxlCi0gICAgY2xpcGJvYXJkRGF0YQogICAgIGNvbXBvc2VkUGF0aAog
ICAgIHN0b3BQcm9wYWdhdGlvbgogICAgIHByZXZlbnREZWZhdWx0CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhw
ZWN0ZWQudHh0CmluZGV4IDVmMGU5MjQyNDA0NjY3MWM2ZjJkMWNiNGQ5MWJhYmRlNTk2OWNlMjku
LmQ4OTc4ODRiZjJhMzJhYzExODFlZDU4ZDU1MTMxN2QwZTg0NGQxMDkgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0
ZXMtZXhwZWN0ZWQudHh0CkBAIC0yMjgsNiArMjI4LDExIEBAIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5
KCdnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50
UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmVudW1lcmFi
bGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52YWx1ZSBpcyBD
bGlwYm9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2Jh
bCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCitQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQn
KS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFibGUgaXMgZmFs
c2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9h
cmRFdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3NlRXZlbnQKIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50Jyku
aGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBp
cyBmYWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20v
Z2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy13azEvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1l
eHBlY3RlZC50eHQKaW5kZXggODJjYzMwOTdlNTVmZDY2NGMzZGRmMjMxOTQ1MDc2NWU2ZjdkOTFk
OC4uNDNmMzg4NDkyZjc2YTYxN2Y0MTY0NGM1NjIxOGIwMzljNWU0ZWI4NCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1h
dHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sx
L2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0y
NjMsNiArMjYzLDExIEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdnCiBQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmNv
bmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52YWx1ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50Jyku
aGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0
JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmNvbmZpZ3VyYWJs
ZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3NlRXZlbnQKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcp
IGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0
b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXlv
c2VtaXRlL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0
CmluZGV4IGE4ODgyZmVmYmMwZDFkMTdlZTg5YjAzZjdiMTkyMmY5Zjg5Yjg3OTAuLjNjNjg5ZTI5
NzMwNDVjOGMyMjQ4YjQ4ZjRhZWY0ZmE3ZTY1NDA4NjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy15b3NlbWl0ZS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1
dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMteW9zZW1pdGUv
anMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKQEAgLTI2
Myw2ICsyNjMsMTEgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2Jh
bCwgJ0NsaWVudFJlY3RMaXN0JykuaGFzT3duUHJvcGVydHkoJ2cKIFBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3Bl
cnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuY29u
ZmlndXJhYmxlIGlzIHRydWUKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihn
bG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLnZhbHVlIGlzIENsaXBib2FyZEV2ZW50CitQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5o
YXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQn
KSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0NsaXBib2FyZEV2ZW50JykuZW51bWVyYWJsZSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuY29uZmlndXJhYmxl
IGlzIHRydWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdD
bG9zZUV2ZW50JykudmFsdWUgaXMgQ2xvc2VFdmVudAogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0Jykg
aXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdD
bG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmli
dXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2Jh
bC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKaW5kZXggMzcyYjdiMDAzODgz
NjIxMDNhYzQ1ZDE5ZWNhZmM1ZDY3NTlkMzNjMi4uMmM1ODU4MTgwNzkxNWUzNjVlMjFhNTc5OGNm
ZjE4ZWUwMjhiMTgxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2pzL2Rv
bS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVz
LWV4cGVjdGVkLnR4dApAQCAtMjYzLDYgKzI2MywxMSBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgn
ZwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJl
Y3RMaXN0JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5lbnVtZXJhYmxl
IGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xpZW50UmVjdExpc3QnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQorUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykudmFsdWUgaXMgQ2xp
cGJvYXJkRXZlbnQKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbGlwYm9hcmRFdmVudCcpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQorUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50Jyku
aGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5lbnVtZXJhYmxlIGlzIGZhbHNl
CitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJk
RXZlbnQnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS52YWx1ZSBpcyBDbG9zZUV2ZW50CiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhh
c093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMg
ZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9qcy9kb20vZ2xvYmFs
LWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL3dpbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4
dAppbmRleCA3ZWY5NThkOTIzNTI0ZjI5YzFjOTk3ZjE5ZTc3YWUzMzQxMzU4ZDg4Li42OWQzODMw
N2Q0ZTQ5ZTE0MDEyYmRmZmY5ZWJiYzA3YzVlNDc1MDNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2pzL2RvbS9nbG9iYWwtY29u
c3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0xNjgsNiArMTY4LDExIEBAIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlz
dCcpLmhhc093blByb3BlcnR5KCdnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFs
c2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRS
ZWN0TGlzdCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVl
CitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJk
RXZlbnQnKS52YWx1ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dl
dCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcp
LmVudW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVl
IGlzIENsb3NlRXZlbnQKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093
blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291031</attachid>
            <date>2016-10-08 16:41:40 -0700</date>
            <delta_ts>2016-10-08 17:05:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163164-20161008163822.patch</filename>
            <type>text/plain</type>
            <size>46061</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2OTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWUwMTY0NjZmNmY3ZmYw
YzMxOTk4N2VmMGY5NWNmNzlmODc5NDk0NS4uNGE0YjU3NWM5NTA3MDU2OGQ1ZjNhMDdmYWUxMWRi
ZWU0YjQ3MzZiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE2LTEwLTA4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENs
aXBib2FyZEV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjMxNjQKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAg
ICBBZGQgc3VwcG9ydCBmb3IgQ2xpcGJvYXJkRXZlbnQ6CisgICAgICAgIC0gaHR0cHM6Ly93d3cu
dzMub3JnL1RSL2NsaXBib2FyZC1hcGlzLyNjbGlwYm9hcmQtZXZlbnQtaW50ZXJmYWNlcworCisg
ICAgICAgIEZpcmVmb3ggYW5kIENocm9tZSBib3RoIGFscmVhZHkgc3VwcG9ydCB0aGlzLgorCisg
ICAgICAgIFRoaXMgZ2l2ZXMgdXMgNSBtb3JlIHBvaW50cyBvbiBodG1sNXRlc3QuY29tLgorCisg
ICAgICAgIFRlc3RzOiBlZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50Lmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci5odG1s
CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5j
cHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVudEN1
c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3bHlDcmVhdGVkKTogRGVsZXRlZC4K
KworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAgICAg
ICAoV2lsbENvbnZlcnRVbmRlZmluZWRUb0RlZmF1bHRQYXJhbWV0ZXJWYWx1ZSk6CisgICAgICAg
IFdlIHVzZSBbXSBhcyBpbXBsaWNpdCBkZWZhdWx0IHZhbHVlIGZvciBkaWN0aW9uYXJ5IHBhcmFt
ZXRlcnMuIFRoaXMgY2hhbmdlCisgICAgICAgIGlzIHNvIHdlIGNhbGwgY29udmVydERpY3Rpb25h
cnk8PigpIGV2ZW4gaWYgdGhlIHBhcmFtZXRlciBpcyB1bmRlZmluZWQKKyAgICAgICAgYmVjYXVz
ZSB3ZSB3YW50IHRvIHBhc3MgYSBzdHJ1Y3QgdG8gdGhlIGltcGxlbWVudGF0aW9uIGluaXRpYWxp
emVkIHdpdGgKKyAgICAgICAgdGhlIGRlZmF1bHQgbWVtYmVyIHZhbHVlcyBkZWZpbmVkIGluIHRo
ZSBJREwuCisKKyAgICAgICAgKiBkb20vQ2xpcGJvYXJkRXZlbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Q2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6
OkNsaXBib2FyZEV2ZW50OjpldmVudEludGVyZmFjZSk6CisgICAgICAgICogZG9tL0NsaXBib2Fy
ZEV2ZW50Lmg6CisgICAgICAgICogZG9tL0NsaXBib2FyZEV2ZW50LmlkbDogQWRkZWQuCisgICAg
ICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50OjpFdmVudCk6Cisg
ICAgICAgICogZG9tL0V2ZW50Lmg6CisgICAgICAgICogZG9tL0V2ZW50LmlkbDoKKyAgICAgICAg
KiBkb20vRXZlbnRJbml0Lmg6IEFkZGVkLgorICAgICAgICAqIGRvbS9FdmVudEluaXQuaWRsOiBB
ZGRlZC4KKyAgICAgICAgKiBkb20vRXZlbnROYW1lcy5pbjoKKyAgICAgICAgKiBkb20vTW91c2VF
dmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6TW91c2VFdmVudDo6ZGF0YVRyYW5zZmVyKToKKyAg
ICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmRp
c3BhdGNoQ1BQRXZlbnQpOgorCiAyMDE2LTEwLTA3ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNp
ZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBvcnQgb25iZWZvcmVpbnB1dCBldmVudCBoYW5k
bGluZyBmb3IgdGhlIG5ldyBJbnB1dEV2ZW50IHNwZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXgg
Y2M0MDM4NzBjNWQ3MjczM2FjYWUxMzAwNDU4MzE1NDA3NmQ5NzE1My4uMjg4ZWE4MDQ3Nzc0ODRh
YmIwODIwNjc4N2JiZjdkZjA2ZmYyY2FkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTM3NSw2
ICszNzUsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIGRvbS9DaGlsZE5v
ZGUuaWRsCiAgICAgZG9tL0NsaWVudFJlY3QuaWRsCiAgICAgZG9tL0NsaWVudFJlY3RMaXN0Lmlk
bAorICAgIGRvbS9DbGlwYm9hcmRFdmVudC5pZGwKICAgICBkb20vQ29tbWVudC5pZGwKICAgICBk
b20vQ29tcG9zaXRpb25FdmVudC5pZGwKICAgICBkb20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5Lmlk
bApAQCAtMzk3LDYgKzM5OCw3IEBAIHNldChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAg
ZG9tL0VsZW1lbnQuaWRsCiAgICAgZG9tL0Vycm9yRXZlbnQuaWRsCiAgICAgZG9tL0V2ZW50Lmlk
bAorICAgIGRvbS9FdmVudEluaXQuaWRsCiAgICAgZG9tL0V2ZW50VGFyZ2V0LmlkbAogICAgIGRv
bS9Gb2N1c0V2ZW50LmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IGJmYmQ2OTBlOTczMDg5Y2IyYjQ5NzM0YWVkMDI5MWIy
NjhkMWEyNjguLjYxMjYzMTkyMGU1Mjc3MjQ4NDEyNzNhM2E5NTU0MjMyMzE4Yzk5OWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTEzNiw2ICsxMzYsNyBAQAogI2luY2x1ZGUgIkpT
Q1NTVW5rbm93blJ1bGUuY3BwIgogI2luY2x1ZGUgIkpTQ1NTVmFsdWUuY3BwIgogI2luY2x1ZGUg
IkpTQ1NTVmFsdWVMaXN0LmNwcCIKKyNpbmNsdWRlICJKU0NsaXBib2FyZEV2ZW50LmNwcCIKICNp
ZiBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKQogI2luY2x1ZGUgIkpTQ3VzdG9tRWxlbWVudFJlZ2lz
dHJ5LmNwcCIKICNlbmRpZgpAQCAtMTg4LDYgKzE4OSw3IEBACiAjaW5jbHVkZSAiSlNFbGVtZW50
LmNwcCIKICNpbmNsdWRlICJKU0Vycm9yRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTRXZlbnQuY3Bw
IgorI2luY2x1ZGUgIkpTRXZlbnRJbml0LmNwcCIKICNpbmNsdWRlICJKU0V2ZW50U291cmNlLmNw
cCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmNwcCIKICNpbmNsdWRlICJKU0ZldGNoQm9keS5j
cHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA1YTEwYjUwZGZhMWM1OTgyZTdm
Zjk2Y2M2NjY3MDhjOWFjNWQ2YmY0Li44OTViYzhkZjJmZjlhMDNkZGQ4NzhhMjUzZTgwOGExNzBj
NDE2OWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisr
KyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTI4Niw2ICsyODYsNyBA
QCBKU19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9kb20vQ2xpZW50UmVjdC5pZGwg
XAogICAgICQoV2ViQ29yZSkvZG9tL0NsaWVudFJlY3RMaXN0LmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9kb20vQ29tbWVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0NsaXBib2FyZEV2ZW50Lmlk
bCBcCiAgICAgJChXZWJDb3JlKS9kb20vQ29tcG9zaXRpb25FdmVudC5pZGwgXAogICAgICQoV2Vi
Q29yZSkvZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9t
L0N1c3RvbUV2ZW50LmlkbCBcCkBAIC0zMDcsNiArMzA4LDcgQEAgSlNfQklORElOR19JRExTID0g
XAogICAgICQoV2ViQ29yZSkvZG9tL0VsZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9F
cnJvckV2ZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnQuaWRsIFwKKyAgICAkKFdl
YkNvcmUpL2RvbS9FdmVudEluaXQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudExpc3Rl
bmVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRUYXJnZXQuaWRsIFwKICAgICAkKFdl
YkNvcmUpL2RvbS9Gb2N1c0V2ZW50LmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzVkMjlhZDUxOTk2YmZkOTBhZDI5M2Ni
ZjZmNDA2MTUyYjlmN2Q2NC4uYWE4NmQwOWE4ZTkzZmNjOGRhZDE3MjZkNmJmOWIzODdiMTAxOTgx
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagpAQCAtMjg4OSw2ICsyODg5LDExIEBACiAJCTgzNjc1ODdFMUM1NkU5OUIwMDhBMTA4NyAv
KiBKU0hUTUxEYXRhRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzRCODZBOTFDNTZFOTNFMDBGM0YwRTMgLyogSlNIVE1MRGF0YUVsZW1l
bnQuY3BwICovOyB9OwogCQk4MzY3NTg3RjFDNTZFOTlCMDA4QTEwODcgLyogSlNIVE1MRGF0YUVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgz
NEI4NkE4MUM1NkU5M0UwMEYzRjBFMyAvKiBKU0hUTUxEYXRhRWxlbWVudC5oICovOyB9OwogCQk4
MzZDMTQ0MzFDREVBRkQ4MDA3MzQ5M0YgLyogSlNYUGF0aE5TUmVzb2x2ZXJDdXN0b20uY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2QzE0NDIxQ0RF
QUZDQTAwNzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCAqLzsgfTsKKwkJODM2
RDAzMkExREE4OUI5MjAwRkZEOTZCIC8qIEV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2RDAzMjgxREE4OUI3MzAwRkZEOTZCIC8qIEV2
ZW50SW5pdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTgzNkQwMzJGMURBOEExM0EwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyQjFEQThBMTMyMDBG
RkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovOyB9OworCQk4MzZEMDMzMDFEQThBMTNEMDBGRkQ5
NkIgLyogSlNFdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDgzNkQwMzJDMURBOEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovOyB9
OworCQk4MzZEMDMzMTFEQThBMTNGMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyRDFEQThB
MTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi87IH07CisJCTgzNkQwMzMyMURB
OEExNDIwMEZGRDk2QiAvKiBKU0NsaXBib2FyZEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyRTFEQThBMTMyMDBGRkQ5NkIgLyogSlND
bGlwYm9hcmRFdmVudC5oICovOyB9OwogCQk4MzZEQUEwNjFDRUFCODBEMDBBMkI3MDcgLyogUmVu
ZGVyRGVzY2VuZGFudEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzZEQUEwNTFDRUFCN0NEMDBBMkI3MDcgLyogUmVuZGVyRGVzY2VuZGFu
dEl0ZXJhdG9yLmggKi87IH07CiAJCTgzNkZCQ0VBMTc4QzExMzIwMEIyMUExNSAvKiBTVkdBbmlt
YXRlZFR5cGVBbmltYXRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzZGQkNFOTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBlQW5p
bWF0b3IuY3BwICovOyB9OwogCQk4MzZGQkNFQzE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0
ZWRQcm9wZXJ0eS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4MzZGQkNFQjE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5jcHAg
Ki87IH07CkBAIC0xMDAyMiw2ICsxMDAyNywxMyBAQAogCQk4MzVGOEIyNjFEMkQ5MEJBMDBFNDA4
RUMgLyogU2xvdGFibGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNsb3RhYmxlLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2OUU1OEYxQUZERDAzMDAwODdERjY4IC8q
IE5vbkRvY3VtZW50VHlwZUNoaWxkTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm9uRG9jdW1lbnRUeXBlQ2hpbGRO
b2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2QzE0NDIxQ0RFQUZDQTAw
NzM0OTNGIC8qIEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTWFBhdGhOU1Jlc29sdmVyQ3VzdG9tLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMjcxREE4OUI3MzAwRkZEOTZCIC8qIENsaXBib2Fy
ZEV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDbGlwYm9hcmRFdmVudC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzI4MURBODlCNzMwMEZGRDk2QiAvKiBF
dmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRJbml0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2QiAv
KiBFdmVudEluaXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEV2ZW50SW5pdC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzJCMURBOEExMzIwMEZGRDk2QiAvKiBK
U0V2ZW50SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2
ZW50SW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkQwMzJDMURBOEEx
MzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU0V2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZEMDMy
RDFEQThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NsaXBib2FyZEV2ZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJk
RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDbGlwYm9hcmRFdmVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzZEQUEwNTFDRUFCN0NEMDBBMkI3
MDcgLyogUmVuZGVyRGVzY2VuZGFudEl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFJlbmRlckRlc2NlbmRhbnRJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk4MzZGQkNFOTE3OEMxMTMyMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRUeXBlQW5p
bWF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQW5pbWF0
ZWRUeXBlQW5pbWF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzZGQkNF
QjE3OEMxMTdGMDBCMjFBMTUgLyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmltYXRlZFByb3BlcnR5LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5NjgzLDYgKzE5Njk1LDggQEAKIAkJCQlCQzk0NjM0
NzEwN0E5MzY2MDA4NTcxOTMgLyogSlNCZWZvcmVMb2FkRXZlbnQuaCAqLywKIAkJCQk4MjI1NDMy
Q0E5RDRCNENGNDYyOEVDN0YgLyogSlNCZWZvcmVVbmxvYWRFdmVudC5jcHAgKi8sCiAJCQkJMjlF
MDRBMjdCRUQyRjgxRjk4RTkwMjJCIC8qIEpTQmVmb3JlVW5sb2FkRXZlbnQuaCAqLywKKwkJCQk4
MzZEMDMyRDFEQThBMTMyMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgKi8sCisJCQkJ
ODM2RDAzMkUxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuaCAqLywKIAkJCQk3
OUFDOTIxNjEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmNwcCAqLywKIAkJ
CQk3OUFDOTIxNzEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmggKi8sCiAJ
CQkJRTQ3NzhCN0QxMTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuY3BwICovLApAQCAt
MTk2OTEsNiArMTk3MDUsOCBAQAogCQkJCTJFQ0Y3QURCMTAxNjJCMzgwMDQyN0RFNyAvKiBKU0Vy
cm9yRXZlbnQuaCAqLywKIAkJCQkxNEU4Mzc4MzA5Rjg1RDFDMDBCODVBRTQgLyogSlNFdmVudC5j
cHAgKi8sCiAJCQkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLywKKwkJ
CQk4MzZEMDMyQjFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovLAorCQkJCTgz
NkQwMzJDMURBOEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovLAogCQkJCUM2QTcwMzMy
NUM5RDBCNkNEQ0JDNEQ3OCAvKiBKU0V2ZW50VGFyZ2V0LmNwcCAqLywKIAkJCQk1RkM3REMyNkNG
RTI1NjMyMDBCODVBRTUgLyogSlNFdmVudFRhcmdldC5oICovLAogCQkJCUI2RDlEMjdBMTRFQUMw
ODYwMDkwRDc1RSAvKiBKU0ZvY3VzRXZlbnQuY3BwICovLApAQCAtMjI5OTMsNiArMjMwMDksNyBA
QAogCQkJCUJDQzA2NTdDMEYzQ0UxQjcwMENEMkQ4NyAvKiBDbGllbnRSZWN0TGlzdC5pZGwgKi8s
CiAJCQkJODUwMzFCMjkwQTQ0RUZDNzAwRjk5MkUwIC8qIENsaXBib2FyZEV2ZW50LmNwcCAqLywK
IAkJCQk4NTAzMUIyQTBBNDRFRkM3MDBGOTkyRTAgLyogQ2xpcGJvYXJkRXZlbnQuaCAqLywKKwkJ
CQk4MzZEMDMyNzFEQTg5QjczMDBGRkQ5NkIgLyogQ2xpcGJvYXJkRXZlbnQuaWRsICovLAogCQkJ
CTlCRDhBOTU5MThCRUZDNzYwMDk4N0U5QSAvKiBDb2xsZWN0aW9uSW5kZXhDYWNoZS5jcHAgKi8s
CiAJCQkJRTQyNUE0OTkxODI5MkI4NDAwMjBDRkNGIC8qIENvbGxlY3Rpb25JbmRleENhY2hlLmgg
Ki8sCiAJCQkJNjU1MEI2OTcwOTlERjAyNzAwOTBENzgxIC8qIENvbW1lbnQuY3BwICovLApAQCAt
MjMxMTMsNiArMjMxMzAsOCBAQAogCQkJCTQxMzhEMzMzMTI0NDA1NDgwMDMyM0QzMyAvKiBFdmVu
dENvbnRleHQuaCAqLywKIAkJCQk0MThBMDZDRjEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnREaXNw
YXRjaGVyLmNwcCAqLywKIAkJCQk0MThBMDZDRTEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnREaXNw
YXRjaGVyLmggKi8sCisJCQkJODM2RDAzMjgxREE4OUI3MzAwRkZEOTZCIC8qIEV2ZW50SW5pdC5o
ICovLAorCQkJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2QiAvKiBFdmVudEluaXQuaWRsICovLAog
CQkJCTkzNUZCQzQ0MDlCQTAwQjkwMEUyMzBCMSAvKiBFdmVudExpc3RlbmVyLmggKi8sCiAJCQkJ
ODVBRkE3NDEwQUFGMjk4NDAwRTg0MzA1IC8qIEV2ZW50TGlzdGVuZXIuaWRsICovLAogCQkJCUFE
NDQ5NUYxMTQxRkMwODkwMDU0MUVERiAvKiBFdmVudExpc3RlbmVyTWFwLmNwcCAqLywKQEAgLTI1
Mjg5LDYgKzI1MzA4LDcgQEAKIAkJCQk4QTlBNTg4ODExRTg0RjM3MDA4QUNGRDEgLyogSlNQZXJm
b3JtYW5jZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkRFQTYyNDcxNTIxMDJGQzAwNDc5
REYwIC8qIEpTUGVyaW9kaWNXYXZlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5M0I3MEQ2QzA5RUIw
QzdDMDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywK
KwkJCQk4MzZEMDMzMDFEQThBMTNEMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTUxODlGMDFFMTBCMzdCRDkwMEYzQzczOSAvKiBKU1BvcFN0YXRlRXZlbnQuaCBp
biBIZWFkZXJzICovLAogCQkJCTU5ODM2NUREMTM1NUY1NTcwMDFCMTg1RCAvKiBKU1Bvc2l0aW9u
Q2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUZFODBEQTcyMEU5QzQ3MkYwMDBENkY3NSAv
KiBKU1Bvc2l0aW9uRXJyb3IuaCBpbiBIZWFkZXJzICovLApAQCAtMjYxNzEsNiArMjYxOTEsNyBA
QAogCQkJCUJDRTMyQjlDMTUxN0MwQjIwMEY1NDJFQyAvKiBSZW5kZXJNdWx0aUNvbHVtblNldC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJOTRERTVDOTIxRDgzMDExRDAwMTY0RjJBIC8qIENTU1N1cHBv
cnRzUGFyc2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzFBN0Q5ODE4RkNCNUIwMDA0MjE4Nzkg
LyogUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCTgzNkQwMzJBMURBODlCOTIwMEZGRDk2QiAvKiBFdmVudEluaXQuaCBpbiBIZWFkZXJzICov
LAogCQkJCThBQzgyMkZEMTgwRkMwMzMwMEZCNjRENSAvKiBSZW5kZXJOYW1lZEZsb3dGcmFnbWVu
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM4NUYyM0QxNTE5MTVFMDAwQkMxN0JFIC8qIFJlbmRl
ck5hbWVkRmxvd1RocmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNFQTQ4ODAwOTdEOTMwMjAw
OTRDOUU0IC8qIFJlbmRlck9iamVjdC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNjk2OSw2ICsyNjk5
MCw3IEBACiAJCQkJOUIyRDhBNzkxNDk5N0NDRjAwRUNFRjNFIC8qIFVuZG9TdGVwLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlBODYzRTIwMTEzNDM0MTIwMDAyNzQ5MjYgLyogVW5pY29kZUJpZGkuaCBp
biBIZWFkZXJzICovLAogCQkJCTUxODg2NEUxMUJCQUY1NzQwMEU1NDBDOSAvKiBVbmlxdWVJREJE
YXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM2RDAzMzIxREE4QTE0MjAwRkZEOTZCIC8q
IEpTQ2xpcGJvYXJkRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxOThGN0E1MUJCREI3OTMw
MEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZUNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICovLAog
CQkJCTUxOThGN0E5MUJCREQzODUwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0
aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNEFGQ0ZBNTBEQUYyOUEzMDBGNUY1NUMgLyogVW5p
dEJlemllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yODE0MCw2ICsyODE2Miw3IEBACiAJCQkJOUJB
QjZDNkQxMjU1MDYzMTAwMTYyNkQ0IC8qIEVkaXRpbmdTdHlsZS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk0QjMwNDNDQzBBRTAzNzNCMDBBODI2NDcgLyogRWRpdG9yLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTlCNTVFRUU5MUIzRTg4OTgwMDUzNDJCQyAvKiBFZGl0b3JDb2NvYS5tbSBpbiBTb3Vy
Y2VzICovLAorCQkJCTgzNkQwMzJGMURBOEExM0EwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQk5M0EzOEI0QjBEMEU1ODA4MDA2ODcyQzIgLyogRWRpdG9yQ29t
bWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRUQxM0QzQTBDRUE5MzQ2MDBEODk0NjYgLyog
RWRpdG9ySU9TLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRUQ1MDFEQzYwQjI0OUYyOTAwQUUxOEQ5
IC8qIEVkaXRvck1hYy5tbSBpbiBTb3VyY2VzICovLApAQCAtMzA1MDgsNiArMzA1MzEsNyBAQAog
CQkJCTMxNDAzNzlDMTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5tbSBp
biBTb3VyY2VzICovLAogCQkJCUNEQzk3OUY0MUM0OThDMDkwMERCNTBENCAvKiBXZWJDb3JlTlNF
cnJvckV4dHJhcy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTkzNEQ5QkE1MEI4QzExNkIwMDdCNDJB
OSAvKiBXZWJDb3JlTlNTdHJpbmdFeHRyYXMubW0gaW4gU291cmNlcyAqLywKKwkJCQk4MzZEMDMz
MTFEQThBMTNGMDBGRkQ5NkIgLyogSlNDbGlwYm9hcmRFdmVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlDNUI0QzI0RTE1MDkyMzZDMDBBNkVGMzcgLyogV2ViQ29yZU5TVVJMRXh0cmFzLm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQ0QyMjVDMEIxQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VS
TFNlc3Npb24ubW0gaW4gU291cmNlcyAqLywKIAkJCQlCNTBGNUI4MTBFOTZDRDk5MDBBRDcxQTYg
LyogV2ViQ29yZU9iakNFeHRyYXMubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAKaW5kZXggMDE1Y2E2YjFlY2ZjYzI5YWU2ZmY0
YTJhMDIwMGU3NDc4ZWY4ZTM3Mi4uZDcyYzU4NzBhZjYxY2FmMmNkM2U2NjNhZGFmMzM5MjU2ZTkz
ZTZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3Rv
bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAK
QEAgLTQzLDExICs0Myw2IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotSlNWYWx1ZSBKU0V2ZW50OjpjbGlwYm9hcmREYXRhKEV4ZWNTdGF0ZSYgc3RhdGUp
IGNvbnN0Ci17Ci0gICAgcmV0dXJuIHdyYXBwZWQoKS5pc0NsaXBib2FyZEV2ZW50KCkgPyB0b0pT
KCZzdGF0ZSwgZ2xvYmFsT2JqZWN0KCksIHdyYXBwZWQoKS5jbGlwYm9hcmREYXRhKCkpIDoganNV
bmRlZmluZWQoKTsKLX0KLQogI2RlZmluZSBUUllfVE9fV1JBUF9XSVRIX0lOVEVSRkFDRShpbnRl
cmZhY2VOYW1lKSBcCiAgICAgY2FzZSBpbnRlcmZhY2VOYW1lIyNJbnRlcmZhY2VUeXBlOiBcCiAg
ICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPGludGVyZmFjZU5hbWU+KGdsb2JhbE9iamVjdCwg
V1RGTW92ZShldmVudCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBmYjg2NmMzNmE4NGYxMWU2ZWY0MTljZTExNGYyODdk
ZmM0NTQxOGYxLi5lYzM4MmQ0YTIzYjVjMTdkZDVmOWYyNGY5NGU0MWM0YjAyNWJlNDYwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bQpAQCAtMzk0OSw2ICszOTQ5LDcgQEAgc3ViIFdpbGxDb252ZXJ0VW5kZWZpbmVkVG9EZWZhdWx0
UGFyYW1ldGVyVmFsdWUKICAgICByZXR1cm4gMSBpZiBkZWZpbmVkICRhdXRvbWF0aWNhbGx5R2Vu
ZXJhdGVkRGVmYXVsdFZhbHVlICYmICRhdXRvbWF0aWNhbGx5R2VuZXJhdGVkRGVmYXVsdFZhbHVl
IGVxICRkZWZhdWx0VmFsdWU7CiAKICAgICByZXR1cm4gMSBpZiAkZGVmYXVsdFZhbHVlIGVxICJu
dWxsIiAmJiAkY29kZUdlbmVyYXRvci0+SXNXcmFwcGVyVHlwZSgkcGFyYW1ldGVyVHlwZSk7Cisg
ICAgcmV0dXJuIDEgaWYgJGRlZmF1bHRWYWx1ZSBlcSAiW10iICYmICRjb2RlR2VuZXJhdG9yLT5J
c0RpY3Rpb25hcnlUeXBlKCRwYXJhbWV0ZXJUeXBlKTsKIAogICAgIHJldHVybiAwOwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5jcHAKaW5kZXggYTFhZmQ4ZWRjZTIzZWI0NTJlYzE4
Yjk1MThlYzA5YzllMDIxNGQxNS4uNmJmNmUxNzBlNzBhZTFjNzMzMWQwZmE5MWI0MGNhNmM2NWEw
MjhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJkRXZlbnQuY3BwCkBAIC0yOCw4ICsyOCw5
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotQ2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2
ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9vbCBj
YW5jZWxhYmxlLCBEYXRhVHJhbnNmZXIqIGRhdGFUcmFuc2ZlcikKLSAgICA6IEV2ZW50KGV2ZW50
VHlwZSwgY2FuQnViYmxlLCBjYW5jZWxhYmxlKSwgbV9kYXRhVHJhbnNmZXIoZGF0YVRyYW5zZmVy
KQorQ2xpcGJvYXJkRXZlbnQ6OkNsaXBib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlw
ZSwgY29uc3QgSW5pdCYgaW5pdCwgSXNUcnVzdGVkIGlzVHJ1c3RlZCkKKyAgICA6IEV2ZW50KHR5
cGUsIGluaXQsIGlzVHJ1c3RlZCkKKyAgICAsIG1fY2xpcGJvYXJkRGF0YShpbml0LmNsaXBib2Fy
ZERhdGEpCiB7CiB9CiAKQEAgLTM5LDggKzQwLDcgQEAgQ2xpcGJvYXJkRXZlbnQ6On5DbGlwYm9h
cmRFdmVudCgpCiAKIEV2ZW50SW50ZXJmYWNlIENsaXBib2FyZEV2ZW50OjpldmVudEludGVyZmFj
ZSgpIGNvbnN0CiB7Ci0gICAgLy8gTm90aWNlIHRoYXQgdGhlcmUgaXMgbm8gQ2xpcGJvYXJkRXZl
bnQuaWRsLgotICAgIHJldHVybiBFdmVudEludGVyZmFjZVR5cGU7CisgICAgcmV0dXJuIENsaXBi
b2FyZEV2ZW50SW50ZXJmYWNlVHlwZTsKIH0KIAogYm9vbCBDbGlwYm9hcmRFdmVudDo6aXNDbGlw
Ym9hcmRFdmVudCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJv
YXJkRXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5oCmluZGV4IGY0
MWExYzk4ZWRiNDc5NWE1YzVmMGE4ZGM3MzZmZWEzZjE1YWUzYTguLjJjOWM4ZWEyYjUxMzAyYzVi
NjVjOTRkODVlNDY1OWVjYzkxNzEwN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9D
bGlwYm9hcmRFdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9hcmRFdmVudC5o
CkBAIC0yOCwyNyArMjgsMzggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3Mg
RGF0YVRyYW5zZmVyOworY2xhc3MgRGF0YVRyYW5zZmVyOwogCi0gICAgY2xhc3MgQ2xpcGJvYXJk
RXZlbnQgZmluYWwgOiBwdWJsaWMgRXZlbnQgewotICAgIHB1YmxpYzoKLSAgICAgICAgdmlydHVh
bCB+Q2xpcGJvYXJkRXZlbnQoKTsKK2NsYXNzIENsaXBib2FyZEV2ZW50IGZpbmFsIDogcHVibGlj
IEV2ZW50IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5DbGlwYm9hcmRFdmVudCgpOwogCi0gICAg
ICAgIHN0YXRpYyBSZWY8Q2xpcGJvYXJkRXZlbnQ+IGNyZWF0ZShjb25zdCBBdG9taWNTdHJpbmcm
IHR5cGUsIGJvb2wgY2FuQnViYmxlQXJnLCBib29sIGNhbmNlbGFibGVBcmcsIERhdGFUcmFuc2Zl
ciogY2xpcGJvYXJkQXJnKQorICAgIHN0cnVjdCBJbml0IDogcHVibGljIEV2ZW50SW5pdCB7Cisg
ICAgICAgIEluaXQoYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIGJvb2wgY29tcG9zZWQs
IFJlZlB0cjxEYXRhVHJhbnNmZXI+JiYgY2xpcGJvYXJkRGF0YSkKKyAgICAgICAgICAgIDogRXZl
bnRJbml0KGJ1YmJsZXMsIGNhbmNlbGFibGUsIGNvbXBvc2VkKQorICAgICAgICAgICAgLCBjbGlw
Ym9hcmREYXRhKFdURk1vdmUoY2xpcGJvYXJkRGF0YSkpCiAgICAgICAgIHsKLSAgICAgICAgICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IENsaXBib2FyZEV2ZW50KHR5cGUsIGNhbkJ1YmJsZUFyZywg
Y2FuY2VsYWJsZUFyZywgY2xpcGJvYXJkQXJnKSk7CiAgICAgICAgIH0KIAotICAgICAgICBEYXRh
VHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4g
bV9kYXRhVHJhbnNmZXIuZ2V0KCk7IH0KKyAgICAgICAgUmVmUHRyPERhdGFUcmFuc2Zlcj4gY2xp
cGJvYXJkRGF0YTsKKyAgICB9OwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgQ2xpcGJvYXJkRXZl
bnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGNhbkJ1YmJsZUFyZywgYm9vbCBjYW5j
ZWxhYmxlQXJnLCBEYXRhVHJhbnNmZXIqKTsKKyAgICBzdGF0aWMgUmVmPENsaXBib2FyZEV2ZW50
PiBjcmVhdGUoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBjb25zdCBJbml0JiBpbml0LCBJc1Ry
dXN0ZWQgaXNUcnVzdGVkID0gSXNUcnVzdGVkOjpObykKKyAgICB7CisgICAgICAgIGF1dG8gZXZl
bnQgPSBhZG9wdFJlZigqbmV3IENsaXBib2FyZEV2ZW50KHR5cGUsIGluaXQsIGlzVHJ1c3RlZCkp
OworICAgICAgICByZXR1cm4gZXZlbnQ7CisgICAgfQogCi0gICAgICAgIEV2ZW50SW50ZXJmYWNl
IGV2ZW50SW50ZXJmYWNlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgICAgIGJvb2wgaXNDbGlwYm9h
cmRFdmVudCgpIGNvbnN0IG92ZXJyaWRlOworICAgIERhdGFUcmFuc2ZlciogY2xpcGJvYXJkRGF0
YSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpcGJvYXJkRGF0YS5nZXQoKTsgfQogCi0gICAgICAgIFJl
ZlB0cjxEYXRhVHJhbnNmZXI+IG1fZGF0YVRyYW5zZmVyOwotICAgIH07Citwcml2YXRlOgorICAg
IENsaXBib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgSW5pdCYsIElz
VHJ1c3RlZCk7CisKKyAgICBFdmVudEludGVyZmFjZSBldmVudEludGVyZmFjZSgpIGNvbnN0IGZp
bmFsOworICAgIGJvb2wgaXNDbGlwYm9hcmRFdmVudCgpIGNvbnN0IGZpbmFsOworCisgICAgUmVm
UHRyPERhdGFUcmFuc2Zlcj4gbV9jbGlwYm9hcmREYXRhOworfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpcGJvYXJkRXZlbnQu
aWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
YTQxOTkyYWMyYjdiZWIxYzdkOWJlZjRhN2U1MDlmMWJlNGRhOGNkCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZEV2ZW50LmlkbApAQCAtMCwwICsxLDM1IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
ICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICovCisKK1sKKyAg
ICBDb25zdHJ1Y3RvcihET01TdHJpbmcgdHlwZSwgb3B0aW9uYWwgQ2xpcGJvYXJkRXZlbnRJbml0
IGV2ZW50SW5pdERpY3QpCitdIGludGVyZmFjZSBDbGlwYm9hcmRFdmVudCA6IEV2ZW50IHsKKyAg
ICByZWFkb25seSBhdHRyaWJ1dGUgRGF0YVRyYW5zZmVyPyBjbGlwYm9hcmREYXRhOworfTsKKwor
ZGljdGlvbmFyeSBDbGlwYm9hcmRFdmVudEluaXQgOiBFdmVudEluaXQgeworICAgIERhdGFUcmFu
c2Zlcj8gY2xpcGJvYXJkRGF0YSA9IG51bGw7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudC5jcHAKaW5kZXggZDYz
ODI0ZGFhMWQ5MzgzOWFhNTJhZmE5MzkyY2E2ZWM3ZmY5MjEyNy4uNTAxNjA0NDBjZmQ2Yjg4NjBl
Y2EyMmZjZTljOTljODFlZTkyOWRlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuY3BwCkBAIC01NiwxMiArNTYs
MTMgQEAgRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNh
bkJ1YmJsZUFyZywgYm9vbCBjYW5jZWxhYmxlQXIKIHsKIH0KIAotRXZlbnQ6OkV2ZW50KGNvbnN0
IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBFdmVudEluaXQmIGluaXRpYWxpemVyKQor
RXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBFdmVudElu
aXQmIGluaXRpYWxpemVyLCBJc1RydXN0ZWQgaXNUcnVzdGVkKQogICAgIDogbV90eXBlKGV2ZW50
VHlwZSkKICAgICAsIG1faXNJbml0aWFsaXplZCh0cnVlKQogICAgICwgbV9jYW5CdWJibGUoaW5p
dGlhbGl6ZXIuYnViYmxlcykKICAgICAsIG1fY2FuY2VsYWJsZShpbml0aWFsaXplci5jYW5jZWxh
YmxlKQogICAgICwgbV9jb21wb3NlZChpbml0aWFsaXplci5jb21wb3NlZCkKKyAgICAsIG1faXNU
cnVzdGVkKGlzVHJ1c3RlZCA9PSBJc1RydXN0ZWQ6OlllcykKICAgICAsIG1fY3JlYXRlVGltZShj
b252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKGN1cnJlbnRUaW1lKCkpKQogewogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZl
bnQuaAppbmRleCBiYWQ5NzE4ODMwMjQxZTY1ZmE1YWI5ZDI5NjZkMjgzYWJiMTY5NjdlLi5kNWNl
M2QwNWZjNTNhMjYxODZlNjBiMTYxM2E3ZmRiMDI0NTVkMjcwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaApAQCAt
MjUsNiArMjUsNyBAQAogI2RlZmluZSBFdmVudF9oCiAKICNpbmNsdWRlICJET01UaW1lU3RhbXAu
aCIKKyNpbmNsdWRlICJFdmVudEluaXQuaCIKICNpbmNsdWRlICJFdmVudEludGVyZmFjZXMuaCIK
ICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgpAQCAtMzgsMTIgKzM5LDYgQEAgY2xhc3MgRXZlbnRQYXRoOwogY2xhc3MgRXZlbnRUYXJnZXQ7
CiBjbGFzcyBIVE1MSUZyYW1lRWxlbWVudDsKIAotc3RydWN0IEV2ZW50SW5pdCB7Ci0gICAgYm9v
bCBidWJibGVzIHsgZmFsc2UgfTsKLSAgICBib29sIGNhbmNlbGFibGUgeyBmYWxzZSB9OwotICAg
IGJvb2wgY29tcG9zZWQgeyBmYWxzZSB9OwotfTsKLQogZW51bSBFdmVudEludGVyZmFjZSB7CiAK
ICNkZWZpbmUgRE9NX0VWRU5UX0lOVEVSRkFDRV9ERUNMQVJFKG5hbWUpIG5hbWUjI0ludGVyZmFj
ZVR5cGUsCkBAIC01NCw2ICs0OSw4IEBAIERPTV9FVkVOVF9JTlRFUkZBQ0VTX0ZPUl9FQUNIKERP
TV9FVkVOVF9JTlRFUkZBQ0VfREVDTEFSRSkKIAogY2xhc3MgRXZlbnQgOiBwdWJsaWMgU2NyaXB0
V3JhcHBhYmxlLCBwdWJsaWMgUmVmQ291bnRlZDxFdmVudD4gewogcHVibGljOgorICAgIGVudW0g
Y2xhc3MgSXNUcnVzdGVkIHsgTm8sIFllcyB9OworCiAgICAgZW51bSBQaGFzZVR5cGUgeyAKICAg
ICAgICAgTk9ORSAgICAgICAgICAgICAgICA9IDAsCiAgICAgICAgIENBUFRVUklOR19QSEFTRSAg
ICAgPSAxLCAKQEAgLTEzNCw4ICsxMzEsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBsZWdhY3lSZXR1
cm5WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuICFkZWZhdWx0UHJldmVudGVkKCk7IH0KICAgICB2b2lk
IHNldExlZ2FjeVJldHVyblZhbHVlKGJvb2wgcmV0dXJuVmFsdWUpIHsgc2V0RGVmYXVsdFByZXZl
bnRlZCghcmV0dXJuVmFsdWUpOyB9CiAKLSAgICBEYXRhVHJhbnNmZXIqIGNsaXBib2FyZERhdGEo
KSBjb25zdCB7IHJldHVybiBpc0NsaXBib2FyZEV2ZW50KCkgPyBpbnRlcm5hbERhdGFUcmFuc2Zl
cigpIDogbnVsbHB0cjsgfQotCiAgICAgdmlydHVhbCBFdmVudEludGVyZmFjZSBldmVudEludGVy
ZmFjZSgpIGNvbnN0OwogCiAgICAgLy8gVGhlc2UgZXZlbnRzIGFyZSBnZW5lcmFsIGNsYXNzZXMg
b2YgZXZlbnRzLgpAQCAtMTg4LDggKzE4Myw2IEBAIHB1YmxpYzoKICAgICBFdmVudCogdW5kZXJs
eWluZ0V2ZW50KCkgY29uc3QgeyByZXR1cm4gbV91bmRlcmx5aW5nRXZlbnQuZ2V0KCk7IH0KICAg
ICB2b2lkIHNldFVuZGVybHlpbmdFdmVudChFdmVudCopOwogCi0gICAgdmlydHVhbCBEYXRhVHJh
bnNmZXIqIGludGVybmFsRGF0YVRyYW5zZmVyKCkgY29uc3QgeyByZXR1cm4gMDsgfQotCiAgICAg
Ym9vbCBpc0JlaW5nRGlzcGF0Y2hlZCgpIGNvbnN0IHsgcmV0dXJuIGV2ZW50UGhhc2UoKTsgfQog
CiAgICAgdmlydHVhbCBSZWY8RXZlbnQ+IGNsb25lRm9yKEhUTUxJRnJhbWVFbGVtZW50KikgY29u
c3Q7CkBAIC0yMDAsNyArMTkzLDcgQEAgcHJvdGVjdGVkOgogICAgIEV2ZW50KCk7CiAgICAgV0VC
Q09SRV9FWFBPUlQgRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGNhbkJ1YmJs
ZSwgYm9vbCBjYW5jZWxhYmxlKTsKICAgICBFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUs
IGJvb2wgY2FuQnViYmxlLCBib29sIGNhbmNlbGFibGUsIGRvdWJsZSB0aW1lc3RhbXApOwotICAg
IEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgY29uc3QgRXZlbnRJbml0Jik7CisgICAg
RXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBjb25zdCBFdmVudEluaXQmLCBJc1RydXN0
ZWQgPSBJc1RydXN0ZWQ6Ok5vKTsKIAogICAgIHZpcnR1YWwgdm9pZCByZWNlaXZlZFRhcmdldCgp
OwogICAgIGJvb2wgZGlzcGF0Y2hlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdGFyZ2V0OyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9t
L0V2ZW50LmlkbAppbmRleCBmZDgyYTFjNjFkYmEyYzFlYjUyZWNjYTI1ZTc2ZmY1ZjAxNzYyNjRl
Li5kNTU0MmNhNDk4MTQ5NmY4MDU4ZjE5YjQxZmUzMmU1YWE3NTEwNzE2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVu
dC5pZGwKQEAgLTcxLDYgKzcxLDQgQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRXZlbnRUYXJn
ZXQgc3JjRWxlbWVudDsKICAgICBbSW1wbGVtZW50ZWRBcz1sZWdhY3lSZXR1cm5WYWx1ZV0gYXR0
cmlidXRlIGJvb2xlYW4gcmV0dXJuVmFsdWU7CiAgICAgYXR0cmlidXRlIGJvb2xlYW4gY2FuY2Vs
QnViYmxlOwotCi0gICAgW0N1c3RvbV0gcmVhZG9ubHkgYXR0cmlidXRlIERhdGFUcmFuc2ZlciBj
bGlwYm9hcmREYXRhOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudElu
aXQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEluaXQuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MWQ2MzI4
NjY2M2UwNTE3MWJiMjAxNWMwNjc5YmU1MDIyYTYyMjNkCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0V2ZW50SW5pdC5oCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjcHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgRXZlbnRJbml0
IHsKKyAgICBFdmVudEluaXQoKSA9IGRlZmF1bHQ7CisgICAgRXZlbnRJbml0KGJvb2wgYnViYmxl
cywgYm9vbCBjYW5jZWxhYmxlLCBib29sIGNvbXBvc2VkKQorICAgICAgICA6IGJ1YmJsZXMoYnVi
YmxlcykKKyAgICAgICAgLCBjYW5jZWxhYmxlKGNhbmNlbGFibGUpCisgICAgICAgICwgY29tcG9z
ZWQoY29tcG9zZWQpCisgICAgeyB9CisKKyAgICBib29sIGJ1YmJsZXMgeyBmYWxzZSB9OworICAg
IGJvb2wgY2FuY2VsYWJsZSB7IGZhbHNlIH07CisgICAgYm9vbCBjb21wb3NlZCB7IGZhbHNlIH07
Cit9OworCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRJbml0LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEluaXQuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU1NWEwMzAzNGNl
ODQyYjhiYThiMWJlN2RmOWRkNGY2ZjExYmE5ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRXZlbnRJbml0LmlkbApAQCAtMCwwICsxLDMwIEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
ZGljdGlvbmFyeSBFdmVudEluaXQgeworICAgIGJvb2xlYW4gYnViYmxlcyA9IGZhbHNlOworICAg
IGJvb2xlYW4gY2FuY2VsYWJsZSA9IGZhbHNlOworICAgIGJvb2xlYW4gY29tcG9zZWQgPSBmYWxz
ZTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5pbiBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCmluZGV4IDAzYjY3N2VkZGIxZjk4NGRmZGFm
YjhkMTk4YzUwMzYxOWUyOWFkY2IuLjkyNzdkMjNmYmNlZGYyMzkxMjI5OGUwMDY0OGViM2M4NmYy
ZjQ2ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmluCkBAIC02LDYgKzYsNyBAQCBIVE1MRXZl
bnRzIGludGVyZmFjZU5hbWU9RXZlbnQKIEFuaW1hdGlvbkV2ZW50CiBCZWZvcmVMb2FkRXZlbnQK
IEJlZm9yZVVubG9hZEV2ZW50CitDbGlwYm9hcmRFdmVudAogQ2xvc2VFdmVudAogQ29tcG9zaXRp
b25FdmVudAogQ3VzdG9tRXZlbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Nb3Vz
ZUV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTW91c2VFdmVudC5oCmluZGV4IGUxOTYwM2I0
MTNiYmJkMjBkNzRjZDc2NjYwYzljNDdlN2M3NGQ3YjEuLjVlYjQwNTgxYjZlNTY0NWU3ZTJkNWM5
ZDAwYzIzYTZkMGVkMDFjZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Nb3VzZUV2
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01vdXNlRXZlbnQuaApAQCAtODksOSArODks
NyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgTm9kZSogdG9FbGVtZW50KCkgY29uc3Q7
CiAgICAgV0VCQ09SRV9FWFBPUlQgTm9kZSogZnJvbUVsZW1lbnQoKSBjb25zdDsKIAotICAgIC8v
IEZJWE1FOiBUaGVzZSBmdW5jdGlvbnMgY2FuIGJlIG1lcmdlZCBpZiBtX2RhdGFUcmFuc2ZlciBp
cyBvbmx5IGluaXRpYWxpemVkIGZvciBkcmFnIGV2ZW50cy4KICAgICBEYXRhVHJhbnNmZXIqIGRh
dGFUcmFuc2ZlcigpIGNvbnN0IHsgcmV0dXJuIGlzRHJhZ0V2ZW50KCkgPyBtX2RhdGFUcmFuc2Zl
ci5nZXQoKSA6IG51bGxwdHI7IH0KLSAgICBEYXRhVHJhbnNmZXIqIGludGVybmFsRGF0YVRyYW5z
ZmVyKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9kYXRhVHJhbnNmZXIuZ2V0KCk7IH0KIAog
ICAgIEV2ZW50SW50ZXJmYWNlIGV2ZW50SW50ZXJmYWNlKCkgY29uc3Qgb3ZlcnJpZGU7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvRWRpdG9yLmNwcAppbmRleCAwMzEwMGY4MGNlZjQxODUyNzlkM2NiMTUwZjYx
MWQ3MGVjMDA5MThkLi5hOGM1MGE4ZjUyNmIxYzUxM2YxZTQxZTZiN2MxYjhkMWM1NGI3NTk4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC04ODMsNyArODgzLDcgQEAgYm9vbCBFZGl0
b3I6OmRpc3BhdGNoQ1BQRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERhdGFU
cmFuc2ZlckFjY2Vzc1AKIAogICAgIFJlZlB0cjxEYXRhVHJhbnNmZXI+IGRhdGFUcmFuc2ZlciA9
IERhdGFUcmFuc2Zlcjo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKHBvbGljeSk7CiAKLSAgICBSZWY8
RXZlbnQ+IGV2ZW50ID0gQ2xpcGJvYXJkRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIHRydWUsIHRy
dWUsIGRhdGFUcmFuc2Zlci5nZXQoKSk7CisgICAgYXV0byBldmVudCA9IENsaXBib2FyZEV2ZW50
OjpjcmVhdGUoZXZlbnRUeXBlLCB7IHRydWUsIHRydWUsIGZhbHNlLCBkYXRhVHJhbnNmZXIuZ2V0
KCkgfSwgRXZlbnQ6OklzVHJ1c3RlZDo6WWVzKTsKICAgICB0YXJnZXQtPmRpc3BhdGNoRXZlbnQo
ZXZlbnQpOwogICAgIGJvb2wgbm9EZWZhdWx0UHJvY2Vzc2luZyA9IGV2ZW50LT5kZWZhdWx0UHJl
dmVudGVkKCk7CiAgICAgaWYgKG5vRGVmYXVsdFByb2Nlc3NpbmcgJiYgcG9saWN5ID09IERhdGFU
cmFuc2ZlckFjY2Vzc1BvbGljeTo6V3JpdGFibGUpIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzOWI3MGIwNzIxZTkzOGQx
YmQzMjA5NjU5NWU0NzhjMWU4MmUwNzA2Li5mZDk5YjZmNDZhYjQyN2ZmZDk4Njc1YzhkZGI3ZjNl
NDE3ODFhMTdhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTYtMTAtMDggIENocmlzIER1bWV6
ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgQ2xpcGJvYXJk
RXZlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
MzE2NAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIEV4dGVu
ZGVkIGxheW91dCB0ZXN0IGNvdmVyYWdlLgorCisgICAgICAgICogZWRpdGluZy9wYXN0ZWJvYXJk
L2NsaXBib2FyZC1ldmVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcv
cGFzdGVib2FyZC9jbGlwYm9hcmQtZXZlbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9l
dmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtZ2V0LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dvcmtlcnMvd29ya2VyLWltcG9ydFNj
cmlwdHNPbkVycm9yLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0b3IvbW9kZWwvcmVt
b3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3RlZC50eHQ6CisgICAgICAgICoganMvZG9t
L2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
cGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMteW9zZW1pdGUvanMvZG9tL2dsb2Jh
bC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZv
cm0vbWFjL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRy
aWJ1dGVzLWV4cGVjdGVkLnR4dDoKKwogMjAxNi0xMC0wNyAgWXVzdWtlIFN1enVraSAgPHV0YXRh
bmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjA2ODUzPyk6IExheW91
dFRlc3QganMvcmVncmVzcy0xNDEwOTguaHRtbCBmYWlsaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2ZW50LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9jbGlwYm9hcmQtZXZlbnQtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjNiNGEyNWJmYWJmNzY3M2VjNGIxMDJjZGNjMDgzY2RhYjE0ZjgwNWIKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJk
LWV2ZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI4IEBACitUZXN0cyB0aGUgQ2xpcGJvYXJk
RXZlbnQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGZpcmVkQ29weUV2
ZW50IGlzIGZhbHNlCitQQVNTIGZpcmVkUGFzdGVFdmVudCBpcyBmYWxzZQorUEFTUyBldmVudC50
eXBlIGlzICJjb3B5IgorUEFTUyBldmVudC5fX3Byb3RvX18gaXMgQ2xpcGJvYXJkRXZlbnQucHJv
dG90eXBlCitQQVNTIGV2ZW50LmlzVHJ1c3RlZCBpcyB0cnVlCitQQVNTIGV2ZW50LmJ1YmJsZXMg
aXMgdHJ1ZQorUEFTUyBldmVudC5jYW5jZWxhYmxlIGlzIHRydWUKK1BBU1MgZXZlbnQuY2xpcGJv
YXJkRGF0YS5fX3Byb3RvX18gaXMgRGF0YVRyYW5zZmVyLnByb3RvdHlwZQorUEFTUyBmaXJlZENv
cHlFdmVudCBpcyB0cnVlCitQQVNTIGZpcmVkUGFzdGVFdmVudCBpcyBmYWxzZQorUEFTUyBldmVu
dC50eXBlIGlzICJwYXN0ZSIKK1BBU1MgZXZlbnQuX19wcm90b19fIGlzIENsaXBib2FyZEV2ZW50
LnByb3RvdHlwZQorUEFTUyBldmVudC5pc1RydXN0ZWQgaXMgdHJ1ZQorUEFTUyBldmVudC5idWJi
bGVzIGlzIHRydWUKK1BBU1MgZXZlbnQuY2FuY2VsYWJsZSBpcyB0cnVlCitQQVNTIGV2ZW50LmNs
aXBib2FyZERhdGEuX19wcm90b19fIGlzIERhdGFUcmFuc2Zlci5wcm90b3R5cGUKK1BBU1MgZXZl
bnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0ZXh0L3BsYWluJykgaXMgIkNvbnRlbnQiCitQQVNT
IGZpcmVkQ29weUV2ZW50IGlzIGZhbHNlCitQQVNTIGZpcmVkUGFzdGVFdmVudCBpcyB0cnVlCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC5odG1s
IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjM1MWQ3YjQyZGZkMTU5YTM1YWRiM2YzNTUwZWYwNjM2ZmU1ZjI1ZTYKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvY2xpcGJvYXJkLWV2
ZW50Lmh0bWwKQEAgLTAsMCArMSw1NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8dGV4dGFyZWEgaWQ9InRlc3RBcmVhIj5Db250ZW50PC90ZXh0YXJlYT4KKzxzY3JpcHQgc3Jj
PSIuLi9lZGl0aW5nLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGVzdHMg
dGhlIENsaXBib2FyZEV2ZW50LiIpOworCitmdW5jdGlvbiB0ZXN0Q2xpcGJvYXJkRXZlbnQoZSkK
K3sKKyAgICBldmVudCA9IGU7CisgICAgc2hvdWxkQmUoImV2ZW50Ll9fcHJvdG9fXyIsICJDbGlw
Ym9hcmRFdmVudC5wcm90b3R5cGUiKTsKKyAgICBzaG91bGRCZVRydWUoImV2ZW50LmlzVHJ1c3Rl
ZCIpCisgICAgc2hvdWxkQmVUcnVlKCJldmVudC5idWJibGVzIik7CisgICAgc2hvdWxkQmVUcnVl
KCJldmVudC5jYW5jZWxhYmxlIik7CisgICAgc2hvdWxkQmUoImV2ZW50LmNsaXBib2FyZERhdGEu
X19wcm90b19fIiwgIkRhdGFUcmFuc2Zlci5wcm90b3R5cGUiKTsKK30KKwordmFyIGZpcmVkQ29w
eUV2ZW50ID0gZmFsc2U7Cit2YXIgZmlyZWRQYXN0ZUV2ZW50ID0gZmFsc2U7CisKK3ZhciB0ZXN0
QXJlYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0QXJlYSIpOwordGVzdEFyZWEuYWRk
RXZlbnRMaXN0ZW5lcigiY29weSIsIGZ1bmN0aW9uKGUpIHsKKyAgICBldmVudCA9IGU7CisgICAg
ZmlyZWRDb3B5RXZlbnQgPSB0cnVlOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQu
dHlwZSIsICJjb3B5Iik7CisgICAgdGVzdENsaXBib2FyZEV2ZW50KGV2ZW50KTsKK30pOworCit0
ZXN0QXJlYS5hZGRFdmVudExpc3RlbmVyKCJwYXN0ZSIsIGZ1bmN0aW9uKGUpIHsKKyAgICBldmVu
dCA9IGU7CisgICAgZmlyZWRQYXN0ZUV2ZW50ID0gdHJ1ZTsKKyAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImV2ZW50LnR5cGUiLCAicGFzdGUiKTsKKyAgICB0ZXN0Q2xpcGJvYXJkRXZlbnQoZXZl
bnQpOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXRE
YXRhKCd0ZXh0L3BsYWluJykiLCAiQ29udGVudCIpOworfSk7CisKK3Rlc3RBcmVhLmZvY3VzKCk7
CitleGVjU2VsZWN0QWxsQ29tbWFuZCgpOworc2hvdWxkQmVGYWxzZSgiZmlyZWRDb3B5RXZlbnQi
KTsKK3Nob3VsZEJlRmFsc2UoImZpcmVkUGFzdGVFdmVudCIpOworCitleGVjQ29weUNvbW1hbmQo
KTsKK3Nob3VsZEJlVHJ1ZSgiZmlyZWRDb3B5RXZlbnQiKTsKK3Nob3VsZEJlRmFsc2UoImZpcmVk
UGFzdGVFdmVudCIpCitmaXJlZENvcHlFdmVudCA9IGZhbHNlOworCitleGVjUGFzdGVDb21tYW5k
KCk7CitzaG91bGRCZUZhbHNlKCJmaXJlZENvcHlFdmVudCIpOworc2hvdWxkQmVUcnVlKCJmaXJl
ZFBhc3RlRXZlbnQiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9yLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2NsaXBib2FyZC1ldmVudC1jb25zdHJ1
Y3Rvci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmExNzkyYjA3ZWJmNjZhN2I5OTNiOGYwODA3
YzRlZDNjNjdlYzhlYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRz
L2NsaXBib2FyZC1ldmVudC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBA
CisKK1BBU1MgRmlyc3QgcGFyYW1ldGVyIGlzIG1hbmRhdG9yeSAKK1BBU1MgT21pdCBpbml0IGRp
Y3Rpb25hcnkgCitQQVNTIGJ1YmJsZXMgbWVtYmVyIAorUEFTUyBidWJibGVzIG1lbWJlciAKK1BB
U1MgYnViYmxlcyBtZW1iZXIgCitQQVNTIGJ1YmJsZXMgbWVtYmVyIAorUEFTUyBQYXNzaW5nIGEg
YmFkIHR5cGUgZm9yIGNsaXBib2FyZERhdGEgbWVtYmVyIHNob3VsZCB0aHJvdyAKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJvYXJkLWV2ZW50LWNvbnN0cnVjdG9y
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9jbGlwYm9hcmQtZXZlbnQtY29uc3RydWN0
b3IuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45MmM1NzM1ZjlmZmIxNTAxYTJmZjk2NTNjNWRkNWFlMGJjN2Zh
MjhlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvY2xpcGJvYXJk
LWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwKQEAgLTAsMCArMSw3MyBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPkNsaXBib2FyZEV2ZW50IGNvbnN0cnVjdG9yPC90aXRs
ZT4KKzxzY3JpcHQgc3JjPS4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcz48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPS4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcz48L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNz
ZXJ0X3Rocm93cyhuZXcgVHlwZUVycm9yKCksIGZ1bmN0aW9uKCkgeworICAgICAgICBuZXcgQ2xp
cGJvYXJkRXZlbnQoKTsKKyAgICB9KTsKK30sICJGaXJzdCBwYXJhbWV0ZXIgaXMgbWFuZGF0b3J5
Iik7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGV2ZW50ID0gbmV3IENsaXBib2FyZEV2
ZW50KCJmb28iKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LnR5cGUsICJmb28iKTsKKyAgICBh
c3NlcnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMo
ZXZlbnQuYnViYmxlcywgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2FuY2VsYWJs
ZSwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY29tcG9zZWQsIGZhbHNlKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKGV2ZW50LmNsaXBib2FyZERhdGEsIG51bGwpOworfSwgIk9taXQgaW5p
dCBkaWN0aW9uYXJ5Iik7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGV2ZW50ID0gbmV3
IENsaXBib2FyZEV2ZW50KCJmb28iLCB7YnViYmxlczogdHJ1ZX0pOworICAgIGFzc2VydF9lcXVh
bHMoZXZlbnQudHlwZSwgImZvbyIpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuaXNUcnVzdGVk
LCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5idWJibGVzLCB0cnVlKTsKKyAgICBh
c3NlcnRfZXF1YWxzKGV2ZW50LmNhbmNlbGFibGUsIGZhbHNlKTsKKyAgICBhc3NlcnRfZXF1YWxz
KGV2ZW50LmNvbXBvc2VkLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jbGlwYm9h
cmREYXRhLCBudWxsKTsKK30sICJidWJibGVzIG1lbWJlciIpOworCit0ZXN0KGZ1bmN0aW9uKCkg
eworICAgIHZhciBldmVudCA9IG5ldyBDbGlwYm9hcmRFdmVudCgiZm9vIiwge2NhbmNlbGFibGU6
IHRydWV9KTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LnR5cGUsICJmb28iKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKGV2ZW50LmlzVHJ1c3RlZCwgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZl
bnQuYnViYmxlcywgZmFsc2UpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuY2FuY2VsYWJsZSwg
dHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jb21wb3NlZCwgZmFsc2UpOworICAgIGFz
c2VydF9lcXVhbHMoZXZlbnQuY2xpcGJvYXJkRGF0YSwgbnVsbCk7Cit9LCAiYnViYmxlcyBtZW1i
ZXIiKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIgZXZlbnQgPSBuZXcgQ2xpcGJvYXJk
RXZlbnQoImZvbyIsIHtjb21wb3NlZDogdHJ1ZX0pOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQu
dHlwZSwgImZvbyIpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuaXNUcnVzdGVkLCBmYWxzZSk7
CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5idWJibGVzLCBmYWxzZSk7CisgICAgYXNzZXJ0X2Vx
dWFscyhldmVudC5jYW5jZWxhYmxlLCBmYWxzZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5j
b21wb3NlZCwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jbGlwYm9hcmREYXRhLCBu
dWxsKTsKK30sICJidWJibGVzIG1lbWJlciIpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZh
ciBldmVudCA9IG5ldyBDbGlwYm9hcmRFdmVudCgiZm9vIiwge2J1YmJsZXM6IHRydWUsIGNhbmNl
bGFibGU6IHRydWUsIGNvbXBvc2VkOiB0cnVlfSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC50
eXBlLCAiZm9vIik7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5pc1RydXN0ZWQsIGZhbHNlKTsK
KyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmJ1YmJsZXMsIHRydWUpOworICAgIGFzc2VydF9lcXVh
bHMoZXZlbnQuY2FuY2VsYWJsZSwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jb21w
b3NlZCwgdHJ1ZSk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5jbGlwYm9hcmREYXRhLCBudWxs
KTsKK30sICJidWJibGVzIG1lbWJlciIpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2Vy
dF90aHJvd3MobmV3IFR5cGVFcnJvcigpLCBmdW5jdGlvbigpIHsKKyAgICAgICAgbmV3IENsaXBi
b2FyZEV2ZW50KCJmb28iLCB7Y2xpcGJvYXJkRGF0YTogZG9jdW1lbnR9KTsKKyAgICB9KTsKK30s
ICJQYXNzaW5nIGEgYmFkIHR5cGUgZm9yIGNsaXBib2FyZERhdGEgbWVtYmVyIHNob3VsZCB0aHJv
dyIpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LWdldC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LWdldC1leHBlY3Rl
ZC50eHQKaW5kZXggYmM5NzEzZTRmN2MzYmFkYThjMjg5Mzg0OTU4ZDJiY2M3MGQ4OWE2ZS4uODE3
YzIzMDdmZThiNmEzOTAwOWRhYmNlNWVmNGY3MmRlZTc1ODE0MiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1nZXQtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtZ2V0
LWV4cGVjdGVkLnR4dApAQCAtNDYsNyArNDYsNiBAQCBTRUxFQ1QgOiAnMTYzODQnCiBidWJibGVz
IDogJ2ZhbHNlJwogY2FuY2VsQnViYmxlIDogJ2ZhbHNlJwogY2FuY2VsYWJsZSA6ICdmYWxzZScK
LWNsaXBib2FyZERhdGEgOiAndW5kZWZpbmVkJwogY29tcG9zZWQgOiAnZmFsc2UnCiBjb21wb3Nl
ZFBhdGggOiAnZnVuY3Rpb24gY29tcG9zZWRQYXRoKCkgewogICAgIFtuYXRpdmUgY29kZV0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29ya2Vycy93b3JrZXItaW1wb3J0U2Ny
aXB0c09uRXJyb3ItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJz
L3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1leHBlY3RlZC50eHQKaW5kZXggOTFlNzQ5MmNl
NzM3MTE4OTVlODVkYWJjNzY5NGQ0ZjZkZGJlYTM5Yy4uOTlhNGNiY2YyYWQ3OThjNzk2NTIzZGYy
ZDM0MGQyODBlNDIyMTYwMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93b3Jr
ZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJzL3dvcmtlci1pbXBvcnRTY3JpcHRzT25FcnJvci1leHBl
Y3RlZC50eHQKQEAgLTI1LDcgKzI1LDYgQEAgU0VMRUNUOiAxNjM4NCwKIGJ1YmJsZXM6IGZhbHNl
LAogY2FuY2VsQnViYmxlOiBmYWxzZSwKIGNhbmNlbGFibGU6IHRydWUsCi1jbGlwYm9hcmREYXRh
OiB1bmRlZmluZWQsCiBjb2xubzogMTQsCiBjb21wb3NlZDogZmFsc2UsCiBjb21wb3NlZFBhdGg6
IGZ1bmN0aW9uIGNvbXBvc2VkUGF0aCgpIHsgW25hdGl2ZSBjb2RlXSB9LApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1vYmplY3Qt
Z2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CmluZGV4IDM4ZTJkMDU5MGVjNjk5ZmVlZmQwOWI2
YTk5ZWM2ZThlNjIxZjg4MDUuLjJmN2FkNGVjNjA4MmJiNDA5M2QxODllMWFhNTgyZTRlMTk2NWEx
NGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9yZW1vdGUtb2JqZWN0
LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
bW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3RlZC50eHQKQEAgLTI0Myw3
ICsyNDMsNiBAQCBESVNQTEFZQUJMRSBQUk9QRVJUSUVTOgogICAgIHNyY0VsZW1lbnQKICAgICBy
ZXR1cm5WYWx1ZQogICAgIGNhbmNlbEJ1YmJsZQotICAgIGNsaXBib2FyZERhdGEKICAgICBfX3By
b3RvX18KIAogQUxMIFBST1BFUlRJRVM6CkBAIC0yNjEsNyArMjYwLDYgQEAgQUxMIFBST1BFUlRJ
RVM6CiAgICAgc3JjRWxlbWVudAogICAgIHJldHVyblZhbHVlCiAgICAgY2FuY2VsQnViYmxlCi0g
ICAgY2xpcGJvYXJkRGF0YQogICAgIGNvbXBvc2VkUGF0aAogICAgIHN0b3BQcm9wYWdhdGlvbgog
ICAgIHByZXZlbnREZWZhdWx0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9kb20vZ2xvYmFs
LWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2pzL2Rv
bS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IDVmMGU5
MjQyNDA0NjY3MWM2ZjJkMWNiNGQ5MWJhYmRlNTk2OWNlMjkuLmQ4OTc4ODRiZjJhMzJhYzExODFl
ZDU4ZDU1MTMxN2QwZTg0NGQxMDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL2RvbS9nbG9i
YWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0y
MjgsNiArMjI4LDExIEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdnCiBQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmNv
bmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52YWx1ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50Jyku
aGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0
JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmNvbmZpZ3VyYWJs
ZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3NlRXZlbnQKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcp
IGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1h
dHRyaWJ1dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvanMv
ZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKaW5kZXggODJj
YzMwOTdlNTVmZDY2NGMzZGRmMjMxOTQ1MDc2NWU2ZjdkOTFkOC4uNDNmMzg4NDkyZjc2YTYxN2Y0
MTY0NGM1NjIxOGIwMzljNWU0ZWI4NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjLXdrMS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2pzL2RvbS9nbG9iYWwtY29uc3Ry
dWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0yNjMsNiArMjYzLDExIEBAIFBBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcp
Lmhhc093blByb3BlcnR5KCdnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UK
IFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0
TGlzdCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQ
QVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZl
bnQnKS52YWx1ZSBpcyBDbGlwYm9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcp
IGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmVu
dW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihn
bG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVlIGlz
IENsb3NlRXZlbnQKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdDbG9zZUV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blBy
b3BlcnR5KCdzZXQnKSBpcyBmYWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXlvc2VtaXRlL2pzL2RvbS9nbG9iYWwt
Y29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IGE4ODgyZmVmYmMwZDFk
MTdlZTg5YjAzZjdiMTkyMmY5Zjg5Yjg3OTAuLjNjNjg5ZTI5NzMwNDVjOGMyMjQ4YjQ4ZjRhZWY0
ZmE3ZTY1NDA4NjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy15b3NlbWl0
ZS9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMteW9zZW1pdGUvanMvZG9tL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKQEAgLTI2Myw2ICsyNjMsMTEgQEAgUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0Jyku
aGFzT3duUHJvcGVydHkoJ2cKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihn
bG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQog
UEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RM
aXN0JykuZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuY29uZmlndXJhYmxlIGlzIHRydWUKK1BB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVu
dCcpLnZhbHVlIGlzIENsaXBib2FyZEV2ZW50CitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0Jykg
aXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdD
bGlwYm9hcmRFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQorUEFTUyBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuZW51
bWVyYWJsZSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGds
b2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuY29uZmlndXJhYmxlIGlzIHRydWUKIFBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykudmFsdWUgaXMg
Q2xvc2VFdmVudAogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0Nsb3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykuaGFzT3duUHJv
cGVydHkoJ3NldCcpIGlzIGZhbHNlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmli
dXRlcy1leHBlY3RlZC50eHQKaW5kZXggMzcyYjdiMDAzODgzNjIxMDNhYzQ1ZDE5ZWNhZmM1ZDY3
NTlkMzNjMi4uMmM1ODU4MTgwNzkxNWUzNjVlMjFhNTc5OGNmZjE4ZWUwMjhiMTgxNCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3Jz
LWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9q
cy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMjYz
LDYgKzI2MywxMSBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnQ2xpZW50UmVjdExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnZwogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaWVudFJlY3RMaXN0JykuaGFzT3duUHJvcGVy
dHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVjdExpc3QnKS5jb25m
aWd1cmFibGUgaXMgdHJ1ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGds
b2JhbCwgJ0NsaXBib2FyZEV2ZW50JykudmFsdWUgaXMgQ2xpcGJvYXJkRXZlbnQKK1BBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmhh
c093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ3NldCcp
IGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
Q2xpcGJvYXJkRXZlbnQnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCitQQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Ns
b3NlRXZlbnQnKS52YWx1ZSBpcyBDbG9zZUV2ZW50CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdnZXQnKSBp
cyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ0Ns
b3NlRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3dpbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1
dGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9qcy9kb20vZ2xvYmFs
LWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCA3ZWY5NThkOTIzNTI0
ZjI5YzFjOTk3ZjE5ZTc3YWUzMzQxMzU4ZDg4Li42OWQzODMwN2Q0ZTQ5ZTE0MDEyYmRmZmY5ZWJi
YzA3YzVlNDc1MDNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vanMvZG9t
L2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vd2luL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMt
ZXhwZWN0ZWQudHh0CkBAIC0xNjgsNiArMTY4LDExIEBAIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmhhc093blByb3BlcnR5KCdn
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpZW50UmVj
dExpc3QnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGllbnRSZWN0TGlzdCcpLmVudW1lcmFibGUg
aXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdD
bGllbnRSZWN0TGlzdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS52YWx1ZSBpcyBDbGlw
Ym9hcmRFdmVudAorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J0NsaXBib2FyZEV2ZW50JykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCitQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnQ2xpcGJvYXJkRXZlbnQnKS5o
YXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRFdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UK
K1BBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbGlwYm9hcmRF
dmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLnZhbHVlIGlzIENsb3NlRXZlbnQKIFBBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdDbG9zZUV2ZW50JykuaGFz
T3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoZ2xvYmFsLCAnQ2xvc2VFdmVudCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBm
YWxzZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>