<?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>123634</bug_id>
          
          <creation_ts>2013-11-01 14:05:12 -0700</creation_ts>
          <short_desc>Kill RenderArena.</short_desc>
          <delta_ts>2013-11-01 15:20:44 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>946018</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-11-01 14:05:12 -0700</bug_when>
    <thetext>We don&apos;t allocate anything in RenderArena anymore. Time to kill it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>946022</commentid>
    <comment_count>1</comment_count>
      <attachid>215759</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-11-01 14:07:03 -0700</bug_when>
    <thetext>Created attachment 215759
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>946039</commentid>
    <comment_count>2</comment_count>
      <attachid>215759</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-11-01 14:49:48 -0700</bug_when>
    <thetext>Comment on attachment 215759
Patch

The prophets said this day would come.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>946055</commentid>
    <comment_count>3</comment_count>
      <attachid>215759</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-01 15:20:42 -0700</bug_when>
    <thetext>Comment on attachment 215759
Patch

Clearing flags on attachment: 215759

Committed r158461: &lt;http://trac.webkit.org/changeset/158461&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>946056</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-01 15:20:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215759</attachid>
            <date>2013-11-01 14:07:03 -0700</date>
            <delta_ts>2013-11-01 15:20:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-123634.diff</filename>
            <type>text/plain</type>
            <size>46319</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggYTg3N2UwZi4uMjM1NDFiNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKQEAgLTE3NTMsNyArMTc1Myw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBwYWdl
L3Njcm9sbGluZy9jb29yZGluYXRlZGdyYXBoaWNzL1Njcm9sbGluZ1N0YXRlTm9kZUNvb3JkaW5h
dGVkR3JhcGhpY3MuY3BwCiAgICAgcGFnZS9zY3JvbGxpbmcvY29vcmRpbmF0ZWRncmFwaGljcy9T
Y3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGVDb29yZGluYXRlZEdyYXBoaWNzLmNwcAogCi0gICAg
cGxhdGZvcm0vQXJlbmEuY3BwCiAgICAgcGxhdGZvcm0vQ2FsY3VsYXRpb25WYWx1ZS5jcHAKICAg
ICBwbGF0Zm9ybS9DbG9jay5jcHAKICAgICBwbGF0Zm9ybS9DbG9ja0dlbmVyaWMuY3BwCkBAIC0y
MDg2LDcgKzIwODUsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgcmVuZGVyaW5nL0xpbmVX
aWR0aC5jcHAKICAgICByZW5kZXJpbmcvT3JkZXJJdGVyYXRvci5jcHAKICAgICByZW5kZXJpbmcv
UG9pbnRlckV2ZW50c0hpdFJ1bGVzLmNwcAotICAgIHJlbmRlcmluZy9SZW5kZXJBcmVuYS5jcHAK
ICAgICByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCiAgICAgcmVuZGVyaW5nL1JlbmRlckJsb2Nr
Rmxvdy5jcHAKICAgICByZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CmluZGV4IDFjNzg4ZjEuLjYyZjBhMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxNCBAQAogMjAx
My0xMS0wMSAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CiAKKyAgICAgICAgS2ls
bCBSZW5kZXJBcmVuYS4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzEyMzYzND4KKwor
ICAgICAgICBUaGVyZSBhcmUgbm8gcmVtYWluaW5nIHVzZXJzIG9mIHRoZSBSZW5kZXJBcmVuYSBh
bGxvY2F0b3IuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKzIwMTMt
MTEtMDEgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCiAgICAgICAgIFRha2Ug
QmlkaVJ1bnMgb3V0IG9mIHRoZSBhcmVuYS4KICAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9i
LzEyMzYzMD4KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5h
bSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggYTNmZGExYy4uYWUy
ZGUwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC00Mjk0LDggKzQyOTQsNiBA
QCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Qb2ludGVy
RXZlbnRzSGl0UnVsZXMuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUG9pbnRlckV2
ZW50c0hpdFJ1bGVzLmggXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZWdpb25PdmVyc2V0
U3RhdGUuaCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckFyZW5hLmNwcCBcCi0J
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckFyZW5hLmggXAogCVNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCbG9jay5oIFwKICAgICBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tG
bG93LmNwcCBcCkBAIC01OTQyLDggKzU5NDAsNiBAQCBwbGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1VuaWNvZGVSYW5nZS5jcHAgXAogCVNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZVJhbmdlLmggXAogCVNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL3RleHQvV3JpdGluZ01vZGUuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQXJl
bmEuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9BcmVuYS5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9DbG9jay5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0Nsb2Nr
LmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0Nsb2NrR2VuZXJpYy5jcHAgXApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKaW5kZXggYzk5YWY4
Zi4uNjhlYWI1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29y
ZS52Y3hwcm9qCkBAIC03MTU5LDcgKzcxNTksNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cbG9hZGVyXGNhY2hlXENhY2hlZFRleHRUcmFjay5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkWFNMU3R5bGVTaGVldC5jcHAiIC8+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcTWVtb3J5Q2FjaGUuY3BwIiAvPgot
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cQXJlbmEuY3BwIiAvPgogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cQ2FsY3VsYXRpb25WYWx1ZS5jcHAiIC8+CiAg
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxDbG9jay5jcHAiIC8+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxDbG9ja0dlbmVyaWMuY3BwIiAvPgpAQCAtOTU1
NCwyMCArOTU1Myw2IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5ccmVuZGVyaW5nXFJlbmRlckFyZW5hLmNwcCI+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQg
Q29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMici
PnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSIn
JChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPnRy
dWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+
dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMici
PnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+
dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0
aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+dHJ1
ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9u
PSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPnRydWU8L0V4
Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQo
Q29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPnRy
dWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQn
Ij50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25k
aXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzIn
Ij50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25k
aXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+
dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGls
ZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcUmVuZGVyQmxvY2suY3BwIj4KICAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4
NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KQEAgLTE4NzY2LDcgKzE4NzUxLDYgQEAKICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRYU0xTdHlsZVNoZWV0
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVQb2xp
Y3kuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxNZW1vcnlD
YWNoZS5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cQXJlbmEuaCIg
Lz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXENhbGN1bGF0aW9uVmFsdWUu
aCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXENsb2NrLmgiIC8+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxDbG9ja0dlbmVyaWMuaCIgLz4KQEAg
LTE5NTkwLDcgKzE5NTc0LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmlu
Z1xQYWludEluZm8uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xQ
YWludFBoYXNlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcUG9p
bnRlckV2ZW50c0hpdFJ1bGVzLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5k
ZXJpbmdcUmVuZGVyQXJlbmEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRl
cmluZ1xSZW5kZXJCbG9jay5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXFJlbmRlckJveC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5n
XFJlbmRlckJveE1vZGVsT2JqZWN0LmgiIC8+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggYjZjZjYwZi4uM2Q0
MDFkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMTAxMSw5ICsxMDExLDYgQEAKICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxNZW1vcnlDYWNoZS5jcHAiPgogICAgICAgPEZpbHRl
cj5sb2FkZXJcY2FjaGU8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXHBsYXRmb3JtXEFyZW5hLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3Jt
PC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxDYWxjdWxhdGlvblZhbHVlLmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yNDEyLDkgKzI0MDksNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXFBvaW50ZXJFdmVudHNIaXRSdWxlcy5jcHAiPgog
ICAgICAgPEZpbHRlcj5yZW5kZXJpbmc8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xSZW5kZXJBcmVuYS5jcHAiPgotICAgICAg
PEZpbHRlcj5yZW5kZXJpbmc8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xSZW5kZXJCbG9jay5jcHAiPgogICAgICAgPEZpbHRl
cj5yZW5kZXJpbmc8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTc5MTgsOSArNzkxMiw2
IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcTWVtb3J5Q2FjaGUu
aCI+CiAgICAgICA8RmlsdGVyPmxvYWRlclxjYWNoZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRl
PgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cQXJlbmEuaCI+Ci0gICAgICA8
RmlsdGVyPnBsYXRmb3JtPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxDYWxjdWxhdGlvblZhbHVlLmgiPgogICAgICAgPEZpbHRl
cj5wbGF0Zm9ybTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTI5NSw5ICs5Mjg2LDYg
QEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xQb2ludGVyRXZlbnRzSGl0
UnVsZXMuaCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZzwvRmlsdGVyPgogICAgIDwvQ2xJbmNs
dWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXFJlbmRlckFyZW5hLmgi
PgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmc8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xSZW5kZXJCbG9jay5oIj4KICAgICAg
IDxGaWx0ZXI+cmVuZGVyaW5nPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZGVlN2Iy
MS4uZWIxOGZlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtNTExOSw4ICs1MTE5LDYgQEAKIAkJQkNFQTQ4NTUwOTdEOTMwMjAw
OTRDOUU0IC8qIGJyZWFrX2xpbmVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCQ0VBNDgxNjA5N0Q5MzAyMDA5NEM5RTQgLyogYnJlYWtfbGluZXMuaCAq
LzsgfTsKIAkJQkNFQTQ4NTkwOTdEOTMwMjAwOTRDOUU0IC8qIElubGluZVRleHRCb3guY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQTQ4MUEwOTdE
OTMwMjAwOTRDOUU0IC8qIElubGluZVRleHRCb3guY3BwICovOyB9OwogCQlCQ0VBNDg1QTA5N0Q5
MzAyMDA5NEM5RTQgLyogSW5saW5lVGV4dEJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQTQ4MUIwOTdEOTMwMjAwOTRDOUU0IC8qIElubGluZVRl
eHRCb3guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owot
CQlCQ0VBNDg1RDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQXJlbmEuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQTQ4MUUwOTdEOTMwMjAwOTRD
OUU0IC8qIFJlbmRlckFyZW5hLmNwcCAqLzsgfTsKLQkJQkNFQTQ4NUUwOTdEOTMwMjAwOTRDOUU0
IC8qIFJlbmRlckFyZW5hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCQ0VBNDgxRjA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQXJlbmEuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQ0VBNDg1RjA5N0Q5
MzAyMDA5NEM5RTQgLyogUmVuZGVyQmxvY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQTQ4MjAwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJs
b2NrLmNwcCAqLzsgfTsKIAkJQkNFQTQ4NjAwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJsb2Nr
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0VBNDgy
MTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQmxvY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQ0VBNDg2MTA5N0Q5MzAyMDA5NEM5RTQgLyog
UmVuZGVyQm94LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDRUE0ODIyMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJCb3guY3BwICovOyB9OwpAQCAt
NTE3Niw4ICs1MTc0LDYgQEAKIAkJQkNGN0U0OTExMzdDRDdDNzAwMUREQUU3IC8qIEFkanVzdFZp
ZXdTaXplT3JOb3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDRjQ4Q0U2MTM3MEQxMTQwMDRFODdENiAvKiBBZGp1c3RWaWV3U2l6ZU9yTm90LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQkNGQTkzMDgx
MDMzMzE5MzAwN0IyNUQxIC8qIFJlbmRlck92ZXJmbG93LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0ZBOTMwNzEwMzMzMTkzMDA3QjI1RDEgLyogUmVu
ZGVyT3ZlcmZsb3cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQlCQ0ZCMkU1RTA5NzlFNDY0MDBCQTcwM0QgLyogQ2FjaGVkUmVzb3VyY2VDbGllbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRkIyRTVE
MDk3OUU0NjQwMEJBNzAzRCAvKiBDYWNoZWRSZXNvdXJjZUNsaWVudC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUJDRkIyRjc2MDk3QTJFMUEwMEJB
NzAzRCAvKiBBcmVuYS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCQ0ZCMkY3NDA5N0EyRTFBMDBCQTcwM0QgLyogQXJlbmEuY3BwICovOyB9OwotCQlC
Q0ZCMkY3NzA5N0EyRTFBMDBCQTcwM0QgLyogQXJlbmEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRkIyRjc1MDk3QTJFMUEwMEJBNzAzRCAvKiBBcmVu
YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUJD
RkUyRjExMEMxQjU4MzcwMDIwMjM1RiAvKiBKU1JlY3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGRTJGMEYwQzFCNTgzNzAwMjAyMzVGIC8qIEpT
UmVjdC5jcHAgKi87IH07CiAJCUJDRkUyRjEyMEMxQjU4MzgwMDIwMjM1RiAvKiBKU1JlY3QuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRkUyRjEwMEMx
QjU4MzcwMDIwMjM1RiAvKiBKU1JlY3QuaCAqLzsgfTsKIAkJQkNGRjY0OTEwRUFEMTVDMjAwQzFE
NkY3IC8qIExlbmd0aEJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkNGRjY0OEYwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0aEJveC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xMjA1OSw4ICsxMjA1
NSw2IEBACiAJCUJDRUE0ODE2MDk3RDkzMDIwMDk0QzlFNCAvKiBicmVha19saW5lcy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gYnJlYWtfbGluZXMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQkNFQTQ4MUEwOTdEOTMwMjAwOTRDOUU0IC8qIElubGluZVRleHRC
b3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZVRleHRC
b3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0VBNDgxQjA5N0Q5MzAyMDA5
NEM5RTQgLyogSW5saW5lVGV4dEJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSW5saW5lVGV4dEJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQ0VBNDgx
RTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQXJlbmEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckFyZW5hLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJQkNFQTQ4MUYwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckFyZW5hLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJBcmVuYS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlCQ0VBNDgyMDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQmxvY2su
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckJsb2NrLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNFQTQ4MjEwOTdEOTMwMjAwOTRDOUU0
IC8qIFJlbmRlckJsb2NrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5k
ZXJCbG9jay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0VBNDgyMjA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVyQm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBSZW5kZXJCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTIx
MTksOCArMTIxMTMsNiBAQAogCQlCQ0Y0OENFNjEzNzBEMTE0MDA0RTg3RDYgLyogQWRqdXN0Vmll
d1NpemVPck5vdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBZGp1c3RWaWV3
U2l6ZU9yTm90Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDRkE5MzA3MTAzMzMx
OTMwMDdCMjVEMSAvKiBSZW5kZXJPdmVyZmxvdy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBSZW5kZXJPdmVyZmxvdy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlC
Q0ZCMkU1RDA5NzlFNDY0MDBCQTcwM0QgLyogQ2FjaGVkUmVzb3VyY2VDbGllbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFJlc291cmNlQ2xpZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDRkIyRjc0MDk3QTJFMUEwMEJBNzAzRCAvKiBBcmVu
YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXJlbmEuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQ0ZCMkY3NTA5N0EyRTFBMDBCQTcwM0QgLyog
QXJlbmEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFyZW5hLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDRkI0NUYzMTdEOEUzOTIwMDQ0NDQ0NiAvKiBSZW5k
ZXJCbG9ja0Zsb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyQmxvY2tGbG93Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDRkI0NUY0MTdEOEU0OTQwMDQ0NDQ0NiAvKiBSZW5kZXJC
bG9ja0Zsb3cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVy
QmxvY2tGbG93LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNGRTJGMEYwQzFC
NTgzNzAwMjAyMzVGIC8qIEpTUmVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNSZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5ODUy
LDggKzE5ODQ0LDYgQEAKIAkJCQk1MTYwMzAwOTBDQzQyNDU0MDBDOEFDMjUgLyogcG9zaXggKi8s
CiAJCQkJMUEyRTZFNTYwQ0M1NTFFMDAwNEEyMDYyIC8qIHNxbCAqLywKIAkJCQlCMkMzRDlFQzBE
MDA2QzFEMDBFRjZGMjYgLyogdGV4dCAqLywKLQkJCQlCQ0ZCMkY3NDA5N0EyRTFBMDBCQTcwM0Qg
LyogQXJlbmEuY3BwICovLAotCQkJCUJDRkIyRjc1MDk3QTJFMUEwMEJBNzAzRCAvKiBBcmVuYS5o
ICovLAogCQkJCTQ5QUUyRDk0MTM0RUU1RjkwMDcyOTIwQSAvKiBDYWxjdWxhdGlvblZhbHVlLmNw
cCAqLywKIAkJCQk0OUFFMkQ5NTEzNEVFNUY5MDA3MjkyMEEgLyogQ2FsY3VsYXRpb25WYWx1ZS5o
ICovLAogCQkJCUNERUE3NjMzMTQ2MEI0NjIwMDhCMzFGMSAvKiBDbG9jay5jcHAgKi8sCkBAIC0y
MDcxNSw4ICsyMDcwNSw2IEBACiAJCQkJQjJCMUY3MTQwRDAwQ0FBODAwNEFFQTY0IC8qIFBvaW50
ZXJFdmVudHNIaXRSdWxlcy5jcHAgKi8sCiAJCQkJQjJCMUY3MTUwRDAwQ0FBODAwNEFFQTY0IC8q
IFBvaW50ZXJFdmVudHNIaXRSdWxlcy5oICovLAogCQkJCTZDNzBBODE0MTc3MDdDNDkwMDlBNDQ2
RSAvKiBSZWdpb25PdmVyc2V0U3RhdGUuaCAqLywKLQkJCQlCQ0VBNDgxRTA5N0Q5MzAyMDA5NEM5
RTQgLyogUmVuZGVyQXJlbmEuY3BwICovLAotCQkJCUJDRUE0ODFGMDk3RDkzMDIwMDk0QzlFNCAv
KiBSZW5kZXJBcmVuYS5oICovLAogCQkJCUJDRUE0ODIwMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5k
ZXJCbG9jay5jcHAgKi8sCiAJCQkJQkNFQTQ4MjEwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJs
b2NrLmggKi8sCiAJCQkJQkNGQjQ1RjQxN0Q4RTQ5NDAwNDQ0NDQ2IC8qIFJlbmRlckJsb2NrRmxv
dy5jcHAgKi8sCkBAIC0yMTcyOSw3ICsyMTcxNyw2IEBACiAJCQkJNTEyREQ4RkQwRDkxRTZBRjAw
MEY4OUVFIC8qIEFyY2hpdmVGYWN0b3J5LmggaW4gSGVhZGVycyAqLywKIAkJCQk1MTJERDhGQzBE
OTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlLmggaW4gSGVhZGVycyAqLywKIAkJCQk1
MTJERDhGODBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJQkNGQjJGNzcwOTdBMkUxQTAwQkE3MDNEIC8qIEFyZW5hLmggaW4g
SGVhZGVycyAqLywKIAkJCQk0OUIzNzYwRDE1QzZDNjg0MDA1OTEzMUQgLyogQXJyYXlWYWx1ZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJRkQ1Njg2Q0ExM0FDMTgwMjAwQjY5QzY4IC8qIEFzeW5jQXVk
aW9EZWNvZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlFMUNERTkyMjE1MDE5MTY5MDA4NjJDQzUg
LyogQXN5bmNGaWxlU3RyZWFtLmggaW4gSGVhZGVycyAqLywKQEAgLTIzODc4LDcgKzIzODY1LDYg
QEAKIAkJCQlEMDZDMEQ4RjBDRkQxMTQ2MDA2NUY0M0YgLyogUmVtb3ZlRm9ybWF0Q29tbWFuZC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlFMDUwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlbW92ZU5v
ZGVDb21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwNzA5OUU2NDkyMDA1NkU1ODEg
LyogUmVtb3ZlTm9kZVByZXNlcnZpbmdDaGlsZHJlbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAot
CQkJCUJDRUE0ODVFMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJBcmVuYS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQkNFQTQ4NjAwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJsb2NrLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQ0VBNDg2MjA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQm94LmggaW4g
SGVhZGVycyAqLywKIAkJCQlCQzk2REI0MzBGM0E4ODBFMDA1NzNDQjMgLyogUmVuZGVyQm94TW9k
ZWxPYmplY3QuaCBpbiBIZWFkZXJzICovLApAQCAtMjUyNDMsNyArMjUyMjksNiBAQAogCQkJCTUx
MkREOEZBMEQ5MUU2QUYwMDBGODlFRSAvKiBBcmNoaXZlRmFjdG9yeS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1MTJERDhGQjBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTUxMkREOEY3MEQ5MUU2QUYwMDBGODlFRSAvKiBBcmNoaXZlUmVz
b3VyY2VDb2xsZWN0aW9uLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUJDRkIyRjc2MDk3QTJFMUEw
MEJBNzAzRCAvKiBBcmVuYS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0OUIzNzYwQzE1QzZDNjg0
MDA1OTEzMUQgLyogQXJyYXlWYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRDU2ODZDOTEz
QUMxODAyMDBCNjlDNjggLyogQXN5bmNBdWRpb0RlY29kZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJRTFDREU5MjAxNTAxOEVEMDAwODYyQ0M1IC8qIEFzeW5jRmlsZVN0cmVhbS5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTI3MTA0LDcgKzI3MDg5LDYgQEAKIAkJCQlEMDZDMEQ5MDBDRkQxMTQ2MDA2
NUY0M0YgLyogUmVtb3ZlRm9ybWF0Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzMw
OUUwNDA5OUU2NDkyMDA1NkU1ODEgLyogUmVtb3ZlTm9kZUNvbW1hbmQuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJOTMzMDlFMDYwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlbW92ZU5vZGVQcmVzZXJ2aW5n
Q2hpbGRyZW5Db21tYW5kLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUJDRUE0ODVEMDk3RDkzMDIw
MDk0QzlFNCAvKiBSZW5kZXJBcmVuYS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0VBNDg1RjA5
N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQmxvY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNF
QTQ4NTIwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJsb2NrTGluZUxheW91dC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlFMTU3QThFMDE4MTczMzFDMDA5RjgyMUQgLyogSlNDcnlwdG9LZXkuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCA1NzJhNzA2Li4wNjI5
NmUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTEyNyw3ICsxMjcsNiBAQAogI2luY2x1
ZGUgIlBvcFN0YXRlRXZlbnQuaCIKICNpbmNsdWRlICJQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaCIK
ICNpbmNsdWRlICJRdWFsaWZpZWROYW1lLmgiCi0jaW5jbHVkZSAiUmVuZGVyQXJlbmEuaCIKICNp
bmNsdWRlICJSZW5kZXJWaWV3LmgiCiAjaW5jbHVkZSAiUmVuZGVyV2lkZ2V0LmgiCiAjaW5jbHVk
ZSAiUmVzb3VyY2VMb2FkZXIuaCIKQEAgLTU4Miw4ICs1ODEsNiBAQCBEb2N1bWVudDo6fkRvY3Vt
ZW50KCkKICAgICBBU1NFUlQoIW1fcGFyc2VyIHx8IG1fcGFyc2VyLT5yZWZDb3VudCgpID09IDEp
OwogICAgIGRldGFjaFBhcnNlcigpOwogCi0gICAgbV9yZW5kZXJBcmVuYSA9IG51bGxwdHI7Ci0K
ICAgICBpZiAodGhpcyA9PSB0b3BEb2N1bWVudCgpKQogICAgICAgICBjbGVhckFYT2JqZWN0Q2Fj
aGUoKTsKIApAQCAtMTk0Myw5ICsxOTQwLDYgQEAgdm9pZCBEb2N1bWVudDo6Y3JlYXRlUmVuZGVy
VHJlZSgpCiAgICAgQVNTRVJUKCFhdHRhY2hlZCgpKTsKICAgICBBU1NFUlQoIW1faW5QYWdlQ2Fj
aGUpOwogICAgIEFTU0VSVCghbV9heE9iamVjdENhY2hlIHx8IHRoaXMgIT0gdG9wRG9jdW1lbnQo
KSk7Ci0gICAgQVNTRVJUKCFtX3JlbmRlckFyZW5hKTsKLQotICAgIG1fcmVuZGVyQXJlbmEgPSBz
dGQ6Om1ha2VfdW5pcXVlPFJlbmRlckFyZW5hPigpOwogCiAgICAgLy8gRklYTUU6IEl0IHdvdWxk
IGJlIGJldHRlciBpZiB3ZSBjb3VsZCBwYXNzIHRoZSByZXNvbHZlZCBkb2N1bWVudCBzdHlsZSBk
aXJlY3RseSBoZXJlLgogICAgIHNldFJlbmRlclZpZXcobmV3IFJlbmRlclZpZXcoKnRoaXMsIFJl
bmRlclN0eWxlOjpjcmVhdGUoKSkpOwpAQCAtMjA1Miw4ICsyMDQ2LDYgQEAgdm9pZCBEb2N1bWVu
dDo6ZGVzdHJveVJlbmRlclRyZWUoKQogICAgIC8vIERvIHRoaXMgYmVmb3JlIHRoZSBhcmVuYSBp
cyBjbGVhcmVkLCB3aGljaCBpcyBuZWVkZWQgdG8gZGVyZWYgdGhlIFJlbmRlclN0eWxlIG9uIFRl
eHRBdXRvU2l6aW5nS2V5LgogICAgIG1fdGV4dEF1dG9TaXplZE5vZGVzLmNsZWFyKCk7CiAjZW5k
aWYKLQotICAgIG1fcmVuZGVyQXJlbmEgPSBudWxscHRyOwogfQogCiB2b2lkIERvY3VtZW50Ojpw
cmVwYXJlRm9yRGVzdHJ1Y3Rpb24oKQpAQCAtMzk1Nyw3ICszOTQ5LDYgQEAgdm9pZCBEb2N1bWVu
dDo6c2V0SW5QYWdlQ2FjaGUoYm9vbCBmbGFnKQogICAgICAgICBtX3N0eWxlUmVjYWxjVGltZXIu
c3RvcCgpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIEFTU0VSVCghcmVuZGVyVmlldygpIHx8IHJl
bmRlclZpZXcoKSA9PSBtX3NhdmVkUmVuZGVyVmlldyk7Ci0gICAgICAgIEFTU0VSVChtX3JlbmRl
ckFyZW5hKTsKICAgICAgICAgc2V0UmVuZGVyVmlldyhtX3NhdmVkUmVuZGVyVmlldyk7CiAgICAg
ICAgIG1fc2F2ZWRSZW5kZXJWaWV3ID0gbnVsbHB0cjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRl
eCA1Nzg5ODU4Li4yNjIzNTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtMTI1LDcgKzEyNSw2
IEBAIGNsYXNzIFBsYXRmb3JtTW91c2VFdmVudDsKIGNsYXNzIFByb2Nlc3NpbmdJbnN0cnVjdGlv
bjsKIGNsYXNzIFJhbmdlOwogY2xhc3MgUmVnaXN0ZXJlZEV2ZW50TGlzdGVuZXI7Ci1jbGFzcyBS
ZW5kZXJBcmVuYTsKIGNsYXNzIFJlbmRlclZpZXc7CiBjbGFzcyBSZW5kZXJGdWxsU2NyZWVuOwog
Y2xhc3MgU2NyaXB0YWJsZURvY3VtZW50UGFyc2VyOwpAQCAtNTQ5LDcgKzU0OCw2IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgc3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0aXZlRE9NT2Jq
ZWN0OjpSZWFzb25Gb3JTdXNwZW5zaW9uKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgcmVz
dW1lQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1c3BlbnNpb24p
IE9WRVJSSURFOwogCi0gICAgUmVuZGVyQXJlbmEqIHJlbmRlckFyZW5hKCkgeyByZXR1cm4gbV9y
ZW5kZXJBcmVuYS5nZXQoKTsgfQogICAgIFJlbmRlclZpZXcqIHJlbmRlclZpZXcoKSBjb25zdCB7
IHJldHVybiBtX3JlbmRlclZpZXc7IH0KIAogICAgIGJvb2wgcmVuZGVyVHJlZUJlaW5nRGVzdHJv
eWVkKCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJUcmVlQmVpbmdEZXN0cm95ZWQ7IH0KQEAgLTEz
NzQsOCArMTM3Miw2IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3RpdGxlU2V0RXhwbGljaXRseTsK
ICAgICBSZWZQdHI8RWxlbWVudD4gbV90aXRsZUVsZW1lbnQ7CiAKLSAgICBzdGQ6OnVuaXF1ZV9w
dHI8UmVuZGVyQXJlbmE+IG1fcmVuZGVyQXJlbmE7Ci0KICAgICBPd25QdHI8QVhPYmplY3RDYWNo
ZT4gbV9heE9iamVjdENhY2hlOwogICAgIGNvbnN0IE93blB0cjxEb2N1bWVudE1hcmtlckNvbnRy
b2xsZXI+IG1fbWFya2VyczsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9O
b2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCmluZGV4IDMxOWM1NjIuLmQ5NTA0ZTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL05vZGUuaApAQCAtNzEsNyArNzEsNiBAQCBjbGFzcyBOb2RlUmFyZURhdGE7CiBjbGFz
cyBRdWFsaWZpZWROYW1lOwogY2xhc3MgUmFkaW9Ob2RlTGlzdDsKIGNsYXNzIFJlZ2lzdGVyZWRF
dmVudExpc3RlbmVyOwotY2xhc3MgUmVuZGVyQXJlbmE7CiBjbGFzcyBSZW5kZXJCb3g7CiBjbGFz
cyBSZW5kZXJCb3hNb2RlbE9iamVjdDsKIGNsYXNzIFJlbmRlck9iamVjdDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lu
cHV0VHlwZS5oCmluZGV4IDA3NzlhNmQuLmU0YzhhNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUu
aApAQCAtNTcsNyArNTcsNiBAQCBjbGFzcyBJY29uOwogY2xhc3MgS2V5Ym9hcmRFdmVudDsKIGNs
YXNzIE1vdXNlRXZlbnQ7CiBjbGFzcyBOb2RlOwotY2xhc3MgUmVuZGVyQXJlbmE7CiBjbGFzcyBS
ZW5kZXJTdHlsZTsKIGNsYXNzIFRvdWNoRXZlbnQ7CiBjbGFzcyBUZXh0Q29udHJvbElubmVyVGV4
dEVsZW1lbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggYTdmMThmMy4uNjkzOTU0
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtNTcsNyArNTcsNiBAQAogI2luY2x1
ZGUgIk1haW5GcmFtZS5oIgogI2luY2x1ZGUgIk92ZXJmbG93RXZlbnQuaCIKICNpbmNsdWRlICJQ
cm9ncmVzc1RyYWNrZXIuaCIKLSNpbmNsdWRlICJSZW5kZXJBcmVuYS5oIgogI2luY2x1ZGUgIlJl
bmRlckVtYmVkZGVkT2JqZWN0LmgiCiAjaW5jbHVkZSAiUmVuZGVyRnVsbFNjcmVlbi5oIgogI2lu
Y2x1ZGUgIlJlbmRlcklGcmFtZS5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
YWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKaW5kZXggMDc4M2ZlYS4uOGQ5
Mjk5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCkBAIC02Niw3ICs2Niw2IEBACiAjaW5jbHVkZSAiUGx1
Z2luVmlldy5oIgogI2luY2x1ZGUgIlBvaW50ZXJMb2NrQ29udHJvbGxlci5oIgogI2luY2x1ZGUg
IlByb2dyZXNzVHJhY2tlci5oIgotI2luY2x1ZGUgIlJlbmRlckFyZW5hLmgiCiAjaW5jbHVkZSAi
UmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgiCiAjaW5jbHVkZSAiUmVuZGVyVGhlbWUuaCIKICNpbmNs
dWRlICJSZW5kZXJWaWV3LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9B
cmVuYS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9BcmVuYS5jcHAKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDIwNzgyYzEuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vQXJlbmEuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMTg4ICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDE5OTgtMjAwMCBOZXRzY2FwZSBDb21tdW5pY2F0aW9ucyBDb3Jwb3Jh
dGlvbi4KLSAqIENvcHlyaWdodCAoQykgMjAwMy02IEFwcGxlIENvbXB1dGVyCi0gKgotICogT3Ro
ZXIgY29udHJpYnV0b3JzOgotICogICBOaWNrIEJsaWV2ZXJzIDxuaWNrYkBhZGFjZWwuY29tLmF1
PgotICogICBKZWZmIEhvc3RldGxlciA8amVmZkBuZXJkb25lLmNvbT4KLSAqICAgVG9tIFJpbmkg
PHRyaW5pQGtlcm5lbC5jcmFzaGluZy5vcmc+Ci0gKiAgIFJhZmZhZWxlIFNlbmEgPHJhZmZAbmV0
d2luZGVyLm9yZz4KLSAqCi0gKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh
biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9m
IHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCi0gKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBi
eSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKLSAqIHZlcnNpb24gMi4xIG9m
IHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgotICoK
LSAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg
YmUgdXNlZnVsLAotICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl
IGltcGxpZWQgd2FycmFudHkgb2YKLSAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCi0gKiBMZXNzZXIgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgotICoKLSAqIFlvdSBzaG91bGQgaGF2ZSByZWNl
aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKLSAqIExpY2Vuc2Ug
YWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdh
cmUKLSAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3Is
IEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQotICoKLSAqIEFsdGVybmF0aXZlbHksIHRoZSBj
b250ZW50cyBvZiB0aGlzIGZpbGUgbWF5IGJlIHVzZWQgdW5kZXIgdGhlIHRlcm1zCi0gKiBvZiBl
aXRoZXIgdGhlIE1vemlsbGEgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAxLjEsIGZvdW5kIGF0Ci0g
KiBodHRwOi8vd3d3Lm1vemlsbGEub3JnL01QTC8gKHRoZSAiTVBMIikgb3IgdGhlIEdOVSBHZW5l
cmFsIFB1YmxpYwotICogTGljZW5zZSBWZXJzaW9uIDIuMCwgZm91bmQgYXQgaHR0cDovL3d3dy5m
c2Yub3JnL2NvcHlsZWZ0L2dwbC5odG1sCi0gKiAodGhlICJHUEwiKSwgaW4gd2hpY2ggY2FzZSB0
aGUgcHJvdmlzaW9ucyBvZiB0aGUgTVBMIG9yIHRoZSBHUEwgYXJlCi0gKiBhcHBsaWNhYmxlIGlu
c3RlYWQgb2YgdGhvc2UgYWJvdmUuICBJZiB5b3Ugd2lzaCB0byBhbGxvdyB1c2Ugb2YgeW91cgot
ICogdmVyc2lvbiBvZiB0aGlzIGZpbGUgb25seSB1bmRlciB0aGUgdGVybXMgb2Ygb25lIG9mIHRo
b3NlIHR3bwotICogbGljZW5zZXMgKHRoZSBNUEwgb3IgdGhlIEdQTCkgYW5kIG5vdCB0byBhbGxv
dyBvdGhlcnMgdG8gdXNlIHlvdXIKLSAqIHZlcnNpb24gb2YgdGhpcyBmaWxlIHVuZGVyIHRoZSBM
R1BMLCBpbmRpY2F0ZSB5b3VyIGRlY2lzaW9uIGJ5Ci0gKiBkZWxldGluZ3RoZSBwcm92aXNpb25z
IGFib3ZlIGFuZCByZXBsYWNlIHRoZW0gd2l0aCB0aGUgbm90aWNlIGFuZAotICogb3RoZXIgcHJv
dmlzaW9ucyByZXF1aXJlZCBieSB0aGUgTVBMIG9yIHRoZSBHUEwsIGFzIHRoZSBjYXNlIG1heSBi
ZS4KLSAqIElmIHlvdSBkbyBub3QgZGVsZXRlIHRoZSBwcm92aXNpb25zIGFib3ZlLCBhIHJlY2lw
aWVudCBtYXkgdXNlIHlvdXIKLSAqIHZlcnNpb24gb2YgdGhpcyBmaWxlIHVuZGVyIGFueSBvZiB0
aGUgTEdQTCwgdGhlIE1QTCBvciB0aGUgR1BMLgotICovCi0KLS8qCi0gKiBMaWZldGltZS1iYXNl
ZCBmYXN0IGFsbG9jYXRpb24sIGluc3BpcmVkIGJ5IG11Y2ggcHJpb3IgYXJ0LCBpbmNsdWRpbmcK
LSAqICJGYXN0IEFsbG9jYXRpb24gYW5kIERlYWxsb2NhdGlvbiBvZiBNZW1vcnkgQmFzZWQgb24g
T2JqZWN0IExpZmV0aW1lcyIKLSAqIERhdmlkIFIuIEhhbnNvbiwgU29mdHdhcmUgLS0gUHJhY3Rp
Y2UgYW5kIEV4cGVyaWVuY2UsIFZvbC4gMjAoMSkuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkFyZW5hLmgiCi0KLSNpbmNsdWRlIDxhbGdvcml0aG0+Ci0jaW5jbHVkZSA8
c3RkbGliLmg+Ci0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0jaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMu
aD4KLSNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgotCi11c2luZyBuYW1lc3BhY2Ugc3RkOwot
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLSNpZmRlZiBERUJVR19BUkVOQV9NQUxMT0MKLXN0YXRp
YyBpbnQgaSA9IDA7Ci0jZW5kaWYKLQotI2RlZmluZSBBUkVOQV9ERUZBVUxUX0FMSUdOIHNpemVv
Zihkb3VibGUpCi0jZGVmaW5lIEJJVChuKSAoKHVuc2lnbmVkIGludCkxIDw8IChuKSkKLSNkZWZp
bmUgQklUTUFTSyhuKSAoQklUKG4pIC0gMSkKLSNkZWZpbmUgQ0VJTElOR19MT0cyKF9sb2cyLCBf
bikgICBcCi0gICAgdW5zaWduZWQgaW50IGpfID0gKHVuc2lnbmVkIGludCkoX24pOyAgIFwKLSAg
ICAoX2xvZzIpID0gMDsgICAgICAgICAgICAgICAgICAgIFwKLSAgICBpZiAoKGpfKSAmICgoal8p
LTEpKSAgICAgICAgICAgIFwKLSAgICAgICAgKF9sb2cyKSArPSAxOyAgICAgICAgICAgICAgIFwK
LSAgICBpZiAoKGpfKSA+PiAxNikgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgKF9sb2cyKSAr
PSAxNiwgKGpfKSA+Pj0gMTY7IFwKLSAgICBpZiAoKGpfKSA+PiA4KSAgICAgICAgICAgICAgICAg
IFwKLSAgICAgICAgKF9sb2cyKSArPSA4LCAoal8pID4+PSA4OyAgIFwKLSAgICBpZiAoKGpfKSA+
PiA0KSAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgKF9sb2cyKSArPSA0LCAoal8pID4+PSA0
OyAgIFwKLSAgICBpZiAoKGpfKSA+PiAyKSAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgKF9s
b2cyKSArPSAyLCAoal8pID4+PSAyOyAgIFwKLSAgICBpZiAoKGpfKSA+PiAxKSAgICAgICAgICAg
ICAgICAgIFwKLSAgICAgICAgKF9sb2cyKSArPSAxOwotI2RlZmluZSBGUkVFX1BBVFRFUk4gMHhE
QQotCi1zdGF0aWMgaW50IENlaWxpbmdMb2cyKHVuc2lnbmVkIGludCBpKSB7Ci0gICAgaW50IGxv
ZzI7Ci0gICAgQ0VJTElOR19MT0cyKGxvZzIsIGkpOwotICAgIHJldHVybiBsb2cyOwotfQotCi12
b2lkIEluaXRBcmVuYVBvb2woQXJlbmFQb29sKiBwb29sLCBjb25zdCBjaGFyKiwgdW5zaWduZWQg
c2l6ZSwgdW5zaWduZWQgYWxpZ24pCi17Ci0gICAgIGlmIChhbGlnbiA9PSAwKQotICAgICAgICAg
YWxpZ24gPSBBUkVOQV9ERUZBVUxUX0FMSUdOOwotICAgICBwb29sLT5tYXNrID0gQklUTUFTSyhD
ZWlsaW5nTG9nMihhbGlnbikpOwotICAgICBwb29sLT5maXJzdC5uZXh0ID0gTlVMTDsKLSAgICAg
cG9vbC0+Zmlyc3QuYmFzZSA9IHBvb2wtPmZpcnN0LmF2YWlsID0gcG9vbC0+Zmlyc3QubGltaXQg
PSAodXdvcmQpQVJFTkFfQUxJR04oJnBvb2wtPmZpcnN0ICsgMSk7Ci0gICAgIHBvb2wtPmN1cnJl
bnQgPSAmcG9vbC0+Zmlyc3Q7Ci0gICAgIHBvb2wtPmFyZW5hc2l6ZSA9IHNpemU7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIAotfQotCi12b2lkKiBBcmVuYUFsbG9jYXRlKEFyZW5h
UG9vbCogcG9vbCwgdW5zaWduZWQgaW50IG51bUJ5dGVzLCB1bnNpZ25lZCBpbnQmIGJ5dGVzQWxs
b2NhdGVkKQotewotICAgIEFyZW5hKiBhcmVuYTsKLSAgICBjaGFyKiByZXR1cm5Qb2ludGVyOwot
Ci0gICAgQVNTRVJUKChudW1CeXRlcyAmIHBvb2wtPm1hc2spID09IDApOwotICAgIAotICAgIG51
bUJ5dGVzID0gKHV3b3JkKUFSRU5BX0FMSUdOKG51bUJ5dGVzKTsKLQotICAgIC8vIGF0dGVtcHQg
dG8gYWxsb2NhdGUgZnJvbSBhcmVuYXMgYXQgcG9vbC0+Y3VycmVudAotICAgIHsKLSAgICAgICAg
YXJlbmEgPSBwb29sLT5jdXJyZW50OwotICAgICAgICBkbyB7Ci0gICAgICAgICAgICBpZiAoYXJl
bmEtPmF2YWlsICsgbnVtQnl0ZXMgPD0gYXJlbmEtPmxpbWl0KSAgewotICAgICAgICAgICAgICAg
IHBvb2wtPmN1cnJlbnQgPSBhcmVuYTsKLSAgICAgICAgICAgICAgICByZXR1cm5Qb2ludGVyID0g
KGNoYXIgKilhcmVuYS0+YXZhaWw7Ci0gICAgICAgICAgICAgICAgYXJlbmEtPmF2YWlsICs9IG51
bUJ5dGVzOwotICAgICAgICAgICAgICAgIHJldHVybiByZXR1cm5Qb2ludGVyOwotICAgICAgICAg
ICAgfQotICAgICAgICB9IHdoaWxlIChOVUxMICE9IChhcmVuYSA9IGFyZW5hLT5uZXh0KSk7Ci0g
ICAgfQotCi0gICAgLy8gYXR0ZW1wdCB0byBhbGxvY2F0ZSBmcm9tIHRoZSBoZWFwCi0gICAgeyAg
Ci0gICAgICAgIHVuc2lnbmVkIGludCBzaXplID0gbWF4KHBvb2wtPmFyZW5hc2l6ZSwgbnVtQnl0
ZXMpOwotICAgICAgICBzaXplICs9IHNpemVvZiAqYXJlbmEgKyBwb29sLT5tYXNrOyAgLyogaGVh
ZGVyIGFuZCBhbGlnbm1lbnQgc2xvcCAqLwotI2lmZGVmIERFQlVHX0FSRU5BX01BTExPQwotICAg
ICAgICBpKys7Ci0gICAgICAgIHByaW50ZigiTWFsbG9jOiAlZFxuIiwgaSk7Ci0jZW5kaWYKLSAg
ICAgICAgYnl0ZXNBbGxvY2F0ZWQgPSBzaXplOwotICAgICAgICBhcmVuYSA9IChBcmVuYSopZmFz
dE1hbGxvYyhzaXplKTsKLSAgICAgICAgLy8gZmFzdE1hbGxvYyB3aWxsIGFib3J0KCkgaWYgaXQg
ZmFpbHMsIHNvIHdlIGFyZSBndWFyYW50ZWVkIHRoYXQgYSBpcyBub3QgMC4KLSAgICAgICAgYXJl
bmEtPmxpbWl0ID0gKHV3b3JkKWFyZW5hICsgc2l6ZTsKLSAgICAgICAgYXJlbmEtPmJhc2UgPSBh
cmVuYS0+YXZhaWwgPSAodXdvcmQpQVJFTkFfQUxJR04oYXJlbmEgKyAxKTsKLSAgICAgICAgcmV0
dXJuUG9pbnRlciA9IChjaGFyICopYXJlbmEtPmF2YWlsOwotICAgICAgICBhcmVuYS0+YXZhaWwg
Kz0gbnVtQnl0ZXM7Ci0gICAgICAgIC8vIHRoZSBuZXdseSBhbGxvY2F0ZWQgYXJlbmEgaXMgbGlu
a2VkIGFmdGVyIHBvb2wtPmN1cnJlbnQgYW5kIGJlY29tZXMgcG9vbC0+Y3VycmVudC4KLSAgICAg
ICAgYXJlbmEtPm5leHQgPSBwb29sLT5jdXJyZW50LT5uZXh0OwotICAgICAgICBwb29sLT5jdXJy
ZW50LT5uZXh0ID0gYXJlbmE7Ci0gICAgICAgIHBvb2wtPmN1cnJlbnQgPSBhcmVuYTsKLSAgICAg
ICAgaWYgKCFwb29sLT5maXJzdC5uZXh0KQotICAgICAgICAgICAgcG9vbC0+Zmlyc3QubmV4dCA9
IGFyZW5hOwotICAgICAgICByZXR1cm4ocmV0dXJuUG9pbnRlcik7Ci0gICAgfQotfQotCi0vLyBG
cmVlIHRhaWwgYXJlbmFzIGxpbmtlZCBhZnRlciBoZWFkLCB3aGljaCBtYXkgbm90IGJlIHRoZSB0
cnVlIGxpc3QgaGVhZC4KLS8vIFJlc2V0IHBvb2wtPmN1cnJlbnQgdG8gcG9pbnQgdG8gaGVhZCBp
biBjYXNlIGl0IHBvaW50ZWQgYXQgYSB0YWlsIGFyZW5hLgotc3RhdGljIHZvaWQgRnJlZUFyZW5h
TGlzdChBcmVuYVBvb2wqIHBvb2wsIEFyZW5hKiBoZWFkKQotewotICAgIEFyZW5hKiogYXJlbmFQ
b2ludGVyID0gJmhlYWQtPm5leHQ7Ci0gICAgQXJlbmEqIGFyZW5hID0gKmFyZW5hUG9pbnRlcjsK
LSAgICBpZiAoIWFyZW5hKQotICAgICAgICByZXR1cm47Ci0KLSNpZmRlZiBERUJVRwotICAgIGRv
IHsKLSAgICAgICAgQVNTRVJUKGFyZW5hLT5iYXNlIDw9IGFyZW5hLT5hdmFpbCAmJiBhcmVuYS0+
YXZhaWwgPD0gYXJlbmEtPmxpbWl0KTsKLSAgICAgICAgYXJlbmEtPmF2YWlsID0gYXJlbmEtPmJh
c2U7Ci0gICAgICAgIG1lbXNldCgodm9pZCopKGFyZW5hKS0+YXZhaWwsIEZSRUVfUEFUVEVSTiwg
KGFyZW5hKS0+bGltaXQgLSAoYXJlbmEpLT5hdmFpbCkKLSAgICB9IHdoaWxlICgoYXJlbmEgPSBh
cmVuYS0+bmV4dCkgIT0gMCk7Ci0gICAgYXJlbmEgPSAqYXJlbmFQb2ludGVyOwotI2VuZGlmCi0K
LSAgICBkbyB7Ci0gICAgICAgICphcmVuYVBvaW50ZXIgPSBhcmVuYS0+bmV4dDsKLQotI2lmZGVm
IERFQlVHICAgICAgICAKLSAgICAgICAgbWVtc2V0KCh2b2lkKikoYXJlbmEpLCBGUkVFX1BBVFRF
Uk4sIChhcmVuYSktPmxpbWl0IC0gKHV3b3JkKShhcmVuYSkpOwotI2VuZGlmCi0KLSNpZmRlZiBE
RUJVR19BUkVOQV9NQUxMT0MKLSAgICAgICAgaS0tOwotICAgICAgICBwcmludGYoIkZyZWU6ICVk
XG4iLCBpKTsKLSNlbmRpZgotCi0gICAgICAgIGZhc3RGcmVlKGFyZW5hKTsKLSAgICAgICAgYXJl
bmEgPSAwOwotICAgIH0gd2hpbGUgKChhcmVuYSA9ICphcmVuYVBvaW50ZXIpICE9IDApOwotICAg
IHBvb2wtPmN1cnJlbnQgPSBoZWFkOwotfQotCi12b2lkIEZpbmlzaEFyZW5hUG9vbChBcmVuYVBv
b2wqIHBvb2wpCi17Ci0gICAgRnJlZUFyZW5hTGlzdChwb29sLCAmcG9vbC0+Zmlyc3QpOwotfQot
Ci19CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9BcmVuYS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vQXJlbmEuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YzExODVlNC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9BcmVuYS5oCisr
KyAvZGV2L251bGwKQEAgLTEsODkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMTk5OC0y
MDAwIE5ldHNjYXBlIENvbW11bmljYXRpb25zIENvcnBvcmF0aW9uLgotICogQ29weXJpZ2h0IChD
KSAyMDAzLTYgQXBwbGUgQ29tcHV0ZXIKLSAqIENvcHlyaWdodCAoQykgUmVzZWFyY2ggSW4gTW90
aW9uIExpbWl0ZWQgMjAxMC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBPdGhlciBjb250
cmlidXRvcnM6Ci0gKiAgIE5pY2sgQmxpZXZlcnMgPG5pY2tiQGFkYWNlbC5jb20uYXU+Ci0gKiAg
IEplZmYgSG9zdGV0bGVyIDxqZWZmQG5lcmRvbmUuY29tPgotICogICBUb20gUmluaSA8dHJpbmlA
a2VybmVsLmNyYXNoaW5nLm9yZz4KLSAqICAgUmFmZmFlbGUgU2VuYSA8cmFmZkBuZXR3aW5kZXIu
b3JnPgotICoKLSAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz
dHJpYnV0ZSBpdCBhbmQvb3IKLSAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO
VSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKLSAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotICogdmVyc2lvbiAyLjEgb2YgdGhlIExp
Y2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0gKgotICogVGhp
cyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm
dWwsCi0gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll
ZCB3YXJyYW50eSBvZgotICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKLSAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlIGZvciBtb3JlIGRldGFpbHMuCi0gKgotICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg
Y29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwotICogTGljZW5zZSBhbG9uZyB3
aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQotICog
Rm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9u
LCBNQSAgMDIxMTAtMTMwMSAgVVNBCi0gKgotICogQWx0ZXJuYXRpdmVseSwgdGhlIGNvbnRlbnRz
IG9mIHRoaXMgZmlsZSBtYXkgYmUgdXNlZCB1bmRlciB0aGUgdGVybXMKLSAqIG9mIGVpdGhlciB0
aGUgTW96aWxsYSBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDEuMSwgZm91bmQgYXQKLSAqIGh0dHA6
Ly93d3cubW96aWxsYS5vcmcvTVBMLyAodGhlICJNUEwiKSBvciB0aGUgR05VIEdlbmVyYWwgUHVi
bGljCi0gKiBMaWNlbnNlIFZlcnNpb24gMi4wLCBmb3VuZCBhdCBodHRwOi8vd3d3LmZzZi5vcmcv
Y29weWxlZnQvZ3BsLmh0bWwKLSAqICh0aGUgIkdQTCIpLCBpbiB3aGljaCBjYXNlIHRoZSBwcm92
aXNpb25zIG9mIHRoZSBNUEwgb3IgdGhlIEdQTCBhcmUKLSAqIGFwcGxpY2FibGUgaW5zdGVhZCBv
ZiB0aG9zZSBhYm92ZS4gIElmIHlvdSB3aXNoIHRvIGFsbG93IHVzZSBvZiB5b3VyCi0gKiB2ZXJz
aW9uIG9mIHRoaXMgZmlsZSBvbmx5IHVuZGVyIHRoZSB0ZXJtcyBvZiBvbmUgb2YgdGhvc2UgdHdv
Ci0gKiBsaWNlbnNlcyAodGhlIE1QTCBvciB0aGUgR1BMKSBhbmQgbm90IHRvIGFsbG93IG90aGVy
cyB0byB1c2UgeW91cgotICogdmVyc2lvbiBvZiB0aGlzIGZpbGUgdW5kZXIgdGhlIExHUEwsIGlu
ZGljYXRlIHlvdXIgZGVjaXNpb24gYnkKLSAqIGRlbGV0aW5ndGhlIHByb3Zpc2lvbnMgYWJvdmUg
YW5kIHJlcGxhY2UgdGhlbSB3aXRoIHRoZSBub3RpY2UgYW5kCi0gKiBvdGhlciBwcm92aXNpb25z
IHJlcXVpcmVkIGJ5IHRoZSBNUEwgb3IgdGhlIEdQTCwgYXMgdGhlIGNhc2UgbWF5IGJlLgotICog
SWYgeW91IGRvIG5vdCBkZWxldGUgdGhlIHByb3Zpc2lvbnMgYWJvdmUsIGEgcmVjaXBpZW50IG1h
eSB1c2UgeW91cgotICogdmVyc2lvbiBvZiB0aGlzIGZpbGUgdW5kZXIgYW55IG9mIHRoZSBMR1BM
LCB0aGUgTVBMIG9yIHRoZSBHUEwuCi0gKi8KLQotI2lmbmRlZiBBcmVuYV9oCi0jZGVmaW5lIEFy
ZW5hX2gKLQotLy8gRklYTUU6IFdlJ2QgYWx3YXlzIGxpa2UgdG8gdXNlIEFsbG9jQWxpZ25tZW50
SW50ZWdlciBmb3IgQXJlbmEgYWxpZ25tZW50Ci0vLyBidXQgdGhlcmUgaXMgY29uY2VybiBvdmVy
IHRoZSBtZW1vcnkgZ3Jvd3RoIHRoaXMgbWF5IGNhdXNlLgotI2lmZGVmIFdURl9VU0VfQVJFTkFf
QUxMT0NfQUxJR05NRU5UX0lOVEVHRVIKLSNkZWZpbmUgQVJFTkFfQUxJR05fTUFTSyAoc2l6ZW9m
KFdURjo6QWxsb2NBbGlnbm1lbnRJbnRlZ2VyKSAtIDEpCi0jZWxzZQotI2RlZmluZSBBUkVOQV9B
TElHTl9NQVNLIDMKLSNlbmRpZgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXR5cGVkZWYgdWlu
dHB0cl90IHV3b3JkOwotCi1zdHJ1Y3QgQXJlbmEgewotICAgIEFyZW5hKiBuZXh0OyAgICAgICAg
Ly8gbmV4dCBhcmVuYQotICAgIHV3b3JkIGJhc2U7ICAgICAgICAgLy8gYWxpZ25lZCBiYXNlIGFk
ZHJlc3MKLSAgICB1d29yZCBsaW1pdDsgICAgICAgIC8vIGVuZCBvZiBhcmVuYSAoMStsYXN0IGJ5
dGUpCi0gICAgdXdvcmQgYXZhaWw7ICAgICAgICAvLyBwb2ludHMgdG8gbmV4dCBhdmFpbGFibGUg
Ynl0ZSBpbiBhcmVuYQotfTsKLQotc3RydWN0IEFyZW5hUG9vbCB7Ci0gICAgQXJlbmEgZmlyc3Q7
ICAgICAgICAvLyBmaXJzdCBhcmVuYSBpbiBwb29sIGxpc3QuCi0gICAgQXJlbmEqIGN1cnJlbnQ7
ICAgICAvLyBjdXJyZW50IGFyZW5hLgotICAgIHVuc2lnbmVkIGludCBhcmVuYXNpemU7Ci0gICAg
dXdvcmQgbWFzazsgICAgICAgICAvLyBNYXNrIChwb3dlci1vZi0yIC0gMSkKLX07Ci0KLXZvaWQg
SW5pdEFyZW5hUG9vbChBcmVuYVBvb2wqLCBjb25zdCBjaGFyKiBuYW1lLCB1bnNpZ25lZCBpbnQg
c2l6ZSwgdW5zaWduZWQgaW50IGFsaWduKTsKLXZvaWQgRmluaXNoQXJlbmFQb29sKEFyZW5hUG9v
bCopOwotdm9pZCogQXJlbmFBbGxvY2F0ZShBcmVuYVBvb2wqLCB1bnNpZ25lZCBpbnQgbnVtQnl0
ZXMsIHVuc2lnbmVkIGludCYgYnl0ZXNBbGxvY2F0ZWQpOwotCi0jZGVmaW5lIEFSRU5BX0FMSUdO
KG4pICgoKHV3b3JkKShuKSArIEFSRU5BX0FMSUdOX01BU0spICYgfkFSRU5BX0FMSUdOX01BU0sp
Ci0jZGVmaW5lIElOSVRfQVJFTkFfUE9PTChwb29sLCBuYW1lLCBzaXplKSBJbml0QXJlbmFQb29s
KHBvb2wsIG5hbWUsIHNpemUsIEFSRU5BX0FMSUdOX01BU0sgKyAxKQotI2RlZmluZSBBUkVOQV9B
TExPQ0FURShwLCBwb29sLCBuYiwgYnl0ZXNBbGxvY2F0ZWQpIFwKLSAgICBBcmVuYSogX2EgPSAo
cG9vbCktPmN1cnJlbnQ7IFwKLSAgICB1bnNpZ25lZCBpbnQgX25iID0gQVJFTkFfQUxJR04obmIp
OyBcCi0gICAgdXdvcmQgX3AgPSBfYS0+YXZhaWw7IFwKLSAgICB1d29yZCBfcSA9IF9wICsgX25i
OyBcCi0gICAgaWYgKF9xID4gX2EtPmxpbWl0KSBcCi0gICAgICAgIF9wID0gKHV3b3JkKUFyZW5h
QWxsb2NhdGUocG9vbCwgX25iLCAqYnl0ZXNBbGxvY2F0ZWQpOyBcCi0gICAgZWxzZSBcCi0gICAg
ICAgIF9hLT5hdmFpbCA9IF9xOyBcCi0gICAgcCA9ICh2b2lkKilfcDsKLQotfQotCi0jZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVCb3guY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveC5jcHAKaW5kZXggNDU1NmZkNC4uZTFmMThk
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveC5jcHAKQEAgLTI2LDcgKzI2LDYg
QEAKICNpbmNsdWRlICJJbmxpbmVGbG93Qm94LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1
ZGUgIlBhaW50SW5mby5oIgotI2luY2x1ZGUgIlJlbmRlckFyZW5hLmgiCiAjaW5jbHVkZSAiUmVu
ZGVyQmxvY2tGbG93LmgiCiAjaW5jbHVkZSAiUmVuZGVyTGluZUJyZWFrLmgiCiAjaW5jbHVkZSAi
Um9vdElubGluZUJveC5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lu
bGluZVRleHRCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZVRleHRCb3gu
Y3BwCmluZGV4IGZkYTJjYWUuLmZhYWQ1MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9JbmxpbmVUZXh0Qm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
SW5saW5lVGV4dEJveC5jcHAKQEAgLTM2LDcgKzM2LDYgQEAKICNpbmNsdWRlICJQYWdlLmgiCiAj
aW5jbHVkZSAiUGFpbnRJbmZvLmgiCiAjaW5jbHVkZSAiUmVuZGVyZWREb2N1bWVudE1hcmtlci5o
IgotI2luY2x1ZGUgIlJlbmRlckFyZW5hLmgiCiAjaW5jbHVkZSAiUmVuZGVyQmxvY2suaCIKICNp
bmNsdWRlICJSZW5kZXJDb21iaW5lVGV4dC5oIgogI2luY2x1ZGUgIlJlbmRlckxpbmVCcmVhay5o
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckFyZW5hLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJBcmVuYS5jcHAKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGMxYWRlZTIuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckFyZW5hLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDE3MCArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDAzIEFwcGxlIENvbXB1dGVyLCBJbmMuCi0gKiBDb3B5cmln
aHQgKEMpIFJlc2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUG9ydGlvbnMgYXJlIENvcHlyaWdodCAoQykgMTk5OCBOZXRzY2FwZSBDb21t
dW5pY2F0aW9ucyBDb3Jwb3JhdGlvbi4KLSAqCi0gKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0
d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0gKiBtb2RpZnkgaXQgdW5kZXIg
dGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCi0gKiBMaWNlbnNlIGFz
IHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKLSAqIHZl
cnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2
ZXJzaW9uLgotICoKLSAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0
aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo
b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSAqIE1FUkNIQU5UQUJJTElUWSBvciBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCi0gKiBMZXNzZXIg
R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgotICoKLSAqIFlvdSBzaG91
bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMK
LSAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhl
IEZyZWUgU29mdHdhcmUKLSAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwg
RmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQotICoKLSAqIEFsdGVybmF0
aXZlbHksIHRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgbWF5IGJlIHVzZWQgdW5kZXIgdGhlIHRl
cm1zCi0gKiBvZiBlaXRoZXIgdGhlIE1vemlsbGEgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAxLjEs
IGZvdW5kIGF0Ci0gKiBodHRwOi8vd3d3Lm1vemlsbGEub3JnL01QTC8gKHRoZSAiTVBMIikgb3Ig
dGhlIEdOVSBHZW5lcmFsIFB1YmxpYwotICogTGljZW5zZSBWZXJzaW9uIDIuMCwgZm91bmQgYXQg
aHR0cDovL3d3dy5mc2Yub3JnL2NvcHlsZWZ0L2dwbC5odG1sCi0gKiAodGhlICJHUEwiKSwgaW4g
d2hpY2ggY2FzZSB0aGUgcHJvdmlzaW9ucyBvZiB0aGUgTVBMIG9yIHRoZSBHUEwgYXJlCi0gKiBh
cHBsaWNhYmxlIGluc3RlYWQgb2YgdGhvc2UgYWJvdmUuICBJZiB5b3Ugd2lzaCB0byBhbGxvdyB1
c2Ugb2YgeW91cgotICogdmVyc2lvbiBvZiB0aGlzIGZpbGUgb25seSB1bmRlciB0aGUgdGVybXMg
b2Ygb25lIG9mIHRob3NlIHR3bwotICogbGljZW5zZXMgKHRoZSBNUEwgb3IgdGhlIEdQTCkgYW5k
IG5vdCB0byBhbGxvdyBvdGhlcnMgdG8gdXNlIHlvdXIKLSAqIHZlcnNpb24gb2YgdGhpcyBmaWxl
IHVuZGVyIHRoZSBMR1BMLCBpbmRpY2F0ZSB5b3VyIGRlY2lzaW9uIGJ5Ci0gKiBkZWxldGluZ3Ro
ZSBwcm92aXNpb25zIGFib3ZlIGFuZCByZXBsYWNlIHRoZW0gd2l0aCB0aGUgbm90aWNlIGFuZAot
ICogb3RoZXIgcHJvdmlzaW9ucyByZXF1aXJlZCBieSB0aGUgTVBMIG9yIHRoZSBHUEwsIGFzIHRo
ZSBjYXNlIG1heSBiZS4KLSAqIElmIHlvdSBkbyBub3QgZGVsZXRlIHRoZSBwcm92aXNpb25zIGFi
b3ZlLCBhIHJlY2lwaWVudCBtYXkgdXNlIHlvdXIKLSAqIHZlcnNpb24gb2YgdGhpcyBmaWxlIHVu
ZGVyIGFueSBvZiB0aGUgTEdQTCwgdGhlIE1QTCBvciB0aGUgR1BMLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJSZW5kZXJBcmVuYS5oIgotCi0jaW5jbHVkZSA8bGltaXRz
PgotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgotI2luY2x1ZGUgPHd0
Zi9Bc3NlcnRpb25zLmg+Ci0jaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVt
YmVyLmg+Ci0KLSNkZWZpbmUgUk9VTkRVUCh4LCB5KSAoKCgoeCkrKCh5KS0xKSkvKHkpKSooeSkp
Ci0KLSNpZmRlZiBOREVCVUcKLXN0YXRpYyB2b2lkKiBNYXNrUHRyKHZvaWQqIHAsIHVpbnRwdHJf
dCBtYXNrKQotewotICAgIHJldHVybiByZWludGVycHJldF9jYXN0PHZvaWQqPihyZWludGVycHJl
dF9jYXN0PHVpbnRwdHJfdD4ocCkgXiBtYXNrKTsKLX0KLSNlbmRpZgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLSNpZm5kZWYgTkRFQlVHCi0KLWNvbnN0IGludCBzaWduYXR1cmUgPSAweERCQTAw
QUVBOwotY29uc3QgaW50IHNpZ25hdHVyZURlYWQgPSAweERCQTAwQUVEOwotCi10eXBlZGVmIHN0
cnVjdCB7Ci0gICAgUmVuZGVyQXJlbmEqIGFyZW5hOwotICAgIHNpemVfdCBzaXplOwotICAgIGlu
dCBzaWduYXR1cmU7Ci19IFJlbmRlckFyZW5hRGVidWdIZWFkZXI7Ci0KLXN0YXRpYyBjb25zdCBz
aXplX3QgZGVidWdIZWFkZXJTaXplID0gQVJFTkFfQUxJR04oc2l6ZW9mKFJlbmRlckFyZW5hRGVi
dWdIZWFkZXIpKTsKLQotI2VuZGlmCi0KLVJlbmRlckFyZW5hOjpSZW5kZXJBcmVuYSh1bnNpZ25l
ZCBhcmVuYVNpemUpCi0gICAgOiBtX3RvdGFsU2l6ZSgwKQotICAgICwgbV90b3RhbEFsbG9jYXRl
ZCgwKQotewotICAgIEFTU0VSVChhcmVuYVNpemUgPiBzaXplb2YoQXJlbmEpICsgQVJFTkFfQUxJ
R05fTUFTSyk7Ci0gICAgLy8gVGhlIHVuZGVybHlpbmcgQXJlbmEgY2xhc3MgYWxsb2NhdGVzIHNv
bWUgbWV0YWRhdGEgb24gdG9wIG9mIG91cgotICAgIC8vIHJlcXVlc3RlZCBzaXplLiBGYWN0b3Ig
dGhpcyBpbiBzbyB0aGF0IHdlIGNhbiBnZXQgcGVyZmVjdCBwb3dlci1vZi10d28KLSAgICAvLyBh
bGxvY2F0aW9uIHNpemVzIHBhc3NlZCB0byB0aGUgdW5kZXJseWluZyBtYWxsb2MoKSBjYWxsLgot
ICAgIGFyZW5hU2l6ZSAtPSAoc2l6ZW9mKEFyZW5hKSArIEFSRU5BX0FMSUdOX01BU0spOwotICAg
IC8vIEluaXRpYWxpemUgdGhlIGFyZW5hIHBvb2wKLSAgICBJTklUX0FSRU5BX1BPT0woJm1fcG9v
bCwgIlJlbmRlckFyZW5hIiwgYXJlbmFTaXplKTsKLQotICAgIC8vIFplcm8gb3V0IHRoZSByZWN5
Y2xlcnMgYXJyYXkKLSAgICBtZW1zZXQobV9yZWN5Y2xlcnMsIDAsIHNpemVvZihtX3JlY3ljbGVy
cykpOwotCi0gICAgLy8gTWFzayBmcmVlbGlzdCBwb2ludGVycyB0byBkZXRlY3QgY29ycnVwdGlv
biBhbmQgc3RvcCBmcmVlbGlzdCBzcHJheWluZy4KLSAgICAvLyBXZSB1c2UgYW4gYXJiaXRyYXkg
ZnVuY3Rpb24gYW5kIHJlbHkgb24gQVNMUiB0byByYW5kb21pemUgaXQuCi0gICAgLy8gVGhlIGZp
cnN0IHZhbHVlIGluIFJlbmRlck9iamVjdCAob3IgYW55IGNsYXNzKSBpcyBhIHZ0YWJsZSBwb2lu
dGVyLCB3aGljaAotICAgIC8vIGFsd2F5cyBvdmVybGFwcyB3aXRoIHRoZSBuZXh0IHBvaW50ZXIu
IFRoaXMgY2hhbmdlIGd1YXJhbnRlZXMgdGhhdCB0aGUKLSAgICAvLyBtYXNrZWQgdnRhYmxlL25l
eHQgcG9pbnRlciB3aWxsIG5ldmVyIHBvaW50IHRvIHZhbGlkIG1lbW9yeS4gU28sIHdlCi0gICAg
Ly8gc2hvdWxkIGltbWVkaWF0ZWx5IGNyYXNoIG9uIHRoZSBmaXJzdCBpbnZhbGlkIHZ0YWJsZSBh
Y2Nlc3MgZm9yIGEgc3RhbGUKLSAgICAvLyBSZW5kZXJPYmplY3QgcG9pbnRlci4KLSAgICAvLyBT
ZWUgaHR0cDovL2Rvd25sb2FkLmNyb3dkc3RyaWtlLmNvbS9wYXBlcnMvaGVzLWV4cGxvaXRpbmct
YS1jb2FsbWluZS5wZGYuCi0gICAgV1RGOjpjcnlwdG9ncmFwaGljYWxseVJhbmRvbVZhbHVlcygm
bV9tYXNrLCBzaXplb2YobV9tYXNrKSk7Ci0gICAgbV9tYXNrIHw9IChzdGF0aWNfY2FzdDx1aW50
cHRyX3Q+KDMpIDw8IChzdGQ6Om51bWVyaWNfbGltaXRzPHVpbnRwdHJfdD46OmRpZ2l0cyAtIDIp
KSB8IDE7Ci19Ci0KLVJlbmRlckFyZW5hOjp+UmVuZGVyQXJlbmEoKQotewotICAgIEZpbmlzaEFy
ZW5hUG9vbCgmbV9wb29sKTsKLX0KLQotdm9pZCogUmVuZGVyQXJlbmE6OmFsbG9jYXRlKHNpemVf
dCBzaXplKQotewotICAgIEFTU0VSVChzaXplIDw9IGdNYXhSZWN5Y2xlZFNpemUgLSAzMik7Ci0g
ICAgbV90b3RhbFNpemUgKz0gc2l6ZTsKLQotI2lmZGVmIEFERFJFU1NfU0FOSVRJWkVSCi0gICAg
cmV0dXJuIDo6bWFsbG9jKHNpemUpOwotI2VsaWYgIWRlZmluZWQoTkRFQlVHKQotICAgIC8vIFVz
ZSBzdGFuZGFyZCBtYWxsb2Mgc28gdGhhdCBtZW1vcnkgZGVidWdnaW5nIHRvb2xzIHdvcmsuCi0g
ICAgQVNTRVJUKHRoaXMpOwotICAgIHZvaWQqIGJsb2NrID0gOjptYWxsb2MoZGVidWdIZWFkZXJT
aXplICsgc2l6ZSk7Ci0gICAgUmVuZGVyQXJlbmFEZWJ1Z0hlYWRlciogaGVhZGVyID0gc3RhdGlj
X2Nhc3Q8UmVuZGVyQXJlbmFEZWJ1Z0hlYWRlcio+KGJsb2NrKTsKLSAgICBoZWFkZXItPmFyZW5h
ID0gdGhpczsKLSAgICBoZWFkZXItPnNpemUgPSBzaXplOwotICAgIGhlYWRlci0+c2lnbmF0dXJl
ID0gc2lnbmF0dXJlOwotICAgIHJldHVybiBzdGF0aWNfY2FzdDxjaGFyKj4oYmxvY2spICsgZGVi
dWdIZWFkZXJTaXplOwotI2Vsc2UKLSAgICAvLyBFbnN1cmUgd2UgaGF2ZSBjb3JyZWN0IGFsaWdu
bWVudCBmb3IgcG9pbnRlcnMuICBJbXBvcnRhbnQgZm9yIFRydTY0Ci0gICAgc2l6ZSA9IFJPVU5E
VVAoc2l6ZSwgc2l6ZW9mKHZvaWQqKSk7Ci0KLSAgICBjb25zdCBzaXplX3QgaW5kZXggPSBzaXpl
ID4+IGtSZWN5Y2xlclNoaWZ0OwotCi0gICAgdm9pZCogcmVzdWx0ID0gbV9yZWN5Y2xlcnNbaW5k
ZXhdOwotICAgIGlmIChyZXN1bHQpIHsKLSAgICAgICAgLy8gTmVlZCB0byBtb3ZlIHRvIHRoZSBu
ZXh0IG9iamVjdAotICAgICAgICB2b2lkKiBuZXh0ID0gTWFza1B0cigqKCh2b2lkKiopcmVzdWx0
KSwgbV9tYXNrKTsKLSAgICAgICAgbV9yZWN5Y2xlcnNbaW5kZXhdID0gbmV4dDsKLSAgICB9Ci0K
LSAgICBpZiAoIXJlc3VsdCkgewotICAgICAgICAvLyBBbGxvY2F0ZSBhIG5ldyBjaHVuayBmcm9t
IHRoZSBhcmVuYQotICAgICAgICB1bnNpZ25lZCBieXRlc0FsbG9jYXRlZCA9IDA7Ci0gICAgICAg
IEFSRU5BX0FMTE9DQVRFKHJlc3VsdCwgJm1fcG9vbCwgc2l6ZSwgJmJ5dGVzQWxsb2NhdGVkKTsK
LSAgICAgICAgbV90b3RhbEFsbG9jYXRlZCArPSBieXRlc0FsbG9jYXRlZDsKLSAgICB9Ci0KLSAg
ICByZXR1cm4gcmVzdWx0OwotI2VuZGlmCi19Ci0KLXZvaWQgUmVuZGVyQXJlbmE6OmZyZWUoc2l6
ZV90IHNpemUsIHZvaWQqIHB0cikKLXsKLSAgICBBU1NFUlQoc2l6ZSA8PSBnTWF4UmVjeWNsZWRT
aXplIC0gMzIpOwotICAgIG1fdG90YWxTaXplIC09IHNpemU7Ci0KLSNpZmRlZiBBRERSRVNTX1NB
TklUSVpFUgotICAgIDo6ZnJlZShwdHIpOwotI2VsaWYgIWRlZmluZWQoTkRFQlVHKQotICAgIC8v
IFVzZSBzdGFuZGFyZCBmcmVlIHNvIHRoYXQgbWVtb3J5IGRlYnVnZ2luZyB0b29scyB3b3JrLgot
ICAgIHZvaWQqIGJsb2NrID0gc3RhdGljX2Nhc3Q8Y2hhcio+KHB0cikgLSBkZWJ1Z0hlYWRlclNp
emU7Ci0gICAgUmVuZGVyQXJlbmFEZWJ1Z0hlYWRlciogaGVhZGVyID0gc3RhdGljX2Nhc3Q8UmVu
ZGVyQXJlbmFEZWJ1Z0hlYWRlcio+KGJsb2NrKTsKLSAgICBBU1NFUlQoaGVhZGVyLT5zaWduYXR1
cmUgPT0gc2lnbmF0dXJlKTsKLSAgICBBU1NFUlRfVU5VU0VEKHNpemUsIGhlYWRlci0+c2l6ZSA9
PSBzaXplKTsKLSAgICBBU1NFUlQoaGVhZGVyLT5hcmVuYSA9PSB0aGlzKTsKLSAgICBoZWFkZXIt
PnNpZ25hdHVyZSA9IHNpZ25hdHVyZURlYWQ7Ci0gICAgOjpmcmVlKGJsb2NrKTsKLSNlbHNlCi0g
ICAgLy8gRW5zdXJlIHdlIGhhdmUgY29ycmVjdCBhbGlnbm1lbnQgZm9yIHBvaW50ZXJzLiAgSW1w
b3J0YW50IGZvciBUcnU2NAotICAgIHNpemUgPSBST1VORFVQKHNpemUsIHNpemVvZih2b2lkKikp
OwotCi0gICAgY29uc3Qgc2l6ZV90IGluZGV4ID0gc2l6ZSA+PiBrUmVjeWNsZXJTaGlmdDsKLSAg
ICB2b2lkKiBjdXJyZW50VG9wID0gbV9yZWN5Y2xlcnNbaW5kZXhdOwotICAgIG1fcmVjeWNsZXJz
W2luZGV4XSA9IHB0cjsKLSAgICAqKCh2b2lkKiopcHRyKSA9IE1hc2tQdHIoY3VycmVudFRvcCwg
bV9tYXNrKTsKLSNlbmRpZgotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQXJlbmEuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJBcmVuYS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0
MDExYWJlLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJBcmVu
YS5oCisrKyAvZGV2L251bGwKQEAgLTEsNzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAwMyBBcHBsZSBDb21wdXRlciwgSW5jLgotICoKLSAqIFBvcnRpb25zIGFyZSBDb3B5cmlnaHQg
KEMpIDE5OTggTmV0c2NhcGUgQ29tbXVuaWNhdGlvbnMgQ29ycG9yYXRpb24uCi0gKgotICogVGhp
cyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v
cgotICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFs
IFB1YmxpYwotICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91
bmRhdGlvbjsgZWl0aGVyCi0gKiB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KLSAqCi0gKiBUaGlzIGxpYnJhcnkgaXMgZGlz
dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKLSAqIGJ1dCBXSVRI
T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCi0g
KiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQotICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0
YWlscy4KLSAqCi0gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUg
TGVzc2VyIEdlbmVyYWwgUHVibGljCi0gKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5
OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0gKiBGb3VuZGF0aW9uLCBJbmMu
LCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAx
ICBVU0EKLSAqCi0gKiBBbHRlcm5hdGl2ZWx5LCB0aGUgY29udGVudHMgb2YgdGhpcyBmaWxlIG1h
eSBiZSB1c2VkIHVuZGVyIHRoZSB0ZXJtcwotICogb2YgZWl0aGVyIHRoZSBNb3ppbGxhIFB1Ymxp
YyBMaWNlbnNlIFZlcnNpb24gMS4xLCBmb3VuZCBhdAotICogaHR0cDovL3d3dy5tb3ppbGxhLm9y
Zy9NUEwvICh0aGUgIk1QTCIpIG9yIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKLSAqIExpY2Vuc2Ug
VmVyc2lvbiAyLjAsIGZvdW5kIGF0IGh0dHA6Ly93d3cuZnNmLm9yZy9jb3B5bGVmdC9ncGwuaHRt
bAotICogKHRoZSAiR1BMIiksIGluIHdoaWNoIGNhc2UgdGhlIHByb3Zpc2lvbnMgb2YgdGhlIE1Q
TCBvciB0aGUgR1BMIGFyZQotICogYXBwbGljYWJsZSBpbnN0ZWFkIG9mIHRob3NlIGFib3ZlLiAg
SWYgeW91IHdpc2ggdG8gYWxsb3cgdXNlIG9mIHlvdXIKLSAqIHZlcnNpb24gb2YgdGhpcyBmaWxl
IG9ubHkgdW5kZXIgdGhlIHRlcm1zIG9mIG9uZSBvZiB0aG9zZSB0d28KLSAqIGxpY2Vuc2VzICh0
aGUgTVBMIG9yIHRoZSBHUEwpIGFuZCBub3QgdG8gYWxsb3cgb3RoZXJzIHRvIHVzZSB5b3VyCi0g
KiB2ZXJzaW9uIG9mIHRoaXMgZmlsZSB1bmRlciB0aGUgTEdQTCwgaW5kaWNhdGUgeW91ciBkZWNp
c2lvbiBieQotICogZGVsZXRpbmd0aGUgcHJvdmlzaW9ucyBhYm92ZSBhbmQgcmVwbGFjZSB0aGVt
IHdpdGggdGhlIG5vdGljZSBhbmQKLSAqIG90aGVyIHByb3Zpc2lvbnMgcmVxdWlyZWQgYnkgdGhl
IE1QTCBvciB0aGUgR1BMLCBhcyB0aGUgY2FzZSBtYXkgYmUuCi0gKiBJZiB5b3UgZG8gbm90IGRl
bGV0ZSB0aGUgcHJvdmlzaW9ucyBhYm92ZSwgYSByZWNpcGllbnQgbWF5IHVzZSB5b3VyCi0gKiB2
ZXJzaW9uIG9mIHRoaXMgZmlsZSB1bmRlciBhbnkgb2YgdGhlIExHUEwsIHRoZSBNUEwgb3IgdGhl
IEdQTC4KLSAqLwotCi0jaWZuZGVmIFJlbmRlckFyZW5hX2gKLSNkZWZpbmUgUmVuZGVyQXJlbmFf
aAotCi0jaW5jbHVkZSAiQXJlbmEuaCIKLSNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgotI2lu
Y2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXN0YXRp
YyBjb25zdCBzaXplX3QgZ01heFJlY3ljbGVkU2l6ZSA9IDEwMjQ7Ci0KLWNsYXNzIFJlbmRlckFy
ZW5hIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShSZW5kZXJBcmVuYSk7Ci1wdWJsaWM6Ci0g
ICAgZXhwbGljaXQgUmVuZGVyQXJlbmEodW5zaWduZWQgYXJlbmFTaXplID0gODE5Mik7Ci0gICAg
flJlbmRlckFyZW5hKCk7Ci0KLSAgICAvLyBNZW1vcnkgbWFuYWdlbWVudCBmdW5jdGlvbnMKLSAg
ICB2b2lkKiBhbGxvY2F0ZShzaXplX3QpOwotICAgIHZvaWQgZnJlZShzaXplX3QsIHZvaWQqKTsK
LQotICAgIHNpemVfdCB0b3RhbFJlbmRlckFyZW5hU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdG90
YWxTaXplOyB9Ci0gICAgc2l6ZV90IHRvdGFsUmVuZGVyQXJlbmFBbGxvY2F0ZWRCeXRlcygpIGNv
bnN0IHsgcmV0dXJuIG1fdG90YWxBbGxvY2F0ZWQ7IH0KLQotcHJpdmF0ZToKLSAgICAvLyBVbmRl
cmx5aW5nIGFyZW5hIHBvb2wKLSAgICBBcmVuYVBvb2wgbV9wb29sOwotCi0gICAgLy8gVGhlIG1h
c2sgdXNlZCB0byBzZWN1cmUgdGhlIHJlY3ljbGVkIGZyZWVsaXN0IHBvaW50ZXJzLgotICAgIHVp
bnRwdHJfdCBtX21hc2s7Ci0gICAgLy8gVGhlIHJlY3ljbGVyIGFycmF5IGlzIHNwYXJzZSB3aXRo
IHRoZSBpbmRpY2VzIGJlaW5nIG11bHRpcGxlcyBvZiB0aGUKLSAgICAvLyByb3VuZGluZyBzaXpl
LCBzaXplb2Yodm9pZCopLCBpLmUuLCAwLCA0LCA4LCAxMiwgMTYsIDIwLCAuLi4gb24gMzItYml0
LgotICAgIHN0YXRpYyBjb25zdCBzaXplX3Qga1JlY3ljbGVyU2hpZnQgPSAoc2l6ZW9mKHZvaWQq
KSA9PSA4KSA/IDMgOiAyOwotICAgIHZvaWQqIG1fcmVjeWNsZXJzW2dNYXhSZWN5Y2xlZFNpemUg
Pj4ga1JlY3ljbGVyU2hpZnRdOwotCi0gICAgc2l6ZV90IG1fdG90YWxTaXplOwotICAgIHNpemVf
dCBtX3RvdGFsQWxsb2NhdGVkOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gUmVuZGVyQXJlbmFfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJsb2NrTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2tMaW5lTGF5b3V0LmNwcAppbmRleCAzMzI5MWQ4Li5hMWI0ZDFjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcApAQCAt
MzIsNyArMzIsNiBAQAogI2luY2x1ZGUgIkxpbmVJbmZvLmgiCiAjaW5jbHVkZSAiTGluZUxheW91
dFN0YXRlLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgotI2luY2x1ZGUgIlJlbmRlckFyZW5hLmgi
CiAjaW5jbHVkZSAiUmVuZGVyQmxvY2tGbG93LmgiCiAjaW5jbHVkZSAiUmVuZGVyQ29tYmluZVRl
eHQuaCIKICNpbmNsdWRlICJSZW5kZXJDb3VudGVyLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCb3guY3BwCmluZGV4IDQwZjQzMjguLjQwNDQyNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3guY3BwCkBAIC00MCw3ICs0MCw2IEBACiAjaW5jbHVkZSAiSGl0VGVzdFJl
c3VsdC5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQYWludEluZm8uaCIKLSNpbmNs
dWRlICJSZW5kZXJBcmVuYS5oIgogI2luY2x1ZGUgIlJlbmRlckJveFJlZ2lvbkluZm8uaCIKICNp
bmNsdWRlICJSZW5kZXJGbGV4aWJsZUJveC5oIgogI2luY2x1ZGUgIlJlbmRlckZsb3dUaHJlYWQu
aCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbmxpbmUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcklubGluZS5jcHAKaW5kZXggNDYxMTUx
ZC4uYTNjNTIxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcklu
bGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcklubGluZS5jcHAK
QEAgLTI5LDcgKzI5LDYgQEAKICNpbmNsdWRlICJIaXRUZXN0UmVzdWx0LmgiCiAjaW5jbHVkZSAi
SW5saW5lVGV4dEJveC5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKLSNpbmNsdWRlICJSZW5kZXJBcmVu
YS5oIgogI2luY2x1ZGUgIlJlbmRlckJsb2NrLmgiCiAjaW5jbHVkZSAiUmVuZGVyRmxvd1RocmVh
ZC5oIgogI2luY2x1ZGUgIlJlbmRlckZ1bGxTY3JlZW4uaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDlhM2NkZDMuLmMxMzllNWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAtNzgsNyArNzgsNiBAQAogI2luY2x1ZGUg
Ik92ZXJsYXBUZXN0UmVxdWVzdENsaWVudC5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRl
ICJQbGF0Zm9ybU1vdXNlRXZlbnQuaCIKLSNpbmNsdWRlICJSZW5kZXJBcmVuYS5oIgogI2luY2x1
ZGUgIlJlbmRlckZsb3dUaHJlYWQuaCIKICNpbmNsdWRlICJSZW5kZXJHZW9tZXRyeU1hcC5oIgog
I2luY2x1ZGUgIlJlbmRlcklubGluZS5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckxpbmVCb3hMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMaW5lQm94TGlzdC5jcHAKaW5kZXggYmZkZWZhNC4uMjhjMjRjZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpbmVCb3hMaXN0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGluZUJveExpc3QuY3BwCkBAIC0zMiw3ICszMiw2
IEBACiAjaW5jbHVkZSAiSGl0VGVzdFJlc3VsdC5oIgogI2luY2x1ZGUgIklubGluZVRleHRCb3gu
aCIKICNpbmNsdWRlICJQYWludEluZm8uaCIKLSNpbmNsdWRlICJSZW5kZXJBcmVuYS5oIgogI2lu
Y2x1ZGUgIlJlbmRlckJsb2NrRmxvdy5oIgogI2luY2x1ZGUgIlJlbmRlcklubGluZS5oIgogI2lu
Y2x1ZGUgIlJlbmRlckxpbmVCcmVhay5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmNwcAppbmRleCBiNWU4NTQwLi40NGU5ZGI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyT2JqZWN0LmNwcApAQCAtNDUsNyArNDUsNiBAQAogI2luY2x1ZGUgIkxvZ2lj
YWxTZWxlY3Rpb25PZmZzZXRDYWNoZXMuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAi
UHNldWRvRWxlbWVudC5oIgotI2luY2x1ZGUgIlJlbmRlckFyZW5hLmgiCiAjaW5jbHVkZSAiUmVu
ZGVyQ291bnRlci5oIgogI2luY2x1ZGUgIlJlbmRlckZsb3dUaHJlYWQuaCIKICNpbmNsdWRlICJS
ZW5kZXJHZW9tZXRyeU1hcC5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlck9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5o
CmluZGV4IDAyOWZjMjUuLjQ2YTUxMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmgKQEAgLTI4Nyw4ICsyODcsNiBAQCBwdWJsaWM6CiAjZW5kaWYKIAogcHVibGljOgot
ICAgIFJlbmRlckFyZW5hJiByZW5kZXJBcmVuYSgpIGNvbnN0IHsgcmV0dXJuICpkb2N1bWVudCgp
LnJlbmRlckFyZW5hKCk7IH0KLQogICAgIGJvb2wgaXNQc2V1ZG9FbGVtZW50KCkgY29uc3QgeyBy
ZXR1cm4gbm9kZSgpICYmIG5vZGUoKS0+aXNQc2V1ZG9FbGVtZW50KCk7IH0KIAogICAgIGJvb2wg
aXNSZW5kZXJFbGVtZW50KCkgY29uc3QgeyByZXR1cm4gIWlzVGV4dCgpOyB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGV4dC5jcHAKaW5kZXggZWNmYWZjMy4uZmYxZjY1MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0LmNwcApAQCAtMzMsNyArMzMsNiBAQAogI2lu
Y2x1ZGUgIkh5cGhlbmF0aW9uLmgiCiAjaW5jbHVkZSAiSW5saW5lVGV4dEJveC5oIgogI2luY2x1
ZGUgIlJhbmdlLmgiCi0jaW5jbHVkZSAiUmVuZGVyQXJlbmEuaCIKICNpbmNsdWRlICJSZW5kZXJC
bG9jay5oIgogI2luY2x1ZGUgIlJlbmRlckNvbWJpbmVUZXh0LmgiCiAjaW5jbHVkZSAiUmVuZGVy
TGF5ZXIuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJpbmdB
bGxJbk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyaW5nQWxsSW5PbmUu
Y3BwCmluZGV4IDM2NjdkODIuLmE0N2Q3YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJpbmdBbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlcmluZ0FsbEluT25lLmNwcApAQCAtNDIsNyArNDIsNiBAQAogI2luY2x1ZGUgIkxh
eW91dFJlcGFpbnRlci5jcHAiCiAjaW5jbHVkZSAiTGF5b3V0U3RhdGUuY3BwIgogI2luY2x1ZGUg
IlBvaW50ZXJFdmVudHNIaXRSdWxlcy5jcHAiCi0jaW5jbHVkZSAiUmVuZGVyQXJlbmEuY3BwIgog
I2luY2x1ZGUgIlJlbmRlckJsb2NrLmNwcCIKICNpbmNsdWRlICJSZW5kZXJCbG9ja0Zsb3cuY3Bw
IgogI2luY2x1ZGUgIlJlbmRlckJsb2NrTGluZUxheW91dC5jcHAiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHAKaW5kZXggZDk3NmNmZC4uZWM0NjUyNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290SW5saW5lQm94LmNwcApAQCAtMzIsNyArMzIsNiBA
QAogI2luY2x1ZGUgIkxvZ2ljYWxTZWxlY3Rpb25PZmZzZXRDYWNoZXMuaCIKICNpbmNsdWRlICJQ
YWdlLmgiCiAjaW5jbHVkZSAiUGFpbnRJbmZvLmgiCi0jaW5jbHVkZSAiUmVuZGVyQXJlbmEuaCIK
ICNpbmNsdWRlICJSZW5kZXJGbG93VGhyZWFkLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgog
I2luY2x1ZGUgIlZlcnRpY2FsUG9zaXRpb25DYWNoZS5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKaW5kZXggMmQzMTU1MC4uNGVjMTA1ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC0z
MCw3ICszMCw2IEBACiAjaW5jbHVkZSAiRm9udFNlbGVjdG9yLmgiCiAjaW5jbHVkZSAiUGFnaW5h
dGlvbi5oIgogI2luY2x1ZGUgIlF1b3Rlc0RhdGEuaCIKLSNpbmNsdWRlICJSZW5kZXJBcmVuYS5o
IgogI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNjYWxlVHJhbnNmb3JtT3Bl
cmF0aW9uLmgiCiAjaW5jbHVkZSAiU2hhZG93RGF0YS5oIgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>