<?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>124190</bug_id>
          
          <creation_ts>2013-11-11 23:08:21 -0800</creation_ts>
          <short_desc>Web Inspector: Extract InspectorAgentRegistry from InspectorBaseAgent</short_desc>
          <delta_ts>2013-11-12 16:51:56 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>graouts</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>joepeck</cc>
    
    <cc>rakuco</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>949569</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-11-11 23:08:21 -0800</bug_when>
    <thetext>Move InspectorAgentRegistry into its own .h/.cpp for clarity.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949570</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-11-11 23:08:36 -0800</bug_when>
    <thetext>&lt;rdar://problem/15445565&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949571</commentid>
    <comment_count>2</comment_count>
      <attachid>216639</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-11-11 23:10:08 -0800</bug_when>
    <thetext>Created attachment 216639
[PATCH] Proposed Fix (Also for bots)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949822</commentid>
    <comment_count>3</comment_count>
      <attachid>216707</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-11-12 12:52:09 -0800</bug_when>
    <thetext>Created attachment 216707
[PATCH] Updated for Bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949851</commentid>
    <comment_count>4</comment_count>
      <attachid>216707</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-11-12 13:35:31 -0800</bug_when>
    <thetext>Comment on attachment 216707
[PATCH] Updated for Bots

Attachment 216707 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/22749607</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949856</commentid>
    <comment_count>5</comment_count>
      <attachid>216718</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-11-12 13:39:43 -0800</bug_when>
    <thetext>Created attachment 216718
[PATCH] Updated for Bots 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949950</commentid>
    <comment_count>6</comment_count>
      <attachid>216718</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-12 16:51:54 -0800</bug_when>
    <thetext>Comment on attachment 216718
[PATCH] Updated for Bots 2

Clearing flags on attachment: 216718

Committed r159162: &lt;http://trac.webkit.org/changeset/159162&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949951</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-12 16:51:56 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>216639</attachid>
            <date>2013-11-11 23:10:08 -0800</date>
            <delta_ts>2013-11-12 12:52:09 -0800</delta_ts>
            <desc>[PATCH] Proposed Fix (Also for bots)</desc>
            <filename>extract.patch</filename>
            <type>text/plain</type>
            <size>26709</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggN2E3MzA4ZC4uMDNkMDA4YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKQEAgLTE1NjcsOCArMTU2Nyw4IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBpbnNw
ZWN0b3IvSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLmNwcAogICAgIGluc3BlY3Rvci9JbmplY3RlZFNj
cmlwdE1vZHVsZS5jcHAKICAgICBpbnNwZWN0b3IvSW5zcGVjdG9yQWdlbnQuY3BwCisgICAgaW5z
cGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwCiAgICAgaW5zcGVjdG9yL0luc3BlY3Rv
ckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKLSAgICBpbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFn
ZW50LmNwcAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKICAgICBpbnNwZWN0
b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQuY3BwCiAgICAgaW5zcGVjdG9yL0luc3BlY3RvckNsaWVu
dC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCAxYmQ5NGNlLi45YWNkMmU0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUg
KzEsMzMgQEAKIDIwMTMtMTEtMTEgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNv
bT4KIAorICAgICAgICBXZWIgSW5zcGVjdG9yOiBFeHRyYWN0IEluc3BlY3RvckFnZW50UmVnaXN0
cnkgZnJvbSBJbnNwZWN0b3JCYXNlQWdlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyNDE5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogR05VbWFrZWZp
bGUubGlzdC5hbToKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qOgor
ICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczoKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogaW5zcGVj
dG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvckFnZW50UmVnaXN0cnk6OmFwcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JBZ2VudFJlZ2lzdHJ5OjpzZXRGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JBZ2VudFJlZ2lzdHJ5OjpjbGVhckZyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckFnZW50UmVnaXN0cnk6OnJlZ2lzdGVySW5EaXNwYXRjaGVyKToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvckFnZW50UmVnaXN0cnk6OmRpc2NhcmRBZ2VudHMpOgorICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5Lmg6IEFkZGVkLgorICAgICAgICAqIGlu
c3BlY3Rvci9JbnNwZWN0b3JBbGxJbk9uZS5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3RvckJhc2VBZ2VudC5jcHA6IFJlbW92ZWQuCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rv
ckJhc2VBZ2VudC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJm
YWNlOjpJbnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlOjp+SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlKToK
KyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oOgorICAgICAgICAqIGlu
c3BlY3Rvci9JbnNwZWN0b3JNZW1vcnlBZ2VudC5oOgorICAgICAgICAqIGluc3BlY3Rvci9Xb3Jr
ZXJJbnNwZWN0b3JDb250cm9sbGVyLmg6CisKKzIwMTMtMTEtMTEgIEpvc2VwaCBQZWNvcmFybyAg
PHBlY29yYXJvQGFwcGxlLmNvbT4KKwogICAgICAgICBXZWIgSW5zcGVjdG9yOiBSZW1vdmUgc29t
ZSB1bnVzZWQgZ2VuZXJhdGVkIGNvZGUKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyNDE3OQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVt
YWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRl
eCA3NzFmZTBjLi5kMTQ5Nzc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTM3
NTgsOSArMzc1OCwxMCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbmplY3RlZFNjcmlwdE1vZHVsZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQWdlbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQWdlbnQuaCBcCisJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVn
aXN0cnkuY3BwIFwKKwlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQWdlbnRSZWdp
c3RyeS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25D
YWNoZUFnZW50LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxp
Y2F0aW9uQ2FjaGVBZ2VudC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
QmFzZUFnZW50LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhc2VB
Z2VudC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQu
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQuaCBc
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hw
cm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagppbmRl
eCBkZDI5ZjhkLi44ZjFjOTI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZS52Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJv
ai9XZWJDb3JlLnZjeHByb2oKQEAgLTE3NDMyLDYgKzE3NDMyLDE0IEBACiAgICAgICA8RXhjbHVk
ZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQ
cm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVk
ZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQ
cm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgIDwvQ2xDb21waWxl
PgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEluc3BlY3RvckFnZW50UmVn
aXN0cnkuY3BwIj4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZp
Z3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XGluc3BlY3RvclxJbnNwZWN0b3JBbGxJbk9uZS5jcHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1
aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2lu
MzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBD
b25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRy
dWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMTc0NDgsMTQgKzE3NDU2LDYgQEAKICAgICAgIDxF
eGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0p
Jz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICAgIDxF
eGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0p
Jz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgPC9DbENv
bXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQmFz
ZUFnZW50LmNwcCI+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1
aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVk
RnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmln
dXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNs
dWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNs
dWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
LlxpbnNwZWN0b3JcSW5zcGVjdG9yQ2FudmFzQWdlbnQuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVh
c2V8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21C
dWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggNDJmNjk0ZC4u
ZWNlNWY3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNv
cmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9X
ZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtNDgwNSwxNSArNDgwNSwxNSBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEluc3BlY3RvckFnZW50LmNwcCI+CiAgICAgICA8
RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEluc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwIj4KKyAg
ICAgIDxGaWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CisgICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQWxsSW5PbmUuY3BwIj4KICAg
ICAgIDxGaWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgogICAgIDwvQ2xDb21w
aWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEluc3BlY3RvckJhc2VB
Z2VudC5jcHAiPgotICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KLSAgICA8L0NsQ29t
cGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbnNwZWN0b3JDYW52
YXNBZ2VudC5jcHAiPgogICAgICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KICAgICA8L0Ns
Q29tcGlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCA4ODJlMDUwLi41MmE3MTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMTc4LDcgKzIxNzgsNiBAQAog
CQk3QTc0RUNCRDEwMTgzOURBMDBCRjkzOUUgLyogSlNJbnNwZWN0b3JGcm9udGVuZEhvc3RDdXN0
b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0E3
NEVDQkMxMDE4MzlEQTAwQkY5MzlFIC8qIEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9tLmNw
cCAqLzsgfTsKIAkJN0FBMzY1RUUxMkU3MjY1NDAwRENBMjQyIC8qIEluc3BlY3RvclJ1bnRpbWVB
Z2VudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
QUEzNjVFRDEyRTcyNjU0MDBEQ0EyNDIgLyogSW5zcGVjdG9yUnVudGltZUFnZW50LmNwcCAqLzsg
fTsKIAkJN0FBNTFCNkUxNDgzQjYxNjAwQUQyNzUyIC8qIEluc3BlY3RvckJhc2VBZ2VudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBNTFCNkMxNDgz
QjYxNjAwQUQyNzUyIC8qIEluc3BlY3RvckJhc2VBZ2VudC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTdBQTUxQjZGMTQ4M0I2MTYwMEFEMjc1MiAv
KiBJbnNwZWN0b3JCYXNlQWdlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gN0FBNTFCNkQxNDgzQjYxNjAwQUQyNzUyIC8qIEluc3BlY3RvckJhc2VB
Z2VudC5jcHAgKi87IH07CiAJCTdBQTUxREQ1MTQ4NTA2QTkwMEFEMjc1MiAvKiBJbnNwZWN0b3JN
ZW1vcnlBZ2VudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3QUE1MUREMzE0ODUwNkE5MDBBRDI3NTIgLyogSW5zcGVjdG9yTWVtb3J5QWdlbnQuY3Bw
ICovOyB9OwogCQk3QUE1MURENjE0ODUwNkE5MDBBRDI3NTIgLyogSW5zcGVjdG9yTWVtb3J5QWdl
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBQTUx
REQ0MTQ4NTA2QTkwMEFEMjc1MiAvKiBJbnNwZWN0b3JNZW1vcnlBZ2VudC5oICovOyB9OwogCQk3
QUFCQTI1OTE0QkM2MTMzMDBBQTlBMTEgLyogRE9NRWRpdG9yLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBQUJBMjU3MTRCQzYxMzMwMEFBOUExMSAv
KiBET01FZGl0b3IuY3BwICovOyB9OwpAQCAtMzUwNSw2ICszNTA0LDggQEAKIAkJQTUxM0IzRDgx
MTRCMTY2QTAwMUM0MjlCIC8qIEtleUV2ZW50Q29jb2EubW0gaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNUM5NzREMDExNDg1RkYxMDA2NkYyQUIgLyogS2V5
RXZlbnRDb2NvYS5tbSAqLzsgfTsKIAkJQTU0QTgyRUMxNTIyOEQyRjAwQzcyQkE2IC8qIERPTU5v
ZGVQcml2YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBNTRBODJFQTE1MjI4Q0EzMDBDNzJCQTYgLyogRE9NTm9kZVByaXZhdGUuaCAqLzsgfTsKIAkJ
QTU0QTgyRjExNTIyOERGNjAwQzcyQkE2IC8qIERPTU5vZGVQcml2YXRlLmggaW4gQ29weSBHZW5l
cmF0ZWQgSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTRBODJF
QTE1MjI4Q0EzMDBDNzJCQTYgLyogRE9NTm9kZVByaXZhdGUuaCAqLzsgfTsKKwkJQTU1NkMyODgx
ODMyMDZBODAwOENCNzIwIC8qIEluc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU1NkMyODYxODMyMDZBODAwOENC
NzIwIC8qIEluc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwICovOyB9OworCQlBNTU2QzI4OTE4MzIw
NkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU1NkMyODcxODMyMDZBODAwOENCNzIwIC8q
IEluc3BlY3RvckFnZW50UmVnaXN0cnkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQlBNTczMkIwQTEzNkExNjFEMDA1QzhEN0MgLyogRGF0ZUNvbXBv
bmVudHMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTU3MzJCMDgxMzZBMTYxRDAwNUM4RDdDIC8qIERhdGVDb21wb25lbnRzLmNwcCAqLzsgfTsKIAkJ
QTU3MzJCMEIxMzZBMTYxRDAwNUM4RDdDIC8qIERhdGVDb21wb25lbnRzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTczMkIwOTEzNkExNjFEMDA1QzhE
N0MgLyogRGF0ZUNvbXBvbmVudHMuaCAqLzsgfTsKIAkJQTVBMkFGMEIxODI5NzM0MzAwREUxNzI5
IC8qIFBhZ2VEZWJ1Z2dhYmxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE1QTJBRjA5MTgyOTczNDMwMERFMTcyOSAvKiBQYWdlRGVidWdnYWJsZS5j
cHAgKi87IH07CkBAIC04OTExLDcgKzg5MTIsNiBAQAogCQk3QTc0RUNCQzEwMTgzOURBMDBCRjkz
OUUgLyogSlNJbnNwZWN0b3JGcm9udGVuZEhvc3RDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbnNwZWN0b3JGcm9udGVuZEhvc3RDdXN0b20uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUEzNjVFRDEyRTcyNjU0MDBEQ0EyNDIgLyog
SW5zcGVjdG9yUnVudGltZUFnZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEluc3BlY3RvclJ1bnRpbWVBZ2VudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTdBQTUxQjZDMTQ4M0I2MTYwMEFEMjc1MiAvKiBJbnNwZWN0b3JCYXNlQWdlbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yQmFzZUFnZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdBQTUxQjZEMTQ4M0I2MTYwMEFEMjc1MiAvKiBJ
bnNwZWN0b3JCYXNlQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSW5zcGVjdG9yQmFzZUFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0FBNTFERDMxNDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1lbW9yeUFnZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3Rvck1lbW9yeUFnZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FBNTFERDQxNDg1MDZBOTAwQUQyNzUy
IC8qIEluc3BlY3Rvck1lbW9yeUFnZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEluc3BlY3Rvck1lbW9yeUFnZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdBQUJBMjU3MTRCQzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3IuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NRWRpdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTEwMjY0LDYgKzEwMjY0LDggQEAKIAkJQTUxODIyNTQxN0UyQTBENDAwQTlC
QTFEIC8qIEluc3BlY3Rvck92ZXJsYXlQYWdlLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0gSW5zcGVjdG9yT3Zlcmxh
eVBhZ2UuY3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNTE4MjI1NTE3RTJBMEQ0
MDBBOUJBMUQgLyogSW5zcGVjdG9yT3ZlcmxheVBhZ2UuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGgg
PSBJbnNwZWN0b3JPdmVybGF5UGFnZS5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTU0QTgyRUExNTIyOENBMzAwQzcyQkE2IC8qIERPTU5vZGVQcml2YXRlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTU5vZGVQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE1NTZDMjg2MTgzMjA2QTgwMDhDQjcyMCAvKiBJbnNwZWN0b3JBZ2VudFJl
Z2lzdHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3Rv
ckFnZW50UmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTU2QzI4
NzE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE1NzMyQjA4MTM2QTE2MUQwMDVDOEQ3QyAvKiBEYXRlQ29t
cG9uZW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEYXRlQ29t
cG9uZW50cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE1NzMyQjA5MTM2QTE2
MUQwMDVDOEQ3QyAvKiBEYXRlQ29tcG9uZW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBEYXRlQ29tcG9uZW50cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlB
NUEyQUYwOTE4Mjk3MzQzMDBERTE3MjkgLyogUGFnZURlYnVnZ2FibGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZURlYnVnZ2FibGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTQzNDQsOSArMTQzNDYsMTAgQEAKIAkJCQk3QTU2M0Y5NTEy
REY1QzkxMDBGNDUzNkQgLyogSW5qZWN0ZWRTY3JpcHRTb3VyY2UuanMgKi8sCiAJCQkJNEYyRDIw
NTMxMkVBRTdCMzAwNUMyODc0IC8qIEluc3BlY3RvckFnZW50LmNwcCAqLywKIAkJCQk0RjJEMjA1
MjEyRUFFN0IzMDA1QzI4NzQgLyogSW5zcGVjdG9yQWdlbnQuaCAqLywKKwkJCQlBNTU2QzI4NjE4
MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgKi8sCisJCQkJQTU1
NkMyODcxODMyMDZBODAwOENCNzIwIC8qIEluc3BlY3RvckFnZW50UmVnaXN0cnkuaCAqLywKIAkJ
CQlCODg1RThEMjExRTA2REQyMDA5RkZCRjQgLyogSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50LmNwcCAqLywKIAkJCQlCODg1RThEMzExRTA2REQyMDA5RkZCRjQgLyogSW5zcGVjdG9yQXBw
bGljYXRpb25DYWNoZUFnZW50LmggKi8sCi0JCQkJN0FBNTFCNkQxNDgzQjYxNjAwQUQyNzUyIC8q
IEluc3BlY3RvckJhc2VBZ2VudC5jcHAgKi8sCiAJCQkJN0FBNTFCNkMxNDgzQjYxNjAwQUQyNzUy
IC8qIEluc3BlY3RvckJhc2VBZ2VudC5oICovLAogCQkJCUFBRDc2NkU4MTU3RTUwMkYwMEU4NTQy
MyAvKiBJbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAgKi8sCiAJCQkJQUFENzY2RTkxNTdFNTAyRjAw
RTg1NDIzIC8qIEluc3BlY3RvckNhbnZhc0FnZW50LmggKi8sCkBAIC0yMTg5Myw2ICsyMTg5Niw3
IEBACiAJCQkJMjlBODEyM0YwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZUhl
YWRlckNvbnRhaW5lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlBODEyMzEwRkJCOUMxRDAwNTEw
MjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZVJvdy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjVEMzFE
RkIxMUNGNjEwQjAwOUYyMkI0IC8qIEFjdGl2ZURPTUNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywK
KwkJCQlBNTU2QzI4OTE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJRTFDNERFNjkwRUE3NUMxRTAwMjNDQ0Q2IC8qIEFjdGl2ZURP
TU9iamVjdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNGN0U0OTExMzdDRDdDNzAwMUREQUU3IC8q
IEFkanVzdFZpZXdTaXplT3JOb3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0RDBDNDA2MTExNUYx
RUEwMDE4QUEzNCAvKiBBZmZpbmVUcmFuc2Zvcm0uaCBpbiBIZWFkZXJzICovLApAQCAtMjYzODEs
NyArMjYzODUsNiBAQAogCQkJCTRGMkQyMDU1MTJFQUU3QjMwMDVDMjg3NCAvKiBJbnNwZWN0b3JB
Z2VudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCODg1RThENDExRTA2REQyMDA5RkZCRjQgLyog
SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTRG
NzA3QTk5MTFFRjY3OTQwMEFDREE2OSAvKiBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlci5jcHAg
aW4gU291cmNlcyAqLywKLQkJCQk3QUE1MUI2RjE0ODNCNjE2MDBBRDI3NTIgLyogSW5zcGVjdG9y
QmFzZUFnZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUFBRDc2NkVCMTU3RTUwMkYwMEU4NTQy
MyAvKiBJbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QTFGMkI1
MjEyNkM2MUIyMDAwNkE3RTYgLyogSW5zcGVjdG9yQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUYzMzM1QkY4MTJFMDdEQzMwMEQzMzAxMSAvKiBJbnNwZWN0b3JDb25zb2xlQWdlbnQuY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0yNzYxMSw2ICsyNzYxNCw3IEBACiAJCQkJQUEyQTVBRDUxNkE0
ODYxNDAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
QTJBNUFEMzE2QTQ4NjBEMDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzRXZlbnQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQUEyQTVBRDExNkE0ODYwNzAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNp
c1V0dGVyYW5jZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlBNTU2QzI4ODE4MzIwNkE4MDA4Q0I3
MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBQTJB
NUFDRDE2QTQ4NUZBMDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQTc4RkUxM0IxMjM2NkIxMDAwQUNFOEQwIC8qIFNwZWxsQ2hlY2tlci5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCOERCREI0RDEzMEIwRjhBMDBGNUNEQjEgLyogU3BlbGxpbmdD
b3JyZWN0aW9uQ29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmNwcApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi42MGVkNDYzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwCkBAIC0wLDAgKzEsNjYg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICog
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisKKyNpbmNsdWRlICJJbnNwZWN0
b3JBZ2VudFJlZ2lzdHJ5LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordm9pZCBJbnNwZWN0
b3JBZ2VudFJlZ2lzdHJ5OjphcHBlbmQoUGFzc093blB0cjxJbnNwZWN0b3JCYXNlQWdlbnRJbnRl
cmZhY2U+IGFnZW50KQoreworICAgIG1fYWdlbnRzLmFwcGVuZChhZ2VudCk7Cit9CisKK3ZvaWQg
SW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6c2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqIGZy
b250ZW5kKQoreworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9hZ2VudHMuc2l6ZSgpOyBp
KyspCisgICAgICAgIG1fYWdlbnRzW2ldLT5zZXRGcm9udGVuZChmcm9udGVuZCk7Cit9CisKK3Zv
aWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6Y2xlYXJGcm9udGVuZCgpCit7CisgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7IGkrKykKKyAgICAgICAgbV9hZ2VudHNb
aV0tPmNsZWFyRnJvbnRlbmQoKTsKK30KKwordm9pZCBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5Ojpy
ZWdpc3RlckluRGlzcGF0Y2hlcihJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlciogZGlzcGF0Y2hl
cikKK3sKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fYWdlbnRzLnNpemUoKTsgaSsrKQor
ICAgICAgICBtX2FnZW50c1tpXS0+cmVnaXN0ZXJJbkRpc3BhdGNoZXIoZGlzcGF0Y2hlcik7Cit9
CisKK3ZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6ZGlzY2FyZEFnZW50cygpCit7CisgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7IGkrKykKKyAgICAgICAgbV9h
Z2VudHNbaV0tPmRpc2NhcmRBZ2VudCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisK
KyNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uNjA5MmUxOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbnNwZWN0b3JBZ2Vu
dFJlZ2lzdHJ5X2gKKyNkZWZpbmUgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeV9oCisKKyNpbmNsdWRl
ICJJbnNwZWN0b3JCYXNlQWdlbnQuaCIKKyNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgorI2lu
Y2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBJbnNw
ZWN0b3JCYWNrZW5kRGlzcGF0Y2hlcjsKK2NsYXNzIEluc3BlY3RvckZyb250ZW5kOworCitjbGFz
cyBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5IHsKK3B1YmxpYzoKKyAgICB2b2lkIGFwcGVuZChQYXNz
T3duUHRyPEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZT4pOworCisgICAgdm9pZCBzZXRGcm9u
dGVuZChJbnNwZWN0b3JGcm9udGVuZCopOworICAgIHZvaWQgY2xlYXJGcm9udGVuZCgpOworICAg
IHZvaWQgcmVnaXN0ZXJJbkRpc3BhdGNoZXIoSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIqKTsK
KyAgICB2b2lkIGRpc2NhcmRBZ2VudHMoKTsKKworcHJpdmF0ZToKKyAgICBWZWN0b3I8T3duUHRy
PEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZT4+IG1fYWdlbnRzOworfTsKKworfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gIWRlZmluZWQoSW5zcGVjdG9yQWdlbnRSZWdpc3Ry
eV9oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFsbElu
T25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBbGxJbk9uZS5jcHAK
aW5kZXggMTZiNWUyZC4uNTYxYjJlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFsbEluT25lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQWxsSW5PbmUuY3BwCkBAIC0zOCw3ICszOCw2IEBACiAjaW5jbHVkZSAiSW5qZWN0
ZWRTY3JpcHRNb2R1bGUuY3BwIgogI2luY2x1ZGUgIkluc3BlY3RvckFnZW50LmNwcCIKICNpbmNs
dWRlICJJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwIgotI2luY2x1ZGUgIkluc3Bl
Y3RvckJhc2VBZ2VudC5jcHAiCiAjaW5jbHVkZSAiSW5zcGVjdG9yQ1NTQWdlbnQuY3BwIgogI2lu
Y2x1ZGUgIkluc3BlY3RvckNhbnZhc0FnZW50LmNwcCIKICNpbmNsdWRlICJJbnNwZWN0b3JDbGll
bnQuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJh
c2VBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFnZW50
LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODVjNzlhYy4uMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFnZW50LmNwcAorKysgL2Rl
di9udWxsCkBAIC0xLDgwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICogUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICog
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVpdGhl
ciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQot
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUo
SU5TUEVDVE9SKQotCi0jaW5jbHVkZSAiSW5zcGVjdG9yQmFzZUFnZW50LmgiCi0KLW5hbWVzcGFj
ZSBXZWJDb3JlIHsKLQotSW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlOjpJbnNwZWN0b3JCYXNl
QWdlbnRJbnRlcmZhY2UoY29uc3QgU3RyaW5nJiBuYW1lLCBJbnN0cnVtZW50aW5nQWdlbnRzKiBp
bnN0cnVtZW50aW5nQWdlbnRzKQotICAgIDogbV9pbnN0cnVtZW50aW5nQWdlbnRzKGluc3RydW1l
bnRpbmdBZ2VudHMpCi0gICAgLCBtX25hbWUobmFtZSkKLXsKLX0KLQotSW5zcGVjdG9yQmFzZUFn
ZW50SW50ZXJmYWNlOjp+SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlKCkKLXsKLX0KLQotdm9p
ZCBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjphcHBlbmQoUGFzc093blB0cjxJbnNwZWN0b3JCYXNl
QWdlbnRJbnRlcmZhY2U+IGFnZW50KQotewotICAgIG1fYWdlbnRzLmFwcGVuZChhZ2VudCk7Ci19
Ci0KLXZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6c2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJv
bnRlbmQqIGZyb250ZW5kKQotewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9hZ2VudHMu
c2l6ZSgpOyBpKyspCi0gICAgICAgIG1fYWdlbnRzW2ldLT5zZXRGcm9udGVuZChmcm9udGVuZCk7
Ci19Ci0KLXZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6Y2xlYXJGcm9udGVuZCgpCi17Ci0g
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7IGkrKykKLSAgICAgICAg
bV9hZ2VudHNbaV0tPmNsZWFyRnJvbnRlbmQoKTsKLX0KLQotdm9pZCBJbnNwZWN0b3JBZ2VudFJl
Z2lzdHJ5OjpyZWdpc3RlckluRGlzcGF0Y2hlcihJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlciog
ZGlzcGF0Y2hlcikKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fYWdlbnRzLnNpemUo
KTsgaSsrKQotICAgICAgICBtX2FnZW50c1tpXS0+cmVnaXN0ZXJJbkRpc3BhdGNoZXIoZGlzcGF0
Y2hlcik7Ci19Ci0KLXZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6ZGlzY2FyZEFnZW50cygp
Ci17Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7IGkrKykKLSAg
ICAgICAgbV9hZ2VudHNbaV0tPmRpc2NhcmRBZ2VudCgpOwotfQotCi19IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhc2VBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckJhc2VBZ2VudC5oCmluZGV4IDk0ODNiZDUuLjI4MGI5ODQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYXNlQWdlbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFnZW50LmgKQEAgLTMz
LDggKzMzLDYgQEAKIAogI2luY2x1ZGUgIkluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyLmgiCiAj
aW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgotI2lu
Y2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAog
bmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDQsOCArNDIsMTMgQEAgY2xhc3MgSW5zdHJ1bWVudGlu
Z0FnZW50czsKIAogY2xhc3MgSW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlIHsKIHB1YmxpYzoK
LSAgICBJbnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2UoY29uc3QgU3RyaW5nJiwgSW5zdHJ1bWVu
dGluZ0FnZW50cyopOwotICAgIHZpcnR1YWwgfkluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZSgp
OworICAgIEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZShjb25zdCBTdHJpbmcmIG5hbWUsIElu
c3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMpCisgICAgICAgIDogbV9pbnN0
cnVtZW50aW5nQWdlbnRzKGluc3RydW1lbnRpbmdBZ2VudHMpCisgICAgICAgICwgbV9uYW1lKG5h
bWUpCisgICAgeworICAgIH0KKworICAgIHZpcnR1YWwgfkluc3BlY3RvckJhc2VBZ2VudEludGVy
ZmFjZSgpIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIHNldEZyb250ZW5kKEluc3BlY3RvckZyb250
ZW5kKikgeyB9CiAgICAgdmlydHVhbCB2b2lkIGNsZWFyRnJvbnRlbmQoKSB7IH0KQEAgLTYxLDE5
ICs2NCw2IEBAIHByaXZhdGU6CiAgICAgU3RyaW5nIG1fbmFtZTsKIH07CiAKLWNsYXNzIEluc3Bl
Y3RvckFnZW50UmVnaXN0cnkgewotcHVibGljOgotICAgIHZvaWQgYXBwZW5kKFBhc3NPd25QdHI8
SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlPik7Ci0KLSAgICB2b2lkIHNldEZyb250ZW5kKElu
c3BlY3RvckZyb250ZW5kKik7Ci0gICAgdm9pZCBjbGVhckZyb250ZW5kKCk7Ci0gICAgdm9pZCBy
ZWdpc3RlckluRGlzcGF0Y2hlcihJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlciopOwotICAgIHZv
aWQgZGlzY2FyZEFnZW50cygpOwotCi1wcml2YXRlOgotICAgIFZlY3RvcjxPd25QdHI8SW5zcGVj
dG9yQmFzZUFnZW50SW50ZXJmYWNlPj4gbV9hZ2VudHM7Ci19OwotCiB0ZW1wbGF0ZTx0eXBlbmFt
ZSBUPgogY2xhc3MgSW5zcGVjdG9yQmFzZUFnZW50IDogcHVibGljIEluc3BlY3RvckJhc2VBZ2Vu
dEludGVyZmFjZSB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckNvbnRyb2xsZXIuaAppbmRleCBkMGRjYzRiLi43NzRjMTNlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKQEAgLTMzLDYgKzMzLDcgQEAK
IAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCiAKKyNpbmNsdWRlICJJbnNwZWN0b3JBZ2VudFJlZ2lz
dHJ5LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yQmFzZUFnZW50LmgiCiAjaW5jbHVkZSA8d3RmL0Zv
cndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgpAQCAtNDgsNyArNDksNiBAQCBjbGFz
cyBJbmplY3RlZFNjcmlwdE1hbmFnZXI7CiBjbGFzcyBJbnNwZWN0b3JBZ2VudDsKIGNsYXNzIElu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDsKIGNsYXNzIEluc3BlY3RvckJhY2tlbmREaXNw
YXRjaGVyOwotY2xhc3MgSW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlOwogY2xhc3MgSW5zcGVj
dG9yQ2xpZW50OwogY2xhc3MgSW5zcGVjdG9yRE9NQWdlbnQ7CiBjbGFzcyBJbnNwZWN0b3JET01E
ZWJ1Z2dlckFnZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3Rvck1lbW9yeUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yTWVt
b3J5QWdlbnQuaAppbmRleCBlNzdiZjkzLi43MWQ0NzBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuaApAQCAtNDgsOCArNDgsNiBAQCB0eXBl
ZGVmIFN0cmluZyBFcnJvclN0cmluZzsKIGNsYXNzIEluc3BlY3Rvck1lbW9yeUFnZW50IDogcHVi
bGljIEluc3BlY3RvckJhc2VBZ2VudDxJbnNwZWN0b3JNZW1vcnlBZ2VudD4sIHB1YmxpYyBJbnNw
ZWN0b3JCYWNrZW5kRGlzcGF0Y2hlcjo6TWVtb3J5Q29tbWFuZEhhbmRsZXIgewogICAgIFdURl9N
QUtFX05PTkNPUFlBQkxFKEluc3BlY3Rvck1lbW9yeUFnZW50KTsKIHB1YmxpYzoKLSAgICB0eXBl
ZGVmIFZlY3RvcjxPd25QdHI8SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlPj4gSW5zcGVjdG9y
QWdlbnRzOwotCiAgICAgc3RhdGljIFBhc3NPd25QdHI8SW5zcGVjdG9yTWVtb3J5QWdlbnQ+IGNy
ZWF0ZShJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzKTsKICAgICB2aXJ0
dWFsIH5JbnNwZWN0b3JNZW1vcnlBZ2VudCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvV29ya2VySW5zcGVjdG9yQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL1dvcmtlckluc3BlY3RvckNvbnRyb2xsZXIuaAppbmRleCAwMDg4ZjFiLi4zYzkz
NzA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VySW5zcGVjdG9y
Q29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Xb3JrZXJJbnNwZWN0
b3JDb250cm9sbGVyLmgKQEAgLTMzLDYgKzMzLDcgQEAKIAogI2lmIEVOQUJMRShJTlNQRUNUT1Ip
ICYmIEVOQUJMRShXT1JLRVJTKQogCisjaW5jbHVkZSAiSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5o
IgogI2luY2x1ZGUgIkluc3BlY3RvckJhc2VBZ2VudC5oIgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFs
bG9jLmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
</data>
<flag name="review"
          id="239637"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>216707</attachid>
            <date>2013-11-12 12:52:09 -0800</date>
            <delta_ts>2013-11-12 13:39:43 -0800</delta_ts>
            <desc>[PATCH] Updated for Bots</desc>
            <filename>updated.patch</filename>
            <type>text/plain</type>
            <size>26670</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZjFlZjAwYy4uOGFkOGU1NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKQEAgLTE1NDMsOCArMTU0Myw4IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBpbnNw
ZWN0b3IvSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLmNwcAogICAgIGluc3BlY3Rvci9JbmplY3RlZFNj
cmlwdE1vZHVsZS5jcHAKICAgICBpbnNwZWN0b3IvSW5zcGVjdG9yQWdlbnQuY3BwCisgICAgaW5z
cGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwCiAgICAgaW5zcGVjdG9yL0luc3BlY3Rv
ckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKLSAgICBpbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFn
ZW50LmNwcAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKICAgICBpbnNwZWN0
b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQuY3BwCiAgICAgaW5zcGVjdG9yL0luc3BlY3RvckNsaWVu
dC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCA0OWNkNWFjLi4zNjlkYTk1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMzEgQEAKKzIwMTMtMTEtMTEgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNv
bT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBFeHRyYWN0IEluc3BlY3RvckFnZW50UmVnaXN0
cnkgZnJvbSBJbnNwZWN0b3JCYXNlQWdlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyNDE5MAorCisgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkg
SGF0Y2hlci4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1ha2Vm
aWxlLmxpc3QuYW06CisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvajoK
KyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnM6CisgICAg
ICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGluc3Bl
Y3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjphcHBlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQWdlbnRSZWdpc3RyeTo6c2V0RnJvbnRlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQWdlbnRSZWdpc3RyeTo6Y2xlYXJGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjpyZWdpc3RlckluRGlzcGF0Y2hlcik6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjpkaXNjYXJkQWdlbnRzKToKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5oOiBBZGRlZC4KKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yQWxsSW5PbmUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JCYXNlQWdlbnQuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0
b3JCYXNlQWdlbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJhc2VBZ2VudEludGVy
ZmFjZTo6SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlKToKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckJhc2VBZ2VudEludGVyZmFjZTo6fkluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZSk6
CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvV29y
a2VySW5zcGVjdG9yQ29udHJvbGxlci5oOgorCiAyMDEzLTExLTEyICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1dpbkNhaXJvXSBQcmVwYXJh
dGlvbiBmb3IgRU5BQkxFKFZJREVPKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1h
a2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4
IGQzMDkzZTEuLjg2YjhhMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxl
Lmxpc3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMzc2
MSw5ICszNzYxLDEwIEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luamVjdGVkU2NyaXB0TW9kdWxlLmggXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JBZ2VudC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JBZ2VudC5oIFwKKwlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQWdlbnRSZWdp
c3RyeS5jcHAgXAorCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lz
dHJ5LmggXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGlj
YXRpb25DYWNoZUFnZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JC
YXNlQWdlbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFn
ZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5j
cHAgXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5oIFwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHBy
b2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4
IGRkMjlmOGQuLjhmMWM5MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvagpAQCAtMTc0MzIsNiArMTc0MzIsMTQgQEAKICAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1By
b2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1By
b2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+
CisgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQWdlbnRSZWdp
c3RyeS5jcHAiPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmln
dXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJv
bUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJh
dGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWls
ZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVk
RnJvbUJ1aWxkPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
aW5zcGVjdG9yXEluc3BlY3RvckFsbEluT25lLmNwcCI+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVp
bGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4z
MiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENv
bmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1
ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CkBAIC0xNzQ0OCwxNCArMTc0NTYsNiBAQAogICAgICAgPEV4
Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4
Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICA8L0NsQ29t
cGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbnNwZWN0b3JCYXNl
QWdlbnQuY3BwIj4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZp
Z3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KLSAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XGluc3BlY3RvclxJbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAiPgogICAgICAgPEV4Y2x1ZGVkRnJv
bUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFz
ZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1
aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXx4
NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwppbmRleCA0MmY2OTRkLi5l
Y2U1ZjdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29y
ZS52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvai5maWx0ZXJzCkBAIC00ODA1LDE1ICs0ODA1LDE1IEBACiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQWdlbnQuY3BwIj4KICAgICAgIDxG
aWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29tcGls
ZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAiPgorICAg
ICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbnNwZWN0b3JBbGxJbk9uZS5jcHAiPgogICAg
ICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQuY3BwIj4KICAgICAgIDxGaWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBp
bGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQmFzZUFn
ZW50LmNwcCI+Ci0gICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgotICAgIDwvQ2xDb21w
aWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEluc3BlY3RvckNhbnZh
c0FnZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgogICAgIDwvQ2xD
b21waWxlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCmluZGV4IDZiMTM4ZDMuLmM3M2ExOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIxNzgsNyArMjE3OCw2IEBACiAJ
CTdBNzRFQ0JEMTAxODM5REEwMEJGOTM5RSAvKiBKU0luc3BlY3RvckZyb250ZW5kSG9zdEN1c3Rv
bS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QTc0
RUNCQzEwMTgzOURBMDBCRjkzOUUgLyogSlNJbnNwZWN0b3JGcm9udGVuZEhvc3RDdXN0b20uY3Bw
ICovOyB9OwogCQk3QUEzNjVFRTEyRTcyNjU0MDBEQ0EyNDIgLyogSW5zcGVjdG9yUnVudGltZUFn
ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
QTM2NUVEMTJFNzI2NTQwMERDQTI0MiAvKiBJbnNwZWN0b3JSdW50aW1lQWdlbnQuY3BwICovOyB9
OwogCQk3QUE1MUI2RTE0ODNCNjE2MDBBRDI3NTIgLyogSW5zcGVjdG9yQmFzZUFnZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUE1MUI2QzE0ODNC
NjE2MDBBRDI3NTIgLyogSW5zcGVjdG9yQmFzZUFnZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJN0FBNTFCNkYxNDgzQjYxNjAwQUQyNzUyIC8q
IEluc3BlY3RvckJhc2VBZ2VudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QUE1MUI2RDE0ODNCNjE2MDBBRDI3NTIgLyogSW5zcGVjdG9yQmFzZUFn
ZW50LmNwcCAqLzsgfTsKIAkJN0FBNTFERDUxNDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1l
bW9yeUFnZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDdBQTUxREQzMTQ4NTA2QTkwMEFEMjc1MiAvKiBJbnNwZWN0b3JNZW1vcnlBZ2VudC5jcHAg
Ki87IH07CiAJCTdBQTUxREQ2MTQ4NTA2QTkwMEFEMjc1MiAvKiBJbnNwZWN0b3JNZW1vcnlBZ2Vu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBNTFE
RDQxNDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1lbW9yeUFnZW50LmggKi87IH07CiAJCTdB
QUJBMjU5MTRCQzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBQkEyNTcxNEJDNjEzMzAwQUE5QTExIC8q
IERPTUVkaXRvci5jcHAgKi87IH07CkBAIC0zNTA1LDYgKzM1MDQsOCBAQAogCQlBNTEzQjNEODEx
NEIxNjZBMDAxQzQyOUIgLyogS2V5RXZlbnRDb2NvYS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1Qzk3NEQwMTE0ODVGRjEwMDY2RjJBQiAvKiBLZXlF
dmVudENvY29hLm1tICovOyB9OwogCQlBNTRBODJFQzE1MjI4RDJGMDBDNzJCQTYgLyogRE9NTm9k
ZVByaXZhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE1NEE4MkVBMTUyMjhDQTMwMEM3MkJBNiAvKiBET01Ob2RlUHJpdmF0ZS5oICovOyB9OwogCQlB
NTRBODJGMTE1MjI4REY2MDBDNzJCQTYgLyogRE9NTm9kZVByaXZhdGUuaCBpbiBDb3B5IEdlbmVy
YXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1NEE4MkVB
MTUyMjhDQTMwMEM3MkJBNiAvKiBET01Ob2RlUHJpdmF0ZS5oICovOyB9OworCQlBNTU2QzI4ODE4
MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTU2QzI4NjE4MzIwNkE4MDA4Q0I3
MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgKi87IH07CisJCUE1NTZDMjg5MTgzMjA2
QTgwMDhDQjcyMCAvKiBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTU2QzI4NzE4MzIwNkE4MDA4Q0I3MjAgLyog
SW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUE1NzMyQjBBMTM2QTE2MUQwMDVDOEQ3QyAvKiBEYXRlQ29tcG9u
ZW50cy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
NTczMkIwODEzNkExNjFEMDA1QzhEN0MgLyogRGF0ZUNvbXBvbmVudHMuY3BwICovOyB9OwogCQlB
NTczMkIwQjEzNkExNjFEMDA1QzhEN0MgLyogRGF0ZUNvbXBvbmVudHMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1NzMyQjA5MTM2QTE2MUQwMDVDOEQ3
QyAvKiBEYXRlQ29tcG9uZW50cy5oICovOyB9OwogCQlBNUFCQjc4NzEzQjkwNEJDMDBGMTk3RTMg
LyogTGluZUJyZWFrSXRlcmF0b3JQb29sSUNVLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBNUFCQjc4NjEzQjkwNEJDMDBGMTk3RTMgLyogTGluZUJyZWFr
SXRlcmF0b3JQb29sSUNVLmggKi87IH07CkBAIC04OTE1LDcgKzg5MTYsNiBAQAogCQk3QTc0RUNC
QzEwMTgzOURBMDBCRjkzOUUgLyogSlNJbnNwZWN0b3JGcm9udGVuZEhvc3RDdXN0b20uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbnNwZWN0b3JGcm9udGVuZEhv
c3RDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUEzNjVFRDEyRTcy
NjU0MDBEQ0EyNDIgLyogSW5zcGVjdG9yUnVudGltZUFnZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3RvclJ1bnRpbWVBZ2VudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBQTUxQjZDMTQ4M0I2MTYwMEFEMjc1MiAvKiBJbnNwZWN0
b3JCYXNlQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9y
QmFzZUFnZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdBQTUxQjZEMTQ4M0I2
MTYwMEFEMjc1MiAvKiBJbnNwZWN0b3JCYXNlQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yQmFzZUFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0FBNTFERDMxNDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1lbW9y
eUFnZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3Rv
ck1lbW9yeUFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FBNTFERDQx
NDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1lbW9yeUFnZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3Rvck1lbW9yeUFnZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTdBQUJBMjU3MTRCQzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3IuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NRWRpdG9yLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEwMjY4LDYgKzEwMjY4LDggQEAKIAkJQTUxODIy
NTQxN0UyQTBENDAwQTlCQTFEIC8qIEluc3BlY3Rvck92ZXJsYXlQYWdlLmNzcyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0g
SW5zcGVjdG9yT3ZlcmxheVBhZ2UuY3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlB
NTE4MjI1NTE3RTJBMEQ0MDBBOUJBMUQgLyogSW5zcGVjdG9yT3ZlcmxheVBhZ2UuanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmph
dmFzY3JpcHQ7IHBhdGggPSBJbnNwZWN0b3JPdmVybGF5UGFnZS5qczsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQTU0QTgyRUExNTIyOENBMzAwQzcyQkE2IC8qIERPTU5vZGVQcml2YXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTU5vZGVQcml2YXRlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NTZDMjg2MTgzMjA2QTgwMDhDQjcyMCAvKiBJ
bnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEluc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBNTU2QzI4NzE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3Ry
eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JBZ2VudFJlZ2lz
dHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE1NzMyQjA4MTM2QTE2MUQwMDVD
OEQ3QyAvKiBEYXRlQ29tcG9uZW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBEYXRlQ29tcG9uZW50cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUE1NzMyQjA5MTM2QTE2MUQwMDVDOEQ3QyAvKiBEYXRlQ29tcG9uZW50cy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRlQ29tcG9uZW50cy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBNUFCQjc4NjEzQjkwNEJDMDBGMTk3RTMgLyogTGluZUJyZWFrSXRlcmF0
b3JQb29sSUNVLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExpbmVCcmVha0l0
ZXJhdG9yUG9vbElDVS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTQzNTMsOSAr
MTQzNTUsMTAgQEAKIAkJCQkxQzQzNUNEMzE0RTg1NDRGMDA0RTEwRUEgLyogSW5zcGVjdG9yLmpz
b24gKi8sCiAJCQkJNEYyRDIwNTMxMkVBRTdCMzAwNUMyODc0IC8qIEluc3BlY3RvckFnZW50LmNw
cCAqLywKIAkJCQk0RjJEMjA1MjEyRUFFN0IzMDA1QzI4NzQgLyogSW5zcGVjdG9yQWdlbnQuaCAq
LywKKwkJCQlBNTU2QzI4NjE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3Ry
eS5jcHAgKi8sCisJCQkJQTU1NkMyODcxODMyMDZBODAwOENCNzIwIC8qIEluc3BlY3RvckFnZW50
UmVnaXN0cnkuaCAqLywKIAkJCQlCODg1RThEMjExRTA2REQyMDA5RkZCRjQgLyogSW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50LmNwcCAqLywKIAkJCQlCODg1RThEMzExRTA2REQyMDA5RkZC
RjQgLyogSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmggKi8sCi0JCQkJN0FBNTFCNkQx
NDgzQjYxNjAwQUQyNzUyIC8qIEluc3BlY3RvckJhc2VBZ2VudC5jcHAgKi8sCiAJCQkJN0FBNTFC
NkMxNDgzQjYxNjAwQUQyNzUyIC8qIEluc3BlY3RvckJhc2VBZ2VudC5oICovLAogCQkJCUFBRDc2
NkU4MTU3RTUwMkYwMEU4NTQyMyAvKiBJbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAgKi8sCiAJCQkJ
QUFENzY2RTkxNTdFNTAyRjAwRTg1NDIzIC8qIEluc3BlY3RvckNhbnZhc0FnZW50LmggKi8sCkBA
IC0yMTkwNiw2ICsyMTkwOSw3IEBACiAJCQkJMjlBODEyM0YwRkJCOUMxRDAwNTEwMjkzIC8qIEFj
Y2Vzc2liaWxpdHlUYWJsZUhlYWRlckNvbnRhaW5lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlB
ODEyMzEwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZVJvdy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQjVEMzFERkIxMUNGNjEwQjAwOUYyMkI0IC8qIEFjdGl2ZURPTUNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBNTU2QzI4OTE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVj
dG9yQWdlbnRSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTFDNERFNjkwRUE3NUMxRTAw
MjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNGN0U0OTEx
MzdDRDdDNzAwMUREQUU3IC8qIEFkanVzdFZpZXdTaXplT3JOb3QuaCBpbiBIZWFkZXJzICovLAog
CQkJCTg0RDBDNDA2MTExNUYxRUEwMDE4QUEzNCAvKiBBZmZpbmVUcmFuc2Zvcm0uaCBpbiBIZWFk
ZXJzICovLApAQCAtMjYzOTYsNyArMjY0MDAsNiBAQAogCQkJCTRGMkQyMDU1MTJFQUU3QjMwMDVD
Mjg3NCAvKiBJbnNwZWN0b3JBZ2VudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCODg1RThENDEx
RTA2REQyMDA5RkZCRjQgLyogSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTRGNzA3QTk5MTFFRjY3OTQwMEFDREE2OSAvKiBJbnNwZWN0b3JCYWNr
ZW5kRGlzcGF0Y2hlci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk3QUE1MUI2RjE0ODNCNjE2MDBB
RDI3NTIgLyogSW5zcGVjdG9yQmFzZUFnZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxRjgw
QjhBMTgzMTcyQTIwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXJDdXN0b20uY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQUFENzY2RUIxNTdFNTAyRjAwRTg1NDIzIC8qIEluc3BlY3RvckNhbnZhc0Fn
ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdBMUYyQjUyMTI2QzYxQjIwMDA2QTdFNiAvKiBJ
bnNwZWN0b3JDbGllbnQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNzYyNyw2ICsyNzYzMCw3IEBA
CiAJCQkJQUEyQTVBRDUxNkE0ODYxNDAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpcy5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlBQTJBNUFEMzE2QTQ4NjBEMDA5NzVBMjUgLyogU3BlZWNoU3ludGhl
c2lzRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQUEyQTVBRDExNkE0ODYwNzAwOTc1QTI1
IC8qIFNwZWVjaFN5bnRoZXNpc1V0dGVyYW5jZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlBNTU2
QzI4ODE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlBQTJBNUFDRDE2QTQ4NUZBMDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lz
Vm9pY2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc4RkUxM0IxMjM2NkIxMDAwQUNFOEQwIC8q
IFNwZWxsQ2hlY2tlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCOERCREI0RDEzMEIwRjhBMDBG
NUNEQjEgLyogU3BlbGxpbmdDb3JyZWN0aW9uQ29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MGVkNDYzCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnku
Y3BwCkBAIC0wLDAgKzEsNjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisK
KyNpbmNsdWRlICJJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgiCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKwordm9pZCBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjphcHBlbmQoUGFzc093blB0cjxJbnNw
ZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2U+IGFnZW50KQoreworICAgIG1fYWdlbnRzLmFwcGVuZChh
Z2VudCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6c2V0RnJvbnRlbmQoSW5z
cGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kKQoreworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
bV9hZ2VudHMuc2l6ZSgpOyBpKyspCisgICAgICAgIG1fYWdlbnRzW2ldLT5zZXRGcm9udGVuZChm
cm9udGVuZCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6Y2xlYXJGcm9udGVu
ZCgpCit7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7IGkrKykK
KyAgICAgICAgbV9hZ2VudHNbaV0tPmNsZWFyRnJvbnRlbmQoKTsKK30KKwordm9pZCBJbnNwZWN0
b3JBZ2VudFJlZ2lzdHJ5OjpyZWdpc3RlckluRGlzcGF0Y2hlcihJbnNwZWN0b3JCYWNrZW5kRGlz
cGF0Y2hlciogZGlzcGF0Y2hlcikKK3sKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fYWdl
bnRzLnNpemUoKTsgaSsrKQorICAgICAgICBtX2FnZW50c1tpXS0+cmVnaXN0ZXJJbkRpc3BhdGNo
ZXIoZGlzcGF0Y2hlcik7Cit9CisKK3ZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6ZGlzY2Fy
ZEFnZW50cygpCit7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7
IGkrKykKKyAgICAgICAgbV9hZ2VudHNbaV0tPmRpc2NhcmRBZ2VudCgpOworfQorCit9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuaCBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjA5MmUxOAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgKQEAgLTAsMCAr
MSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
CisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
bmRlZiBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5X2gKKyNkZWZpbmUgSW5zcGVjdG9yQWdlbnRSZWdp
c3RyeV9oCisKKyNpbmNsdWRlICJJbnNwZWN0b3JCYXNlQWdlbnQuaCIKKyNpbmNsdWRlIDx3dGYv
UGFzc093blB0ci5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlcjsKK2NsYXNzIEluc3BlY3Rv
ckZyb250ZW5kOworCitjbGFzcyBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5IHsKK3B1YmxpYzoKKyAg
ICB2b2lkIGFwcGVuZChQYXNzT3duUHRyPEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZT4pOwor
CisgICAgdm9pZCBzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZCopOworICAgIHZvaWQgY2xl
YXJGcm9udGVuZCgpOworICAgIHZvaWQgcmVnaXN0ZXJJbkRpc3BhdGNoZXIoSW5zcGVjdG9yQmFj
a2VuZERpc3BhdGNoZXIqKTsKKyAgICB2b2lkIGRpc2NhcmRBZ2VudHMoKTsKKworcHJpdmF0ZToK
KyAgICBWZWN0b3I8T3duUHRyPEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZT4+IG1fYWdlbnRz
OworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gIWRlZmluZWQoSW5z
cGVjdG9yQWdlbnRSZWdpc3RyeV9oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFsbEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JBbGxJbk9uZS5jcHAKaW5kZXggMTZiNWUyZC4uNTYxYjJlZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFsbEluT25lLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQWxsSW5PbmUuY3BwCkBAIC0zOCw3ICszOCw2IEBA
CiAjaW5jbHVkZSAiSW5qZWN0ZWRTY3JpcHRNb2R1bGUuY3BwIgogI2luY2x1ZGUgIkluc3BlY3Rv
ckFnZW50LmNwcCIKICNpbmNsdWRlICJJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3Bw
IgotI2luY2x1ZGUgIkluc3BlY3RvckJhc2VBZ2VudC5jcHAiCiAjaW5jbHVkZSAiSW5zcGVjdG9y
Q1NTQWdlbnQuY3BwIgogI2luY2x1ZGUgIkluc3BlY3RvckNhbnZhc0FnZW50LmNwcCIKICNpbmNs
dWRlICJJbnNwZWN0b3JDbGllbnQuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckJhc2VBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQmFzZUFnZW50LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODVj
NzlhYy4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFz
ZUFnZW50LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDgwICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgotICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9u
LgotICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVz
IG9mIGl0cwotICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAotICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
LSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmln
LmgiCi0KLSNpZiBFTkFCTEUoSU5TUEVDVE9SKQotCi0jaW5jbHVkZSAiSW5zcGVjdG9yQmFzZUFn
ZW50LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotSW5zcGVjdG9yQmFzZUFnZW50SW50ZXJm
YWNlOjpJbnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2UoY29uc3QgU3RyaW5nJiBuYW1lLCBJbnN0
cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzKQotICAgIDogbV9pbnN0cnVtZW50
aW5nQWdlbnRzKGluc3RydW1lbnRpbmdBZ2VudHMpCi0gICAgLCBtX25hbWUobmFtZSkKLXsKLX0K
LQotSW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlOjp+SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJm
YWNlKCkKLXsKLX0KLQotdm9pZCBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjphcHBlbmQoUGFzc093
blB0cjxJbnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2U+IGFnZW50KQotewotICAgIG1fYWdlbnRz
LmFwcGVuZChhZ2VudCk7Ci19Ci0KLXZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6c2V0RnJv
bnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kKQotewotICAgIGZvciAoc2l6ZV90IGkg
PSAwOyBpIDwgbV9hZ2VudHMuc2l6ZSgpOyBpKyspCi0gICAgICAgIG1fYWdlbnRzW2ldLT5zZXRG
cm9udGVuZChmcm9udGVuZCk7Ci19Ci0KLXZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6Y2xl
YXJGcm9udGVuZCgpCi17Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXpl
KCk7IGkrKykKLSAgICAgICAgbV9hZ2VudHNbaV0tPmNsZWFyRnJvbnRlbmQoKTsKLX0KLQotdm9p
ZCBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjpyZWdpc3RlckluRGlzcGF0Y2hlcihJbnNwZWN0b3JC
YWNrZW5kRGlzcGF0Y2hlciogZGlzcGF0Y2hlcikKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IG1fYWdlbnRzLnNpemUoKTsgaSsrKQotICAgICAgICBtX2FnZW50c1tpXS0+cmVnaXN0ZXJJ
bkRpc3BhdGNoZXIoZGlzcGF0Y2hlcik7Ci19Ci0KLXZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3Ry
eTo6ZGlzY2FyZEFnZW50cygpCi17Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50
cy5zaXplKCk7IGkrKykKLSAgICAgICAgbV9hZ2VudHNbaV0tPmRpc2NhcmRBZ2VudCgpOwotfQot
Ci19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhc2VBZ2VudC5o
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhc2VBZ2VudC5oCmluZGV4IDk0
ODNiZDUuLjI4MGI5ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JCYXNlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
QmFzZUFnZW50LmgKQEAgLTMzLDggKzMzLDYgQEAKIAogI2luY2x1ZGUgIkluc3BlY3RvckJhY2tl
bmREaXNwYXRjaGVyLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KLSNpbmNsdWRlIDx3dGYv
UGFzc093blB0ci5oPgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDQsOCArNDIsMTMgQEAg
Y2xhc3MgSW5zdHJ1bWVudGluZ0FnZW50czsKIAogY2xhc3MgSW5zcGVjdG9yQmFzZUFnZW50SW50
ZXJmYWNlIHsKIHB1YmxpYzoKLSAgICBJbnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2UoY29uc3Qg
U3RyaW5nJiwgSW5zdHJ1bWVudGluZ0FnZW50cyopOwotICAgIHZpcnR1YWwgfkluc3BlY3RvckJh
c2VBZ2VudEludGVyZmFjZSgpOworICAgIEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZShjb25z
dCBTdHJpbmcmIG5hbWUsIEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMp
CisgICAgICAgIDogbV9pbnN0cnVtZW50aW5nQWdlbnRzKGluc3RydW1lbnRpbmdBZ2VudHMpCisg
ICAgICAgICwgbV9uYW1lKG5hbWUpCisgICAgeworICAgIH0KKworICAgIHZpcnR1YWwgfkluc3Bl
Y3RvckJhc2VBZ2VudEludGVyZmFjZSgpIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIHNldEZyb250
ZW5kKEluc3BlY3RvckZyb250ZW5kKikgeyB9CiAgICAgdmlydHVhbCB2b2lkIGNsZWFyRnJvbnRl
bmQoKSB7IH0KQEAgLTYxLDE5ICs2NCw2IEBAIHByaXZhdGU6CiAgICAgU3RyaW5nIG1fbmFtZTsK
IH07CiAKLWNsYXNzIEluc3BlY3RvckFnZW50UmVnaXN0cnkgewotcHVibGljOgotICAgIHZvaWQg
YXBwZW5kKFBhc3NPd25QdHI8SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlPik7Ci0KLSAgICB2
b2lkIHNldEZyb250ZW5kKEluc3BlY3RvckZyb250ZW5kKik7Ci0gICAgdm9pZCBjbGVhckZyb250
ZW5kKCk7Ci0gICAgdm9pZCByZWdpc3RlckluRGlzcGF0Y2hlcihJbnNwZWN0b3JCYWNrZW5kRGlz
cGF0Y2hlciopOwotICAgIHZvaWQgZGlzY2FyZEFnZW50cygpOwotCi1wcml2YXRlOgotICAgIFZl
Y3RvcjxPd25QdHI8SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlPj4gbV9hZ2VudHM7Ci19Owot
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogY2xhc3MgSW5zcGVjdG9yQmFzZUFnZW50IDogcHVibGlj
IEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZSB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaAppbmRleCBkNDI5N2RjLi41ZjI3M2Fj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgK
QEAgLTMzLDYgKzMzLDcgQEAKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCiAKKyNpbmNsdWRlICJJ
bnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yQmFzZUFnZW50Lmgi
CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgpAQCAt
NDgsNyArNDksNiBAQCBjbGFzcyBJbmplY3RlZFNjcmlwdE1hbmFnZXI7CiBjbGFzcyBJbnNwZWN0
b3JBZ2VudDsKIGNsYXNzIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDsKIGNsYXNzIElu
c3BlY3RvckJhY2tlbmREaXNwYXRjaGVyOwotY2xhc3MgSW5zcGVjdG9yQmFzZUFnZW50SW50ZXJm
YWNlOwogY2xhc3MgSW5zcGVjdG9yQ2xpZW50OwogY2xhc3MgSW5zcGVjdG9yRE9NQWdlbnQ7CiBj
bGFzcyBJbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3Rvck1lbW9yeUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuaAppbmRleCBlNzdiZjkzLi43MWQ0NzBkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuaApAQCAt
NDgsOCArNDgsNiBAQCB0eXBlZGVmIFN0cmluZyBFcnJvclN0cmluZzsKIGNsYXNzIEluc3BlY3Rv
ck1lbW9yeUFnZW50IDogcHVibGljIEluc3BlY3RvckJhc2VBZ2VudDxJbnNwZWN0b3JNZW1vcnlB
Z2VudD4sIHB1YmxpYyBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlcjo6TWVtb3J5Q29tbWFuZEhh
bmRsZXIgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEluc3BlY3Rvck1lbW9yeUFnZW50KTsK
IHB1YmxpYzoKLSAgICB0eXBlZGVmIFZlY3RvcjxPd25QdHI8SW5zcGVjdG9yQmFzZUFnZW50SW50
ZXJmYWNlPj4gSW5zcGVjdG9yQWdlbnRzOwotCiAgICAgc3RhdGljIFBhc3NPd25QdHI8SW5zcGVj
dG9yTWVtb3J5QWdlbnQ+IGNyZWF0ZShJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5n
QWdlbnRzKTsKICAgICB2aXJ0dWFsIH5JbnNwZWN0b3JNZW1vcnlBZ2VudCgpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VySW5zcGVjdG9yQ29udHJvbGxlci5o
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1dvcmtlckluc3BlY3RvckNvbnRyb2xsZXIuaApp
bmRleCAwMDg4ZjFiLi4zYzkzNzA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvV29ya2VySW5zcGVjdG9yQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9Xb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmgKQEAgLTMzLDYgKzMzLDcgQEAKIAogI2lm
IEVOQUJMRShJTlNQRUNUT1IpICYmIEVOQUJMRShXT1JLRVJTKQogCisjaW5jbHVkZSAiSW5zcGVj
dG9yQWdlbnRSZWdpc3RyeS5oIgogI2luY2x1ZGUgIkluc3BlY3RvckJhc2VBZ2VudC5oIgogI2lu
Y2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
</data>
<flag name="commit-queue"
          id="239737"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>216718</attachid>
            <date>2013-11-12 13:39:43 -0800</date>
            <delta_ts>2013-11-12 16:51:54 -0800</delta_ts>
            <desc>[PATCH] Updated for Bots 2</desc>
            <filename>update2.patch</filename>
            <type>text/plain</type>
            <size>26747</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZjFlZjAwYy4uOGFkOGU1NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKQEAgLTE1NDMsOCArMTU0Myw4IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBpbnNw
ZWN0b3IvSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLmNwcAogICAgIGluc3BlY3Rvci9JbmplY3RlZFNj
cmlwdE1vZHVsZS5jcHAKICAgICBpbnNwZWN0b3IvSW5zcGVjdG9yQWdlbnQuY3BwCisgICAgaW5z
cGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwCiAgICAgaW5zcGVjdG9yL0luc3BlY3Rv
ckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKLSAgICBpbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFn
ZW50LmNwcAogICAgIGluc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKICAgICBpbnNwZWN0
b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQuY3BwCiAgICAgaW5zcGVjdG9yL0luc3BlY3RvckNsaWVu
dC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCA0OWNkNWFjLi4zNjlkYTk1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMzEgQEAKKzIwMTMtMTEtMTEgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNv
bT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBFeHRyYWN0IEluc3BlY3RvckFnZW50UmVnaXN0
cnkgZnJvbSBJbnNwZWN0b3JCYXNlQWdlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyNDE5MAorCisgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkg
SGF0Y2hlci4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1ha2Vm
aWxlLmxpc3QuYW06CisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvajoK
KyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnM6CisgICAg
ICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGluc3Bl
Y3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjphcHBlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQWdlbnRSZWdpc3RyeTo6c2V0RnJvbnRlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQWdlbnRSZWdpc3RyeTo6Y2xlYXJGcm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjpyZWdpc3RlckluRGlzcGF0Y2hlcik6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjpkaXNjYXJkQWdlbnRzKToKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5oOiBBZGRlZC4KKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yQWxsSW5PbmUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JCYXNlQWdlbnQuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0
b3JCYXNlQWdlbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJhc2VBZ2VudEludGVy
ZmFjZTo6SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlKToKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckJhc2VBZ2VudEludGVyZmFjZTo6fkluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZSk6
CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvV29y
a2VySW5zcGVjdG9yQ29udHJvbGxlci5oOgorCiAyMDEzLTExLTEyICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1dpbkNhaXJvXSBQcmVwYXJh
dGlvbiBmb3IgRU5BQkxFKFZJREVPKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1h
a2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4
IGQzMDkzZTEuLjg2YjhhMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxl
Lmxpc3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMzc2
MSw5ICszNzYxLDEwIEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luamVjdGVkU2NyaXB0TW9kdWxlLmggXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JBZ2VudC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JBZ2VudC5oIFwKKwlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQWdlbnRSZWdp
c3RyeS5jcHAgXAorCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lz
dHJ5LmggXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGlj
YXRpb25DYWNoZUFnZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JC
YXNlQWdlbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFn
ZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5j
cHAgXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5oIFwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHBy
b2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4
IGRkMjlmOGQuLjhmMWM5MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4
cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvagpAQCAtMTc0MzIsNiArMTc0MzIsMTQgQEAKICAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1By
b2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1By
b2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+
CisgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQWdlbnRSZWdp
c3RyeS5jcHAiPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmln
dXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJv
bUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJh
dGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWls
ZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2VfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+CisgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVk
RnJvbUJ1aWxkPgorICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
aW5zcGVjdG9yXEluc3BlY3RvckFsbEluT25lLmNwcCI+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVp
bGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4z
MiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENv
bmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1
ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CkBAIC0xNzQ0OCwxNCArMTc0NTYsNiBAQAogICAgICAgPEV4
Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4
Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSkn
PT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICA8L0NsQ29t
cGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbnNwZWN0b3JCYXNl
QWdlbnQuY3BwIj4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZp
Z3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVp
bGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9u
KXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRG
cm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1
ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29u
ZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KLSAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XGluc3BlY3RvclxJbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAiPgogICAgICAgPEV4Y2x1ZGVkRnJv
bUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFz
ZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1
aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXx4
NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwppbmRleCA0MmY2OTRkLi5l
Y2U1ZjdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29y
ZS52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvai5maWx0ZXJzCkBAIC00ODA1LDE1ICs0ODA1LDE1IEBACiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQWdlbnQuY3BwIj4KICAgICAgIDxG
aWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CisgICAgPENsQ29tcGls
ZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAiPgorICAg
ICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KKyAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbnNwZWN0b3JBbGxJbk9uZS5jcHAiPgogICAg
ICAgPEZpbHRlcj5pbnNwZWN0b3I8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGluc3BlY3RvclxJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQuY3BwIj4KICAgICAgIDxGaWx0ZXI+aW5zcGVjdG9yPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBp
bGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxpbnNwZWN0b3JcSW5zcGVjdG9yQmFzZUFn
ZW50LmNwcCI+Ci0gICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgotICAgIDwvQ2xDb21w
aWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5caW5zcGVjdG9yXEluc3BlY3RvckNhbnZh
c0FnZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmluc3BlY3RvcjwvRmlsdGVyPgogICAgIDwvQ2xD
b21waWxlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCmluZGV4IDZiMTM4ZDMuLmM3M2ExOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIxNzgsNyArMjE3OCw2IEBACiAJ
CTdBNzRFQ0JEMTAxODM5REEwMEJGOTM5RSAvKiBKU0luc3BlY3RvckZyb250ZW5kSG9zdEN1c3Rv
bS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QTc0
RUNCQzEwMTgzOURBMDBCRjkzOUUgLyogSlNJbnNwZWN0b3JGcm9udGVuZEhvc3RDdXN0b20uY3Bw
ICovOyB9OwogCQk3QUEzNjVFRTEyRTcyNjU0MDBEQ0EyNDIgLyogSW5zcGVjdG9yUnVudGltZUFn
ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
QTM2NUVEMTJFNzI2NTQwMERDQTI0MiAvKiBJbnNwZWN0b3JSdW50aW1lQWdlbnQuY3BwICovOyB9
OwogCQk3QUE1MUI2RTE0ODNCNjE2MDBBRDI3NTIgLyogSW5zcGVjdG9yQmFzZUFnZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUE1MUI2QzE0ODNC
NjE2MDBBRDI3NTIgLyogSW5zcGVjdG9yQmFzZUFnZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJN0FBNTFCNkYxNDgzQjYxNjAwQUQyNzUyIC8q
IEluc3BlY3RvckJhc2VBZ2VudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QUE1MUI2RDE0ODNCNjE2MDBBRDI3NTIgLyogSW5zcGVjdG9yQmFzZUFn
ZW50LmNwcCAqLzsgfTsKIAkJN0FBNTFERDUxNDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1l
bW9yeUFnZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDdBQTUxREQzMTQ4NTA2QTkwMEFEMjc1MiAvKiBJbnNwZWN0b3JNZW1vcnlBZ2VudC5jcHAg
Ki87IH07CiAJCTdBQTUxREQ2MTQ4NTA2QTkwMEFEMjc1MiAvKiBJbnNwZWN0b3JNZW1vcnlBZ2Vu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBNTFE
RDQxNDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1lbW9yeUFnZW50LmggKi87IH07CiAJCTdB
QUJBMjU5MTRCQzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBQkEyNTcxNEJDNjEzMzAwQUE5QTExIC8q
IERPTUVkaXRvci5jcHAgKi87IH07CkBAIC0zNTA1LDYgKzM1MDQsOCBAQAogCQlBNTEzQjNEODEx
NEIxNjZBMDAxQzQyOUIgLyogS2V5RXZlbnRDb2NvYS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1Qzk3NEQwMTE0ODVGRjEwMDY2RjJBQiAvKiBLZXlF
dmVudENvY29hLm1tICovOyB9OwogCQlBNTRBODJFQzE1MjI4RDJGMDBDNzJCQTYgLyogRE9NTm9k
ZVByaXZhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE1NEE4MkVBMTUyMjhDQTMwMEM3MkJBNiAvKiBET01Ob2RlUHJpdmF0ZS5oICovOyB9OwogCQlB
NTRBODJGMTE1MjI4REY2MDBDNzJCQTYgLyogRE9NTm9kZVByaXZhdGUuaCBpbiBDb3B5IEdlbmVy
YXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1NEE4MkVB
MTUyMjhDQTMwMEM3MkJBNiAvKiBET01Ob2RlUHJpdmF0ZS5oICovOyB9OworCQlBNTU2QzI4ODE4
MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTU2QzI4NjE4MzIwNkE4MDA4Q0I3
MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgKi87IH07CisJCUE1NTZDMjg5MTgzMjA2
QTgwMDhDQjcyMCAvKiBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTU2QzI4NzE4MzIwNkE4MDA4Q0I3MjAgLyog
SW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUE1NzMyQjBBMTM2QTE2MUQwMDVDOEQ3QyAvKiBEYXRlQ29tcG9u
ZW50cy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
NTczMkIwODEzNkExNjFEMDA1QzhEN0MgLyogRGF0ZUNvbXBvbmVudHMuY3BwICovOyB9OwogCQlB
NTczMkIwQjEzNkExNjFEMDA1QzhEN0MgLyogRGF0ZUNvbXBvbmVudHMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1NzMyQjA5MTM2QTE2MUQwMDVDOEQ3
QyAvKiBEYXRlQ29tcG9uZW50cy5oICovOyB9OwogCQlBNUFCQjc4NzEzQjkwNEJDMDBGMTk3RTMg
LyogTGluZUJyZWFrSXRlcmF0b3JQb29sSUNVLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBNUFCQjc4NjEzQjkwNEJDMDBGMTk3RTMgLyogTGluZUJyZWFr
SXRlcmF0b3JQb29sSUNVLmggKi87IH07CkBAIC04OTE1LDcgKzg5MTYsNiBAQAogCQk3QTc0RUNC
QzEwMTgzOURBMDBCRjkzOUUgLyogSlNJbnNwZWN0b3JGcm9udGVuZEhvc3RDdXN0b20uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbnNwZWN0b3JGcm9udGVuZEhv
c3RDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUEzNjVFRDEyRTcy
NjU0MDBEQ0EyNDIgLyogSW5zcGVjdG9yUnVudGltZUFnZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3RvclJ1bnRpbWVBZ2VudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBQTUxQjZDMTQ4M0I2MTYwMEFEMjc1MiAvKiBJbnNwZWN0
b3JCYXNlQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9y
QmFzZUFnZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdBQTUxQjZEMTQ4M0I2
MTYwMEFEMjc1MiAvKiBJbnNwZWN0b3JCYXNlQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yQmFzZUFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0FBNTFERDMxNDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1lbW9y
eUFnZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3Rv
ck1lbW9yeUFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FBNTFERDQx
NDg1MDZBOTAwQUQyNzUyIC8qIEluc3BlY3Rvck1lbW9yeUFnZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3Rvck1lbW9yeUFnZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTdBQUJBMjU3MTRCQzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3IuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NRWRpdG9yLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEwMjY4LDYgKzEwMjY4LDggQEAKIAkJQTUxODIy
NTQxN0UyQTBENDAwQTlCQTFEIC8qIEluc3BlY3Rvck92ZXJsYXlQYWdlLmNzcyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0g
SW5zcGVjdG9yT3ZlcmxheVBhZ2UuY3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlB
NTE4MjI1NTE3RTJBMEQ0MDBBOUJBMUQgLyogSW5zcGVjdG9yT3ZlcmxheVBhZ2UuanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmph
dmFzY3JpcHQ7IHBhdGggPSBJbnNwZWN0b3JPdmVybGF5UGFnZS5qczsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQTU0QTgyRUExNTIyOENBMzAwQzcyQkE2IC8qIERPTU5vZGVQcml2YXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTU5vZGVQcml2YXRlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NTZDMjg2MTgzMjA2QTgwMDhDQjcyMCAvKiBJ
bnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEluc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBNTU2QzI4NzE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3Ry
eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JBZ2VudFJlZ2lz
dHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE1NzMyQjA4MTM2QTE2MUQwMDVD
OEQ3QyAvKiBEYXRlQ29tcG9uZW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBEYXRlQ29tcG9uZW50cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUE1NzMyQjA5MTM2QTE2MUQwMDVDOEQ3QyAvKiBEYXRlQ29tcG9uZW50cy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRlQ29tcG9uZW50cy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBNUFCQjc4NjEzQjkwNEJDMDBGMTk3RTMgLyogTGluZUJyZWFrSXRlcmF0
b3JQb29sSUNVLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExpbmVCcmVha0l0
ZXJhdG9yUG9vbElDVS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTQzNTMsOSAr
MTQzNTUsMTAgQEAKIAkJCQkxQzQzNUNEMzE0RTg1NDRGMDA0RTEwRUEgLyogSW5zcGVjdG9yLmpz
b24gKi8sCiAJCQkJNEYyRDIwNTMxMkVBRTdCMzAwNUMyODc0IC8qIEluc3BlY3RvckFnZW50LmNw
cCAqLywKIAkJCQk0RjJEMjA1MjEyRUFFN0IzMDA1QzI4NzQgLyogSW5zcGVjdG9yQWdlbnQuaCAq
LywKKwkJCQlBNTU2QzI4NjE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3Ry
eS5jcHAgKi8sCisJCQkJQTU1NkMyODcxODMyMDZBODAwOENCNzIwIC8qIEluc3BlY3RvckFnZW50
UmVnaXN0cnkuaCAqLywKIAkJCQlCODg1RThEMjExRTA2REQyMDA5RkZCRjQgLyogSW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50LmNwcCAqLywKIAkJCQlCODg1RThEMzExRTA2REQyMDA5RkZC
RjQgLyogSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmggKi8sCi0JCQkJN0FBNTFCNkQx
NDgzQjYxNjAwQUQyNzUyIC8qIEluc3BlY3RvckJhc2VBZ2VudC5jcHAgKi8sCiAJCQkJN0FBNTFC
NkMxNDgzQjYxNjAwQUQyNzUyIC8qIEluc3BlY3RvckJhc2VBZ2VudC5oICovLAogCQkJCUFBRDc2
NkU4MTU3RTUwMkYwMEU4NTQyMyAvKiBJbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAgKi8sCiAJCQkJ
QUFENzY2RTkxNTdFNTAyRjAwRTg1NDIzIC8qIEluc3BlY3RvckNhbnZhc0FnZW50LmggKi8sCkBA
IC0yMTkwNiw2ICsyMTkwOSw3IEBACiAJCQkJMjlBODEyM0YwRkJCOUMxRDAwNTEwMjkzIC8qIEFj
Y2Vzc2liaWxpdHlUYWJsZUhlYWRlckNvbnRhaW5lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlB
ODEyMzEwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZVJvdy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQjVEMzFERkIxMUNGNjEwQjAwOUYyMkI0IC8qIEFjdGl2ZURPTUNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBNTU2QzI4OTE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVj
dG9yQWdlbnRSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTFDNERFNjkwRUE3NUMxRTAw
MjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNGN0U0OTEx
MzdDRDdDNzAwMUREQUU3IC8qIEFkanVzdFZpZXdTaXplT3JOb3QuaCBpbiBIZWFkZXJzICovLAog
CQkJCTg0RDBDNDA2MTExNUYxRUEwMDE4QUEzNCAvKiBBZmZpbmVUcmFuc2Zvcm0uaCBpbiBIZWFk
ZXJzICovLApAQCAtMjYzOTYsNyArMjY0MDAsNiBAQAogCQkJCTRGMkQyMDU1MTJFQUU3QjMwMDVD
Mjg3NCAvKiBJbnNwZWN0b3JBZ2VudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCODg1RThENDEx
RTA2REQyMDA5RkZCRjQgLyogSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTRGNzA3QTk5MTFFRjY3OTQwMEFDREE2OSAvKiBJbnNwZWN0b3JCYWNr
ZW5kRGlzcGF0Y2hlci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk3QUE1MUI2RjE0ODNCNjE2MDBB
RDI3NTIgLyogSW5zcGVjdG9yQmFzZUFnZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxRjgw
QjhBMTgzMTcyQTIwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXJDdXN0b20uY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQUFENzY2RUIxNTdFNTAyRjAwRTg1NDIzIC8qIEluc3BlY3RvckNhbnZhc0Fn
ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdBMUYyQjUyMTI2QzYxQjIwMDA2QTdFNiAvKiBJ
bnNwZWN0b3JDbGllbnQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNzYyNyw2ICsyNzYzMCw3IEBA
CiAJCQkJQUEyQTVBRDUxNkE0ODYxNDAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpcy5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlBQTJBNUFEMzE2QTQ4NjBEMDA5NzVBMjUgLyogU3BlZWNoU3ludGhl
c2lzRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQUEyQTVBRDExNkE0ODYwNzAwOTc1QTI1
IC8qIFNwZWVjaFN5bnRoZXNpc1V0dGVyYW5jZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlBNTU2
QzI4ODE4MzIwNkE4MDA4Q0I3MjAgLyogSW5zcGVjdG9yQWdlbnRSZWdpc3RyeS5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlBQTJBNUFDRDE2QTQ4NUZBMDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lz
Vm9pY2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc4RkUxM0IxMjM2NkIxMDAwQUNFOEQwIC8q
IFNwZWxsQ2hlY2tlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCOERCREI0RDEzMEIwRjhBMDBG
NUNEQjEgLyogU3BlbGxpbmdDb3JyZWN0aW9uQ29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MGVkNDYzCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnku
Y3BwCkBAIC0wLDAgKzEsNjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisK
KyNpbmNsdWRlICJJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgiCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKwordm9pZCBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjphcHBlbmQoUGFzc093blB0cjxJbnNw
ZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2U+IGFnZW50KQoreworICAgIG1fYWdlbnRzLmFwcGVuZChh
Z2VudCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6c2V0RnJvbnRlbmQoSW5z
cGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kKQoreworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
bV9hZ2VudHMuc2l6ZSgpOyBpKyspCisgICAgICAgIG1fYWdlbnRzW2ldLT5zZXRGcm9udGVuZChm
cm9udGVuZCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6Y2xlYXJGcm9udGVu
ZCgpCit7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7IGkrKykK
KyAgICAgICAgbV9hZ2VudHNbaV0tPmNsZWFyRnJvbnRlbmQoKTsKK30KKwordm9pZCBJbnNwZWN0
b3JBZ2VudFJlZ2lzdHJ5OjpyZWdpc3RlckluRGlzcGF0Y2hlcihJbnNwZWN0b3JCYWNrZW5kRGlz
cGF0Y2hlciogZGlzcGF0Y2hlcikKK3sKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fYWdl
bnRzLnNpemUoKTsgaSsrKQorICAgICAgICBtX2FnZW50c1tpXS0+cmVnaXN0ZXJJbkRpc3BhdGNo
ZXIoZGlzcGF0Y2hlcik7Cit9CisKK3ZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6ZGlzY2Fy
ZEFnZW50cygpCit7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7
IGkrKykKKyAgICAgICAgbV9hZ2VudHNbaV0tPmRpc2NhcmRBZ2VudCgpOworfQorCit9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFnZW50UmVnaXN0cnkuaCBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjA5MmUxOAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgKQEAgLTAsMCAr
MSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
CisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
bmRlZiBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5X2gKKyNkZWZpbmUgSW5zcGVjdG9yQWdlbnRSZWdp
c3RyeV9oCisKKyNpbmNsdWRlICJJbnNwZWN0b3JCYXNlQWdlbnQuaCIKKyNpbmNsdWRlIDx3dGYv
UGFzc093blB0ci5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlcjsKK2NsYXNzIEluc3BlY3Rv
ckZyb250ZW5kOworCitjbGFzcyBJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5IHsKK3B1YmxpYzoKKyAg
ICB2b2lkIGFwcGVuZChQYXNzT3duUHRyPEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZT4pOwor
CisgICAgdm9pZCBzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZCopOworICAgIHZvaWQgY2xl
YXJGcm9udGVuZCgpOworICAgIHZvaWQgcmVnaXN0ZXJJbkRpc3BhdGNoZXIoSW5zcGVjdG9yQmFj
a2VuZERpc3BhdGNoZXIqKTsKKyAgICB2b2lkIGRpc2NhcmRBZ2VudHMoKTsKKworcHJpdmF0ZToK
KyAgICBWZWN0b3I8T3duUHRyPEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZT4+IG1fYWdlbnRz
OworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gIWRlZmluZWQoSW5z
cGVjdG9yQWdlbnRSZWdpc3RyeV9oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFsbEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JBbGxJbk9uZS5jcHAKaW5kZXggMTZiNWUyZC4uMmIzZTE1OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFsbEluT25lLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQWxsSW5PbmUuY3BwCkBAIC0zNyw4ICszNyw4IEBA
CiAjaW5jbHVkZSAiSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLmNwcCIKICNpbmNsdWRlICJJbmplY3Rl
ZFNjcmlwdE1vZHVsZS5jcHAiCiAjaW5jbHVkZSAiSW5zcGVjdG9yQWdlbnQuY3BwIgorI2luY2x1
ZGUgIkluc3BlY3RvckFnZW50UmVnaXN0cnkuY3BwIgogI2luY2x1ZGUgIkluc3BlY3RvckFwcGxp
Y2F0aW9uQ2FjaGVBZ2VudC5jcHAiCi0jaW5jbHVkZSAiSW5zcGVjdG9yQmFzZUFnZW50LmNwcCIK
ICNpbmNsdWRlICJJbnNwZWN0b3JDU1NBZ2VudC5jcHAiCiAjaW5jbHVkZSAiSW5zcGVjdG9yQ2Fu
dmFzQWdlbnQuY3BwIgogI2luY2x1ZGUgIkluc3BlY3RvckNsaWVudC5jcHAiCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFnZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYXNlQWdlbnQuY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA4NWM3OWFjLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JCYXNlQWdlbnQuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsODAgKzAs
MCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0OgotICoK
LSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2ds
ZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAot
ICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICov
Ci0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShJTlNQRUNUT1IpCi0KLSNpbmNs
dWRlICJJbnNwZWN0b3JCYXNlQWdlbnQuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1JbnNw
ZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2U6Okluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZShjb25z
dCBTdHJpbmcmIG5hbWUsIEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMp
Ci0gICAgOiBtX2luc3RydW1lbnRpbmdBZ2VudHMoaW5zdHJ1bWVudGluZ0FnZW50cykKLSAgICAs
IG1fbmFtZShuYW1lKQotewotfQotCi1JbnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2U6On5JbnNw
ZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2UoKQotewotfQotCi12b2lkIEluc3BlY3RvckFnZW50UmVn
aXN0cnk6OmFwcGVuZChQYXNzT3duUHRyPEluc3BlY3RvckJhc2VBZ2VudEludGVyZmFjZT4gYWdl
bnQpCi17Ci0gICAgbV9hZ2VudHMuYXBwZW5kKGFnZW50KTsKLX0KLQotdm9pZCBJbnNwZWN0b3JB
Z2VudFJlZ2lzdHJ5OjpzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRlbmQpCi17
Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7IGkrKykKLSAgICAg
ICAgbV9hZ2VudHNbaV0tPnNldEZyb250ZW5kKGZyb250ZW5kKTsKLX0KLQotdm9pZCBJbnNwZWN0
b3JBZ2VudFJlZ2lzdHJ5OjpjbGVhckZyb250ZW5kKCkKLXsKLSAgICBmb3IgKHNpemVfdCBpID0g
MDsgaSA8IG1fYWdlbnRzLnNpemUoKTsgaSsrKQotICAgICAgICBtX2FnZW50c1tpXS0+Y2xlYXJG
cm9udGVuZCgpOwotfQotCi12b2lkIEluc3BlY3RvckFnZW50UmVnaXN0cnk6OnJlZ2lzdGVySW5E
aXNwYXRjaGVyKEluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyKiBkaXNwYXRjaGVyKQotewotICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9hZ2VudHMuc2l6ZSgpOyBpKyspCi0gICAgICAgIG1f
YWdlbnRzW2ldLT5yZWdpc3RlckluRGlzcGF0Y2hlcihkaXNwYXRjaGVyKTsKLX0KLQotdm9pZCBJ
bnNwZWN0b3JBZ2VudFJlZ2lzdHJ5OjpkaXNjYXJkQWdlbnRzKCkKLXsKLSAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IG1fYWdlbnRzLnNpemUoKTsgaSsrKQotICAgICAgICBtX2FnZW50c1tpXS0+
ZGlzY2FyZEFnZW50KCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShJTlNQRUNUT1IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQmFzZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
QmFzZUFnZW50LmgKaW5kZXggOTQ4M2JkNS4uMjgwYjk4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhc2VBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JCYXNlQWdlbnQuaApAQCAtMzMsOCArMzMsNiBAQAogCiAjaW5j
bHVkZSAiSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2Fy
ZC5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CkBAIC00NCw4ICs0MiwxMyBAQCBjbGFzcyBJbnN0cnVtZW50aW5nQWdlbnRzOwogCiBjbGFzcyBJ
bnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2UgewogcHVibGljOgotICAgIEluc3BlY3RvckJhc2VB
Z2VudEludGVyZmFjZShjb25zdCBTdHJpbmcmLCBJbnN0cnVtZW50aW5nQWdlbnRzKik7Ci0gICAg
dmlydHVhbCB+SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlKCk7CisgICAgSW5zcGVjdG9yQmFz
ZUFnZW50SW50ZXJmYWNlKGNvbnN0IFN0cmluZyYgbmFtZSwgSW5zdHJ1bWVudGluZ0FnZW50cyog
aW5zdHJ1bWVudGluZ0FnZW50cykKKyAgICAgICAgOiBtX2luc3RydW1lbnRpbmdBZ2VudHMoaW5z
dHJ1bWVudGluZ0FnZW50cykKKyAgICAgICAgLCBtX25hbWUobmFtZSkKKyAgICB7CisgICAgfQor
CisgICAgdmlydHVhbCB+SW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlKCkgeyB9CiAKICAgICB2
aXJ0dWFsIHZvaWQgc2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKSB7IH0KICAgICB2aXJ0
dWFsIHZvaWQgY2xlYXJGcm9udGVuZCgpIHsgfQpAQCAtNjEsMTkgKzY0LDYgQEAgcHJpdmF0ZToK
ICAgICBTdHJpbmcgbV9uYW1lOwogfTsKIAotY2xhc3MgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeSB7
Ci1wdWJsaWM6Ci0gICAgdm9pZCBhcHBlbmQoUGFzc093blB0cjxJbnNwZWN0b3JCYXNlQWdlbnRJ
bnRlcmZhY2U+KTsKLQotICAgIHZvaWQgc2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKTsK
LSAgICB2b2lkIGNsZWFyRnJvbnRlbmQoKTsKLSAgICB2b2lkIHJlZ2lzdGVySW5EaXNwYXRjaGVy
KEluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyKik7Ci0gICAgdm9pZCBkaXNjYXJkQWdlbnRzKCk7
Ci0KLXByaXZhdGU6Ci0gICAgVmVjdG9yPE93blB0cjxJbnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZh
Y2U+PiBtX2FnZW50czsKLX07Ci0KIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CiBjbGFzcyBJbnNwZWN0
b3JCYXNlQWdlbnQgOiBwdWJsaWMgSW5zcGVjdG9yQmFzZUFnZW50SW50ZXJmYWNlIHsKIHB1Ymxp
YzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9s
bGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oCmlu
ZGV4IGQ0Mjk3ZGMuLjVmMjczYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckNvbnRyb2xsZXIuaApAQCAtMzMsNiArMzMsNyBAQAogCiAjaWYgRU5BQkxFKElOU1BF
Q1RPUikKIAorI2luY2x1ZGUgIkluc3BlY3RvckFnZW50UmVnaXN0cnkuaCIKICNpbmNsdWRlICJJ
bnNwZWN0b3JCYXNlQWdlbnQuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUg
PHd0Zi9IYXNoTWFwLmg+CkBAIC00OCw3ICs0OSw2IEBAIGNsYXNzIEluamVjdGVkU2NyaXB0TWFu
YWdlcjsKIGNsYXNzIEluc3BlY3RvckFnZW50OwogY2xhc3MgSW5zcGVjdG9yQXBwbGljYXRpb25D
YWNoZUFnZW50OwogY2xhc3MgSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXI7Ci1jbGFzcyBJbnNw
ZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2U7CiBjbGFzcyBJbnNwZWN0b3JDbGllbnQ7CiBjbGFzcyBJ
bnNwZWN0b3JET01BZ2VudDsKIGNsYXNzIEluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQ7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JNZW1vcnlBZ2VudC5oCmluZGV4IGU3
N2JmOTMuLjcxZDQ3MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JNZW1vcnlBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JNZW1vcnlBZ2VudC5oCkBAIC00OCw4ICs0OCw2IEBAIHR5cGVkZWYgU3RyaW5nIEVycm9yU3Ry
aW5nOwogY2xhc3MgSW5zcGVjdG9yTWVtb3J5QWdlbnQgOiBwdWJsaWMgSW5zcGVjdG9yQmFzZUFn
ZW50PEluc3BlY3Rvck1lbW9yeUFnZW50PiwgcHVibGljIEluc3BlY3RvckJhY2tlbmREaXNwYXRj
aGVyOjpNZW1vcnlDb21tYW5kSGFuZGxlciB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoSW5z
cGVjdG9yTWVtb3J5QWdlbnQpOwogcHVibGljOgotICAgIHR5cGVkZWYgVmVjdG9yPE93blB0cjxJ
bnNwZWN0b3JCYXNlQWdlbnRJbnRlcmZhY2U+PiBJbnNwZWN0b3JBZ2VudHM7Ci0KICAgICBzdGF0
aWMgUGFzc093blB0cjxJbnNwZWN0b3JNZW1vcnlBZ2VudD4gY3JlYXRlKEluc3RydW1lbnRpbmdB
Z2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMpOwogICAgIHZpcnR1YWwgfkluc3BlY3Rvck1lbW9y
eUFnZW50KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Xb3JrZXJJ
bnNwZWN0b3JDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VySW5z
cGVjdG9yQ29udHJvbGxlci5oCmluZGV4IDAwODhmMWIuLjNjOTM3MDcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Xb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1dvcmtlckluc3BlY3RvckNvbnRyb2xsZXIuaApAQCAt
MzMsNiArMzMsNyBAQAogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikgJiYgRU5BQkxFKFdPUktFUlMp
CiAKKyNpbmNsdWRlICJJbnNwZWN0b3JBZ2VudFJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiSW5zcGVj
dG9yQmFzZUFnZW50LmgiCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3
dGYvRm9yd2FyZC5oPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>